summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.dockerignore2
-rw-r--r--.flake845
-rw-r--r--.flake8_packages24
-rw-r--r--.gitattributes2
-rwxr-xr-x.github/actions/add-maintainers-as-reviewers/entrypoint.py2
-rw-r--r--.github/dependabot.yml7
-rw-r--r--.github/workflows/linux_build_tests.yaml16
-rw-r--r--.github/workflows/linux_unit_tests.yaml150
-rw-r--r--.github/workflows/macos_unit_tests.yaml44
-rw-r--r--.github/workflows/style_and_docs.yaml65
-rw-r--r--.github/workflows/unit_tests.yaml391
-rw-r--r--.gitignore519
-rw-r--r--.mailmap3
-rw-r--r--.mypy.ini35
-rw-r--r--README.md3
-rwxr-xr-xbin/sbang2
-rwxr-xr-xbin/spack34
-rwxr-xr-xbin/spack-python2
-rw-r--r--etc/spack/defaults/config.yaml19
-rw-r--r--etc/spack/defaults/darwin/packages.yaml9
-rw-r--r--etc/spack/defaults/modules.yaml10
-rw-r--r--etc/spack/defaults/packages.yaml4
-rw-r--r--lib/spack/docs/analyze.rst162
-rw-r--r--lib/spack/docs/basic_usage.rst23
-rw-r--r--lib/spack/docs/binary_caches.rst2
-rw-r--r--lib/spack/docs/build_settings.rst2
-rw-r--r--lib/spack/docs/build_systems.rst4
-rw-r--r--lib/spack/docs/build_systems/autotoolspackage.rst4
-rw-r--r--lib/spack/docs/build_systems/bundlepackage.rst2
-rw-r--r--lib/spack/docs/build_systems/cmakepackage.rst2
-rw-r--r--lib/spack/docs/build_systems/cudapackage.rst119
-rw-r--r--lib/spack/docs/build_systems/custompackage.rst24
-rw-r--r--lib/spack/docs/build_systems/inteloneapipackage.rst155
-rw-r--r--lib/spack/docs/build_systems/intelpackage.rst79
-rw-r--r--lib/spack/docs/build_systems/makefilepackage.rst8
-rw-r--r--lib/spack/docs/build_systems/mavenpackage.rst2
-rw-r--r--lib/spack/docs/build_systems/mesonpackage.rst8
-rw-r--r--lib/spack/docs/build_systems/octavepackage.rst2
-rw-r--r--lib/spack/docs/build_systems/perlpackage.rst4
-rw-r--r--lib/spack/docs/build_systems/pythonpackage.rst197
-rw-r--r--lib/spack/docs/build_systems/qmakepackage.rst15
-rw-r--r--lib/spack/docs/build_systems/rocmpackage.rst122
-rw-r--r--lib/spack/docs/build_systems/rpackage.rst78
-rw-r--r--lib/spack/docs/build_systems/rubypackage.rst3
-rw-r--r--lib/spack/docs/build_systems/sconspackage.rst2
-rw-r--r--lib/spack/docs/build_systems/sippackage.rst33
-rw-r--r--lib/spack/docs/build_systems/wafpackage.rst2
-rw-r--r--lib/spack/docs/chain.rst2
-rw-r--r--lib/spack/docs/conf.py4
-rw-r--r--lib/spack/docs/config_yaml.rst18
-rw-r--r--lib/spack/docs/configuration.rst18
-rw-r--r--lib/spack/docs/containers.rst4
-rw-r--r--lib/spack/docs/contribution_guide.rst24
-rw-r--r--lib/spack/docs/developer_guide.rst690
-rw-r--r--lib/spack/docs/environments.rst30
-rw-r--r--lib/spack/docs/extensions.rst2
-rw-r--r--lib/spack/docs/features.rst2
-rw-r--r--lib/spack/docs/getting_started.rst12
-rw-r--r--lib/spack/docs/index.rst9
-rw-r--r--lib/spack/docs/known_issues.rst2
-rw-r--r--lib/spack/docs/mirrors.rst23
-rw-r--r--lib/spack/docs/module_file_support.rst5
-rw-r--r--lib/spack/docs/monitoring.rst104
-rw-r--r--lib/spack/docs/package_list.rst2
-rw-r--r--lib/spack/docs/packaging_guide.rst1031
-rw-r--r--lib/spack/docs/pipelines.rst117
-rw-r--r--lib/spack/docs/repositories.rst4
-rw-r--r--lib/spack/docs/spack.yaml2
-rw-r--r--lib/spack/docs/workflows.rst2
-rwxr-xr-xlib/spack/env/cc50
-rw-r--r--lib/spack/external/__init__.py4
-rw-r--r--lib/spack/external/archspec/__init__.py2
-rw-r--r--lib/spack/external/archspec/cpu/detect.py39
-rw-r--r--lib/spack/external/archspec/json/cpu/microarchitectures.json408
-rw-r--r--lib/spack/external/ordereddict_backport.py2
-rw-r--r--lib/spack/external/py2/typing.py84
-rw-r--r--lib/spack/llnl/__init__.py2
-rw-r--r--lib/spack/llnl/util/__init__.py2
-rw-r--r--lib/spack/llnl/util/argparsewriter.py2
-rw-r--r--lib/spack/llnl/util/filesystem.py26
-rw-r--r--lib/spack/llnl/util/lang.py277
-rw-r--r--lib/spack/llnl/util/link_tree.py2
-rw-r--r--lib/spack/llnl/util/lock.py4
-rw-r--r--lib/spack/llnl/util/multiproc.py2
-rw-r--r--lib/spack/llnl/util/tty/__init__.py2
-rw-r--r--lib/spack/llnl/util/tty/colify.py2
-rw-r--r--lib/spack/llnl/util/tty/color.py2
-rw-r--r--lib/spack/llnl/util/tty/log.py22
-rw-r--r--lib/spack/llnl/util/tty/pty.py2
-rw-r--r--lib/spack/spack/__init__.py4
-rw-r--r--lib/spack/spack/abi.py2
-rw-r--r--lib/spack/spack/analyzers/__init__.py43
-rw-r--r--lib/spack/spack/analyzers/analyzer_base.py115
-rw-r--r--lib/spack/spack/analyzers/config_args.py32
-rw-r--r--lib/spack/spack/analyzers/environment_variables.py51
-rw-r--r--lib/spack/spack/analyzers/install_files.py30
-rw-r--r--lib/spack/spack/analyzers/libabigail.py116
-rw-r--r--lib/spack/spack/architecture.py113
-rw-r--r--lib/spack/spack/binary_distribution.py142
-rw-r--r--lib/spack/spack/bootstrap.py6
-rw-r--r--lib/spack/spack/build_environment.py52
-rw-r--r--lib/spack/spack/build_systems/__init__.py2
-rw-r--r--lib/spack/spack/build_systems/aspell_dict.py2
-rw-r--r--lib/spack/spack/build_systems/autotools.py11
-rw-r--r--lib/spack/spack/build_systems/cached_cmake.py249
-rw-r--r--lib/spack/spack/build_systems/cmake.py5
-rw-r--r--lib/spack/spack/build_systems/cuda.py2
-rw-r--r--lib/spack/spack/build_systems/gnu.py2
-rw-r--r--lib/spack/spack/build_systems/intel.py11
-rw-r--r--lib/spack/spack/build_systems/makefile.py5
-rw-r--r--lib/spack/spack/build_systems/maven.py2
-rw-r--r--lib/spack/spack/build_systems/meson.py24
-rw-r--r--lib/spack/spack/build_systems/octave.py5
-rw-r--r--lib/spack/spack/build_systems/oneapi.py108
-rw-r--r--lib/spack/spack/build_systems/perl.py6
-rw-r--r--lib/spack/spack/build_systems/python.py243
-rw-r--r--lib/spack/spack/build_systems/qmake.py24
-rw-r--r--lib/spack/spack/build_systems/r.py43
-rw-r--r--lib/spack/spack/build_systems/rocm.py11
-rw-r--r--lib/spack/spack/build_systems/ruby.py6
-rw-r--r--lib/spack/spack/build_systems/scons.py2
-rw-r--r--lib/spack/spack/build_systems/sip.py65
-rw-r--r--lib/spack/spack/build_systems/sourceforge.py2
-rw-r--r--lib/spack/spack/build_systems/sourceware.py2
-rw-r--r--lib/spack/spack/build_systems/waf.py2
-rw-r--r--lib/spack/spack/build_systems/xorg.py2
-rw-r--r--lib/spack/spack/caches.py14
-rw-r--r--lib/spack/spack/ci.py415
-rw-r--r--lib/spack/spack/ci_needs_workaround.py2
-rw-r--r--lib/spack/spack/ci_optimization.py2
-rw-r--r--lib/spack/spack/cmd/__init__.py2
-rw-r--r--lib/spack/spack/cmd/activate.py2
-rw-r--r--lib/spack/spack/cmd/add.py2
-rw-r--r--lib/spack/spack/cmd/analyze.py118
-rw-r--r--lib/spack/spack/cmd/arch.py2
-rw-r--r--lib/spack/spack/cmd/blame.py2
-rw-r--r--lib/spack/spack/cmd/build_env.py2
-rw-r--r--lib/spack/spack/cmd/buildcache.py22
-rw-r--r--lib/spack/spack/cmd/cd.py2
-rw-r--r--lib/spack/spack/cmd/checksum.py2
-rw-r--r--lib/spack/spack/cmd/ci.py123
-rw-r--r--lib/spack/spack/cmd/clean.py2
-rw-r--r--lib/spack/spack/cmd/clone.py2
-rw-r--r--lib/spack/spack/cmd/commands.py15
-rw-r--r--lib/spack/spack/cmd/common/__init__.py11
-rw-r--r--lib/spack/spack/cmd/common/arguments.py27
-rw-r--r--lib/spack/spack/cmd/common/env_utility.py5
-rw-r--r--lib/spack/spack/cmd/compiler.py2
-rw-r--r--lib/spack/spack/cmd/compilers.py2
-rw-r--r--lib/spack/spack/cmd/concretize.py18
-rw-r--r--lib/spack/spack/cmd/config.py154
-rw-r--r--lib/spack/spack/cmd/containerize.py2
-rw-r--r--lib/spack/spack/cmd/create.py72
-rw-r--r--lib/spack/spack/cmd/deactivate.py2
-rw-r--r--lib/spack/spack/cmd/debug.py4
-rw-r--r--lib/spack/spack/cmd/dependencies.py2
-rw-r--r--lib/spack/spack/cmd/dependents.py2
-rw-r--r--lib/spack/spack/cmd/deprecate.py2
-rw-r--r--lib/spack/spack/cmd/dev_build.py7
-rw-r--r--lib/spack/spack/cmd/develop.py2
-rw-r--r--lib/spack/spack/cmd/docs.py2
-rw-r--r--lib/spack/spack/cmd/edit.py2
-rw-r--r--lib/spack/spack/cmd/env.py18
-rw-r--r--lib/spack/spack/cmd/extensions.py2
-rw-r--r--lib/spack/spack/cmd/external.py25
-rw-r--r--lib/spack/spack/cmd/fetch.py7
-rw-r--r--lib/spack/spack/cmd/find.py2
-rw-r--r--lib/spack/spack/cmd/flake8.py317
-rw-r--r--lib/spack/spack/cmd/gc.py2
-rw-r--r--lib/spack/spack/cmd/gpg.py2
-rw-r--r--lib/spack/spack/cmd/graph.py2
-rw-r--r--lib/spack/spack/cmd/help.py2
-rw-r--r--lib/spack/spack/cmd/info.py13
-rw-r--r--lib/spack/spack/cmd/install.py133
-rw-r--r--lib/spack/spack/cmd/license.py51
-rw-r--r--lib/spack/spack/cmd/list.py2
-rw-r--r--lib/spack/spack/cmd/load.py4
-rw-r--r--lib/spack/spack/cmd/location.py14
-rw-r--r--lib/spack/spack/cmd/log_parse.py2
-rw-r--r--lib/spack/spack/cmd/maintainers.py2
-rw-r--r--lib/spack/spack/cmd/mark.py2
-rw-r--r--lib/spack/spack/cmd/mirror.py34
-rw-r--r--lib/spack/spack/cmd/module.py7
-rw-r--r--lib/spack/spack/cmd/modules/__init__.py2
-rw-r--r--lib/spack/spack/cmd/modules/lmod.py2
-rw-r--r--lib/spack/spack/cmd/modules/tcl.py2
-rw-r--r--lib/spack/spack/cmd/patch.py8
-rw-r--r--lib/spack/spack/cmd/pkg.py2
-rw-r--r--lib/spack/spack/cmd/providers.py2
-rw-r--r--lib/spack/spack/cmd/pydoc.py2
-rw-r--r--lib/spack/spack/cmd/python.py69
-rw-r--r--lib/spack/spack/cmd/reindex.py2
-rw-r--r--lib/spack/spack/cmd/remove.py2
-rw-r--r--lib/spack/spack/cmd/repo.py2
-rw-r--r--lib/spack/spack/cmd/resource.py2
-rw-r--r--lib/spack/spack/cmd/restage.py2
-rw-r--r--lib/spack/spack/cmd/setup.py163
-rw-r--r--lib/spack/spack/cmd/solve.py35
-rw-r--r--lib/spack/spack/cmd/spec.py13
-rw-r--r--lib/spack/spack/cmd/stage.py16
-rw-r--r--lib/spack/spack/cmd/style.py317
-rw-r--r--lib/spack/spack/cmd/test.py39
-rw-r--r--lib/spack/spack/cmd/test_env.py2
-rw-r--r--lib/spack/spack/cmd/tutorial.py2
-rw-r--r--lib/spack/spack/cmd/undevelop.py2
-rw-r--r--lib/spack/spack/cmd/uninstall.py2
-rw-r--r--lib/spack/spack/cmd/unit_test.py4
-rw-r--r--lib/spack/spack/cmd/unload.py2
-rw-r--r--lib/spack/spack/cmd/url.py2
-rw-r--r--lib/spack/spack/cmd/verify.py2
-rw-r--r--lib/spack/spack/cmd/versions.py57
-rw-r--r--lib/spack/spack/cmd/view.py2
-rw-r--r--lib/spack/spack/compiler.py19
-rw-r--r--lib/spack/spack/compilers/__init__.py6
-rw-r--r--lib/spack/spack/compilers/aocc.py29
-rw-r--r--lib/spack/spack/compilers/apple_clang.py2
-rw-r--r--lib/spack/spack/compilers/arm.py2
-rw-r--r--lib/spack/spack/compilers/cce.py8
-rw-r--r--lib/spack/spack/compilers/clang.py8
-rw-r--r--lib/spack/spack/compilers/fj.py12
-rw-r--r--lib/spack/spack/compilers/gcc.py2
-rw-r--r--lib/spack/spack/compilers/intel.py2
-rw-r--r--lib/spack/spack/compilers/nag.py18
-rw-r--r--lib/spack/spack/compilers/nvhpc.py2
-rw-r--r--lib/spack/spack/compilers/oneapi.py7
-rw-r--r--lib/spack/spack/compilers/pgi.py6
-rw-r--r--lib/spack/spack/compilers/xl.py2
-rw-r--r--lib/spack/spack/compilers/xl_r.py2
-rw-r--r--lib/spack/spack/concretize.py10
-rw-r--r--lib/spack/spack/config.py88
-rw-r--r--lib/spack/spack/container/__init__.py2
-rw-r--r--lib/spack/spack/container/images.py2
-rw-r--r--lib/spack/spack/container/writers/__init__.py2
-rw-r--r--lib/spack/spack/container/writers/docker.py2
-rw-r--r--lib/spack/spack/container/writers/singularity.py2
-rw-r--r--lib/spack/spack/database.py27
-rw-r--r--lib/spack/spack/dependency.py2
-rw-r--r--lib/spack/spack/directives.py14
-rw-r--r--lib/spack/spack/directory_layout.py49
-rw-r--r--lib/spack/spack/environment.py307
-rw-r--r--lib/spack/spack/error.py2
-rw-r--r--lib/spack/spack/extensions.py2
-rw-r--r--lib/spack/spack/fetch_strategy.py28
-rw-r--r--lib/spack/spack/filesystem_view.py2
-rw-r--r--lib/spack/spack/graph.py15
-rw-r--r--lib/spack/spack/hash_types.py9
-rw-r--r--lib/spack/spack/hooks/__init__.py54
-rw-r--r--lib/spack/spack/hooks/extensions.py2
-rw-r--r--lib/spack/spack/hooks/licensing.py2
-rw-r--r--lib/spack/spack/hooks/module_file_generation.py2
-rw-r--r--lib/spack/spack/hooks/monitor.py73
-rw-r--r--lib/spack/spack/hooks/permissions_setters.py2
-rw-r--r--lib/spack/spack/hooks/sbang.py2
-rw-r--r--lib/spack/spack/hooks/write_install_manifest.py2
-rw-r--r--lib/spack/spack/install_test.py2
-rw-r--r--lib/spack/spack/installer.py139
-rw-r--r--lib/spack/spack/main.py20
-rw-r--r--lib/spack/spack/mirror.py6
-rw-r--r--lib/spack/spack/mixins.py18
-rw-r--r--lib/spack/spack/modules/__init__.py2
-rw-r--r--lib/spack/spack/modules/common.py5
-rw-r--r--lib/spack/spack/modules/lmod.py5
-rw-r--r--lib/spack/spack/modules/tcl.py5
-rw-r--r--lib/spack/spack/monitor.py522
-rw-r--r--lib/spack/spack/multimethod.py2
-rw-r--r--lib/spack/spack/operating_systems/__init__.py2
-rw-r--r--lib/spack/spack/operating_systems/cray_backend.py2
-rw-r--r--lib/spack/spack/operating_systems/cray_frontend.py2
-rw-r--r--lib/spack/spack/operating_systems/linux_distro.py2
-rw-r--r--lib/spack/spack/operating_systems/mac_os.py2
-rw-r--r--lib/spack/spack/package.py102
-rw-r--r--lib/spack/spack/package_prefs.py2
-rw-r--r--lib/spack/spack/package_test.py2
-rw-r--r--lib/spack/spack/parse.py2
-rw-r--r--lib/spack/spack/patch.py2
-rw-r--r--lib/spack/spack/paths.py5
-rw-r--r--lib/spack/spack/pkgkit.py6
-rw-r--r--lib/spack/spack/platforms/__init__.py2
-rw-r--r--lib/spack/spack/platforms/cray.py3
-rw-r--r--lib/spack/spack/platforms/darwin.py2
-rw-r--r--lib/spack/spack/platforms/linux.py2
-rw-r--r--lib/spack/spack/platforms/test.py2
-rw-r--r--lib/spack/spack/projections.py2
-rw-r--r--lib/spack/spack/provider_index.py2
-rw-r--r--lib/spack/spack/relocate.py2
-rw-r--r--lib/spack/spack/repo.py24
-rw-r--r--lib/spack/spack/report.py2
-rw-r--r--lib/spack/spack/reporter.py2
-rw-r--r--lib/spack/spack/reporters/__init__.py2
-rw-r--r--lib/spack/spack/reporters/cdash.py32
-rw-r--r--lib/spack/spack/reporters/junit.py2
-rw-r--r--lib/spack/spack/resource.py2
-rw-r--r--lib/spack/spack/s3_handler.py2
-rw-r--r--lib/spack/spack/schema/__init__.py2
-rw-r--r--lib/spack/spack/schema/buildcache_spec.py2
-rw-r--r--lib/spack/spack/schema/cdash.py2
-rw-r--r--lib/spack/spack/schema/compilers.py2
-rw-r--r--lib/spack/spack/schema/config.py3
-rw-r--r--lib/spack/spack/schema/container.py2
-rw-r--r--lib/spack/spack/schema/database_index.py2
-rw-r--r--lib/spack/spack/schema/env.py2
-rw-r--r--lib/spack/spack/schema/environment.py9
-rw-r--r--lib/spack/spack/schema/gitlab_ci.py208
-rw-r--r--lib/spack/spack/schema/merged.py2
-rw-r--r--lib/spack/spack/schema/mirrors.py2
-rw-r--r--lib/spack/spack/schema/modules.py2
-rw-r--r--lib/spack/spack/schema/packages.py2
-rw-r--r--lib/spack/spack/schema/projections.py2
-rw-r--r--lib/spack/spack/schema/repos.py2
-rw-r--r--lib/spack/spack/schema/spec.py2
-rw-r--r--lib/spack/spack/schema/upstreams.py2
-rw-r--r--lib/spack/spack/solver/__init__.py2
-rw-r--r--lib/spack/spack/solver/asp.py67
-rw-r--r--lib/spack/spack/solver/concretize.lp137
-rw-r--r--lib/spack/spack/solver/display.lp22
-rw-r--r--lib/spack/spack/spec.py318
-rw-r--r--lib/spack/spack/spec_list.py2
-rw-r--r--lib/spack/spack/stage.py11
-rw-r--r--lib/spack/spack/store.py36
-rw-r--r--lib/spack/spack/subprocess_context.py19
-rw-r--r--lib/spack/spack/tengine.py5
-rw-r--r--lib/spack/spack/test/__init__.py2
-rw-r--r--lib/spack/spack/test/abi.py2
-rw-r--r--lib/spack/spack/test/architecture.py2
-rw-r--r--lib/spack/spack/test/bindist.py554
-rw-r--r--lib/spack/spack/test/bootstrap.py4
-rw-r--r--lib/spack/spack/test/build_distribution.py2
-rw-r--r--lib/spack/spack/test/build_environment.py23
-rw-r--r--lib/spack/spack/test/build_system_guess.py2
-rw-r--r--lib/spack/spack/test/build_systems.py2
-rw-r--r--lib/spack/spack/test/buildrequest.py2
-rw-r--r--lib/spack/spack/test/buildtask.py2
-rw-r--r--lib/spack/spack/test/cache_fetch.py2
-rw-r--r--lib/spack/spack/test/cc.py54
-rw-r--r--lib/spack/spack/test/ci.py3
-rw-r--r--lib/spack/spack/test/cmd/__init__.py2
-rw-r--r--lib/spack/spack/test/cmd/activate.py2
-rw-r--r--lib/spack/spack/test/cmd/analyze.py176
-rw-r--r--lib/spack/spack/test/cmd/arch.py2
-rw-r--r--lib/spack/spack/test/cmd/blame.py2
-rw-r--r--lib/spack/spack/test/cmd/build_env.py31
-rw-r--r--lib/spack/spack/test/cmd/buildcache.py6
-rw-r--r--lib/spack/spack/test/cmd/cd.py2
-rw-r--r--lib/spack/spack/test/cmd/ci.py573
-rw-r--r--lib/spack/spack/test/cmd/clean.py2
-rw-r--r--lib/spack/spack/test/cmd/commands.py30
-rw-r--r--lib/spack/spack/test/cmd/common/__init__.py2
-rw-r--r--lib/spack/spack/test/cmd/common/arguments.py37
-rw-r--r--lib/spack/spack/test/cmd/compiler.py2
-rw-r--r--lib/spack/spack/test/cmd/concretize.py55
-rw-r--r--lib/spack/spack/test/cmd/config.py78
-rw-r--r--lib/spack/spack/test/cmd/create.py2
-rw-r--r--lib/spack/spack/test/cmd/debug.py4
-rw-r--r--lib/spack/spack/test/cmd/dependencies.py16
-rw-r--r--lib/spack/spack/test/cmd/dependents.py2
-rw-r--r--lib/spack/spack/test/cmd/deprecate.py2
-rw-r--r--lib/spack/spack/test/cmd/dev_build.py19
-rw-r--r--lib/spack/spack/test/cmd/develop.py2
-rw-r--r--lib/spack/spack/test/cmd/env.py128
-rw-r--r--lib/spack/spack/test/cmd/extensions.py2
-rw-r--r--lib/spack/spack/test/cmd/external.py27
-rw-r--r--lib/spack/spack/test/cmd/fetch.py2
-rw-r--r--lib/spack/spack/test/cmd/find.py8
-rw-r--r--lib/spack/spack/test/cmd/flake8.py28
-rw-r--r--lib/spack/spack/test/cmd/gc.py2
-rw-r--r--lib/spack/spack/test/cmd/gpg.py2
-rw-r--r--lib/spack/spack/test/cmd/graph.py2
-rw-r--r--lib/spack/spack/test/cmd/help.py2
-rw-r--r--lib/spack/spack/test/cmd/info.py2
-rw-r--r--lib/spack/spack/test/cmd/init_py_functions.py2
-rw-r--r--lib/spack/spack/test/cmd/install.py187
-rw-r--r--lib/spack/spack/test/cmd/is_git_repo.py2
-rw-r--r--lib/spack/spack/test/cmd/license.py34
-rw-r--r--lib/spack/spack/test/cmd/list.py8
-rw-r--r--lib/spack/spack/test/cmd/load.py2
-rw-r--r--lib/spack/spack/test/cmd/location.py24
-rw-r--r--lib/spack/spack/test/cmd/maintainers.py2
-rw-r--r--lib/spack/spack/test/cmd/mark.py2
-rw-r--r--lib/spack/spack/test/cmd/mirror.py41
-rw-r--r--lib/spack/spack/test/cmd/module.py4
-rw-r--r--lib/spack/spack/test/cmd/pkg.py2
-rw-r--r--lib/spack/spack/test/cmd/print_shell_vars.py2
-rw-r--r--lib/spack/spack/test/cmd/providers.py2
-rw-r--r--lib/spack/spack/test/cmd/python.py8
-rw-r--r--lib/spack/spack/test/cmd/reindex.py2
-rw-r--r--lib/spack/spack/test/cmd/repo.py2
-rw-r--r--lib/spack/spack/test/cmd/resource.py2
-rw-r--r--lib/spack/spack/test/cmd/spec.py2
-rw-r--r--lib/spack/spack/test/cmd/stage.py114
-rw-r--r--lib/spack/spack/test/cmd/test.py33
-rw-r--r--lib/spack/spack/test/cmd/undevelop.py6
-rw-r--r--lib/spack/spack/test/cmd/uninstall.py2
-rw-r--r--lib/spack/spack/test/cmd/unit_test.py2
-rw-r--r--lib/spack/spack/test/cmd/url.py6
-rw-r--r--lib/spack/spack/test/cmd/verify.py2
-rw-r--r--lib/spack/spack/test/cmd/versions.py57
-rw-r--r--lib/spack/spack/test/cmd/view.py2
-rw-r--r--lib/spack/spack/test/cmd_extensions.py2
-rw-r--r--lib/spack/spack/test/compilers/__init__.py2
-rw-r--r--lib/spack/spack/test/compilers/basics.py14
-rw-r--r--lib/spack/spack/test/compilers/detection.py18
-rw-r--r--lib/spack/spack/test/concretize.py70
-rw-r--r--lib/spack/spack/test/concretize_preferences.py2
-rw-r--r--lib/spack/spack/test/config.py68
-rw-r--r--lib/spack/spack/test/config_values.py62
-rw-r--r--lib/spack/spack/test/conftest.py78
-rw-r--r--lib/spack/spack/test/container/cli.py2
-rw-r--r--lib/spack/spack/test/container/conftest.py2
-rw-r--r--lib/spack/spack/test/container/docker.py2
-rw-r--r--lib/spack/spack/test/container/images.py2
-rw-r--r--lib/spack/spack/test/container/schema.py2
-rw-r--r--lib/spack/spack/test/container/singularity.py2
-rw-r--r--lib/spack/spack/test/data/sourceme_first.sh2
-rw-r--r--lib/spack/spack/test/data/sourceme_lmod.sh2
-rw-r--r--lib/spack/spack/test/data/sourceme_parameters.sh2
-rw-r--r--lib/spack/spack/test/data/sourceme_second.sh2
-rw-r--r--lib/spack/spack/test/data/sourceme_unicode.sh2
-rw-r--r--lib/spack/spack/test/data/sourceme_unset.sh2
-rw-r--r--lib/spack/spack/test/database.py28
-rw-r--r--lib/spack/spack/test/directives.py2
-rw-r--r--lib/spack/spack/test/directory_layout.py29
-rw-r--r--lib/spack/spack/test/environment_modifications.py2
-rw-r--r--lib/spack/spack/test/fetch_strategy.py2
-rw-r--r--lib/spack/spack/test/flag_handlers.py2
-rw-r--r--lib/spack/spack/test/git_fetch.py2
-rw-r--r--lib/spack/spack/test/graph.py11
-rw-r--r--lib/spack/spack/test/hg_fetch.py2
-rw-r--r--lib/spack/spack/test/install.py98
-rw-r--r--lib/spack/spack/test/installer.py54
-rw-r--r--lib/spack/spack/test/link_paths.py2
-rw-r--r--lib/spack/spack/test/llnl/util/__init__.py2
-rw-r--r--lib/spack/spack/test/llnl/util/argparsewriter.py2
-rw-r--r--lib/spack/spack/test/llnl/util/file_list.py2
-rw-r--r--lib/spack/spack/test/llnl/util/filesystem.py23
-rw-r--r--lib/spack/spack/test/llnl/util/lang.py22
-rw-r--r--lib/spack/spack/test/llnl/util/link_tree.py2
-rw-r--r--lib/spack/spack/test/llnl/util/lock.py8
-rw-r--r--lib/spack/spack/test/llnl/util/tty/__init__.py2
-rw-r--r--lib/spack/spack/test/llnl/util/tty/log.py33
-rw-r--r--lib/spack/spack/test/llnl/util/tty/tty.py2
-rw-r--r--lib/spack/spack/test/main.py2
-rw-r--r--lib/spack/spack/test/make_executable.py2
-rw-r--r--lib/spack/spack/test/mirror.py2
-rw-r--r--lib/spack/spack/test/module_parsing.py8
-rw-r--r--lib/spack/spack/test/modules/__init__.py2
-rw-r--r--lib/spack/spack/test/modules/common.py2
-rw-r--r--lib/spack/spack/test/modules/conftest.py2
-rw-r--r--lib/spack/spack/test/modules/lmod.py2
-rw-r--r--lib/spack/spack/test/modules/tcl.py2
-rw-r--r--lib/spack/spack/test/multimethod.py2
-rw-r--r--lib/spack/spack/test/namespace_trie.py2
-rw-r--r--lib/spack/spack/test/operating_system.py2
-rw-r--r--lib/spack/spack/test/optional_deps.py2
-rw-r--r--lib/spack/spack/test/package_class.py2
-rw-r--r--lib/spack/spack/test/package_hash.py2
-rw-r--r--lib/spack/spack/test/package_sanity.py6
-rw-r--r--lib/spack/spack/test/packages.py2
-rw-r--r--lib/spack/spack/test/packaging.py2
-rw-r--r--lib/spack/spack/test/patch.py30
-rw-r--r--lib/spack/spack/test/pattern.py2
-rw-r--r--lib/spack/spack/test/permissions.py2
-rw-r--r--lib/spack/spack/test/provider_index.py2
-rw-r--r--lib/spack/spack/test/relocate.py2
-rw-r--r--lib/spack/spack/test/repo.py14
-rw-r--r--lib/spack/spack/test/s3_fetch.py2
-rw-r--r--lib/spack/spack/test/sbang.py4
-rw-r--r--lib/spack/spack/test/schema.py2
-rw-r--r--lib/spack/spack/test/spack_yaml.py2
-rw-r--r--lib/spack/spack/test/spec_dag.py9
-rw-r--r--lib/spack/spack/test/spec_list.py2
-rw-r--r--lib/spack/spack/test/spec_semantics.py74
-rw-r--r--lib/spack/spack/test/spec_syntax.py10
-rw-r--r--lib/spack/spack/test/spec_yaml.py45
-rw-r--r--lib/spack/spack/test/stage.py2
-rw-r--r--lib/spack/spack/test/svn_fetch.py2
-rw-r--r--lib/spack/spack/test/tengine.py2
-rw-r--r--lib/spack/spack/test/test_activations.py2
-rw-r--r--lib/spack/spack/test/test_suite.py2
-rw-r--r--lib/spack/spack/test/url_fetch.py2
-rw-r--r--lib/spack/spack/test/url_parse.py2
-rw-r--r--lib/spack/spack/test/url_substitution.py2
-rw-r--r--lib/spack/spack/test/util/__init__.py2
-rw-r--r--lib/spack/spack/test/util/editor.py2
-rw-r--r--lib/spack/spack/test/util/environment.py2
-rw-r--r--lib/spack/spack/test/util/executable.py2
-rw-r--r--lib/spack/spack/test/util/file_cache.py2
-rw-r--r--lib/spack/spack/test/util/log_parser.py2
-rw-r--r--lib/spack/spack/test/util/mock_package.py2
-rw-r--r--lib/spack/spack/test/util/prefix.py2
-rw-r--r--lib/spack/spack/test/util/spack_lock_wrapper.py2
-rw-r--r--lib/spack/spack/test/util/spack_yaml.py30
-rw-r--r--lib/spack/spack/test/util/util_gpg.py3
-rw-r--r--lib/spack/spack/test/util/util_string.py2
-rw-r--r--lib/spack/spack/test/util/util_url.py2
-rw-r--r--lib/spack/spack/test/variant.py2
-rw-r--r--lib/spack/spack/test/verification.py2
-rw-r--r--lib/spack/spack/test/versions.py5
-rw-r--r--lib/spack/spack/test/views.py2
-rw-r--r--lib/spack/spack/test/web.py85
-rw-r--r--lib/spack/spack/url.py16
-rw-r--r--lib/spack/spack/user_environment.py4
-rw-r--r--lib/spack/spack/util/__init__.py2
-rw-r--r--lib/spack/spack/util/classes.py39
-rw-r--r--lib/spack/spack/util/compression.py21
-rw-r--r--lib/spack/spack/util/cpus.py20
-rw-r--r--lib/spack/spack/util/crypto.py6
-rw-r--r--lib/spack/spack/util/debug.py2
-rw-r--r--lib/spack/spack/util/editor.py2
-rw-r--r--lib/spack/spack/util/environment.py41
-rw-r--r--lib/spack/spack/util/executable.py12
-rw-r--r--lib/spack/spack/util/file_cache.py2
-rw-r--r--lib/spack/spack/util/file_permissions.py2
-rw-r--r--lib/spack/spack/util/gpg.py8
-rw-r--r--lib/spack/spack/util/hash.py31
-rw-r--r--lib/spack/spack/util/imp/__init__.py2
-rw-r--r--lib/spack/spack/util/imp/imp_importer.py2
-rw-r--r--lib/spack/spack/util/imp/importlib_importer.py2
-rw-r--r--lib/spack/spack/util/lock.py4
-rw-r--r--lib/spack/spack/util/log_parse.py6
-rw-r--r--lib/spack/spack/util/mock_package.py10
-rw-r--r--lib/spack/spack/util/module_cmd.py14
-rw-r--r--lib/spack/spack/util/naming.py2
-rw-r--r--lib/spack/spack/util/package_hash.py2
-rw-r--r--lib/spack/spack/util/path.py38
-rw-r--r--lib/spack/spack/util/pattern.py2
-rw-r--r--lib/spack/spack/util/prefix.py2
-rw-r--r--lib/spack/spack/util/s3.py7
-rw-r--r--lib/spack/spack/util/spack_json.py12
-rw-r--r--lib/spack/spack/util/spack_yaml.py26
-rw-r--r--lib/spack/spack/util/string.py2
-rw-r--r--lib/spack/spack/util/url.py2
-rw-r--r--lib/spack/spack/util/web.py79
-rw-r--r--lib/spack/spack/variant.py25
-rw-r--r--lib/spack/spack/verify.py2
-rw-r--r--lib/spack/spack/version.py21
-rw-r--r--pytest.ini3
-rwxr-xr-xshare/spack/bash/spack-completion.in19
-rw-r--r--share/spack/csh/pathadd.csh2
-rw-r--r--share/spack/csh/spack.csh2
-rw-r--r--share/spack/docker/amazonlinux-2.dockerfile70
-rwxr-xr-xshare/spack/docker/entrypoint.bash2
-rw-r--r--share/spack/docker/leap-15.dockerfile61
-rwxr-xr-xshare/spack/docker/package-index/split.sh2
-rw-r--r--share/spack/docs/docker/module-file-tutorial/spack.sh2
-rw-r--r--share/spack/gitlab/cloud_e4s_pipelines.yml24
-rw-r--r--share/spack/gitlab/cloud_pipelines/.gitlab-ci.yml125
-rw-r--r--share/spack/gitlab/cloud_pipelines/stacks/e4s/spack.yaml151
-rw-r--r--share/spack/gitlab/nersc_pipeline.yml (renamed from share/spack/gitlab/ascent_pipeline.yml)2
-rwxr-xr-xshare/spack/qa/completion-test.sh78
-rw-r--r--share/spack/qa/flake8_formatter.py147
-rwxr-xr-xshare/spack/qa/run-build-tests2
-rwxr-xr-xshare/spack/qa/run-doc-tests2
-rwxr-xr-xshare/spack/qa/run-shell-tests9
-rwxr-xr-xshare/spack/qa/run-style-tests (renamed from share/spack/qa/run-flake8-tests)6
-rwxr-xr-xshare/spack/qa/run-unit-tests9
-rwxr-xr-xshare/spack/qa/setup-env-test.csh2
-rwxr-xr-xshare/spack/qa/setup-env-test.fish2
-rwxr-xr-xshare/spack/qa/setup-env-test.sh3
-rwxr-xr-xshare/spack/qa/setup.sh6
-rwxr-xr-xshare/spack/qa/test-framework.sh2
-rwxr-xr-xshare/spack/setup-env.csh14
-rwxr-xr-xshare/spack/setup-env.fish17
-rwxr-xr-xshare/spack/setup-env.sh16
-rwxr-xr-xshare/spack/setup-tutorial-env.sh10
-rwxr-xr-xshare/spack/spack-completion.bash121
-rw-r--r--share/spack/templates/misc/coconcretization.pyt2
-rw-r--r--var/spack/repos/builtin.mock/packages/a/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/archive-files/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/b/package.py3
-rw-r--r--var/spack/repos/builtin.mock/packages/boost/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/both-link-and-build-dep-a/package.py24
-rw-r--r--var/spack/repos/builtin.mock/packages/both-link-and-build-dep-b/package.py23
-rw-r--r--var/spack/repos/builtin.mock/packages/both-link-and-build-dep-c/package.py21
-rw-r--r--var/spack/repos/builtin.mock/packages/bowtie/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/brillig/package.py17
-rw-r--r--var/spack/repos/builtin.mock/packages/build-error/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/build-warnings/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/c/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/callpath/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/canfail/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/cmake-client/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/cmake/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/conditional-constrained-dependencies/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/conditional-provider/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/conditional-virtual-dependency/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/conditionally-patch-dependency/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/configure-warning/package.py33
-rw-r--r--var/spack/repos/builtin.mock/packages/conflict-parent/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/conflict/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/corge/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/cumulative-vrange-bottom/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/cumulative-vrange-middle/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/cumulative-vrange-root/package.py4
-rw-r--r--var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid1/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dep-diamond-patch-top/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop-root/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dep-with-variants/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/depb/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dependency-install/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dependent-install/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dependent-of-dev-build/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/depends-on-run-env/package.py22
-rw-r--r--var/spack/repos/builtin.mock/packages/deprecated-versions/package.py12
-rw-r--r--var/spack/repos/builtin.mock/packages/dev-build-test-dependent/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dev-build-test-install/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/develop-test/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/develop-test2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/direct-mpich/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dt-diamond/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtbuild1/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtbuild2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtbuild3/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink1/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink3/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink4/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink5/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtrun1/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtrun2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtrun3/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dttop/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dtuse/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/dyninst/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/e/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/ecp-viz-sdk/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/extendee/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/extension1/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/extension2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/external-buildable-with-variant/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/external-common-gdbm/package.py13
-rw-r--r--var/spack/repos/builtin.mock/packages/external-common-openssl/package.py14
-rw-r--r--var/spack/repos/builtin.mock/packages/external-common-perl/package.py14
-rw-r--r--var/spack/repos/builtin.mock/packages/external-common-python/package.py15
-rw-r--r--var/spack/repos/builtin.mock/packages/externalmodule/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/externalprereq/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/externaltest/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/externaltool/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/externalvirtual/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/failing-build/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/fake/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/fetch-options/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/fftw/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/find-externals1/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/flake8/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/flatten-deps/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/garply/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/gcc/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/git-svn-top-level/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/git-test/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/git-top-level/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/git-url-svn-top-level/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/git-url-top-level/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/hash-test1/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/hash-test2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/hash-test3/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/hash-test4/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/hdf5/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/hg-test/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/hg-top-level/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/hypre/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/impossible-concretization/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/indirect-mpich/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/libdwarf/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/libelf/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/libtool-deletion/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/maintainers-1/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/maintainers-2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-gnu-broken/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-gnu/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-sourceforge-broken/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-sourceforge/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/mirror-gnu-broken/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-sourceware/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-xorg-broken/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mirror-xorg/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/missing-dependency/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mixedversions/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/modifies-run-env/package.py21
-rw-r--r--var/spack/repos/builtin.mock/packages/module-path-separator/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mpich/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mpich2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/mpileaks/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod-base/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod-diamond-parent/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod-diamond/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/multimodule-inheritance/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/multivalue-variant/package.py7
-rw-r--r--var/spack/repos/builtin.mock/packages/needs-relocation/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/netlib-blas/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/netlib-lapack/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/nosource-install/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/nosource/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/noversion-bundle/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/noversion/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/old-sbang/package.py9
-rw-r--r--var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/openblas/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/optional-dep-test/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/othervirtual/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/override-context-templates/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/override-module-templates/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-inheritance/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/patch/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/patchelf/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/perl-extension/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/perl/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/preferred-test/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/printing-package/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/py-extension1/package.py5
-rw-r--r--var/spack/repos/builtin.mock/packages/py-extension2/package.py5
-rw-r--r--var/spack/repos/builtin.mock/packages/py-extension3/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/python/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/quantum-espresso/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/quux/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/raiser/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/requires-virtual/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/simple-inheritance/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent-type/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/singlevalue-variant/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/splice-h/package.py22
-rw-r--r--var/spack/repos/builtin.mock/packages/splice-t/package.py18
-rw-r--r--var/spack/repos/builtin.mock/packages/splice-z/package.py18
-rw-r--r--var/spack/repos/builtin.mock/packages/svn-test/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/svn-top-level/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/test-dependency/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/test-error/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/test-fail/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/transitive-conditional-virtual-dependency/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/trivial-pkg-with-valid-hash/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/url-list-test/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/url-only-override-with-gaps/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/url-only-override/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/url-test/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/url_override/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/v1-provider/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-a/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-b/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-root/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/vdefault-or-external-root/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/vdefault-or-external/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/when-directives-false/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/when-directives-true/package.py2
-rw-r--r--var/spack/repos/builtin.mock/packages/zmpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/3dtk/homebrew.patch18
-rw-r--r--var/spack/repos/builtin/packages/3dtk/package.py92
-rw-r--r--var/spack/repos/builtin/packages/3proxy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/abduco/package.py2
-rw-r--r--var/spack/repos/builtin/packages/abi-compliance-checker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/abi-dumper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/abinit/fix_for_fujitsu.patch352
-rw-r--r--var/spack/repos/builtin/packages/abinit/package.py236
-rw-r--r--var/spack/repos/builtin/packages/abinit/rm_march_settings.patch74
-rw-r--r--var/spack/repos/builtin/packages/abinit/rm_march_settings_v9.patch44
-rw-r--r--var/spack/repos/builtin/packages/abseil-cpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/abyss/package.py2
-rw-r--r--var/spack/repos/builtin/packages/accfft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/acct/package.py2
-rw-r--r--var/spack/repos/builtin/packages/accumulo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/acl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/acpica-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/acpid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/activeharmony/package.py2
-rw-r--r--var/spack/repos/builtin/packages/activemq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/acts/package.py44
-rw-r--r--var/spack/repos/builtin/packages/addrwatch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/adept-utils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/adf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/adiak/package.py9
-rw-r--r--var/spack/repos/builtin/packages/adios/package.py2
-rw-r--r--var/spack/repos/builtin/packages/adios2/2.7-fix-python-test-deps.patch175
-rw-r--r--var/spack/repos/builtin/packages/adios2/package.py112
-rw-r--r--var/spack/repos/builtin/packages/adlbx/package.py6
-rw-r--r--var/spack/repos/builtin/packages/admixtools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/adms/package.py28
-rw-r--r--var/spack/repos/builtin/packages/adol-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/advancecomp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/adwaita-icon-theme/package.py30
-rw-r--r--var/spack/repos/builtin/packages/aegean/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aeskeyfind/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aespipe/package.py2
-rw-r--r--var/spack/repos/builtin/packages/agrep/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aida/package.py4
-rw-r--r--var/spack/repos/builtin/packages/akantu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/alan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/albany/package.py47
-rw-r--r--var/spack/repos/builtin/packages/albert/package.py3
-rw-r--r--var/spack/repos/builtin/packages/alembic/package.py38
-rw-r--r--var/spack/repos/builtin/packages/alglib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/allpaths-lg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/alluxio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/alps/alps_climit.patch11
-rw-r--r--var/spack/repos/builtin/packages/alps/alps_cmake_time.patch11
-rw-r--r--var/spack/repos/builtin/packages/alps/alps_newgcc.patch59
-rw-r--r--var/spack/repos/builtin/packages/alps/package.py43
-rw-r--r--var/spack/repos/builtin/packages/alps/test/spin_one_half9
-rw-r--r--var/spack/repos/builtin/packages/alquimia/package.py5
-rw-r--r--var/spack/repos/builtin/packages/alsa-lib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aluminum/package.py36
-rw-r--r--var/spack/repos/builtin/packages/ambari/package.py2
-rw-r--r--var/spack/repos/builtin/packages/amber/package.py68
-rw-r--r--var/spack/repos/builtin/packages/amdblis/package.py17
-rw-r--r--var/spack/repos/builtin/packages/amdfftw/package.py78
-rw-r--r--var/spack/repos/builtin/packages/amdlibflame/package.py11
-rwxr-xr-xvar/spack/repos/builtin/packages/amdlibm/0001-libm-ose-Scripts-cleanup-pyc-files.patch601
-rwxr-xr-xvar/spack/repos/builtin/packages/amdlibm/0002-libm-ose-prevent-log-v3.c-from-building.patch25
-rw-r--r--var/spack/repos/builtin/packages/amdlibm/package.py70
-rw-r--r--var/spack/repos/builtin/packages/amdscalapack/package.py17
-rw-r--r--var/spack/repos/builtin/packages/amg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/amg2013/package.py2
-rw-r--r--var/spack/repos/builtin/packages/amgx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/amp/package.py168
-rw-r--r--var/spack/repos/builtin/packages/ampliconnoise/package.py2
-rw-r--r--var/spack/repos/builtin/packages/amr-wind/package.py111
-rw-r--r--var/spack/repos/builtin/packages/amrex/package.py142
-rw-r--r--var/spack/repos/builtin/packages/amrvis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/anaconda2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/anaconda3/package.py3
-rw-r--r--var/spack/repos/builtin/packages/andi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/angsd/package.py19
-rw-r--r--var/spack/repos/builtin/packages/ant/package.py2
-rw-r--r--var/spack/repos/builtin/packages/antimony/package.py2
-rw-r--r--var/spack/repos/builtin/packages/antlr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ants/package.py12
-rwxr-xr-xvar/spack/repos/builtin/packages/aocc/package.py11
-rw-r--r--var/spack/repos/builtin/packages/aocl-sparse/package.py104
-rw-r--r--var/spack/repos/builtin/packages/aoflagger/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aom/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aomp/0001-Add-cmake-option-for-copying-source-for-debugging.patch28
-rw-r--r--var/spack/repos/builtin/packages/aomp/package.py470
-rw-r--r--var/spack/repos/builtin/packages/apachetop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/apcomp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ape/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aperture-photometry/package.py2
-rw-r--r--var/spack/repos/builtin/packages/apex/package.py2
-rw-r--r--var/spack/repos/builtin/packages/apfel/package.py37
-rw-r--r--var/spack/repos/builtin/packages/apple-libunwind/package.py2
-rw-r--r--var/spack/repos/builtin/packages/apple-libuuid/package.py45
-rw-r--r--var/spack/repos/builtin/packages/applewmproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/appres/package.py4
-rw-r--r--var/spack/repos/builtin/packages/apr-util/package.py2
-rw-r--r--var/spack/repos/builtin/packages/apr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/aragorn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/arbor/package.py99
-rw-r--r--var/spack/repos/builtin/packages/arborx/package.py47
-rw-r--r--var/spack/repos/builtin/packages/archer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/argobots/package.py30
-rw-r--r--var/spack/repos/builtin/packages/argon2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/argp-standalone/package.py2
-rw-r--r--var/spack/repos/builtin/packages/args/package.py20
-rw-r--r--var/spack/repos/builtin/packages/argtable/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aria2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/arm-forge/package.py132
-rw-r--r--var/spack/repos/builtin/packages/arm/package.py86
-rw-r--r--var/spack/repos/builtin/packages/armadillo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/arpack-ng/package.py5
-rw-r--r--var/spack/repos/builtin/packages/arrayfire/package.py36
-rw-r--r--var/spack/repos/builtin/packages/arrow/package.py5
-rw-r--r--var/spack/repos/builtin/packages/asagi/package.py18
-rw-r--r--var/spack/repos/builtin/packages/ascent/package.py55
-rw-r--r--var/spack/repos/builtin/packages/asciidoc-py3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/asciidoc/package.py36
-rw-r--r--var/spack/repos/builtin/packages/asdcplib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/asdf-cxx/package.py6
-rw-r--r--var/spack/repos/builtin/packages/aspa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aspcud/package.py5
-rw-r--r--var/spack/repos/builtin/packages/aspect/package.py5
-rw-r--r--var/spack/repos/builtin/packages/aspell/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aspell6-de/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aspell6-en/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aspell6-es/package.py2
-rw-r--r--var/spack/repos/builtin/packages/aspera-cli/package.py2
-rw-r--r--var/spack/repos/builtin/packages/assimp/package.py8
-rw-r--r--var/spack/repos/builtin/packages/astra/package.py2
-rw-r--r--var/spack/repos/builtin/packages/astral/package.py2
-rw-r--r--var/spack/repos/builtin/packages/astyle/package.py9
-rw-r--r--var/spack/repos/builtin/packages/at-spi2-atk/package.py3
-rw-r--r--var/spack/repos/builtin/packages/at-spi2-core/package.py3
-rw-r--r--var/spack/repos/builtin/packages/atf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/athena/package.py2
-rw-r--r--var/spack/repos/builtin/packages/atk/package.py6
-rw-r--r--var/spack/repos/builtin/packages/atlas/package.py2
-rw-r--r--var/spack/repos/builtin/packages/atmi/package.py12
-rw-r--r--var/spack/repos/builtin/packages/atom-dft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/atompaw/package.py8
-rw-r--r--var/spack/repos/builtin/packages/atop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/attr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/audacious/package.py2
-rw-r--r--var/spack/repos/builtin/packages/audacity/package.py2
-rw-r--r--var/spack/repos/builtin/packages/audit-userspace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/augustus/bam2wig_Makefile.patch23
-rw-r--r--var/spack/repos/builtin/packages/augustus/package.py129
-rw-r--r--var/spack/repos/builtin/packages/authd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/authselect/package.py2
-rw-r--r--var/spack/repos/builtin/packages/autoconf-archive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/autoconf/package.py25
-rw-r--r--var/spack/repos/builtin/packages/autodock-gpu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/autodock-vina/package.py2
-rw-r--r--var/spack/repos/builtin/packages/autofact/package.py2
-rw-r--r--var/spack/repos/builtin/packages/autogen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/automaded/package.py2
-rw-r--r--var/spack/repos/builtin/packages/automake/package.py12
-rw-r--r--var/spack/repos/builtin/packages/avizo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/aws-parallelcluster/package.py35
-rw-r--r--var/spack/repos/builtin/packages/awscli/package.py5
-rw-r--r--var/spack/repos/builtin/packages/axel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/axl/package.py42
-rw-r--r--var/spack/repos/builtin/packages/axom/package.py567
-rw-r--r--var/spack/repos/builtin/packages/babelflow/package.py12
-rw-r--r--var/spack/repos/builtin/packages/babeltrace/package.py4
-rw-r--r--var/spack/repos/builtin/packages/backupninja/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bam-readcount/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bamaddrg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bamdst/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bamtools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bamutil/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bannergrab/package.py2
-rw-r--r--var/spack/repos/builtin/packages/barrnap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bart/Makefile-0.7.00.patch30
-rw-r--r--var/spack/repos/builtin/packages/bart/package.py14
-rw-r--r--var/spack/repos/builtin/packages/bash-completion/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bashtop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/batctl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bats/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bazel/linux_ppc-0.29.1.patch61
-rw-r--r--var/spack/repos/builtin/packages/bazel/package.py19
-rw-r--r--var/spack/repos/builtin/packages/bbcp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bbmap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bcache/package.py3
-rw-r--r--var/spack/repos/builtin/packages/bcftools/package.py4
-rw-r--r--var/spack/repos/builtin/packages/bcl2fastq2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/bdftopcf/package.py6
-rw-r--r--var/spack/repos/builtin/packages/bdii/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bdw-gc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/beagle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/beakerlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bear/package.py2
-rw-r--r--var/spack/repos/builtin/packages/beast-tracer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/beast1/package.py2
-rw-r--r--var/spack/repos/builtin/packages/beast2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bedops/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bedtools2/package.py5
-rw-r--r--var/spack/repos/builtin/packages/beforelight/package.py2
-rw-r--r--var/spack/repos/builtin/packages/benchmark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/berkeley-db/drop-docs.patch25
-rw-r--r--var/spack/repos/builtin/packages/berkeley-db/package.py32
-rw-r--r--var/spack/repos/builtin/packages/bertini/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bgpdump/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bib2xhtml/package.py4
-rw-r--r--var/spack/repos/builtin/packages/bigreqsproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bind9/package.py10
-rw-r--r--var/spack/repos/builtin/packages/binutils/package.py86
-rw-r--r--var/spack/repos/builtin/packages/bioawk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/biobambam2/package.py46
-rw-r--r--var/spack/repos/builtin/packages/biobloom/package.py2
-rw-r--r--var/spack/repos/builtin/packages/biopieces/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bird/package.py4
-rw-r--r--var/spack/repos/builtin/packages/bismark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bison/nvhpc-3.6.patch (renamed from var/spack/repos/builtin/packages/bison/nvhpc.patch)0
-rw-r--r--var/spack/repos/builtin/packages/bison/nvhpc-3.7.patch38
-rw-r--r--var/spack/repos/builtin/packages/bison/package.py15
-rw-r--r--var/spack/repos/builtin/packages/bitlbee/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bitmap/package.py6
-rw-r--r--var/spack/repos/builtin/packages/bitsery/package.py2
-rw-r--r--var/spack/repos/builtin/packages/blaspp/package.py36
-rw-r--r--var/spack/repos/builtin/packages/blasr-libcpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/blasr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/blast-legacy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/blast-plus/package.py5
-rw-r--r--var/spack/repos/builtin/packages/blast2go/package.py7
-rw-r--r--var/spack/repos/builtin/packages/blat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/blaze/package.py2
-rw-r--r--var/spack/repos/builtin/packages/blis/package.py20
-rw-r--r--var/spack/repos/builtin/packages/bliss/package.py2
-rw-r--r--var/spack/repos/builtin/packages/blitz/package.py8
-rw-r--r--var/spack/repos/builtin/packages/blktrace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bloaty/package.py18
-rw-r--r--var/spack/repos/builtin/packages/blogbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/blt/package.py11
-rw-r--r--var/spack/repos/builtin/packages/bmake/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bmi/package.py8
-rw-r--r--var/spack/repos/builtin/packages/bml/package.py5
-rw-r--r--var/spack/repos/builtin/packages/bohrium/package.py2
-rw-r--r--var/spack/repos/builtin/packages/boinc-client/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bolt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/bonniepp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bookleaf-cpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/boost/boost_218.patch10
-rw-r--r--var/spack/repos/builtin/packages/boost/bootstrap-toolset.patch11
-rw-r--r--var/spack/repos/builtin/packages/boost/package.py36
-rw-r--r--var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py2
-rw-r--r--var/spack/repos/builtin/packages/botan/package.py5
-rw-r--r--var/spack/repos/builtin/packages/bowtie/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bowtie2/package.py66
-rw-r--r--var/spack/repos/builtin/packages/boxlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bpp-core/package.py3
-rw-r--r--var/spack/repos/builtin/packages/bpp-phyl-omics/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bpp-phyl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bpp-seq-omics/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bpp-seq/package.py3
-rw-r--r--var/spack/repos/builtin/packages/bpp-suite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bracken/package.py2
-rw-r--r--var/spack/repos/builtin/packages/braker/package.py3
-rw-r--r--var/spack/repos/builtin/packages/branson/package.py4
-rw-r--r--var/spack/repos/builtin/packages/breakdancer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bref3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/breseq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bridger/package.py2
-rw-r--r--var/spack/repos/builtin/packages/brigand/package.py2
-rw-r--r--var/spack/repos/builtin/packages/brltty/package.py2
-rw-r--r--var/spack/repos/builtin/packages/brotli/package.py2
-rw-r--r--var/spack/repos/builtin/packages/brpc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/brynet/package.py25
-rw-r--r--var/spack/repos/builtin/packages/bsseeker2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bubblewrap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bucky/package.py2
-rw-r--r--var/spack/repos/builtin/packages/buddy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bumpversion/package.py5
-rw-r--r--var/spack/repos/builtin/packages/busco/package.py2
-rw-r--r--var/spack/repos/builtin/packages/busybox/package.py2
-rw-r--r--var/spack/repos/builtin/packages/butter/package.py2
-rw-r--r--var/spack/repos/builtin/packages/butterflypack/package.py7
-rw-r--r--var/spack/repos/builtin/packages/bwa/bwa_for_aarch64.patch2
-rw-r--r--var/spack/repos/builtin/packages/bwa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bwtool/package.py2
-rw-r--r--var/spack/repos/builtin/packages/byacc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/byobu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/byte-unixbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/byteman/package.py2
-rw-r--r--var/spack/repos/builtin/packages/bzip2/package.py19
-rw-r--r--var/spack/repos/builtin/packages/c-ares/package.py2
-rw-r--r--var/spack/repos/builtin/packages/c-blosc/package.py3
-rw-r--r--var/spack/repos/builtin/packages/c-blosc2/package.py13
-rw-r--r--var/spack/repos/builtin/packages/c-lime/package.py2
-rw-r--r--var/spack/repos/builtin/packages/c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ca-certificates-mozilla/package.py37
-rw-r--r--var/spack/repos/builtin/packages/cabana/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cachefilesd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/caffe/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cairo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cairomm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/caliper/package.py63
-rw-r--r--var/spack/repos/builtin/packages/callflow/package.py43
-rw-r--r--var/spack/repos/builtin/packages/callpath/package.py2
-rw-r--r--var/spack/repos/builtin/packages/camellia/package.py2
-rw-r--r--var/spack/repos/builtin/packages/camp/package.py11
-rw-r--r--var/spack/repos/builtin/packages/camx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/canal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/candle-benchmarks/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cantera/package.py2
-rw-r--r--var/spack/repos/builtin/packages/canu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cap3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/capnproto/package.py3
-rw-r--r--var/spack/repos/builtin/packages/capstone/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cardioid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/care/package.py131
-rw-r--r--var/spack/repos/builtin/packages/casacore/package.py34
-rw-r--r--var/spack/repos/builtin/packages/cask/package.py2
-rw-r--r--var/spack/repos/builtin/packages/casper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cassandra/package.py2
-rw-r--r--var/spack/repos/builtin/packages/catalyst/package.py10
-rw-r--r--var/spack/repos/builtin/packages/catch2/package.py14
-rw-r--r--var/spack/repos/builtin/packages/cbc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cbflib/cbf_f16.patch17
-rw-r--r--var/spack/repos/builtin/packages/cbflib/cbf_int.patch11
-rw-r--r--var/spack/repos/builtin/packages/cbflib/checkint.c4
-rw-r--r--var/spack/repos/builtin/packages/cbflib/package.py43
-rw-r--r--var/spack/repos/builtin/packages/cblas/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py10
-rw-r--r--var/spack/repos/builtin/packages/cbtf-argonavis/package.py69
-rw-r--r--var/spack/repos/builtin/packages/cbtf-krell/package.py49
-rw-r--r--var/spack/repos/builtin/packages/cbtf-lanl/package.py31
-rw-r--r--var/spack/repos/builtin/packages/cbtf/package.py23
-rw-r--r--var/spack/repos/builtin/packages/cc65/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ccache/package.py35
-rw-r--r--var/spack/repos/builtin/packages/ccfits/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ccls/package.py25
-rw-r--r--var/spack/repos/builtin/packages/ccs-qcd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/cctools/package.py8
-rw-r--r--var/spack/repos/builtin/packages/cdbfasta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cdd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cddlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cdecimal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cdhit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cdo/package.py99
-rw-r--r--var/spack/repos/builtin/packages/ceed/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cereal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ceres-solver/package.py3
-rw-r--r--var/spack/repos/builtin/packages/cfitsio/package.py20
-rw-r--r--var/spack/repos/builtin/packages/cgal/package.py4
-rw-r--r--var/spack/repos/builtin/packages/cgdb/package.py5
-rw-r--r--var/spack/repos/builtin/packages/cgdcbxd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cget/package.py4
-rw-r--r--var/spack/repos/builtin/packages/cgl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cgm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cgns/package.py39
-rw-r--r--var/spack/repos/builtin/packages/chai/package.py33
-rw-r--r--var/spack/repos/builtin/packages/changa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/channelflow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/chapel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/charliecloud/package.py5
-rw-r--r--var/spack/repos/builtin/packages/charmpp/charm_6.7.1_aocc.patch188
-rw-r--r--var/spack/repos/builtin/packages/charmpp/charm_6.8.2_aocc.patch165
-rw-r--r--var/spack/repos/builtin/packages/charmpp/package.py56
-rw-r--r--var/spack/repos/builtin/packages/chatterbug/package.py2
-rw-r--r--var/spack/repos/builtin/packages/check/package.py2
-rw-r--r--var/spack/repos/builtin/packages/chgcentre/package.py2
-rw-r--r--var/spack/repos/builtin/packages/chill/package.py2
-rw-r--r--var/spack/repos/builtin/packages/chlorop/package.py3
-rw-r--r--var/spack/repos/builtin/packages/chombo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/chrony/package.py3
-rw-r--r--var/spack/repos/builtin/packages/chrpath/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cinch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/circos/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cistem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/citcoms/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cityhash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ck/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clamav/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clamr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/clapack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clara/package.py2
-rw-r--r--var/spack/repos/builtin/packages/claw/package.py22
-rw-r--r--var/spack/repos/builtin/packages/cleaveland4/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cleverleaf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clfft/package.py10
-rw-r--r--var/spack/repos/builtin/packages/clhep/package.py5
-rw-r--r--var/spack/repos/builtin/packages/cli11/package.py26
-rw-r--r--var/spack/repos/builtin/packages/clinfo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clingo-bootstrap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clingo/package.py13
-rw-r--r--var/spack/repos/builtin/packages/cln/package.py3
-rw-r--r--var/spack/repos/builtin/packages/cloc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cloog/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cloverleaf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cloverleaf3d/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clustal-omega/package.py2
-rw-r--r--var/spack/repos/builtin/packages/clustalw/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cmake/5882-enable-cce-fortran-preprocessing.patch31
-rw-r--r--var/spack/repos/builtin/packages/cmake/package.py39
-rw-r--r--var/spack/repos/builtin/packages/cmaq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cmark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cminpack/package.py5
-rw-r--r--var/spack/repos/builtin/packages/cmocka/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cmockery/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cmor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cnmem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cnpy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cntk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cntk1bitsgd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cnvnator/package.py4
-rw-r--r--var/spack/repos/builtin/packages/codar-cheetah/package.py2
-rw-r--r--var/spack/repos/builtin/packages/code-server/package.py2
-rw-r--r--var/spack/repos/builtin/packages/codec2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/codes/package.py4
-rw-r--r--var/spack/repos/builtin/packages/coevp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cohmm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/coin3d/package.py8
-rw-r--r--var/spack/repos/builtin/packages/coinhsl/package.py3
-rw-r--r--var/spack/repos/builtin/packages/coinutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/collectd/package.py14
-rw-r--r--var/spack/repos/builtin/packages/collier/package.py4
-rw-r--r--var/spack/repos/builtin/packages/colm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/colordiff/package.py2
-rw-r--r--var/spack/repos/builtin/packages/comd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/comgr/hip-tests.patch11
-rw-r--r--var/spack/repos/builtin/packages/comgr/package.py25
-rw-r--r--var/spack/repos/builtin/packages/commons-lang/package.py2
-rw-r--r--var/spack/repos/builtin/packages/commons-lang3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/commons-logging/package.py2
-rw-r--r--var/spack/repos/builtin/packages/compadre/package.py58
-rw-r--r--var/spack/repos/builtin/packages/compiz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/compositeproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/conda4aarch64/package.py2
-rw-r--r--var/spack/repos/builtin/packages/conduit/package.py149
-rw-r--r--var/spack/repos/builtin/packages/connect-proxy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/conserver/package.py2
-rw-r--r--var/spack/repos/builtin/packages/console-bridge/package.py2
-rw-r--r--var/spack/repos/builtin/packages/constype/package.py2
-rw-r--r--var/spack/repos/builtin/packages/consul/package.py2
-rw-r--r--var/spack/repos/builtin/packages/converge/package.py2
-rw-r--r--var/spack/repos/builtin/packages/coral/package.py59
-rw-r--r--var/spack/repos/builtin/packages/corenlp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/coreutils/package.py3
-rw-r--r--var/spack/repos/builtin/packages/corset/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cosbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cosma/package.py3
-rw-r--r--var/spack/repos/builtin/packages/cosmoflow-benchmark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cosmomc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cosp2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cotter/package.py2
-rw-r--r--var/spack/repos/builtin/packages/couchdb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cowsay/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cp2k/package.py132
-rw-r--r--var/spack/repos/builtin/packages/cpio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/cpmd/package.py105
-rw-r--r--var/spack/repos/builtin/packages/cpmd/test/1-h2o-pbc-geoopt.inp51
-rw-r--r--var/spack/repos/builtin/packages/cpmd/test/H_CVB_BLYP.psp28
-rw-r--r--var/spack/repos/builtin/packages/cpmd/test/O_MT_BLYP.psp1301
-rw-r--r--var/spack/repos/builtin/packages/cpp-httplib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cppad/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cppcheck/package.py6
-rw-r--r--var/spack/repos/builtin/packages/cppgsl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cpprestsdk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cppunit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cppzmq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cpu-features/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cpuinfo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cqrlib/cqr.patch20
-rw-r--r--var/spack/repos/builtin/packages/cqrlib/package.py28
-rw-r--r--var/spack/repos/builtin/packages/cquery/fix-gcc10.patch10
-rw-r--r--var/spack/repos/builtin/packages/cquery/package.py5
-rw-r--r--var/spack/repos/builtin/packages/cracklib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cradl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cram/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cray-fftw/package.py75
-rwxr-xr-xvar/spack/repos/builtin/packages/cray-libsci/package.py19
-rw-r--r--var/spack/repos/builtin/packages/cray-mpich/package.py105
-rw-r--r--var/spack/repos/builtin/packages/cromwell-womtool/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cromwell/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cronie/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cryptopp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cryptsetup/package.py8
-rw-r--r--var/spack/repos/builtin/packages/csa-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cscope/package.py2
-rw-r--r--var/spack/repos/builtin/packages/csdp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ctffind/package.py8
-rw-r--r--var/spack/repos/builtin/packages/ctpl/package.py3
-rw-r--r--var/spack/repos/builtin/packages/ctre/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cub/package.py11
-rw-r--r--var/spack/repos/builtin/packages/cube-blade/package.py23
-rw-r--r--var/spack/repos/builtin/packages/cube-blade/return-bool.patch9
-rw-r--r--var/spack/repos/builtin/packages/cube/package.py13
-rw-r--r--var/spack/repos/builtin/packages/cubelib/package.py3
-rw-r--r--var/spack/repos/builtin/packages/cubew/package.py3
-rw-r--r--var/spack/repos/builtin/packages/cubist/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cuda-memtest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cuda/package.py49
-rw-r--r--var/spack/repos/builtin/packages/cudnn/package.py371
-rw-r--r--var/spack/repos/builtin/packages/cufflinks/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cunit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cups/package.py2
-rw-r--r--var/spack/repos/builtin/packages/curl/package.py12
-rw-r--r--var/spack/repos/builtin/packages/cusz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cvector/package.py25
-rw-r--r--var/spack/repos/builtin/packages/cvs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cxx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cxxopts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/cxxtest/package.py18
-rw-r--r--var/spack/repos/builtin/packages/cyrus-sasl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/czmq/package.py4
-rw-r--r--var/spack/repos/builtin/packages/dakota/package.py6
-rw-r--r--var/spack/repos/builtin/packages/daligner/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dalton/package.py46
-rw-r--r--var/spack/repos/builtin/packages/damageproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/damaris/package.py2
-rw-r--r--var/spack/repos/builtin/packages/damselfly/package.py2
-rw-r--r--var/spack/repos/builtin/packages/darshan-runtime/package.py34
-rw-r--r--var/spack/repos/builtin/packages/darshan-util/package.py23
-rw-r--r--var/spack/repos/builtin/packages/dash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/datamash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dataspaces/package.py2
-rw-r--r--var/spack/repos/builtin/packages/datatransferkit/package.py10
-rw-r--r--var/spack/repos/builtin/packages/date/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dateutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/davix/package.py11
-rw-r--r--var/spack/repos/builtin/packages/dbcsr/package.py94
-rw-r--r--var/spack/repos/builtin/packages/dbow2/package.py22
-rw-r--r--var/spack/repos/builtin/packages/dbus-glib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dbus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dbxtool/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dcap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dcmtk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dd4hep/package.py69
-rw-r--r--var/spack/repos/builtin/packages/ddd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dealii-parameter-gui/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dealii/package.py60
-rw-r--r--var/spack/repos/builtin/packages/debbuild/package.py2
-rw-r--r--var/spack/repos/builtin/packages/debugedit/package.py32
-rw-r--r--var/spack/repos/builtin/packages/decentralized-internet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/deconseq-standalone/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dejagnu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/delly2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/delphes/package.py8
-rw-r--r--var/spack/repos/builtin/packages/delta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/denovogear/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dftbplus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dftd3-lib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dftd4/package.py43
-rw-r--r--var/spack/repos/builtin/packages/dftfe/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dhpmm-f/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dhtest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dia/package.py4
-rw-r--r--var/spack/repos/builtin/packages/dialign-tx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dialign/package.py2
-rw-r--r--var/spack/repos/builtin/packages/diamond/package.py2
-rw-r--r--var/spack/repos/builtin/packages/diffmark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/diffsplice/package.py2
-rw-r--r--var/spack/repos/builtin/packages/diffutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dihydrogen/package.py108
-rw-r--r--var/spack/repos/builtin/packages/dimemas/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ding-libs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dire/package.py4
-rw-r--r--var/spack/repos/builtin/packages/direnv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/discovar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/discovardenovo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/disktype/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dislin/package.py2
-rw-r--r--var/spack/repos/builtin/packages/distcc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/diy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dlib/package.py21
-rw-r--r--var/spack/repos/builtin/packages/dlpack/package.py10
-rw-r--r--var/spack/repos/builtin/packages/dmd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dmidecode/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dmlc-core/package.py5
-rw-r--r--var/spack/repos/builtin/packages/dmtcp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dmxproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dnsmap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dnsmasq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dnstop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dnstracer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/docbook-xml/package.py3
-rw-r--r--var/spack/repos/builtin/packages/docbook-xsl/package.py3
-rw-r--r--var/spack/repos/builtin/packages/dock/package.py3
-rw-r--r--var/spack/repos/builtin/packages/dos2unix/package.py4
-rw-r--r--var/spack/repos/builtin/packages/dosfstools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dotconf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dotnet-core-sdk/package.py10
-rw-r--r--var/spack/repos/builtin/packages/double-conversion/package.py2
-rw-r--r--var/spack/repos/builtin/packages/doxygen/cpp17_namespaces.patch30
-rw-r--r--var/spack/repos/builtin/packages/doxygen/gcc-partial-inlining-bug.patch14
-rw-r--r--var/spack/repos/builtin/packages/doxygen/package.py38
-rw-r--r--var/spack/repos/builtin/packages/dpdk/package.py12
-rw-r--r--var/spack/repos/builtin/packages/draco/package.py13
-rw-r--r--var/spack/repos/builtin/packages/dracut/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dramsim2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dray/package.py69
-rw-r--r--var/spack/repos/builtin/packages/dri2proto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dri3proto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/drill/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dropwatch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/druid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ds/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dsdp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dsqss/ctest.patch24
-rw-r--r--var/spack/repos/builtin/packages/dsqss/package.py72
-rw-r--r--var/spack/repos/builtin/packages/dsqss/spackpip.patch30
-rw-r--r--var/spack/repos/builtin/packages/dsrc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dssp/package.py20
-rw-r--r--var/spack/repos/builtin/packages/dtcmp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dtf/package.py64
-rw-r--r--var/spack/repos/builtin/packages/duperemove/package.py2
-rw-r--r--var/spack/repos/builtin/packages/dyninst/package.py13
-rw-r--r--var/spack/repos/builtin/packages/dysco/package.py2
-rw-r--r--var/spack/repos/builtin/packages/e2fsprogs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ea-utils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/eagle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/earlyoom/package.py2
-rw-r--r--var/spack/repos/builtin/packages/easybuild/package.py4
-rw-r--r--var/spack/repos/builtin/packages/ebms/package.py6
-rw-r--r--var/spack/repos/builtin/packages/ecbuild/package.py26
-rw-r--r--var/spack/repos/builtin/packages/eccodes/package.py19
-rw-r--r--var/spack/repos/builtin/packages/ecdsautils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ecflow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/eckit/package.py137
-rw-r--r--var/spack/repos/builtin/packages/eclipse-gcj-parser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ecos/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ecp-data-vis-sdk/package.py117
-rw-r--r--var/spack/repos/builtin/packages/ecp-io-sdk/package.py34
-rw-r--r--var/spack/repos/builtin/packages/ecp-proxy-apps/package.py10
-rw-r--r--var/spack/repos/builtin/packages/ecp-viz-sdk/package.py39
-rw-r--r--var/spack/repos/builtin/packages/ed/package.py2
-rw-r--r--var/spack/repos/builtin/packages/editline/package.py2
-rw-r--r--var/spack/repos/builtin/packages/editres/package.py2
-rw-r--r--var/spack/repos/builtin/packages/edm4hep/package.py73
-rw-r--r--var/spack/repos/builtin/packages/eem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/efivar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/eigen/package.py4
-rw-r--r--var/spack/repos/builtin/packages/eigenexa/fj_compiler.patch64
-rw-r--r--var/spack/repos/builtin/packages/eigenexa/gcc_compiler.patch29
-rw-r--r--var/spack/repos/builtin/packages/eigenexa/package.py69
-rw-r--r--var/spack/repos/builtin/packages/eigenexa/test/result-check.sh36
-rw-r--r--var/spack/repos/builtin/packages/eigenexa/test/run-test.sh4
-rw-r--r--var/spack/repos/builtin/packages/elasticsearch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/elemental/package.py12
-rw-r--r--var/spack/repos/builtin/packages/elfutils/package.py3
-rw-r--r--var/spack/repos/builtin/packages/elk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/elmerfem/package.py30
-rw-r--r--var/spack/repos/builtin/packages/elpa/package.py43
-rw-r--r--var/spack/repos/builtin/packages/elpa/python_shebang.patch8
-rw-r--r--var/spack/repos/builtin/packages/elsd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/elsdc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/elsi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/emacs/package.py16
-rw-r--r--var/spack/repos/builtin/packages/ember/package.py4
-rw-r--r--var/spack/repos/builtin/packages/emboss/package.py2
-rw-r--r--var/spack/repos/builtin/packages/embree/package.py2
-rw-r--r--var/spack/repos/builtin/packages/enca/package.py2
-rw-r--r--var/spack/repos/builtin/packages/enchant/package.py2
-rw-r--r--var/spack/repos/builtin/packages/energyplus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/entrezdirect/package.py2
-rw-r--r--var/spack/repos/builtin/packages/entt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/environment-modules/package.py6
-rw-r--r--var/spack/repos/builtin/packages/enzo/for_aarch64.patch11
-rw-r--r--var/spack/repos/builtin/packages/enzo/package.py67
-rw-r--r--var/spack/repos/builtin/packages/eospac/cpuinfo_comp_flags_key.patch23
-rw-r--r--var/spack/repos/builtin/packages/eospac/package.py16
-rw-r--r--var/spack/repos/builtin/packages/eq-r/package.py2
-rw-r--r--var/spack/repos/builtin/packages/er/package.py23
-rw-r--r--var/spack/repos/builtin/packages/erfa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/erlang/package.py9
-rw-r--r--var/spack/repos/builtin/packages/ermod/package.py2
-rw-r--r--var/spack/repos/builtin/packages/erne/package.py2
-rw-r--r--var/spack/repos/builtin/packages/es-shell/package.py3
-rw-r--r--var/spack/repos/builtin/packages/esmf/package.py11
-rw-r--r--var/spack/repos/builtin/packages/espanso/package.py2
-rw-r--r--var/spack/repos/builtin/packages/essl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/etcd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ethminer/package.py10
-rw-r--r--var/spack/repos/builtin/packages/ethtool/package.py2
-rw-r--r--var/spack/repos/builtin/packages/etsf-io/package.py6
-rw-r--r--var/spack/repos/builtin/packages/evemu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/everytrace-example/package.py2
-rw-r--r--var/spack/repos/builtin/packages/everytrace/package.py9
-rw-r--r--var/spack/repos/builtin/packages/evieext/package.py2
-rw-r--r--var/spack/repos/builtin/packages/evtgen/package.py67
-rw-r--r--var/spack/repos/builtin/packages/exa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/exabayes/package.py7
-rwxr-xr-xvar/spack/repos/builtin/packages/exago/package.py89
-rw-r--r--var/spack/repos/builtin/packages/examinimd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/examl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/exampm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/exasp2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/exciting/dfgather.patch27
-rw-r--r--var/spack/repos/builtin/packages/exciting/for_aarch64.patch12
-rw-r--r--var/spack/repos/builtin/packages/exciting/package.py120
-rw-r--r--var/spack/repos/builtin/packages/exiv2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/exmcutils/package.py5
-rw-r--r--var/spack/repos/builtin/packages/exodusii/package.py22
-rw-r--r--var/spack/repos/builtin/packages/exonerate-gff3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/exonerate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/expat/package.py15
-rw-r--r--var/spack/repos/builtin/packages/expect/package.py14
-rw-r--r--var/spack/repos/builtin/packages/expect/xcode_12.patch282
-rw-r--r--var/spack/repos/builtin/packages/express/package.py2
-rw-r--r--var/spack/repos/builtin/packages/extrae/package.py5
-rw-r--r--var/spack/repos/builtin/packages/exuberant-ctags/package.py2
-rw-r--r--var/spack/repos/builtin/packages/eztrace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/f2c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/f77-zmq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/f90cache/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fabtests/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fairlogger/package.py5
-rw-r--r--var/spack/repos/builtin/packages/faiss/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fakechroot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fakexrandr/package.py46
-rw-r--r--var/spack/repos/builtin/packages/falcon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fann/package.py2
-rw-r--r--var/spack/repos/builtin/packages/faodel/package.py24
-rw-r--r--var/spack/repos/builtin/packages/fasd/package.py21
-rw-r--r--var/spack/repos/builtin/packages/fast-global-file-status/package.py9
-rw-r--r--var/spack/repos/builtin/packages/fasta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastdb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastdfs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastjar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastjet/atlas.patch22
-rw-r--r--var/spack/repos/builtin/packages/fastjet/package.py7
-rw-r--r--var/spack/repos/builtin/packages/fastjson/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastmath/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastme/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastphase/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastq-screen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastqc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastqvalidator/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fasttext/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fasttransforms/package.py3
-rw-r--r--var/spack/repos/builtin/packages/fasttree/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fastx-toolkit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/faust/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fca/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fcgi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fd-find/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fdb/metkit_1.7.0.patch11
-rw-r--r--var/spack/repos/builtin/packages/fdb/package.py73
-rw-r--r--var/spack/repos/builtin/packages/fdupes/package.py3
-rw-r--r--var/spack/repos/builtin/packages/feh/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fenics-basix/package.py20
-rw-r--r--var/spack/repos/builtin/packages/fenics-dolfinx/package.py8
-rw-r--r--var/spack/repos/builtin/packages/fenics/header_fix.patch36
-rw-r--r--var/spack/repos/builtin/packages/fenics/package.py227
-rw-r--r--var/spack/repos/builtin/packages/fenics/petsc_3_11.patch31
-rw-r--r--var/spack/repos/builtin/packages/feq-parse/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fermi/ksw_for_aarch64.patch2
-rw-r--r--var/spack/repos/builtin/packages/fermi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fermikit/ksw_for_aarch64.patch8
-rw-r--r--var/spack/repos/builtin/packages/fermikit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fermisciencetools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ferret/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ffb/package.py14
-rw-r--r--var/spack/repos/builtin/packages/ffmpeg/package.py3
-rw-r--r--var/spack/repos/builtin/packages/ffr/package.py3
-rw-r--r--var/spack/repos/builtin/packages/ffsb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fftw/package.py19
-rw-r--r--var/spack/repos/builtin/packages/fftw/pfft-3.3.9.patch858
-rw-r--r--var/spack/repos/builtin/packages/fgsl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/figlet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/figtree/package.py2
-rw-r--r--var/spack/repos/builtin/packages/file/package.py5
-rw-r--r--var/spack/repos/builtin/packages/filebench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/filo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/filtlong/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fimpute/package.py2
-rw-r--r--var/spack/repos/builtin/packages/find-circ/package.py2
-rw-r--r--var/spack/repos/builtin/packages/findbugs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/findutils/nvhpc-long-width.patch17
-rw-r--r--var/spack/repos/builtin/packages/findutils/package.py52
-rw-r--r--var/spack/repos/builtin/packages/fio/package.py6
-rw-r--r--var/spack/repos/builtin/packages/fipscheck/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fish/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fixesproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fj/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fjcontrib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/fl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flac/package.py3
-rw-r--r--var/spack/repos/builtin/packages/flann/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flatbuffers/package.py35
-rw-r--r--var/spack/repos/builtin/packages/flatcc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flcl/package.py5
-rw-r--r--var/spack/repos/builtin/packages/flecsale/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flecsi/package.py34
-rw-r--r--var/spack/repos/builtin/packages/flecsph/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flex/package.py17
-rw-r--r--var/spack/repos/builtin/packages/flexi/for_aarch64.patch9
-rw-r--r--var/spack/repos/builtin/packages/flexi/package.py95
-rw-r--r--var/spack/repos/builtin/packages/flexiblas/package.py3
-rw-r--r--var/spack/repos/builtin/packages/flibcpp/package.py9
-rw-r--r--var/spack/repos/builtin/packages/flink/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flint/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fltk/package.py11
-rw-r--r--var/spack/repos/builtin/packages/flume/package.py2
-rw-r--r--var/spack/repos/builtin/packages/flux-core/package.py68
-rw-r--r--var/spack/repos/builtin/packages/flux-sched/package.py29
-rw-r--r--var/spack/repos/builtin/packages/fluxbox/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fmt/package.py7
-rw-r--r--var/spack/repos/builtin/packages/foam-extend/package.py2
-rw-r--r--var/spack/repos/builtin/packages/folly/package.py2
-rw-r--r--var/spack/repos/builtin/packages/font-util/package.py12
-rw-r--r--var/spack/repos/builtin/packages/fontcacheproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fontconfig/package.py11
-rw-r--r--var/spack/repos/builtin/packages/fontsproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fonttosfnt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/form/package.py3
-rw-r--r--var/spack/repos/builtin/packages/fortran/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fortrilinos/package.py24
-rw-r--r--var/spack/repos/builtin/packages/foundationdb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fox/package.py3
-rw-r--r--var/spack/repos/builtin/packages/fp16/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fpc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fping/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fplll/package.py33
-rw-r--r--var/spack/repos/builtin/packages/fpocket/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fqtrim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fr-hit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fraggenescan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/freebayes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/freeglut/package.py20
-rw-r--r--var/spack/repos/builtin/packages/freeimage/package.py2
-rw-r--r--var/spack/repos/builtin/packages/freeipmi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/freetype/package.py3
-rw-r--r--var/spack/repos/builtin/packages/freexl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fribidi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/frontier-client/frontier-client.patch13
-rw-r--r--var/spack/repos/builtin/packages/frontier-client/package.py38
-rw-r--r--var/spack/repos/builtin/packages/frontistr/package.py5
-rw-r--r--var/spack/repos/builtin/packages/fseq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fsl/build_log.patch11
-rw-r--r--var/spack/repos/builtin/packages/fsl/eddy_Makefile.patch11
-rw-r--r--var/spack/repos/builtin/packages/fsl/fsl_sub_v5.patch66
-rw-r--r--var/spack/repos/builtin/packages/fsl/fsl_sub_v6.patch86
-rw-r--r--var/spack/repos/builtin/packages/fsl/fslpython_install_v5.patch18
-rw-r--r--var/spack/repos/builtin/packages/fsl/fslpython_install_v6.patch39
-rw-r--r--var/spack/repos/builtin/packages/fsl/iconv.patch28
-rw-r--r--var/spack/repos/builtin/packages/fsl/package.py186
-rw-r--r--var/spack/repos/builtin/packages/fslsfonts/package.py4
-rw-r--r--var/spack/repos/builtin/packages/fstobdf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/fstrack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ftgl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ftk/package.py62
-rw-r--r--var/spack/repos/builtin/packages/fujitsu-fftw/package.py113
-rw-r--r--var/spack/repos/builtin/packages/fujitsu-mpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fujitsu-ssl2/package.py27
-rw-r--r--var/spack/repos/builtin/packages/fullock/package.py31
-rw-r--r--var/spack/repos/builtin/packages/funhpc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fuse-overlayfs/package.py6
-rw-r--r--var/spack/repos/builtin/packages/fyba/package.py2
-rw-r--r--var/spack/repos/builtin/packages/fzf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/g2o/package.py44
-rw-r--r--var/spack/repos/builtin/packages/g4abla/package.py4
-rw-r--r--var/spack/repos/builtin/packages/g4emlow/package.py5
-rw-r--r--var/spack/repos/builtin/packages/g4ensdfstate/package.py5
-rw-r--r--var/spack/repos/builtin/packages/g4incl/package.py6
-rw-r--r--var/spack/repos/builtin/packages/g4ndl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/g4neutronxs/package.py4
-rw-r--r--var/spack/repos/builtin/packages/g4particlexs/package.py8
-rw-r--r--var/spack/repos/builtin/packages/g4photonevaporation/package.py5
-rw-r--r--var/spack/repos/builtin/packages/g4pii/package.py4
-rw-r--r--var/spack/repos/builtin/packages/g4radioactivedecay/package.py5
-rw-r--r--var/spack/repos/builtin/packages/g4realsurface/package.py5
-rw-r--r--var/spack/repos/builtin/packages/g4saiddata/package.py4
-rw-r--r--var/spack/repos/builtin/packages/g4tendl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/gamess-ri-mp2-miniapp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gams/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ganglia/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gapbs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gapcloser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gapfiller/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gasnet/package.py228
-rw-r--r--var/spack/repos/builtin/packages/gate/package.py14
-rw-r--r--var/spack/repos/builtin/packages/gatepet2stir/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gatetools/package.py36
-rw-r--r--var/spack/repos/builtin/packages/gatk/package.py10
-rw-r--r--var/spack/repos/builtin/packages/gaudi/package.py9
-rw-r--r--var/spack/repos/builtin/packages/gaussian-src/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gaussian-view/package.py23
-rw-r--r--var/spack/repos/builtin/packages/gaussian/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gawk/package.py16
-rw-r--r--var/spack/repos/builtin/packages/gblocks/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gcc/package.py58
-rw-r--r--var/spack/repos/builtin/packages/gccmakedep/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gccxml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gchp/for_aarch64.patch24
-rw-r--r--var/spack/repos/builtin/packages/gchp/package.py61
-rw-r--r--var/spack/repos/builtin/packages/gconf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gcta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gdal/package.py77
-rw-r--r--var/spack/repos/builtin/packages/gdb/gdb-libintl.patch12
-rw-r--r--var/spack/repos/builtin/packages/gdb/package.py55
-rw-r--r--var/spack/repos/builtin/packages/gdbm/package.py23
-rw-r--r--var/spack/repos/builtin/packages/gdk-pixbuf/package.py19
-rw-r--r--var/spack/repos/builtin/packages/gdl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/gdrcopy/package.py19
-rw-r--r--var/spack/repos/builtin/packages/geant4-data/package.py21
-rw-r--r--var/spack/repos/builtin/packages/geant4-vmc/package.py11
-rw-r--r--var/spack/repos/builtin/packages/geant4/package.py29
-rw-r--r--var/spack/repos/builtin/packages/gearshifft/gearshifft-v0.4.0-cmake-variable-name.patch26
-rw-r--r--var/spack/repos/builtin/packages/gearshifft/package.py41
-rw-r--r--var/spack/repos/builtin/packages/gemmlowp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/genemark-et/package.py14
-rw-r--r--var/spack/repos/builtin/packages/genesis/fj_compiler.patch342
-rw-r--r--var/spack/repos/builtin/packages/genesis/fj_compiler_1.5.1.patch286
-rw-r--r--var/spack/repos/builtin/packages/genesis/package.py112
-rw-r--r--var/spack/repos/builtin/packages/genfit/package.py40
-rw-r--r--var/spack/repos/builtin/packages/gengetopt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/genie/genie_disable_gopt_with_compiler_check.patch26
-rw-r--r--var/spack/repos/builtin/packages/genie/package.py168
-rw-r--r--var/spack/repos/builtin/packages/genomefinisher/package.py2
-rw-r--r--var/spack/repos/builtin/packages/genometools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/genomeworks/package.py2
-rw-r--r--var/spack/repos/builtin/packages/genrich/package.py2
-rw-r--r--var/spack/repos/builtin/packages/geode/package.py2
-rw-r--r--var/spack/repos/builtin/packages/geoip-api-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/geoip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/geopm/package.py7
-rw-r--r--var/spack/repos/builtin/packages/geos/geos_python3_config.patch67
-rw-r--r--var/spack/repos/builtin/packages/geos/package.py9
-rw-r--r--var/spack/repos/builtin/packages/gettext/package.py6
-rw-r--r--var/spack/repos/builtin/packages/gflags/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ghost/package.py19
-rw-r--r--var/spack/repos/builtin/packages/ghostscript-fonts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ghostscript/package.py27
-rw-r--r--var/spack/repos/builtin/packages/giflib/package.py28
-rw-r--r--var/spack/repos/builtin/packages/ginac/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ginkgo/package.py107
-rw-r--r--var/spack/repos/builtin/packages/giraph/package.py2
-rw-r--r--var/spack/repos/builtin/packages/git-fat-git/package.py2
-rw-r--r--var/spack/repos/builtin/packages/git-imerge/package.py2
-rw-r--r--var/spack/repos/builtin/packages/git-lfs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/git/package.py89
-rw-r--r--var/spack/repos/builtin/packages/gitconddb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gl2ps/package.py6
-rw-r--r--var/spack/repos/builtin/packages/glew/package.py2
-rw-r--r--var/spack/repos/builtin/packages/glfmultiples/package.py2
-rw-r--r--var/spack/repos/builtin/packages/glfw/package.py29
-rw-r--r--var/spack/repos/builtin/packages/glib-networking/package.py2
-rw-r--r--var/spack/repos/builtin/packages/glib/package.py31
-rw-r--r--var/spack/repos/builtin/packages/glibmm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/glimmer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/glm/package.py23
-rw-r--r--var/spack/repos/builtin/packages/global/package.py2
-rw-r--r--var/spack/repos/builtin/packages/globalarrays/package.py59
-rw-r--r--var/spack/repos/builtin/packages/glog/package.py8
-rw-r--r--var/spack/repos/builtin/packages/gloo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/glpk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/glproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/glusterfs/package.py4
-rw-r--r--var/spack/repos/builtin/packages/glvis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gmake/package.py5
-rw-r--r--var/spack/repos/builtin/packages/gmap-gsnap/package.py3
-rw-r--r--var/spack/repos/builtin/packages/gmime/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gmodel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gmp/package.py3
-rw-r--r--var/spack/repos/builtin/packages/gmsh/package.py178
-rw-r--r--var/spack/repos/builtin/packages/gmt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/gmtsar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gnat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gnome-common/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gnupg/package.py22
-rw-r--r--var/spack/repos/builtin/packages/gnuplot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gnuradio/package.py28
-rw-r--r--var/spack/repos/builtin/packages/gnutls/package.py3
-rw-r--r--var/spack/repos/builtin/packages/go-bootstrap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/go-md2man/package.py2
-rw-r--r--var/spack/repos/builtin/packages/go/package.py28
-rw-r--r--var/spack/repos/builtin/packages/gobject-introspection/package.py12
-rw-r--r--var/spack/repos/builtin/packages/goblin-hmc-sim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/googletest/package.py5
-rw-r--r--var/spack/repos/builtin/packages/gosam-contrib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/gotcha/package.py7
-rw-r--r--var/spack/repos/builtin/packages/gource/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gpdb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gperf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gperftools/package.py3
-rw-r--r--var/spack/repos/builtin/packages/gpgme/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gpi-2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gplates/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gprolog/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gpu-burn/Makefile.patch18
-rw-r--r--var/spack/repos/builtin/packages/gpu-burn/package.py45
-rw-r--r--var/spack/repos/builtin/packages/gqrx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gr-osmosdr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/grabix/package.py30
-rw-r--r--var/spack/repos/builtin/packages/grace/package.py54
-rw-r--r--var/spack/repos/builtin/packages/grackle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gradle/package.py41
-rw-r--r--var/spack/repos/builtin/packages/grads/package.py2
-rw-r--r--var/spack/repos/builtin/packages/grafana/package.py2
-rw-r--r--var/spack/repos/builtin/packages/grandr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/graph500/package.py2
-rw-r--r--var/spack/repos/builtin/packages/graphblast/package.py2
-rw-r--r--var/spack/repos/builtin/packages/graphicsmagick/package.py2
-rw-r--r--var/spack/repos/builtin/packages/graphite2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/graphlib/package.py3
-rw-r--r--var/spack/repos/builtin/packages/graphmap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/graphviz/package.py46
-rw-r--r--var/spack/repos/builtin/packages/grass/package.py2
-rw-r--r--var/spack/repos/builtin/packages/graylog2-server/package.py2
-rw-r--r--var/spack/repos/builtin/packages/grep/package.py2
-rw-r--r--var/spack/repos/builtin/packages/grib-api/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gridlab-d/package.py3
-rw-r--r--var/spack/repos/builtin/packages/grnboost/package.py2
-rw-r--r--var/spack/repos/builtin/packages/groff/BuildFoundries.patch11
-rw-r--r--var/spack/repos/builtin/packages/groff/package.py16
-rw-r--r--var/spack/repos/builtin/packages/groff/pdfmom.patch11
-rw-r--r--var/spack/repos/builtin/packages/gromacs/package.py184
-rw-r--r--var/spack/repos/builtin/packages/grpc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gsettings-desktop-schemas/package.py14
-rw-r--r--var/spack/repos/builtin/packages/gsl/package.py8
-rw-r--r--var/spack/repos/builtin/packages/gslib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gtk-doc/build.patch25
-rw-r--r--var/spack/repos/builtin/packages/gtk-doc/package.py7
-rw-r--r--var/spack/repos/builtin/packages/gtkmm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gtkorvo-atl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gtkorvo-dill/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gtkorvo-enet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gtkplus/package.py99
-rw-r--r--var/spack/repos/builtin/packages/gtksourceview/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/guacamole-client/package.py2
-rw-r--r--var/spack/repos/builtin/packages/guacamole-server/package.py2
-rw-r--r--var/spack/repos/builtin/packages/guidance/package.py2
-rw-r--r--var/spack/repos/builtin/packages/guile/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gunrock/package.py30
-rw-r--r--var/spack/repos/builtin/packages/gurobi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/gzip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/h2database/package.py2
-rw-r--r--var/spack/repos/builtin/packages/h5cpp/package.py12
-rw-r--r--var/spack/repos/builtin/packages/h5hut/package.py2
-rw-r--r--var/spack/repos/builtin/packages/h5part/package.py2
-rw-r--r--var/spack/repos/builtin/packages/h5utils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/h5z-zfp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hacckernels/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hackrf-host/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hadoop/package.py5
-rw-r--r--var/spack/repos/builtin/packages/hal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/halc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/half/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hama/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hapcut2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hapdip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/haploview/package.py2
-rw-r--r--var/spack/repos/builtin/packages/haproxy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hardlink/package.py2
-rw-r--r--var/spack/repos/builtin/packages/harfbuzz/package.py15
-rw-r--r--var/spack/repos/builtin/packages/harminv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hashcat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/haveged/package.py15
-rw-r--r--var/spack/repos/builtin/packages/hazelcast/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hbase/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hbm-dramsim2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hcol/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hcoll/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hdf-eos2/hdf-eos2.nondarwin-no-single_module.patch27
-rw-r--r--var/spack/repos/builtin/packages/hdf-eos2/package.py99
-rw-r--r--var/spack/repos/builtin/packages/hdf-eos5/hdf-eos5.nondarwin-no-single_module.patch28
-rw-r--r--var/spack/repos/builtin/packages/hdf-eos5/package.py99
-rw-r--r--var/spack/repos/builtin/packages/hdf/package.py10
-rw-r--r--var/spack/repos/builtin/packages/hdf5-blosc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hdf5/hdf5_1.8_gcc10.patch12
-rw-r--r--var/spack/repos/builtin/packages/hdf5/nag.mpi.libtool.patch62
-rw-r--r--var/spack/repos/builtin/packages/hdf5/package.py88
-rw-r--r--var/spack/repos/builtin/packages/hdfview/package.py2
-rw-r--r--var/spack/repos/builtin/packages/healpix-cxx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/heaptrack/package.py4
-rw-r--r--var/spack/repos/builtin/packages/heffte/package.py2
-rw-r--r--var/spack/repos/builtin/packages/helics/package.py37
-rw-r--r--var/spack/repos/builtin/packages/help2man/package.py4
-rw-r--r--var/spack/repos/builtin/packages/henson/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hepmc/package.py11
-rw-r--r--var/spack/repos/builtin/packages/hepmc3/package.py5
-rw-r--r--var/spack/repos/builtin/packages/hepmcanalysis/package.py4
-rw-r--r--var/spack/repos/builtin/packages/heppdt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/heputils/package.py4
-rw-r--r--var/spack/repos/builtin/packages/hercules/package.py2
-rw-r--r--var/spack/repos/builtin/packages/herwig3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/herwigpp/package.py4
-rw-r--r--var/spack/repos/builtin/packages/hevea/package.py29
-rw-r--r--var/spack/repos/builtin/packages/hibench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hic-pro/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hicolor-icon-theme/package.py26
-rw-r--r--var/spack/repos/builtin/packages/highfive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/highwayhash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hiop/package.py112
-rw-r--r--var/spack/repos/builtin/packages/hip-rocclr/package.py54
-rw-r--r--var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo-and-remove-compiler-rt-linkage-for-host.4.2.0.patch47
-rw-r--r--var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.3.10.0.patch56
-rw-r--r--var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.3.7.0.patch56
-rw-r--r--var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.4.1.0.patch44
-rw-r--r--var/spack/repos/builtin/packages/hip/0004-Drop-clang-rt-builtins-linking-on-hip-host.3.10.0.patch32
-rw-r--r--var/spack/repos/builtin/packages/hip/0004-Drop-clang-rt-builtins-linking-on-hip-host.3.7.0.patch35
-rw-r--r--var/spack/repos/builtin/packages/hip/package.py222
-rw-r--r--var/spack/repos/builtin/packages/hipblas/package.py22
-rw-r--r--var/spack/repos/builtin/packages/hipcub/package.py15
-rw-r--r--var/spack/repos/builtin/packages/hipfft/package.py41
-rw-r--r--var/spack/repos/builtin/packages/hipfort/package.py12
-rw-r--r--var/spack/repos/builtin/packages/hipify-clang/package.py13
-rw-r--r--var/spack/repos/builtin/packages/hipsparse/package.py18
-rw-r--r--var/spack/repos/builtin/packages/hipsycl/package.py14
-rw-r--r--var/spack/repos/builtin/packages/hiredis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hisat2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hisea/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hivex/package.py19
-rw-r--r--var/spack/repos/builtin/packages/hmmer/package.py5
-rw-r--r--var/spack/repos/builtin/packages/homer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hoomd-blue/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hotspot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hpcc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hpccg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hpcg/package.py8
-rw-r--r--var/spack/repos/builtin/packages/hpctoolkit/gcc10-enum.patch15
-rw-r--r--var/spack/repos/builtin/packages/hpctoolkit/package.py67
-rw-r--r--var/spack/repos/builtin/packages/hpcviewer/package.py45
-rw-r--r--var/spack/repos/builtin/packages/hpgmg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hping/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hpl/package.py3
-rw-r--r--var/spack/repos/builtin/packages/hpx/package.py10
-rw-r--r--var/spack/repos/builtin/packages/hpx5/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hsa-rocr-dev/package.py27
-rw-r--r--var/spack/repos/builtin/packages/hsakmt-roct/package.py16
-rw-r--r--var/spack/repos/builtin/packages/hsakmt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hsf-cmaketools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hssp/package.py22
-rw-r--r--var/spack/repos/builtin/packages/hstr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/htop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/htslib/package.py3
-rw-r--r--var/spack/repos/builtin/packages/http-get/package.py10
-rw-r--r--var/spack/repos/builtin/packages/http-load/package.py10
-rw-r--r--var/spack/repos/builtin/packages/http-parser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/http-ping/package.py10
-rw-r--r--var/spack/repos/builtin/packages/http-post/package.py10
-rw-r--r--var/spack/repos/builtin/packages/httpd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/httperf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/httpie/package.py4
-rw-r--r--var/spack/repos/builtin/packages/httping/package.py2
-rw-r--r--var/spack/repos/builtin/packages/httpress/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hub/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hudi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hugo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hunspell/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hw-probe/package.py20
-rw-r--r--var/spack/repos/builtin/packages/hwdata/package.py16
-rw-r--r--var/spack/repos/builtin/packages/hwloc/0001-Try-linking-to-libtinfo.patch25
-rw-r--r--var/spack/repos/builtin/packages/hwloc/package.py20
-rw-r--r--var/spack/repos/builtin/packages/hybpiper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hybrid-lambda/package.py39
-rw-r--r--var/spack/repos/builtin/packages/hybridsim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hydra/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hydrogen/package.py47
-rw-r--r--var/spack/repos/builtin/packages/hyperscan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/hyphen/package.py22
-rw-r--r--var/spack/repos/builtin/packages/hyphy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/hypre/package.py71
-rw-r--r--var/spack/repos/builtin/packages/i3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ibm-databroker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ibm-java/package.py4
-rw-r--r--var/spack/repos/builtin/packages/ibmisc/package.py18
-rw-r--r--var/spack/repos/builtin/packages/icarus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/iceauth/package.py4
-rw-r--r--var/spack/repos/builtin/packages/icedtea/package.py2
-rw-r--r--var/spack/repos/builtin/packages/icet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ico/package.py4
-rw-r--r--var/spack/repos/builtin/packages/icu4c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/id3lib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/idba/package.py2
-rw-r--r--var/spack/repos/builtin/packages/idl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/iegenlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ignite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/igprof/igprof-5.9.16.patch131
-rw-r--r--var/spack/repos/builtin/packages/igprof/package.py34
-rw-r--r--var/spack/repos/builtin/packages/igraph/package.py2
-rw-r--r--var/spack/repos/builtin/packages/igv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/igvtools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ike-scan/package.py15
-rw-r--r--var/spack/repos/builtin/packages/ilmbase/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ima-evm-utils/package.py23
-rw-r--r--var/spack/repos/builtin/packages/imagemagick/package.py8
-rw-r--r--var/spack/repos/builtin/packages/imake/package.py11
-rw-r--r--var/spack/repos/builtin/packages/imlib2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/imp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/impute2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/infernal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/influxdb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/iniparser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/inputproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/intel-daal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/intel-gpu-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/intel-ipp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/intel-llvm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/intel-mkl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/intel-mpi-benchmarks/add_const.patch13
-rw-r--r--var/spack/repos/builtin/packages/intel-mpi-benchmarks/package.py7
-rw-r--r--var/spack/repos/builtin/packages/intel-mpi-benchmarks/reorder_benchmark_macros.patch108
-rw-r--r--var/spack/repos/builtin/packages/intel-mpi/package.py8
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-ccl/package.py31
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-compilers/package.py117
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-dal/package.py32
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-dnn/package.py42
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-ipp/package.py29
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-ippcp/package.py30
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-mkl/package.py60
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-mpi/package.py82
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-tbb/package.py48
-rw-r--r--var/spack/repos/builtin/packages/intel-oneapi-vpl/package.py29
-rw-r--r--var/spack/repos/builtin/packages/intel-parallel-studio/package.py7
-rw-r--r--var/spack/repos/builtin/packages/intel-pin/package.py2
-rw-r--r--var/spack/repos/builtin/packages/intel-tbb/macos-arm64.patch32
-rw-r--r--var/spack/repos/builtin/packages/intel-tbb/package.py15
-rw-r--r--var/spack/repos/builtin/packages/intel-xed/1201-segv.patch18
-rw-r--r--var/spack/repos/builtin/packages/intel-xed/package.py72
-rw-r--r--var/spack/repos/builtin/packages/intel/package.py5
-rw-r--r--var/spack/repos/builtin/packages/interproscan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/intltool/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ioapi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/ior/package.py5
-rw-r--r--var/spack/repos/builtin/packages/iozone/package.py9
-rw-r--r--var/spack/repos/builtin/packages/ipcalc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/iperf2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/iperf3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ipopt/package.py27
-rw-r--r--var/spack/repos/builtin/packages/iproute2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/iptraf-ng/package.py22
-rw-r--r--var/spack/repos/builtin/packages/iq-tree/package.py6
-rw-r--r--var/spack/repos/builtin/packages/isaac-server/package.py7
-rw-r--r--var/spack/repos/builtin/packages/isaac/package.py4
-rw-r--r--var/spack/repos/builtin/packages/isc-dhcp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/isescan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/isl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/iso-codes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ispc/package.py15
-rw-r--r--var/spack/repos/builtin/packages/istio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/itensor/package.py132
-rw-r--r--var/spack/repos/builtin/packages/itk/package.py3
-rw-r--r--var/spack/repos/builtin/packages/itstool/package.py2
-rw-r--r--var/spack/repos/builtin/packages/itsx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/iwyu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jackcess/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jafka/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jags/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jali/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jansi-native/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jansi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jansson/package.py5
-rw-r--r--var/spack/repos/builtin/packages/jasper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jbigkit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jblob/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jchronoss/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jdk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jellyfish/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jemalloc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jetty-project/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jhpcn-df/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jimtcl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jline3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jmol/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jose/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jpegoptim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/json-c/package.py29
-rw-r--r--var/spack/repos/builtin/packages/json-cwx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/json-fortran/package.py2
-rw-r--r--var/spack/repos/builtin/packages/json-glib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jsoncpp/package.py3
-rw-r--r--var/spack/repos/builtin/packages/jstorm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/jube/package.py2
-rw-r--r--var/spack/repos/builtin/packages/judy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/julea/package.py2
-rw-r--r--var/spack/repos/builtin/packages/julia/package.py6
-rw-r--r--var/spack/repos/builtin/packages/junit4/package.py2
-rw-r--r--var/spack/repos/builtin/packages/k8/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kafka/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kahip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kaiju/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kaks-calculator/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kaldi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kallisto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/karma/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kassiopeia/package.py4
-rw-r--r--var/spack/repos/builtin/packages/kbd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kbproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kcov/package.py4
-rw-r--r--var/spack/repos/builtin/packages/kdiff3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kea/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kealib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/keepalived/package.py7
-rw-r--r--var/spack/repos/builtin/packages/keepassxc/package.py78
-rw-r--r--var/spack/repos/builtin/packages/kentutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/keyutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kibana/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kicad/package.py84
-rw-r--r--var/spack/repos/builtin/packages/kim-api/package.py11
-rw-r--r--var/spack/repos/builtin/packages/kinesis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kitty/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kmergenie/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kmod/package.py8
-rw-r--r--var/spack/repos/builtin/packages/knem/package.py6
-rw-r--r--var/spack/repos/builtin/packages/kokkos-kernels-legacy/package.py8
-rw-r--r--var/spack/repos/builtin/packages/kokkos-kernels/package.py3
-rw-r--r--var/spack/repos/builtin/packages/kokkos-legacy/package.py28
-rw-r--r--var/spack/repos/builtin/packages/kokkos-nvcc-wrapper/package.py4
-rw-r--r--var/spack/repos/builtin/packages/kokkos/package.py131
-rw-r--r--var/spack/repos/builtin/packages/kraken/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kraken2/package.py5
-rw-r--r--var/spack/repos/builtin/packages/krb5/mit-krb5-1.17-static-libs.patch15
-rw-r--r--var/spack/repos/builtin/packages/krb5/package.py18
-rw-r--r--var/spack/repos/builtin/packages/krims/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kripke/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kubernetes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kvasir-mpl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/kvtree/package.py24
-rw-r--r--var/spack/repos/builtin/packages/kylin/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ladot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/laghos/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lame/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lammps/package.py92
-rw-r--r--var/spack/repos/builtin/packages/lapackpp/package.py24
-rw-r--r--var/spack/repos/builtin/packages/last/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lastz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/laszip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/latte/package.py2
-rw-r--r--var/spack/repos/builtin/packages/launchmon/package.py3
-rw-r--r--var/spack/repos/builtin/packages/lazyten/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lbann/package.py249
-rw-r--r--var/spack/repos/builtin/packages/lbxproxy/package.py8
-rw-r--r--var/spack/repos/builtin/packages/lbzip2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lcals/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lcio/package.py10
-rw-r--r--var/spack/repos/builtin/packages/lcms/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lcov/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ldak/package.py22
-rw-r--r--var/spack/repos/builtin/packages/ldc-bootstrap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ldc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/legion/README.md153
-rw-r--r--var/spack/repos/builtin/packages/legion/package.py356
-rw-r--r--var/spack/repos/builtin/packages/lemon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/leptonica/package.py2
-rw-r--r--var/spack/repos/builtin/packages/less/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lesstif/package.py2
-rw-r--r--var/spack/repos/builtin/packages/leveldb/package.py8
-rw-r--r--var/spack/repos/builtin/packages/lftp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lhapdf/package.py12
-rw-r--r--var/spack/repos/builtin/packages/lhapdf5/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libabigail/package.py28
-rw-r--r--var/spack/repos/builtin/packages/libaec/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libaio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libao/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libapplewm/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libapreq2/package.py25
-rw-r--r--var/spack/repos/builtin/packages/libarchive/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libasr/package.py16
-rw-r--r--var/spack/repos/builtin/packages/libassuan/package.py13
-rw-r--r--var/spack/repos/builtin/packages/libatasmart/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libatomic-ops/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libbacktrace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libbeagle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libbeato/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libbinio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libblastrampoline/package.py26
-rw-r--r--var/spack/repos/builtin/packages/libbsd/package.py10
-rw-r--r--var/spack/repos/builtin/packages/libbson/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libbytesize/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libc/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libcanberra/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcap-ng/package.py25
-rw-r--r--var/spack/repos/builtin/packages/libcap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcatalyst/package.py40
-rw-r--r--var/spack/repos/builtin/packages/libceed/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcerf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcgroup/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcint/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcircle/CrayPE_configure-ac.patch17
-rw-r--r--var/spack/repos/builtin/packages/libcircle/package.py11
-rw-r--r--var/spack/repos/builtin/packages/libconfig/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libconfuse/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libcroco/package.py9
-rw-r--r--var/spack/repos/builtin/packages/libctl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcudf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcuml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcumlprims/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libcxxwrap-julia/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libcyaml/package.py24
-rw-r--r--var/spack/repos/builtin/packages/libdaemon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libdap4/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libdatrie/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libdeflate/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libdivsufsort/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libdmx/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libdrm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libdwarf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libeatmydata/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libecpint/package.py31
-rw-r--r--var/spack/repos/builtin/packages/libedit/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libelf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libemos/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libepoxy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libestr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libev/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libevdev/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libevent/package.py17
-rw-r--r--var/spack/repos/builtin/packages/libevpath/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libexif/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libfabric/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libfastcommon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libfastjson/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libffi/package.py7
-rw-r--r--var/spack/repos/builtin/packages/libffs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libfive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libflame/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libfontenc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libfs/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libfuse/0001-Do-not-run-install-script.patch27
-rw-r--r--var/spack/repos/builtin/packages/libfuse/package.py78
-rw-r--r--var/spack/repos/builtin/packages/libfyaml/package.py18
-rw-r--r--var/spack/repos/builtin/packages/libgcrypt/package.py9
-rw-r--r--var/spack/repos/builtin/packages/libgd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libgeotiff/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libgff/package.py19
-rw-r--r--var/spack/repos/builtin/packages/libgit2/package.py5
-rw-r--r--var/spack/repos/builtin/packages/libgpg-error/package.py22
-rw-r--r--var/spack/repos/builtin/packages/libgpuarray/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libgridxc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libgssglue/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libgtextutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libharu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libhbaapi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libhio/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libhugetlbfs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libiberty/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libibumad/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libical/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libice/package.py11
-rw-r--r--var/spack/repos/builtin/packages/libiconv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libid3tag/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libidl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libidn2/package.py7
-rw-r--r--var/spack/repos/builtin/packages/libimagequant/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libimobiledevice/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libint/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libisal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libiscsi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libjpeg-turbo/package.py10
-rw-r--r--var/spack/repos/builtin/packages/libjpeg/package.py5
-rw-r--r--var/spack/repos/builtin/packages/libjson/package.py5
-rw-r--r--var/spack/repos/builtin/packages/libjwt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libkcapi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libkml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libksba/package.py13
-rw-r--r--var/spack/repos/builtin/packages/liblas/package.py2
-rw-r--r--var/spack/repos/builtin/packages/liblbfgs/package.py29
-rw-r--r--var/spack/repos/builtin/packages/liblbxutil/package.py6
-rw-r--r--var/spack/repos/builtin/packages/liblockfile/package.py2
-rw-r--r--var/spack/repos/builtin/packages/liblognorm/package.py27
-rw-r--r--var/spack/repos/builtin/packages/liblouis/package.py21
-rw-r--r--var/spack/repos/builtin/packages/libluv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmacaroons/package.py26
-rw-r--r--var/spack/repos/builtin/packages/libmad/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmatheval/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmaus2/package.py27
-rw-r--r--var/spack/repos/builtin/packages/libmaxminddb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmbim/package.py32
-rw-r--r--var/spack/repos/builtin/packages/libmcrypt/package.py17
-rw-r--r--var/spack/repos/builtin/packages/libmd/package.py22
-rw-r--r--var/spack/repos/builtin/packages/libmesh/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmetalink/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmicrodns/package.py17
-rw-r--r--var/spack/repos/builtin/packages/libmicrohttpd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmmtf-cpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmng/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmnl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmo-unpack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmodbus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libmonitor/add-monitor-comm-rank-notification.patch77
-rw-r--r--var/spack/repos/builtin/packages/libmonitor/libmonitorkrell-0000.patch18
-rw-r--r--var/spack/repos/builtin/packages/libmonitor/package.py26
-rw-r--r--var/spack/repos/builtin/packages/libmpdclient/package.py20
-rw-r--r--var/spack/repos/builtin/packages/libnbc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libndp/package.py24
-rw-r--r--var/spack/repos/builtin/packages/libnet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libnetfilter-conntrack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libnetfilter-cthelper/package.py21
-rw-r--r--var/spack/repos/builtin/packages/libnetfilter-cttimeout/package.py22
-rw-r--r--var/spack/repos/builtin/packages/libnetfilter-queue/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libnetworkit/package.py7
-rw-r--r--var/spack/repos/builtin/packages/libnfnetlink/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libnfs/package.py19
-rw-r--r--var/spack/repos/builtin/packages/libnfsidmap/package.py25
-rw-r--r--var/spack/repos/builtin/packages/libnftnl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libnl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libnotify/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libnova/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libnrm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libnsl/package.py7
-rw-r--r--var/spack/repos/builtin/packages/libogg/package.py3
-rw-r--r--var/spack/repos/builtin/packages/liboldx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libopts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libp11/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libpam/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libpaper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libpcap/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libpciaccess/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libpeas/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libpfm4/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libpipeline/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libplist/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libpmemobj-cpp/package.py24
-rw-r--r--var/spack/repos/builtin/packages/libpng/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libproxy/package.py10
-rw-r--r--var/spack/repos/builtin/packages/libpsl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libpthread-stubs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libpulsar/package.py33
-rw-r--r--var/spack/repos/builtin/packages/libqglviewer/package.py37
-rw-r--r--var/spack/repos/builtin/packages/libqrencode/package.py44
-rw-r--r--var/spack/repos/builtin/packages/libquo/package.py13
-rw-r--r--var/spack/repos/builtin/packages/librdkafka/package.py2
-rw-r--r--var/spack/repos/builtin/packages/librelp/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libristra/package.py42
-rw-r--r--var/spack/repos/builtin/packages/librmm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/librom/package.py2
-rw-r--r--var/spack/repos/builtin/packages/librsb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/librsvg/package.py5
-rw-r--r--var/spack/repos/builtin/packages/librtlsdr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libsakura/cmakelists.patch38
-rw-r--r--var/spack/repos/builtin/packages/libsakura/package.py32
-rw-r--r--var/spack/repos/builtin/packages/libsamplerate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libseccomp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libsecret/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libsharp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libshm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libsigcpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libsigsegv/package.py5
-rw-r--r--var/spack/repos/builtin/packages/libsm/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libsndfile/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libsodium/package.py19
-rw-r--r--var/spack/repos/builtin/packages/libspatialindex/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libspatialite/package.py11
-rw-r--r--var/spack/repos/builtin/packages/libspiro/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libsplash/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libssh/package.py5
-rw-r--r--var/spack/repos/builtin/packages/libssh2/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libsvm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libszip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libtar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libtasn1/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libtermkey/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libthai/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libtheora/exit-prior-to-running-configure.patch23
-rw-r--r--var/spack/repos/builtin/packages/libtheora/fix_encoding.patch12
-rw-r--r--var/spack/repos/builtin/packages/libtheora/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libtiff/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libtirpc/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libtlx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libtomlc99/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libtommath/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libtool/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libtorrent/package.py20
-rw-r--r--var/spack/repos/builtin/packages/libtree/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libuecc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libunistring/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libunwind/package.py16
-rw-r--r--var/spack/repos/builtin/packages/libusb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libusbmuxd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libuser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libuuid/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libuv/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libvdwxc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libverto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libvips/package.py7
-rw-r--r--var/spack/repos/builtin/packages/libvorbis/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libvori/package.py20
-rw-r--r--var/spack/repos/builtin/packages/libvterm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libwebp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libwebsockets/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libwhich/package.py27
-rw-r--r--var/spack/repos/builtin/packages/libwindowswm/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libx11/package.py16
-rw-r--r--var/spack/repos/builtin/packages/libxau/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxaw/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxaw3d/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libxc/package.py19
-rw-r--r--var/spack/repos/builtin/packages/libxcb/package.py24
-rw-r--r--var/spack/repos/builtin/packages/libxcomposite/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxcrypt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libxcursor/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxdamage/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libxdmcp/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxevie/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libxext/package.py11
-rw-r--r--var/spack/repos/builtin/packages/libxfixes/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libxfont/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libxfont2/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libxfontcache/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libxi/package.py18
-rw-r--r--var/spack/repos/builtin/packages/libxinerama/package.py11
-rw-r--r--var/spack/repos/builtin/packages/libxkbcommon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libxkbfile/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxkbui/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libxml2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxmu/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxp/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxpm/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxpresent/package.py12
-rw-r--r--var/spack/repos/builtin/packages/libxprintapputil/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxprintutil/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxrandr/package.py13
-rw-r--r--var/spack/repos/builtin/packages/libxrender/package.py9
-rw-r--r--var/spack/repos/builtin/packages/libxres/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxscrnsaver/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxshmfence/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxslt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libxsmm/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxstream/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libxt/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxtrap/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxtst/package.py10
-rw-r--r--var/spack/repos/builtin/packages/libxv/package.py4
-rw-r--r--var/spack/repos/builtin/packages/libxvmc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libxxf86dga/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libxxf86misc/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libxxf86vm/package.py13
-rw-r--r--var/spack/repos/builtin/packages/libyaml/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libyogrt/package.py41
-rw-r--r--var/spack/repos/builtin/packages/libzip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/libzmq/package.py14
-rw-r--r--var/spack/repos/builtin/packages/liggghts/package.py4
-rw-r--r--var/spack/repos/builtin/packages/lighttpd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ligra/package.py2
-rw-r--r--var/spack/repos/builtin/packages/likwid/package.py44
-rw-r--r--var/spack/repos/builtin/packages/linkphase3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/linktest/package.py36
-rw-r--r--var/spack/repos/builtin/packages/linsys-v/package.py2
-rw-r--r--var/spack/repos/builtin/packages/linux-headers/package.py2
-rw-r--r--var/spack/repos/builtin/packages/linux-pam/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lis/package.py37
-rw-r--r--var/spack/repos/builtin/packages/listres/package.py4
-rw-r--r--var/spack/repos/builtin/packages/lizard/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lksctp-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/llvm-amdgpu/fix-ncurses-3.9.0.patch25
-rw-r--r--var/spack/repos/builtin/packages/llvm-amdgpu/fix-spack-detection-4.2.0.patch94
-rw-r--r--var/spack/repos/builtin/packages/llvm-amdgpu/package.py49
-rw-r--r--var/spack/repos/builtin/packages/llvm-doe/constexpr_longdouble_9.0.patch12
-rw-r--r--var/spack/repos/builtin/packages/llvm-doe/lldb_external_ncurses-10.patch31
-rw-r--r--var/spack/repos/builtin/packages/llvm-doe/llvm_python_path.patch14
-rw-r--r--var/spack/repos/builtin/packages/llvm-doe/package.py561
-rw-r--r--var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py4
-rwxr-xr-xvar/spack/repos/builtin/packages/llvm-openmp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/llvm/llvm7_intel.patch50
-rw-r--r--var/spack/repos/builtin/packages/llvm/llvm_python_path.patch14
-rw-r--r--var/spack/repos/builtin/packages/llvm/package.py102
-rw-r--r--var/spack/repos/builtin/packages/lm-sensors/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lmbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lmdb/package.py7
-rw-r--r--var/spack/repos/builtin/packages/lmod/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lndir/package.py4
-rw-r--r--var/spack/repos/builtin/packages/log4c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/log4cplus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/log4cpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/log4cxx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/logrotate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/logstash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/loki/package.py2
-rw-r--r--var/spack/repos/builtin/packages/looptools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lordec/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lp-solve/package.py32
-rw-r--r--var/spack/repos/builtin/packages/lrslib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lrzip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lsf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lshw/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lsof/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lsscsi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ltp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ltr-retriever/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ltrace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lua-bitlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lua-lpeg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lua-luafilesystem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lua-luajit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lua-luaposix/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lua-mpack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lua/package.py16
-rw-r--r--var/spack/repos/builtin/packages/lucene/package.py2
-rw-r--r--var/spack/repos/builtin/packages/luit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lulesh/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lumpy-sv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lustre/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lvarray/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lvm2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lwgrp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lwm2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lxc/package.py8
-rw-r--r--var/spack/repos/builtin/packages/lynx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lz4/package.py13
-rw-r--r--var/spack/repos/builtin/packages/lzma/package.py2
-rw-r--r--var/spack/repos/builtin/packages/lzo/package.py12
-rw-r--r--var/spack/repos/builtin/packages/lzop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/m4/oneapi.patch18
-rw-r--r--var/spack/repos/builtin/packages/m4/package.py15
-rw-r--r--var/spack/repos/builtin/packages/macsio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/mad-numdiff/package.py2
-rw-r--r--var/spack/repos/builtin/packages/madgraph5amc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/mafft/package.py6
-rw-r--r--var/spack/repos/builtin/packages/magics/package.py2
-rw-r--r--var/spack/repos/builtin/packages/magma/cmake-W.patch12
-rw-r--r--var/spack/repos/builtin/packages/magma/package.py40
-rw-r--r--var/spack/repos/builtin/packages/mahout/package.py2
-rw-r--r--var/spack/repos/builtin/packages/makedepend/package.py4
-rw-r--r--var/spack/repos/builtin/packages/maker/package.py6
-rw-r--r--var/spack/repos/builtin/packages/mallocmc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/maloc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/man-db/package.py2
-rw-r--r--var/spack/repos/builtin/packages/manta/for_aarch64.patch11
-rw-r--r--var/spack/repos/builtin/packages/manta/package.py4
-rw-r--r--var/spack/repos/builtin/packages/mapnik/package.py4
-rw-r--r--var/spack/repos/builtin/packages/mapserver/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mapsplice2/Makefile.patch53
-rw-r--r--var/spack/repos/builtin/packages/mapsplice2/mapsplice_ebwt.patch20
-rw-r--r--var/spack/repos/builtin/packages/mapsplice2/package.py54
-rw-r--r--var/spack/repos/builtin/packages/maq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/margo/package.py79
-rw-r--r--var/spack/repos/builtin/packages/mariadb-c-client/package.py13
-rw-r--r--var/spack/repos/builtin/packages/mariadb/package.py8
-rw-r--r--var/spack/repos/builtin/packages/mark/package.py3
-rw-r--r--var/spack/repos/builtin/packages/masa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/masurca/package.py10
-rw-r--r--var/spack/repos/builtin/packages/mathematica/package.py3
-rw-r--r--var/spack/repos/builtin/packages/matio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/matlab/package.py2
-rw-r--r--var/spack/repos/builtin/packages/maven/package.py2
-rw-r--r--var/spack/repos/builtin/packages/maverick/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mawk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mbdyn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mbedtls/package.py3
-rw-r--r--var/spack/repos/builtin/packages/mc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mcl/package.py7
-rw-r--r--var/spack/repos/builtin/packages/mcpp/package.py4
-rw-r--r--var/spack/repos/builtin/packages/mcutils/package.py39
-rw-r--r--var/spack/repos/builtin/packages/mdsplus/package.py55
-rw-r--r--var/spack/repos/builtin/packages/mdtest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/med/package.py61
-rw-r--r--var/spack/repos/builtin/packages/meep/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mefit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/megadock/package.py2
-rw-r--r--var/spack/repos/builtin/packages/megahit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/memaxes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/memcached/package.py2
-rw-r--r--var/spack/repos/builtin/packages/meme/package.py4
-rw-r--r--var/spack/repos/builtin/packages/memkind/package.py6
-rw-r--r--var/spack/repos/builtin/packages/memsurfer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/memtester/package.py2
-rw-r--r--var/spack/repos/builtin/packages/meraculous/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mercurial/package.py13
-rw-r--r--var/spack/repos/builtin/packages/mercury/package.py13
-rw-r--r--var/spack/repos/builtin/packages/mesa-demos/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mesa-glu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mesa/package.py51
-rw-r--r--var/spack/repos/builtin/packages/mesa18/package.py62
-rw-r--r--var/spack/repos/builtin/packages/meshkit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/meson/package.py11
-rw-r--r--var/spack/repos/builtin/packages/meson/rpath-0.58.patch12
-rw-r--r--var/spack/repos/builtin/packages/mesquite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/metabat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/metall/package.py45
-rw-r--r--var/spack/repos/builtin/packages/metaphysicl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/metis/package.py17
-rw-r--r--var/spack/repos/builtin/packages/metkit/package.py51
-rw-r--r--var/spack/repos/builtin/packages/mfem/package.py71
-rw-r--r--var/spack/repos/builtin/packages/mg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mgis/package.py10
-rw-r--r--var/spack/repos/builtin/packages/microbiomeutil/package.py2
-rw-r--r--var/spack/repos/builtin/packages/migraphx/0001-Adding-nlohmann-json-include-directory.patch13
-rw-r--r--var/spack/repos/builtin/packages/migraphx/package.py39
-rw-r--r--var/spack/repos/builtin/packages/migrate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mii/package.py7
-rw-r--r--var/spack/repos/builtin/packages/minc-toolkit/package.py35
-rw-r--r--var/spack/repos/builtin/packages/minced/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mindthegap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/miniaero/package.py2
-rw-r--r--var/spack/repos/builtin/packages/miniamr/package.py18
-rw-r--r--var/spack/repos/builtin/packages/miniapp-ascent/package.py22
-rw-r--r--var/spack/repos/builtin/packages/miniasm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/miniconda2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/miniconda3/package.py42
-rw-r--r--var/spack/repos/builtin/packages/minife/package.py2
-rw-r--r--var/spack/repos/builtin/packages/miniforge3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minigan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minighost/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minigmg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minimap2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/minimd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/miniqmc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minisign/package.py13
-rw-r--r--var/spack/repos/builtin/packages/minismac2d/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minitri/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minivite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minixyce/package.py2
-rw-r--r--var/spack/repos/builtin/packages/minizip/implicit.patch10
-rw-r--r--var/spack/repos/builtin/packages/minizip/package.py10
-rw-r--r--var/spack/repos/builtin/packages/minizip/static.patch26
-rw-r--r--var/spack/repos/builtin/packages/minuit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/miopen-hip/0001-Add-rocm-path-and-rocm-device-lib-path-flags.patch14
-rw-r--r--var/spack/repos/builtin/packages/miopen-hip/package.py31
-rw-r--r--var/spack/repos/builtin/packages/miopen-opencl/package.py20
-rw-r--r--var/spack/repos/builtin/packages/miopengemm/package.py13
-rw-r--r--var/spack/repos/builtin/packages/mira/package.py2
-rw-r--r--var/spack/repos/builtin/packages/miranda/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mirdeep2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mitofates/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mitos/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mivisionx/package.py14
-rw-r--r--var/spack/repos/builtin/packages/mixcr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mkfontdir/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mkfontscale/package.py4
-rw-r--r--var/spack/repos/builtin/packages/mlhka/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mlocate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mlperf-deepcam/package.py6
-rw-r--r--var/spack/repos/builtin/packages/mmg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mmv/better-diagnostics-for-directories-584850.diff22
-rw-r--r--var/spack/repos/builtin/packages/mmv/format-security.diff17
-rw-r--r--var/spack/repos/builtin/packages/mmv/man-page-examples.diff54
-rw-r--r--var/spack/repos/builtin/packages/mmv/man-page-fixes.diff361
-rw-r--r--var/spack/repos/builtin/packages/mmv/man-page-warning-149873.diff45
-rw-r--r--var/spack/repos/builtin/packages/mmv/package.py44
-rw-r--r--var/spack/repos/builtin/packages/mmv/patches-as-of-mmv-1.01b-15.diff368
-rw-r--r--var/spack/repos/builtin/packages/mmv/utime.diff21
-rw-r--r--var/spack/repos/builtin/packages/moab/package.py9
-rw-r--r--var/spack/repos/builtin/packages/mochi-margo/package.py56
-rw-r--r--var/spack/repos/builtin/packages/model-traits/package.py56
-rw-r--r--var/spack/repos/builtin/packages/modern-wheel/package.py9
-rw-r--r--var/spack/repos/builtin/packages/modylas/package.py3
-rw-r--r--var/spack/repos/builtin/packages/mofem-cephas/package.py8
-rw-r--r--var/spack/repos/builtin/packages/mofem-fracture-module/package.py24
-rw-r--r--var/spack/repos/builtin/packages/mofem-minimal-surface-equation/package.py9
-rw-r--r--var/spack/repos/builtin/packages/mofem-users-modules/package.py9
-rw-r--r--var/spack/repos/builtin/packages/mokutil/package.py2
-rw-r--r--var/spack/repos/builtin/packages/molcas/package.py2
-rw-r--r--var/spack/repos/builtin/packages/molden/for_aarch64.patch8
-rw-r--r--var/spack/repos/builtin/packages/molden/package.py13
-rw-r--r--var/spack/repos/builtin/packages/mongo-c-driver/package.py3
-rw-r--r--var/spack/repos/builtin/packages/mongo-cxx-driver/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mongodb-async-driver/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mono/package.py2
-rw-r--r--var/spack/repos/builtin/packages/montage/package.py2
-rw-r--r--var/spack/repos/builtin/packages/moosefs/package.py7
-rw-r--r--var/spack/repos/builtin/packages/moreutils/package.py4
-rw-r--r--var/spack/repos/builtin/packages/mosh/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mothur/package.py2
-rw-r--r--var/spack/repos/builtin/packages/motif/package.py2
-rw-r--r--var/spack/repos/builtin/packages/motioncor2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mount-point-attributes/package.py6
-rw-r--r--var/spack/repos/builtin/packages/mozjs/package.py6
-rw-r--r--var/spack/repos/builtin/packages/mpark-variant/icpc.patch33
-rw-r--r--var/spack/repos/builtin/packages/mpark-variant/package.py11
-rw-r--r--var/spack/repos/builtin/packages/mpark-variant/version.patch11
-rw-r--r--var/spack/repos/builtin/packages/mpas-model/makefile.patch13
-rw-r--r--var/spack/repos/builtin/packages/mpas-model/package.py94
-rw-r--r--var/spack/repos/builtin/packages/mpc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpdecimal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpe2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpfi/package.py31
-rw-r--r--var/spack/repos/builtin/packages/mpfr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/mpi-bash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpich/package.py51
-rw-r--r--var/spack/repos/builtin/packages/mpifileutils/package.py13
-rw-r--r--var/spack/repos/builtin/packages/mpilander/package.py8
-rw-r--r--var/spack/repos/builtin/packages/mpileaks/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpir/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpix-launch-swift/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mpt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mptensor/package.py96
-rw-r--r--var/spack/repos/builtin/packages/mrbayes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mrbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mrchem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mrcpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mrnet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mrtrix3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mscgen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/msgpack-c/package.py5
-rw-r--r--var/spack/repos/builtin/packages/mshadow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/msmc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/msmc2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mstk/package.py5
-rw-r--r--var/spack/repos/builtin/packages/mt-metis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/multitail/package.py2
-rw-r--r--var/spack/repos/builtin/packages/multitime/package.py2
-rw-r--r--var/spack/repos/builtin/packages/multiverso/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mumax/package.py4
-rw-r--r--var/spack/repos/builtin/packages/mummer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mummer4/package.py3
-rw-r--r--var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.2.patch29
-rw-r--r--var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.3.patch24
-rw-r--r--var/spack/repos/builtin/packages/mumps/package.py131
-rw-r--r--var/spack/repos/builtin/packages/munge/package.py2
-rw-r--r--var/spack/repos/builtin/packages/muparser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/muscle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/muse/package.py2
-rw-r--r--var/spack/repos/builtin/packages/musl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/muster/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mutationpp/package.py2
-rwxr-xr-xvar/spack/repos/builtin/packages/mvapich2-gdr/package.py43
-rw-r--r--var/spack/repos/builtin/packages/mvapich2/package.py17
-rwxr-xr-xvar/spack/repos/builtin/packages/mvapich2x/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mxm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mxml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/mxnet/cmake_cuda_flags.patch14
-rw-r--r--var/spack/repos/builtin/packages/mxnet/makefile.opencv.patch35
-rw-r--r--var/spack/repos/builtin/packages/mxnet/makefile.patch81
-rw-r--r--var/spack/repos/builtin/packages/mxnet/openblas-1.6.0.patch14
-rw-r--r--var/spack/repos/builtin/packages/mxnet/openblas-1.7.0.patch16
-rw-r--r--var/spack/repos/builtin/packages/mxnet/package.py227
-rw-r--r--var/spack/repos/builtin/packages/mysql/package.py5
-rw-r--r--var/spack/repos/builtin/packages/mysqlpp/package.py35
-rw-r--r--var/spack/repos/builtin/packages/n2p2/interface-makefile.patch18
-rw-r--r--var/spack/repos/builtin/packages/n2p2/interface-makefile211.patch17
-rw-r--r--var/spack/repos/builtin/packages/n2p2/libnnp-makefile.patch30
-rw-r--r--var/spack/repos/builtin/packages/n2p2/nnp_test.h.patch10
-rw-r--r--var/spack/repos/builtin/packages/n2p2/package.py138
-rw-r--r--var/spack/repos/builtin/packages/n2p2/test/expected-result-2.1.0.txt271
-rw-r--r--var/spack/repos/builtin/packages/n2p2/test/expected-result-2.1.1.txt272
-rwxr-xr-xvar/spack/repos/builtin/packages/n2p2/test/result-check.sh12
-rw-r--r--var/spack/repos/builtin/packages/nacos/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nag/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nalu-wind/package.py151
-rw-r--r--var/spack/repos/builtin/packages/nalu/package.py5
-rw-r--r--var/spack/repos/builtin/packages/namd/package.py36
-rw-r--r--var/spack/repos/builtin/packages/nano/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nanoflann/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nanomsg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nanopb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nasm/package.py4
-rw-r--r--var/spack/repos/builtin/packages/nauty/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nbdkit/package.py6
-rw-r--r--var/spack/repos/builtin/packages/ncbi-magicblast/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ncbi-rmblastn/isb-2.9.0+-rmblast-p1.patch238
-rw-r--r--var/spack/repos/builtin/packages/ncbi-rmblastn/package.py28
-rw-r--r--var/spack/repos/builtin/packages/ncbi-toolkit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nccl-tests/package.py7
-rw-r--r--var/spack/repos/builtin/packages/nccl/package.py5
-rw-r--r--var/spack/repos/builtin/packages/nccmp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ncdu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ncftp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ncl/for_aarch64.patch10
-rw-r--r--var/spack/repos/builtin/packages/ncl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/nco/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ncompress/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ncurses/package.py19
-rw-r--r--var/spack/repos/builtin/packages/ncview/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ndiff/package.py2
-rw-r--r--var/spack/repos/builtin/packages/neartree/package.py27
-rw-r--r--var/spack/repos/builtin/packages/nek5000/package.py7
-rw-r--r--var/spack/repos/builtin/packages/nekbone/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nekcem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nekrs/package.py141
-rw-r--r--var/spack/repos/builtin/packages/nektar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nektools/package.py5
-rw-r--r--var/spack/repos/builtin/packages/neo4j/package.py2
-rw-r--r--var/spack/repos/builtin/packages/neovim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nest/package.py17
-rw-r--r--var/spack/repos/builtin/packages/net-snmp/package.py22
-rw-r--r--var/spack/repos/builtin/packages/netcdf-c/4.7.3-spectrum-mpi-pnetcdf-detect.patch44
-rw-r--r--var/spack/repos/builtin/packages/netcdf-c/package.py11
-rw-r--r--var/spack/repos/builtin/packages/netcdf-cxx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/netcdf-cxx4/package.py2
-rw-r--r--var/spack/repos/builtin/packages/netcdf-fortran/package.py11
-rw-r--r--var/spack/repos/builtin/packages/netdata/package.py22
-rw-r--r--var/spack/repos/builtin/packages/netgauge/package.py2
-rw-r--r--var/spack/repos/builtin/packages/netgen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/netkit-ftp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/netlib-lapack/package.py14
-rw-r--r--var/spack/repos/builtin/packages/netlib-scalapack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/netlib-xblas/package.py2
-rw-r--r--var/spack/repos/builtin/packages/netperf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nettle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/neuron/package.py281
-rw-r--r--var/spack/repos/builtin/packages/neuron/patch-v782-git-cmake-avx512.patch139
-rw-r--r--var/spack/repos/builtin/packages/newt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nextflow/package.py3
-rw-r--r--var/spack/repos/builtin/packages/nfft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nfs-ganesha/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nfs-utils/package.py3
-rw-r--r--var/spack/repos/builtin/packages/nghttp2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nginx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ngmerge/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ngmlr/for_aarch64.patch6
-rw-r--r--var/spack/repos/builtin/packages/ngmlr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ngspice/package.py132
-rw-r--r--var/spack/repos/builtin/packages/nicstat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nim/package.py40
-rw-r--r--var/spack/repos/builtin/packages/ninja-fortran/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ninja/package.py3
-rw-r--r--var/spack/repos/builtin/packages/nix/package.py2
-rw-r--r--var/spack/repos/builtin/packages/njet/njet-2.0.0.patch17
-rw-r--r--var/spack/repos/builtin/packages/njet/package.py7
-rw-r--r--var/spack/repos/builtin/packages/nlcglib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nlohmann-json-schema-validator/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nlohmann-json/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nlopt/package.py6
-rw-r--r--var/spack/repos/builtin/packages/nmap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nn-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nnvm/package.py4
-rw-r--r--var/spack/repos/builtin/packages/node-js/package.py6
-rw-r--r--var/spack/repos/builtin/packages/notmuch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/npb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/npm/package.py3
-rw-r--r--var/spack/repos/builtin/packages/npth/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nrm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ns-3-dev/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nseg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nsimd/package.py63
-rw-r--r--var/spack/repos/builtin/packages/nspr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ntirpc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ntpoly/package.py2
-rw-r--r--var/spack/repos/builtin/packages/numactl/fix-empty-block.patch13
-rw-r--r--var/spack/repos/builtin/packages/numactl/package.py18
-rw-r--r--var/spack/repos/builtin/packages/numamma/package.py2
-rw-r--r--var/spack/repos/builtin/packages/numap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/numdiff/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nut/package.py4
-rw-r--r--var/spack/repos/builtin/packages/nvdimmsim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nvhpc/package.py35
-rw-r--r--var/spack/repos/builtin/packages/nvptx-tools/package.py3
-rw-r--r--var/spack/repos/builtin/packages/nvshmem/package.py54
-rw-r--r--var/spack/repos/builtin/packages/nvtop/package.py22
-rw-r--r--var/spack/repos/builtin/packages/nwchem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/nyancat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ocaml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ocamlbuild/package.py41
-rw-r--r--var/spack/repos/builtin/packages/occa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/oce/package.py2
-rw-r--r--var/spack/repos/builtin/packages/oci-systemd-hook/package.py3
-rw-r--r--var/spack/repos/builtin/packages/ocl-icd/package.py8
-rw-r--r--var/spack/repos/builtin/packages/oclgrind/package.py2
-rw-r--r--var/spack/repos/builtin/packages/oclint/package.py2
-rw-r--r--var/spack/repos/builtin/packages/oclock/package.py2
-rw-r--r--var/spack/repos/builtin/packages/octave-arduino/package.py19
-rw-r--r--var/spack/repos/builtin/packages/octave-control/package.py18
-rw-r--r--var/spack/repos/builtin/packages/octave-gsl/package.py21
-rw-r--r--var/spack/repos/builtin/packages/octave-instrctl/package.py18
-rw-r--r--var/spack/repos/builtin/packages/octave-io/package.py22
-rw-r--r--var/spack/repos/builtin/packages/octave-optim/package.py7
-rw-r--r--var/spack/repos/builtin/packages/octave-quaternion/package.py20
-rw-r--r--var/spack/repos/builtin/packages/octave-signal/package.py18
-rw-r--r--var/spack/repos/builtin/packages/octave-splines/package.py3
-rw-r--r--var/spack/repos/builtin/packages/octave-statistics/package.py18
-rw-r--r--var/spack/repos/builtin/packages/octave-struct/package.py3
-rw-r--r--var/spack/repos/builtin/packages/octave-symbolic/package.py21
-rw-r--r--var/spack/repos/builtin/packages/octave/package.py13
-rw-r--r--var/spack/repos/builtin/packages/octopus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/odc/package.py33
-rw-r--r--var/spack/repos/builtin/packages/of-catalyst/package.py2
-rw-r--r--var/spack/repos/builtin/packages/of-precice/package.py2
-rw-r--r--var/spack/repos/builtin/packages/omega-h/package.py8
-rw-r--r--var/spack/repos/builtin/packages/ompss/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ompt-openmp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/onednn/package.py8
-rw-r--r--var/spack/repos/builtin/packages/oniguruma/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ont-albacore/package.py2
-rw-r--r--var/spack/repos/builtin/packages/opa-psm2/opa-psm2-install-prefix.patch78
-rw-r--r--var/spack/repos/builtin/packages/opa-psm2/package.py19
-rw-r--r--var/spack/repos/builtin/packages/opam/package.py2
-rw-r--r--var/spack/repos/builtin/packages/opari2/package.py3
-rw-r--r--var/spack/repos/builtin/packages/open-iscsi/package.py3
-rw-r--r--var/spack/repos/builtin/packages/open-isns/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openal-soft/package.py29
-rw-r--r--var/spack/repos/builtin/packages/openbabel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openblas/0001-use-usr-bin-env-perl.patch55
-rw-r--r--var/spack/repos/builtin/packages/openblas/package.py57
-rw-r--r--var/spack/repos/builtin/packages/opencascade/package.py10
-rw-r--r--var/spack/repos/builtin/packages/opencl-c-headers/package.py3
-rw-r--r--var/spack/repos/builtin/packages/opencl-clhpp/package.py3
-rw-r--r--var/spack/repos/builtin/packages/opencl-headers/package.py9
-rw-r--r--var/spack/repos/builtin/packages/opencoarrays/package.py2
-rw-r--r--var/spack/repos/builtin/packages/opencv/package.py451
-rw-r--r--var/spack/repos/builtin/packages/opendx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openexr/package.py16
-rw-r--r--var/spack/repos/builtin/packages/openfast/package.py19
-rw-r--r--var/spack/repos/builtin/packages/openfdtd/package.py6
-rw-r--r--var/spack/repos/builtin/packages/openfoam-org/isnan.patch31
-rw-r--r--var/spack/repos/builtin/packages/openfoam-org/package.py10
-rw-r--r--var/spack/repos/builtin/packages/openfoam/package.py53
-rw-r--r--var/spack/repos/builtin/packages/openfst/package.py4
-rw-r--r--var/spack/repos/builtin/packages/opengl/package.py9
-rw-r--r--var/spack/repos/builtin/packages/openglu/package.py9
-rw-r--r--var/spack/repos/builtin/packages/openimageio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openipmi/package.py15
-rw-r--r--var/spack/repos/builtin/packages/openipmi/readline.patch11
-rw-r--r--var/spack/repos/builtin/packages/openjdk/package.py23
-rw-r--r--var/spack/repos/builtin/packages/openjpeg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openkim-models/package.py16
-rw-r--r--var/spack/repos/builtin/packages/openldap/package.py6
-rw-r--r--var/spack/repos/builtin/packages/openloops/get-process-list.py47
-rw-r--r--var/spack/repos/builtin/packages/openloops/package.py99
-rw-r--r--var/spack/repos/builtin/packages/openloops/sft3.coll171
-rw-r--r--var/spack/repos/builtin/packages/openmc/package.py33
-rw-r--r--var/spack/repos/builtin/packages/openmm/package.py3
-rw-r--r--var/spack/repos/builtin/packages/openmolcas/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openmpi/opal_assembly_arch.patch27
-rw-r--r--var/spack/repos/builtin/packages/openmpi/package.py108
-rw-r--r--var/spack/repos/builtin/packages/openmx/for_aarch64.patch11
-rw-r--r--var/spack/repos/builtin/packages/openmx/package.py5
-rw-r--r--var/spack/repos/builtin/packages/opennurbs/package.py5
-rw-r--r--var/spack/repos/builtin/packages/openpa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openpbs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openpmd-api/package.py73
-rw-r--r--var/spack/repos/builtin/packages/openrasmol/package.py68
-rw-r--r--var/spack/repos/builtin/packages/openrasmol/rasmol_help.patch22
-rw-r--r--var/spack/repos/builtin/packages/openrasmol/rasmol_noqa.patch26
-rw-r--r--var/spack/repos/builtin/packages/openrasmol/test/test.rsc3
-rw-r--r--var/spack/repos/builtin/packages/openresty/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openscenegraph/package.py4
-rw-r--r--var/spack/repos/builtin/packages/openslide/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openslp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openspeedshop-utils/package.py74
-rw-r--r--var/spack/repos/builtin/packages/openspeedshop/package.py111
-rw-r--r--var/spack/repos/builtin/packages/openssh/package.py44
-rw-r--r--var/spack/repos/builtin/packages/openssl/package.py101
-rw-r--r--var/spack/repos/builtin/packages/openstf/package.py6
-rw-r--r--var/spack/repos/builtin/packages/opensubdiv/package.py9
-rw-r--r--var/spack/repos/builtin/packages/opentsdb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/openvdb/package.py90
-rw-r--r--var/spack/repos/builtin/packages/openvslam/package.py33
-rw-r--r--var/spack/repos/builtin/packages/openwsman/package.py68
-rw-r--r--var/spack/repos/builtin/packages/opium/package.py2
-rw-r--r--var/spack/repos/builtin/packages/optional-lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/optipng/package.py2
-rw-r--r--var/spack/repos/builtin/packages/opus/package.py3
-rw-r--r--var/spack/repos/builtin/packages/oracle-instant-client/package.py107
-rw-r--r--var/spack/repos/builtin/packages/orbit2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/orc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/orca/package.py3
-rw-r--r--var/spack/repos/builtin/packages/orfm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/orientdb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/orthofiller/package.py2
-rw-r--r--var/spack/repos/builtin/packages/orthofinder/package.py35
-rw-r--r--var/spack/repos/builtin/packages/orthomcl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/osi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/osmctools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/osqp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ossp-uuid/package.py (renamed from var/spack/repos/builtin/packages/uuid/package.py)14
-rw-r--r--var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py3
-rw-r--r--var/spack/repos/builtin/packages/otf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/otf2/collective_callbacks.patch13
-rw-r--r--var/spack/repos/builtin/packages/otf2/cray_ac_scorep_sys_detection-m4.patch11
-rw-r--r--var/spack/repos/builtin/packages/otf2/package.py19
-rw-r--r--var/spack/repos/builtin/packages/p11-kit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/p3dfft3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/p4est/package.py4
-rw-r--r--var/spack/repos/builtin/packages/p7zip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pacbio-daligner/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pacbio-damasker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pacbio-dazz-db/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pacbio-dextractor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pacifica-cli/package.py23
-rw-r--r--var/spack/repos/builtin/packages/packmol/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pacparser/package.py32
-rw-r--r--var/spack/repos/builtin/packages/pacvim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pagit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pagmo/package.py26
-rw-r--r--var/spack/repos/builtin/packages/pajeng/package.py69
-rw-r--r--var/spack/repos/builtin/packages/pal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/paml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/panda/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pandaseq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pandoc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/pango/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pangolin/package.py23
-rw-r--r--var/spack/repos/builtin/packages/pangomm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/papi/crayftn-fixes.patch57
-rw-r--r--var/spack/repos/builtin/packages/papi/package.py3
-rw-r--r--var/spack/repos/builtin/packages/papyrus/package.py16
-rw-r--r--var/spack/repos/builtin/packages/paradiseo/package.py19
-rw-r--r--var/spack/repos/builtin/packages/parallel-netcdf/package.py35
-rw-r--r--var/spack/repos/builtin/packages/parallel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/parallelio/package.py52
-rw-r--r--var/spack/repos/builtin/packages/parallelmergetree/package.py30
-rw-r--r--var/spack/repos/builtin/packages/paraver/package.py2
-rw-r--r--var/spack/repos/builtin/packages/paraview/package.py49
-rw-r--r--var/spack/repos/builtin/packages/paraview/vtkm-findmpi-downstream.patch51
-rw-r--r--var/spack/repos/builtin/packages/parmetis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/parmgridgen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/parquet-cpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/parquet-format/package.py2
-rw-r--r--var/spack/repos/builtin/packages/parsec/package.py88
-rw-r--r--var/spack/repos/builtin/packages/parsimonator/package.py2
-rw-r--r--var/spack/repos/builtin/packages/parsplice/package.py2
-rw-r--r--var/spack/repos/builtin/packages/partitionfinder/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pasta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/patch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/patchelf/package.py16
-rw-r--r--var/spack/repos/builtin/packages/patchutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pathfinder/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pax-utils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pbbam/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pbmpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pbsuite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pciutils/package.py12
-rw-r--r--var/spack/repos/builtin/packages/pcl/package.py21
-rw-r--r--var/spack/repos/builtin/packages/pcma/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pcre/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pcre2/package.py3
-rw-r--r--var/spack/repos/builtin/packages/pdf2svg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pdftk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pdsh/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pdt/cray_configure.patch14
-rw-r--r--var/spack/repos/builtin/packages/pdt/package.py6
-rw-r--r--var/spack/repos/builtin/packages/pegtl/package.py30
-rw-r--r--var/spack/repos/builtin/packages/pennant/package.py2
-rw-r--r--var/spack/repos/builtin/packages/percept/package.py2
-rw-r--r--var/spack/repos/builtin/packages/percona-server/package.py4
-rw-r--r--var/spack/repos/builtin/packages/perfstubs/package.py7
-rw-r--r--var/spack/repos/builtin/packages/perl-acme-damn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-algorithm-diff/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-alien-build/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-alien-libxml2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-alien-svn/package.py42
-rw-r--r--var/spack/repos/builtin/packages/perl-app-cmd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-array-utils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-bio-searchio-hmmer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-bioperl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-bit-vector/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-cairo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-capture-tiny/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-carp-clan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-cgi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-class-inspector/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-class-load-xs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-class-load/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-clone-choose/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-clone/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-compress-raw-bzip2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-compress-raw-zlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-config-general/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-contextual-return/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-data-dumper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-data-optlist/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-data-stag/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-date-manip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-db-file/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-dbd-mysql/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-dbd-pg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-dbd-sqlite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-dbi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-cycle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-symdump/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-digest-md5/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-encode-locale/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-error/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-eval-closure/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-exception-class/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-exporter-tiny/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-extutils-config/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-extutils-depends/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-extutils-helpers/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-extutils-installpaths/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-ffi-checklib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-chdir/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-copy-recursive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-homedir/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-listing/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-pushd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-sharedir-install/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-slurp-tiny/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-slurp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-slurper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-file-which/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-font-ttf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-forks/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-gd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-gdgraph-histogram/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-gdgraph/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-gdtextutil/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-graph-readwrite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-graph/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-hash-merge/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-html-parser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-html-tagset/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-http-cookies/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-http-daemon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-http-date/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-http-message/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-http-negotiate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-inline-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-inline/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-all/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-compress/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-html/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-prompt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-sessiondata/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-socket-ssl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-string/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-stringy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-io-tty/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-ipc-run/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-json/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-libwww-perl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-libxml-perl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-list-moreutils-xs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-list-moreutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-log-log4perl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-logger-simple/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-lwp-mediatypes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-lwp-protocol-https/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-mailtools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-math-bezier/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-math-cdf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-math-cephes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-math-matrixreal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-math-round/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-math-vecstat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-mce/package.py22
-rw-r--r--var/spack/repos/builtin/packages/perl-module-build-tiny/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-module-build/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-module-implementation/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-module-runtime/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-moose/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-mozilla-ca/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-mro-compat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-namespace-clean/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-net-http/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-net-scp-expect/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-net-ssleay/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-number-format/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-object-insideout/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-package-stash-xs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-package-stash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-padwalker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-parallel-forkmanager/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-params-util/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-params-validate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-parse-recdescent/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-path-tiny/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-pdf-api2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-pegex/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-perl-unsafe-signals/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-perl-version/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-perl4-corelibs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-perl6-slurp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-perlio-gzip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-perlio-utf8-strict/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-readonly/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-regexp-common/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-scalar-list-utils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-scalar-util-numeric/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-set-intervaltree/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-set-intspan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-set-scalar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-soap-lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-star-fusion/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-statistics-basic/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-statistics-descriptive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-statistics-pca/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-exporter/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-identify/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-install/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-name/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-uplevel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-svg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-swissknife/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-sys-sigaction/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-task-weaken/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-term-readline-gnu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-termreadkey/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-deep/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-differences/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-exception/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-fatal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-more/package.py19
-rw-r--r--var/spack/repos/builtin/packages/perl-test-most/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-needs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-output/package.py20
-rw-r--r--var/spack/repos/builtin/packages/perl-test-requires/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-requiresinternet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-warn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-test-warnings/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-text-csv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-text-diff/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-text-format/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-text-simpletable/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-text-soundex/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-text-unidecode/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-thread-queue/package.py18
-rw-r--r--var/spack/repos/builtin/packages/perl-threads/package.py15
-rw-r--r--var/spack/repos/builtin/packages/perl-time-hires/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-time-piece/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-timedate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-tk/package.py18
-rw-r--r--var/spack/repos/builtin/packages/perl-try-tiny/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-uri/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-want/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-www-robotrules/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-dom-xpath/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-dom/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-filter-buffertext/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-libxml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-libxslt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-namespacesupport/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-parser-lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-parser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-quote/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-regexp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-sax-base/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-sax-writer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-sax/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-simple/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-twig/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-writer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-xpathengine/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-yaml-libyaml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl-yaml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/perl/nvhpc-5.30.patch (renamed from var/spack/repos/builtin/packages/perl/nvhpc.patch)0
-rw-r--r--var/spack/repos/builtin/packages/perl/nvhpc-5.32.patch42
-rw-r--r--var/spack/repos/builtin/packages/perl/package.py19
-rw-r--r--var/spack/repos/builtin/packages/pestpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/petsc/package.py71
-rw-r--r--var/spack/repos/builtin/packages/pexsi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pfapack/package.py66
-rw-r--r--var/spack/repos/builtin/packages/pfft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pflask/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pflotran/package.py4
-rw-r--r--var/spack/repos/builtin/packages/pfunit/package.py15
-rw-r--r--var/spack/repos/builtin/packages/pgdspider/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pgi/package.py3
-rw-r--r--var/spack/repos/builtin/packages/phantompeakqualtools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/phast/package.py2
-rw-r--r--var/spack/repos/builtin/packages/phasta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/phist/package.py29
-rw-r--r--var/spack/repos/builtin/packages/phist/sbang.patch8
-rw-r--r--var/spack/repos/builtin/packages/phoenix/package.py2
-rw-r--r--var/spack/repos/builtin/packages/photos/package.py16
-rw-r--r--var/spack/repos/builtin/packages/php/package.py2
-rw-r--r--var/spack/repos/builtin/packages/phrap-crossmatch-swat/package.py3
-rw-r--r--var/spack/repos/builtin/packages/phred/package.py3
-rw-r--r--var/spack/repos/builtin/packages/phylip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/phylobayesmpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/phyluce/package.py2
-rw-r--r--var/spack/repos/builtin/packages/picard/package.py3
-rw-r--r--var/spack/repos/builtin/packages/picsar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/picsarlite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pidx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pig/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pigz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pilon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pindel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pinentry/package.py15
-rw-r--r--var/spack/repos/builtin/packages/pinfo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pipework/package.py2
-rw-r--r--var/spack/repos/builtin/packages/piranha/package.py8
-rw-r--r--var/spack/repos/builtin/packages/pism/package.py35
-rw-r--r--var/spack/repos/builtin/packages/pixman/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pixz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pkg-config/package.py5
-rw-r--r--var/spack/repos/builtin/packages/pkgconf/package.py5
-rw-r--r--var/spack/repos/builtin/packages/pktools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/planck-likelihood/package.py2
-rw-r--r--var/spack/repos/builtin/packages/plasma/package.py2
-rw-r--r--var/spack/repos/builtin/packages/platypus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/plink-ng/package.py2
-rw-r--r--var/spack/repos/builtin/packages/plink/package.py2
-rw-r--r--var/spack/repos/builtin/packages/plplot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/plumed/package.py43
-rw-r--r--var/spack/repos/builtin/packages/ply/package.py26
-rw-r--r--var/spack/repos/builtin/packages/pmdk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pmemkv/package.py88
-rw-r--r--var/spack/repos/builtin/packages/pmerge/package.py29
-rw-r--r--var/spack/repos/builtin/packages/pmgr-collective/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pmix/package.py12
-rw-r--r--var/spack/repos/builtin/packages/pmlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pnfft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pngquant/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pngwriter/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pnmpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/poamsa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pocl/package.py9
-rw-r--r--var/spack/repos/builtin/packages/podio/package.py62
-rw-r--r--var/spack/repos/builtin/packages/poke/package.py21
-rw-r--r--var/spack/repos/builtin/packages/polymake/package.py2
-rw-r--r--var/spack/repos/builtin/packages/poplddecay/package.py2
-rw-r--r--var/spack/repos/builtin/packages/poppler-data/package.py2
-rw-r--r--var/spack/repos/builtin/packages/poppler/package.py2
-rw-r--r--var/spack/repos/builtin/packages/popt/package.py6
-rw-r--r--var/spack/repos/builtin/packages/porta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/portage/package.py110
-rw-r--r--var/spack/repos/builtin/packages/portcullis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/postgis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/postgresql/package.py7
-rw-r--r--var/spack/repos/builtin/packages/povray/fix_prebuild.sh.patch15
-rw-r--r--var/spack/repos/builtin/packages/povray/package.py157
-rw-r--r--var/spack/repos/builtin/packages/powerapi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/powertop/package.py3
-rw-r--r--var/spack/repos/builtin/packages/ppl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pplacer/package.py2
-rwxr-xr-xvar/spack/repos/builtin/packages/ppopen-appl-amr-fdm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ppopen-appl-bem-at/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ppopen-appl-bem/package.py2
-rwxr-xr-xvar/spack/repos/builtin/packages/ppopen-appl-dem-util/package.py2
-rwxr-xr-xvar/spack/repos/builtin/packages/ppopen-appl-fdm-at/package.py2
-rwxr-xr-xvar/spack/repos/builtin/packages/ppopen-appl-fdm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ppopen-appl-fem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ppopen-appl-fvm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ppopen-at/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ppopen-math-mp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ppopen-math-vis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/prank/package.py2
-rw-r--r--var/spack/repos/builtin/packages/precice/package.py15
-rw-r--r--var/spack/repos/builtin/packages/predixy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/premake-core/package.py2
-rw-r--r--var/spack/repos/builtin/packages/presentproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/preseq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/presto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/price/package.py2
-rw-r--r--var/spack/repos/builtin/packages/primer3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/prinseq-lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/printproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/prism/package.py2
-rw-r--r--var/spack/repos/builtin/packages/prmon/package.py8
-rw-r--r--var/spack/repos/builtin/packages/prng/package.py2
-rw-r--r--var/spack/repos/builtin/packages/probconsrna/package.py2
-rw-r--r--var/spack/repos/builtin/packages/procenv/7cafed1316ddb16fe0689d54ba10c05dd2edd347.patch34
-rw-r--r--var/spack/repos/builtin/packages/procenv/package.py29
-rw-r--r--var/spack/repos/builtin/packages/process-in-process/package.py178
-rw-r--r--var/spack/repos/builtin/packages/procps-ng/package.py2
-rw-r--r--var/spack/repos/builtin/packages/procps/package.py2
-rw-r--r--var/spack/repos/builtin/packages/prodigal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/professor/package.py28
-rw-r--r--var/spack/repos/builtin/packages/profugusmc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/proj/package.py22
-rw-r--r--var/spack/repos/builtin/packages/prokka/package.py2
-rw-r--r--var/spack/repos/builtin/packages/prometheus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/protobuf-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/protobuf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/proxymngr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/prrte/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pruners-ninja/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ps-lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/psi4/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pslib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/psm/package.py4
-rw-r--r--var/spack/repos/builtin/packages/psmc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pstreams/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pugixml/package.py23
-rw-r--r--var/spack/repos/builtin/packages/pulseaudio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/pumi/package.py9
-rw-r--r--var/spack/repos/builtin/packages/pv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pvm/package.py15
-rw-r--r--var/spack/repos/builtin/packages/pxz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-3to2/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-4suite-xml/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-abipy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-absl-py/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-accimage/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-acme-tiny/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-adal/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-adb-enhanced/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-addict/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-adios/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-advancedhtmlparser/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-aenum/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-affine/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-agate-dbf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-agate-excel/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-agate-sql/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-agate/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-aiobotocore/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-aiodns/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-aiofiles/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-aiohttp-cors/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-aiohttp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-aioitertools/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-aioredis/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-alabaster/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-alembic/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-altgraph/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-amqp/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-angel/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-ansible/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-antlr4-python3-runtime/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-anuga/package.py32
-rw-r--r--var/spack/repos/builtin/packages/py-apache-beam/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-apache-libcloud/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-apex/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-apipkg/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-appdirs/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-applicationinsights/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-appnope/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-apptools/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-apscheduler/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-arcgis/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-archspec/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-argcomplete/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-argh/package.py26
-rw-r--r--var/spack/repos/builtin/packages/py-argon2-cffi/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-argparse/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-args/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-arrow/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-arviz/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-asciitree/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-asdf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ase/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-asgiref/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-asn1crypto/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-aspy-yaml/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-asserts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-asteval/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-astor/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-astpretty/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-astroid/PR546.patch129
-rw-r--r--var/spack/repos/builtin/packages/py-astroid/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-astropy-healpix/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-astropy-helpers/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-astropy/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-astunparse/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-async-generator/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-async-timeout/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-asyncio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-atomicwrites/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-atpublic/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-atropos/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-attrs/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-audioread/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-autograd-gamma/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-autograd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-autopep8/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-auxlib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-avro-json-serializer/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-avro-python3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-avro/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-awesome-slugify/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-awkward/package.py32
-rw-r--r--var/spack/repos/builtin/packages/py-awkward/pybind11.patch14
-rw-r--r--var/spack/repos/builtin/packages/py-awkward/pybind11_02.patch14
-rw-r--r--var/spack/repos/builtin/packages/py-awkward0/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-awkward1/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-azote/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-azure-batch/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-cli-command-modules-nspkg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-cli-core/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-azure-cli-nspkg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-cli-telemetry/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-azure-cli/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-azure-common/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-core/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-cosmos/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-datalake-store/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-functions-devops-build/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-graphrbac/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-identity/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-keyvault-certificates/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-keyvault-keys/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-keyvault-nspkg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-keyvault-secrets/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-keyvault/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-loganalytics/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-advisor/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-apimanagement/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-appconfiguration/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-applicationinsights/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-authorization/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-batch/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-batchai/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-billing/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-botservice/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-cdn/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-cognitiveservices/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-compute/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-consumption/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-containerinstance/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-containerregistry/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-containerservice/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-core/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-cosmosdb/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-datalake-analytics/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-datalake-store/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-datamigration/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-deploymentmanager/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-devtestlabs/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-dns/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-eventgrid/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-eventhub/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-hdinsight/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-imagebuilder/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-iotcentral/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-iothub/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-iothubprovisioningservices/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-keyvault/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-kusto/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-loganalytics/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-managedservices/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-managementgroups/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-maps/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-marketplaceordering/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-media/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-monitor/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-msi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-netapp/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-network/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-nspkg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-policyinsights/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-privatedns/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-rdbms/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservices/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservicesbackup/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-redhatopenshift/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-redis/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-relay/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-reservations/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-resource/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-search/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-security/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-servicebus/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-servicefabric/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-signalr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-sql/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-sqlvirtualmachine/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-storage/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-trafficmanager/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-mgmt-web/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-multiapi-storage/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-nspkg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-storage-common/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azure-storage-nspkg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-automl-core/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-core/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-dataprep-native/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-dataprep-rslex/package.py78
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-dataprep/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-dataset-runtime/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-pipeline-core/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-pipeline-steps/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-pipeline/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-sdk/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-telemetry/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-train-automl-client/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-train-core/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-train-restclients-hyperdrive/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-azureml-train/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-babel/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-backcall/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-backports-abc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-backports-functools-lru-cache/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-backports-lzma/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-backports-tempfile/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-backports-weakref/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-basemap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-bash-kernel/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-basis-set-exchange/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-batchspawner/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-bayesian-optimization/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-bcbio-gff/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-bcolz/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-bcrypt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-beancount/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-beautifulsoup4/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-bigfloat/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-billiard/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-binaryornot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-bintrees/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-binwalk/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-biom-format/package.py26
-rw-r--r--var/spack/repos/builtin/packages/py-biomine/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-biopandas/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-biopython/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-bitarray/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-bitstring/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-black/package.py28
-rw-r--r--var/spack/repos/builtin/packages/py-bleach/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-blessed/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-blessings/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-blinker/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-blis/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-blosc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-bmap-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-bokeh/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-boltons/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-boom-boot-manager/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-boto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-boto3/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-botocore/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-bottle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-bottleneck/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-breakseq2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-breathe/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-brian/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-brian2/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-brotlipy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-bsddb3/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-bx-python/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-bz2file/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cached-property/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-cachetools/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cairocffi/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-cantoolz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cartopy/package.py35
-rw-r--r--var/spack/repos/builtin/packages/py-catalogue/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-catkin-pkg/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-cclib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cdat-lite/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cdo/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-cdsapi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cekit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-celery/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-certifi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-certipy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-cf-units/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cffi/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-cfgrib/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-cfgv/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cftime/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-chai/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-chainer/package.py51
-rw-r--r--var/spack/repos/builtin/packages/py-chainmap/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-chalice/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-chardet/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-charm4py/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-checkm-genome/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-cheetah/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-cheetah3/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-cheroot/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-cherrypy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-chronyk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cinema-lib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cinemasci/package.py27
-rw-r--r--var/spack/repos/builtin/packages/py-click-didyoumean/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-click-plugins/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-click-repl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-click/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cligj/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-clint/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-clipboard/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cloudpickle/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-clustershell/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cmake-format/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-cmake/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cmocean/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-cnvkit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-coapthon3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-codecov/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-cogent/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-coilmq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-colorama/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-colored-traceback/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-colored/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-coloredlogs/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-colorful/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-colorlog/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-colormath/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-colorpy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-colorspacious/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-commonmark/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-configargparse/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-configobj/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-configparser/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-contextily/package.py27
-rw-r--r--var/spack/repos/builtin/packages/py-contextlib2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-contextvars/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-convertdate/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cookiecutter/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-counter/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-cov-core/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-coverage/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-cppheaderparser/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-crcmod/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-crispresso/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-crossmap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cryptography/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cssselect/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-csvkit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cudf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cuml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cupy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-current/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cutadapt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cvxopt/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-cvxpy/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-cycler/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-cymem/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cyordereddict/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-cython-bbox/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-cython/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-cyvcf2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-d2to1/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-dadi/package.py27
-rw-r--r--var/spack/repos/builtin/packages/py-dask-glm/package.py47
-rw-r--r--var/spack/repos/builtin/packages/py-dask-ml/package.py65
-rw-r--r--var/spack/repos/builtin/packages/py-dask-ml/xgboost_dependency.patch23
-rw-r--r--var/spack/repos/builtin/packages/py-dask-sphinx-theme/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-dask-xgboost/package.py28
-rw-r--r--var/spack/repos/builtin/packages/py-dask/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-dataclasses/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-dateparser/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-dbf/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-dbfread/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-deap/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-decorator/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-deeptools/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-deeptoolsintervals/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-defusedxml/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-dendropy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-deprecated/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-deprecation/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-descartes/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-devlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-dgl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-dictdiffer/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-dill/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-discover/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-diskcache/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-distributed/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-distro/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-django/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-dlcpar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-dm-tree/package.py59
-rw-r--r--var/spack/repos/builtin/packages/py-dnaio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-docker/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-dockerpy-creds/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-docopt/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-docutils-stubs/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-docutils/package.py15
-rw-r--r--var/spack/repos/builtin/packages/py-dominate/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-dotnetcore2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-doxypy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-doxypypy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-dp-gp-cluster/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-dpath/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-drmaa/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-dryscrape/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-dulwich/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-dvc/package.py61
-rw-r--r--var/spack/repos/builtin/packages/py-dxchange/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-dxfile/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-earthengine-api/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-easybuild-framework/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-ecdsa/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-ecos/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-edffile/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-editdistance/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-eg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-elasticsearch/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-elephant/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-emcee/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-empy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-entrypoints/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-enum34/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-envisage/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ephem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-epydoc/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-espresso/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-espressopp/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-et-xmlfile/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-eventlet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-execnet/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-exodus-bundler/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-extension-helpers/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-extras/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ez-setup/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-f90wrap/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-fabric/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-falcon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-fallocate/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-fastaindex/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-fastavro/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-fastcache/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-fastcluster/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-fastdtw/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-fasteners/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-fastrlock/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-faststructure/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-fava/package.py43
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-basix/package.py28
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-dijitso/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-dolfinx/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-ffc/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-ffcx/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-fiat/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-instant/package.py28
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-ufl/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-filelock/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-filemagic/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-filterpy/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-fiona/package.py28
-rw-r--r--var/spack/repos/builtin/packages/py-fiscalyear/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-fisher/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-fits-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-fixtures/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-flake8-import-order/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-flake8-polyfill/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-flake8/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-flask-babel/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-flask-compress/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-flask-cors/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-flask-socketio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-flask/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-flatten-dict/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-flexmock/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-flexx/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-flufl-lock/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-flye/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-fn-py/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-fortran-language-server/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-fortranformat/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-fparser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-fprettify/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-freezegun/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-fsspec/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-ftfy/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-funcsigs/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-functools32/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-funcy/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-fusepy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-future/package.py30
-rw-r--r--var/spack/repos/builtin/packages/py-futures/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-fypp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-gast/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gcovr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gdbgui/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gdc-client/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-gee-asset-manager/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-geeadd/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-geeup/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gemini/package.py58
-rw-r--r--var/spack/repos/builtin/packages/py-genders/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-geneimpacts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-genshi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-gensim/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-geoalchemy2/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-geographiclib/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-geopandas/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-geoplot/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-geopy/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-gevent/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gf256/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-gffutils/package.py30
-rw-r--r--var/spack/repos/builtin/packages/py-git-review/package.py15
-rw-r--r--var/spack/repos/builtin/packages/py-gitdb/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gitpython/package.py27
-rw-r--r--var/spack/repos/builtin/packages/py-gluoncv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-gnuplot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-goatools/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-google-api-core/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-google-api-python-client/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-google-auth-httplib2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-google-auth-oauthlib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-google-auth/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-google-cloud-core/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-google-cloud-storage/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-google-pasta/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-google-resumable-media/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-google/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-googleapis-common-protos/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-googledrivedownloader/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gosam/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gpaw/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gpustat/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-gputil/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gpy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gpytorch/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gql/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-grandalf/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-graphql-core/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-graphviz/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-greenlet/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-grequests/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-griddataformats/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-grpcio/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-gsd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gsi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-guidata/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-guiqwt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-gym/package.py26
-rw-r--r--var/spack/repos/builtin/packages/py-h11/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-h2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-h5glance/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-h5netcdf/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-h5py/h5py-3-setuprequires.patch21
-rw-r--r--var/spack/repos/builtin/packages/py-h5py/package.py55
-rw-r--r--var/spack/repos/builtin/packages/py-h5sh/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-hacking/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-hatchet/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-hdbscan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-hdfs/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-healpy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-heapdict/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-hepdata-validator/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-hepunits/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-hieroglyph/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-hiredis/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-holland-backup/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-horovod/package.py75
-rw-r--r--var/spack/repos/builtin/packages/py-hpack/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-hpcbench/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-hpccm/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-hstspreload/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-html2text/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-html5lib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-htmlgen/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-htseq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-httpbin/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-httpcore/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-httplib2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-httptools/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-httpx/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-humanfriendly/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-humanize/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-hvac/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-hyperframe/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-hyperopt/package.py35
-rw-r--r--var/spack/repos/builtin/packages/py-hypothesis/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-ics/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-identify/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-idna-ssl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-idna/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-illumina-utils/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ilmbase/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-imageio-ffmpeg/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-imageio/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-imagesize/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-iminuit/package.py15
-rw-r--r--var/spack/repos/builtin/packages/py-immutables/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-importlib-metadata/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-importlib-resources/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-importlib/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-inference-schema/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-inheritance/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-iniconfig/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-iniparse/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-intel-openmp/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-intervaltree/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-invoke/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-iocapture/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-ipaddress/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ipdb/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-ipykernel/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-ipyparallel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-ipython-cluster-helper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-ipython-genutils/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-ipython/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-ipywidgets/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-irpf90/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-isodate/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-isort/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-itk/package.py106
-rw-r--r--var/spack/repos/builtin/packages/py-itsdangerous/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jaraco-functools/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-javaproperties/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jdatetime/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jdcal/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jedi/package.py26
-rw-r--r--var/spack/repos/builtin/packages/py-jeepney/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jellyfish/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-jinja2-time/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-jinja2/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-jmespath/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-joblib/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-jplephem/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-jprops/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jpype1/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jsmin/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-json-get/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-json5/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jsondiff/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jsonpatch/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jsonpath-ng/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-jsonpickle/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-jsonpointer/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-jsonref/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jsonschema/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-junit-xml/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jupyter-client/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jupyter-console/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-jupyter-core/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jupyter/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jupyterhub/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-jupyterlab-pygments/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-jupyterlab-server/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-jupyterlab/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-keras-applications/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-keras-preprocessing/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-keras/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-kerberos/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-keyring/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-kitchen/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-kiwisolver/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-kmodes/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-knack/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-kombu/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-kubernetes/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-labours/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-lap/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-lark-parser/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-latexcodec/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-lazy-object-proxy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-lazy-property/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-lazy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-lazyarray/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-leather/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-lerc/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-libconf/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-libensemble/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-librosa/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-lifelines/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-lightgbm/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-ligo-segments/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-line-profiler/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-linecache2/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-lit/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-llvmlite/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-lmfit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-lmodule/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-localcider/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-locket/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-lockfile/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-logilab-common/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-louie/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-lru-dict/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-lscsoft-glue/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-luigi/package.py27
-rw-r--r--var/spack/repos/builtin/packages/py-lxml/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-lz4/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-lzstring/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-m2r/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-macholib/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-machotools/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-macs2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-maestrowf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-magic/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mailchecker/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-mako/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-mapclassify/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-markdown/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-markdown2/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-markovify/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-markupsafe/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-matplotlib/package.py54
-rw-r--r--var/spack/repos/builtin/packages/py-mayavi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-mccabe/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-mdanalysis/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-mechanize/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-memory-profiler/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-memprof/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-mercantile/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-merlin/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-metasv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-methylcode/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-metpy/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-mg-rast-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mido/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mikado/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-minrpc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-misopy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-mistune/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mixedhtseq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mlperf-logging/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mlxtend/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mmcv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mmtf-python/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-mo-pack/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-mock/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-modred/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-moltemplate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-monotonic/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-monty/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-more-itertools/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-motmetrics/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-moviepy/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-mpi4py/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-mpld3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-mpmath/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-msal-extensions/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-msal/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-msgpack-numpy/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-msgpack/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-msrest/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-msrestazure/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-multi-key-dict/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-multidict/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-multipledispatch/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-multiprocess/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-multiqc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-munch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-murmurhash/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-mx/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-myhdl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-mypy-extensions/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-mypy/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-mysql-connector-python/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-mysqlclient/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-mysqldb1/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-nanotime/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-natsort/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-nbclient/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nbconvert/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-nbformat/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nbsphinx/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-nc-time-axis/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ndg-httpsclient/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-neo/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-neobolt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-neotime/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nest-asyncio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nestle/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-netcdf4/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-netifaces/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-netket/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-networkit/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-networkx/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nltk/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nodeenv/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nose-cov/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nose/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-nose2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nosexcover/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-notebook/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-ntlm-auth/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-numba/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-numcodecs/apple-clang-12.patch14
-rw-r--r--var/spack/repos/builtin/packages/py-numcodecs/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-numexpr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-numexpr3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/add_fj_compiler.patch20
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/add_fj_compiler2.patch20
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/add_fj_compiler3.patch20
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/add_fj_compiler4.patch20
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/check_executables.patch16
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/check_executables2.patch16
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/check_executables3.patch16
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/check_executables4.patch16
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/check_executables5.patch16
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/package.py76
-rw-r--r--var/spack/repos/builtin/packages/py-numpydoc/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-nvidia-ml-py/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-nvidia-ml-py3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-oauth2client/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-oauthlib/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-olefile/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-onnx/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ont-fast5-api/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-opencensus-context/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-opencensus/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-openidc-client/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-openmc/package.py56
-rw-r--r--var/spack/repos/builtin/packages/py-openpmd-validator/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-openpyxl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-openslide-python/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-opentuner/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-opppy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-opt-einsum/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-or-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-ordereddict/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-oset/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-osqp/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-overpy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-owslib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pacifica-downloader/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-pacifica-namespace/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-pacifica-uploader/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-packaging/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-pager/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-palettable/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pamela/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pandas/package.py43
-rw-r--r--var/spack/repos/builtin/packages/py-pandocfilters/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-parameterized/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-paramiko/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-paramz/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-parse/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-parsedatetime/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-parso/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-partd/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-particle/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-path-py/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pathlib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pathlib2/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-pathos/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pathspec/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-patsy/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pauvre/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pbr/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-pem/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-pep8-naming/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pep8/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-performance/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-periodictable/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-petastorm/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-petsc4py/ldshared-dev.patch13
-rw-r--r--var/spack/repos/builtin/packages/py-petsc4py/ldshared.patch13
-rw-r--r--var/spack/repos/builtin/packages/py-petsc4py/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-pexpect/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-phonenumbers/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-phonopy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pickleshare/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-picmistandard/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-picrust/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-picrust2/package.py26
-rw-r--r--var/spack/repos/builtin/packages/py-pid/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pil/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pillow-simd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pillow/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-pint/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pip/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pipits/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pispino/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pkgconfig/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-pkginfo/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-plac/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-planar/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-planet/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-plotly/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pluggy/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-ply/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pmw/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pomegranate/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pooch/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-portalocker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-portend/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-poster/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pox/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-poyo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-ppft/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pre-commit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-preshed/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-prettytable/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-profilehooks/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-proglog/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-progress/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-progressbar2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-projectq/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-prometheus-client/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-prompt-toolkit/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-protobuf/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-psutil/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-psyclone/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-psycopg2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-ptyprocess/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pudb/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pure-eval/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pure-sasl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-py-cpuinfo/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-py-spy/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-py/package.py15
-rw-r--r--var/spack/repos/builtin/packages/py-py2bit/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-py2cairo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-py2neo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-py4j/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-py6s/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyaestro/package.py26
-rw-r--r--var/spack/repos/builtin/packages/py-pyamg/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-pyani/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyarrow/for_aarch64.patch14
-rw-r--r--var/spack/repos/builtin/packages/py-pyarrow/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-pyasn1-modules/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyasn1/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pybedtools/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-pybigwig/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pybind11-stubgen/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-pybind11/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-pybtex-docutils/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-pybtex/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-pycairo/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-pycares/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pycbc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pychecker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pycifrw/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pycmd/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pycocotools/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-pycodestyle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pycosat/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pycparser/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pycrypto/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pycuda/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-pycurl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pydap/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-pydatalog/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pydeprecate/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-pydeps/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pydicom/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-pydispatcher/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pydmd/isuue-133.patch31
-rw-r--r--var/spack/repos/builtin/packages/py-pydmd/package.py49
-rw-r--r--var/spack/repos/builtin/packages/py-pydot/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pydot2/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pydotplus/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pydv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pyeda/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyelftools/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyem/package.py27
-rw-r--r--var/spack/repos/builtin/packages/py-pyepsg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyface/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyfaidx/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyfasta/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyfftw/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-pyfiglet/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-pyfits/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pyflakes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pygdal/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pygdbmi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pygelf/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pygeos/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-pygetwindow/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-pygit2/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-pyglet/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pygments-pytest/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pygments/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-pygobject/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pygps/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pygpu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pygresql/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pygtk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pygtrie/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-pyheadtail/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyinstrument-cext/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyinstrument/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-pyjnius/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-pyjwt/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-pyke/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pykml/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pykwalify/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyliblzma/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pylikwid/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-pylint/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-pylops/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-pymatgen/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pymc3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pymeeus/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyminifier/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pymol/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pymongo/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pymorph/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pympler/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pymsgbox/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-pymumps/package.py46
-rw-r--r--var/spack/repos/builtin/packages/py-pymumps/py-pymumps.setup.patch15
-rw-r--r--var/spack/repos/builtin/packages/py-pymysql/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pynacl/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pynio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pynn/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pynvml/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-pyodbc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyomo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pyopencl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyopenssl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pypar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pyparsing/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-pypeflow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pypeg2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyperclip/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyperf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyprecice/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-pyprof2html/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyproj/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyqi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyqt4/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-pyqt5/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-pyquaternion/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyrad/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pyrect/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-pyrosar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pyrsistent/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pysam/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyscaf/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyscf/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-pyserial/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyshp/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyside/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pyside2/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pysmartdl/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pysocks/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pysolar/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyspark/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-pysqlite/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytailf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-arraydiff/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-benchmark/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-cache/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-check-links/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-cov/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-cpp/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-doctestplus/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-flake8/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-flakes/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-forked/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-html/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-httpbin/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-isort/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-metadata/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-mock/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-mypy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-openfiles/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-pep8/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-qt/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-runner/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-timeout/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-xdist/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytest/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-python-benedict/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-python-box/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-python-certifi-win32/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-python-daemon/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-python-dateutil/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-python-docs-theme/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-editor/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-python-engineio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-python-fmask/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-python-fsutil/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-python-gitlab/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-igraph/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-python-jenkins/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-json-logger/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-ldap/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-python-levenshtein/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-logstash/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-louvain/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-python-lzo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-magic/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-mapnik/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-python-meep/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-python-memcached/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-python-oauth2/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-python-rapidjson/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-slugify/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-socketio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-subunit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-python-swiftclient/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-python-utils/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pythonqwt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pythonsollya/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-pytimeparse/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pytools/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-pytorch-gradual-warmup-lr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pytorch-lightning/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-pytweening/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-pytz/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pyudev/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyugrid/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-pyutilib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pyvcf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pywavelets/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pywcs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-pyyaml/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pyzmq/package.py28
-rw-r--r--var/spack/repos/builtin/packages/py-qsymm/package.py30
-rw-r--r--var/spack/repos/builtin/packages/py-qtawesome/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-qtconsole/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-qtpy/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-quantities/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-quast/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-queryablelist/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-questionary/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-radical-utils/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ranger-fm/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-rarfile/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-rasterio/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-ratelim/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-raven/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ray/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-rbtools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-rdflib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-readme-renderer/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-recommonmark/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-redis/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-regex/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-reindent/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-reportlab/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-repoze-lru/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-reproject/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-requests-futures/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-requests-mock/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-requests-ntlm/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-requests-oauthlib/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-requests-toolbelt/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-requests/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-resampy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-restview/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-resultsfile/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-retrying/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-rfc3986/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-rich/package.py35
-rw-r--r--var/spack/repos/builtin/packages/py-rios/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-rise/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-rmm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-rnacocktail/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-robotframework/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-rope/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-rosdep/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-rosdistro/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-rosinstall-generator/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-rosinstall/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-rospkg/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-rpy2/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-rq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-rsa/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-rseqc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-rtree/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ruamel-ordereddict/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ruamel-yaml-clib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ruamel-yaml/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-s3cmd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-s3fs/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-s3transfer/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-sacremoses/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-saga-python/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sanic/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-scandir/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-scientificpython/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-scikit-build/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-scikit-fmm/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-scikit-image/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-scikit-learn/package.py32
-rw-r--r--var/spack/repos/builtin/packages/py-scikit-optimize/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-scipy/package.py85
-rw-r--r--var/spack/repos/builtin/packages/py-scoop/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-scp/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-scs/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-seaborn/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-secretstorage/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-selenium/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-semantic-version/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-semver/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-send2trash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-sentencepiece/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-sentry-sdk/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-seriate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-setproctitle/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-setuptools-git/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-setuptools-rust/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-setuptools-scm-git-archive/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-setuptools-scm/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-setuptools/package.py30
-rw-r--r--var/spack/repos/builtin/packages/py-sfepy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-sgp4/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sh/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-shapely/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-shiboken/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-shortuuid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-shroud/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-shtab/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-simplegeneric/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-simplejson/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-simplekml/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-singledispatch/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-sip/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-six/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-slepc4py/ldshared-dev.patch13
-rw-r--r--var/spack/repos/builtin/packages/py-slepc4py/ldshared.patch13
-rw-r--r--var/spack/repos/builtin/packages/py-slepc4py/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-slurm-pipeline/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-smart-open/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-smmap/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-snappy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-sncosmo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sniffio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-snowballstemmer/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-snuggs/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-sonlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-sortedcollections/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-sortedcontainers/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-soundfile/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-soupsieve/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-spacy-models-en-core-web-sm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-spacy-models-en-vectors-web-lg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-spacy/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sparse/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-spatialist/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-spatialite/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-spdlog/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-spectra/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-spefile/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-spgl1/package.py30
-rw-r--r--var/spack/repos/builtin/packages/py-spglib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-sphinx-copybutton/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sphinx-gallery/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-sphinx/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxautomodapi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-applehelp/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-devhelp/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-htmlhelp/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-issuetracker/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-jsmath/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-mermaid/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-qthelp/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-serializinghtml/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-trio/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-spyder/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-spykeutils/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sqlalchemy-utils/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sqlalchemy/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-sqlparse/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-srsly/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-sshtunnel/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-statsmodels/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-stdlib-list/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-stestr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-stevedore/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-stopit/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-storm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-stratify/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-stsci-distutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-subprocess32/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-subrosa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-svgpathtools/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-svgwrite/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-symengine/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-symfit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-sympy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-syned/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-systemd-python/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tables/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-tabulate/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tap-py/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tatsu/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-tblib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tempora/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tenacity/package.py26
-rw-r--r--var/spack/repos/builtin/packages/py-tensorboard-plugin-wit/package.py27
-rw-r--r--var/spack/repos/builtin/packages/py-tensorboard/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-tensorboardx/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-tensorflow-estimator/package.py33
-rw-r--r--var/spack/repos/builtin/packages/py-tensorflow-hub/package.py75
-rw-r--r--var/spack/repos/builtin/packages/py-tensorflow-probability/package.py84
-rw-r--r--var/spack/repos/builtin/packages/py-tensorflow/package.py142
-rw-r--r--var/spack/repos/builtin/packages/py-termcolor/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-terminado/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-testfixtures/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-testinfra/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-testpath/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-testrepository/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-testresources/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-testscenarios/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-testtools/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tetoolkit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-text-unidecode/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-textblob/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-texttable/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tfdlpack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-theano/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-thinc/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-thirdorder/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-threadpoolctl/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-tifffile/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-tinyarray/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-tokenizers/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-toml/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-tomlkit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tomopy/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-toolz/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-torch-cluster/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-torch-geometric/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-torch-nvidia-apex/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-torch-scatter/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-torch-sparse/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-torch-spline-conv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-torch/package.py65
-rw-r--r--var/spack/repos/builtin/packages/py-torchaudio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-torchfile/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-torchmetrics/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-torchsummary/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-torchtext/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-torchvision/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-tornado/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-tox/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tpot/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-tqdm/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-traceback2/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-traitlets/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-traits/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-traitsui/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-transformers/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-treehash/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-tuiview/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-twine/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-twisted/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-typed-ast/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-typesentry/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-typing-extensions/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-typing/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-tzlocal/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-ucx-py/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-ujson/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-umalqurra/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-umi-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-uncertainties/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-unicycler/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-unidecode/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-unittest2/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-unittest2py3k/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-unshare/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-update-checker/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-uproot/package.py48
-rw-r--r--var/spack/repos/builtin/packages/py-uproot3-methods/package.py26
-rw-r--r--var/spack/repos/builtin/packages/py-uproot3/package.py30
-rw-r--r--var/spack/repos/builtin/packages/py-uproot4/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-uritemplate/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-urllib3/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-urwid/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-us/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-usgs/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-utils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-uvloop/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-uvw/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-uwsgi/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-vcf-kit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-vcstool/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-vcstools/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-vcversioner/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-vermin/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-versioneer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-vine/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-virtualenv-clone/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-virtualenv/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-virtualenvwrapper/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-visdom/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-voluptuous/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-vsc-base/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-vsc-install/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-vsts-cd-manager/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-vsts/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-walinuxagent/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-wand/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-wandb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-warlock/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-warpx/package.py49
-rw-r--r--var/spack/repos/builtin/packages/py-wasabi/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-watchdog/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-wcsaxes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-wcwidth/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-weave/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-webencodings/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-webkit-server/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-weblogo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-webob/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-websocket-client/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-websockets/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-werkzeug/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-wget/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-whatshap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-wheel/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-whichcraft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-widgetsnbextension/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-wincertstore/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-word2number/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-workload-automation/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-wradlib/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-wrapt/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-wstool/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-wub/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-wxmplot/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-wxpython/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-xarray/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-xattr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-xdot/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-xenv/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-xgboost/package.py90
-rw-r--r--var/spack/repos/builtin/packages/py-xlrd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-xlsxwriter/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-xlwt/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-xmlrunner/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-xmltodict/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-xopen/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-xpyb/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-xvfbwrapper/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-yacs/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-yahmm/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-yajl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-yamlreader/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-yapf/package.py3
-rw-r--r--var/spack/repos/builtin/packages/py-yarl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-yolk3k/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-youtube-dl/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-yt/package.py27
-rw-r--r--var/spack/repos/builtin/packages/py-ytopt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/py-zarr/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-zc-buildout/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-zc-lockfile/package.py5
-rw-r--r--var/spack/repos/builtin/packages/py-zict/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-zipp/package.py4
-rw-r--r--var/spack/repos/builtin/packages/py-zope-event/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-zope-interface/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-zxcvbn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/pythia6/package.py5
-rw-r--r--var/spack/repos/builtin/packages/pythia6/pythia6-root.patch8
-rw-r--r--var/spack/repos/builtin/packages/pythia6/pythia6.patch13
-rw-r--r--var/spack/repos/builtin/packages/pythia8/package.py9
-rw-r--r--var/spack/repos/builtin/packages/python/package.py219
-rw-r--r--var/spack/repos/builtin/packages/q-e-sirius/package.py337
-rw-r--r--var/spack/repos/builtin/packages/qbank/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qbox/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qca/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qcachegrind/package.py3
-rw-r--r--var/spack/repos/builtin/packages/qd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/qemu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qgis/package.py28
-rw-r--r--var/spack/repos/builtin/packages/qgis/pyqt5_3165x.patch29
-rw-r--r--var/spack/repos/builtin/packages/qgraf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/qhull/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qjson/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qmcpack/package.py57
-rw-r--r--var/spack/repos/builtin/packages/qmd-progress/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qnnpack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qorts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qperf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qrupdate/package.py24
-rw-r--r--var/spack/repos/builtin/packages/qscintilla/package.py29
-rw-r--r--var/spack/repos/builtin/packages/qt-creator/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qt/package.py299
-rw-r--r--var/spack/repos/builtin/packages/qt/qt5-15-gcc-10.patch39
-rw-r--r--var/spack/repos/builtin/packages/qt/qt514-isystem.patch107
-rw-r--r--var/spack/repos/builtin/packages/qt/qt514.patch9
-rw-r--r--var/spack/repos/builtin/packages/qtgraph/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qthreads/package.py60
-rw-r--r--var/spack/repos/builtin/packages/qtkeychain/package.py2
-rw-r--r--var/spack/repos/builtin/packages/quantum-espresso/configure_aocc.patch58
-rw-r--r--var/spack/repos/builtin/packages/quantum-espresso/fj-fox.patch10
-rw-r--r--var/spack/repos/builtin/packages/quantum-espresso/fj-intent.6.4.1.patch11
-rw-r--r--var/spack/repos/builtin/packages/quantum-espresso/fj.6.5.patch23
-rw-r--r--var/spack/repos/builtin/packages/quantum-espresso/fj.6.6.patch23
-rw-r--r--var/spack/repos/builtin/packages/quantum-espresso/package.py140
-rw-r--r--var/spack/repos/builtin/packages/quartz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/quicksilver/package.py2
-rw-r--r--var/spack/repos/builtin/packages/quinoa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/quota/package.py2
-rw-r--r--var/spack/repos/builtin/packages/qwt/package.py5
-rw-r--r--var/spack/repos/builtin/packages/qwtpolar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-a4/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-a4base/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-a4classif/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-a4core/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-a4preproc/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-a4reporting/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-abadata/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-abaenrichment/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-abind/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-absseq/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-acde/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-acepack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-acgh/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-acme/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-ada/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-adabag/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ade4/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-adegenet/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-adegraphics/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-adephylo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-adespatial/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-adgoftest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-adsplit/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-aer/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-affxparser/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affy/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-affycomp/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affycompatible/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affycontam/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affycoretools/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-affydata/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affyexpress/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affyilm/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affyio/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affypdnn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-affyplm/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-affyqcreport/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-affyrnadegradation/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-agdex/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-agilp/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-agimicrorna/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-aims/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-aldex2/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-allelicimbalance/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-alpine/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-als/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-alsace/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-altcdfenvs/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-amap/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-amelia/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-ampliqueso/package.py3
-rw-r--r--var/spack/repos/builtin/packages/r-analysispageserver/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-anaquin/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-aneufinder/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-aneufinderdata/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-animation/package.py3
-rw-r--r--var/spack/repos/builtin/packages/r-annaffy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-annotate/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-annotationdbi/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-annotationfilter/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-annotationforge/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-annotationhub/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-anytime/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-aod/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ape/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-argparse/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-aroma-light/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-askpass/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-base/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-code/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-data-uk/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-data-us/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-data/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-datetimes/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-files/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-matrices/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-models/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-numbers/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-properties/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-reflection/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-sets/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-strings/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-assertive-types/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-assertive/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-assertthat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-backports/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-bamsignals/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-base64/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-base64enc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bayesm/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-bayesplot/package.py34
-rw-r--r--var/spack/repos/builtin/packages/r-bbmisc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-beachmat/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-beanplot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-beeswarm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bfast/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bfastspatial/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bglr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bh/package.py3
-rw-r--r--var/spack/repos/builtin/packages/r-biasedurn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bibtex/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-bigalgebra/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bigmemory-sri/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bigmemory/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bindr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bindrcpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bio3d/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-biobase/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-biocfilecache/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-biocgenerics/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-biocinstaller/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-biocmanager/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-biocneighbors/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-biocparallel/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-biocsingular/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-biocstyle/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-biocversion/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-biom-utils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-biomart/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-biomartr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-biomformat/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-biostrings/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-biovizbase/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-bit/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-bit64/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-bitops/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-blavaan/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-blob/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-blockmodeling/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-bmp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bookdown/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-boot/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-boruta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-brew/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-bridgesampling/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-brio/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-brms/package.py52
-rw-r--r--var/spack/repos/builtin/packages/r-brobdingnag/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-broom/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-bsgenome-hsapiens-ucsc-hg19/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-bsgenome/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-bsseq/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-bumphunter/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-c50/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-ca/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-cairo/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-callr/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-car/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-caracas/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-cardata/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-caret/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-caretensemble/package.py33
-rw-r--r--var/spack/repos/builtin/packages/r-caroline/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-category/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-catools/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-cdcfluview/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-cellranger/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-champ/package.py60
-rw-r--r--var/spack/repos/builtin/packages/r-champdata/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-checkmate/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-checkpoint/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-chemometrics/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-chipseq/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-chron/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-circlize/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-circstats/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-class/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-classint/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-cli/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-clipr/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-clisymbols/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-clue/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-cluster/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-clustergeneration/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-clusterprofiler/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-cner/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-coda/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-codetools/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-codex/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-coin/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-colorspace/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-colourpicker/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-combinat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-commonmark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-complexheatmap/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-compositions/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-compquadform/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-condop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-conquer/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-construct/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-convevol/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-copula/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-corhmm/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-corpcor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-corrplot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-countrycode/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-covr/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-cowplot/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-cpp11/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-crayon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-credentials/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-crosstalk/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-crul/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-ctc/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-cubature/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-cubist/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-curl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-dada2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-data-table/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-dbi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-dbplyr/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-debugme/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-decipher/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-delayedarray/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-delayedmatrixstats/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-deldir/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-dendextend/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-deoptim/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-deoptimr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-deriv/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-desc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-deseq/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-deseq2/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-desolve/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-devtools/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-dexseq/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-diagrammer/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-dicekriging/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-dichromat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-diffobj/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-diffusionmap/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-digest/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-diptest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-dirichletmultinomial/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-dismo/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-diversitree/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-dmrcate/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-dnacopy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-do-db/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-domc/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-doparallel/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-dorng/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-dose/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-dosnow/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-dotcall64/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-downloader/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-dplyr/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-dqrng/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-dss/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-dt/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-dtw/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-dygraphs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-dynamictreecut/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-e1071/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-earth/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-ecp/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-edger/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-ellipse/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-ellipsis/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-emmli/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-energy/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-enrichplot/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-ensembldb/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-envstats/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-ergm/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-europepmc/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-evaluate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-evd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-exactextractr/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-exomecopy/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-exomedepth/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-experimenthub/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-expint/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-expm/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-factoextra/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-factominer/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-fansi/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-farver/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-fastcluster/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-fastdigest/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-fastica/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-fastmap/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-fastmatch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-fastmatrix/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg18/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg19/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-ff/package.py49
-rw-r--r--var/spack/repos/builtin/packages/r-fftwtools/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-fgsea/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-fields/package.py32
-rw-r--r--var/spack/repos/builtin/packages/r-filehash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-findpython/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-fit-models/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-fitdistrplus/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-flashclust/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-flexclust/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-flexmix/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-fnn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-forcats/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-foreach/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-forecast/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-foreign/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-formatr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-formula/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-fpc/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-fpcompare/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-fracdiff/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-fs/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-futile-logger/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-futile-options/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-future-apply/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-future/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-gamlss-data/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gamlss-dist/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-gamlss/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-gamm4/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-gbm/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-gbrd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gcrma/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-gdalutils/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-gdata/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gdsfmt/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-geiger/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-genefilter/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-genelendatabase/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-genemeta/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-geneplotter/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-generics/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-genetics/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-genie3/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-genomeinfodb/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-genomicalignments/package.py34
-rw-r--r--var/spack/repos/builtin/packages/r-genomicfeatures/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-genomicranges/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-gensa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-geomorph/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-geonames/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-geoquery/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-geor/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-geosphere/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gert/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-getopt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-getoptlong/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-ggally/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-ggbeeswarm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ggbio/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-ggdendro/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-ggforce/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-ggjoy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ggmap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ggplot2/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-ggplotify/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-ggpubr/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-ggraph/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-ggrepel/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-ggridges/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-ggsci/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ggsignif/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ggthemes/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-ggvis/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-gh/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-gistr/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-git2r/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-gitcreds/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-glimma/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-glmnet/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-globaloptions/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-globals/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-globaltest/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-glue/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-gmodels/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gmp/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-go-db/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-goftest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gofuncr/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-googlevis/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-goplot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gosemsim/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-goseq/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-gostats/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-gower/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-gplots/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-graph/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-graphlayouts/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-grbase/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-gridbase/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gridextra/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gridgraphics/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-gsa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gsalib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gseabase/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-gsl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gsodr/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-gss/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-gstat/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-gsubfn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gtable/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-gtools/package.py62
-rw-r--r--var/spack/repos/builtin/packages/r-gtrellis/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-gviz/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-gwmodel/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-haven/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-hdf5array/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-hdf5r/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-hexbin/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-hh/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-highr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-hmisc/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-hms/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-hoardr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-htmltable/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-htmltools/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-htmlwidgets/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-httpcode/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-httpuv/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-httr/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-hwriter/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-hypergraph/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-ica/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-igraph/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-illumina450probevariants-db/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-illuminahumanmethylation450kanno-ilmn12-hg19/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-illuminahumanmethylation450kmanifest/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-illuminahumanmethylationepicanno-ilm10b4-hg19/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-illuminahumanmethylationepicmanifest/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-illuminaio/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-imager/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-impute/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-influencer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ini/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-inline/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-intervals/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-inum/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ipred/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-iranges/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-irdisplay/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-irkernel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-irlba/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-isdparser/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-iso/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-isoband/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-isva/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-iterators/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-jade/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-janitor/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-jaspar2018/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-jomo/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-jpeg/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-jsonlite/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-kegg-db/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-kegggraph/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-keggrest/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-kernlab/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-kernsmooth/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-kknn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-knitr/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-kpmt/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-ks/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-labeling/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-lambda-r/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-laplacesdemon/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-lars/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-later/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-lattice/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-latticeextra/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-lava/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-lavaan/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-lazyeval/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ldheatmap/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-leafem/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-leaflet-providers/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-leaflet/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-leafpop/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-leaps/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-learnbayes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-leiden/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-lfe/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-lhs/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-libcoin/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-lifecycle/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-limma/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-limsolve/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-listenv/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-lme4/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-lmtest/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-lobstr/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-locfit/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-log4r/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-loo/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-lpsolve/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-lsei/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-lubridate/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-lumi/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-lwgeom/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-magic/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-magick/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-magrittr/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-makecdfenv/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-maldiquant/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-manipulatewidget/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-mapplots/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-mapproj/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-maps/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-maptools/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-mapview/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-markdown/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-marray/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-mass/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-mathjaxr/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-matlab/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-matr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-matrix/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-matrixgenerics/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-matrixmodels/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-matrixstats/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-mclust/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-mcmc/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-mcmcglmm/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-mcmcpack/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-mco/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-mda/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-memoise/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-memuse/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-mergemaid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-metap/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-methylumi/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-mgcv/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-mgraster/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-mice/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-microbenchmark/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-mime/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-minfi/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-miniui/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-minqa/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-misc3d/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-missmethyl/package.py48
-rw-r--r--var/spack/repos/builtin/packages/r-mitml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-mitools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-mixtools/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-mlbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-mlinterfaces/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-mlr/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-mlrmbo/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-mmwrweek/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-mnormt/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-mockery/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-modelmetrics/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-modelr/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-modeltools/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-mpm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-msnbase/package.py33
-rw-r--r--var/spack/repos/builtin/packages/r-multcomp/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-multicool/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-multitaper/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-multtest/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-munsell/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-mutoss/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-mvtnorm/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-mzid/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-mzr/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-nada/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-nanotime/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-ncbit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ncdf4/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-network/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-networkd3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-nimble/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-nleqslv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-nlme/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-nloptr/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-nmf/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-nmof/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-nnet/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-nnls/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-nonnest2/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-nor1mix/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-nortest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-np/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-npsurv/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-numderiv/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-oligoclasses/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-openssl/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-openxlsx/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-optimx/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-optparse/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-ordinal/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-org-hs-eg-db/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-organismdbi/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-packrat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-pacman/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-paleotree/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-pamr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-pan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-parallelly/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-parallelmap/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-paramhelpers/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-party/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-partykit/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-patchwork/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-pathview/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-pbapply/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-pbdzmq/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-pbivnorm/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-pbkrtest/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-pcamethods/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-pcapp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-pegas/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-permute/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-pfam-db/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-phangorn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-phantompeakqualtools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-pheatmap/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-philentropy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-phylobase/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-phyloseq/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-phylostratr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-phytools/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-picante/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-pillar/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-pinfsc50/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-pixmap/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-pkgbuild/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-pkgconfig/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-pkgload/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-pkgmaker/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-plogr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-plot3d/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-plotly/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-plotmo/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-plotrix/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-pls/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-plyr/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-pmcmr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-png/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-polspline/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-polyclip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-polynom/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-pool/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-popgenome/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-popvar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-powerlaw/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-prabclus/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-pracma/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-praise/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-preprocesscore/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-prettydoc/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-prettyunits/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-proc/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-processx/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-prodlim/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-progress/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-proj/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-proj4/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-projpred/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-promises/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-protgenerics/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-proto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-proxy/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-pryr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ps/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-pscbs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-pspline/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-psych/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-ptw/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-purrr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-qs/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-qtl/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-quadprog/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-quantmod/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-quantreg/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-quantro/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-quickplot/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-qvalue/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-r-cache/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-r-methodss3/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-r-oo/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-r-utils/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-r6/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-randomfields/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-randomfieldsutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-randomforest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-randomglm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ranger/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-rann/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rapiserialize/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-rappdirs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-raster/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-rbgl/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rbibutils/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-rbokeh/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-rcmdcheck/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rcolorbrewer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rcpp/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-rcppannoy/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rcpparmadillo/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-rcppblaze/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rcppcctz/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-rcppcnpy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rcppdate/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-rcppeigen/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-rcpphnsw/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-rcppparallel/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rcppprogress/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rcurl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rda/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rdpack/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-readbitmap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-readr/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-readxl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-recipes/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-registry/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rematch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rematch2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-remotes/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-renv/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-reordercluster/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-reportingtools/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-repr/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-reprex/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-reproducible/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-require/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-reshape/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-reshape2/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-reticulate/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-rex/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-rferns/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-rgdal/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-rgenoud/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rgeos/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-rgexf/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-rgl/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-rgooglemaps/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-rgraphviz/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rhdf5/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-rhdf5filters/package.py27
-rw-r--r--var/spack/repos/builtin/packages/r-rhdf5lib/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rhmmer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rhtslib/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rinside/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-rio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rjags/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-rjava/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-rjson/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rjsonio/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rlang/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-rle/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-rmariadb/configure_add_rpath.patch13
-rw-r--r--var/spack/repos/builtin/packages/r-rmariadb/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-rmarkdown/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-rminer/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-rmpfr/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-rmpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rms/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-rmutil/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-rmysql/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-rnaseqmap/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-rncl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rnexml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rngtools/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-rnoaa/package.py34
-rw-r--r--var/spack/repos/builtin/packages/r-robust/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-robustbase/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-roc/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rocr/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-rodbc/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-rook/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rots/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-roxygen2/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-rpart-plot/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-rpart/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rpmm/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-rpostgresql/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-rprojroot/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-rrblup/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-rrcov/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-rrpp/package.py32
-rw-r--r--var/spack/repos/builtin/packages/r-rsamtools/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-rsconnect/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-rsnns/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rsolnp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-rspectra/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rsqlite/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-rstan/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-rstantools/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-rstatix/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-rstudioapi/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rsvd/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-rtracklayer/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-rtsne/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-runit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-runjags/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-ruv/package.py32
-rw-r--r--var/spack/repos/builtin/packages/r-rvcheck/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-rversions/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-rvest/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-rzmq/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-s2/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-s4vectors/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-samr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-sandwich/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-satellite/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-scales/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-scater/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-scattermore/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-scatterpie/package.py25
-rw-r--r--var/spack/repos/builtin/packages/r-scatterplot3d/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-scrime/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-sctransform/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-scuttle/package.py32
-rw-r--r--var/spack/repos/builtin/packages/r-sdmtools/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-segmented/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-selectr/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-seqinr/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-seqlogo/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-servr/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-sessioninfo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-seurat/package.py101
-rw-r--r--var/spack/repos/builtin/packages/r-sf/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-sfsmisc/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-shadowtext/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-shape/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-shiny/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-shinydashboard/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-shinyfiles/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-shinyjs/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-shinystan/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-shinythemes/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-shortread/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-siggenes/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-simpleaffy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-singlecellexperiment/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-sitmo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-sm/package.py3
-rw-r--r--var/spack/repos/builtin/packages/r-smoof/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-sn/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-snakecase/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-snow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-snowfall/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-snprelate/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-snpstats/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-som/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-somaticsignatures/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-sourcetools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-sp/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-spacetime/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-spades-addins/package.py31
-rw-r--r--var/spack/repos/builtin/packages/r-spades-core/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-spades-tools/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-spades/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-spam/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-sparsem/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-sparsematrixstats/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-spatial/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-spatialeco/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-spatialpack/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-spatialreg/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-spatstat-data/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-spatstat-utils/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-spatstat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-spdata/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-spdep/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-speedglm/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-spem/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-splancs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-splitstackshape/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-sqldf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-squarem/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-squash/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-sseq/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-stabledist/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-stanheaders/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-stargazer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-statmod/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-statnet-common/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-stringfish/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-stringi/package.py23
-rw-r--r--var/spack/repos/builtin/packages/r-stringr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-strucchange/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-subplex/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-summarizedexperiment/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-suppdists/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-survey/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-survival/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-sva/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-svglite/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-sys/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-systemfonts/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-tarifx/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-taxizedb/package.py17
-rw-r--r--var/spack/repos/builtin/packages/r-tclust/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-teachingdemos/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-tensor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-tensora/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-tester/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-testit/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-testthat/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-tfbstools/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-tfisher/package.py30
-rw-r--r--var/spack/repos/builtin/packages/r-tfmpvalue/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-th-data/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-threejs/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-tibble/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-tictoc/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-tidycensus/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-tidygraph/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-tidyr/package.py32
-rw-r--r--var/spack/repos/builtin/packages/r-tidyselect/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-tidyverse/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-tiff/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-tigris/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-timedate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-tinytex/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-tmixclust/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-tmvnsim/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-topgo/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-triebeard/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-trimcluster/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-truncdist/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-truncnorm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-trust/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-tseries/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-tsne/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-ttr/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-tweenr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg18-knowngene/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg19-knowngene/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-tximport/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-tximportdata/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-ucminf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-udunits2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-units/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-upsetr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-urca/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-urltools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-usethis/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-utf8/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-uuid/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-uwot/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-v8/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-variantannotation/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-varselrf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-vcd/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-vcfr/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-vctrs/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-vegan/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-vfs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-vgam/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-vioplot/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-vipor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-viridis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-viridislite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-visnetwork/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-vsn/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-waldo/package.py28
-rw-r--r--var/spack/repos/builtin/packages/r-watermelon/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-webshot/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-wgcna/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-whisker/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-withr/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-wk/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-xde/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-xfun/package.py3
-rw-r--r--var/spack/repos/builtin/packages/r-xgboost/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-xlconnect/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-xlconnectjars/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-xlsx/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-xlsxjars/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-xmapbridge/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-xml/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-xml2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-xnomial/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-xopen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-xtable/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-xts/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-xvector/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-yaimpute/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-yaml/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-yapsa/package.py16
-rw-r--r--var/spack/repos/builtin/packages/r-yaqcaffy/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-yarn/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-zcompositions/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-zeallot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/r-zip/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-zlibbioc/package.py5
-rw-r--r--var/spack/repos/builtin/packages/r-zoo/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r/package.py91
-rw-r--r--var/spack/repos/builtin/packages/r3d/package.py41
-rw-r--r--var/spack/repos/builtin/packages/rabbitmq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/racon/aarch64.patch2791
-rw-r--r--var/spack/repos/builtin/packages/racon/package.py3
-rw-r--r--var/spack/repos/builtin/packages/raft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ragel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/raja/package.py38
-rw-r--r--var/spack/repos/builtin/packages/ramulator/package.py2
-rw-r--r--var/spack/repos/builtin/packages/randfold/package.py2
-rw-r--r--var/spack/repos/builtin/packages/random123/package.py2
-rw-r--r--var/spack/repos/builtin/packages/random123/v1132-xl161.patch17
-rw-r--r--var/spack/repos/builtin/packages/randrproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/range-v3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/rankstr/package.py5
-rw-r--r--var/spack/repos/builtin/packages/rapidjson/package.py2
-rw-r--r--var/spack/repos/builtin/packages/raptor2/package.py17
-rw-r--r--var/spack/repos/builtin/packages/rasdaemon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rasqal/package.py22
-rw-r--r--var/spack/repos/builtin/packages/ravel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/raxml-ng/package.py34
-rw-r--r--var/spack/repos/builtin/packages/raxml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ray/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rccl/package.py18
-rw-r--r--var/spack/repos/builtin/packages/rclone/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rdc/package.py22
-rw-r--r--var/spack/repos/builtin/packages/rdkit/package.py41
-rw-r--r--var/spack/repos/builtin/packages/rdma-core/package.py14
-rw-r--r--var/spack/repos/builtin/packages/rdp-classifier/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rdptools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/re2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/re2c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/readfq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/readline/package.py11
-rw-r--r--var/spack/repos/builtin/packages/recon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/recorder/package.py2
-rw-r--r--var/spack/repos/builtin/packages/recordproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/redis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/reditools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/redland-bindings/package.py34
-rw-r--r--var/spack/repos/builtin/packages/redland/package.py21
-rw-r--r--var/spack/repos/builtin/packages/redset/package.py8
-rw-r--r--var/spack/repos/builtin/packages/redundans/package.py2
-rw-r--r--var/spack/repos/builtin/packages/reframe/package.py91
-rw-r--r--var/spack/repos/builtin/packages/regcm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/relax/package.py4
-rw-r--r--var/spack/repos/builtin/packages/relion/0002-Simple-patch-to-fix-intel-mkl-linking.patch31
-rw-r--r--var/spack/repos/builtin/packages/relion/package.py26
-rw-r--r--var/spack/repos/builtin/packages/remhos/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rempi/package.py9
-rw-r--r--var/spack/repos/builtin/packages/rename/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rendercheck/package.py4
-rw-r--r--var/spack/repos/builtin/packages/renderproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/repeatmasker/package.py37
-rw-r--r--var/spack/repos/builtin/packages/repeatmodeler/package.py2
-rw-r--r--var/spack/repos/builtin/packages/repeatscout/package.py2
-rw-r--r--var/spack/repos/builtin/packages/resourceproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/revbayes/package.py3
-rw-r--r--var/spack/repos/builtin/packages/revocap-coupler/package.py4
-rw-r--r--var/spack/repos/builtin/packages/revocap-refiner/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rgb/package.py4
-rw-r--r--var/spack/repos/builtin/packages/rhash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rinetd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ripgrep/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rivet/package.py123
-rw-r--r--var/spack/repos/builtin/packages/rlwrap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rmats/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rmlab/package.py7
-rw-r--r--var/spack/repos/builtin/packages/rna-seqc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rnaquast/package.py37
-rw-r--r--var/spack/repos/builtin/packages/rnaz/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rng-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rngstreams/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rocalution/package.py29
-rw-r--r--var/spack/repos/builtin/packages/rocblas/package.py43
-rw-r--r--var/spack/repos/builtin/packages/rocfft/package.py37
-rw-r--r--var/spack/repos/builtin/packages/rocketmq/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rocksdb/package.py21
-rw-r--r--var/spack/repos/builtin/packages/rocksdb/pkg-config.patch14
-rw-r--r--var/spack/repos/builtin/packages/rockstar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py14
-rw-r--r--var/spack/repos/builtin/packages/rocm-clang-ocl/package.py17
-rw-r--r--var/spack/repos/builtin/packages/rocm-cmake/package.py15
-rw-r--r--var/spack/repos/builtin/packages/rocm-dbgapi/package.py14
-rw-r--r--var/spack/repos/builtin/packages/rocm-debug-agent/package.py19
-rw-r--r--var/spack/repos/builtin/packages/rocm-device-libs/package.py16
-rw-r--r--var/spack/repos/builtin/packages/rocm-gdb/package.py17
-rw-r--r--var/spack/repos/builtin/packages/rocm-opencl-runtime/package.py52
-rw-r--r--var/spack/repos/builtin/packages/rocm-opencl/package.py16
-rw-r--r--var/spack/repos/builtin/packages/rocm-openmp-extras/package.py390
-rw-r--r--var/spack/repos/builtin/packages/rocm-smi-lib/package.py16
-rw-r--r--var/spack/repos/builtin/packages/rocm-smi/package.py7
-rw-r--r--var/spack/repos/builtin/packages/rocm-tensile/0002-require-openmp-when-tensile-use-openmp-is-on.patch90
-rw-r--r--var/spack/repos/builtin/packages/rocm-tensile/package.py53
-rw-r--r--var/spack/repos/builtin/packages/rocm-validation-suite/002-remove-force-setting-hip-inc-path.patch13
-rw-r--r--var/spack/repos/builtin/packages/rocm-validation-suite/package.py12
-rw-r--r--var/spack/repos/builtin/packages/rocminfo/package.py14
-rw-r--r--var/spack/repos/builtin/packages/rocprim/package.py15
-rw-r--r--var/spack/repos/builtin/packages/rocprofiler-dev/package.py42
-rw-r--r--var/spack/repos/builtin/packages/rocrand/package.py37
-rw-r--r--var/spack/repos/builtin/packages/rocsolver/package.py25
-rw-r--r--var/spack/repos/builtin/packages/rocsparse/package.py14
-rw-r--r--var/spack/repos/builtin/packages/rocthrust/package.py17
-rw-r--r--var/spack/repos/builtin/packages/roctracer-dev/package.py20
-rw-r--r--var/spack/repos/builtin/packages/rodinia/package.py2
-rw-r--r--var/spack/repos/builtin/packages/root/README.md8
-rw-r--r--var/spack/repos/builtin/packages/root/package.py71
-rw-r--r--var/spack/repos/builtin/packages/rose/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ross/package.py2
-rw-r--r--var/spack/repos/builtin/packages/routino/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rpcsvc-proto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rpm/package.py139
-rw-r--r--var/spack/repos/builtin/packages/rr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rrdtool/package.py6
-rw-r--r--var/spack/repos/builtin/packages/rsbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rsem/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rstart/package.py4
-rw-r--r--var/spack/repos/builtin/packages/rsync/package.py11
-rw-r--r--var/spack/repos/builtin/packages/rsyslog/package.py9
-rw-r--r--var/spack/repos/builtin/packages/rt-tests/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rtags/package.py3
-rw-r--r--var/spack/repos/builtin/packages/rtax/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-asciidoctor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-erubis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-gnuplot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-hpricot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-mustache/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-narray/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-rake/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-rdiscount/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-ronn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-rubyinline/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-svn2git/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-terminal-table/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-thor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-tmuxinator/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-unicode-display-width/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-xdg/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby-zentest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ruby/package.py13
-rw-r--r--var/spack/repos/builtin/packages/rust-bindgen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/rust/package.py32
-rw-r--r--var/spack/repos/builtin/packages/sabre/package.py2
-rw-r--r--var/spack/repos/builtin/packages/saga-gis/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sailfish/package.py2
-rwxr-xr-xvar/spack/repos/builtin/packages/salmon-tddft/cmakefix.patch108
-rwxr-xr-xvar/spack/repos/builtin/packages/salmon-tddft/fjmpi.patch67
-rwxr-xr-xvar/spack/repos/builtin/packages/salmon-tddft/package.py98
-rwxr-xr-xvar/spack/repos/builtin/packages/salmon-tddft/v2.0.libxc-5.0.patch312
-rw-r--r--var/spack/repos/builtin/packages/salmon/package.py68
-rw-r--r--var/spack/repos/builtin/packages/sambamba/package.py2
-rw-r--r--var/spack/repos/builtin/packages/samblaster/package.py2
-rw-r--r--var/spack/repos/builtin/packages/samrai/package.py2
-rw-r--r--var/spack/repos/builtin/packages/samtools/package.py4
-rw-r--r--var/spack/repos/builtin/packages/sandbox/package.py4
-rw-r--r--var/spack/repos/builtin/packages/satsuma2/package.py4
-rw-r--r--var/spack/repos/builtin/packages/savanna/package.py2
-rw-r--r--var/spack/repos/builtin/packages/saws/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sblim-sfcc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sbml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sbt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scala/package.py3
-rw-r--r--var/spack/repos/builtin/packages/scalasca/package.py5
-rw-r--r--var/spack/repos/builtin/packages/scallop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scalpel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scan-for-matches/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scantailor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scipoptsuite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scons/package.py4
-rw-r--r--var/spack/repos/builtin/packages/scorec-core/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scorep/package.py23
-rw-r--r--var/spack/repos/builtin/packages/scotch/package.py8
-rw-r--r--var/spack/repos/builtin/packages/scr/package.py102
-rw-r--r--var/spack/repos/builtin/packages/screen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scripts/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scrnsaverproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/scs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sctk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sdl2-image/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sdl2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sdsl-lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/seacas/package.py89
-rw-r--r--var/spack/repos/builtin/packages/sed/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sensei/package.py123
-rw-r--r--var/spack/repos/builtin/packages/sentencepiece/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sentieon-genomics/package.py3
-rw-r--r--var/spack/repos/builtin/packages/seqan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/seqkit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/seqprep/package.py2
-rw-r--r--var/spack/repos/builtin/packages/seqtk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/serf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sessreg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/setserial/package.py2
-rw-r--r--var/spack/repos/builtin/packages/setxkbmap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sfcgal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sga/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sgpp/package.py34
-rw-r--r--var/spack/repos/builtin/packages/shadow/package.py7
-rw-r--r--var/spack/repos/builtin/packages/shapeit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shapeit4/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shapelib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shared-mime-info/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shengbte/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shiny-server/package.py4
-rw-r--r--var/spack/repos/builtin/packages/shiro/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shocklibs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shoremap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shortbred/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shortstack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/showfont/package.py2
-rw-r--r--var/spack/repos/builtin/packages/shtools/package.py18
-rw-r--r--var/spack/repos/builtin/packages/shuffile/package.py9
-rw-r--r--var/spack/repos/builtin/packages/sickle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/siesta/package.py4
-rw-r--r--var/spack/repos/builtin/packages/signalp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/signify/package.py2
-rw-r--r--var/spack/repos/builtin/packages/silo/H5FD_class_t-terminate.patch12
-rw-r--r--var/spack/repos/builtin/packages/silo/package.py65
-rw-r--r--var/spack/repos/builtin/packages/simde/package.py25
-rw-r--r--var/spack/repos/builtin/packages/simde/sve-gcc.patch18
-rw-r--r--var/spack/repos/builtin/packages/simgrid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/simmetrix-simmodsuite/package.py147
-rw-r--r--var/spack/repos/builtin/packages/simplemoc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/simul/package.py2
-rw-r--r--var/spack/repos/builtin/packages/simulationio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/singularity-legacy/package.py16
-rw-r--r--var/spack/repos/builtin/packages/singularity/package.py14
-rw-r--r--var/spack/repos/builtin/packages/sio/package.py22
-rw-r--r--var/spack/repos/builtin/packages/sionlib/for_aarch64.patch11
-rw-r--r--var/spack/repos/builtin/packages/sionlib/package.py31
-rw-r--r--var/spack/repos/builtin/packages/sirius/package.py137
-rw-r--r--var/spack/repos/builtin/packages/skilion-onedrive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/skopeo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/slang/package.py2
-rw-r--r--var/spack/repos/builtin/packages/slate/package.py30
-rw-r--r--var/spack/repos/builtin/packages/sleef/package.py2
-rw-r--r--var/spack/repos/builtin/packages/slepc/package.py54
-rw-r--r--var/spack/repos/builtin/packages/slepc/test/hello.c14
-rw-r--r--var/spack/repos/builtin/packages/slf4j/package.py2
-rw-r--r--var/spack/repos/builtin/packages/slider/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sloccount/package.py2
-rw-r--r--var/spack/repos/builtin/packages/slurm/package.py5
-rw-r--r--var/spack/repos/builtin/packages/smalt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/smartdenovo/aarch64.patch2
-rw-r--r--var/spack/repos/builtin/packages/smartdenovo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/smartmontools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/smof/package.py2
-rw-r--r--var/spack/repos/builtin/packages/smproxy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/snakemake/package.py4
-rw-r--r--var/spack/repos/builtin/packages/snap-berkeley/package.py2
-rw-r--r--var/spack/repos/builtin/packages/snap-korf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/snap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/snappy/package.py17
-rw-r--r--var/spack/repos/builtin/packages/snbone/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sniffles/package.py2
-rw-r--r--var/spack/repos/builtin/packages/snpeff/package.py2
-rw-r--r--var/spack/repos/builtin/packages/snphylo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/snptest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/soapdenovo-trans/package.py2
-rw-r--r--var/spack/repos/builtin/packages/soapdenovo2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/soci/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sofa-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sollve/package.py7
-rw-r--r--var/spack/repos/builtin/packages/sollya/package.py33
-rw-r--r--var/spack/repos/builtin/packages/solr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/somatic-sniper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sonlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sortmerna/for_aarch64.patch22
-rw-r--r--var/spack/repos/builtin/packages/sortmerna/package.py9
-rw-r--r--var/spack/repos/builtin/packages/sos/package.py51
-rw-r--r--var/spack/repos/builtin/packages/sosflow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/source-highlight/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sowing/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sox/package.py2
-rw-r--r--var/spack/repos/builtin/packages/spades/package.py5
-rw-r--r--var/spack/repos/builtin/packages/span-lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/spark/package.py6
-rw-r--r--var/spack/repos/builtin/packages/sparse/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sparsehash/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sparskit/package.py76
-rw-r--r--var/spack/repos/builtin/packages/sparta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/spath/package.py6
-rw-r--r--var/spack/repos/builtin/packages/spdlog/package.py18
-rw-r--r--var/spack/repos/builtin/packages/specfem3d-globe/gcc_rm_werror.patch11
-rw-r--r--var/spack/repos/builtin/packages/specfem3d-globe/package.py63
-rw-r--r--var/spack/repos/builtin/packages/spectrum-mpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/speex/package.py2
-rw-r--r--var/spack/repos/builtin/packages/speexdsp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/spfft/0001-fix-missing-limits-include.patch37
-rw-r--r--var/spack/repos/builtin/packages/spfft/package.py44
-rw-r--r--var/spack/repos/builtin/packages/spglib/package.py28
-rw-r--r--var/spack/repos/builtin/packages/sph2pipe/package.py4
-rw-r--r--var/spack/repos/builtin/packages/spherepack/package.py2
-rw-r--r--var/spack/repos/builtin/packages/spindle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/spiral/package.py2
-rw-r--r--var/spack/repos/builtin/packages/spla/package.py21
-rw-r--r--var/spack/repos/builtin/packages/spm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/spot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sprng/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sqlcipher/package.py33
-rw-r--r--var/spack/repos/builtin/packages/sqlite-jdbc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sqlite/package.py11
-rw-r--r--var/spack/repos/builtin/packages/sqlitebrowser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sqoop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/squashfs/gcc-10.patch13
-rw-r--r--var/spack/repos/builtin/packages/squashfs/package.py35
-rw-r--r--var/spack/repos/builtin/packages/squashfuse/package.py71
-rw-r--r--var/spack/repos/builtin/packages/squid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sratoolkit/package.py5
-rw-r--r--var/spack/repos/builtin/packages/srilm/package.py92
-rw-r--r--var/spack/repos/builtin/packages/sse2neon/package.py10
-rw-r--r--var/spack/repos/builtin/packages/sshfs/package.py25
-rw-r--r--var/spack/repos/builtin/packages/sshpass/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ssht/package.py40
-rw-r--r--var/spack/repos/builtin/packages/ssmtp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sspace-longread/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sspace-standard/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sst-core/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sst-dumpi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sst-elements/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sst-macro/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sst-transports/package.py2
-rw-r--r--var/spack/repos/builtin/packages/stacks/package.py2
-rw-r--r--var/spack/repos/builtin/packages/staden-io-lib/package.py13
-rw-r--r--var/spack/repos/builtin/packages/star-ccm-plus/package.py2
-rw-r--r--var/spack/repos/builtin/packages/star/package.py2
-rw-r--r--var/spack/repos/builtin/packages/startup-notification/package.py2
-rw-r--r--var/spack/repos/builtin/packages/stat/package.py37
-rw-r--r--var/spack/repos/builtin/packages/stata/package.py3
-rw-r--r--var/spack/repos/builtin/packages/static-analysis-suite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/stc/package.py5
-rw-r--r--var/spack/repos/builtin/packages/steps/package.py2
-rw-r--r--var/spack/repos/builtin/packages/stinger/package.py2
-rw-r--r--var/spack/repos/builtin/packages/storm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/stow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/strace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/stream/package.py2
-rw-r--r--var/spack/repos/builtin/packages/strelka/package.py4
-rw-r--r--var/spack/repos/builtin/packages/stress-ng/package.py46
-rw-r--r--var/spack/repos/builtin/packages/stress/package.py2
-rw-r--r--var/spack/repos/builtin/packages/string-view-lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/stringtie/package.py2
-rw-r--r--var/spack/repos/builtin/packages/stripack/package.py69
-rw-r--r--var/spack/repos/builtin/packages/structure/package.py2
-rw-r--r--var/spack/repos/builtin/packages/strumpack/package.py135
-rw-r--r--var/spack/repos/builtin/packages/su2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sublime-text/package.py2
-rw-r--r--var/spack/repos/builtin/packages/subread/package.py2
-rw-r--r--var/spack/repos/builtin/packages/subversion/package.py2
-rw-r--r--var/spack/repos/builtin/packages/suite-sparse/fix_cuda11.patch10
-rw-r--r--var/spack/repos/builtin/packages/suite-sparse/package.py12
-rw-r--r--var/spack/repos/builtin/packages/sumaclust/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sumo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sundials/0001-add-missing-README-to-examples-cvode-hip.patch22
-rw-r--r--var/spack/repos/builtin/packages/sundials/package.py187
-rw-r--r--var/spack/repos/builtin/packages/superchic/package.py51
-rw-r--r--var/spack/repos/builtin/packages/superlu-dist/package.py52
-rw-r--r--var/spack/repos/builtin/packages/superlu-mt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/superlu/package.py82
-rw-r--r--var/spack/repos/builtin/packages/supernova/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sw4lite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/swap-assembler/package.py2
-rw-r--r--var/spack/repos/builtin/packages/swarm/package.py5
-rw-r--r--var/spack/repos/builtin/packages/swfft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/swftools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/swiftsim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/swig/package.py47
-rw-r--r--var/spack/repos/builtin/packages/swipl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/symengine/package.py24
-rw-r--r--var/spack/repos/builtin/packages/symlinks/package.py9
-rw-r--r--var/spack/repos/builtin/packages/sympol/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sysbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/syscalc/package.py16
-rw-r--r--var/spack/repos/builtin/packages/sysfsutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sysget/package.py2
-rw-r--r--var/spack/repos/builtin/packages/sysstat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/systemtap/package.py7
-rw-r--r--var/spack/repos/builtin/packages/sz/package.py3
-rw-r--r--var/spack/repos/builtin/packages/tabix/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tajo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/talass/package.py9
-rw-r--r--var/spack/repos/builtin/packages/talloc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tangram/package.py6
-rw-r--r--var/spack/repos/builtin/packages/tantan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tar/nvhpc-1.30.patch (renamed from var/spack/repos/builtin/packages/tar/nvhpc.patch)0
-rw-r--r--var/spack/repos/builtin/packages/tar/nvhpc-1.34.patch35
-rw-r--r--var/spack/repos/builtin/packages/tar/nvhpc-long-width.patch17
-rw-r--r--var/spack/repos/builtin/packages/tar/package.py10
-rw-r--r--var/spack/repos/builtin/packages/targetp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/task/package.py4
-rw-r--r--var/spack/repos/builtin/packages/taskd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/taskflow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tasmanian/package.py53
-rw-r--r--var/spack/repos/builtin/packages/tassel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tau/package.py23
-rw-r--r--var/spack/repos/builtin/packages/tauola/package.py34
-rw-r--r--var/spack/repos/builtin/packages/tbl2asn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tcl-itcl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tcl-tcllib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tcl-tclxml/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tcl/package.py5
-rw-r--r--var/spack/repos/builtin/packages/tclap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tcoffee/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tcpdump/package.py10
-rw-r--r--var/spack/repos/builtin/packages/tcptrace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tcsh/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tdengine/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tealeaf/package.py2
-rw-r--r--var/spack/repos/builtin/packages/teckit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tecplot/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tempestremap/package.py45
-rw-r--r--var/spack/repos/builtin/packages/templight-tools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/templight/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tengine/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tensorflow-serving-client/package.py2
-rw-r--r--var/spack/repos/builtin/packages/termcap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tesseract/package.py2
-rw-r--r--var/spack/repos/builtin/packages/testdfsio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tetgen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tethex/package.py2
-rw-r--r--var/spack/repos/builtin/packages/texinfo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/texlive/package.py2
-rw-r--r--var/spack/repos/builtin/packages/texstudio/package.py2
-rw-r--r--var/spack/repos/builtin/packages/textparser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tfel/package.py13
-rw-r--r--var/spack/repos/builtin/packages/the-platinum-searcher/package.py4
-rw-r--r--var/spack/repos/builtin/packages/the-silver-searcher/package.py2
-rw-r--r--var/spack/repos/builtin/packages/thepeg/package.py4
-rw-r--r--var/spack/repos/builtin/packages/thornado-mini/package.py2
-rw-r--r--var/spack/repos/builtin/packages/thrift/package.py2
-rw-r--r--var/spack/repos/builtin/packages/thrust/package.py18
-rw-r--r--var/spack/repos/builtin/packages/tidy-html5/package.py20
-rw-r--r--var/spack/repos/builtin/packages/tig/package.py2
-rw-r--r--var/spack/repos/builtin/packages/time/package.py2
-rw-r--r--var/spack/repos/builtin/packages/timedatex/package.py2
-rw-r--r--var/spack/repos/builtin/packages/timemory/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tinker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tinyxml/package.py6
-rw-r--r--var/spack/repos/builtin/packages/tinyxml2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tioga/package.py55
-rw-r--r--var/spack/repos/builtin/packages/tippecanoe/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tiptop/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tix/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tixi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tk/package.py10
-rw-r--r--var/spack/repos/builtin/packages/tldd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tmalign/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tmhmm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tmux/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tomcat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tophat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/totalview/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tpm2-tss/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tppred/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tracer/package.py2
-rw-r--r--var/spack/repos/builtin/packages/transabyss/package.py2
-rw-r--r--var/spack/repos/builtin/packages/transdecoder/package.py2
-rw-r--r--var/spack/repos/builtin/packages/transposome/package.py2
-rw-r--r--var/spack/repos/builtin/packages/transrate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/transset/package.py4
-rw-r--r--var/spack/repos/builtin/packages/trapproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tree/package.py2
-rw-r--r--var/spack/repos/builtin/packages/treelite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/treesub/package.py2
-rw-r--r--var/spack/repos/builtin/packages/trf/package.py33
-rw-r--r--var/spack/repos/builtin/packages/triangle/package.py2
-rw-r--r--var/spack/repos/builtin/packages/trident/package.py2
-rw-r--r--var/spack/repos/builtin/packages/trilinos-catalyst-ioss-adapter/package.py2
-rw-r--r--var/spack/repos/builtin/packages/trilinos/fix_cxx14_cuda11.patch110
-rw-r--r--var/spack/repos/builtin/packages/trilinos/package.py80
-rw-r--r--var/spack/repos/builtin/packages/trimal/package.py2
-rw-r--r--var/spack/repos/builtin/packages/trimgalore/package.py2
-rw-r--r--var/spack/repos/builtin/packages/trimmomatic/package.py2
-rw-r--r--var/spack/repos/builtin/packages/trinity/package.py13
-rw-r--r--var/spack/repos/builtin/packages/trinotate/package.py2
-rw-r--r--var/spack/repos/builtin/packages/trnascan-se/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tskit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/tulip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/turbine/package.py6
-rw-r--r--var/spack/repos/builtin/packages/turbomole/package.py2
-rw-r--r--var/spack/repos/builtin/packages/turnserver/package.py2
-rw-r--r--var/spack/repos/builtin/packages/tut/package.py6
-rw-r--r--var/spack/repos/builtin/packages/twm/package.py4
-rw-r--r--var/spack/repos/builtin/packages/tycho2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/typhon/package.py2
-rw-r--r--var/spack/repos/builtin/packages/typhonio/package.py6
-rw-r--r--var/spack/repos/builtin/packages/uchardet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ucx/package.py39
-rw-r--r--var/spack/repos/builtin/packages/udunits/package.py5
-rw-r--r--var/spack/repos/builtin/packages/ufo-core/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ufo-filters/package.py2
-rw-r--r--var/spack/repos/builtin/packages/umap/package.py7
-rw-r--r--var/spack/repos/builtin/packages/umesimd/package.py25
-rw-r--r--var/spack/repos/builtin/packages/umoci/package.py2
-rw-r--r--var/spack/repos/builtin/packages/umpire/package.py217
-rw-r--r--var/spack/repos/builtin/packages/unblur/package.py2
-rw-r--r--var/spack/repos/builtin/packages/uncrustify/package.py2
-rw-r--r--var/spack/repos/builtin/packages/unibilium/package.py2
-rw-r--r--var/spack/repos/builtin/packages/unifdef/package.py2
-rw-r--r--var/spack/repos/builtin/packages/unifyfs/auto-mount.patch25
-rw-r--r--var/spack/repos/builtin/packages/unifyfs/include-sys-sysmacros.h.patch43
-rw-r--r--var/spack/repos/builtin/packages/unifyfs/package.py45
-rw-r--r--var/spack/repos/builtin/packages/unifyfs/unifyfs-sysio.c.patch11
-rw-r--r--var/spack/repos/builtin/packages/unigen/package.py33
-rw-r--r--var/spack/repos/builtin/packages/unigen/unigen-2.3.patch127
-rw-r--r--var/spack/repos/builtin/packages/unison/package.py2
-rw-r--r--var/spack/repos/builtin/packages/units/package.py2
-rw-r--r--var/spack/repos/builtin/packages/unittest-cpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/universal-ctags/package.py3
-rw-r--r--var/spack/repos/builtin/packages/unixodbc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/unqlite/package.py2
-rw-r--r--var/spack/repos/builtin/packages/unrar/package.py2
-rw-r--r--var/spack/repos/builtin/packages/unuran/package.py2
-rw-r--r--var/spack/repos/builtin/packages/unzip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/upcxx/package.py39
-rw-r--r--var/spack/repos/builtin/packages/uqtk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/uriparser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/usbutils/package.py2
-rw-r--r--var/spack/repos/builtin/packages/usearch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/userspace-rcu/package.py2
-rw-r--r--var/spack/repos/builtin/packages/utf8proc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/util-linux-uuid/package.py46
-rw-r--r--var/spack/repos/builtin/packages/util-linux/package.py14
-rw-r--r--var/spack/repos/builtin/packages/util-macros/package.py2
-rw-r--r--var/spack/repos/builtin/packages/uvw/package.py2
-rw-r--r--var/spack/repos/builtin/packages/valgrind/package.py4
-rw-r--r--var/spack/repos/builtin/packages/vampirtrace/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vapor/package.py50
-rw-r--r--var/spack/repos/builtin/packages/vardictjava/package.py2
-rw-r--r--var/spack/repos/builtin/packages/variorum/package.py6
-rw-r--r--var/spack/repos/builtin/packages/varnish-cache/package.py2
-rw-r--r--var/spack/repos/builtin/packages/varscan/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vasp/package.py24
-rw-r--r--var/spack/repos/builtin/packages/vbfnlo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/vc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vcftools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vcsh/package.py3
-rw-r--r--var/spack/repos/builtin/packages/vdt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/veccore/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vecgeom/package.py8
-rw-r--r--var/spack/repos/builtin/packages/veclibfort/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vegas2/package.py2
-rw-r--r--var/spack/repos/builtin/packages/veloc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/velvet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/velvetoptimiser/package.py2
-rw-r--r--var/spack/repos/builtin/packages/verilator/package.py4
-rw-r--r--var/spack/repos/builtin/packages/verrou/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vesta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vgm/package.py4
-rw-r--r--var/spack/repos/builtin/packages/videoproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/viennarna/package.py2
-rw-r--r--var/spack/repos/builtin/packages/viewres/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vifi/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vigra/package.py4
-rw-r--r--var/spack/repos/builtin/packages/vim/package.py4
-rw-r--r--var/spack/repos/builtin/packages/virtualgl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/virtuoso/package.py58
-rw-r--r--var/spack/repos/builtin/packages/visit-cgns/package.py97
-rw-r--r--var/spack/repos/builtin/packages/visit-silo/package.py86
-rw-r--r--var/spack/repos/builtin/packages/visit/package.py11
-rw-r--r--var/spack/repos/builtin/packages/vizglow/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vmatch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vmc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vmd/package.py19
-rw-r--r--var/spack/repos/builtin/packages/volk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/voropp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/votca-csg-tutorials/package.py7
-rw-r--r--var/spack/repos/builtin/packages/votca-csg/package.py7
-rw-r--r--var/spack/repos/builtin/packages/votca-csgapps/package.py8
-rw-r--r--var/spack/repos/builtin/packages/votca-ctp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/votca-tools/package.py7
-rw-r--r--var/spack/repos/builtin/packages/votca-xtp/package.py9
-rw-r--r--var/spack/repos/builtin/packages/vpfft/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vpic/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vsearch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vsftpd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vt/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vtable-dumper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/vtk-h/package.py29
-rw-r--r--var/spack/repos/builtin/packages/vtk-m/package.py218
-rw-r--r--var/spack/repos/builtin/packages/vtk/package.py27
-rw-r--r--var/spack/repos/builtin/packages/vtk/vtkm-findmpi-downstream.patch185
-rwxr-xr-xvar/spack/repos/builtin/packages/vvtest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/w3m/fix_gc.patch20
-rw-r--r--var/spack/repos/builtin/packages/w3m/fix_redef.patch58
-rw-r--r--var/spack/repos/builtin/packages/w3m/package.py76
-rw-r--r--var/spack/repos/builtin/packages/wannier90/package.py2
-rw-r--r--var/spack/repos/builtin/packages/warpx/package.py201
-rw-r--r--var/spack/repos/builtin/packages/watch/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wayland-protocols/package.py29
-rw-r--r--var/spack/repos/builtin/packages/wayland/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wcs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wcslib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/webbench/package.py2
-rw-r--r--var/spack/repos/builtin/packages/weechat/package.py2
-rw-r--r--var/spack/repos/builtin/packages/weighttp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wget/package.py3
-rw-r--r--var/spack/repos/builtin/packages/wgsim/package.py2
-rw-r--r--var/spack/repos/builtin/packages/which/package.py2
-rw-r--r--var/spack/repos/builtin/packages/whizard/package.py4
-rw-r--r--var/spack/repos/builtin/packages/windowswmproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wireshark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wonton/package.py6
-rw-r--r--var/spack/repos/builtin/packages/wordnet/package.py2
-rw-r--r--var/spack/repos/builtin/packages/workrave/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wps/for_aarch64.patch11
-rw-r--r--var/spack/repos/builtin/packages/wps/package.py4
-rw-r--r--var/spack/repos/builtin/packages/wrf/package.py62
-rw-r--r--var/spack/repos/builtin/packages/wrf/patches/3.9/aocc_lmvec.patch130
-rw-r--r--var/spack/repos/builtin/packages/wrf/patches/3.9/configure_aocc_2.3.patch53
-rw-r--r--var/spack/repos/builtin/packages/wrf/patches/3.9/configure_aocc_3.0.patch53
-rw-r--r--var/spack/repos/builtin/packages/wrf/patches/4.2/configure_aocc_2.3.patch53
-rw-r--r--var/spack/repos/builtin/packages/wrf/patches/4.2/configure_aocc_3.0.patch53
-rw-r--r--var/spack/repos/builtin/packages/wrf/patches/4.2/derf_fix.patch11
-rw-r--r--var/spack/repos/builtin/packages/wrk/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wsmancli/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wt/package.py22
-rw-r--r--var/spack/repos/builtin/packages/wtdbg2/for_aarch64.patch23
-rw-r--r--var/spack/repos/builtin/packages/wtdbg2/package.py10
-rw-r--r--var/spack/repos/builtin/packages/wxpropgrid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/wxwidgets/package.py2
-rw-r--r--var/spack/repos/builtin/packages/x11perf/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xabclib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xapian-core/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xauth/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xbacklight/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xbiff/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xbitmaps/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xbraid/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcalc/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xcb-demo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcb-proto/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-cursor/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-errors/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-image/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-keysyms/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-renderutil/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-wm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-xrm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcb-util/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcfun/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xclip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xclipboard/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xclock/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xcmiscproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcmsdb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcompmgr/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xconsole/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcursor-themes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xcursorgen/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xdbedizzy/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xdelta/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xditview/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xdm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xdmf3/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xdotool/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xdpyinfo/package.py10
-rw-r--r--var/spack/repos/builtin/packages/xdriinfo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xedit/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xerces-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xeus/package.py7
-rw-r--r--var/spack/repos/builtin/packages/xev/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xextproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xeyes/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xf86bigfontproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xf86dga/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xf86dgaproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xf86driproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xf86miscproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xf86rushproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xf86vidmodeproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xfd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xfindproxy/package.py6
-rw-r--r--var/spack/repos/builtin/packages/xfontsel/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xforms/package.py26
-rw-r--r--var/spack/repos/builtin/packages/xfs/package.py8
-rw-r--r--var/spack/repos/builtin/packages/xfsdump/package.py45
-rw-r--r--var/spack/repos/builtin/packages/xfsinfo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xfsprogs/package.py21
-rw-r--r--var/spack/repos/builtin/packages/xfwp/package.py6
-rw-r--r--var/spack/repos/builtin/packages/xgamma/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xgboost/package.py54
-rw-r--r--var/spack/repos/builtin/packages/xgc/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xhmm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xhost/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xineramaproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xinit/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xinput/package.py10
-rw-r--r--var/spack/repos/builtin/packages/xios/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xkbcomp/package.py5
-rw-r--r--var/spack/repos/builtin/packages/xkbdata/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xkbevd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xkbprint/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xkbutils/package.py6
-rw-r--r--var/spack/repos/builtin/packages/xkeyboard-config/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xkill/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xlc/package.py81
-rw-r--r--var/spack/repos/builtin/packages/xlf/package.py69
-rw-r--r--var/spack/repos/builtin/packages/xload/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xlogo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xlsatoms/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xlsclients/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xlsfonts/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xmag/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xman/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xmessage/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xmh/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xmlf90/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xmlrpc-c/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xmlto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xmodmap/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xmore/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xorg-cf-files/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xorg-docs/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xorg-gtest/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xorg-server/package.py8
-rw-r--r--var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xphelloworld/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xplor-nih/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xplsprinters/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xpmem/package.py7
-rw-r--r--var/spack/repos/builtin/packages/xpmem/xpmem_v2.6.5-36.patch15
-rw-r--r--var/spack/repos/builtin/packages/xpr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xprehashprinterlist/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xprop/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xproto/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xqilla/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xrandr/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xrdb/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xrefresh/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xrootd/package.py9
-rw-r--r--var/spack/repos/builtin/packages/xrx/package.py6
-rw-r--r--var/spack/repos/builtin/packages/xsbench/package.py8
-rw-r--r--var/spack/repos/builtin/packages/xscope/package.py6
-rw-r--r--var/spack/repos/builtin/packages/xsd/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xsdk-examples/package.py37
-rw-r--r--var/spack/repos/builtin/packages/xsdk/package.py53
-rw-r--r--var/spack/repos/builtin/packages/xsdktrilinos/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xset/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xsetmode/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xsetpointer/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xsetroot/package.py6
-rw-r--r--var/spack/repos/builtin/packages/xsimd/package.py7
-rw-r--r--var/spack/repos/builtin/packages/xsm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xstdcmap/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xtensor-python/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xtensor/package.py18
-rw-r--r--var/spack/repos/builtin/packages/xterm/package.py3
-rw-r--r--var/spack/repos/builtin/packages/xtl/package.py3
-rw-r--r--var/spack/repos/builtin/packages/xtrans/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xtrap/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xts/package.py10
-rw-r--r--var/spack/repos/builtin/packages/xvidtune/package.py2
-rw-r--r--var/spack/repos/builtin/packages/xvinfo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xwd/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xwininfo/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xwud/package.py4
-rw-r--r--var/spack/repos/builtin/packages/xxhash/package.py5
-rw-r--r--var/spack/repos/builtin/packages/xyce/package.py93
-rw-r--r--var/spack/repos/builtin/packages/xz/package.py8
-rw-r--r--var/spack/repos/builtin/packages/yajl/package.py2
-rw-r--r--var/spack/repos/builtin/packages/yambo/package.py2
-rw-r--r--var/spack/repos/builtin/packages/yaml-cpp/package.py2
-rw-r--r--var/spack/repos/builtin/packages/yara/package.py2
-rw-r--r--var/spack/repos/builtin/packages/yarn/package.py2
-rw-r--r--var/spack/repos/builtin/packages/yasm/package.py2
-rw-r--r--var/spack/repos/builtin/packages/ycsb/package.py2
-rw-r--r--var/spack/repos/builtin/packages/yoda/package.py11
-rw-r--r--var/spack/repos/builtin/packages/yorick/package.py2
-rw-r--r--var/spack/repos/builtin/packages/z-checker/package.py2
-rw-r--r--var/spack/repos/builtin/packages/z3/package.py4
-rw-r--r--var/spack/repos/builtin/packages/zabbix/package.py2
-rw-r--r--var/spack/repos/builtin/packages/zfp/package.py106
-rw-r--r--var/spack/repos/builtin/packages/zfs/package.py4
-rw-r--r--var/spack/repos/builtin/packages/zig/package.py22
-rw-r--r--var/spack/repos/builtin/packages/zip/package.py2
-rw-r--r--var/spack/repos/builtin/packages/zipkin/package.py2
-rw-r--r--var/spack/repos/builtin/packages/zlib-ng/package.py28
-rw-r--r--var/spack/repos/builtin/packages/zlib/package.py2
-rw-r--r--var/spack/repos/builtin/packages/zoltan/package.py20
-rw-r--r--var/spack/repos/builtin/packages/zookeeper-benchmark/package.py2
-rw-r--r--var/spack/repos/builtin/packages/zookeeper/package.py2
-rw-r--r--var/spack/repos/builtin/packages/zsh/package.py2
-rw-r--r--var/spack/repos/builtin/packages/zstd/package.py75
-rw-r--r--var/spack/repos/builtin/packages/zstr/package.py30
-rw-r--r--var/spack/repos/builtin/packages/zziplib/package.py2
-rw-r--r--var/spack/repos/tutorial/packages/armadillo/package.py2
-rw-r--r--var/spack/repos/tutorial/packages/elpa/package.py2
-rw-r--r--var/spack/repos/tutorial/packages/hdf5/package.py2
-rw-r--r--var/spack/repos/tutorial/packages/mpich/package.py2
-rw-r--r--var/spack/repos/tutorial/packages/netlib-lapack/package.py2
6605 files changed, 72978 insertions, 24919 deletions
diff --git a/.dockerignore b/.dockerignore
index f836955e30..e6ad1f1d1e 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -8,4 +8,4 @@ share/spack/dotkit/*
share/spack/lmod/*
share/spack/modules/*
lib/spack/spack/test/*
-
+var/spack/cache/*
diff --git a/.flake8 b/.flake8
index 195c783726..a4c8aa2fbc 100644
--- a/.flake8
+++ b/.flake8
@@ -27,6 +27,47 @@
# - N813: camelcase imported as lowercase
# - N814: camelcase imported as constant
#
+# F4: pyflakes import checks, these are now checked by mypy more precisely
+# - F403: from module import *
+# - F405: undefined name or from *
+#
+# Black ignores, these are incompatible with black style and do not follow PEP-8
+# - E203: white space around slice operators can be required, ignore : warn
+# - W503: see above, already ignored for line-breaks
+#
[flake8]
-ignore = E129,E221,E241,E272,E731,W503,W504,F999,N801,N813,N814
-max-line-length = 79
+ignore = E129,E221,E241,E272,E731,W503,W504,F999,N801,N813,N814,F403,F405
+max-line-length = 88
+
+# F4: Import
+# - F405: `name` may be undefined, or undefined from star imports: `module`
+#
+# F8: Name
+# - F821: undefined name `name`
+#
+per-file-ignores =
+ var/spack/repos/*/package.py:F405,F821
+
+# exclude things we usually do not want linting for.
+# These still get linted when passed explicitly, as when spack flake8 passes
+# them on the command line.
+exclude =
+ .git
+ etc/
+ opt/
+ share/
+ var/spack/cache/
+ var/spack/gpg*/
+ var/spack/junit-report/
+ var/spack/mock-configs/
+ lib/spack/external
+ __pycache__
+ var
+
+format = spack
+
+[flake8:local-plugins]
+report =
+ spack = flake8_formatter:SpackFormatter
+paths =
+ ./share/spack/qa/
diff --git a/.flake8_packages b/.flake8_packages
deleted file mode 100644
index fc2dbf98af..0000000000
--- a/.flake8_packages
+++ /dev/null
@@ -1,24 +0,0 @@
-# -*- conf -*-
-# flake8 settings for Spack package files.
-#
-# This should include all the same exceptions that we use for core files.
-#
-# In Spack packages, we also allow the single `from spack import *`
-# wildcard import and dependencies can set globals for their
-# dependents. So we add exceptions for checks related to undefined names.
-#
-# Note that we also add *per-line* exemptions for certain patterns in the
-# `spack flake8` command. This is where F403 for `from spack import *`
-# is added (because we *only* allow that wildcard).
-#
-# See .flake8 for regular exceptions.
-#
-# F4: Import
-# - F405: `name` may be undefined, or undefined from star imports: `module`
-#
-# F8: Name
-# - F821: undefined name `name`
-#
-[flake8]
-ignore = E129,E221,E241,E272,E731,W503,W504,F405,F821,F999,N801,N813,N814
-max-line-length = 79
diff --git a/.gitattributes b/.gitattributes
index 95105a3731..5299044761 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1 +1,3 @@
*.py diff=python
+*.lp linguist-language=Prolog
+lib/spack/external/* linguist-vendored
diff --git a/.github/actions/add-maintainers-as-reviewers/entrypoint.py b/.github/actions/add-maintainers-as-reviewers/entrypoint.py
index aa89fcd468..c5cb147230 100755
--- a/.github/actions/add-maintainers-as-reviewers/entrypoint.py
+++ b/.github/actions/add-maintainers-as-reviewers/entrypoint.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 0000000000..2c7d170839
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,7 @@
+version: 2
+updates:
+ # Maintain dependencies for GitHub Actions
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ interval: "daily"
diff --git a/.github/workflows/linux_build_tests.yaml b/.github/workflows/linux_build_tests.yaml
index 0a2946f63f..43b665d58a 100644
--- a/.github/workflows/linux_build_tests.yaml
+++ b/.github/workflows/linux_build_tests.yaml
@@ -5,6 +5,18 @@ on:
branches:
- develop
- releases/**
+ paths-ignore:
+ # Don't run if we only modified packages in the built-in repository
+ - 'var/spack/repos/builtin/**'
+ - '!var/spack/repos/builtin/packages/lz4/**'
+ - '!var/spack/repos/builtin/packages/mpich/**'
+ - '!var/spack/repos/builtin/packages/tut/**'
+ - '!var/spack/repos/builtin/packages/py-setuptools/**'
+ - '!var/spack/repos/builtin/packages/openjpeg/**'
+ - '!var/spack/repos/builtin/packages/r-rcpp/**'
+ - '!var/spack/repos/builtin/packages/ruby-rake/**'
+ # Don't run if we only modified documentation
+ - 'lib/spack/docs/**'
pull_request:
branches:
- develop
@@ -30,14 +42,14 @@ jobs:
package:
- lz4 # MakefilePackage
- mpich~fortran # AutotoolsPackage
- - tut # WafPackage
+ - 'tut%gcc@:10.99.99' # WafPackage
- py-setuptools # PythonPackage
- openjpeg # CMakePackage
- r-rcpp # RPackage
- ruby-rake # RubyPackage
steps:
- uses: actions/checkout@v2
- - uses: actions/cache@v2
+ - uses: actions/cache@v2.1.5
with:
path: ~/.ccache
key: ccache-build-${{ matrix.package }}
diff --git a/.github/workflows/linux_unit_tests.yaml b/.github/workflows/linux_unit_tests.yaml
deleted file mode 100644
index f21f9cd0ab..0000000000
--- a/.github/workflows/linux_unit_tests.yaml
+++ /dev/null
@@ -1,150 +0,0 @@
-name: linux tests
-
-on:
- push:
- branches:
- - develop
- - releases/**
- pull_request:
- branches:
- - develop
- - releases/**
-jobs:
- unittests:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9]
- concretizer: ['original', 'clingo']
-
- steps:
- - uses: actions/checkout@v2
- with:
- fetch-depth: 0
- - uses: actions/setup-python@v2
- with:
- python-version: ${{ matrix.python-version }}
- - name: Install System packages
- run: |
- sudo apt-get -y update
- # Needed for unit tests
- sudo apt-get install -y coreutils gfortran graphviz gnupg2 mercurial
- sudo apt-get install -y ninja-build patchelf
- # Needed for kcov
- sudo apt-get -y install cmake binutils-dev libcurl4-openssl-dev
- sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
- - name: Install Python packages
- run: |
- pip install --upgrade pip six setuptools codecov coverage
- - name: Setup git configuration
- run: |
- # Need this for the git tests to succeed.
- git --version
- . .github/workflows/setup_git.sh
- - name: Install kcov for bash script coverage
- env:
- KCOV_VERSION: 34
- run: |
- KCOV_ROOT=$(mktemp -d)
- wget --output-document=${KCOV_ROOT}/${KCOV_VERSION}.tar.gz https://github.com/SimonKagstrom/kcov/archive/v${KCOV_VERSION}.tar.gz
- tar -C ${KCOV_ROOT} -xzvf ${KCOV_ROOT}/${KCOV_VERSION}.tar.gz
- mkdir -p ${KCOV_ROOT}/build
- cd ${KCOV_ROOT}/build && cmake -Wno-dev ${KCOV_ROOT}/kcov-${KCOV_VERSION} && cd -
- make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install
- - name: Bootstrap clingo from sources
- if: ${{ matrix.concretizer == 'clingo' }}
- run: |
- . share/spack/setup-env.sh
- spack external find --not-buildable cmake bison
- spack -v solve zlib
- - name: Run unit tests
- env:
- COVERAGE: true
- SPACK_TEST_SOLVER: ${{ matrix.concretizer }}
- run: |
- share/spack/qa/run-unit-tests
- coverage combine
- coverage xml
- - uses: codecov/codecov-action@v1
- with:
- flags: unittests,linux,${{ matrix.concretizer }}
- shell:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- with:
- fetch-depth: 0
- - uses: actions/setup-python@v2
- with:
- python-version: 3.9
- - name: Install System packages
- run: |
- sudo apt-get -y update
- # Needed for shell tests
- sudo apt-get install -y coreutils csh zsh tcsh fish dash bash
- # Needed for kcov
- sudo apt-get -y install cmake binutils-dev libcurl4-openssl-dev
- sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
- - name: Install Python packages
- run: |
- pip install --upgrade pip six setuptools codecov coverage
- - name: Setup git configuration
- run: |
- # Need this for the git tests to succeed.
- git --version
- . .github/workflows/setup_git.sh
- - name: Install kcov for bash script coverage
- env:
- KCOV_VERSION: 38
- run: |
- KCOV_ROOT=$(mktemp -d)
- wget --output-document=${KCOV_ROOT}/${KCOV_VERSION}.tar.gz https://github.com/SimonKagstrom/kcov/archive/v${KCOV_VERSION}.tar.gz
- tar -C ${KCOV_ROOT} -xzvf ${KCOV_ROOT}/${KCOV_VERSION}.tar.gz
- mkdir -p ${KCOV_ROOT}/build
- cd ${KCOV_ROOT}/build && cmake -Wno-dev ${KCOV_ROOT}/kcov-${KCOV_VERSION} && cd -
- make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install
- - name: Run shell tests
- env:
- COVERAGE: true
- run: |
- share/spack/qa/run-shell-tests
- - uses: codecov/codecov-action@v1
- with:
- flags: shelltests,linux
-
- centos6:
- # Test for Python2.6 run on Centos 6
- runs-on: ubuntu-latest
- container: spack/github-actions:centos6
- steps:
- - name: Run unit tests
- env:
- HOME: /home/spack-test
- run: |
- whoami && echo $HOME && cd $HOME
- git clone https://github.com/spack/spack.git && cd spack
- git fetch origin ${{ github.ref }}:test-branch
- git checkout test-branch
- share/spack/qa/run-unit-tests
-
- clingo-cffi:
- # Test for the clingo based solver (using clingo-cffi)
- runs-on: ubuntu-latest
- container: spack/github-actions:clingo-cffi
- steps:
- - name: Run unit tests
- run: |
- whoami && echo PWD=$PWD && echo HOME=$HOME && echo SPACK_TEST_SOLVER=$SPACK_TEST_SOLVER
- python3 -c "import clingo; print(hasattr(clingo.Symbol, '_rep'), clingo.__version__)"
- git clone https://github.com/spack/spack.git && cd spack
- git fetch origin ${{ github.ref }}:test-branch
- git checkout test-branch
- . share/spack/setup-env.sh
- spack compiler find
- spack solve mpileaks%gcc
- coverage run $(which spack) unit-test -v
- coverage combine
- coverage xml
- - uses: codecov/codecov-action@v1
- with:
- flags: unittests,linux,clingo
diff --git a/.github/workflows/macos_unit_tests.yaml b/.github/workflows/macos_unit_tests.yaml
deleted file mode 100644
index 29caaa2e08..0000000000
--- a/.github/workflows/macos_unit_tests.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
-name: macos tests
-
-on:
- push:
- branches:
- - develop
- - releases/**
- pull_request:
- branches:
- - develop
- - releases/**
-jobs:
- build:
- runs-on: macos-latest
- strategy:
- matrix:
- python-version: [3.8]
- steps:
- - uses: actions/checkout@v2
- with:
- fetch-depth: 0
- - uses: actions/setup-python@v2
- with:
- python-version: ${{ matrix.python-version }}
- - name: Install Python packages
- run: |
- pip install --upgrade pip six setuptools
- pip install --upgrade codecov coverage
- pip install --upgrade flake8 pep8-naming
- - name: Setup Homebrew packages
- run: |
- brew install dash fish gcc gnupg2 kcov
- - name: Run unit tests
- run: |
- git --version
- . .github/workflows/setup_git.sh
- . share/spack/setup-env.sh
- coverage run $(which spack) unit-test
- coverage combine
- coverage xml
- - uses: codecov/codecov-action@v1
- with:
- file: ./coverage.xml
- flags: unittests,macos
diff --git a/.github/workflows/style_and_docs.yaml b/.github/workflows/style_and_docs.yaml
deleted file mode 100644
index 5abedab784..0000000000
--- a/.github/workflows/style_and_docs.yaml
+++ /dev/null
@@ -1,65 +0,0 @@
-name: style and docs
-
-on:
- push:
- branches:
- - develop
- - releases/**
- pull_request:
- branches:
- - develop
- - releases/**
-jobs:
- validate:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - uses: actions/setup-python@v2
- with:
- python-version: 3.9
- - name: Install Python Packages
- run: |
- pip install --upgrade pip
- pip install --upgrade vermin
- - name: Minimum Version (Spack's Core)
- run: vermin --backport argparse -t=2.6- -t=3.5- -v lib/spack/spack/ lib/spack/llnl/ bin/
- - name: Minimum Version (Repositories)
- run: vermin --backport argparse -t=2.6- -t=3.5- -v var/spack/repos
- flake8:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- with:
- fetch-depth: 0
- - uses: actions/setup-python@v2
- with:
- python-version: 3.9
- - name: Install Python packages
- run: |
- pip install --upgrade pip six setuptools flake8
- - name: Setup git configuration
- run: |
- # Need this for the git tests to succeed.
- git --version
- . .github/workflows/setup_git.sh
- - name: Run flake8 tests
- run: |
- share/spack/qa/run-flake8-tests
- documentation:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - uses: actions/setup-python@v2
- with:
- python-version: 3.9
- - name: Install System packages
- run: |
- sudo apt-get -y update
- sudo apt-get install -y coreutils ninja-build graphviz
- - name: Install Python packages
- run: |
- pip install --upgrade pip six setuptools
- pip install --upgrade -r lib/spack/docs/requirements.txt
- - name: Build documentation
- run: |
- share/spack/qa/run-doc-tests
diff --git a/.github/workflows/unit_tests.yaml b/.github/workflows/unit_tests.yaml
new file mode 100644
index 0000000000..e45e1aad1b
--- /dev/null
+++ b/.github/workflows/unit_tests.yaml
@@ -0,0 +1,391 @@
+name: linux tests
+
+on:
+ push:
+ branches:
+ - develop
+ - releases/**
+ pull_request:
+ branches:
+ - develop
+ - releases/**
+jobs:
+ # Validate that the code can be run on all the Python versions
+ # supported by Spack
+ validate:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-python@v2
+ with:
+ python-version: 3.9
+ - name: Install Python Packages
+ run: |
+ pip install --upgrade pip
+ pip install --upgrade vermin
+ - name: vermin (Spack's Core)
+ run: vermin --backport argparse --backport typing -t=2.6- -t=3.5- -v lib/spack/spack/ lib/spack/llnl/ bin/
+ - name: vermin (Repositories)
+ run: vermin --backport argparse --backport typing -t=2.6- -t=3.5- -v var/spack/repos
+ # Run style checks on the files that have been changed
+ style:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - uses: actions/setup-python@v2
+ with:
+ python-version: 3.9
+ - name: Install Python packages
+ run: |
+ pip install --upgrade pip six setuptools flake8 mypy>=0.800 black
+ - name: Setup git configuration
+ run: |
+ # Need this for the git tests to succeed.
+ git --version
+ . .github/workflows/setup_git.sh
+ - name: Run style tests
+ run: |
+ share/spack/qa/run-style-tests
+ # Build the documentation
+ documentation:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-python@v2
+ with:
+ python-version: 3.9
+ - name: Install System packages
+ run: |
+ sudo apt-get -y update
+ sudo apt-get install -y coreutils ninja-build graphviz
+ - name: Install Python packages
+ run: |
+ pip install --upgrade pip six setuptools
+ pip install --upgrade -r lib/spack/docs/requirements.txt
+ - name: Build documentation
+ run: |
+ share/spack/qa/run-doc-tests
+
+ # Check which files have been updated by the PR
+ changes:
+ runs-on: ubuntu-latest
+ # Set job outputs to values from filter step
+ outputs:
+ core: ${{ steps.filter.outputs.core }}
+ packages: ${{ steps.filter.outputs.packages }}
+ with_coverage: ${{ steps.coverage.outputs.with_coverage }}
+ steps:
+ - uses: actions/checkout@v2
+ if: ${{ github.event_name == 'push' }}
+ with:
+ fetch-depth: 0
+ # For pull requests it's not necessary to checkout the code
+ - uses: dorny/paths-filter@v2
+ id: filter
+ with:
+ # See https://github.com/dorny/paths-filter/issues/56 for the syntax used below
+ filters: |
+ core:
+ - './!(var/**)/**'
+ packages:
+ - 'var/**'
+ # Some links for easier reference:
+ #
+ # "github" context: https://docs.github.com/en/actions/reference/context-and-expression-syntax-for-github-actions#github-context
+ # job outputs: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idoutputs
+ # setting environment variables from earlier steps: https://docs.github.com/en/actions/reference/workflow-commands-for-github-actions#setting-an-environment-variable
+ #
+ - id: coverage
+ # Run the subsequent jobs with coverage if core has been modified,
+ # regardless of whether this is a pull request or a push to a branch
+ run: |
+ echo Core changes: ${{ steps.filter.outputs.core }}
+ echo Event name: ${{ github.event_name }}
+ if [ "${{ steps.filter.outputs.core }}" == "true" ]
+ then
+ echo "::set-output name=with_coverage::true"
+ else
+ echo "::set-output name=with_coverage::false"
+ fi
+
+ # Run unit tests with different configurations on linux
+ unittests:
+ needs: [ validate, style, documentation, changes ]
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9]
+ concretizer: ['original', 'clingo']
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+ - name: Install System packages
+ run: |
+ sudo apt-get -y update
+ # Needed for unit tests
+ sudo apt-get install -y coreutils gfortran graphviz gnupg2 mercurial
+ sudo apt-get install -y ninja-build patchelf
+ # Needed for kcov
+ sudo apt-get -y install cmake binutils-dev libcurl4-openssl-dev
+ sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
+ - name: Install Python packages
+ run: |
+ pip install --upgrade pip six setuptools codecov coverage
+ - name: Setup git configuration
+ run: |
+ # Need this for the git tests to succeed.
+ git --version
+ . .github/workflows/setup_git.sh
+ - name: Install kcov for bash script coverage
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ env:
+ KCOV_VERSION: 34
+ run: |
+ KCOV_ROOT=$(mktemp -d)
+ wget --output-document=${KCOV_ROOT}/${KCOV_VERSION}.tar.gz https://github.com/SimonKagstrom/kcov/archive/v${KCOV_VERSION}.tar.gz
+ tar -C ${KCOV_ROOT} -xzvf ${KCOV_ROOT}/${KCOV_VERSION}.tar.gz
+ mkdir -p ${KCOV_ROOT}/build
+ cd ${KCOV_ROOT}/build && cmake -Wno-dev ${KCOV_ROOT}/kcov-${KCOV_VERSION} && cd -
+ make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install
+ - name: Bootstrap clingo from sources
+ if: ${{ matrix.concretizer == 'clingo' }}
+ run: |
+ . share/spack/setup-env.sh
+ spack external find --not-buildable cmake bison
+ spack -v solve zlib
+ - name: Run unit tests (full suite with coverage)
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ env:
+ COVERAGE: true
+ SPACK_TEST_SOLVER: ${{ matrix.concretizer }}
+ run: |
+ share/spack/qa/run-unit-tests
+ coverage combine
+ coverage xml
+ - name: Run unit tests (reduced suite without coverage)
+ if: ${{ needs.changes.outputs.with_coverage == 'false' }}
+ env:
+ ONLY_PACKAGES: true
+ SPACK_TEST_SOLVER: ${{ matrix.concretizer }}
+ run: |
+ share/spack/qa/run-unit-tests
+ - uses: codecov/codecov-action@v1
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ with:
+ flags: unittests,linux,${{ matrix.concretizer }}
+ # Test shell integration
+ shell:
+ needs: [ validate, style, documentation, changes ]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - uses: actions/setup-python@v2
+ with:
+ python-version: 3.9
+ - name: Install System packages
+ run: |
+ sudo apt-get -y update
+ # Needed for shell tests
+ sudo apt-get install -y coreutils csh zsh tcsh fish dash bash
+ # Needed for kcov
+ sudo apt-get -y install cmake binutils-dev libcurl4-openssl-dev
+ sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
+ - name: Install Python packages
+ run: |
+ pip install --upgrade pip six setuptools codecov coverage
+ - name: Setup git configuration
+ run: |
+ # Need this for the git tests to succeed.
+ git --version
+ . .github/workflows/setup_git.sh
+ - name: Install kcov for bash script coverage
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ env:
+ KCOV_VERSION: 38
+ run: |
+ KCOV_ROOT=$(mktemp -d)
+ wget --output-document=${KCOV_ROOT}/${KCOV_VERSION}.tar.gz https://github.com/SimonKagstrom/kcov/archive/v${KCOV_VERSION}.tar.gz
+ tar -C ${KCOV_ROOT} -xzvf ${KCOV_ROOT}/${KCOV_VERSION}.tar.gz
+ mkdir -p ${KCOV_ROOT}/build
+ cd ${KCOV_ROOT}/build && cmake -Wno-dev ${KCOV_ROOT}/kcov-${KCOV_VERSION} && cd -
+ make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install
+ - name: Run shell tests (without coverage)
+ if: ${{ needs.changes.outputs.with_coverage == 'false' }}
+ run: |
+ share/spack/qa/run-shell-tests
+ - name: Run shell tests (with coverage)
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ env:
+ COVERAGE: true
+ run: |
+ share/spack/qa/run-shell-tests
+ - uses: codecov/codecov-action@v1
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ with:
+ flags: shelltests,linux
+ # Test for Python2.6 run on Centos 6
+ centos6:
+ needs: [ validate, style, documentation, changes ]
+ runs-on: ubuntu-latest
+ container: spack/github-actions:centos6
+ steps:
+ - name: Run unit tests (full test-suite)
+ # The CentOS 6 container doesn't run with coverage, but
+ # under the same conditions it runs the full test suite
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ env:
+ HOME: /home/spack-test
+ run: |
+ whoami && echo $HOME && cd $HOME
+ git clone https://github.com/spack/spack.git && cd spack
+ git fetch origin ${{ github.ref }}:test-branch
+ git checkout test-branch
+ share/spack/qa/run-unit-tests
+ - name: Run unit tests (only package tests)
+ if: ${{ needs.changes.outputs.with_coverage == 'false' }}
+ env:
+ HOME: /home/spack-test
+ ONLY_PACKAGES: true
+ run: |
+ whoami && echo $HOME && cd $HOME
+ git clone https://github.com/spack/spack.git && cd spack
+ git fetch origin ${{ github.ref }}:test-branch
+ git checkout test-branch
+ share/spack/qa/run-unit-tests
+
+ # Test RHEL8 UBI with platform Python. This job is run
+ # only on PRs modifying core Spack
+ rhel8-platform-python:
+ needs: [ validate, style, documentation, changes ]
+ runs-on: ubuntu-latest
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ container: registry.access.redhat.com/ubi8/ubi
+ steps:
+ - name: Install dependencies
+ run: |
+ dnf install -y \
+ bzip2 curl file gcc-c++ gcc gcc-gfortran git gnupg2 gzip \
+ make patch tcl unzip which xz
+ - uses: actions/checkout@v2
+ - name: Setup repo and non-root user
+ run: |
+ git --version
+ git fetch --unshallow
+ . .github/workflows/setup_git.sh
+ useradd spack-test
+ chown -R spack-test .
+ - name: Run unit tests
+ env:
+ SPACK_PYTHON: /usr/libexec/platform-python
+ shell: runuser -u spack-test -- bash {0}
+ run: |
+ source share/spack/setup-env.sh
+ spack unit-test -k 'not svn and not hg' -x --verbose
+ # Test for the clingo based solver (using clingo-cffi)
+ clingo-cffi:
+ needs: [ validate, style, documentation, changes ]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - uses: actions/setup-python@v2
+ with:
+ python-version: 3.9
+ - name: Install System packages
+ run: |
+ sudo apt-get -y update
+ # Needed for unit tests
+ sudo apt-get install -y coreutils gfortran graphviz gnupg2 mercurial
+ sudo apt-get install -y ninja-build patchelf
+ # Needed for kcov
+ sudo apt-get -y install cmake binutils-dev libcurl4-openssl-dev
+ sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev
+ - name: Install kcov for bash script coverage
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ env:
+ KCOV_VERSION: 34
+ run: |
+ KCOV_ROOT=$(mktemp -d)
+ wget --output-document=${KCOV_ROOT}/${KCOV_VERSION}.tar.gz https://github.com/SimonKagstrom/kcov/archive/v${KCOV_VERSION}.tar.gz
+ tar -C ${KCOV_ROOT} -xzvf ${KCOV_ROOT}/${KCOV_VERSION}.tar.gz
+ mkdir -p ${KCOV_ROOT}/build
+ cd ${KCOV_ROOT}/build && cmake -Wno-dev ${KCOV_ROOT}/kcov-${KCOV_VERSION} && cd -
+ make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install
+ - name: Install Python packages
+ run: |
+ pip install --upgrade pip six setuptools codecov coverage clingo
+ - name: Setup git configuration
+ run: |
+ # Need this for the git tests to succeed.
+ git --version
+ . .github/workflows/setup_git.sh
+ - name: Run unit tests (full suite with coverage)
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ env:
+ COVERAGE: true
+ SPACK_TEST_SOLVER: clingo
+ run: |
+ share/spack/qa/run-unit-tests
+ coverage combine
+ coverage xml
+ - name: Run unit tests (reduced suite without coverage)
+ if: ${{ needs.changes.outputs.with_coverage == 'false' }}
+ env:
+ ONLY_PACKAGES: true
+ SPACK_TEST_SOLVER: clingo
+ run: |
+ share/spack/qa/run-unit-tests
+ - uses: codecov/codecov-action@v1
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ with:
+ flags: unittests,linux,clingo
+ # Run unit tests on MacOS
+ build:
+ needs: [ validate, style, documentation, changes ]
+ runs-on: macos-latest
+ strategy:
+ matrix:
+ python-version: [3.8]
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+ - name: Install Python packages
+ run: |
+ pip install --upgrade pip six setuptools
+ pip install --upgrade codecov coverage
+ pip install --upgrade flake8 pep8-naming mypy
+ - name: Setup Homebrew packages
+ run: |
+ brew install dash fish gcc gnupg2 kcov
+ - name: Run unit tests
+ run: |
+ git --version
+ . .github/workflows/setup_git.sh
+ . share/spack/setup-env.sh
+ if [ "${{ needs.changes.outputs.with_coverage }}" == "true" ]
+ then
+ coverage run $(which spack) unit-test -x
+ coverage combine
+ coverage xml
+ else
+ echo "ONLY PACKAGE RECIPES CHANGED [skipping coverage]"
+ $(which spack) unit-test -x -m "not maybeslow" -k "package_sanity"
+ fi
+ - uses: codecov/codecov-action@v1
+ if: ${{ needs.changes.outputs.with_coverage == 'true' }}
+ with:
+ file: ./coverage.xml
+ flags: unittests,macos
diff --git a/.gitignore b/.gitignore
index e2f485ab92..dc85872f42 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,40 +1,511 @@
-/db
+##########################
+# Spack-specific ignores #
+##########################
+
/var/spack/stage
/var/spack/cache
/var/spack/environments
/var/spack/repos/*/index.yaml
/var/spack/repos/*/lock
-__pycache__/
-*.pyc
/opt
-*~
-.DS_Store
-.idea
# Ignore everything in /etc/spack except /etc/spack/defaults
/etc/spack/*
!/etc/spack/defaults
-/etc/spackconfig
-/share/spack/dotkit
/share/spack/modules
/share/spack/lmod
-/TAGS
-*.swp
-/htmlcov
-.coverage
-\#*
-.#*
-.cache
-lib/spack/spack/test/.cache
-/bin/spackc
+# Debug logs
+spack-db.*
*.in.log
*.out.log
-*.orig
-# Eclipse files
-.project
+###########################
+# Python-specific ignores #
+###########################
+
+# Byte-compiled / optimized / DLL files
+__pycache__/
+*.py[cod]
+*$py.class
+
+# C extensions
+*.so
+
+# Distribution / packaging
+.Python
+build/
+develop-eggs/
+dist/
+downloads/
+eggs/
+.eggs/
+#lib/
+#lib64/
+parts/
+sdist/
+#var/
+wheels/
+share/python-wheels/
+*.egg-info/
+.installed.cfg
+*.egg
+MANIFEST
+
+# PyInstaller
+# Usually these files are written by a python script from a template
+# before PyInstaller builds the exe, so as to inject date/other infos into it.
+*.manifest
+*.spec
+
+# Installer logs
+pip-log.txt
+pip-delete-this-directory.txt
+
+# Unit test / coverage reports
+htmlcov/
+.tox/
+.nox/
+.coverage
+.coverage.*
+.cache
+nosetests.xml
+coverage.xml
+*.cover
+*.py,cover
+.hypothesis/
+.pytest_cache/
+cover/
+
+# Translations
+*.mo
+*.pot
+
+# Django stuff:
+*.log
+local_settings.py
+db.sqlite3
+db.sqlite3-journal
+
+# Flask stuff:
+instance/
+.webassets-cache
+
+# Scrapy stuff:
+.scrapy
+
+# Sphinx documentation
+docs/_build/
+
+# PyBuilder
+.pybuilder/
+target/
+
+# Jupyter Notebook
+.ipynb_checkpoints
+
+# IPython
+profile_default/
+ipython_config.py
+
+# pyenv
+# For a library or package, you might want to ignore these files since the code is
+# intended to run in multiple environments; otherwise, check them in:
+# .python-version
+
+# pipenv
+# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
+# However, in case of collaboration, if having platform-specific dependencies or dependencies
+# having no cross-platform support, pipenv may install dependencies that don't work, or not
+# install all needed dependencies.
+#Pipfile.lock
+
+# PEP 582; used by e.g. github.com/David-OConnor/pyflow
+__pypackages__/
+
+# Celery stuff
+celerybeat-schedule
+celerybeat.pid
+
+# SageMath parsed files
+*.sage.py
+
+# Environments
+.env
+.venv
+env/
+venv/
+ENV/
+env.bak/
+venv.bak/
+
+# Spyder project settings
+.spyderproject
+.spyproject
+
+# Rope project settings
+.ropeproject
+
+# mkdocs documentation
+/site
+
+# mypy
+.mypy_cache/
+.dmypy.json
+dmypy.json
+
+# Pyre type checker
+.pyre/
+
+# pytype static type analyzer
+.pytype/
+
+# Cython debug symbols
+cython_debug/
+
+########################
+# Vim-specific ignores #
+########################
+
+# Swap
+[._]*.s[a-v][a-z]
+!*.svg # comment out if you don't need vector files
+[._]*.sw[a-p]
+[._]s[a-rt-v][a-z]
+[._]ss[a-gi-z]
+[._]sw[a-p]
+
+# Session
+Session.vim
+Sessionx.vim
+
+# Temporary
+.netrwhist
+*~
+# Auto-generated tag files
+tags
+# Persistent undo
+[._]*.un~
+
+##########################
+# Emacs-specific ignores #
+##########################
+
+*~
+\#*\#
+/.emacs.desktop
+/.emacs.desktop.lock
+*.elc
+auto-save-list
+tramp
+.\#*
+
+# Org-mode
+.org-id-locations
+*_archive
+
+# flymake-mode
+*_flymake.*
+
+# eshell files
+/eshell/history
+/eshell/lastdir
+
+# elpa packages
+/elpa/
+
+# reftex files
+*.rel
+
+# AUCTeX auto folder
+/auto/
+
+# cask packages
+.cask/
+dist/
+
+# Flycheck
+flycheck_*.el
+
+# server auth directory
+/server/
+
+# projectiles files
+.projectile
+
+# directory configuration
+.dir-locals.el
+
+# network security
+/network-security.data
+
+############################
+# Eclipse-specific ignores #
+############################
+
+.metadata
+#bin/
+tmp/
+*.tmp
+*.bak
+*.swp
+*~.nib
+local.properties
+.settings/
+.loadpath
+.recommenders
+
+# External tool builders
+.externalToolBuilders/
+
+# Locally stored "Eclipse launch configurations"
+*.launch
+
+# PyDev specific (Python IDE for Eclipse)
+*.pydevproject
+
+# CDT-specific (C/C++ Development Tooling)
.cproject
-.pydevproject
-# VSCode files
-.vscode
-.devcontainer
+# CDT- autotools
+.autotools
+
+# Java annotation processor (APT)
+.factorypath
+
+# PDT-specific (PHP Development Tools)
+.buildpath
+
+# sbteclipse plugin
+.target
+
+# Tern plugin
+.tern-project
+
+# TeXlipse plugin
+.texlipse
+
+# STS (Spring Tool Suite)
+.springBeans
+
+# Code Recommenders
+.recommenders/
+
+# Annotation Processing
+.apt_generated/
+.apt_generated_test/
+
+# Scala IDE specific (Scala & Java development for Eclipse)
+.cache-main
+.scala_dependencies
+.worksheet
+
+# Uncomment this line if you wish to ignore the project description file.
+# Typically, this file would be tracked if it contains build/dependency configurations:
+#.project
+
+##################################
+# Visual Studio-specific ignores #
+##################################
+
+.vscode/*
+!.vscode/settings.json
+!.vscode/tasks.json
+!.vscode/launch.json
+!.vscode/extensions.json
+*.code-workspace
+
+# Local History for Visual Studio Code
+.history/
+
+#################################
+# Sublime Text-specific ignores #
+#################################
+
+# Cache files for Sublime Text
+*.tmlanguage.cache
+*.tmPreferences.cache
+*.stTheme.cache
+
+# Workspace files are user-specific
+*.sublime-workspace
+
+# Project files should be checked into the repository, unless a significant
+# proportion of contributors will probably not be using Sublime Text
+# *.sublime-project
+
+# SFTP configuration file
+sftp-config.json
+sftp-config-alt*.json
+
+# Package control specific files
+Package Control.last-run
+Package Control.ca-list
+Package Control.ca-bundle
+Package Control.system-ca-bundle
+Package Control.cache/
+Package Control.ca-certs/
+Package Control.merged-ca-bundle
+Package Control.user-ca-bundle
+oscrypto-ca-bundle.crt
+bh_unicode_properties.cache
+
+# Sublime-github package stores a github token in this file
+# https://packagecontrol.io/packages/sublime-github
+GitHub.sublime-settings
+
+##############################
+# JetBrains-specific ignores #
+##############################
+
+# Ignore the entire folder since it may conatin more files than
+# just the ones listed below
+.idea/
+
+# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
+# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
+
+# User-specific stuff
+.idea/**/workspace.xml
+.idea/**/tasks.xml
+.idea/**/usage.statistics.xml
+.idea/**/dictionaries
+.idea/**/shelf
+
+# Generated files
+.idea/**/contentModel.xml
+
+# Sensitive or high-churn files
+.idea/**/dataSources/
+.idea/**/dataSources.ids
+.idea/**/dataSources.local.xml
+.idea/**/sqlDataSources.xml
+.idea/**/dynamic.xml
+.idea/**/uiDesigner.xml
+.idea/**/dbnavigator.xml
+
+# Gradle
+.idea/**/gradle.xml
+.idea/**/libraries
+
+# Gradle and Maven with auto-import
+# When using Gradle or Maven with auto-import, you should exclude module files,
+# since they will be recreated, and may cause churn. Uncomment if using
+# auto-import.
+# .idea/artifacts
+# .idea/compiler.xml
+# .idea/jarRepositories.xml
+# .idea/modules.xml
+# .idea/*.iml
+# .idea/modules
+# *.iml
+# *.ipr
+
+# CMake
+cmake-build-*/
+
+# Mongo Explorer plugin
+.idea/**/mongoSettings.xml
+
+# File-based project format
+*.iws
+
+# IntelliJ
+out/
+
+# mpeltonen/sbt-idea plugin
+.idea_modules/
+
+# JIRA plugin
+atlassian-ide-plugin.xml
+
+# Cursive Clojure plugin
+.idea/replstate.xml
+
+# Crashlytics plugin (for Android Studio and IntelliJ)
+com_crashlytics_export_strings.xml
+crashlytics.properties
+crashlytics-build.properties
+fabric.properties
+
+# Editor-based Rest Client
+.idea/httpRequests
+
+# Android studio 3.1+ serialized cache file
+.idea/caches/build_file_checksums.ser
+
+##########################
+# macOS-specific ignores #
+##########################
+
+# General
+.DS_Store
+.AppleDouble
+.LSOverride
+
+# Icon must end with two \r
+Icon
+
+# Thumbnails
+._*
+
+# Files that might appear in the root of a volume
+.DocumentRevisions-V100
+.fseventsd
+.Spotlight-V100
+.TemporaryItems
+.Trashes
+.VolumeIcon.icns
+.com.apple.timemachine.donotpresent
+
+# Directories potentially created on remote AFP share
+.AppleDB
+.AppleDesktop
+Network Trash Folder
+Temporary Items
+.apdisk
+
+##########################
+# Linux-specific ignores #
+##########################
+
+*~
+
+# temporary files which can be created if a process still has a handle open of a deleted file
+.fuse_hidden*
+
+# KDE directory preferences
+.directory
+
+# Linux trash folder which might appear on any partition or disk
+.Trash-*
+
+# .nfs files are created when an open file is removed but is still being accessed
+.nfs*
+
+############################
+# Windows-specific ignores #
+############################
+
+# Windows thumbnail cache files
+Thumbs.db
+Thumbs.db:encryptable
+ehthumbs.db
+ehthumbs_vista.db
+
+# Dump file
+*.stackdump
+
+# Folder config file
+[Dd]esktop.ini
+
+# Recycle Bin used on file shares
+$RECYCLE.BIN/
+
+# Windows Installer files
+*.cab
+*.msi
+*.msix
+*.msm
+*.msp
+
+# Windows shortcuts
+*.lnk
diff --git a/.mailmap b/.mailmap
index 9940532a10..d9ca503d93 100644
--- a/.mailmap
+++ b/.mailmap
@@ -3,7 +3,8 @@ Adam Moody <moody20@llnl.gov> Adam T. Moody
Alfredo Gimenez <gimenez1@llnl.gov> Alfredo Gimenez <alfredo.gimenez@gmail.com>
Alfredo Gimenez <gimenez1@llnl.gov> Alfredo Adolfo Gimenez <alfredo.gimenez@gmail.com>
Andrew Williams <williamsa89@cardiff.ac.uk> Andrew Williams <andrew@alshain.org.uk>
-Axel Huebl <a.huebl@hzdr.de> Axel Huebl <axel.huebl@plasma.ninja>
+Axel Huebl <axelhuebl@lbl.gov> Axel Huebl <a.huebl@hzdr.de>
+Axel Huebl <axelhuebl@lbl.gov> Axel Huebl <axel.huebl@plasma.ninja>
Ben Boeckel <ben.boeckel@kitware.com> Ben Boeckel <mathstuf@gmail.com>
Ben Boeckel <ben.boeckel@kitware.com> Ben Boeckel <mathstuf@users.noreply.github.com>
Benedikt Hegner <hegner@cern.ch> Benedikt Hegner <benedikt.hegner@cern.ch>
diff --git a/.mypy.ini b/.mypy.ini
new file mode 100644
index 0000000000..4257b1bd3f
--- /dev/null
+++ b/.mypy.ini
@@ -0,0 +1,35 @@
+[mypy]
+python_version = 3.7
+files=lib/spack/llnl/**/*.py,lib/spack/spack/**/*.py
+mypy_path=bin,lib/spack,lib/spack/external,var/spack/repos/builtin
+# This and a generated import file allows supporting packages
+namespace_packages=True
+# To avoid re-factoring all the externals, ignore errors and missing imports
+# globally, then turn back on in spack and spack submodules
+ignore_errors=True
+ignore_missing_imports=True
+
+[mypy-spack.*]
+ignore_errors=False
+ignore_missing_imports=False
+
+[mypy-packages.*]
+ignore_errors=False
+ignore_missing_imports=False
+
+[mypy-llnl.*]
+ignore_errors=False
+ignore_missing_imports=False
+
+[mypy-spack.test.packages]
+ignore_errors=True
+
+# ignore errors in fake import path for packages
+[mypy-spack.pkg.*]
+ignore_errors=True
+ignore_missing_imports=True
+
+# jinja has syntax in it that requires python3 and causes a parse error
+# skip importing it
+[mypy-jinja2]
+follow_imports=skip
diff --git a/README.md b/README.md
index d4bf01005c..12f0dbe6c0 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,6 @@
# <img src="https://cdn.rawgit.com/spack/spack/develop/share/spack/logo/spack-logo.svg" width="64" valign="middle" alt="Spack"/> Spack
-[![MacOS Tests](https://github.com/spack/spack/workflows/macos%20tests/badge.svg)](https://github.com/spack/spack/actions)
-[![Linux Tests](https://github.com/spack/spack/workflows/linux%20tests/badge.svg)](https://github.com/spack/spack/actions)
+[![Unit Tests](https://github.com/spack/spack/workflows/linux%20tests/badge.svg)](https://github.com/spack/spack/actions)
[![Linux Builds](https://github.com/spack/spack/workflows/linux%20builds/badge.svg)](https://github.com/spack/spack/actions)
[![macOS Builds (nightly)](https://github.com/spack/spack/workflows/macOS%20builds%20nightly/badge.svg?branch=develop)](https://github.com/spack/spack/actions?query=workflow%3A%22macOS+builds+nightly%22)
[![codecov](https://codecov.io/gh/spack/spack/branch/develop/graph/badge.svg)](https://codecov.io/gh/spack/spack)
diff --git a/bin/sbang b/bin/sbang
index c8f1c7c39c..806bc3a4af 100755
--- a/bin/sbang
+++ b/bin/sbang
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# sbang project developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/bin/spack b/bin/spack
index 7e2e7e06de..14fd037c1e 100755
--- a/bin/spack
+++ b/bin/spack
@@ -1,7 +1,7 @@
#!/bin/sh
# -*- python -*-
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,12 @@
# Following line is a shell no-op, and starts a multi-line Python comment.
# See https://stackoverflow.com/a/47886254
""":"
-# prefer python3, then python, then python2
-for cmd in python3 python python2; do
- command -v > /dev/null $cmd && exec $cmd $0 "$@"
+# prefer SPACK_PYTHON environment variable, python3, python, then python2
+for cmd in "${SPACK_PYTHON:-}" python3 python python2; do
+ if command -v > /dev/null "$cmd"; then
+ export SPACK_PYTHON="$(command -v "$cmd")"
+ exec "${SPACK_PYTHON}" "$0" "$@"
+ fi
done
echo "==> Error: spack could not find a python interpreter!" >&2
@@ -26,10 +29,15 @@ from __future__ import print_function
import os
import sys
-if sys.version_info[:2] < (2, 6):
+min_python3 = (3, 5)
+
+if sys.version_info[:2] < (2, 6) or (
+ sys.version_info[:2] >= (3, 0) and sys.version_info[:2] < min_python3
+):
v_info = sys.version_info[:3]
- sys.exit("Spack requires Python 2.6 or higher."
- "This is Python %d.%d.%d." % v_info)
+ msg = "Spack requires Python 2.6, 2.7 or %d.%d or higher " % min_python3
+ msg += "You are running spack with Python %d.%d.%d." % v_info
+ sys.exit(msg)
# Find spack's location and its prefix.
spack_file = os.path.realpath(os.path.expanduser(__file__))
@@ -42,8 +50,10 @@ sys.path.insert(0, spack_lib_path)
# Add external libs
spack_external_libs = os.path.join(spack_lib_path, "external")
+if sys.version_info[:2] <= (2, 7):
+ sys.path.insert(0, os.path.join(spack_external_libs, "py2"))
if sys.version_info[:2] == (2, 6):
- sys.path.insert(0, os.path.join(spack_external_libs, 'py26'))
+ sys.path.insert(0, os.path.join(spack_external_libs, "py26"))
sys.path.insert(0, spack_external_libs)
@@ -53,11 +63,11 @@ sys.path.insert(0, spack_external_libs)
# Briefly: ruamel.yaml produces a .pth file when installed with pip that
# makes the site installed package the preferred one, even though sys.path
# is modified to point to another version of ruamel.yaml.
-if 'ruamel.yaml' in sys.modules:
- del sys.modules['ruamel.yaml']
+if "ruamel.yaml" in sys.modules:
+ del sys.modules["ruamel.yaml"]
-if 'ruamel' in sys.modules:
- del sys.modules['ruamel']
+if "ruamel" in sys.modules:
+ del sys.modules["ruamel"]
import spack.main # noqa
diff --git a/bin/spack-python b/bin/spack-python
index 22141b46d6..923f7380ba 100755
--- a/bin/spack-python
+++ b/bin/spack-python
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/etc/spack/defaults/config.yaml b/etc/spack/defaults/config.yaml
index d1a7f35a6d..61c23f42df 100644
--- a/etc/spack/defaults/config.yaml
+++ b/etc/spack/defaults/config.yaml
@@ -107,7 +107,7 @@ config:
# If set to true, Spack will attempt to build any compiler on the spec
# that is not already available. If set to False, Spack will only use
# compilers already configured in compilers.yaml
- install_missing_compilers: False
+ install_missing_compilers: false
# If set to true, Spack will always check checksums after downloading
@@ -115,6 +115,11 @@ config:
checksum: true
+ # If set to true, Spack will fetch deprecated versions without warning.
+ # If false, Spack will raise an error when trying to install a deprecated version.
+ deprecated: false
+
+
# If set to true, `spack install` and friends will NOT clean
# potentially harmful variables from the build environment. Use wisely.
dirty: false
@@ -137,11 +142,13 @@ config:
locks: true
- # The maximum number of jobs to use when running `make` in parallel,
- # always limited by the number of cores available. For instance:
- # - If set to 16 on a 4 cores machine `spack install` will run `make -j4`
- # - If set to 16 on a 18 cores machine `spack install` will run `make -j16`
- # If not set, Spack will use all available cores up to 16.
+ # The maximum number of jobs to use for the build system (e.g. `make`), when
+ # the -j flag is not given on the command line. Defaults to 16 when not set.
+ # Note that the maximum number of jobs is limited by the number of cores
+ # available, taking thread affinity into account when supported. For instance:
+ # - With `build_jobs: 16` and 4 cores available `spack install` will run `make -j4`
+ # - With `build_jobs: 16` and 32 cores available `spack install` will run `make -j16`
+ # - With `build_jobs: 2` and 4 cores available `spack install -j6` will run `make -j6`
# build_jobs: 16
diff --git a/etc/spack/defaults/darwin/packages.yaml b/etc/spack/defaults/darwin/packages.yaml
index 948e90ea5a..8ce443a9fd 100644
--- a/etc/spack/defaults/darwin/packages.yaml
+++ b/etc/spack/defaults/darwin/packages.yaml
@@ -25,6 +25,8 @@ packages:
- libelf
unwind:
- apple-libunwind
+ uuid:
+ - apple-libuuid
apple-libunwind:
buildable: false
externals:
@@ -32,3 +34,10 @@ packages:
# although the version number used here isn't critical
- spec: apple-libunwind@35.3
prefix: /usr
+ apple-libuuid:
+ buildable: false
+ externals:
+ # Apple bundles libuuid in libsystem_c version 1353.100.2,
+ # although the version number used here isn't critical
+ - spec: apple-libuuid@1353.100.2
+ prefix: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
diff --git a/etc/spack/defaults/modules.yaml b/etc/spack/defaults/modules.yaml
index 5ae1b50fda..d6d245930c 100644
--- a/etc/spack/defaults/modules.yaml
+++ b/etc/spack/defaults/modules.yaml
@@ -25,16 +25,6 @@ modules:
- MANPATH
share/aclocal:
- ACLOCAL_PATH
- lib:
- - LIBRARY_PATH
- lib64:
- - LIBRARY_PATH
- include:
- - C_INCLUDE_PATH
- - CPLUS_INCLUDE_PATH
- # The INCLUDE env variable specifies paths to look for
- # .mod file for Intel Fortran compilers
- - INCLUDE
lib/pkgconfig:
- PKG_CONFIG_PATH
lib64/pkgconfig:
diff --git a/etc/spack/defaults/packages.yaml b/etc/spack/defaults/packages.yaml
index 06aa41b2d8..77cbe57ffa 100644
--- a/etc/spack/defaults/packages.yaml
+++ b/etc/spack/defaults/packages.yaml
@@ -23,7 +23,7 @@ packages:
daal: [intel-daal]
elf: [elfutils]
fftw-api: [fftw, amdfftw]
- gl: [mesa+opengl, mesa18+opengl, opengl]
+ gl: [mesa+opengl, mesa18, opengl]
glx: [mesa+glx, mesa18+glx, opengl]
glu: [mesa-glu, openglu]
golang: [gcc]
@@ -49,6 +49,8 @@ packages:
unwind: [libunwind]
yacc: [bison, byacc]
flame: [libflame, amdlibflame]
+ uuid: [util-linux-uuid, libuuid]
+ ziglang: [zig]
permissions:
read: world
write: user
diff --git a/lib/spack/docs/analyze.rst b/lib/spack/docs/analyze.rst
new file mode 100644
index 0000000000..38af77cd7f
--- /dev/null
+++ b/lib/spack/docs/analyze.rst
@@ -0,0 +1,162 @@
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+ Spack Project Developers. See the top-level COPYRIGHT file for details.
+
+ SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+.. _analyze:
+
+=======
+Analyze
+=======
+
+
+The analyze command is a front-end to various tools that let us analyze
+package installations. Each analyzer is a module for a different kind
+of analysis that can be done on a package installation, including (but not
+limited to) binary, log, or text analysis. Thus, the analyze command group
+allows you to take an existing package install, choose an analyzer,
+and extract some output for the package using it.
+
+
+-----------------
+Analyzer Metadata
+-----------------
+
+For all analyzers, we write to an ``analyzers`` folder in ``~/.spack``, or the
+value that you specify in your spack config at ``config:analyzers_dir``.
+For example, here we see the results of running an analysis on zlib:
+
+.. code-block:: console
+
+ $ tree ~/.spack/analyzers/
+ └── linux-ubuntu20.04-skylake
+ └── gcc-9.3.0
+ └── zlib-1.2.11-sl7m27mzkbejtkrajigj3a3m37ygv4u2
+ ├── environment_variables
+ │   └── spack-analyzer-environment-variables.json
+ ├── install_files
+ │   └── spack-analyzer-install-files.json
+ └── libabigail
+ └── spack-analyzer-libabigail-libz.so.1.2.11.xml
+
+
+This means that you can always find analyzer output in this folder, and it
+is organized with the same logic as the package install it was run for.
+If you want to customize this top level folder, simply provide the ``--path``
+argument to ``spack analyze run``. The nested organization will be maintained
+within your custom root.
+
+-----------------
+Listing Analyzers
+-----------------
+
+If you aren't familiar with Spack's analyzers, you can quickly list those that
+are available:
+
+.. code-block:: console
+
+ $ spack analyze list-analyzers
+ install_files : install file listing read from install_manifest.json
+ environment_variables : environment variables parsed from spack-build-env.txt
+ config_args : config args loaded from spack-configure-args.txt
+ abigail : Application Binary Interface (ABI) features for objects
+
+
+In the above, the first three are fairly simple - parsing metadata files from
+a package install directory to save
+
+-------------------
+Analyzing a Package
+-------------------
+
+The analyze command, akin to install, will accept a package spec to perform
+an analysis for. The package must be installed. Let's walk through an example
+with zlib. We first ask to analyze it. However, since we have more than one
+install, we are asked to disambiguate:
+
+.. code-block:: console
+
+ $ spack analyze run zlib
+ ==> Error: zlib matches multiple packages.
+ Matching packages:
+ fz2bs56 zlib@1.2.11%gcc@7.5.0 arch=linux-ubuntu18.04-skylake
+ sl7m27m zlib@1.2.11%gcc@9.3.0 arch=linux-ubuntu20.04-skylake
+ Use a more specific spec.
+
+
+We can then specify the spec version that we want to analyze:
+
+.. code-block:: console
+
+ $ spack analyze run zlib/fz2bs56
+
+If you don't provide any specific analyzer names, by default all analyzers
+(shown in the ``list-analyzers`` subcommand list) will be run. If an analyzer does not
+have any result, it will be skipped. For example, here is a result running for
+zlib:
+
+.. code-block:: console
+
+ $ ls ~/.spack/analyzers/linux-ubuntu20.04-skylake/gcc-9.3.0/zlib-1.2.11-sl7m27mzkbejtkrajigj3a3m37ygv4u2/
+ spack-analyzer-environment-variables.json
+ spack-analyzer-install-files.json
+ spack-analyzer-libabigail-libz.so.1.2.11.xml
+
+If you want to run a specific analyzer, ask for it with `--analyzer`. Here we run
+spack analyze on libabigail (already installed) _using_ libabigail1
+
+.. code-block:: console
+
+ $ spack analyze run --analyzer abigail libabigail
+
+
+.. _analyze_monitoring:
+
+----------------------
+Monitoring An Analysis
+----------------------
+
+For any kind of analysis, you can
+use a `spack monitor <https://github.com/spack/spack-monitor>`_ "Spackmon"
+as a server to upload the same run metadata to. You can
+follow the instructions in the `spack monitor documentation <https://spack-monitor.readthedocs.org>`_
+to first create a server along with a username and token for yourself.
+You can then use this guide to interact with the server.
+
+You should first export our spack monitor token and username to the environment:
+
+.. code-block:: console
+
+ $ export SPACKMON_TOKEN=50445263afd8f67e59bd79bff597836ee6c05438
+ $ export SPACKMON_USER=spacky
+
+
+By default, the host for your server is expected to be at ``http://127.0.0.1``
+with a prefix of ``ms1``, and if this is the case, you can simply add the
+``--monitor`` flag to the install command:
+
+.. code-block:: console
+
+ $ spack analyze run --monitor wget
+
+If you need to customize the host or the prefix, you can do that as well:
+
+.. code-block:: console
+
+ $ spack analyze run --monitor --monitor-prefix monitor --monitor-host https://monitor-service.io wget
+
+If your server doesn't have authentication, you can skip it:
+
+.. code-block:: console
+
+ $ spack analyze run --monitor --monitor-disable-auth wget
+
+Regardless of your choice, when you run analyze on an installed package (whether
+it was installed with ``--monitor`` or not, you'll see the results generating as they did
+before, and a message that the monitor server was pinged:
+
+.. code-block:: console
+
+ $ spack analyze --monitor wget
+ ...
+ ==> Sending result for wget bin/wget to monitor.
diff --git a/lib/spack/docs/basic_usage.rst b/lib/spack/docs/basic_usage.rst
index f7def9d439..db69ba42e9 100644
--- a/lib/spack/docs/basic_usage.rst
+++ b/lib/spack/docs/basic_usage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,12 +27,18 @@ It is recommended that the following be put in your ``.bashrc`` file:
If you do not see colorized output when using ``less -R`` it is because color
is being disabled in the piped output. In this case, tell spack to force
-colorized output.
+colorized output with a flag
.. code-block:: console
$ spack --color always | less -R
+or an environment variable
+
+.. code-block:: console
+
+ $ SPACK_COLOR=always spack | less -R
+
--------------------------
Listing available packages
--------------------------
@@ -133,8 +139,7 @@ dependencies first. It then fetches the ``mpileaks`` tarball, expands
it, verifies that it was downloaded without errors, builds it, and
installs it in its own directory under ``$SPACK_ROOT/opt``. You'll see
a number of messages from Spack, a lot of build output, and a message
-that the package is installed. Add one or more debug options (``-d``)
-to get increasingly detailed output.
+that the package is installed.
.. code-block:: console
@@ -151,8 +156,8 @@ to get increasingly detailed output.
The last line, with the ``[+]``, indicates where the package is
installed.
-Add the debug option -- ``spack install -d mpileaks`` -- to get additional
-output.
+Add the Spack debug option (one or more times) -- ``spack -d install
+mpileaks`` -- to get additional (and even more verbose) output.
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Building a specific version
@@ -964,7 +969,7 @@ Variants are named options associated with a particular package. They are
optional, as each package must provide default values for each variant it
makes available. Variants can be specified using
a flexible parameter syntax ``name=<value>``. For example,
-``spack install libelf debug=True`` will install libelf built with debug
+``spack install mercury debug=True`` will install mercury built with debug
flags. The names of particular variants available for a package depend on
what was provided by the package author. ``spack info <package>`` will
provide information on what build variants are available.
@@ -972,11 +977,11 @@ provide information on what build variants are available.
For compatibility with earlier versions, variants which happen to be
boolean in nature can be specified by a syntax that represents turning
options on and off. For example, in the previous spec we could have
-supplied ``libelf +debug`` with the same effect of enabling the debug
+supplied ``mercury +debug`` with the same effect of enabling the debug
compile time option for the libelf package.
Depending on the package a variant may have any default value. For
-``libelf`` here, ``debug`` is ``False`` by default, and we turned it on
+``mercury`` here, ``debug`` is ``False`` by default, and we turned it on
with ``debug=True`` or ``+debug``. If a variant is ``True`` by default
you can turn it off by either adding ``-name`` or ``~name`` to the spec.
diff --git a/lib/spack/docs/binary_caches.rst b/lib/spack/docs/binary_caches.rst
index 6e8c91c943..17617b1491 100644
--- a/lib/spack/docs/binary_caches.rst
+++ b/lib/spack/docs/binary_caches.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/build_settings.rst b/lib/spack/docs/build_settings.rst
index 3e7a21c3e8..a0d4445d3f 100644
--- a/lib/spack/docs/build_settings.rst
+++ b/lib/spack/docs/build_settings.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/build_systems.rst b/lib/spack/docs/build_systems.rst
index 84c608077f..59b9bb643a 100644
--- a/lib/spack/docs/build_systems.rst
+++ b/lib/spack/docs/build_systems.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -59,7 +59,9 @@ on these ideas for each distinct build system that Spack supports:
build_systems/bundlepackage
build_systems/cudapackage
+ build_systems/inteloneapipackage
build_systems/intelpackage
+ build_systems/rocmpackage
build_systems/custompackage
For reference, the :py:mod:`Build System API docs <spack.build_systems>`
diff --git a/lib/spack/docs/build_systems/autotoolspackage.rst b/lib/spack/docs/build_systems/autotoolspackage.rst
index a4c15e5155..479a11b00d 100644
--- a/lib/spack/docs/build_systems/autotoolspackage.rst
+++ b/lib/spack/docs/build_systems/autotoolspackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -155,7 +155,7 @@ version, this can be done like so:
@property
def force_autoreconf(self):
- return self.version == Version('1.2.3'):
+ return self.version == Version('1.2.3')
^^^^^^^^^^^^^^^^^^^^^^^
Finding configure flags
diff --git a/lib/spack/docs/build_systems/bundlepackage.rst b/lib/spack/docs/build_systems/bundlepackage.rst
index e22e4b26be..d6429c2519 100644
--- a/lib/spack/docs/build_systems/bundlepackage.rst
+++ b/lib/spack/docs/build_systems/bundlepackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/build_systems/cmakepackage.rst b/lib/spack/docs/build_systems/cmakepackage.rst
index 76e89c80b1..a3282514e8 100644
--- a/lib/spack/docs/build_systems/cmakepackage.rst
+++ b/lib/spack/docs/build_systems/cmakepackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/build_systems/cudapackage.rst b/lib/spack/docs/build_systems/cudapackage.rst
index 15150599d3..2d148d0483 100644
--- a/lib/spack/docs/build_systems/cudapackage.rst
+++ b/lib/spack/docs/build_systems/cudapackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,35 +9,120 @@
CudaPackage
-----------
-Different from other packages, ``CudaPackage`` does not represent a build
-system. Instead its goal is to simplify and unify usage of ``CUDA`` in other
-packages.
+Different from other packages, ``CudaPackage`` does not represent a build system.
+Instead its goal is to simplify and unify usage of ``CUDA`` in other packages by providing a ` mixin-class <https://en.wikipedia.org/wiki/Mixin>`__.
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Provided variants and dependencies
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+You can find source for the package at
+`<https://github.com/spack/spack/blob/develop/lib/spack/spack/build_systems/cuda.py>`__.
-``CudaPackage`` provides ``cuda`` variant (default to ``off``) to enable/disable
-``CUDA``, and ``cuda_arch`` variant to optionally specify the architecture.
-It also declares dependencies on the ``CUDA`` package ``depends_on('cuda@...')``
-based on the architecture as well as specifies conflicts for certain compiler versions.
+^^^^^^^^
+Variants
+^^^^^^^^
+
+This package provides the following variants:
+
+* **cuda**
+
+ This variant is used to enable/disable building with ``CUDA``. The default
+ is disabled (or ``False``).
+
+* **cuda_arch**
+
+ This variant supports the optional specification of the architecture.
+ Valid values are maintained in the ``cuda_arch_values`` property and
+ are the numeric character equivalent of the compute capability version
+ (e.g., '10' for version 1.0). Each provided value affects associated
+ ``CUDA`` dependencies and compiler conflicts.
+
+ GPUs and their compute capability versions are listed at
+ https://developer.nvidia.com/cuda-gpus .
+
+^^^^^^^^^
+Conflicts
+^^^^^^^^^
+
+Conflicts are used to prevent builds with known bugs or issues. While
+base ``CUDA`` conflicts have been included with this package, you may
+want to add more for your software.
+
+For example, if your package requires ``cuda_arch`` to be specified when
+``cuda`` is enabled, you can add the following conflict to your package
+to terminate such build attempts with a suitable message:
+
+.. code-block:: python
+
+ conflicts('cuda_arch=none', when='+cuda',
+ msg='CUDA architecture is required')
+
+Similarly, if your software does not support all versions of the property,
+you could add ``conflicts`` to your package for those versions. For example,
+suppose your software does not work with CUDA compute capability versions
+prior to SM 5.0 (``50``). You can add the following code to display a
+custom message should a user attempt such a build:
+
+.. code-block:: python
+
+ unsupported_cuda_archs = [
+ '10', '11', '12', '13',
+ '20', '21',
+ '30', '32', '35', '37'
+ ]
+ for value in unsupported_cuda_archs:
+ conflicts('cuda_arch={0}'.format(value), when='+cuda',
+ msg='CUDA architecture {0} is not supported'.format(value))
+
+^^^^^^^
+Methods
+^^^^^^^
+
+This package provides one custom helper method, which is used to build
+standard CUDA compiler flags.
+
+**cuda_flags**
+
+ This built-in static method returns a list of command line flags
+ for the chosen ``cuda_arch`` value(s). The flags are intended to
+ be passed to the CUDA compiler driver (i.e., ``nvcc``).
+
+ This method must be explicitly called when you are creating the
+ arguments for your build in order to use the values.
^^^^^
Usage
^^^^^
-In order to use it, just add another base class to your package, for example:
+This helper package can be added to your package by adding it as a base
+class of your package. For example, you can add it to your
+:ref:`CMakePackage <cmakepackage>`-based package as follows:
.. code-block:: python
+ :emphasize-lines: 1,7-16
- class MyPackage(CMakePackage, CudaPackage):
+ class MyCudaPackage(CMakePackage, CudaPackage):
...
def cmake_args(self):
spec = self.spec
+ args = []
+ ...
if '+cuda' in spec:
- options.append('-DWITH_CUDA=ON')
- cuda_arch = spec.variants['cuda_arch'].value
+ # Set up the cuda macros needed by the build
+ args.append('-DWITH_CUDA=ON')
+ cuda_arch_list = spec.variants['cuda_arch'].value
+ cuda_arch = cuda_arch_list[0]
if cuda_arch != 'none':
- options.append('-DCUDA_FLAGS=-arch=sm_{0}'.format(cuda_arch[0]))
+ args.append('-DCUDA_FLAGS=-arch=sm_{0}'.format(cuda_arch))
else:
- options.append('-DWITH_CUDA=OFF')
+ # Ensure build with cuda is disabled
+ args.append('-DWITH_CUDA=OFF')
+ ...
+ return args
+
+assuming only the ``WITH_CUDA`` and ``CUDA_FLAGS`` flags are required.
+You will need to customize options as needed for your build.
+
+This example also illustrates how to check for the ``cuda`` variant using
+``self.spec`` and how to retrieve the ``cuda_arch`` variant's value, which
+is a list, using ``self.spec.variants['cuda_arch'].value``.
+
+With over 70 packages using ``CudaPackage`` as of January 2021 there are
+lots of examples to choose from to get more ideas for using this package.
diff --git a/lib/spack/docs/build_systems/custompackage.rst b/lib/spack/docs/build_systems/custompackage.rst
index 8a20dada92..4cb506acd7 100644
--- a/lib/spack/docs/build_systems/custompackage.rst
+++ b/lib/spack/docs/build_systems/custompackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@
Custom Build Systems
--------------------
-While the build systems listed above should meet your needs for the
+While the built-in build systems should meet your needs for the
vast majority of packages, some packages provide custom build scripts.
This guide is intended for the following use cases:
@@ -31,7 +31,7 @@ installation. Both of these packages require custom build systems.
Base class
^^^^^^^^^^
-If your package does not belong to any of the aforementioned build
+If your package does not belong to any of the built-in build
systems that Spack already supports, you should inherit from the
``Package`` base class. ``Package`` is a simple base class with a
single phase: ``install``. If your package is simple, you may be able
@@ -168,7 +168,8 @@ if and only if this flag is set, we would use the following line:
Testing
^^^^^^^
-Let's put everything together and add unit tests to our package.
+Let's put everything together and add unit tests to be optionally run
+during the installation of our package.
In the ``perl`` package, we can see:
.. code-block:: python
@@ -182,12 +183,6 @@ As you can guess, this runs ``make test`` *after* building the package,
if and only if testing is requested. Again, this is not specific to
custom build systems, it can be added to existing build systems as well.
-Ideally, every package in Spack will have some sort of test to ensure
-that it was built correctly. It is up to the package authors to make
-sure this happens. If you are adding a package for some software and
-the developers list commands to test the installation, please add these
-tests to your ``package.py``.
-
.. warning::
The order of decorators matters. The following ordering:
@@ -207,3 +202,12 @@ tests to your ``package.py``.
the tests will always be run regardless of whether or not
``--test=root`` is requested. See https://github.com/spack/spack/issues/3833
for more information
+
+Ideally, every package in Spack will have some sort of test to ensure
+that it was built correctly. It is up to the package authors to make
+sure this happens. If you are adding a package for some software and
+the developers list commands to test the installation, please add these
+tests to your ``package.py``.
+
+For more information on other forms of package testing, refer to
+:ref:`Checking an installation <checking_an_installation>`.
diff --git a/lib/spack/docs/build_systems/inteloneapipackage.rst b/lib/spack/docs/build_systems/inteloneapipackage.rst
new file mode 100644
index 0000000000..1e535775e2
--- /dev/null
+++ b/lib/spack/docs/build_systems/inteloneapipackage.rst
@@ -0,0 +1,155 @@
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+ Spack Project Developers. See the top-level COPYRIGHT file for details.
+
+ SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+.. _inteloneapipackage:
+
+
+====================
+ IntelOneapiPackage
+====================
+
+
+.. contents::
+
+
+oneAPI packages in Spack
+========================
+
+Spack can install and use the Intel oneAPI products. You may either
+use spack to install the oneAPI tools or use the `Intel
+installers`_. After installation, you may use the tools directly, or
+use Spack to build packages with the tools.
+
+The Spack Python class ``IntelOneapiPackage`` is a base class that is
+used by ``IntelOneapiCompilers``, ``IntelOneapiMkl``,
+``IntelOneapiTbb`` and other classes to implement the oneAPI
+packages. See the :ref:<package-list> for the full list of available
+oneAPI packages or use::
+
+ spack list -d oneAPI
+
+For more information on a specific package, do::
+
+ spack info <package-name>
+
+Intel no longer releases new versions of Parallel Studio, which can be
+used in Spack via the :ref:<intelpackage>. All of its components can
+now be found in oneAPI.
+
+Examples
+========
+
+Building a Package With icx
+---------------------------
+
+In this example, we build patchelf with ``icc`` and ``icx``. The
+compilers are installed with spack.
+
+Install the oneAPI compilers::
+
+ spack install intel-oneapi-compilers
+
+Add the compilers to your ``compilers.yaml`` so spack can use them::
+
+ spack compiler add `spack location -i intel-oneapi-compilers`/compiler/latest/linux/bin/intel64
+ spack compiler add `spack location -i intel-oneapi-compilers`/compiler/latest/linux/bin
+
+Verify that the compilers are available::
+
+ spack compiler list
+
+The ``intel-oneapi-compilers`` package includes 2 families of
+compilers:
+
+* ``intel``: ``icc``, ``icpc``, ``ifort``. Intel's *classic*
+ compilers.
+* ``oneapi``: ``icx``, ``icpx``, ``ifx``. Intel's new generation of
+ compilers based on LLVM.
+
+To build the ``patchelf`` Spack package with ``icc``, do::
+
+ spack install patchelf%intel
+
+To build with with ``icx``, do ::
+
+ spack install patchelf%oneapi
+
+Using oneAPI MPI to Satisfy a Virtual Dependence
+------------------------------------------------------
+
+The ``hdf5`` package works with any compatible MPI implementation. To
+build ``hdf5`` with Intel oneAPI MPI do::
+
+ spack install hdf5 +mpi ^intel-oneapi-mpi
+
+Using an Externally Installed oneAPI
+====================================
+
+Spack can also use oneAPI tools that are manually installed with
+`Intel Installers`_. The procedures for configuring Spack to use
+external compilers and libraries are different.
+
+Compilers
+---------
+
+To use the compilers, add some information about the installation to
+``compilers.yaml``. For most users, it is sufficient to do::
+
+ spack compiler add /opt/intel/oneapi/compiler/latest/linux/bin/intel64
+ spack compiler add /opt/intel/oneapi/compiler/latest/linux/bin
+
+Adapt the paths above if you did not install the tools in the default
+location. After adding the compilers, using them is the same
+as if you had installed the ``intel-oneapi-compilers`` package.
+Another option is to manually add the configuration to
+``compilers.yaml`` as described in :ref:`Compiler configuration
+<compiler-config>`.
+
+Libraries
+---------
+
+If you want Spack to use MKL that you have installed without Spack in
+the default location, then add the following to
+``~/.spack/packages.yaml``, adjusting the version as appropriate::
+
+ intel-oneapi-mkl:
+ externals:
+ - spec: intel-oneapi-mkl@2021.1.1
+ prefix: /opt/intel/oneapi/
+
+
+Using oneAPI Tools Installed by Spack
+=====================================
+
+Spack can be a convenient way to install and configure compilers and
+libaries, even if you do not intend to build a Spack package. If you
+want to build a Makefile project using Spack-installed oneAPI compilers,
+then use spack to configure your environment::
+
+ spack load intel-oneapi-compilers
+
+And then you can build with::
+
+ CXX=icpx make
+
+You can also use Spack-installed libraries. For example::
+
+ spack load intel-oneapi-mkl
+
+Will update your environment CPATH, LIBRARY_PATH, and other
+environment variables for building an application with MKL.
+
+More information
+================
+
+This section describes basic use of oneAPI, especially if it has
+changed compared to Parallel Studio. See :ref:<intelpackage> for more
+information on :ref:<intel-virtual-packages>,
+:ref:<intel-unrelated-packages>,
+:ref:<intel-integrating-external-libraries>, and
+:ref:<using-mkl-tips>.
+
+
+.. _`Intel installers`: https://software.intel.com/content/www/us/en/develop/documentation/installation-guide-for-intel-oneapi-toolkits-linux/top.html
diff --git a/lib/spack/docs/build_systems/intelpackage.rst b/lib/spack/docs/build_systems/intelpackage.rst
index 8594c8d425..9a157c3bb3 100644
--- a/lib/spack/docs/build_systems/intelpackage.rst
+++ b/lib/spack/docs/build_systems/intelpackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -137,6 +137,7 @@ If you need to save disk space or installation time, you could install the
``intel`` compilers-only subset (0.6 GB) and just the library packages you
need, for example ``intel-mpi`` (0.5 GB) and ``intel-mkl`` (2.5 GB).
+.. _intel-unrelated-packages:
""""""""""""""""""""
Unrelated packages
@@ -358,6 +359,8 @@ affected by an advanced third method:
Next, visit section `Selecting Intel Compilers`_ to learn how to tell
Spack to use the newly configured compilers.
+.. _intel-integrating-external-libraries:
+
""""""""""""""""""""""""""""""""""
Integrating external libraries
""""""""""""""""""""""""""""""""""
@@ -558,43 +561,29 @@ follow `the next section <intel-install-libs_>`_ instead.
modules: []
spec: intel@18.0.3
paths:
- cc: stub
- cxx: stub
- f77: stub
- fc: stub
+ cc: /usr/bin/true
+ cxx: /usr/bin/true
+ f77: /usr/bin/true
+ fc: /usr/bin/true
Replace ``18.0.3`` with the version that you determined in the preceding
- step. The contents under ``paths:`` do not matter yet.
-
- You are right to ask: "Why on earth is that necessary?" [fn8]_.
- The answer lies in Spack striving for strict compiler consistency.
- Consider what happens without such a pre-declared compiler stub:
- Say, you ask Spack to install a particular version
- ``intel-parallel-studio@edition.V``. Spack will apply an unrelated compiler
- spec to concretize and install your request, resulting in
- ``intel-parallel-studio@edition.V %X``. That compiler ``%X`` is not going to
- be the version that this new package itself provides. Rather, it would
- typically be ``%gcc@...`` in a default Spack installation or possibly indeed
- ``%intel@...``, but at a version that precedes ``V``.
-
- The problem comes to the fore as soon as you try to use any virtual ``mkl``
- or ``mpi`` packages that you would expect to now be provided by
- ``intel-parallel-studio@edition.V``. Spack will indeed see those virtual
- packages, but only as being tied to the compiler that the package
- ``intel-parallel-studio@edition.V`` was concretized with *at installation*.
- If you were to install a client package with the new compilers now available
- to you, you would naturally run ``spack install foo +mkl %intel@V``, yet
- Spack will either complain about ``mkl%intel@V`` being missing (because it
- only knows about ``mkl%X``) or it will go and attempt to install *another
- instance* of ``intel-parallel-studio@edition.V %intel@V`` so as to match the
- compiler spec ``%intel@V`` that you gave for your client package ``foo``.
- This will be unexpected and will quickly get annoying because each
- reinstallation takes up time and extra disk space.
-
- To escape this trap, put the compiler stub declaration shown here in place,
- then use that pre-declared compiler spec to install the actual package, as
- shown next. This approach works because during installation only the
- package's own self-sufficient installer will be used, not any compiler.
+ step. The exact contents under ``paths:`` do not matter yet, but the paths must exist.
+
+ This temporary stub is required such that the ``intel-parallel-studio`` package
+ can be installed for the ``intel`` compiler (which the package itself is going
+ to provide after the installation) rather than an arbitrary system compiler.
+ The paths given in ``cc``, ``cxx``, ``f77``, ``fc`` must exist, but will
+ never be used to build anything during the installation of ``intel-parallel-studio``.
+
+ The reason for this stub is that ``intel-parallel-studio`` also provides the
+ ``mpi`` and ``mkl`` packages and when concretizing a spec, Spack ensures
+ strong consistency of the used compiler across all dependencies: [fn8]_.
+ Installing a package ``foo +mkl %intel`` will make Spack look for a package
+ ``mkl %intel``, which can be provided by ``intel-parallel-studio+mkl %intel``,
+ but not by ``intel-parallel-studio+mkl %gcc``.
+
+ Failure to do so may result in additional installations of ``mkl``, ``intel-mpi`` or
+ even ``intel-parallel-studio`` as dependencies for other packages.
.. _`verify-compiler-anticipated`:
@@ -645,11 +634,25 @@ follow `the next section <intel-install-libs_>`_ instead.
want to use the ``intel64`` variant. The ``icpc`` and ``ifort`` compilers
will be located in the same directory as ``icc``.
- * Use the ``modules:`` and/or ``cflags:`` tokens to specify a suitable accompanying
+ * Make sure to specify ``modules: ['intel-parallel-studio-cluster2018.3-intel-18.0.3-HASH']``
+ (with ``HASH`` being the short hash as displayed when running
+ ``spack find -l intel-parallel-studio@cluster.2018.3`` and the versions adapted accordingly)
+ to ensure that the correct and complete environment for the Intel compilers gets
+ loaded when running them. With modern versions of the Intel compiler you may otherwise see
+ issues about missing libraries. Please also note that module name must exactly match
+ the name as returned by ``module avail`` (and shown in the example above).
+
+ * Use the ``modules:`` and/or ``cflags:`` tokens to further specify a suitable accompanying
``gcc`` version to help pacify picky client packages that ask for C++
standards more recent than supported by your system-provided ``gcc`` and its
``libstdc++.so``.
+ * If you specified a custom variant (for example ``+vtune``) you may want to add this as your
+ preferred variant in the packages configuration for the ``intel-parallel-studio`` package
+ as described in :ref:`concretization-preferences`. Otherwise you will have to specify
+ the variant everytime ``intel-parallel-studio`` is being used as ``mkl``, ``fftw`` or ``mpi``
+ implementation to avoid pulling in a different variant.
+
* To set the Intel compilers for default use in Spack, instead of the usual ``%gcc``,
follow section `Selecting Intel compilers`_.
@@ -834,6 +837,7 @@ for example:
compiler: [ intel@18, intel@17, gcc@4.4.7, gcc@4.9.3, gcc@7.3.0, ]
+.. _intel-virtual-packages:
""""""""""""""""""""""""""""""""""""""""""""""""
Selecting libraries to satisfy virtual packages
@@ -907,6 +911,7 @@ With the proper installation as detailed above, no special steps should be
required when a client package specifically (and thus deliberately) requests an
Intel package as dependency, this being one of the target use cases for Spack.
+.. _using-mkl-tips:
"""""""""""""""""""""""""""""""""""""""""""""""
Tips for configuring client packages to use MKL
diff --git a/lib/spack/docs/build_systems/makefilepackage.rst b/lib/spack/docs/build_systems/makefilepackage.rst
index 406ec8ce89..e78c558a5a 100644
--- a/lib/spack/docs/build_systems/makefilepackage.rst
+++ b/lib/spack/docs/build_systems/makefilepackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -147,8 +147,10 @@ and a ``filter_file`` method to help with this. For example:
def edit(self, spec, prefix):
makefile = FileFilter('Makefile')
- makefile.filter('CC = gcc', 'CC = cc')
- makefile.filter('CXX = g++', 'CC = c++')
+ makefile.filter(r'^\s*CC\s*=.*', 'CC = ' + spack_cc)
+ makefile.filter(r'^\s*CXX\s*=.*', 'CXX = ' + spack_cxx)
+ makefile.filter(r'^\s*F77\s*=.*', 'F77 = ' + spack_f77)
+ makefile.filter(r'^\s*FC\s*=.*', 'FC = ' + spack_fc)
`stream <https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/stream/package.py>`_
diff --git a/lib/spack/docs/build_systems/mavenpackage.rst b/lib/spack/docs/build_systems/mavenpackage.rst
index 6f833e8bec..7c8c0e3741 100644
--- a/lib/spack/docs/build_systems/mavenpackage.rst
+++ b/lib/spack/docs/build_systems/mavenpackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/build_systems/mesonpackage.rst b/lib/spack/docs/build_systems/mesonpackage.rst
index 75b0e1caae..a7dd7a76fb 100644
--- a/lib/spack/docs/build_systems/mesonpackage.rst
+++ b/lib/spack/docs/build_systems/mesonpackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -121,11 +121,15 @@ override the ``meson_args`` method like so:
.. code-block:: python
def meson_args(self):
- return ['--default-library=both']
+ return ['--warnlevel=3']
This method can be used to pass flags as well as variables.
+Note that the ``MesonPackage`` base class already defines variants for
+``buildtype``, ``default_library`` and ``strip``, which are mapped to default
+Meson arguments, meaning that you don't have to specify these.
+
^^^^^^^^^^^^^^^^^^^^^^
External documentation
^^^^^^^^^^^^^^^^^^^^^^
diff --git a/lib/spack/docs/build_systems/octavepackage.rst b/lib/spack/docs/build_systems/octavepackage.rst
index 90e582e36c..baccd0c0e7 100644
--- a/lib/spack/docs/build_systems/octavepackage.rst
+++ b/lib/spack/docs/build_systems/octavepackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/build_systems/perlpackage.rst b/lib/spack/docs/build_systems/perlpackage.rst
index 11968e1560..9fc57f6337 100644
--- a/lib/spack/docs/build_systems/perlpackage.rst
+++ b/lib/spack/docs/build_systems/perlpackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -120,8 +120,6 @@ so ``PerlPackage`` contains:
extends('perl')
- depends_on('perl', type=('build', 'run'))
-
If your package requires a specific version of Perl, you should
specify this.
diff --git a/lib/spack/docs/build_systems/pythonpackage.rst b/lib/spack/docs/build_systems/pythonpackage.rst
index ef06725e01..931c58724a 100644
--- a/lib/spack/docs/build_systems/pythonpackage.rst
+++ b/lib/spack/docs/build_systems/pythonpackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,20 +23,11 @@ can be overridden:
* ``build_ext``
* ``build_clib``
* ``build_scripts``
-* ``clean``
* ``install``
* ``install_lib``
* ``install_headers``
* ``install_scripts``
* ``install_data``
-* ``sdist``
-* ``register``
-* ``bdist``
-* ``bdist_dumb``
-* ``bdist_rpm``
-* ``bdist_wininst``
-* ``upload``
-* ``check``
These are all standard ``setup.py`` commands and can be found by running:
@@ -55,7 +46,7 @@ If for whatever reason you need to run more phases, simply modify your
.. code-block:: python
- phases = ['build_ext', 'install', 'bdist']
+ phases = ['build_ext', 'install']
Each phase provides a function ``<phase>`` that runs:
@@ -90,7 +81,7 @@ Instead of using the ``PythonPackage`` base class, you should extend
the ``Package`` base class and implement the following custom installation
procedure:
-.. code-block::
+.. code-block:: python
def install(self, spec, prefix):
pip = which('pip')
@@ -134,9 +125,9 @@ The zip file will not contain a ``setup.py``, but it will contain a
``METADATA`` file which contains all the information you need to
write a ``package.py`` build recipe.
-^^^^^^^^^^^^^^^^^^^^^^^
-Finding Python packages
-^^^^^^^^^^^^^^^^^^^^^^^
+^^^^
+PyPI
+^^^^
The vast majority of Python packages are hosted on PyPI - The Python
Package Index. ``pip`` only supports packages hosted on PyPI, making
@@ -148,6 +139,26 @@ if a newer version is available. The download page is usually at::
https://pypi.org/project/<package-name>
+
+Since PyPI is so common, the ``PythonPackage`` base class has a
+``pypi`` attribute that can be set. Once set, ``pypi`` will be used
+to define the ``homepage``, ``url``, and ``list_url``. For example,
+the following:
+
+.. code-block:: python
+
+ homepage = 'https://pypi.org/project/setuptools/'
+ url = 'https://pypi.org/packages/source/s/setuptools/setuptools-49.2.0.zip'
+ list_url = 'https://pypi.org/simple/setuptools/'
+
+
+is equivalent to:
+
+.. code-block:: python
+
+ pypi = 'setuptools/setuptools-49.2.0.zip'
+
+
^^^^^^^^^^^
Description
^^^^^^^^^^^
@@ -184,50 +195,11 @@ also get the homepage on the command-line by running:
URL
^^^
-You may have noticed that Spack allows you to add multiple versions of
-the same package without adding multiple versions of the download URL.
-It does this by guessing what the version string in the URL is and
-replacing this with the requested version. Obviously, if Spack cannot
-guess the version correctly, or if non-version-related things change
-in the URL, Spack cannot substitute the version properly.
-
-Once upon a time, PyPI offered nice, simple download URLs like::
-
- https://pypi.python.org/packages/source/n/numpy/numpy-1.13.1.zip
-
-
-As you can see, the version is 1.13.1. It probably isn't hard to guess
-what URL to use to download version 1.12.0, and Spack was perfectly
-capable of performing this calculation.
-
-However, PyPI switched to a new download URL format::
-
- https://pypi.python.org/packages/c0/3a/40967d9f5675fbb097ffec170f59c2ba19fc96373e73ad47c2cae9a30aed/numpy-1.13.1.zip#md5=2c3c0f4edf720c3a7b525dacc825b9ae
-
-
-and more recently::
-
- https://files.pythonhosted.org/packages/b0/2b/497c2bb7c660b2606d4a96e2035e92554429e139c6c71cdff67af66b58d2/numpy-1.14.3.zip
-
-
-As you can imagine, it is impossible for Spack to guess what URL to
-use to download version 1.12.0 given this URL. There is a solution,
-however. PyPI offers a new hidden interface for downloading
-Python packages that does not include a hash in the URL::
-
- https://pypi.io/packages/source/n/numpy/numpy-1.13.1.zip
-
-
-This URL redirects to the https://files.pythonhosted.org URL. The general
-syntax for this https://pypi.io URL is::
-
- https://pypi.io/packages/<type>/<first-letter-of-name>/<name>/<name>-<version>.<extension>
-
-
-Please use the https://pypi.io URL instead of the https://pypi.python.org
-URL. If both ``.tar.gz`` and ``.zip`` versions are available, ``.tar.gz``
-is preferred. If some releases offer both ``.tar.gz`` and ``.zip`` versions,
-but some only offer ``.zip`` versions, use ``.zip``.
+If ``pypi`` is set as mentioned above, ``url`` and ``list_url`` will
+be automatically set for you. If both ``.tar.gz`` and ``.zip`` versions
+are available, ``.tar.gz`` is preferred. If some releases offer both
+``.tar.gz`` and ``.zip`` versions, but some only offer ``.zip`` versions,
+use ``.zip``.
Some Python packages are closed-source and do not ship ``.tar.gz`` or ``.zip``
files on either PyPI or GitHub. If this is the case, you can still download
@@ -237,10 +209,9 @@ and can be downloaded from::
https://pypi.io/packages/py3/a/azureml_sdk/azureml_sdk-1.11.0-py3-none-any.whl
-Note that instead of ``<type>`` being ``source``, it is now ``py3`` since this
-wheel will work for any generic version of Python 3. You may see Python-specific
-or OS-specific URLs. Note that when you add a ``.whl`` URL, you should add
-``expand=False`` to ensure that Spack doesn't try to extract the wheel:
+You may see Python-specific or OS-specific URLs. Note that when you add a
+``.whl`` URL, you should add ``expand=False`` to ensure that Spack doesn't
+try to extract the wheel:
.. code-block:: python
@@ -255,7 +226,7 @@ Many packages are hosted on PyPI, but are developed on GitHub or another
version control systems. The tarball can be downloaded from either
location, but PyPI is preferred for the following reasons:
-#. PyPI contains the bare minimum of files to install the package.
+#. PyPI contains the bare minimum number of files needed to install the package.
You may notice that the tarball you download from PyPI does not
have the same checksum as the tarball you download from GitHub.
@@ -292,19 +263,6 @@ location, but PyPI is preferred for the following reasons:
PyPI is nice because it makes it physically impossible to
re-release the same version of a package with a different checksum.
-There are some reasons to prefer downloading from GitHub:
-
-#. The GitHub tarball may contain unit tests.
-
- As previously mentioned, the PyPI tarball contains the bare minimum
- of files to install the package. Unless explicitly specified by the
- developers, it will not contain development files like unit tests.
- If you desire to run the unit tests during installation, you should
- use the GitHub tarball instead.
-
-If you really want to run these unit tests, no one will stop you from
-submitting a PR for a new package that downloads from GitHub.
-
^^^^^^^^^^^^^^^^^^^^^^^^^
Build system dependencies
^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -569,7 +527,8 @@ If the package uses ``setuptools``, check for the following clues:
These are packages that are required to run the unit tests for the
package. These dependencies can be specified using the
- ``type='test'`` dependency type.
+ ``type='test'`` dependency type. However, the PyPI tarballs rarely
+ contain unit tests, so there is usually no reason to add these.
In the root directory of the package, you may notice a
``requirements.txt`` file. It may look like this file contains a list
@@ -625,7 +584,8 @@ add run-time dependencies if they aren't needed, so you need to
determine whether or not setuptools is needed. Grep the installation
directory for any files containing a reference to ``setuptools`` or
``pkg_resources``. Both modules come from ``py-setuptools``.
-``pkg_resources`` is particularly common in scripts in ``prefix/bin``.
+``pkg_resources`` is particularly common in scripts found in
+``prefix/bin``.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Passing arguments to setup.py
@@ -667,7 +627,8 @@ adds:
Testing
^^^^^^^
-``PythonPackage`` provides a couple of options for testing packages.
+``PythonPackage`` provides a couple of options for testing packages
+both during and after the installation process.
""""""""""""
Import tests
@@ -699,48 +660,74 @@ a "package" is a directory containing files like:
foo/baz.py
-whereas a "module" is a single Python file. Since ``find_packages``
-only returns packages, you'll have to determine the correct module
-names yourself. You can now add these packages and modules to the
-package like so:
+whereas a "module" is a single Python file.
+
+The ``PythonPackage`` base class automatically detects these module
+names for you. If, for whatever reason, the module names detected
+are wrong, you can provide the names yourself by overriding
+``import_modules`` like so:
.. code-block:: python
import_modules = ['six']
-When you run ``spack install --test=root py-six``, Spack will attempt
-to import the ``six`` module after installation.
+Sometimes the list of module names to import depends on how the
+package was built. For example, the ``py-pyyaml`` package has a
+``+libyaml`` variant that enables the build of a faster optimized
+version of the library. If the user chooses ``~libyaml``, only the
+``yaml`` library will be importable. If the user chooses ``+libyaml``,
+both the ``yaml`` and ``yaml.cyaml`` libraries will be available.
+This can be expressed like so:
+
+.. code-block:: python
-These tests most often catch missing dependencies and non-RPATHed
+ @property
+ def import_modules(self):
+ modules = ['yaml']
+
+ if '+libyaml' in self.spec:
+ modules.append('yaml.cyaml')
+
+ return modules
+
+
+These tests often catch missing dependencies and non-RPATHed
libraries. Make sure not to add modules/packages containing the word
-"test", as these likely won't end up in installation directory.
+"test", as these likely won't end up in the installation directory,
+or may require test dependencies like pytest to be installed.
+
+Import tests can be run during the installation using ``spack install
+--test=root`` or at any time after the installation using
+``spack test run``.
""""""""""
Unit tests
""""""""""
-The package you want to install may come with additional unit tests.
-By default, Spack runs:
+The package may have its own unit or regression tests. Spack can
+run these tests during the installation by adding phase-appropriate
+test methods.
-.. code-block:: console
+For example, ``py-numpy`` adds the following as a check to run
+after the ``install`` phase:
- $ python setup.py test
+.. code-block:: python
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def install_test(self):
+ with working_dir('spack-test', create=True):
+ python('-c', 'import numpy; numpy.test("full", verbose=2)')
-if it detects that the ``setup.py`` file supports a ``test`` phase.
-You can add additional build-time or install-time tests by overriding
-``test`` or adding a custom install-time test function. For example,
-``py-numpy`` adds:
-.. code-block:: python
+when testing is enabled during the installation (i.e., ``spack install
+--test=root``).
- install_time_test_callbacks = ['install_test', 'import_module_test']
-
- def install_test(self):
- with working_dir('..'):
- python('-c', 'import numpy; numpy.test("full", verbose=2)')
+.. note::
+ Additional information is available on :ref:`install phase tests
+ <install_phase-tests>`.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Setup file in a sub-directory
@@ -781,7 +768,7 @@ PythonPackage vs. packages that use Python
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
There are many packages that make use of Python, but packages that depend
-on Python are not necessarily ``PythonPackages``.
+on Python are not necessarily ``PythonPackage``'s.
"""""""""""""""""""""""
Choosing a build system
@@ -878,8 +865,8 @@ and ``pip`` may be a perfectly valid alternative to using Spack. The
main advantage of Spack over ``pip`` is its ability to compile
non-Python dependencies. It can also build cythonized versions of a
package or link to an optimized BLAS/LAPACK library like MKL,
-resulting in calculations that run orders of magnitude faster.
-Spack does not offer a significant advantage to other python-management
+resulting in calculations that run orders of magnitudes faster.
+Spack does not offer a significant advantage over other python-management
systems for installing and using tools like flake8 and sphinx.
But if you need packages with non-Python dependencies like
numpy and scipy, Spack will be very valuable to you.
diff --git a/lib/spack/docs/build_systems/qmakepackage.rst b/lib/spack/docs/build_systems/qmakepackage.rst
index 81d0f7f798..6e85d2bbcd 100644
--- a/lib/spack/docs/build_systems/qmakepackage.rst
+++ b/lib/spack/docs/build_systems/qmakepackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -108,6 +108,19 @@ override the ``qmake_args`` method like so:
This method can be used to pass flags as well as variables.
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+``*.pro`` file in a sub-directory
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+If the ``*.pro`` file used to tell QMake how to build the package is
+found in a sub-directory, you can tell Spack to run all phases in this
+sub-directory by adding the following to the package:
+
+.. code-block:: python
+
+ build_directory = 'src'
+
+
^^^^^^^^^^^^^^^^^^^^^^
External documentation
^^^^^^^^^^^^^^^^^^^^^^
diff --git a/lib/spack/docs/build_systems/rocmpackage.rst b/lib/spack/docs/build_systems/rocmpackage.rst
new file mode 100644
index 0000000000..e322194adf
--- /dev/null
+++ b/lib/spack/docs/build_systems/rocmpackage.rst
@@ -0,0 +1,122 @@
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+ Spack Project Developers. See the top-level COPYRIGHT file for details.
+
+ SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+.. _rocmpackage:
+
+-----------
+ROCmPackage
+-----------
+
+The ``ROCmPackage`` is not a build system but a helper package. Like ``CudaPackage``,
+it provides standard variants, dependencies, and conflicts to facilitate building
+packages using GPUs though for AMD in this case.
+
+You can find the source for this package (and suggestions for setting up your
+``compilers.yaml`` and ``packages.yaml`` files) at
+`<https://github.com/spack/spack/blob/develop/lib/spack/spack/build_systems/rocm.py>`__.
+
+^^^^^^^^
+Variants
+^^^^^^^^
+
+This package provides the following variants:
+
+* **rocm**
+
+ This variant is used to enable/disable building with ``rocm``.
+ The default is disabled (or ``False``).
+
+* **amdgpu_target**
+
+ This variant supports the optional specification of the AMD GPU architecture.
+ Valid values are the names of the GPUs (e.g., ``gfx701``), which are maintained
+ in the ``amdgpu_targets`` property.
+
+^^^^^^^^^^^^
+Dependencies
+^^^^^^^^^^^^
+
+This package defines basic ``rocm`` dependencies, including ``llvm`` and ``hip``.
+
+^^^^^^^^^
+Conflicts
+^^^^^^^^^
+
+Conflicts are used to prevent builds with known bugs or issues. This package
+already requires that the ``amdgpu_target`` always be specified for ``rocm``
+builds. It also defines a conflict that prevents builds with an ``amdgpu_target``
+when ``rocm`` is disabled.
+
+Refer to `Conflicts <https://spack.readthedocs.io/en/latest/packaging_guide.html?highlight=conflicts#conflicts>`__
+for more information on package conflicts.
+
+^^^^^^^
+Methods
+^^^^^^^
+
+This package provides one custom helper method, which is used to build
+standard AMD hip compiler flags.
+
+**hip_flags**
+
+ This built-in static method returns the appropriately formatted
+ ``--amdgpu-target`` build option for ``hipcc``.
+
+ This method must be explicitly called when you are creating the
+ arguments for your build in order to use the values.
+
+^^^^^
+Usage
+^^^^^
+
+This helper package can be added to your package by adding it as a base
+class of your package. For example, you can add it to your
+:ref:`CMakePackage <cmakepackage>`-based package as follows:
+
+.. code-block:: python
+ :emphasize-lines: 1,3-7,14-25
+
+ class MyRocmPackage(CMakePackage, ROCmPackage):
+ ...
+ # Ensure +rocm and amdgpu_targets are passed to dependencies
+ depends_on('mydeppackage', when='+rocm')
+ for val in ROCmPackage.amdgpu_targets:
+ depends_on('mydeppackage amdgpu_target={0}'.format(val),
+ when='amdgpu_target={0}'.format(val))
+ ...
+
+ def cmake_args(self):
+ spec = self.spec
+ args = []
+ ...
+ if '+rocm' in spec:
+ # Set up the hip macros needed by the build
+ args.extend([
+ '-DENABLE_HIP=ON',
+ '-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix])
+ rocm_archs = spec.variants['amdgpu_target'].value
+ if 'none' not in rocm_archs:
+ args.append('-DHIP_HIPCC_FLAGS=--amdgpu-target={0}'
+ .format(",".join(rocm_archs)))
+ else:
+ # Ensure build with hip is disabled
+ args.append('-DENABLE_HIP=OFF')
+ ...
+ return args
+ ...
+
+assuming only on the ``ENABLE_HIP``, ``HIP_ROOT_DIR``, and ``HIP_HIPCC_FLAGS``
+macros are required to be set and the only dependency needing rocm options
+is ``mydeppackage``. You will need to customize the flags as needed for your
+build.
+
+This example also illustrates how to check for the ``rocm`` variant using
+``self.spec`` and how to retrieve the ``amdgpu_target`` variant's value
+using ``self.spec.variants['amdgpu_target'].value``.
+
+All five packages using ``ROCmPackage`` as of January 2021 also use the
+:ref:`CudaPackage <cudapackage>`. So it is worth looking at those packages
+to get ideas for creating a package that can support both ``cuda`` and
+``rocm``.
diff --git a/lib/spack/docs/build_systems/rpackage.rst b/lib/spack/docs/build_systems/rpackage.rst
index 60c76816c5..a375b5328c 100644
--- a/lib/spack/docs/build_systems/rpackage.rst
+++ b/lib/spack/docs/build_systems/rpackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -79,12 +79,14 @@ Description
The first thing you'll need to add to your new package is a description.
The top of the homepage for ``caret`` lists the following description:
- caret: Classification and Regression Training
+ Classification and Regression Training
Misc functions for training and plotting classification and regression models.
-You can either use the short description (first line), long description
-(second line), or both depending on what you feel is most appropriate.
+The first line is a short description (title) and the second line is a long
+description. In this case the description is only one line but often the
+description is several lines. Spack makes use of both short and long
+descriptions and convention is to use both when creating an R package.
^^^^^^^^
Homepage
@@ -124,6 +126,67 @@ If you only specify the URL for the latest release, your package will
no longer be able to fetch that version as soon as a new release comes
out. To get around this, add the archive directory as a ``list_url``.
+^^^^^^^^^^^^^^^^^^^^^
+Bioconductor packages
+^^^^^^^^^^^^^^^^^^^^^
+
+Bioconductor packages are set up in a similar way to CRAN packages, but there
+are some very important distinctions. Bioconductor packages can be found at:
+https://bioconductor.org/. Bioconductor packages are R packages and so follow
+the same packaging scheme as CRAN packages. What is different is that
+Bioconductor itself is versioned and released. This scheme, using the
+Bioconductor package installer, allows further specification of the minimum
+version of R as well as further restrictions on the dependencies between
+packages than what is possible with the native R packaging system. Spack can
+not replicate these extra features and thus Bioconductor packages in Spack need
+to be managed as a group during updates in order to maintain package
+consistency with Bioconductor itself.
+
+Another key difference is that, while previous versions of packages are
+available, they are not available from a site that can be programmatically set,
+thus a ``list_url`` attribute can not be used. However, each package is also
+available in a git repository, with branches corresponding to each Bioconductor
+release. Thus, it is always possible to retrieve the version of any package
+corresponding to a Bioconductor release simply by fetching the branch that
+corresponds to the Bioconductor release of the package repository. For this
+reason, spack Bioconductor R packages use the git repository, with the commit
+of the respective branch used in the ``version()`` attribute of the package.
+
+^^^^^^^^^^^^^^^^^^^^^^^^
+cran and bioc attributes
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+Much like the ``pypi`` attribute for python packages, due to the fact that R
+packages are obtained from specific repositories, it is possible to set up shortcut
+attributes that can be used to set ``homepage``, ``url``, ``list_url``, and
+``git``. For example, the following ``cran`` attribute:
+
+.. code-block:: python
+
+ cran = 'caret'
+
+is equivalent to:
+
+.. code-block:: python
+
+ homepage = 'https://cloud.r-project.org/package=caret'
+ url = 'https://cloud.r-project.org/src/contrib/caret_6.0-86.tar.gz'
+ list_url = 'https://cloud.r-project.org/src/contrib/Archive/caret'
+
+Likewise, the following ``bioc`` attribute:
+
+.. code-block:: python
+
+ bioc = 'BiocVersion'
+
+is equivalent to:
+
+.. code-block:: python
+
+ homepage = 'https://bioconductor.org/packages/BiocVersion/'
+ git = 'https://git.bioconductor.org/packages/BiocVersion'
+
+
^^^^^^^^^^^^^^^^^^^^^^^^^
Build system dependencies
^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -138,7 +201,6 @@ every R package needs this, the ``RPackage`` base class contains:
.. code-block:: python
extends('r')
- depends_on('r', type=('build', 'run'))
Take a close look at the homepage for ``caret``. If you look at the
@@ -157,7 +219,7 @@ R dependencies
R packages are often small and follow the classic Unix philosophy
of doing one thing well. They are modular and usually depend on
several other packages. You may find a single package with over a
-hundred dependencies. Luckily, CRAN packages are well-documented
+hundred dependencies. Luckily, R packages are well-documented
and list all of their dependencies in the following sections:
* Depends
@@ -298,8 +360,8 @@ like so:
.. code-block:: python
- def configure_args(self, spec, prefix):
- mpi_name = spec['mpi'].name
+ def configure_args(self):
+ mpi_name = self.spec['mpi'].name
# The type of MPI. Supported values are:
# OPENMPI, LAM, MPICH, MPICH2, or CRAY
diff --git a/lib/spack/docs/build_systems/rubypackage.rst b/lib/spack/docs/build_systems/rubypackage.rst
index d1deaf6fa7..226d0bc4a2 100644
--- a/lib/spack/docs/build_systems/rubypackage.rst
+++ b/lib/spack/docs/build_systems/rubypackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -113,7 +113,6 @@ the base class contains:
.. code-block:: python
extends('ruby')
- depends_on('ruby', type=('build', 'run'))
The ``*.gemspec`` file may contain something like:
diff --git a/lib/spack/docs/build_systems/sconspackage.rst b/lib/spack/docs/build_systems/sconspackage.rst
index f29d6c5f45..f1f67b76b4 100644
--- a/lib/spack/docs/build_systems/sconspackage.rst
+++ b/lib/spack/docs/build_systems/sconspackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/build_systems/sippackage.rst b/lib/spack/docs/build_systems/sippackage.rst
index ddf9a26ab9..f72d83ca30 100644
--- a/lib/spack/docs/build_systems/sippackage.rst
+++ b/lib/spack/docs/build_systems/sippackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -93,10 +93,17 @@ in the site-packages directory:
$ python
>>> import setuptools
>>> setuptools.find_packages()
- ['QtPy5']
+ [
+ 'PyQt5', 'PyQt5.QtCore', 'PyQt5.QtGui', 'PyQt5.QtHelp',
+ 'PyQt5.QtMultimedia', 'PyQt5.QtMultimediaWidgets', 'PyQt5.QtNetwork',
+ 'PyQt5.QtOpenGL', 'PyQt5.QtPrintSupport', 'PyQt5.QtQml',
+ 'PyQt5.QtQuick', 'PyQt5.QtSvg', 'PyQt5.QtTest', 'PyQt5.QtWebChannel',
+ 'PyQt5.QtWebSockets', 'PyQt5.QtWidgets', 'PyQt5.QtXml',
+ 'PyQt5.QtXmlPatterns'
+ ]
-Large, complex packages like ``QtPy5`` will return a long list of
+Large, complex packages like ``py-pyqt5`` will return a long list of
packages, while other packages may return an empty list. These packages
only install a single ``foo.py`` file. In Python packaging lingo,
a "package" is a directory containing files like:
@@ -108,21 +115,25 @@ a "package" is a directory containing files like:
foo/baz.py
-whereas a "module" is a single Python file. Since ``find_packages``
-only returns packages, you'll have to determine the correct module
-names yourself. You can now add these packages and modules to the
-package like so:
+whereas a "module" is a single Python file.
+
+The ``SIPPackage`` base class automatically detects these module
+names for you. If, for whatever reason, the module names detected
+are wrong, you can provide the names yourself by overriding
+``import_modules`` like so:
.. code-block:: python
import_modules = ['PyQt5']
-When you run ``spack install --test=root py-pyqt5``, Spack will attempt
-to import the ``PyQt5`` module after installation.
+These tests often catch missing dependencies and non-RPATHed
+libraries. Make sure not to add modules/packages containing the word
+"test", as these likely won't end up in the installation directory,
+or may require test dependencies like pytest to be installed.
-These tests most often catch missing dependencies and non-RPATHed
-libraries.
+These tests can be triggered by running ``spack install --test=root``
+or by running ``spack test run`` after the installation has finished.
^^^^^^^^^^^^^^^^^^^^^^
External documentation
diff --git a/lib/spack/docs/build_systems/wafpackage.rst b/lib/spack/docs/build_systems/wafpackage.rst
index 36fc21a772..1bb879e4f2 100644
--- a/lib/spack/docs/build_systems/wafpackage.rst
+++ b/lib/spack/docs/build_systems/wafpackage.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/chain.rst b/lib/spack/docs/chain.rst
index d84db87ff3..ddebbbeec3 100644
--- a/lib/spack/docs/chain.rst
+++ b/lib/spack/docs/chain.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/conf.py b/lib/spack/docs/conf.py
index e19dd05511..2de12a5a99 100644
--- a/lib/spack/docs/conf.py
+++ b/lib/spack/docs/conf.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -128,7 +128,7 @@ master_doc = 'index'
# General information about the project.
project = u'Spack'
-copyright = u'2013-2019, Lawrence Livermore National Laboratory.'
+copyright = u'2013-2021, Lawrence Livermore National Laboratory.'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
diff --git a/lib/spack/docs/config_yaml.rst b/lib/spack/docs/config_yaml.rst
index bcb41527a9..631b8f6b1b 100644
--- a/lib/spack/docs/config_yaml.rst
+++ b/lib/spack/docs/config_yaml.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -202,21 +202,23 @@ of builds.
Unless overridden in a package or on the command line, Spack builds all
packages in parallel. The default parallelism is equal to the number of
-cores on your machine, up to 16. Parallelism cannot exceed the number of
-cores available on the host. For a build system that uses Makefiles, this
-means running:
+cores available to the process, up to 16 (the default of ``build_jobs``).
+For a build system that uses Makefiles, this ``spack install`` runs:
- ``make -j<build_jobs>``, when ``build_jobs`` is less than the number of
- cores on the machine
+ cores available
- ``make -j<ncores>``, when ``build_jobs`` is greater or equal to the
- number of cores on the machine
+ number of cores available
If you work on a shared login node or have a strict ulimit, it may be
necessary to set the default to a lower value. By setting ``build_jobs``
to 4, for example, commands like ``spack install`` will run ``make -j4``
-instead of hogging every core.
+instead of hogging every core. To build all software in serial,
+set ``build_jobs`` to 1.
-To build all software in serial, set ``build_jobs`` to 1.
+Note that specifying the number of jobs on the command line always takes
+priority, so that ``spack install -j<n>`` always runs `make -j<n>`, even
+when that exceeds the number of cores available.
--------------------
``ccache``
diff --git a/lib/spack/docs/configuration.rst b/lib/spack/docs/configuration.rst
index 41c9de79f9..10b442ab74 100644
--- a/lib/spack/docs/configuration.rst
+++ b/lib/spack/docs/configuration.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -78,6 +78,13 @@ are six configuration scopes. From lowest to highest:
If multiple scopes are listed on the command line, they are ordered
from lowest to highest precedence.
+#. **environment**: When using Spack :ref:`environments`, Spack reads
+ additional configuration from the environment file. See
+ :ref:`environment-configuration` for further details on these
+ scopes. Environment scopes can be referenced from the command line
+ as ``env:name`` (to reference environment ``foo``, use
+ ``env:foo``).
+
#. **command line**: Build settings specified on the command line take
precedence over all other scopes.
@@ -192,10 +199,11 @@ with MPICH. You can create different configuration scopes for use with
Platform-specific Scopes
------------------------
-For each scope above, there can also be platform-specific settings.
-For example, on most platforms, GCC is the preferred compiler.
-However, on macOS (darwin), Clang often works for more packages,
-and is set as the default compiler. This configuration is set in
+For each scope above (excluding environment scopes), there can also be
+platform-specific settings. For example, on most platforms, GCC is
+the preferred compiler. However, on macOS (darwin), Clang often works
+for more packages, and is set as the default compiler. This
+configuration is set in
``$(prefix)/etc/spack/defaults/darwin/packages.yaml``. It will take
precedence over settings in the ``defaults`` scope, but can still be
overridden by settings in ``system``, ``system/darwin``, ``site``,
diff --git a/lib/spack/docs/containers.rst b/lib/spack/docs/containers.rst
index f5bd5602bc..e88b55a226 100644
--- a/lib/spack/docs/containers.rst
+++ b/lib/spack/docs/containers.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -227,7 +227,7 @@ following ``spack.yaml``:
container:
images:
- os: centos/7
+ os: centos:7
spack: 0.15.4
uses ``spack/centos7:0.15.4`` and ``centos:7`` for the stages where the
diff --git a/lib/spack/docs/contribution_guide.rst b/lib/spack/docs/contribution_guide.rst
index 8df8ad65ba..f4527355c4 100644
--- a/lib/spack/docs/contribution_guide.rst
+++ b/lib/spack/docs/contribution_guide.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -179,24 +179,26 @@ how to write tests!
run the unit tests yourself, we suggest you use ``spack unit-test``.
^^^^^^^^^^^^
-Flake8 Tests
+Style Tests
^^^^^^^^^^^^
Spack uses `Flake8 <http://flake8.pycqa.org/en/latest/>`_ to test for
-`PEP 8 <https://www.python.org/dev/peps/pep-0008/>`_ conformance. PEP 8 is
+`PEP 8 <https://www.python.org/dev/peps/pep-0008/>`_ conformance and
+`mypy <https://mypy.readthedocs.io/en/stable/>` for type checking. PEP 8 is
a series of style guides for Python that provide suggestions for everything
from variable naming to indentation. In order to limit the number of PRs that
were mostly style changes, we decided to enforce PEP 8 conformance. Your PR
-needs to comply with PEP 8 in order to be accepted.
+needs to comply with PEP 8 in order to be accepted, and if it modifies the
+spack library it needs to successfully type-check with mypy as well.
-Testing for PEP 8 compliance is easy. Simply run the ``spack flake8``
+Testing for compliance with spack's style is easy. Simply run the ``spack style``
command:
.. code-block:: console
- $ spack flake8
+ $ spack style
-``spack flake8`` has a couple advantages over running ``flake8`` by hand:
+``spack style`` has a couple advantages over running the tools by hand:
#. It only tests files that you have modified since branching off of
``develop``.
@@ -207,7 +209,9 @@ command:
checks. For example, URLs are often longer than 80 characters, so we
exempt them from line length checks. We also exempt lines that start
with "homepage", "url", "version", "variant", "depends_on", and
- "extends" in ``package.py`` files.
+ "extends" in ``package.py`` files. This is now also possible when directly
+ running flake8 if you can use the ``spack`` formatter plugin included with
+ spack.
More approved flake8 exemptions can be found
`here <https://github.com/spack/spack/blob/develop/.flake8>`_.
@@ -240,13 +244,13 @@ However, if you aren't compliant with PEP 8, flake8 will complain:
Most of the error messages are straightforward, but if you don't understand what
they mean, just ask questions about them when you submit your PR. The line numbers
-will change if you add or delete lines, so simply run ``spack flake8`` again
+will change if you add or delete lines, so simply run ``spack style`` again
to update them.
.. tip::
Try fixing flake8 errors in reverse order. This eliminates the need for
- multiple runs of ``spack flake8`` just to re-compute line numbers and
+ multiple runs of ``spack style`` just to re-compute line numbers and
makes it much easier to fix errors directly off of the CI output.
.. warning::
diff --git a/lib/spack/docs/developer_guide.rst b/lib/spack/docs/developer_guide.rst
index b4b8b5d321..7ae6938eda 100644
--- a/lib/spack/docs/developer_guide.rst
+++ b/lib/spack/docs/developer_guide.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -106,11 +106,21 @@ with a high level view of Spack's directory structure:
external/ <- external libs included in Spack distro
llnl/ <- some general-use libraries
- spack/ <- spack module; contains Python code
- cmd/ <- each file in here is a spack subcommand
- compilers/ <- compiler description files
- test/ <- unit test modules
- util/ <- common code
+ spack/ <- spack module; contains Python code
+ analyzers/ <- modules to run analysis on installed packages
+ build_systems/ <- modules for different build systems
+ cmd/ <- each file in here is a spack subcommand
+ compilers/ <- compiler description files
+ container/ <- module for spack containerize
+ hooks/ <- hook modules to run at different points
+ modules/ <- modules for lmod, tcl, etc.
+ operating_systems/ <- operating system modules
+ platforms/ <- different spack platforms
+ reporters/ <- reporters like cdash, junit
+ schema/ <- schemas to validate data structures
+ solver/ <- the spack solver
+ test/ <- unit test modules
+ util/ <- common code
Spack is designed so that it could live within a `standard UNIX
directory hierarchy <http://linux.die.net/man/7/hier>`_, so ``lib``,
@@ -251,6 +261,22 @@ Unit tests
This is a fake package hierarchy used to mock up packages for
Spack's test suite.
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Research and Monitoring Modules
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+:mod:`spack.monitor`
+ Contains :class:`SpackMonitor <spack.monitor.SpackMonitor>`. This is accessed
+ from the ``spack install`` and ``spack analyze`` commands to send build
+ and package metadada up to a `Spack Monitor <https://github.com/spack/spack-monitor>`_ server.
+
+
+:mod:`spack.analyzers`
+ A module folder with a :class:`AnalyzerBase <spack.analyzers.analyzer_base.AnalyzerBase>`
+ that provides base functions to run, save, and (optionally) upload analysis
+ results to a `Spack Monitor <https://github.com/spack/spack-monitor>`_ server.
+
+
^^^^^^^^^^^^^
Other Modules
^^^^^^^^^^^^^
@@ -299,6 +325,235 @@ Conceptually, packages are overloaded. They contain:
Stage objects
-------------
+
+.. _writing-analyzers:
+
+-----------------
+Writing analyzers
+-----------------
+
+To write an analyzer, you should add a new python file to the
+analyzers module directory at ``lib/spack/spack/analyzers`` .
+Your analyzer should be a subclass of the :class:`AnalyzerBase <spack.analyzers.analyzer_base.AnalyzerBase>`. For example, if you want
+to add an analyzer class ``Myanalyzer`` you woul write to
+``spack/analyzers/myanalyzer.py`` and import and
+use the base as follows:
+
+.. code-block:: python
+
+ from .analyzer_base import AnalyzerBase
+
+ class Myanalyzer(AnalyzerBase):
+
+
+Note that the class name is your module file name, all lowercase
+except for the first capital letter. You can look at other analyzers in
+that analyzer directory for examples. The guide here will tell you about the basic functions needed.
+
+^^^^^^^^^^^^^^^^^^^^^^^^^
+Analyzer Output Directory
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+By default, when you run ``spack analyze run`` an analyzer output directory will
+be created in your spack user directory in your ``$HOME``. The reason we output here
+is because the install directory might not always be writable.
+
+.. code-block:: console
+
+ ~/.spack/
+ analyzers
+
+Result files will be written here, organized in subfolders in the same structure
+as the package, with each analyzer owning it's own subfolder. for example:
+
+
+.. code-block:: console
+
+ $ tree ~/.spack/analyzers/
+ /home/spackuser/.spack/analyzers/
+ └── linux-ubuntu20.04-skylake
+ └── gcc-9.3.0
+ └── zlib-1.2.11-sl7m27mzkbejtkrajigj3a3m37ygv4u2
+ ├── environment_variables
+ │   └── spack-analyzer-environment-variables.json
+ ├── install_files
+ │   └── spack-analyzer-install-files.json
+ └── libabigail
+ └── lib
+ └── spack-analyzer-libabigail-libz.so.1.2.11.xml
+
+
+Notice that for the libabigail analyzer, since results are generated per object,
+we honor the object's folder in case there are equivalently named files in
+different folders. The result files are typically written as json so they can be easily read and uploaded in a future interaction with a monitor.
+
+
+^^^^^^^^^^^^^^^^^
+Analyzer Metadata
+^^^^^^^^^^^^^^^^^
+
+Your analyzer is required to have the class attributes ``name``, ``outfile``,
+and ``description``. These are printed to the user with they use the subcommand
+``spack analyze list-analyzers``. Here is an example.
+As we mentioned above, note that this analyzer would live in a module named
+``libabigail.py`` in the analyzers folder so that the class can be discovered.
+
+
+.. code-block:: python
+
+ class Libabigail(AnalyzerBase):
+
+ name = "libabigail"
+ outfile = "spack-analyzer-libabigail.json"
+ description = "Application Binary Interface (ABI) features for objects"
+
+
+This means that the name and output file should be unique for your analyzer.
+Note that "all" cannot be the name of an analyzer, as this key is used to indicate
+that the user wants to run all analyzers.
+
+.. _analyzer_run_function:
+
+
+^^^^^^^^^^^^^^^^^^^^^^^^
+An analyzer run Function
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+The core of an analyzer is its ``run()`` function, which should accept no
+arguments. You can assume your analyzer has the package spec of interest at ``self.spec``
+and it's up to the run function to generate whatever analysis data you need,
+and then return the object with a key as the analyzer name. The result data
+should be a list of objects, each with a name, ``analyzer_name``, ``install_file``,
+and one of ``value`` or ``binary_value``. The install file should be for a relative
+path, and not the absolute path. For example, let's say we extract a metric called
+``metric`` for ``bin/wget`` using our analyzer ``thebest-analyzer``.
+We might have data that looks like this:
+
+.. code-block:: python
+
+ result = {"name": "metric", "analyzer_name": "thebest-analyzer", "value": "1", "install_file": "bin/wget"}
+
+
+We'd then return it as follows - note that they key is the analyzer name at ``self.name``.
+
+.. code-block:: python
+
+ return {self.name: result}
+
+This will save the complete result to the analyzer metadata folder, as described
+previously. If you want support for adding a different kind of metadata (e.g.,
+not associated with an install file) then the monitor server would need to be updated
+to support this first.
+
+
+^^^^^^^^^^^^^^^^^^^^^^^^^
+An analyzer init Function
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+If you don't need any extra dependencies or checks, you can skip defining an analyzer
+init function, as the base class will handle it. Typically, it will accept
+a spec, and an optional output directory (if the user does not want the default
+metadata folder for analyzer results). The analyzer init function should call
+it's parent init, and then do any extra checks or validation that are required to
+work. For example:
+
+.. code-block:: python
+
+ def __init__(self, spec, dirname=None):
+ super(Myanalyzer, self).__init__(spec, dirname)
+
+ # install extra dependencies, do extra preparation and checks here
+
+
+At the end of the init, you will have available to you:
+
+ - **self.spec**: the spec object
+ - **self.dirname**: an optional directory name the user as provided at init to save
+ - **self.output_dir**: the analyzer metadata directory, where we save by default
+ - **self.meta_dir**: the path to the package metadata directory (.spack) if you need it
+
+And can proceed to write your analyzer.
+
+
+^^^^^^^^^^^^^^^^^^^^^^^
+Saving Analyzer Results
+^^^^^^^^^^^^^^^^^^^^^^^
+
+The analyzer will have ``save_result`` called, with the result object generated
+to save it to the filesystem, and if the user has added the ``--monitor`` flag
+to upload it to a monitor server. If your result follows an accepted result
+format and you don't need to parse it further, you don't need to add this
+function to your class. However, if your result data is large or otherwise
+needs additional parsing, you can define it. If you define the function, it
+is useful to know about the ``output_dir`` property, which you can join
+with your output file relative path of choice:
+
+.. code-block:: python
+
+ outfile = os.path.join(self.output_dir, "my-output-file.txt")
+
+
+The directory will be provided by the ``output_dir`` property but it won't exist,
+so you should create it:
+
+
+.. code::block:: python
+
+ # Create the output directory
+ if not os.path.exists(self._output_dir):
+ os.makedirs(self._output_dir)
+
+
+If you are generating results that match to specific files in the package
+install directory, you should try to maintain those paths in the case that
+there are equivalently named files in different directories that would
+overwrite one another. As an example of an analyzer with a custom save,
+the Libabigail analyzer saves ``*.xml`` files to the analyzer metadata
+folder in ``run()``, as they are either binaries, or as xml (text) would
+usually be too big to pass in one request. For this reason, the files
+are saved during ``run()`` and the filenames added to the result object,
+and then when the result object is passed back into ``save_result()``,
+we skip saving to the filesystem, and instead read the file and send
+each one (separately) to the monitor:
+
+
+.. code-block:: python
+
+ def save_result(self, result, monitor=None, overwrite=False):
+ """ABI results are saved to individual files, so each one needs to be
+ read and uploaded. Result here should be the lookup generated in run(),
+ the key is the analyzer name, and each value is the result file.
+ We currently upload the entire xml as text because libabigail can't
+ easily read gzipped xml, but this will be updated when it can.
+ """
+ if not monitor:
+ return
+
+ name = self.spec.package.name
+
+ for obj, filename in result.get(self.name, {}).items():
+
+ # Don't include the prefix
+ rel_path = obj.replace(self.spec.prefix + os.path.sep, "")
+
+ # We've already saved the results to file during run
+ content = spack.monitor.read_file(filename)
+
+ # A result needs an analyzer, value or binary_value, and name
+ data = {"value": content, "install_file": rel_path, "name": "abidw-xml"}
+ tty.info("Sending result for %s %s to monitor." % (name, rel_path))
+ monitor.send_analyze_metadata(self.spec.package, {"libabigail": [data]})
+
+
+
+Notice that this function, if you define it, requires a result object (generated by
+``run()``, a monitor (if you want to send), and a boolean ``overwrite`` to be used
+to check if a result exists first, and not write to it if the result exists and
+overwrite is False. Also notice that since we already saved these files to the analyzer metadata folder, we return early if a monitor isn't defined, because this function serves to send results to the monitor. If you haven't saved anything to the analyzer metadata folder
+yet, you might want to do that here. You should also use ``tty.info`` to give
+the user a message of "Writing result to $DIRNAME."
+
+
.. _writing-commands:
----------------
@@ -345,6 +600,183 @@ Whenever you add/remove/rename a command or flags for an existing command,
make sure to update Spack's `Bash tab completion script
<https://github.com/adamjstewart/spack/blob/develop/share/spack/spack-completion.bash>`_.
+
+-------------
+Writing Hooks
+-------------
+
+A hook is a callback that makes it easy to design functions that run
+for different events. We do this by way of defining hook types, and then
+inserting them at different places in the spack code base. Whenever a hook
+type triggers by way of a function call, we find all the hooks of that type,
+and run them.
+
+Spack defines hooks by way of a module at ``lib/spack/spack/hooks`` where we can define
+types of hooks in the ``__init__.py``, and then python files in that folder
+can use hook functions. The files are automatically parsed, so if you write
+a new file for some integration (e.g., ``lib/spack/spack/hooks/myintegration.py``
+you can then write hook functions in that file that will be automatically detected,
+and run whenever your hook is called. This section will cover the basic kind
+of hooks, and how to write them.
+
+^^^^^^^^^^^^^^
+Types of Hooks
+^^^^^^^^^^^^^^
+
+The following hooks are currently implemented to make it easy for you,
+the developer, to add hooks at different stages of a spack install or similar.
+If there is a hook that you would like and is missing, you can propose to add a new one.
+
+"""""""""""""""""""""
+``pre_install(spec)``
+"""""""""""""""""""""
+
+A ``pre_install`` hook is run within an install subprocess, directly before
+the install starts. It expects a single argument of a spec, and is run in
+a multiprocessing subprocess. Note that if you see ``pre_install`` functions associated with packages these are not hooks
+as we have defined them here, but rather callback functions associated with
+a package install.
+
+
+""""""""""""""""""""""
+``post_install(spec)``
+""""""""""""""""""""""
+
+A ``post_install`` hook is run within an install subprocess, directly after
+the install finishes, but before the build stage is removed. If you
+write one of these hooks, you should expect it to accept a spec as the only
+argument. This is run in a multiprocessing subprocess. This ``post_install`` is
+also seen in packages, but in this context not related to the hooks described
+here.
+
+
+""""""""""""""""""""""""""
+``on_install_start(spec)``
+""""""""""""""""""""""""""
+
+This hook is run at the beginning of ``lib/spack/spack/installer.py``,
+in the install function of a ``PackageInstaller``,
+and importantly is not part of a build process, but before it. This is when
+we have just newly grabbed the task, and are preparing to install. If you
+write a hook of this type, you should provide the spec to it.
+
+.. code-block:: python
+
+ def on_install_start(spec):
+ """On start of an install, we want to...
+ """
+ print('on_install_start')
+
+
+""""""""""""""""""""""""""""
+``on_install_success(spec)``
+""""""""""""""""""""""""""""
+
+This hook is run on a successful install, and is also run inside the build
+process, akin to ``post_install``. The main difference is that this hook
+is run outside of the context of the stage directory, meaning after the
+build stage has been removed and the user is alerted that the install was
+successful. If you need to write a hook that is run on success of a particular
+phase, you should use ``on_phase_success``.
+
+""""""""""""""""""""""""""""
+``on_install_failure(spec)``
+""""""""""""""""""""""""""""
+
+This hook is run given an install failure that happens outside of the build
+subprocess, but somewhere in ``installer.py`` when something else goes wrong.
+If you need to write a hook that is relevant to a failure within a build
+process, you would want to instead use ``on_phase_failure``.
+
+
+"""""""""""""""""""""""""""""""""""""""""""""""
+``on_phase_success(pkg, phase_name, log_file)``
+"""""""""""""""""""""""""""""""""""""""""""""""
+
+This hook is run within the install subprocess, and specifically when a phase
+successfully finishes. Since we are interested in the package, the name of
+the phase, and any output from it, we require:
+
+ - **pkg**: the package variable, which also has the attached spec at ``pkg.spec``
+ - **phase_name**: the name of the phase that was successful (e.g., configure)
+ - **log_file**: the path to the file with output, in case you need to inspect or otherwise interact with it.
+
+"""""""""""""""""""""""""""""""""""""""""""""
+``on_phase_error(pkg, phase_name, log_file)``
+"""""""""""""""""""""""""""""""""""""""""""""
+
+In the case of an error during a phase, we might want to trigger some event
+with a hook, and this is the purpose of this particular hook. Akin to
+``on_phase_success`` we require the same variables - the package that failed,
+the name of the phase, and the log file where we might find errors.
+
+"""""""""""""""""""""""""""""""""
+``on_analyzer_save(pkg, result)``
+"""""""""""""""""""""""""""""""""
+
+After an analyzer has saved some result for a package, this hook is called,
+and it provides the package that we just ran the analysis for, along with
+the loaded result. Typically, a result is structured to have the name
+of the analyzer as key, and the result object that is defined in detail in
+:ref:`analyzer_run_function`.
+
+.. code-block:: python
+
+ def on_analyzer_save(pkg, result):
+ """given a package and a result...
+ """
+ print('Do something extra with a package analysis result here')
+
+
+^^^^^^^^^^^^^^^^^^^^^^
+Adding a New Hook Type
+^^^^^^^^^^^^^^^^^^^^^^
+
+Adding a new hook type is very simple! In ``lib/spack/spack/hooks/__init__.py``
+you can simply create a new ``HookRunner`` that is named to match your new hook.
+For example, let's say you want to add a new hook called ``post_log_write``
+to trigger after anything is written to a logger. You would add it as follows:
+
+.. code-block:: python
+
+ # pre/post install and run by the install subprocess
+ pre_install = HookRunner('pre_install')
+ post_install = HookRunner('post_install')
+
+ # hooks related to logging
+ post_log_write = HookRunner('post_log_write') # <- here is my new hook!
+
+
+You then need to decide what arguments my hook would expect. Since this is
+related to logging, let's say that you want a message and level. That means
+that when you add a python file to the ``lib/spack/spack/hooks``
+folder with one or more callbacks intended to be triggered by this hook. You might
+use my new hook as follows:
+
+.. code-block:: python
+
+ def post_log_write(message, level):
+ """Do something custom with the messsage and level every time we write
+ to the log
+ """
+ print('running post_log_write!')
+
+
+To use the hook, we would call it as follows somewhere in the logic to do logging.
+In this example, we use it outside of a logger that is already defined:
+
+.. code-block:: python
+
+ import spack.hooks
+
+ # We do something here to generate a logger and message
+ spack.hooks.post_log_write(message, logger.level)
+
+
+This is not to say that this would be the best way to implement an integration
+with the logger (you'd probably want to write a custom logger, or you could
+have the hook defined within the logger) but serves as an example of writing a hook.
+
----------
Unit tests
----------
@@ -396,21 +828,43 @@ other Spack modules:
True
>>>
-You can also run a single command:
+If you prefer using an IPython interpreter, given that IPython is installed
+you can specify the interpreter with ``-i``:
+
+.. code-block:: console
+
+ $ spack python -i ipython
+ Python 3.8.3 (default, May 19 2020, 18:47:26)
+ Type 'copyright', 'credits' or 'license' for more information
+ IPython 7.17.0 -- An enhanced Interactive Python. Type '?' for help.
+
+
+ Spack version 0.16.0
+ Python 3.8.3, Linux x86_64
+
+ In [1]:
+
+
+With either interpreter you can run a single command:
.. code-block:: console
$ spack python -c 'import distro; distro.linux_distribution()'
- ('Fedora', '25', 'Workstation Edition')
+ ('Ubuntu', '18.04', 'Bionic Beaver')
+
+ $ spack python -i ipython -c 'import distro; distro.linux_distribution()'
+ Out[1]: ('Ubuntu', '18.04', 'Bionic Beaver')
or a file:
.. code-block:: console
$ spack python ~/test_fetching.py
+ $ spack python -i ipython ~/test_fetching.py
just like you would with the normal ``python`` command.
+
.. _cmd-spack-url:
^^^^^^^^^^^^^
@@ -553,8 +1007,10 @@ develop onto release branches. This is typically done by cherry-picking
bugfix commits off of ``develop``.
To avoid version churn for users of a release series, minor releases
-should **not** make changes that would change the concretization of
+**should not** make changes that would change the concretization of
packages. They should generally only contain fixes to the Spack core.
+However, sometimes priorities are such that new functionality needs to
+be added to a minor release.
Both major and minor releases are tagged. After each release, we merge
the release branch back into ``develop`` so that the version bump and any
@@ -563,50 +1019,51 @@ convenience, we also tag the latest release as ``releases/latest``,
so that users can easily check it out to get the latest
stable version. See :ref:`merging-releases` for more details.
-
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Scheduling work for releases
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
We schedule work for releases by creating `GitHub projects
<https://github.com/spack/spack/projects>`_. At any time, there may be
-several open release projects. For example, here are two releases (from
+several open release projects. For example, below are two releases (from
some past version of the page linked above):
.. image:: images/projects.png
-Here, there's one release in progress for ``0.15.1`` and another for
+This image shows one release in progress for ``0.15.1`` and another for
``0.16.0``. Each of these releases has a project board containing issues
and pull requests. GitHub shows a status bar with completed work in
green, work in progress in purple, and work not started yet in gray, so
it's fairly easy to see progress.
-Spack's project boards are not firm commitments, and we move work between
+Spack's project boards are not firm commitments so we move work between
releases frequently. If we need to make a release and some tasks are not
-yet done, we will simply move them to next minor or major release, rather
+yet done, we will simply move them to the next minor or major release, rather
than delaying the release to complete them.
For more on using GitHub project boards, see `GitHub's documentation
<https://docs.github.com/en/github/managing-your-work-on-github/about-project-boards>`_.
+
.. _major-releases:
^^^^^^^^^^^^^^^^^^^^^
-Making Major Releases
+Making major releases
^^^^^^^^^^^^^^^^^^^^^
-Assuming you've already created a project board and completed the work
-for a major release, the steps to make the release are as follows:
+Assuming a project board has already been created and all required work
+completed, the steps to make the major release are:
#. Create two new project boards:
* One for the next major release
* One for the next point release
-#. Move any tasks that aren't done yet to one of the new project boards.
- Small bugfixes should go to the next point release. Major features,
- refactors, and changes that could affect concretization should go in
- the next major release.
+#. Move any optional tasks that are not done to one of the new project boards.
+
+ In general, small bugfixes should go to the next point release. Major
+ features, refactors, and changes that could affect concretization should
+ go in the next major release.
#. Create a branch for the release, based on ``develop``:
@@ -618,11 +1075,14 @@ for a major release, the steps to make the release are as follows:
``releases/vX.Y``. That is, you should create a ``releases/vX.Y``
branch if you are preparing the ``X.Y.0`` release.
-#. Bump the version in ``lib/spack/spack/__init__.py``. See `this example from 0.13.0
+#. Bump the version in ``lib/spack/spack/__init__.py``.
+
+ See `this example from 0.13.0
<https://github.com/spack/spack/commit/8eeb64096c98b8a43d1c587f13ece743c864fba9>`_
-#. Update ``CHANGELOG.md`` with major highlights in bullet form. Use
- proper markdown formatting, like `this example from 0.15.0
+#. Update ``CHANGELOG.md`` with major highlights in bullet form.
+
+ Use proper markdown formatting, like `this example from 0.15.0
<https://github.com/spack/spack/commit/d4bf70d9882fcfe88507e9cb444331d7dd7ba71c>`_.
#. Push the release branch to GitHub.
@@ -646,33 +1106,33 @@ for a major release, the steps to make the release are as follows:
.. _point-releases:
^^^^^^^^^^^^^^^^^^^^^
-Making Point Releases
+Making point releases
^^^^^^^^^^^^^^^^^^^^^
-This assumes you've already created a project board for a point release
-and completed the work to be done for the release. To make a point
-release:
+Assuming a project board has already been created and all required work
+completed, the steps to make the point release are:
-#. Create one new project board for the next point release.
+#. Create a new project board for the next point release.
-#. Move any cards that aren't done yet to the next project board.
+#. Move any optional tasks that are not done to the next project board.
-#. Check out the release branch (it should already exist). For the
- ``X.Y.Z`` release, the release branch is called ``releases/vX.Y``. For
- ``v0.15.1``, you would check out ``releases/v0.15``:
+#. Check out the release branch (it should already exist).
+
+ For the ``X.Y.Z`` release, the release branch is called ``releases/vX.Y``.
+ For ``v0.15.1``, you would check out ``releases/v0.15``:
.. code-block:: console
$ git checkout releases/v0.15
#. Cherry-pick each pull request in the ``Done`` column of the release
- project onto the release branch.
+ project board onto the release branch.
This is **usually** fairly simple since we squash the commits from the
- vast majority of pull requests, which means there is only one commit
+ vast majority of pull requests. That means there is only one commit
per pull request to cherry-pick. For example, `this pull request
<https://github.com/spack/spack/pull/15777>`_ has three commits, but
- the were squashed into a single commit on merge. You can see the
+ they were squashed into a single commit on merge. You can see the
commit that was created here:
.. image:: images/pr-commit.png
@@ -684,9 +1144,8 @@ release:
$ git cherry-pick 7e46da7
- For pull requests that were rebased, you'll need to cherry-pick each
- rebased commit individually. There have not been any rebased PRs like
- this in recent point releases.
+ For pull requests that were rebased (or not squashed), you'll need to
+ cherry-pick each associated commit individually.
.. warning::
@@ -699,30 +1158,35 @@ release:
cherry-picked all the commits in order. This generally means there
is some other intervening pull request that the one you're trying
to pick depends on. In these cases, you'll need to make a judgment
- call:
+ call regarding those pull requests. Consider the number of affected
+ files and or the resulting differences.
- 1. If the dependency is small, you might just cherry-pick it, too.
- If you do this, add it to the release board.
+ 1. If the dependency changes are small, you might just cherry-pick it,
+ too. If you do this, add the task to the release board.
- 2. If it is large, then you may decide that this fix is not worth
- including in a point release, in which case you should remove it
- from the release project.
+ 2. If the changes are large, then you may decide that this fix is not
+ worth including in a point release, in which case you should remove
+ the task from the release project.
3. You can always decide to manually back-port the fix to the release
branch if neither of the above options makes sense, but this can
require a lot of work. It's seldom the right choice.
-#. Bump the version in ``lib/spack/spack/__init__.py``. See `this example from 0.14.1
+#. Bump the version in ``lib/spack/spack/__init__.py``.
+
+ See `this example from 0.14.1
<https://github.com/spack/spack/commit/ff0abb9838121522321df2a054d18e54b566b44a>`_.
-#. Update ``CHANGELOG.md`` with a list of bugfixes. This is typically just a
- summary of the commits you cherry-picked onto the release branch. See
- `the changelog from 0.14.1
+#. Update ``CHANGELOG.md`` with a list of the changes.
+
+ This is typically a summary of the commits you cherry-picked onto the
+ release branch. See `the changelog from 0.14.1
<https://github.com/spack/spack/commit/ff0abb9838121522321df2a054d18e54b566b44a>`_.
#. Push the release branch to GitHub.
#. Make sure CI passes on the release branch, including:
+
* Regular unit tests
* Build tests
* The E4S pipeline at `gitlab.spack.io <https://gitlab.spack.io>`_
@@ -745,23 +1209,26 @@ release:
Publishing a release on GitHub
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-#. Go to `github.com/spack/spack/releases
- <https://github.com/spack/spack/releases>`_ and click ``Draft a new
- release``. Set the following:
+#. Create the release in GitHub.
+
+ * Go to
+ `github.com/spack/spack/releases <https://github.com/spack/spack/releases>`_
+ and click ``Draft a new release``.
- * ``Tag version`` should start with ``v`` and contain *all three*
- parts of the version, .g. ``v0.15.1``. This is the name of the tag
- that will be created.
+ * Set ``Tag version`` to the name of the tag that will be created.
- * ``Target`` should be the ``releases/vX.Y`` branch (e.g., ``releases/v0.15``).
+ The name should start with ``v`` and contain *all three*
+ parts of the version (e.g. ``v0.15.0`` or ``v0.15.1``).
- * ``Release title`` should be ``vX.Y.Z`` (To match the tag, e.g., ``v0.15.1``).
+ * Set ``Target`` to the ``releases/vX.Y`` branch (e.g., ``releases/v0.15``).
- * For the text, paste the latest release markdown from your ``CHANGELOG.md``.
+ * Set ``Release title`` to ``vX.Y.Z`` to match the tag (e.g., ``v0.15.1``).
- You can save the draft and keep coming back to this as you prepare the release.
+ * Paste the latest release markdown from your ``CHANGELOG.md`` file as the text.
-#. When you are done, click ``Publish release``.
+ * Save the draft so you can keep coming back to it as you prepare the release.
+
+#. When you are ready to finalize the release, click ``Publish release``.
#. Immediately after publishing, go back to
`github.com/spack/spack/releases
@@ -769,22 +1236,26 @@ Publishing a release on GitHub
auto-generated ``.tar.gz`` file for the release. It's the ``Source
code (tar.gz)`` link.
-#. Click ``Edit`` on the release you just did and attach the downloaded
+#. Click ``Edit`` on the release you just made and attach the downloaded
release tarball as a binary. This does two things:
- #. Makes sure that the hash of our releases doesn't change over time.
- GitHub sometimes annoyingly changes they way they generate
- tarballs, and then hashes can change if you rely on the
+ #. Makes sure that the hash of our releases does not change over time.
+
+ GitHub sometimes annoyingly changes the way they generate tarballs
+ that can result in the hashes changing if you rely on the
auto-generated tarball links.
- #. Gets us download counts on releases visible through the GitHub
- API. GitHub tracks downloads of artifacts, but *not* the source
+ #. Gets download counts on releases visible through the GitHub API.
+
+ GitHub tracks downloads of artifacts, but *not* the source
links. See the `releases
page <https://api.github.com/repos/spack/spack/releases>`_ and search
for ``download_count`` to see this.
-#. Go to `readthedocs.org <https://readthedocs.org/projects/spack>`_ and activate
- the release tag. This builds the documentation and makes the released version
+#. Go to `readthedocs.org <https://readthedocs.org/projects/spack>`_ and
+ activate the release tag.
+
+ This builds the documentation and makes the released version
selectable in the versions menu.
@@ -798,23 +1269,23 @@ If the new release is the **highest** Spack release yet, you should
also tag it as ``releases/latest``. For example, suppose the highest
release is currently ``0.15.3``:
- * If you are releasing ``0.15.4`` or ``0.16.0``, then you should tag
- it with ``releases/latest``, as these are higher than ``0.15.3``.
+* If you are releasing ``0.15.4`` or ``0.16.0``, then you should tag
+ it with ``releases/latest``, as these are higher than ``0.15.3``.
- * If you are making a new release of an **older** major version of
- Spack, e.g. ``0.14.4``, then you should not tag it as
- ``releases/latest`` (as there are newer major versions).
+* If you are making a new release of an **older** major version of
+ Spack, e.g. ``0.14.4``, then you should not tag it as
+ ``releases/latest`` (as there are newer major versions).
- To tag ``releases/latest``, do this:
+To tag ``releases/latest``, do this:
- .. code-block:: console
+.. code-block:: console
- $ git checkout releases/vX.Y # vX.Y is the new release's branch
- $ git tag --force releases/latest
- $ git push --tags
+ $ git checkout releases/vX.Y # vX.Y is the new release's branch
+ $ git tag --force releases/latest
+ $ git push --force --tags
- The ``--force`` argument makes ``git`` overwrite the existing
- ``releases/latest`` tag with the new one.
+The ``--force`` argument to ``git tag`` makes ``git`` overwrite the existing
+``releases/latest`` tag with the new one.
We also merge each release that we tag as ``releases/latest`` into ``develop``.
Make sure to do this with a merge commit:
@@ -822,17 +1293,17 @@ Make sure to do this with a merge commit:
.. code-block:: console
$ git checkout develop
- $ git merge --no-ff vX.Y.Z # vX.Y.Z is the new release's tag
+ $ git merge --no-ff -s ours vX.Y.Z # vX.Y.Z is the new release's tag
$ git push
We merge back to ``develop`` because it:
- * updates the version and ``CHANGELOG.md`` on ``develop``.
+ * updates the version and ``CHANGELOG.md`` on ``develop``; and
* ensures that your release tag is reachable from the head of
- ``develop``
+ ``develop``.
-We *must* use a real merge commit (via the ``--no-ff`` option) because it
-ensures that the release tag is reachable from the tip of ``develop``.
+We *must* use a real merge commit (via the ``--no-ff`` option) to
+ensure that the release tag is reachable from the tip of ``develop``.
This is necessary for ``spack -V`` to work properly -- it uses ``git
describe --tags`` to find the last reachable tag in the repository and
reports how far we are from it. For example:
@@ -850,6 +1321,7 @@ the release is complete and tagged. If you do it before you've tagged the
release and later decide you want to tag some later commit, you'll need
to merge again.
+
.. _announcing-releases:
^^^^^^^^^^^^^^^^^^^^
@@ -860,20 +1332,40 @@ We announce releases in all of the major Spack communication channels.
Publishing the release takes care of GitHub. The remaining channels are
Twitter, Slack, and the mailing list. Here are the steps:
-#. Make a tweet to announce the release. It should link to the release's
- page on GitHub. You can base it on `this example tweet
- <https://twitter.com/spackpm/status/1231761858182307840>`_.
+#. Announce the release on Twitter.
+
+ * Compose the tweet on the ``@spackpm`` account per the
+ ``spack-twitter`` slack channel.
+
+ * Be sure to include a link to the release's page on GitHub.
+
+ You can base the tweet on `this
+ example <https://twitter.com/spackpm/status/1231761858182307840>`_.
+
+#. Announce the release on Slack.
+
+ * Compose a message in the ``#general`` Slack channel
+ (`spackpm.slack.com <https://spackpm.slack.com>`_).
+
+ * Preface the message with ``@channel`` to notify even those
+ people not currently logged in.
+
+ * Be sure to include a link to the tweet above.
+
+ The tweet will be shown inline so that you do not have to retype
+ your release announcement.
+
+#. Announce the release on the Spack mailing list.
+
+ * Compose an email to the Spack mailing list.
+
+ * Be sure to include a link to the release's page on GitHub.
-#. Ping ``@channel`` in ``#general`` on Slack (`spackpm.slack.com
- <https://spackpm.slack.com>`_) with a link to the tweet. The tweet
- will be shown inline so that you do not have to retype your release
- announcement.
+ * It is also helpful to include some information directly in the
+ email.
-#. Email the Spack mailing list to let them know about the release. As
- with the tweet, you likely want to link to the release's page on
- GitHub. It's also helpful to include some information directly in the
- email. You can base yours on this `example email
- <https://groups.google.com/forum/#!topic/spack/WT4CT9i_X4s>`_.
+ You can base your announcement on this `example
+ email <https://groups.google.com/forum/#!topic/spack/WT4CT9i_X4s>`_.
-Once you've announced the release, congratulations, you're done! You've
-finished making the release!
+Once you've completed the above steps, congratulations, you're done!
+You've finished making the release!
diff --git a/lib/spack/docs/environments.rst b/lib/spack/docs/environments.rst
index 1710ec6b5a..12f6f4121c 100644
--- a/lib/spack/docs/environments.rst
+++ b/lib/spack/docs/environments.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -248,9 +248,9 @@ Users can add abstract specs to an Environment using the ``spack add``
command. The most important component of an Environment is a list of
abstract specs.
-Adding a spec adds to the manifest (the ``spack.yaml`` file) and to
-the roots of the Environment, but does not affect the concrete specs
-in the lockfile, nor does it install the spec.
+Adding a spec adds to the manifest (the ``spack.yaml`` file), which is
+used to define the roots of the Environment, but does not affect the
+concrete specs in the lockfile, nor does it install the spec.
The ``spack add`` command is environment aware. It adds to the
currently active environment. All environment aware commands can also
@@ -356,6 +356,18 @@ command also stores a Spack repo containing the ``package.py`` file
used at install time for each package in the ``repos/`` directory in
the Environment.
+The ``--no-add`` option can be used in a concrete environment to tell
+spack to install specs already present in the environment but not to
+add any new root specs to the environment. For root specs provided
+to ``spack install`` on the command line, ``--no-add`` is the default,
+while for dependency specs on the other hand, it is optional. In other
+words, if there is an unambiguous match in the active concrete environment
+for a root spec provided to ``spack install`` on the command line, spack
+does not require you to specify the ``--no-add` option to prevent the spec
+from being added again. At the same time, a spec that already exists in the
+environment, but only as a dependency, will be added to the environment as a
+root spec without the ``--no-add`` option.
+
^^^^^^^
Loading
^^^^^^^
@@ -399,6 +411,12 @@ There are two ways to include configuration information in a Spack Environment:
#. Included in the ``spack.yaml`` file from another file.
+Many Spack commands also affect configuration information in files
+automatically. Those commands take a ``--scope`` argument, and the
+environment can be specified by ``env:NAME`` (to affect environment
+``foo``, set ``--scope env:foo``). These commands will automatically
+manipulate configuration inline in the ``spack.yaml`` file.
+
"""""""""""""""""""""
Inline configurations
"""""""""""""""""""""
@@ -441,8 +459,8 @@ Environments can include files with either relative or absolute
paths. Inline configurations take precedence over included
configurations, so you don't have to change shared configuration files
to make small changes to an individual Environment. Included configs
-listed later will have higher precedence, as the included configs are
-applied in order.
+listed earlier will have higher precedence, as the included configs are
+applied in reverse order.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Manually Editing the Specs List
diff --git a/lib/spack/docs/extensions.rst b/lib/spack/docs/extensions.rst
index 15c59c76ef..b0cb38d00b 100644
--- a/lib/spack/docs/extensions.rst
+++ b/lib/spack/docs/extensions.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/features.rst b/lib/spack/docs/features.rst
index df212c11fc..7edfba01cc 100644
--- a/lib/spack/docs/features.rst
+++ b/lib/spack/docs/features.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/getting_started.rst b/lib/spack/docs/getting_started.rst
index 09cc2c488a..805149af90 100644
--- a/lib/spack/docs/getting_started.rst
+++ b/lib/spack/docs/getting_started.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,7 +19,7 @@ before Spack is run:
#. Python 2 (2.6 or 2.7) or 3 (3.5 - 3.9) to run Spack
#. A C/C++ compiler for building
#. The ``make`` executable for building
-#. The ``tar``, ``gzip``, ``bzip2``, ``xz`` and optionally ``zstd``
+#. The ``tar``, ``gzip``, ``unzip``, ``bzip2``, ``xz`` and optionally ``zstd``
executables for extracting source code
#. The ``patch`` command to apply patches
#. The ``git`` and ``curl`` commands for fetching
@@ -75,6 +75,14 @@ shell integration for :ref:`certain commands <packaging-shell-support>`,
If you do not want to use Spack's shell support, you can always just run
the ``spack`` command directly from ``spack/bin/spack``.
+When the ``spack`` command is executed it searches for an appropriate
+Python interpreter to use, which can be explicitly overridden by setting
+the ``SPACK_PYTHON`` environment variable. When sourcing the appropriate shell
+setup script, ``SPACK_PYTHON`` will be set to the interpreter found at
+sourcing time, ensuring future invocations of the ``spack`` command will
+continue to use the same consistent python version regardless of changes in
+the environment.
+
^^^^^^^^^^^^^^^^^^
Check Installation
diff --git a/lib/spack/docs/index.rst b/lib/spack/docs/index.rst
index 39fee81387..fb9c669c12 100644
--- a/lib/spack/docs/index.rst
+++ b/lib/spack/docs/index.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -67,6 +67,7 @@ or refer to the full manual below.
build_settings
environments
containers
+ monitoring
mirrors
module_file_support
repositories
@@ -79,6 +80,12 @@ or refer to the full manual below.
.. toctree::
:maxdepth: 2
+ :caption: Research
+
+ analyze
+
+.. toctree::
+ :maxdepth: 2
:caption: Contributing
contribution_guide
diff --git a/lib/spack/docs/known_issues.rst b/lib/spack/docs/known_issues.rst
index accec2422b..b9c4dd088f 100644
--- a/lib/spack/docs/known_issues.rst
+++ b/lib/spack/docs/known_issues.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/mirrors.rst b/lib/spack/docs/mirrors.rst
index 5268c87067..83d4fd9512 100644
--- a/lib/spack/docs/mirrors.rst
+++ b/lib/spack/docs/mirrors.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -159,6 +159,27 @@ can supply a file with specs in it, one per line:
This is useful if there is a specific suite of software managed by
your site.
+^^^^^^^^^^^^^^^^^^
+Mirror environment
+^^^^^^^^^^^^^^^^^^
+
+To create a mirror of all packages required by a concerte environment, activate the environment and call ``spack mirror create -a``.
+This is especially useful to create a mirror of an environment concretized on another machine.
+
+.. code-block:: console
+
+ [remote] $ spack env create myenv
+ [remote] $ spack env activate myenv
+ [remote] $ spack add ...
+ [remote] $ spack concretize
+
+ $ sftp remote:/spack/var/environment/myenv/spack.lock
+ $ spack env create myenv spack.lock
+ $ spack env activate myenv
+ $ spack mirror create -a
+
+
+
.. _cmd-spack-mirror-add:
--------------------
diff --git a/lib/spack/docs/module_file_support.rst b/lib/spack/docs/module_file_support.rst
index 721b18d5fc..d46ec3143d 100644
--- a/lib/spack/docs/module_file_support.rst
+++ b/lib/spack/docs/module_file_support.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -130,9 +130,8 @@ list of environment modifications.
to the corresponding environment variables:
================== =================================
- LIBRARY_PATH ``self.prefix/rlib/R/lib``
LD_LIBRARY_PATH ``self.prefix/rlib/R/lib``
- CPATH ``self.prefix/rlib/R/include``
+ PKG_CONFIG_PATH ``self.prefix/rlib/pkgconfig``
================== =================================
with the following snippet:
diff --git a/lib/spack/docs/monitoring.rst b/lib/spack/docs/monitoring.rst
new file mode 100644
index 0000000000..b1d491c563
--- /dev/null
+++ b/lib/spack/docs/monitoring.rst
@@ -0,0 +1,104 @@
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+ Spack Project Developers. See the top-level COPYRIGHT file for details.
+
+ SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+.. _monitoring:
+
+==========
+Monitoring
+==========
+
+You can use a `spack monitor <https://github.com/spack/spack-monitor>`_ "Spackmon"
+server to store a database of your packages, builds, and associated metadata
+for provenance, research, or some other kind of development. You should
+follow the instructions in the `spack monitor documentation <https://spack-monitor.readthedocs.org>`_
+to first create a server along with a username and token for yourself.
+You can then use this guide to interact with the server.
+
+-------------------
+Analysis Monitoring
+-------------------
+
+To read about how to monitor an analysis (meaning you want to send analysis results
+to a server) see :ref:`analyze_monitoring`.
+
+---------------------
+Monitoring An Install
+---------------------
+
+Since an install is typically when you build packages, we logically want
+to tell spack to monitor during this step. Let's start with an example
+where we want to monitor the install of hdf5. Unless you have disabled authentication
+for the server, we first want to export our spack monitor token and username to the environment:
+
+.. code-block:: console
+
+ $ export SPACKMON_TOKEN=50445263afd8f67e59bd79bff597836ee6c05438
+ $ export SPACKMON_USER=spacky
+
+
+By default, the host for your server is expected to be at ``http://127.0.0.1``
+with a prefix of ``ms1``, and if this is the case, you can simply add the
+``--monitor`` flag to the install command:
+
+.. code-block:: console
+
+ $ spack install --monitor hdf5
+
+
+If you need to customize the host or the prefix, you can do that as well:
+
+.. code-block:: console
+
+ $ spack install --monitor --monitor-prefix monitor --monitor-host https://monitor-service.io hdf5
+
+
+As a precaution, we cut out early in the spack client if you have not provided
+authentication credentials. For example, if you run the command above without
+exporting your username or token, you'll see:
+
+.. code-block:: console
+
+ ==> Error: You are required to export SPACKMON_TOKEN and SPACKMON_USER
+
+This extra check is to ensure that we don't start any builds,
+and then discover that you forgot to export your token. However, if
+your monitoring server has authentication disabled, you can tell this to
+the client to skip this step:
+
+.. code-block:: console
+
+ $ spack install --monitor --monitor-disable-auth hdf5
+
+If the service is not running, you'll cleanly exit early - the install will
+not continue if you've asked it to monitor and there is no service.
+For example, here is what you'll see if the monitoring service is not running:
+
+.. code-block:: console
+
+ [Errno 111] Connection refused
+
+
+If you want to continue builds (and stop monitoring) you can set the ``--monitor-keep-going``
+flag.
+
+.. code-block:: console
+
+ $ spack install --monitor --monitor-keep-going hdf5
+
+This could mean that if a request fails, you only have partial or no data
+added to your monitoring database. This setting will not be applied to the
+first request to check if the server is running, but to subsequent requests.
+If you don't have a monitor server running and you want to build, simply
+don't provide the ``--monitor`` flag! Finally, if you want to provide one or
+more tags to your build, you can do:
+
+.. code-block:: console
+
+ # Add one tag, "pizza"
+ $ spack install --monitor --monitor-tags pizza hdf5
+
+ # Add two tags, "pizza" and "pasta"
+ $ spack install --monitor --monitor-tags pizza,pasta hdf5
+
diff --git a/lib/spack/docs/package_list.rst b/lib/spack/docs/package_list.rst
index 67f78e202d..b0607edb86 100644
--- a/lib/spack/docs/package_list.rst
+++ b/lib/spack/docs/package_list.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/packaging_guide.rst b/lib/spack/docs/packaging_guide.rst
index ec83679a47..5d00a64fac 100644
--- a/lib/spack/docs/packaging_guide.rst
+++ b/lib/spack/docs/packaging_guide.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -612,6 +612,62 @@ it executable, then runs it with some arguments.
installer = Executable(self.stage.archive_file)
installer('--prefix=%s' % prefix, 'arg1', 'arg2', 'etc.')
+
+^^^^^^^^^^^^^^^^^^^^^^^^
+Deprecating old versions
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+There are many reasons to remove old versions of software:
+
+#. Security vulnerabilities (most serious reason)
+#. Changing build systems that increase package complexity
+#. Changing dependencies/patches/resources/flags that increase package complexity
+#. Maintainer/developer inability/unwillingness to support old versions
+#. No longer available for download (right to be forgotten)
+#. Package or version rename
+
+At the same time, there are many reasons to keep old versions of software:
+
+#. Reproducibility
+#. Requirements for older packages (e.g. some packages still rely on Qt 3)
+
+In general, you should not remove old versions from a ``package.py``. Instead,
+you should first deprecate them using the following syntax:
+
+.. code-block:: python
+
+ version('1.2.3', sha256='...', deprecated=True)
+
+
+This has two effects. First, ``spack info`` will no longer advertise that
+version. Second, commands like ``spack install`` that fetch the package will
+require user approval:
+
+.. code-block:: console
+
+ $ spack install openssl@1.0.1e
+ ==> Warning: openssl@1.0.1e is deprecated and may be removed in a future Spack release.
+ ==> Fetch anyway? [y/N]
+
+
+If you use ``spack install --deprecated``, this check can be skipped.
+
+This also applies to package recipes that are renamed or removed. You should
+first deprecate all versions before removing a package. If you need to rename
+it, you can deprecate the old package and create a new package at the same
+time.
+
+Version deprecations should always last at least one Spack minor release cycle
+before the version is completely removed. For example, if a version is
+deprecated in Spack 0.16.0, it should not be removed until Spack 0.17.0. No
+version should be removed without such a deprecation process. This gives users
+a chance to complain about the deprecation in case the old version is needed
+for some application. If you require a deprecated version of a package, simply
+submit a PR to remove ``deprecated=True`` from the package. However, you may be
+asked to help maintain this version of the package if the current maintainers
+are unwilling to support this older version.
+
+
^^^^^^^^^^^^^^^^
Download caching
^^^^^^^^^^^^^^^^
@@ -1150,7 +1206,7 @@ Variants
Many software packages can be configured to enable optional
features, which often come at the expense of additional dependencies or
-longer build-times. To be flexible enough and support a wide variety of
+longer build times. To be flexible enough and support a wide variety of
use cases, Spack permits to expose to the end-user the ability to choose
which features should be activated in a package at the time it is installed.
The mechanism to be employed is the :py:func:`spack.directives.variant` directive.
@@ -1864,14 +1920,21 @@ of ``mpich`` using the following command:
$ srun -N 2 -n 8 spack install -j 4 mpich@3.3.2
-This will create eight concurrent four-job installation on two different
+This will create eight concurrent, four-job installs on two different
nodes.
+Alternatively, you could run the same installs on one node by entering
+the following at the command line of a bash shell:
+
+.. code-block:: console
+
+ $ for i in {1..12}; do nohup spack install -j 4 mpich@3.3.2 >> mpich_install.txt 2>&1 &; done
+
.. note::
- The effective parallelism will be based on the maximum number of
- packages that can be installed at the same time, which will limited
- by the number of packages with no (remaining) uninstalled dependencies.
+ The effective parallelism is based on the maximum number of packages
+ that can be installed at the same time, which is limited by the
+ number of packages with no (remaining) uninstalled dependencies.
.. _dependencies:
@@ -2737,12 +2800,14 @@ The classes that are currently provided by Spack are:
| | built using CMake |
+-------------------------------+----------------------------------+
| :py:class:`.CudaPackage` | A helper class for packages that |
- | | use CUDA. It is intended to be |
- | | used in combination with others |
+ | | use CUDA |
+-------------------------------+----------------------------------+
| :py:class:`.QMakePackage` | Specialized class for packages |
| | build using QMake |
+-------------------------------+----------------------------------+
+ | :py:class:`.ROCmPackage` | A helper class for packages that |
+ | | use ROCm |
+ +-------------------------------+----------------------------------+
| :py:class:`.SConsPackage` | Specialized class for packages |
| | built using SCons |
+-------------------------------+----------------------------------+
@@ -3846,219 +3911,851 @@ using MPI wrappers will work, even on even on a Cray:
This is because on Cray, ``spec['mpi'].mpicc`` is just ``spack_cc``.
-.. _sanity-checks:
+.. _checking_an_installation:
------------------------
Checking an installation
------------------------
-By default, Spack assumes that a build has failed if nothing is
-written to the install prefix, and that it has succeeded if anything
-(a file, a directory, etc.) is written to the install prefix after
-``install()`` completes.
+A package that *appears* to install successfully does not mean
+it is actually installed correctly or will continue to work indefinitely.
+There are a number of possible points of failure so Spack provides
+features for checking the software along the way.
+
+Failures can occur during and after the installation process. The
+build may start but the software not end up fully installed. The
+installed software may not work at all or as expected. The software
+may work after being installed but, due to changes on the system,
+may stop working days, weeks, or months after being installed.
+
+This section describes Spack's support for checks that can be performed
+during and after its installation. The former checks are referred to as
+``build-time tests`` and the latter as ``stand-alone (or smoke) tests``.
+
+.. _build_time-tests:
+
+^^^^^^^^^^^^^^^^
+Build-time tests
+^^^^^^^^^^^^^^^^
+
+Spack infers the status of a build based on the contents of the install
+prefix. Success is assumed if anything (e.g., a file, directory) is
+written after ``install()`` completes. Otherwise, the build is assumed
+to have failed. However, the presence of install prefix contents
+is not a sufficient indicator of success.
-Consider a simple autotools build like this:
+Consider a simple autotools build using the following commands:
+
+.. code-block:: console
+
+ $ ./configure --prefix=/path/to/installation/prefix
+ $ make
+ $ make install
+
+Standard Autotools and CMake do not write anything to the prefix from
+the ``configure`` and ``make`` commands. Files are only written from
+the ``make install`` after the build completes.
+
+.. note::
+
+ If you want to learn more about ``Autotools`` and ``CMake`` packages
+ in Spack, refer to :ref:`AutotoolsPackage <autotoolspackage>` and
+ :ref:`CMakePackage <cmakepackage>`, respectively.
+
+What can you do to check that the build is progressing satisfactorily?
+If there are specific files and or directories expected of a successful
+installation, you can add basic, fast ``sanity checks``. You can also add
+checks to be performed after one or more installation phases.
+
+.. _sanity-checks:
+
+""""""""""""""""""""
+Adding sanity checks
+""""""""""""""""""""
+
+Unfortunately, many builds of scientific software modify the installation
+prefix **before** ``make install``. Builds like this can falsely report
+success when an error occurs before the installation is complete. Simple
+sanity checks can be used to identify files and or directories that are
+required of a successful installation. Spack checks for the presence of
+the files and directories after ``install()`` runs.
+
+If any of the listed files or directories are missing, then the build will
+fail and the install prefix will be removed. If they all exist, then Spack
+considers the build successful from a sanity check perspective and keeps
+the prefix in place.
+
+For example, the sanity checks for the ``reframe`` package below specify
+that eight paths must exist within the installation prefix after the
+``install`` method completes.
.. code-block:: python
- def install(self, spec, prefix):
- configure("--prefix={0}".format(prefix))
- make()
- make("install")
+ class Reframe(Package):
+ ...
+
+ # sanity check
+ sanity_check_is_file = [join_path('bin', 'reframe')]
+ sanity_check_is_dir = ['bin', 'config', 'docs', 'reframe', 'tutorials',
+ 'unittests', 'cscs-checks']
-If you are using using standard autotools or CMake, ``configure`` and
-``make`` will not write anything to the install prefix. Only ``make
-install`` writes the files, and only once the build is already
-complete.
+Spack will then ensure the installation created the **file**:
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-``sanity_check_is_file`` and ``sanity_check_is_dir``
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+* ``self.prefix/bin/reframe``
-Unfortunately, many builds of scientific
-software modify the install prefix *before* ``make install``. Builds
-like this can falsely report that they were successfully installed if
-an error occurs before the install is complete but after files have
-been written to the ``prefix``.
+It will also check for the existence of the following **directories**:
-You can optionally specify *sanity checks* to deal with this problem.
-Add properties like this to your package:
+* ``self.prefix/bin``
+* ``self.prefix/config``
+* ``self.prefix/docs``
+* ``self.prefix/reframe``
+* ``self.prefix/tutorials``
+* ``self.prefix/unittests``
+* ``self.prefix/cscs-checks``
+
+.. note::
+
+ You **MUST** use ``sanity_check_is_file`` to specify required
+ files and ``sanity_check_is_dir`` for required directories.
+
+.. _install_phase-tests:
+
+"""""""""""""""""""""""""""""""
+Adding installation phase tests
+"""""""""""""""""""""""""""""""
+
+Sometimes packages appear to build "correctly" only to have run-time
+behavior issues discovered at a later stage, such as after a full
+software stack relying on them has been built. Checks can be performed
+at different phases of the package installation to possibly avoid
+these types of problems. Some checks are built-in to different build
+systems, while others will need to be added to the package.
+
+Built-in installation phase tests are provided by packages inheriting
+from select :ref:`build systems <build-systems>`, where naming conventions
+are used to identify typical test identifiers for those systems. In
+general, you won't need to add anything to your package to take advantage
+of these tests if your software's build system complies with the convention;
+otherwise, you'll want or need to override the post-phase method to perform
+other checks.
+
+.. list-table:: Built-in installation phase tests
+ :header-rows: 1
+
+ * - Build System Class
+ - Post-Build Phase Method (Runs)
+ - Post-Install Phase Method (Runs)
+ * - `AutotoolsPackage <build_systems/autotoolspackage>`
+ - ``check`` (``make test``, ``make check``)
+ - ``installcheck`` (``make installcheck``)
+ * - `CMakePackage <build_systems/cmakepackage>`
+ - ``check`` (``make check``, ``make test``)
+ - Not applicable
+ * - `MakefilePackage <build_systems/makefilepackage>`
+ - ``check`` (``make test``, ``make check``)
+ - ``installcheck`` (``make installcheck``)
+ * - `MesonPackage <build_systems/mesonpackage>`
+ - ``check`` (``make test``, ``make check``)
+ - Not applicable
+ * - `PerlPackage <build_systems/perlpackage>`
+ - ``check`` (``make test``)
+ - Not applicable
+ * - `PythonPackage <build_systems/pythonpackage>`
+ - Not applicable
+ - ``test`` (module imports)
+ * - `QMakePackage <build_systems/qmakepackage>`
+ - ``check`` (``make check``)
+ - Not applicable
+ * - `SConsPackage <build_systems/sconspackage>`
+ - ``build_test`` (must be overridden)
+ - Not applicable
+ * - `SIPPackage <build_systems/sippackage>`
+ - Not applicable
+ - ``test`` (module imports)
+
+For example, the ``Libelf`` package inherits from ``AutotoolsPackage``
+and its ``Makefile`` has a standard ``check`` target. So Spack will
+automatically run ``make check`` after the ``build`` phase when it
+is installed using the ``--test`` option, such as:
+
+.. code-block:: console
+
+ $ spack install --test=root libelf
+
+In addition to overriding any built-in build system installation
+phase tests, you can write your own install phase tests. You will
+need to use two decorators for each phase test method:
+
+* ``run_after``
+* ``on_package_attributes``
+
+The first decorator tells Spack when in the installation process to
+run your test method installation process; namely *after* the provided
+installation phase. The second decorator tells Spack to only run the
+checks when the ``--test`` option is provided on the command line.
+
+.. note::
+
+ Be sure to place the directives above your test method in the order
+ ``run_after`` *then* ``on_package_attributes``.
+
+.. note::
+
+ You also want to be sure the package supports the phase you use
+ in the ``run_after`` directive. For example, ``PackageBase`` only
+ supports the ``install`` phase while the ``AutotoolsPackage`` and
+ ``MakefilePackage`` support both ``install`` and ``build`` phases.
+
+Assuming both ``build`` and ``install`` phases are available to you,
+you could add additional checks to be performed after each of those
+phases based on the skeleton provided below.
+
+.. code-block:: python
+
+ class YourMakefilePackage(MakefilePackage):
+ ...
+
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def check_build(self):
+ # Add your custom post-build phase tests
+ pass
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_install(self):
+ # Add your custom post-install phase tests
+ pass
+
+.. note::
+
+ You could also schedule work to be done **before** a given phase
+ using the ``run_before`` decorator.
+
+By way of a concrete example, the ``reframe`` package mentioned
+previously has a simple installation phase check that runs the
+installed executable. The check is implemented as follows:
+
+.. code-block:: python
+
+ class Reframe(Package):
+ ...
+
+ # check if we can run reframe
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_list(self):
+ with working_dir(self.stage.source_path):
+ reframe = Executable(join_path(self.prefix, 'bin', 'reframe'))
+ reframe('-l')
+
+.. warning::
+
+ The API for adding tests is not yet considered stable and may change
+ in future releases.
+
+.. _cmd-spack-test:
+
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Stand-alone (or smoke) tests
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+While build-time tests are integrated with the installation process,
+stand-alone tests are independent of that process. Consequently, such
+tests can be performed days, even weeks, after the software is installed.
+
+Stand-alone tests are checks that should run relatively quickly -- as
+in on the order of at most a few minutes -- and ideally execute all
+aspects of the installed software, or at least key functionality.
+
+.. note::
+
+ Execution speed is important because these tests are intended
+ to quickly assess whether the installed software works on the
+ system.
+
+ Failing stand-alone tests indicate that there is no reason to
+ proceed with more resource-intensive tests.
+
+ Passing stand-alone (or smoke) tests can lead to more thorough
+ testing, such as extensive unit or regression tests, or tests
+ that run at scale. Spack support for more thorough testing is
+ a work in progress.
+
+Stand-alone tests have their own test stage directory, which can be
+configured. These tests can compile or build software with the compiler
+used to build the package. They can use files cached from the build for
+testing the installation. Custom files, such as source, data, or expected
+outputs can be added for use in these tests.
+
+""""""""""""""""""""""""""""""""""""
+Configuring the test stage directory
+""""""""""""""""""""""""""""""""""""
+
+Stand-alone tests rely on a stage directory for building, running,
+and tracking results.
+The default directory, ``~/.spack/test``, is defined in
+:ref:`etc/spack/defaults/config.yaml <config-yaml>`.
+You can configure the location in the high-level ``config`` by adding
+or changing the ``test_stage`` path in the appropriate ``config.yaml``
+file such that:
+
+.. code-block:: yaml
+
+ config:
+ test_stage: /path/to/stage
+
+The package can access this path **during test processing** using
+`self.test_suite.stage`.
+
+.. note::
+
+ The test stage path is established for the entire suite. That
+ means it is the root directory for all specs being installed
+ with the same `spack test run` command. Each spec gets its
+ own stage subdirectory.
+
+"""""""""""""""""""""""""
+Enabling test compilation
+"""""""""""""""""""""""""
+
+Some stand-alone tests will require access to the compiler with which
+the package was built, especially for library-only packages. You must
+enable loading the package's compiler configuration by setting the
+``test_requires_compiler`` property to ``True`` for your package.
+For example:
.. code-block:: python
class MyPackage(Package):
...
- sanity_check_is_file = ['include/libelf.h']
- sanity_check_is_dir = [lib]
+ test_requires_compiler = True
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
+Setting this property to ``True`` makes the compiler available in the
+test environment through the canonical environment variables (e.g.,
+``CC``, ``CXX``, ``FC``, ``F77``).
-Now, after ``install()`` runs, Spack will check whether
-``$prefix/include/libelf.h`` exists and is a file, and whether
-``$prefix/lib`` exists and is a directory. If the checks fail, then
-the build will fail and the install prefix will be removed. If they
-succeed, Spack considers the build successful and keeps the prefix in
-place.
+.. note::
-^^^^^^^^^^^^^^^^
-Build-time tests
-^^^^^^^^^^^^^^^^
+ We recommend adding the property at the top of the package with the
+ other attributes, such as ``homepage`` and ``url``.
+
+.. _cache_extra_test_sources:
+
+"""""""""""""""""""""""
+Adding build-time files
+"""""""""""""""""""""""
+
+.. note::
-Sometimes packages finish to build "correctly" and issues with their run-time
-behavior are discovered only at a later stage, maybe after a full software stack
-relying on them has already been built. To avoid situations of that kind it's possible
-to write build-time tests that will be executed only if the option ``--run-tests``
-of ``spack install`` has been activated.
+ We highly recommend re-using build-time tests and input files
+ for testing installed software. These files are easier to keep
+ synchronized since they reside within the software's repository
+ than maintaining custom install test files with the Spack package.
-The proper way to write these tests is relying on two decorators that come with
-any base class listed in :ref:`installation_procedure`.
+You can use the ``cache_extra_test_sources`` method to copy directories
+and or files from the build stage directory to the package's installation
+directory.
+
+The signature for ``cache_extra_test_sources`` is:
.. code-block:: python
- @run_after('build')
- @on_package_attributes(run_tests=True)
- def check_build(self):
- # Custom implementation goes here
- pass
+ def cache_extra_test_sources(self, srcs):
+
+where ``srcs`` is a string or a list of strings corresponding to
+the paths for the files and or subdirectories, relative to the staged
+source, that are to be copied to the corresponding path relative to
+``self.install_test_root``. All of the contents within each subdirectory
+will be also be copied.
-The first decorator ``run_after('build')`` schedules this
-function to be invoked after the ``build`` phase has been executed, while the
-second one makes the invocation conditional on the fact that ``self.run_tests == True``.
-It is also possible to schedule a function to be invoked *before* a given phase
-using the ``run_before`` decorator.
+For example, a package method for copying everything in the ``tests``
+subdirectory plus the ``foo.c`` and ``bar.c`` files from ``examples``
+can be implemented as shown below.
.. note::
- Default implementations for build-time tests
+ The ``run_after`` directive ensures associated files are copied
+ **after** the package is installed by the build process.
- Packages that are built using specific build systems may already have a
- default implementation for build-time tests. For instance :py:class:`~.AutotoolsPackage`
- based packages will try to invoke ``make test`` and ``make check`` if
- Spack is asked to run tests.
- More information on each class is available in the the :py:mod:`~.spack.build_systems`
- documentation.
+.. code-block:: python
-.. warning::
+ class MyPackage(Package):
+ ...
- The API for adding tests is not yet considered stable and may change drastically in future releases.
+ @run_after('install')
+ def copy_test_sources(self):
+ srcs = ['tests',
+ join_path('examples', 'foo.c'),
+ join_path('examples', 'bar.c')]
+ self.cache_extra_test_sources(srcs)
-.. _file-manipulation:
+In this case, the method copies the associated files from the build
+stage **after** the software is installed to the package's metadata
+directory. The result is the following directory and files will be
+available for use in stand-alone tests:
-^^^^^^^^^^^^^
-Install Tests
-^^^^^^^^^^^^^
+* ``join_path(self.install_test_root, 'tests')`` along with its files and subdirectories
+* ``join_path(self.install_test_root, 'examples', 'foo.c')``
+* ``join_path(self.install_test_root, 'examples', 'bar.c')``
-.. warning::
+.. note::
- The API for adding and running install tests is not yet considered
- stable and may change drastically in future releases. Packages with
- upstreamed tests will be refactored to match changes to the API.
+ While source and input files are generally recommended, binaries
+ **may** also be cached by the build process for install testing.
+ Only you, as the package writer or maintainer, know whether these
+ would be appropriate stand-alone tests.
+
+.. note::
+
+ You are free to use a method name that is more suitable for
+ your package.
+
+.. _cache_custom_files:
-While build-tests are integrated with the build system, install tests
-may be added to Spack packages to be run independently of the install
-method.
+"""""""""""""""""""
+Adding custom files
+"""""""""""""""""""
-Install tests may be added by defining a ``test`` method with the following signature:
+Some tests may require additional files not available from the build.
+Examples include:
+
+- test source files
+- test input files
+- test build scripts
+- expected test output
+
+These extra files should be added to the ``test`` subdirectory of the
+package in the Spack repository. Spack will automatically copy any files
+in that directory to the test staging directory during stand-alone testing.
+
+The ``test`` method can access those files from the
+``self.test_suite.current_test_data_dir`` directory.
+
+.. _expected_test_output_from_file:
+
+"""""""""""""""""""""""""""""""""""
+Reading expected output from a file
+"""""""""""""""""""""""""""""""""""
+
+The helper function ``get_escaped_text_output`` is available for packages
+to retrieve and properly format the text from a file that contains the
+output that is expected when an executable is run using ``self.run_test``.
+
+The signature for ``get_escaped_text_output`` is:
.. code-block:: python
- def test(self):
+ def get_escaped_text_output(filename):
-These tests will be run in an environment set up to provide access to
-this package and all of its dependencies, including ``test``-type
-dependencies. Inside the ``test`` method, standard python ``assert``
-statements and other error reporting mechanisms can be used. Spack
-will report any errors as a test failure.
+where ``filename`` is the path to the file containing the expected output.
-Inside the test method, individual tests can be run separately (and
-continue transparently after a test failure) using the ``run_test``
-method. The signature for the ``run_test`` method is:
+The ``filename`` for a :ref:`custom file <cache_custom_files>` can be
+accessed and used as illustrated by a simplified version of an ``sqlite``
+package check:
.. code-block:: python
- def run_test(self, exe, options=[], expected=[], status=0, installed=False,
- purpose='', skip_missing=False, work_dir=None):
-
-This method will operate in ``work_dir`` if one is specified. It will
-search for an executable in the ``PATH`` variable named ``exe``, and
-if ``installed=True`` it will fail if that executable does not come
-from the prefix of the package being tested. If the executable is not
-found, it will fail the test unless ``skip_missing`` is set to
-``True``. The executable will be run with the options specified, and
-the return code will be checked against the ``status`` argument, which
-can be an integer or list of integers. Spack will also check that
-every string in ``expected`` is a regex matching part of the output of
-the executable. The ``purpose`` argument is recorded in the test log
-for debugging purposes.
-
-""""""""""""""""""""""""""""""""""""""
-Install tests that require compilation
-""""""""""""""""""""""""""""""""""""""
-
-Some tests may require access to the compiler with which the package
-was built, especially to test library-only packages. To ensure the
-compiler is configured as part of the test environment, set the
-attribute ``tests_require_compiler = True`` on the package. The
-compiler will be available through the canonical environment variables
-(``CC``, ``CXX``, ``FC``, ``F77``) in the test environment.
-
-""""""""""""""""""""""""""""""""""""""""""""""""
-Install tests that require build-time components
-""""""""""""""""""""""""""""""""""""""""""""""""
-
-Some packages cannot be easily tested without components from the
-build-time test suite. For those packages, the
-``cache_extra_test_sources`` method can be used.
+ class Sqlite(AutotoolsPackage):
+ ...
+
+ def test(self):
+ test_data_dir = self.test_suite.current_test_data_dir
+ db_filename = test_data_dir.join('packages.db')
+ ..
+
+ expected = get_escaped_text_output(test_data_dir.join('dump.out'))
+ self.run_test('sqlite3',
+ [db_filename, '.dump'],
+ expected,
+ installed=True,
+ purpose='test: checking dump output',
+ skip_missing=False)
+
+Expected outputs do not have to be stored with the Spack package.
+Maintaining them with the source is actually preferable.
+
+Suppose a package's source has ``examples/foo.c`` and ``examples/foo.out``
+files that are copied for stand-alone test purposes using
+:ref:`cache_extra_test_sources <cache_extra_test_sources>` and the
+`run_test` method builds the executable ``examples/foo``. The package
+can retrieve the expected output from ``examples/foo.out`` using:
.. code-block:: python
- @run_after('install')
- def cache_test_sources(self):
- srcs = ['./tests/foo.c', './tests/bar.c']
- self.cache_extra_test_sources(srcs)
+ class MyFooPackage(Package):
+ ...
+
+ def test(self):
+ ..
+ filename = join_path(self.install_test_root, 'examples', 'foo.out')
+ expected = get_escaped_text_output(filename)
+ ..
-This method will copy the listed methods into the metadata directory
-of the package at the end of the install phase of the build. They will
-be available to the test method in the directory
-``self._extra_tests_path``.
+Alternatively, suppose ``MyFooPackage`` installs tests in ``share/tests``
+and their outputs in ``share/tests/outputs``. The expected output for
+``foo``, assuming it is still called ``foo.out``, can be retrieved as
+follows:
-While source files are generally recommended, for many packages
-binaries may also technically be cached in this way for later testing.
+.. code-block:: python
-"""""""""""""""""""""
-Running install tests
-"""""""""""""""""""""
+ class MyFooPackage(Package):
+ ...
-Install tests can be run using the ``spack test run`` command. The
-``spack test run`` command will create a ``test suite`` out of the
-specs provided to it, or if no specs are provided it will test all
-specs in the active environment, or all specs installed in Spack if no
-environment is active. Test suites can be named using the ``--alias``
-option; test suites not aliased will use the content hash of their
-specs as their name.
+ def test(self):
+ ..
+ filename = join_path(self.prefix.share.tests.outputs, 'foo.out')
+ expected = get_escaped_text_output(filename)
+ ..
-Packages to install test can be queried using the ``spack test list``
-command, which outputs all installed packages with defined ``test``
-methods.
-Test suites can be found using the ``spack test find`` command. It
-will list all test suites that have been run and have not been removed
-using the ``spack test remove`` command. The ``spack test remove``
-command will remove tests to declutter the test stage. The ``spack
-test results`` command will show results for completed test suites.
+""""""""""""""""""""""""
+Adding stand-alone tests
+""""""""""""""""""""""""
-The test stage is the working directory for all install tests run with
-Spack. By default, Spack uses ``~/.spack/test`` as the test stage. The
-test stage can be set in the high-level config:
+Stand-alone tests are defined in the package's ``test`` method. The
+default ``test`` method is a no-op so you'll want to override it to
+implement the tests.
-.. code-block:: yaml
+.. note::
- config:
- test_stage: /path/to/stage
+ Any package method named ``test`` is automatically executed by
+ Spack when the ``spack test run`` command is performed.
+
+For example, the ``MyPackage`` package below provides a skeleton for
+the test method.
+
+.. code-block:: python
+
+ class MyPackage(Package):
+ ...
+
+ def test(self):
+ # TODO: Add quick checks of the installed software
+ pass
+
+Stand-alone tests run in an environment that provides access to the
+package and all of its dependencies, including ``test``-type
+dependencies.
+
+Standard python ``assert`` statements and other error reporting
+mechanisms can be used in the ``test`` method. Spack will report
+such errors as test failures.
+
+You can implement multiple tests (or test parts) within the ``test``
+method using the ``run_test`` method. Each invocation is run separately
+in a manner that allows testing to continue after failures.
+
+The signature for ``run_test`` is:
+
+.. code-block:: python
+
+ def run_test(self, exe, options=[], expected=[], status=0,
+ installed=False, purpose='', skip_missing=False,
+ work_dir=None):
+
+where each argument has the following meaning:
+
+* ``exe`` is the executable to run.
+
+ If a name, the ``exe`` is required to be found in one of the paths
+ in the ``PATH`` environment variable **unless** ``skip_missing`` is
+ ``True``. Alternatively, a relative (to ``work_dir``) or fully
+ qualified path for the executable can be provided in ``exe``.
+
+ The test will fail if the resulting path is not within the prefix
+ of the package being tested **unless** ``installed`` is ``False``.
+
+* ``options`` is a list of the command line options.
+
+ Options are a list of strings to be passed to the executable when
+ it runs.
+
+ The default is ``[]``, which means no options are provided to the
+ executable.
+
+* ``expected`` is an optional list of expected output strings.
+
+ Spack requires every string in ``expected`` to be a regex matching
+ part of the output from the test run (e.g.,
+ ``expected=['completed successfully', 'converged in']``). The
+ output can also include expected failure outputs (e.g.,
+ ``expected=['failed to converge']``).
+
+ The expected output can be :ref:`read from a file
+ <expected_test_output_from_file>`.
+
+ The default is ``expected=[]``, so Spack will not check the output.
+
+* ``status`` is the optional expected return code(s).
+
+ A list of return codes corresponding to successful execution can
+ be provided (e.g., ``status=[0,3,7]``). Support for non-zero return
+ codes allows for basic **expected failure** tests as well as different
+ return codes across versions of the software.
+
+ The default is ``status=[0]``, which corresponds to **successful**
+ execution in the sense that the executable does not exit with a
+ failure code or raise an exception.
+
+* ``installed`` is used to require ``exe`` to be within the package
+ prefix.
+
+ If ``True``, then the path for ``exe`` is required to be within the
+ package prefix; otherwise, the path is not constrained.
+
+ The default is ``False``, so the fully qualified path for ``exe``
+ does **not** need to be within the installation directory.
+
+* ``purpose`` is an optional heading describing the the test part.
+
+ Output from the test is written to a test log file so this argument
+ serves as a searchable heading in text logs to highlight the start
+ of the test part. Having a description can be helpful when debugging
+ failing tests.
+
+* ``skip_missing`` is used to determine if the test should be skipped.
+
+ If ``True``, then the test part should be skipped if the executable
+ is missing; otherwise, the executable must exist. This option can
+ be useful when test executables are removed or change as the software
+ evolves in subsequent versions.
+
+ The default is ``False``, which means the test executable must be
+ present for any installable version of the software.
+
+* ``work_dir`` is the path to the directory from which the executable
+ will run.
+
+ The default of ``None`` corresponds to the current directory (``'.'``).
+
+You may need to access files from one or more locations when writing
+the tests. This can happen if the software's repository does not
+include test source files or includes files but no way to build the
+executables using the installed headers and libraries. In these
+cases, you may need to reference the files relative to one or more
+root directory and associated package property. These are given in
+the table below.
+
+.. list-table:: Directory-to-property mapping
+ :header-rows: 1
+
+ * - Root Directory
+ - Package Property
+ - Example(s)
+ * - Package Installation Files
+ - ``self.prefix``
+ - ``self.prefix.include``, ``self.prefix.lib``
+ * - Package Dependency's Files
+ - ``self.spec['<dependency-package>'].prefix``
+ - ``self.spec['trilinos'].prefix.include``
+ * - Copied Build-time Files
+ - ``self.install_test_root``
+ - ``join_path(self.install_test_root, 'examples', 'foo.c')``
+ * - Custom Package Files
+ - ``self.test_suite.current_test_data_dir``
+ - ``join_path(self.test_suite.current_test_data_dir, 'hello.f90')``
+
+""""""""""""""""""""""""""""
+Inheriting stand-alone tests
+""""""""""""""""""""""""""""
+
+Stand-alone tests defined in parent (.e.g., :ref:`build-systems`) and
+virtual (e.g., :ref:`virtual-dependencies`) packages are available to
+packages that inherit from or provide interfaces for those packages,
+respectively. The table below summarizes the tests that will be included
+with those provided in the package itself when executing stand-alone tests.
+
+.. list-table:: Inherited/provided stand-alone tests
+ :header-rows: 1
+
+ * - Parent/Provider Package
+ - Stand-alone Tests
+ * - `C
+ <https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/c>`_
+ - Compiles ``hello.c`` and runs it
+ * - `Cxx
+ <https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/cxx>`_
+ - Compiles and runs several ``hello`` programs
+ * - `Fortan
+ <https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/fortran>`_
+ - Compiles and runs ``hello`` programs (``F`` and ``f90``)
+ * - `Mpi
+ <https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/mpi>`_
+ - Compiles and runs ``mpi_hello`` (``c``, ``fortran``)
+ * - `PythonPackage <build_systems/pythonpackage>`
+ - Imports installed modules
+
+These tests are very generic so it is important that package
+developers and maintainers provide additional stand-alone tests
+customized to the package.
+
+One example of a package that adds its own stand-alone (or smoke)
+tests is the `Openmpi package
+<https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/openmpi/package.py>`_.
+The preliminary set of tests for the package performed the
+following checks:
+
+- installed binaries with the ``--version`` option return the expected
+ version;
+- outputs from (selected) installed binaries match expectations;
+- ``make all`` succeeds when building examples that were copied from the
+ source directory during package installation; and
+- outputs from running the copied and built examples match expectations.
+
+Below is an example of running and viewing the stand-alone tests,
+where only the outputs for the first of each set are shown:
+
+.. code-block:: console
+
+ $ spack test run --alias openmpi-4.0.5 openmpi@4.0.5
+ ==> Spack test openmpi-4.0.5
+ ==> Testing package openmpi-4.0.5-eygjgve
+ $ spack test results -l openmpi-4.0.5
+ ==> Spack test openmpi-4.0.5
+ ==> Testing package openmpi-4.0.5-eygjgve
+ ==> Results for test suite 'openmpi-4.0.5':
+ ==> openmpi-4.0.5-eygjgve PASSED
+ ==> Testing package openmpi-4.0.5-eygjgve
+ ==> [2021-04-26-17:35:20.259650] test: ensuring version of mpiCC is 8.3.1
+ ==> [2021-04-26-17:35:20.260155] '$SPACK_ROOT/opt/spack/linux-rhel7-broadwell/gcc-8.3.1/openmpi-4.0.5-eygjgvek35awfor2qaljltjind2oa67r/bin/mpiCC' '--version'
+ g++ (GCC) 8.3.1 20190311 (Red Hat 8.3.1-3)
+ Copyright (C) 2018 Free Software Foundation, Inc.
+ This is free software; see the source for copying conditions. There is NO
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ PASSED
+ ...
+ ==> [2021-04-26-17:35:20.493921] test: checking mpirun output
+ ==> [2021-04-26-17:35:20.494461] '$SPACK_ROOT/opt/spack/linux-rhel7-broadwell/gcc-8.3.1/openmpi-4.0.5-eygjgvek35awfor2qaljltjind2oa67r/bin/mpirun' '-n' '1' 'ls' '..'
+ openmpi-4.0.5-eygjgve repo test_suite.lock
+ openmpi-4.0.5-eygjgve-test-out.txt results.txt
+ PASSED
+ ...
+ ==> [2021-04-26-17:35:20.630452] test: ensuring ability to build the examples
+ ==> [2021-04-26-17:35:20.630943] '/usr/bin/make' 'all'
+ mpicc -g hello_c.c -o hello_c
+ mpicc -g ring_c.c -o ring_c
+ mpicc -g connectivity_c.c -o connectivity_c
+ mpicc -g spc_example.c -o spc_example
+ ...
+ PASSED
+ ==> [2021-04-26-17:35:23.291214] test: checking hello_c example output and status (0)
+ ==> [2021-04-26-17:35:23.291841] './hello_c'
+ Hello, world, I am 0 of 1, (Open MPI v4.0.5, package: Open MPI dahlgren@quartz2300 Distribution, ident: 4.0.5, repo rev: v4.0.5, Aug 26, 2020, 114)
+ PASSED
+ ...
+ ==> [2021-04-26-17:35:24.603152] test: ensuring copied examples cleaned up
+ ==> [2021-04-26-17:35:24.603807] '/usr/bin/make' 'clean'
+ rm -f hello_c hello_cxx hello_mpifh hello_usempi hello_usempif08 hello_oshmem hello_oshmemcxx hello_oshmemfh Hello.class ring_c ring_cxx ring_mpifh ring_usempi ring_usempif08 ring_oshmem ring_oshmemfh Ring.class connectivity_c oshmem_shmalloc oshmem_circular_shift oshmem_max_reduction oshmem_strided_puts oshmem_symmetric_data spc_example *~ *.o
+ PASSED
+ ==> [2021-04-26-17:35:24.643360] test: mpicc: expect command status in [0]
+ ==> [2021-04-26-17:35:24.643834] '$SPACK_ROOT/opt/spack/linux-rhel7-broadwell/gcc-8.3.1/openmpi-4.0.5-eygjgvek35awfor2qaljltjind2oa67r/bin/mpicc' '-o' 'mpi_hello_c' '$HOME/.spack/test/hyzq5eqlqfog6fawlzxwg3prqy5vjhms/openmpi-4.0.5-eygjgve/data/mpi/mpi_hello.c'
+ PASSED
+ ==> [2021-04-26-17:35:24.776765] test: mpirun: expect command status in [0]
+ ==> [2021-04-26-17:35:24.777194] '$SPACK_ROOT/opt/spack/linux-rhel7-broadwell/gcc-8.3.1/openmpi-4.0.5-eygjgvek35awfor2qaljltjind2oa67r/bin/mpirun' '-np' '1' 'mpi_hello_c'
+ Hello world! From rank 0 of 1
+ PASSED
+ ...
+
+
+.. warning::
+
+ The API for adding and running stand-alone tests is not yet considered
+ stable and may change drastically in future releases. Packages with
+ stand-alone tests will be refactored to match changes to the API.
+
+.. _cmd-spack-test-list:
+
+"""""""""""""""""""
+``spack test list``
+"""""""""""""""""""
+
+Packages available for install testing can be found using the
+``spack test list`` command. The command outputs all installed
+packages that have defined ``test`` methods.
+
+Alternatively you can use the ``--all`` option to get a list of
+all packages that have defined ``test`` methods even if they are
+not installed.
+
+For more information, refer to `spack test list
+<https://spack.readthedocs.io/en/latest/command_index.html#spack-test-list>`_.
+
+.. _cmd-spack-test-run:
+
+""""""""""""""""""
+``spack test run``
+""""""""""""""""""
+
+Install tests can be run for one or more installed packages using
+the ``spack test run`` command. A ``test suite`` is created from
+the provided specs. If no specs are provided it will test all specs
+in the active environment or all specs installed in Spack if no
+environment is active.
+
+Test suites can be named using the ``--alias`` option. Unaliased
+Test suites will use the content hash of their specs as their name.
+
+Some of the more commonly used debugging options are:
+
+- ``--fail-fast`` stops testing each package after the first failure
+- ``--fail-first`` stops testing packages after the first failure
+
+Test output is written to a text log file by default but ``junit``
+and ``cdash`` are outputs are available through the ``--log-format``
+option.
+
+For more information, refer to `spack test run
+<https://spack.readthedocs.io/en/latest/command_index.html#spack-test-run>`_.
+
+
+.. _cmd-spack-test-results:
+
+""""""""""""""""""""""
+``spack test results``
+""""""""""""""""""""""
+
+The ``spack test results`` command shows results for all completed
+test suites. Providing the alias or content hash limits reporting
+to the corresponding test suite.
+
+The ``--logs`` option includes the output generated by the associated
+test(s) to facilitate debugging.
+
+The ``--failed`` option limits results shown to that of the failed
+tests, if any, of matching packages.
+
+For more information, refer to `spack test results
+<https://spack.readthedocs.io/en/latest/command_index.html#spack-test-results>`_.
+
+.. _cmd-spack-test-find:
+
+"""""""""""""""""""
+``spack test find``
+"""""""""""""""""""
+
+The ``spack test find`` command lists the aliases or content hashes
+of all test suites whose results are available.
+
+For more information, refer to `spack test find
+<https://spack.readthedocs.io/en/latest/command_index.html#spack-test-find>`_.
+
+.. _cmd-spack-test-remove:
+
+"""""""""""""""""""""
+``spack test remove``
+"""""""""""""""""""""
+
+The ``spack test remove`` command removes test suites to declutter
+the test results directory. You are prompted to confirm the removal
+of each test suite **unless** you use the ``--yes-to-all`` option.
+
+For more information, refer to `spack test remove
+<https://spack.readthedocs.io/en/latest/command_index.html#spack-test-remove>`_.
+
+.. _file-manipulation:
---------------------------
File manipulation functions
@@ -4070,9 +4767,9 @@ ways of setting compilers and options, you may need to edit files or
install some files yourself to get them working with Spack.
You can do this with standard Python code, and Python has rich
-libraries with functions for file manipulation and filtering. Spack
+libraries with functions for file manipulation and filtering. Spack
also provides a number of convenience functions of its own to make
-your life even easier. These functions are described in this section.
+your life even easier. These functions are described in this section.
All of the functions in this section can be included by simply
running:
@@ -4103,10 +4800,10 @@ Filtering functions
.. code-block:: python
- filter_file(r'^CC\s*=.*', spack_cc, 'Makefile')
- filter_file(r'^CXX\s*=.*', spack_cxx, 'Makefile')
- filter_file(r'^F77\s*=.*', spack_f77, 'Makefile')
- filter_file(r'^FC\s*=.*', spack_fc, 'Makefile')
+ filter_file(r'^\s*CC\s*=.*', 'CC = ' + spack_cc, 'Makefile')
+ filter_file(r'^\s*CXX\s*=.*', 'CXX = ' + spack_cxx, 'Makefile')
+ filter_file(r'^\s*F77\s*=.*', 'F77 = ' + spack_f77, 'Makefile')
+ filter_file(r'^\s*FC\s*=.*', 'FC = ' + spack_fc, 'Makefile')
#. Replacing ``#!/usr/bin/perl`` with ``#!/usr/bin/env perl`` in ``bib2xhtml``:
diff --git a/lib/spack/docs/pipelines.rst b/lib/spack/docs/pipelines.rst
index d0cb6fa670..973ec2182c 100644
--- a/lib/spack/docs/pipelines.rst
+++ b/lib/spack/docs/pipelines.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -122,9 +122,26 @@ pipeline jobs.
Concretizes the specs in the active environment, stages them (as described in
:ref:`staging_algorithm`), and writes the resulting ``.gitlab-ci.yml`` to disk.
-This sub-command takes two arguments, but the most useful is ``--output-file``,
-which should be an absolute path (including file name) to the generated
-pipeline, if the default (``./.gitlab-ci.yml``) is not desired.
+Using ``--prune-dag`` or ``--no-prune-dag`` configures whether or not jobs are
+generated for specs that are already up to date on the mirror. If enabling
+DAG pruning using ``--prune-dag``, more information may be required in your
+``spack.yaml`` file, see the :ref:`noop_jobs` section below regarding
+``service-job-attributes``.
+
+The ``--optimize`` argument is experimental and runs the generated pipeline
+document through a series of optimization passes designed to reduce the size
+of the generated file.
+
+The ``--dependencies`` is also experimental and disables what in Gitlab is
+referred to as DAG scheduling, internally using the ``dependencies`` keyword
+rather than ``needs`` to list dependency jobs. The drawback of using this option
+is that before any job can begin, all jobs in previous stages must first
+complete. The benefit is that Gitlab allows more dependencies to be listed
+when using ``dependencies`` instead of ``needs``.
+
+The optional ``--output-file`` argument should be an absolute path (including
+file name) to the generated pipeline, and if not given, the default is
+``./.gitlab-ci.yml``.
.. _cmd-spack-ci-rebuild:
@@ -223,20 +240,12 @@ takes a boolean and determines whether the pipeline uses artifacts to store and
pass along the buildcaches from one stage to the next (the default if you don't
provide this option is ``False``).
-The
-``final-stage-rebuild-index`` section controls whether an extra job is added to the
-end of your pipeline (in a stage by itself) which will regenerate the mirror's
-buildcache index. Under normal operation, each pipeline job that rebuilds a package
-will re-generate the mirror's buildcache index after the buildcache entry for that
-job has been created and pushed to the mirror. Since jobs in the same stage can run in
-parallel, there is the possibility that at the end of some stage, the index may not
-reflect all the binaries in the buildcache. Adding the ``final-stage-rebuild-index``
-section ensures that at the end of the pipeline, the index will be in sync with the
-binaries on the mirror. If the mirror lives in an S3 bucket, this job will need to
-run on a machine with the Python ``boto3`` module installed, and consequently the
-``final-stage-rebuild-index`` needs to specify a list of ``tags`` to pick a runner
-satisfying that condition. It can also take an ``image`` key so Docker executor type
-runners can pick the right image for the index regeneration job.
+The optional ``broken-specs-url`` key tells Spack to check against a list of
+specs that are known to be currently broken in ``develop``. If any such specs
+are found, the ``spack ci generate`` command will fail with an error message
+informing the user what broken specs were encountered. This allows the pipeline
+to fail early and avoid wasting compute resources attempting to build packages
+that will not succeed.
The optional ``cdash`` section provides information that will be used by the
``spack ci generate`` command (invoked by ``spack ci start``) for reporting
@@ -251,6 +260,76 @@ Take a look at the
for the gitlab-ci section of the spack environment file, to see precisely what
syntax is allowed there.
+.. _rebuild_index:
+
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Note about rebuilding buildcache index
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+By default, while a pipeline job may rebuild a package, create a buildcache
+entry, and push it to the mirror, it does not automatically re-generate the
+mirror's buildcache index afterward. Because the index is not needed by the
+default rebuild jobs in the pipeline, not updating the index at the end of
+each job avoids possible race conditions between simultaneous jobs, and it
+avoids the computational expense of regenerating the index. This potentially
+saves minutes per job, depending on the number of binary packages in the
+mirror. As a result, the default is that the mirror's buildcache index may
+not correctly reflect the mirror's contents at the end of a pipeline.
+
+To make sure the buildcache index is up to date at the end of your pipeline,
+spack generates a job to update the buildcache index of the target mirror
+at the end of each pipeline by default. You can disable this behavior by
+adding ``rebuild-index: False`` inside the ``gitlab-ci`` section of your
+spack environment. Spack will assign the job any runner attributes found
+on the ``service-job-attributes``, if you have provided that in your
+``spack.yaml``.
+
+.. _noop_jobs:
+
+^^^^^^^^^^^^^^^^^^^^^^^
+Note about "no-op" jobs
+^^^^^^^^^^^^^^^^^^^^^^^
+
+If no specs in an environment need to be rebuilt during a given pipeline run
+(meaning all are already up to date on the mirror), a single succesful job
+(a NO-OP) is still generated to avoid an empty pipeline (which GitLab
+considers to be an error). An optional ``service-job-attributes`` section
+can be added to your ``spack.yaml`` where you can provide ``tags`` and
+``image`` or ``variables`` for the generated NO-OP job. This section also
+supports providing ``before_script``, ``script``, and ``after_script``, in
+case you want to take some custom actions in the case of any empty pipeline.
+
+Following is an example of this section added to a ``spack.yaml``:
+
+.. code-block:: yaml
+
+ spack:
+ specs:
+ - openmpi
+ mirrors:
+ cloud_gitlab: https://mirror.spack.io
+ gitlab-ci:
+ mappings:
+ - match:
+ - os=centos8
+ runner-attributes:
+ tags:
+ - custom
+ - tag
+ image: spack/centos7
+ service-job-attributes:
+ tags: ['custom', 'tag']
+ image:
+ name: 'some.image.registry/custom-image:latest'
+ entrypoint: ['/bin/bash']
+ script:
+ - echo "Custom message in a custom script"
+
+The example above illustrates how you can provide the attributes used to run
+the NO-OP job in the case of an empty pipeline. The only field for the NO-OP
+job that might be generated for you is ``script``, but that will only happen
+if you do not provide one yourself.
+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Assignment of specs to runners
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -482,7 +561,7 @@ provision of a custom ``script`` section. The reason for this is to run
Now imagine you have long pipelines with many specs to be built, and you
are pointing to a spack repository and branch that has a tendency to change
-frequently, such as the main repo and it's ``develop`` branch. If each child
+frequently, such as the main repo and its ``develop`` branch. If each child
job checks out the ``develop`` branch, that could result in some jobs running
with one SHA of spack, while later jobs run with another. To help avoid this
issue, the pipeline generation process saves global variables called
diff --git a/lib/spack/docs/repositories.rst b/lib/spack/docs/repositories.rst
index 4a2c163886..3368c26a28 100644
--- a/lib/spack/docs/repositories.rst
+++ b/lib/spack/docs/repositories.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@
Package Repositories
=============================
-Spack comes with over 1,000 built-in package recipes in
+Spack comes with thousands of built-in package recipes in
``var/spack/repos/builtin/``. This is a **package repository** -- a
directory that Spack searches when it needs to find a package by name.
You may need to maintain packages for restricted, proprietary or
diff --git a/lib/spack/docs/spack.yaml b/lib/spack/docs/spack.yaml
index 3c8cd14d10..69d0e301fd 100644
--- a/lib/spack/docs/spack.yaml
+++ b/lib/spack/docs/spack.yaml
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/docs/workflows.rst b/lib/spack/docs/workflows.rst
index 4d3a97012c..c327c137ac 100644
--- a/lib/spack/docs/workflows.rst
+++ b/lib/spack/docs/workflows.rst
@@ -1,4 +1,4 @@
-.. Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+.. Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
Spack Project Developers. See the top-level COPYRIGHT file for details.
SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/env/cc b/lib/spack/env/cc
index 5efe015c9e..bd479f05ec 100755
--- a/lib/spack/env/cc
+++ b/lib/spack/env/cc
@@ -1,6 +1,6 @@
#!/bin/bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -125,7 +125,7 @@ case "$command" in
comp="FC"
lang_flags=F
;;
- f77|xlf|xlf_r|pgf77|frt|flang)
+ f77|xlf|xlf_r|pgf77)
command="$SPACK_F77"
language="Fortran 77"
comp="F77"
@@ -277,14 +277,22 @@ other_args=()
isystem_system_includes=()
isystem_includes=()
-while [ -n "$1" ]; do
+while [ $# -ne 0 ]; do
+
# an RPATH to be added after the case statement.
rp=""
+ # Multiple consecutive spaces in the command line can
+ # result in blank arguments
+ if [ -z "$1" ]; then
+ shift
+ continue
+ fi
+
case "$1" in
-isystem*)
arg="${1#-isystem}"
- isystem_was_used=true
+ isystem_was_used=true
if [ -z "$arg" ]; then shift; arg="$1"; fi
if system_dir "$arg"; then
isystem_system_includes+=("$arg")
@@ -311,6 +319,16 @@ while [ -n "$1" ]; do
fi
;;
-l*)
+ # -loopopt=0 is generated erroneously in autoconf <= 2.69,
+ # and passed by ifx to the linker, which confuses it with a
+ # library. Filter it out.
+ # TODO: generalize filtering of args with an env var, so that
+ # TODO: we do not have to special case this here.
+ if { [ "$mode" = "ccld" ] || [ $mode = "ld" ]; } \
+ && [ "$1" != "${1#-loopopt}" ]; then
+ shift
+ continue
+ fi
arg="${1#-l}"
if [ -z "$arg" ]; then shift; arg="$1"; fi
other_args+=("-l$arg")
@@ -320,9 +338,13 @@ while [ -n "$1" ]; do
if [ -z "$arg" ]; then shift; arg="$1"; fi
if [[ "$arg" = -rpath=* ]]; then
rp="${arg#-rpath=}"
+ elif [[ "$arg" = --rpath=* ]]; then
+ rp="${arg#--rpath=}"
elif [[ "$arg" = -rpath,* ]]; then
rp="${arg#-rpath,}"
- elif [[ "$arg" = -rpath ]]; then
+ elif [[ "$arg" = --rpath,* ]]; then
+ rp="${arg#--rpath,}"
+ elif [[ "$arg" =~ ^-?-rpath$ ]]; then
shift; arg="$1"
if [[ "$arg" != -Wl,* ]]; then
die "-Wl,-rpath was not followed by -Wl,*"
@@ -339,7 +361,9 @@ while [ -n "$1" ]; do
if [ -z "$arg" ]; then shift; arg="$1"; fi
if [[ "$arg" = -rpath=* ]]; then
rp="${arg#-rpath=}"
- elif [[ "$arg" = -rpath ]]; then
+ elif [[ "$arg" = --rpath=* ]]; then
+ rp="${arg#--rpath=}"
+ elif [[ "$arg" = -rpath ]] || [[ "$arg" = --rpath ]]; then
shift; arg="$1"
if [[ "$arg" != -Xlinker,* ]]; then
die "-Xlinker,-rpath was not followed by -Xlinker,*"
@@ -434,7 +458,7 @@ then
ld)
flags=("${flags[@]}" -headerpad_max_install_names) ;;
ccld)
- flags=("${flags[@]}" -Wl,-headerpad_max_install_names) ;;
+ flags=("${flags[@]}" "-Wl,-headerpad_max_install_names") ;;
esac
fi
@@ -491,19 +515,19 @@ args+=("${flags[@]}")
# Insert include directories just prior to any system include directories
for dir in "${includes[@]}"; do args+=("-I$dir"); done
-for dir in "${isystem_includes[@]}"; do args+=("-isystem$dir"); done
+for dir in "${isystem_includes[@]}"; do args+=("-isystem" "$dir"); done
IFS=':' read -ra spack_include_dirs <<< "$SPACK_INCLUDE_DIRS"
if [[ $mode == cpp || $mode == cc || $mode == as || $mode == ccld ]]; then
if [[ "$isystem_was_used" == "true" ]] ; then
- for dir in "${spack_include_dirs[@]}"; do args+=("-isystem$dir"); done
+ for dir in "${spack_include_dirs[@]}"; do args+=("-isystem" "$dir"); done
else
- for dir in "${spack_include_dirs[@]}"; do args+=("-I$dir"); done
+ for dir in "${spack_include_dirs[@]}"; do args+=("-I$dir"); done
fi
fi
for dir in "${system_includes[@]}"; do args+=("-I$dir"); done
-for dir in "${isystem_system_includes[@]}"; do args+=("-isystem$dir"); done
+for dir in "${isystem_system_includes[@]}"; do args+=("-isystem" "$dir"); done
# Library search paths
for dir in "${libdirs[@]}"; do args+=("-L$dir"); done
@@ -512,12 +536,12 @@ for dir in "${system_libdirs[@]}"; do args+=("-L$dir"); done
# RPATHs arguments
case "$mode" in
ccld)
- if [ ! -z "$dtags_to_add" ] ; then args+=("$linker_arg$dtags_to_add") ; fi
+ if [ -n "$dtags_to_add" ] ; then args+=("$linker_arg$dtags_to_add") ; fi
for dir in "${rpaths[@]}"; do args+=("$rpath$dir"); done
for dir in "${system_rpaths[@]}"; do args+=("$rpath$dir"); done
;;
ld)
- if [ ! -z "$dtags_to_add" ] ; then args+=("$dtags_to_add") ; fi
+ if [ -n "$dtags_to_add" ] ; then args+=("$dtags_to_add") ; fi
for dir in "${rpaths[@]}"; do args+=("-rpath" "$dir"); done
for dir in "${system_rpaths[@]}"; do args+=("-rpath" "$dir"); done
;;
diff --git a/lib/spack/external/__init__.py b/lib/spack/external/__init__.py
index 1c98852eb6..1d707a6d9a 100644
--- a/lib/spack/external/__init__.py
+++ b/lib/spack/external/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ archspec
* Homepage: https://pypi.python.org/pypi/archspec
* Usage: Labeling, comparison and detection of microarchitectures
-* Version: 0.1.2 (commit 2846749dc5b12ae2b30ff1d3f0270a4a5954710d)
+* Version: 0.1.2 (commit 130607c373fd88cd3c43da94c0d3afd3a44084b0)
argparse
--------
diff --git a/lib/spack/external/archspec/__init__.py b/lib/spack/external/archspec/__init__.py
index 1349425634..1188c6cecc 100644
--- a/lib/spack/external/archspec/__init__.py
+++ b/lib/spack/external/archspec/__init__.py
@@ -1,2 +1,2 @@
"""Init file to avoid namespace packages"""
-__version__ = "0.1.1"
+__version__ = "0.1.2"
diff --git a/lib/spack/external/archspec/cpu/detect.py b/lib/spack/external/archspec/cpu/detect.py
index e65076c788..eb75cdfb0e 100644
--- a/lib/spack/external/archspec/cpu/detect.py
+++ b/lib/spack/external/archspec/cpu/detect.py
@@ -99,17 +99,29 @@ def sysctl_info_dict():
def sysctl(*args):
return _check_output(["sysctl"] + list(args), env=child_environment).strip()
- flags = (
- sysctl("-n", "machdep.cpu.features").lower()
- + " "
- + sysctl("-n", "machdep.cpu.leaf7_features").lower()
- )
- info = {
- "vendor_id": sysctl("-n", "machdep.cpu.vendor"),
- "flags": flags,
- "model": sysctl("-n", "machdep.cpu.model"),
- "model name": sysctl("-n", "machdep.cpu.brand_string"),
- }
+ if platform.machine() == "x86_64":
+ flags = (
+ sysctl("-n", "machdep.cpu.features").lower()
+ + " "
+ + sysctl("-n", "machdep.cpu.leaf7_features").lower()
+ )
+ info = {
+ "vendor_id": sysctl("-n", "machdep.cpu.vendor"),
+ "flags": flags,
+ "model": sysctl("-n", "machdep.cpu.model"),
+ "model name": sysctl("-n", "machdep.cpu.brand_string"),
+ }
+ else:
+ model = (
+ "m1" if "Apple" in sysctl("-n", "machdep.cpu.brand_string") else "unknown"
+ )
+ info = {
+ "vendor_id": "Apple",
+ "flags": [],
+ "model": model,
+ "CPU implementer": "Apple",
+ "model name": sysctl("-n", "machdep.cpu.brand_string"),
+ }
return info
@@ -173,6 +185,11 @@ def compatible_microarchitectures(info):
info (dict): dictionary containing information on the host cpu
"""
architecture_family = platform.machine()
+ # On Apple M1 platform.machine() returns "arm64" instead of "aarch64"
+ # so we should normalize the name here
+ if architecture_family == "arm64":
+ architecture_family = "aarch64"
+
# If a tester is not registered, be conservative and assume no known
# target is compatible with the host
tester = COMPATIBILITY_CHECKS.get(architecture_family, lambda x, y: False)
diff --git a/lib/spack/external/archspec/json/cpu/microarchitectures.json b/lib/spack/external/archspec/json/cpu/microarchitectures.json
index 889848c8ec..0eacadfbaa 100644
--- a/lib/spack/external/archspec/json/cpu/microarchitectures.json
+++ b/lib/spack/external/archspec/json/cpu/microarchitectures.json
@@ -75,6 +75,13 @@
"flags": "-march={name} -mtune=generic"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic"
+ }
+ ],
"intel": [
{
"versions": ":",
@@ -84,6 +91,166 @@
]
}
},
+ "x86_64_v2": {
+ "from": ["x86_64"],
+ "vendor": "generic",
+ "features": [
+ "cx16",
+ "lahf_lm",
+ "mmx",
+ "sse",
+ "sse2",
+ "ssse3",
+ "sse4_1",
+ "sse4_2",
+ "popcnt"
+ ],
+ "compilers": {
+ "gcc": [
+ {
+ "versions": "11.1:",
+ "name": "x86-64-v2",
+ "flags": "-march={name} -mtune=generic"
+ },
+ {
+ "versions": "4.6:11.0",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic -mcx16 -msahf -mpopcnt -msse3 -msse4.1 -msse4.2 -mssse3"
+ }
+ ],
+ "clang": [
+ {
+ "versions": "12.0:",
+ "name": "x86-64-v2",
+ "flags": "-march={name} -mtune=generic"
+ },
+ {
+ "versions": "3.9:11.1",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic -mcx16 -msahf -mpopcnt -msse3 -msse4.1 -msse4.2 -mssse3"
+ }
+ ]
+ }
+ },
+ "x86_64_v3": {
+ "from": ["x86_64_v2"],
+ "vendor": "generic",
+ "features": [
+ "cx16",
+ "lahf_lm",
+ "mmx",
+ "sse",
+ "sse2",
+ "ssse3",
+ "sse4_1",
+ "sse4_2",
+ "popcnt",
+ "avx",
+ "avx2",
+ "bmi1",
+ "bmi2",
+ "f16c",
+ "fma",
+ "abm",
+ "movbe",
+ "xsave"
+ ],
+ "compilers": {
+ "gcc": [
+ {
+ "versions": "11.1:",
+ "name": "x86-64-v3",
+ "flags": "-march={name} -mtune=generic"
+ },
+ {
+ "versions": "4.8:11.0",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic -mcx16 -msahf -mpopcnt -msse3 -msse4.1 -msse4.2 -mssse3 -mavx -mavx2 -mbmi -mbmi2 -mf16c -mfma -mlzcnt -mmovbe -mxsave"
+ }
+ ],
+ "clang": [
+ {
+ "versions": "12.0:",
+ "name": "x86-64-v3",
+ "flags": "-march={name} -mtune=generic"
+ },
+ {
+ "versions": "3.9:11.1",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic -mcx16 -msahf -mpopcnt -msse3 -msse4.1 -msse4.2 -mssse3 -mavx -mavx2 -mbmi -mbmi2 -mf16c -mfma -mlzcnt -mmovbe -mxsave"
+ }
+ ],
+ "apple-clang": [
+ {
+ "versions": "8.0:",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic -mcx16 -msahf -mpopcnt -msse3 -msse4.1 -msse4.2 -mssse3 -mavx -mavx2 -mbmi -mbmi2 -mf16c -mfma -mlzcnt -mmovbe -mxsave"
+ }
+ ]
+ }
+ },
+ "x86_64_v4": {
+ "from": ["x86_64_v3"],
+ "vendor": "generic",
+ "features": [
+ "cx16",
+ "lahf_lm",
+ "mmx",
+ "sse",
+ "sse2",
+ "ssse3",
+ "sse4_1",
+ "sse4_2",
+ "popcnt",
+ "avx",
+ "avx2",
+ "bmi1",
+ "bmi2",
+ "f16c",
+ "fma",
+ "abm",
+ "movbe",
+ "xsave",
+ "avx512f",
+ "avx512bw",
+ "avx512cd",
+ "avx512dq",
+ "avx512vl"
+ ],
+ "compilers": {
+ "gcc": [
+ {
+ "versions": "11.1:",
+ "name": "x86-64-v4",
+ "flags": "-march={name} -mtune=generic"
+ },
+ {
+ "versions": "6.0:11.0",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic -mcx16 -msahf -mpopcnt -msse3 -msse4.1 -msse4.2 -mssse3 -mavx -mavx2 -mbmi -mbmi2 -mf16c -mfma -mlzcnt -mmovbe -mxsave -mavx512f -mavx512bw -mavx512cd -mavx512dq -mavx512vl"
+ }
+ ],
+ "clang": [
+ {
+ "versions": "12.0:",
+ "name": "x86-64-v4",
+ "flags": "-march={name} -mtune=generic"
+ },
+ {
+ "versions": "3.9:11.1",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic -mcx16 -msahf -mpopcnt -msse3 -msse4.1 -msse4.2 -mssse3 -mavx -mavx2 -mbmi -mbmi2 -mf16c -mfma -mlzcnt -mmovbe -mxsave -mavx512f -mavx512bw -mavx512cd -mavx512dq -mavx512vl"
+ }
+ ],
+ "apple-clang": [
+ {
+ "versions": "8.0:",
+ "name": "x86-64",
+ "flags": "-march={name} -mtune=generic -mcx16 -msahf -mpopcnt -msse3 -msse4.1 -msse4.2 -mssse3 -mavx -mavx2 -mbmi -mbmi2 -mf16c -mfma -mlzcnt -mmovbe -mxsave -mavx512f -mavx512bw -mavx512cd -mavx512dq -mavx512vl"
+ }
+ ]
+ }
+ },
"nocona": {
"from": ["x86_64"],
"vendor": "GenuineIntel",
@@ -106,6 +273,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune=generic"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -143,6 +316,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune=generic"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -152,13 +331,13 @@
"intel": [
{
"versions": "16.0:",
- "flags": "-march={name} -mtune={name}}"
+ "flags": "-march={name} -mtune={name}"
}
]
}
},
"nehalem": {
- "from": ["core2"],
+ "from": ["core2", "x86_64_v2"],
"vendor": "GenuineIntel",
"features": [
"mmx",
@@ -187,6 +366,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune=generic"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -229,6 +414,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune=generic"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -277,6 +468,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -331,6 +528,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -351,7 +554,7 @@
}
},
"haswell": {
- "from": ["ivybridge"],
+ "from": ["ivybridge", "x86_64_v3"],
"vendor": "GenuineIntel",
"features": [
"mmx",
@@ -390,6 +593,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -446,6 +655,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -500,6 +715,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -558,6 +779,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "knl",
+ "flags": "-march={name} -mtune=generic"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -574,7 +802,7 @@
}
},
"skylake_avx512": {
- "from": ["skylake"],
+ "from": ["skylake", "x86_64_v4"],
"vendor": "GenuineIntel",
"features": [
"mmx",
@@ -621,6 +849,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "skylake-avx512",
+ "flags": "-march={name} -mtune=generic"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -685,6 +920,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"apple-clang": [
{
"versions": "8.0:",
@@ -746,6 +987,12 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"apple-clang": [
{
"versions": "11.0:",
@@ -754,7 +1001,7 @@
],
"intel": [
{
- "versions": "19.0:",
+ "versions": "19.0.1:",
"flags": "-march={name} -mtune={name}"
}
]
@@ -827,6 +1074,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "icelake-client",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"apple-clang": [
{
"versions": "10.0.1:",
@@ -875,6 +1129,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "amdfam10",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"intel": [
{
"versions": "16.0:",
@@ -885,7 +1146,7 @@
}
},
"bulldozer": {
- "from": ["x86_64"],
+ "from": ["x86_64_v2"],
"vendor": "AuthenticAMD",
"features": [
"mmx",
@@ -918,6 +1179,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "bdver1",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"intel": [
{
"versions": "16.0:",
@@ -965,6 +1233,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "bdver2",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"intel": [
{
"versions": "16.0:",
@@ -1013,6 +1288,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "bdver3",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"intel": [
{
"versions": "16.0:",
@@ -1023,7 +1305,7 @@
}
},
"excavator": {
- "from": ["steamroller"],
+ "from": ["steamroller", "x86_64_v3"],
"vendor": "AuthenticAMD",
"features": [
"mmx",
@@ -1064,6 +1346,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "bdver4",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"intel": [
{
"versions": "16.0:",
@@ -1075,7 +1364,7 @@
}
},
"zen": {
- "from": ["x86_64"],
+ "from": ["x86_64_v3"],
"vendor": "AuthenticAMD",
"features": [
"bmi1",
@@ -1119,6 +1408,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "znver1",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"intel": [
{
"versions": "16.0:",
@@ -1175,6 +1471,13 @@
"flags": "-march={name} -mtune={name}"
}
],
+ "aocc": [
+ {
+ "versions": "2.2:",
+ "name": "znver2",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
"intel": [
{
"versions": "16.0:",
@@ -1185,6 +1488,64 @@
]
}
},
+ "zen3": {
+ "from": ["zen2"],
+ "vendor": "AuthenticAMD",
+ "features": [
+ "bmi1",
+ "bmi2",
+ "f16c",
+ "fma",
+ "fsgsbase",
+ "avx",
+ "avx2",
+ "rdseed",
+ "clzero",
+ "aes",
+ "pclmulqdq",
+ "cx16",
+ "movbe",
+ "mmx",
+ "sse",
+ "sse2",
+ "sse4a",
+ "ssse3",
+ "sse4_1",
+ "sse4_2",
+ "abm",
+ "xsavec",
+ "xsaveopt",
+ "clflushopt",
+ "popcnt",
+ "clwb",
+ "vaes",
+ "vpclmulqdq",
+ "pku"
+ ],
+ "compilers": {
+ "gcc": [
+ {
+ "versions": "10.3:",
+ "name": "znver3",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
+ "clang": [
+ {
+ "versions": "12.0:",
+ "name": "znver3",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ],
+ "aocc": [
+ {
+ "versions": "3.0:",
+ "name": "znver3",
+ "flags": "-march={name} -mtune={name}"
+ }
+ ]
+ }
+ },
"ppc64": {
"from": [],
"vendor": "generic",
@@ -1358,6 +1719,12 @@
"versions": ":",
"flags": "-march=armv8-a -mtune=generic"
}
+ ],
+ "apple-clang": [
+ {
+ "versions": ":",
+ "flags": "-march=armv8-a -mtune=generic"
+ }
]
}
},
@@ -1566,6 +1933,31 @@
]
}
},
+ "m1": {
+ "from": ["aarch64"],
+ "vendor": "Apple",
+ "features": [],
+ "compilers": {
+ "gcc": [
+ {
+ "versions": "8.0:",
+ "flags" : "-march=armv8.4-a -mtune=generic"
+ }
+ ],
+ "clang" : [
+ {
+ "versions": "9.0:",
+ "flags" : "-march=armv8.4-a"
+ }
+ ],
+ "apple-clang": [
+ {
+ "versions": "11.0:",
+ "flags" : "-march=armv8.4-a"
+ }
+ ]
+ }
+ },
"arm": {
"from": [],
"vendor": "generic",
diff --git a/lib/spack/external/ordereddict_backport.py b/lib/spack/external/ordereddict_backport.py
index 5ec8493cc9..3c7f012e9e 100644
--- a/lib/spack/external/ordereddict_backport.py
+++ b/lib/spack/external/ordereddict_backport.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/external/py2/typing.py b/lib/spack/external/py2/typing.py
new file mode 100644
index 0000000000..cc32de8844
--- /dev/null
+++ b/lib/spack/external/py2/typing.py
@@ -0,0 +1,84 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+"""
+This is a fake set of symbols to allow spack to import typing in python
+versions where we do not support type checking (<3)
+"""
+Annotated = None
+Any = None
+Callable = None
+ForwardRef = None
+Generic = None
+Literal = None
+Optional = None
+Tuple = None
+TypeVar = None
+Union = None
+AbstractSet = None
+ByteString = None
+Container = None
+Hashable = None
+ItemsView = None
+Iterable = None
+Iterator = None
+KeysView = None
+Mapping = None
+MappingView = None
+MutableMapping = None
+MutableSequence = None
+MutableSet = None
+Sequence = None
+Sized = None
+ValuesView = None
+Awaitable = None
+AsyncIterator = None
+AsyncIterable = None
+Coroutine = None
+Collection = None
+AsyncGenerator = None
+AsyncContextManager = None
+Reversible = None
+SupportsAbs = None
+SupportsBytes = None
+SupportsComplex = None
+SupportsFloat = None
+SupportsInt = None
+SupportsRound = None
+ChainMap = None
+Dict = None
+List = None
+OrderedDict = None
+Set = None
+FrozenSet = None
+NamedTuple = None
+Generator = None
+AnyStr = None
+cast = None
+get_args = None
+get_origin = None
+get_type_hints = None
+no_type_check = None
+no_type_check_decorator = None
+NoReturn = None
+
+# these are the typing extension symbols
+ClassVar = None
+Final = None
+Protocol = None
+Type = None
+TypedDict = None
+ContextManager = None
+Counter = None
+Deque = None
+DefaultDict = None
+SupportsIndex = None
+final = None
+IntVar = None
+Literal = None
+NewType = None
+overload = None
+runtime_checkable = None
+Text = None
+TYPE_CHECKING = None
diff --git a/lib/spack/llnl/__init__.py b/lib/spack/llnl/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/llnl/__init__.py
+++ b/lib/spack/llnl/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/llnl/util/__init__.py b/lib/spack/llnl/util/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/llnl/util/__init__.py
+++ b/lib/spack/llnl/util/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/llnl/util/argparsewriter.py b/lib/spack/llnl/util/argparsewriter.py
index 8ecf6acc88..9b90096460 100644
--- a/lib/spack/llnl/util/argparsewriter.py
+++ b/lib/spack/llnl/util/argparsewriter.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/llnl/util/filesystem.py b/lib/spack/llnl/util/filesystem.py
index bc55d29be0..c7ecf09af2 100644
--- a/lib/spack/llnl/util/filesystem.py
+++ b/lib/spack/llnl/util/filesystem.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -69,7 +69,8 @@ __all__ = [
'touchp',
'traverse_tree',
'unset_executable_mode',
- 'working_dir'
+ 'working_dir',
+ 'keep_modification_time'
]
@@ -1825,3 +1826,24 @@ def remove_directory_contents(dir):
os.unlink(entry)
else:
shutil.rmtree(entry)
+
+
+@contextmanager
+def keep_modification_time(*filenames):
+ """
+ Context manager to keep the modification timestamps of the input files.
+ Tolerates and has no effect on non-existent files and files that are
+ deleted by the nested code.
+
+ Parameters:
+ *filenames: one or more files that must have their modification
+ timestamps unchanged
+ """
+ mtimes = {}
+ for f in filenames:
+ if os.path.exists(f):
+ mtimes[f] = os.path.getmtime(f)
+ yield
+ for f, mtime in mtimes.items():
+ if os.path.exists(f):
+ os.utime(f, (os.path.getatime(f), mtime))
diff --git a/lib/spack/llnl/util/lang.py b/lib/spack/llnl/util/lang.py
index 471f90490f..b20cd91db4 100644
--- a/lib/spack/llnl/util/lang.py
+++ b/lib/spack/llnl/util/lang.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,11 @@ from datetime import datetime, timedelta
from six import string_types
import sys
+if sys.version_info < (3, 0):
+ from itertools import izip_longest # novm
+ zip_longest = izip_longest
+else:
+ from itertools import zip_longest # novm
if sys.version_info >= (3, 3):
from collections.abc import Hashable, MutableMapping # novm
@@ -227,48 +232,222 @@ def list_modules(directory, **kwargs):
yield re.sub('.py$', '', name)
-def key_ordering(cls):
- """Decorates a class with extra methods that implement rich comparison
- operations and ``__hash__``. The decorator assumes that the class
- implements a function called ``_cmp_key()``. The rich comparison
- operations will compare objects using this key, and the ``__hash__``
- function will return the hash of this key.
+def decorator_with_or_without_args(decorator):
+ """Allows a decorator to be used with or without arguments, e.g.::
+
+ # Calls the decorator function some args
+ @decorator(with, arguments, and=kwargs)
+
+ or::
+
+ # Calls the decorator function with zero arguments
+ @decorator
+
+ """
+ # See https://stackoverflow.com/questions/653368 for more on this
+ @functools.wraps(decorator)
+ def new_dec(*args, **kwargs):
+ if len(args) == 1 and len(kwargs) == 0 and callable(args[0]):
+ # actual decorated function
+ return decorator(args[0])
+ else:
+ # decorator arguments
+ return lambda realf: decorator(realf, *args, **kwargs)
+
+ return new_dec
+
+
+#: sentinel for testing that iterators are done in lazy_lexicographic_ordering
+done = object()
+
+
+def tuplify(seq):
+ """Helper for lazy_lexicographic_ordering()."""
+ return tuple((tuplify(x) if callable(x) else x) for x in seq())
+
+
+def lazy_eq(lseq, rseq):
+ """Equality comparison for two lazily generated sequences.
+
+ See ``lazy_lexicographic_ordering``.
+ """
+ liter = lseq() # call generators
+ riter = rseq()
+
+ # zip_longest is implemented in native code, so use it for speed.
+ # use zip_longest instead of zip because it allows us to tell
+ # which iterator was longer.
+ for left, right in zip_longest(liter, riter, fillvalue=done):
+ if (left is done) or (right is done):
+ return False
+
+ # recursively enumerate any generators, otherwise compare
+ equal = lazy_eq(left, right) if callable(left) else left == right
+ if not equal:
+ return False
+
+ return True
+
+
+def lazy_lt(lseq, rseq):
+ """Less-than comparison for two lazily generated sequences.
+
+ See ``lazy_lexicographic_ordering``.
+ """
+ liter = lseq()
+ riter = rseq()
+
+ for left, right in zip_longest(liter, riter, fillvalue=done):
+ if (left is done) or (right is done):
+ return left is done # left was shorter than right
+
+ sequence = callable(left)
+ equal = lazy_eq(left, right) if sequence else left == right
+ if equal:
+ continue
+
+ if sequence:
+ return lazy_lt(left, right)
+ if left is None:
+ return True
+ if right is None:
+ return False
+
+ return left < right
+
+ return False # if equal, return False
+
- If a class already has ``__eq__``, ``__ne__``, ``__lt__``, ``__le__``,
- ``__gt__``, or ``__ge__`` defined, this decorator will overwrite them.
+@decorator_with_or_without_args
+def lazy_lexicographic_ordering(cls, set_hash=True):
+ """Decorates a class with extra methods that implement rich comparison.
+
+ This is a lazy version of the tuple comparison used frequently to
+ implement comparison in Python. Given some objects with fields, you
+ might use tuple keys to implement comparison, e.g.::
+
+ class Widget:
+ def _cmp_key(self):
+ return (
+ self.a,
+ self.b,
+ (self.c, self.d),
+ self.e
+ )
+
+ def __eq__(self, other):
+ return self._cmp_key() == other._cmp_key()
+
+ def __lt__(self):
+ return self._cmp_key() < other._cmp_key()
+
+ # etc.
+
+ Python would compare ``Widgets`` lexicographically based on their
+ tuples. The issue there for simple comparators is that we have to
+ bulid the tuples *and* we have to generate all the values in them up
+ front. When implementing comparisons for large data structures, this
+ can be costly.
+
+ Lazy lexicographic comparison maps the tuple comparison shown above
+ to generator functions. Instead of comparing based on pre-constructed
+ tuple keys, users of this decorator can compare using elements from a
+ generator. So, you'd write::
+
+ @lazy_lexicographic_ordering
+ class Widget:
+ def _cmp_iter(self):
+ yield a
+ yield b
+ def cd_fun():
+ yield c
+ yield d
+ yield cd_fun
+ yield e
+
+ # operators are added by decorator
+
+ There are no tuples preconstructed, and the generator does not have
+ to complete. Instead of tuples, we simply make functions that lazily
+ yield what would've been in the tuple. The
+ ``@lazy_lexicographic_ordering`` decorator handles the details of
+ implementing comparison operators, and the ``Widget`` implementor
+ only has to worry about writing ``_cmp_iter``, and making sure the
+ elements in it are also comparable.
+
+ Some things to note:
+
+ * If a class already has ``__eq__``, ``__ne__``, ``__lt__``,
+ ``__le__``, ``__gt__``, ``__ge__``, or ``__hash__`` defined, this
+ decorator will overwrite them.
+
+ * If ``set_hash`` is ``False``, this will not overwrite
+ ``__hash__``.
+
+ * This class uses Python 2 None-comparison semantics. If you yield
+ None and it is compared to a non-None type, None will always be
+ less than the other object.
+
+ Raises:
+ TypeError: If the class does not have a ``_cmp_iter`` method
- Raises:
- TypeError: If the class does not have a ``_cmp_key`` method
"""
- def setter(name, value):
- value.__name__ = name
- setattr(cls, name, value)
-
- if not has_method(cls, '_cmp_key'):
- raise TypeError("'%s' doesn't define _cmp_key()." % cls.__name__)
-
- setter('__eq__',
- lambda s, o:
- (s is o) or (o is not None and s._cmp_key() == o._cmp_key()))
- setter('__lt__',
- lambda s, o: o is not None and s._cmp_key() < o._cmp_key())
- setter('__le__',
- lambda s, o: o is not None and s._cmp_key() <= o._cmp_key())
-
- setter('__ne__',
- lambda s, o:
- (s is not o) and (o is None or s._cmp_key() != o._cmp_key()))
- setter('__gt__',
- lambda s, o: o is None or s._cmp_key() > o._cmp_key())
- setter('__ge__',
- lambda s, o: o is None or s._cmp_key() >= o._cmp_key())
-
- setter('__hash__', lambda self: hash(self._cmp_key()))
+ if not has_method(cls, "_cmp_iter"):
+ raise TypeError("'%s' doesn't define _cmp_iter()." % cls.__name__)
+
+ # comparison operators are implemented in terms of lazy_eq and lazy_lt
+ def eq(self, other):
+ if self is other:
+ return True
+ return (other is not None) and lazy_eq(self._cmp_iter, other._cmp_iter)
+
+ def lt(self, other):
+ if self is other:
+ return False
+ return (other is not None) and lazy_lt(self._cmp_iter, other._cmp_iter)
+
+ def ne(self, other):
+ if self is other:
+ return False
+ return (other is None) or not lazy_eq(self._cmp_iter, other._cmp_iter)
+
+ def gt(self, other):
+ if self is other:
+ return False
+ return (other is None) or lazy_lt(other._cmp_iter, self._cmp_iter)
+
+ def le(self, other):
+ if self is other:
+ return True
+ return (other is not None) and not lazy_lt(other._cmp_iter,
+ self._cmp_iter)
+
+ def ge(self, other):
+ if self is other:
+ return True
+ return (other is None) or not lazy_lt(self._cmp_iter, other._cmp_iter)
+
+ def h(self):
+ return hash(tuplify(self._cmp_iter))
+
+ def add_func_to_class(name, func):
+ """Add a function to a class with a particular name."""
+ func.__name__ = name
+ setattr(cls, name, func)
+
+ add_func_to_class("__eq__", eq)
+ add_func_to_class("__ne__", ne)
+ add_func_to_class("__lt__", lt)
+ add_func_to_class("__le__", le)
+ add_func_to_class("__gt__", gt)
+ add_func_to_class("__ge__", ge)
+ if set_hash:
+ add_func_to_class("__hash__", h)
return cls
-@key_ordering
+@lazy_lexicographic_ordering
class HashableMap(MutableMapping):
"""This is a hashable, comparable dictionary. Hash is performed on
a tuple of the values in the dictionary."""
@@ -291,8 +470,9 @@ class HashableMap(MutableMapping):
def __delitem__(self, key):
del self.dict[key]
- def _cmp_key(self):
- return tuple(sorted(self.values()))
+ def _cmp_iter(self):
+ for _, v in sorted(self.items()):
+ yield v
def copy(self):
"""Type-agnostic clone method. Preserves subclass type."""
@@ -624,6 +804,9 @@ class LazyReference(object):
def load_module_from_file(module_name, module_path):
"""Loads a python module from the path of the corresponding file.
+ If the module is already in ``sys.modules`` it will be returned as
+ is and not reloaded.
+
Args:
module_name (str): namespace where the python module will be loaded,
e.g. ``foo.bar``
@@ -636,12 +819,28 @@ def load_module_from_file(module_name, module_path):
ImportError: when the module can't be loaded
FileNotFoundError: when module_path doesn't exist
"""
+ if module_name in sys.modules:
+ return sys.modules[module_name]
+
+ # This recipe is adapted from https://stackoverflow.com/a/67692/771663
if sys.version_info[0] == 3 and sys.version_info[1] >= 5:
import importlib.util
spec = importlib.util.spec_from_file_location( # novm
module_name, module_path)
module = importlib.util.module_from_spec(spec) # novm
- spec.loader.exec_module(module)
+ # The module object needs to exist in sys.modules before the
+ # loader executes the module code.
+ #
+ # See https://docs.python.org/3/reference/import.html#loading
+ sys.modules[spec.name] = module
+ try:
+ spec.loader.exec_module(module)
+ except BaseException:
+ try:
+ del sys.modules[spec.name]
+ except KeyError:
+ pass
+ raise
elif sys.version_info[0] == 3 and sys.version_info[1] < 5:
import importlib.machinery
loader = importlib.machinery.SourceFileLoader( # novm
diff --git a/lib/spack/llnl/util/link_tree.py b/lib/spack/llnl/util/link_tree.py
index d29b1289e3..c286671401 100644
--- a/lib/spack/llnl/util/link_tree.py
+++ b/lib/spack/llnl/util/link_tree.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/llnl/util/lock.py b/lib/spack/llnl/util/lock.py
index 5fd7163e2e..bd3308a57f 100644
--- a/lib/spack/llnl/util/lock.py
+++ b/lib/spack/llnl/util/lock.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -264,7 +264,7 @@ class Lock(object):
self.old_host = self.host
self.pid = os.getpid()
- self.host = socket.getfqdn()
+ self.host = socket.gethostname()
# write pid, host to disk to sync over FS
self._file.seek(0)
diff --git a/lib/spack/llnl/util/multiproc.py b/lib/spack/llnl/util/multiproc.py
index f87b32c307..c73ebaed20 100644
--- a/lib/spack/llnl/util/multiproc.py
+++ b/lib/spack/llnl/util/multiproc.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/llnl/util/tty/__init__.py b/lib/spack/llnl/util/tty/__init__.py
index 79ca5a9929..cf70834e8d 100644
--- a/lib/spack/llnl/util/tty/__init__.py
+++ b/lib/spack/llnl/util/tty/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/llnl/util/tty/colify.py b/lib/spack/llnl/util/tty/colify.py
index e0b4a5fa05..56baeb5bfb 100644
--- a/lib/spack/llnl/util/tty/colify.py
+++ b/lib/spack/llnl/util/tty/colify.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/llnl/util/tty/color.py b/lib/spack/llnl/util/tty/color.py
index b6f5ec782f..ffd1b8c497 100644
--- a/lib/spack/llnl/util/tty/color.py
+++ b/lib/spack/llnl/util/tty/color.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/llnl/util/tty/log.py b/lib/spack/llnl/util/tty/log.py
index 658de5c596..337eb0ac68 100644
--- a/lib/spack/llnl/util/tty/log.py
+++ b/lib/spack/llnl/util/tty/log.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,12 +20,17 @@ from contextlib import contextmanager
from six import string_types
from six import StringIO
+from typing import Optional # novm
+from types import ModuleType # novm
+
import llnl.util.tty as tty
+termios = None # type: Optional[ModuleType]
try:
- import termios
+ import termios as term_mod
+ termios = term_mod
except ImportError:
- termios = None
+ pass
# Use this to strip escape sequences
@@ -316,7 +321,10 @@ class FileWrapper(object):
def unwrap(self):
if self.open:
if self.file_like:
- self.file = open(self.file_like, 'w')
+ if sys.version_info < (3,):
+ self.file = open(self.file_like, 'w')
+ else:
+ self.file = open(self.file_like, 'w', encoding='utf-8')
else:
self.file = StringIO()
return self.file
@@ -717,7 +725,11 @@ def _writer_daemon(stdin_multiprocess_fd, read_multiprocess_fd, write_fd, echo,
# Use line buffering (3rd param = 1) since Python 3 has a bug
# that prevents unbuffered text I/O.
- in_pipe = os.fdopen(read_multiprocess_fd.fd, 'r', 1)
+ if sys.version_info < (3,):
+ in_pipe = os.fdopen(read_multiprocess_fd.fd, 'r', 1)
+ else:
+ # Python 3.x before 3.7 does not open with UTF-8 encoding by default
+ in_pipe = os.fdopen(read_multiprocess_fd.fd, 'r', 1, encoding='utf-8')
if stdin_multiprocess_fd:
stdin = os.fdopen(stdin_multiprocess_fd.fd)
diff --git a/lib/spack/llnl/util/tty/pty.py b/lib/spack/llnl/util/tty/pty.py
index 84c272a6e2..2a5fb7afa4 100644
--- a/lib/spack/llnl/util/tty/pty.py
+++ b/lib/spack/llnl/util/tty/pty.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/__init__.py b/lib/spack/spack/__init__.py
index cefee1203f..a17fc1dfc1 100644
--- a/lib/spack/spack/__init__.py
+++ b/lib/spack/spack/__init__.py
@@ -1,11 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
#: major, minor, patch version for Spack, in a tuple
-spack_version_info = (0, 16, 2)
+spack_version_info = (0, 16, 1)
#: String containing Spack version joined with .'s
spack_version = '.'.join(str(v) for v in spack_version_info)
diff --git a/lib/spack/spack/abi.py b/lib/spack/spack/abi.py
index 986583d270..da796e2100 100644
--- a/lib/spack/spack/abi.py
+++ b/lib/spack/spack/abi.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/analyzers/__init__.py b/lib/spack/spack/analyzers/__init__.py
new file mode 100644
index 0000000000..9e36ed7b3f
--- /dev/null
+++ b/lib/spack/spack/analyzers/__init__.py
@@ -0,0 +1,43 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+"""This package contains code for creating analyzers to extract Application
+Binary Interface (ABI) information, along with simple analyses that just load
+existing metadata.
+"""
+
+from __future__ import absolute_import
+
+import spack.util.classes
+import spack.paths
+
+import llnl.util.tty as tty
+
+
+mod_path = spack.paths.analyzers_path
+analyzers = spack.util.classes.list_classes("spack.analyzers", mod_path)
+
+# The base analyzer does not have a name, and cannot do dict comprehension
+analyzer_types = {}
+for a in analyzers:
+ if not hasattr(a, "name"):
+ continue
+ analyzer_types[a.name] = a
+
+
+def list_all():
+ """A helper function to list all analyzers and their descriptions
+ """
+ for name, analyzer in analyzer_types.items():
+ print("%-25s: %-35s" % (name, analyzer.description))
+
+
+def get_analyzer(name):
+ """Courtesy function to retrieve an analyzer, and exit on error if it
+ does not exist.
+ """
+ if name in analyzer_types:
+ return analyzer_types[name]
+ tty.die("Analyzer %s does not exist" % name)
diff --git a/lib/spack/spack/analyzers/analyzer_base.py b/lib/spack/spack/analyzers/analyzer_base.py
new file mode 100644
index 0000000000..41f456b71a
--- /dev/null
+++ b/lib/spack/spack/analyzers/analyzer_base.py
@@ -0,0 +1,115 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+"""An analyzer base provides basic functions to run the analysis, save results,
+and (optionally) interact with a Spack Monitor
+"""
+
+import spack.monitor
+import spack.hooks
+import llnl.util.tty as tty
+import spack.util.path
+import spack.config
+
+import os
+
+
+def get_analyzer_dir(spec, analyzer_dir=None):
+ """
+ Given a spec, return the directory to save analyzer results.
+
+ We create the directory if it does not exist. We also check that the
+ spec has an associated package. An analyzer cannot be run if the spec isn't
+ associated with a package. If the user provides a custom analyzer_dir,
+ we use it over checking the config and the default at ~/.spack/analyzers
+ """
+ # An analyzer cannot be run if the spec isn't associated with a package
+ if not hasattr(spec, "package") or not spec.package:
+ tty.die("A spec can only be analyzed with an associated package.")
+
+ # The top level directory is in the user home, or a custom location
+ if not analyzer_dir:
+ analyzer_dir = spack.util.path.canonicalize_path(
+ spack.config.get('config:analyzers_dir', '~/.spack/analyzers'))
+
+ # We follow the same convention as the spec install (this could be better)
+ package_prefix = os.sep.join(spec.package.prefix.split('/')[-3:])
+ meta_dir = os.path.join(analyzer_dir, package_prefix)
+ return meta_dir
+
+
+class AnalyzerBase(object):
+
+ def __init__(self, spec, dirname=None):
+ """
+ Verify that the analyzer has correct metadata.
+
+ An Analyzer is intended to run on one spec install, so the spec
+ with its associated package is required on init. The child analyzer
+ class should define an init function that super's the init here, and
+ also check that the analyzer has all dependencies that it
+ needs. If an analyzer subclass does not have dependencies, it does not
+ need to define an init. An Analyzer should not be allowed to proceed
+ if one or more dependencies are missing. The dirname, if defined,
+ is an optional directory name to save to (instead of the default meta
+ spack directory).
+ """
+ self.spec = spec
+ self.dirname = dirname
+ self.meta_dir = os.path.dirname(spec.package.install_log_path)
+
+ for required in ["name", "outfile", "description"]:
+ if not hasattr(self, required):
+ tty.die("Please add a %s attribute on the analyzer." % required)
+
+ def run(self):
+ """
+ Given a spec with an installed package, run the analyzer on it.
+ """
+ raise NotImplementedError
+
+ @property
+ def output_dir(self):
+ """
+ The full path to the output directory.
+
+ This includes the nested analyzer directory structure. This function
+ does not create anything.
+ """
+ if not hasattr(self, "_output_dir"):
+ output_dir = get_analyzer_dir(self.spec, self.dirname)
+ self._output_dir = os.path.join(output_dir, self.name)
+
+ return self._output_dir
+
+ def save_result(self, result, overwrite=False):
+ """
+ Save a result to the associated spack monitor, if defined.
+
+ This function is on the level of the analyzer because it might be
+ the case that the result is large (appropriate for a single request)
+ or that the data is organized differently (e.g., more than one
+ request per result). If an analyzer subclass needs to over-write
+ this function with a custom save, that is appropriate to do (see abi).
+ """
+ # We maintain the structure in json with the analyzer as key so
+ # that in the future, we could upload to a monitor server
+ if result[self.name]:
+
+ outfile = os.path.join(self.output_dir, self.outfile)
+
+ # Only try to create the results directory if we have a result
+ if not os.path.exists(self._output_dir):
+ os.makedirs(self._output_dir)
+
+ # Don't overwrite an existing result if overwrite is False
+ if os.path.exists(outfile) and not overwrite:
+ tty.info("%s exists and overwrite is False, skipping." % outfile)
+ else:
+ tty.info("Writing result to %s" % outfile)
+ spack.monitor.write_json(result[self.name], outfile)
+
+ # This hook runs after a save result
+ spack.hooks.on_analyzer_save(self.spec.package, result)
diff --git a/lib/spack/spack/analyzers/config_args.py b/lib/spack/spack/analyzers/config_args.py
new file mode 100644
index 0000000000..f29993dcb3
--- /dev/null
+++ b/lib/spack/spack/analyzers/config_args.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+"""A configargs analyzer is a class of analyzer that typically just uploads
+already existing metadata about config args from a package spec install
+directory."""
+
+
+import spack.monitor
+from .analyzer_base import AnalyzerBase
+
+import os
+
+
+class ConfigArgs(AnalyzerBase):
+
+ name = "config_args"
+ outfile = "spack-analyzer-config-args.json"
+ description = "config args loaded from spack-configure-args.txt"
+
+ def run(self):
+ """
+ Load the configure-args.txt and save in json.
+
+ The run function will find the spack-config-args.txt file in the
+ package install directory, and read it into a json structure that has
+ the name of the analyzer as the key.
+ """
+ config_file = os.path.join(self.meta_dir, "spack-configure-args.txt")
+ return {self.name: spack.monitor.read_file(config_file)}
diff --git a/lib/spack/spack/analyzers/environment_variables.py b/lib/spack/spack/analyzers/environment_variables.py
new file mode 100644
index 0000000000..33c4034e31
--- /dev/null
+++ b/lib/spack/spack/analyzers/environment_variables.py
@@ -0,0 +1,51 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+"""An environment analyzer will read and parse the environment variables
+file in the installed package directory, generating a json file that has
+an index of key, value pairs for environment variables."""
+
+
+from .analyzer_base import AnalyzerBase
+from spack.util.environment import EnvironmentModifications
+
+
+import os
+
+
+class EnvironmentVariables(AnalyzerBase):
+
+ name = "environment_variables"
+ outfile = "spack-analyzer-environment-variables.json"
+ description = "environment variables parsed from spack-build-env.txt"
+
+ def run(self):
+ """
+ Load, parse, and save spack-build-env.txt to analyzers.
+
+ Read in the spack-build-env.txt file from the package install
+ directory and parse the environment variables into key value pairs.
+ The result should have the key for the analyzer, the name.
+ """
+ env_file = os.path.join(self.meta_dir, "spack-build-env.txt")
+ return {self.name: self._read_environment_file(env_file)}
+
+ def _read_environment_file(self, filename):
+ """
+ Read and parse the environment file.
+
+ Given an environment file, we want to read it, split by semicolons
+ and new lines, and then parse down to the subset of SPACK_* variables.
+ We assume that all spack prefix variables are not secrets, and unlike
+ the install_manifest.json, we don't (at least to start) parse the values
+ to remove path prefixes specific to user systems.
+ """
+ if not os.path.exists(filename):
+ return
+
+ mods = EnvironmentModifications.from_sourcing_file(filename)
+ env = {}
+ mods.apply_modifications(env)
+ return env
diff --git a/lib/spack/spack/analyzers/install_files.py b/lib/spack/spack/analyzers/install_files.py
new file mode 100644
index 0000000000..bdebac50fc
--- /dev/null
+++ b/lib/spack/spack/analyzers/install_files.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+"""The install files json file (install_manifest.json) already exists in
+the package install folder, so this analyzer simply moves it to the user
+analyzer folder for further processing."""
+
+
+import spack.monitor
+from .analyzer_base import AnalyzerBase
+
+import os
+
+
+class InstallFiles(AnalyzerBase):
+
+ name = "install_files"
+ outfile = "spack-analyzer-install-files.json"
+ description = "install file listing read from install_manifest.json"
+
+ def run(self):
+ """
+ Load in the install_manifest.json and save to analyzers.
+
+ We write it out to the analyzers folder, with key as the analyzer name.
+ """
+ manifest_file = os.path.join(self.meta_dir, "install_manifest.json")
+ return {self.name: spack.monitor.read_json(manifest_file)}
diff --git a/lib/spack/spack/analyzers/libabigail.py b/lib/spack/spack/analyzers/libabigail.py
new file mode 100644
index 0000000000..b53369b75f
--- /dev/null
+++ b/lib/spack/spack/analyzers/libabigail.py
@@ -0,0 +1,116 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+import spack
+import spack.error
+import spack.bootstrap
+import spack.hooks
+import spack.monitor
+import spack.binary_distribution
+import spack.package
+import spack.repo
+
+import llnl.util.tty as tty
+
+from .analyzer_base import AnalyzerBase
+
+import os
+
+
+class Libabigail(AnalyzerBase):
+
+ name = "libabigail"
+ outfile = "spack-analyzer-libabigail.json"
+ description = "Application Binary Interface (ABI) features for objects"
+
+ def __init__(self, spec, dirname=None):
+ """
+ init for an analyzer ensures we have all needed dependencies.
+
+ For the libabigail analyzer, this means Libabigail.
+ Since the output for libabigail is one file per object, we communicate
+ with the monitor multiple times.
+ """
+ super(Libabigail, self).__init__(spec, dirname)
+
+ # This doesn't seem to work to import on the module level
+ tty.debug("Preparing to use Libabigail, will install if missing.")
+
+ with spack.bootstrap.ensure_bootstrap_configuration():
+
+ # libabigail won't install lib/bin/share without docs
+ spec = spack.spec.Spec("libabigail+docs")
+ spec.concretize()
+
+ self.abidw = spack.bootstrap.get_executable(
+ "abidw", spec=spec, install=True)
+
+ def run(self):
+ """
+ Run libabigail, and save results to filename.
+
+ This run function differs in that we write as we generate and then
+ return a dict with the analyzer name as the key, and the value of a
+ dict of results, where the key is the object name, and the value is
+ the output file written to.
+ """
+ manifest = spack.binary_distribution.get_buildfile_manifest(self.spec)
+
+ # This result will store a path to each file
+ result = {}
+
+ # Generate an output file for each binary or object
+ for obj in manifest.get("binary_to_relocate_fullpath", []):
+
+ # We want to preserve the path in the install directory in case
+ # a library has an equivalenly named lib or executable, for example
+ outdir = os.path.dirname(obj.replace(self.spec.package.prefix,
+ '').strip(os.path.sep))
+ outfile = "spack-analyzer-libabigail-%s.xml" % os.path.basename(obj)
+ outfile = os.path.join(self.output_dir, outdir, outfile)
+ outdir = os.path.dirname(outfile)
+
+ # Create the output directory
+ if not os.path.exists(outdir):
+ os.makedirs(outdir)
+
+ # Sometimes libabigail segfaults and dumps
+ try:
+ self.abidw(obj, "--out-file", outfile)
+ result[obj] = outfile
+ tty.info("Writing result to %s" % outfile)
+ except spack.error.SpackError:
+ tty.warn("Issue running abidw for %s" % obj)
+
+ return {self.name: result}
+
+ def save_result(self, result, overwrite=False):
+ """
+ Read saved ABI results and upload to monitor server.
+
+ ABI results are saved to individual files, so each one needs to be
+ read and uploaded. Result here should be the lookup generated in run(),
+ the key is the analyzer name, and each value is the result file.
+ We currently upload the entire xml as text because libabigail can't
+ easily read gzipped xml, but this will be updated when it can.
+ """
+ if not spack.monitor.cli:
+ return
+
+ name = self.spec.package.name
+
+ for obj, filename in result.get(self.name, {}).items():
+
+ # Don't include the prefix
+ rel_path = obj.replace(self.spec.prefix + os.path.sep, "")
+
+ # We've already saved the results to file during run
+ content = spack.monitor.read_file(filename)
+
+ # A result needs an analyzer, value or binary_value, and name
+ data = {"value": content, "install_file": rel_path, "name": "abidw-xml"}
+ tty.info("Sending result for %s %s to monitor." % (name, rel_path))
+ spack.hooks.on_analyzer_save(self.spec.package, {"libabigail": [data]})
diff --git a/lib/spack/spack/architecture.py b/lib/spack/spack/architecture.py
index ece9040a7d..04cd85be49 100644
--- a/lib/spack/spack/architecture.py
+++ b/lib/spack/spack/architecture.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -58,14 +58,13 @@ will be responsible for compiler detection.
"""
import contextlib
import functools
-import inspect
import warnings
import archspec.cpu
import six
import llnl.util.tty as tty
-from llnl.util.lang import memoized, list_modules, key_ordering
+import llnl.util.lang as lang
import spack.compiler
import spack.compilers
@@ -74,7 +73,7 @@ import spack.paths
import spack.error as serr
import spack.util.executable
import spack.version
-from spack.util.naming import mod_to_class
+import spack.util.classes
from spack.util.spack_yaml import syaml_dict
@@ -232,24 +231,25 @@ class Target(object):
)
-@key_ordering
+@lang.lazy_lexicographic_ordering
class Platform(object):
""" Abstract class that each type of Platform will subclass.
Will return a instance of it once it is returned.
"""
- priority = None # Subclass sets number. Controls detection order
+ # Subclass sets number. Controls detection order
+ priority = None # type: int
#: binary formats used on this platform; used by relocation logic
binary_formats = ['elf']
- front_end = None
- back_end = None
- default = None # The default back end target.
+ front_end = None # type: str
+ back_end = None # type: str
+ default = None # type: str # The default back end target.
- front_os = None
- back_os = None
- default_os = None
+ front_os = None # type: str
+ back_os = None # type: str
+ default_os = None # type: str
reserved_targets = ['default_target', 'frontend', 'fe', 'backend', 'be']
reserved_oss = ['default_os', 'frontend', 'fe', 'backend', 'be']
@@ -328,23 +328,27 @@ class Platform(object):
def __str__(self):
return self.name
- def _cmp_key(self):
- t_keys = ''.join(str(t._cmp_key()) for t in
- sorted(self.targets.values()))
- o_keys = ''.join(str(o._cmp_key()) for o in
- sorted(self.operating_sys.values()))
- return (self.name,
- self.default,
- self.front_end,
- self.back_end,
- self.default_os,
- self.front_os,
- self.back_os,
- t_keys,
- o_keys)
-
-
-@key_ordering
+ def _cmp_iter(self):
+ yield self.name
+ yield self.default
+ yield self.front_end
+ yield self.back_end
+ yield self.default_os
+ yield self.front_os
+ yield self.back_os
+
+ def targets():
+ for t in sorted(self.targets.values()):
+ yield t._cmp_iter
+ yield targets
+
+ def oses():
+ for o in sorted(self.operating_sys.values()):
+ yield o._cmp_iter
+ yield oses
+
+
+@lang.lazy_lexicographic_ordering
class OperatingSystem(object):
""" Operating System will be like a class similar to platform extended
by subclasses for the specifics. Operating System will contain the
@@ -362,8 +366,9 @@ class OperatingSystem(object):
def __repr__(self):
return self.__str__()
- def _cmp_key(self):
- return (self.name, self.version)
+ def _cmp_iter(self):
+ yield self.name
+ yield self.version
def to_dict(self):
return syaml_dict([
@@ -372,7 +377,7 @@ class OperatingSystem(object):
])
-@key_ordering
+@lang.lazy_lexicographic_ordering
class Arch(object):
"""Architecture is now a class to help with setting attributes.
@@ -422,20 +427,21 @@ class Arch(object):
self.target is not None)
__bool__ = __nonzero__
- def _cmp_key(self):
+ def _cmp_iter(self):
if isinstance(self.platform, Platform):
- platform = self.platform.name
+ yield self.platform.name
else:
- platform = self.platform
+ yield self.platform
+
if isinstance(self.os, OperatingSystem):
- os = self.os.name
+ yield self.os.name
else:
- os = self.os
+ yield self.os
+
if isinstance(self.target, Target):
- target = self.target.microarchitecture
+ yield self.target.microarchitecture
else:
- target = self.target
- return (platform, os, target)
+ yield self.target
def to_dict(self):
str_or_none = lambda v: str(v) if v else None
@@ -457,7 +463,7 @@ class Arch(object):
return arch_for_spec(spec)
-@memoized
+@lang.memoized
def get_platform(platform_name):
"""Returns a platform object that corresponds to the given name."""
platform_list = all_platforms()
@@ -493,28 +499,13 @@ def arch_for_spec(arch_spec):
return Arch(arch_plat, arch_spec.os, arch_spec.target)
-@memoized
+@lang.memoized
def _all_platforms():
- classes = []
mod_path = spack.paths.platform_path
- parent_module = "spack.platforms"
-
- for name in list_modules(mod_path):
- mod_name = '%s.%s' % (parent_module, name)
- class_name = mod_to_class(name)
- mod = __import__(mod_name, fromlist=[class_name])
- if not hasattr(mod, class_name):
- tty.die('No class %s defined in %s' % (class_name, mod_name))
- cls = getattr(mod, class_name)
- if not inspect.isclass(cls):
- tty.die('%s.%s is not a class' % (mod_name, class_name))
-
- classes.append(cls)
-
- return classes
+ return spack.util.classes.list_classes("spack.platforms", mod_path)
-@memoized
+@lang.memoized
def _platform():
"""Detects the platform for this machine.
@@ -545,7 +536,7 @@ platform = _platform
all_platforms = _all_platforms
-@memoized
+@lang.memoized
def default_arch():
"""Default ``Arch`` object for this machine.
@@ -569,7 +560,7 @@ def sys_type():
return str(default_arch())
-@memoized
+@lang.memoized
def compatible_sys_types():
"""Returns a list of all the systypes compatible with the current host."""
compatible_archs = []
diff --git a/lib/spack/spack/binary_distribution.py b/lib/spack/spack/binary_distribution.py
index 00fffdfe51..1ac89b615c 100644
--- a/lib/spack/spack/binary_distribution.py
+++ b/lib/spack/spack/binary_distribution.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,13 +37,11 @@ import spack.util.spack_yaml as syaml
import spack.mirror
import spack.util.url as url_util
import spack.util.web as web_util
+from spack.caches import misc_cache_location
from spack.spec import Spec
from spack.stage import Stage
-#: default root, relative to the Spack install path
-default_binary_index_root = os.path.join(spack.paths.opt_path, 'spack')
-
_build_cache_relative_path = 'build_cache'
_build_cache_keys_relative_path = '_pgp'
@@ -67,9 +65,8 @@ class BinaryCacheIndex(object):
mean we should have paid the price to update the cache earlier?
"""
- def __init__(self, cache_root=None):
- self._cache_root = cache_root or default_binary_index_root
- self._index_cache_root = os.path.join(self._cache_root, 'indices')
+ def __init__(self, cache_root):
+ self._index_cache_root = cache_root
# the key associated with the serialized _local_index_cache
self._index_contents_key = 'contents.json'
@@ -440,13 +437,15 @@ class BinaryCacheIndex(object):
return True
+def binary_index_location():
+ """Set up a BinaryCacheIndex for remote buildcache dbs in the user's homedir."""
+ cache_root = os.path.join(misc_cache_location(), 'indices')
+ return spack.util.path.canonicalize_path(cache_root)
+
+
def _binary_index():
"""Get the singleton store instance."""
- cache_root = spack.config.get(
- 'config:binary_index_root', default_binary_index_root)
- cache_root = spack.util.path.canonicalize_path(cache_root)
-
- return BinaryCacheIndex(cache_root)
+ return BinaryCacheIndex(binary_index_location())
#: Singleton binary_index instance
@@ -551,40 +550,38 @@ def read_buildinfo_file(prefix):
return buildinfo
-def write_buildinfo_file(spec, workdir, rel=False):
+def get_buildfile_manifest(spec):
"""
- Create a cache file containing information
- required for the relocation
+ Return a data structure with information about a build, including
+ text_to_relocate, binary_to_relocate, binary_to_relocate_fullpath
+ link_to_relocate, and other, which means it doesn't fit any of previous
+ checks (and should not be relocated). We blacklist docs (man) and
+ metadata (.spack). This can be used to find a particular kind of file
+ in spack, or to generate the build metadata.
"""
- prefix = spec.prefix
- text_to_relocate = []
- binary_to_relocate = []
- link_to_relocate = []
+ data = {"text_to_relocate": [], "binary_to_relocate": [],
+ "link_to_relocate": [], "other": [],
+ "binary_to_relocate_fullpath": []}
+
blacklist = (".spack", "man")
- prefix_to_hash = dict()
- prefix_to_hash[str(spec.package.prefix)] = spec.dag_hash()
- deps = spack.build_environment.get_rpath_deps(spec.package)
- for d in deps:
- prefix_to_hash[str(d.prefix)] = d.dag_hash()
+
# Do this at during tarball creation to save time when tarball unpacked.
# Used by make_package_relative to determine binaries to change.
- for root, dirs, files in os.walk(prefix, topdown=True):
+ for root, dirs, files in os.walk(spec.prefix, topdown=True):
dirs[:] = [d for d in dirs if d not in blacklist]
for filename in files:
path_name = os.path.join(root, filename)
m_type, m_subtype = relocate.mime_type(path_name)
+ rel_path_name = os.path.relpath(path_name, spec.prefix)
+ added = False
+
if os.path.islink(path_name):
link = os.readlink(path_name)
if os.path.isabs(link):
# Relocate absolute links into the spack tree
if link.startswith(spack.store.layout.root):
- rel_path_name = os.path.relpath(path_name, prefix)
- link_to_relocate.append(rel_path_name)
- else:
- msg = 'Absolute link %s to %s ' % (path_name, link)
- msg += 'outside of prefix %s ' % prefix
- msg += 'should not be relocated.'
- tty.warn(msg)
+ data['link_to_relocate'].append(rel_path_name)
+ added = True
if relocate.needs_binary_relocation(m_type, m_subtype):
if ((m_subtype in ('x-executable', 'x-sharedlib')
@@ -592,11 +589,31 @@ def write_buildinfo_file(spec, workdir, rel=False):
(m_subtype in ('x-mach-binary')
and sys.platform == 'darwin') or
(not filename.endswith('.o'))):
- rel_path_name = os.path.relpath(path_name, prefix)
- binary_to_relocate.append(rel_path_name)
+ data['binary_to_relocate'].append(rel_path_name)
+ data['binary_to_relocate_fullpath'].append(path_name)
+ added = True
+
if relocate.needs_text_relocation(m_type, m_subtype):
- rel_path_name = os.path.relpath(path_name, prefix)
- text_to_relocate.append(rel_path_name)
+ data['text_to_relocate'].append(rel_path_name)
+ added = True
+
+ if not added:
+ data['other'].append(path_name)
+ return data
+
+
+def write_buildinfo_file(spec, workdir, rel=False):
+ """
+ Create a cache file containing information
+ required for the relocation
+ """
+ manifest = get_buildfile_manifest(spec)
+
+ prefix_to_hash = dict()
+ prefix_to_hash[str(spec.package.prefix)] = spec.dag_hash()
+ deps = spack.build_environment.get_rpath_deps(spec.package)
+ for d in deps:
+ prefix_to_hash[str(d.prefix)] = d.dag_hash()
# Create buildinfo data and write it to disk
import spack.hooks.sbang as sbang
@@ -606,10 +623,10 @@ def write_buildinfo_file(spec, workdir, rel=False):
buildinfo['buildpath'] = spack.store.layout.root
buildinfo['spackprefix'] = spack.paths.prefix
buildinfo['relative_prefix'] = os.path.relpath(
- prefix, spack.store.layout.root)
- buildinfo['relocate_textfiles'] = text_to_relocate
- buildinfo['relocate_binaries'] = binary_to_relocate
- buildinfo['relocate_links'] = link_to_relocate
+ spec.prefix, spack.store.layout.root)
+ buildinfo['relocate_textfiles'] = manifest['text_to_relocate']
+ buildinfo['relocate_binaries'] = manifest['binary_to_relocate']
+ buildinfo['relocate_links'] = manifest['link_to_relocate']
buildinfo['prefix_to_hash'] = prefix_to_hash
filename = buildinfo_file_name(workdir)
with open(filename, 'w') as outfile:
@@ -763,6 +780,10 @@ def generate_package_index(cache_prefix):
url_util.join(cache_prefix, 'index.json.hash'),
keep_original=False,
extra_args={'ContentType': 'text/plain'})
+ except Exception as err:
+ msg = 'Encountered problem pushing package index to {0}: {1}'.format(
+ cache_prefix, err)
+ tty.warn(msg)
finally:
shutil.rmtree(tmpdir)
@@ -823,6 +844,10 @@ def generate_key_index(key_prefix, tmpdir=None):
url_util.join(key_prefix, 'index.json'),
keep_original=False,
extra_args={'ContentType': 'application/json'})
+ except Exception as err:
+ msg = 'Encountered problem pushing key index to {0}: {1}'.format(
+ key_prefix, err)
+ tty.warn(msg)
finally:
if remove_tmpdir:
shutil.rmtree(tmpdir)
@@ -1081,6 +1106,8 @@ def relocate_package(spec, allow_root):
"""
Relocate the given package
"""
+ import spack.hooks.sbang as sbang
+
workdir = str(spec.prefix)
buildinfo = read_buildinfo_file(workdir)
new_layout_root = str(spack.store.layout.root)
@@ -1119,9 +1146,7 @@ def relocate_package(spec, allow_root):
prefix_to_prefix_bin = OrderedDict({})
if old_sbang_install_path:
- import spack.hooks.sbang as sbang
- prefix_to_prefix_text[old_sbang_install_path] = \
- sbang.sbang_install_path()
+ prefix_to_prefix_text[old_sbang_install_path] = sbang.sbang_install_path()
prefix_to_prefix_text[old_prefix] = new_prefix
prefix_to_prefix_bin[old_prefix] = new_prefix
@@ -1134,7 +1159,6 @@ def relocate_package(spec, allow_root):
# sbang was a bash script, and it lived in the spack prefix. It is
# now a POSIX script that lives in the install prefix. Old packages
# will have the old sbang location in their shebangs.
- import spack.hooks.sbang as sbang
orig_sbang = '#!/bin/bash {0}/bin/sbang'.format(old_spack_prefix)
new_sbang = sbang.sbang_shebang_line()
prefix_to_prefix_text[orig_sbang] = new_sbang
@@ -1153,8 +1177,8 @@ def relocate_package(spec, allow_root):
if not is_backup_file(text_name):
text_names.append(text_name)
-# If we are not installing back to the same install tree do the relocation
- if old_layout_root != new_layout_root:
+ # If we are not installing back to the same install tree do the relocation
+ if old_prefix != new_prefix:
files_to_relocate = [os.path.join(workdir, filename)
for filename in buildinfo.get('relocate_binaries')
]
@@ -1323,7 +1347,7 @@ def extract_tarball(spec, filename, allow_root=False, unsigned=False,
os.remove(filename)
-def try_direct_fetch(spec, force=False, full_hash_match=False, mirrors=None):
+def try_direct_fetch(spec, full_hash_match=False, mirrors=None):
"""
Try to find the spec directly on the configured mirrors
"""
@@ -1361,11 +1385,26 @@ def try_direct_fetch(spec, force=False, full_hash_match=False, mirrors=None):
return found_specs
-def get_mirrors_for_spec(spec=None, force=False, full_hash_match=False,
- mirrors_to_check=None):
+def get_mirrors_for_spec(spec=None, full_hash_match=False,
+ mirrors_to_check=None, index_only=False):
"""
Check if concrete spec exists on mirrors and return a list
indicating the mirrors on which it can be found
+
+ Args:
+ spec (Spec): The spec to look for in binary mirrors
+ full_hash_match (bool): If True, only includes mirrors where the spec
+ full hash matches the locally computed full hash of the ``spec``
+ argument. If False, any mirror which has a matching DAG hash
+ is included in the results.
+ mirrors_to_check (dict): Optionally override the configured mirrors
+ with the mirrors in this dictionary.
+ index_only (bool): Do not attempt direct fetching of ``spec.yaml``
+ files from remote mirrors, only consider the indices.
+
+ Return:
+ A list of objects, each containing a ``mirror_url`` and ``spec`` key
+ indicating all mirrors where the spec can be found.
"""
if spec is None:
return []
@@ -1391,10 +1430,9 @@ def get_mirrors_for_spec(spec=None, force=False, full_hash_match=False,
results = filter_candidates(candidates)
# Maybe we just didn't have the latest information from the mirror, so
- # try to fetch directly.
- if not results:
+ # try to fetch directly, unless we are only considering the indices.
+ if not results and not index_only:
results = try_direct_fetch(spec,
- force=force,
full_hash_match=full_hash_match,
mirrors=mirrors_to_check)
diff --git a/lib/spack/spack/bootstrap.py b/lib/spack/spack/bootstrap.py
index f8d0703174..6a536ce6a7 100644
--- a/lib/spack/spack/bootstrap.py
+++ b/lib/spack/spack/bootstrap.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -198,9 +198,7 @@ def get_executable(exe, spec=None, install=False):
def _bootstrap_config_scopes():
tty.debug('[BOOTSTRAP CONFIG SCOPE] name=_builtin')
config_scopes = [
- spack.config.InternalConfigScope(
- '_builtin', spack.config.config_defaults
- )
+ spack.config.InternalConfigScope('_builtin', spack.config.config_defaults)
]
for name, path in spack.config.configuration_paths:
platform = spack.architecture.platform().name
diff --git a/lib/spack/spack/build_environment.py b/lib/spack/spack/build_environment.py
index 3cf02dcbb4..b9fcece027 100644
--- a/lib/spack/spack/build_environment.py
+++ b/lib/spack/spack/build_environment.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -70,8 +70,7 @@ from spack.error import NoLibrariesError, NoHeadersError
from spack.util.executable import Executable
from spack.util.module_cmd import load_module, path_from_modules, module
from spack.util.log_parse import parse_log_events, make_log_context
-
-
+from spack.util.cpus import cpus_available
#
# This can be set by the user to globally disable parallel builds.
#
@@ -149,12 +148,17 @@ def clean_environment():
# can affect how some packages find libraries. We want to make
# sure that builds never pull in unintended external dependencies.
env.unset('LD_LIBRARY_PATH')
- env.unset('LIBRARY_PATH')
- env.unset('CPATH')
env.unset('LD_RUN_PATH')
env.unset('DYLD_LIBRARY_PATH')
env.unset('DYLD_FALLBACK_LIBRARY_PATH')
+ # These vars affect how the compiler finds libraries and include dirs.
+ env.unset('LIBRARY_PATH')
+ env.unset('CPATH')
+ env.unset('C_INCLUDE_PATH')
+ env.unset('CPLUS_INCLUDE_PATH')
+ env.unset('OBJC_INCLUDE_PATH')
+
# On Cray "cluster" systems, unset CRAY_LD_LIBRARY_PATH to avoid
# interference with Spack dependencies.
# CNL requires these variables to be set (or at least some of them,
@@ -440,8 +444,7 @@ def set_build_environment_variables(pkg, env, dirty):
# directory. Add that to the path too.
env_paths = []
compiler_specific = os.path.join(
- spack.paths.build_env_path,
- os.path.dirname(pkg.compiler.link_paths['cc']))
+ spack.paths.build_env_path, os.path.dirname(pkg.compiler.link_paths['cc']))
for item in [spack.paths.build_env_path, compiler_specific]:
env_paths.append(item)
ci = os.path.join(item, 'case-insensitive')
@@ -476,6 +479,38 @@ def set_build_environment_variables(pkg, env, dirty):
return env
+def determine_number_of_jobs(
+ parallel=False, command_line=None, config_default=None, max_cpus=None):
+ """
+ Packages that require sequential builds need 1 job. Otherwise we use the
+ number of jobs set on the command line. If not set, then we use the config
+ defaults (which is usually set through the builtin config scope), but we
+ cap to the number of CPUs available to avoid oversubscription.
+
+ Parameters:
+ parallel (bool): true when package supports parallel builds
+ command_line (int/None): command line override
+ config_default (int/None): config default number of jobs
+ max_cpus (int/None): maximum number of CPUs available. When None, this
+ value is automatically determined.
+ """
+ if not parallel:
+ return 1
+
+ if command_line is None and 'command_line' in spack.config.scopes():
+ command_line = spack.config.get('config:build_jobs', scope='command_line')
+
+ if command_line is not None:
+ return command_line
+
+ max_cpus = max_cpus or cpus_available()
+
+ # in some rare cases _builtin config may not be set, so default to max 16
+ config_default = config_default or spack.config.get('config:build_jobs', 16)
+
+ return min(max_cpus, config_default)
+
+
def _set_variables_for_single_module(pkg, module):
"""Helper function to set module variables for single module."""
# Put a marker on this module so that it won't execute the body of this
@@ -484,8 +519,7 @@ def _set_variables_for_single_module(pkg, module):
if getattr(module, marker, False):
return
- jobs = spack.config.get('config:build_jobs', 16) if pkg.parallel else 1
- jobs = min(jobs, multiprocessing.cpu_count())
+ jobs = determine_number_of_jobs(parallel=pkg.parallel)
m = module
m.make_jobs = jobs
diff --git a/lib/spack/spack/build_systems/__init__.py b/lib/spack/spack/build_systems/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/build_systems/__init__.py
+++ b/lib/spack/spack/build_systems/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/aspell_dict.py b/lib/spack/spack/build_systems/aspell_dict.py
index 7da4d2f10c..55ea78145a 100644
--- a/lib/spack/spack/build_systems/aspell_dict.py
+++ b/lib/spack/spack/build_systems/aspell_dict.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/autotools.py b/lib/spack/spack/build_systems/autotools.py
index ee9fb6884e..bce9afebf7 100644
--- a/lib/spack/spack/build_systems/autotools.py
+++ b/lib/spack/spack/build_systems/autotools.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,8 +6,10 @@ import inspect
import itertools
import os
import os.path
+import stat
from subprocess import PIPE
from subprocess import check_call
+from typing import List # novm
import llnl.util.tty as tty
import llnl.util.filesystem as fs
@@ -61,7 +63,7 @@ class AutotoolsPackage(PackageBase):
#: Targets for ``make`` during the :py:meth:`~.AutotoolsPackage.build`
#: phase
- build_targets = []
+ build_targets = [] # type: List[str]
#: Targets for ``make`` during the :py:meth:`~.AutotoolsPackage.install`
#: phase
install_targets = ['install']
@@ -75,7 +77,7 @@ class AutotoolsPackage(PackageBase):
#: Set to true to force the autoreconf step even if configure is present
force_autoreconf = False
#: Options to be passed to autoreconf when using the default implementation
- autoreconf_extra_args = []
+ autoreconf_extra_args = [] # type: List[str]
#: If False deletes all the .la files in the prefix folder
#: after the installation. If True instead it installs them.
@@ -173,7 +175,10 @@ class AutotoolsPackage(PackageBase):
# Copy the good files over the bad ones
for abs_path in to_be_patched:
name = os.path.basename(abs_path)
+ mode = os.stat(abs_path).st_mode
+ os.chmod(abs_path, stat.S_IWUSR)
fs.copy(substitutes[name], abs_path)
+ os.chmod(abs_path, mode)
@run_before('configure')
def _set_autotools_environment_variables(self):
diff --git a/lib/spack/spack/build_systems/cached_cmake.py b/lib/spack/spack/build_systems/cached_cmake.py
new file mode 100644
index 0000000000..2c3e150528
--- /dev/null
+++ b/lib/spack/spack/build_systems/cached_cmake.py
@@ -0,0 +1,249 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import os
+
+from llnl.util.filesystem import install, mkdirp
+import llnl.util.tty as tty
+
+from spack.build_systems.cmake import CMakePackage
+from spack.package import run_after
+
+
+def cmake_cache_path(name, value, comment=""):
+ """Generate a string for a cmake cache variable"""
+ return 'set({0} "{1}" CACHE PATH "{2}")\n'.format(name, value, comment)
+
+
+def cmake_cache_string(name, value, comment=""):
+ """Generate a string for a cmake cache variable"""
+ return 'set({0} "{1}" CACHE STRING "{2}")\n'.format(name, value, comment)
+
+
+def cmake_cache_option(name, boolean_value, comment=""):
+ """Generate a string for a cmake configuration option"""
+
+ value = "ON" if boolean_value else "OFF"
+ return 'set({0} {1} CACHE BOOL "{2}")\n'.format(name, value, comment)
+
+
+class CachedCMakePackage(CMakePackage):
+ """Specialized class for packages built using CMake initial cache.
+
+ This feature of CMake allows packages to increase reproducibility,
+ especially between Spack- and manual builds. It also allows packages to
+ sidestep certain parsing bugs in extremely long ``cmake`` commands, and to
+ avoid system limits on the length of the command line."""
+
+ phases = ['initconfig', 'cmake', 'build', 'install']
+
+ @property
+ def cache_name(self):
+ return "{0}-{1}-{2}@{3}.cmake".format(
+ self.name,
+ self.spec.architecture,
+ self.spec.compiler.name,
+ self.spec.compiler.version,
+ )
+
+ @property
+ def cache_path(self):
+ return os.path.join(self.stage.source_path, self.cache_name)
+
+ def flag_handler(self, name, flags):
+ if name in ('cflags', 'cxxflags', 'cppflags', 'fflags'):
+ return (None, None, None) # handled in the cmake cache
+ return (flags, None, None)
+
+ def initconfig_compiler_entries(self):
+ # This will tell cmake to use the Spack compiler wrappers when run
+ # through Spack, but use the underlying compiler when run outside of
+ # Spack
+ spec = self.spec
+
+ # Fortran compiler is optional
+ if "FC" in os.environ:
+ spack_fc_entry = cmake_cache_path(
+ "CMAKE_Fortran_COMPILER", os.environ['FC'])
+ system_fc_entry = cmake_cache_path(
+ "CMAKE_Fortran_COMPILER", self.compiler.fc)
+ else:
+ spack_fc_entry = "# No Fortran compiler defined in spec"
+ system_fc_entry = "# No Fortran compiler defined in spec"
+
+ entries = [
+ "#------------------{0}".format("-" * 60),
+ "# Compilers",
+ "#------------------{0}".format("-" * 60),
+ "# Compiler Spec: {0}".format(spec.compiler),
+ "#------------------{0}".format("-" * 60),
+ 'if(DEFINED ENV{SPACK_CC})\n',
+ ' ' + cmake_cache_path(
+ "CMAKE_C_COMPILER", os.environ['CC']),
+ ' ' + cmake_cache_path(
+ "CMAKE_CXX_COMPILER", os.environ['CXX']),
+ ' ' + spack_fc_entry,
+ 'else()\n',
+ ' ' + cmake_cache_path(
+ "CMAKE_C_COMPILER", self.compiler.cc),
+ ' ' + cmake_cache_path(
+ "CMAKE_CXX_COMPILER", self.compiler.cxx),
+ ' ' + system_fc_entry,
+ 'endif()\n'
+ ]
+
+ # use global spack compiler flags
+ cppflags = ' '.join(spec.compiler_flags['cppflags'])
+ if cppflags:
+ # avoid always ending up with ' ' with no flags defined
+ cppflags += ' '
+ cflags = cppflags + ' '.join(spec.compiler_flags['cflags'])
+ if cflags:
+ entries.append(cmake_cache_string("CMAKE_C_FLAGS", cflags))
+ cxxflags = cppflags + ' '.join(spec.compiler_flags['cxxflags'])
+ if cxxflags:
+ entries.append(cmake_cache_string("CMAKE_CXX_FLAGS", cxxflags))
+ fflags = ' '.join(spec.compiler_flags['fflags'])
+ if fflags:
+ entries.append(cmake_cache_string("CMAKE_Fortran_FLAGS", fflags))
+
+ # Override XL compiler family
+ familymsg = ("Override to proper compiler family for XL")
+ if "xlf" in (self.compiler.fc or ''): # noqa: F821
+ entries.append(cmake_cache_string(
+ "CMAKE_Fortran_COMPILER_ID", "XL",
+ familymsg))
+ if "xlc" in self.compiler.cc: # noqa: F821
+ entries.append(cmake_cache_string(
+ "CMAKE_C_COMPILER_ID", "XL",
+ familymsg))
+ if "xlC" in self.compiler.cxx: # noqa: F821
+ entries.append(cmake_cache_string(
+ "CMAKE_CXX_COMPILER_ID", "XL",
+ familymsg))
+
+ return entries
+
+ def initconfig_mpi_entries(self):
+ spec = self.spec
+
+ if not spec.satisfies('^mpi'):
+ return []
+
+ entries = [
+ "#------------------{0}".format("-" * 60),
+ "# MPI",
+ "#------------------{0}\n".format("-" * 60),
+ ]
+
+ entries.append(cmake_cache_path("MPI_C_COMPILER",
+ spec['mpi'].mpicc))
+ entries.append(cmake_cache_path("MPI_CXX_COMPILER",
+ spec['mpi'].mpicxx))
+ entries.append(cmake_cache_path("MPI_Fortran_COMPILER",
+ spec['mpi'].mpifc))
+
+ # Check for slurm
+ using_slurm = False
+ slurm_checks = ['+slurm',
+ 'schedulers=slurm',
+ 'process_managers=slurm']
+ if any(spec['mpi'].satisfies(variant) for variant in slurm_checks):
+ using_slurm = True
+
+ # Determine MPIEXEC
+ if using_slurm:
+ if spec['mpi'].external:
+ # Heuristic until we have dependents on externals
+ mpiexec = '/usr/bin/srun'
+ else:
+ mpiexec = os.path.join(spec['slurm'].prefix.bin, 'srun')
+ else:
+ mpiexec = os.path.join(spec['mpi'].prefix.bin, 'mpirun')
+ if not os.path.exists(mpiexec):
+ mpiexec = os.path.join(spec['mpi'].prefix.bin, 'mpiexec')
+
+ if not os.path.exists(mpiexec):
+ msg = "Unable to determine MPIEXEC, %s tests may fail" % self.name
+ entries.append("# {0}\n".format(msg))
+ tty.warn(msg)
+ else:
+ # starting with cmake 3.10, FindMPI expects MPIEXEC_EXECUTABLE
+ # vs the older versions which expect MPIEXEC
+ if self.spec["cmake"].satisfies('@3.10:'):
+ entries.append(cmake_cache_path("MPIEXEC_EXECUTABLE",
+ mpiexec))
+ else:
+ entries.append(cmake_cache_path("MPIEXEC", mpiexec))
+
+ # Determine MPIEXEC_NUMPROC_FLAG
+ if using_slurm:
+ entries.append(cmake_cache_string("MPIEXEC_NUMPROC_FLAG", "-n"))
+ else:
+ entries.append(cmake_cache_string("MPIEXEC_NUMPROC_FLAG", "-np"))
+
+ return entries
+
+ def initconfig_hardware_entries(self):
+ spec = self.spec
+
+ entries = [
+ "#------------------{0}".format("-" * 60),
+ "# Hardware",
+ "#------------------{0}\n".format("-" * 60),
+ ]
+
+ if spec.satisfies('^cuda'):
+ entries.append("#------------------{0}".format("-" * 30))
+ entries.append("# Cuda")
+ entries.append("#------------------{0}\n".format("-" * 30))
+
+ cudatoolkitdir = spec['cuda'].prefix
+ entries.append(cmake_cache_path("CUDA_TOOLKIT_ROOT_DIR",
+ cudatoolkitdir))
+ cudacompiler = "${CUDA_TOOLKIT_ROOT_DIR}/bin/nvcc"
+ entries.append(cmake_cache_path("CMAKE_CUDA_COMPILER",
+ cudacompiler))
+
+ if spec.satisfies('^mpi'):
+ entries.append(cmake_cache_path("CMAKE_CUDA_HOST_COMPILER",
+ "${MPI_CXX_COMPILER}"))
+ else:
+ entries.append(cmake_cache_path("CMAKE_CUDA_HOST_COMPILER",
+ "${CMAKE_CXX_COMPILER}"))
+
+ return entries
+
+ def std_initconfig_entries(self):
+ return [
+ "#------------------{0}".format("-" * 60),
+ "# !!!! This is a generated file, edit at own risk !!!!",
+ "#------------------{0}".format("-" * 60),
+ "# CMake executable path: {0}".format(
+ self.spec['cmake'].command.path),
+ "#------------------{0}\n".format("-" * 60),
+ ]
+
+ def initconfig(self, spec, prefix):
+ cache_entries = (self.std_initconfig_entries() +
+ self.initconfig_compiler_entries() +
+ self.initconfig_mpi_entries() +
+ self.initconfig_hardware_entries() +
+ self.initconfig_package_entries())
+
+ with open(self.cache_name, 'w') as f:
+ for entry in cache_entries:
+ f.write('%s\n' % entry)
+ f.write('\n')
+
+ @property
+ def std_cmake_args(self):
+ args = super(CachedCMakePackage, self).std_cmake_args
+ args.extend(['-C', self.cache_path])
+ return args
+
+ @run_after('install')
+ def install_cmake_cache(self):
+ mkdirp(self.spec.prefix.share.cmake)
+ install(self.cache_path, self.spec.prefix.share.cmake)
diff --git a/lib/spack/spack/build_systems/cmake.py b/lib/spack/spack/build_systems/cmake.py
index 1336069846..61b3a3cb57 100644
--- a/lib/spack/spack/build_systems/cmake.py
+++ b/lib/spack/spack/build_systems/cmake.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,6 +8,7 @@ import inspect
import os
import platform
import re
+from typing import List # novm
import spack.build_environment
from llnl.util.filesystem import working_dir
@@ -74,7 +75,7 @@ class CMakePackage(PackageBase):
#: system base class
build_system_class = 'CMakePackage'
- build_targets = []
+ build_targets = [] # type: List[str]
install_targets = ['install']
build_time_test_callbacks = ['check']
diff --git a/lib/spack/spack/build_systems/cuda.py b/lib/spack/spack/build_systems/cuda.py
index 61007431a4..25b5381900 100644
--- a/lib/spack/spack/build_systems/cuda.py
+++ b/lib/spack/spack/build_systems/cuda.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/gnu.py b/lib/spack/spack/build_systems/gnu.py
index c5b5e74bb9..6f5771214e 100644
--- a/lib/spack/spack/build_systems/gnu.py
+++ b/lib/spack/spack/build_systems/gnu.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/intel.py b/lib/spack/spack/build_systems/intel.py
index 0e0bb9378b..16a7e50084 100644
--- a/lib/spack/spack/build_systems/intel.py
+++ b/lib/spack/spack/build_systems/intel.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -151,7 +151,7 @@ class IntelPackage(PackageBase):
'+advisor': 'advisor',
'+inspector': 'inspector',
'+itac': 'itac',
- '+vtune': 'vtune_amplifier',
+ '+vtune': 'vtune_profiler',
}.items():
if variant in self.spec:
dirs.append(self.normalize_path(
@@ -202,7 +202,8 @@ class IntelPackage(PackageBase):
'+itac': ' intel-itac intel-ta intel-tc'
' intel-trace-analyzer intel-trace-collector',
# Trace Analyzer and Collector
- '+vtune': ' intel-vtune-amplifier', # VTune
+ '+vtune': ' intel-vtune'
+ # VTune, ..-profiler since 2020, ..-amplifier before
}.items():
if variant in self.spec:
c += components_to_add
@@ -535,8 +536,9 @@ class IntelPackage(PackageBase):
[None, '2016:', 'compilers_and_libraries'],
['advisor', ':2016', 'advisor_xe'],
['inspector', ':2016', 'inspector_xe'],
- ['vtune_amplifier', ':2017', 'vtune_amplifier_xe'],
+ ['vtune_profiler', ':2017', 'vtune_amplifier_xe'],
['vtune', ':2017', 'vtune_amplifier_xe'], # alt.
+ ['vtune_profiler', ':2019', 'vtune_amplifier'],
['itac', ':', 'itac', [os.sep + standalone_glob]],
]:
if cs == rename_rule[0] and v.satisfies(ver(rename_rule[1])):
@@ -815,6 +817,7 @@ class IntelPackage(PackageBase):
# Was supported only up to 2015.
blacs_lib = 'libmkl_blacs'
elif ('^mpich@2:' in spec_root or
+ '^cray-mpich' in spec_root or
'^mvapich2' in spec_root or
'^intel-mpi' in spec_root or
'^intel-parallel-studio' in spec_root):
diff --git a/lib/spack/spack/build_systems/makefile.py b/lib/spack/spack/build_systems/makefile.py
index 6cd05c7ad9..fbc415e0ed 100644
--- a/lib/spack/spack/build_systems/makefile.py
+++ b/lib/spack/spack/build_systems/makefile.py
@@ -1,10 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import inspect
+from typing import List # novm
import llnl.util.tty as tty
from llnl.util.filesystem import working_dir
@@ -48,7 +49,7 @@ class MakefilePackage(PackageBase):
#: Targets for ``make`` during the :py:meth:`~.MakefilePackage.build`
#: phase
- build_targets = []
+ build_targets = [] # type: List[str]
#: Targets for ``make`` during the :py:meth:`~.MakefilePackage.install`
#: phase
install_targets = ['install']
diff --git a/lib/spack/spack/build_systems/maven.py b/lib/spack/spack/build_systems/maven.py
index e9df34e791..7a5caabd29 100644
--- a/lib/spack/spack/build_systems/maven.py
+++ b/lib/spack/spack/build_systems/maven.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/meson.py b/lib/spack/spack/build_systems/meson.py
index 825b4c98c3..8f9972ba2e 100644
--- a/lib/spack/spack/build_systems/meson.py
+++ b/lib/spack/spack/build_systems/meson.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,6 +6,7 @@
import inspect
import os
+from typing import List # novm
from llnl.util.filesystem import working_dir
from spack.directives import depends_on, variant
@@ -46,14 +47,18 @@ class MesonPackage(PackageBase):
#: system base class
build_system_class = 'MesonPackage'
- build_targets = []
+ build_targets = [] # type: List[str]
install_targets = ['install']
build_time_test_callbacks = ['check']
- variant('buildtype', default='release',
+ variant('buildtype', default='debugoptimized',
description='Meson build type',
values=('plain', 'debug', 'debugoptimized', 'release', 'minsize'))
+ variant('default_library', default='shared',
+ description=' Default library type',
+ values=('shared', 'static', 'both'))
+ variant('strip', default=False, description='Strip targets on install')
depends_on('meson', type='build')
depends_on('ninja', type='build')
@@ -95,6 +100,13 @@ class MesonPackage(PackageBase):
except KeyError:
build_type = 'release'
+ strip = 'true' if '+strip' in pkg.spec else 'false'
+
+ try:
+ default_library = pkg.spec.variants['default_library'].value
+ except KeyError:
+ default_library = 'shared'
+
args = [
'--prefix={0}'.format(pkg.prefix),
# If we do not specify libdir explicitly, Meson chooses something
@@ -102,8 +114,9 @@ class MesonPackage(PackageBase):
# find libraries and pkg-config files.
# See https://github.com/mesonbuild/meson/issues/2197
'--libdir={0}'.format(pkg.prefix.lib),
- '--buildtype={0}'.format(build_type),
- '--strip',
+ '-Dbuildtype={0}'.format(build_type),
+ '-Dstrip={0}'.format(strip),
+ '-Ddefault_library={0}'.format(default_library)
]
return args
@@ -130,6 +143,7 @@ class MesonPackage(PackageBase):
* ``--libdir``
* ``--buildtype``
* ``--strip``
+ * ``--default_library``
which will be set automatically.
diff --git a/lib/spack/spack/build_systems/octave.py b/lib/spack/spack/build_systems/octave.py
index 16d6a0a1b8..bedf717811 100644
--- a/lib/spack/spack/build_systems/octave.py
+++ b/lib/spack/spack/build_systems/octave.py
@@ -1,11 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import inspect
-from spack.directives import depends_on, extends
+from spack.directives import extends
from spack.package import PackageBase, run_after
@@ -27,7 +27,6 @@ class OctavePackage(PackageBase):
build_system_class = 'OctavePackage'
extends('octave')
- depends_on('octave', type=('build', 'run'))
def setup_build_environment(self, env):
# octave does not like those environment variables to be set:
diff --git a/lib/spack/spack/build_systems/oneapi.py b/lib/spack/spack/build_systems/oneapi.py
index ec8732bbd6..0844ff5d82 100644
--- a/lib/spack/spack/build_systems/oneapi.py
+++ b/lib/spack/spack/build_systems/oneapi.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,16 @@
"""
-from os.path import dirname, isdir
+import getpass
+import shutil
+from sys import platform
+from os.path import basename, dirname, isdir
from spack.package import Package
+from spack.util.environment import EnvironmentModifications
from spack.util.executable import Executable
-from llnl.util.filesystem import find_headers, find_libraries
+from llnl.util.filesystem import find_headers, find_libraries, join_path
class IntelOneApiPackage(Package):
@@ -22,46 +26,73 @@ class IntelOneApiPackage(Package):
phases = ['install']
- def component_info(self,
- dir_name,
- components,
- releases,
- url_name):
- self._dir_name = dir_name
- self._components = components
- self._releases = releases
- self._url_name = url_name
+ # oneAPI license does not allow mirroring outside of the
+ # organization (e.g. University/Company).
+ redistribute_source = False
- def url_for_version(self, version):
- release = self._release(version)
- return 'https://registrationcenter-download.intel.com/akdlm/irc_nas/%s/%s' % (
- release['irc_id'], self._oneapi_file(version, release))
+ @property
+ def component_dir(self):
+ """Subdirectory for this component in the install prefix."""
+ raise NotImplementedError
+
+ @property
+ def component_path(self):
+ """Path to component <prefix>/<component>/<version>."""
+ return join_path(self.prefix, self.component_dir, str(self.spec.version))
+
+ def install(self, spec, prefix, installer_path=None):
+ """Shared install method for all oneapi packages."""
+
+ # intel-oneapi-compilers overrides the installer_path when
+ # installing fortran, which comes from a spack resource
+ if installer_path is None:
+ installer_path = basename(self.url_for_version(spec.version))
+
+ if platform == 'linux':
+ # Intel installer assumes and enforces that all components
+ # are installed into a single prefix. Spack wants to
+ # install each component in a separate prefix. The
+ # installer mechanism is implemented by saving install
+ # information in a directory called installercache for
+ # future runs. The location of the installercache depends
+ # on the userid. For root it is always in /var/intel. For
+ # non-root it is in $HOME/intel.
+ #
+ # The method for preventing this install from interfering
+ # with other install depends on the userid. For root, we
+ # delete the installercache before and after install. For
+ # non root we redefine the HOME environment variable.
+ if getpass.getuser() == 'root':
+ shutil.rmtree('/var/intel/installercache', ignore_errors=True)
+
+ bash = Executable('bash')
+
+ # Installer writes files in ~/intel set HOME so it goes to prefix
+ bash.add_default_env('HOME', prefix)
+
+ bash(installer_path,
+ '-s', '-a', '-s', '--action', 'install',
+ '--eula', 'accept',
+ '--install-dir', prefix)
- def install(self, spec, prefix):
- bash = Executable('bash')
+ if getpass.getuser() == 'root':
+ shutil.rmtree('/var/intel/installercache', ignore_errors=True)
- # Installer writes files in ~/intel set HOME so it goes to prefix
- bash.add_default_env('HOME', prefix)
+ # Some installers have a bug and do not return an error code when failing
+ if not isdir(join_path(prefix, self.component_dir)):
+ raise RuntimeError('install failed')
- version = spec.versions.lowest()
- release = self._release(version)
- bash('./%s' % self._oneapi_file(version, release),
- '-s', '-a', '-s', '--action', 'install',
- '--eula', 'accept',
- '--components',
- self._components,
- '--install-dir', prefix)
+ def setup_run_environment(self, env):
+ """Adds environment variables to the generated module file.
- #
- # Helper functions
- #
+ These environment variables come from running:
- def _release(self, version):
- return self._releases[str(version)]
+ .. code-block:: console
- def _oneapi_file(self, version, release):
- return 'l_%s_p_%s.%s_offline.sh' % (
- self._url_name, version, release['build'])
+ $ source {prefix}/{component}/{version}/env/vars.sh
+ """
+ env.extend(EnvironmentModifications.from_sourcing_file(
+ join_path(self.component_path, 'env', 'vars.sh')))
class IntelOneApiLibraryPackage(IntelOneApiPackage):
@@ -69,12 +100,11 @@ class IntelOneApiLibraryPackage(IntelOneApiPackage):
@property
def headers(self):
- include_path = '%s/%s/latest/include' % (
- self.prefix, self._dir_name)
+ include_path = join_path(self.component_path, 'include')
return find_headers('*', include_path, recursive=True)
@property
def libs(self):
- lib_path = '%s/%s/latest/lib/intel64' % (self.prefix, self._dir_name)
+ lib_path = join_path(self.component_path, 'lib', 'intel64')
lib_path = lib_path if isdir(lib_path) else dirname(lib_path)
return find_libraries('*', root=lib_path, shared=True, recursive=True)
diff --git a/lib/spack/spack/build_systems/perl.py b/lib/spack/spack/build_systems/perl.py
index d134dc06f2..a805c51176 100644
--- a/lib/spack/spack/build_systems/perl.py
+++ b/lib/spack/spack/build_systems/perl.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@
import inspect
import os
-from spack.directives import depends_on, extends
+from spack.directives import extends
from spack.package import PackageBase, run_after
from spack.util.executable import Executable
from llnl.util.filesystem import filter_file
@@ -45,8 +45,6 @@ class PerlPackage(PackageBase):
extends('perl')
- depends_on('perl', type=('build', 'run'))
-
def configure_args(self):
"""Produces a list containing the arguments that must be passed to
:py:meth:`~.PerlPackage.configure`. Arguments should not include
diff --git a/lib/spack/spack/build_systems/python.py b/lib/spack/spack/build_systems/python.py
index 2616642732..696fb4aec9 100644
--- a/lib/spack/spack/build_systems/python.py
+++ b/lib/spack/spack/build_systems/python.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,12 +6,13 @@ import inspect
import os
import shutil
-from spack.directives import depends_on, extends
+from spack.directives import extends
from spack.package import PackageBase, run_after
from llnl.util.filesystem import (working_dir, get_filetype, filter_file,
- path_contains_subdirectory, same_path)
+ path_contains_subdirectory, same_path, find)
from llnl.util.lang import match_predicate
+import llnl.util.tty as tty
class PythonPackage(PackageBase):
@@ -25,20 +26,11 @@ class PythonPackage(PackageBase):
* build_ext
* build_clib
* build_scripts
- * clean
* install
* install_lib
* install_headers
* install_scripts
* install_data
- * sdist
- * register
- * bdist
- * bdist_dumb
- * bdist_rpm
- * bdist_wininst
- * upload
- * check
These are all standard setup.py commands and can be found by running:
@@ -71,35 +63,84 @@ class PythonPackage(PackageBase):
def configure(self, spec, prefix):
self.setup_py('configure')
"""
+ #: Package name, version, and extension on PyPI
+ pypi = None
+
+ maintainers = ['adamjstewart']
+
# Default phases
phases = ['build', 'install']
- # Name of modules that the Python package provides
- # This is used to test whether or not the installation succeeded
- # These names generally come from running:
- #
- # >>> import setuptools
- # >>> setuptools.find_packages()
- #
- # in the source tarball directory
- import_modules = []
-
# To be used in UI queries that require to know which
# build-system class we are using
build_system_class = 'PythonPackage'
- #: Callback names for build-time test
- build_time_test_callbacks = ['build_test']
-
#: Callback names for install-time test
- install_time_test_callbacks = ['import_module_test']
+ install_time_test_callbacks = ['test']
extends('python')
- depends_on('python', type=('build', 'run'))
-
py_namespace = None
+ @property
+ def homepage(self):
+ if self.pypi:
+ name = self.pypi.split('/')[0]
+ return 'https://pypi.org/project/' + name + '/'
+
+ @property
+ def url(self):
+ if self.pypi:
+ return (
+ 'https://files.pythonhosted.org/packages/source/'
+ + self.pypi[0] + '/' + self.pypi
+ )
+
+ @property
+ def list_url(self):
+ if self.pypi:
+ name = self.pypi.split('/')[0]
+ return 'https://pypi.org/simple/' + name + '/'
+
+ @property
+ def import_modules(self):
+ """Names of modules that the Python package provides.
+
+ These are used to test whether or not the installation succeeded.
+ These names generally come from running:
+
+ .. code-block:: python
+
+ >> import setuptools
+ >> setuptools.find_packages()
+
+ in the source tarball directory. If the module names are incorrectly
+ detected, this property can be overridden by the package.
+
+ Returns:
+ list: list of strings of module names
+ """
+ modules = []
+
+ # Python libraries may be installed in lib or lib64
+ # See issues #18520 and #17126
+ for lib in ['lib', 'lib64']:
+ root = os.path.join(self.prefix, lib, 'python{0}'.format(
+ self.spec['python'].version.up_to(2)), 'site-packages')
+ # Some Python libraries are packages: collections of modules
+ # distributed in directories containing __init__.py files
+ for path in find(root, '__init__.py', recursive=True):
+ modules.append(path.replace(root + os.sep, '', 1).replace(
+ os.sep + '__init__.py', '').replace('/', '.'))
+ # Some Python libraries are modules: individual *.py files
+ # found in the site-packages directory
+ for path in find(root, '*.py', recursive=False):
+ modules.append(path.replace(root + os.sep, '', 1).replace(
+ '.py', '').replace('/', '.'))
+
+ tty.debug('Detected the following modules: {0}'.format(modules))
+ return modules
+
def setup_file(self):
"""Returns the name of the setup file to use."""
return 'setup.py'
@@ -118,27 +159,6 @@ class PythonPackage(PackageBase):
with working_dir(self.build_directory):
self.python('-s', setup, '--no-user-cfg', *args, **kwargs)
- def _setup_command_available(self, command):
- """Determines whether or not a setup.py command exists.
-
- Args:
- command (str): The command to look for
-
- Returns:
- bool: True if the command is found, else False
- """
- kwargs = {
- 'output': os.devnull,
- 'error': os.devnull,
- 'fail_on_error': False
- }
-
- python = inspect.getmodule(self).python
- setup = self.setup_file()
-
- python('-s', setup, '--no-user-cfg', command, '--help', **kwargs)
- return python.returncode == 0
-
# The following phases and their descriptions come from:
# $ python setup.py --help-commands
@@ -194,16 +214,6 @@ class PythonPackage(PackageBase):
"""Arguments to pass to build_scripts."""
return []
- def clean(self, spec, prefix):
- """Clean up temporary files from 'build' command."""
- args = self.clean_args(spec, prefix)
-
- self.setup_py('clean', *args)
-
- def clean_args(self, spec, prefix):
- """Arguments to pass to clean."""
- return []
-
def install(self, spec, prefix):
"""Install everything from build directory."""
args = self.install_args(spec, prefix)
@@ -252,7 +262,7 @@ class PythonPackage(PackageBase):
'--install-purelib=%s' % pure_site_packages_dir,
'--install-platlib=%s' % plat_site_packages_dir,
'--install-scripts=bin',
- '--install-data=""',
+ '--install-data=',
'--install-headers=%s' % inc_dir
]
@@ -298,115 +308,18 @@ class PythonPackage(PackageBase):
"""Arguments to pass to install_data."""
return []
- def sdist(self, spec, prefix):
- """Create a source distribution (tarball, zip file, etc.)."""
- args = self.sdist_args(spec, prefix)
-
- self.setup_py('sdist', *args)
-
- def sdist_args(self, spec, prefix):
- """Arguments to pass to sdist."""
- return []
-
- def register(self, spec, prefix):
- """Register the distribution with the Python package index."""
- args = self.register_args(spec, prefix)
-
- self.setup_py('register', *args)
-
- def register_args(self, spec, prefix):
- """Arguments to pass to register."""
- return []
-
- def bdist(self, spec, prefix):
- """Create a built (binary) distribution."""
- args = self.bdist_args(spec, prefix)
-
- self.setup_py('bdist', *args)
-
- def bdist_args(self, spec, prefix):
- """Arguments to pass to bdist."""
- return []
-
- def bdist_dumb(self, spec, prefix):
- '''Create a "dumb" built distribution.'''
- args = self.bdist_dumb_args(spec, prefix)
-
- self.setup_py('bdist_dumb', *args)
-
- def bdist_dumb_args(self, spec, prefix):
- """Arguments to pass to bdist_dumb."""
- return []
-
- def bdist_rpm(self, spec, prefix):
- """Create an RPM distribution."""
- args = self.bdist_rpm(spec, prefix)
-
- self.setup_py('bdist_rpm', *args)
-
- def bdist_rpm_args(self, spec, prefix):
- """Arguments to pass to bdist_rpm."""
- return []
-
- def bdist_wininst(self, spec, prefix):
- """Create an executable installer for MS Windows."""
- args = self.bdist_wininst_args(spec, prefix)
-
- self.setup_py('bdist_wininst', *args)
-
- def bdist_wininst_args(self, spec, prefix):
- """Arguments to pass to bdist_wininst."""
- return []
-
- def upload(self, spec, prefix):
- """Upload binary package to PyPI."""
- args = self.upload_args(spec, prefix)
-
- self.setup_py('upload', *args)
-
- def upload_args(self, spec, prefix):
- """Arguments to pass to upload."""
- return []
-
- def check(self, spec, prefix):
- """Perform some checks on the package."""
- args = self.check_args(spec, prefix)
-
- self.setup_py('check', *args)
-
- def check_args(self, spec, prefix):
- """Arguments to pass to check."""
- return []
-
# Testing
- def build_test(self):
- """Run unit tests after in-place build.
-
- These tests are only run if the package actually has a 'test' command.
- """
- if self._setup_command_available('test'):
- args = self.test_args(self.spec, self.prefix)
-
- self.setup_py('test', *args)
-
- def test_args(self, spec, prefix):
- """Arguments to pass to test."""
- return []
-
- run_after('build')(PackageBase._run_default_build_time_test_callbacks)
-
- def import_module_test(self):
- """Attempts to import the module that was just installed.
-
- This test is only run if the package overrides
- :py:attr:`import_modules` with a list of module names."""
+ def test(self):
+ """Attempts to import modules of the installed package."""
# Make sure we are importing the installed modules,
- # not the ones in the current directory
- with working_dir('spack-test', create=True):
- for module in self.import_modules:
- self.python('-c', 'import {0}'.format(module))
+ # not the ones in the source directory
+ for module in self.import_modules:
+ self.run_test(inspect.getmodule(self).python.path,
+ ['-c', 'import {0}'.format(module)],
+ purpose='checking import of {0}'.format(module),
+ work_dir='spack-test')
run_after('install')(PackageBase._run_default_install_time_test_callbacks)
diff --git a/lib/spack/spack/build_systems/qmake.py b/lib/spack/spack/build_systems/qmake.py
index 22914d4d3a..5ddb8d7fa3 100644
--- a/lib/spack/spack/build_systems/qmake.py
+++ b/lib/spack/spack/build_systems/qmake.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,6 +6,7 @@
import inspect
+from llnl.util.filesystem import working_dir
from spack.directives import depends_on
from spack.package import PackageBase, run_after
@@ -37,6 +38,11 @@ class QMakePackage(PackageBase):
depends_on('qt', type='build')
+ @property
+ def build_directory(self):
+ """The directory containing the ``*.pro`` file."""
+ return self.stage.source_path
+
def qmake_args(self):
"""Produces a list containing all the arguments that must be passed to
qmake
@@ -45,22 +51,30 @@ class QMakePackage(PackageBase):
def qmake(self, spec, prefix):
"""Run ``qmake`` to configure the project and generate a Makefile."""
- inspect.getmodule(self).qmake(*self.qmake_args())
+
+ with working_dir(self.build_directory):
+ inspect.getmodule(self).qmake(*self.qmake_args())
def build(self, spec, prefix):
"""Make the build targets"""
- inspect.getmodule(self).make()
+
+ with working_dir(self.build_directory):
+ inspect.getmodule(self).make()
def install(self, spec, prefix):
"""Make the install targets"""
- inspect.getmodule(self).make('install')
+
+ with working_dir(self.build_directory):
+ inspect.getmodule(self).make('install')
# Tests
def check(self):
"""Searches the Makefile for a ``check:`` target and runs it if found.
"""
- self._if_make_target_execute('check')
+
+ with working_dir(self.build_directory):
+ self._if_make_target_execute('check')
run_after('build')(PackageBase._run_default_build_time_test_callbacks)
diff --git a/lib/spack/spack/build_systems/r.py b/lib/spack/spack/build_systems/r.py
index 6ee2668833..ac57672a39 100644
--- a/lib/spack/spack/build_systems/r.py
+++ b/lib/spack/spack/build_systems/r.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
import inspect
-from spack.directives import depends_on, extends
+from spack.directives import extends
from spack.package import PackageBase, run_after
@@ -25,13 +25,49 @@ class RPackage(PackageBase):
"""
phases = ['install']
+ # package attributes that can be expanded to set the homepage, url,
+ # list_url, and git values
+ # For CRAN packages
+ cran = None
+
+ # For Bioconductor packages
+ bioc = None
+
+ maintainers = ['glennpj']
+
#: This attribute is used in UI queries that need to know the build
#: system base class
build_system_class = 'RPackage'
extends('r')
- depends_on('r', type=('build', 'run'))
+ @property
+ def homepage(self):
+ if self.cran:
+ return 'https://cloud.r-project.org/package=' + self.cran
+ elif self.bioc:
+ return 'https://bioconductor.org/packages/' + self.bioc
+
+ @property
+ def url(self):
+ if self.cran:
+ return (
+ 'https://cloud.r-project.org/src/contrib/'
+ + self.cran + '_' + str(list(self.versions)[0]) + '.tar.gz'
+ )
+
+ @property
+ def list_url(self):
+ if self.cran:
+ return (
+ 'https://cloud.r-project.org/src/contrib/Archive/'
+ + self.cran + '/'
+ )
+
+ @property
+ def git(self):
+ if self.bioc:
+ return 'https://git.bioconductor.org/packages/' + self.bioc
def configure_args(self):
"""Arguments to pass to install via ``--configure-args``."""
@@ -48,6 +84,7 @@ class RPackage(PackageBase):
config_vars = self.configure_vars()
args = [
+ '--vanilla',
'CMD',
'INSTALL'
]
diff --git a/lib/spack/spack/build_systems/rocm.py b/lib/spack/spack/build_systems/rocm.py
index 0107c6376b..21a200e159 100644
--- a/lib/spack/spack/build_systems/rocm.py
+++ b/lib/spack/spack/build_systems/rocm.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -30,6 +30,8 @@
# environment: {}
# extra_rpaths: []
#
+# It is advisable to replace /rocm/ in the paths above with /rocm-version/
+# and introduce spec version numbers to ensure reproducible results.
#
# 2. hip and its dependencies are currently NOT picked up by spack
# automatically, and should therefore be added to packages.yaml by hand:
@@ -37,7 +39,7 @@
# in packages.yaml:
# hip:
# externals:
-# - spec: hip@3.8.20371-d1886b0b
+# - spec: hip
# prefix: /opt/rocm/hip
# extra_attributes:
# compilers:
@@ -64,6 +66,9 @@
# cxx: /opt/rocm/llvm/bin/clang++
# buildable: false
#
+# It is advisable to replace /rocm/ in the paths above with /rocm-version/
+# and introduce spec version numbers to ensure reproducible results.
+#
# 3. In part 2, DO NOT list the path to hsa as /opt/rocm/hsa ! You want spack
# to find hsa in /opt/rocm/include/hsa/hsa.h . The directory of
# /opt/rocm/hsa also has an hsa.h file, but it won't be found because spack
@@ -102,6 +107,8 @@ class ROCmPackage(PackageBase):
depends_on('hsa-rocr-dev', when='+rocm')
depends_on('hip', when='+rocm')
+ conflicts('^blt@:0.3.6', when='+rocm')
+
# need amd gpu type for rocm builds
conflicts('amdgpu_target=none', when='+rocm')
diff --git a/lib/spack/spack/build_systems/ruby.py b/lib/spack/spack/build_systems/ruby.py
index 32d6633164..5736d0913a 100644
--- a/lib/spack/spack/build_systems/ruby.py
+++ b/lib/spack/spack/build_systems/ruby.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
import glob
import inspect
-from spack.directives import depends_on, extends
+from spack.directives import extends
from spack.package import PackageBase, run_after
@@ -27,8 +27,6 @@ class RubyPackage(PackageBase):
extends('ruby')
- depends_on('ruby', type=('build', 'run'))
-
def build(self, spec, prefix):
"""Build a Ruby gem."""
diff --git a/lib/spack/spack/build_systems/scons.py b/lib/spack/spack/build_systems/scons.py
index 5e17666b71..56ee08a113 100644
--- a/lib/spack/spack/build_systems/scons.py
+++ b/lib/spack/spack/build_systems/scons.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/sip.py b/lib/spack/spack/build_systems/sip.py
index f814ef1837..47713a100a 100644
--- a/lib/spack/spack/build_systems/sip.py
+++ b/lib/spack/spack/build_systems/sip.py
@@ -1,14 +1,15 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import inspect
+import os
-from llnl.util.filesystem import working_dir, join_path
+from llnl.util.filesystem import find, working_dir, join_path
from spack.directives import depends_on, extends
from spack.package import PackageBase, run_after
-import os
+import llnl.util.tty as tty
class SIPPackage(PackageBase):
@@ -36,13 +37,52 @@ class SIPPackage(PackageBase):
sip_module = 'sip'
#: Callback names for install-time test
- install_time_test_callbacks = ['import_module_test']
+ install_time_test_callbacks = ['test']
extends('python')
depends_on('qt')
depends_on('py-sip')
+ @property
+ def import_modules(self):
+ """Names of modules that the Python package provides.
+
+ These are used to test whether or not the installation succeeded.
+ These names generally come from running:
+
+ .. code-block:: python
+
+ >> import setuptools
+ >> setuptools.find_packages()
+
+ in the source tarball directory. If the module names are incorrectly
+ detected, this property can be overridden by the package.
+
+ Returns:
+ list: list of strings of module names
+ """
+ modules = []
+
+ # Python libraries may be installed in lib or lib64
+ # See issues #18520 and #17126
+ for lib in ['lib', 'lib64']:
+ root = os.path.join(self.prefix, lib, 'python{0}'.format(
+ self.spec['python'].version.up_to(2)), 'site-packages')
+ # Some Python libraries are packages: collections of modules
+ # distributed in directories containing __init__.py files
+ for path in find(root, '__init__.py', recursive=True):
+ modules.append(path.replace(root + os.sep, '', 1).replace(
+ os.sep + '__init__.py', '').replace('/', '.'))
+ # Some Python libraries are modules: individual *.py files
+ # found in the site-packages directory
+ for path in find(root, '*.py', recursive=False):
+ modules.append(path.replace(root + os.sep, '', 1).replace(
+ '.py', '').replace('/', '.'))
+
+ tty.debug('Detected the following modules: {0}'.format(modules))
+ return modules
+
def python(self, *args, **kwargs):
"""The python ``Executable``."""
inspect.getmodule(self).python(*args, **kwargs)
@@ -98,17 +138,16 @@ class SIPPackage(PackageBase):
# Testing
- def import_module_test(self):
- """Attempts to import the module that was just installed.
-
- This test is only run if the package overrides
- :py:attr:`import_modules` with a list of module names."""
+ def test(self):
+ """Attempts to import modules of the installed package."""
# Make sure we are importing the installed modules,
- # not the ones in the current directory
- with working_dir('spack-test', create=True):
- for module in self.import_modules:
- self.python('-c', 'import {0}'.format(module))
+ # not the ones in the source directory
+ for module in self.import_modules:
+ self.run_test(inspect.getmodule(self).python.path,
+ ['-c', 'import {0}'.format(module)],
+ purpose='checking import of {0}'.format(module),
+ work_dir='spack-test')
run_after('install')(PackageBase._run_default_install_time_test_callbacks)
diff --git a/lib/spack/spack/build_systems/sourceforge.py b/lib/spack/spack/build_systems/sourceforge.py
index 602a099c17..cfea664f51 100644
--- a/lib/spack/spack/build_systems/sourceforge.py
+++ b/lib/spack/spack/build_systems/sourceforge.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/sourceware.py b/lib/spack/spack/build_systems/sourceware.py
index b779b530dc..89a157c22c 100644
--- a/lib/spack/spack/build_systems/sourceware.py
+++ b/lib/spack/spack/build_systems/sourceware.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/waf.py b/lib/spack/spack/build_systems/waf.py
index a6dbbbdb35..99679ba64a 100644
--- a/lib/spack/spack/build_systems/waf.py
+++ b/lib/spack/spack/build_systems/waf.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/build_systems/xorg.py b/lib/spack/spack/build_systems/xorg.py
index ae28b30929..801ad37eeb 100644
--- a/lib/spack/spack/build_systems/xorg.py
+++ b/lib/spack/spack/build_systems/xorg.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/caches.py b/lib/spack/spack/caches.py
index 49624c06b2..9f99ab75ed 100644
--- a/lib/spack/spack/caches.py
+++ b/lib/spack/spack/caches.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ import spack.util.file_cache
import spack.util.path
-def _misc_cache():
+def misc_cache_location():
"""The ``misc_cache`` is Spack's cache for small data.
Currently the ``misc_cache`` stores indexes for virtual dependency
@@ -27,7 +27,11 @@ def _misc_cache():
if not path:
path = os.path.join(spack.paths.user_config_path, 'cache')
path = spack.util.path.canonicalize_path(path)
+ return path
+
+def _misc_cache():
+ path = misc_cache_location()
return spack.util.file_cache.FileCache(path)
@@ -35,7 +39,7 @@ def _misc_cache():
misc_cache = llnl.util.lang.Singleton(_misc_cache)
-def _fetch_cache():
+def fetch_cache_location():
"""Filesystem cache of downloaded archives.
This prevents Spack from repeatedly fetch the same files when
@@ -45,7 +49,11 @@ def _fetch_cache():
if not path:
path = os.path.join(spack.paths.var_path, "cache")
path = spack.util.path.canonicalize_path(path)
+ return path
+
+def _fetch_cache():
+ path = fetch_cache_location()
return spack.fetch_strategy.FsCache(path)
diff --git a/lib/spack/spack/ci.py b/lib/spack/spack/ci.py
index f38ab95d96..4daffac44c 100644
--- a/lib/spack/spack/ci.py
+++ b/lib/spack/spack/ci.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,7 +22,7 @@ import llnl.util.tty as tty
import spack
import spack.binary_distribution as bindist
-import spack.cmd.buildcache as buildcache
+import spack.cmd
import spack.compilers as compilers
import spack.config as cfg
import spack.environment as ev
@@ -41,7 +41,8 @@ JOB_RETRY_CONDITIONS = [
'always',
]
-SPACK_PR_MIRRORS_ROOT_URL = 's3://spack-pr-mirrors'
+SPACK_PR_MIRRORS_ROOT_URL = 's3://spack-binaries-prs'
+TEMP_STORAGE_MIRROR_NAME = 'ci_temporary_mirror'
spack_gpg = spack.main.SpackCommand('gpg')
spack_compiler = spack.main.SpackCommand('compiler')
@@ -202,8 +203,8 @@ def format_root_spec(spec, main_phase, strip_compiler):
# spec.name, spec.version, spec.compiler, spec.architecture)
-def spec_deps_key_label(s):
- return s.dag_hash(), "%s/%s" % (s.name, s.dag_hash(7))
+def spec_deps_key(s):
+ return '{0}/{1}'.format(s.name, s.dag_hash(7))
def _add_dependency(spec_label, dep_label, deps):
@@ -214,8 +215,8 @@ def _add_dependency(spec_label, dep_label, deps):
deps[spec_label].add(dep_label)
-def get_spec_dependencies(specs, deps, spec_labels):
- spec_deps_obj = compute_spec_deps(specs)
+def get_spec_dependencies(specs, deps, spec_labels, check_index_only=False):
+ spec_deps_obj = compute_spec_deps(specs, check_index_only=check_index_only)
if spec_deps_obj:
dependencies = spec_deps_obj['dependencies']
@@ -225,19 +226,25 @@ def get_spec_dependencies(specs, deps, spec_labels):
spec_labels[entry['label']] = {
'spec': Spec(entry['spec']),
'rootSpec': entry['root_spec'],
+ 'needs_rebuild': entry['needs_rebuild'],
}
for entry in dependencies:
_add_dependency(entry['spec'], entry['depends'], deps)
-def stage_spec_jobs(specs):
+def stage_spec_jobs(specs, check_index_only=False):
"""Take a set of release specs and generate a list of "stages", where the
jobs in any stage are dependent only on jobs in previous stages. This
allows us to maximize build parallelism within the gitlab-ci framework.
Arguments:
specs (Iterable): Specs to build
+ check_index_only (bool): Regardless of whether DAG pruning is enabled,
+ all configured mirrors are searched to see if binaries for specs
+ are up to date on those mirrors. This flag limits that search to
+ the binary cache indices on those mirrors to speed the process up,
+ even though there is no garantee the index is up to date.
Returns: A tuple of information objects describing the specs, dependencies
and stages:
@@ -274,7 +281,8 @@ def stage_spec_jobs(specs):
deps = {}
spec_labels = {}
- get_spec_dependencies(specs, deps, spec_labels)
+ get_spec_dependencies(
+ specs, deps, spec_labels, check_index_only=check_index_only)
# Save the original deps, as we need to return them at the end of the
# function. In the while loop below, the "dependencies" variable is
@@ -311,12 +319,15 @@ def print_staging_summary(spec_labels, dependencies, stages):
for job in sorted(stage):
s = spec_labels[job]['spec']
- tty.msg(' {0} -> {1}'.format(job, get_spec_string(s)))
+ tty.msg(' [{1}] {0} -> {2}'.format(
+ job,
+ 'x' if spec_labels[job]['needs_rebuild'] else ' ',
+ get_spec_string(s)))
stage_index += 1
-def compute_spec_deps(spec_list):
+def compute_spec_deps(spec_list, check_index_only=False):
"""
Computes all the dependencies for the spec(s) and generates a JSON
object which provides both a list of unique spec names as well as a
@@ -386,33 +397,35 @@ def compute_spec_deps(spec_list):
# root_spec = get_spec_string(spec)
root_spec = spec
- rkey, rlabel = spec_deps_key_label(spec)
-
for s in spec.traverse(deptype=all):
if s.external:
tty.msg('Will not stage external pkg: {0}'.format(s))
continue
- skey, slabel = spec_deps_key_label(s)
- spec_labels[slabel] = {
+ up_to_date_mirrors = bindist.get_mirrors_for_spec(
+ spec=s, full_hash_match=True, index_only=check_index_only)
+
+ skey = spec_deps_key(s)
+ spec_labels[skey] = {
'spec': get_spec_string(s),
'root': root_spec,
+ 'needs_rebuild': not up_to_date_mirrors,
}
- append_dep(rlabel, slabel)
for d in s.dependencies(deptype=all):
- dkey, dlabel = spec_deps_key_label(d)
+ dkey = spec_deps_key(d)
if d.external:
tty.msg('Will not stage external dep: {0}'.format(d))
continue
- append_dep(slabel, dlabel)
+ append_dep(skey, dkey)
for spec_label, spec_holder in spec_labels.items():
specs.append({
'label': spec_label,
'spec': spec_holder['spec'],
'root_spec': spec_holder['root'],
+ 'needs_rebuild': spec_holder['needs_rebuild'],
})
deps_json_obj = {
@@ -481,22 +494,43 @@ def pkg_name_from_spec_label(spec_label):
def format_job_needs(phase_name, strip_compilers, dep_jobs,
- osname, build_group, enable_artifacts_buildcache):
+ osname, build_group, prune_dag, stage_spec_dict,
+ enable_artifacts_buildcache):
needs_list = []
for dep_job in dep_jobs:
- needs_list.append({
- 'job': get_job_name(phase_name,
- strip_compilers,
- dep_job,
- osname,
- build_group),
- 'artifacts': enable_artifacts_buildcache,
- })
+ dep_spec_key = spec_deps_key(dep_job)
+ dep_spec_info = stage_spec_dict[dep_spec_key]
+
+ if not prune_dag or dep_spec_info['needs_rebuild']:
+ needs_list.append({
+ 'job': get_job_name(phase_name,
+ strip_compilers,
+ dep_job,
+ osname,
+ build_group),
+ 'artifacts': enable_artifacts_buildcache,
+ })
return needs_list
-def generate_gitlab_ci_yaml(env, print_summary, output_file,
- run_optimizer=False, use_dependencies=False):
+def add_pr_mirror(url):
+ cfg_scope = cfg.default_modify_scope()
+ mirrors = cfg.get('mirrors', scope=cfg_scope)
+ items = [(n, u) for n, u in mirrors.items()]
+ items.insert(0, ('ci_pr_mirror', url))
+ cfg.set('mirrors', syaml.syaml_dict(items), scope=cfg_scope)
+
+
+def remove_pr_mirror():
+ cfg_scope = cfg.default_modify_scope()
+ mirrors = cfg.get('mirrors', scope=cfg_scope)
+ mirrors.pop('ci_pr_mirror')
+ cfg.set('mirrors', mirrors, scope=cfg_scope)
+
+
+def generate_gitlab_ci_yaml(env, print_summary, output_file, prune_dag=False,
+ check_index_only=False, run_optimizer=False,
+ use_dependencies=False):
# FIXME: What's the difference between one that opens with 'spack'
# and one that opens with 'env'? This will only handle the former.
with spack.concretize.disable_compiler_existence_check():
@@ -509,10 +543,6 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
gitlab_ci = yaml_root['gitlab-ci']
- final_job_config = None
- if 'final-stage-rebuild-index' in gitlab_ci:
- final_job_config = gitlab_ci['final-stage-rebuild-index']
-
build_group = None
enable_cdash_reporting = False
cdash_auth_token = None
@@ -539,13 +569,31 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
pr_mirror_url = url_util.join(SPACK_PR_MIRRORS_ROOT_URL,
spack_pr_branch)
+ if 'mirrors' not in yaml_root or len(yaml_root['mirrors'].values()) < 1:
+ tty.die('spack ci generate requires an env containing a mirror')
+
ci_mirrors = yaml_root['mirrors']
mirror_urls = [url for url in ci_mirrors.values()]
+ # Check for a list of "known broken" specs that we should not bother
+ # trying to build.
+ broken_specs_url = ''
+ known_broken_specs_encountered = []
+ if 'broken-specs-url' in gitlab_ci:
+ broken_specs_url = gitlab_ci['broken-specs-url']
+
enable_artifacts_buildcache = False
if 'enable-artifacts-buildcache' in gitlab_ci:
enable_artifacts_buildcache = gitlab_ci['enable-artifacts-buildcache']
+ rebuild_index_enabled = True
+ if 'rebuild-index' in gitlab_ci and gitlab_ci['rebuild-index'] is False:
+ rebuild_index_enabled = False
+
+ temp_storage_url_prefix = None
+ if 'temporary-storage-url-prefix' in gitlab_ci:
+ temp_storage_url_prefix = gitlab_ci['temporary-storage-url-prefix']
+
bootstrap_specs = []
phases = []
if 'bootstrap' in gitlab_ci:
@@ -573,19 +621,27 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
'strip-compilers': False,
})
- staged_phases = {}
- for phase in phases:
- phase_name = phase['name']
- with spack.concretize.disable_compiler_existence_check():
- staged_phases[phase_name] = stage_spec_jobs(
- env.spec_lists[phase_name])
+ # Add this mirror if it's enabled, as some specs might be up to date
+ # here and thus not need to be rebuilt.
+ if pr_mirror_url:
+ add_pr_mirror(pr_mirror_url)
- if print_summary:
+ # Speed up staging by first fetching binary indices from all mirrors
+ # (including the per-PR mirror we may have just added above).
+ bindist.binary_index.update()
+
+ staged_phases = {}
+ try:
for phase in phases:
phase_name = phase['name']
- tty.msg('Stages for phase "{0}"'.format(phase_name))
- phase_stages = staged_phases[phase_name]
- print_staging_summary(*phase_stages)
+ with spack.concretize.disable_compiler_existence_check():
+ staged_phases[phase_name] = stage_spec_jobs(
+ env.spec_lists[phase_name],
+ check_index_only=check_index_only)
+ finally:
+ # Clean up PR mirror if enabled
+ if pr_mirror_url:
+ remove_pr_mirror()
all_job_names = []
output_object = {}
@@ -611,10 +667,19 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
stage_id += 1
for spec_label in stage_jobs:
- root_spec = spec_labels[spec_label]['rootSpec']
+ spec_record = spec_labels[spec_label]
+ root_spec = spec_record['rootSpec']
pkg_name = pkg_name_from_spec_label(spec_label)
release_spec = root_spec[pkg_name]
+ # Check if this spec is in our list of known failures.
+ if broken_specs_url:
+ full_hash = release_spec.full_hash()
+ broken_spec_path = url_util.join(broken_specs_url, full_hash)
+ if web_util.url_exists(broken_spec_path):
+ known_broken_specs_encountered.append('{0} ({1})'.format(
+ release_spec, full_hash))
+
runner_attribs = find_matching_config(
release_spec, gitlab_ci)
@@ -678,11 +743,15 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
job_dependencies = []
if spec_label in dependencies:
if enable_artifacts_buildcache:
+ # Get dependencies transitively, so they're all
+ # available in the artifacts buildcache.
dep_jobs = [
d for d in release_spec.traverse(deptype=all,
root=False)
]
else:
+ # In this case, "needs" is only used for scheduling
+ # purposes, so we only get the direct dependencies.
dep_jobs = []
for dep_label in dependencies[spec_label]:
dep_pkg = pkg_name_from_spec_label(dep_label)
@@ -690,10 +759,13 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
dep_jobs.append(dep_root[dep_pkg])
job_dependencies.extend(
- format_job_needs(phase_name, strip_compilers, dep_jobs,
- osname, build_group,
+ format_job_needs(phase_name, strip_compilers,
+ dep_jobs, osname, build_group,
+ prune_dag, spec_labels,
enable_artifacts_buildcache))
+ rebuild_spec = spec_record['needs_rebuild']
+
# This next section helps gitlab make sure the right
# bootstrapped compiler exists in the artifacts buildcache by
# creating an artificial dependency between this spec and its
@@ -709,11 +781,12 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
compiler_pkg_spec = compilers.pkg_spec_for_compiler(
release_spec.compiler)
for bs in bootstrap_specs:
- bs_arch = bs['spec'].architecture
+ c_spec = bs['spec']
+ bs_arch = c_spec.architecture
bs_arch_family = (bs_arch.target
.microarchitecture
.family)
- if (bs['spec'].satisfies(compiler_pkg_spec) and
+ if (c_spec.satisfies(compiler_pkg_spec) and
bs_arch_family == spec_arch_family):
# We found the bootstrap compiler this release spec
# should be built with, so for DAG scheduling
@@ -721,10 +794,24 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
# to the jobs "needs". But if artifact buildcache
# is enabled, we'll have to add all transtive deps
# of the compiler as well.
- dep_jobs = [bs['spec']]
+
+ # Here we check whether the bootstrapped compiler
+ # needs to be rebuilt. Until compilers are proper
+ # dependencies, we artificially force the spec to
+ # be rebuilt if the compiler targeted to build it
+ # needs to be rebuilt.
+ bs_specs, _, _ = staged_phases[bs['phase-name']]
+ c_spec_key = spec_deps_key(c_spec)
+ rbld_comp = bs_specs[c_spec_key]['needs_rebuild']
+ rebuild_spec = rebuild_spec or rbld_comp
+ # Also update record so dependents do not fail to
+ # add this spec to their "needs"
+ spec_record['needs_rebuild'] = rebuild_spec
+
+ dep_jobs = [c_spec]
if enable_artifacts_buildcache:
dep_jobs = [
- d for d in bs['spec'].traverse(deptype=all)
+ d for d in c_spec.traverse(deptype=all)
]
job_dependencies.extend(
@@ -733,6 +820,8 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
dep_jobs,
str(bs_arch),
build_group,
+ prune_dag,
+ bs_specs,
enable_artifacts_buildcache))
else:
debug_msg = ''.join([
@@ -741,9 +830,14 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
'not the compiler required by the spec, or ',
'because the target arch families of the ',
'spec and the compiler did not match'
- ]).format(bs['spec'], release_spec)
+ ]).format(c_spec, release_spec)
tty.debug(debug_msg)
+ if prune_dag and not rebuild_spec:
+ continue
+
+ job_vars['SPACK_SPEC_NEEDS_REBUILD'] = str(rebuild_spec)
+
if enable_cdash_reporting:
cdash_build_name = get_cdash_build_name(
release_spec, build_group)
@@ -787,7 +881,8 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
'retry': {
'max': 2,
'when': JOB_RETRY_CONDITIONS,
- }
+ },
+ 'interruptible': True
}
length_needs = len(job_dependencies)
@@ -812,11 +907,19 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
output_object[job_name] = job_object
job_id += 1
+ if print_summary:
+ for phase in phases:
+ phase_name = phase['name']
+ tty.msg('Stages for phase "{0}"'.format(phase_name))
+ phase_stages = staged_phases[phase_name]
+ print_staging_summary(*phase_stages)
+
tty.debug('{0} build jobs generated in {1} stages'.format(
job_id, stage_id))
- tty.debug('The max_needs_job is {0}, with {1} needs'.format(
- max_needs_job, max_length_needs))
+ if job_id > 0:
+ tty.debug('The max_needs_job is {0}, with {1} needs'.format(
+ max_needs_job, max_length_needs))
# Use "all_job_names" to populate the build group for this set
if enable_cdash_reporting and cdash_auth_token:
@@ -828,63 +931,126 @@ def generate_gitlab_ci_yaml(env, print_summary, output_file,
else:
tty.warn('Unable to populate buildgroup without CDash credentials')
- if final_job_config and not is_pr_pipeline:
- # Add an extra, final job to regenerate the index
- final_stage = 'stage-rebuild-index'
- final_job = {
- 'stage': final_stage,
- 'script': 'spack buildcache update-index --keys -d {0}'.format(
- mirror_urls[0]),
- 'tags': final_job_config['tags'],
- 'when': 'always'
- }
- if 'image' in final_job_config:
- final_job['image'] = final_job_config['image']
- if before_script:
- final_job['before_script'] = before_script
- if after_script:
- final_job['after_script'] = after_script
- output_object['rebuild-index'] = final_job
- stage_names.append(final_stage)
-
- output_object['stages'] = stage_names
-
- # Capture the version of spack used to generate the pipeline, transform it
- # into a value that can be passed to "git checkout", and save it in a
- # global yaml variable
- spack_version = spack.main.get_version()
- version_to_clone = None
- v_match = re.match(r"^\d+\.\d+\.\d+$", spack_version)
- if v_match:
- version_to_clone = 'v{0}'.format(v_match.group(0))
- else:
- v_match = re.match(r"^[^-]+-[^-]+-([a-f\d]+)$", spack_version)
+ service_job_config = None
+ if 'service-job-attributes' in gitlab_ci:
+ service_job_config = gitlab_ci['service-job-attributes']
+
+ default_attrs = [
+ 'image',
+ 'tags',
+ 'variables',
+ 'before_script',
+ # 'script',
+ 'after_script',
+ ]
+
+ if job_id > 0:
+ if temp_storage_url_prefix:
+ # There were some rebuild jobs scheduled, so we will need to
+ # schedule a job to clean up the temporary storage location
+ # associated with this pipeline.
+ stage_names.append('cleanup-temp-storage')
+ cleanup_job = {}
+
+ if service_job_config:
+ copy_attributes(default_attrs,
+ service_job_config,
+ cleanup_job)
+
+ cleanup_job['stage'] = 'cleanup-temp-storage'
+ cleanup_job['script'] = [
+ 'spack -d mirror destroy --mirror-url {0}/$CI_PIPELINE_ID'.format(
+ temp_storage_url_prefix)
+ ]
+ cleanup_job['when'] = 'always'
+
+ output_object['cleanup'] = cleanup_job
+
+ if rebuild_index_enabled:
+ # Add a final job to regenerate the index
+ stage_names.append('stage-rebuild-index')
+ final_job = {}
+
+ if service_job_config:
+ copy_attributes(default_attrs,
+ service_job_config,
+ final_job)
+
+ index_target_mirror = mirror_urls[0]
+ if is_pr_pipeline:
+ index_target_mirror = pr_mirror_url
+
+ final_job['stage'] = 'stage-rebuild-index'
+ final_job['script'] = [
+ 'spack buildcache update-index --keys -d {0}'.format(
+ index_target_mirror)
+ ]
+ final_job['when'] = 'always'
+
+ output_object['rebuild-index'] = final_job
+
+ output_object['stages'] = stage_names
+
+ # Capture the version of spack used to generate the pipeline, transform it
+ # into a value that can be passed to "git checkout", and save it in a
+ # global yaml variable
+ spack_version = spack.main.get_version()
+ version_to_clone = None
+ v_match = re.match(r"^\d+\.\d+\.\d+$", spack_version)
if v_match:
- version_to_clone = v_match.group(1)
+ version_to_clone = 'v{0}'.format(v_match.group(0))
else:
- version_to_clone = spack_version
+ v_match = re.match(r"^[^-]+-[^-]+-([a-f\d]+)$", spack_version)
+ if v_match:
+ version_to_clone = v_match.group(1)
+ else:
+ version_to_clone = spack_version
- output_object['variables'] = {
- 'SPACK_VERSION': spack_version,
- 'SPACK_CHECKOUT_VERSION': version_to_clone,
- }
+ output_object['variables'] = {
+ 'SPACK_VERSION': spack_version,
+ 'SPACK_CHECKOUT_VERSION': version_to_clone,
+ }
- if pr_mirror_url:
- output_object['variables']['SPACK_PR_MIRROR_URL'] = pr_mirror_url
+ if pr_mirror_url:
+ output_object['variables']['SPACK_PR_MIRROR_URL'] = pr_mirror_url
- sorted_output = {}
- for output_key, output_value in sorted(output_object.items()):
- sorted_output[output_key] = output_value
+ sorted_output = {}
+ for output_key, output_value in sorted(output_object.items()):
+ sorted_output[output_key] = output_value
- # TODO(opadron): remove this or refactor
- if run_optimizer:
- import spack.ci_optimization as ci_opt
- sorted_output = ci_opt.optimizer(sorted_output)
+ # TODO(opadron): remove this or refactor
+ if run_optimizer:
+ import spack.ci_optimization as ci_opt
+ sorted_output = ci_opt.optimizer(sorted_output)
- # TODO(opadron): remove this or refactor
- if use_dependencies:
- import spack.ci_needs_workaround as cinw
- sorted_output = cinw.needs_to_dependencies(sorted_output)
+ # TODO(opadron): remove this or refactor
+ if use_dependencies:
+ import spack.ci_needs_workaround as cinw
+ sorted_output = cinw.needs_to_dependencies(sorted_output)
+ else:
+ # No jobs were generated
+ tty.debug('No specs to rebuild, generating no-op job')
+ noop_job = {}
+
+ if service_job_config:
+ copy_attributes(default_attrs,
+ service_job_config,
+ noop_job)
+
+ if 'script' not in noop_job:
+ noop_job['script'] = [
+ 'echo "All specs already up to date, nothing to rebuild."',
+ ]
+
+ sorted_output = {'no-specs-to-rebuild': noop_job}
+
+ if known_broken_specs_encountered:
+ error_msg = (
+ 'Pipeline generation failed due to the presence of the '
+ 'following specs that are known to be broken in develop:\n')
+ for broken_spec in known_broken_specs_encountered:
+ error_msg += '* {0}\n'.format(broken_spec)
+ tty.die(error_msg)
with open(output_file, 'w') as outf:
outf.write(syaml.dump_config(sorted_output, default_flow_style=True))
@@ -1120,16 +1286,37 @@ def read_cdashid_from_mirror(spec, mirror_url):
def push_mirror_contents(env, spec, yaml_path, mirror_url, build_id,
sign_binaries):
if mirror_url:
- unsigned = not sign_binaries
- tty.debug('Creating buildcache ({0})'.format(
- 'unsigned' if unsigned else 'signed'))
- buildcache._createtarball(env, spec_yaml=yaml_path, add_deps=False,
- output_location=mirror_url, force=True,
- allow_root=True, unsigned=unsigned)
- if build_id:
- tty.debug('Writing cdashid ({0}) to remote mirror: {1}'.format(
- build_id, mirror_url))
- write_cdashid_to_mirror(build_id, spec, mirror_url)
+ try:
+ unsigned = not sign_binaries
+ tty.debug('Creating buildcache ({0})'.format(
+ 'unsigned' if unsigned else 'signed'))
+ spack.cmd.buildcache._createtarball(
+ env, spec_yaml=yaml_path, add_deps=False,
+ output_location=mirror_url, force=True, allow_root=True,
+ unsigned=unsigned)
+ if build_id:
+ tty.debug('Writing cdashid ({0}) to remote mirror: {1}'.format(
+ build_id, mirror_url))
+ write_cdashid_to_mirror(build_id, spec, mirror_url)
+ except Exception as inst:
+ # If the mirror we're pushing to is on S3 and there's some
+ # permissions problem, for example, we can't just target
+ # that exception type here, since users of the
+ # `spack ci rebuild' may not need or want any dependency
+ # on boto3. So we use the first non-boto exception type
+ # in the heirarchy:
+ # boto3.exceptions.S3UploadFailedError
+ # boto3.exceptions.Boto3Error
+ # Exception
+ # BaseException
+ # object
+ err_msg = 'Error msg: {0}'.format(inst)
+ if 'Access Denied' in err_msg:
+ tty.msg('Permission problem writing to {0}'.format(
+ mirror_url))
+ tty.msg(err_msg)
+ else:
+ raise inst
def copy_stage_logs_to_artifacts(job_spec, job_log_dir):
diff --git a/lib/spack/spack/ci_needs_workaround.py b/lib/spack/spack/ci_needs_workaround.py
index ba9f7c62af..ff3c621f97 100644
--- a/lib/spack/spack/ci_needs_workaround.py
+++ b/lib/spack/spack/ci_needs_workaround.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/ci_optimization.py b/lib/spack/spack/ci_optimization.py
index c5e69c649c..94528c856a 100644
--- a/lib/spack/spack/ci_optimization.py
+++ b/lib/spack/spack/ci_optimization.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/__init__.py b/lib/spack/spack/cmd/__init__.py
index d728325699..e9b4b60299 100644
--- a/lib/spack/spack/cmd/__init__.py
+++ b/lib/spack/spack/cmd/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/activate.py b/lib/spack/spack/cmd/activate.py
index bfca9f5604..a6c27b2f1d 100644
--- a/lib/spack/spack/cmd/activate.py
+++ b/lib/spack/spack/cmd/activate.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/add.py b/lib/spack/spack/cmd/add.py
index 94c8620dbb..ae1a9c9b7e 100644
--- a/lib/spack/spack/cmd/add.py
+++ b/lib/spack/spack/cmd/add.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/analyze.py b/lib/spack/spack/cmd/analyze.py
new file mode 100644
index 0000000000..e32dbcd7b1
--- /dev/null
+++ b/lib/spack/spack/cmd/analyze.py
@@ -0,0 +1,118 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import sys
+
+import llnl.util.tty as tty
+
+import spack.analyzers
+import spack.build_environment
+import spack.cmd
+import spack.cmd.common.arguments as arguments
+import spack.environment as ev
+import spack.fetch_strategy
+import spack.monitor
+import spack.paths
+import spack.report
+
+
+description = "run analyzers on installed packages"
+section = "analysis"
+level = "long"
+
+
+def setup_parser(subparser):
+ sp = subparser.add_subparsers(metavar='SUBCOMMAND', dest='analyze_command')
+
+ sp.add_parser('list-analyzers',
+ description="list available analyzers",
+ help="show list of analyzers that are available to run.")
+
+ # This adds the monitor group to the subparser
+ spack.monitor.get_monitor_group(subparser)
+
+ # Run Parser
+ run_parser = sp.add_parser('run', description="run an analyzer",
+ help="provide the name of the analyzer to run.")
+
+ run_parser.add_argument(
+ '--overwrite', action='store_true',
+ help="re-analyze even if the output file already exists.")
+ run_parser.add_argument(
+ '-p', '--path', default=None,
+ dest='path',
+ help="write output to a different directory than ~/.spack/analyzers")
+ run_parser.add_argument(
+ '-a', '--analyzers', default=None,
+ dest="analyzers", action="append",
+ help="add an analyzer (defaults to all available)")
+ arguments.add_common_arguments(run_parser, ['spec'])
+
+
+def analyze_spec(spec, analyzers=None, outdir=None, monitor=None, overwrite=False):
+ """
+ Do an analysis for a spec, optionally adding monitoring.
+
+ We also allow the user to specify a custom output directory.
+ analyze_spec(spec, args.analyzers, args.outdir, monitor)
+
+ Args:
+ spec (Spec): spec object of installed package
+ analyzers (list): list of analyzer (keys) to run
+ monitor (monitor.SpackMonitorClient): a monitor client
+ overwrite (bool): overwrite result if already exists
+ """
+ analyzers = analyzers or list(spack.analyzers.analyzer_types.keys())
+
+ # Load the build environment from the spec install directory, and send
+ # the spec to the monitor if it's not known
+ if monitor:
+ monitor.load_build_environment(spec)
+ monitor.new_configuration([spec])
+
+ for name in analyzers:
+
+ # Instantiate the analyzer with the spec and outdir
+ analyzer = spack.analyzers.get_analyzer(name)(spec, outdir)
+
+ # Run the analyzer to get a json result - results are returned as
+ # a dictionary with a key corresponding to the analyzer type, so
+ # we can just update the data
+ result = analyzer.run()
+
+ # Send the result. We do them separately because:
+ # 1. each analyzer might have differently organized output
+ # 2. the size of a result can be large
+ analyzer.save_result(result, overwrite)
+
+
+def analyze(parser, args, **kwargs):
+
+ # If the user wants to list analyzers, do so and exit
+ if args.analyze_command == "list-analyzers":
+ spack.analyzers.list_all()
+ sys.exit(0)
+
+ # handle active environment, if any
+ env = ev.get_env(args, 'analyze')
+
+ # Get an disambiguate spec (we should only have one)
+ specs = spack.cmd.parse_specs(args.spec)
+ if not specs:
+ tty.die("You must provide one or more specs to analyze.")
+ spec = spack.cmd.disambiguate_spec(specs[0], env)
+
+ # The user wants to monitor builds using github.com/spack/spack-monitor
+ # It is instantianted once here, and then available at spack.monitor.cli
+ monitor = None
+ if args.use_monitor:
+ monitor = spack.monitor.get_client(
+ host=args.monitor_host,
+ prefix=args.monitor_prefix,
+ disable_auth=args.monitor_disable_auth,
+ )
+
+ # Run the analysis
+ analyze_spec(spec, args.analyzers, args.path, monitor, args.overwrite)
diff --git a/lib/spack/spack/cmd/arch.py b/lib/spack/spack/cmd/arch.py
index 9751599b10..7435fb1246 100644
--- a/lib/spack/spack/cmd/arch.py
+++ b/lib/spack/spack/cmd/arch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/blame.py b/lib/spack/spack/cmd/blame.py
index b806058aec..f61ed03b4a 100644
--- a/lib/spack/spack/cmd/blame.py
+++ b/lib/spack/spack/cmd/blame.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/build_env.py b/lib/spack/spack/cmd/build_env.py
index ef8b1f6e6b..fc9f95f5ba 100644
--- a/lib/spack/spack/cmd/build_env.py
+++ b/lib/spack/spack/cmd/build_env.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/buildcache.py b/lib/spack/spack/cmd/buildcache.py
index 025de653c5..f5cb94e7c7 100644
--- a/lib/spack/spack/cmd/buildcache.py
+++ b/lib/spack/spack/cmd/buildcache.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -769,19 +769,14 @@ def buildcache_copy(args):
shutil.copyfile(cdashid_src_path, cdashid_dest_path)
-def buildcache_update_index(args):
- """Update a buildcache index."""
- outdir = '.'
- if args.mirror_url:
- outdir = args.mirror_url
-
- mirror = spack.mirror.MirrorCollection().lookup(outdir)
+def update_index(mirror_url, update_keys=False):
+ mirror = spack.mirror.MirrorCollection().lookup(mirror_url)
outdir = url_util.format(mirror.push_url)
bindist.generate_package_index(
url_util.join(outdir, bindist.build_cache_relative_path()))
- if args.keys:
+ if update_keys:
keys_url = url_util.join(outdir,
bindist.build_cache_relative_path(),
bindist.build_cache_keys_relative_path())
@@ -789,6 +784,15 @@ def buildcache_update_index(args):
bindist.generate_key_index(keys_url)
+def buildcache_update_index(args):
+ """Update a buildcache index."""
+ outdir = '.'
+ if args.mirror_url:
+ outdir = args.mirror_url
+
+ update_index(outdir, update_keys=args.keys)
+
+
def buildcache(parser, args):
if args.func:
args.func(args)
diff --git a/lib/spack/spack/cmd/cd.py b/lib/spack/spack/cmd/cd.py
index cbbe9db04d..f0f3ba9eb3 100644
--- a/lib/spack/spack/cmd/cd.py
+++ b/lib/spack/spack/cmd/cd.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/checksum.py b/lib/spack/spack/cmd/checksum.py
index 188deb1149..937b054c27 100644
--- a/lib/spack/spack/cmd/checksum.py
+++ b/lib/spack/spack/cmd/checksum.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/ci.py b/lib/spack/spack/cmd/ci.py
index 3dd97e53b0..bd42e10238 100644
--- a/lib/spack/spack/cmd/ci.py
+++ b/lib/spack/spack/cmd/ci.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ import spack.cmd.buildcache as buildcache
import spack.environment as ev
import spack.hash_types as ht
import spack.util.executable as exe
+import spack.util.url as url_util
description = "manage continuous integration pipelines"
@@ -54,6 +55,26 @@ def setup_parser(subparser):
'--dependencies', action='store_true', default=False,
help="(Experimental) disable DAG scheduling; use "
' "plain" dependencies.')
+ prune_group = generate.add_mutually_exclusive_group()
+ prune_group.add_argument(
+ '--prune-dag', action='store_true', dest='prune_dag',
+ default=True, help="""Do not generate jobs for specs already up to
+date on the mirror""")
+ prune_group.add_argument(
+ '--no-prune-dag', action='store_false', dest='prune_dag',
+ default=True, help="""Generate jobs for specs already up to date
+on the mirror""")
+ generate.add_argument(
+ '--check-index-only', action='store_true', dest='index_only',
+ default=False, help="""Spack always check specs against configured
+binary mirrors when generating the pipeline, regardless of whether or not
+DAG pruning is enabled. This flag controls whether it might attempt to
+fetch remote spec.yaml files directly (ensuring no spec is rebuilt if it is
+present on the mirror), or whether it should reduce pipeline generation time
+by assuming all remote buildcache indices are up to date and only use those
+to determine whether a given spec is up to date on mirrors. In the latter
+case, specs might be needlessly rebuilt if remote buildcache indices are out
+of date.""")
generate.set_defaults(func=ci_generate)
# Check a spec against mirror. Rebuild, create buildcache and push to
@@ -61,6 +82,11 @@ def setup_parser(subparser):
rebuild = subparsers.add_parser('rebuild', help=ci_rebuild.__doc__)
rebuild.set_defaults(func=ci_rebuild)
+ # Rebuild the buildcache index associated with the mirror in the
+ # active, gitlab-enabled environment.
+ index = subparsers.add_parser('rebuild-index', help=ci_reindex.__doc__)
+ index.set_defaults(func=ci_reindex)
+
def ci_generate(args):
"""Generate jobs file from a spack environment file containing CI info.
@@ -75,6 +101,8 @@ def ci_generate(args):
copy_yaml_to = args.copy_to
run_optimizer = args.optimize
use_dependencies = args.dependencies
+ prune_dag = args.prune_dag
+ index_only = args.index_only
if not output_file:
output_file = os.path.abspath(".gitlab-ci.yml")
@@ -86,7 +114,8 @@ def ci_generate(args):
# Generate the jobs
spack_ci.generate_gitlab_ci_yaml(
- env, True, output_file, run_optimizer=run_optimizer,
+ env, True, output_file, prune_dag=prune_dag,
+ check_index_only=index_only, run_optimizer=run_optimizer,
use_dependencies=use_dependencies)
if copy_yaml_to:
@@ -131,6 +160,7 @@ def ci_rebuild(args):
# SPACK_SIGNING_KEY
ci_artifact_dir = get_env_var('CI_PROJECT_DIR')
+ ci_pipeline_id = get_env_var('CI_PIPELINE_ID')
signing_key = get_env_var('SPACK_SIGNING_KEY')
root_spec = get_env_var('SPACK_ROOT_SPEC')
job_spec_pkg_name = get_env_var('SPACK_JOB_SPEC_PKG_NAME')
@@ -191,19 +221,28 @@ def ci_rebuild(args):
spack_is_pr_pipeline = True if pr_env_var == 'True' else False
+ pipeline_mirror_url = None
+ temp_storage_url_prefix = None
+ if 'temporary-storage-url-prefix' in gitlab_ci:
+ temp_storage_url_prefix = gitlab_ci['temporary-storage-url-prefix']
+ pipeline_mirror_url = url_util.join(
+ temp_storage_url_prefix, ci_pipeline_id)
+
enable_artifacts_mirror = False
- artifact_mirror_url = None
if 'enable-artifacts-buildcache' in gitlab_ci:
enable_artifacts_mirror = gitlab_ci['enable-artifacts-buildcache']
- if enable_artifacts_mirror or spack_is_pr_pipeline:
- # If this is a PR pipeline, we will override the setting to
- # make sure that artifacts buildcache is enabled. Otherwise
- # jobs will not have binary deps available since we do not
- # allow pushing binaries to remote mirror during PR pipelines
+ if (enable_artifacts_mirror or (spack_is_pr_pipeline and
+ not enable_artifacts_mirror and not temp_storage_url_prefix)):
+ # If you explicitly enabled the artifacts buildcache feature, or
+ # if this is a PR pipeline but you did not enable either of the
+ # per-pipeline temporary storage features, we force the use of
+ # artifacts buildcache. Otherwise jobs will not have binary
+ # dependencies from previous stages available since we do not
+ # allow pushing binaries to the remote mirror during PR pipelines.
enable_artifacts_mirror = True
- artifact_mirror_url = 'file://' + local_mirror_dir
+ pipeline_mirror_url = 'file://' + local_mirror_dir
mirror_msg = 'artifact buildcache enabled, mirror url: {0}'.format(
- artifact_mirror_url)
+ pipeline_mirror_url)
tty.debug(mirror_msg)
# Clean out scratch directory from last stage
@@ -297,8 +336,8 @@ def ci_rebuild(args):
if pr_mirror_url:
add_mirror('ci_pr_mirror', pr_mirror_url)
- if enable_artifacts_mirror:
- add_mirror('ci_artifact_mirror', artifact_mirror_url)
+ if pipeline_mirror_url:
+ add_mirror(spack_ci.TEMP_STORAGE_MIRROR_NAME, pipeline_mirror_url)
tty.debug('listing spack mirrors:')
spack_cmd('mirror', 'list')
@@ -306,8 +345,8 @@ def ci_rebuild(args):
# Checks all mirrors for a built spec with a matching full hash
matches = bindist.get_mirrors_for_spec(
- job_spec, force=False, full_hash_match=True,
- mirrors_to_check=mirrors_to_check)
+ job_spec, full_hash_match=True, mirrors_to_check=mirrors_to_check,
+ index_only=False)
if matches:
# Got at full hash match on at least one configured mirror. All
@@ -374,38 +413,40 @@ def ci_rebuild(args):
else:
buildcache_mirror_url = remote_mirror_url
- try:
- spack_ci.push_mirror_contents(
- env, job_spec, job_spec_yaml_path, buildcache_mirror_url,
- cdash_build_id, sign_binaries)
- except Exception as inst:
- # If the mirror we're pushing to is on S3 and there's some
- # permissions problem, for example, we can't just target
- # that exception type here, since users of the
- # `spack ci rebuild' may not need or want any dependency
- # on boto3. So we use the first non-boto exception type
- # in the heirarchy:
- # boto3.exceptions.S3UploadFailedError
- # boto3.exceptions.Boto3Error
- # Exception
- # BaseException
- # object
- err_msg = 'Error msg: {0}'.format(inst)
- if 'Access Denied' in err_msg:
- tty.msg('Permission problem writing to mirror')
- tty.msg(err_msg)
-
- # Create another copy of that buildcache on "local artifact
- # mirror" (only done if artifacts buildcache is enabled)
- spack_ci.push_mirror_contents(env, job_spec, job_spec_yaml_path,
- artifact_mirror_url, cdash_build_id,
- sign_binaries)
+ # Create buildcache in either the main remote mirror, or in the
+ # per-PR mirror, if this is a PR pipeline
+ spack_ci.push_mirror_contents(
+ env, job_spec, job_spec_yaml_path, buildcache_mirror_url,
+ cdash_build_id, sign_binaries)
+
+ # Create another copy of that buildcache in the per-pipeline
+ # temporary storage mirror (this is only done if either artifacts
+ # buildcache is enabled or a temporary storage url prefix is set)
+ spack_ci.push_mirror_contents(
+ env, job_spec, job_spec_yaml_path, pipeline_mirror_url,
+ cdash_build_id, sign_binaries)
# Relate this build to its dependencies on CDash (if enabled)
if enable_cdash:
spack_ci.relate_cdash_builds(
spec_map, cdash_base_url, cdash_build_id, cdash_project,
- artifact_mirror_url or pr_mirror_url or remote_mirror_url)
+ pipeline_mirror_url or pr_mirror_url or remote_mirror_url)
+
+
+def ci_reindex(args):
+ """Rebuild the buildcache index associated with the mirror in the
+ active, gitlab-enabled environment. """
+ env = ev.get_env(args, 'ci rebuild-index', required=True)
+ yaml_root = ev.config_dict(env.yaml)
+
+ if 'mirrors' not in yaml_root or len(yaml_root['mirrors'].values()) < 1:
+ tty.die('spack ci rebuild-index requires an env containing a mirror')
+
+ ci_mirrors = yaml_root['mirrors']
+ mirror_urls = [url for url in ci_mirrors.values()]
+ remote_mirror_url = mirror_urls[0]
+
+ buildcache.update_index(remote_mirror_url, update_keys=True)
def ci(parser, args):
diff --git a/lib/spack/spack/cmd/clean.py b/lib/spack/spack/cmd/clean.py
index 2e1ec1255f..f82198abbe 100644
--- a/lib/spack/spack/cmd/clean.py
+++ b/lib/spack/spack/cmd/clean.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/clone.py b/lib/spack/spack/cmd/clone.py
index ecf5855dab..0ea9cf7ef1 100644
--- a/lib/spack/spack/cmd/clone.py
+++ b/lib/spack/spack/cmd/clone.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/commands.py b/lib/spack/spack/cmd/commands.py
index be934e0048..e63e162c3f 100644
--- a/lib/spack/spack/cmd/commands.py
+++ b/lib/spack/spack/cmd/commands.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -262,20 +262,7 @@ def _commands(parser, args):
if args.header and not os.path.exists(args.header):
tty.die("No such file: '%s'" % args.header)
- # if we're updating an existing file, only write output if a command
- # or the header is newer than the file.
if args.update:
- if os.path.exists(args.update):
- files = [
- spack.cmd.get_module(command).__file__.rstrip('c') # pyc -> py
- for command in spack.cmd.all_commands()]
- if args.header:
- files.append(args.header)
- last_update = os.path.getmtime(args.update)
- if not any(os.path.getmtime(f) > last_update for f in files):
- tty.msg('File is up to date: %s' % args.update)
- return
-
tty.msg('Updating file: %s' % args.update)
with open(args.update, 'w') as f:
prepend_header(args, f)
diff --git a/lib/spack/spack/cmd/common/__init__.py b/lib/spack/spack/cmd/common/__init__.py
index 35b802db48..6ff4faba7c 100644
--- a/lib/spack/spack/cmd/common/__init__.py
+++ b/lib/spack/spack/cmd/common/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,7 +22,7 @@ def shell_init_instructions(cmd, equivalent):
shell_specific = "{sh_arg}" in equivalent
msg = [
- "`%s` requires spack's shell support." % cmd,
+ "`%s` requires Spack's shell support." % cmd,
"",
"To set up shell support, run the command below for your shell.",
"",
@@ -49,5 +49,12 @@ def shell_init_instructions(cmd, equivalent):
else:
msg += [" " + equivalent]
+ msg += [
+ "",
+ "If you have already set up Spack's shell support but still receive",
+ "this message, please make sure to call Spack via the `spack` command",
+ "without any path components (such as `bin/spack`).",
+ ]
+
msg += ['']
tty.error(*msg)
diff --git a/lib/spack/spack/cmd/common/arguments.py b/lib/spack/spack/cmd/common/arguments.py
index e5c4c0dde8..40a30a2618 100644
--- a/lib/spack/spack/cmd/common/arguments.py
+++ b/lib/spack/spack/cmd/common/arguments.py
@@ -1,11 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import argparse
-import multiprocessing
import spack.cmd
import spack.config
@@ -102,22 +101,10 @@ class SetParallelJobs(argparse.Action):
'[expected a positive integer, got "{1}"]'
raise ValueError(msg.format(option_string, jobs))
- jobs = min(jobs, multiprocessing.cpu_count())
spack.config.set('config:build_jobs', jobs, scope='command_line')
setattr(namespace, 'jobs', jobs)
- @property
- def default(self):
- # This default is coded as a property so that look-up
- # of this value is done only on demand
- return min(spack.config.get('config:build_jobs', 16),
- multiprocessing.cpu_count())
-
- @default.setter
- def default(self, value):
- pass
-
class DeptypeAction(argparse.Action):
"""Creates a tuple of valid dependency types from a deptype argument."""
@@ -250,8 +237,8 @@ def very_long():
@arg
def tags():
return Args(
- '-t', '--tags', action='append',
- help='filter a package query by tags')
+ '-t', '--tag', action='append', dest='tags', metavar='TAG',
+ help='filter a package query by tag (multiple use allowed)')
@arg
@@ -267,6 +254,7 @@ def install_status():
'-I', '--install-status', action='store_true', default=False,
help='show install status of packages. packages can be: '
'installed [+], missing and needed by an installed package [-], '
+ 'installed in and upstream instance [^], '
'or not installed (no annotation)')
@@ -277,6 +265,13 @@ def no_checksum():
help="do not use checksums to verify downloaded files (unsafe)")
+@arg
+def deprecated():
+ return Args(
+ '--deprecated', action='store_true', default=False,
+ help='fetch deprecated versions without warning')
+
+
def add_cdash_args(subparser, add_help):
cdash_help = {}
if add_help:
diff --git a/lib/spack/spack/cmd/common/env_utility.py b/lib/spack/spack/cmd/common/env_utility.py
index a16cc3ba0d..b556d3edbc 100644
--- a/lib/spack/spack/cmd/common/env_utility.py
+++ b/lib/spack/spack/cmd/common/env_utility.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -53,6 +53,9 @@ def emulate_env_utility(cmd_name, context, args):
spec = args.spec[0]
cmd = args.spec[1:]
+ if not spec:
+ tty.die("spack %s requires a spec." % cmd_name)
+
specs = spack.cmd.parse_specs(spec, concretize=False)
if len(specs) > 1:
tty.die("spack %s only takes one spec." % cmd_name)
diff --git a/lib/spack/spack/cmd/compiler.py b/lib/spack/spack/cmd/compiler.py
index fb9e24ea76..08232022da 100644
--- a/lib/spack/spack/cmd/compiler.py
+++ b/lib/spack/spack/cmd/compiler.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/compilers.py b/lib/spack/spack/cmd/compilers.py
index c29e2257b7..b30b27233f 100644
--- a/lib/spack/spack/cmd/compilers.py
+++ b/lib/spack/spack/cmd/compilers.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/concretize.py b/lib/spack/spack/cmd/concretize.py
index d28f7b4a5d..e6a8ecf6f5 100644
--- a/lib/spack/spack/cmd/concretize.py
+++ b/lib/spack/spack/cmd/concretize.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,11 +14,25 @@ def setup_parser(subparser):
subparser.add_argument(
'-f', '--force', action='store_true',
help="Re-concretize even if already concretized.")
+ subparser.add_argument(
+ '--test', default=None,
+ choices=['root', 'all'],
+ help="""Concretize with test dependencies. When 'root' is chosen, test
+dependencies are only added for the environment's root specs. When 'all' is
+chosen, test dependencies are enabled for all packages in the environment.""")
def concretize(parser, args):
env = ev.get_env(args, 'concretize', required=True)
+
+ if args.test == 'all':
+ tests = True
+ elif args.test == 'root':
+ tests = [spec.name for spec in env.user_specs]
+ else:
+ tests = False
+
with env.write_transaction():
- concretized_specs = env.concretize(force=args.force)
+ concretized_specs = env.concretize(force=args.force, tests=tests)
ev.display_specs(concretized_specs)
env.write()
diff --git a/lib/spack/spack/cmd/config.py b/lib/spack/spack/cmd/config.py
index 2cd914ef89..68ce8362fd 100644
--- a/lib/spack/spack/cmd/config.py
+++ b/lib/spack/spack/cmd/config.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,8 @@ import spack.environment as ev
import spack.schema.packages
import spack.util.spack_yaml as syaml
from spack.util.editor import editor
+import spack.store
+import spack.repo
description = "get and set configuration options"
section = "config"
@@ -73,6 +75,16 @@ def setup_parser(subparser):
help="file from which to set all config values"
)
+ prefer_upstream_parser = sp.add_parser(
+ 'prefer-upstream',
+ help='set package preferences from upstream')
+
+ prefer_upstream_parser.add_argument(
+ '--local', action='store_true', default=False,
+ help="Set packages preferences based on local installs, rather "
+ "than upstream."
+ )
+
remove_parser = sp.add_parser('remove', aliases=['rm'],
help='remove configuration parameters')
remove_parser.add_argument(
@@ -188,71 +200,11 @@ def config_add(args):
scope, section = _get_scope_and_section(args)
- # Updates from file
if args.file:
- # Get file as config dict
- data = spack.config.read_config_file(args.file)
- if any(k in data for k in spack.schema.env.keys):
- data = ev.config_dict(data)
-
- # update all sections from config dict
- # We have to iterate on keys to keep overrides from the file
- for section in data.keys():
- if section in spack.config.section_schemas.keys():
- # Special handling for compiler scope difference
- # Has to be handled after we choose a section
- if scope is None:
- scope = spack.config.default_modify_scope(section)
-
- value = data[section]
- existing = spack.config.get(section, scope=scope)
- new = spack.config.merge_yaml(existing, value)
-
- spack.config.set(section, new, scope)
+ spack.config.add_from_file(args.file, scope=scope)
if args.path:
- components = spack.config.process_config_path(args.path)
-
- has_existing_value = True
- path = ''
- override = False
- for idx, name in enumerate(components[:-1]):
- # First handle double colons in constructing path
- colon = '::' if override else ':' if path else ''
- path += colon + name
- if getattr(name, 'override', False):
- override = True
- else:
- override = False
-
- # Test whether there is an existing value at this level
- existing = spack.config.get(path, scope=scope)
-
- if existing is None:
- has_existing_value = False
- # We've nested further than existing config, so we need the
- # type information for validation to know how to handle bare
- # values appended to lists.
- existing = spack.config.get_valid_type(path)
-
- # construct value from this point down
- value = syaml.load_config(components[-1])
- for component in reversed(components[idx + 1:-1]):
- value = {component: value}
- break
-
- if has_existing_value:
- path, _, value = args.path.rpartition(':')
- value = syaml.load_config(value)
- existing = spack.config.get(path, scope=scope)
-
- # append values to lists
- if isinstance(existing, list) and not isinstance(value, list):
- value = [value]
-
- # merge value into existing
- new = spack.config.merge_yaml(existing, value)
- spack.config.set(path, new, scope)
+ spack.config.add(args.path, scope=scope)
def config_remove(args):
@@ -431,6 +383,79 @@ def config_revert(args):
tty.msg(msg.format(cfg_file))
+def config_prefer_upstream(args):
+ """Generate a packages config based on the configuration of all upstream
+ installs."""
+
+ scope = args.scope
+ if scope is None:
+ scope = spack.config.default_modify_scope('packages')
+
+ all_specs = set(spack.store.db.query(installed=True))
+ local_specs = set(spack.store.db.query_local(installed=True))
+ pref_specs = local_specs if args.local else all_specs - local_specs
+
+ conflicting_variants = set()
+
+ pkgs = {}
+ for spec in pref_specs:
+ # Collect all the upstream compilers and versions for this package.
+ pkg = pkgs.get(spec.name, {
+ 'version': [],
+ 'compiler': [],
+ })
+ pkgs[spec.name] = pkg
+
+ # We have no existing variant if this is our first added version.
+ existing_variants = pkg.get('variants',
+ None if not pkg['version'] else '')
+
+ version = spec.version.string
+ if version not in pkg['version']:
+ pkg['version'].append(version)
+
+ compiler = str(spec.compiler)
+ if compiler not in pkg['compiler']:
+ pkg['compiler'].append(compiler)
+
+ # Get and list all the variants that differ from the default.
+ variants = []
+ for var_name, variant in spec.variants.items():
+ if (var_name in ['patches']
+ or var_name not in spec.package.variants):
+ continue
+
+ if variant.value != spec.package.variants[var_name].default:
+ variants.append(str(variant))
+ variants.sort()
+ variants = ' '.join(variants)
+
+ if spec.name not in conflicting_variants:
+ # Only specify the variants if there's a single variant
+ # set across all versions/compilers.
+ if existing_variants is not None and existing_variants != variants:
+ conflicting_variants.add(spec.name)
+ pkg.pop('variants', None)
+ elif variants:
+ pkg['variants'] = variants
+
+ if conflicting_variants:
+ tty.warn(
+ "The following packages have multiple conflicting upstream "
+ "specs. You may have to specify, by "
+ "concretized hash, which spec you want when building "
+ "packages that depend on them:\n - {0}"
+ .format("\n - ".join(sorted(conflicting_variants))))
+
+ # Simply write the config to the specified file.
+ existing = spack.config.get('packages', scope=scope)
+ new = spack.config.merge_yaml(existing, pkgs)
+ spack.config.set('packages', new, scope)
+ config_file = spack.config.config.get_config_filename(scope, section)
+
+ tty.msg("Updated config at {0}".format(config_file))
+
+
def config(parser, args):
action = {
'get': config_get,
@@ -441,6 +466,7 @@ def config(parser, args):
'rm': config_remove,
'remove': config_remove,
'update': config_update,
- 'revert': config_revert
+ 'revert': config_revert,
+ 'prefer-upstream': config_prefer_upstream,
}
action[args.config_command](args)
diff --git a/lib/spack/spack/cmd/containerize.py b/lib/spack/spack/cmd/containerize.py
index cc2c001560..27ef988f69 100644
--- a/lib/spack/spack/cmd/containerize.py
+++ b/lib/spack/spack/cmd/containerize.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/create.py b/lib/spack/spack/cmd/create.py
index a31b9537b6..85fea9d98a 100644
--- a/lib/spack/spack/cmd/create.py
+++ b/lib/spack/spack/cmd/create.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,7 +28,7 @@ level = "short"
package_template = '''\
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -117,7 +117,7 @@ class PackageTemplate(BundlePackageTemplate):
make()
make('install')"""
- url_line = """ url = \"{url}\""""
+ url_line = ' url = "{url}"'
def __init__(self, name, url, versions):
super(PackageTemplate, self).__init__(name, versions)
@@ -270,14 +270,47 @@ class PythonPackageTemplate(PackageTemplate):
args = []
return args"""
- def __init__(self, name, *args, **kwargs):
+ def __init__(self, name, url, *args, **kwargs):
# If the user provided `--name py-numpy`, don't rename it py-py-numpy
if not name.startswith('py-'):
# Make it more obvious that we are renaming the package
tty.msg("Changing package name from {0} to py-{0}".format(name))
name = 'py-{0}'.format(name)
- super(PythonPackageTemplate, self).__init__(name, *args, **kwargs)
+ # Simple PyPI URLs:
+ # https://<hostname>/packages/<type>/<first character of project>/<project>/<download file>
+ # e.g. https://pypi.io/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://www.pypi.io/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://pypi.org/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://pypi.python.org/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://files.pythonhosted.org/packages/source/n/numpy/numpy-1.19.4.zip
+
+ # PyPI URLs containing hash:
+ # https://<hostname>/packages/<two character hash>/<two character hash>/<longer hash>/<download file>
+ # e.g. https://pypi.io/packages/c5/63/a48648ebc57711348420670bb074998f79828291f68aebfff1642be212ec/numpy-1.19.4.zip
+ # e.g. https://files.pythonhosted.org/packages/c5/63/a48648ebc57711348420670bb074998f79828291f68aebfff1642be212ec/numpy-1.19.4.zip
+ # e.g. https://files.pythonhosted.org/packages/c5/63/a48648ebc57711348420670bb074998f79828291f68aebfff1642be212ec/numpy-1.19.4.zip#sha256=141ec3a3300ab89c7f2b0775289954d193cc8edb621ea05f99db9cb181530512
+
+ # PyPI URLs for wheels are too complicated, ignore them for now
+
+ match = re.search(
+ r'(?:pypi|pythonhosted)[^/]+/packages' + '/([^/#]+)' * 4,
+ url
+ )
+ if match:
+ if len(match.group(2)) == 1:
+ # Simple PyPI URL
+ url = '/'.join(match.group(3, 4))
+ else:
+ # PyPI URL containing hash
+ # Project name doesn't necessarily match download name, but it
+ # usually does, so this is the best we can do
+ project = parse_name(url)
+ url = '/'.join([project, match.group(4)])
+
+ self.url_line = ' pypi = "{url}"'
+
+ super(PythonPackageTemplate, self).__init__(name, url, *args, **kwargs)
class RPackageTemplate(PackageTemplate):
@@ -289,20 +322,40 @@ class RPackageTemplate(PackageTemplate):
# depends_on('r-foo', type=('build', 'run'))"""
body_def = """\
- def configure_args(self, spec, prefix):
+ def configure_args(self):
# FIXME: Add arguments to pass to install via --configure-args
# FIXME: If not needed delete this function
args = []
return args"""
- def __init__(self, name, *args, **kwargs):
+ def __init__(self, name, url, *args, **kwargs):
# If the user provided `--name r-rcpp`, don't rename it r-r-rcpp
if not name.startswith('r-'):
# Make it more obvious that we are renaming the package
tty.msg("Changing package name from {0} to r-{0}".format(name))
name = 'r-{0}'.format(name)
- super(RPackageTemplate, self).__init__(name, *args, **kwargs)
+ r_name = parse_name(url)
+
+ cran = re.search(
+ r'(?:r-project|rstudio)[^/]+/src' + '/([^/]+)' * 2,
+ url
+ )
+
+ if cran:
+ url = r_name
+ self.url_line = ' cran = "{url}"'
+
+ bioc = re.search(
+ r'(?:bioconductor)[^/]+/packages' + '/([^/]+)' * 5,
+ url
+ )
+
+ if bioc:
+ self.url_line = ' url = "{0}"\n'\
+ ' bioc = "{1}"'.format(url, r_name)
+
+ super(RPackageTemplate, self).__init__(name, url, *args, **kwargs)
class PerlmakePackageTemplate(PackageTemplate):
@@ -545,7 +598,8 @@ class BuildSystemGuesser:
]
# Peek inside the compressed file.
- if stage.archive_file.endswith('.zip'):
+ if (stage.archive_file.endswith('.zip') or
+ '.zip#' in stage.archive_file):
try:
unzip = which('unzip')
output = unzip('-lq', stage.archive_file, output=str)
diff --git a/lib/spack/spack/cmd/deactivate.py b/lib/spack/spack/cmd/deactivate.py
index 3c72531a9c..0afa4af82b 100644
--- a/lib/spack/spack/cmd/deactivate.py
+++ b/lib/spack/spack/cmd/deactivate.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/debug.py b/lib/spack/spack/cmd/debug.py
index 074e95209a..8580416cba 100644
--- a/lib/spack/spack/cmd/debug.py
+++ b/lib/spack/spack/cmd/debug.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ import llnl.util.tty as tty
from llnl.util.filesystem import working_dir
import spack.architecture as architecture
+import spack.config
import spack.paths
from spack.main import get_version
from spack.util.executable import which
@@ -89,6 +90,7 @@ def report(args):
print('* **Python:**', platform.python_version())
print('* **Platform:**', architecture.Arch(
architecture.platform(), 'frontend', 'frontend'))
+ print('* **Concretizer:**', spack.config.get('config:concretizer'))
def debug(parser, args):
diff --git a/lib/spack/spack/cmd/dependencies.py b/lib/spack/spack/cmd/dependencies.py
index bbccbe23ee..2f923fece0 100644
--- a/lib/spack/spack/cmd/dependencies.py
+++ b/lib/spack/spack/cmd/dependencies.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/dependents.py b/lib/spack/spack/cmd/dependents.py
index 5563701801..242a07da36 100644
--- a/lib/spack/spack/cmd/dependents.py
+++ b/lib/spack/spack/cmd/dependents.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/deprecate.py b/lib/spack/spack/cmd/deprecate.py
index 6172033fa7..2928a5b264 100644
--- a/lib/spack/spack/cmd/deprecate.py
+++ b/lib/spack/spack/cmd/deprecate.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/dev_build.py b/lib/spack/spack/cmd/dev_build.py
index 429ba07246..2e7c51da42 100644
--- a/lib/spack/spack/cmd/dev_build.py
+++ b/lib/spack/spack/cmd/dev_build.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,7 +26,7 @@ def setup_parser(subparser):
subparser.add_argument(
'-i', '--ignore-dependencies', action='store_true', dest='ignore_deps',
help="don't try to install dependencies of requested packages")
- arguments.add_common_arguments(subparser, ['no_checksum'])
+ arguments.add_common_arguments(subparser, ['no_checksum', 'deprecated'])
subparser.add_argument(
'--keep-prefix', action='store_true',
help="do not remove the install prefix if installation fails")
@@ -98,6 +98,9 @@ def dev_build(self, args):
if args.no_checksum:
spack.config.set('config:checksum', False, scope='command_line')
+ if args.deprecated:
+ spack.config.set('config:deprecated', True, scope='command_line')
+
tests = False
if args.test == 'all':
tests = True
diff --git a/lib/spack/spack/cmd/develop.py b/lib/spack/spack/cmd/develop.py
index 957060536d..d2dd8d0049 100644
--- a/lib/spack/spack/cmd/develop.py
+++ b/lib/spack/spack/cmd/develop.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/docs.py b/lib/spack/spack/cmd/docs.py
index a7f2a641ee..ac3a91721e 100644
--- a/lib/spack/spack/cmd/docs.py
+++ b/lib/spack/spack/cmd/docs.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/edit.py b/lib/spack/spack/cmd/edit.py
index e01d50dd03..a277ed519e 100644
--- a/lib/spack/spack/cmd/edit.py
+++ b/lib/spack/spack/cmd/edit.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/env.py b/lib/spack/spack/cmd/env.py
index 4699efd26b..11b422a9bd 100644
--- a/lib/spack/spack/cmd/env.py
+++ b/lib/spack/spack/cmd/env.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -157,6 +157,10 @@ def env_create_setup_parser(subparser):
subparser.add_argument(
'-d', '--dir', action='store_true',
help='create an environment in a specific directory')
+ subparser.add_argument(
+ '--keep-relative', action='store_true',
+ help='copy relative develop paths verbatim into the new environment'
+ ' when initializing from envfile')
view_opts = subparser.add_mutually_exclusive_group()
view_opts.add_argument(
'--without-view', action='store_true',
@@ -184,13 +188,14 @@ def env_create(args):
if args.envfile:
with open(args.envfile) as f:
_env_create(args.create_env, f, args.dir,
- with_view=with_view)
+ with_view=with_view, keep_relative=args.keep_relative)
else:
_env_create(args.create_env, None, args.dir,
with_view=with_view)
-def _env_create(name_or_path, init_file=None, dir=False, with_view=None):
+def _env_create(name_or_path, init_file=None, dir=False, with_view=None,
+ keep_relative=False):
"""Create a new environment, with an optional yaml description.
Arguments:
@@ -199,15 +204,18 @@ def _env_create(name_or_path, init_file=None, dir=False, with_view=None):
spack.yaml or spack.lock
dir (bool): if True, create an environment in a directory instead
of a named environment
+ keep_relative (bool): if True, develop paths are copied verbatim into
+ the new environment file, otherwise they may be made absolute if the
+ new environment is in a different location
"""
if dir:
- env = ev.Environment(name_or_path, init_file, with_view)
+ env = ev.Environment(name_or_path, init_file, with_view, keep_relative)
env.write()
tty.msg("Created environment in %s" % env.path)
tty.msg("You can activate this environment with:")
tty.msg(" spack env activate %s" % env.path)
else:
- env = ev.create(name_or_path, init_file, with_view)
+ env = ev.create(name_or_path, init_file, with_view, keep_relative)
env.write()
tty.msg("Created environment '%s' in %s" % (name_or_path, env.path))
tty.msg("You can activate this environment with:")
diff --git a/lib/spack/spack/cmd/extensions.py b/lib/spack/spack/cmd/extensions.py
index b4fb7faa1f..a57aa031ff 100644
--- a/lib/spack/spack/cmd/extensions.py
+++ b/lib/spack/spack/cmd/extensions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/external.py b/lib/spack/spack/cmd/external.py
index 52af72ed8f..c7d045e66d 100644
--- a/lib/spack/spack/cmd/external.py
+++ b/lib/spack/spack/cmd/external.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ import llnl.util.tty.colify as colify
import six
import spack
import spack.cmd
+import spack.cmd.common.arguments
import spack.error
import spack.util.environment
import spack.util.spack_yaml as syaml
@@ -42,6 +43,7 @@ def setup_parser(subparser):
'--scope', choices=scopes, metavar=scopes_metavar,
default=spack.config.default_modify_scope('packages'),
help="configuration scope to modify")
+ spack.cmd.common.arguments.add_common_arguments(find_parser, ['tags'])
find_parser.add_argument('packages', nargs=argparse.REMAINDER)
sp.add_parser(
@@ -148,9 +150,28 @@ def _spec_is_valid(spec):
def external_find(args):
+ # Construct the list of possible packages to be detected
+ packages_to_check = []
+
+ # Add the packages that have been required explicitly
if args.packages:
packages_to_check = list(spack.repo.get(pkg) for pkg in args.packages)
- else:
+ if args.tags:
+ allowed = set(spack.repo.path.packages_with_tags(*args.tags))
+ packages_to_check = [x for x in packages_to_check if x in allowed]
+
+ if args.tags and not packages_to_check:
+ # If we arrived here we didn't have any explicit package passed
+ # as argument, which means to search all packages.
+ # Since tags are cached it's much faster to construct what we need
+ # to search directly, rather than filtering after the fact
+ packages_to_check = [
+ spack.repo.get(pkg) for pkg in
+ spack.repo.path.packages_with_tags(*args.tags)
+ ]
+
+ # If the list of packages is empty, search for every possible package
+ if not args.tags and not packages_to_check:
packages_to_check = spack.repo.path.all_packages()
pkg_to_entries = _get_external_packages(packages_to_check)
diff --git a/lib/spack/spack/cmd/fetch.py b/lib/spack/spack/cmd/fetch.py
index d2cd53c69f..bb4f535180 100644
--- a/lib/spack/spack/cmd/fetch.py
+++ b/lib/spack/spack/cmd/fetch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ level = "long"
def setup_parser(subparser):
- arguments.add_common_arguments(subparser, ['no_checksum'])
+ arguments.add_common_arguments(subparser, ['no_checksum', 'deprecated'])
subparser.add_argument(
"-m",
"--missing",
@@ -64,6 +64,9 @@ def fetch(parser, args):
if args.no_checksum:
spack.config.set("config:checksum", False, scope="command_line")
+ if args.deprecated:
+ spack.config.set('config:deprecated', True, scope='command_line')
+
for spec in specs:
if args.missing or args.dependencies:
for s in spec.traverse():
diff --git a/lib/spack/spack/cmd/find.py b/lib/spack/spack/cmd/find.py
index f770a02b25..21d4d01ce8 100644
--- a/lib/spack/spack/cmd/find.py
+++ b/lib/spack/spack/cmd/find.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/flake8.py b/lib/spack/spack/cmd/flake8.py
index cdfce2cab2..7da059ba69 100644
--- a/lib/spack/spack/cmd/flake8.py
+++ b/lib/spack/spack/cmd/flake8.py
@@ -1,321 +1,26 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from __future__ import print_function
-import re
-import os
-import sys
-import shutil
-import tempfile
-import argparse
+import llnl.util.tty as tty
-from llnl.util.filesystem import working_dir, mkdirp
+import spack.cmd.style
-import spack.paths
-from spack.util.executable import which
-
-description = "runs source code style checks on Spack. requires flake8"
-section = "developer"
-level = "long"
-
-
-def is_package(f):
- """Whether flake8 should consider a file as a core file or a package.
-
- We run flake8 with different exceptions for the core and for
- packages, since we allow `from spack import *` and poking globals
- into packages.
- """
- return f.startswith('var/spack/repos/') or 'docs/tutorial/examples' in f
-
-
-#: List of directories to exclude from checks.
-exclude_directories = [spack.paths.external_path]
-
-#: max line length we're enforcing (note: this duplicates what's in .flake8)
-max_line_length = 79
-
-#: This is a dict that maps:
-#: filename pattern ->
-#: flake8 exemption code ->
-#: list of patterns, for which matching lines should have codes applied.
-#:
-#: For each file, if the filename pattern matches, we'll add per-line
-#: exemptions if any patterns in the sub-dict match.
-pattern_exemptions = {
- # exemptions applied only to package.py files.
- r'package.py$': {
- # Allow 'from spack import *' in packages, but no other wildcards
- 'F403': [
- r'^from spack import \*$'
- ],
- # Exempt lines with urls and descriptions from overlong line errors.
- 'E501': [
- r'^\s*homepage\s*=',
- r'^\s*url\s*=',
- r'^\s*git\s*=',
- r'^\s*svn\s*=',
- r'^\s*hg\s*=',
- r'^\s*list_url\s*=',
- r'^\s*version\(',
- r'^\s*variant\(',
- r'^\s*provides\(',
- r'^\s*extends\(',
- r'^\s*depends_on\(',
- r'^\s*conflicts\(',
- r'^\s*resource\(',
- r'^\s*patch\(',
- ],
- # Exempt '@when' decorated functions from redefinition errors.
- 'F811': [
- r'^\s*@when\(.*\)',
- ],
- },
-
- # exemptions applied to all files.
- r'.py$': {
- 'E501': [
- r'(https?|ftp|file)\:', # URLs
- r'([\'"])[0-9a-fA-F]{32,}\1', # long hex checksums
- ]
- },
-}
-
-# compile all regular expressions.
-pattern_exemptions = dict(
- (re.compile(file_pattern),
- dict((code, [re.compile(p) for p in patterns])
- for code, patterns in error_dict.items()))
- for file_pattern, error_dict in pattern_exemptions.items())
-
-
-def changed_files(base=None, untracked=True, all_files=False):
- """Get list of changed files in the Spack repository."""
-
- git = which('git', required=True)
-
- if base is None:
- base = os.environ.get('TRAVIS_BRANCH', 'develop')
-
- range = "{0}...".format(base)
-
- git_args = [
- # Add changed files committed since branching off of develop
- ['diff', '--name-only', '--diff-filter=ACMR', range],
- # Add changed files that have been staged but not yet committed
- ['diff', '--name-only', '--diff-filter=ACMR', '--cached'],
- # Add changed files that are unstaged
- ['diff', '--name-only', '--diff-filter=ACMR'],
- ]
-
- # Add new files that are untracked
- if untracked:
- git_args.append(['ls-files', '--exclude-standard', '--other'])
-
- # add everything if the user asked for it
- if all_files:
- git_args.append(['ls-files', '--exclude-standard'])
-
- excludes = [os.path.realpath(f) for f in exclude_directories]
- changed = set()
-
- for arg_list in git_args:
- files = git(*arg_list, output=str).split('\n')
-
- for f in files:
- # Ignore non-Python files
- if not (f.endswith('.py') or f == 'bin/spack'):
- continue
-
- # Ignore files in the exclude locations
- if any(os.path.realpath(f).startswith(e) for e in excludes):
- continue
-
- changed.add(f)
-
- return sorted(changed)
-
-
-def add_pattern_exemptions(line, codes):
- """Add a flake8 exemption to a line."""
- if line.startswith('#'):
- return line
-
- line = line.rstrip('\n')
-
- # Line is already ignored
- if line.endswith('# noqa'):
- return line + '\n'
-
- orig_len = len(line)
- codes = set(codes)
-
- # don't add E501 unless the line is actually too long, as it can mask
- # other errors like trailing whitespace
- if orig_len <= max_line_length and "E501" in codes:
- codes.remove("E501")
- if not codes:
- return line + "\n"
-
- exemptions = ','.join(sorted(codes))
-
- # append exemption to line
- if '# noqa: ' in line:
- line += ',{0}'.format(exemptions)
- elif line: # ignore noqa on empty lines
- line += ' # noqa: {0}'.format(exemptions)
-
- # if THIS made the line too long, add an exemption for that
- if len(line) > max_line_length and orig_len <= max_line_length:
- line += ',E501'
-
- return line + '\n'
-
-
-def filter_file(source, dest, output=False):
- """Filter a single file through all the patterns in pattern_exemptions."""
-
- # Prior to Python 3.8, `noqa: F811` needed to be placed on the `@when` line
- # Starting with Python 3.8, it must be placed on the `def` line
- # https://gitlab.com/pycqa/flake8/issues/583
- ignore_f811_on_previous_line = False
-
- with open(source) as infile:
- parent = os.path.dirname(dest)
- mkdirp(parent)
-
- with open(dest, 'w') as outfile:
- for line in infile:
- line_errors = []
-
- # pattern exemptions
- for file_pattern, errors in pattern_exemptions.items():
- if not file_pattern.search(source):
- continue
-
- for code, patterns in errors.items():
- for pattern in patterns:
- if pattern.search(line):
- line_errors.append(code)
- break
-
- if 'F811' in line_errors:
- ignore_f811_on_previous_line = True
- elif ignore_f811_on_previous_line:
- line_errors.append('F811')
- ignore_f811_on_previous_line = False
-
- if line_errors:
- line = add_pattern_exemptions(line, line_errors)
-
- outfile.write(line)
- if output:
- sys.stdout.write(line)
+description = "alias for spack style (deprecated)"
+section = spack.cmd.style.section
+level = spack.cmd.style.level
def setup_parser(subparser):
- subparser.add_argument(
- '-b', '--base', action='store', default=None,
- help="select base branch for collecting list of modified files")
- subparser.add_argument(
- '-k', '--keep-temp', action='store_true',
- help="do not delete temporary directory where flake8 runs. "
- "use for debugging, to see filtered files")
- subparser.add_argument(
- '-a', '--all', action='store_true',
- help="check all files, not just changed files")
- subparser.add_argument(
- '-o', '--output', action='store_true',
- help="send filtered files to stdout as well as temp files")
- subparser.add_argument(
- '-r', '--root-relative', action='store_true', default=False,
- help="print root-relative paths (default: cwd-relative)")
- subparser.add_argument(
- '-U', '--no-untracked', dest='untracked', action='store_false',
- default=True, help="exclude untracked files from checks")
- subparser.add_argument(
- 'files', nargs=argparse.REMAINDER, help="specific files to check")
+ spack.cmd.style.setup_parser(subparser)
def flake8(parser, args):
- flake8 = which('flake8', required=True)
-
- temp = tempfile.mkdtemp()
- try:
- file_list = args.files
- if file_list:
- def prefix_relative(path):
- return os.path.relpath(
- os.path.abspath(os.path.realpath(path)),
- spack.paths.prefix)
-
- file_list = [prefix_relative(p) for p in file_list]
-
- with working_dir(spack.paths.prefix):
- if not file_list:
- file_list = changed_files(args.base, args.untracked, args.all)
-
- print('=======================================================')
- print('flake8: running flake8 code checks on spack.')
- print()
- print('Modified files:')
- for filename in file_list:
- print(' {0}'.format(filename.strip()))
- print('=======================================================')
-
- # filter files into a temporary directory with exemptions added.
- for filename in file_list:
- src_path = os.path.join(spack.paths.prefix, filename)
- dest_path = os.path.join(temp, filename)
- filter_file(src_path, dest_path, args.output)
-
- # run flake8 on the temporary tree, once for core, once for pkgs
- package_file_list = [f for f in file_list if is_package(f)]
- file_list = [f for f in file_list if not is_package(f)]
-
- returncode = 0
- with working_dir(temp):
- output = ''
- if file_list:
- output += flake8(
- '--format', 'pylint',
- '--config=%s' % os.path.join(spack.paths.prefix,
- '.flake8'),
- *file_list, fail_on_error=False, output=str)
- returncode |= flake8.returncode
- if package_file_list:
- output += flake8(
- '--format', 'pylint',
- '--config=%s' % os.path.join(spack.paths.prefix,
- '.flake8_packages'),
- *package_file_list, fail_on_error=False, output=str)
- returncode |= flake8.returncode
-
- if args.root_relative:
- # print results relative to repo root.
- print(output)
- else:
- # print results relative to current working directory
- def cwd_relative(path):
- return '{0}: ['.format(os.path.relpath(
- os.path.join(
- spack.paths.prefix, path.group(1)), os.getcwd()))
-
- for line in output.split('\n'):
- print(re.sub(r'^(.*): \[', cwd_relative, line))
-
- if returncode != 0:
- print('Flake8 found errors.')
- sys.exit(1)
- else:
- print('Flake8 checks were clean.')
-
- finally:
- if args.keep_temp:
- print('Temporary files are in: ', temp)
- else:
- shutil.rmtree(temp, ignore_errors=True)
+ tty.warn(
+ "spack flake8 is deprecated", "please use `spack style` to run style checks"
+ )
+ return spack.cmd.style.style(parser, args)
diff --git a/lib/spack/spack/cmd/gc.py b/lib/spack/spack/cmd/gc.py
index ca9d88169a..f85f27bfca 100644
--- a/lib/spack/spack/cmd/gc.py
+++ b/lib/spack/spack/cmd/gc.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/gpg.py b/lib/spack/spack/cmd/gpg.py
index 59fba4a4df..e34c2c4c84 100644
--- a/lib/spack/spack/cmd/gpg.py
+++ b/lib/spack/spack/cmd/gpg.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/graph.py b/lib/spack/spack/cmd/graph.py
index d0fbf8e6c6..3d962a52f8 100644
--- a/lib/spack/spack/cmd/graph.py
+++ b/lib/spack/spack/cmd/graph.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/help.py b/lib/spack/spack/cmd/help.py
index d730d4f0fe..bc289c0363 100644
--- a/lib/spack/spack/cmd/help.py
+++ b/lib/spack/spack/cmd/help.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/info.py b/lib/spack/spack/cmd/info.py
index fa674317ab..6b316f3cc4 100644
--- a/lib/spack/spack/cmd/info.py
+++ b/lib/spack/spack/cmd/info.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -111,7 +111,7 @@ class VariantFormatter(object):
yield ' None'
else:
yield ' ' + self.fmt % self.headers
- underline = tuple([l * "=" for l in self.column_widths])
+ underline = tuple([w * "=" for w in self.column_widths])
yield ' ' + self.fmt % underline
yield ''
for k, v in sorted(self.variants.items()):
@@ -189,10 +189,11 @@ def print_text_info(pkg):
color.cprint(section_title('Safe versions: '))
for v in reversed(sorted(pkg.versions)):
- if pkg.has_code:
- url = fs.for_package_version(pkg, v)
- line = version(' {0}'.format(pad(v))) + color.cescape(url)
- color.cprint(line)
+ if not pkg.versions[v].get('deprecated', False):
+ if pkg.has_code:
+ url = fs.for_package_version(pkg, v)
+ line = version(' {0}'.format(pad(v))) + color.cescape(url)
+ color.cprint(line)
color.cprint('')
color.cprint(section_title('Variants:'))
diff --git a/lib/spack/spack/cmd/install.py b/lib/spack/spack/cmd/install.py
index 8f3902d71c..587f039656 100644
--- a/lib/spack/spack/cmd/install.py
+++ b/lib/spack/spack/cmd/install.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ import spack.cmd
import spack.cmd.common.arguments as arguments
import spack.environment as ev
import spack.fetch_strategy
+import spack.monitor
import spack.paths
import spack.report
from spack.error import SpackError
@@ -43,6 +44,7 @@ def update_kwargs_from_args(args, kwargs):
'dirty': args.dirty,
'use_cache': args.use_cache,
'cache_only': args.cache_only,
+ 'include_build_deps': args.include_build_deps,
'explicit': True, # Always true for install command
'stop_at': args.until,
'unsigned': args.unsigned,
@@ -105,6 +107,13 @@ the dependencies"""
'--cache-only', action='store_true', dest='cache_only', default=False,
help="only install package from binary mirrors")
+ monitor_group = spack.monitor.get_monitor_group(subparser) # noqa
+
+ subparser.add_argument(
+ '--include-build-deps', action='store_true', dest='include_build_deps',
+ default=False, help="""include build deps when installing from cache,
+which is useful for CI pipeline troubleshooting""")
+
subparser.add_argument(
'--no-check-signature', action='store_true',
dest='unsigned', default=False,
@@ -120,7 +129,7 @@ remote spec matches that of the local spec""")
subparser.add_argument(
'--source', action='store_true', dest='install_source',
help="install source files in prefix")
- arguments.add_common_arguments(subparser, ['no_checksum'])
+ arguments.add_common_arguments(subparser, ['no_checksum', 'deprecated'])
subparser.add_argument(
'-v', '--verbose', action='store_true',
help="display verbose build output while installing")
@@ -131,6 +140,10 @@ remote spec matches that of the local spec""")
'--only-concrete', action='store_true', default=False,
help='(with environment) only install already concretized specs')
subparser.add_argument(
+ '--no-add', action='store_true', default=False,
+ help="""(with environment) only install specs provided as argument
+if they are already in the concretized environment""")
+ subparser.add_argument(
'-f', '--file', action='append', default=[],
dest='specfiles', metavar='SPEC_YAML_FILE',
help="install from file. Read specs to install from .yaml files")
@@ -177,7 +190,7 @@ def default_log_file(spec):
"""
fmt = 'test-{x.name}-{x.version}-{hash}.xml'
basename = fmt.format(x=spec, hash=spec.dag_hash())
- dirname = fs.os.path.join(spack.paths.var_path, 'junit-report')
+ dirname = fs.os.path.join(spack.paths.reports_path, 'junit')
fs.mkdirp(dirname)
return fs.os.path.join(dirname, basename)
@@ -196,11 +209,66 @@ def install_specs(cli_args, kwargs, specs):
try:
if env:
+ specs_to_install = []
+ specs_to_add = []
for abstract, concrete in specs:
- with env.write_transaction():
- concrete = env.concretize_and_add(abstract, concrete)
- env.write(regenerate_views=False)
- env.install_all(cli_args, **kwargs)
+ # This won't find specs added to the env since last
+ # concretize, therefore should we consider enforcing
+ # concretization of the env before allowing to install
+ # specs?
+ m_spec = env.matching_spec(abstract)
+
+ # If there is any ambiguity in the above call to matching_spec
+ # (i.e. if more than one spec in the environment matches), then
+ # SpackEnvironmentError is rasied, with a message listing the
+ # the matches. Getting to this point means there were either
+ # no matches or exactly one match.
+
+ if not m_spec:
+ tty.debug('{0} matched nothing in the env'.format(
+ abstract.name))
+ # no matches in the env
+ if cli_args.no_add:
+ msg = ('You asked to install {0} without adding it ' +
+ '(--no-add), but no such spec exists in ' +
+ 'environment').format(abstract.name)
+ tty.die(msg)
+ else:
+ tty.debug('adding {0} as a root'.format(abstract.name))
+ specs_to_add.append((abstract, concrete))
+
+ continue
+
+ tty.debug('exactly one match for {0} in env -> {1}'.format(
+ m_spec.name, m_spec.dag_hash()))
+
+ if m_spec in env.roots() or cli_args.no_add:
+ # either the single match is a root spec (and --no-add is
+ # the default for roots) or --no-add was stated explictly
+ tty.debug('just install {0}'.format(m_spec.name))
+ specs_to_install.append(m_spec)
+ else:
+ # the single match is not a root (i.e. it's a dependency),
+ # and --no-add was not specified, so we'll add it as a
+ # root before installing
+ tty.debug('add {0} then install it'.format(m_spec.name))
+ specs_to_add.append((abstract, concrete))
+
+ if specs_to_add:
+ tty.debug('Adding the following specs as roots:')
+ for abstract, concrete in specs_to_add:
+ tty.debug(' {0}'.format(abstract.name))
+ with env.write_transaction():
+ specs_to_install.append(
+ env.concretize_and_add(abstract, concrete))
+ env.write(regenerate_views=False)
+
+ # Install the validated list of cli specs
+ if specs_to_install:
+ tty.debug('Installing the following cli specs:')
+ for s in specs_to_install:
+ tty.debug(' {0}'.format(s.name))
+ env.install_specs(specs_to_install, args=cli_args, **kwargs)
else:
installs = [(concrete.package, kwargs) for _, concrete in specs]
builder = PackageInstaller(installs)
@@ -218,6 +286,7 @@ def install_specs(cli_args, kwargs, specs):
def install(parser, args, **kwargs):
+
if args.help_cdash:
parser = argparse.ArgumentParser(
formatter_class=argparse.RawDescriptionHelpFormatter,
@@ -230,19 +299,42 @@ environment variables:
parser.print_help()
return
+ # The user wants to monitor builds using github.com/spack/spack-monitor
+ if args.use_monitor:
+ monitor = spack.monitor.get_client(
+ host=args.monitor_host,
+ prefix=args.monitor_prefix,
+ disable_auth=args.monitor_disable_auth,
+ tags=args.monitor_tags,
+ )
+
reporter = spack.report.collect_info(
spack.package.PackageInstaller, '_install_task', args.log_format, args)
if args.log_file:
reporter.filename = args.log_file
+ if args.run_tests:
+ tty.warn("Deprecated option: --run-tests: use --test=all instead")
+
+ def get_tests(specs):
+ if args.test == 'all' or args.run_tests:
+ return True
+ elif args.test == 'root':
+ return [spec.name for spec in specs]
+ else:
+ return False
+
if not args.spec and not args.specfiles:
# if there are no args but an active environment
# then install the packages from it.
env = ev.get_env(args, 'install')
if env:
+ tests = get_tests(env.user_specs)
+ kwargs['tests'] = tests
+
if not args.only_concrete:
with env.write_transaction():
- concretized_specs = env.concretize()
+ concretized_specs = env.concretize(tests=tests)
ev.display_specs(concretized_specs)
# save view regeneration for later, so that we only do it
@@ -282,20 +374,16 @@ environment variables:
if args.no_checksum:
spack.config.set('config:checksum', False, scope='command_line')
+ if args.deprecated:
+ spack.config.set('config:deprecated', True, scope='command_line')
+
# Parse cli arguments and construct a dictionary
# that will be passed to the package installer
update_kwargs_from_args(args, kwargs)
- if args.run_tests:
- tty.warn("Deprecated option: --run-tests: use --test=all instead")
-
# 1. Abstract specs from cli
abstract_specs = spack.cmd.parse_specs(args.spec)
- tests = False
- if args.test == 'all' or args.run_tests:
- tests = True
- elif args.test == 'root':
- tests = [spec.name for spec in abstract_specs]
+ tests = get_tests(abstract_specs)
kwargs['tests'] = tests
try:
@@ -362,4 +450,17 @@ environment variables:
# overwrite all concrete explicit specs from this build
kwargs['overwrite'] = [spec.dag_hash() for spec in specs]
+ # Update install_args with the monitor args, needed for build task
+ kwargs.update({
+ "monitor_disable_auth": args.monitor_disable_auth,
+ "monitor_keep_going": args.monitor_keep_going,
+ "monitor_host": args.monitor_host,
+ "use_monitor": args.use_monitor,
+ "monitor_prefix": args.monitor_prefix,
+ })
+
+ # If we are using the monitor, we send configs. and create build
+ # The full_hash is the main package id, the build_hash for others
+ if args.use_monitor and specs:
+ monitor.new_configuration(specs)
install_specs(args, kwargs, zip(abstract_specs, specs))
diff --git a/lib/spack/spack/cmd/license.py b/lib/spack/spack/cmd/license.py
index 84a4a02282..8af0f4fa26 100644
--- a/lib/spack/spack/cmd/license.py
+++ b/lib/spack/spack/cmd/license.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,6 +9,7 @@ import os
import re
from collections import defaultdict
+import llnl.util.filesystem as fs
import llnl.util.tty as tty
import spack.paths
@@ -36,12 +37,14 @@ licensed_files = [
# all of spack core
r'^lib/spack/spack/.*\.py$',
r'^lib/spack/spack/.*\.sh$',
+ r'^lib/spack/spack/.*\.lp$',
r'^lib/spack/llnl/.*\.py$',
r'^lib/spack/env/cc$',
# rst files in documentation
r'^lib/spack/docs/(?!command_index|spack|llnl).*\.rst$',
r'^lib/spack/docs/.*\.py$',
+ r'^lib/spack/docs/spack.yaml$',
# 2 files in external
r'^lib/spack/external/__init__.py$',
@@ -51,7 +54,13 @@ licensed_files = [
r'^share/spack/.*\.sh$',
r'^share/spack/.*\.bash$',
r'^share/spack/.*\.csh$',
+ r'^share/spack/.*\.fish$',
r'^share/spack/qa/run-[^/]*$',
+ r'^share/spack/bash/spack-completion.in$',
+ r'^share/spack/templates/misc/coconcretization.pyt$',
+
+ # action workflows
+ r'^.github/actions/.*\.py$',
# all packages
r'^var/spack/repos/.*/package.py$'
@@ -77,15 +86,15 @@ def _all_spack_files(root=spack.paths.prefix):
visited.add(path)
-def _licensed_files(root=spack.paths.prefix):
- for relpath in _all_spack_files(root):
+def _licensed_files(args):
+ for relpath in _all_spack_files(args.root):
if any(regex.match(relpath) for regex in licensed_files):
yield relpath
def list_files(args):
"""list files in spack that should have license headers"""
- for relpath in sorted(_licensed_files()):
+ for relpath in sorted(_licensed_files(args)):
print(os.path.join(spack.paths.spack_root, relpath))
@@ -93,6 +102,8 @@ def list_files(args):
# bool(value) evaluates to True
OLD_LICENSE, SPDX_MISMATCH, GENERAL_MISMATCH = range(1, 4)
+strict_date = r'Copyright 2013-2021'
+
class LicenseError(object):
def __init__(self):
@@ -118,17 +129,15 @@ class LicenseError(object):
def _check_license(lines, path):
license_lines = [
- r'Copyright 2013-(?:201[789]|202\d) Lawrence Livermore National Security, LLC and other', # noqa: E501
+ r'Copyright 2013-(?:202[01]) Lawrence Livermore National Security, LLC and other', # noqa: E501
r'Spack Project Developers\. See the top-level COPYRIGHT file for details.', # noqa: E501
r'SPDX-License-Identifier: \(Apache-2\.0 OR MIT\)'
]
- strict_date = r'Copyright 2013-2020'
-
found = []
for line in lines:
- line = re.sub(r'^[\s#\.]*', '', line)
+ line = re.sub(r'^[\s#\%\.]*', '', line)
line = line.rstrip()
for i, license_line in enumerate(license_lines):
if re.match(license_line, line):
@@ -175,7 +184,7 @@ def verify(args):
license_errors = LicenseError()
- for relpath in _licensed_files(args.root):
+ for relpath in _licensed_files(args):
path = os.path.join(args.root, relpath)
with open(path) as f:
lines = [line for line in f][:license_lines]
@@ -190,15 +199,28 @@ def verify(args):
tty.msg('No license issues found.')
-def setup_parser(subparser):
- sp = subparser.add_subparsers(metavar='SUBCOMMAND', dest='license_command')
- sp.add_parser('list-files', help=list_files.__doc__)
+def update_copyright_year(args):
+ """update copyright for the current year in all licensed files"""
- verify_parser = sp.add_parser('verify', help=verify.__doc__)
- verify_parser.add_argument(
+ llns_and_other = ' Lawrence Livermore National Security, LLC and other'
+ for filename in _licensed_files(args):
+ fs.filter_file(
+ r'Copyright \d{4}-\d{4}' + llns_and_other,
+ strict_date + llns_and_other,
+ os.path.join(args.root, filename)
+ )
+
+
+def setup_parser(subparser):
+ subparser.add_argument(
'--root', action='store', default=spack.paths.prefix,
help='scan a different prefix for license issues')
+ sp = subparser.add_subparsers(metavar='SUBCOMMAND', dest='license_command')
+ sp.add_parser('list-files', help=list_files.__doc__)
+ sp.add_parser('verify', help=verify.__doc__)
+ sp.add_parser('update-copyright-year', help=update_copyright_year.__doc__)
+
def license(parser, args):
if not git:
@@ -209,5 +231,6 @@ def license(parser, args):
commands = {
'list-files': list_files,
'verify': verify,
+ 'update-copyright-year': update_copyright_year,
}
return commands[args.license_command](args)
diff --git a/lib/spack/spack/cmd/list.py b/lib/spack/spack/cmd/list.py
index a7d4cb0ac3..c00e7a903d 100644
--- a/lib/spack/spack/cmd/list.py
+++ b/lib/spack/spack/cmd/list.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/load.py b/lib/spack/spack/cmd/load.py
index a8f59fef2f..df0d56c444 100644
--- a/lib/spack/spack/cmd/load.py
+++ b/lib/spack/spack/cmd/load.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -63,7 +63,7 @@ def load(parser, args):
specs_str = ' '.join(args.specs) or "SPECS"
spack.cmd.common.shell_init_instructions(
"spack load",
- " eval `spack load {sh_arg}` %s" % specs_str,
+ " eval `spack load {sh_arg} %s`" % specs_str,
)
return 1
diff --git a/lib/spack/spack/cmd/location.py b/lib/spack/spack/cmd/location.py
index 650e8a477a..9c63881be3 100644
--- a/lib/spack/spack/cmd/location.py
+++ b/lib/spack/spack/cmd/location.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -56,7 +56,7 @@ def setup_parser(subparser):
help="build directory for a spec "
"(requires it to be staged first)")
directories.add_argument(
- '-e', '--env', action='store',
+ '-e', '--env', action='store', dest='location_env',
help="location of an environment managed by spack")
arguments.add_common_arguments(subparser, ['spec'])
@@ -71,10 +71,10 @@ def location(parser, args):
print(spack.paths.prefix)
return
- if args.env:
- path = spack.environment.root(args.env)
+ if args.location_env:
+ path = spack.environment.root(args.location_env)
if not os.path.isdir(path):
- tty.die("no such environment: '%s'" % args.env)
+ tty.die("no such environment: '%s'" % args.location_env)
print(path)
return
@@ -119,8 +119,8 @@ def location(parser, args):
if args.build_dir:
# Out of source builds have build_directory defined
if hasattr(pkg, 'build_directory'):
- # build_directory can be either absolute or relative to the
- # stage path in either case os.path.join makes it absolute
+ # build_directory can be either absolute or relative to the stage path
+ # in either case os.path.join makes it absolute
print(os.path.normpath(os.path.join(
pkg.stage.path,
pkg.build_directory
diff --git a/lib/spack/spack/cmd/log_parse.py b/lib/spack/spack/cmd/log_parse.py
index faa44a4ef0..4f7fd119c0 100644
--- a/lib/spack/spack/cmd/log_parse.py
+++ b/lib/spack/spack/cmd/log_parse.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/maintainers.py b/lib/spack/spack/cmd/maintainers.py
index a1cf477146..9813103704 100644
--- a/lib/spack/spack/cmd/maintainers.py
+++ b/lib/spack/spack/cmd/maintainers.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/mark.py b/lib/spack/spack/cmd/mark.py
index 85a22b9741..96c041ba72 100644
--- a/lib/spack/spack/cmd/mark.py
+++ b/lib/spack/spack/cmd/mark.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/mirror.py b/lib/spack/spack/cmd/mirror.py
index 2d338204d3..45aba2441a 100644
--- a/lib/spack/spack/cmd/mirror.py
+++ b/lib/spack/spack/cmd/mirror.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,7 +28,7 @@ level = "long"
def setup_parser(subparser):
- arguments.add_common_arguments(subparser, ['no_checksum'])
+ arguments.add_common_arguments(subparser, ['no_checksum', 'deprecated'])
sp = subparser.add_subparsers(
metavar='SUBCOMMAND', dest='mirror_command')
@@ -67,6 +67,19 @@ def setup_parser(subparser):
" retrieve all versions of each package")
arguments.add_common_arguments(create_parser, ['specs'])
+ # Destroy
+ destroy_parser = sp.add_parser('destroy', help=mirror_destroy.__doc__)
+
+ destroy_target = destroy_parser.add_mutually_exclusive_group(required=True)
+ destroy_target.add_argument('-m', '--mirror-name',
+ metavar='mirror_name',
+ type=str,
+ help="find mirror to destroy by name")
+ destroy_target.add_argument('--mirror-url',
+ metavar='mirror_url',
+ type=str,
+ help="find mirror to destroy by url")
+
# used to construct scope arguments below
scopes = spack.config.scopes()
scopes_metavar = spack.config.scopes_metavar
@@ -360,8 +373,22 @@ def mirror_create(args):
sys.exit(1)
+def mirror_destroy(args):
+ """Given a url, recursively delete everything under it."""
+ mirror_url = None
+
+ if args.mirror_name:
+ result = spack.mirror.MirrorCollection().lookup(args.mirror_name)
+ mirror_url = result.push_url
+ elif args.mirror_url:
+ mirror_url = args.mirror_url
+
+ web_util.remove_url(mirror_url, recursive=True)
+
+
def mirror(parser, args):
action = {'create': mirror_create,
+ 'destroy': mirror_destroy,
'add': mirror_add,
'remove': mirror_remove,
'rm': mirror_remove,
@@ -371,4 +398,7 @@ def mirror(parser, args):
if args.no_checksum:
spack.config.set('config:checksum', False, scope='command_line')
+ if args.deprecated:
+ spack.config.set('config:deprecated', True, scope='command_line')
+
action[args.mirror_command](args)
diff --git a/lib/spack/spack/cmd/module.py b/lib/spack/spack/cmd/module.py
index f86f3e5f25..e0fd0ab44f 100644
--- a/lib/spack/spack/cmd/module.py
+++ b/lib/spack/spack/cmd/module.py
@@ -1,21 +1,22 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import argparse
+from typing import Dict, Callable # novm
import llnl.util.tty as tty
import spack.cmd.modules.lmod
import spack.cmd.modules.tcl
-description = "manipulate module files"
+description = "generate/manage module files"
section = "user environment"
level = "short"
-_subcommands = {}
+_subcommands = {} # type: Dict[str, Callable]
_deprecated_commands = ('refresh', 'find', 'rm', 'loads')
diff --git a/lib/spack/spack/cmd/modules/__init__.py b/lib/spack/spack/cmd/modules/__init__.py
index 7f3dd29ef1..7fbce3bb9d 100644
--- a/lib/spack/spack/cmd/modules/__init__.py
+++ b/lib/spack/spack/cmd/modules/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/modules/lmod.py b/lib/spack/spack/cmd/modules/lmod.py
index d3610bf333..61f2fc28d8 100644
--- a/lib/spack/spack/cmd/modules/lmod.py
+++ b/lib/spack/spack/cmd/modules/lmod.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/modules/tcl.py b/lib/spack/spack/cmd/modules/tcl.py
index cdde21e821..a9486b9de4 100644
--- a/lib/spack/spack/cmd/modules/tcl.py
+++ b/lib/spack/spack/cmd/modules/tcl.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/patch.py b/lib/spack/spack/cmd/patch.py
index 8f91edb8f1..14739b8d7d 100644
--- a/lib/spack/spack/cmd/patch.py
+++ b/lib/spack/spack/cmd/patch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,8 @@ level = "long"
def setup_parser(subparser):
- arguments.add_common_arguments(subparser, ['no_checksum', 'specs'])
+ arguments.add_common_arguments(
+ subparser, ['no_checksum', 'deprecated', 'specs'])
def patch(parser, args):
@@ -26,6 +27,9 @@ def patch(parser, args):
if args.no_checksum:
spack.config.set('config:checksum', False, scope='command_line')
+ if args.deprecated:
+ spack.config.set('config:deprecated', True, scope='command_line')
+
specs = spack.cmd.parse_specs(args.specs, concretize=True)
for spec in specs:
package = spack.repo.get(spec)
diff --git a/lib/spack/spack/cmd/pkg.py b/lib/spack/spack/cmd/pkg.py
index b988d6a848..f7e3523ff4 100644
--- a/lib/spack/spack/cmd/pkg.py
+++ b/lib/spack/spack/cmd/pkg.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/providers.py b/lib/spack/spack/cmd/providers.py
index 8ca34542eb..5effdacf8c 100644
--- a/lib/spack/spack/cmd/providers.py
+++ b/lib/spack/spack/cmd/providers.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/pydoc.py b/lib/spack/spack/cmd/pydoc.py
index 1f81718e38..6e834932d0 100644
--- a/lib/spack/spack/cmd/pydoc.py
+++ b/lib/spack/spack/cmd/pydoc.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/python.py b/lib/spack/spack/cmd/python.py
index 019e0cf27e..5cee319ff5 100644
--- a/lib/spack/spack/cmd/python.py
+++ b/lib/spack/spack/cmd/python.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,9 +28,15 @@ def setup_parser(subparser):
subparser.add_argument(
'-c', dest='python_command', help='command to execute')
subparser.add_argument(
+ '-i', dest='python_interpreter', help='python interpreter',
+ choices=['python', 'ipython'], default='python')
+ subparser.add_argument(
'-m', dest='module', action='store',
help='run library module as a script')
subparser.add_argument(
+ '--path', action='store_true', dest='show_path',
+ help='show path to python interpreter that spack uses')
+ subparser.add_argument(
'python_args', nargs=argparse.REMAINDER,
help="file to run plus arguments")
@@ -40,6 +46,10 @@ def python(parser, args, unknown_args):
print('Python', platform.python_version())
return
+ if args.show_path:
+ print(sys.executable)
+ return
+
if args.module:
sys.argv = ['spack-python'] + unknown_args + args.python_args
runpy.run_module(args.module, run_name="__main__", alter_sys=True)
@@ -48,24 +58,63 @@ def python(parser, args, unknown_args):
if unknown_args:
tty.die("Unknown arguments:", " ".join(unknown_args))
+ # Unexpected behavior from supplying both
+ if args.python_command and args.python_args:
+ tty.die("You can only specify a command OR script, but not both.")
+
+ # Run user choice of interpreter
+ if args.python_interpreter == "ipython":
+ return spack.cmd.python.ipython_interpreter(args)
+ return spack.cmd.python.python_interpreter(args)
+
+
+def ipython_interpreter(args):
+ """An ipython interpreter is intended to be interactive, so it doesn't
+ support running a script or arguments
+ """
+ try:
+ import IPython
+ except ImportError:
+ tty.die("ipython is not installed, install and try again.")
+
+ if "PYTHONSTARTUP" in os.environ:
+ startup_file = os.environ["PYTHONSTARTUP"]
+ if os.path.isfile(startup_file):
+ with open(startup_file) as startup:
+ exec(startup.read())
+
+ # IPython can also support running a script OR command, not both
+ if args.python_args:
+ IPython.start_ipython(argv=args.python_args)
+ elif args.python_command:
+ IPython.start_ipython(argv=['-c', args.python_command])
+ else:
+ header = ("Spack version %s\nPython %s, %s %s"
+ % (spack.spack_version, platform.python_version(),
+ platform.system(), platform.machine()))
+
+ __name__ = "__main__" # noqa
+ IPython.embed(module="__main__", header=header)
+
+
+def python_interpreter(args):
+ """A python interpreter is the default interpreter
+ """
# Fake a main python shell by setting __name__ to __main__.
console = code.InteractiveConsole({'__name__': '__main__',
'spack': spack})
-
if "PYTHONSTARTUP" in os.environ:
startup_file = os.environ["PYTHONSTARTUP"]
if os.path.isfile(startup_file):
with open(startup_file) as startup:
console.runsource(startup.read(), startup_file, 'exec')
- python_args = args.python_args
- python_command = args.python_command
- if python_command:
- console.runsource(python_command)
- elif python_args:
- sys.argv = python_args
- with open(python_args[0]) as file:
- console.runsource(file.read(), python_args[0], 'exec')
+ if args.python_command:
+ console.runsource(args.python_command)
+ elif args.python_args:
+ sys.argv = args.python_args
+ with open(args.python_args[0]) as file:
+ console.runsource(file.read(), args.python_args[0], 'exec')
else:
# Provides readline support, allowing user to use arrow keys
console.push('import readline')
diff --git a/lib/spack/spack/cmd/reindex.py b/lib/spack/spack/cmd/reindex.py
index b9f3a2ac3b..1ff5488f5b 100644
--- a/lib/spack/spack/cmd/reindex.py
+++ b/lib/spack/spack/cmd/reindex.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/remove.py b/lib/spack/spack/cmd/remove.py
index ef01052c29..376d73b687 100644
--- a/lib/spack/spack/cmd/remove.py
+++ b/lib/spack/spack/cmd/remove.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/repo.py b/lib/spack/spack/cmd/repo.py
index f271790994..3930a03d0f 100644
--- a/lib/spack/spack/cmd/repo.py
+++ b/lib/spack/spack/cmd/repo.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/resource.py b/lib/spack/spack/cmd/resource.py
index 0d26c39ab8..ed9e7982fa 100644
--- a/lib/spack/spack/cmd/resource.py
+++ b/lib/spack/spack/cmd/resource.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/restage.py b/lib/spack/spack/cmd/restage.py
index 0f55884bfe..b0582498d6 100644
--- a/lib/spack/spack/cmd/restage.py
+++ b/lib/spack/spack/cmd/restage.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/setup.py b/lib/spack/spack/cmd/setup.py
deleted file mode 100644
index 45919893cc..0000000000
--- a/lib/spack/spack/cmd/setup.py
+++ /dev/null
@@ -1,163 +0,0 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
-# Spack Project Developers. See the top-level COPYRIGHT file for details.
-#
-# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-import argparse
-import copy
-import os
-import sys
-
-import llnl.util.tty as tty
-from llnl.util.filesystem import set_executable
-
-import spack.repo
-import spack.store
-import spack.build_systems.cmake
-import spack.cmd
-import spack.cmd.install as install
-import spack.cmd.common.arguments as arguments
-from spack.util.executable import which
-
-from spack.stage import DIYStage
-
-description = "create a configuration script and module, but don't build"
-section = "build"
-level = "long"
-
-
-def setup_parser(subparser):
- subparser.add_argument(
- '-i', '--ignore-dependencies', action='store_true', dest='ignore_deps',
- help="do not try to install dependencies of requested packages")
- arguments.add_common_arguments(subparser, ['no_checksum', 'spec'])
- subparser.add_argument(
- '-v', '--verbose', action='store_true', dest='verbose',
- help="display verbose build output while installing")
-
- cd_group = subparser.add_mutually_exclusive_group()
- arguments.add_common_arguments(cd_group, ['clean', 'dirty'])
- subparser.epilog = 'DEPRECATED: use `spack dev-build` instead'
-
-
-def write_spconfig(package, dirty):
- # Set-up the environment
- spack.build_environment.setup_package(package, dirty)
-
- cmd = [str(which('cmake'))] + package.std_cmake_args + package.cmake_args()
-
- env = dict()
-
- paths = os.environ['PATH'].split(':')
- paths = [item for item in paths if 'spack/env' not in item]
- env['PATH'] = ':'.join(paths)
- env['CMAKE_PREFIX_PATH'] = os.environ['CMAKE_PREFIX_PATH']
- env['SPACK_INCLUDE_DIRS'] = os.environ['SPACK_INCLUDE_DIRS']
- env['CC'] = os.environ['SPACK_CC']
- env['CXX'] = os.environ['SPACK_CXX']
- env['FC'] = os.environ['SPACK_FC']
-
- setup_fname = 'spconfig.py'
- with open(setup_fname, 'w') as fout:
- fout.write(
- r"""#!%s
-#
-
-import sys
-import os
-import subprocess
-
-def cmdlist(str):
- return list(x.strip().replace("'",'') for x in str.split('\n') if x)
-env = dict(os.environ)
-""" % sys.executable)
-
- env_vars = sorted(list(env.keys()))
- for name in env_vars:
- val = env[name]
- if name.find('PATH') < 0:
- fout.write('env[%s] = %s\n' % (repr(name), repr(val)))
- else:
- if name == 'SPACK_INCLUDE_DIRS':
- sep = ';'
- else:
- sep = ':'
-
- fout.write(
- 'env[%s] = "%s".join(cmdlist("""\n' % (repr(name), sep))
- for part in val.split(sep):
- fout.write(' %s\n' % part)
- fout.write('"""))\n')
-
- fout.write('\ncmd = cmdlist("""\n')
- fout.write('%s\n' % cmd[0])
- for arg in cmd[1:]:
- fout.write(' %s\n' % arg)
- fout.write('""") + sys.argv[1:]\n')
- fout.write('\nproc = subprocess.Popen(cmd, env=env)\nproc.wait()\n')
- set_executable(setup_fname)
-
-
-def setup(self, args):
- tty.warn('DEPRECATED: use `spack dev-build` instead')
-
- if not args.spec:
- tty.die("spack setup requires a package spec argument.")
-
- specs = spack.cmd.parse_specs(args.spec)
- if len(specs) > 1:
- tty.die("spack setup only takes one spec.")
-
- # Take a write lock before checking for existence.
- with spack.store.db.write_transaction():
- spec = specs[0]
- if not spack.repo.path.exists(spec.name):
- tty.die("No package for '{0}' was found.".format(spec.name),
- " Use `spack create` to create a new package")
- if not spec.versions.concrete:
- tty.die(
- "spack setup spec must have a single, concrete version. "
- "Did you forget a package version number?")
-
- spec.concretize()
- package = spack.repo.get(spec)
- if not isinstance(package, spack.build_systems.cmake.CMakePackage):
- tty.die(
- 'Support for {0} derived packages not yet implemented'.format(
- package.build_system_class))
-
- # It's OK if the package is already installed.
-
- # Forces the build to run out of the current directory.
- package.stage = DIYStage(os.getcwd())
-
- # disable checksumming if requested
- if args.no_checksum:
- spack.config.set('config:checksum', False, scope='command_line')
-
- # Install dependencies if requested to do so
- if not args.ignore_deps:
- parser = argparse.ArgumentParser()
- install.setup_parser(parser)
- inst_args = copy.deepcopy(args)
- inst_args = parser.parse_args(
- ['--only=dependencies'] + args.spec,
- namespace=inst_args
- )
- install.install(parser, inst_args)
-
- # Generate spconfig.py
- tty.msg(
- 'Generating spconfig.py [{0}]'.format(package.spec.cshort_spec)
- )
- dirty = args.dirty
- write_spconfig(package, dirty)
-
- # Install this package to register it in the DB and permit
- # module file regeneration
- inst_args = copy.deepcopy(args)
- inst_args = parser.parse_args(
- ['--only=package', '--fake'] + args.spec,
- namespace=inst_args
- )
- install.install(parser, inst_args)
diff --git a/lib/spack/spack/cmd/solve.py b/lib/spack/spack/cmd/solve.py
index ff6ab4e676..e81161de90 100644
--- a/lib/spack/spack/cmd/solve.py
+++ b/lib/spack/spack/cmd/solve.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,7 @@ import re
import sys
import llnl.util.tty as tty
+import llnl.util.tty.color as color
import spack
import spack.cmd
@@ -23,15 +24,20 @@ section = 'developer'
level = 'long'
#: output options
-show_options = ('asp', 'output', 'solutions')
+show_options = ('asp', 'opt', 'output', 'solutions')
def setup_parser(subparser):
# Solver arguments
subparser.add_argument(
- '--show', action='store', default=('solutions'),
- help="outputs: a list with any of: "
- "%s (default), all" % ', '.join(show_options))
+ '--show', action='store', default='opt,solutions',
+ help="select outputs: comma-separated list of: \n"
+ " asp asp program text\n"
+ " opt optimization criteria for best model\n"
+ " output raw clingo output\n"
+ " solutions models found by asp program\n"
+ " all all of the above"
+ )
subparser.add_argument(
'--models', action='store', type=int, default=0,
help="number of solutions to search (default 0 for all)")
@@ -41,10 +47,10 @@ def setup_parser(subparser):
subparser, ['long', 'very_long', 'install_status'])
subparser.add_argument(
'-y', '--yaml', action='store_const', dest='format', default=None,
- const='yaml', help='print concrete spec as YAML')
+ const='yaml', help='print concrete spec as yaml')
subparser.add_argument(
'-j', '--json', action='store_const', dest='format', default=None,
- const='json', help='print concrete spec as YAML')
+ const='json', help='print concrete spec as json')
subparser.add_argument(
'-c', '--cover', action='store',
default='nodes', choices=['nodes', 'edges', 'paths'],
@@ -113,9 +119,18 @@ def solve(parser, args):
best = min(result.answers)
opt, _, answer = best
- if not args.format:
- tty.msg("Best of %d answers." % result.nmodels)
- tty.msg("Optimization: %s" % opt)
+ if ("opt" in dump) and (not args.format):
+ tty.msg("Best of %d considered solutions." % result.nmodels)
+ tty.msg("Optimization Criteria:")
+
+ maxlen = max(len(s) for s in result.criteria)
+ color.cprint(
+ "@*{ Priority Criterion %sValue}" % ((maxlen - 10) * " ")
+ )
+ for i, (name, val) in enumerate(zip(result.criteria, opt)):
+ fmt = " @K{%%-8d} %%-%ds%%5d" % maxlen
+ color.cprint(fmt % (i + 1, name, val))
+ print()
# iterate over roots from command line
for input_spec in specs:
diff --git a/lib/spack/spack/cmd/spec.py b/lib/spack/spack/cmd/spec.py
index cbfd58ec1a..3a66a05f0b 100644
--- a/lib/spack/spack/cmd/spec.py
+++ b/lib/spack/spack/cmd/spec.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -43,6 +43,10 @@ for further documentation regarding the spec syntax, see:
'-N', '--namespaces', action='store_true', default=False,
help='show fully qualified package names')
subparser.add_argument(
+ '--hash-type', default="build_hash",
+ choices=['build_hash', 'full_hash', 'dag_hash'],
+ help='generate spec with a particular hash type.')
+ subparser.add_argument(
'-t', '--types', action='store_true', default=False,
help='show dependency types')
arguments.add_common_arguments(subparser, ['specs'])
@@ -83,11 +87,14 @@ def spec(parser, args):
if spec.name in spack.repo.path or spec.virtual:
spec.concretize()
+ # The user can specify the hash type to use
+ hash_type = getattr(ht, args.hash_type)
+
if args.format == 'yaml':
# use write because to_yaml already has a newline.
- sys.stdout.write(spec.to_yaml(hash=ht.build_hash))
+ sys.stdout.write(spec.to_yaml(hash=hash_type))
else:
- print(spec.to_json(hash=ht.build_hash))
+ print(spec.to_json(hash=hash_type))
continue
with tree_context():
diff --git a/lib/spack/spack/cmd/stage.py b/lib/spack/spack/cmd/stage.py
index 1acefb723c..639f32f28a 100644
--- a/lib/spack/spack/cmd/stage.py
+++ b/lib/spack/spack/cmd/stage.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,8 @@ level = "long"
def setup_parser(subparser):
- arguments.add_common_arguments(subparser, ['no_checksum', 'specs'])
+ arguments.add_common_arguments(
+ subparser, ['no_checksum', 'deprecated', 'specs'])
subparser.add_argument(
'-p', '--path', dest='path',
help="path to stage package, does not add to spack tree")
@@ -37,8 +38,17 @@ def stage(parser, args):
if args.no_checksum:
spack.config.set('config:checksum', False, scope='command_line')
- specs = spack.cmd.parse_specs(args.specs, concretize=True)
+ if args.deprecated:
+ spack.config.set('config:deprecated', True, scope='command_line')
+
+ specs = spack.cmd.parse_specs(args.specs, concretize=False)
+
+ # prevent multiple specs from extracting in the same folder
+ if len(specs) > 1 and args.path:
+ tty.die("`--path` requires a single spec, but multiple were provided")
+
for spec in specs:
+ spec = spack.cmd.matching_spec_from_env(spec)
package = spack.repo.get(spec)
if args.path:
package.path = args.path
diff --git a/lib/spack/spack/cmd/style.py b/lib/spack/spack/cmd/style.py
new file mode 100644
index 0000000000..899ba5b6d7
--- /dev/null
+++ b/lib/spack/spack/cmd/style.py
@@ -0,0 +1,317 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from __future__ import print_function
+
+import re
+import os
+import sys
+import argparse
+
+from llnl.util.filesystem import working_dir
+import llnl.util.tty as tty
+
+import spack.paths
+from spack.util.executable import which
+
+if sys.version_info < (3, 0):
+ from itertools import izip_longest # novm
+
+ zip_longest = izip_longest
+else:
+ from itertools import zip_longest # novm
+
+
+description = "runs source code style checks on spack"
+section = "developer"
+level = "long"
+
+
+def grouper(iterable, n, fillvalue=None):
+ "Collect data into fixed-length chunks or blocks"
+ # grouper('ABCDEFG', 3, 'x') --> ABC DEF Gxx"
+ args = [iter(iterable)] * n
+ return zip_longest(*args, fillvalue=fillvalue)
+
+
+#: List of directories to exclude from checks.
+exclude_directories = [spack.paths.external_path]
+
+#: max line length we're enforcing (note: this duplicates what's in .flake8)
+max_line_length = 79
+
+
+def is_package(f):
+ """Whether flake8 should consider a file as a core file or a package.
+
+ We run flake8 with different exceptions for the core and for
+ packages, since we allow `from spack import *` and poking globals
+ into packages.
+ """
+ return f.startswith("var/spack/repos/") or "docs/tutorial/examples" in f
+
+
+def changed_files(base=None, untracked=True, all_files=False):
+ """Get list of changed files in the Spack repository."""
+
+ git = which("git", required=True)
+
+ if base is None:
+ base = os.environ.get("TRAVIS_BRANCH", "develop")
+
+ range = "{0}...".format(base)
+
+ git_args = [
+ # Add changed files committed since branching off of develop
+ ["diff", "--name-only", "--diff-filter=ACMR", range],
+ # Add changed files that have been staged but not yet committed
+ ["diff", "--name-only", "--diff-filter=ACMR", "--cached"],
+ # Add changed files that are unstaged
+ ["diff", "--name-only", "--diff-filter=ACMR"],
+ ]
+
+ # Add new files that are untracked
+ if untracked:
+ git_args.append(["ls-files", "--exclude-standard", "--other"])
+
+ # add everything if the user asked for it
+ if all_files:
+ git_args.append(["ls-files", "--exclude-standard"])
+
+ excludes = [os.path.realpath(f) for f in exclude_directories]
+ changed = set()
+
+ for arg_list in git_args:
+ files = git(*arg_list, output=str).split("\n")
+
+ for f in files:
+ # Ignore non-Python files
+ if not (f.endswith(".py") or f == "bin/spack"):
+ continue
+
+ # Ignore files in the exclude locations
+ if any(os.path.realpath(f).startswith(e) for e in excludes):
+ continue
+
+ changed.add(f)
+
+ return sorted(changed)
+
+
+def setup_parser(subparser):
+ subparser.add_argument(
+ "-b",
+ "--base",
+ action="store",
+ default=None,
+ help="select base branch for collecting list of modified files",
+ )
+ subparser.add_argument(
+ "-a",
+ "--all",
+ action="store_true",
+ help="check all files, not just changed files",
+ )
+ subparser.add_argument(
+ "-o",
+ "--output",
+ action="store_true",
+ help="send filtered files to stdout as well as temp files",
+ )
+ subparser.add_argument(
+ "-r",
+ "--root-relative",
+ action="store_true",
+ default=False,
+ help="print root-relative paths (default: cwd-relative)",
+ )
+ subparser.add_argument(
+ "-U",
+ "--no-untracked",
+ dest="untracked",
+ action="store_false",
+ default=True,
+ help="exclude untracked files from checks",
+ )
+ subparser.add_argument(
+ "--no-flake8",
+ dest="flake8",
+ action="store_false",
+ help="Do not run flake8, default is run flake8",
+ )
+ subparser.add_argument(
+ "--no-mypy",
+ dest="mypy",
+ action="store_false",
+ help="Do not run mypy, default is run mypy if available",
+ )
+ subparser.add_argument(
+ "--black",
+ dest="black",
+ action="store_true",
+ help="Run black checks, default is skip",
+ )
+ subparser.add_argument(
+ "files", nargs=argparse.REMAINDER, help="specific files to check"
+ )
+
+
+def rewrite_and_print_output(
+ output, args, re_obj=re.compile(r"^(.+):([0-9]+):"), replacement=r"{0}:{1}:"
+):
+ """rewrite ouput with <file>:<line>: format to respect path args"""
+ if args.root_relative or re_obj is None:
+ # print results relative to repo root.
+ print(output)
+ else:
+ # print results relative to current working directory
+ def cwd_relative(path):
+ return replacement.format(
+ os.path.relpath(
+ os.path.join(spack.paths.prefix, path.group(1)), os.getcwd()
+ ),
+ *list(path.groups()[1:])
+ )
+
+ for line in output.split("\n"):
+ if not line:
+ continue
+ print(re_obj.sub(cwd_relative, line))
+
+
+def print_style_header(file_list, args):
+ tty.msg("style: running code checks on spack.")
+ tools = []
+ if args.flake8:
+ tools.append("flake8")
+ if args.mypy:
+ tools.append("mypy")
+ if args.black:
+ tools.append("black")
+ tty.msg("style: tools selected: " + ", ".join(tools))
+ tty.msg("Modified files:", *[filename.strip() for filename in file_list])
+ sys.stdout.flush()
+
+
+def print_tool_header(tool):
+ sys.stdout.flush()
+ tty.msg("style: running %s checks on spack." % tool)
+ sys.stdout.flush()
+
+
+def run_flake8(file_list, args):
+ returncode = 0
+ print_tool_header("flake8")
+ flake8_cmd = which("flake8", required=True)
+
+ output = ""
+ # run in chunks of 100 at a time to avoid line length limit
+ # filename parameter in config *does not work* for this reliably
+ for chunk in grouper(file_list, 100):
+ chunk = filter(lambda e: e is not None, chunk)
+
+ output = flake8_cmd(
+ # use .flake8 implicitly to work around bug in flake8 upstream
+ # append-config is ignored if `--config` is explicitly listed
+ # see: https://gitlab.com/pycqa/flake8/-/issues/455
+ # "--config=.flake8",
+ *chunk,
+ fail_on_error=False,
+ output=str
+ )
+ returncode |= flake8_cmd.returncode
+
+ rewrite_and_print_output(output, args)
+
+ if returncode == 0:
+ tty.msg("Flake8 style checks were clean")
+ else:
+ tty.error("Flake8 style checks found errors")
+ return returncode
+
+
+def run_mypy(file_list, args):
+ mypy_cmd = which("mypy")
+ if mypy_cmd is None:
+ tty.error("style: mypy is not available in path, skipping")
+ return 1
+
+ print_tool_header("mypy")
+ mpy_args = ["--package", "spack", "--package", "llnl"]
+ # not yet, need other updates to enable this
+ # if any([is_package(f) for f in file_list]):
+ # mpy_args.extend(["--package", "packages"])
+
+ output = mypy_cmd(*mpy_args, fail_on_error=False, output=str)
+ returncode = mypy_cmd.returncode
+
+ rewrite_and_print_output(output, args)
+
+ if returncode == 0:
+ tty.msg("mypy checks were clean")
+ else:
+ tty.error("mypy checks found errors")
+ return returncode
+
+
+def run_black(file_list, args):
+ black_cmd = which("black")
+ if black_cmd is None:
+ tty.error("style: black is not available in path, skipping")
+ return 1
+
+ print_tool_header("black")
+
+ pat = re.compile("would reformat +(.*)")
+ replacement = "would reformat {0}"
+ returncode = 0
+ output = ""
+ # run in chunks of 100 at a time to avoid line length limit
+ # filename parameter in config *does not work* for this reliably
+ for chunk in grouper(file_list, 100):
+ chunk = filter(lambda e: e is not None, chunk)
+
+ output = black_cmd(
+ "--check", "--diff", *chunk, fail_on_error=False, output=str, error=str
+ )
+ returncode |= black_cmd.returncode
+
+ rewrite_and_print_output(output, args, pat, replacement)
+
+ if returncode == 0:
+ tty.msg("black style checks were clean")
+ else:
+ tty.error("black checks found errors")
+ return returncode
+
+
+def style(parser, args):
+ file_list = args.files
+ if file_list:
+
+ def prefix_relative(path):
+ return os.path.relpath(
+ os.path.abspath(os.path.realpath(path)), spack.paths.prefix
+ )
+
+ file_list = [prefix_relative(p) for p in file_list]
+
+ returncode = 0
+ with working_dir(spack.paths.prefix):
+ if not file_list:
+ file_list = changed_files(args.base, args.untracked, args.all)
+ print_style_header(file_list, args)
+ if args.flake8:
+ returncode = run_flake8(file_list, args)
+ if args.mypy:
+ returncode |= run_mypy(file_list, args)
+ if args.black:
+ returncode |= run_black(file_list, args)
+
+ if returncode != 0:
+ print("spack style found errors.")
+ sys.exit(1)
+ else:
+ print("spack style checks were clean.")
diff --git a/lib/spack/spack/cmd/test.py b/lib/spack/spack/cmd/test.py
index d164e26334..343c019bce 100644
--- a/lib/spack/spack/cmd/test.py
+++ b/lib/spack/spack/cmd/test.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,22 @@ from __future__ import print_function
import os
import argparse
import textwrap
+import inspect
import fnmatch
import re
import shutil
+import sys
import llnl.util.tty as tty
+import llnl.util.tty.colify as colify
import spack.install_test
import spack.environment as ev
import spack.cmd
import spack.cmd.common.arguments as arguments
-import spack.report
import spack.package
+import spack.repo
+import spack.report
description = "run spack's tests for an install"
section = "admin"
@@ -78,8 +82,11 @@ def setup_parser(subparser):
arguments.add_common_arguments(run_parser, ['installed_specs'])
# List
- sp.add_parser('list', description=test_list.__doc__,
- help=first_line(test_list.__doc__))
+ list_parser = sp.add_parser('list', description=test_list.__doc__,
+ help=first_line(test_list.__doc__))
+ list_parser.add_argument(
+ "-a", "--all", action="store_true", dest="list_all",
+ help="list all packages with tests (not just installed)")
# Find
find_parser = sp.add_parser('find', description=test_find.__doc__,
@@ -188,18 +195,36 @@ environment variables:
def has_test_method(pkg):
- return pkg.test.__func__ != spack.package.PackageBase.test
+ if not inspect.isclass(pkg):
+ tty.die('{0}: is not a class, it is {1}'.format(pkg, type(pkg)))
+
+ pkg_base = spack.package.PackageBase
+ return (
+ (issubclass(pkg, pkg_base) and pkg.test != pkg_base.test) or
+ (isinstance(pkg, pkg_base) and pkg.test.__func__ != pkg_base.test)
+ )
def test_list(args):
- """List all installed packages with available tests."""
+ """List installed packages with available tests."""
+ if args.list_all:
+ all_packages_with_tests = [
+ pkg_class.name
+ for pkg_class in spack.repo.path.all_package_classes()
+ if has_test_method(pkg_class)
+ ]
+ if sys.stdout.isatty():
+ tty.msg("%d packages with tests." % len(all_packages_with_tests))
+ colify.colify(all_packages_with_tests)
+ return
+
# TODO: This can be extended to have all of the output formatting options
# from `spack find`.
env = ev.get_env(args, 'test')
hashes = env.all_hashes() if env else None
specs = spack.store.db.query(hashes=hashes)
- specs = list(filter(lambda s: has_test_method(s.package), specs))
+ specs = list(filter(lambda s: has_test_method(s.package_class), specs))
spack.cmd.display_specs(specs, long=True)
diff --git a/lib/spack/spack/cmd/test_env.py b/lib/spack/spack/cmd/test_env.py
index a0f54d482f..3d3827a7da 100644
--- a/lib/spack/spack/cmd/test_env.py
+++ b/lib/spack/spack/cmd/test_env.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/tutorial.py b/lib/spack/spack/cmd/tutorial.py
index 6c0aa40a4a..a8bc1f1ddd 100644
--- a/lib/spack/spack/cmd/tutorial.py
+++ b/lib/spack/spack/cmd/tutorial.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/undevelop.py b/lib/spack/spack/cmd/undevelop.py
index 6319b88e06..09fe558d56 100644
--- a/lib/spack/spack/cmd/undevelop.py
+++ b/lib/spack/spack/cmd/undevelop.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/uninstall.py b/lib/spack/spack/cmd/uninstall.py
index e541eaf91b..2a9e6b00b7 100644
--- a/lib/spack/spack/cmd/uninstall.py
+++ b/lib/spack/spack/cmd/uninstall.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/unit_test.py b/lib/spack/spack/cmd/unit_test.py
index 509211de04..c290bc8572 100644
--- a/lib/spack/spack/cmd/unit_test.py
+++ b/lib/spack/spack/cmd/unit_test.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -146,7 +146,7 @@ def add_back_pytest_args(args, unknown_args):
def unit_test(parser, args, unknown_args):
if args.pytest_help:
# make the pytest.main help output more accurate
- sys.argv[0] = 'spack test'
+ sys.argv[0] = 'spack unit-test'
return pytest.main(['-h'])
# add back any parsed pytest args we need to pass to pytest
diff --git a/lib/spack/spack/cmd/unload.py b/lib/spack/spack/cmd/unload.py
index 8494453489..c854466e05 100644
--- a/lib/spack/spack/cmd/unload.py
+++ b/lib/spack/spack/cmd/unload.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/url.py b/lib/spack/spack/cmd/url.py
index db8f358887..e5dde5e9c7 100644
--- a/lib/spack/spack/cmd/url.py
+++ b/lib/spack/spack/cmd/url.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/verify.py b/lib/spack/spack/cmd/verify.py
index b20d795ce5..6e7ff0f3bd 100644
--- a/lib/spack/spack/cmd/verify.py
+++ b/lib/spack/spack/cmd/verify.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/cmd/versions.py b/lib/spack/spack/cmd/versions.py
index 366307f0b2..ec808e0e89 100644
--- a/lib/spack/spack/cmd/versions.py
+++ b/lib/spack/spack/cmd/versions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ import llnl.util.tty as tty
import spack.cmd.common.arguments as arguments
import spack.repo
+from spack.version import ver, infinity_versions
description = "list available versions of a package"
section = "packaging"
@@ -19,8 +20,17 @@ level = "long"
def setup_parser(subparser):
- subparser.add_argument('-s', '--safe-only', action='store_true',
- help='only list safe versions of the package')
+ output = subparser.add_mutually_exclusive_group()
+ output.add_argument('-s', '--safe', action='store_true',
+ help='only list safe versions of the package')
+ output.add_argument('--safe-only', action='store_true',
+ help='[deprecated] only list safe versions '
+ 'of the package')
+ output.add_argument('-r', '--remote', action='store_true',
+ help='only list remote versions of the package')
+ output.add_argument('-n', '--new', action='store_true',
+ help='only list remote versions newer than '
+ 'the latest checksummed version')
subparser.add_argument(
'-c', '--concurrency', default=32, type=int,
help='number of concurrent requests'
@@ -31,26 +41,41 @@ def setup_parser(subparser):
def versions(parser, args):
pkg = spack.repo.get(args.package)
- if sys.stdout.isatty():
- tty.msg('Safe versions (already checksummed):')
-
safe_versions = pkg.versions
- if not safe_versions:
+ if args.safe_only:
+ tty.warn('"--safe-only" is deprecated. Use "--safe" instead.')
+ args.safe = args.safe_only
+
+ if not (args.remote or args.new):
if sys.stdout.isatty():
- tty.warn('Found no versions for {0}'.format(pkg.name))
- tty.debug('Manually add versions to the package.')
- else:
- colify(sorted(safe_versions, reverse=True), indent=2)
+ tty.msg('Safe versions (already checksummed):')
- if args.safe_only:
- return
+ if not safe_versions:
+ if sys.stdout.isatty():
+ tty.warn('Found no versions for {0}'.format(pkg.name))
+ tty.debug('Manually add versions to the package.')
+ else:
+ colify(sorted(safe_versions, reverse=True), indent=2)
- if sys.stdout.isatty():
- tty.msg('Remote versions (not yet checksummed):')
+ if args.safe:
+ return
fetched_versions = pkg.fetch_remote_versions(args.concurrency)
- remote_versions = set(fetched_versions).difference(safe_versions)
+
+ if args.new:
+ if sys.stdout.isatty():
+ tty.msg('New remote versions (not yet checksummed):')
+ numeric_safe_versions = list(filter(
+ lambda v: str(v) not in infinity_versions,
+ safe_versions))
+ highest_safe_version = max(numeric_safe_versions)
+ remote_versions = set([ver(v) for v in set(fetched_versions)
+ if v > highest_safe_version])
+ else:
+ if sys.stdout.isatty():
+ tty.msg('Remote versions (not yet checksummed):')
+ remote_versions = set(fetched_versions).difference(safe_versions)
if not remote_versions:
if sys.stdout.isatty():
diff --git a/lib/spack/spack/cmd/view.py b/lib/spack/spack/cmd/view.py
index 151f6c1564..ec8003bbf7 100644
--- a/lib/spack/spack/cmd/view.py
+++ b/lib/spack/spack/cmd/view.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/compiler.py b/lib/spack/spack/compiler.py
index d498803633..f6c7e98ff0 100644
--- a/lib/spack/spack/compiler.py
+++ b/lib/spack/spack/compiler.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,7 @@ import re
import itertools
import shutil
import tempfile
+from typing import Sequence, List # novm
import llnl.util.lang
from llnl.util.filesystem import (
@@ -190,20 +191,20 @@ class Compiler(object):
and how to identify the particular type of compiler."""
# Subclasses use possible names of C compiler
- cc_names = []
+ cc_names = [] # type: List[str]
# Subclasses use possible names of C++ compiler
- cxx_names = []
+ cxx_names = [] # type: List[str]
# Subclasses use possible names of Fortran 77 compiler
- f77_names = []
+ f77_names = [] # type: List[str]
# Subclasses use possible names of Fortran 90 compiler
- fc_names = []
+ fc_names = [] # type: List[str]
# Optional prefix regexes for searching for this type of compiler.
# Prefixes are sometimes used for toolchains
- prefixes = []
+ prefixes = [] # type: List[str]
# Optional suffix regexes for searching for this type of compiler.
# Suffixes are used by some frameworks, e.g. macports uses an '-mp-X.Y'
@@ -214,7 +215,7 @@ class Compiler(object):
version_argument = '-dumpversion'
#: Return values to ignore when invoking the compiler to get its version
- ignore_version_errors = ()
+ ignore_version_errors = () # type: Sequence[int]
#: Regex used to extract version from compiler's output
version_regex = '(.*)'
@@ -266,9 +267,9 @@ class Compiler(object):
return ['-O', '-O0', '-O1', '-O2', '-O3']
# Cray PrgEnv name that can be used to load this compiler
- PrgEnv = None
+ PrgEnv = None # type: str
# Name of module used to switch versions of this compiler
- PrgEnv_compiler = None
+ PrgEnv_compiler = None # type: str
def __init__(self, cspec, operating_system, target,
paths, modules=None, alias=None, environment=None,
diff --git a/lib/spack/spack/compilers/__init__.py b/lib/spack/spack/compilers/__init__.py
index 85e0275a29..817d21add6 100644
--- a/lib/spack/spack/compilers/__init__.py
+++ b/lib/spack/spack/compilers/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ import itertools
import multiprocessing.pool
import os
import six
+from typing import Dict # novm
import llnl.util.lang
import llnl.util.filesystem as fs
@@ -21,6 +22,7 @@ import spack.paths
import spack.error
import spack.spec
import spack.config
+import spack.compiler
import spack.architecture
from spack.util.environment import get_path
@@ -35,7 +37,7 @@ _cache_config_file = []
# TODO: Caches at module level make it difficult to mock configurations in
# TODO: unit tests. It might be worth reworking their implementation.
#: cache of compilers constructed from config data, keyed by config entry id.
-_compiler_cache = {}
+_compiler_cache = {} # type: Dict[str, spack.compiler.Compiler]
_compiler_to_pkg = {
'clang': 'llvm+clang',
diff --git a/lib/spack/spack/compilers/aocc.py b/lib/spack/spack/compilers/aocc.py
index 5c9e885490..dcb6589861 100644
--- a/lib/spack/spack/compilers/aocc.py
+++ b/lib/spack/spack/compilers/aocc.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,6 +9,7 @@ import sys
import llnl.util.lang
from spack.compiler import Compiler
+from spack.version import ver
class Aocc(Compiler):
@@ -24,6 +25,9 @@ class Aocc(Compiler):
# Subclasses use possible names of Fortran 90 compiler
fc_names = ['flang']
+ PrgEnv = 'PrgEnv-aocc'
+ PrgEnv_compiler = 'aocc'
+
version_argument = '--version'
@property
@@ -114,3 +118,26 @@ class Aocc(Compiler):
@classmethod
def f77_version(cls, f77):
return cls.fc_version(f77)
+
+ @property
+ def stdcxx_libs(self):
+ return ('-lstdc++', )
+
+ @property
+ def cflags(self):
+ return self._handle_default_flag_addtions()
+
+ @property
+ def cxxflags(self):
+ return self._handle_default_flag_addtions()
+
+ @property
+ def fflags(self):
+ return self._handle_default_flag_addtions()
+
+ def _handle_default_flag_addtions(self):
+ # This is a known issue for AOCC 3.0 see:
+ # https://developer.amd.com/wp-content/resources/AOCC-3.0-Install-Guide.pdf
+ if self.real_version == ver('3.0.0'):
+ return ("-Wno-unused-command-line-argument "
+ "-mllvm -eliminate-similar-expr=false")
diff --git a/lib/spack/spack/compilers/apple_clang.py b/lib/spack/spack/compilers/apple_clang.py
index e03117ae05..372a677a47 100644
--- a/lib/spack/spack/compilers/apple_clang.py
+++ b/lib/spack/spack/compilers/apple_clang.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/compilers/arm.py b/lib/spack/spack/compilers/arm.py
index 59eb1714b8..4c59d89210 100644
--- a/lib/spack/spack/compilers/arm.py
+++ b/lib/spack/spack/compilers/arm.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/compilers/cce.py b/lib/spack/spack/compilers/cce.py
index a325bf3a45..64bf62543d 100644
--- a/lib/spack/spack/compilers/cce.py
+++ b/lib/spack/spack/compilers/cce.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -112,3 +112,9 @@ class Cce(Compiler):
if self.is_clang_based:
return "-fPIC"
return "-h PIC"
+
+ @property
+ def stdcxx_libs(self):
+ # Cray compiler wrappers link to the standard C++ library
+ # without additional flags.
+ return ()
diff --git a/lib/spack/spack/compilers/clang.py b/lib/spack/spack/compilers/clang.py
index 5eb08cbf0a..d2dc3db192 100644
--- a/lib/spack/spack/compilers/clang.py
+++ b/lib/spack/spack/compilers/clang.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -159,11 +159,11 @@ class Clang(Compiler):
match = re.search(
# Normal clang compiler versions are left as-is
- r'clang version ([^ )]+)-svn[~.\w\d-]*|'
+ r'clang version ([^ )\n]+)-svn[~.\w\d-]*|'
# Don't include hyphenated patch numbers in the version
# (see https://github.com/spack/spack/pull/14365 for details)
- r'clang version ([^ )]+?)-[~.\w\d-]*|'
- r'clang version ([^ )]+)',
+ r'clang version ([^ )\n]+?)-[~.\w\d-]*|'
+ r'clang version ([^ )\n]+)',
output
)
if match:
diff --git a/lib/spack/spack/compilers/fj.py b/lib/spack/spack/compilers/fj.py
index c2cc66e110..d53fa02fba 100644
--- a/lib/spack/spack/compilers/fj.py
+++ b/lib/spack/spack/compilers/fj.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -35,8 +35,12 @@ class Fj(spack.compiler.Compiler):
return "-v"
@property
+ def debug_flags(self):
+ return "-g"
+
+ @property
def opt_flags(self):
- return ['-O', '-O0', '-O1', '-O2', '-O3', '-O4']
+ return ['-O0', '-O1', '-O2', '-O3', '-Ofast']
@property
def openmp_flag(self):
@@ -55,6 +59,10 @@ class Fj(spack.compiler.Compiler):
return "-std=c++14"
@property
+ def cxx17_flag(self):
+ return "-std=c++17"
+
+ @property
def c99_flag(self):
return "-std=c99"
diff --git a/lib/spack/spack/compilers/gcc.py b/lib/spack/spack/compilers/gcc.py
index 02ee3e5db9..ff8675324e 100644
--- a/lib/spack/spack/compilers/gcc.py
+++ b/lib/spack/spack/compilers/gcc.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/compilers/intel.py b/lib/spack/spack/compilers/intel.py
index 5e64a1439e..a05b992a10 100644
--- a/lib/spack/spack/compilers/intel.py
+++ b/lib/spack/spack/compilers/intel.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/compilers/nag.py b/lib/spack/spack/compilers/nag.py
index 503a31e404..c72a980327 100644
--- a/lib/spack/spack/compilers/nag.py
+++ b/lib/spack/spack/compilers/nag.py
@@ -1,17 +1,19 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from typing import List # novm
+
import spack.compiler
class Nag(spack.compiler.Compiler):
# Subclasses use possible names of C compiler
- cc_names = []
+ cc_names = [] # type: List[str]
# Subclasses use possible names of C++ compiler
- cxx_names = []
+ cxx_names = [] # type: List[str]
# Subclasses use possible names of Fortran 77 compiler
f77_names = ['nagfor']
@@ -100,3 +102,13 @@ class Nag(spack.compiler.Compiler):
@property
def linker_arg(self):
return '-Wl,-Wl,,'
+
+ @property
+ def disable_new_dtags(self):
+ # Disable RPATH/RUNPATH forcing for NAG/GCC mixed toolchains:
+ return ''
+
+ @property
+ def enable_new_dtags(self):
+ # Disable RPATH/RUNPATH forcing for NAG/GCC mixed toolchains:
+ return ''
diff --git a/lib/spack/spack/compilers/nvhpc.py b/lib/spack/spack/compilers/nvhpc.py
index c102320132..1929d50613 100644
--- a/lib/spack/spack/compilers/nvhpc.py
+++ b/lib/spack/spack/compilers/nvhpc.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/compilers/oneapi.py b/lib/spack/spack/compilers/oneapi.py
index 1b029699b5..0289d266b8 100644
--- a/lib/spack/spack/compilers/oneapi.py
+++ b/lib/spack/spack/compilers/oneapi.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,14 +29,15 @@ class Oneapi(Compiler):
PrgEnv_compiler = 'oneapi'
version_argument = '--version'
- version_regex = r'(?:(?:oneAPI DPC\+\+ Compiler)|(?:ifx \(IFORT\))) (\S+)'
+ version_regex = r'(?:(?:oneAPI DPC\+\+ Compiler)|(?:\(IFORT\))) (\S+)'
@property
def verbose_flag(self):
return "-v"
required_libs = ['libirc', 'libifcore', 'libifcoremt', 'libirng',
- 'libsvml', 'libintlc', 'libimf']
+ 'libsvml', 'libintlc', 'libimf', 'libsycl',
+ 'libOpenCL']
@property
def debug_flags(self):
diff --git a/lib/spack/spack/compilers/pgi.py b/lib/spack/spack/compilers/pgi.py
index 383281a9f4..3de7b708c7 100644
--- a/lib/spack/spack/compilers/pgi.py
+++ b/lib/spack/spack/compilers/pgi.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -88,3 +88,7 @@ class Pgi(Compiler):
'the C11 standard',
'c11_flag',
'< 15.3')
+
+ @property
+ def stdcxx_libs(self):
+ return ('-pgc++libs',)
diff --git a/lib/spack/spack/compilers/xl.py b/lib/spack/spack/compilers/xl.py
index 66009646e3..7e39d1c530 100644
--- a/lib/spack/spack/compilers/xl.py
+++ b/lib/spack/spack/compilers/xl.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/compilers/xl_r.py b/lib/spack/spack/compilers/xl_r.py
index c9a785d5d8..81100e782a 100644
--- a/lib/spack/spack/compilers/xl_r.py
+++ b/lib/spack/spack/compilers/xl_r.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/concretize.py b/lib/spack/spack/concretize.py
index 48210f0959..900009e283 100644
--- a/lib/spack/spack/concretize.py
+++ b/lib/spack/spack/concretize.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -73,9 +73,7 @@ class Concretizer(object):
if not dev_info:
return False
- path = dev_info['path']
- path = path if os.path.isabs(path) else os.path.join(
- env.path, path)
+ path = os.path.normpath(os.path.join(env.path, dev_info['path']))
if 'dev_path' in spec.variants:
assert spec.variants['dev_path'].value == path
@@ -718,6 +716,8 @@ def concretize_specs_together(*abstract_specs, **kwargs):
"""Given a number of specs as input, tries to concretize them together.
Args:
+ tests (bool or list or set): False to run no tests, True to test
+ all packages, or a list of package names to run tests for some
*abstract_specs: abstract specs to be concretized, given either
as Specs or strings
@@ -775,7 +775,7 @@ def _concretize_specs_together_original(*abstract_specs, **kwargs):
with spack.repo.additional_repository(concretization_repository):
# Spec from a helper package that depends on all the abstract_specs
concretization_root = spack.spec.Spec('concretizationroot')
- concretization_root.concretize()
+ concretization_root.concretize(tests=kwargs.get('tests', False))
# Retrieve the direct dependencies
concrete_specs = [
concretization_root[spec.name].copy() for spec in abstract_specs
diff --git a/lib/spack/spack/config.py b/lib/spack/spack/config.py
index 8794072e96..574902f508 100644
--- a/lib/spack/spack/config.py
+++ b/lib/spack/spack/config.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -35,10 +35,10 @@ import functools
import os
import re
import sys
-import multiprocessing
from contextlib import contextmanager
from six import iteritems
from ordereddict_backport import OrderedDict
+from typing import List # novm
import ruamel.yaml as yaml
from ruamel.yaml.error import MarkedYAMLError
@@ -60,6 +60,7 @@ import spack.schema.config
import spack.schema.upstreams
import spack.schema.env
from spack.error import SpackError
+from spack.util.cpus import cpus_available
# Hacked yaml for configuration files preserves line numbers.
import spack.util.spack_yaml as syaml
@@ -109,7 +110,7 @@ config_defaults = {
'verify_ssl': True,
'checksum': True,
'dirty': False,
- 'build_jobs': min(16, multiprocessing.cpu_count()),
+ 'build_jobs': min(16, cpus_available()),
'build_stage': '$tempdir/spack-stage',
'concretizer': 'original',
}
@@ -128,7 +129,7 @@ def first_existing(dictionary, keys):
try:
return next(k for k in keys if k in dictionary)
except StopIteration:
- raise KeyError("None of %s is in dict!" % keys)
+ raise KeyError("None of %s is in dict!" % str(keys))
class ConfigScope(object):
@@ -564,7 +565,7 @@ class Configuration(object):
If ``scope`` is ``None`` or not provided, return the merged contents
of all of Spack's configuration scopes. If ``scope`` is provided,
- return only the confiugration as specified in that scope.
+ return only the configuration as specified in that scope.
This off the top-level name from the YAML section. That is, for a
YAML config file that looks like this::
@@ -749,7 +750,7 @@ def override(path_or_scope, value=None):
#: configuration scopes added on the command line
#: set by ``spack.main.main()``.
-command_line_scopes = []
+command_line_scopes = [] # type: List[str]
def _add_platform_scope(cfg, scope_type, name, path):
@@ -817,6 +818,81 @@ def _config():
config = llnl.util.lang.Singleton(_config)
+def add_from_file(filename, scope=None):
+ """Add updates to a config from a filename
+ """
+ import spack.environment as ev
+
+ # Get file as config dict
+ data = read_config_file(filename)
+ if any(k in data for k in spack.schema.env.keys):
+ data = ev.config_dict(data)
+
+ # update all sections from config dict
+ # We have to iterate on keys to keep overrides from the file
+ for section in data.keys():
+ if section in section_schemas.keys():
+ # Special handling for compiler scope difference
+ # Has to be handled after we choose a section
+ if scope is None:
+ scope = default_modify_scope(section)
+
+ value = data[section]
+ existing = get(section, scope=scope)
+ new = merge_yaml(existing, value)
+
+ # We cannot call config.set directly (set is a type)
+ config.set(section, new, scope)
+
+
+def add(fullpath, scope=None):
+ """Add the given configuration to the specified config scope.
+ Add accepts a path. If you want to add from a filename, use add_from_file"""
+
+ components = process_config_path(fullpath)
+
+ has_existing_value = True
+ path = ''
+ override = False
+ for idx, name in enumerate(components[:-1]):
+ # First handle double colons in constructing path
+ colon = '::' if override else ':' if path else ''
+ path += colon + name
+ if getattr(name, 'override', False):
+ override = True
+ else:
+ override = False
+
+ # Test whether there is an existing value at this level
+ existing = get(path, scope=scope)
+
+ if existing is None:
+ has_existing_value = False
+ # We've nested further than existing config, so we need the
+ # type information for validation to know how to handle bare
+ # values appended to lists.
+ existing = get_valid_type(path)
+
+ # construct value from this point down
+ value = syaml.load_config(components[-1])
+ for component in reversed(components[idx + 1:-1]):
+ value = {component: value}
+ break
+
+ if has_existing_value:
+ path, _, value = fullpath.rpartition(':')
+ value = syaml.load_config(value)
+ existing = get(path, scope=scope)
+
+ # append values to lists
+ if isinstance(existing, list) and not isinstance(value, list):
+ value = [value]
+
+ # merge value into existing
+ new = merge_yaml(existing, value)
+ config.set(path, new, scope)
+
+
def get(path, default=None, scope=None):
"""Module-level wrapper for ``Configuration.get()``."""
return config.get(path, default, scope)
diff --git a/lib/spack/spack/container/__init__.py b/lib/spack/spack/container/__init__.py
index 8206efef01..7211f94ff1 100644
--- a/lib/spack/spack/container/__init__.py
+++ b/lib/spack/spack/container/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/container/images.py b/lib/spack/spack/container/images.py
index 32fcff2770..9d2e15f195 100644
--- a/lib/spack/spack/container/images.py
+++ b/lib/spack/spack/container/images.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/container/writers/__init__.py b/lib/spack/spack/container/writers/__init__.py
index 176dd7a50c..b1c82a7bdf 100644
--- a/lib/spack/spack/container/writers/__init__.py
+++ b/lib/spack/spack/container/writers/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/container/writers/docker.py b/lib/spack/spack/container/writers/docker.py
index 557d22c803..7c9372fb86 100644
--- a/lib/spack/spack/container/writers/docker.py
+++ b/lib/spack/spack/container/writers/docker.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/container/writers/singularity.py b/lib/spack/spack/container/writers/singularity.py
index 32f29eb83d..e3eaaea008 100644
--- a/lib/spack/spack/container/writers/singularity.py
+++ b/lib/spack/spack/container/writers/singularity.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/database.py b/lib/spack/spack/database.py
index db1e6a636b..650ab48492 100644
--- a/lib/spack/spack/database.py
+++ b/lib/spack/spack/database.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,6 +27,8 @@ import six
import socket
import sys
import time
+from typing import Dict # novm
+
try:
import uuid
_use_uuid = True
@@ -289,10 +291,10 @@ _query_docstring = """
class Database(object):
"""Per-process lock objects for each install prefix."""
- _prefix_locks = {}
+ _prefix_locks = {} # type: Dict[str, lk.Lock]
"""Per-process failure (lock) objects for each install prefix."""
- _prefix_failures = {}
+ _prefix_failures = {} # type: Dict[str, lk.Lock]
def __init__(self, root, db_dir=None, upstream_dbs=None,
is_upstream=False, enable_transaction_locking=True,
@@ -793,7 +795,7 @@ class Database(object):
# do it *while* we're constructing specs,it causes hashes to be
# cached prematurely.
for hash_key, rec in data.items():
- rec.spec._mark_concrete()
+ rec.spec._mark_root_concrete()
self._data = data
@@ -1452,11 +1454,12 @@ class Database(object):
rec.spec.name) != known:
continue
- inst_date = datetime.datetime.fromtimestamp(
- rec.installation_time
- )
- if not (start_date < inst_date < end_date):
- continue
+ if start_date or end_date:
+ inst_date = datetime.datetime.fromtimestamp(
+ rec.installation_time
+ )
+ if not (start_date < inst_date < end_date):
+ continue
if (query_spec is any or
rec.spec.satisfies(query_spec, strict=True)):
@@ -1464,6 +1467,8 @@ class Database(object):
return results
+ if _query.__doc__ is None:
+ _query.__doc__ = ""
_query.__doc__ += _query_docstring
def query_local(self, *args, **kwargs):
@@ -1471,6 +1476,8 @@ class Database(object):
with self.read_transaction():
return sorted(self._query(*args, **kwargs))
+ if query_local.__doc__ is None:
+ query_local.__doc__ = ""
query_local.__doc__ += _query_docstring
def query(self, *args, **kwargs):
@@ -1489,6 +1496,8 @@ class Database(object):
return sorted(results)
+ if query.__doc__ is None:
+ query.__doc__ = ""
query.__doc__ += _query_docstring
def query_one(self, query_spec, known=any, installed=True):
diff --git a/lib/spack/spack/dependency.py b/lib/spack/spack/dependency.py
index fe7d6b5983..0773ce0763 100644
--- a/lib/spack/spack/dependency.py
+++ b/lib/spack/spack/dependency.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/directives.py b/lib/spack/spack/directives.py
index b7793a893f..30a45f1b06 100644
--- a/lib/spack/spack/directives.py
+++ b/lib/spack/spack/directives.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -34,6 +34,7 @@ import re
import sys
from six import string_types
+from typing import Set, List # novm
import llnl.util.lang
import llnl.util.tty.color
@@ -111,8 +112,8 @@ class DirectiveMeta(type):
"""
# Set of all known directives
- _directive_names = set()
- _directives_to_be_executed = []
+ _directive_names = set() # type: Set[str]
+ _directives_to_be_executed = [] # type: List[str]
def __new__(cls, name, bases, attr_dict):
# Initialize the attribute containing the list of directives
@@ -277,6 +278,9 @@ def version(ver, checksum=None, **kwargs):
The ``dict`` of arguments is turned into a valid fetch strategy for
code packages later. See ``spack.fetch_strategy.for_package_version()``.
+
+ Keyword Arguments:
+ deprecated (bool): whether or not this version is deprecated
"""
def _execute_version(pkg):
if checksum is not None:
@@ -400,7 +404,7 @@ def depends_on(spec, when=None, type=default_deptype, patches=None):
@directive(('extendees', 'dependencies'))
-def extends(spec, **kwargs):
+def extends(spec, type=('build', 'run'), **kwargs):
"""Same as depends_on, but allows symlinking into dependency's
prefix tree.
@@ -421,7 +425,7 @@ def extends(spec, **kwargs):
if not when_spec:
return
- _depends_on(pkg, spec, when=when)
+ _depends_on(pkg, spec, when=when, type=type)
pkg.extendees[spec] = (spack.spec.Spec(spec), kwargs)
return _execute_extends
diff --git a/lib/spack/spack/directory_layout.py b/lib/spack/spack/directory_layout.py
index 06a652f450..8a429a850f 100644
--- a/lib/spack/spack/directory_layout.py
+++ b/lib/spack/spack/directory_layout.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,6 +7,7 @@ import os
import shutil
import glob
import tempfile
+import errno
from contextlib import contextmanager
import ruamel.yaml as yaml
@@ -14,7 +15,9 @@ import ruamel.yaml as yaml
from llnl.util.filesystem import mkdirp
import spack.config
+import spack.hash_types as ht
import spack.spec
+import spack.util.spack_json as sjson
from spack.error import SpackError
@@ -119,9 +122,17 @@ class DirectoryLayout(object):
path = os.path.dirname(path)
while path != self.root:
if os.path.isdir(path):
- if os.listdir(path):
- return
- os.rmdir(path)
+ try:
+ os.rmdir(path)
+ except OSError as e:
+ if e.errno == errno.ENOENT:
+ # already deleted, continue with parent
+ pass
+ elif e.errno == errno.ENOTEMPTY:
+ # directory wasn't empty, done
+ return
+ else:
+ raise e
path = os.path.dirname(path)
@@ -233,7 +244,20 @@ class YamlDirectoryLayout(DirectoryLayout):
"""Write a spec out to a file."""
_check_concrete(spec)
with open(path, 'w') as f:
- spec.to_yaml(f)
+ # The hash the the projection is the DAG hash but we write out the
+ # full provenance by full hash so it's availabe if we want it later
+ spec.to_yaml(f, hash=ht.full_hash)
+
+ def write_host_environment(self, spec):
+ """The host environment is a json file with os, kernel, and spack
+ versioning. We use it in the case that an analysis later needs to
+ easily access this information.
+ """
+ from spack.util.environment import get_host_environment_metadata
+ env_file = self.env_metadata_path(spec)
+ environ = get_host_environment_metadata()
+ with open(env_file, 'w') as fd:
+ sjson.dump(environ, fd)
def read_spec(self, path):
"""Read the contents of a file and parse them as a spec"""
@@ -288,6 +312,9 @@ class YamlDirectoryLayout(DirectoryLayout):
def metadata_path(self, spec):
return os.path.join(spec.prefix, self.metadata_dir)
+ def env_metadata_path(self, spec):
+ return os.path.join(self.metadata_path(spec), "install_environment.json")
+
def build_packages_path(self, spec):
return os.path.join(self.metadata_path(spec), self.packages_dir)
@@ -335,7 +362,13 @@ class YamlDirectoryLayout(DirectoryLayout):
#
# TODO: remove this when we do better concretization and don't
# ignore build-only deps in hashes.
- elif installed_spec == spec.copy(deps=('link', 'run')):
+ elif (installed_spec.copy(deps=('link', 'run')) ==
+ spec.copy(deps=('link', 'run'))):
+ # The directory layout prefix is based on the dag hash, so among
+ # specs with differing full-hash but matching dag-hash, only one
+ # may be installed. This means for example that for two instances
+ # that differ only in CMake version used to build, only one will
+ # be installed.
return path
if spec.dag_hash() == installed_spec.dag_hash():
@@ -411,8 +444,8 @@ class YamlViewExtensionsLayout(ExtensionsLayout):
def check_extension_conflict(self, spec, ext_spec):
exts = self._extension_map(spec)
if ext_spec.name in exts:
- installed_spec = exts[ext_spec.name]
- if ext_spec == installed_spec:
+ installed_spec = exts[ext_spec.name].copy(deps=('link', 'run'))
+ if ext_spec.copy(deps=('link', 'run')) == installed_spec:
raise ExtensionAlreadyInstalledError(spec, ext_spec)
else:
raise ExtensionConflictError(spec, ext_spec, installed_spec)
diff --git a/lib/spack/spack/environment.py b/lib/spack/spack/environment.py
index 7f7625f2e6..647352a10e 100644
--- a/lib/spack/spack/environment.py
+++ b/lib/spack/spack/environment.py
@@ -1,17 +1,15 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
import collections
import os
import re
import sys
import shutil
import copy
-import socket
-
import six
+import ruamel.yaml as yaml
from ordereddict_backport import OrderedDict
@@ -33,13 +31,13 @@ import spack.config
import spack.user_environment as uenv
from spack.filesystem_view import YamlFilesystemView
import spack.util.environment
-import spack.architecture as architecture
from spack.spec import Spec
from spack.spec_list import SpecList, InvalidSpecConstraintError
from spack.variant import UnknownVariantError
+import spack.util.hash
import spack.util.lock as lk
from spack.util.path import substitute_path_variables
-from spack.installer import PackageInstaller
+import spack.util.path
#: environment variable used to indicate the active environment
spack_env_var = 'SPACK_ENV'
@@ -131,7 +129,7 @@ def activate(
if use_env_repo:
spack.repo.path.put_first(_active_environment.repo)
- tty.debug("Using environmennt '%s'" % _active_environment.name)
+ tty.debug("Using environment '%s'" % _active_environment.name)
# Construct the commands to run
cmds = ''
@@ -392,12 +390,12 @@ def read(name):
return Environment(root(name))
-def create(name, init_file=None, with_view=None):
+def create(name, init_file=None, with_view=None, keep_relative=False):
"""Create a named environment in Spack."""
validate_env_name(name)
if exists(name):
raise SpackEnvironmentError("'%s': environment already exists" % name)
- return Environment(root(name), init_file, with_view)
+ return Environment(root(name), init_file, with_view, keep_relative)
def config_dict(yaml_data):
@@ -446,21 +444,11 @@ def _write_yaml(data, str_or_file):
def _eval_conditional(string):
"""Evaluate conditional definitions using restricted variable scope."""
- arch = architecture.Arch(
- architecture.platform(), 'default_os', 'default_target')
- arch_spec = spack.spec.Spec('arch=%s' % arch)
- valid_variables = {
- 'target': str(arch.target),
- 'os': str(arch.os),
- 'platform': str(arch.platform),
- 'arch': arch_spec,
- 'architecture': arch_spec,
- 'arch_str': str(arch),
+ valid_variables = spack.util.environment.get_host_environment()
+ valid_variables.update({
're': re,
'env': os.environ,
- 'hostname': socket.gethostname()
- }
-
+ })
return eval(string, valid_variables)
@@ -468,7 +456,7 @@ class ViewDescriptor(object):
def __init__(self, base_path, root, projections={}, select=[], exclude=[],
link=default_view_link):
self.base = base_path
- self.root = root
+ self.root = spack.util.path.canonicalize_path(root)
self.projections = projections
self.select = select
self.select_fn = lambda x: any(x.satisfies(s) for s in self.select)
@@ -485,8 +473,13 @@ class ViewDescriptor(object):
self.link == other.link])
def to_dict(self):
- ret = {'root': self.root}
+ ret = syaml.syaml_dict([('root', self.root)])
if self.projections:
+ # projections guaranteed to be ordered dict if true-ish
+ # for python2.6, may be syaml or ruamel.yaml implementation
+ # so we have to check for both
+ types = (OrderedDict, syaml.syaml_dict, yaml.comments.CommentedMap)
+ assert isinstance(self.projections, types)
ret['projections'] = self.projections
if self.select:
ret['select'] = self.select
@@ -505,10 +498,66 @@ class ViewDescriptor(object):
d.get('exclude', []),
d.get('link', default_view_link))
- def view(self):
- root = self.root
- if not os.path.isabs(root):
- root = os.path.normpath(os.path.join(self.base, self.root))
+ @property
+ def _current_root(self):
+ if not os.path.exists(self.root):
+ return None
+
+ root = os.readlink(self.root)
+ if os.path.isabs(root):
+ return root
+
+ root_dir = os.path.dirname(self.root)
+ return os.path.join(root_dir, root)
+
+ def _next_root(self, specs):
+ content_hash = self.content_hash(specs)
+ root_dir = os.path.dirname(self.root)
+ root_name = os.path.basename(self.root)
+ return os.path.join(root_dir, '._%s' % root_name, content_hash)
+
+ def content_hash(self, specs):
+ d = syaml.syaml_dict([
+ ('descriptor', self.to_dict()),
+ ('specs', [(spec.full_hash(), spec.prefix) for spec in sorted(specs)])
+ ])
+ contents = sjson.dump(d)
+ return spack.util.hash.b32_hash(contents)
+
+ def get_projection_for_spec(self, spec):
+ """Get projection for spec relative to view root
+
+ Getting the projection from the underlying root will get the temporary
+ projection. This gives the permanent projection relative to the root
+ symlink.
+ """
+ view = self.view()
+ view_path = view.get_projection_for_spec(spec)
+ rel_path = os.path.relpath(view_path, self._current_root)
+ return os.path.join(self.root, rel_path)
+
+ def view(self, new=None):
+ """
+ Generate the FilesystemView object for this ViewDescriptor
+
+ By default, this method returns a FilesystemView object rooted at the
+ current underlying root of this ViewDescriptor (self._current_root)
+
+ Raise if new is None and there is no current view
+
+ Arguments:
+ new (string or None): If a string, create a FilesystemView
+ rooted at that path. Default None. This should only be used to
+ regenerate the view, and cannot be used to access specs.
+ """
+ root = self._current_root
+ if new:
+ root = new
+ if not root:
+ # This can only be hit if we write a future bug
+ msg = ("Attempting to get nonexistent view from environment. "
+ "View root is at %s" % self.root)
+ raise SpackEnvironmentViewError(msg)
return YamlFilesystemView(root, spack.store.layout,
ignore_conflicts=True,
projections=self.projections)
@@ -530,9 +579,10 @@ class ViewDescriptor(object):
return True
- def regenerate(self, all_specs, roots):
+ def specs_for_view(self, all_specs, roots):
specs_for_view = []
specs = all_specs if self.link == 'all' else roots
+
for spec in specs:
# The view does not store build deps, so if we want it to
# recognize environment specs (which do store build deps),
@@ -544,6 +594,10 @@ class ViewDescriptor(object):
spec_copy._hash = spec._hash
spec_copy._normal = spec._normal
specs_for_view.append(spec_copy)
+ return specs_for_view
+
+ def regenerate(self, all_specs, roots):
+ specs_for_view = self.specs_for_view(all_specs, roots)
# regeneration queries the database quite a bit; this read
# transaction ensures that we don't repeatedly lock/unlock.
@@ -553,31 +607,56 @@ class ViewDescriptor(object):
# To ensure there are no conflicts with packages being installed
# that cannot be resolved or have repos that have been removed
- # we always regenerate the view from scratch. We must first make
- # sure the root directory exists for the very first time though.
- root = self.root
- if not os.path.isabs(root):
- root = os.path.normpath(os.path.join(self.base, self.root))
- fs.mkdirp(root)
- with fs.replace_directory_transaction(root):
- view = self.view()
-
- view.clean()
- specs_in_view = set(view.get_all_specs())
- tty.msg("Updating view at {0}".format(self.root))
-
- rm_specs = specs_in_view - installed_specs_for_view
- add_specs = installed_specs_for_view - specs_in_view
-
- # pass all_specs in, as it's expensive to read all the
- # spec.yaml files twice.
- view.remove_specs(*rm_specs, with_dependents=False,
- all_specs=specs_in_view)
- view.add_specs(*add_specs, with_dependencies=False)
+ # we always regenerate the view from scratch.
+ # We will do this by hashing the view contents and putting the view
+ # in a directory by hash, and then having a symlink to the real
+ # view in the root. The real root for a view at /dirname/basename
+ # will be /dirname/._basename_<hash>.
+ # This allows for atomic swaps when we update the view
+
+ # cache the roots because the way we determine which is which does
+ # not work while we are updating
+ new_root = self._next_root(installed_specs_for_view)
+ old_root = self._current_root
+
+ if new_root == old_root:
+ tty.debug("View at %s does not need regeneration." % self.root)
+ return
+
+ # construct view at new_root
+ tty.msg("Updating view at {0}".format(self.root))
+
+ view = self.view(new=new_root)
+ fs.mkdirp(new_root)
+ view.add_specs(*installed_specs_for_view,
+ with_dependencies=False)
+
+ # create symlink from tmpname to new_root
+ root_dirname = os.path.dirname(self.root)
+ tmp_symlink_name = os.path.join(root_dirname, '._view_link')
+ if os.path.exists(tmp_symlink_name):
+ os.unlink(tmp_symlink_name)
+ os.symlink(new_root, tmp_symlink_name)
+
+ # mv symlink atomically over root symlink to old_root
+ if os.path.exists(self.root) and not os.path.islink(self.root):
+ msg = "Cannot create view: "
+ msg += "file already exists and is not a link: %s" % self.root
+ raise SpackEnvironmentViewError(msg)
+ os.rename(tmp_symlink_name, self.root)
+
+ # remove old_root
+ if old_root and os.path.exists(old_root):
+ try:
+ shutil.rmtree(old_root)
+ except (IOError, OSError) as e:
+ msg = "Failed to remove old view at %s\n" % old_root
+ msg += str(e)
+ tty.warn(msg)
class Environment(object):
- def __init__(self, path, init_file=None, with_view=None):
+ def __init__(self, path, init_file=None, with_view=None, keep_relative=False):
"""Create a new environment.
The environment can be optionally initialized with either a
@@ -590,6 +669,10 @@ class Environment(object):
with_view (str or bool): whether a view should be maintained for
the environment. If the value is a string, it specifies the
path to the view.
+ keep_relative (bool): if True, develop paths are copied verbatim
+ into the new environment file, otherwise they are made absolute
+ when the environment path is different from init_file's
+ directory.
"""
self.path = os.path.abspath(path)
@@ -611,6 +694,13 @@ class Environment(object):
self._set_user_specs_from_lockfile()
else:
self._read_manifest(f, raw_yaml=default_manifest_yaml)
+
+ # Rewrite relative develop paths when initializing a new
+ # environment in a different location from the spack.yaml file.
+ if not keep_relative and hasattr(f, 'name') and \
+ f.name.endswith('.yaml'):
+ init_file_dir = os.path.abspath(os.path.dirname(f.name))
+ self._rewrite_relative_paths_on_relocation(init_file_dir)
else:
with lk.ReadTransaction(self.txlock):
self._read()
@@ -627,6 +717,27 @@ class Environment(object):
# If with_view is None, then defer to the view settings determined by
# the manifest file
+ def _rewrite_relative_paths_on_relocation(self, init_file_dir):
+ """When initializing the environment from a manifest file and we plan
+ to store the environment in a different directory, we have to rewrite
+ relative paths to absolute ones."""
+ if init_file_dir == self.path:
+ return
+
+ for name, entry in self.dev_specs.items():
+ dev_path = entry['path']
+ expanded_path = os.path.normpath(os.path.join(
+ init_file_dir, entry['path']))
+
+ # Skip if the expanded path is the same (e.g. when absolute)
+ if dev_path == expanded_path:
+ continue
+
+ tty.debug("Expanding develop path for {0} to {1}".format(
+ name, expanded_path))
+
+ self.dev_specs[name]['path'] = expanded_path
+
def _re_read(self):
"""Reinitialize the environment object if it has been written (this
may not be true if the environment was just created in this running
@@ -1034,8 +1145,7 @@ class Environment(object):
if clone:
# "steal" the source code via staging API
- abspath = path if os.path.isabs(path) else os.path.join(
- self.path, path)
+ abspath = os.path.normpath(os.path.join(self.path, path))
stage = spec.package.stage
stage.steal_source(abspath)
@@ -1054,7 +1164,7 @@ class Environment(object):
return True
return False
- def concretize(self, force=False):
+ def concretize(self, force=False, tests=False):
"""Concretize user_specs in this environment.
Only concretizes specs that haven't been concretized yet unless
@@ -1066,6 +1176,8 @@ class Environment(object):
Arguments:
force (bool): re-concretize ALL specs, even those that were
already concretized
+ tests (bool or list or set): False to run no tests, True to test
+ all packages, or a list of package names to run tests for some
Returns:
List of specs that have been concretized. Each entry is a tuple of
@@ -1079,14 +1191,14 @@ class Environment(object):
# Pick the right concretization strategy
if self.concretization == 'together':
- return self._concretize_together()
+ return self._concretize_together(tests=tests)
if self.concretization == 'separately':
- return self._concretize_separately()
+ return self._concretize_separately(tests=tests)
msg = 'concretization strategy not implemented [{0}]'
raise SpackEnvironmentError(msg.format(self.concretization))
- def _concretize_together(self):
+ def _concretize_together(self, tests=False):
"""Concretization strategy that concretizes all the specs
in the same DAG.
"""
@@ -1119,14 +1231,13 @@ class Environment(object):
self.specs_by_hash = {}
concrete_specs = spack.concretize.concretize_specs_together(
- *self.user_specs
- )
+ *self.user_specs, tests=tests)
concretized_specs = [x for x in zip(self.user_specs, concrete_specs)]
for abstract, concrete in concretized_specs:
self._add_concrete_spec(abstract, concrete)
return concretized_specs
- def _concretize_separately(self):
+ def _concretize_separately(self, tests=False):
"""Concretization strategy that concretizes separately one
user spec after the other.
"""
@@ -1149,12 +1260,12 @@ class Environment(object):
for uspec, uspec_constraints in zip(
self.user_specs, self.user_specs.specs_as_constraints):
if uspec not in old_concretized_user_specs:
- concrete = _concretize_from_constraints(uspec_constraints)
+ concrete = _concretize_from_constraints(uspec_constraints, tests=tests)
self._add_concrete_spec(uspec, concrete)
concretized_specs.append((uspec, concrete))
return concretized_specs
- def concretize_and_add(self, user_spec, concrete_spec=None):
+ def concretize_and_add(self, user_spec, concrete_spec=None, tests=False):
"""Concretize and add a single spec to the environment.
Concretize the provided ``user_spec`` and add it along with the
@@ -1177,7 +1288,7 @@ class Environment(object):
spec = Spec(user_spec)
if self.add(spec):
- concrete = concrete_spec or spec.concretized()
+ concrete = concrete_spec or spec.concretized(tests=tests)
self._add_concrete_spec(spec, concrete)
else:
# spec might be in the user_specs, but not installed.
@@ -1187,7 +1298,7 @@ class Environment(object):
)
concrete = self.specs_by_hash.get(spec.build_hash())
if not concrete:
- concrete = spec.concretized()
+ concrete = spec.concretized(tests=tests)
self._add_concrete_spec(spec, concrete)
return concrete
@@ -1248,19 +1359,36 @@ class Environment(object):
def _env_modifications_for_default_view(self, reverse=False):
all_mods = spack.util.environment.EnvironmentModifications()
+ visited = set()
+
errors = []
- for _, spec in self.concretized_specs():
- if spec in self.default_view and spec.package.installed:
- try:
- mods = uenv.environment_modifications_for_spec(
- spec, self.default_view)
- except Exception as e:
- msg = ("couldn't get environment settings for %s"
- % spec.format("{name}@{version} /{hash:7}"))
- errors.append((msg, str(e)))
- continue
+ for _, root_spec in self.concretized_specs():
+ if root_spec in self.default_view and root_spec.package.installed:
+ for spec in root_spec.traverse(deptype='run', root=True):
+ if spec.name in visited:
+ # It is expected that only one instance of the package
+ # can be added to the environment - do not attempt to
+ # add multiple.
+ tty.debug(
+ "Not adding {0} to shell modifications: "
+ "this package has already been added".format(
+ spec.format("{name}/{hash:7}")
+ )
+ )
+ continue
+ else:
+ visited.add(spec.name)
- all_mods.extend(mods.reversed() if reverse else mods)
+ try:
+ mods = uenv.environment_modifications_for_spec(
+ spec, self.default_view)
+ except Exception as e:
+ msg = ("couldn't get environment settings for %s"
+ % spec.format("{name}@{version} /{hash:7}"))
+ errors.append((msg, str(e)))
+ continue
+
+ all_mods.extend(mods.reversed() if reverse else mods)
return all_mods, errors
@@ -1412,20 +1540,31 @@ class Environment(object):
args (Namespace): argparse namespace with command arguments
install_args (dict): keyword install arguments
"""
+ self.install_specs(None, args=args, **install_args)
+
+ def install_specs(self, specs=None, args=None, **install_args):
+ from spack.installer import PackageInstaller
+
tty.debug('Assessing installation status of environment packages')
# If "spack install" is invoked repeatedly for a large environment
# where all specs are already installed, the operation can take
# a large amount of time due to repeatedly acquiring and releasing
# locks, this does an initial check across all specs within a single
- # DB read transaction to reduce time spent in this case.
- specs_to_install = self.uninstalled_specs()
+ # DB read transaction to reduce time spent in this case. In the next
+ # three lines we remove any already-installed root specs from the list
+ # to install. However, uninstalled_specs() only considers root specs,
+ # so this will allow dep specs to be unnecessarily re-installed.
+ uninstalled_roots = self.uninstalled_specs()
+ specs_to_install = specs or uninstalled_roots
+ specs_to_install = [s for s in specs_to_install
+ if s not in self.roots() or s in uninstalled_roots]
if not specs_to_install:
tty.msg('All of the packages are already installed')
return
- tty.debug('Processing {0} uninstalled specs'
- .format(len(specs_to_install)))
+ tty.debug('Processing {0} uninstalled specs'.format(
+ len(specs_to_install)))
install_args['overwrite'] = install_args.get(
'overwrite', []) + self._get_overwrite_specs()
@@ -1545,7 +1684,7 @@ class Environment(object):
if abstract)
if len(root_matches) == 1:
- return root_matches[0][1]
+ return list(root_matches.items())[0][0]
# More than one spec matched, and either multiple roots matched or
# none of the matches were roots
@@ -1894,7 +2033,7 @@ def display_specs(concretized_specs):
print('')
-def _concretize_from_constraints(spec_constraints):
+def _concretize_from_constraints(spec_constraints, tests=False):
# Accept only valid constraints from list and concretize spec
# Get the named spec even if out of order
root_spec = [s for s in spec_constraints if s.name]
@@ -1913,7 +2052,7 @@ def _concretize_from_constraints(spec_constraints):
if c not in invalid_constraints:
s.constrain(c)
try:
- return s.concretized()
+ return s.concretized(tests=tests)
except spack.spec.InvalidDependencyError as e:
invalid_deps_string = ['^' + d for d in e.invalid_deps]
invalid_deps = [c for c in spec_constraints
@@ -2050,3 +2189,7 @@ def is_latest_format(manifest):
class SpackEnvironmentError(spack.error.SpackError):
"""Superclass for all errors to do with Spack environments."""
+
+
+class SpackEnvironmentViewError(SpackEnvironmentError):
+ """Class for errors regarding view generation."""
diff --git a/lib/spack/spack/error.py b/lib/spack/spack/error.py
index f79744f6a5..fa66a35b0e 100644
--- a/lib/spack/spack/error.py
+++ b/lib/spack/spack/error.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/extensions.py b/lib/spack/spack/extensions.py
index 4358dcd52f..9ea7373b8c 100644
--- a/lib/spack/spack/extensions.py
+++ b/lib/spack/spack/extensions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/fetch_strategy.py b/lib/spack/spack/fetch_strategy.py
index 1b94206fbf..f885980ccd 100644
--- a/lib/spack/spack/fetch_strategy.py
+++ b/lib/spack/spack/fetch_strategy.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,6 +29,7 @@ import os.path
import re
import shutil
import sys
+from typing import Optional, List # novm
import llnl.util.tty as tty
import six
@@ -92,11 +93,12 @@ class FetchStrategy(object):
#: The URL attribute must be specified either at the package class
#: level, or as a keyword argument to ``version()``. It is used to
#: distinguish fetchers for different versions in the package DSL.
- url_attr = None
+ url_attr = None # type: Optional[str]
#: Optional attributes can be used to distinguish fetchers when :
#: classes have multiple ``url_attrs`` at the top-level.
- optional_attrs = [] # optional attributes in version() args.
+ # optional attributes in version() args.
+ optional_attrs = [] # type: List[str]
def __init__(self, **kwargs):
# The stage is initialized late, so that fetch strategies can be
@@ -290,7 +292,15 @@ class URLFetchStrategy(FetchStrategy):
@property
def candidate_urls(self):
- return [self.url] + (self.mirrors or [])
+ urls = []
+
+ for url in [self.url] + (self.mirrors or []):
+ if url.startswith('file://'):
+ path = urllib_parse.quote(url[len('file://'):])
+ url = 'file://' + path
+ urls.append(url)
+
+ return urls
@_needs_stage
def fetch(self):
@@ -422,7 +432,7 @@ class URLFetchStrategy(FetchStrategy):
warn_content_type_mismatch(self.archive_file or "the archive")
return partial_file, save_file
- @property
+ @property # type: ignore # decorated properties unsupported in mypy
@_needs_stage
def archive_file(self):
"""Path to the source archive within this stage directory."""
@@ -465,6 +475,8 @@ class URLFetchStrategy(FetchStrategy):
tarball_container = os.path.join(self.stage.path,
"spack-expanded-archive")
+ # Below we assume that the command to decompress expand the
+ # archive in the current working directory
mkdirp(tarball_container)
with working_dir(tarball_container):
decompress(self.archive_file)
@@ -776,6 +788,12 @@ class GitFetchStrategy(VCSFetchStrategy):
if not self._git:
self._git = which('git', required=True)
+ # Disable advice for a quieter fetch
+ # https://github.com/git/git/blob/master/Documentation/RelNotes/1.7.2.txt
+ if self.git_version >= Version('1.7.2'):
+ self._git.add_default_arg('-c')
+ self._git.add_default_arg('advice.detachedHead=false')
+
# If the user asked for insecure fetching, make that work
# with git as well.
if not spack.config.get('config:verify_ssl'):
diff --git a/lib/spack/spack/filesystem_view.py b/lib/spack/spack/filesystem_view.py
index b6501064b9..232223b69f 100644
--- a/lib/spack/spack/filesystem_view.py
+++ b/lib/spack/spack/filesystem_view.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/graph.py b/lib/spack/spack/graph.py
index b41c923a16..87ad51e030 100644
--- a/lib/spack/spack/graph.py
+++ b/lib/spack/spack/graph.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -62,17 +62,16 @@ def topological_sort(spec, reverse=False, deptype='all'):
"""
deptype = canonical_deptype(deptype)
- if not reverse:
- parents = lambda s: s.dependents()
- children = lambda s: s.dependencies()
- else:
- parents = lambda s: s.dependencies()
- children = lambda s: s.dependents()
-
# Work on a copy so this is nondestructive.
spec = spec.copy(deps=deptype)
nodes = spec.index(deptype=deptype)
+ parents = lambda s: [p for p in s.dependents() if p.name in nodes]
+ children = lambda s: s.dependencies()
+
+ if reverse:
+ parents, children = children, parents
+
topo_order = []
par = dict((name, parents(nodes[name])) for name in nodes.keys())
remaining = [name for name in nodes.keys() if not parents(nodes[name])]
diff --git a/lib/spack/spack/hash_types.py b/lib/spack/spack/hash_types.py
index 9404076e81..554665e24a 100644
--- a/lib/spack/spack/hash_types.py
+++ b/lib/spack/spack/hash_types.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,9 @@ class SpecHashDescriptor(object):
We currently use different hashes for different use cases.
"""
+
+ hash_types = ('_dag_hash', '_build_hash', '_full_hash')
+
def __init__(self, deptype=('link', 'run'), package_hash=False, attr=None):
self.deptype = dp.canonical_deptype(deptype)
self.package_hash = package_hash
@@ -35,5 +38,5 @@ build_hash = SpecHashDescriptor(
#: Full hash used in build pipelines to determine when to rebuild packages.
-full_hash = SpecHashDescriptor(deptype=('link', 'run'), package_hash=True,
- attr='_full_hash')
+full_hash = SpecHashDescriptor(
+ deptype=('build', 'link', 'run'), package_hash=True, attr='_full_hash')
diff --git a/lib/spack/spack/hooks/__init__.py b/lib/spack/spack/hooks/__init__.py
index 5a5a04b49f..3c15b978d3 100644
--- a/lib/spack/spack/hooks/__init__.py
+++ b/lib/spack/spack/hooks/__init__.py
@@ -1,25 +1,31 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
"""This package contains modules with hooks for various stages in the
-
- Spack install process. You can add modules here and they'll be
- executed by package at various times during the package lifecycle.
-
- Each hook is just a function that takes a package as a parameter.
- Hooks are not executed in any particular order.
-
- Currently the following hooks are supported:
-
- * pre_install(spec)
- * post_install(spec)
- * pre_uninstall(spec)
- * post_uninstall(spec)
-
- This can be used to implement support for things like module
- systems (e.g. modules, lmod, etc.) or to add other custom
- features.
+Spack install process. You can add modules here and they'll be
+executed by package at various times during the package lifecycle.
+
+Each hook is just a function that takes a package as a parameter.
+Hooks are not executed in any particular order.
+
+Currently the following hooks are supported:
+
+ * pre_install(spec)
+ * post_install(spec)
+ * pre_uninstall(spec)
+ * post_uninstall(spec)
+ * on_install_start(spec)
+ * on_install_success(spec)
+ * on_install_failure(spec)
+ * on_phase_success(pkg, phase_name, log_file)
+ * on_phase_error(pkg, phase_name, log_file)
+ * on_phase_error(pkg, phase_name, log_file)
+ * on_analyzer_save(pkg, result)
+
+This can be used to implement support for things like module
+systems (e.g. modules, lmod, etc.) or to add other custom
+features.
"""
import llnl.util.lang
import spack.paths
@@ -68,8 +74,20 @@ class _HookRunner(object):
hook(*args, **kwargs)
+# pre/post install and run by the install subprocess
pre_install = _HookRunner('pre_install')
post_install = _HookRunner('post_install')
+# These hooks are run within an install subprocess
pre_uninstall = _HookRunner('pre_uninstall')
post_uninstall = _HookRunner('post_uninstall')
+on_phase_success = _HookRunner('on_phase_success')
+on_phase_error = _HookRunner('on_phase_error')
+
+# These are hooks in installer.py, before starting install subprocess
+on_install_start = _HookRunner('on_install_start')
+on_install_success = _HookRunner('on_install_success')
+on_install_failure = _HookRunner('on_install_failure')
+
+# Analyzer hooks
+on_analyzer_save = _HookRunner('on_analyzer_save')
diff --git a/lib/spack/spack/hooks/extensions.py b/lib/spack/spack/hooks/extensions.py
index 05fce302ac..a639df6181 100644
--- a/lib/spack/spack/hooks/extensions.py
+++ b/lib/spack/spack/hooks/extensions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/hooks/licensing.py b/lib/spack/spack/hooks/licensing.py
index d4e5376cda..8e789d9635 100644
--- a/lib/spack/spack/hooks/licensing.py
+++ b/lib/spack/spack/hooks/licensing.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/hooks/module_file_generation.py b/lib/spack/spack/hooks/module_file_generation.py
index ba30561d86..363654efc4 100644
--- a/lib/spack/spack/hooks/module_file_generation.py
+++ b/lib/spack/spack/hooks/module_file_generation.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/hooks/monitor.py b/lib/spack/spack/hooks/monitor.py
new file mode 100644
index 0000000000..8d161b72fa
--- /dev/null
+++ b/lib/spack/spack/hooks/monitor.py
@@ -0,0 +1,73 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import llnl.util.tty as tty
+import spack.monitor
+
+
+def on_install_start(spec):
+ """On start of an install, we want to ping the server if it exists
+ """
+ if not spack.monitor.cli:
+ return
+
+ tty.debug("Running on_install_start for %s" % spec)
+ build_id = spack.monitor.cli.new_build(spec)
+ tty.verbose("Build created with id %s" % build_id)
+
+
+def on_install_success(spec):
+ """On the success of an install (after everything is complete)
+ """
+ if not spack.monitor.cli:
+ return
+
+ tty.debug("Running on_install_success for %s" % spec)
+ result = spack.monitor.cli.update_build(spec, status="SUCCESS")
+ tty.verbose(result.get('message'))
+
+
+def on_install_failure(spec):
+ """Triggered on failure of an install
+ """
+ if not spack.monitor.cli:
+ return
+
+ tty.debug("Running on_install_failure for %s" % spec)
+ result = spack.monitor.cli.fail_task(spec)
+ tty.verbose(result.get('message'))
+
+
+def on_phase_success(pkg, phase_name, log_file):
+ """Triggered on a phase success
+ """
+ if not spack.monitor.cli:
+ return
+
+ tty.debug("Running on_phase_success %s, phase %s" % (pkg.name, phase_name))
+ result = spack.monitor.cli.send_phase(pkg, phase_name, log_file, "SUCCESS")
+ tty.verbose(result.get('message'))
+
+
+def on_phase_error(pkg, phase_name, log_file):
+ """Triggered on a phase error
+ """
+ if not spack.monitor.cli:
+ return
+
+ tty.debug("Running on_phase_error %s, phase %s" % (pkg.name, phase_name))
+ result = spack.monitor.cli.send_phase(pkg, phase_name, log_file, "ERROR")
+ tty.verbose(result.get('message'))
+
+
+def on_analyzer_save(pkg, result):
+ """given a package and a result, if we have a spack monitor, upload
+ the result to it.
+ """
+ if not spack.monitor.cli:
+ return
+
+ # This hook runs after a save result
+ spack.monitor.cli.send_analyze_metadata(pkg, result)
diff --git a/lib/spack/spack/hooks/permissions_setters.py b/lib/spack/spack/hooks/permissions_setters.py
index 0a3c2acf21..d640018515 100644
--- a/lib/spack/spack/hooks/permissions_setters.py
+++ b/lib/spack/spack/hooks/permissions_setters.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/hooks/sbang.py b/lib/spack/spack/hooks/sbang.py
index 687cf651f4..7dc00165d5 100644
--- a/lib/spack/spack/hooks/sbang.py
+++ b/lib/spack/spack/hooks/sbang.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/hooks/write_install_manifest.py b/lib/spack/spack/hooks/write_install_manifest.py
index 5b678fed88..0fb6acdf35 100644
--- a/lib/spack/spack/hooks/write_install_manifest.py
+++ b/lib/spack/spack/hooks/write_install_manifest.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/install_test.py b/lib/spack/spack/install_test.py
index 6c2c095a2e..ae50a49215 100644
--- a/lib/spack/spack/install_test.py
+++ b/lib/spack/spack/install_test.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/installer.py b/lib/spack/spack/installer.py
index 15bc23738b..4ee56db26d 100644
--- a/lib/spack/spack/installer.py
+++ b/lib/spack/spack/installer.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -46,6 +46,7 @@ import spack.binary_distribution as binary_distribution
import spack.compilers
import spack.error
import spack.hooks
+import spack.monitor
import spack.package
import spack.package_prefs as prefs
import spack.repo
@@ -392,7 +393,7 @@ def _try_install_from_binary_cache(pkg, explicit, unsigned=False,
pkg_id = package_id(pkg)
tty.debug('Searching for binary cache of {0}'.format(pkg_id))
matches = binary_distribution.get_mirrors_for_spec(
- pkg.spec, force=False, full_hash_match=full_hash_match)
+ pkg.spec, full_hash_match=full_hash_match)
if not matches:
return False
@@ -412,6 +413,25 @@ def clear_failures():
spack.store.db.clear_all_failures()
+def combine_phase_logs(phase_log_files, log_path):
+ """
+ Read set or list of logs and combine them into one file.
+
+ Each phase will produce it's own log, so this function aims to cat all the
+ separate phase log output files into the pkg.log_path. It is written
+ generally to accept some list of files, and a log path to combine them to.
+
+ Args:
+ phase_log_files (list): a list or iterator of logs to combine
+ log_path (path): the path to combine them to
+ """
+
+ with open(log_path, 'w') as log_file:
+ for phase_log_file in phase_log_files:
+ with open(phase_log_file, 'r') as phase_log:
+ log_file.write(phase_log.read())
+
+
def dump_packages(spec, path):
"""
Dump all package information for a spec and its dependencies.
@@ -521,6 +541,12 @@ def log(pkg):
# Archive the whole stdout + stderr for the package
fs.install(pkg.log_path, pkg.install_log_path)
+ # Archive all phase log paths
+ for phase_log in pkg.phase_log_files:
+ log_file = os.path.basename(phase_log)
+ log_file = os.path.join(os.path.dirname(packages_dir), log_file)
+ fs.install(phase_log, log_file)
+
# Archive the environment used for the build
fs.install(pkg.env_path, pkg.install_env_path)
@@ -1250,8 +1276,8 @@ class PackageInstaller(object):
task (BuildTask): the installation build task for a package
"""
if task.status not in [STATUS_INSTALLED, STATUS_INSTALLING]:
- tty.msg('{0} {1}'.format(install_msg(task.pkg_id, self.pid),
- 'in progress by another process'))
+ tty.debug('{0} {1}'.format(install_msg(task.pkg_id, self.pid),
+ 'in progress by another process'))
new_task = task.next_attempt(self.installed)
new_task.status = STATUS_INSTALLING
@@ -1260,6 +1286,7 @@ class PackageInstaller(object):
def _setup_install_dir(self, pkg):
"""
Create and ensure proper access controls for the install directory.
+ Write a small metadata file with the current spack environment.
Args:
pkg (Package): the package to be built and installed
@@ -1285,6 +1312,9 @@ class PackageInstaller(object):
# Ensure the metadata path exists as well
fs.mkdirp(spack.store.layout.metadata_path(pkg.spec), mode=perms)
+ # Always write host environment - we assume this can change
+ spack.store.layout.write_host_environment(pkg.spec)
+
def _update_failed(self, task, mark=False, exc=None):
"""
Update the task and transitive dependents as failed; optionally mark
@@ -1388,8 +1418,8 @@ class PackageInstaller(object):
Args:
pkg (Package): the package to be built and installed"""
- self._init_queue()
+ self._init_queue()
fail_fast_err = 'Terminating after first install failure'
single_explicit_spec = len(self.build_requests) == 1
failed_explicits = []
@@ -1400,12 +1430,12 @@ class PackageInstaller(object):
if task is None:
continue
+ spack.hooks.on_install_start(task.request.pkg.spec)
install_args = task.request.install_args
keep_prefix = install_args.get('keep_prefix')
pkg, pkg_id, spec = task.pkg, task.pkg_id, task.pkg.spec
tty.verbose('Processing {0}: task={1}'.format(pkg_id, task))
-
# Ensure that the current spec has NO uninstalled dependencies,
# which is assumed to be reflected directly in its priority.
#
@@ -1423,6 +1453,10 @@ class PackageInstaller(object):
tty.warn('{0} does NOT actually have any uninstalled deps'
' left'.format(pkg_id))
dep_str = 'dependencies' if task.priority > 1 else 'dependency'
+
+ # Hook to indicate task failure, but without an exception
+ spack.hooks.on_install_failure(task.request.pkg.spec)
+
raise InstallError(
'Cannot proceed with {0}: {1} uninstalled {2}: {3}'
.format(pkg_id, task.priority, dep_str,
@@ -1442,6 +1476,11 @@ class PackageInstaller(object):
tty.warn('{0} failed to install'.format(pkg_id))
self._update_failed(task)
+ # Mark that the package failed
+ # TODO: this should also be for the task.pkg, but we don't
+ # model transitive yet.
+ spack.hooks.on_install_failure(task.request.pkg.spec)
+
if self.fail_fast:
raise InstallError(fail_fast_err)
@@ -1543,7 +1582,7 @@ class PackageInstaller(object):
(stop_before_phase is None and last_phase is None)
except spack.directory_layout.InstallDirectoryAlreadyExistsError \
- as err:
+ as exc:
tty.debug('Install prefix for {0} exists, keeping {1} in '
'place.'.format(pkg.name, pkg.prefix))
self._update_installed(task)
@@ -1551,10 +1590,11 @@ class PackageInstaller(object):
# Only terminate at this point if a single build request was
# made.
if task.explicit and single_explicit_spec:
+ spack.hooks.on_install_failure(task.request.pkg.spec)
raise
if task.explicit:
- exists_errors.append((pkg_id, str(err)))
+ exists_errors.append((pkg_id, str(exc)))
except KeyboardInterrupt as exc:
# The build has been terminated with a Ctrl-C so terminate
@@ -1562,10 +1602,12 @@ class PackageInstaller(object):
err = 'Failed to install {0} due to {1}: {2}'
tty.error(err.format(pkg.name, exc.__class__.__name__,
str(exc)))
+ spack.hooks.on_install_failure(task.request.pkg.spec)
raise
except (Exception, SystemExit) as exc:
self._update_failed(task, True, exc)
+ spack.hooks.on_install_failure(task.request.pkg.spec)
# Best effort installs suppress the exception and mark the
# package as a failure.
@@ -1610,15 +1652,22 @@ class PackageInstaller(object):
self._cleanup_all_tasks()
# Ensure we properly report if one or more explicit specs failed
- if exists_errors or failed_explicits:
+ # or were not installed when should have been.
+ missing = [request.pkg_id for request in self.build_requests if
+ request.install_args.get('install_package') and
+ request.pkg_id not in self.installed]
+ if exists_errors or failed_explicits or missing:
for pkg_id, err in exists_errors:
tty.error('{0}: {1}'.format(pkg_id, err))
for pkg_id, err in failed_explicits:
tty.error('{0}: {1}'.format(pkg_id, err))
+ for pkg_id in missing:
+ tty.error('{0}: Package was not installed'.format(pkg_id))
+
raise InstallError('Installation request failed. Refer to '
- 'recent errors for specific package(s).')
+ 'reported errors for failing package(s).')
def build_process(pkg, kwargs):
@@ -1656,6 +1705,7 @@ def build_process(pkg, kwargs):
echo = spack.package.PackageBase._verbose
pkg.stage.keep = keep_stage
+
with pkg.stage:
# Run the pre-install hook in the child process after
# the directory is created.
@@ -1673,6 +1723,7 @@ def build_process(pkg, kwargs):
# Do the real install in the source directory.
with fs.working_dir(pkg.stage.source_path):
+
# Save the build environment in a file before building.
dump_environment(pkg.env_path)
@@ -1693,25 +1744,48 @@ def build_process(pkg, kwargs):
debug_level = tty.debug_level()
# Spawn a daemon that reads from a pipe and redirects
- # everything to log_path
- with log_output(pkg.log_path, echo, True,
- env=unmodified_env) as logger:
+ # everything to log_path, and provide the phase for logging
+ for i, (phase_name, phase_attr) in enumerate(zip(
+ pkg.phases, pkg._InstallPhase_phases)):
- for phase_name, phase_attr in zip(
- pkg.phases, pkg._InstallPhase_phases):
+ # Keep a log file for each phase
+ log_dir = os.path.dirname(pkg.log_path)
+ log_file = "spack-build-%02d-%s-out.txt" % (
+ i + 1, phase_name.lower()
+ )
+ log_file = os.path.join(log_dir, log_file)
- with logger.force_echo():
- inner_debug_level = tty.debug_level()
- tty.set_debug(debug_level)
- tty.msg("{0} Executing phase: '{1}'"
- .format(pre, phase_name))
- tty.set_debug(inner_debug_level)
+ try:
+ # DEBUGGING TIP - to debug this section, insert an IPython
+ # embed here, and run the sections below without log capture
+ with log_output(log_file, echo, True,
+ env=unmodified_env) as logger:
- # Redirect stdout and stderr to daemon pipe
- phase = getattr(pkg, phase_attr)
- phase(pkg.spec, pkg.prefix)
+ with logger.force_echo():
+ inner_debug_level = tty.debug_level()
+ tty.set_debug(debug_level)
+ tty.msg("{0} Executing phase: '{1}'"
+ .format(pre, phase_name))
+ tty.set_debug(inner_debug_level)
- echo = logger.echo
+ # Redirect stdout and stderr to daemon pipe
+ phase = getattr(pkg, phase_attr)
+
+ # Catch any errors to report to logging
+
+ phase(pkg.spec, pkg.prefix)
+ spack.hooks.on_phase_success(pkg, phase_name, log_file)
+
+ except BaseException:
+ combine_phase_logs(pkg.phase_log_files, pkg.log_path)
+ spack.hooks.on_phase_error(pkg, phase_name, log_file)
+ raise
+
+ # We assume loggers share echo True/False
+ echo = logger.echo
+
+ # After log, we can get all output/error files from the package stage
+ combine_phase_logs(pkg.phase_log_files, pkg.log_path)
log(pkg)
# Run post install hooks before build stage is removed.
@@ -1721,13 +1795,15 @@ def build_process(pkg, kwargs):
pkg._total_time = time.time() - start_time
build_time = pkg._total_time - pkg._fetch_time
- tty.debug('{0} Successfully installed {1}'
- .format(pre, pkg_id),
- 'Fetch: {0}. Build: {1}. Total: {2}.'
- .format(_hms(pkg._fetch_time), _hms(build_time),
- _hms(pkg._total_time)))
+ tty.msg('{0} Successfully installed {1}'.format(pre, pkg_id),
+ 'Fetch: {0}. Build: {1}. Total: {2}.'
+ .format(_hms(pkg._fetch_time), _hms(build_time),
+ _hms(pkg._total_time)))
_print_installed_pkg(pkg.prefix)
+ # Send final status that install is successful
+ spack.hooks.on_install_success(pkg.spec)
+
# preserve verbosity across runs
return echo
@@ -2013,7 +2089,8 @@ class BuildRequest(object):
(tuple) required dependency type(s) for the package
"""
deptypes = ['link', 'run']
- if not self.install_args.get('cache_only'):
+ include_build_deps = self.install_args.get('include_build_deps')
+ if not self.install_args.get('cache_only') or include_build_deps:
deptypes.append('build')
if self.run_tests(pkg):
deptypes.append('test')
diff --git a/lib/spack/spack/main.py b/lib/spack/spack/main.py
index f4265a5d68..6359d6dacf 100644
--- a/lib/spack/spack/main.py
+++ b/lib/spack/spack/main.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -40,7 +40,6 @@ import spack.util.path
import spack.util.executable as exe
from spack.error import SpackError
-
#: names of profile statistics
stat_names = pstats.Stats.sort_arg_dict_default
@@ -355,10 +354,14 @@ def make_argument_parser(**kwargs):
dest='help', action='store_const', const='long', default=None,
help="show help for all commands (same as spack help --all)")
parser.add_argument(
- '--color', action='store', default='auto',
+ '--color', action='store',
+ default=os.environ.get('SPACK_COLOR', 'auto'),
choices=('always', 'never', 'auto'),
help="when to colorize output (default: auto)")
parser.add_argument(
+ '-c', '--config', default=None, action="append", dest="config_vars",
+ help="add one or more custom, one off config settings.")
+ parser.add_argument(
'-C', '--config-scope', dest='config_scopes', action='append',
metavar='DIR', help="add a custom configuration scope")
parser.add_argument(
@@ -413,6 +416,7 @@ def make_argument_parser(**kwargs):
help="print additional output during builds")
parser.add_argument(
'--stacktrace', action='store_true',
+ default='SPACK_STACKTRACE' in os.environ,
help="add stacktraces to all printed statements")
parser.add_argument(
'-V', '--version', action='store_true',
@@ -463,6 +467,10 @@ def setup_main_options(args):
tty.warn("You asked for --insecure. Will NOT check SSL certificates.")
spack.config.set('config:verify_ssl', False, scope='command_line')
+ # Use the spack config command to handle parsing the config strings
+ for config_var in (args.config_vars or []):
+ spack.config.add(fullpath=config_var, scope="command_line")
+
# when to use color (takes always, auto, or never)
color.set_color_when(args.color)
@@ -522,6 +530,8 @@ class SpackCommand(object):
Keyword Args:
fail_on_error (optional bool): Don't raise an exception on error
+ global_args (optional list): List of global spack arguments:
+ simulates ``spack [global_args] [command] [*argv]``
Returns:
(str): combined output and error as a string
@@ -534,8 +544,10 @@ class SpackCommand(object):
self.returncode = None
self.error = None
+ prepend = kwargs['global_args'] if 'global_args' in kwargs else []
+
args, unknown = self.parser.parse_known_args(
- [self.command_name] + list(argv))
+ prepend + [self.command_name] + list(argv))
fail_on_error = kwargs.get('fail_on_error', True)
diff --git a/lib/spack/spack/mirror.py b/lib/spack/spack/mirror.py
index 045ca5ffec..cdebc7fd4e 100644
--- a/lib/spack/spack/mirror.py
+++ b/lib/spack/spack/mirror.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,9 +23,9 @@ import ruamel.yaml.error as yaml_error
from ordereddict_backport import OrderedDict
-try:
+if sys.version_info >= (3, 5):
from collections.abc import Mapping # novm
-except ImportError:
+else:
from collections import Mapping
import llnl.util.tty as tty
diff --git a/lib/spack/spack/mixins.py b/lib/spack/spack/mixins.py
index 6da12e4dce..be13e3ea3a 100644
--- a/lib/spack/spack/mixins.py
+++ b/lib/spack/spack/mixins.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,6 +8,12 @@ package.
"""
import collections
import os
+import sys
+from typing import Callable, DefaultDict, Dict, List # novm
+if sys.version_info >= (3, 5):
+ CallbackDict = DefaultDict[str, List[Callable]]
+else:
+ CallbackDict = None
import llnl.util.filesystem
@@ -26,12 +32,12 @@ class PackageMixinsMeta(type):
gets implicitly attached to the package class by calling the mixin.
"""
- _methods_to_be_added = {}
- _add_method_before = collections.defaultdict(list)
- _add_method_after = collections.defaultdict(list)
+ _methods_to_be_added = {} # type: Dict[str, Callable]
+ _add_method_before = collections.defaultdict(list) # type: CallbackDict
+ _add_method_after = collections.defaultdict(list) # type: CallbackDict
@staticmethod
- def register_method_before(fn, phase):
+ def register_method_before(fn, phase): # type: (Callable, str) -> None
"""Registers a method to be run before a certain phase.
Args:
@@ -42,7 +48,7 @@ class PackageMixinsMeta(type):
PackageMixinsMeta._add_method_before[phase].append(fn)
@staticmethod
- def register_method_after(fn, phase):
+ def register_method_after(fn, phase): # type: (Callable, str) -> None
"""Registers a method to be run after a certain phase.
Args:
diff --git a/lib/spack/spack/modules/__init__.py b/lib/spack/spack/modules/__init__.py
index 2fb4d94b05..b65260277f 100644
--- a/lib/spack/spack/modules/__init__.py
+++ b/lib/spack/spack/modules/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/modules/common.py b/lib/spack/spack/modules/common.py
index cbc064520c..ed843e03af 100644
--- a/lib/spack/spack/modules/common.py
+++ b/lib/spack/spack/modules/common.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -34,6 +34,7 @@ import datetime
import inspect
import os.path
import re
+from typing import Optional # novm
import llnl.util.filesystem
from llnl.util.lang import dedupe
@@ -540,7 +541,7 @@ class BaseFileLayout(object):
"""
#: This needs to be redefined
- extension = None
+ extension = None # type: Optional[str]
def __init__(self, configuration):
self.conf = configuration
diff --git a/lib/spack/spack/modules/lmod.py b/lib/spack/spack/modules/lmod.py
index 80f6933063..bb4476a7b0 100644
--- a/lib/spack/spack/modules/lmod.py
+++ b/lib/spack/spack/modules/lmod.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,6 +8,7 @@ import os.path
import llnl.util.lang as lang
import itertools
import collections
+from typing import Dict, Any # novm
import spack.config
import spack.compilers
@@ -26,7 +27,7 @@ def configuration():
#: Caches the configuration {spec_hash: configuration}
-configuration_registry = {}
+configuration_registry = {} # type: Dict[str, Any]
def make_configuration(spec):
diff --git a/lib/spack/spack/modules/tcl.py b/lib/spack/spack/modules/tcl.py
index 0efc6332fe..e1d2ac7fe3 100644
--- a/lib/spack/spack/modules/tcl.py
+++ b/lib/spack/spack/modules/tcl.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,6 +8,7 @@ non-hierarchical modules.
"""
import os.path
import string
+from typing import Dict, Any # novm
import llnl.util.tty as tty
@@ -24,7 +25,7 @@ def configuration():
#: Caches the configuration {spec_hash: configuration}
-configuration_registry = {}
+configuration_registry = {} # type: Dict[str, Any]
def make_configuration(spec):
diff --git a/lib/spack/spack/monitor.py b/lib/spack/spack/monitor.py
new file mode 100644
index 0000000000..5d6246ebf1
--- /dev/null
+++ b/lib/spack/spack/monitor.py
@@ -0,0 +1,522 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+"""Interact with a Spack Monitor Service. Derived from
+https://github.com/spack/spack-monitor/blob/main/script/spackmoncli.py
+"""
+
+import base64
+import os
+import re
+
+try:
+ from urllib.request import Request, urlopen
+ from urllib.error import URLError
+except ImportError:
+ from urllib2 import urlopen, Request, URLError # type: ignore # novm
+
+import spack
+import spack.hash_types as ht
+import spack.main
+import spack.store
+import spack.util.spack_json as sjson
+import spack.util.spack_yaml as syaml
+import llnl.util.tty as tty
+from copy import deepcopy
+
+
+# A global client to instantiate once
+cli = None
+
+
+def get_client(host, prefix="ms1", disable_auth=False, allow_fail=False, tags=None):
+ """
+ Get a monitor client for a particular host and prefix.
+
+ If the client is not running, we exit early, unless allow_fail is set
+ to true, indicating that we should continue the build even if the
+ server is not present. Note that this client is defined globally as "cli"
+ so we can istantiate it once (checking for credentials, etc.) and then
+ always have access to it via spack.monitor.cli. Also note that
+ typically, we call the monitor by way of hooks in spack.hooks.monitor.
+ So if you want the monitor to have a new interaction with some part of
+ the codebase, it's recommended to write a hook first, and then have
+ the monitor use it.
+ """
+ global cli
+ cli = SpackMonitorClient(host=host, prefix=prefix, allow_fail=allow_fail,
+ tags=tags)
+
+ # If we don't disable auth, environment credentials are required
+ if not disable_auth:
+ cli.require_auth()
+
+ # We will exit early if the monitoring service is not running
+ info = cli.service_info()
+
+ # If we allow failure, the response will be done
+ if info:
+ tty.debug("%s v.%s has status %s" % (
+ info['id'],
+ info['version'],
+ info['status'])
+ )
+ return cli
+
+ else:
+ tty.debug("spack-monitor server not found, continuing as allow_fail is True.")
+
+
+def get_monitor_group(subparser):
+ """
+ Retrieve the monitor group for the argument parser.
+
+ Since the monitor group is shared between commands, we provide a common
+ function to generate the group for it. The user can pass the subparser, and
+ the group is added, and returned.
+ """
+ # Monitoring via https://github.com/spack/spack-monitor
+ monitor_group = subparser.add_argument_group()
+ monitor_group.add_argument(
+ '--monitor', action='store_true', dest='use_monitor', default=False,
+ help="interact with a montor server during builds.")
+ monitor_group.add_argument(
+ '--monitor-no-auth', action='store_true', dest='monitor_disable_auth',
+ default=False, help="the monitoring server does not require auth.")
+ monitor_group.add_argument(
+ '--monitor-tags', dest='monitor_tags', default=None,
+ help="One or more (comma separated) tags for a build.")
+ monitor_group.add_argument(
+ '--monitor-keep-going', action='store_true', dest='monitor_keep_going',
+ default=False, help="continue the build if a request to monitor fails.")
+ monitor_group.add_argument(
+ '--monitor-host', dest='monitor_host', default="http://127.0.0.1",
+ help="If using a monitor, customize the host.")
+ monitor_group.add_argument(
+ '--monitor-prefix', dest='monitor_prefix', default="ms1",
+ help="The API prefix for the monitor service.")
+ return monitor_group
+
+
+class SpackMonitorClient:
+ """Client to interact with a spack monitor server.
+
+ We require the host url, along with the prefix to discover the
+ service_info endpoint. If allow_fail is set to True, we will not exit
+ on error with tty.die given that a request is not successful. The spack
+ version is one of the fields to uniquely identify a spec, so we add it
+ to the client on init.
+ """
+
+ def __init__(self, host=None, prefix="ms1", allow_fail=False, tags=None):
+ self.host = host or "http://127.0.0.1"
+ self.baseurl = "%s/%s" % (self.host, prefix.strip("/"))
+ self.token = os.environ.get("SPACKMON_TOKEN")
+ self.username = os.environ.get("SPACKMON_USER")
+ self.headers = {}
+ self.allow_fail = allow_fail
+ self.spack_version = spack.main.get_version()
+ self.capture_build_environment()
+ self.tags = tags
+
+ # We keey lookup of build_id by full_hash
+ self.build_ids = {}
+
+ def load_build_environment(self, spec):
+ """
+ Load a build environment from install_environment.json.
+
+ If we are running an analyze command, we will need to load previously
+ used build environment metadata from install_environment.json to capture
+ what was done during the build.
+ """
+ if not hasattr(spec, "package") or not spec.package:
+ tty.die("A spec must have a package to load the environment.")
+
+ pkg_dir = os.path.dirname(spec.package.install_log_path)
+ env_file = os.path.join(pkg_dir, "install_environment.json")
+ build_environment = read_json(env_file)
+ if not build_environment:
+ tty.warning(
+ "install_environment.json not found in package folder. "
+ " This means that the current environment metadata will be used."
+ )
+ else:
+ self.build_environment = build_environment
+
+ def capture_build_environment(self):
+ """
+ Capture the environment for the build.
+
+ This uses spack.util.environment.get_host_environment_metadata to do so.
+ This is important because it's a unique identifier, along with the spec,
+ for a Build. It should look something like this:
+
+ {'host_os': 'ubuntu20.04',
+ 'platform': 'linux',
+ 'host_target': 'skylake',
+ 'hostname': 'vanessa-ThinkPad-T490s',
+ 'spack_version': '0.16.1-1455-52d5b55b65',
+ 'kernel_version': '#73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021'}
+
+ This is saved to a package install's metadata folder as
+ install_environment.json, and can be loaded by the monitor for uploading
+ data relevant to a later analysis.
+ """
+ from spack.util.environment import get_host_environment_metadata
+ self.build_environment = get_host_environment_metadata()
+
+ def require_auth(self):
+ """
+ Require authentication.
+
+ The token and username must not be unset
+ """
+ if not self.token or not self.username:
+ tty.die("You are required to export SPACKMON_TOKEN and SPACKMON_USER")
+
+ def set_header(self, name, value):
+ self.headers.update({name: value})
+
+ def set_basic_auth(self, username, password):
+ """
+ A wrapper to adding basic authentication to the Request
+ """
+ auth_str = "%s:%s" % (username, password)
+ auth_header = base64.b64encode(auth_str.encode("utf-8"))
+ self.set_header("Authorization", "Basic %s" % auth_header.decode("utf-8"))
+
+ def reset(self):
+ """
+ Reset and prepare for a new request.
+ """
+ if "Authorization" in self.headers:
+ self.headers = {"Authorization": self.headers['Authorization']}
+ else:
+ self.headers = {}
+
+ def prepare_request(self, endpoint, data, headers):
+ """
+ Prepare a request given an endpoint, data, and headers.
+
+ If data is provided, urllib makes the request a POST
+ """
+ # Always reset headers for new request.
+ self.reset()
+
+ # Preserve previously used auth token
+ headers = headers or self.headers
+
+ # The calling function can provide a full or partial url
+ if not endpoint.startswith("http"):
+ endpoint = "%s/%s" % (self.baseurl, endpoint)
+
+ # If we have data, the request will be POST
+ if data:
+ if not isinstance(data, str):
+ data = sjson.dump(data)
+ data = data.encode('ascii')
+
+ return Request(endpoint, data=data, headers=headers)
+
+ def issue_request(self, request, retry=True):
+ """
+ Given a prepared request, issue it.
+
+ If we get an error, die. If
+ there are times when we don't want to exit on error (but instead
+ disable using the monitoring service) we could add that here.
+ """
+ try:
+ response = urlopen(request)
+ except URLError as e:
+
+ # If we have an authorization request, retry once with auth
+ if hasattr(e, "code") and e.code == 401 and retry:
+ if self.authenticate_request(e):
+ request = self.prepare_request(
+ e.url,
+ sjson.load(request.data.decode('utf-8')),
+ self.headers
+ )
+ return self.issue_request(request, False)
+
+ # Otherwise, relay the message and exit on error
+ msg = ""
+ if hasattr(e, 'reason'):
+ msg = e.reason
+ elif hasattr(e, 'code'):
+ msg = e.code
+
+ if self.allow_fail:
+ tty.warning("Request to %s was not successful, but continuing." % e.url)
+ return
+
+ tty.die(msg)
+
+ return response
+
+ def do_request(self, endpoint, data=None, headers=None, url=None):
+ """
+ Do the actual request.
+
+ If data is provided, it is POST, otherwise GET.
+ If an entire URL is provided, don't use the endpoint
+ """
+ request = self.prepare_request(endpoint, data, headers)
+
+ # If we have an authorization error, we retry with
+ response = self.issue_request(request)
+
+ # A 200/201 response incidates success
+ if response.code in [200, 201]:
+ return sjson.load(response.read().decode('utf-8'))
+
+ return response
+
+ def authenticate_request(self, originalResponse):
+ """
+ Authenticate the request.
+
+ Given a response (an HTTPError 401), look for a Www-Authenticate
+ header to parse. We return True/False to indicate if the request
+ should be retried.
+ """
+ authHeaderRaw = originalResponse.headers.get("Www-Authenticate")
+ if not authHeaderRaw:
+ return False
+
+ # If we have a username and password, set basic auth automatically
+ if self.token and self.username:
+ self.set_basic_auth(self.username, self.token)
+
+ headers = deepcopy(self.headers)
+ if "Authorization" not in headers:
+ tty.error(
+ "This endpoint requires a token. Please set "
+ "client.set_basic_auth(username, password) first "
+ "or export them to the environment."
+ )
+ return False
+
+ # Prepare request to retry
+ h = parse_auth_header(authHeaderRaw)
+ headers.update({
+ "service": h.Service,
+ "Accept": "application/json",
+ "User-Agent": "spackmoncli"}
+ )
+
+ # Currently we don't set a scope (it defaults to build)
+ authResponse = self.do_request(h.Realm, headers=headers)
+
+ # Request the token
+ token = authResponse.get("token")
+ if not token:
+ return False
+
+ # Set the token to the original request and retry
+ self.headers.update({"Authorization": "Bearer %s" % token})
+ return True
+
+ # Functions correspond to endpoints
+ def service_info(self):
+ """
+ Get the service information endpoint
+ """
+ # Base endpoint provides service info
+ return self.do_request("")
+
+ def new_configuration(self, specs):
+ """
+ Given a list of specs, generate a new configuration for each.
+
+ We return a lookup of specs with their package names. This assumes
+ that we are only installing one version of each package. We aren't
+ starting or creating any builds, so we don't need a build environment.
+ """
+ configs = {}
+
+ # There should only be one spec generally (what cases would have >1?)
+ for spec in specs:
+ # Not sure if this is needed here, but I see it elsewhere
+ if spec.name in spack.repo.path or spec.virtual:
+ spec.concretize()
+ as_dict = {"spec": spec.to_dict(hash=ht.full_hash),
+ "spack_version": self.spack_version}
+ response = self.do_request("specs/new/", data=sjson.dump(as_dict))
+ configs[spec.package.name] = response.get('data', {})
+ return configs
+
+ def new_build(self, spec):
+ """
+ Create a new build.
+
+ This means sending the hash of the spec to be built,
+ along with the build environment. These two sets of data uniquely can
+ identify the build, and we will add objects (the binaries produced) to
+ it. We return the build id to the calling client.
+ """
+ return self.get_build_id(spec, return_response=True)
+
+ def get_build_id(self, spec, return_response=False, spec_exists=True):
+ """
+ Retrieve a build id, either in the local cache, or query the server.
+ """
+ full_hash = spec.full_hash()
+ if full_hash in self.build_ids:
+ return self.build_ids[full_hash]
+
+ # Prepare build environment data (including spack version)
+ data = self.build_environment.copy()
+ data['full_hash'] = full_hash
+
+ # If the build should be tagged, add it
+ if self.tags:
+ data['tags'] = self.tags
+
+ # If we allow the spec to not exist (meaning we create it) we need to
+ # include the full spec.yaml here
+ if not spec_exists:
+ meta_dir = os.path.dirname(spec.package.install_log_path)
+ spec_file = os.path.join(meta_dir, "spec.yaml")
+ data['spec'] = syaml.load(read_file(spec_file))
+
+ response = self.do_request("builds/new/", data=sjson.dump(data))
+
+ # Add the build id to the lookup
+ bid = self.build_ids[full_hash] = response['data']['build']['build_id']
+ self.build_ids[full_hash] = bid
+
+ # If the function is called directly, the user might want output
+ if return_response:
+ return response
+ return bid
+
+ def update_build(self, spec, status="SUCCESS"):
+ """
+ Update a build with a new status.
+
+ This typically updates the relevant package to indicate a
+ successful install. This endpoint can take a general status to update.
+ """
+ data = {"build_id": self.get_build_id(spec), "status": status}
+ return self.do_request("builds/update/", data=sjson.dump(data))
+
+ def fail_task(self, spec):
+ """Given a spec, mark it as failed. This means that Spack Monitor
+ marks all dependencies as cancelled, unless they are already successful
+ """
+ return self.update_build(spec, status="FAILED")
+
+ def send_analyze_metadata(self, pkg, metadata):
+ """
+ Send spack analyzer metadata to the spack monitor server.
+
+ Given a dictionary of analyzers (with key as analyzer type, and
+ value as the data) upload the analyzer output to Spack Monitor.
+ Spack Monitor should either have a known understanding of the analyzer,
+ or if not (the key is not recognized), it's assumed to be a dictionary
+ of objects/files, each with attributes to be updated. E.g.,
+
+ {"analyzer-name": {"object-file-path": {"feature1": "value1"}}}
+ """
+ # Prepare build environment data (including spack version)
+ # Since the build might not have been generated, we include the spec
+ data = {"build_id": self.get_build_id(pkg.spec, spec_exists=False),
+ "metadata": metadata}
+ return self.do_request("analyze/builds/", data=sjson.dump(data))
+
+ def send_phase(self, pkg, phase_name, phase_output_file, status):
+ """
+ Send the result of a phase during install.
+
+ Given a package, phase name, and status, update the monitor endpoint
+ to alert of the status of the stage. This includes parsing the package
+ metadata folder for phase output and error files
+ """
+ data = {"build_id": self.get_build_id(pkg.spec)}
+
+ # Send output specific to the phase (does this include error?)
+ data.update({"status": status,
+ "output": read_file(phase_output_file),
+ "phase_name": phase_name})
+
+ return self.do_request("builds/phases/update/", data=sjson.dump(data))
+
+ def upload_specfile(self, filename):
+ """
+ Upload a spec file to the spack monitor server.
+
+ Given a spec file (must be json) upload to the UploadSpec endpoint.
+ This function is not used in the spack to server workflow, but could
+ be useful is Spack Monitor is intended to send an already generated
+ file in some kind of separate analysis. For the environment file, we
+ parse out SPACK_* variables to include.
+ """
+ # We load as json just to validate it
+ spec = read_json(filename)
+ data = {"spec": spec, "spack_verison": self.spack_version}
+ return self.do_request("specs/new/", data=sjson.dump(data))
+
+
+# Helper functions
+
+def parse_auth_header(authHeaderRaw):
+ """
+ Parse an authentication header into relevant pieces
+ """
+ regex = re.compile('([a-zA-z]+)="(.+?)"')
+ matches = regex.findall(authHeaderRaw)
+ lookup = dict()
+ for match in matches:
+ lookup[match[0]] = match[1]
+ return authHeader(lookup)
+
+
+class authHeader:
+ def __init__(self, lookup):
+ """Given a dictionary of values, match them to class attributes"""
+ for key in lookup:
+ if key in ["realm", "service", "scope"]:
+ setattr(self, key.capitalize(), lookup[key])
+
+
+def read_file(filename):
+ """
+ Read a file, if it exists. Otherwise return None
+ """
+ if not os.path.exists(filename):
+ return
+ with open(filename, 'r') as fd:
+ content = fd.read()
+ return content
+
+
+def write_file(content, filename):
+ """
+ Write content to file
+ """
+ with open(filename, 'w') as fd:
+ fd.writelines(content)
+ return content
+
+
+def write_json(obj, filename):
+ """
+ Write a json file, if the output directory exists.
+ """
+ if not os.path.exists(os.path.dirname(filename)):
+ return
+ return write_file(sjson.dump(obj), filename)
+
+
+def read_json(filename):
+ """
+ Read a file and load into json, if it exists. Otherwise return None.
+ """
+ if not os.path.exists(filename):
+ return
+ return sjson.load(read_file(filename))
diff --git a/lib/spack/spack/multimethod.py b/lib/spack/spack/multimethod.py
index 73cf342b5b..d9fe6882b9 100644
--- a/lib/spack/spack/multimethod.py
+++ b/lib/spack/spack/multimethod.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/operating_systems/__init__.py b/lib/spack/spack/operating_systems/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/operating_systems/__init__.py
+++ b/lib/spack/spack/operating_systems/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/operating_systems/cray_backend.py b/lib/spack/spack/operating_systems/cray_backend.py
index 5f113eba0b..0e59361d70 100644
--- a/lib/spack/spack/operating_systems/cray_backend.py
+++ b/lib/spack/spack/operating_systems/cray_backend.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/operating_systems/cray_frontend.py b/lib/spack/spack/operating_systems/cray_frontend.py
index d06920af43..820db506cb 100644
--- a/lib/spack/spack/operating_systems/cray_frontend.py
+++ b/lib/spack/spack/operating_systems/cray_frontend.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/operating_systems/linux_distro.py b/lib/spack/spack/operating_systems/linux_distro.py
index a6608e6d3b..b1901fc41c 100644
--- a/lib/spack/spack/operating_systems/linux_distro.py
+++ b/lib/spack/spack/operating_systems/linux_distro.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/operating_systems/mac_os.py b/lib/spack/spack/operating_systems/mac_os.py
index 0efc298338..de9bcf659d 100644
--- a/lib/spack/spack/operating_systems/mac_os.py
+++ b/lib/spack/spack/operating_systems/mac_os.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/package.py b/lib/spack/spack/package.py
index 8aa86098e2..b24f6bf113 100644
--- a/lib/spack/spack/package.py
+++ b/lib/spack/spack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ import collections
import contextlib
import copy
import functools
+import glob
import hashlib
import inspect
import os
@@ -26,6 +27,7 @@ import time
import traceback
import six
import types
+from typing import Optional, List, Dict, Any, Callable # novm
import llnl.util.filesystem as fsys
import llnl.util.tty as tty
@@ -253,8 +255,9 @@ class PackageMeta(
"""
phase_fmt = '_InstallPhase_{0}'
- _InstallPhase_run_before = {}
- _InstallPhase_run_after = {}
+ # These are accessed only through getattr, by name
+ _InstallPhase_run_before = {} # type: Dict[str, List[Callable]]
+ _InstallPhase_run_after = {} # type: Dict[str, List[Callable]]
def __new__(cls, name, bases, attr_dict):
"""
@@ -555,7 +558,7 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
#: A list or set of build time test functions to be called when tests
#: are executed or 'None' if there are no such test functions.
- build_time_test_callbacks = None
+ build_time_test_callbacks = None # type: Optional[List[str]]
#: By default, packages are not virtual
#: Virtual packages override this attribute
@@ -567,7 +570,7 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
#: A list or set of install time test functions to be called when tests
#: are executed or 'None' if there are no such test functions.
- install_time_test_callbacks = None
+ install_time_test_callbacks = None # type: Optional[List[str]]
#: By default we build in parallel. Subclasses can override this.
parallel = True
@@ -589,19 +592,19 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
#: List of prefix-relative file paths (or a single path). If these do
#: not exist after install, or if they exist but are not files,
#: sanity checks fail.
- sanity_check_is_file = []
+ sanity_check_is_file = [] # type: List[str]
#: List of prefix-relative directory paths (or a single path). If
#: these do not exist after install, or if they exist but are not
#: directories, sanity checks will fail.
- sanity_check_is_dir = []
+ sanity_check_is_dir = [] # type: List[str]
#: List of glob expressions. Each expression must either be
#: absolute or relative to the package source path.
#: Matching artifacts found at the end of the build process will be
#: copied in the same directory tree as _spack_build_logfile and
#: _spack_build_envfile.
- archive_files = []
+ archive_files = [] # type: List[str]
#: Boolean. Set to ``True`` for packages that require a manual download.
#: This is currently used by package sanity tests and generation of a
@@ -609,7 +612,7 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
manual_download = False
#: Set of additional options used when fetching package versions.
- fetch_options = {}
+ fetch_options = {} # type: Dict[str, Any]
#
# Set default licensing information
@@ -627,12 +630,12 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
#: looking for a license. All file paths must be relative to the
#: installation directory. More complex packages like Intel may require
#: multiple licenses for individual components. Defaults to the empty list.
- license_files = []
+ license_files = [] # type: List[str]
#: List of strings. Environment variables that can be set to tell the
#: software where to look for a license if it is not in the usual location.
#: Defaults to the empty list.
- license_vars = []
+ license_vars = [] # type: List[str]
#: String. A URL pointing to license setup instructions for the software.
#: Defaults to the empty string.
@@ -644,9 +647,18 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
#: index of patches by sha256 sum, built lazily
_patches_by_hash = None
+ #: Package homepage where users can find more information about the package
+ homepage = None # type: str
+
+ #: Default list URL (place to find available versions)
+ list_url = None # type: str
+
+ #: Link depth to which list_url should be searched for new versions
+ list_depth = 0
+
#: List of strings which contains GitHub usernames of package maintainers.
#: Do not include @ here in order not to unnecessarily ping the users.
- maintainers = []
+ maintainers = [] # type: List[str]
#: List of attributes to be excluded from a package's hash.
metadata_attrs = ['homepage', 'url', 'urls', 'list_url', 'extendable',
@@ -681,13 +693,6 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
msg += " [package '{0.name}' defines both]"
raise ValueError(msg.format(self))
- # Set a default list URL (place to find available versions)
- if not hasattr(self, 'list_url'):
- self.list_url = None
-
- if not hasattr(self, 'list_depth'):
- self.list_depth = 0
-
# init internal variables
self._stage = None
self._fetcher = None
@@ -1063,6 +1068,14 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
return os.path.join(self.stage.path, _spack_build_logfile)
@property
+ def phase_log_files(self):
+ """Find sorted phase log files written to the staging directory"""
+ logs_dir = os.path.join(self.stage.path, "spack-build-*-out.txt")
+ log_files = glob.glob(logs_dir)
+ log_files.sort()
+ return log_files
+
+ @property
def install_log_path(self):
"""Return the build log file path on successful installation."""
# Backward compatibility: Return the name of an existing install log.
@@ -1305,7 +1318,6 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
tty.debug('No fetch required for {0}: package has no code.'
.format(self.name))
- start_time = time.time()
checksum = spack.config.get('config:checksum')
fetch = self.stage.managed_by_spack
if checksum and fetch and self.version not in self.versions:
@@ -1327,8 +1339,34 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
raise FetchError("Will not fetch %s" %
self.spec.format('{name}{@version}'), ck_msg)
+ deprecated = spack.config.get('config:deprecated')
+ if not deprecated and self.versions.get(
+ self.version, {}).get('deprecated', False):
+ tty.warn("{0} is deprecated and may be removed in a future Spack "
+ "release.".format(
+ self.spec.format('{name}{@version}')))
+
+ # Ask the user whether to install deprecated version if we're
+ # interactive, but just fail if non-interactive.
+ dp_msg = ("If you are willing to be a maintainer for this version "
+ "of the package, submit a PR to remove `deprecated=False"
+ "`, or use `--deprecated` to skip this check.")
+ ignore_deprecation = False
+ if sys.stdout.isatty():
+ ignore_deprecation = tty.get_yes_or_no(" Fetch anyway?",
+ default=False)
+
+ if ignore_deprecation:
+ tty.debug("Fetching deprecated version. {0}".format(
+ dp_msg))
+
+ if not ignore_deprecation:
+ raise FetchError("Will not fetch {0}".format(
+ self.spec.format('{name}{@version}')), dp_msg)
+
self.stage.create()
err_msg = None if not self.manual_download else self.download_instr
+ start_time = time.time()
self.stage.fetch(mirror_only, err_msg=err_msg)
self._fetch_time = time.time() - start_time
@@ -1375,7 +1413,7 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
# If there are no patches, note it.
if not patches and not has_patch_fun:
- tty.debug('No patches needed for {0}'.format(self.name))
+ tty.msg('No patches needed for {0}'.format(self.name))
return
# Construct paths to special files in the archive dir used to
@@ -1393,10 +1431,10 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
# If this file exists, then we already applied all the patches.
if os.path.isfile(good_file):
- tty.debug('Already patched {0}'.format(self.name))
+ tty.msg('Already patched {0}'.format(self.name))
return
elif os.path.isfile(no_patches_file):
- tty.debug('No patches needed for {0}'.format(self.name))
+ tty.msg('No patches needed for {0}'.format(self.name))
return
# Apply all the patches for specs that match this one
@@ -1405,7 +1443,7 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
try:
with fsys.working_dir(self.stage.source_path):
patch.apply(self.stage)
- tty.debug('Applied patch {0}'.format(patch.path_or_url))
+ tty.msg('Applied patch {0}'.format(patch.path_or_url))
patched = True
except spack.error.SpackError as e:
tty.debug(e)
@@ -1419,7 +1457,7 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
try:
with fsys.working_dir(self.stage.source_path):
self.patch()
- tty.debug('Ran patch() for {0}'.format(self.name))
+ tty.msg('Ran patch() for {0}'.format(self.name))
patched = True
except spack.multimethod.NoSuchMethodError:
# We are running a multimethod without a default case.
@@ -1429,7 +1467,7 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
# directive, AND the patch function didn't apply, say
# no patches are needed. Otherwise, we already
# printed a message for each patch.
- tty.debug('No patches needed for {0}'.format(self.name))
+ tty.msg('No patches needed for {0}'.format(self.name))
except spack.error.SpackError as e:
tty.debug(e)
@@ -1497,10 +1535,16 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
hash_content.extend(':'.join((p.sha256, str(p.level))).encode('utf-8')
for p in self.spec.patches)
hash_content.append(package_hash(self.spec, content))
- return base64.b32encode(
+ b32_hash = base64.b32encode(
hashlib.sha256(bytes().join(
sorted(hash_content))).digest()).lower()
+ # convert from bytes if running python 3
+ if sys.version_info[0] >= 3:
+ b32_hash = b32_hash.decode('utf-8')
+
+ return b32_hash
+
def _has_make_target(self, target):
"""Checks to see if 'target' is a valid target in a Makefile.
@@ -1761,7 +1805,7 @@ class PackageBase(six.with_metaclass(PackageMeta, PackageViewMixin, object)):
work_dir (str or None): path to the smoke test directory
"""
wdir = '.' if work_dir is None else work_dir
- with fsys.working_dir(wdir):
+ with fsys.working_dir(wdir, create=True):
try:
runner = which(exe)
if runner is None and skip_missing:
@@ -2596,7 +2640,7 @@ class BundlePackage(PackageBase):
"""General purpose bundle, or no-code, package class."""
#: There are no phases by default but the property is required to support
#: post-install hooks (e.g., for module generation).
- phases = []
+ phases = [] # type: List[str]
#: This attribute is used in UI queries that require to know which
#: build-system class we are using
build_system_class = 'BundlePackage'
diff --git a/lib/spack/spack/package_prefs.py b/lib/spack/spack/package_prefs.py
index 149e10ea26..cf74c7ee52 100644
--- a/lib/spack/spack/package_prefs.py
+++ b/lib/spack/spack/package_prefs.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/package_test.py b/lib/spack/spack/package_test.py
index 6e9da9a985..6a4df096fc 100644
--- a/lib/spack/spack/package_test.py
+++ b/lib/spack/spack/package_test.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/parse.py b/lib/spack/spack/parse.py
index 12bbcee588..1fc853bee4 100644
--- a/lib/spack/spack/parse.py
+++ b/lib/spack/spack/parse.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/patch.py b/lib/spack/spack/patch.py
index 3a839c5b0f..d38b2ef767 100644
--- a/lib/spack/spack/patch.py
+++ b/lib/spack/spack/patch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/paths.py b/lib/spack/spack/paths.py
index 068a7a6fdb..b0ff031dd1 100644
--- a/lib/spack/spack/paths.py
+++ b/lib/spack/spack/paths.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -33,6 +33,7 @@ external_path = os.path.join(lib_path, "external")
build_env_path = os.path.join(lib_path, "env")
module_path = os.path.join(lib_path, "spack")
command_path = os.path.join(module_path, "cmd")
+analyzers_path = os.path.join(module_path, "analyzers")
platform_path = os.path.join(module_path, 'platforms')
compilers_path = os.path.join(module_path, "compilers")
build_systems_path = os.path.join(module_path, 'build_systems')
@@ -52,6 +53,8 @@ mock_packages_path = os.path.join(repos_path, "builtin.mock")
user_config_path = os.path.expanduser('~/.spack')
user_bootstrap_path = os.path.join(user_config_path, 'bootstrap')
user_bootstrap_store = os.path.join(user_bootstrap_path, 'store')
+reports_path = os.path.join(user_config_path, "reports")
+
opt_path = os.path.join(prefix, "opt")
etc_path = os.path.join(prefix, "etc")
diff --git a/lib/spack/spack/pkgkit.py b/lib/spack/spack/pkgkit.py
index 423c0fb05f..bc44d0b7b2 100644
--- a/lib/spack/spack/pkgkit.py
+++ b/lib/spack/spack/pkgkit.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,10 @@ from spack.build_systems.makefile import MakefilePackage
from spack.build_systems.aspell_dict import AspellDictPackage
from spack.build_systems.autotools import AutotoolsPackage
from spack.build_systems.cmake import CMakePackage
+from spack.build_systems.cached_cmake import (
+ CachedCMakePackage, cmake_cache_option, cmake_cache_path,
+ cmake_cache_string
+)
from spack.build_systems.cuda import CudaPackage
from spack.build_systems.oneapi import IntelOneApiPackage
from spack.build_systems.oneapi import IntelOneApiLibraryPackage
diff --git a/lib/spack/spack/platforms/__init__.py b/lib/spack/spack/platforms/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/platforms/__init__.py
+++ b/lib/spack/spack/platforms/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/platforms/cray.py b/lib/spack/spack/platforms/cray.py
index 091f8d3ffb..5eb0ee9310 100644
--- a/lib/spack/spack/platforms/cray.py
+++ b/lib/spack/spack/platforms/cray.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -169,6 +169,7 @@ class Cray(Platform):
for mod in modules:
if 'craype-' in mod:
name = mod[7:]
+ name = name.split()[0]
_n = name.replace('-', '_') # test for mic-knl/mic_knl
is_target_name = (name in archspec.cpu.TARGETS or
_n in archspec.cpu.TARGETS)
diff --git a/lib/spack/spack/platforms/darwin.py b/lib/spack/spack/platforms/darwin.py
index e36722723b..3969cc9ec8 100644
--- a/lib/spack/spack/platforms/darwin.py
+++ b/lib/spack/spack/platforms/darwin.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/platforms/linux.py b/lib/spack/spack/platforms/linux.py
index c7e1def2d9..46906229ba 100644
--- a/lib/spack/spack/platforms/linux.py
+++ b/lib/spack/spack/platforms/linux.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/platforms/test.py b/lib/spack/spack/platforms/test.py
index f938eb749d..80d9431879 100644
--- a/lib/spack/spack/platforms/test.py
+++ b/lib/spack/spack/platforms/test.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/projections.py b/lib/spack/spack/projections.py
index b91d321436..9f78e24409 100644
--- a/lib/spack/spack/projections.py
+++ b/lib/spack/spack/projections.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/provider_index.py b/lib/spack/spack/provider_index.py
index 326f6aa8f1..6a84d8f40a 100644
--- a/lib/spack/spack/provider_index.py
+++ b/lib/spack/spack/provider_index.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/relocate.py b/lib/spack/spack/relocate.py
index e1726b060e..e167472b75 100644
--- a/lib/spack/spack/relocate.py
+++ b/lib/spack/spack/relocate.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/repo.py b/lib/spack/spack/repo.py
index 1534054075..61f5e1d28c 100644
--- a/lib/spack/spack/repo.py
+++ b/lib/spack/spack/repo.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,18 +13,18 @@ import itertools
import os
import re
import shutil
+import six
import stat
import sys
import traceback
import types
+from typing import Dict # novm
-try:
+if sys.version_info >= (3, 5):
from collections.abc import Mapping # novm
-except ImportError:
+else:
from collections import Mapping
-import six
-
import ruamel.yaml as yaml
import llnl.util.lang
@@ -118,7 +118,11 @@ class SpackNamespace(types.ModuleType):
def __getattr__(self, name):
"""Getattr lazily loads modules if they're not already loaded."""
submodule = self.__package__ + '.' + name
- setattr(self, name, __import__(submodule))
+ try:
+ setattr(self, name, __import__(submodule))
+ except ImportError:
+ msg = "'{0}' object has no attribute {1}"
+ raise AttributeError(msg.format(type(self), name))
return getattr(self, name)
@@ -131,7 +135,7 @@ class FastPackageChecker(Mapping):
during instance initialization.
"""
#: Global cache, reused by every instance
- _paths_cache = {}
+ _paths_cache = {} # type: Dict[str, Dict[str, os.stat_result]]
def __init__(self, packages_path):
# The path of the repository managed by this instance
@@ -149,7 +153,7 @@ class FastPackageChecker(Mapping):
self._paths_cache[self.packages_path] = self._create_new_cache()
self._packages_to_stats = self._paths_cache[self.packages_path]
- def _create_new_cache(self):
+ def _create_new_cache(self): # type: () -> Dict[str, os.stat_result]
"""Create a new cache for packages in a repo.
The implementation here should try to minimize filesystem
@@ -159,7 +163,7 @@ class FastPackageChecker(Mapping):
"""
# Create a dictionary that will store the mapping between a
# package name and its stat info
- cache = {}
+ cache = {} # type: Dict[str, os.stat_result]
for pkg_name in os.listdir(self.packages_path):
# Skip non-directories in the package root.
pkg_dir = os.path.join(self.packages_path, pkg_name)
@@ -341,7 +345,7 @@ class PatchIndexer(Indexer):
def _create(self):
return spack.patch.PatchCache()
- def needs_update():
+ def needs_update(self):
# TODO: patches can change under a package and we should handle
# TODO: it, but we currently punt. This should be refactored to
# TODO: check whether patches changed each time a package loads,
diff --git a/lib/spack/spack/report.py b/lib/spack/spack/report.py
index ebae2d0adc..8e97d036c0 100644
--- a/lib/spack/spack/report.py
+++ b/lib/spack/spack/report.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/reporter.py b/lib/spack/spack/reporter.py
index 6314054139..629051e223 100644
--- a/lib/spack/spack/reporter.py
+++ b/lib/spack/spack/reporter.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/reporters/__init__.py b/lib/spack/spack/reporters/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/reporters/__init__.py
+++ b/lib/spack/spack/reporters/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/reporters/cdash.py b/lib/spack/spack/reporters/cdash.py
index c1a220963e..36660fa890 100644
--- a/lib/spack/spack/reporters/cdash.py
+++ b/lib/spack/spack/reporters/cdash.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,7 @@ from ordereddict_backport import OrderedDict
import spack.build_environment
import spack.fetch_strategy
import spack.package
+from spack.error import SpackError
from spack.reporter import Reporter
from spack.util.crypto import checksum
from spack.util.executable import which
@@ -60,6 +61,7 @@ class CDash(Reporter):
def __init__(self, args):
Reporter.__init__(self, args)
tty.set_verbose(args.verbose)
+ self.success = True
self.template_dir = os.path.join('reports', 'cdash')
self.cdash_upload_url = args.cdash_upload_url
@@ -159,13 +161,21 @@ class CDash(Reporter):
report_data[phase]['log'] = \
'\n'.join(report_data[phase]['loglines'])
errors, warnings = parse_log_events(report_data[phase]['loglines'])
+
+ # Convert errors to warnings if the package reported success.
+ if package['result'] == 'success':
+ warnings = errors + warnings
+ errors = []
+
# Cap the number of errors and warnings at 50 each.
errors = errors[:50]
warnings = warnings[:50]
nerrors = len(errors)
- if phase == 'configure' and nerrors > 0:
- report_data[phase]['status'] = 1
+ if nerrors > 0:
+ self.success = False
+ if phase == 'configure':
+ report_data[phase]['status'] = 1
if phase == 'build':
# Convert log output from ASCII to Unicode and escape for XML.
@@ -186,11 +196,6 @@ class CDash(Reporter):
event['source_file'])
return event
- # Convert errors to warnings if the package reported success.
- if package['result'] == 'success':
- warnings = errors + warnings
- errors = []
-
report_data[phase]['errors'] = []
report_data[phase]['warnings'] = []
for error in errors:
@@ -254,7 +259,7 @@ class CDash(Reporter):
for package in spec['packages']:
self.build_report_for_package(
directory_name, package, duration)
- self.print_cdash_link()
+ self.finalize_report()
def test_report_for_package(self, directory_name, package, duration):
if 'stdout' not in package:
@@ -360,7 +365,7 @@ class CDash(Reporter):
for package in spec['packages']:
self.test_report_for_package(
directory_name, package, duration)
- self.print_cdash_link()
+ self.finalize_report()
def concretization_report(self, directory_name, msg):
self.buildname = self.base_buildname
@@ -381,7 +386,8 @@ class CDash(Reporter):
# errors so refer to this report with the base buildname instead.
self.current_package_name = self.base_buildname
self.upload(output_filename)
- self.print_cdash_link()
+ self.success = False
+ self.finalize_report()
def initialize_report(self, directory_name):
if not os.path.exists(directory_name):
@@ -430,7 +436,7 @@ class CDash(Reporter):
buildid = match.group(1)
self.buildIds[self.current_package_name] = buildid
- def print_cdash_link(self):
+ def finalize_report(self):
if self.buildIds:
print("View your build results here:")
for package_name, buildid in iteritems(self.buildIds):
@@ -440,3 +446,5 @@ class CDash(Reporter):
build_url = build_url[0:build_url.find("submit.php")]
build_url += "buildSummary.php?buildid={0}".format(buildid)
print("{0}: {1}".format(package_name, build_url))
+ if not self.success:
+ raise SpackError("Errors encountered, see above for more details")
diff --git a/lib/spack/spack/reporters/junit.py b/lib/spack/spack/reporters/junit.py
index 598b308934..9120850c4c 100644
--- a/lib/spack/spack/reporters/junit.py
+++ b/lib/spack/spack/reporters/junit.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/resource.py b/lib/spack/spack/resource.py
index 5cec54f6de..488c6a846d 100644
--- a/lib/spack/spack/resource.py
+++ b/lib/spack/spack/resource.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/s3_handler.py b/lib/spack/spack/s3_handler.py
index 24f0a46221..d906577bed 100644
--- a/lib/spack/spack/s3_handler.py
+++ b/lib/spack/spack/s3_handler.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/__init__.py b/lib/spack/spack/schema/__init__.py
index 1ddca90cc6..804b7c989d 100644
--- a/lib/spack/spack/schema/__init__.py
+++ b/lib/spack/spack/schema/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/buildcache_spec.py b/lib/spack/spack/schema/buildcache_spec.py
index 5ba07a27f1..f1c515852c 100644
--- a/lib/spack/spack/schema/buildcache_spec.py
+++ b/lib/spack/spack/schema/buildcache_spec.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/cdash.py b/lib/spack/spack/schema/cdash.py
index 2df2ea3f32..41c0146b1d 100644
--- a/lib/spack/spack/schema/cdash.py
+++ b/lib/spack/spack/schema/cdash.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/compilers.py b/lib/spack/spack/schema/compilers.py
index c994bef819..91ace05f4e 100644
--- a/lib/spack/spack/schema/compilers.py
+++ b/lib/spack/spack/schema/compilers.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/config.py b/lib/spack/spack/schema/config.py
index 0f83eb86f4..f0669600e1 100644
--- a/lib/spack/spack/schema/config.py
+++ b/lib/spack/spack/schema/config.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -78,6 +78,7 @@ properties = {
'install_missing_compilers': {'type': 'boolean'},
'debug': {'type': 'boolean'},
'checksum': {'type': 'boolean'},
+ 'deprecated': {'type': 'boolean'},
'locks': {'type': 'boolean'},
'dirty': {'type': 'boolean'},
'build_language': {'type': 'string'},
diff --git a/lib/spack/spack/schema/container.py b/lib/spack/spack/schema/container.py
index 7e14efd75c..5223efa041 100644
--- a/lib/spack/spack/schema/container.py
+++ b/lib/spack/spack/schema/container.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/database_index.py b/lib/spack/spack/schema/database_index.py
index eec3d4ce02..105f6ad6a3 100644
--- a/lib/spack/spack/schema/database_index.py
+++ b/lib/spack/spack/schema/database_index.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/env.py b/lib/spack/spack/schema/env.py
index a7e3dc608f..82971505e4 100644
--- a/lib/spack/spack/schema/env.py
+++ b/lib/spack/spack/schema/env.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/environment.py b/lib/spack/spack/schema/environment.py
index d251aeba96..6431916c56 100644
--- a/lib/spack/spack/schema/environment.py
+++ b/lib/spack/spack/schema/environment.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -38,11 +38,12 @@ def parse(config_obj):
config_obj: a configuration dictionary conforming to the
schema definition for environment modifications
"""
+ import sys
import spack.util.environment as ev
- try:
- from collections import Sequence # novm
- except ImportError:
+ if sys.version_info >= (3, 5):
from collections.abc import Sequence # novm
+ else:
+ from collections import Sequence # novm
env = ev.EnvironmentModifications()
for command, variable in config_obj.items():
diff --git a/lib/spack/spack/schema/gitlab_ci.py b/lib/spack/spack/schema/gitlab_ci.py
index 79ffee2074..d6d8f564a3 100644
--- a/lib/spack/spack/schema/gitlab_ci.py
+++ b/lib/spack/spack/schema/gitlab_ci.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,6 +9,8 @@
:lines: 13-
"""
+from llnl.util.lang import union_dicts
+
image_schema = {
'oneOf': [
{
@@ -28,130 +30,126 @@ image_schema = {
],
}
-#: Properties for inclusion in other schemas
-properties = {
- 'gitlab-ci': {
+runner_attributes_schema_items = {
+ 'image': image_schema,
+ 'tags': {
+ 'type': 'array',
+ 'items': {'type': 'string'}
+ },
+ 'variables': {
'type': 'object',
- 'additionalProperties': False,
- 'required': ['mappings'],
'patternProperties': {
- 'bootstrap': {
- 'type': 'array',
- 'items': {
- 'anyOf': [
- {
- 'type': 'string',
- }, {
- 'type': 'object',
- 'additionalProperties': False,
- 'required': ['name'],
- 'properties': {
- 'name': {
- 'type': 'string',
- },
- 'compiler-agnostic': {
- 'type': 'boolean',
- 'default': False,
- },
- },
- },
- ],
- },
+ r'[\w\d\-_\.]+': {
+ 'type': 'string',
},
- 'mappings': {
- 'type': 'array',
- 'items': {
- 'type': 'object',
- 'additionalProperties': False,
- 'required': ['match'],
- 'properties': {
- 'match': {
- 'type': 'array',
- 'items': {
+ },
+ },
+ 'before_script': {
+ 'type': 'array',
+ 'items': {'type': 'string'}
+ },
+ 'script': {
+ 'type': 'array',
+ 'items': {'type': 'string'}
+ },
+ 'after_script': {
+ 'type': 'array',
+ 'items': {'type': 'string'}
+ },
+}
+
+runner_selector_schema = {
+ 'type': 'object',
+ 'additionalProperties': False,
+ 'required': ['tags'],
+ 'properties': runner_attributes_schema_items,
+}
+
+
+core_shared_properties = union_dicts(
+ runner_attributes_schema_items,
+ {
+ 'bootstrap': {
+ 'type': 'array',
+ 'items': {
+ 'anyOf': [
+ {
+ 'type': 'string',
+ }, {
+ 'type': 'object',
+ 'additionalProperties': False,
+ 'required': ['name'],
+ 'properties': {
+ 'name': {
'type': 'string',
},
- },
- 'runner-attributes': {
- 'type': 'object',
- 'additionalProperties': True,
- 'required': ['tags'],
- 'properties': {
- 'image': image_schema,
- 'tags': {
- 'type': 'array',
- 'items': {'type': 'string'}
- },
- 'variables': {
- 'type': 'object',
- 'patternProperties': {
- r'[\w\d\-_\.]+': {
- 'type': 'string',
- },
- },
- },
- 'before_script': {
- 'type': 'array',
- 'items': {'type': 'string'}
- },
- 'script': {
- 'type': 'array',
- 'items': {'type': 'string'}
- },
- 'after_script': {
- 'type': 'array',
- 'items': {'type': 'string'}
- },
+ 'compiler-agnostic': {
+ 'type': 'boolean',
+ 'default': False,
},
},
},
- },
+ ],
},
- 'image': image_schema,
- 'tags': {
- 'type': 'array',
- 'items': {'type': 'string'}
- },
- 'variables': {
- 'type': 'object',
- 'patternProperties': {
- r'[\w\d\-_\.]+': {
- 'type': 'string',
- },
- },
- },
- 'before_script': {
- 'type': 'array',
- 'items': {'type': 'string'}
- },
- 'script': {
- 'type': 'array',
- 'items': {'type': 'string'}
- },
- 'after_script': {
- 'type': 'array',
- 'items': {'type': 'string'}
- },
- 'enable-artifacts-buildcache': {
- 'type': 'boolean',
- 'default': False,
- },
- 'final-stage-rebuild-index': {
+ },
+ 'mappings': {
+ 'type': 'array',
+ 'items': {
'type': 'object',
'additionalProperties': False,
- 'required': ['tags'],
+ 'required': ['match'],
'properties': {
- 'image': image_schema,
- 'tags': {
+ 'match': {
'type': 'array',
- 'default': [],
- 'items': {'type': 'string'}
+ 'items': {
+ 'type': 'string',
+ },
},
+ 'runner-attributes': runner_selector_schema,
},
},
},
+ 'service-job-attributes': runner_selector_schema,
+ 'rebuild-index': {'type': 'boolean'},
+ 'broken-specs-url': {'type': 'string'},
},
+)
+
+gitlab_ci_properties = {
+ 'anyOf': [
+ {
+ 'type': 'object',
+ 'additionalProperties': False,
+ 'required': ['mappings'],
+ 'properties': union_dicts(
+ core_shared_properties,
+ {
+ 'enable-artifacts-buildcache': {
+ 'type': 'boolean',
+ },
+ },
+ ),
+ },
+ {
+ 'type': 'object',
+ 'additionalProperties': False,
+ 'required': ['mappings'],
+ 'properties': union_dicts(
+ core_shared_properties,
+ {
+ 'temporary-storage-url-prefix': {
+ 'type': 'string',
+ },
+ },
+ ),
+ },
+ ]
}
+#: Properties for inclusion in other schemas
+properties = {
+ 'gitlab-ci': gitlab_ci_properties,
+}
#: Full schema with metadata
schema = {
diff --git a/lib/spack/spack/schema/merged.py b/lib/spack/spack/schema/merged.py
index e118acf286..a58f47cb16 100644
--- a/lib/spack/spack/schema/merged.py
+++ b/lib/spack/spack/schema/merged.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/mirrors.py b/lib/spack/spack/schema/mirrors.py
index 5bb641df05..6dec5aac97 100644
--- a/lib/spack/spack/schema/mirrors.py
+++ b/lib/spack/spack/schema/mirrors.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/modules.py b/lib/spack/spack/schema/modules.py
index f44ba7d97d..39db0bf9a7 100644
--- a/lib/spack/spack/schema/modules.py
+++ b/lib/spack/spack/schema/modules.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/packages.py b/lib/spack/spack/schema/packages.py
index f2626c83be..e24f610c74 100644
--- a/lib/spack/spack/schema/packages.py
+++ b/lib/spack/spack/schema/packages.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/projections.py b/lib/spack/spack/schema/projections.py
index bd0693f30e..cab512fe3b 100644
--- a/lib/spack/spack/schema/projections.py
+++ b/lib/spack/spack/schema/projections.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/repos.py b/lib/spack/spack/schema/repos.py
index 6aa9bcf57e..44cf688a48 100644
--- a/lib/spack/spack/schema/repos.py
+++ b/lib/spack/spack/schema/repos.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/spec.py b/lib/spack/spack/schema/spec.py
index e2c8efad4c..fecfcb2af4 100644
--- a/lib/spack/spack/schema/spec.py
+++ b/lib/spack/spack/schema/spec.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/schema/upstreams.py b/lib/spack/spack/schema/upstreams.py
index f5192aa096..7d721332eb 100644
--- a/lib/spack/spack/schema/upstreams.py
+++ b/lib/spack/spack/schema/upstreams.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/solver/__init__.py b/lib/spack/spack/solver/__init__.py
index 94f8ac4d9e..103eae6134 100644
--- a/lib/spack/spack/solver/__init__.py
+++ b/lib/spack/spack/solver/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/solver/asp.py b/lib/spack/spack/solver/asp.py
index dbfca6506d..99e556a764 100644
--- a/lib/spack/spack/solver/asp.py
+++ b/lib/spack/spack/solver/asp.py
@@ -22,7 +22,7 @@ try:
# There may be a better way to detect this
clingo_cffi = hasattr(clingo.Symbol, '_rep')
except ImportError:
- clingo = None
+ clingo = None # type: ignore
clingo_cffi = False
import llnl.util.lang
@@ -208,6 +208,9 @@ class Result(object):
self.answers = []
self.cores = []
+ # names of optimization criteria
+ self.criteria = []
+
def print_cores(self):
for core in self.cores:
tty.msg(
@@ -355,6 +358,7 @@ class PyclingoDriver(object):
return x.string or str(x)
if result.satisfiable:
+ # build spec from the best model
builder = SpecBuilder(specs)
min_cost, best_model = min(models)
tuples = [
@@ -362,8 +366,20 @@ class PyclingoDriver(object):
for sym in best_model
]
answers = builder.build_specs(tuples)
+
+ # add best spec to the results
result.answers.append((list(min_cost), 0, answers))
+ # pull optimization criteria names out of the solution
+ criteria = [
+ (int(args[0]), args[1]) for name, args in tuples
+ if name == "opt_criterion"
+ ]
+ result.criteria = [t[1] for t in sorted(criteria, reverse=True)]
+
+ # record the number of models the solver considered
+ result.nmodels = len(models)
+
elif cores:
symbols = dict(
(a.literal, a.symbol)
@@ -395,6 +411,7 @@ class SpackSolverSetup(object):
self.gen = None # set by setup()
self.possible_versions = {}
self.versions_in_package_py = {}
+ self.deprecated_versions = {}
self.versions_from_externals = {}
self.possible_virtuals = None
self.possible_compilers = []
@@ -465,6 +482,11 @@ class SpackSolverSetup(object):
for i, v in enumerate(most_to_least_preferred):
self.gen.fact(fn.version_declared(pkg.name, v, i))
+ # Declare deprecated versions for this package, if any
+ deprecated = self.deprecated_versions[pkg.name]
+ for v in sorted(deprecated):
+ self.gen.fact(fn.deprecated_version(pkg.name, v))
+
def spec_versions(self, spec):
"""Return list of clauses expressing spec's version constraints."""
spec = specify(spec)
@@ -492,9 +514,7 @@ class SpackSolverSetup(object):
def conflict_rules(self, pkg):
for trigger, constraints in pkg.conflicts.items():
- trigger_id = self.condition(
- spack.spec.Spec(trigger), name=pkg.name
- )
+ trigger_id = self.condition(spack.spec.Spec(trigger), name=pkg.name)
self.gen.fact(fn.conflict_trigger(trigger_id))
for constraint, _ in constraints:
@@ -950,16 +970,17 @@ class SpackSolverSetup(object):
if value == '*':
continue
- # validate variant value
- reserved_names = spack.directives.reserved_names
- if not spec.virtual and vname not in reserved_names:
- try:
- variant_def = spec.package.variants[vname]
- except KeyError:
- msg = 'variant "{0}" not found in package "{1}"'
- raise RuntimeError(msg.format(vname, spec.name))
- else:
- variant_def.validate_or_raise(variant, spec.package)
+ # validate variant value only if spec not concrete
+ if not spec.concrete:
+ reserved_names = spack.directives.reserved_names
+ if not spec.virtual and vname not in reserved_names:
+ try:
+ variant_def = spec.package.variants[vname]
+ except KeyError:
+ msg = 'variant "{0}" not found in package "{1}"'
+ raise RuntimeError(msg.format(vname, spec.name))
+ else:
+ variant_def.validate_or_raise(variant, spec.package)
clauses.append(f.variant_value(spec.name, vname, value))
@@ -1005,12 +1026,16 @@ class SpackSolverSetup(object):
self.possible_versions = collections.defaultdict(set)
self.versions_in_package_py = collections.defaultdict(set)
self.versions_from_externals = collections.defaultdict(set)
+ self.deprecated_versions = collections.defaultdict(set)
for pkg_name in possible_pkgs:
pkg = spack.repo.get(pkg_name)
- for v in pkg.versions:
+ for v, version_info in pkg.versions.items():
self.versions_in_package_py[pkg_name].add(v)
self.possible_versions[pkg_name].add(v)
+ deprecated = version_info.get('deprecated', False)
+ if deprecated:
+ self.deprecated_versions[pkg_name].add(v)
for spec in specs:
for dep in spec.traverse():
@@ -1378,7 +1403,10 @@ class SpackSolverSetup(object):
)
for clause in self.spec_clauses(spec):
self.gen.fact(clause)
-
+ if clause.name == 'variant_set':
+ self.gen.fact(fn.variant_default_value_from_cli(
+ *clause.args
+ ))
self.gen.h1("Variant Values defined in specs")
self.define_variant_values()
@@ -1535,6 +1563,10 @@ class SpecBuilder(object):
check_same_flags(spec.compiler_flags, flags)
spec.compiler_flags.update(flags)
+ def deprecated(self, pkg, version):
+ msg = 'using "{0}@{1}" which is a deprecated version'
+ tty.warn(msg.format(pkg, version))
+
def build_specs(self, function_tuples):
# Functions don't seem to be in particular order in output. Sort
# them here so that directives that build objects (like node and
@@ -1603,8 +1635,7 @@ def _develop_specs_from_env(spec, env):
if not dev_info:
return
- path = dev_info['path']
- path = path if os.path.isabs(path) else os.path.join(env.path, path)
+ path = os.path.normpath(os.path.join(env.path, dev_info['path']))
if 'dev_path' in spec.variants:
assert spec.variants['dev_path'].value == path
diff --git a/lib/spack/spack/solver/concretize.lp b/lib/spack/spack/solver/concretize.lp
index 145c00ab67..ec0d4fdf5a 100644
--- a/lib/spack/spack/solver/concretize.lp
+++ b/lib/spack/spack/solver/concretize.lp
@@ -1,3 +1,8 @@
+% Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+% Spack Project Developers. See the top-level COPYRIGHT file for details.
+%
+% SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
%=============================================================================
% This logic program implements Spack's concretizer
%=============================================================================
@@ -14,6 +19,9 @@ version_declared(Package, Version) :- version_declared(Package, Version, _).
1 { version(Package, Version) : version_declared(Package, Version) } 1
:- node(Package).
+% If we select a deprecated version, mark the package as deprecated
+deprecated(Package, Version) :- version(Package, Version), deprecated_version(Package, Version).
+
possible_version_weight(Package, Weight)
:- version(Package, Version), version_declared(Package, Version, Weight),
not preferred_version_declared(Package, Version, _).
@@ -32,6 +40,7 @@ version_satisfies(Package, Constraint)
#defined preferred_version_declared/3.
#defined version_satisfies/3.
+#defined deprecated_version/2.
%-----------------------------------------------------------------------------
% Spec conditions and imposed constraints
@@ -211,6 +220,7 @@ provider_weight(Package, 100)
provider(Package, Virtual),
not default_provider_preference(Virtual, Package, _).
+#defined possible_provider/2.
#defined provider_condition/3.
#defined required_provider_condition/3.
#defined required_provider_condition/4.
@@ -397,14 +407,23 @@ variant_not_default(Package, Variant, Value, 0)
external_with_variant_set(Package, Variant, Value),
node(Package).
-% The default value for a variant in a package is what is written
-% in the package.py file, unless some preference is set in packages.yaml
+% The default value for a variant in a package is what is prescribed:
+%
+% 1. On the command line
+% 2. In packages.yaml (if there's no command line settings)
+% 3. In the package.py file (if there are no settings in
+% packages.yaml and the command line)
+%
variant_default_value(Package, Variant, Value)
:- variant_default_value_from_package_py(Package, Variant, Value),
- not variant_default_value_from_packages_yaml(Package, Variant, _).
+ not variant_default_value_from_packages_yaml(Package, Variant, _),
+ not variant_default_value_from_cli(Package, Variant, _).
variant_default_value(Package, Variant, Value)
- :- variant_default_value_from_packages_yaml(Package, Variant, Value).
+ :- variant_default_value_from_packages_yaml(Package, Variant, Value),
+ not variant_default_value_from_cli(Package, Variant, _).
+
+variant_default_value(Package, Variant, Value) :- variant_default_value_from_cli(Package, Variant, Value).
% Treat 'none' in a special way - it cannot be combined with other
% values even if the variant is multi-valued
@@ -429,6 +448,7 @@ variant_single_value(Package, "dev_path")
#defined variant_single_value/2.
#defined variant_default_value/3.
#defined variant_possible_value/3.
+#defined variant_default_value_from_cli/3.
#defined variant_default_value_from_packages_yaml/3.
#defined variant_default_value_from_package_py/3.
#defined variant_value_from_disjoint_sets/4.
@@ -529,29 +549,19 @@ node_target_weight(Package, Weight)
node_target(Package, Target),
target_weight(Target, Package, Weight).
-% compatibility rules for targets among nodes
-node_target_match_pref(Dependency, Target)
- :- depends_on(Package, Dependency),
- node_target_match_pref(Package, Target),
- not node_target_set(Dependency, _).
-
-node_target_match_pref(Dependency, Target)
- :- depends_on(Package, Dependency),
- node_target_set(Package, Target),
- not node_target_match_pref(Package, Target),
- not node_target_set(Dependency, _).
-
-node_target_match_pref(Dependency, Target)
- :- depends_on(Package, Dependency),
- root(Package), node_target(Package, Target),
- not node_target_match_pref(Package, _).
-
-node_target_match(Package, 1)
- :- node_target(Package, Target), node_target_match_pref(Package, Target).
-
derive_target_from_parent(Parent, Package)
- :- depends_on(Parent, Package), not package_target_weight(_, Package, _).
+ :- depends_on(Parent, Package),
+ not package_target_weight(_, Package, _).
+
+% compatibility rules for targets among nodes
+node_target_match(Parent, Dependency)
+ :- depends_on(Parent, Dependency),
+ node_target(Parent, Target),
+ node_target(Dependency, Target).
+node_target_mismatch(Parent, Dependency)
+ :- depends_on(Parent, Dependency),
+ not node_target_match(Parent, Dependency).
#defined node_target_set/2.
#defined package_target_weight/3.
@@ -599,22 +609,18 @@ node_compiler_version(Package, Compiler, Version) :- node_compiler_version_set(P
% If a package and one of its dependencies don't have the
% same compiler there's a mismatch.
-compiler_mismatch(Package, Dependency)
+compiler_match(Package, Dependency)
:- depends_on(Package, Dependency),
- node_compiler_version(Package, Compiler1, _),
- node_compiler_version(Dependency, Compiler2, _),
- Compiler1 != Compiler2.
+ node_compiler_version(Package, Compiler, Version),
+ node_compiler_version(Dependency, Compiler, Version).
compiler_mismatch(Package, Dependency)
:- depends_on(Package, Dependency),
- node_compiler_version(Package, Compiler, Version1),
- node_compiler_version(Dependency, Compiler, Version2),
- Version1 != Version2.
+ not compiler_match(Package, Dependency).
#defined node_compiler_set/2.
#defined node_compiler_version_set/3.
#defined compiler_supports_os/3.
-#defined compiler_version_match/2.
#defined allow_compiler/2.
% compilers weighted by preference according to packages.yaml
@@ -689,84 +695,101 @@ no_flags(Package, FlagType)
%-----------------------------------------------------------------------------
% How to optimize the spec (high to low priority)
%-----------------------------------------------------------------------------
-% weight root preferences higher
-%
-% TODO: how best to deal with this issue? It's not clear how best to
-% weight all the constraints. Without this root preference, `spack solve
-% hdf5` will pick mpich instead of openmpi, even if openmpi is the
-% preferred provider, because openmpi has a version constraint on hwloc.
-% It ends up choosing between settling for an old version of hwloc, or
-% picking the second-best provider. This workaround weights root
-% preferences higher so that hdf5's prefs are more important, but it's
-% not clear this is a general solution. It would be nice to weight by
-% distance to root, but that seems to slow down the solve a lot.
-%
-% One option is to make preferences hard constraints. Or maybe we need
-% to look more closely at where a constraint came from and factor that
-% into our weights. e.g., a non-default variant resulting from a version
-% constraint counts like a version constraint. Needs more thought later.
-%
+% Each criterion below has:
+% 1. an opt_criterion(ID, Name) fact that describes the criterion, and
+% 2. a `#minimize{ 0@2 : #true }.` statement that ensures the criterion
+% is displayed (clingo doesn't display sums over empty sets by default)
-root(Package, 2) :- root(Package), node(Package).
-root(Dependency, 1) :- not root(Dependency), node(Dependency).
+% Minimize the number of deprecated versions being used
+opt_criterion(16, "deprecated versions used").
+#minimize{ 0@16 : #true }.
+#minimize{ 1@16,Package : deprecated(Package, _)}.
% The highest priority is to minimize the:
% 1. Version weight
% 2. Number of variants with a non default value, if not set
% for the root(Package)
-#minimize { Weight@15 : root(Package),version_weight(Package, Weight)}.
+opt_criterion(15, "version weight").
+#minimize{ 0@15 : #true }.
+#minimize { Weight@15 : root(Package),version_weight(Package, Weight) }.
+
+opt_criterion(14, "number of non-default variants (roots)").
+#minimize{ 0@14 : #true }.
#minimize {
Weight@14,Package,Variant,Value
: variant_not_default(Package, Variant, Value, Weight), root(Package)
}.
+
% If the value is a multivalued variant there could be multiple
% values set as default. Since a default value has a weight of 0 we
% need to maximize their number below to ensure they're all set
+opt_criterion(13, "multi-valued variants").
+#minimize{ 0@13 : #true }.
#maximize {
1@13,Package,Variant,Value
: variant_not_default(Package, Variant, Value, Weight),
not variant_single_value(Package, Variant),
root(Package)
}.
+opt_criterion(12, "preferred providers for roots").
+#minimize{ 0@12 : #true }.
#minimize{
- Weight@13,Provider
+ Weight@12,Provider
: provider_weight(Provider, Weight), root(Provider)
}.
% Try to use default variants or variants that have been set
+opt_criterion(11, "number of non-default variants (non-roots)").
+#minimize{ 0@11 : #true }.
#minimize {
Weight@11,Package,Variant,Value
: variant_not_default(Package, Variant, Value, Weight), not root(Package)
}.
+
% Minimize the weights of the providers, i.e. use as much as
% possible the most preferred providers
+opt_criterion(9, "number of non-default providers (non-roots)").
+#minimize{ 0@9 : #true }.
#minimize{
Weight@9,Provider
: provider_weight(Provider, Weight), not root(Provider)
}.
+
% If the value is a multivalued variant there could be multiple
% values set as default. Since a default value has a weight of 0 we
% need to maximize their number below to ensure they're all set
+opt_criterion(8, "count of non-root multi-valued variants").
+#minimize{ 0@8 : #true }.
#maximize {
1@8,Package,Variant,Value
- : variant_not_default(Package, Variant, Value, Weight),
+ : variant_not_default(Package, Variant, Value, _),
not variant_single_value(Package, Variant),
not root(Package)
}.
% Try to minimize the number of compiler mismatches in the DAG.
+opt_criterion(7, "compiler mismatches").
#minimize{ 0@7 : #true }.
#minimize{ 1@7,Package,Dependency : compiler_mismatch(Package, Dependency) }.
% Choose more recent versions for nodes
+opt_criterion(6, "version badness").
+#minimize{ 0@6 : #true }.
#minimize{
Weight@6,Package : version_weight(Package, Weight)
}.
% Try to use preferred compilers
+opt_criterion(5, "non-preferred compilers").
+#minimize{ 0@5 : #true }.
#minimize{ Weight@5,Package : compiler_weight(Package, Weight) }.
-% Maximize the number of matches for targets in the DAG, try
+% Minimize the number of mismatches for targets in the DAG, try
% to select the preferred target.
-#maximize{ Weight@4,Package : node_target_match(Package, Weight) }.
+opt_criterion(4, "target mismatches").
+#minimize{ 0@4 : #true }.
+#minimize{ 1@4,Package,Dependency : node_target_mismatch(Package, Dependency) }.
+
+opt_criterion(3, "non-preferred targets").
+#minimize{ 0@3 : #true }.
#minimize{ Weight@3,Package : node_target_weight(Package, Weight) }.
diff --git a/lib/spack/spack/solver/display.lp b/lib/spack/spack/solver/display.lp
index fdc4e4088c..818ce2d90a 100644
--- a/lib/spack/spack/solver/display.lp
+++ b/lib/spack/spack/solver/display.lp
@@ -1,8 +1,16 @@
+% Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+% Spack Project Developers. See the top-level COPYRIGHT file for details.
+%
+% SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
%=============================================================================-
% Display Results
%
% This section determines what parts of the model are printed at the end
%==============================================================================
+
+% Spec-related functions.
+% Used to build the result of the solve.
#show node/1.
#show depends_on/3.
#show version/2.
@@ -16,12 +24,10 @@
#show node_flag_compiler_default/1.
#show node_flag_source/2.
#show no_flags/2.
-
-#show variant_not_default/4.
-#show provider_weight/2.
-#show version_weight/2.
-#show compiler_version_match/2.
-#show compiler_weight/2.
-#show node_target_match/2.
-#show node_target_weight/2.
#show external_spec_selected/2.
+
+% names of optimization criteria
+#show opt_criterion/2.
+
+% deprecated packages
+#show deprecated/2.
diff --git a/lib/spack/spack/spec.py b/lib/spack/spack/spec.py
index edb2c94300..609b20e238 100644
--- a/lib/spack/spack/spec.py
+++ b/lib/spack/spack/spec.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -76,10 +76,8 @@ thing. Spack uses ~variant in directory names and in the canonical form of
specs to avoid ambiguity. Both are provided because ~ can cause shell
expansion when it is the first character in an id typed on the command line.
"""
-import base64
import sys
import collections
-import hashlib
import itertools
import operator
import os
@@ -108,6 +106,7 @@ import spack.solver
import spack.store
import spack.util.crypto
import spack.util.executable
+import spack.util.hash
import spack.util.module_cmd as md
import spack.util.prefix
import spack.util.spack_json as sjson
@@ -203,7 +202,7 @@ def colorize_spec(spec):
return clr.colorize(re.sub(_separators, insert_color(), str(spec)) + '@.')
-@lang.key_ordering
+@lang.lazy_lexicographic_ordering
class ArchSpec(object):
def __init__(self, spec_or_platform_tuple=(None, None, None)):
""" Architecture specification a package should be built with.
@@ -252,8 +251,10 @@ class ArchSpec(object):
return spec_like
return ArchSpec(spec_like)
- def _cmp_key(self):
- return self.platform, self.os, self.target
+ def _cmp_iter(self):
+ yield self.platform
+ yield self.os
+ yield self.target
def _dup(self, other):
self.platform = other.platform
@@ -534,7 +535,7 @@ class ArchSpec(object):
return string in str(self) or string in self.target
-@lang.key_ordering
+@lang.lazy_lexicographic_ordering
class CompilerSpec(object):
"""The CompilerSpec field represents the compiler or range of compiler
versions that a package should be built with. CompilerSpecs have a
@@ -623,8 +624,9 @@ class CompilerSpec(object):
clone.versions = self.versions.copy()
return clone
- def _cmp_key(self):
- return (self.name, self.versions)
+ def _cmp_iter(self):
+ yield self.name
+ yield self.versions
def to_dict(self):
d = syaml.syaml_dict([('name', self.name)])
@@ -648,7 +650,7 @@ class CompilerSpec(object):
return str(self)
-@lang.key_ordering
+@lang.lazy_lexicographic_ordering
class DependencySpec(object):
"""DependencySpecs connect two nodes in the DAG, and contain deptypes.
@@ -686,10 +688,10 @@ class DependencySpec(object):
self.deptypes + dp.canonical_deptype(type)
)
- def _cmp_key(self):
- return (self.parent.name if self.parent else None,
- self.spec.name if self.spec else None,
- self.deptypes)
+ def _cmp_iter(self):
+ yield self.parent.name if self.parent else None
+ yield self.spec.name if self.spec else None
+ yield self.deptypes
def __str__(self):
return "%s %s--> %s" % (self.parent.name if self.parent else None,
@@ -747,8 +749,15 @@ class FlagMap(lang.HashableMap):
clone[name] = value
return clone
- def _cmp_key(self):
- return tuple((k, tuple(v)) for k, v in sorted(six.iteritems(self)))
+ def _cmp_iter(self):
+ for k, v in sorted(self.items()):
+ yield k
+
+ def flags():
+ for flag in v:
+ yield flag
+
+ yield flags
def __str__(self):
sorted_keys = [k for k in sorted(self.keys()) if self[k] != []]
@@ -1016,7 +1025,7 @@ class SpecBuildInterface(lang.ObjectWrapper):
)
-@lang.key_ordering
+@lang.lazy_lexicographic_ordering(set_hash=False)
class Spec(object):
#: Cache for spec's prefix, computed lazily in the corresponding property
@@ -1060,7 +1069,7 @@ class Spec(object):
self._hash = None
self._build_hash = None
- self._cmp_key_cache = None
+ self._dunder_hash = None
self._package = None
# Most of these are internal implementation details that can be
@@ -1088,6 +1097,12 @@ class Spec(object):
# external specs. None signal that it was not set yet.
self.extra_attributes = None
+ # This attribute holds the original build copy of the spec if it is
+ # deployed differently than it was built. None signals that the spec
+ # is deployed "as built."
+ # Build spec should be the actual build spec unless marked dirty.
+ self._build_spec = None
+
if isinstance(spec_like, six.string_types):
spec_list = SpecParser(self).parse(spec_like)
if len(spec_list) > 1:
@@ -1302,6 +1317,13 @@ class Spec(object):
"""
return self._concrete
+ @property
+ def spliced(self):
+ """Returns whether or not this Spec is being deployed as built i.e.
+ whether or not this Spec has ever been spliced.
+ """
+ return any(s.build_spec is not s for s in self.traverse(root=True))
+
def traverse(self, **kwargs):
direction = kwargs.get('direction', 'children')
depth = kwargs.get('depth', False)
@@ -1369,7 +1391,16 @@ class Spec(object):
cover = kwargs.get('cover', 'nodes')
direction = kwargs.get('direction', 'children')
order = kwargs.get('order', 'pre')
- deptype = dp.canonical_deptype(deptype)
+
+ # we don't want to run canonical_deptype every time through
+ # traverse, because it is somewhat expensive. This ensures we
+ # canonicalize only once.
+ canonical_deptype = kwargs.get("canonical_deptype", None)
+ if canonical_deptype is None:
+ deptype = dp.canonical_deptype(deptype)
+ kwargs["canonical_deptype"] = deptype
+ else:
+ deptype = canonical_deptype
# Make sure kwargs have legal values; raise ValueError if not.
def validate(name, val, allowed_values):
@@ -1473,13 +1504,7 @@ class Spec(object):
# this when we move to using package hashing on all specs.
node_dict = self.to_node_dict(hash=hash)
yaml_text = syaml.dump(node_dict, default_flow_style=True)
- sha = hashlib.sha1(yaml_text.encode('utf-8'))
- b32_hash = base64.b32encode(sha.digest()).lower()
-
- if sys.version_info[0] >= 3:
- b32_hash = b32_hash.decode('utf-8')
-
- return b32_hash
+ return spack.util.hash.b32_hash(yaml_text)
def _cached_hash(self, hash, length=None):
"""Helper function for storing a cached hash on the spec.
@@ -1535,7 +1560,7 @@ class Spec(object):
def dag_hash_bit_prefix(self, bits):
"""Get the first <bits> bits of the DAG hash as an integer type."""
- return base32_prefix_bits(self.dag_hash(), bits)
+ return spack.util.hash.base32_prefix_bits(self.dag_hash(), bits)
def to_node_dict(self, hash=ht.dag_hash):
"""Create a dictionary representing the state of this Spec.
@@ -1629,7 +1654,13 @@ class Spec(object):
d['patches'] = variant._patches_in_order_of_appearance
if hash.package_hash:
- d['package_hash'] = self.package.content_hash()
+ package_hash = self.package.content_hash()
+
+ # Full hashes are in bytes
+ if (not isinstance(package_hash, six.text_type)
+ and isinstance(package_hash, six.binary_type)):
+ package_hash = package_hash.decode('utf-8')
+ d['package_hash'] = package_hash
deps = self.dependencies_dict(deptype=hash.deptype)
if deps:
@@ -1786,10 +1817,12 @@ class Spec(object):
name = next(iter(node))
node = node[name]
- spec = Spec(name, full_hash=node.get('full_hash', None))
+ spec = Spec()
+ spec.name = name
spec.namespace = node.get('namespace', None)
spec._hash = node.get('hash', None)
spec._build_hash = node.get('build_hash', None)
+ spec._full_hash = node.get('full_hash', None)
if 'version' in node or 'versions' in node:
spec.versions = vn.VersionList.from_dict(node)
@@ -2263,6 +2296,8 @@ class Spec(object):
# If replacement is external then trim the dependencies
if replacement.external:
if (spec._dependencies):
+ for dep in spec.dependencies():
+ del dep._dependents[spec.name]
changed = True
spec._dependencies = DependencyMap()
replacement._dependencies = DependencyMap()
@@ -2536,17 +2571,27 @@ class Spec(object):
else:
self._old_concretize(tests)
+ def _mark_root_concrete(self, value=True):
+ """Mark just this spec (not dependencies) concrete."""
+ if (not value) and self.concrete and self.package.installed:
+ return
+ self._normal = value
+ self._concrete = value
+
def _mark_concrete(self, value=True):
"""Mark this spec and its dependencies as concrete.
Only for internal use -- client code should use "concretize"
unless there is a need to force a spec to be concrete.
"""
+ # if set to false, clear out all hashes (set to None or remove attr)
+ # may need to change references to respect None
for s in self.traverse():
if (not value) and s.concrete and s.package.installed:
continue
- s._normal = value
- s._concrete = value
+ elif not value:
+ s.clear_cached_hashes()
+ s._mark_root_concrete(value)
def concretized(self, tests=False):
"""This is a non-destructive version of concretize().
@@ -3274,7 +3319,7 @@ class Spec(object):
"""Return list of any virtual deps in this spec."""
return [spec for spec in self.traverse() if spec.virtual]
- @property
+ @property # type: ignore[misc] # decorated prop not supported in mypy
@lang.memoized
def patches(self):
"""Return patch objects for any patch sha256 sums on this Spec.
@@ -3320,7 +3365,7 @@ class Spec(object):
before possibly copying the dependencies of ``other`` onto
``self``
caches (bool or None): preserve cached fields such as
- ``_normal``, ``_hash``, and ``_cmp_key_cache``. By
+ ``_normal``, ``_hash``, and ``_dunder_hash``. By
default this is ``False`` if DAG structure would be
changed by the copy, ``True`` if it's an exact copy.
@@ -3357,6 +3402,7 @@ class Spec(object):
self.compiler_flags = other.compiler_flags.copy()
self.compiler_flags.spec = self
self.variants = other.variants.copy()
+ self._build_spec = other._build_spec
# FIXME: we manage _patches_in_order_of_appearance specially here
# to keep it from leaking out of spec.py, but we should figure
@@ -3393,13 +3439,13 @@ class Spec(object):
if caches:
self._hash = other._hash
self._build_hash = other._build_hash
- self._cmp_key_cache = other._cmp_key_cache
+ self._dunder_hash = other._dunder_hash
self._normal = other._normal
self._full_hash = other._full_hash
else:
self._hash = None
self._build_hash = None
- self._cmp_key_cache = None
+ self._dunder_hash = None
self._normal = False
self._full_hash = None
@@ -3518,18 +3564,17 @@ class Spec(object):
else:
return any(s.satisfies(spec) for s in self.traverse(root=False))
- def sorted_deps(self):
- """Return a list of all dependencies sorted by name."""
- deps = self.flat_dependencies()
- return tuple(deps[name] for name in sorted(deps))
+ def eq_dag(self, other, deptypes=True, vs=None, vo=None):
+ """True if the full dependency DAGs of specs are equal."""
+ if vs is None:
+ vs = set()
+ if vo is None:
+ vo = set()
- def _eq_dag(self, other, vs, vo, deptypes):
- """Recursive helper for eq_dag and ne_dag. Does the actual DAG
- traversal."""
vs.add(id(self))
vo.add(id(other))
- if self.ne_node(other):
+ if not self.eq_node(other):
return False
if len(self._dependencies) != len(other._dependencies):
@@ -3557,58 +3602,38 @@ class Spec(object):
continue
# Recursive check for equality
- if not s._eq_dag(o, vs, vo, deptypes):
+ if not s.eq_dag(o, deptypes, vs, vo):
return False
return True
- def eq_dag(self, other, deptypes=True):
- """True if the full dependency DAGs of specs are equal."""
- return self._eq_dag(other, set(), set(), deptypes)
-
- def ne_dag(self, other, deptypes=True):
- """True if the full dependency DAGs of specs are not equal."""
- return not self.eq_dag(other, set(), set(), deptypes)
-
def _cmp_node(self):
- """Comparison key for just *this node* and not its deps."""
- # Name or namespace None will lead to invalid comparisons for abstract
- # specs. Replace them with the empty string, which is not a valid spec
- # name nor namespace so it will not create spurious equalities.
- return (self.name or '',
- self.namespace or '',
- tuple(self.versions),
- self.variants,
- self.architecture,
- self.compiler,
- self.compiler_flags)
+ """Yield comparable elements of just *this node* and not its deps."""
+ yield self.name
+ yield self.namespace
+ yield self.versions
+ yield self.variants
+ yield self.compiler
+ yield self.compiler_flags
+ yield self.architecture
def eq_node(self, other):
"""Equality with another spec, not including dependencies."""
- return self._cmp_node() == other._cmp_node()
-
- def ne_node(self, other):
- """Inequality with another spec, not including dependencies."""
- return self._cmp_node() != other._cmp_node()
-
- def _cmp_key(self):
- """This returns a key for the spec *including* DAG structure.
-
- The key is the concatenation of:
- 1. A tuple describing this node in the DAG.
- 2. The hash of each of this node's dependencies' cmp_keys.
- """
- if self._cmp_key_cache:
- return self._cmp_key_cache
+ return (other is not None) and lang.lazy_eq(
+ self._cmp_node, other._cmp_node
+ )
- dep_tuple = tuple(
- (d.spec.name, hash(d.spec), tuple(sorted(d.deptypes)))
- for name, d in sorted(self._dependencies.items()))
+ def _cmp_iter(self):
+ """Lazily yield components of self for comparison."""
+ for item in self._cmp_node():
+ yield item
- key = (self._cmp_node(), dep_tuple)
- if self._concrete:
- self._cmp_key_cache = key
- return key
+ def deps():
+ for _, dep in sorted(self._dependencies.items()):
+ yield dep.spec.name
+ yield tuple(sorted(dep.deptypes))
+ yield hash(dep.spec)
+ yield deps
def colorized(self):
return colorize_spec(self)
@@ -3848,7 +3873,9 @@ class Spec(object):
'Format string terminated while reading attribute.'
'Missing terminating }.'
)
- return out.getvalue()
+
+ formatted_spec = out.getvalue()
+ return formatted_spec.strip()
def old_format(self, format_string='$_$@$%@+$+$=', **kwargs):
"""
@@ -4104,12 +4131,12 @@ class Spec(object):
kwargs.setdefault('color', None)
return self.format(*args, **kwargs)
- def dep_string(self):
- return ''.join(" ^" + dep.format() for dep in self.sorted_deps())
-
def __str__(self):
- ret = self.format() + self.dep_string()
- return ret.strip()
+ sorted_nodes = [self] + sorted(
+ self.traverse(root=False), key=lambda x: x.name
+ )
+ spec_str = " ^".join(d.format() for d in sorted_nodes)
+ return spec_str.strip()
def install_status(self):
"""Helper for tree to print DB install status."""
@@ -4217,6 +4244,105 @@ class Spec(object):
# to give to the attribute the appropriate comparison semantic
return self.architecture.target.microarchitecture
+ @property
+ def build_spec(self):
+ return self._build_spec or self
+
+ @build_spec.setter
+ def build_spec(self, value):
+ self._build_spec = value
+
+ def splice(self, other, transitive):
+ """Splices dependency "other" into this ("target") Spec, and return the
+ result as a concrete Spec.
+ If transitive, then other and its dependencies will be extrapolated to
+ a list of Specs and spliced in accordingly.
+ For example, let there exist a dependency graph as follows:
+ T
+ | \
+ Z<-H
+ In this example, Spec T depends on H and Z, and H also depends on Z.
+ Suppose, however, that we wish to use a differently-built H, known as
+ H'. This function will splice in the new H' in one of two ways:
+ 1. transitively, where H' depends on the Z' it was built with, and the
+ new T* also directly depends on this new Z', or
+ 2. intransitively, where the new T* and H' both depend on the original
+ Z.
+ Since the Spec returned by this splicing function is no longer deployed
+ the same way it was built, any such changes are tracked by setting the
+ build_spec to point to the corresponding dependency from the original
+ Spec.
+ TODO: Extend this for non-concrete Specs.
+ """
+ assert self.concrete
+ assert other.concrete
+ assert other.name in self
+
+ # Multiple unique specs with the same name will collide, so the
+ # _dependents of these specs should not be trusted.
+ # Variants may also be ignored here for now...
+
+ if transitive:
+ self_nodes = dict((s.name, s.copy(deps=False))
+ for s in self.traverse(root=True)
+ if s.name not in other)
+ other_nodes = dict((s.name, s.copy(deps=False))
+ for s in other.traverse(root=True))
+ else:
+ # If we're not doing a transitive splice, then we only want the
+ # root of other.
+ self_nodes = dict((s.name, s.copy(deps=False))
+ for s in self.traverse(root=True)
+ if s.name != other.name)
+ other_nodes = {other.name: other.copy(deps=False)}
+
+ nodes = other_nodes.copy()
+ nodes.update(self_nodes)
+
+ for name in nodes:
+ if name in self_nodes:
+ dependencies = self[name]._dependencies
+ for dep in dependencies:
+ nodes[name]._add_dependency(nodes[dep],
+ dependencies[dep].deptypes)
+ if any(dep not in self_nodes for dep in dependencies):
+ nodes[name].build_spec = self[name].build_spec
+ else:
+ dependencies = other[name]._dependencies
+ for dep in dependencies:
+ nodes[name]._add_dependency(nodes[dep],
+ dependencies[dep].deptypes)
+ if any(dep not in other_nodes for dep in dependencies):
+ nodes[name].build_spec = other[name].build_spec
+
+ # Clear cached hashes
+ nodes[self.name].clear_cached_hashes()
+ return nodes[self.name]
+
+ def clear_cached_hashes(self):
+ """
+ Clears all cached hashes in a Spec, while preserving other properties.
+ """
+ for attr in ht.SpecHashDescriptor.hash_types:
+ if hasattr(self, attr):
+ setattr(self, attr, None)
+
+ def __hash__(self):
+ # If the spec is concrete, we leverage the DAG hash and just use
+ # a 64-bit prefix of it. The DAG hash has the advantage that it's
+ # computed once per concrete spec, and it's saved -- so if we
+ # read concrete specs we don't need to recompute the whole hash.
+ # This is good for large, unchanging specs.
+ if self.concrete:
+ if not self._dunder_hash:
+ self._dunder_hash = self.dag_hash_bit_prefix(64)
+ return self._dunder_hash
+
+ # This is the normal hash for lazy_lexicographic_ordering. It's
+ # slow for large specs because it traverses the whole spec graph,
+ # so we hope it only runs on abstract specs, which are small.
+ return hash(lang.tuplify(self._cmp_iter))
+
class LazySpecCache(collections.defaultdict):
"""Cache for Specs that uses a spec_like as key, and computes lazily
@@ -4627,16 +4753,6 @@ def save_dependency_spec_yamls(
fd.write(dep_spec.to_yaml(hash=ht.build_hash))
-def base32_prefix_bits(hash_string, bits):
- """Return the first <bits> bits of a base32 string as an integer."""
- if bits > len(hash_string) * 5:
- raise ValueError("Too many bits! Requested %d bit prefix of '%s'."
- % (bits, hash_string))
-
- hash_bytes = base64.b32decode(hash_string, casefold=True)
- return spack.util.crypto.prefix_bits(hash_bytes, bits)
-
-
class SpecParseError(spack.error.SpecError):
"""Wrapper for ParseError for when we're parsing specs."""
def __init__(self, parse_error):
diff --git a/lib/spack/spack/spec_list.py b/lib/spack/spack/spec_list.py
index 1aa0ab870e..4f7ae79ed9 100644
--- a/lib/spack/spack/spec_list.py
+++ b/lib/spack/spack/spec_list.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/stage.py b/lib/spack/spack/stage.py
index 719d408d84..c39b4d2f33 100644
--- a/lib/spack/spack/stage.py
+++ b/lib/spack/spack/stage.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ import sys
import tempfile
from six import string_types
from six import iteritems
+from typing import Dict # novm
import llnl.util.tty as tty
from llnl.util.filesystem import mkdirp, can_access, install, install_tree
@@ -221,7 +222,7 @@ class Stage(object):
"""
"""Shared dict of all stage locks."""
- stage_locks = {}
+ stage_locks = {} # type: Dict[str, spack.util.lock.Lock]
"""Most staging is managed by Spack. DIYStage is one exception."""
managed_by_spack = True
@@ -602,12 +603,12 @@ class Stage(object):
"""
Ensures the top-level (config:build_stage) directory exists.
"""
- # Emulate file permissions for tempfile.mkdtemp.
+ # User has full permissions and group has only read permissions
if not os.path.exists(self.path):
- mkdirp(self.path, mode=stat.S_IRWXU)
+ mkdirp(self.path, mode=stat.S_IRWXU | stat.S_IRGRP | stat.S_IXGRP)
elif not os.path.isdir(self.path):
os.remove(self.path)
- mkdirp(self.path, mode=stat.S_IRWXU)
+ mkdirp(self.path, mode=stat.S_IRWXU | stat.S_IRGRP | stat.S_IXGRP)
# Make sure we can actually do something with the stage we made.
ensure_access(self.path)
diff --git a/lib/spack/spack/store.py b/lib/spack/spack/store.py
index 157ba00be6..5d05349b2d 100644
--- a/lib/spack/spack/store.py
+++ b/lib/spack/spack/store.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -158,6 +158,8 @@ class Store(object):
):
self.root = root
self.unpadded_root = unpadded_root or root
+ self.projections = projections
+ self.hash_length = hash_length
self.db = spack.database.Database(
root, upstream_dbs=retrieve_upstream_dbs())
self.layout = spack.directory_layout.YamlDirectoryLayout(
@@ -167,6 +169,27 @@ class Store(object):
"""Convenience function to reindex the store DB with its own layout."""
return self.db.reindex(self.layout)
+ def serialize(self):
+ """Return a pickle-able object that can be used to reconstruct
+ a store.
+ """
+ return (
+ self.root, self.unpadded_root, self.projections, self.hash_length
+ )
+
+ @staticmethod
+ def deserialize(token):
+ """Return a store reconstructed from a token created by
+ the serialize method.
+
+ Args:
+ token: return value of the serialize method
+
+ Returns:
+ Store object reconstructed from the token
+ """
+ return Store(*token)
+
def _store():
"""Get the singleton store instance."""
@@ -258,13 +281,12 @@ def use_store(store_or_path):
"""Use the store passed as argument within the context manager.
Args:
- store_or_path: either a Store object ot a path to where the
- store resides
+ store_or_path: either a Store object ot a path to where the store resides
Returns:
Store object associated with the context manager's store
"""
- global store
+ global store, db, layout, root, unpadded_root
# Normalize input arguments
temporary_store = store_or_path
@@ -272,8 +294,14 @@ def use_store(store_or_path):
temporary_store = Store(store_or_path)
# Swap the store with the one just constructed and return it
+ _ = store.db
original_store, store = store, temporary_store
+ db, layout = store.db, store.layout
+ root, unpadded_root = store.root, store.unpadded_root
+
yield temporary_store
# Restore the original store
store = original_store
+ db, layout = original_store.db, original_store.layout
+ root, unpadded_root = original_store.root, original_store.unpadded_root
diff --git a/lib/spack/spack/subprocess_context.py b/lib/spack/spack/subprocess_context.py
index b8e157740f..3eee2125d2 100644
--- a/lib/spack/spack/subprocess_context.py
+++ b/lib/spack/spack/subprocess_context.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -69,10 +69,12 @@ class PackageInstallContext(object):
self.serialized_pkg = serialize(pkg)
else:
self.pkg = pkg
+ self.spack_working_dir = spack.main.spack_working_dir
self.test_state = TestState()
def restore(self):
self.test_state.restore()
+ spack.main.spack_working_dir = self.spack_working_dir
if _serialize:
return pickle.load(self.serialized_pkg)
else:
@@ -91,18 +93,21 @@ class TestState(object):
self.config = spack.config.config
self.platform = spack.architecture.platform
self.test_patches = store_patches()
-
- # TODO: transfer spack.store.store? note that you should not
- # transfer spack.store.store and spack.store.db: 'db' is a
- # shortcut that accesses the store (so transferring both can
- # create an inconsistency). Some tests set 'db' directly, and
- # others set 'store'
+ self.store_token = spack.store.store.serialize()
def restore(self):
if _serialize:
spack.repo.path = spack.repo._path(self.repo_dirs)
spack.config.config = self.config
spack.architecture.platform = self.platform
+
+ new_store = spack.store.Store.deserialize(self.store_token)
+ spack.store.store = new_store
+ spack.store.root = new_store.root
+ spack.store.unpadded_root = new_store.unpadded_root
+ spack.store.db = new_store.db
+ spack.store.layout = new_store.layout
+
self.test_patches.restore()
diff --git a/lib/spack/spack/tengine.py b/lib/spack/spack/tengine.py
index 15268e682d..fc2f19f57f 100644
--- a/lib/spack/spack/tengine.py
+++ b/lib/spack/spack/tengine.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import itertools
import textwrap
+from typing import List # novm
import llnl.util.lang
import six
@@ -18,7 +19,7 @@ class ContextMeta(type):
"""
#: Keeps track of the context properties that have been added
#: by the class that is being defined
- _new_context_properties = []
+ _new_context_properties = [] # type: List[str]
def __new__(cls, name, bases, attr_dict):
# Merge all the context properties that are coming from base classes
diff --git a/lib/spack/spack/test/__init__.py b/lib/spack/spack/test/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/test/__init__.py
+++ b/lib/spack/spack/test/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/abi.py b/lib/spack/spack/test/abi.py
index dd41228941..ee2aa1f3e6 100644
--- a/lib/spack/spack/test/abi.py
+++ b/lib/spack/spack/test/abi.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/architecture.py b/lib/spack/spack/test/architecture.py
index 47e1e25fe8..e37818f10c 100644
--- a/lib/spack/spack/test/architecture.py
+++ b/lib/spack/spack/test/architecture.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/bindist.py b/lib/spack/spack/test/bindist.py
index 05cfda5019..1868d74ccc 100644
--- a/lib/spack/spack/test/bindist.py
+++ b/lib/spack/spack/test/bindist.py
@@ -1,96 +1,62 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-"""
-This test checks creating and install buildcaches
-"""
import os
import sys
+import platform
+
import py
import pytest
-import argparse
-import platform
-import spack.repo
-import spack.store
+
import spack.binary_distribution as bindist
-import spack.cmd.buildcache as buildcache
-import spack.cmd.install as install
-import spack.cmd.uninstall as uninstall
-import spack.cmd.mirror as mirror
+import spack.config
import spack.hooks.sbang as sbang
-from spack.main import SpackCommand
+import spack.main
import spack.mirror
+import spack.repo
+import spack.store
import spack.util.gpg
import spack.util.web as web_util
+
from spack.directory_layout import YamlDirectoryLayout
from spack.spec import Spec
-
-def_install_path_scheme = '${ARCHITECTURE}/${COMPILERNAME}-${COMPILERVER}/${PACKAGE}-${VERSION}-${HASH}' # noqa: E501
-ndef_install_path_scheme = '${PACKAGE}/${VERSION}/${ARCHITECTURE}-${COMPILERNAME}-${COMPILERVER}-${HASH}' # noqa: E501
-
-mirror_path_def = None
-mirror_path_rel = None
-
-mirror_cmd = SpackCommand('mirror')
-install_cmd = SpackCommand('install')
-uninstall_cmd = SpackCommand('uninstall')
-buildcache_cmd = SpackCommand('buildcache')
+mirror_cmd = spack.main.SpackCommand('mirror')
+install_cmd = spack.main.SpackCommand('install')
+uninstall_cmd = spack.main.SpackCommand('uninstall')
+buildcache_cmd = spack.main.SpackCommand('buildcache')
@pytest.fixture(scope='function')
def cache_directory(tmpdir):
- old_cache_path = spack.caches.fetch_cache
- tmpdir.ensure('fetch_cache', dir=True)
- fsc = spack.fetch_strategy.FsCache(str(tmpdir.join('fetch_cache')))
- spack.config.caches = fsc
- yield spack.config.caches
- tmpdir.join('fetch_cache').remove()
- spack.config.caches = old_cache_path
-
-
-@pytest.fixture(scope='session')
-def session_mirror_def(tmpdir_factory):
- dir = tmpdir_factory.mktemp('mirror')
- global mirror_path_rel
- mirror_path_rel = dir
- dir.ensure('build_cache', dir=True)
- yield dir
- dir.join('build_cache').remove()
+ fetch_cache_dir = tmpdir.ensure('fetch_cache', dir=True)
+ fsc = spack.fetch_strategy.FsCache(str(fetch_cache_dir))
+ spack.config.caches, old_cache_path = fsc, spack.caches.fetch_cache
+ yield spack.config.caches
-@pytest.fixture(scope='function')
-def mirror_directory_def(session_mirror_def):
- yield str(session_mirror_def)
+ fetch_cache_dir.remove()
+ spack.config.caches = old_cache_path
-@pytest.fixture(scope='session')
-def session_mirror_rel(tmpdir_factory):
+@pytest.fixture(scope='module')
+def mirror_dir(tmpdir_factory):
dir = tmpdir_factory.mktemp('mirror')
- global mirror_path_rel
- mirror_path_rel = dir
dir.ensure('build_cache', dir=True)
- yield dir
+ yield str(dir)
dir.join('build_cache').remove()
@pytest.fixture(scope='function')
-def mirror_directory_rel(session_mirror_rel):
- yield(session_mirror_rel)
-
-
-@pytest.fixture(scope='function')
-def function_mirror(tmpdir):
- mirror_dir = str(tmpdir.join('mirror'))
- mirror_cmd('add', '--scope', 'site', 'test-mirror-func',
- 'file://%s' % mirror_dir)
+def test_mirror(mirror_dir):
+ mirror_url = 'file://%s' % mirror_dir
+ mirror_cmd('add', '--scope', 'site', 'test-mirror-func', mirror_url)
yield mirror_dir
mirror_cmd('rm', '--scope=site', 'test-mirror-func')
-@pytest.fixture(scope='session')
+@pytest.fixture(scope='module')
def config_directory(tmpdir_factory):
tmpdir = tmpdir_factory.mktemp('test_configs')
# restore some sane defaults for packages and config
@@ -116,8 +82,14 @@ def config_directory(tmpdir_factory):
@pytest.fixture(scope='function')
-def default_config(tmpdir_factory, config_directory, monkeypatch):
-
+def default_config(
+ tmpdir_factory, config_directory, monkeypatch,
+ install_mockery_mutable_config
+):
+ # This fixture depends on install_mockery_mutable_config to ensure
+ # there is a clear order of initialization. The substitution of the
+ # config scopes here is done on top of the substitution that comes with
+ # install_mockery_mutable_config
mutable_dir = tmpdir_factory.mktemp('mutable_config').join('tmp')
config_directory.copy(mutable_dir)
@@ -126,7 +98,7 @@ def default_config(tmpdir_factory, config_directory, monkeypatch):
for name in ['site/%s' % platform.system().lower(),
'site', 'user']])
- monkeypatch.setattr(spack.config, 'config', cfg)
+ spack.config.config, old_config = cfg, spack.config.config
# This is essential, otherwise the cache will create weird side effects
# that will compromise subsequent tests if compilers.yaml is modified
@@ -148,18 +120,25 @@ def default_config(tmpdir_factory, config_directory, monkeypatch):
timeout = spack.config.get('config:connect_timeout')
if not timeout:
spack.config.set('config:connect_timeout', 10, scope='user')
+
yield spack.config.config
+
+ spack.config.config = old_config
mutable_dir.remove()
@pytest.fixture(scope='function')
def install_dir_default_layout(tmpdir):
"""Hooks a fake install directory with a default layout"""
- real_store = spack.store.store
- real_layout = spack.store.layout
- spack.store.store = spack.store.Store(str(tmpdir.join('opt')))
- spack.store.layout = YamlDirectoryLayout(str(tmpdir.join('opt')),
- path_scheme=def_install_path_scheme) # noqa: E501
+ scheme = os.path.join(
+ '${architecture}',
+ '${compiler.name}-${compiler.version}',
+ '${name}-${version}-${hash}'
+ )
+ real_store, real_layout = spack.store.store, spack.store.layout
+ opt_dir = tmpdir.join('opt')
+ spack.store.store = spack.store.Store(str(opt_dir))
+ spack.store.layout = YamlDirectoryLayout(str(opt_dir), path_scheme=scheme)
try:
yield spack.store
finally:
@@ -170,11 +149,14 @@ def install_dir_default_layout(tmpdir):
@pytest.fixture(scope='function')
def install_dir_non_default_layout(tmpdir):
"""Hooks a fake install directory with a non-default layout"""
- real_store = spack.store.store
- real_layout = spack.store.layout
- spack.store.store = spack.store.Store(str(tmpdir.join('opt')))
- spack.store.layout = YamlDirectoryLayout(str(tmpdir.join('opt')),
- path_scheme=ndef_install_path_scheme) # noqa: E501
+ scheme = os.path.join(
+ '${name}', '${version}',
+ '${architecture}-${compiler.name}-${compiler.version}-${hash}'
+ )
+ real_store, real_layout = spack.store.store, spack.store.layout
+ opt_dir = tmpdir.join('opt')
+ spack.store.store = spack.store.Store(str(opt_dir))
+ spack.store.layout = YamlDirectoryLayout(str(opt_dir), path_scheme=scheme)
try:
yield spack.store
finally:
@@ -190,308 +172,149 @@ else:
@pytest.mark.requires_executables(*args)
-@pytest.mark.disable_clean_stage_check
@pytest.mark.maybeslow
-@pytest.mark.usefixtures('default_config', 'cache_directory',
- 'install_dir_default_layout')
-def test_default_rpaths_create_install_default_layout(tmpdir,
- mirror_directory_def,
- install_mockery):
+@pytest.mark.usefixtures(
+ 'default_config', 'cache_directory', 'install_dir_default_layout',
+ 'test_mirror'
+)
+def test_default_rpaths_create_install_default_layout(mirror_dir):
"""
Test the creation and installation of buildcaches with default rpaths
into the default directory layout scheme.
"""
+ gspec, cspec = Spec('garply').concretized(), Spec('corge').concretized()
- gspec = Spec('garply')
- gspec.concretize()
- cspec = Spec('corge')
- cspec.concretize()
-
- iparser = argparse.ArgumentParser()
- install.setup_parser(iparser)
- # Install some packages with dependent packages
- iargs = iparser.parse_args(['--no-cache', cspec.name])
- install.install(iparser, iargs)
-
- global mirror_path_def
- mirror_path_def = mirror_directory_def
- mparser = argparse.ArgumentParser()
- mirror.setup_parser(mparser)
- margs = mparser.parse_args(
- ['add', '--scope', 'site', 'test-mirror-def', 'file://%s' % mirror_path_def])
- mirror.mirror(mparser, margs)
- margs = mparser.parse_args(['list'])
- mirror.mirror(mparser, margs)
-
- # setup argument parser
- parser = argparse.ArgumentParser()
- buildcache.setup_parser(parser)
-
- # Set default buildcache args
- create_args = ['create', '-a', '-u', '-d', str(mirror_path_def),
- cspec.name]
- install_args = ['install', '-a', '-u', cspec.name]
+ # Install 'corge' without using a cache
+ install_cmd('--no-cache', cspec.name)
# Create a buildache
- args = parser.parse_args(create_args)
- buildcache.buildcache(parser, args)
- # Test force overwrite create buildcache
- create_args.insert(create_args.index('-a'), '-f')
- args = parser.parse_args(create_args)
- buildcache.buildcache(parser, args)
- # create mirror index
- args = parser.parse_args(['update-index', '-d', 'file://%s' % str(mirror_path_def)])
- buildcache.buildcache(parser, args)
- # list the buildcaches in the mirror
- args = parser.parse_args(['list', '-a', '-l', '-v'])
- buildcache.buildcache(parser, args)
+ buildcache_cmd('create', '-au', '-d', mirror_dir, cspec.name)
+ # Test force overwrite create buildcache (-f option)
+ buildcache_cmd('create', '-auf', '-d', mirror_dir, cspec.name)
+
+ # Create mirror index
+ mirror_url = 'file://{0}'.format(mirror_dir)
+ buildcache_cmd('update-index', '-d', mirror_url)
+ # List the buildcaches in the mirror
+ buildcache_cmd('list', '-alv')
# Uninstall the package and deps
- uparser = argparse.ArgumentParser()
- uninstall.setup_parser(uparser)
- uargs = uparser.parse_args(['-y', '--dependents', gspec.name])
- uninstall.uninstall(uparser, uargs)
+ uninstall_cmd('-y', '--dependents', gspec.name)
- # test install
- args = parser.parse_args(install_args)
- buildcache.buildcache(parser, args)
+ # Test installing from build caches
+ buildcache_cmd('install', '-au', cspec.name)
# This gives warning that spec is already installed
- buildcache.buildcache(parser, args)
-
- # test overwrite install
- install_args.insert(install_args.index('-a'), '-f')
- args = parser.parse_args(install_args)
- buildcache.buildcache(parser, args)
+ buildcache_cmd('install', '-au', cspec.name)
- args = parser.parse_args(['keys', '-f'])
- buildcache.buildcache(parser, args)
+ # Test overwrite install
+ buildcache_cmd('install', '-afu', cspec.name)
- args = parser.parse_args(['list'])
- buildcache.buildcache(parser, args)
+ buildcache_cmd('keys', '-f')
+ buildcache_cmd('list')
- args = parser.parse_args(['list', '-a'])
- buildcache.buildcache(parser, args)
-
- args = parser.parse_args(['list', '-l', '-v'])
- buildcache.buildcache(parser, args)
- bindist.clear_spec_cache()
- spack.stage.purge()
- margs = mparser.parse_args(
- ['rm', '--scope', 'site', 'test-mirror-def'])
- mirror.mirror(mparser, margs)
+ buildcache_cmd('list', '-a')
+ buildcache_cmd('list', '-l', '-v')
@pytest.mark.requires_executables(*args)
-@pytest.mark.disable_clean_stage_check
@pytest.mark.maybeslow
@pytest.mark.nomockstage
-@pytest.mark.usefixtures('default_config', 'cache_directory',
- 'install_dir_non_default_layout')
-def test_default_rpaths_install_nondefault_layout(tmpdir,
- install_mockery):
+@pytest.mark.usefixtures(
+ 'default_config', 'cache_directory', 'install_dir_non_default_layout',
+ 'test_mirror'
+)
+def test_default_rpaths_install_nondefault_layout(mirror_dir):
"""
Test the creation and installation of buildcaches with default rpaths
into the non-default directory layout scheme.
"""
-
- gspec = Spec('garply')
- gspec.concretize()
- cspec = Spec('corge')
- cspec.concretize()
-
- global mirror_path_def
- mparser = argparse.ArgumentParser()
- mirror.setup_parser(mparser)
- margs = mparser.parse_args(
- ['add', '--scope', 'site', 'test-mirror-def', 'file://%s' % mirror_path_def])
- mirror.mirror(mparser, margs)
-
- # setup argument parser
- parser = argparse.ArgumentParser()
- buildcache.setup_parser(parser)
-
- # Set default buildcache args
- install_args = ['install', '-a', '-u', '%s' % cspec.name]
+ cspec = Spec('corge').concretized()
# Install some packages with dependent packages
# test install in non-default install path scheme
- args = parser.parse_args(install_args)
- buildcache.buildcache(parser, args)
- # test force install in non-default install path scheme
- install_args.insert(install_args.index('-a'), '-f')
- args = parser.parse_args(install_args)
- buildcache.buildcache(parser, args)
+ buildcache_cmd('install', '-au', cspec.name)
- bindist.clear_spec_cache()
- spack.stage.purge()
- margs = mparser.parse_args(
- ['rm', '--scope', 'site', 'test-mirror-def'])
- mirror.mirror(mparser, margs)
+ # Test force install in non-default install path scheme
+ buildcache_cmd('install', '-auf', cspec.name)
@pytest.mark.requires_executables(*args)
-@pytest.mark.disable_clean_stage_check
@pytest.mark.maybeslow
@pytest.mark.nomockstage
-@pytest.mark.usefixtures('default_config', 'cache_directory',
- 'install_dir_default_layout')
-def test_relative_rpaths_create_default_layout(tmpdir,
- mirror_directory_rel,
- install_mockery):
+@pytest.mark.usefixtures(
+ 'default_config', 'cache_directory', 'install_dir_default_layout'
+)
+def test_relative_rpaths_create_default_layout(mirror_dir):
"""
Test the creation and installation of buildcaches with relative
rpaths into the default directory layout scheme.
"""
- gspec = Spec('garply')
- gspec.concretize()
- cspec = Spec('corge')
- cspec.concretize()
+ gspec, cspec = Spec('garply').concretized(), Spec('corge').concretized()
- global mirror_path_rel
- mirror_path_rel = mirror_directory_rel
- # Install patchelf needed for relocate in linux test environment
- iparser = argparse.ArgumentParser()
- install.setup_parser(iparser)
- # Install some packages with dependent packages
- iargs = iparser.parse_args(['--no-cache', cspec.name])
- install.install(iparser, iargs)
-
- # setup argument parser
- parser = argparse.ArgumentParser()
- buildcache.setup_parser(parser)
-
- # set default buildcache args
- create_args = ['create', '-a', '-u', '-r', '-d',
- str(mirror_path_rel),
- cspec.name]
-
- # create build cache with relatived rpaths
- args = parser.parse_args(create_args)
- buildcache.buildcache(parser, args)
- # create mirror index
- args = parser.parse_args(['update-index', '-d', 'file://%s' % str(mirror_path_rel)])
- buildcache.buildcache(parser, args)
- # Uninstall the package and deps
- uparser = argparse.ArgumentParser()
- uninstall.setup_parser(uparser)
- uargs = uparser.parse_args(['-y', '--dependents', gspec.name])
- uninstall.uninstall(uparser, uargs)
+ # Install 'corge' without using a cache
+ install_cmd('--no-cache', cspec.name)
- bindist.clear_spec_cache()
- spack.stage.purge()
+ # Create build cache with relative rpaths
+ buildcache_cmd(
+ 'create', '-aur', '-d', mirror_dir, cspec.name
+ )
+
+ # Create mirror index
+ mirror_url = 'file://%s' % mirror_dir
+ buildcache_cmd('update-index', '-d', mirror_url)
+
+ # Uninstall the package and deps
+ uninstall_cmd('-y', '--dependents', gspec.name)
@pytest.mark.requires_executables(*args)
-@pytest.mark.disable_clean_stage_check
@pytest.mark.maybeslow
@pytest.mark.nomockstage
-@pytest.mark.usefixtures('default_config', 'cache_directory',
- 'install_dir_default_layout')
-def test_relative_rpaths_install_default_layout(tmpdir,
- install_mockery):
+@pytest.mark.usefixtures(
+ 'default_config', 'cache_directory', 'install_dir_default_layout',
+ 'test_mirror'
+)
+def test_relative_rpaths_install_default_layout(mirror_dir):
"""
Test the creation and installation of buildcaches with relative
rpaths into the default directory layout scheme.
"""
+ gspec, cspec = Spec('garply').concretized(), Spec('corge').concretized()
- gspec = Spec('garply')
- gspec.concretize()
- cspec = Spec('corge')
- cspec.concretize()
-
- global mirror_path_rel
- mparser = argparse.ArgumentParser()
- mirror.setup_parser(mparser)
- margs = mparser.parse_args(
- ['add', '--scope', 'site', 'test-mirror-rel', 'file://%s' % mirror_path_rel])
- mirror.mirror(mparser, margs)
-
- iparser = argparse.ArgumentParser()
- install.setup_parser(iparser)
-
- # setup argument parser
- parser = argparse.ArgumentParser()
- buildcache.setup_parser(parser)
-
- # set default buildcache args
- install_args = ['install', '-a', '-u', '-f',
- cspec.name]
-
- # install buildcache created with relativized rpaths
- args = parser.parse_args(install_args)
- buildcache.buildcache(parser, args)
+ # Install buildcache created with relativized rpaths
+ buildcache_cmd('install', '-auf', cspec.name)
# This gives warning that spec is already installed
- buildcache.buildcache(parser, args)
+ buildcache_cmd('install', '-auf', cspec.name)
# Uninstall the package and deps
- uparser = argparse.ArgumentParser()
- uninstall.setup_parser(uparser)
- uargs = uparser.parse_args(['-y', '--dependents', gspec.name])
- uninstall.uninstall(uparser, uargs)
-
- # install build cache
- buildcache.buildcache(parser, args)
+ uninstall_cmd('-y', '--dependents', gspec.name)
- # test overwrite install
- install_args.insert(install_args.index('-a'), '-f')
- args = parser.parse_args(install_args)
- buildcache.buildcache(parser, args)
+ # Install build cache
+ buildcache_cmd('install', '-auf', cspec.name)
- bindist.clear_spec_cache()
- spack.stage.purge()
- margs = mparser.parse_args(
- ['rm', '--scope', 'site', 'test-mirror-rel'])
- mirror.mirror(mparser, margs)
+ # Test overwrite install
+ buildcache_cmd('install', '-auf', cspec.name)
@pytest.mark.requires_executables(*args)
-@pytest.mark.disable_clean_stage_check
@pytest.mark.maybeslow
@pytest.mark.nomockstage
-@pytest.mark.usefixtures('default_config', 'cache_directory',
- 'install_dir_non_default_layout')
-def test_relative_rpaths_install_nondefault(tmpdir,
- install_mockery):
+@pytest.mark.usefixtures(
+ 'default_config', 'cache_directory', 'install_dir_non_default_layout',
+ 'test_mirror'
+)
+def test_relative_rpaths_install_nondefault(mirror_dir):
"""
Test the installation of buildcaches with relativized rpaths
into the non-default directory layout scheme.
"""
+ cspec = Spec('corge').concretized()
- gspec = Spec('garply')
- gspec.concretize()
- cspec = Spec('corge')
- cspec.concretize()
-
- global mirror_path_rel
-
- mparser = argparse.ArgumentParser()
- mirror.setup_parser(mparser)
- margs = mparser.parse_args(
- ['add', '--scope', 'site', 'test-mirror-rel', 'file://%s' % mirror_path_rel])
- mirror.mirror(mparser, margs)
-
- iparser = argparse.ArgumentParser()
- install.setup_parser(iparser)
-
- # setup argument parser
- parser = argparse.ArgumentParser()
- buildcache.setup_parser(parser)
-
- # Set default buildcache args
- install_args = ['install', '-a', '-u', '-f', '%s' % cspec.name]
-
- # test install in non-default install path scheme and relative path
- args = parser.parse_args(install_args)
- buildcache.buildcache(parser, args)
-
- bindist.clear_spec_cache()
- spack.stage.purge()
- margs = mparser.parse_args(
- ['rm', '--scope', 'site', 'test-mirror-rel'])
- mirror.mirror(mparser, margs)
+ # Test install in non-default install path scheme and relative path
+ buildcache_cmd('install', '-auf', cspec.name)
@pytest.mark.skipif(not spack.util.gpg.has_gpg(),
@@ -534,38 +357,20 @@ def test_push_and_fetch_keys(mock_gnupghome):
@pytest.mark.requires_executables(*args)
-@pytest.mark.disable_clean_stage_check
@pytest.mark.maybeslow
@pytest.mark.nomockstage
-@pytest.mark.usefixtures('default_config', 'cache_directory',
- 'install_dir_non_default_layout')
-def test_built_spec_cache(tmpdir,
- install_mockery):
+@pytest.mark.usefixtures(
+ 'default_config', 'cache_directory', 'install_dir_non_default_layout',
+ 'test_mirror'
+)
+def test_built_spec_cache(mirror_dir):
""" Because the buildcache list command fetches the buildcache index
and uses it to populate the binary_distribution built spec cache, when
this test calls get_mirrors_for_spec, it is testing the popluation of
that cache from a buildcache index. """
- global mirror_path_rel
-
- mparser = argparse.ArgumentParser()
- mirror.setup_parser(mparser)
- margs = mparser.parse_args(
- ['add', '--scope', 'site', 'test-mirror-rel', 'file://%s' % mirror_path_rel])
- mirror.mirror(mparser, margs)
-
- # setup argument parser
- parser = argparse.ArgumentParser()
- buildcache.setup_parser(parser)
-
- list_args = ['list', '-a', '-l']
- args = parser.parse_args(list_args)
- buildcache.buildcache(parser, args)
-
- gspec = Spec('garply')
- gspec.concretize()
+ buildcache_cmd('list', '-a', '-l')
- cspec = Spec('corge')
- cspec.concretize()
+ gspec, cspec = Spec('garply').concretized(), Spec('corge').concretized()
full_hash_map = {
'garply': gspec.full_hash(),
@@ -590,12 +395,6 @@ def test_built_spec_cache(tmpdir,
assert(result['mirror_url'] not in cspec_mirrors)
cspec_mirrors[result['mirror_url']] = True
- bindist.clear_spec_cache()
-
- margs = mparser.parse_args(
- ['rm', '--scope', 'site', 'test-mirror-rel'])
- mirror.mirror(mparser, margs)
-
def fake_full_hash(spec):
# Generate an arbitrary hash that is intended to be different than
@@ -604,8 +403,11 @@ def fake_full_hash(spec):
return 'tal4c7h4z0gqmixb1eqa92mjoybxn5l6'
-def test_spec_needs_rebuild(install_mockery_mutable_config, mock_packages,
- mock_fetch, monkeypatch, tmpdir):
+@pytest.mark.usefixtures(
+ 'install_mockery_mutable_config', 'mock_packages', 'mock_fetch',
+ 'test_mirror'
+)
+def test_spec_needs_rebuild(monkeypatch, tmpdir):
"""Make sure needs_rebuild properly compares remote full_hash
against locally computed one, avoiding unnecessary rebuilds"""
@@ -613,8 +415,6 @@ def test_spec_needs_rebuild(install_mockery_mutable_config, mock_packages,
mirror_dir = tmpdir.join('mirror_dir')
mirror_url = 'file://{0}'.format(mirror_dir.strpath)
- mirror_cmd('add', 'test-mirror', mirror_url)
-
s = Spec('libdwarf').concretized()
# Install a package
@@ -683,47 +483,49 @@ def test_generate_indices_exception(monkeypatch, capfd):
assert expect in err
-@pytest.mark.usefixtures('mock_fetch')
-def test_update_sbang(tmpdir, install_mockery, function_mirror):
- """
- Test the creation and installation of buildcaches with default rpaths
+@pytest.mark.usefixtures('mock_fetch', 'install_mockery')
+def test_update_sbang(tmpdir, test_mirror):
+ """Test the creation and installation of buildcaches with default rpaths
into the non-default directory layout scheme, triggering an update of the
sbang.
"""
-
- # Save the original store and layout before we touch ANYTHING.
- real_store = spack.store.store
- real_layout = spack.store.layout
-
+ scheme = os.path.join(
+ '${name}', '${version}',
+ '${architecture}-${compiler.name}-${compiler.version}-${hash}'
+ )
+ spec_str = 'old-sbang'
# Concretize a package with some old-fashioned sbang lines.
- sspec = Spec('old-sbang')
- sspec.concretize()
+ old_spec = Spec(spec_str).concretized()
+ old_spec_hash_str = '/{0}'.format(old_spec.dag_hash())
# Need a fake mirror with *function* scope.
- mirror_dir = function_mirror
+ mirror_dir = test_mirror
+ mirror_url = 'file://{0}'.format(mirror_dir)
- # Assumes all commands will concretize sspec the same way.
- install_cmd('--no-cache', sspec.name)
+ # Assume all commands will concretize old_spec the same way.
+ install_cmd('--no-cache', old_spec.name)
# Create a buildcache with the installed spec.
- buildcache_cmd('create', '-u', '-a', '-d', mirror_dir,
- '/%s' % sspec.dag_hash())
+ buildcache_cmd('create', '-u', '-a', '-d', mirror_dir, old_spec_hash_str)
# Need to force an update of the buildcache index
- buildcache_cmd('update-index', '-d', 'file://%s' % mirror_dir)
+ buildcache_cmd('update-index', '-d', mirror_url)
# Uninstall the original package.
- uninstall_cmd('-y', '/%s' % sspec.dag_hash())
+ uninstall_cmd('-y', old_spec_hash_str)
- try:
- # New install tree locations...
- # Too fine-grained to do be done in a fixture
- spack.store.store = spack.store.Store(str(tmpdir.join('newtree')))
- spack.store.layout = YamlDirectoryLayout(str(tmpdir.join('newtree')),
- path_scheme=ndef_install_path_scheme) # noqa: E501
+ # Switch the store to the new install tree locations
+ newtree_dir = tmpdir.join('newtree')
+ s = spack.store.Store(str(newtree_dir))
+ s.layout = YamlDirectoryLayout(str(newtree_dir), path_scheme=scheme)
+
+ with spack.store.use_store(s):
+ new_spec = Spec('old-sbang')
+ new_spec.concretize()
+ assert new_spec.dag_hash() == old_spec.dag_hash()
# Install package from buildcache
- buildcache_cmd('install', '-a', '-u', '-f', sspec.name)
+ buildcache_cmd('install', '-a', '-u', '-f', new_spec.name)
# Continue blowing away caches
bindist.clear_spec_cache()
@@ -734,25 +536,19 @@ def test_update_sbang(tmpdir, install_mockery, function_mirror):
#!/usr/bin/env python
{1}
- '''.format(sbang.sbang_shebang_line(), sspec.prefix.bin)
+'''.format(sbang.sbang_shebang_line(), new_spec.prefix.bin)
sbang_style_2_expected = '''{0}
#!/usr/bin/env python
{1}
- '''.format(sbang.sbang_shebang_line(), sspec.prefix.bin)
+'''.format(sbang.sbang_shebang_line(), new_spec.prefix.bin)
- installed_script_style_1_path = \
- sspec.prefix.bin.join('sbang-style-1.sh')
+ installed_script_style_1_path = new_spec.prefix.bin.join('sbang-style-1.sh')
assert sbang_style_1_expected == \
open(str(installed_script_style_1_path)).read()
- installed_script_style_2_path = \
- sspec.prefix.bin.join('sbang-style-2.sh')
+ installed_script_style_2_path = new_spec.prefix.bin.join('sbang-style-2.sh')
assert sbang_style_2_expected == \
open(str(installed_script_style_2_path)).read()
- uninstall_cmd('-y', '/%s' % sspec.dag_hash())
-
- finally:
- spack.store.store = real_store
- spack.store.layout = real_layout
+ uninstall_cmd('-y', '/%s' % new_spec.dag_hash())
diff --git a/lib/spack/spack/test/bootstrap.py b/lib/spack/spack/test/bootstrap.py
index 56083b327f..97687ddb4d 100644
--- a/lib/spack/spack/test/bootstrap.py
+++ b/lib/spack/spack/test/bootstrap.py
@@ -22,5 +22,5 @@ def test_store_is_restored_correctly_after_bootstrap(mutable_config, tmpdir):
# Test that within the context manager we use the bootstrap store
# and that outside we restore the correct location
with spack.bootstrap.ensure_bootstrap_configuration():
- assert str(spack.store.root) == spack.paths.user_bootstrap_store
- assert str(spack.store.root) == user_path
+ assert spack.store.root == spack.paths.user_bootstrap_store
+ assert spack.store.root == user_path
diff --git a/lib/spack/spack/test/build_distribution.py b/lib/spack/spack/test/build_distribution.py
index 2d567aee14..873a57a0e9 100644
--- a/lib/spack/spack/test/build_distribution.py
+++ b/lib/spack/spack/test/build_distribution.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/build_environment.py b/lib/spack/spack/test/build_environment.py
index b374a7c8ce..7aca1dea59 100644
--- a/lib/spack/spack/test/build_environment.py
+++ b/lib/spack/spack/test/build_environment.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,9 +14,9 @@ import spack.spec
import spack.util.spack_yaml as syaml
from spack.paths import build_env_path
from spack.build_environment import dso_suffix, _static_to_shared_library
+from spack.build_environment import determine_number_of_jobs
from spack.util.executable import Executable
from spack.util.environment import EnvironmentModifications
-
from llnl.util.filesystem import LibraryList, HeaderList
@@ -379,3 +379,22 @@ def test_setting_dtags_based_on_config(
dtags_to_add = modifications['SPACK_DTAGS_TO_ADD'][0]
assert dtags_to_add.value == expected_flag
+
+
+def test_build_jobs_sequential_is_sequential():
+ assert determine_number_of_jobs(
+ parallel=False, command_line=8, config_default=8, max_cpus=8) == 1
+
+
+def test_build_jobs_command_line_overrides():
+ assert determine_number_of_jobs(
+ parallel=True, command_line=10, config_default=1, max_cpus=1) == 10
+ assert determine_number_of_jobs(
+ parallel=True, command_line=10, config_default=100, max_cpus=100) == 10
+
+
+def test_build_jobs_defaults():
+ assert determine_number_of_jobs(
+ parallel=True, command_line=None, config_default=1, max_cpus=10) == 1
+ assert determine_number_of_jobs(
+ parallel=True, command_line=None, config_default=100, max_cpus=10) == 10
diff --git a/lib/spack/spack/test/build_system_guess.py b/lib/spack/spack/test/build_system_guess.py
index 6c2e3c6be5..ab9735fd48 100644
--- a/lib/spack/spack/test/build_system_guess.py
+++ b/lib/spack/spack/test/build_system_guess.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/build_systems.py b/lib/spack/spack/test/build_systems.py
index 1606ba8ebd..b02da380a8 100644
--- a/lib/spack/spack/test/build_systems.py
+++ b/lib/spack/spack/test/build_systems.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/buildrequest.py b/lib/spack/spack/test/buildrequest.py
index 5918838edc..22d7b5fff1 100644
--- a/lib/spack/spack/test/buildrequest.py
+++ b/lib/spack/spack/test/buildrequest.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/buildtask.py b/lib/spack/spack/test/buildtask.py
index f82ff6861a..44faf6244d 100644
--- a/lib/spack/spack/test/buildtask.py
+++ b/lib/spack/spack/test/buildtask.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cache_fetch.py b/lib/spack/spack/test/cache_fetch.py
index 3b4c3cb887..8771769307 100644
--- a/lib/spack/spack/test/cache_fetch.py
+++ b/lib/spack/spack/test/cache_fetch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cc.py b/lib/spack/spack/test/cc.py
index 7b8d34fbde..20ec946835 100644
--- a/lib/spack/spack/test/cc.py
+++ b/lib/spack/spack/test/cc.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,6 +28,7 @@ test_args = [
'-Wl,--end-group',
'-Xlinker', '-rpath', '-Xlinker', '/third/rpath',
'-Xlinker', '-rpath', '-Xlinker', '/fourth/rpath',
+ '-Wl,--rpath,/fifth/rpath', '-Wl,--rpath', '-Wl,/sixth/rpath',
'-llib3', '-llib4',
'arg5', 'arg6']
@@ -45,11 +46,13 @@ test_library_paths = [
test_wl_rpaths = [
'-Wl,-rpath,/first/rpath', '-Wl,-rpath,/second/rpath',
- '-Wl,-rpath,/third/rpath', '-Wl,-rpath,/fourth/rpath']
+ '-Wl,-rpath,/third/rpath', '-Wl,-rpath,/fourth/rpath',
+ '-Wl,-rpath,/fifth/rpath', '-Wl,-rpath,/sixth/rpath']
test_rpaths = [
'-rpath', '/first/rpath', '-rpath', '/second/rpath',
- '-rpath', '/third/rpath', '-rpath', '/fourth/rpath']
+ '-rpath', '/third/rpath', '-rpath', '/fourth/rpath',
+ '-rpath', '/fifth/rpath', '-rpath', '/sixth/rpath']
test_args_without_paths = [
'arg1',
@@ -347,15 +350,15 @@ def test_ccld_deps_isystem():
with set_env(SPACK_INCLUDE_DIRS='xinc:yinc:zinc',
SPACK_RPATH_DIRS='xlib:ylib:zlib',
SPACK_LINK_DIRS='xlib:ylib:zlib'):
- mytest_args = test_args + ['-isystemfooinc']
+ mytest_args = test_args + ['-isystem', 'fooinc']
check_args(
cc, mytest_args,
[real_cc] +
test_include_paths +
- ['-isystemfooinc',
- '-isystemxinc',
- '-isystemyinc',
- '-isystemzinc'] +
+ ['-isystem', 'fooinc',
+ '-isystem', 'xinc',
+ '-isystem', 'yinc',
+ '-isystem', 'zinc'] +
test_library_paths +
['-Lxlib',
'-Lylib',
@@ -429,20 +432,20 @@ def test_ccld_with_system_dirs_isystem():
SPACK_RPATH_DIRS='xlib:ylib:zlib',
SPACK_LINK_DIRS='xlib:ylib:zlib'):
- sys_path_args = ['-isystem/usr/include',
+ sys_path_args = ['-isystem', '/usr/include',
'-L/usr/local/lib',
'-Wl,-rpath,/usr/lib64',
- '-isystem/usr/local/include',
+ '-isystem', '/usr/local/include',
'-L/lib64/']
check_args(
cc, sys_path_args + test_args,
[real_cc] +
test_include_paths +
- ['-isystemxinc',
- '-isystemyinc',
- '-isystemzinc'] +
- ['-isystem/usr/include',
- '-isystem/usr/local/include'] +
+ ['-isystem', 'xinc',
+ '-isystem', 'yinc',
+ '-isystem', 'zinc'] +
+ ['-isystem', '/usr/include',
+ '-isystem', '/usr/local/include'] +
test_library_paths +
['-Lxlib',
'-Lylib',
@@ -619,3 +622,24 @@ def test_filter_enable_new_dtags(wrapper_flags):
result = cc(*(test_args + ['-Wl,--enable-new-dtags']), output=str)
result = result.strip().split('\n')
assert '-Wl,--enable-new-dtags' not in result
+
+
+@pytest.mark.regression('22643')
+def test_linker_strips_loopopt(wrapper_flags):
+ with set_env(SPACK_TEST_COMMAND='dump-args'):
+ # ensure that -loopopt=0 is not present in ld mode
+ result = ld(*(test_args + ["-loopopt=0"]), output=str)
+ result = result.strip().split('\n')
+ assert '-loopopt=0' not in result
+
+ # ensure that -loopopt=0 is not present in ccld mode
+ result = cc(*(test_args + ["-loopopt=0"]), output=str)
+ result = result.strip().split('\n')
+ assert '-loopopt=0' not in result
+
+ # ensure that -loopopt=0 *is* present in cc mode
+ # The "-c" argument is needed for cc to be detected
+ # as compile only (cc) mode.
+ result = cc(*(test_args + ["-loopopt=0", "-c", "x.c"]), output=str)
+ result = result.strip().split('\n')
+ assert '-loopopt=0' in result
diff --git a/lib/spack/spack/test/ci.py b/lib/spack/spack/test/ci.py
index f1986b34d0..dae5066bf8 100644
--- a/lib/spack/spack/test/ci.py
+++ b/lib/spack/spack/test/ci.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -114,6 +114,7 @@ def test_get_concrete_specs(config, mock_packages):
assert('archive-files' in spec_map)
+@pytest.mark.maybeslow
def test_register_cdash_build():
build_name = 'Some pkg'
base_url = 'http://cdash.fake.org'
diff --git a/lib/spack/spack/test/cmd/__init__.py b/lib/spack/spack/test/cmd/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/test/cmd/__init__.py
+++ b/lib/spack/spack/test/cmd/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/activate.py b/lib/spack/spack/test/cmd/activate.py
index a3546230f1..48806c5833 100644
--- a/lib/spack/spack/test/cmd/activate.py
+++ b/lib/spack/spack/test/cmd/activate.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/analyze.py b/lib/spack/spack/test/cmd/analyze.py
new file mode 100644
index 0000000000..6d164063ab
--- /dev/null
+++ b/lib/spack/spack/test/cmd/analyze.py
@@ -0,0 +1,176 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import os
+import pytest
+
+import spack.config
+import spack.package
+import spack.cmd.install
+
+from spack.spec import Spec
+import spack.util.spack_json as sjson
+from spack.main import SpackCommand
+
+install = SpackCommand('install')
+analyze = SpackCommand('analyze')
+
+
+def test_test_package_not_installed(mock_fetch, install_mockery_mutable_config):
+ # We cannot run an analysis for a package not installed
+ out = analyze('run', 'libdwarf', fail_on_error=False)
+ assert "==> Error: Spec 'libdwarf' matches no installed packages.\n" in out
+
+
+def test_analyzer_get_install_dir(mock_fetch, install_mockery_mutable_config):
+ """
+ Test that we cannot get an analyzer directory without a spec package.
+ """
+ spec = Spec('libdwarf').concretized()
+ assert 'libdwarf' in spack.analyzers.analyzer_base.get_analyzer_dir(spec)
+
+ # Case 1: spec is missing attribute for package
+ with pytest.raises(SystemExit):
+ spack.analyzers.analyzer_base.get_analyzer_dir(None)
+
+ class Packageless(object):
+ package = None
+
+ # Case 2: spec has package attribute, but it's None
+ with pytest.raises(SystemExit):
+ spack.analyzers.analyzer_base.get_analyzer_dir(Packageless())
+
+
+def test_malformed_analyzer(mock_fetch, install_mockery_mutable_config):
+ """
+ Test that an analyzer missing needed attributes is invalid.
+ """
+ from spack.analyzers.analyzer_base import AnalyzerBase
+
+ # Missing attribute description
+ class MyAnalyzer(AnalyzerBase):
+ name = "my_analyzer"
+ outfile = "my_analyzer_output.txt"
+
+ spec = Spec('libdwarf').concretized()
+ with pytest.raises(SystemExit):
+ MyAnalyzer(spec)
+
+
+def test_analyze_output(tmpdir, mock_fetch, install_mockery_mutable_config):
+ """
+ Test that an analyzer errors if requested name does not exist.
+ """
+ install('libdwarf')
+ install('python@3.8')
+ analyzer_dir = tmpdir.join('analyzers')
+
+ # An analyzer that doesn't exist should not work
+ out = analyze('run', '-a', 'pusheen', 'libdwarf', fail_on_error=False)
+ assert '==> Error: Analyzer pusheen does not exist\n' in out
+
+ # We will output to this analyzer directory
+ analyzer_dir = tmpdir.join('analyzers')
+ out = analyze('run', '-a', 'install_files', '-p', str(analyzer_dir), 'libdwarf')
+
+ # Ensure that if we run again without over write, we don't run
+ out = analyze('run', '-a', 'install_files', '-p', str(analyzer_dir), 'libdwarf')
+ assert "skipping" in out
+
+ # With overwrite it should run
+ out = analyze('run', '-a', 'install_files', '-p', str(analyzer_dir),
+ '--overwrite', 'libdwarf')
+ assert "==> Writing result to" in out
+
+
+def _run_analyzer(name, package, tmpdir):
+ """
+ A shared function to test that an analyzer runs.
+
+ We return the output file for further inspection.
+ """
+ analyzer = spack.analyzers.get_analyzer(name)
+ analyzer_dir = tmpdir.join('analyzers')
+ out = analyze('run', '-a', analyzer.name, '-p', str(analyzer_dir), package)
+
+ assert "==> Writing result to" in out
+ assert "/%s/%s\n" % (analyzer.name, analyzer.outfile) in out
+
+ # The output file should exist
+ output_file = out.strip('\n').split(' ')[-1].strip()
+ assert os.path.exists(output_file)
+ return output_file
+
+
+def test_installfiles_analyzer(tmpdir, mock_fetch, install_mockery_mutable_config):
+ """
+ test the install files analyzer
+ """
+ install('libdwarf')
+ output_file = _run_analyzer("install_files", "libdwarf", tmpdir)
+
+ # Ensure it's the correct content
+ with open(output_file, 'r') as fd:
+ content = sjson.load(fd.read())
+
+ basenames = set()
+ for key, attrs in content.items():
+ basenames.add(os.path.basename(key))
+
+ # Check for a few expected files
+ for key in ['.spack', 'libdwarf', 'packages', 'repo.yaml', 'repos']:
+ assert key in basenames
+
+
+def test_environment_analyzer(tmpdir, mock_fetch, install_mockery_mutable_config):
+ """
+ test the environment variables analyzer.
+ """
+ install('libdwarf')
+ output_file = _run_analyzer("environment_variables", "libdwarf", tmpdir)
+ with open(output_file, 'r') as fd:
+ content = sjson.load(fd.read())
+
+ # Check a few expected keys
+ for key in ['SPACK_CC', 'SPACK_COMPILER_SPEC', 'SPACK_ENV_PATH']:
+ assert key in content
+
+ # The analyzer should return no result if the output file does not exist.
+ spec = Spec('libdwarf').concretized()
+ env_file = os.path.join(spec.package.prefix, '.spack', 'spack-build-env.txt')
+ assert os.path.exists(env_file)
+ os.remove(env_file)
+ analyzer = spack.analyzers.get_analyzer("environment_variables")
+ analyzer_dir = tmpdir.join('analyzers')
+ result = analyzer(spec, analyzer_dir).run()
+ assert "environment_variables" in result
+ assert not result['environment_variables']
+
+
+def test_list_analyzers():
+ """
+ test that listing analyzers shows all the possible analyzers.
+ """
+ from spack.analyzers import analyzer_types
+
+ # all cannot be an analyzer
+ assert "all" not in analyzer_types
+
+ # All types should be present!
+ out = analyze('list-analyzers')
+ for analyzer_type in analyzer_types:
+ assert analyzer_type in out
+
+
+def test_configargs_analyzer(tmpdir, mock_fetch, install_mockery_mutable_config):
+ """
+ test the config args analyzer.
+
+ Since we don't have any, this should return an empty result.
+ """
+ install('libdwarf')
+ analyzer_dir = tmpdir.join('analyzers')
+ out = analyze('run', '-a', 'config_args', '-p', str(analyzer_dir), 'libdwarf')
+ assert out == ''
diff --git a/lib/spack/spack/test/cmd/arch.py b/lib/spack/spack/test/cmd/arch.py
index ec3c92a3d0..cf4969ce28 100644
--- a/lib/spack/spack/test/cmd/arch.py
+++ b/lib/spack/spack/test/cmd/arch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/blame.py b/lib/spack/spack/test/cmd/blame.py
index 61bdf41084..5ca69bb7b4 100644
--- a/lib/spack/spack/test/cmd/blame.py
+++ b/lib/spack/spack/test/cmd/blame.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/build_env.py b/lib/spack/spack/test/cmd/build_env.py
index b7de759a2e..d73b5bb972 100644
--- a/lib/spack/spack/test/cmd/build_env.py
+++ b/lib/spack/spack/test/cmd/build_env.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,9 +6,9 @@
from six.moves import cPickle
import pytest
-from spack.main import SpackCommand, SpackCommandError
+from spack.main import SpackCommand
-info = SpackCommand('build-env')
+build_env = SpackCommand('build-env')
@pytest.mark.parametrize('pkg', [
@@ -17,17 +17,24 @@ info = SpackCommand('build-env')
])
@pytest.mark.usefixtures('config')
def test_it_just_runs(pkg):
- info(*pkg)
+ build_env(*pkg)
-@pytest.mark.parametrize('pkg,error_cls', [
- ('zlib libszip', SpackCommandError),
- ('', IndexError)
+@pytest.mark.usefixtures('config')
+def test_error_when_multiple_specs_are_given():
+ output = build_env('libelf libdwarf', fail_on_error=False)
+ assert 'only takes one spec' in output
+
+
+@pytest.mark.parametrize('args', [
+ ('--', '/bin/bash', '-c', 'echo test'),
+ ('--',),
+ (),
])
@pytest.mark.usefixtures('config')
-def test_it_just_fails(pkg, error_cls):
- with pytest.raises(error_cls):
- info(pkg)
+def test_build_env_requires_a_spec(args):
+ output = build_env(*args, fail_on_error=False)
+ assert 'requires a spec' in output
_out_file = 'env.out'
@@ -36,7 +43,7 @@ _out_file = 'env.out'
@pytest.mark.usefixtures('config')
def test_dump(tmpdir):
with tmpdir.as_cwd():
- info('--dump', _out_file, 'zlib')
+ build_env('--dump', _out_file, 'zlib')
with open(_out_file) as f:
assert(any(line.startswith('PATH=') for line in f.readlines()))
@@ -44,7 +51,7 @@ def test_dump(tmpdir):
@pytest.mark.usefixtures('config')
def test_pickle(tmpdir):
with tmpdir.as_cwd():
- info('--pickle', _out_file, 'zlib')
+ build_env('--pickle', _out_file, 'zlib')
environment = cPickle.load(open(_out_file, 'rb'))
assert(type(environment) == dict)
assert('PATH' in environment)
diff --git a/lib/spack/spack/test/cmd/buildcache.py b/lib/spack/spack/test/cmd/buildcache.py
index dcd9b822c0..5c056fb33b 100644
--- a/lib/spack/spack/test/cmd/buildcache.py
+++ b/lib/spack/spack/test/cmd/buildcache.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -125,10 +125,6 @@ def test_buildcache_create_fails_on_noargs(tmpdir):
buildcache('create', '-d', str(tmpdir), '--unsigned')
-@pytest.mark.skipif(
- os.environ.get('SPACK_TEST_SOLVER') == 'clingo',
- reason='Test for Clingo are run in a container with root permissions'
-)
def test_buildcache_create_fail_on_perm_denied(
install_mockery, mock_fetch, monkeypatch, tmpdir):
"""Ensure that buildcache create fails on permission denied error."""
diff --git a/lib/spack/spack/test/cmd/cd.py b/lib/spack/spack/test/cmd/cd.py
index eda6994aec..c8766503b4 100644
--- a/lib/spack/spack/test/cmd/cd.py
+++ b/lib/spack/spack/test/cmd/cd.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/ci.py b/lib/spack/spack/test/cmd/ci.py
index 16af0e99e6..d1cac9e78c 100644
--- a/lib/spack/spack/test/cmd/ci.py
+++ b/lib/spack/spack/test/cmd/ci.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,11 @@ import filecmp
import json
import os
import pytest
-from jsonschema import validate
+from jsonschema import validate, ValidationError
import spack
import spack.ci as ci
+import spack.compilers as compilers
import spack.config
import spack.environment as ev
import spack.hash_types as ht
@@ -19,7 +20,8 @@ import spack.paths as spack_paths
import spack.repo as repo
from spack.schema.buildcache_spec import schema as spec_yaml_schema
from spack.schema.database_index import schema as db_idx_schema
-from spack.spec import Spec
+from spack.schema.gitlab_ci import schema as gitlab_ci_schema
+from spack.spec import Spec, CompilerSpec
from spack.util.mock_package import MockPackageMultiRepo
import spack.util.executable as exe
import spack.util.spack_yaml as syaml
@@ -31,10 +33,14 @@ env_cmd = spack.main.SpackCommand('env')
mirror_cmd = spack.main.SpackCommand('mirror')
gpg_cmd = spack.main.SpackCommand('gpg')
install_cmd = spack.main.SpackCommand('install')
+uninstall_cmd = spack.main.SpackCommand('uninstall')
buildcache_cmd = spack.main.SpackCommand('buildcache')
git = exe.which('git', required=True)
+pytestmark = pytest.mark.maybeslow
+
+
@pytest.fixture()
def env_deactivate():
yield
@@ -77,13 +83,13 @@ and then 'd', 'b', and 'a' to be put in the next three stages, respectively.
spec_a = Spec('a')
spec_a.concretize()
- spec_a_label = ci.spec_deps_key_label(spec_a)[1]
- spec_b_label = ci.spec_deps_key_label(spec_a['b'])[1]
- spec_c_label = ci.spec_deps_key_label(spec_a['c'])[1]
- spec_d_label = ci.spec_deps_key_label(spec_a['d'])[1]
- spec_e_label = ci.spec_deps_key_label(spec_a['e'])[1]
- spec_f_label = ci.spec_deps_key_label(spec_a['f'])[1]
- spec_g_label = ci.spec_deps_key_label(spec_a['g'])[1]
+ spec_a_label = ci.spec_deps_key(spec_a)
+ spec_b_label = ci.spec_deps_key(spec_a['b'])
+ spec_c_label = ci.spec_deps_key(spec_a['c'])
+ spec_d_label = ci.spec_deps_key(spec_a['d'])
+ spec_e_label = ci.spec_deps_key(spec_a['e'])
+ spec_f_label = ci.spec_deps_key(spec_a['f'])
+ spec_g_label = ci.spec_deps_key(spec_a['g'])
spec_labels, dependencies, stages = ci.stage_spec_jobs([spec_a])
@@ -109,6 +115,7 @@ def test_ci_generate_with_env(tmpdir, mutable_mock_env_path, env_deactivate,
install_mockery, mock_packages):
"""Make sure we can get a .gitlab-ci.yml from an environment file
which has the gitlab-ci, cdash, and mirrors sections."""
+ mirror_url = 'https://my.fake.mirror'
filename = str(tmpdir.join('spack.yaml'))
with open(filename, 'w') as f:
f.write("""\
@@ -128,7 +135,7 @@ spack:
- matrix:
- [$old-gcc-pkgs]
mirrors:
- some-mirror: https://my.fake.mirror
+ some-mirror: {0}
gitlab-ci:
bootstrap:
- name: bootstrap
@@ -140,7 +147,7 @@ spack:
tags:
- donotcare
image: donotcare
- final-stage-rebuild-index:
+ service-job-attributes:
image: donotcare
tags: [donotcare]
cdash:
@@ -148,7 +155,7 @@ spack:
url: https://my.fake.cdash
project: Not used
site: Nothing
-""")
+""".format(mirror_url))
with tmpdir.as_cwd():
env_cmd('create', 'test', './spack.yaml')
outputfile = str(tmpdir.join('.gitlab-ci.yml'))
@@ -170,16 +177,30 @@ spack:
assert(yaml_contents['stages'][0] == 'stage-0')
assert(yaml_contents['stages'][5] == 'stage-rebuild-index')
+ assert('rebuild-index' in yaml_contents)
+ rebuild_job = yaml_contents['rebuild-index']
+ expected = 'spack buildcache update-index --keys -d {0}'.format(
+ mirror_url)
+ assert(rebuild_job['script'][0] == expected)
+
def _validate_needs_graph(yaml_contents, needs_graph, artifacts):
for job_name, job_def in yaml_contents.items():
for needs_def_name, needs_list in needs_graph.items():
if job_name.startswith(needs_def_name):
# check job needs against the expected needs definition
+ j_needs = job_def['needs']
+ print('job {0} needs:'.format(needs_def_name))
+ print([j['job'] for j in j_needs])
+ print('expected:')
+ print([nl for nl in needs_list])
assert all([job_needs['job'][:job_needs['job'].index('/')]
- in needs_list for job_needs in job_def['needs']])
+ in needs_list for job_needs in j_needs])
+ assert(all([nl in
+ [n['job'][:n['job'].index('/')] for n in j_needs]
+ for nl in needs_list]))
assert all([job_needs['artifacts'] == artifacts
- for job_needs in job_def['needs']])
+ for job_needs in j_needs])
break
@@ -369,7 +390,10 @@ spack:
fake_token = 'notreallyatokenbutshouldnotmatter'
os.environ['SPACK_CDASH_AUTH_TOKEN'] = fake_token
copy_to_file = str(tmpdir.join('backup-ci.yml'))
- output = ci_cmd('generate', '--copy-to', copy_to_file, output=str)
+ try:
+ output = ci_cmd('generate', '--copy-to', copy_to_file, output=str)
+ finally:
+ del os.environ['SPACK_CDASH_AUTH_TOKEN']
# That fake token should still have resulted in being unable to
# register build group with cdash, but the workload should
# still have been generated.
@@ -533,7 +557,7 @@ spack:
def test_ci_generate_for_pr_pipeline(tmpdir, mutable_mock_env_path,
env_deactivate, install_mockery,
- mock_packages):
+ mock_packages, monkeypatch):
"""Test that PR pipelines do not include a final stage job for
rebuilding the mirror index, even if that job is specifically
configured"""
@@ -558,9 +582,10 @@ spack:
runner-attributes:
tags:
- donotcare
- final-stage-rebuild-index:
+ service-job-attributes:
image: donotcare
tags: [donotcare]
+ rebuild-index: False
""")
with tmpdir.as_cwd():
@@ -569,7 +594,14 @@ spack:
with ev.read('test'):
os.environ['SPACK_IS_PR_PIPELINE'] = 'True'
- ci_cmd('generate', '--output-file', outputfile)
+ os.environ['SPACK_PR_BRANCH'] = 'fake-test-branch'
+ monkeypatch.setattr(
+ ci, 'SPACK_PR_MIRRORS_ROOT_URL', r"file:///fake/mirror")
+ try:
+ ci_cmd('generate', '--output-file', outputfile)
+ finally:
+ del os.environ['SPACK_IS_PR_PIPELINE']
+ del os.environ['SPACK_PR_BRANCH']
with open(outputfile) as f:
contents = f.read()
@@ -579,10 +611,17 @@ spack:
assert('rebuild-index' not in yaml_contents)
+ for ci_key in yaml_contents.keys():
+ if ci_key.startswith('(specs) '):
+ job_object = yaml_contents[ci_key]
+ job_vars = job_object['variables']
+ assert('SPACK_IS_PR_PIPELINE' in job_vars)
+ assert(job_vars['SPACK_IS_PR_PIPELINE'] == 'True')
+
def test_ci_generate_with_external_pkg(tmpdir, mutable_mock_env_path,
env_deactivate, install_mockery,
- mock_packages):
+ mock_packages, monkeypatch):
"""Make sure we do not generate jobs for external pkgs"""
filename = str(tmpdir.join('spack.yaml'))
with open(filename, 'w') as f:
@@ -609,6 +648,8 @@ spack:
outputfile = str(tmpdir.join('.gitlab-ci.yml'))
with ev.read('test'):
+ monkeypatch.setattr(
+ ci, 'SPACK_PR_MIRRORS_ROOT_URL', r"file:///fake/mirror")
ci_cmd('generate', '--output-file', outputfile)
with open(outputfile) as f:
@@ -712,6 +753,19 @@ spack:
- $packages
mirrors:
test-mirror: {0}
+ gitlab-ci:
+ enable-artifacts-buildcache: True
+ mappings:
+ - match:
+ - patchelf
+ runner-attributes:
+ tags:
+ - donotcare
+ image: donotcare
+ service-job-attributes:
+ tags:
+ - nonbuildtag
+ image: basicimage
""".format(mirror_url)
print('spack.yaml:\n{0}\n'.format(spack_yaml_contents))
@@ -739,6 +793,48 @@ spack:
buildcache_path = os.path.join(mirror_dir.strpath, 'build_cache')
+ # Now test the --prune-dag (default) option of spack ci generate
+ mirror_cmd('add', 'test-ci', mirror_url)
+
+ outputfile_pruned = str(tmpdir.join('pruned_pipeline.yml'))
+ ci_cmd('generate', '--output-file', outputfile_pruned)
+
+ with open(outputfile_pruned) as f:
+ contents = f.read()
+ yaml_contents = syaml.load(contents)
+ assert('no-specs-to-rebuild' in yaml_contents)
+ # Make sure there are no other spec jobs or rebuild-index
+ assert(len(yaml_contents.keys()) == 1)
+ the_elt = yaml_contents['no-specs-to-rebuild']
+ assert('tags' in the_elt)
+ assert('nonbuildtag' in the_elt['tags'])
+ assert('image' in the_elt)
+ assert(the_elt['image'] == 'basicimage')
+
+ outputfile_not_pruned = str(tmpdir.join('unpruned_pipeline.yml'))
+ ci_cmd('generate', '--no-prune-dag', '--output-file',
+ outputfile_not_pruned)
+
+ # Test the --no-prune-dag option of spack ci generate
+ with open(outputfile_not_pruned) as f:
+ contents = f.read()
+ yaml_contents = syaml.load(contents)
+
+ found_spec_job = False
+
+ for ci_key in yaml_contents.keys():
+ if '(specs) patchelf' in ci_key:
+ the_elt = yaml_contents[ci_key]
+ assert('variables' in the_elt)
+ job_vars = the_elt['variables']
+ assert('SPACK_SPEC_NEEDS_REBUILD' in job_vars)
+ assert(job_vars['SPACK_SPEC_NEEDS_REBUILD'] == 'False')
+ found_spec_job = True
+
+ assert(found_spec_job)
+
+ mirror_cmd('rm', 'test-ci')
+
# Test generating buildcache index while we have bin mirror
buildcache_cmd('update-index', '--mirror-url', mirror_url)
index_path = os.path.join(buildcache_path, 'index.json')
@@ -785,6 +881,26 @@ spack:
assert(len(dl_dir_list) == 3)
+def test_push_mirror_contents_exceptions(monkeypatch, capsys):
+ def faked(env, spec_yaml=None, packages=None, add_spec=True,
+ add_deps=True, output_location=os.getcwd(),
+ signing_key=None, force=False, make_relative=False,
+ unsigned=False, allow_root=False, rebuild_index=False):
+ raise Exception('Error: Access Denied')
+
+ import spack.cmd.buildcache as buildcache
+ monkeypatch.setattr(buildcache, '_createtarball', faked)
+
+ url = 'fakejunk'
+ ci.push_mirror_contents(None, None, None, url, None, None)
+
+ captured = capsys.readouterr()
+ std_out = captured[0]
+ expect_msg = 'Permission problem writing to {0}'.format(url)
+
+ assert(expect_msg in std_out)
+
+
def test_ci_generate_override_runner_attrs(tmpdir, mutable_mock_env_path,
env_deactivate, install_mockery,
mock_packages, monkeypatch):
@@ -839,7 +955,7 @@ spack:
- custom main step
after_script:
- custom post step one
- final-stage-rebuild-index:
+ service-job-attributes:
image: donotcare
tags: [donotcare]
""")
@@ -851,6 +967,8 @@ spack:
with ev.read('test'):
monkeypatch.setattr(
spack.main, 'get_version', lambda: '0.15.3-416-12ad69eb1')
+ monkeypatch.setattr(
+ ci, 'SPACK_PR_MIRRORS_ROOT_URL', r"file:///fake/mirror")
ci_cmd('generate', '--output-file', outputfile)
with open(outputfile) as f:
@@ -925,3 +1043,416 @@ spack:
assert(the_elt['script'][0] == 'main step')
assert(len(the_elt['after_script']) == 1)
assert(the_elt['after_script'][0] == 'post step one')
+
+
+def test_ci_generate_with_workarounds(tmpdir, mutable_mock_env_path,
+ env_deactivate, install_mockery,
+ mock_packages, monkeypatch):
+ """Make sure the post-processing cli workarounds do what they should"""
+ filename = str(tmpdir.join('spack.yaml'))
+ with open(filename, 'w') as f:
+ f.write("""\
+spack:
+ specs:
+ - callpath%gcc@3.0
+ mirrors:
+ some-mirror: https://my.fake.mirror
+ gitlab-ci:
+ mappings:
+ - match: ['%gcc@3.0']
+ runner-attributes:
+ tags:
+ - donotcare
+ image: donotcare
+ enable-artifacts-buildcache: true
+""")
+
+ with tmpdir.as_cwd():
+ env_cmd('create', 'test', './spack.yaml')
+ outputfile = str(tmpdir.join('.gitlab-ci.yml'))
+
+ with ev.read('test'):
+ monkeypatch.setattr(
+ ci, 'SPACK_PR_MIRRORS_ROOT_URL', r"file:///fake/mirror")
+ ci_cmd('generate', '--output-file', outputfile, '--dependencies')
+
+ with open(outputfile) as f:
+ contents = f.read()
+ yaml_contents = syaml.load(contents)
+
+ found_one = False
+
+ for ci_key in yaml_contents.keys():
+ if ci_key.startswith('(specs) '):
+ found_one = True
+ job_obj = yaml_contents[ci_key]
+ assert('needs' not in job_obj)
+ assert('dependencies' in job_obj)
+
+ assert(found_one is True)
+
+
+@pytest.mark.disable_clean_stage_check
+def test_ci_rebuild_index(tmpdir, mutable_mock_env_path, env_deactivate,
+ install_mockery, mock_packages, mock_fetch,
+ mock_stage):
+ working_dir = tmpdir.join('working_dir')
+
+ mirror_dir = working_dir.join('mirror')
+ mirror_url = 'file://{0}'.format(mirror_dir.strpath)
+
+ spack_yaml_contents = """
+spack:
+ specs:
+ - callpath
+ mirrors:
+ test-mirror: {0}
+ gitlab-ci:
+ mappings:
+ - match:
+ - patchelf
+ runner-attributes:
+ tags:
+ - donotcare
+ image: donotcare
+""".format(mirror_url)
+
+ filename = str(tmpdir.join('spack.yaml'))
+ with open(filename, 'w') as f:
+ f.write(spack_yaml_contents)
+
+ with tmpdir.as_cwd():
+ env_cmd('create', 'test', './spack.yaml')
+ with ev.read('test'):
+ spec_map = ci.get_concrete_specs(
+ 'callpath', 'callpath', '', 'FIND_ANY')
+ concrete_spec = spec_map['callpath']
+ spec_yaml = concrete_spec.to_yaml(hash=ht.build_hash)
+ yaml_path = str(tmpdir.join('spec.yaml'))
+ with open(yaml_path, 'w') as ypfd:
+ ypfd.write(spec_yaml)
+
+ install_cmd('--keep-stage', '-f', yaml_path)
+ buildcache_cmd('create', '-u', '-a', '-f', '--mirror-url',
+ mirror_url, 'callpath')
+ ci_cmd('rebuild-index')
+
+ buildcache_path = os.path.join(mirror_dir.strpath, 'build_cache')
+ index_path = os.path.join(buildcache_path, 'index.json')
+ with open(index_path) as idx_fd:
+ index_object = json.load(idx_fd)
+ validate(index_object, db_idx_schema)
+
+
+def test_ci_generate_bootstrap_prune_dag(
+ install_mockery_mutable_config, mock_packages, mock_fetch,
+ mock_archive, mutable_config, monkeypatch, tmpdir,
+ mutable_mock_env_path, env_deactivate):
+ """Test compiler bootstrapping with DAG pruning. Specifically, make
+ sure that if we detect the bootstrapped compiler needs to be rebuilt,
+ we ensure the spec we want to build with that compiler is scheduled
+ for rebuild as well."""
+
+ # Create a temp mirror directory for buildcache usage
+ mirror_dir = tmpdir.join('mirror_dir')
+ mirror_url = 'file://{0}'.format(mirror_dir.strpath)
+
+ # Install a compiler, because we want to put it in a buildcache
+ install_cmd('gcc@10.1.0%gcc@4.5.0')
+
+ # Put installed compiler in the buildcache
+ buildcache_cmd('create', '-u', '-a', '-f', '-d', mirror_dir.strpath,
+ 'gcc@10.1.0%gcc@4.5.0')
+
+ # Now uninstall the compiler
+ uninstall_cmd('-y', 'gcc@10.1.0%gcc@4.5.0')
+
+ monkeypatch.setattr(spack.concretize.Concretizer,
+ 'check_for_compiler_existence', False)
+ spack.config.set('config:install_missing_compilers', True)
+ assert CompilerSpec('gcc@10.1.0') not in compilers.all_compiler_specs()
+
+ # Configure the mirror where we put that buildcache w/ the compiler
+ mirror_cmd('add', 'test-mirror', mirror_url)
+
+ install_cmd('--no-check-signature', 'a%gcc@10.1.0')
+
+ # Put spec built with installed compiler in the buildcache
+ buildcache_cmd('create', '-u', '-a', '-f', '-d', mirror_dir.strpath,
+ 'a%gcc@10.1.0')
+
+ # Now uninstall the spec
+ uninstall_cmd('-y', 'a%gcc@10.1.0')
+
+ filename = str(tmpdir.join('spack.yaml'))
+ with open(filename, 'w') as f:
+ f.write("""\
+spack:
+ definitions:
+ - bootstrap:
+ - gcc@10.1.0%gcc@4.5.0
+ specs:
+ - a%gcc@10.1.0
+ mirrors:
+ atestm: {0}
+ gitlab-ci:
+ bootstrap:
+ - name: bootstrap
+ compiler-agnostic: true
+ mappings:
+ - match:
+ - arch=test-debian6-x86_64
+ runner-attributes:
+ tags:
+ - donotcare
+ - match:
+ - arch=test-debian6-core2
+ runner-attributes:
+ tags:
+ - meh
+""".format(mirror_url))
+
+ # Without this monkeypatch, pipeline generation process would think that
+ # nothing in the environment needs rebuilding. With the monkeypatch, the
+ # process sees the compiler as needing a rebuild, which should then result
+ # in the specs built with that compiler needing a rebuild too.
+ def fake_get_mirrors_for_spec(spec=None, full_hash_match=False,
+ mirrors_to_check=None, index_only=False):
+ if spec.name == 'gcc':
+ return []
+ else:
+ return [{
+ 'spec': spec,
+ 'mirror_url': mirror_url,
+ }]
+
+ with tmpdir.as_cwd():
+ env_cmd('create', 'test', './spack.yaml')
+ outputfile = str(tmpdir.join('.gitlab-ci.yml'))
+
+ with ev.read('test'):
+ monkeypatch.setattr(
+ ci, 'SPACK_PR_MIRRORS_ROOT_URL', r"file:///fake/mirror")
+
+ ci_cmd('generate', '--output-file', outputfile)
+
+ with open(outputfile) as of:
+ yaml_contents = of.read()
+ original_yaml_contents = syaml.load(yaml_contents)
+
+ # without the monkeypatch, everything appears up to date and no
+ # rebuild jobs are generated.
+ assert(original_yaml_contents)
+ assert('no-specs-to-rebuild' in original_yaml_contents)
+
+ monkeypatch.setattr(spack.binary_distribution,
+ 'get_mirrors_for_spec',
+ fake_get_mirrors_for_spec)
+
+ ci_cmd('generate', '--output-file', outputfile)
+
+ with open(outputfile) as of:
+ yaml_contents = of.read()
+ new_yaml_contents = syaml.load(yaml_contents)
+
+ assert(new_yaml_contents)
+
+ # This 'needs' graph reflects that even though specs 'a' and 'b' do
+ # not otherwise need to be rebuilt (thanks to DAG pruning), they
+ # both end up in the generated pipeline because the compiler they
+ # depend on is bootstrapped, and *does* need to be rebuilt.
+ needs_graph = {
+ '(bootstrap) gcc': [],
+ '(specs) b': [
+ '(bootstrap) gcc',
+ ],
+ '(specs) a': [
+ '(bootstrap) gcc',
+ '(specs) b',
+ ],
+ }
+
+ _validate_needs_graph(new_yaml_contents, needs_graph, False)
+
+
+def test_ci_subcommands_without_mirror(tmpdir, mutable_mock_env_path,
+ env_deactivate, mock_packages,
+ install_mockery):
+ """Make sure we catch if there is not a mirror and report an error"""
+ filename = str(tmpdir.join('spack.yaml'))
+ with open(filename, 'w') as f:
+ f.write("""\
+spack:
+ specs:
+ - archive-files
+ gitlab-ci:
+ mappings:
+ - match:
+ - archive-files
+ runner-attributes:
+ tags:
+ - donotcare
+ image: donotcare
+""")
+
+ with tmpdir.as_cwd():
+ env_cmd('create', 'test', './spack.yaml')
+ outputfile = str(tmpdir.join('.gitlab-ci.yml'))
+
+ with ev.read('test'):
+ # Check the 'generate' subcommand
+ output = ci_cmd('generate', '--output-file', outputfile,
+ output=str, fail_on_error=False)
+ ex = 'spack ci generate requires an env containing a mirror'
+ assert(ex in output)
+
+ # Also check the 'rebuild-index' subcommand
+ output = ci_cmd('rebuild-index', output=str, fail_on_error=False)
+ ex = 'spack ci rebuild-index requires an env containing a mirror'
+ assert(ex in output)
+
+
+def test_ensure_only_one_temporary_storage():
+ """Make sure 'gitlab-ci' section of env does not allow specification of
+ both 'enable-artifacts-buildcache' and 'temporary-storage-url-prefix'."""
+ gitlab_ci_template = """
+ gitlab-ci:
+ {0}
+ mappings:
+ - match:
+ - notcheckedhere
+ runner-attributes:
+ tags:
+ - donotcare
+"""
+
+ enable_artifacts = 'enable-artifacts-buildcache: True'
+ temp_storage = 'temporary-storage-url-prefix: file:///temp/mirror'
+ specify_both = """{0}
+ {1}
+""".format(enable_artifacts, temp_storage)
+ specify_neither = ''
+
+ # User can specify "enable-artifacts-buildcache" (boolean)
+ yaml_obj = syaml.load(gitlab_ci_template.format(enable_artifacts))
+ validate(yaml_obj, gitlab_ci_schema)
+
+ # User can also specify "temporary-storage-url-prefix" (string)
+ yaml_obj = syaml.load(gitlab_ci_template.format(temp_storage))
+ validate(yaml_obj, gitlab_ci_schema)
+
+ # However, specifying both should fail to validate
+ yaml_obj = syaml.load(gitlab_ci_template.format(specify_both))
+ with pytest.raises(ValidationError):
+ validate(yaml_obj, gitlab_ci_schema)
+
+ # Specifying neither should be fine too, as neither of these properties
+ # should be required
+ yaml_obj = syaml.load(gitlab_ci_template.format(specify_neither))
+ validate(yaml_obj, gitlab_ci_schema)
+
+
+def test_ci_generate_temp_storage_url(tmpdir, mutable_mock_env_path,
+ env_deactivate, install_mockery,
+ mock_packages, monkeypatch):
+ """Verify correct behavior when using temporary-storage-url-prefix"""
+ filename = str(tmpdir.join('spack.yaml'))
+ with open(filename, 'w') as f:
+ f.write("""\
+spack:
+ specs:
+ - archive-files
+ mirrors:
+ some-mirror: https://my.fake.mirror
+ gitlab-ci:
+ temporary-storage-url-prefix: file:///work/temp/mirror
+ mappings:
+ - match:
+ - archive-files
+ runner-attributes:
+ tags:
+ - donotcare
+ image: donotcare
+""")
+
+ with tmpdir.as_cwd():
+ env_cmd('create', 'test', './spack.yaml')
+ outputfile = str(tmpdir.join('.gitlab-ci.yml'))
+
+ monkeypatch.setattr(
+ ci, 'SPACK_PR_MIRRORS_ROOT_URL', r"file:///fake/mirror")
+
+ with ev.read('test'):
+ ci_cmd('generate', '--output-file', outputfile)
+
+ with open(outputfile) as of:
+ pipeline_doc = syaml.load(of.read())
+
+ print(pipeline_doc)
+
+ assert('cleanup' in pipeline_doc)
+ cleanup_job = pipeline_doc['cleanup']
+
+ assert('script' in cleanup_job)
+ cleanup_task = cleanup_job['script'][0]
+
+ assert(cleanup_task.startswith('spack -d mirror destroy'))
+
+ assert('stages' in pipeline_doc)
+ stages = pipeline_doc['stages']
+
+ # Cleanup job should be 2nd to last, just before rebuild-index
+ assert('stage' in cleanup_job)
+ assert(cleanup_job['stage'] == stages[-2])
+
+
+def test_ci_generate_read_broken_specs_url(tmpdir, mutable_mock_env_path,
+ env_deactivate, install_mockery,
+ mock_packages, monkeypatch):
+ """Verify that `broken-specs-url` works as intended"""
+ spec_a = Spec('a')
+ spec_a.concretize()
+ a_full_hash = spec_a.full_hash()
+
+ spec_flattendeps = Spec('flatten-deps')
+ spec_flattendeps.concretize()
+ flattendeps_full_hash = spec_flattendeps.full_hash()
+
+ # Mark 'a' as broken (but not 'flatten-deps')
+ broken_spec_a_path = str(tmpdir.join(a_full_hash))
+ with open(broken_spec_a_path, 'w') as bsf:
+ bsf.write('')
+
+ # Test that `spack ci generate` notices this broken spec and fails.
+ filename = str(tmpdir.join('spack.yaml'))
+ with open(filename, 'w') as f:
+ f.write("""\
+spack:
+ specs:
+ - flatten-deps
+ - a
+ mirrors:
+ some-mirror: https://my.fake.mirror
+ gitlab-ci:
+ broken-specs-url: "{0}"
+ mappings:
+ - match:
+ - archive-files
+ runner-attributes:
+ tags:
+ - donotcare
+ image: donotcare
+""".format(tmpdir.strpath))
+
+ with tmpdir.as_cwd():
+ env_cmd('create', 'test', './spack.yaml')
+ with ev.read('test'):
+ # Check output of the 'generate' subcommand
+ output = ci_cmd('generate', output=str, fail_on_error=False)
+ assert('known to be broken' in output)
+
+ ex = '({0})'.format(a_full_hash)
+ assert(ex in output)
+
+ ex = '({0})'.format(flattendeps_full_hash)
+ assert(ex not in output)
diff --git a/lib/spack/spack/test/cmd/clean.py b/lib/spack/spack/test/cmd/clean.py
index dcaf0c916c..daf561eea4 100644
--- a/lib/spack/spack/test/cmd/clean.py
+++ b/lib/spack/spack/test/cmd/clean.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/commands.py b/lib/spack/spack/test/cmd/commands.py
index 409dea7c51..2427511538 100644
--- a/lib/spack/spack/test/cmd/commands.py
+++ b/lib/spack/spack/test/cmd/commands.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -118,48 +118,21 @@ def test_rst_with_header(tmpdir):
def test_rst_update(tmpdir):
update_file = tmpdir.join('output')
- # not yet created when commands is run
commands('--update', str(update_file))
assert update_file.exists()
- with update_file.open() as f:
- assert f.read()
-
- # created but older than commands
- with update_file.open('w') as f:
- f.write('empty\n')
- update_file.setmtime(0)
- commands('--update', str(update_file))
- assert update_file.exists()
- with update_file.open() as f:
- assert f.read() != 'empty\n'
-
- # newer than commands
- with update_file.open('w') as f:
- f.write('empty\n')
- commands('--update', str(update_file))
- assert update_file.exists()
- with update_file.open() as f:
- assert f.read() == 'empty\n'
def test_update_with_header(tmpdir):
update_file = tmpdir.join('output')
- # not yet created when commands is run
commands('--update', str(update_file))
assert update_file.exists()
- with update_file.open() as f:
- assert f.read()
fake_header = 'this is a header!\n\n'
filename = tmpdir.join('header.txt')
with filename.open('w') as f:
f.write(fake_header)
- # created, newer than commands, but older than header
- commands('--update', str(update_file), '--header', str(filename))
-
- # newer than commands and header
commands('--update', str(update_file), '--header', str(filename))
@@ -229,7 +202,6 @@ def test_update_completion_arg(tmpdir, monkeypatch):
old_file = old.read()
with open(mock_args['bash']['update'], 'w') as mock:
mock.write(old_file.replace("--update-completion", ""))
- mock_bashfile.setmtime(0) # ensure mtime triggers update
monkeypatch.setattr(
spack.cmd.commands, 'update_completion_args', mock_args)
diff --git a/lib/spack/spack/test/cmd/common/__init__.py b/lib/spack/spack/test/cmd/common/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/test/cmd/common/__init__.py
+++ b/lib/spack/spack/test/cmd/common/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/common/arguments.py b/lib/spack/spack/test/cmd/common/arguments.py
index 4f6cd1a527..8797626d60 100644
--- a/lib/spack/spack/test/cmd/common/arguments.py
+++ b/lib/spack/spack/test/cmd/common/arguments.py
@@ -1,14 +1,12 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import argparse
-import multiprocessing
import pytest
-
import spack.cmd
import spack.cmd.common.arguments as arguments
import spack.config
@@ -27,20 +25,15 @@ def job_parser():
yield p
-@pytest.mark.parametrize("ncores", [1, 2, 4, 8, 16, 32])
-def test_setting_jobs_flag(job_parser, ncores, monkeypatch):
- monkeypatch.setattr(multiprocessing, 'cpu_count', lambda: ncores)
+def test_setting_jobs_flag(job_parser):
namespace = job_parser.parse_args(['-j', '24'])
- expected = min(24, ncores)
- assert namespace.jobs == expected
- assert spack.config.get('config:build_jobs') == expected
+ assert namespace.jobs == 24
+ assert spack.config.get('config:build_jobs', scope='command_line') == 24
-@pytest.mark.parametrize("ncores", [1, 2, 4, 8, 16, 32])
-def test_omitted_job_flag(job_parser, ncores, monkeypatch):
- monkeypatch.setattr(multiprocessing, 'cpu_count', lambda: ncores)
+def test_omitted_job_flag(job_parser):
namespace = job_parser.parse_args([])
- assert namespace.jobs == min(ncores, 16)
+ assert namespace.jobs is None
assert spack.config.get('config:build_jobs') is None
@@ -103,3 +96,21 @@ def test_multiple_env_match_raises_error(mock_packages, mutable_mock_env_path):
spack.cmd.matching_spec_from_env(spack.cmd.parse_specs(['a'])[0])
assert 'matches multiple specs' in exc_info.value.message
+
+
+@pytest.mark.usefixtures('config')
+def test_root_and_dep_match_returns_root(mock_packages, mutable_mock_env_path):
+ e = ev.create('test')
+ e.add('b@0.9')
+ e.add('a foobar=bar') # Depends on b, should choose b@1.0
+ e.concretize()
+ with e:
+ # This query matches the root b and b as a dependency of a. In that
+ # case the root instance should be preferred.
+ env_spec1 = spack.cmd.matching_spec_from_env(
+ spack.cmd.parse_specs(['b'])[0])
+ assert env_spec1.satisfies('@0.9')
+
+ env_spec2 = spack.cmd.matching_spec_from_env(
+ spack.cmd.parse_specs(['b@1.0'])[0])
+ assert env_spec2
diff --git a/lib/spack/spack/test/cmd/compiler.py b/lib/spack/spack/test/cmd/compiler.py
index c5c354221e..109695edd8 100644
--- a/lib/spack/spack/test/cmd/compiler.py
+++ b/lib/spack/spack/test/cmd/compiler.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/concretize.py b/lib/spack/spack/test/cmd/concretize.py
new file mode 100644
index 0000000000..ec8dbdf910
--- /dev/null
+++ b/lib/spack/spack/test/cmd/concretize.py
@@ -0,0 +1,55 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+import pytest
+import spack.environment as ev
+from spack.main import SpackCommand
+
+
+# everything here uses the mock_env_path
+pytestmark = pytest.mark.usefixtures(
+ 'mutable_mock_env_path', 'config', 'mutable_mock_repo')
+
+env = SpackCommand('env')
+add = SpackCommand('add')
+concretize = SpackCommand('concretize')
+
+
+@pytest.mark.parametrize('concretization', ['separately', 'together'])
+def test_concretize_all_test_dependencies(concretization):
+ """Check all test dependencies are concretized."""
+ env('create', 'test')
+
+ with ev.read('test') as e:
+ e.concretization = concretization
+ add('depb')
+ concretize('--test', 'all')
+ assert e.matching_spec('test-dependency')
+
+
+@pytest.mark.parametrize('concretization', ['separately', 'together'])
+def test_concretize_root_test_dependencies_not_recursive(concretization):
+ """Check that test dependencies are not concretized recursively."""
+ env('create', 'test')
+
+ with ev.read('test') as e:
+ e.concretization = concretization
+ add('depb')
+ concretize('--test', 'root')
+ assert e.matching_spec('test-dependency') is None
+
+
+@pytest.mark.parametrize('concretization', ['separately', 'together'])
+def test_concretize_root_test_dependencies_are_concretized(concretization):
+ """Check that root test dependencies are concretized."""
+ env('create', 'test')
+
+ with ev.read('test') as e:
+ e.concretization = concretization
+ add('a')
+ add('b')
+ concretize('--test', 'root')
+ assert e.matching_spec('test-dependency')
diff --git a/lib/spack/spack/test/cmd/config.py b/lib/spack/spack/test/cmd/config.py
index 7830f1c4e2..32996310a6 100644
--- a/lib/spack/spack/test/cmd/config.py
+++ b/lib/spack/spack/test/cmd/config.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,9 @@ import spack.config
import spack.environment as ev
import spack.main
import spack.util.spack_yaml as syaml
+import spack.spec
+import spack.database
+import spack.store
config = spack.main.SpackCommand('config')
env = spack.main.SpackCommand('env')
@@ -84,6 +87,7 @@ repos:
def test_config_edit():
"""Ensure `spack config edit` edits the right paths."""
+
dms = spack.config.default_modify_scope('compilers')
dms_path = spack.config.config.scopes[dms].path
user_path = spack.config.config.scopes['user'].path
@@ -201,20 +205,27 @@ def test_config_add_override_leaf(mutable_empty_config):
def test_config_add_update_dict(mutable_empty_config):
- config('add', 'packages:all:compiler:[gcc]')
- config('add', 'packages:all:version:1.0.0')
+ config('add', 'packages:all:version:[1.0.0]')
output = config('get', 'packages')
- expected = """packages:
- all:
- compiler: [gcc]
- version:
- - 1.0.0
-"""
-
+ expected = 'packages:\n all:\n version: [1.0.0]\n'
assert output == expected
+def test_config_with_c_argument(mutable_empty_config):
+
+ # I don't know how to add a spack argument to a Spack Command, so we test this way
+ config_file = 'config:install_root:root:/path/to/config.yaml'
+ parser = spack.main.make_argument_parser()
+ args = parser.parse_args(['-c', config_file])
+ assert config_file in args.config_vars
+
+ # Add the path to the config
+ config("add", args.config_vars[0], scope='command_line')
+ output = config("get", 'config')
+ assert "config:\n install_root:\n - root: /path/to/config.yaml" in output
+
+
def test_config_add_ordered_dict(mutable_empty_config):
config('add', 'mirrors:first:/path/to/first')
config('add', 'mirrors:second:/path/to/second')
@@ -645,3 +656,50 @@ def check_config_updated(data):
assert isinstance(data['install_tree'], dict)
assert data['install_tree']['root'] == '/fake/path'
assert data['install_tree']['projections'] == {'all': '{name}-{version}'}
+
+
+def test_config_prefer_upstream(tmpdir_factory, install_mockery, mock_fetch,
+ mutable_config, gen_mock_layout, monkeypatch):
+ """Check that when a dependency package is recorded as installed in
+ an upstream database that it is not reinstalled.
+ """
+
+ mock_db_root = str(tmpdir_factory.mktemp('mock_db_root'))
+ prepared_db = spack.database.Database(mock_db_root)
+
+ upstream_layout = gen_mock_layout('/a/')
+
+ for spec in [
+ 'hdf5 +mpi',
+ 'hdf5 ~mpi',
+ 'boost+debug~icu+graph',
+ 'dependency-install',
+ 'patch']:
+ dep = spack.spec.Spec(spec)
+ dep.concretize()
+ prepared_db.add(dep, upstream_layout)
+
+ downstream_db_root = str(
+ tmpdir_factory.mktemp('mock_downstream_db_root'))
+ db_for_test = spack.database.Database(
+ downstream_db_root, upstream_dbs=[prepared_db])
+ monkeypatch.setattr(spack.store, 'db', db_for_test)
+
+ output = config('prefer-upstream')
+ scope = spack.config.default_modify_scope('packages')
+ cfg_file = spack.config.config.get_config_filename(scope, 'packages')
+ packages = syaml.load(open(cfg_file))['packages']
+
+ # Make sure only the non-default variants are set.
+ assert packages['boost'] == {
+ 'compiler': ['gcc@4.5.0'],
+ 'variants': '+debug +graph',
+ 'version': ['1.63.0']}
+ assert packages['dependency-install'] == {
+ 'compiler': ['gcc@4.5.0'], 'version': ['2.0']}
+ # Ensure that neither variant gets listed for hdf5, since they conflict
+ assert packages['hdf5'] == {
+ 'compiler': ['gcc@4.5.0'], 'version': ['2.3']}
+
+ # Make sure a message about the conflicting hdf5's was given.
+ assert '- hdf5' in output
diff --git a/lib/spack/spack/test/cmd/create.py b/lib/spack/spack/test/cmd/create.py
index 4262744317..39b076df08 100644
--- a/lib/spack/spack/test/cmd/create.py
+++ b/lib/spack/spack/test/cmd/create.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/debug.py b/lib/spack/spack/test/cmd/debug.py
index 2898ad670e..72190431de 100644
--- a/lib/spack/spack/test/cmd/debug.py
+++ b/lib/spack/spack/test/cmd/debug.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ import os
import os.path
import spack.architecture as architecture
+import spack.config
from spack.main import SpackCommand, get_version
from spack.util.executable import which
@@ -53,3 +54,4 @@ def test_report():
assert get_version() in out
assert platform.python_version() in out
assert str(arch) in out
+ assert spack.config.get('config:concretizer') in out
diff --git a/lib/spack/spack/test/cmd/dependencies.py b/lib/spack/spack/test/cmd/dependencies.py
index 05d0556936..4c0de355ef 100644
--- a/lib/spack/spack/test/cmd/dependencies.py
+++ b/lib/spack/spack/test/cmd/dependencies.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -51,8 +51,11 @@ def test_direct_installed_dependencies(mock_packages, database):
with color_when(False):
out = dependencies('--installed', 'mpileaks^mpich')
- lines = [l for l in out.strip().split('\n') if not l.startswith('--')]
- hashes = set([re.split(r'\s+', l)[0] for l in lines])
+ lines = [
+ line for line in out.strip().split('\n')
+ if not line.startswith('--')
+ ]
+ hashes = set([re.split(r'\s+', line)[0] for line in lines])
expected = set([spack.store.db.query_one(s).dag_hash(7)
for s in ['mpich', 'callpath^mpich']])
@@ -65,8 +68,11 @@ def test_transitive_installed_dependencies(mock_packages, database):
with color_when(False):
out = dependencies('--installed', '--transitive', 'mpileaks^zmpi')
- lines = [l for l in out.strip().split('\n') if not l.startswith('--')]
- hashes = set([re.split(r'\s+', l)[0] for l in lines])
+ lines = [
+ line for line in out.strip().split('\n')
+ if not line.startswith('--')
+ ]
+ hashes = set([re.split(r'\s+', line)[0] for line in lines])
expected = set([spack.store.db.query_one(s).dag_hash(7)
for s in ['zmpi', 'callpath^zmpi', 'fake',
diff --git a/lib/spack/spack/test/cmd/dependents.py b/lib/spack/spack/test/cmd/dependents.py
index bd87f92a65..376332cf88 100644
--- a/lib/spack/spack/test/cmd/dependents.py
+++ b/lib/spack/spack/test/cmd/dependents.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/deprecate.py b/lib/spack/spack/test/cmd/deprecate.py
index 7b38c177f5..370d267753 100644
--- a/lib/spack/spack/test/cmd/deprecate.py
+++ b/lib/spack/spack/test/cmd/deprecate.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/dev_build.py b/lib/spack/spack/test/cmd/dev_build.py
index 3067f5a0dd..11f4cbff82 100644
--- a/lib/spack/spack/test/cmd/dev_build.py
+++ b/lib/spack/spack/test/cmd/dev_build.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -89,7 +89,7 @@ def test_dev_build_until_last_phase(tmpdir, mock_packages, install_mockery):
assert os.path.exists(str(tmpdir))
-def test_dev_build_before_until(tmpdir, mock_packages, install_mockery):
+def test_dev_build_before_until(tmpdir, mock_packages, install_mockery, capsys):
spec = spack.spec.Spec('dev-build-test-install@0.0.0 dev_path=%s' % tmpdir)
spec.concretize()
@@ -103,13 +103,18 @@ def test_dev_build_before_until(tmpdir, mock_packages, install_mockery):
bad_phase = 'phase_that_does_not_exist'
not_allowed = 'is not a valid phase'
- out = dev_build('-u', bad_phase, 'dev-build-test-install@0.0.0')
+ not_installed = 'was not installed'
+ out = dev_build('-u', bad_phase, 'dev-build-test-install@0.0.0',
+ fail_on_error=False)
assert bad_phase in out
assert not_allowed in out
+ assert not_installed in out
- out = dev_build('-b', bad_phase, 'dev-build-test-install@0.0.0')
+ out = dev_build('-b', bad_phase, 'dev-build-test-install@0.0.0',
+ fail_on_error=False)
assert bad_phase in out
assert not_allowed in out
+ assert not_installed in out
def print_spack_cc(*args):
@@ -197,7 +202,7 @@ env:
dev-build-test-install:
spec: dev-build-test-install@0.0.0
path: %s
-""" % build_dir)
+""" % os.path.relpath(str(build_dir), start=str(envdir)))
env('create', 'test', './spack.yaml')
with ev.read('test'):
@@ -323,7 +328,7 @@ env:
dev-build-test-install:
spec: dev-build-test-install@0.0.0
path: %s
-""" % build_dir)
+""" % os.path.relpath(str(build_dir), start=str(envdir)))
env('create', 'test', './spack.yaml')
with ev.read('test'):
@@ -338,7 +343,7 @@ env:
assert dep_spec.package.filename in os.listdir(dep_spec.prefix)
assert os.path.exists(spec.prefix)
- # Ensure variants set properly
+ # Ensure variants set properly; ensure build_dir is absolute and normalized
for dep in (dep_spec, spec['dev-build-test-install']):
assert dep.satisfies('dev_path=%s' % build_dir)
assert spec.satisfies('^dev_path=*')
diff --git a/lib/spack/spack/test/cmd/develop.py b/lib/spack/spack/test/cmd/develop.py
index c539cd91c0..b6d8b11105 100644
--- a/lib/spack/spack/test/cmd/develop.py
+++ b/lib/spack/spack/test/cmd/develop.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/env.py b/lib/spack/spack/test/cmd/env.py
index f43ea4ff32..f6933dc349 100644
--- a/lib/spack/spack/test/cmd/env.py
+++ b/lib/spack/spack/test/cmd/env.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,6 +9,7 @@ from six import StringIO
import pytest
import llnl.util.filesystem as fs
+import llnl.util.link_tree
import spack.hash_types as ht
import spack.modules
@@ -25,8 +26,10 @@ from spack.util.path import substitute_path_variables
# everything here uses the mock_env_path
-pytestmark = pytest.mark.usefixtures(
- 'mutable_mock_env_path', 'config', 'mutable_mock_repo')
+pytestmark = [
+ pytest.mark.usefixtures('mutable_mock_env_path', 'config', 'mutable_mock_repo'),
+ pytest.mark.maybeslow
+]
env = SpackCommand('env')
install = SpackCommand('install')
@@ -198,6 +201,19 @@ def test_env_modifications_error_on_activate(
assert "Warning: couldn't get environment settings" in err
+def test_activate_adds_transitive_run_deps_to_path(
+ install_mockery, mock_fetch, monkeypatch):
+ env('create', 'test')
+ install = SpackCommand('install')
+
+ e = ev.read('test')
+ with e:
+ install('depends-on-run-env')
+
+ cmds = spack.environment.activate(e)
+ assert 'DEPENDENCY_ENV_VAR=1' in cmds
+
+
def test_env_install_same_spec_twice(install_mockery, mock_fetch):
env('create', 'test')
@@ -1082,7 +1098,7 @@ def test_store_different_build_deps():
def test_env_updates_view_install(
tmpdir, mock_stage, mock_fetch, install_mockery):
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
env('create', '--with-view=%s' % view_dir, 'test')
with ev.read('test'):
add('mpileaks')
@@ -1093,12 +1109,13 @@ def test_env_updates_view_install(
def test_env_view_fails(
tmpdir, mock_packages, mock_stage, mock_fetch, install_mockery):
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
env('create', '--with-view=%s' % view_dir, 'test')
with ev.read('test'):
add('libelf')
add('libelf cflags=-g')
- with pytest.raises(RuntimeError, match='merge blocked by file'):
+ with pytest.raises(llnl.util.link_tree.MergeConflictError,
+ match='merge blocked by file'):
install('--fake')
@@ -1111,7 +1128,7 @@ def test_env_without_view_install(
with pytest.raises(spack.environment.SpackEnvironmentError):
test_env.default_view
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
with ev.read('test'):
add('mpileaks')
@@ -1146,7 +1163,7 @@ env:
def test_env_updates_view_install_package(
tmpdir, mock_stage, mock_fetch, install_mockery):
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
env('create', '--with-view=%s' % view_dir, 'test')
with ev.read('test'):
install('--fake', 'mpileaks')
@@ -1156,7 +1173,7 @@ def test_env_updates_view_install_package(
def test_env_updates_view_add_concretize(
tmpdir, mock_stage, mock_fetch, install_mockery):
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
env('create', '--with-view=%s' % view_dir, 'test')
install('--fake', 'mpileaks')
with ev.read('test'):
@@ -1168,7 +1185,7 @@ def test_env_updates_view_add_concretize(
def test_env_updates_view_uninstall(
tmpdir, mock_stage, mock_fetch, install_mockery):
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
env('create', '--with-view=%s' % view_dir, 'test')
with ev.read('test'):
install('--fake', 'mpileaks')
@@ -1183,7 +1200,7 @@ def test_env_updates_view_uninstall(
def test_env_updates_view_uninstall_referenced_elsewhere(
tmpdir, mock_stage, mock_fetch, install_mockery):
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
env('create', '--with-view=%s' % view_dir, 'test')
install('--fake', 'mpileaks')
with ev.read('test'):
@@ -1200,7 +1217,7 @@ def test_env_updates_view_uninstall_referenced_elsewhere(
def test_env_updates_view_remove_concretize(
tmpdir, mock_stage, mock_fetch, install_mockery):
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
env('create', '--with-view=%s' % view_dir, 'test')
install('--fake', 'mpileaks')
with ev.read('test'):
@@ -1218,7 +1235,7 @@ def test_env_updates_view_remove_concretize(
def test_env_updates_view_force_remove(
tmpdir, mock_stage, mock_fetch, install_mockery):
- view_dir = tmpdir.mkdir('view')
+ view_dir = tmpdir.join('view')
env('create', '--with-view=%s' % view_dir, 'test')
with ev.read('test'):
install('--fake', 'mpileaks')
@@ -2113,7 +2130,11 @@ def test_env_activate_default_view_root_unconditional(env_deactivate,
viewdir = e.default_view.root
out = env('activate', '--sh', 'test')
- assert 'PATH=%s' % os.path.join(viewdir, 'bin') in out
+ viewdir_bin = os.path.join(viewdir, 'bin')
+
+ assert "export PATH={0}".format(viewdir_bin) in out or \
+ "export PATH='{0}".format(viewdir_bin) in out or \
+ 'export PATH="{0}'.format(viewdir_bin) in out
def test_concretize_user_specs_together():
@@ -2371,6 +2392,85 @@ spack:
assert os.path.exists(str(spack_lock))
+def _setup_develop_packages(tmpdir):
+ """Sets up a structure ./init_env/spack.yaml, ./build_folder, ./dest_env
+ where spack.yaml has a relative develop path to build_folder"""
+ init_env = tmpdir.join('init_env')
+ build_folder = tmpdir.join('build_folder')
+ dest_env = tmpdir.join('dest_env')
+
+ fs.mkdirp(str(init_env))
+ fs.mkdirp(str(build_folder))
+ fs.mkdirp(str(dest_env))
+
+ raw_yaml = """
+spack:
+ specs: ['mypkg1', 'mypkg2']
+ develop:
+ mypkg1:
+ path: ../build_folder
+ spec: mypkg@main
+ mypkg2:
+ path: /some/other/path
+ spec: mypkg@main
+"""
+ spack_yaml = init_env.join('spack.yaml')
+ spack_yaml.write(raw_yaml)
+
+ return init_env, build_folder, dest_env, spack_yaml
+
+
+def test_rewrite_rel_dev_path_new_dir(tmpdir):
+ """Relative develop paths should be rewritten for new environments in
+ a different directory from the original manifest file"""
+ _, build_folder, dest_env, spack_yaml = _setup_develop_packages(tmpdir)
+
+ env('create', '-d', str(dest_env), str(spack_yaml))
+ with ev.Environment(str(dest_env)) as e:
+ assert e.dev_specs['mypkg1']['path'] == str(build_folder)
+ assert e.dev_specs['mypkg2']['path'] == '/some/other/path'
+
+
+def test_rewrite_rel_dev_path_named_env(tmpdir):
+ """Relative develop paths should by default be rewritten for new named
+ environment"""
+ _, build_folder, _, spack_yaml = _setup_develop_packages(tmpdir)
+ env('create', 'named_env', str(spack_yaml))
+ with ev.read('named_env') as e:
+ assert e.dev_specs['mypkg1']['path'] == str(build_folder)
+ assert e.dev_specs['mypkg2']['path'] == '/some/other/path'
+
+
+def test_rewrite_rel_dev_path_original_dir(tmpdir):
+ """Relative devevelop paths should not be rewritten when initializing an
+ environment with root path set to the same directory"""
+ init_env, _, _, spack_yaml = _setup_develop_packages(tmpdir)
+ with ev.Environment(str(init_env), str(spack_yaml)) as e:
+ assert e.dev_specs['mypkg1']['path'] == '../build_folder'
+ assert e.dev_specs['mypkg2']['path'] == '/some/other/path'
+
+
+def test_rewrite_rel_dev_path_create_original_dir(tmpdir):
+ """Relative develop paths should not be rewritten when creating an
+ environment in the original directory"""
+ init_env, _, _, spack_yaml = _setup_develop_packages(tmpdir)
+ env('create', '-d', str(init_env), str(spack_yaml))
+ with ev.Environment(str(init_env)) as e:
+ assert e.dev_specs['mypkg1']['path'] == '../build_folder'
+ assert e.dev_specs['mypkg2']['path'] == '/some/other/path'
+
+
+def test_does_not_rewrite_rel_dev_path_when_keep_relative_is_set(tmpdir):
+ """Relative develop paths should not be rewritten when --keep-relative is
+ passed to create"""
+ _, _, _, spack_yaml = _setup_develop_packages(tmpdir)
+ env('create', '--keep-relative', 'named_env', str(spack_yaml))
+ with ev.read('named_env') as e:
+ print(e.dev_specs)
+ assert e.dev_specs['mypkg1']['path'] == '../build_folder'
+ assert e.dev_specs['mypkg2']['path'] == '/some/other/path'
+
+
@pytest.mark.regression('23440')
def test_custom_version_concretize_together(tmpdir):
# Custom versions should be permitted in specs when
diff --git a/lib/spack/spack/test/cmd/extensions.py b/lib/spack/spack/test/cmd/extensions.py
index ad993244ae..d2093fa887 100644
--- a/lib/spack/spack/test/cmd/extensions.py
+++ b/lib/spack/spack/test/cmd/extensions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/external.py b/lib/spack/spack/test/cmd/external.py
index 53e1f9eaf2..3249a92894 100644
--- a/lib/spack/spack/test/cmd/external.py
+++ b/lib/spack/spack/test/cmd/external.py
@@ -1,7 +1,9 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import pytest
+
import os
import os.path
@@ -242,3 +244,26 @@ def test_new_entries_are_reported_correctly(
# has been found
output = external('find', 'gcc')
assert 'No new external packages detected' in output
+
+
+@pytest.mark.parametrize('command_args', [
+ ('-t', 'build-tools'),
+ ('-t', 'build-tools', 'cmake'),
+])
+def test_use_tags_for_detection(
+ command_args, mock_executable, mutable_config, monkeypatch
+):
+ # Prepare an environment to detect a fake cmake
+ cmake_exe = mock_executable('cmake', output="echo cmake version 3.19.1")
+ prefix = os.path.dirname(cmake_exe)
+ monkeypatch.setenv('PATH', prefix)
+
+ openssl_exe = mock_executable('openssl', output="OpenSSL 2.8.3")
+ prefix = os.path.dirname(openssl_exe)
+ monkeypatch.setenv('PATH', prefix)
+
+ # Test that we detect specs
+ output = external('find', *command_args)
+ assert 'The following specs have been' in output
+ assert 'cmake' in output
+ assert 'openssl' not in output
diff --git a/lib/spack/spack/test/cmd/fetch.py b/lib/spack/spack/test/cmd/fetch.py
index d2f17eeb1b..8a2b51c57b 100644
--- a/lib/spack/spack/test/cmd/fetch.py
+++ b/lib/spack/spack/test/cmd/fetch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/find.py b/lib/spack/spack/test/cmd/find.py
index 9d2203aaaf..762578a028 100644
--- a/lib/spack/spack/test/cmd/find.py
+++ b/lib/spack/spack/test/cmd/find.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -89,7 +89,7 @@ def test_query_arguments():
@pytest.mark.usefixtures('database', 'mock_display')
def test_tag1(parser, specs):
- args = parser.parse_args(['--tags', 'tag1'])
+ args = parser.parse_args(['--tag', 'tag1'])
spack.cmd.find.find(parser, args)
assert len(specs) == 2
@@ -100,7 +100,7 @@ def test_tag1(parser, specs):
@pytest.mark.db
@pytest.mark.usefixtures('database', 'mock_display')
def test_tag2(parser, specs):
- args = parser.parse_args(['--tags', 'tag2'])
+ args = parser.parse_args(['--tag', 'tag2'])
spack.cmd.find.find(parser, args)
assert len(specs) == 1
@@ -110,7 +110,7 @@ def test_tag2(parser, specs):
@pytest.mark.db
@pytest.mark.usefixtures('database', 'mock_display')
def test_tag2_tag3(parser, specs):
- args = parser.parse_args(['--tags', 'tag2', '--tags', 'tag3'])
+ args = parser.parse_args(['--tag', 'tag2', '--tag', 'tag3'])
spack.cmd.find.find(parser, args)
assert len(specs) == 0
diff --git a/lib/spack/spack/test/cmd/flake8.py b/lib/spack/spack/test/cmd/flake8.py
index d4bfc5618d..c1de26a278 100644
--- a/lib/spack/spack/test/cmd/flake8.py
+++ b/lib/spack/spack/test/cmd/flake8.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,12 +11,12 @@ import sys
from llnl.util.filesystem import FileFilter
import spack.paths
-from spack.cmd.flake8 import flake8, setup_parser, changed_files
+from spack.cmd.style import style, setup_parser, changed_files
from spack.repo import Repo
from spack.util.executable import which
-@pytest.fixture(scope='module')
+@pytest.fixture(scope="module")
def parser():
"""Returns the parser for the ``flake8`` command"""
parser = argparse.ArgumentParser()
@@ -24,7 +24,7 @@ def parser():
return parser
-@pytest.fixture(scope='module')
+@pytest.fixture(scope="module")
def flake8_package():
"""Flake8 only checks files that have been modified.
This fixture makes a small change to the ``flake8``
@@ -32,7 +32,7 @@ def flake8_package():
change on cleanup.
"""
repo = Repo(spack.paths.mock_packages_path)
- filename = repo.filename_for_package_name('flake8')
+ filename = repo.filename_for_package_name("flake8")
package = FileFilter(filename)
# Make the change
@@ -60,16 +60,18 @@ def test_changed_files(parser, flake8_package):
# As of flake8 3.0.0, Python 2.6 and 3.3 are no longer supported
# http://flake8.pycqa.org/en/latest/release-notes/3.0.0.html
@pytest.mark.skipif(
- sys.version_info[:2] <= (2, 6) or
- (3, 0) <= sys.version_info[:2] <= (3, 3),
- reason='flake8 no longer supports Python 2.6 or 3.3 and older')
-@pytest.mark.skipif(not which('flake8'), reason='flake8 is not installed.')
+ sys.version_info[:2] <= (2, 6) or (3, 0) <= sys.version_info[:2] <= (3, 3),
+ reason="flake8 no longer supports Python 2.6 or 3.3 and older",
+)
+@pytest.mark.skipif(not which("flake8"), reason="flake8 is not installed.")
def test_flake8(parser, flake8_package):
# Only test the flake8_package that we modified
# Otherwise, the unit tests would fail every time
# the flake8 tests fail
- args = parser.parse_args([flake8_package])
- flake8(parser, args)
+ args = parser.parse_args(["--no-mypy", flake8_package])
+ style(parser, args)
# Get even more coverage
- args = parser.parse_args(['--output', '--root-relative', flake8_package])
- flake8(parser, args)
+ args = parser.parse_args(
+ ["--no-mypy", "--output", "--root-relative", flake8_package]
+ )
+ style(parser, args)
diff --git a/lib/spack/spack/test/cmd/gc.py b/lib/spack/spack/test/cmd/gc.py
index 22c85a1d78..70df8af687 100644
--- a/lib/spack/spack/test/cmd/gc.py
+++ b/lib/spack/spack/test/cmd/gc.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/gpg.py b/lib/spack/spack/test/cmd/gpg.py
index 751790182b..099d53e039 100644
--- a/lib/spack/spack/test/cmd/gpg.py
+++ b/lib/spack/spack/test/cmd/gpg.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/graph.py b/lib/spack/spack/test/cmd/graph.py
index c402f35a9f..8d6da1049f 100644
--- a/lib/spack/spack/test/cmd/graph.py
+++ b/lib/spack/spack/test/cmd/graph.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/help.py b/lib/spack/spack/test/cmd/help.py
index 00edfa187a..8e0f6d02c9 100644
--- a/lib/spack/spack/test/cmd/help.py
+++ b/lib/spack/spack/test/cmd/help.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/info.py b/lib/spack/spack/test/cmd/info.py
index b57ef3257b..0ff6857617 100644
--- a/lib/spack/spack/test/cmd/info.py
+++ b/lib/spack/spack/test/cmd/info.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/init_py_functions.py b/lib/spack/spack/test/cmd/init_py_functions.py
index 2e63106283..56b0ef7171 100644
--- a/lib/spack/spack/test/cmd/init_py_functions.py
+++ b/lib/spack/spack/test/cmd/init_py_functions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/install.py b/lib/spack/spack/test/cmd/install.py
index 8e87f97c98..cbdea73931 100644
--- a/lib/spack/spack/test/cmd/install.py
+++ b/lib/spack/spack/test/cmd/install.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,6 +32,7 @@ add = SpackCommand('add')
mirror = SpackCommand('mirror')
uninstall = SpackCommand('uninstall')
buildcache = SpackCommand('buildcache')
+find = SpackCommand('find')
@pytest.fixture()
@@ -119,7 +120,9 @@ def test_install_dirty_flag(arguments, expected):
def test_package_output(tmpdir, capsys, install_mockery, mock_fetch):
- """Ensure output printed from pkgs is captured by output redirection."""
+ """
+ Ensure output printed from pkgs is captured by output redirection.
+ """
# we can't use output capture here because it interferes with Spack's
# logging. TODO: see whether we can get multiple log_outputs to work
# when nested AND in pytest
@@ -140,12 +143,15 @@ def test_package_output(tmpdir, capsys, install_mockery, mock_fetch):
@pytest.mark.disable_clean_stage_check
def test_install_output_on_build_error(mock_packages, mock_archive, mock_fetch,
config, install_mockery, capfd):
+ """
+ This test used to assume receiving full output, but since we've updated
+ spack to generate logs on the level of phases, it will only return the
+ last phase, install.
+ """
# capfd interferes with Spack's capturing
with capfd.disabled():
- out = install('build-error', fail_on_error=False)
- assert 'ProcessError' in out
- assert 'configure: error: in /path/to/some/file:' in out
- assert 'configure: error: cannot run C compiled programs.' in out
+ out = install('-v', 'build-error', fail_on_error=False)
+ assert 'Installing build-error' in out
@pytest.mark.disable_clean_stage_check
@@ -172,20 +178,17 @@ def test_install_with_source(
@pytest.mark.disable_clean_stage_check
def test_show_log_on_error(mock_packages, mock_archive, mock_fetch,
config, install_mockery, capfd):
- """Make sure --show-log-on-error works."""
+ """
+ Make sure --show-log-on-error works.
+ """
with capfd.disabled():
out = install('--show-log-on-error', 'build-error',
fail_on_error=False)
assert isinstance(install.error, spack.build_environment.ChildError)
assert install.error.pkg.name == 'build-error'
- assert 'Full build log:' in out
- print(out)
-
- # Message shows up for ProcessError (1) and output (1)
- errors = [line for line in out.split('\n')
- if 'configure: error: cannot run C compiled programs' in line]
- assert len(errors) == 2
+ assert '==> Installing build-error' in out
+ assert 'See build log for details:' in out
def test_install_overwrite(
@@ -629,10 +632,11 @@ def test_cache_only_fails(tmpdir, mock_fetch, install_mockery, capfd):
# libelf from cache fails to install, which automatically removes the
# the libdwarf build task
with capfd.disabled():
- out = install('--cache-only', 'libdwarf')
+ out = install('--cache-only', 'libdwarf', fail_on_error=False)
assert 'Failed to install libelf' in out
assert 'Skipping build of libdwarf' in out
+ assert 'was not installed' in out
# Check that failure prefix locks are still cached
failure_lock_prefixes = ','.join(spack.store.db._prefix_failures.keys())
@@ -709,8 +713,116 @@ def test_install_only_dependencies_of_all_in_env(
assert os.path.exists(dep.prefix)
+def test_install_no_add_in_env(tmpdir, mock_fetch, install_mockery,
+ mutable_mock_env_path):
+ # To test behavior of --no-add option, we create the following environment:
+ #
+ # mpileaks
+ # ^callpath
+ # ^dyninst
+ # ^libelf@0.8.13 # or latest, really
+ # ^libdwarf
+ # ^mpich
+ # libelf@0.8.10
+ # a~bvv
+ # ^b
+ # a
+ # ^b
+ e = ev.create('test')
+ e.add('mpileaks')
+ e.add('libelf@0.8.10') # so env has both root and dep libelf specs
+ e.add('a')
+ e.add('a ~bvv')
+ e.concretize()
+ env_specs = e.all_specs()
+
+ a_spec = None
+ b_spec = None
+ mpi_spec = None
+
+ # First find and remember some target concrete specs in the environment
+ for e_spec in env_specs:
+ if e_spec.satisfies(Spec('a ~bvv')):
+ a_spec = e_spec
+ elif e_spec.name == 'b':
+ b_spec = e_spec
+ elif e_spec.satisfies(Spec('mpi')):
+ mpi_spec = e_spec
+
+ assert(a_spec)
+ assert(a_spec.concrete)
+
+ assert(b_spec)
+ assert(b_spec.concrete)
+ assert(b_spec not in e.roots())
+
+ assert(mpi_spec)
+ assert(mpi_spec.concrete)
+
+ # Activate the environment
+ with e:
+ # Assert using --no-add with a spec not in the env fails
+ inst_out = install(
+ '--no-add', 'boost', fail_on_error=False, output=str)
+
+ assert('no such spec exists in environment' in inst_out)
+
+ # Ensure using --no-add with an ambiguous spec fails
+ with pytest.raises(ev.SpackEnvironmentError) as err:
+ inst_out = install(
+ '--no-add', 'a', output=str)
+
+ assert('a matches multiple specs in the env' in str(err))
+
+ # With "--no-add", install an unambiguous dependency spec (that already
+ # exists as a dep in the environment) using --no-add and make sure it
+ # gets installed (w/ deps), but is not added to the environment.
+ install('--no-add', 'dyninst')
+
+ find_output = find('-l', output=str)
+ assert('dyninst' in find_output)
+ assert('libdwarf' in find_output)
+ assert('libelf' in find_output)
+ assert('callpath' not in find_output)
+
+ post_install_specs = e.all_specs()
+ assert all([s in env_specs for s in post_install_specs])
+
+ # Make sure we can install a concrete dependency spec from a spec.yaml
+ # file on disk, using the ``--no-add` option, and the spec is installed
+ # but not added as a root
+ mpi_spec_yaml_path = tmpdir.join('{0}.yaml'.format(mpi_spec.name))
+ with open(mpi_spec_yaml_path.strpath, 'w') as fd:
+ fd.write(mpi_spec.to_yaml(hash=ht.full_hash))
+
+ install('--no-add', '-f', mpi_spec_yaml_path.strpath)
+ assert(mpi_spec not in e.roots())
+
+ find_output = find('-l', output=str)
+ assert(mpi_spec.name in find_output)
+
+ # Without "--no-add", install an unambiguous depependency spec (that
+ # already exists as a dep in the environment) without --no-add and make
+ # sure it is added as a root of the environment as well as installed.
+ assert(b_spec not in e.roots())
+
+ install('b')
+
+ assert(b_spec in e.roots())
+ assert(b_spec not in e.uninstalled_specs())
+
+ # Without "--no-add", install a novel spec and make sure it is added
+ # as a root and installed.
+ install('bowtie')
+
+ assert(any([s.name == 'bowtie' for s in e.roots()]))
+ assert(not any([s.name == 'bowtie' for s in e.uninstalled_specs()]))
+
+
def test_install_help_does_not_show_cdash_options(capsys):
- """Make sure `spack install --help` does not describe CDash arguments"""
+ """
+ Make sure `spack install --help` does not describe CDash arguments
+ """
with pytest.raises(SystemExit):
install('--help')
captured = capsys.readouterr()
@@ -738,6 +850,25 @@ def test_cdash_auth_token(tmpdir, install_mockery, capfd):
assert 'Using CDash auth token from environment' in out
+@pytest.mark.disable_clean_stage_check
+def test_cdash_configure_warning(tmpdir, mock_fetch, install_mockery, capfd):
+ # capfd interferes with Spack's capturing of e.g., Build.xml output
+ with capfd.disabled():
+ with tmpdir.as_cwd():
+ # Test would fail if install raised an error.
+ install(
+ '--log-file=cdash_reports',
+ '--log-format=cdash',
+ 'configure-warning')
+ # Verify Configure.xml exists with expected contents.
+ report_dir = tmpdir.join('cdash_reports')
+ assert report_dir in tmpdir.listdir()
+ report_file = report_dir.join('Configure.xml')
+ assert report_file in report_dir.listdir()
+ content = report_file.open().read()
+ assert 'foo: No such file or directory' in content
+
+
def test_compiler_bootstrap(
install_mockery_mutable_config, mock_packages, mock_fetch,
mock_archive, mutable_config, monkeypatch):
@@ -753,7 +884,9 @@ def test_compiler_bootstrap(
def test_compiler_bootstrap_from_binary_mirror(
install_mockery_mutable_config, mock_packages, mock_fetch,
mock_archive, mutable_config, monkeypatch, tmpdir):
- """Make sure installing compiler from buildcache registers compiler"""
+ """
+ Make sure installing compiler from buildcache registers compiler
+ """
# Create a temp mirror directory for buildcache usage
mirror_dir = tmpdir.join('mirror_dir')
@@ -884,3 +1017,23 @@ def test_cache_install_full_hash_match(
uninstall('-y', s.name)
mirror('rm', 'test-mirror')
+
+
+def test_install_env_with_tests_all(tmpdir, mock_packages, mock_fetch,
+ install_mockery, mutable_mock_env_path):
+ env('create', 'test')
+ with ev.read('test'):
+ test_dep = Spec('test-dependency').concretized()
+ add('depb')
+ install('--test', 'all')
+ assert os.path.exists(test_dep.prefix)
+
+
+def test_install_env_with_tests_root(tmpdir, mock_packages, mock_fetch,
+ install_mockery, mutable_mock_env_path):
+ env('create', 'test')
+ with ev.read('test'):
+ test_dep = Spec('test-dependency').concretized()
+ add('depb')
+ install('--test', 'root')
+ assert not os.path.exists(test_dep.prefix)
diff --git a/lib/spack/spack/test/cmd/is_git_repo.py b/lib/spack/spack/test/cmd/is_git_repo.py
index 724925e5e4..109f5030c7 100644
--- a/lib/spack/spack/test/cmd/is_git_repo.py
+++ b/lib/spack/spack/test/cmd/is_git_repo.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/license.py b/lib/spack/spack/test/cmd/license.py
index 614d093c5f..6063a8d9a8 100644
--- a/lib/spack/spack/test/cmd/license.py
+++ b/lib/spack/spack/test/cmd/license.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,6 +8,7 @@ import re
from llnl.util.filesystem import touch, mkdirp
+import spack.cmd.license
import spack.paths
from spack.main import SpackCommand
@@ -31,7 +32,7 @@ def test_verify(tmpdir):
lgpl_header = source_dir.join('lgpl_header.py')
with lgpl_header.open('w') as f:
f.write("""\
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: LGPL-2.1-only
@@ -48,13 +49,13 @@ def test_verify(tmpdir):
correct_header = source_dir.join('correct_header.py')
with correct_header.open('w') as f:
f.write("""\
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
""")
- out = license('verify', '--root', str(tmpdir), fail_on_error=False)
+ out = license('--root', str(tmpdir), 'verify', fail_on_error=False)
assert str(no_header) in out
assert str(lgpl_header) in out
@@ -66,3 +67,28 @@ def test_verify(tmpdir):
assert re.search(r'files with old license header:\s*1', out)
assert license.returncode == 1
+
+
+def test_update_copyright_year(tmpdir):
+ source_dir = tmpdir.join('lib', 'spack', 'spack')
+ mkdirp(str(source_dir))
+
+ years = list(range(2018, 2021))
+
+ for year in years:
+ outdated = source_dir.join('header_%d.py' % year)
+ with outdated.open('w') as f:
+ f.write("""\
+# Copyright 2013-%d Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+""" % year)
+
+ license('--root', str(tmpdir), 'update-copyright-year')
+
+ for year in years:
+ outdated = source_dir.join('header_%d.py' % year)
+ first_line = outdated.open().read().split("\n")[0]
+ assert str(year) not in first_line
+ assert spack.cmd.license.strict_date in first_line
diff --git a/lib/spack/spack/test/cmd/list.py b/lib/spack/spack/test/cmd/list.py
index 17f5a1b493..f99b7420a4 100644
--- a/lib/spack/spack/test/cmd/list.py
+++ b/lib/spack/spack/test/cmd/list.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -33,15 +33,15 @@ def test_list_search_description():
def test_list_tags():
- output = list('--tags', 'proxy-app')
+ output = list('--tag', 'proxy-app')
assert 'cloverleaf3d' in output
assert 'hdf5' not in output
- output = list('--tags', 'hpc')
+ output = list('--tag', 'hpc')
assert 'nek5000' in output
assert 'mfem' in output
- output = list('--tags', 'HPC')
+ output = list('--tag', 'HPC')
assert 'nek5000' in output
assert 'mfem' in output
diff --git a/lib/spack/spack/test/cmd/load.py b/lib/spack/spack/test/cmd/load.py
index b1697bbfc4..620280e016 100644
--- a/lib/spack/spack/test/cmd/load.py
+++ b/lib/spack/spack/test/cmd/load.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/location.py b/lib/spack/spack/test/cmd/location.py
index 2cefbd558f..98a13ce9da 100644
--- a/lib/spack/spack/test/cmd/location.py
+++ b/lib/spack/spack/test/cmd/location.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ pytestmark = pytest.mark.usefixtures('config', 'database')
# location prints out "locations of packages and spack directories"
location = SpackCommand('location')
+env = SpackCommand('env')
@pytest.fixture
@@ -86,6 +87,27 @@ def test_location_env(mock_test_env):
assert location('--env', test_env_name).strip() == env_dir
+def test_location_env_flag_interference(mutable_mock_env_path, tmpdir):
+ """
+ Tests that specifying an active environment using `spack -e x location ...`
+ does not interfere with the location command flags.
+ """
+
+ # create two environments
+ env('create', 'first_env')
+ env('create', 'second_env')
+
+ global_args = ['-e', 'first_env']
+
+ # `spack -e first_env location -e second_env` should print the env
+ # path of second_env
+ assert 'first_env' not in location('-e', 'second_env', global_args=global_args)
+
+ # `spack -e first_env location --packages` should not print
+ # the environment path of first_env.
+ assert 'first_env' not in location('--packages', global_args=global_args)
+
+
def test_location_env_missing():
"""Tests spack location --env."""
missing_env_name = 'missing-env'
diff --git a/lib/spack/spack/test/cmd/maintainers.py b/lib/spack/spack/test/cmd/maintainers.py
index 4c566c7513..f6520b4a1b 100644
--- a/lib/spack/spack/test/cmd/maintainers.py
+++ b/lib/spack/spack/test/cmd/maintainers.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/mark.py b/lib/spack/spack/test/cmd/mark.py
index 5b488bbf3e..450bc1f30e 100644
--- a/lib/spack/spack/test/cmd/mark.py
+++ b/lib/spack/spack/test/cmd/mark.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/mirror.py b/lib/spack/spack/test/cmd/mirror.py
index 0957624cba..b72487e5ab 100644
--- a/lib/spack/spack/test/cmd/mirror.py
+++ b/lib/spack/spack/test/cmd/mirror.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,9 @@ mirror = SpackCommand('mirror')
env = SpackCommand('env')
add = SpackCommand('add')
concretize = SpackCommand('concretize')
+install = SpackCommand('install')
+buildcache = SpackCommand('buildcache')
+uninstall = SpackCommand('uninstall')
@pytest.fixture
@@ -183,3 +186,39 @@ def test_mirror_name_collision(tmp_scope):
with pytest.raises(SpackCommandError):
mirror('add', '--scope', tmp_scope, 'first', '1')
+
+
+def test_mirror_destroy(install_mockery_mutable_config,
+ mock_packages, mock_fetch, mock_archive,
+ mutable_config, monkeypatch, tmpdir):
+ # Create a temp mirror directory for buildcache usage
+ mirror_dir = tmpdir.join('mirror_dir')
+ mirror_url = 'file://{0}'.format(mirror_dir.strpath)
+ mirror('add', 'atest', mirror_url)
+
+ spec_name = 'libdwarf'
+
+ # Put a binary package in a buildcache
+ install('--no-cache', spec_name)
+ buildcache('create', '-u', '-a', '-f', '-d', mirror_dir.strpath, spec_name)
+
+ contents = os.listdir(mirror_dir.strpath)
+ assert('build_cache' in contents)
+
+ # Destroy mirror by name
+ mirror('destroy', '-m', 'atest')
+
+ assert(not os.path.exists(mirror_dir.strpath))
+
+ buildcache('create', '-u', '-a', '-f', '-d', mirror_dir.strpath, spec_name)
+
+ contents = os.listdir(mirror_dir.strpath)
+ assert('build_cache' in contents)
+
+ # Destroy mirror by url
+ mirror('destroy', '--mirror-url', mirror_url)
+
+ assert(not os.path.exists(mirror_dir.strpath))
+
+ uninstall('-y', spec_name)
+ mirror('remove', 'atest')
diff --git a/lib/spack/spack/test/cmd/module.py b/lib/spack/spack/test/cmd/module.py
index 8be6c129c7..9acb21fdef 100644
--- a/lib/spack/spack/test/cmd/module.py
+++ b/lib/spack/spack/test/cmd/module.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,7 +23,7 @@ def ensure_module_files_are_there(
):
"""Generate module files for module tests."""
module = spack.main.SpackCommand('module')
- with spack.store.use_store(mock_store):
+ with spack.store.use_store(str(mock_store)):
with spack.config.use_configuration(*mock_configuration_scopes):
with spack.repo.use_repositories(mock_repo_path):
module('tcl', 'refresh', '-y')
diff --git a/lib/spack/spack/test/cmd/pkg.py b/lib/spack/spack/test/cmd/pkg.py
index 5319e4e288..f9311b14bc 100644
--- a/lib/spack/spack/test/cmd/pkg.py
+++ b/lib/spack/spack/test/cmd/pkg.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/print_shell_vars.py b/lib/spack/spack/test/cmd/print_shell_vars.py
index 5f4f8164eb..3c56ee6e49 100644
--- a/lib/spack/spack/test/cmd/print_shell_vars.py
+++ b/lib/spack/spack/test/cmd/print_shell_vars.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/providers.py b/lib/spack/spack/test/cmd/providers.py
index dd0c8a9eb7..daab694032 100644
--- a/lib/spack/spack/test/cmd/providers.py
+++ b/lib/spack/spack/test/cmd/providers.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/python.py b/lib/spack/spack/test/cmd/python.py
index b1c9d3db00..d2ef35a85e 100644
--- a/lib/spack/spack/test/cmd/python.py
+++ b/lib/spack/spack/test/cmd/python.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import platform
+import sys
import pytest
@@ -18,6 +19,11 @@ def test_python():
assert out.strip() == spack.spack_version
+def test_python_interpreter_path():
+ out = python('--path')
+ assert out.strip() == sys.executable
+
+
def test_python_version():
out = python('-V')
assert platform.python_version() in out
diff --git a/lib/spack/spack/test/cmd/reindex.py b/lib/spack/spack/test/cmd/reindex.py
index feb5545ae6..77c672251e 100644
--- a/lib/spack/spack/test/cmd/reindex.py
+++ b/lib/spack/spack/test/cmd/reindex.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/repo.py b/lib/spack/spack/test/cmd/repo.py
index 82fe872710..541ffeddf0 100644
--- a/lib/spack/spack/test/cmd/repo.py
+++ b/lib/spack/spack/test/cmd/repo.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/resource.py b/lib/spack/spack/test/cmd/resource.py
index 4fc5fd5c50..ba1bf48daf 100644
--- a/lib/spack/spack/test/cmd/resource.py
+++ b/lib/spack/spack/test/cmd/resource.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/spec.py b/lib/spack/spack/test/cmd/spec.py
index 3c50a66ce7..7d5cf12e75 100644
--- a/lib/spack/spack/test/cmd/spec.py
+++ b/lib/spack/spack/test/cmd/spec.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/stage.py b/lib/spack/spack/test/cmd/stage.py
new file mode 100644
index 0000000000..481694dc6e
--- /dev/null
+++ b/lib/spack/spack/test/cmd/stage.py
@@ -0,0 +1,114 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import pytest
+from spack.main import SpackCommand
+import spack.environment as ev
+import spack.repo
+from spack.version import Version
+
+
+stage = SpackCommand('stage')
+env = SpackCommand('env')
+
+pytestmark = pytest.mark.usefixtures('install_mockery', 'mock_packages')
+
+
+def test_stage_spec(monkeypatch):
+ """Verify that staging specs works."""
+
+ expected = set(['trivial-install-test-package', 'mpileaks'])
+
+ def fake_stage(pkg, mirror_only=False):
+ expected.remove(pkg.name)
+
+ monkeypatch.setattr(spack.package.PackageBase, 'do_stage', fake_stage)
+
+ stage('trivial-install-test-package', 'mpileaks')
+
+ assert len(expected) == 0
+
+
+def test_stage_path(monkeypatch):
+ """Verify that --path only works with single specs."""
+
+ def fake_stage(pkg, mirror_only=False):
+ assert pkg.path == 'x'
+
+ monkeypatch.setattr(spack.package.PackageBase, 'do_stage', fake_stage)
+
+ stage('--path=x', 'trivial-install-test-package')
+
+
+def test_stage_path_errors_multiple_specs(monkeypatch):
+ """Verify that --path only works with single specs."""
+
+ def fake_stage(pkg, mirror_only=False):
+ pass
+
+ monkeypatch.setattr(spack.package.PackageBase, 'do_stage', fake_stage)
+
+ with pytest.raises(spack.main.SpackCommandError):
+ stage('--path=x', 'trivial-install-test-package', 'mpileaks')
+
+
+def test_stage_with_env_outside_env(mutable_mock_env_path, monkeypatch):
+ """Verify that stage concretizes specs not in environment instead of erroring."""
+
+ def fake_stage(pkg, mirror_only=False):
+ assert pkg.name == 'trivial-install-test-package'
+ assert pkg.path is None
+
+ monkeypatch.setattr(spack.package.PackageBase, 'do_stage', fake_stage)
+
+ e = ev.create('test')
+ e.add('mpileaks')
+ e.concretize()
+
+ with e:
+ stage('trivial-install-test-package')
+
+
+def test_stage_with_env_inside_env(mutable_mock_env_path, monkeypatch):
+ """Verify that stage filters specs in environment instead of reconcretizing."""
+
+ def fake_stage(pkg, mirror_only=False):
+ assert pkg.name == 'mpileaks'
+ assert pkg.version == Version('100.100')
+
+ monkeypatch.setattr(spack.package.PackageBase, 'do_stage', fake_stage)
+
+ e = ev.create('test')
+ e.add('mpileaks@100.100')
+ e.concretize()
+
+ with e:
+ stage('mpileaks')
+
+
+def test_stage_full_env(mutable_mock_env_path, monkeypatch):
+ """Verify that stage filters specs in environment."""
+
+ e = ev.create('test')
+ e.add('mpileaks@100.100')
+ e.concretize()
+
+ # list all the package names that should be staged
+ expected = set()
+ for spec in e.specs_by_hash.values():
+ for dep in spec.traverse():
+ expected.add(dep.name)
+
+ # pop the package name from the list instead of actually staging
+ def fake_stage(pkg, mirror_only=False):
+ expected.remove(pkg.name)
+
+ monkeypatch.setattr(spack.package.PackageBase, 'do_stage', fake_stage)
+
+ with e:
+ stage()
+
+ # assert that all were staged
+ assert len(expected) == 0
diff --git a/lib/spack/spack/test/cmd/test.py b/lib/spack/spack/test/cmd/test.py
index 4163853274..c0471fdfca 100644
--- a/lib/spack/spack/test/cmd/test.py
+++ b/lib/spack/spack/test/cmd/test.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,8 @@ import pytest
import spack.config
import spack.package
import spack.cmd.install
+
+from spack.cmd.test import has_test_method
from spack.main import SpackCommand
install = SpackCommand('install')
@@ -181,3 +183,32 @@ def test_test_help_cdash(mock_test_stage):
"""Make sure `spack test --help-cdash` describes CDash arguments"""
out = spack_test('run', '--help-cdash')
assert 'CDash URL' in out
+
+
+def test_test_list_all(mock_packages):
+ """make sure `spack test list --all` returns all packages with tests"""
+ pkgs = spack_test("list", "--all").strip().split()
+ assert set(pkgs) == set([
+ "printing-package",
+ "py-extension1",
+ "py-extension2",
+ "test-error",
+ "test-fail",
+ ])
+
+
+def test_test_list(
+ mock_packages, mock_archive, mock_fetch, install_mockery_mutable_config
+):
+ pkg_with_tests = 'printing-package'
+ install(pkg_with_tests)
+ output = spack_test("list")
+ assert pkg_with_tests in output
+
+
+def test_has_test_method_fails(capsys):
+ with pytest.raises(SystemExit):
+ has_test_method('printing-package')
+
+ captured = capsys.readouterr()[1]
+ assert 'is not a class' in captured
diff --git a/lib/spack/spack/test/cmd/undevelop.py b/lib/spack/spack/test/cmd/undevelop.py
index 2e897e77f3..0c8f2df978 100644
--- a/lib/spack/spack/test/cmd/undevelop.py
+++ b/lib/spack/spack/test/cmd/undevelop.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -39,9 +39,7 @@ env:
assert not after.satisfies('dev_path=*')
-def test_undevelop_nonexistent(
- tmpdir, config, mock_packages, mutable_mock_env_path
-):
+def test_undevelop_nonexistent(tmpdir, config, mock_packages, mutable_mock_env_path):
# setup environment
envdir = tmpdir.mkdir('env')
with envdir.as_cwd():
diff --git a/lib/spack/spack/test/cmd/uninstall.py b/lib/spack/spack/test/cmd/uninstall.py
index a5adcdc74b..9a5d1587f0 100644
--- a/lib/spack/spack/test/cmd/uninstall.py
+++ b/lib/spack/spack/test/cmd/uninstall.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/unit_test.py b/lib/spack/spack/test/cmd/unit_test.py
index c5b8eb765e..1a273ff244 100644
--- a/lib/spack/spack/test/cmd/unit_test.py
+++ b/lib/spack/spack/test/cmd/unit_test.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/url.py b/lib/spack/spack/test/cmd/url.py
index 2350fc5fdb..c130840984 100644
--- a/lib/spack/spack/test/cmd/url.py
+++ b/lib/spack/spack/test/cmd/url.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -71,7 +71,7 @@ def test_url_with_no_version_fails():
url('parse', 'http://www.netlib.org/voronoi/triangle.zip')
-@pytest.mark.network
+@pytest.mark.maybeslow
@pytest.mark.skipif(
sys.version_info < (2, 7),
reason="Python 2.6 tests are run in a container, where "
@@ -106,7 +106,7 @@ def test_url_list():
assert 0 < correct_version_urls < total_urls
-@pytest.mark.network
+@pytest.mark.maybeslow
@pytest.mark.skipif(
sys.version_info < (2, 7),
reason="Python 2.6 tests are run in a container, where "
diff --git a/lib/spack/spack/test/cmd/verify.py b/lib/spack/spack/test/cmd/verify.py
index dda992fe49..de7544d9f1 100644
--- a/lib/spack/spack/test/cmd/verify.py
+++ b/lib/spack/spack/test/cmd/verify.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd/versions.py b/lib/spack/spack/test/cmd/versions.py
index 1e2bcbedb3..97f1745085 100644
--- a/lib/spack/spack/test/cmd/versions.py
+++ b/lib/spack/spack/test/cmd/versions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,45 +6,88 @@
import pytest
from spack.main import SpackCommand
+from spack.version import Version
versions = SpackCommand('versions')
+def test_safe_only_versions():
+ """Only test the safe versions of a package.
+ (Using the deprecated command line argument)
+ """
+ versions('--safe-only', 'zlib')
+
+
def test_safe_versions():
"""Only test the safe versions of a package."""
- versions('--safe-only', 'zlib')
+ versions('--safe', 'zlib')
-@pytest.mark.network
+@pytest.mark.maybeslow
def test_remote_versions():
"""Test a package for which remote versions should be available."""
versions('zlib')
-@pytest.mark.network
+@pytest.mark.maybeslow
+def test_remote_versions_only():
+ """Test a package for which remote versions should be available."""
+
+ versions('--remote', 'zlib')
+
+
+@pytest.mark.usefixtures('mock_packages')
+def test_new_versions_only(monkeypatch):
+ """Test a package for which new versions should be available."""
+ from spack.pkg.builtin.mock.brillig import Brillig
+
+ def mock_fetch_remote_versions(*args, **kwargs):
+ mock_remote_versions = {
+ # new version, we expect this to be in output:
+ Version('99.99.99'): {},
+ # some packages use '3.2' equivalently to '3.2.0'
+ # thus '3.2.1' is considered to be a new version
+ # and expected in the output also
+ Version('3.2.1'): {}, # new version, we expect this to be in output
+ Version('3.2'): {},
+ Version('1.0.0'): {},
+ }
+ return mock_remote_versions
+ mock_versions = {
+ # already checksummed versions:
+ Version('3.2'): {},
+ Version('1.0.0'): {},
+ }
+ monkeypatch.setattr(Brillig, 'versions', mock_versions)
+ monkeypatch.setattr(Brillig, 'fetch_remote_versions', mock_fetch_remote_versions)
+ v = versions('--new', 'brillig')
+ assert(v.strip(' \n\t') == "99.99.99\n 3.2.1")
+
+
+@pytest.mark.maybeslow
def test_no_versions():
"""Test a package for which no remote versions are available."""
versions('converge')
-@pytest.mark.network
+@pytest.mark.maybeslow
def test_no_unchecksummed_versions():
"""Test a package for which no unchecksummed versions are available."""
versions('bzip2')
-@pytest.mark.network
+@pytest.mark.maybeslow
def test_versions_no_url():
"""Test a package with versions but without a ``url`` attribute."""
versions('graphviz')
-@pytest.mark.network
+@pytest.mark.maybeslow
def test_no_versions_no_url():
"""Test a package without versions or a ``url`` attribute."""
diff --git a/lib/spack/spack/test/cmd/view.py b/lib/spack/spack/test/cmd/view.py
index 4ff1592035..b5a503d278 100644
--- a/lib/spack/spack/test/cmd/view.py
+++ b/lib/spack/spack/test/cmd/view.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/cmd_extensions.py b/lib/spack/spack/test/cmd_extensions.py
index cb16609278..f611bd5c8f 100644
--- a/lib/spack/spack/test/cmd_extensions.py
+++ b/lib/spack/spack/test/cmd_extensions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/compilers/__init__.py b/lib/spack/spack/test/compilers/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/test/compilers/__init__.py
+++ b/lib/spack/spack/test/compilers/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/compilers/basics.py b/lib/spack/spack/test/compilers/basics.py
index 78d8484b3b..39bb65254d 100644
--- a/lib/spack/spack/test/compilers/basics.py
+++ b/lib/spack/spack/test/compilers/basics.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -389,6 +389,7 @@ def test_cce_flags():
supported_flag_test("cxx_pic_flag", "-fPIC", "cce@9.1.0")
supported_flag_test("f77_pic_flag", "-fPIC", "cce@9.1.0")
supported_flag_test("fc_pic_flag", "-fPIC", "cce@9.1.0")
+ supported_flag_test("stdcxx_libs", (), "cce@1.0")
supported_flag_test("debug_flags", ['-g', '-G0', '-G1', '-G2', '-Gfast'],
'cce@1.0')
@@ -453,6 +454,8 @@ def test_aocc_flags():
'-Os', '-Oz', '-Og',
'-O', '-O4'],
'aocc@2.2.0')
+
+ supported_flag_test("stdcxx_libs", ("-lstdc++",), "aocc@2.2.0")
supported_flag_test("openmp_flag", "-fopenmp", "aocc@2.2.0")
supported_flag_test("cxx11_flag", "-std=c++11", "aocc@2.2.0")
supported_flag_test("cxx14_flag", "-std=c++14", "aocc@2.2.0")
@@ -464,6 +467,10 @@ def test_aocc_flags():
supported_flag_test("f77_pic_flag", "-fPIC", "aocc@2.2.0")
supported_flag_test("fc_pic_flag", "-fPIC", "aocc@2.2.0")
supported_flag_test("version_argument", "--version", "aocc@2.2.0")
+ flg = "-Wno-unused-command-line-argument -mllvm -eliminate-similar-expr=false"
+ supported_flag_test("cflags", flg, "aocc@3.0.0")
+ supported_flag_test("cxxflags", flg, "aocc@3.0.0")
+ supported_flag_test("fflags", flg, "aocc@3.0.0")
def test_fj_flags():
@@ -471,14 +478,16 @@ def test_fj_flags():
supported_flag_test("cxx98_flag", "-std=c++98", "fj@4.0.0")
supported_flag_test("cxx11_flag", "-std=c++11", "fj@4.0.0")
supported_flag_test("cxx14_flag", "-std=c++14", "fj@4.0.0")
+ supported_flag_test("cxx17_flag", "-std=c++17", "fj@4.0.0")
supported_flag_test("c99_flag", "-std=c99", "fj@4.0.0")
supported_flag_test("c11_flag", "-std=c11", "fj@4.0.0")
supported_flag_test("cc_pic_flag", "-KPIC", "fj@4.0.0")
supported_flag_test("cxx_pic_flag", "-KPIC", "fj@4.0.0")
supported_flag_test("f77_pic_flag", "-KPIC", "fj@4.0.0")
supported_flag_test("fc_pic_flag", "-KPIC", "fj@4.0.0")
- supported_flag_test("opt_flags", ['-O', '-O0', '-O1', '-O2', '-O3', '-O4'],
+ supported_flag_test("opt_flags", ['-O0', '-O1', '-O2', '-O3', '-Ofast'],
'fj@4.0.0')
+ supported_flag_test("debug_flags", "-g", "fj@4.0.0")
def test_gcc_flags():
@@ -604,6 +613,7 @@ def test_pgi_flags():
supported_flag_test("cxx_pic_flag", "-fpic", "pgi@1.0")
supported_flag_test("f77_pic_flag", "-fpic", "pgi@1.0")
supported_flag_test("fc_pic_flag", "-fpic", "pgi@1.0")
+ supported_flag_test("stdcxx_libs", ("-pgc++libs",), "pgi@1.0")
supported_flag_test("debug_flags", ['-g', '-gopt'], 'pgi@1.0')
supported_flag_test("opt_flags", ['-O', '-O0', '-O1', '-O2', '-O3', '-O4'],
'pgi@1.0')
diff --git a/lib/spack/spack/test/compilers/detection.py b/lib/spack/spack/test/compilers/detection.py
index 47e078f242..1736f47ee5 100644
--- a/lib/spack/spack/test/compilers/detection.py
+++ b/lib/spack/spack/test/compilers/detection.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -96,7 +96,11 @@ def test_apple_clang_version_detection(
('clang version 8.0.0-3 (tags/RELEASE_800/final)\n'
'Target: aarch64-unknown-linux-gnu\n'
'Thread model: posix\n'
- 'InstalledDir: /usr/bin\n', '8.0.0')
+ 'InstalledDir: /usr/bin\n', '8.0.0'),
+ ('clang version 11.0.0\n'
+ 'Target: aarch64-unknown-linux-gnu\n'
+ 'Thread model: posix\n'
+ 'InstalledDir: /usr/bin\n', '11.0.0')
])
def test_clang_version_detection(version_str, expected_version):
version = spack.compilers.clang.Clang.extract_version_from_output(
@@ -317,6 +321,16 @@ def test_cray_frontend_compiler_detection(
@pytest.mark.parametrize('version_str,expected_version', [
# This applies to C,C++ and FORTRAN compiler
+ ('AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10)'
+ '(based on LLVM Mirror.Version.12.0.0)\n'
+ 'Target: x86_64-unknown-linux-gnu\n'
+ 'Thread model: posix\n', '3.0.0'
+ ),
+ ('AMD clang version 11.0.0 (CLANG: AOCC_2.3.0-Build#85 2020_11_10)'
+ '(based on LLVM Mirror.Version.11.0.0)\n'
+ 'Target: x86_64-unknown-linux-gnu\n'
+ 'Thread model: posix\n', '2.3.0'
+ ),
('AMD clang version 10.0.0 (CLANG: AOCC_2.2.0-Build#93 2020_06_25)'
'(based on LLVM Mirror.Version.10.0.0)\n'
'Target: x86_64-unknown-linux-gnu\n'
diff --git a/lib/spack/spack/test/concretize.py b/lib/spack/spack/test/concretize.py
index 6f87381e3f..f392387099 100644
--- a/lib/spack/spack/test/concretize.py
+++ b/lib/spack/spack/test/concretize.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -660,8 +660,7 @@ class TestConcretize(object):
abstract_specs = [Spec(x) for x in abstract_specs]
concrete_specs = spack.concretize.concretize_specs_together(
- *abstract_specs
- )
+ *abstract_specs)
# Check there's only one configuration of each package in the DAG
names = set(
@@ -690,7 +689,7 @@ class TestConcretize(object):
# Include targets to prevent regression on 20537
@pytest.mark.parametrize('spec, best_achievable', [
- ('mpileaks%gcc@4.4.7 target=x86_64:', 'core2'),
+ ('mpileaks%gcc@4.4.7 ^dyninst@10.2.1 target=x86_64:', 'core2'),
('mpileaks%gcc@4.8 target=x86_64:', 'haswell'),
('mpileaks%gcc@5.3.0 target=x86_64:', 'broadwell'),
('mpileaks%apple-clang@5.1.0 target=x86_64:', 'x86_64')
@@ -925,6 +924,35 @@ class TestConcretize(object):
assert s.external
assert s.satisfies(expected)
+ @pytest.mark.regression('20976')
+ @pytest.mark.parametrize('compiler,spec_str,expected,xfailold', [
+ ('gcc', 'external-common-python %clang',
+ '%clang ^external-common-openssl%gcc ^external-common-gdbm%clang', False),
+ ('clang', 'external-common-python',
+ '%clang ^external-common-openssl%clang ^external-common-gdbm%clang', True)
+ ])
+ def test_compiler_in_nonbuildable_external_package(
+ self, compiler, spec_str, expected, xfailold
+ ):
+ """Check that the compiler of a non-buildable external package does not
+ spread to other dependencies, unless no other commpiler is specified."""
+ packages_yaml = {
+ 'external-common-openssl': {
+ 'externals': [
+ {'spec': 'external-common-openssl@1.1.1i%' + compiler,
+ 'prefix': '/usr'}
+ ],
+ 'buildable': False
+ }
+ }
+ spack.config.set('packages', packages_yaml)
+
+ s = Spec(spec_str).concretized()
+ if xfailold and spack.config.get('config:concretizer') == 'original':
+ pytest.xfail('This only works on the ASP-based concretizer')
+ assert s.satisfies(expected)
+ assert 'external-common-perl' not in [d.name for d in s.dependencies()]
+
def test_external_packages_have_consistent_hash(self):
if spack.config.get('config:concretizer') == 'original':
pytest.skip('This tests needs the ASP-based concretizer')
@@ -1182,3 +1210,37 @@ class TestConcretize(object):
for node in s.traverse():
assert node.satisfies(expected_compiler)
+
+ @pytest.mark.parametrize('spec_str,expected_dict', [
+ # Check the defaults from the package (libs=shared)
+ ('multivalue-variant', {
+ 'libs=shared': True,
+ 'libs=static': False
+ }),
+ # Check that libs=static doesn't extend the default
+ ('multivalue-variant libs=static', {
+ 'libs=shared': False,
+ 'libs=static': True
+ }),
+ ])
+ def test_multivalued_variants_from_cli(self, spec_str, expected_dict):
+ s = Spec(spec_str).concretized()
+
+ for constraint, value in expected_dict.items():
+ assert s.satisfies(constraint) == value
+
+ @pytest.mark.regression('22351')
+ @pytest.mark.parametrize('spec_str,expected', [
+ # Version 1.1.0 is deprecated and should not be selected, unless we
+ # explicitly asked for that
+ ('deprecated-versions', ['deprecated-versions@1.0.0']),
+ ('deprecated-versions@1.1.0', ['deprecated-versions@1.1.0']),
+ ])
+ def test_deprecated_versions_not_selected(self, spec_str, expected):
+ if spack.config.get('config:concretizer') == 'original':
+ pytest.xfail('Known failure of the original concretizer')
+
+ s = Spec(spec_str).concretized()
+
+ for abstract_spec in expected:
+ assert abstract_spec in s
diff --git a/lib/spack/spack/test/concretize_preferences.py b/lib/spack/spack/test/concretize_preferences.py
index 9abac7221d..7abbaa6e92 100644
--- a/lib/spack/spack/test/concretize_preferences.py
+++ b/lib/spack/spack/test/concretize_preferences.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/config.py b/lib/spack/spack/test/config.py
index 9384eb5b47..d47851462a 100644
--- a/lib/spack/spack/test/config.py
+++ b/lib/spack/spack/test/config.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ import pytest
import spack.paths
import spack.config
import spack.main
+import spack.environment
import spack.schema.compilers
import spack.schema.config
import spack.schema.env
@@ -276,6 +277,37 @@ def test_write_to_same_priority_file(mock_low_high_config, compiler_specs):
repos_low = {'repos': ["/some/path"]}
repos_high = {'repos': ["/some/other/path"]}
+# Test setting config values via path in filename
+
+
+def test_add_config_path():
+
+ # Try setting a new install tree root
+ path = "config:install_tree:root:/path/to/config.yaml"
+ spack.config.add(path, scope="command_line")
+ set_value = spack.config.get('config')['install_tree']['root']
+ assert set_value == '/path/to/config.yaml'
+
+ # Now a package:all setting
+ path = "packages:all:compiler:[gcc]"
+ spack.config.add(path, scope="command_line")
+ compilers = spack.config.get('packages')['all']['compiler']
+ assert "gcc" in compilers
+
+
+def test_add_config_filename(mock_low_high_config, tmpdir):
+
+ config_yaml = tmpdir.join('config-filename.yaml')
+ config_yaml.ensure()
+ with config_yaml.open('w') as f:
+ syaml.dump_config(config_low, f)
+
+ spack.config.add_from_file(str(config_yaml), scope="low")
+ assert "build_stage" in spack.config.get('config')
+ build_stages = spack.config.get('config')['build_stage']
+ for stage in config_low['config']['build_stage']:
+ assert stage in build_stages
+
# repos
def test_write_list_in_memory(mock_low_high_config):
@@ -286,7 +318,12 @@ def test_write_list_in_memory(mock_low_high_config):
assert config == repos_high['repos'] + repos_low['repos']
-def test_substitute_config_variables(mock_low_high_config):
+class MockEnv(object):
+ def __init__(self, path):
+ self.path = path
+
+
+def test_substitute_config_variables(mock_low_high_config, monkeypatch):
prefix = spack.paths.prefix.lstrip('/')
assert os.path.join(
@@ -317,6 +354,33 @@ def test_substitute_config_variables(mock_low_high_config):
'/foo/bar/baz', prefix, 'foo/bar/baz'
) != spack_path.canonicalize_path('/foo/bar/baz/${spack/foo/bar/baz/')
+ # $env replacement is a no-op when no environment is active
+ assert spack_path.canonicalize_path(
+ '/foo/bar/baz/$env'
+ ) == '/foo/bar/baz/$env'
+
+ # Fake an active environment and $env is replaced properly
+ fake_env_path = '/quux/quuux'
+ monkeypatch.setattr(spack.environment, 'get_env',
+ lambda x, y: MockEnv(fake_env_path))
+ assert spack_path.canonicalize_path(
+ '$env/foo/bar/baz'
+ ) == os.path.join(fake_env_path, 'foo/bar/baz')
+
+ # relative paths without source information are relative to cwd
+ assert spack_path.canonicalize_path(
+ 'foo/bar/baz'
+ ) == os.path.abspath('foo/bar/baz')
+
+ # relative paths with source information are relative to the file
+ spack.config.set(
+ 'config:module_roots', {'lmod': 'foo/bar/baz'}, scope='low')
+ spack.config.config.clear_caches()
+ path = spack.config.get('config:module_roots:lmod')
+ assert spack_path.canonicalize_path(path) == os.path.normpath(
+ os.path.join(mock_low_high_config.scopes['low'].path,
+ 'foo/bar/baz'))
+
packages_merge_low = {
'packages': {
diff --git a/lib/spack/spack/test/config_values.py b/lib/spack/spack/test/config_values.py
index a0bf7e52f8..367138f098 100644
--- a/lib/spack/spack/test/config_values.py
+++ b/lib/spack/spack/test/config_values.py
@@ -1,37 +1,31 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import pytest
import spack.spec
+import spack.store
-def test_set_install_hash_length(mock_packages, mutable_config, monkeypatch,
- tmpdir):
- # spack.store.layout caches initial config values, so we monkeypatch
- mutable_config.set('config:install_hash_length', 5)
+@pytest.mark.parametrize('hash_length', [1, 2, 3, 4, 5, 9])
+@pytest.mark.use_fixtures('mock_packages')
+def test_set_install_hash_length(hash_length, mutable_config, tmpdir):
+ mutable_config.set('config:install_hash_length', hash_length)
mutable_config.set('config:install_tree', {'root': str(tmpdir)})
- monkeypatch.setattr(spack.store, 'store', spack.store._store())
-
- spec = spack.spec.Spec('libelf').concretized()
- prefix = spec.prefix
- hash = prefix.rsplit('-')[-1]
-
- assert len(hash) == 5
-
- mutable_config.set('config:install_hash_length', 9)
- monkeypatch.setattr(spack.store, 'store', spack.store._store())
-
- spec = spack.spec.Spec('libelf').concretized()
- prefix = spec.prefix
- hash = prefix.rsplit('-')[-1]
-
- assert len(hash) == 9
-
-
-def test_set_install_hash_length_upper_case(mock_packages, mutable_config,
- monkeypatch, tmpdir):
- # spack.store.layout caches initial config values, so we monkeypatch
+ # The call below is to reinitialize the directory layout associated
+ # with the store according to the configuration changes above (i.e.
+ # with the shortened hash)
+ store = spack.store._store()
+ with spack.store.use_store(store):
+ spec = spack.spec.Spec('libelf').concretized()
+ prefix = spec.prefix
+ hash_str = prefix.rsplit('-')[-1]
+ assert len(hash_str) == hash_length
+
+
+@pytest.mark.use_fixtures('mock_packages')
+def test_set_install_hash_length_upper_case(mutable_config, tmpdir):
mutable_config.set('config:install_hash_length', 5)
mutable_config.set(
'config:install_tree',
@@ -42,10 +36,12 @@ def test_set_install_hash_length_upper_case(mock_packages, mutable_config,
}
}
)
- monkeypatch.setattr(spack.store, 'store', spack.store._store())
-
- spec = spack.spec.Spec('libelf').concretized()
- prefix = spec.prefix
- hash = prefix.rsplit('-')[-1]
-
- assert len(hash) == 5
+ # The call below is to reinitialize the directory layout associated
+ # with the store according to the configuration changes above (i.e.
+ # with the shortened hash and projection)
+ store = spack.store._store()
+ with spack.store.use_store(store):
+ spec = spack.spec.Spec('libelf').concretized()
+ prefix = spec.prefix
+ hash_str = prefix.rsplit('-')[-1]
+ assert len(hash_str) == 5
diff --git a/lib/spack/spack/test/conftest.py b/lib/spack/spack/test/conftest.py
index 297ae0d4f2..6cc3ad16db 100644
--- a/lib/spack/spack/test/conftest.py
+++ b/lib/spack/spack/test/conftest.py
@@ -563,12 +563,10 @@ def _populate(mock_db):
pkg = spack.repo.get(s)
pkg.do_install(fake=True, explicit=True)
- # Transaction used to avoid repeated writes.
- with mock_db.write_transaction():
- _install('mpileaks ^mpich')
- _install('mpileaks ^mpich2')
- _install('mpileaks ^zmpi')
- _install('externaltest')
+ _install('mpileaks ^mpich')
+ _install('mpileaks ^mpich2')
+ _install('mpileaks ^zmpi')
+ _install('externaltest')
@pytest.fixture(scope='session')
@@ -605,38 +603,7 @@ def mock_store(tmpdir_factory, mock_repo_path, mock_configuration_scopes,
# Make the DB filesystem read-only to ensure we can't modify entries
store_path.join('.spack-db').chmod(mode=0o555, rec=1)
- yield store
-
- store_path.join('.spack-db').chmod(mode=0o755, rec=1)
-
-
-@pytest.fixture(scope='function')
-def mutable_mock_store(
- tmpdir_factory, mock_repo_path, mock_configuration_scopes,
- _store_dir_and_cache
-):
- """Creates a read-only mock database with some packages installed note
- that the ref count for dyninst here will be 3, as it's recycled
- across each install.
-
- This does not actually activate the store for use by Spack -- see the
- ``database`` fixture for that.
-
- """
- store_path, store_cache = _store_dir_and_cache
-
- # If the cache does not exist populate the store and create it
- if not os.path.exists(str(store_cache.join('.spack-db'))):
- with spack.config.use_configuration(*mock_configuration_scopes):
- with spack.store.use_store(str(store_path)) as store:
- with spack.repo.use_repositories(mock_repo_path):
- _populate(store.db)
- store_path.copy(store_cache, mode=True, stat=True)
-
- # Make the DB filesystem read-only to ensure we can't modify entries
- store_path.join('.spack-db').chmod(mode=0o555, rec=1)
-
- yield store
+ yield store_path
store_path.join('.spack-db').chmod(mode=0o755, rec=1)
@@ -644,10 +611,9 @@ def mutable_mock_store(
@pytest.fixture(scope='function')
def database(mock_store, mock_packages, config, monkeypatch):
"""This activates the mock store, packages, AND config."""
- monkeypatch.setattr(spack.store, 'store', mock_store)
- yield mock_store.db
- # Force reading the database again between tests
- mock_store.db.last_seen_verifier = ''
+ with spack.store.use_store(str(mock_store)) as store:
+ yield store.db
+ store.db.last_seen_verifier = ''
@pytest.fixture(scope='function')
@@ -718,20 +684,15 @@ def disable_compiler_execution(monkeypatch, request):
@pytest.fixture(scope='function')
-def install_mockery(tmpdir, config, mock_packages, monkeypatch):
+def install_mockery(temporary_store, config, mock_packages):
"""Hooks a fake install directory, DB, and stage directory into Spack."""
- monkeypatch.setattr(
- spack.store, 'store', spack.store.Store(str(tmpdir.join('opt'))))
-
# We use a fake package, so temporarily disable checksumming
with spack.config.override('config:checksum', False):
yield
- tmpdir.join('opt').remove()
-
# Also wipe out any cached prefix failure locks (associated with
# the session-scoped mock archive).
- for pkg_id in list(spack.store.db._prefix_failures.keys()):
+ for pkg_id in list(temporary_store.db._prefix_failures.keys()):
lock = spack.store.db._prefix_failures.pop(pkg_id, None)
if lock:
try:
@@ -741,23 +702,28 @@ def install_mockery(tmpdir, config, mock_packages, monkeypatch):
@pytest.fixture(scope='function')
+def temporary_store(tmpdir):
+ """Hooks a temporary empty store for the test function."""
+ temporary_store_path = tmpdir.join('opt')
+ with spack.store.use_store(str(temporary_store_path)) as s:
+ yield s
+ temporary_store_path.remove()
+
+
+@pytest.fixture(scope='function')
def install_mockery_mutable_config(
- tmpdir, mutable_config, mock_packages, monkeypatch):
+ temporary_store, mutable_config, mock_packages
+):
"""Hooks a fake install directory, DB, and stage directory into Spack.
This is specifically for tests which want to use 'install_mockery' but
also need to modify configuration (and hence would want to use
'mutable config'): 'install_mockery' does not support this.
"""
- monkeypatch.setattr(
- spack.store, 'store', spack.store.Store(str(tmpdir.join('opt'))))
-
# We use a fake package, so temporarily disable checksumming
with spack.config.override('config:checksum', False):
yield
- tmpdir.join('opt').remove()
-
@pytest.fixture()
def mock_fetch(mock_archive, monkeypatch):
@@ -1222,7 +1188,7 @@ repo:
class MockBundle(object):
has_code = False
name = 'mock-bundle'
- versions = {}
+ versions = {} # type: ignore
@pytest.fixture
diff --git a/lib/spack/spack/test/container/cli.py b/lib/spack/spack/test/container/cli.py
index f9b3b43f83..26ae9f0c68 100644
--- a/lib/spack/spack/test/container/cli.py
+++ b/lib/spack/spack/test/container/cli.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/container/conftest.py b/lib/spack/spack/test/container/conftest.py
index 70a1ae2547..43e16cd180 100644
--- a/lib/spack/spack/test/container/conftest.py
+++ b/lib/spack/spack/test/container/conftest.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/container/docker.py b/lib/spack/spack/test/container/docker.py
index 6392f97db2..43a32b0720 100644
--- a/lib/spack/spack/test/container/docker.py
+++ b/lib/spack/spack/test/container/docker.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/container/images.py b/lib/spack/spack/test/container/images.py
index 6cec1cc592..d04bf60b08 100644
--- a/lib/spack/spack/test/container/images.py
+++ b/lib/spack/spack/test/container/images.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/container/schema.py b/lib/spack/spack/test/container/schema.py
index e86f9d3fe8..4bb0d574a9 100644
--- a/lib/spack/spack/test/container/schema.py
+++ b/lib/spack/spack/test/container/schema.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/container/singularity.py b/lib/spack/spack/test/container/singularity.py
index ab342cacec..12245e935e 100644
--- a/lib/spack/spack/test/container/singularity.py
+++ b/lib/spack/spack/test/container/singularity.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/data/sourceme_first.sh b/lib/spack/spack/test/data/sourceme_first.sh
index 8fa1774b17..6d473ea6d3 100644
--- a/lib/spack/spack/test/data/sourceme_first.sh
+++ b/lib/spack/spack/test/data/sourceme_first.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/data/sourceme_lmod.sh b/lib/spack/spack/test/data/sourceme_lmod.sh
index b71e338ec9..0ce370d09e 100644
--- a/lib/spack/spack/test/data/sourceme_lmod.sh
+++ b/lib/spack/spack/test/data/sourceme_lmod.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/data/sourceme_parameters.sh b/lib/spack/spack/test/data/sourceme_parameters.sh
index d11590d224..205a7006df 100644
--- a/lib/spack/spack/test/data/sourceme_parameters.sh
+++ b/lib/spack/spack/test/data/sourceme_parameters.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/data/sourceme_second.sh b/lib/spack/spack/test/data/sourceme_second.sh
index 3f16153627..79af1aea36 100644
--- a/lib/spack/spack/test/data/sourceme_second.sh
+++ b/lib/spack/spack/test/data/sourceme_second.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/data/sourceme_unicode.sh b/lib/spack/spack/test/data/sourceme_unicode.sh
index d819126bb6..b396dc43d7 100644
--- a/lib/spack/spack/test/data/sourceme_unicode.sh
+++ b/lib/spack/spack/test/data/sourceme_unicode.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/data/sourceme_unset.sh b/lib/spack/spack/test/data/sourceme_unset.sh
index 0366833838..2f1658529a 100644
--- a/lib/spack/spack/test/data/sourceme_unset.sh
+++ b/lib/spack/spack/test/data/sourceme_unset.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/database.py b/lib/spack/spack/test/database.py
index 8e0eac7cc0..cb9fbada2a 100644
--- a/lib/spack/spack/test/database.py
+++ b/lib/spack/spack/test/database.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -38,16 +38,6 @@ pytestmark = pytest.mark.db
@pytest.fixture()
-def test_store(tmpdir):
- real_store = spack.store.store
- spack.store.store = spack.store.Store(str(tmpdir.join('test_store')))
-
- yield
-
- spack.store.store = real_store
-
-
-@pytest.fixture()
def upstream_and_downstream_db(tmpdir_factory, gen_mock_layout):
mock_db_root = str(tmpdir_factory.mktemp('mock_db_root'))
upstream_write_db = spack.database.Database(mock_db_root)
@@ -180,8 +170,8 @@ def test_add_to_upstream_after_downstream(upstream_and_downstream_db):
spack.store.db = orig_db
-@pytest.mark.usefixtures('config')
-def test_cannot_write_upstream(tmpdir_factory, test_store, gen_mock_layout):
+@pytest.mark.usefixtures('config', 'temporary_store')
+def test_cannot_write_upstream(tmpdir_factory, gen_mock_layout):
roots = [str(tmpdir_factory.mktemp(x)) for x in ['a', 'b']]
layouts = [gen_mock_layout(x) for x in ['/ra/', '/rb/']]
@@ -205,8 +195,8 @@ def test_cannot_write_upstream(tmpdir_factory, test_store, gen_mock_layout):
upstream_dbs[0].add(spec, layouts[1])
-@pytest.mark.usefixtures('config')
-def test_recursive_upstream_dbs(tmpdir_factory, test_store, gen_mock_layout):
+@pytest.mark.usefixtures('config', 'temporary_store')
+def test_recursive_upstream_dbs(tmpdir_factory, gen_mock_layout):
roots = [str(tmpdir_factory.mktemp(x)) for x in ['a', 'b', 'c']]
layouts = [gen_mock_layout(x) for x in ['/ra/', '/rb/', '/rc/']]
@@ -648,10 +638,6 @@ def test_090_non_root_ref_counts(mutable_database):
assert mpich_rec.ref_count == 0
-@pytest.mark.skipif(
- os.environ.get('SPACK_TEST_SOLVER') == 'clingo',
- reason='Test for Clingo are run in a container with root permissions'
-)
def test_100_no_write_with_exception_on_remove(database):
def fail_while_writing():
with database.write_transaction():
@@ -669,10 +655,6 @@ def test_100_no_write_with_exception_on_remove(database):
assert len(database.query('mpileaks ^zmpi', installed=any)) == 1
-@pytest.mark.skipif(
- os.environ.get('SPACK_TEST_SOLVER') == 'clingo',
- reason='Test for Clingo are run in a container with root permissions'
-)
def test_110_no_write_with_exception_on_install(database):
def fail_while_writing():
with database.write_transaction():
diff --git a/lib/spack/spack/test/directives.py b/lib/spack/spack/test/directives.py
index ae1b6b7e2a..55ec46d01d 100644
--- a/lib/spack/spack/test/directives.py
+++ b/lib/spack/spack/test/directives.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/directory_layout.py b/lib/spack/spack/test/directory_layout.py
index 3cb976a077..73446714ba 100644
--- a/lib/spack/spack/test/directory_layout.py
+++ b/lib/spack/spack/test/directory_layout.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,6 +7,7 @@
This test verifies that the Spack directory layout works properly.
"""
import os
+import os.path
import pytest
import spack.paths
@@ -19,16 +20,6 @@ from spack.spec import Spec
max_packages = 10
-@pytest.fixture()
-def layout_and_dir(tmpdir):
- """Returns a directory layout and the corresponding directory."""
- layout = YamlDirectoryLayout(str(tmpdir))
- old_layout = spack.store.layout
- spack.store.layout = layout
- yield layout, str(tmpdir)
- spack.store.layout = old_layout
-
-
def test_yaml_directory_layout_parameters(tmpdir, config):
"""This tests the various parameters that can be used to configure
the install location """
@@ -84,14 +75,14 @@ def test_yaml_directory_layout_parameters(tmpdir, config):
projections=projections_package7)
-def test_read_and_write_spec(layout_and_dir, config, mock_packages):
+def test_read_and_write_spec(temporary_store, config, mock_packages):
"""This goes through each package in spack and creates a directory for
it. It then ensures that the spec for the directory's
installed package can be read back in consistently, and
finally that the directory can be removed by the directory
layout.
"""
- layout, tmpdir = layout_and_dir
+ layout = temporary_store.layout
packages = list(spack.repo.path.all_packages())[:max_packages]
for pkg in packages:
@@ -114,7 +105,7 @@ def test_read_and_write_spec(layout_and_dir, config, mock_packages):
# Ensure directory has been created in right place.
assert os.path.isdir(install_dir)
- assert install_dir.startswith(str(tmpdir))
+ assert install_dir.startswith(temporary_store.root)
# Ensure spec file exists when directory is created
assert os.path.isfile(spec_path)
@@ -129,7 +120,7 @@ def test_read_and_write_spec(layout_and_dir, config, mock_packages):
# TODO: fix this when we can concretize more loosely based on
# TODO: what is installed. We currently omit these to
# TODO: increase reuse of build dependencies.
- stored_deptypes = ('link', 'run')
+ stored_deptypes = spack.hash_types.full_hash
expected = spec.copy(deps=stored_deptypes)
expected._mark_concrete()
@@ -160,7 +151,7 @@ def test_read_and_write_spec(layout_and_dir, config, mock_packages):
assert not os.path.exists(install_dir)
-def test_handle_unknown_package(layout_and_dir, config, mock_packages):
+def test_handle_unknown_package(temporary_store, config, mock_packages):
"""This test ensures that spack can at least do *some*
operations with packages that are installed but that it
does not know about. This is actually not such an uncommon
@@ -171,7 +162,7 @@ def test_handle_unknown_package(layout_and_dir, config, mock_packages):
information about installed packages' specs to uninstall
or query them again if the package goes away.
"""
- layout, _ = layout_and_dir
+ layout = temporary_store.layout
mock_db = spack.repo.RepoPath(spack.paths.mock_packages_path)
not_in_mock = set.difference(
@@ -209,9 +200,9 @@ def test_handle_unknown_package(layout_and_dir, config, mock_packages):
assert spec.dag_hash() == spec_from_file.dag_hash()
-def test_find(layout_and_dir, config, mock_packages):
+def test_find(temporary_store, config, mock_packages):
"""Test that finding specs within an install layout works."""
- layout, _ = layout_and_dir
+ layout = temporary_store.layout
packages = list(spack.repo.path.all_packages())[:max_packages]
# Create install prefixes for all packages in the list
diff --git a/lib/spack/spack/test/environment_modifications.py b/lib/spack/spack/test/environment_modifications.py
index d1f5a4b791..014bf340bf 100644
--- a/lib/spack/spack/test/environment_modifications.py
+++ b/lib/spack/spack/test/environment_modifications.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/fetch_strategy.py b/lib/spack/spack/test/fetch_strategy.py
index 5470d88c13..d7f770eac3 100644
--- a/lib/spack/spack/test/fetch_strategy.py
+++ b/lib/spack/spack/test/fetch_strategy.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/flag_handlers.py b/lib/spack/spack/test/flag_handlers.py
index 6c7651ad19..8fac5a898c 100644
--- a/lib/spack/spack/test/flag_handlers.py
+++ b/lib/spack/spack/test/flag_handlers.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/git_fetch.py b/lib/spack/spack/test/git_fetch.py
index 8dc57da793..ad010e3ca5 100644
--- a/lib/spack/spack/test/git_fetch.py
+++ b/lib/spack/spack/test/git_fetch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/graph.py b/lib/spack/spack/test/graph.py
index 7ad1a75a90..76c9524728 100644
--- a/lib/spack/spack/test/graph.py
+++ b/lib/spack/spack/test/graph.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -122,3 +122,12 @@ o dyninst
|/
o libelf
'''
+
+
+def test_topo_sort_filtered(mock_packages):
+ """Test topo sort gives correct order when filtering link deps."""
+ s = Spec('both-link-and-build-dep-a').normalized()
+
+ topo = topological_sort(s, deptype=('link',))
+
+ assert topo == ['both-link-and-build-dep-a', 'both-link-and-build-dep-c']
diff --git a/lib/spack/spack/test/hg_fetch.py b/lib/spack/spack/test/hg_fetch.py
index 2cdeace3e4..d0f7629cf8 100644
--- a/lib/spack/spack/test/hg_fetch.py
+++ b/lib/spack/spack/test/hg_fetch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/install.py b/lib/spack/spack/test/install.py
index c2a8d0b100..77810ff0e3 100644
--- a/lib/spack/spack/test/install.py
+++ b/lib/spack/spack/test/install.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -183,70 +183,70 @@ def test_flatten_deps(
assert os.path.isdir(dependency_dir)
-def test_installed_upstream_external(
- tmpdir_factory, install_mockery, mock_fetch, gen_mock_layout,
- monkeypatch):
- """Check that when a dependency package is recorded as installed in
- an upstream database that it is not reinstalled.
+@pytest.fixture()
+def install_upstream(tmpdir_factory, gen_mock_layout, install_mockery):
+ """Provides a function that installs a specified set of specs to an
+ upstream database. The function returns a store which points to the
+ upstream, as well as the upstream layout (for verifying that dependent
+ installs are using the upstream installs).
"""
mock_db_root = str(tmpdir_factory.mktemp('mock_db_root'))
prepared_db = spack.database.Database(mock_db_root)
-
upstream_layout = gen_mock_layout('/a/')
- dependency = spack.spec.Spec('externaltool')
- dependency.concretize()
- prepared_db.add(dependency, upstream_layout)
-
- downstream_db_root = str(
- tmpdir_factory.mktemp('mock_downstream_db_root'))
- db_for_test = spack.database.Database(
- downstream_db_root, upstream_dbs=[prepared_db])
- monkeypatch.setattr(spack.store, 'db', db_for_test)
- dependent = spack.spec.Spec('externaltest')
- dependent.concretize()
-
- new_dependency = dependent['externaltool']
- assert new_dependency.external
- assert new_dependency.prefix == '/path/to/external_tool'
+ def _install_upstream(*specs):
+ for spec_str in specs:
+ s = spack.spec.Spec(spec_str).concretized()
+ prepared_db.add(s, upstream_layout)
- dependent.package.do_install()
+ downstream_root = str(tmpdir_factory.mktemp('mock_downstream_db_root'))
+ db_for_test = spack.database.Database(
+ downstream_root, upstream_dbs=[prepared_db]
+ )
+ store = spack.store.Store(downstream_root)
+ store.db = db_for_test
+ return store, upstream_layout
- assert not os.path.exists(new_dependency.prefix)
- assert os.path.exists(dependent.prefix)
+ return _install_upstream
-def test_installed_upstream(tmpdir_factory, install_mockery, mock_fetch,
- gen_mock_layout, monkeypatch):
+def test_installed_upstream_external(install_upstream, mock_fetch):
"""Check that when a dependency package is recorded as installed in
- an upstream database that it is not reinstalled.
+ an upstream database that it is not reinstalled.
"""
- mock_db_root = str(tmpdir_factory.mktemp('mock_db_root'))
- prepared_db = spack.database.Database(mock_db_root)
+ s, _ = install_upstream('externaltool')
+ with spack.store.use_store(s):
+ dependent = spack.spec.Spec('externaltest')
+ dependent.concretize()
- upstream_layout = gen_mock_layout('/a/')
+ new_dependency = dependent['externaltool']
+ assert new_dependency.external
+ assert new_dependency.prefix == '/path/to/external_tool'
- dependency = spack.spec.Spec('dependency-install')
- dependency.concretize()
- prepared_db.add(dependency, upstream_layout)
-
- downstream_db_root = str(
- tmpdir_factory.mktemp('mock_downstream_db_root'))
- db_for_test = spack.database.Database(
- downstream_db_root, upstream_dbs=[prepared_db])
- monkeypatch.setattr(spack.store, 'db', db_for_test)
- dependent = spack.spec.Spec('dependent-install')
- dependent.concretize()
+ dependent.package.do_install()
+
+ assert not os.path.exists(new_dependency.prefix)
+ assert os.path.exists(dependent.prefix)
+
+
+def test_installed_upstream(install_upstream, mock_fetch):
+ """Check that when a dependency package is recorded as installed in
+ an upstream database that it is not reinstalled.
+ """
+ s, upstream_layout = install_upstream('dependency-install')
+ with spack.store.use_store(s):
+ dependency = spack.spec.Spec('dependency-install').concretized()
+ dependent = spack.spec.Spec('dependent-install').concretized()
- new_dependency = dependent['dependency-install']
- assert new_dependency.package.installed_upstream
- assert (new_dependency.prefix ==
- upstream_layout.path_for_spec(dependency))
+ new_dependency = dependent['dependency-install']
+ assert new_dependency.package.installed_upstream
+ assert (new_dependency.prefix ==
+ upstream_layout.path_for_spec(dependency))
- dependent.package.do_install()
+ dependent.package.do_install()
- assert not os.path.exists(new_dependency.prefix)
- assert os.path.exists(dependent.prefix)
+ assert not os.path.exists(new_dependency.prefix)
+ assert os.path.exists(dependent.prefix)
@pytest.mark.disable_clean_stage_check
diff --git a/lib/spack/spack/test/installer.py b/lib/spack/spack/test/installer.py
index 590c4a4a1a..861b0db8df 100644
--- a/lib/spack/spack/test/installer.py
+++ b/lib/spack/spack/test/installer.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -231,7 +231,7 @@ def test_process_binary_cache_tarball_tar(install_mockery, monkeypatch, capfd):
def test_try_install_from_binary_cache(install_mockery, mock_packages,
monkeypatch, capsys):
"""Tests SystemExit path for_try_install_from_binary_cache."""
- def _mirrors_for_spec(spec, force, full_hash_match=False):
+ def _mirrors_for_spec(spec, full_hash_match=False):
spec = spack.spec.Spec('mpi').concretized()
return [{
'mirror_url': 'notused',
@@ -579,6 +579,32 @@ def test_clear_failures_errs(install_mockery, monkeypatch, capsys):
monkeypatch.setattr(os, 'remove', orig_fn)
+def test_combine_phase_logs(tmpdir):
+ """Write temporary files, and assert that combine phase logs works
+ to combine them into one file. We aren't currently using this function,
+ but it's available when the logs are refactored to be written separately.
+ """
+ log_files = ['configure-out.txt', 'install-out.txt', 'build-out.txt']
+ phase_log_files = []
+
+ # Create and write to dummy phase log files
+ for log_file in log_files:
+ phase_log_file = os.path.join(str(tmpdir), log_file)
+ with open(phase_log_file, 'w') as plf:
+ plf.write('Output from %s\n' % log_file)
+ phase_log_files.append(phase_log_file)
+
+ # This is the output log we will combine them into
+ combined_log = os.path.join(str(tmpdir), "combined-out.txt")
+ spack.installer.combine_phase_logs(phase_log_files, combined_log)
+ with open(combined_log, 'r') as log_file:
+ out = log_file.read()
+
+ # Ensure each phase log file is represented
+ for log_file in log_files:
+ assert "Output from %s\n" % log_file in out
+
+
def test_check_deps_status_install_failure(install_mockery, monkeypatch):
const_arg = installer_args(['a'], {})
installer = create_installer(const_arg)
@@ -751,7 +777,11 @@ def test_requeue_task(install_mockery, capfd):
installer = create_installer(const_arg)
task = create_build_task(installer.build_requests[0].pkg)
+ # temporarily set tty debug messages on so we can test output
+ current_debug_level = tty.debug_level()
+ tty.set_debug(1)
installer._requeue_task(task)
+ tty.set_debug(current_debug_level)
ids = list(installer.build_tasks)
assert len(ids) == 1
@@ -760,7 +790,7 @@ def test_requeue_task(install_mockery, capfd):
assert qtask.sequence > task.sequence
assert qtask.attempts == task.attempts + 1
- out = capfd.readouterr()[0]
+ out = capfd.readouterr()[1]
assert 'Installing a' in out
assert ' in progress by another process' in out
@@ -879,7 +909,8 @@ def test_install_failed(install_mockery, monkeypatch, capsys):
# Make sure the package is identified as failed
monkeypatch.setattr(spack.database.Database, 'prefix_failed', _true)
- installer.install()
+ with pytest.raises(inst.InstallError, match='request failed'):
+ installer.install()
out = str(capsys.readouterr())
assert installer.build_requests[0].pkg_id in out
@@ -894,7 +925,8 @@ def test_install_failed_not_fast(install_mockery, monkeypatch, capsys):
# Make sure the package is identified as failed
monkeypatch.setattr(spack.database.Database, 'prefix_failed', _true)
- installer.install()
+ with pytest.raises(inst.InstallError, match='request failed'):
+ installer.install()
out = str(capsys.readouterr())
assert 'failed to install' in out
@@ -1046,7 +1078,9 @@ def test_install_lock_failures(install_mockery, monkeypatch, capfd):
# Ensure don't continually requeue the task
monkeypatch.setattr(inst.PackageInstaller, '_requeue_task', _requeued)
- installer.install()
+ with pytest.raises(inst.InstallError, match='request failed'):
+ installer.install()
+
out = capfd.readouterr()[0]
expected = ['write locked', 'read locked', 'requeued']
for exp, ln in zip(expected, out.split('\n')):
@@ -1077,7 +1111,9 @@ def test_install_lock_installed_requeue(install_mockery, monkeypatch, capfd):
# Ensure don't continually requeue the task
monkeypatch.setattr(inst.PackageInstaller, '_requeue_task', _requeued)
- installer.install()
+ with pytest.raises(inst.InstallError, match='request failed'):
+ installer.install()
+
assert b_pkg_id not in installer.installed
out = capfd.readouterr()[0]
@@ -1113,7 +1149,9 @@ def test_install_read_locked_requeue(install_mockery, monkeypatch, capfd):
const_arg = installer_args(['b'], {})
installer = create_installer(const_arg)
- installer.install()
+ with pytest.raises(inst.InstallError, match='request failed'):
+ installer.install()
+
assert 'b' not in installer.installed
out = capfd.readouterr()[0]
diff --git a/lib/spack/spack/test/link_paths.py b/lib/spack/spack/test/link_paths.py
index 79a69942aa..4485bf3ae8 100644
--- a/lib/spack/spack/test/link_paths.py
+++ b/lib/spack/spack/test/link_paths.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/llnl/util/__init__.py b/lib/spack/spack/test/llnl/util/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/test/llnl/util/__init__.py
+++ b/lib/spack/spack/test/llnl/util/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/llnl/util/argparsewriter.py b/lib/spack/spack/test/llnl/util/argparsewriter.py
index 127149bbaa..708110558e 100644
--- a/lib/spack/spack/test/llnl/util/argparsewriter.py
+++ b/lib/spack/spack/test/llnl/util/argparsewriter.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/llnl/util/file_list.py b/lib/spack/spack/test/llnl/util/file_list.py
index e4036fe492..4efec18067 100644
--- a/lib/spack/spack/test/llnl/util/file_list.py
+++ b/lib/spack/spack/test/llnl/util/file_list.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/llnl/util/filesystem.py b/lib/spack/spack/test/llnl/util/filesystem.py
index 501c07a1f6..5733be6b59 100644
--- a/lib/spack/spack/test/llnl/util/filesystem.py
+++ b/lib/spack/spack/test/llnl/util/filesystem.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -588,3 +588,24 @@ def test_content_of_files_with_same_name(tmpdir):
# and have not been mixed
assert file1.read().strip() == 'file1'
assert file2.read().strip() == 'file2'
+
+
+def test_keep_modification_time(tmpdir):
+ file1 = tmpdir.ensure('file1')
+ file2 = tmpdir.ensure('file2')
+
+ # Shift the modification time of the file 10 seconds back:
+ mtime1 = file1.mtime() - 10
+ file1.setmtime(mtime1)
+
+ with fs.keep_modification_time(file1.strpath,
+ file2.strpath,
+ 'non-existing-file'):
+ file1.write('file1')
+ file2.remove()
+
+ # Assert that the modifications took place the modification time has not
+ # changed;
+ assert file1.read().strip() == 'file1'
+ assert not file2.exists()
+ assert int(mtime1) == int(file1.mtime())
diff --git a/lib/spack/spack/test/llnl/util/lang.py b/lib/spack/spack/test/llnl/util/lang.py
index 83342dd6ed..99829f49d9 100644
--- a/lib/spack/spack/test/llnl/util/lang.py
+++ b/lib/spack/spack/test/llnl/util/lang.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,6 +6,7 @@
import pytest
import os.path
+import sys
from datetime import datetime, timedelta
import llnl.util.lang
@@ -27,7 +28,12 @@ value = 1
path = os.path.join('/usr', 'bin')
"""
m.write(content)
- return str(m)
+
+ yield str(m)
+
+ # Don't leave garbage in the module system
+ if 'foo' in sys.modules:
+ del sys.modules['foo']
def test_pretty_date():
@@ -127,10 +133,22 @@ def test_match_predicate():
def test_load_modules_from_file(module_path):
+ # Check prerequisites
+ assert 'foo' not in sys.modules
+
+ # Check that the module is loaded correctly from file
foo = llnl.util.lang.load_module_from_file('foo', module_path)
+ assert 'foo' in sys.modules
assert foo.value == 1
assert foo.path == os.path.join('/usr', 'bin')
+ # Check that the module is not reloaded a second time on subsequent calls
+ foo.value = 2
+ foo = llnl.util.lang.load_module_from_file('foo', module_path)
+ assert 'foo' in sys.modules
+ assert foo.value == 2
+ assert foo.path == os.path.join('/usr', 'bin')
+
def test_uniq():
assert [1, 2, 3] == llnl.util.lang.uniq([1, 2, 3])
diff --git a/lib/spack/spack/test/llnl/util/link_tree.py b/lib/spack/spack/test/llnl/util/link_tree.py
index bebb3da805..af7012692f 100644
--- a/lib/spack/spack/test/llnl/util/link_tree.py
+++ b/lib/spack/spack/test/llnl/util/link_tree.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/llnl/util/lock.py b/lib/spack/spack/test/llnl/util/lock.py
index d4b61929c2..928bded6ca 100644
--- a/lib/spack/spack/test/llnl/util/lock.py
+++ b/lib/spack/spack/test/llnl/util/lock.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -661,10 +661,6 @@ def test_upgrade_read_to_write(private_lock_path):
assert lock._file is None
-@pytest.mark.skipif(
- os.environ.get('SPACK_TEST_SOLVER') == 'clingo',
- reason='Test for Clingo are run in a container with root permissions'
-)
def test_upgrade_read_to_write_fails_with_readonly_file(private_lock_path):
"""Test that read-only file can be read-locked but not write-locked."""
# ensure lock file exists the first time
@@ -1192,7 +1188,7 @@ def test_nested_reads(lock_path):
class LockDebugOutput(object):
def __init__(self, lock_path):
self.lock_path = lock_path
- self.host = socket.getfqdn()
+ self.host = socket.gethostname()
def p1(self, barrier, q1, q2):
# exchange pids
diff --git a/lib/spack/spack/test/llnl/util/tty/__init__.py b/lib/spack/spack/test/llnl/util/tty/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/test/llnl/util/tty/__init__.py
+++ b/lib/spack/spack/test/llnl/util/tty/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/llnl/util/tty/log.py b/lib/spack/spack/test/llnl/util/tty/log.py
index 811b6c6642..080a6e1339 100644
--- a/lib/spack/spack/test/llnl/util/tty/log.py
+++ b/lib/spack/spack/test/llnl/util/tty/log.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,8 @@ import signal
import sys
import time
-try:
- import termios
-except ImportError:
- termios = None
+from typing import Optional # novm
+from types import ModuleType # novm
import pytest
@@ -25,6 +23,13 @@ from llnl.util.tty.pty import PseudoShell
from spack.util.executable import which
+termios = None # type: Optional[ModuleType]
+try:
+ import termios as term_mod
+ termios = term_mod
+except ImportError:
+ pass
+
@contextlib.contextmanager
def nullcontext():
@@ -432,20 +437,14 @@ def test_foreground_background_output(
with open(log_path) as log:
log = log.read().strip().split("\n")
- # Controller and minion process coordinate with locks such that the minion
- # writes "off" when echo is off, and "on" when echo is on. The
- # output should contain mostly "on" lines, but may contain an "off"
- # or two. This is because the controller toggles echo by sending "v" on
- # stdin to the minion, but this is not synchronized with our locks.
- # It's good enough for a test, though. We allow at most 4 "off"'s in
- # the output to account for the race.
- #
- # Originally we only allowed 2, but GitHub's macOS runners seem to be
- # very slow, and frequently we get 3 "off"'s. Increased limit to 4 to
- # account for this. Real errors should still be caught with this limit.
+ # Controller and minion process coordinate with locks such that the
+ # minion writes "off" when echo is off, and "on" when echo is on. The
+ # output should contain mostly "on" lines, but may contain "off"
+ # lines if the controller is slow. The important thing to observe
+ # here is that we started seeing 'on' in the end.
assert (
['forced output', 'on'] == uniq(output) or
- output.count("off") <= 4 # if controller_fd is a bit slow
+ ['forced output', 'off', 'on'] == uniq(output)
)
# log should be off for a while, then on, then off
diff --git a/lib/spack/spack/test/llnl/util/tty/tty.py b/lib/spack/spack/test/llnl/util/tty/tty.py
index b8366a9738..bc68543ec3 100644
--- a/lib/spack/spack/test/llnl/util/tty/tty.py
+++ b/lib/spack/spack/test/llnl/util/tty/tty.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/main.py b/lib/spack/spack/test/main.py
index c35a6e195b..068dce0bef 100644
--- a/lib/spack/spack/test/main.py
+++ b/lib/spack/spack/test/main.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/make_executable.py b/lib/spack/spack/test/make_executable.py
index f554fd038c..510487002a 100644
--- a/lib/spack/spack/test/make_executable.py
+++ b/lib/spack/spack/test/make_executable.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/mirror.py b/lib/spack/spack/test/mirror.py
index 8d3ec2d07b..2eef86e4f4 100644
--- a/lib/spack/spack/test/mirror.py
+++ b/lib/spack/spack/test/mirror.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/module_parsing.py b/lib/spack/spack/test/module_parsing.py
index 8dc06b058b..a1d0142b92 100644
--- a/lib/spack/spack/test/module_parsing.py
+++ b/lib/spack/spack/test/module_parsing.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -123,3 +123,9 @@ def test_get_argument_from_module_line():
for bl in bad_lines:
with pytest.raises(ValueError):
get_path_args_from_module_line(bl)
+
+
+def test_lmod_quote_parsing():
+ lines = ['setenv("SOME_PARTICULAR_DIR","-L/opt/cray/pe/mpich/8.1.4/gtl/lib")']
+ result = get_path_from_module_contents(lines, 'some-module')
+ assert '/opt/cray/pe/mpich/8.1.4/gtl' == result
diff --git a/lib/spack/spack/test/modules/__init__.py b/lib/spack/spack/test/modules/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/test/modules/__init__.py
+++ b/lib/spack/spack/test/modules/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/modules/common.py b/lib/spack/spack/test/modules/common.py
index f2cb60e1db..0918cf2dfd 100644
--- a/lib/spack/spack/test/modules/common.py
+++ b/lib/spack/spack/test/modules/common.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/modules/conftest.py b/lib/spack/spack/test/modules/conftest.py
index 4ab129a5dd..dbfac6b0bc 100644
--- a/lib/spack/spack/test/modules/conftest.py
+++ b/lib/spack/spack/test/modules/conftest.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/modules/lmod.py b/lib/spack/spack/test/modules/lmod.py
index 474277f239..7239c487aa 100644
--- a/lib/spack/spack/test/modules/lmod.py
+++ b/lib/spack/spack/test/modules/lmod.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/modules/tcl.py b/lib/spack/spack/test/modules/tcl.py
index 70e3fc6c56..e5f2797e39 100644
--- a/lib/spack/spack/test/modules/tcl.py
+++ b/lib/spack/spack/test/modules/tcl.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/multimethod.py b/lib/spack/spack/test/multimethod.py
index 0e5bd5dad5..beb92bbb6d 100644
--- a/lib/spack/spack/test/multimethod.py
+++ b/lib/spack/spack/test/multimethod.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/namespace_trie.py b/lib/spack/spack/test/namespace_trie.py
index 2bf83c59f2..afe3af7386 100644
--- a/lib/spack/spack/test/namespace_trie.py
+++ b/lib/spack/spack/test/namespace_trie.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/operating_system.py b/lib/spack/spack/test/operating_system.py
index 97def3feda..c2fa52fa3e 100644
--- a/lib/spack/spack/test/operating_system.py
+++ b/lib/spack/spack/test/operating_system.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/optional_deps.py b/lib/spack/spack/test/optional_deps.py
index d9268e7e14..fe73a0ae8a 100644
--- a/lib/spack/spack/test/optional_deps.py
+++ b/lib/spack/spack/test/optional_deps.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/package_class.py b/lib/spack/spack/test/package_class.py
index 33e5eb1c0a..686c956186 100644
--- a/lib/spack/spack/test/package_class.py
+++ b/lib/spack/spack/test/package_class.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/package_hash.py b/lib/spack/spack/test/package_hash.py
index a8a160d96e..bcb1f6b804 100644
--- a/lib/spack/spack/test/package_hash.py
+++ b/lib/spack/spack/test/package_hash.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/package_sanity.py b/lib/spack/spack/test/package_sanity.py
index ded4d1c485..308706a5a7 100644
--- a/lib/spack/spack/test/package_sanity.py
+++ b/lib/spack/spack/test/package_sanity.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,7 @@ import spack.util.executable as executable
import spack.variant
# A few functions from this module are used to
# do sanity checks only on packagess modified by a PR
-import spack.cmd.flake8 as flake8
+import spack.cmd.style as style
import spack.util.crypto as crypto
import pickle
@@ -207,7 +207,7 @@ def test_prs_update_old_api():
deprecated calls to any method.
"""
changed_package_files = [
- x for x in flake8.changed_files() if flake8.is_package(x)
+ x for x in style.changed_files() if style.is_package(x)
]
failing = []
for file in changed_package_files:
diff --git a/lib/spack/spack/test/packages.py b/lib/spack/spack/test/packages.py
index ffaad396c1..c821d5b5c7 100644
--- a/lib/spack/spack/test/packages.py
+++ b/lib/spack/spack/test/packages.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/packaging.py b/lib/spack/spack/test/packaging.py
index 31ad3f1a7a..57446b6e2d 100644
--- a/lib/spack/spack/test/packaging.py
+++ b/lib/spack/spack/test/packaging.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/patch.py b/lib/spack/spack/test/patch.py
index 2dc781538a..57a5669c57 100644
--- a/lib/spack/spack/test/patch.py
+++ b/lib/spack/spack/test/patch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -124,9 +124,9 @@ def test_patch_order(mock_packages, config):
spec = Spec('dep-diamond-patch-top')
spec.concretize()
- mid2_sha256 = 'mid21234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234' # noqa: E501
- mid1_sha256 = '0b62284961dab49887e31319843431ee5b037382ac02c4fe436955abef11f094' # noqa: E501
- top_sha256 = 'f7de2947c64cb6435e15fb2bef359d1ed5f6356b2aebb7b20535e3772904e6db' # noqa: E501
+ mid2_sha256 = 'mid21234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234'
+ mid1_sha256 = '0b62284961dab49887e31319843431ee5b037382ac02c4fe436955abef11f094'
+ top_sha256 = 'f7de2947c64cb6435e15fb2bef359d1ed5f6356b2aebb7b20535e3772904e6db'
dep = spec['patch']
patch_order = dep.variants['patches']._patches_in_order_of_appearance
@@ -328,9 +328,25 @@ def test_write_and_read_sub_dags_with_patched_deps(mock_packages, config):
spec.package.package_dir)
-def test_file_patch_no_file():
+def test_patch_no_file():
+ # Give it the attributes we need to construct the error message
+ FakePackage = collections.namedtuple(
+ 'FakePackage', ['name', 'namespace', 'fullname'])
+ fp = FakePackage('fake-package', 'test', 'fake-package')
+ with pytest.raises(ValueError, match='FilePatch:'):
+ spack.patch.FilePatch(fp, 'nonexistent_file', 0, '')
+
+ patch = spack.patch.Patch(fp, 'nonexistent_file', 0, '')
+ patch.path = 'test'
+ with pytest.raises(spack.patch.NoSuchPatchError, match='No such patch:'):
+ patch.apply('')
+
+
+@pytest.mark.parametrize('level', [-1, 0.0, '1'])
+def test_invalid_level(level):
# Give it the attributes we need to construct the error message
FakePackage = collections.namedtuple('FakePackage', ['name', 'namespace'])
fp = FakePackage('fake-package', 'test')
- with pytest.raises(ValueError, match=r'FilePatch:.*'):
- spack.patch.FilePatch(fp, 'nonexistent_file', 0, '')
+ with pytest.raises(ValueError,
+ match='Patch level needs to be a non-negative integer.'):
+ spack.patch.Patch(fp, 'nonexistent_file', level, '')
diff --git a/lib/spack/spack/test/pattern.py b/lib/spack/spack/test/pattern.py
index 582ece3d51..94f4e6d5f0 100644
--- a/lib/spack/spack/test/pattern.py
+++ b/lib/spack/spack/test/pattern.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/permissions.py b/lib/spack/spack/test/permissions.py
index 26974c8096..320ff2fdba 100644
--- a/lib/spack/spack/test/permissions.py
+++ b/lib/spack/spack/test/permissions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/provider_index.py b/lib/spack/spack/test/provider_index.py
index 0855ac50ec..1f9f0a74e0 100644
--- a/lib/spack/spack/test/provider_index.py
+++ b/lib/spack/spack/test/provider_index.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/relocate.py b/lib/spack/spack/test/relocate.py
index afeb2162db..fb1ed4eb60 100644
--- a/lib/spack/spack/test/relocate.py
+++ b/lib/spack/spack/test/relocate.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/repo.py b/lib/spack/spack/test/repo.py
index d10349e6ec..df3015500d 100644
--- a/lib/spack/spack/test/repo.py
+++ b/lib/spack/spack/test/repo.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -67,3 +67,15 @@ def test_repo_invisibles(mutable_mock_repo, extra_repo):
with open(os.path.join(extra_repo.root, 'packages', '.invisible'), 'w'):
pass
extra_repo.all_package_names()
+
+
+@pytest.mark.parametrize('attr_name,exists', [
+ ('cmake', True),
+ ('__sphinx_mock__', False)
+])
+@pytest.mark.regression('20661')
+def test_namespace_hasattr(attr_name, exists, mutable_mock_repo):
+ # Check that we don't fail on 'hasattr' checks because
+ # of a custom __getattr__ implementation
+ nms = spack.repo.SpackNamespace('spack.pkg.builtin.mock')
+ assert hasattr(nms, attr_name) == exists
diff --git a/lib/spack/spack/test/s3_fetch.py b/lib/spack/spack/test/s3_fetch.py
index 70efad19ce..e339a1c173 100644
--- a/lib/spack/spack/test/s3_fetch.py
+++ b/lib/spack/spack/test/s3_fetch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/sbang.py b/lib/spack/spack/test/sbang.py
index 9307d2bc4b..422ec3cdc0 100644
--- a/lib/spack/spack/test/sbang.py
+++ b/lib/spack/spack/test/sbang.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -44,7 +44,7 @@ sbang_line = '#!/bin/sh %s/bin/sbang\n' % spack.store.store.unpadded_root
last_line = "last!\n"
-@pytest.fixture
+@pytest.fixture # type: ignore[no-redef]
def sbang_line():
yield '#!/bin/sh %s/bin/sbang\n' % spack.store.layout.root
diff --git a/lib/spack/spack/test/schema.py b/lib/spack/spack/test/schema.py
index 14c9014d61..1b9694a8e8 100644
--- a/lib/spack/spack/test/schema.py
+++ b/lib/spack/spack/test/schema.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/spack_yaml.py b/lib/spack/spack/test/spack_yaml.py
index fb4abbf1d8..8e4fe3c9f4 100644
--- a/lib/spack/spack/test/spack_yaml.py
+++ b/lib/spack/spack/test/spack_yaml.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/spec_dag.py b/lib/spack/spack/test/spec_dag.py
index 854495988b..ea16f655db 100644
--- a/lib/spack/spack/test/spec_dag.py
+++ b/lib/spack/spack/test/spec_dag.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ import spack.package
from spack.spec import Spec
from spack.dependency import all_deptypes, Dependency, canonical_deptype
from spack.util.mock_package import MockPackageMultiRepo
+import spack.util.hash as hashutil
def check_links(spec_to_check):
@@ -705,17 +706,17 @@ class TestSpecDag(object):
for c in test_hash])
for bits in (1, 2, 3, 4, 7, 8, 9, 16, 64, 117, 128, 160):
- actual_int = spack.spec.base32_prefix_bits(test_hash, bits)
+ actual_int = hashutil.base32_prefix_bits(test_hash, bits)
fmt = "#0%sb" % (bits + 2)
actual = format(actual_int, fmt).replace('0b', '')
assert expected[:bits] == actual
with pytest.raises(ValueError):
- spack.spec.base32_prefix_bits(test_hash, 161)
+ hashutil.base32_prefix_bits(test_hash, 161)
with pytest.raises(ValueError):
- spack.spec.base32_prefix_bits(test_hash, 256)
+ hashutil.base32_prefix_bits(test_hash, 256)
def test_traversal_directions(self):
"""Make sure child and parent traversals of specs work."""
diff --git a/lib/spack/spack/test/spec_list.py b/lib/spack/spack/test/spec_list.py
index 27567b4080..48796d0ad9 100644
--- a/lib/spack/spack/test/spec_list.py
+++ b/lib/spack/spack/test/spec_list.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/spec_semantics.py b/lib/spack/spack/test/spec_semantics.py
index b2161d4a0e..16a4cf77ce 100644
--- a/lib/spack/spack/test/spec_semantics.py
+++ b/lib/spack/spack/test/spec_semantics.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -776,7 +776,7 @@ class TestSpecSematics(object):
sigil_package_segments = [("{@VERSIONS}", '@' + str(spec.version)),
("{%compiler}", '%' + str(spec.compiler)),
("{arch=architecture}",
- ' arch=' + str(spec.architecture))]
+ 'arch=' + str(spec.architecture))]
compiler_segments = [("{compiler.name}", "name"),
("{compiler.version}", "versions")]
@@ -798,7 +798,7 @@ class TestSpecSematics(object):
for named_str, prop in package_segments:
expected = getattr(spec, prop, "")
actual = spec.format(named_str)
- assert str(expected) == actual
+ assert str(expected).strip() == actual
for named_str, expected in sigil_package_segments:
actual = spec.format(named_str)
@@ -985,6 +985,74 @@ class TestSpecSematics(object):
assert 'avx512' not in spec.target
assert spec.target < 'broadwell'
+ @pytest.mark.parametrize('transitive', [True, False])
+ def test_splice(self, transitive):
+ # Tests the new splice function in Spec using a somewhat simple case
+ # with a variant with a conditional dependency.
+ # TODO: Test being able to splice in different provider for a virtual.
+ # Example: mvapich for mpich.
+ spec = Spec('splice-t')
+ dep = Spec('splice-h+foo')
+ spec.concretize()
+ dep.concretize()
+ # Sanity checking that these are not the same thing.
+ assert dep.dag_hash() != spec['splice-h'].dag_hash()
+ assert dep.build_hash() != spec['splice-h'].build_hash()
+ # Do the splice.
+ out = spec.splice(dep, transitive)
+ # Returned spec should still be concrete.
+ assert out.concrete
+ # Traverse the spec and assert that all dependencies are accounted for.
+ for node in spec.traverse():
+ assert node.name in out
+ # If the splice worked, then the full hash of the spliced dep should
+ # now match the full hash of the build spec of the dependency from the
+ # returned spec.
+ out_h_build = out['splice-h'].build_spec
+ assert out_h_build.full_hash() == dep.full_hash()
+ # Transitivity should determine whether the transitive dependency was
+ # changed.
+ expected_z = dep['splice-z'] if transitive else spec['splice-z']
+ assert out['splice-z'].full_hash() == expected_z.full_hash()
+ # Sanity check build spec of out should be the original spec.
+ assert (out['splice-t'].build_spec.full_hash() ==
+ spec['splice-t'].full_hash())
+ # Finally, the spec should know it's been spliced:
+ assert out.spliced
+
+ @pytest.mark.parametrize('transitive', [True, False])
+ def test_splice_input_unchanged(self, transitive):
+ spec = Spec('splice-t').concretized()
+ dep = Spec('splice-h+foo').concretized()
+ orig_spec_hash = spec.full_hash()
+ orig_dep_hash = dep.full_hash()
+ spec.splice(dep, transitive)
+ # Post-splice, dag hash should still be different; no changes should be
+ # made to these specs.
+ assert spec.full_hash() == orig_spec_hash
+ assert dep.full_hash() == orig_dep_hash
+
+ @pytest.mark.parametrize('transitive', [True, False])
+ def test_splice_subsequent(self, transitive):
+ spec = Spec('splice-t')
+ dep = Spec('splice-h+foo')
+ spec.concretize()
+ dep.concretize()
+ out = spec.splice(dep, transitive)
+ # Now we attempt a second splice.
+ dep = Spec('splice-z+bar')
+ dep.concretize()
+ # Transitivity shouldn't matter since Splice Z has no dependencies.
+ out2 = out.splice(dep, transitive)
+ assert out2.concrete
+ assert out2['splice-z'].build_hash() != spec['splice-z'].build_hash()
+ assert out2['splice-z'].build_hash() != out['splice-z'].build_hash()
+ assert out2['splice-z'].full_hash() != spec['splice-z'].full_hash()
+ assert out2['splice-z'].full_hash() != out['splice-z'].full_hash()
+ assert (out2['splice-t'].build_spec.full_hash() ==
+ spec['splice-t'].full_hash())
+ assert out2.spliced
+
@pytest.mark.parametrize('spec,constraint,expected_result', [
('libelf target=haswell', 'target=broadwell', False),
('libelf target=haswell', 'target=haswell', True),
diff --git a/lib/spack/spack/test/spec_syntax.py b/lib/spack/spack/test/spec_syntax.py
index b59828206f..fd5108c809 100644
--- a/lib/spack/spack/test/spec_syntax.py
+++ b/lib/spack/spack/test/spec_syntax.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -352,10 +352,10 @@ class TestSpecSyntax(object):
def test_ambiguous_hash(self, mutable_database):
x1 = Spec('a')
x1.concretize()
- x1._hash = 'xy'
+ x1._hash = 'xyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy'
x2 = Spec('a')
x2.concretize()
- x2._hash = 'xx'
+ x2._hash = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
mutable_database.add(x1, spack.store.layout)
mutable_database.add(x2, spack.store.layout)
@@ -557,10 +557,6 @@ class TestSpecSyntax(object):
with specfile.open('w') as f:
f.write(s['libelf'].to_yaml(hash=ht.build_hash))
- print("")
- print("")
- print("PARSING HERE")
-
# Make sure we can use yaml path as dependency, e.g.:
# "spack spec libdwarf ^ /path/to/libelf.yaml"
specs = sp.parse('libdwarf ^ {0}'.format(specfile.strpath))
diff --git a/lib/spack/spack/test/spec_yaml.py b/lib/spack/spack/test/spec_yaml.py
index b32fe09e03..74ebf0a541 100644
--- a/lib/spack/spack/test/spec_yaml.py
+++ b/lib/spack/spack/test/spec_yaml.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -130,8 +130,13 @@ def test_to_record_dict(mock_packages, config):
assert record[key] == value
+@pytest.mark.parametrize("hash_type", [
+ ht.dag_hash,
+ ht.build_hash,
+ ht.full_hash
+])
def test_ordered_read_not_required_for_consistent_dag_hash(
- config, mock_packages
+ hash_type, config, mock_packages
):
"""Make sure ordered serialization isn't required to preserve hashes.
@@ -148,15 +153,15 @@ def test_ordered_read_not_required_for_consistent_dag_hash(
#
# Dict & corresponding YAML & JSON from the original spec.
#
- spec_dict = spec.to_dict()
- spec_yaml = spec.to_yaml()
- spec_json = spec.to_json()
+ spec_dict = spec.to_dict(hash=hash_type)
+ spec_yaml = spec.to_yaml(hash=hash_type)
+ spec_json = spec.to_json(hash=hash_type)
#
# Make a spec with reversed OrderedDicts for every
# OrderedDict in the original.
#
- reversed_spec_dict = reverse_all_dicts(spec.to_dict())
+ reversed_spec_dict = reverse_all_dicts(spec.to_dict(hash=hash_type))
#
# Dump to YAML and JSON
@@ -190,11 +195,13 @@ def test_ordered_read_not_required_for_consistent_dag_hash(
reversed_json_string
)
- # TODO: remove this when build deps are in provenance.
- spec = spec.copy(deps=('link', 'run'))
+ # Strip spec if we stripped the yaml
+ spec = spec.copy(deps=hash_type.deptype)
+
# specs are equal to the original
assert spec == round_trip_yaml_spec
assert spec == round_trip_json_spec
+
assert spec == round_trip_reversed_yaml_spec
assert spec == round_trip_reversed_json_spec
assert round_trip_yaml_spec == round_trip_reversed_yaml_spec
@@ -204,16 +211,18 @@ def test_ordered_read_not_required_for_consistent_dag_hash(
assert spec.dag_hash() == round_trip_json_spec.dag_hash()
assert spec.dag_hash() == round_trip_reversed_yaml_spec.dag_hash()
assert spec.dag_hash() == round_trip_reversed_json_spec.dag_hash()
- # full_hashes are equal
- spec.concretize()
- round_trip_yaml_spec.concretize()
- round_trip_json_spec.concretize()
- round_trip_reversed_yaml_spec.concretize()
- round_trip_reversed_json_spec.concretize()
- assert spec.full_hash() == round_trip_yaml_spec.full_hash()
- assert spec.full_hash() == round_trip_json_spec.full_hash()
- assert spec.full_hash() == round_trip_reversed_yaml_spec.full_hash()
- assert spec.full_hash() == round_trip_reversed_json_spec.full_hash()
+
+ # full_hashes are equal if we round-tripped by build_hash or full_hash
+ if hash_type in (ht.build_hash, ht.full_hash):
+ spec.concretize()
+ round_trip_yaml_spec.concretize()
+ round_trip_json_spec.concretize()
+ round_trip_reversed_yaml_spec.concretize()
+ round_trip_reversed_json_spec.concretize()
+ assert spec.full_hash() == round_trip_yaml_spec.full_hash()
+ assert spec.full_hash() == round_trip_json_spec.full_hash()
+ assert spec.full_hash() == round_trip_reversed_yaml_spec.full_hash()
+ assert spec.full_hash() == round_trip_reversed_json_spec.full_hash()
@pytest.mark.parametrize("module", [
diff --git a/lib/spack/spack/test/stage.py b/lib/spack/spack/test/stage.py
index 9dea091730..3e3ceeaaa0 100644
--- a/lib/spack/spack/test/stage.py
+++ b/lib/spack/spack/test/stage.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/svn_fetch.py b/lib/spack/spack/test/svn_fetch.py
index f435b07db2..87e9779ca9 100644
--- a/lib/spack/spack/test/svn_fetch.py
+++ b/lib/spack/spack/test/svn_fetch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/tengine.py b/lib/spack/spack/test/tengine.py
index 01f2d65780..00216a7fdc 100644
--- a/lib/spack/spack/test/tengine.py
+++ b/lib/spack/spack/test/tengine.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/test_activations.py b/lib/spack/spack/test/test_activations.py
index e8ce6c55ed..a05032d5a2 100644
--- a/lib/spack/spack/test/test_activations.py
+++ b/lib/spack/spack/test/test_activations.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/test_suite.py b/lib/spack/spack/test/test_suite.py
index 1ec5106182..50c5989a3d 100644
--- a/lib/spack/spack/test/test_suite.py
+++ b/lib/spack/spack/test/test_suite.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/url_fetch.py b/lib/spack/spack/test/url_fetch.py
index 28b6c87385..9804e4eb72 100644
--- a/lib/spack/spack/test/url_fetch.py
+++ b/lib/spack/spack/test/url_fetch.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/url_parse.py b/lib/spack/spack/test/url_parse.py
index 846e24d242..332c988fca 100644
--- a/lib/spack/spack/test/url_parse.py
+++ b/lib/spack/spack/test/url_parse.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/url_substitution.py b/lib/spack/spack/test/url_substitution.py
index 08a3b99a4a..8fbfd48714 100644
--- a/lib/spack/spack/test/url_substitution.py
+++ b/lib/spack/spack/test/url_substitution.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/__init__.py b/lib/spack/spack/test/util/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/test/util/__init__.py
+++ b/lib/spack/spack/test/util/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/editor.py b/lib/spack/spack/test/util/editor.py
index e1495a70cc..aa85323212 100644
--- a/lib/spack/spack/test/util/editor.py
+++ b/lib/spack/spack/test/util/editor.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/environment.py b/lib/spack/spack/test/util/environment.py
index a555c35c9c..b7b6a0edea 100644
--- a/lib/spack/spack/test/util/environment.py
+++ b/lib/spack/spack/test/util/environment.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/executable.py b/lib/spack/spack/test/util/executable.py
index ae2859ea4b..9bfa9a408a 100644
--- a/lib/spack/spack/test/util/executable.py
+++ b/lib/spack/spack/test/util/executable.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/file_cache.py b/lib/spack/spack/test/util/file_cache.py
index 0fec1a5dc9..c033ca49d9 100644
--- a/lib/spack/spack/test/util/file_cache.py
+++ b/lib/spack/spack/test/util/file_cache.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/log_parser.py b/lib/spack/spack/test/util/log_parser.py
index 0f829082b6..911226f381 100644
--- a/lib/spack/spack/test/util/log_parser.py
+++ b/lib/spack/spack/test/util/log_parser.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/mock_package.py b/lib/spack/spack/test/util/mock_package.py
index cca55bb534..2609d849db 100644
--- a/lib/spack/spack/test/util/mock_package.py
+++ b/lib/spack/spack/test/util/mock_package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/prefix.py b/lib/spack/spack/test/util/prefix.py
index cee3ad028b..d7724f616e 100644
--- a/lib/spack/spack/test/util/prefix.py
+++ b/lib/spack/spack/test/util/prefix.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/spack_lock_wrapper.py b/lib/spack/spack/test/util/spack_lock_wrapper.py
index d7819c84cb..73a2e41eb0 100644
--- a/lib/spack/spack/test/util/spack_lock_wrapper.py
+++ b/lib/spack/spack/test/util/spack_lock_wrapper.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/spack_yaml.py b/lib/spack/spack/test/util/spack_yaml.py
index 23e02d7be6..34a923093f 100644
--- a/lib/spack/spack/test/util/spack_yaml.py
+++ b/lib/spack/spack/test/util/spack_yaml.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -65,3 +65,31 @@ def test_config_blame_with_override(config):
check_blame('verify_ssl', config_file, 13)
check_blame('checksum', config_file, 14)
check_blame('dirty', config_file, 15)
+
+
+def test_config_blame_defaults():
+ """check blame for an element from an override scope"""
+ files = {}
+
+ def get_file_lines(filename):
+ if filename not in files:
+ with open(filename, "r") as f:
+ files[filename] = [""] + f.read().split("\n")
+ return files[filename]
+
+ config_blame = config_cmd("blame", "config")
+ for line in config_blame.split("\n"):
+ # currently checking only simple lines with dict keys
+ match = re.match(r"^([^:]+):(\d+)\s+([^:]+):\s+(.*)", line)
+
+ # check that matches are on the lines they say they are
+ if match:
+ filename, line, key, val = match.groups()
+ line = int(line)
+
+ if val.lower() in ("true", "false"):
+ val = val.lower()
+
+ lines = get_file_lines(filename)
+ assert key in lines[line]
+ assert val in lines[line]
diff --git a/lib/spack/spack/test/util/util_gpg.py b/lib/spack/spack/test/util/util_gpg.py
index 83fad508f9..987dcf7f0e 100644
--- a/lib/spack/spack/test/util/util_gpg.py
+++ b/lib/spack/spack/test/util/util_gpg.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -65,6 +65,7 @@ fpr:::::::::ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ:"""
@pytest.mark.skipif(not spack.util.gpg.GpgConstants.user_run_dir,
reason='This test requires /var/run/user/$(id -u)')
+@pytest.mark.requires_executables('gpg2')
def test_really_long_gnupg_home_dir(tmpdir):
N = 960
diff --git a/lib/spack/spack/test/util/util_string.py b/lib/spack/spack/test/util/util_string.py
index bcaa7d6211..7c68895be2 100644
--- a/lib/spack/spack/test/util/util_string.py
+++ b/lib/spack/spack/test/util/util_string.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/util/util_url.py b/lib/spack/spack/test/util/util_url.py
index 5d0d9fa4eb..07a055c572 100644
--- a/lib/spack/spack/test/util/util_url.py
+++ b/lib/spack/spack/test/util/util_url.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/variant.py b/lib/spack/spack/test/variant.py
index 10e8ea7e7f..501d897321 100644
--- a/lib/spack/spack/test/variant.py
+++ b/lib/spack/spack/test/variant.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/verification.py b/lib/spack/spack/test/verification.py
index 009f407186..cbeba8f635 100644
--- a/lib/spack/spack/test/verification.py
+++ b/lib/spack/spack/test/verification.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/versions.py b/lib/spack/spack/test/versions.py
index 315788f7f3..a33f7e08f7 100644
--- a/lib/spack/spack/test/versions.py
+++ b/lib/spack/spack/test/versions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -373,6 +373,9 @@ def test_intersect_with_containment():
check_intersection('1.6:1.6.5', ':1.6.5', '1.6')
check_intersection('1.6:1.6.5', '1.6', ':1.6.5')
+ check_intersection('11.2', '11', '11.2')
+ check_intersection('11.2', '11.2', '11')
+
def test_union_with_containment():
check_union(':1.6', '1.6.5', ':1.6')
diff --git a/lib/spack/spack/test/views.py b/lib/spack/spack/test/views.py
index e1dcec4c5c..18fd88b093 100644
--- a/lib/spack/spack/test/views.py
+++ b/lib/spack/spack/test/views.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/test/web.py b/lib/spack/spack/test/web.py
index 472ab0dab7..d5f76632a4 100644
--- a/lib/spack/spack/test/web.py
+++ b/lib/spack/spack/test/web.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,10 +6,14 @@ import os
import ordereddict_backport
import pytest
+import spack.config
import spack.paths
import spack.util.web
+import spack.util.s3
from spack.version import ver
+import llnl.util.tty as tty
+
def _create_url(relative_url):
web_data_path = os.path.join(spack.paths.test_path, 'data', 'web')
@@ -195,3 +199,82 @@ def test_list_url(tmpdir):
'file-0.txt',
'file-1.txt',
'file-2.txt']
+
+
+class MockPages(object):
+ def search(self, *args, **kwargs):
+ return [
+ {'Key': 'keyone'},
+ {'Key': 'keytwo'},
+ {'Key': 'keythree'},
+ ]
+
+
+class MockPaginator(object):
+ def paginate(self, *args, **kwargs):
+ return MockPages()
+
+
+class MockClientError(Exception):
+ def __init__(self):
+ self.response = {'Error': {'Code': 'NoSuchKey'}}
+
+
+class MockS3Client(object):
+ def get_paginator(self, *args, **kwargs):
+ return MockPaginator()
+
+ def delete_objects(self, *args, **kwargs):
+ return {
+ 'Errors': [
+ {'Key': 'keyone', 'Message': 'Access Denied'}
+ ],
+ 'Deleted': [
+ {'Key': 'keytwo'},
+ {'Key': 'keythree'}
+ ],
+ }
+
+ def delete_object(self, *args, **kwargs):
+ pass
+
+ def get_object(self, Bucket=None, Key=None):
+ self.ClientError = MockClientError
+ if Bucket == 'my-bucket' and Key == 'subdirectory/my-file':
+ return True
+ raise self.ClientError
+
+
+def test_remove_s3_url(monkeypatch, capfd):
+ fake_s3_url = 's3://my-bucket/subdirectory/mirror'
+
+ def mock_create_s3_session(url):
+ return MockS3Client()
+
+ monkeypatch.setattr(
+ spack.util.s3, 'create_s3_session', mock_create_s3_session)
+
+ current_debug_level = tty.debug_level()
+ tty.set_debug(1)
+
+ spack.util.web.remove_url(fake_s3_url, recursive=True)
+ err = capfd.readouterr()[1]
+
+ tty.set_debug(current_debug_level)
+
+ assert('Failed to delete keyone (Access Denied)' in err)
+ assert('Deleted keythree' in err)
+ assert('Deleted keytwo' in err)
+
+
+def test_s3_url_exists(monkeypatch, capfd):
+ def mock_create_s3_session(url):
+ return MockS3Client()
+ monkeypatch.setattr(
+ spack.util.s3, 'create_s3_session', mock_create_s3_session)
+
+ fake_s3_url_exists = 's3://my-bucket/subdirectory/my-file'
+ assert(spack.util.web.url_exists(fake_s3_url_exists))
+
+ fake_s3_url_does_not_exist = 's3://my-bucket/subdirectory/my-notfound-file'
+ assert(not spack.util.web.url_exists(fake_s3_url_does_not_exist))
diff --git a/lib/spack/spack/url.py b/lib/spack/spack/url.py
index aa40524ae8..1fc0f2f522 100644
--- a/lib/spack/spack/url.py
+++ b/lib/spack/spack/url.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -56,8 +56,12 @@ def find_list_urls(url):
GitLab https://gitlab.\*/<repo>/<name>/tags
BitBucket https://bitbucket.org/<repo>/<name>/downloads/?tab=tags
CRAN https://\*.r-project.org/src/contrib/Archive/<name>
+ PyPI https://pypi.org/simple/<name>/
========= =======================================================
+ Note: this function is called by `spack versions`, `spack checksum`,
+ and `spack create`, but not by `spack fetch` or `spack install`.
+
Parameters:
url (str): The download URL for the package
@@ -91,6 +95,16 @@ def find_list_urls(url):
# e.g. https://cloud.r-project.org/src/contrib/rgl_0.98.1.tar.gz
(r'(.*\.r-project\.org/src/contrib)/([^_]+)',
lambda m: m.group(1) + '/Archive/' + m.group(2)),
+
+ # PyPI
+ # e.g. https://pypi.io/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://www.pypi.io/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://pypi.org/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://pypi.python.org/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://files.pythonhosted.org/packages/source/n/numpy/numpy-1.19.4.zip
+ # e.g. https://pypi.io/packages/py2.py3/o/opencensus-context/opencensus_context-0.1.1-py2.py3-none-any.whl
+ (r'(?:pypi|pythonhosted)[^/]+/packages/[^/]+/./([^/]+)',
+ lambda m: 'https://pypi.org/simple/' + m.group(1) + '/'),
]
list_urls = set([os.path.dirname(url)])
diff --git a/lib/spack/spack/user_environment.py b/lib/spack/spack/user_environment.py
index f08f21e0ec..7dd63dcdea 100644
--- a/lib/spack/spack/user_environment.py
+++ b/lib/spack/spack/user_environment.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -72,7 +72,7 @@ def environment_modifications_for_spec(spec, view=None):
the view."""
spec = spec.copy()
if view and not spec.external:
- spec.prefix = prefix.Prefix(view.view().get_projection_for_spec(spec))
+ spec.prefix = prefix.Prefix(view.get_projection_for_spec(spec))
# generic environment modifications determined by inspecting the spec
# prefix
diff --git a/lib/spack/spack/util/__init__.py b/lib/spack/spack/util/__init__.py
index 9f87532b85..103eae6134 100644
--- a/lib/spack/spack/util/__init__.py
+++ b/lib/spack/spack/util/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/classes.py b/lib/spack/spack/util/classes.py
new file mode 100644
index 0000000000..b6465c7581
--- /dev/null
+++ b/lib/spack/spack/util/classes.py
@@ -0,0 +1,39 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+# Need this because of spack.util.string
+from __future__ import absolute_import
+from spack.util.naming import mod_to_class
+from llnl.util.lang import memoized, list_modules
+import llnl.util.tty as tty
+
+import inspect
+
+__all__ = [
+ 'list_classes'
+]
+
+
+@memoized
+def list_classes(parent_module, mod_path):
+ """Given a parent path (e.g., spack.platforms or spack.analyzers),
+ use list_modules to derive the module names, and then mod_to_class
+ to derive class names. Import the classes and return them in a list
+ """
+ classes = []
+
+ for name in list_modules(mod_path):
+ mod_name = '%s.%s' % (parent_module, name)
+ class_name = mod_to_class(name)
+ mod = __import__(mod_name, fromlist=[class_name])
+ if not hasattr(mod, class_name):
+ tty.die('No class %s defined in %s' % (class_name, mod_name))
+ cls = getattr(mod, class_name)
+ if not inspect.isclass(cls):
+ tty.die('%s.%s is not a class' % (mod_name, class_name))
+
+ classes.append(cls)
+
+ return classes
diff --git a/lib/spack/spack/util/compression.py b/lib/spack/spack/util/compression.py
index ebbe0519d0..a1a0e1d6f3 100644
--- a/lib/spack/spack/util/compression.py
+++ b/lib/spack/spack/util/compression.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,22 @@ def allowed_archive(path):
return any(path.endswith(t) for t in ALLOWED_ARCHIVE_TYPES)
+def _gunzip(archive_file):
+ """Like gunzip, but extracts in the current working directory
+ instead of in-place.
+
+ Args:
+ archive_file (str): absolute path of the file to be decompressed
+ """
+ import gzip
+ decompressed_file = os.path.basename(archive_file.strip('.gz'))
+ working_dir = os.getcwd()
+ destination_abspath = os.path.join(working_dir, decompressed_file)
+ with gzip.open(archive_file, "rb") as f_in:
+ with open(destination_abspath, "wb") as f_out:
+ f_out.write(f_in.read())
+
+
def decompressor_for(path, extension=None):
"""Get the appropriate decompressor for a path."""
if ((extension and re.match(r'\.?zip$', extension)) or
@@ -30,8 +46,7 @@ def decompressor_for(path, extension=None):
unzip.add_default_arg('-q')
return unzip
if extension and re.match(r'gz', extension):
- gunzip = which('gunzip', required=True)
- return gunzip
+ return _gunzip
if extension and re.match(r'bz2', extension):
bunzip2 = which('bunzip2', required=True)
return bunzip2
diff --git a/lib/spack/spack/util/cpus.py b/lib/spack/spack/util/cpus.py
new file mode 100644
index 0000000000..9fa10c87a8
--- /dev/null
+++ b/lib/spack/spack/util/cpus.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import os
+import multiprocessing
+
+
+def cpus_available():
+ """
+ Returns the number of CPUs available for the current process, or the number
+ of phyiscal CPUs when that information cannot be retrieved. The number
+ of available CPUs might differ from the number of physical CPUs when
+ using spack through Slurm or container runtimes.
+ """
+ try:
+ return len(os.sched_getaffinity(0)) # novermin
+ except Exception:
+ return multiprocessing.cpu_count()
diff --git a/lib/spack/spack/util/crypto.py b/lib/spack/spack/util/crypto.py
index 7e264ff0c7..809b36ffea 100644
--- a/lib/spack/spack/util/crypto.py
+++ b/lib/spack/spack/util/crypto.py
@@ -1,14 +1,14 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import sys
import hashlib
+from typing import Dict, Callable, Any # novm
import llnl.util.tty as tty
-
#: Set of hash algorithms that Spack can use, mapped to digest size in bytes
hashes = {
'md5': 16,
@@ -30,7 +30,7 @@ _deprecated_hash_algorithms = ['md5']
#: cache of hash functions generated
-_hash_functions = {}
+_hash_functions = {} # type: Dict[str, Callable[[], Any]]
class DeprecatedHash(object):
diff --git a/lib/spack/spack/util/debug.py b/lib/spack/spack/util/debug.py
index 1ff74f24cf..290ad832f8 100644
--- a/lib/spack/spack/util/debug.py
+++ b/lib/spack/spack/util/debug.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/editor.py b/lib/spack/spack/util/editor.py
index 00a095252e..9b0081b19a 100644
--- a/lib/spack/spack/util/editor.py
+++ b/lib/spack/spack/util/editor.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/environment.py b/lib/spack/spack/util/environment.py
index 6d299fa7ef..04158c119b 100644
--- a/lib/spack/spack/util/environment.py
+++ b/lib/spack/spack/util/environment.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,9 @@ import contextlib
import inspect
import json
import os
+import platform
import re
+import socket
import sys
import os.path
@@ -139,6 +141,40 @@ def pickle_environment(path, environment=None):
open(path, 'wb'), protocol=2)
+def get_host_environment_metadata():
+ """Get the host environment, reduce to a subset that we can store in
+ the install directory, and add the spack version.
+ """
+ import spack.main
+ environ = get_host_environment()
+ return {"host_os": environ['os'],
+ "platform": environ['platform'],
+ "host_target": environ['target'],
+ "hostname": environ['hostname'],
+ "spack_version": spack.main.get_version(),
+ "kernel_version": platform.version()}
+
+
+def get_host_environment():
+ """Return a dictionary (lookup) with host information (not including the
+ os.environ).
+ """
+ import spack.spec
+ import spack.architecture as architecture
+ arch = architecture.Arch(
+ architecture.platform(), 'default_os', 'default_target')
+ arch_spec = spack.spec.Spec('arch=%s' % arch)
+ return {
+ 'target': str(arch.target),
+ 'os': str(arch.os),
+ 'platform': str(arch.platform),
+ 'arch': arch_spec,
+ 'architecture': arch_spec,
+ 'arch_str': str(arch),
+ 'hostname': socket.gethostname()
+ }
+
+
@contextlib.contextmanager
def set_env(**kwargs):
"""Temporarily sets and restores environment variables.
@@ -943,8 +979,7 @@ def environment_after_sourcing_files(*files, **kwargs):
concatenate_on_success, dump_environment,
])
output = shell(
- source_file_arguments, output=str, env=environment,
- ignore_quotes=True
+ source_file_arguments, output=str, env=environment, ignore_quotes=True
)
environment = json.loads(output)
diff --git a/lib/spack/spack/util/executable.py b/lib/spack/spack/util/executable.py
index 8baea6d238..c1e90ff25f 100644
--- a/lib/spack/spack/util/executable.py
+++ b/lib/spack/spack/util/executable.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -92,8 +92,8 @@ class Executable(object):
ignore_errors (int or list): A list of error codes to ignore.
If these codes are returned, this process will not raise
an exception even if ``fail_on_error`` is set to ``True``
- ignore_quotes (bool): If False, warn users that quotes are not
- needed as Spack does not use a shell. Defaults to False.
+ ignore_quotes (bool): If False, warn users that quotes are not needed
+ as Spack does not use a shell. Defaults to False.
input: Where to read stdin from
output: Where to send stdout
error: Where to send stderr
@@ -168,14 +168,12 @@ class Executable(object):
istream, close_istream = streamify(input, 'r')
if not ignore_quotes:
- quoted_args = [
- arg for arg in args if re.search(r'^"|^\'|"$|\'$', arg)
- ]
+ quoted_args = [arg for arg in args if re.search(r'^"|^\'|"$|\'$', arg)]
if quoted_args:
tty.warn(
"Quotes in command arguments can confuse scripts like"
" configure.",
- "These arguments may cause problems when executed:",
+ "The following arguments may cause problems when executed:",
str("\n".join([" " + arg for arg in quoted_args])),
"Quotes aren't needed because spack doesn't use a shell. "
"Consider removing them.",
diff --git a/lib/spack/spack/util/file_cache.py b/lib/spack/spack/util/file_cache.py
index 9342f9772b..670b2ed698 100644
--- a/lib/spack/spack/util/file_cache.py
+++ b/lib/spack/spack/util/file_cache.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/file_permissions.py b/lib/spack/spack/util/file_permissions.py
index b133d2569e..7ed974816e 100644
--- a/lib/spack/spack/util/file_permissions.py
+++ b/lib/spack/spack/util/file_permissions.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/gpg.py b/lib/spack/spack/util/gpg.py
index eaa199e417..aa376bc041 100644
--- a/lib/spack/spack/util/gpg.py
+++ b/lib/spack/spack/util/gpg.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -115,7 +115,7 @@ if not cached_property:
return result
-class GpgConstants(object):
+class _GpgConstants(object):
@cached_property
def target_version(self):
return spack.version.Version('2')
@@ -244,7 +244,7 @@ class GpgConstants(object):
pass
-GpgConstants = GpgConstants()
+GpgConstants = _GpgConstants()
def ensure_gpg(reevaluate=False):
@@ -382,7 +382,7 @@ def gpg(*args, **kwargs):
return get_global_gpg_instance()(*args, **kwargs)
-gpg.name = 'gpg'
+gpg.name = 'gpg' # type: ignore[attr-defined]
@functools.wraps(Gpg.create)
diff --git a/lib/spack/spack/util/hash.py b/lib/spack/spack/util/hash.py
new file mode 100644
index 0000000000..da81284ea6
--- /dev/null
+++ b/lib/spack/spack/util/hash.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import base64
+import hashlib
+import sys
+
+import spack.util.crypto
+
+
+def b32_hash(content):
+ """Return the b32 encoded sha1 hash of the input string as a string."""
+ sha = hashlib.sha1(content.encode('utf-8'))
+ b32_hash = base64.b32encode(sha.digest()).lower()
+
+ if sys.version_info[0] >= 3:
+ b32_hash = b32_hash.decode('utf-8')
+
+ return b32_hash
+
+
+def base32_prefix_bits(hash_string, bits):
+ """Return the first <bits> bits of a base32 string as an integer."""
+ if bits > len(hash_string) * 5:
+ raise ValueError("Too many bits! Requested %d bit prefix of '%s'."
+ % (bits, hash_string))
+
+ hash_bytes = base64.b32decode(hash_string, casefold=True)
+ return spack.util.crypto.prefix_bits(hash_bytes, bits)
diff --git a/lib/spack/spack/util/imp/__init__.py b/lib/spack/spack/util/imp/__init__.py
index 27e2b00f9f..975b9a49a7 100644
--- a/lib/spack/spack/util/imp/__init__.py
+++ b/lib/spack/spack/util/imp/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/imp/imp_importer.py b/lib/spack/spack/util/imp/imp_importer.py
index 810e1d01a3..a9b5cd641a 100644
--- a/lib/spack/spack/util/imp/imp_importer.py
+++ b/lib/spack/spack/util/imp/imp_importer.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/imp/importlib_importer.py b/lib/spack/spack/util/imp/importlib_importer.py
index c230f4c50a..4c8a2673e5 100644
--- a/lib/spack/spack/util/imp/importlib_importer.py
+++ b/lib/spack/spack/util/imp/importlib_importer.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/lock.py b/lib/spack/spack/util/lock.py
index b748aa056a..2f465f590a 100644
--- a/lib/spack/spack/util/lock.py
+++ b/lib/spack/spack/util/lock.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ import spack.error
import spack.paths
-class Lock(llnl.util.lock.Lock):
+class Lock(llnl.util.lock.Lock): # type: ignore[no-redef]
"""Lock that can be disabled.
This overrides the ``_lock()`` and ``_unlock()`` methods from
diff --git a/lib/spack/spack/util/log_parse.py b/lib/spack/spack/util/log_parse.py
index 4b01c18c91..7973bfd6b0 100644
--- a/lib/spack/spack/util/log_parse.py
+++ b/lib/spack/spack/util/log_parse.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -43,7 +43,7 @@ def parse_log_events(stream, context=6, jobs=None, profile=False):
#: lazily constructed CTest log parser
-parse_log_events.ctest_parser = None
+parse_log_events.ctest_parser = None # type: ignore[attr-defined]
def _wrap(text, width):
@@ -107,7 +107,7 @@ def make_log_context(log_events, width=None):
for i in range(start, event.end):
# wrap to width
lines = _wrap(event[i], wrap_width)
- lines[1:] = [indent + l for l in lines[1:]]
+ lines[1:] = [indent + ln for ln in lines[1:]]
wrapped_line = line_fmt % (i, '\n'.join(lines))
if i in error_lines:
diff --git a/lib/spack/spack/util/mock_package.py b/lib/spack/spack/util/mock_package.py
index 734a93c469..847177ae05 100644
--- a/lib/spack/spack/util/mock_package.py
+++ b/lib/spack/spack/util/mock_package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -81,8 +81,8 @@ class MockPackageMultiRepo(object):
def __init__(self):
self.spec_to_pkg = {}
- self.namespace = ''
- self.full_namespace = 'spack.pkg.mock'
+ self.namespace = 'mock' # repo namespace
+ self.full_namespace = 'spack.pkg.mock' # python import namespace
def get(self, spec):
if not isinstance(spec, spack.spec.Spec):
@@ -92,6 +92,10 @@ class MockPackageMultiRepo(object):
return self.spec_to_pkg[spec.name]
def get_pkg_class(self, name):
+ namespace, _, name = name.rpartition(".")
+ if namespace and namespace != self.namespace:
+ raise spack.repo.InvalidNamespaceError(
+ "bad namespace: %s" % self.namespace)
return self.spec_to_pkg[name]
def exists(self, name):
diff --git a/lib/spack/spack/util/module_cmd.py b/lib/spack/spack/util/module_cmd.py
index bc994fd4b4..fa6996fcbd 100644
--- a/lib/spack/spack/util/module_cmd.py
+++ b/lib/spack/spack/util/module_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -155,7 +155,7 @@ def path_from_modules(modules):
if candidate_path and not os.path.exists(candidate_path):
msg = ("Extracted path from module does not exist "
- "[module={0}, path={0}]")
+ "[module={0}, path={1}]")
tty.warn(msg.format(module_name, candidate_path))
# If anything is found, then it's the best choice. This means
@@ -195,9 +195,13 @@ def get_path_from_module_contents(text, module_name):
def match_flag_and_strip(line, flag, strip=[]):
flag_idx = line.find(flag)
if flag_idx >= 0:
- end = line.find(' ', flag_idx)
- if end >= 0:
- path = line[flag_idx + len(flag):end]
+ # Search for the first occurence of any separator marking the end of
+ # the path.
+ separators = (' ', '"', "'")
+ occurrences = [line.find(s, flag_idx) for s in separators]
+ indices = [idx for idx in occurrences if idx >= 0]
+ if indices:
+ path = line[flag_idx + len(flag):min(indices)]
else:
path = line[flag_idx + len(flag):]
path = strip_path(path, strip)
diff --git a/lib/spack/spack/util/naming.py b/lib/spack/spack/util/naming.py
index 1cc6d6109f..db5d1d4907 100644
--- a/lib/spack/spack/util/naming.py
+++ b/lib/spack/spack/util/naming.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/package_hash.py b/lib/spack/spack/util/package_hash.py
index adea1a498b..462f43d223 100644
--- a/lib/spack/spack/util/package_hash.py
+++ b/lib/spack/spack/util/package_hash.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/path.py b/lib/spack/spack/util/path.py
index 182f93c585..0735133b35 100644
--- a/lib/spack/spack/util/path.py
+++ b/lib/spack/spack/util/path.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ import llnl.util.tty as tty
from llnl.util.lang import memoized
import spack.paths
-
+import spack.util.spack_yaml as syaml
__all__ = [
'substitute_config_variables',
@@ -72,12 +72,22 @@ def substitute_config_variables(path):
- $spack The Spack instance's prefix
- $user The current user's username
- $tempdir Default temporary directory returned by tempfile.gettempdir()
+ - $env The active Spack environment.
These are substituted case-insensitively into the path, and users can
- use either ``$var`` or ``${var}`` syntax for the variables.
-
+ use either ``$var`` or ``${var}`` syntax for the variables. $env is only
+ replaced if there is an active environment, and should only be used in
+ environment yaml files.
"""
- # Look up replacements for re.sub in the replacements dict.
+ import spack.environment as ev # break circular
+ env = ev.get_env({}, '')
+ if env:
+ replacements.update({'env': env.path})
+ else:
+ # If a previous invocation added env, remove it
+ replacements.pop('env', None)
+
+ # Look up replacements
def repl(match):
m = match.group(0).strip('${}')
return replacements.get(m.lower(), match.group(0))
@@ -132,7 +142,19 @@ def add_padding(path, length):
def canonicalize_path(path):
"""Same as substitute_path_variables, but also take absolute path."""
- path = substitute_path_variables(path)
- path = os.path.abspath(path)
+ # Get file in which path was written in case we need to make it absolute
+ # relative to that path.
+ filename = None
+ if isinstance(path, syaml.syaml_str):
+ filename = os.path.dirname(path._start_mark.name)
+ assert path._start_mark.name == path._end_mark.name
- return path
+ path = substitute_path_variables(path)
+ if not os.path.isabs(path):
+ if filename:
+ path = os.path.join(filename, path)
+ else:
+ path = os.path.abspath(path)
+ tty.debug("Using current working directory as base for abspath")
+
+ return os.path.normpath(path)
diff --git a/lib/spack/spack/util/pattern.py b/lib/spack/spack/util/pattern.py
index c0569f5f55..fc4b324b17 100644
--- a/lib/spack/spack/util/pattern.py
+++ b/lib/spack/spack/util/pattern.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/prefix.py b/lib/spack/spack/util/prefix.py
index 10ec50d30c..b4542c7eb0 100644
--- a/lib/spack/spack/util/prefix.py
+++ b/lib/spack/spack/util/prefix.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/s3.py b/lib/spack/spack/util/s3.py
index c9ed22f72c..31a18093e1 100644
--- a/lib/spack/spack/util/s3.py
+++ b/lib/spack/spack/util/s3.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,7 @@ def create_s3_session(url):
# want to require boto as a dependency unless the user actually wants to
# access S3 mirrors.
from boto3 import Session
+ from botocore.exceptions import ClientError
session = Session()
@@ -41,4 +42,6 @@ def create_s3_session(url):
s3_client_args["config"] = Config(signature_version=UNSIGNED)
- return session.client('s3', **s3_client_args)
+ client = session.client('s3', **s3_client_args)
+ client.ClientError = ClientError
+ return client
diff --git a/lib/spack/spack/util/spack_json.py b/lib/spack/spack/util/spack_json.py
index 01f773058b..62fd9ca824 100644
--- a/lib/spack/spack/util/spack_json.py
+++ b/lib/spack/spack/util/spack_json.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -38,10 +38,14 @@ def dump(data, stream=None):
def _strify(data, ignore_dicts=False):
+ """Converts python 2 unicodes to str in JSON data."""
+ # this is a no-op in python 3
+ if sys.version_info[0] >= 3:
+ return data
+
# if this is a unicode string in python 2, return its string representation
- if sys.version_info[0] < 3:
- if isinstance(data, string_types):
- return data.encode('utf-8')
+ if isinstance(data, string_types):
+ return data.encode('utf-8')
# if this is a list of values, return list of byteified values
if isinstance(data, list):
diff --git a/lib/spack/spack/util/spack_yaml.py b/lib/spack/spack/util/spack_yaml.py
index 4e61e02a4e..24eea88b77 100644
--- a/lib/spack/spack/util/spack_yaml.py
+++ b/lib/spack/spack/util/spack_yaml.py
@@ -13,7 +13,9 @@
"""
import ctypes
+import re
import sys
+from typing import List # novm
from ordereddict_backport import OrderedDict
from six import string_types, StringIO
@@ -184,6 +186,12 @@ class OrderedLineDumper(RoundTripDumper):
"""Make the dumper NEVER print YAML aliases."""
return True
+ def represent_data(self, data):
+ result = super(OrderedLineDumper, self).represent_data(data)
+ if data is None:
+ result.value = syaml_str("null")
+ return result
+
def represent_str(self, data):
if hasattr(data, 'override') and data.override:
data = data + ':'
@@ -226,7 +234,7 @@ def file_line(mark):
#: This is nasty but YAML doesn't give us many ways to pass arguments --
#: yaml.dump() takes a class (not an instance) and instantiates the dumper
#: itself, so we can't just pass an instance
-_annotations = []
+_annotations = [] # type: List[str]
class LineAnnotationDumper(OrderedLineDumper):
@@ -261,19 +269,18 @@ class LineAnnotationDumper(OrderedLineDumper):
def represent_data(self, data):
"""Force syaml_str to be passed through with marks."""
result = super(LineAnnotationDumper, self).represent_data(data)
- if isinstance(result.value, string_types):
+ if data is None:
+ result.value = syaml_str("null")
+ elif isinstance(result.value, string_types):
result.value = syaml_str(data)
if markable(result.value):
mark(result.value, data)
return result
- def write_stream_start(self):
- super(LineAnnotationDumper, self).write_stream_start()
- _annotations.append(colorize('@K{---}'))
-
def write_line_break(self):
super(LineAnnotationDumper, self).write_line_break()
- if not self.saved:
+ if self.saved is None:
+ _annotations.append(colorize('@K{---}'))
return
# append annotations at the end of each line
@@ -321,7 +328,10 @@ def dump_annotated(data, stream=None, *args, **kwargs):
sio = StringIO()
yaml.dump(data, sio, *args, **kwargs)
- lines = sio.getvalue().rstrip().split('\n')
+
+ # write_line_break() is not called by YAML for empty lines, so we
+ # skip empty lines here with \n+.
+ lines = re.split(r"\n+", sio.getvalue().rstrip())
getvalue = None
if stream is None:
diff --git a/lib/spack/spack/util/string.py b/lib/spack/spack/util/string.py
index 7284cef2d3..6137c32d5a 100644
--- a/lib/spack/spack/util/string.py
+++ b/lib/spack/spack/util/string.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/url.py b/lib/spack/spack/util/url.py
index ab5503229f..f8abf4fa96 100644
--- a/lib/spack/spack/util/url.py
+++ b/lib/spack/spack/util/url.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/util/web.py b/lib/spack/spack/util/web.py
index 1b415f5de2..f59f3bb064 100644
--- a/lib/spack/spack/util/web.py
+++ b/lib/spack/spack/util/web.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,17 +20,6 @@ import six
from six.moves.urllib.error import URLError
from six.moves.urllib.request import urlopen, Request
-try:
- # Python 2 had these in the HTMLParser package.
- from HTMLParser import HTMLParser, HTMLParseError # novm
-except ImportError:
- # In Python 3, things moved to html.parser
- from html.parser import HTMLParser
-
- # Also, HTMLParseError is deprecated and never raised.
- class HTMLParseError(Exception):
- pass
-
from llnl.util.filesystem import mkdirp
import llnl.util.tty as tty
@@ -45,6 +34,16 @@ import llnl.util.lang
from spack.util.compression import ALLOWED_ARCHIVE_TYPES
+if sys.version_info < (3, 0):
+ # Python 2 had these in the HTMLParser package.
+ from HTMLParser import HTMLParser, HTMLParseError # novm
+else:
+ # In Python 3, things moved to html.parser
+ from html.parser import HTMLParser
+
+ # Also, HTMLParseError is deprecated and never raised.
+ class HTMLParseError(Exception):
+ pass
# Timeout in seconds for web requests
_timeout = 10
@@ -211,11 +210,10 @@ def url_exists(url):
if url.scheme == 's3':
s3 = s3_util.create_s3_session(url)
- from botocore.exceptions import ClientError
try:
- s3.get_object(Bucket=url.netloc, Key=url.path)
+ s3.get_object(Bucket=url.netloc, Key=url.path.lstrip('/'))
return True
- except ClientError as err:
+ except s3.ClientError as err:
if err.response['Error']['Code'] == 'NoSuchKey':
return False
raise err
@@ -229,17 +227,57 @@ def url_exists(url):
return False
-def remove_url(url):
+def _debug_print_delete_results(result):
+ if 'Deleted' in result:
+ for d in result['Deleted']:
+ tty.debug('Deleted {0}'.format(d['Key']))
+ if 'Errors' in result:
+ for e in result['Errors']:
+ tty.debug('Failed to delete {0} ({1})'.format(
+ e['Key'], e['Message']))
+
+
+def remove_url(url, recursive=False):
url = url_util.parse(url)
local_path = url_util.local_file_path(url)
if local_path:
- os.remove(local_path)
+ if recursive:
+ shutil.rmtree(local_path)
+ else:
+ os.remove(local_path)
return
if url.scheme == 's3':
s3 = s3_util.create_s3_session(url)
- s3.delete_object(Bucket=url.netloc, Key=url.path)
+ bucket = url.netloc
+ if recursive:
+ # Because list_objects_v2 can only return up to 1000 items
+ # at a time, we have to paginate to make sure we get it all
+ prefix = url.path.strip('/')
+ paginator = s3.get_paginator('list_objects_v2')
+ pages = paginator.paginate(Bucket=bucket, Prefix=prefix)
+
+ delete_request = {'Objects': []}
+ for item in pages.search('Contents'):
+ if not item:
+ continue
+
+ delete_request['Objects'].append({'Key': item['Key']})
+
+ # Make sure we do not try to hit S3 with a list of more
+ # than 1000 items
+ if len(delete_request['Objects']) >= 1000:
+ r = s3.delete_objects(Bucket=bucket, Delete=delete_request)
+ _debug_print_delete_results(r)
+ delete_request = {'Objects': []}
+
+ # Delete any items that remain
+ if len(delete_request['Objects']):
+ r = s3.delete_objects(Bucket=bucket, Delete=delete_request)
+ _debug_print_delete_results(r)
+ else:
+ s3.delete_object(Bucket=bucket, Key=url.path)
return
# Don't even try for other URL schemes.
@@ -549,7 +587,10 @@ def find_versions_of_archive(
# .sha256
# .sig
# However, SourceForge downloads still need to end in '/download'.
- url_regex += r'(\/download)?$'
+ url_regex += r'(\/download)?'
+ # PyPI adds #sha256=... to the end of the URL
+ url_regex += '(#sha256=.*)?'
+ url_regex += '$'
regexes.append(url_regex)
diff --git a/lib/spack/spack/variant.py b/lib/spack/spack/variant.py
index 8fa52f9738..0929a5ea44 100644
--- a/lib/spack/spack/variant.py
+++ b/lib/spack/spack/variant.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,12 @@ import inspect
import itertools
import re
from six import StringIO
+import sys
+
+if sys.version_info >= (3, 5):
+ from collections.abc import Sequence # novm
+else:
+ from collections import Sequence
import llnl.util.tty.color
import llnl.util.lang as lang
@@ -20,11 +26,6 @@ from spack.util.string import comma_or
import spack.directives
import spack.error as error
-try:
- from collections.abc import Sequence # novm
-except ImportError:
- from collections import Sequence
-
special_variant_values = [None, 'none', '*']
@@ -200,7 +201,7 @@ def implicit_variant_conversion(method):
return convert
-@lang.key_ordering
+@lang.lazy_lexicographic_ordering
class AbstractVariant(object):
"""A variant that has not yet decided who it wants to be. It behaves like
a multi valued variant which **could** do things.
@@ -281,8 +282,14 @@ class AbstractVariant(object):
# to a set
self._value = tuple(sorted(set(value)))
- def _cmp_key(self):
- return self.name, self.value
+ def _cmp_iter(self):
+ yield self.name
+
+ value = self._value
+ if not isinstance(value, tuple):
+ value = (value,)
+ value = tuple(str(x) for x in value)
+ yield value
def copy(self):
"""Returns an instance of a variant equivalent to self
diff --git a/lib/spack/spack/verify.py b/lib/spack/spack/verify.py
index 528fa7903b..b8d76e03e2 100644
--- a/lib/spack/spack/verify.py
+++ b/lib/spack/spack/verify.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/lib/spack/spack/version.py b/lib/spack/spack/version.py
index 44e03edb5c..82c0afd53e 100644
--- a/lib/spack/spack/version.py
+++ b/lib/spack/spack/version.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,7 +37,10 @@ from spack.util.spack_yaml import syaml_dict
__all__ = ['Version', 'VersionRange', 'VersionList', 'ver']
# Valid version characters
-VALID_VERSION = r'[A-Za-z0-9_.-]'
+VALID_VERSION = re.compile(r'[A-Za-z0-9_.-]')
+
+# regex for version segments
+SEGMENT_REGEX = re.compile(r'[a-zA-Z]+|[0-9]+')
# Infinity-like versions. The order in the list implies the comparison rules
infinity_versions = ['develop', 'main', 'master', 'head', 'trunk']
@@ -97,9 +100,10 @@ class Version(object):
"""Class to represent versions"""
def __init__(self, string):
- string = str(string)
+ if not isinstance(string, str):
+ string = str(string)
- if not re.match(VALID_VERSION, string):
+ if not VALID_VERSION.match(string):
raise ValueError("Bad characters in version string: %s" % string)
# preserve the original string, but trimmed.
@@ -107,12 +111,11 @@ class Version(object):
self.string = string
# Split version into alphabetical and numeric segments
- segment_regex = r'[a-zA-Z]+|[0-9]+'
- segments = re.findall(segment_regex, string)
+ segments = SEGMENT_REGEX.findall(string)
self.version = tuple(int_if_int(seg) for seg in segments)
# Store the separators from the original version string as well.
- self.separators = tuple(re.split(segment_regex, string)[1:])
+ self.separators = tuple(SEGMENT_REGEX.split(string)[1:])
@property
def dotted(self):
@@ -369,8 +372,10 @@ class Version(object):
@coerced
def intersection(self, other):
- if self == other:
+ if self in other: # also covers `self == other`
return self
+ elif other in self:
+ return other
else:
return VersionList()
diff --git a/pytest.ini b/pytest.ini
index baf163ef0b..71f563954a 100644
--- a/pytest.ini
+++ b/pytest.ini
@@ -1,10 +1,9 @@
# content of pytest.ini
[pytest]
-addopts = --durations=20 -ra
+addopts = --durations=30 -ra
testpaths = lib/spack/spack/test
python_files = *.py
markers =
db: tests that require creating a DB
- network: tests that require access to the network
maybeslow: tests that may be slow (e.g. access a lot the filesystem, etc.)
regression: tests that fix a reported bug
diff --git a/share/spack/bash/spack-completion.in b/share/spack/bash/spack-completion.in
index 80ba94ed87..ae9cbc555c 100755
--- a/share/spack/bash/spack-completion.in
+++ b/share/spack/bash/spack-completion.in
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,6 +37,17 @@
#
# See `man bash` for more details.
+if test -n "${ZSH_VERSION:-}" ; then
+ if [[ "$(emulate)" = zsh ]] ; then
+ # ensure base completion support is enabled, ignore insecure directories
+ autoload -U +X compinit && compinit -i
+ # ensure bash compatible completion support is enabled
+ autoload -U +X bashcompinit && bashcompinit
+ emulate sh -c "source '$0:A'"
+ return # stop interpreting file
+ fi
+fi
+
# Bash programmable completion for Spack
_bash_completion_spack() {
# In all following examples, let the cursor be denoted by brackets, i.e. []
@@ -44,7 +55,7 @@ _bash_completion_spack() {
# For our purposes, flags should not affect tab completion. For instance,
# `spack install []` and `spack -d install --jobs 8 []` should both give the same
# possible completions. Therefore, we need to ignore any flags in COMP_WORDS.
- local COMP_WORDS_NO_FLAGS=()
+ local -a COMP_WORDS_NO_FLAGS
local index=0
while [[ "$index" -lt "$COMP_CWORD" ]]
do
@@ -117,7 +128,9 @@ _bash_completion_spack() {
#_test_vars >> temp
# Make sure function exists before calling it
- if [[ "$(type -t $subfunction)" == "function" ]]
+ local rgx #this dance is necessary to cover bash and zsh regex
+ rgx="$subfunction.*function.* "
+ if [[ "$(type $subfunction 2>&1)" =~ $rgx ]]
then
$subfunction
COMPREPLY=($(compgen -W "$SPACK_COMPREPLY" -- "$cur"))
diff --git a/share/spack/csh/pathadd.csh b/share/spack/csh/pathadd.csh
index 0f8a04ba62..ec394e8990 100644
--- a/share/spack/csh/pathadd.csh
+++ b/share/spack/csh/pathadd.csh
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/csh/spack.csh b/share/spack/csh/spack.csh
index ce3308067e..7b6bcbf929 100644
--- a/share/spack/csh/spack.csh
+++ b/share/spack/csh/spack.csh
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/docker/amazonlinux-2.dockerfile b/share/spack/docker/amazonlinux-2.dockerfile
new file mode 100644
index 0000000000..70a99388a2
--- /dev/null
+++ b/share/spack/docker/amazonlinux-2.dockerfile
@@ -0,0 +1,70 @@
+FROM public.ecr.aws/amazonlinux/amazonlinux:2.0.20201111.0
+MAINTAINER Spack Maintainers <maintainers@spack.io>
+
+ENV DOCKERFILE_BASE=centos \
+ DOCKERFILE_DISTRO=centos \
+ DOCKERFILE_DISTRO_VERSION=7 \
+ SPACK_ROOT=/opt/spack \
+ DEBIAN_FRONTEND=noninteractive \
+ CURRENTLY_BUILDING_DOCKER_IMAGE=1 \
+ container=docker
+
+RUN yum update -y \
+ && yum groupinstall -y "Development Tools" \
+ && yum install -y \
+ curl \
+ findutils \
+ gcc-c++ \
+ gcc \
+ gcc-gfortran \
+ git \
+ gnupg2 \
+ hostname \
+ iproute \
+ Lmod \
+ make \
+ patch \
+ python \
+ python-pip \
+ python-setuptools \
+ tcl \
+ unzip \
+ which \
+ && pip install boto3 \
+ && rm -rf /var/cache/yum \
+ && yum clean all
+
+COPY bin $SPACK_ROOT/bin
+COPY etc $SPACK_ROOT/etc
+COPY lib $SPACK_ROOT/lib
+COPY share $SPACK_ROOT/share
+COPY var $SPACK_ROOT/var
+RUN mkdir -p $SPACK_ROOT/opt/spack
+
+RUN ln -s $SPACK_ROOT/share/spack/docker/entrypoint.bash \
+ /usr/local/bin/docker-shell \
+ && ln -s $SPACK_ROOT/share/spack/docker/entrypoint.bash \
+ /usr/local/bin/interactive-shell \
+ && ln -s $SPACK_ROOT/share/spack/docker/entrypoint.bash \
+ /usr/local/bin/spack-env
+
+RUN mkdir -p /root/.spack \
+ && cp $SPACK_ROOT/share/spack/docker/modules.yaml \
+ /root/.spack/modules.yaml \
+ && rm -rf /root/*.* /run/nologin $SPACK_ROOT/.git
+
+# [WORKAROUND]
+# https://superuser.com/questions/1241548/
+# xubuntu-16-04-ttyname-failed-inappropriate-ioctl-for-device#1253889
+RUN [ -f ~/.profile ] \
+ && sed -i 's/mesg n/( tty -s \\&\\& mesg n || true )/g' ~/.profile \
+ || true
+
+WORKDIR /root
+SHELL ["docker-shell"]
+
+# TODO: add a command to Spack that (re)creates the package cache
+RUN spack spec hdf5+mpi
+
+ENTRYPOINT ["/bin/bash", "/opt/spack/share/spack/docker/entrypoint.bash"]
+CMD ["interactive-shell"]
diff --git a/share/spack/docker/entrypoint.bash b/share/spack/docker/entrypoint.bash
index fbd7baf2bc..bc240cd57a 100755
--- a/share/spack/docker/entrypoint.bash
+++ b/share/spack/docker/entrypoint.bash
@@ -1,6 +1,6 @@
#! /usr/bin/env bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/docker/leap-15.dockerfile b/share/spack/docker/leap-15.dockerfile
new file mode 100644
index 0000000000..1da72615ad
--- /dev/null
+++ b/share/spack/docker/leap-15.dockerfile
@@ -0,0 +1,61 @@
+FROM opensuse/leap:15.2
+MAINTAINER Christian Goll <cgoll@suse.com>
+
+ENV DOCKERFILE_BASE=opensuse \
+ DOCKERFILE_DISTRO=opensuse_leap \
+ DOCKERFILE_DISTRO_VERSION=15.2 \
+ SPACK_ROOT=/opt/spack \
+ DEBIAN_FRONTEND=noninteractive \
+ CURRENTLY_BUILDING_DOCKER_IMAGE=1 \
+ container=docker
+
+RUN zypper ref && \
+ zypper up -y && \
+ zypper in -y python3-base python3-boto3\
+ xz gzip tar bzip2 curl patch \
+ gcc-c++ gcc-fortran make cmake automake &&\
+ zypper clean
+
+# clean up manpages
+RUN rm -rf /var/cache/zypp/* \
+ rm -rf /usr/share/doc/packages/* \
+ rm -rf /usr/share/doc/manual/*
+
+# copy spack into container
+COPY bin $SPACK_ROOT/bin
+COPY etc $SPACK_ROOT/etc
+COPY lib $SPACK_ROOT/lib
+COPY share $SPACK_ROOT/share
+COPY var $SPACK_ROOT/var
+RUN mkdir -p $SPACK_ROOT/opt/spack
+
+RUN ln -s $SPACK_ROOT/share/spack/docker/entrypoint.bash \
+ /usr/local/bin/docker-shell \
+ && ln -s $SPACK_ROOT/share/spack/docker/entrypoint.bash \
+ /usr/local/bin/interactive-shell \
+ && ln -s $SPACK_ROOT/share/spack/docker/entrypoint.bash \
+ /usr/local/bin/spack-env
+
+RUN mkdir -p /root/.spack \
+ && cp $SPACK_ROOT/share/spack/docker/modules.yaml \
+ /root/.spack/modules.yaml \
+ && rm -rf /root/*.* /run/nologin $SPACK_ROOT/.git
+
+# [WORKAROUND]
+# https://superuser.com/questions/1241548/
+# xubuntu-16-04-ttyname-failed-inappropriate-ioctl-for-device#1253889
+RUN [ -f ~/.profile ] \
+ && sed -i 's/mesg n/( tty -s \\&\\& mesg n || true )/g' ~/.profile \
+ || true
+
+WORKDIR /root
+SHELL ["docker-shell"]
+
+# Find tools which are in distro
+RUN ${SPACK_ROOT}/bin/spack external find --scope system
+
+# TODO: add a command to Spack that (re)creates the package cache
+RUN ${SPACK_ROOT}/bin/spack spec hdf5+mpi
+
+ENTRYPOINT ["/bin/bash", "/opt/spack/share/spack/docker/entrypoint.bash"]
+CMD ["interactive-shell"]
diff --git a/share/spack/docker/package-index/split.sh b/share/spack/docker/package-index/split.sh
index c82d8045f6..a44b96dbc5 100755
--- a/share/spack/docker/package-index/split.sh
+++ b/share/spack/docker/package-index/split.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/docs/docker/module-file-tutorial/spack.sh b/share/spack/docs/docker/module-file-tutorial/spack.sh
index b025bda979..65920826b7 100644
--- a/share/spack/docs/docker/module-file-tutorial/spack.sh
+++ b/share/spack/docs/docker/module-file-tutorial/spack.sh
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/gitlab/cloud_e4s_pipelines.yml b/share/spack/gitlab/cloud_e4s_pipelines.yml
deleted file mode 100644
index 67a74cf971..0000000000
--- a/share/spack/gitlab/cloud_e4s_pipelines.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-pr_pipeline:
- only:
- - /^github\/pr[\d]+_.*$/
- variables:
- SPACK_REF: ${CI_COMMIT_SHA}
- SPACK_PR_BRANCH: ${CI_COMMIT_REF_NAME}
- SPACK_IS_PR_PIPELINE: "True"
- AWS_ACCESS_KEY_ID: ${PR_MIRRORS_AWS_ACCESS_KEY_ID}
- AWS_SECRET_ACCESS_KEY: ${PR_MIRRORS_AWS_SECRET_ACCESS_KEY}
- trigger:
- project: spack/e4s
- strategy: depend
-
-develop_pipeline:
- only:
- - /^github\/develop$/
- variables:
- SPACK_REF: ${CI_COMMIT_SHA}
- AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
- AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
- SPACK_SIGNING_KEY: ${SPACK_SIGNING_KEY}
- trigger:
- project: spack/e4s
- strategy: depend
diff --git a/share/spack/gitlab/cloud_pipelines/.gitlab-ci.yml b/share/spack/gitlab/cloud_pipelines/.gitlab-ci.yml
new file mode 100644
index 0000000000..579d7b56f3
--- /dev/null
+++ b/share/spack/gitlab/cloud_pipelines/.gitlab-ci.yml
@@ -0,0 +1,125 @@
+stages: [ "generate", "build" ]
+
+default:
+ image: { "name": "ghcr.io/scottwittenburg/ecpe4s-ubuntu18.04-runner-x86_64:2020-09-01", "entrypoint": [""] }
+
+########################################
+# Job templates
+########################################
+
+.pr:
+ only:
+ - /^github\/pr[\d]+_.*$/
+ variables:
+ SPACK_PR_BRANCH: ${CI_COMMIT_REF_NAME}
+ SPACK_IS_PR_PIPELINE: "True"
+
+.develop:
+ only:
+ - /^github\/develop$/
+ variables:
+ SPACK_IS_PR_PIPELINE: "False"
+
+.generate:
+ stage: generate
+ script:
+ - . "./share/spack/setup-env.sh"
+ - spack --version
+ - cd share/spack/gitlab/cloud_pipelines/stacks/${SPACK_CI_STACK_NAME}
+ - spack env activate --without-view .
+ - spack ci generate --check-index-only
+ --output-file "${CI_PROJECT_DIR}/jobs_scratch_dir/cloud-ci-pipeline.yml"
+ artifacts:
+ paths:
+ - "${CI_PROJECT_DIR}/jobs_scratch_dir/cloud-ci-pipeline.yml"
+ tags: ["spack", "public", "medium", "x86_64"]
+ interruptible: true
+
+.pr-generate:
+ extends: [ ".pr", ".generate" ]
+
+.develop-generate:
+ extends: [ ".develop", ".generate" ]
+
+.build:
+ stage: build
+
+.pr-build:
+ extends: [ ".pr", ".build" ]
+ variables:
+ AWS_ACCESS_KEY_ID: ${PR_MIRRORS_AWS_ACCESS_KEY_ID}
+ AWS_SECRET_ACCESS_KEY: ${PR_MIRRORS_AWS_SECRET_ACCESS_KEY}
+
+.develop-build:
+ extends: [ ".develop", ".build" ]
+ variables:
+ AWS_ACCESS_KEY_ID: ${MIRRORS_AWS_ACCESS_KEY_ID}
+ AWS_SECRET_ACCESS_KEY: ${MIRRORS_AWS_SECRET_ACCESS_KEY}
+ SPACK_SIGNING_KEY: ${PACKAGE_SIGNING_KEY}
+
+########################################
+# TEMPLATE FOR ADDING ANOTHER PIPELINE
+########################################
+#
+# First add a new spack.yml defining the pipline to run in
+# share/spack/gitlab/cloud_pipelines/stacks/my-super-cool-stack/spack.yaml
+#
+# Then add the following entries at the bottom of this file:
+#
+########################################
+# My Super Cool Pipeline
+########################################
+# .my-super-cool-stack:
+# variables:
+# SPACK_CI_STACK_NAME: my-super-cool-stack
+#
+# my-super-cool-stack-pr-generate:
+# extends: [ ".my-super-cool-stack", ".pr-generate"]
+#
+# my-super-cool-stack-develop-generate:
+# extends: [ ".my-super-cool-stack", ".develop-generate"]
+#
+# my-super-cool-stack-pr-build:
+# extends: [ ".my-super-cool-stack", ".pr-build" ]
+# trigger:
+# include:
+# - artifact: jobs_scratch_dir/cloud-ci-pipeline.yml
+# job: my-super-cool-stack-pr-generate
+# strategy: depend
+#
+# my-super-cool-stack-develop-build:
+# extends: [ ".my-super-cool-stack", ".develop-build" ]
+# trigger:
+# include:
+# - artifact: jobs_scratch_dir/cloud-ci-pipeline.yml
+# job: my-super-cool-stack-develop-generate
+# strategy: depend
+
+########################################
+# E4S pipeline
+########################################
+.e4s:
+ variables:
+ SPACK_CI_STACK_NAME: e4s
+
+e4s-pr-generate:
+ extends: [ ".e4s", ".pr-generate"]
+
+e4s-develop-generate:
+ extends: [ ".e4s", ".develop-generate"]
+
+e4s-pr-build:
+ extends: [ ".e4s", ".pr-build" ]
+ trigger:
+ include:
+ - artifact: jobs_scratch_dir/cloud-ci-pipeline.yml
+ job: e4s-pr-generate
+ strategy: depend
+
+e4s-develop-build:
+ extends: [ ".e4s", ".develop-build" ]
+ trigger:
+ include:
+ - artifact: jobs_scratch_dir/cloud-ci-pipeline.yml
+ job: e4s-develop-generate
+ strategy: depend
diff --git a/share/spack/gitlab/cloud_pipelines/stacks/e4s/spack.yaml b/share/spack/gitlab/cloud_pipelines/stacks/e4s/spack.yaml
new file mode 100644
index 0000000000..f187b2c6b3
--- /dev/null
+++ b/share/spack/gitlab/cloud_pipelines/stacks/e4s/spack.yaml
@@ -0,0 +1,151 @@
+spack:
+ view: false
+ concretization: separately
+
+ config:
+ install_tree:
+ root: /home/software/spack
+ padded_length: 512
+ projections:
+ all: '{architecture}/{compiler.name}-{compiler.version}/{name}-{version}-{hash}'
+
+ packages:
+ all:
+ target: [x86_64]
+ providers:
+ blas:
+ - openblas
+ mpi:
+ - mpich
+ variants: +mpi
+ binutils:
+ variants: +gold+headers+libiberty~nls
+ version:
+ - 2.33.1
+ cmake:
+ version: [3.18.4]
+ hdf5:
+ variants: +fortran
+ mpich:
+ variants: ~wrapperrpath
+ openblas:
+ version: [0.3.10]
+ slepc:
+ version: [3.14.0]
+
+ definitions:
+ - e4s:
+ # - adios
+ # - adios2
+ # - aml
+ # - amrex
+ # - arborx
+ - argobots
+ # - ascent
+ # - axom
+ # - bolt
+ # - caliper
+ # - darshan-runtime
+ - darshan-util
+ # - dyninst
+ # - faodel
+ # - flecsi+cinch
+ # - flit
+ # - gasnet
+ # - ginkgo
+ # - globalarrays
+ # - gotcha
+ # - hdf5
+ # - hpctoolkit
+ # - hpx
+ # - hypre
+ # - kokkos-kernels+openmp
+ # - kokkos+openmp
+ # - legion
+ # - libnrm
+ # - libquo
+ # - magma cuda_arch=70 ^cuda@10.2.89
+ # - mercury
+ # - mfem
+ # - mpifileutils@develop~xattr
+ # - ninja
+ # - omega-h
+ # - openmpi
+ # - openpmd-api
+ # - papi
+ # - papyrus@1.0.1
+ # - parallel-netcdf
+ # - pdt
+ # - petsc
+ # - phist
+ # - plasma
+ # - precice
+ # - pumi
+ # - py-jupyterhub
+ # - py-libensemble
+ # - py-petsc4py
+ # - qthreads scheduler=distrib
+ # - raja
+ # - rempi
+ # - scr
+ # - slate ^openblas@0.3.6 threads=openmp ^cuda@10.2.89
+ # - slepc
+ # - stc
+ # - strumpack ~slate ^openblas@0.3.6 threads=openmp
+ # - sundials
+ # - superlu
+ # - superlu-dist
+ - swig
+ # - sz
+ # - tasmanian
+ # - tau
+ # - trilinos
+ # - turbine
+ # - umap
+ # - umpire
+ # - unifyfs
+ # - upcxx
+ # - veloc
+ # - zfp
+ - arch:
+ - '%gcc@7.5.0 arch=linux-ubuntu18.04-x86_64'
+
+ specs:
+ - matrix:
+ - - $e4s
+ - - $arch
+
+ mirrors: { "mirror": "s3://spack-binaries-develop/e4s-new-cluster" }
+
+ gitlab-ci:
+ script:
+ - . "./share/spack/setup-env.sh"
+ - spack --version
+ - cd share/spack/gitlab/cloud_pipelines/stacks/e4s
+ - spack env activate --without-view .
+ - spack -d ci rebuild
+ mappings:
+ - match: [cuda, dyninst, hpx, precice, strumpack, sundials, trilinos, vtk-h, vtk-m]
+ runner-attributes:
+ image: { "name": "ghcr.io/scottwittenburg/ecpe4s-ubuntu18.04-runner-x86_64:2020-09-01", "entrypoint": [""] }
+ tags: ["spack", "public", "xlarge", "x86_64"]
+ - match: ['os=ubuntu18.04']
+ runner-attributes:
+ image: { "name": "ghcr.io/scottwittenburg/ecpe4s-ubuntu18.04-runner-x86_64:2020-09-01", "entrypoint": [""] }
+ tags: ["spack", "public", "large", "x86_64"]
+ temporary-storage-url-prefix: "s3://spack-binaries-prs/pipeline-storage"
+ service-job-attributes:
+ before_script:
+ - . "./share/spack/setup-env.sh"
+ - spack --version
+ - cd share/spack/gitlab/cloud_pipelines/stacks/e4s
+ - spack env activate --without-view .
+ image: { "name": "ghcr.io/scottwittenburg/ecpe4s-ubuntu18.04-runner-x86_64:2020-09-01", "entrypoint": [""] }
+ tags: ["spack", "public", "medium", "x86_64"]
+
+ cdash:
+ build-group: New PR testing workflow
+ url: https://cdash.spack.io
+ project: Spack Testing
+ site: Cloud Gitlab Infrastructure
+
diff --git a/share/spack/gitlab/ascent_pipeline.yml b/share/spack/gitlab/nersc_pipeline.yml
index 4b00ec19e2..5edcb70c78 100644
--- a/share/spack/gitlab/ascent_pipeline.yml
+++ b/share/spack/gitlab/nersc_pipeline.yml
@@ -5,5 +5,5 @@ merge_pipeline:
SPACK_REPO: ${CI_PROJECT_URL}
SPACK_REF: ${CI_COMMIT_SHA}
trigger:
- project: ecpcitest/e4s
+ project: ecp/e4s/e4s
strategy: depend
diff --git a/share/spack/qa/completion-test.sh b/share/spack/qa/completion-test.sh
index 59a5181b98..0777002f0a 100755
--- a/share/spack/qa/completion-test.sh
+++ b/share/spack/qa/completion-test.sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,13 +31,18 @@ title "Testing spack-completion.$_sp_shell with $_sp_shell"
succeeds which spack
title 'Testing all subcommands'
-while IFS= read -r line
+# read line into an array portably
+READ="read -ra line"
+if [ -n "${ZSH_VERSION:-}" ]; then
+ READ=(read -rA line)
+fi
+while IFS=' ' $READ
do
# Test that completion with no args works
- succeeds _spack_completions ${line[*]} ''
+ succeeds _spack_completions "${line[@]}" ''
# Test that completion with flags works
- contains '-h --help' _spack_completions ${line[*]} -
+ contains '-h --help' _spack_completions "${line[@]}" -
done <<- EOF
$(spack commands --aliases --format=subcommands)
EOF
@@ -58,32 +63,39 @@ contains 'hdf5' _spack_completions spack install -v ''
# XFAIL: Fails for Python 2.6 because pkg_resources not found?
#contains 'compilers.py' _spack_completions spack unit-test ''
-title 'Testing debugging functions'
-
-# This is a particularly tricky case that involves the following situation:
-# `spack -d [] install `
-# Here, [] represents the cursor, which is in the middle of the line.
-# We should tab-complete optional flags for `spack`, not optional flags for
-# `spack install` or package names.
-COMP_LINE='spack -d install '
-COMP_POINT=9
-COMP_WORDS=(spack -d install)
-COMP_CWORD=2
-COMP_KEY=9
-COMP_TYPE=64
-
-_bash_completion_spack
-contains "--all-help" echo "${COMPREPLY[@]}"
-
-contains "['spack', '-d', 'install', '']" _pretty_print COMP_WORDS[@]
-
-# Set the rest of the intermediate variables manually
-COMP_WORDS_NO_FLAGS=(spack install)
-COMP_CWORD_NO_FLAGS=1
-subfunction=_spack
-cur=
-
-list_options=true
-contains "'True'" _test_vars
-list_options=false
-contains "'False'" _test_vars
+_test_debug_functions() {
+ title 'Testing debugging functions'
+
+ if [ -n "${ZSH_VERSION:-}" ]; then
+ emulate -L sh
+ fi
+
+ # This is a particularly tricky case that involves the following situation:
+ # `spack -d [] install `
+ # Here, [] represents the cursor, which is in the middle of the line.
+ # We should tab-complete optional flags for `spack`, not optional flags for
+ # `spack install` or package names.
+ COMP_LINE='spack -d install '
+ COMP_POINT=9
+ COMP_WORDS=(spack -d install)
+ COMP_CWORD=2
+ COMP_KEY=9
+ COMP_TYPE=64
+
+ _bash_completion_spack
+ contains "--all-help" echo "${COMPREPLY[@]}"
+
+ contains "['spack', '-d', 'install', '']" _pretty_print COMP_WORDS[@]
+
+ # Set the rest of the intermediate variables manually
+ COMP_WORDS_NO_FLAGS=(spack install)
+ COMP_CWORD_NO_FLAGS=1
+ subfunction=_spack
+ cur=
+
+ list_options=true
+ contains "'True'" _test_vars
+ list_options=false
+ contains "'False'" _test_vars
+}
+_test_debug_functions
diff --git a/share/spack/qa/flake8_formatter.py b/share/spack/qa/flake8_formatter.py
new file mode 100644
index 0000000000..73aa986af2
--- /dev/null
+++ b/share/spack/qa/flake8_formatter.py
@@ -0,0 +1,147 @@
+import re
+import sys
+import pycodestyle
+from collections import defaultdict
+from flake8.formatting.default import Pylint
+from flake8.style_guide import Violation
+
+#: This is a dict that maps:
+#: filename pattern ->
+#: flake8 exemption code ->
+#: list of patterns, for which matching lines should have codes applied.
+#:
+#: For each file, if the filename pattern matches, we'll add per-line
+#: exemptions if any patterns in the sub-dict match.
+pattern_exemptions = {
+ # exemptions applied only to package.py files.
+ r"package.py$": {
+ # Allow 'from spack import *' in packages, but no other wildcards
+ "F403": [
+ r"^from spack import \*$",
+ r"^from spack.pkgkit import \*$",
+ ],
+ # Exempt lines with urls and descriptions from overlong line errors.
+ "E501": [
+ r"^\s*homepage\s*=",
+ r"^\s*url\s*=",
+ r"^\s*git\s*=",
+ r"^\s*svn\s*=",
+ r"^\s*hg\s*=",
+ r"^\s*pypi\s*=",
+ r"^\s*list_url\s*=",
+ r"^\s*version\(",
+ r"^\s*variant\(",
+ r"^\s*provides\(",
+ r"^\s*extends\(",
+ r"^\s*depends_on\(",
+ r"^\s*conflicts\(",
+ r"^\s*resource\(",
+ r"^\s*patch\(",
+ ],
+ # Exempt '@when' decorated functions from redefinition errors.
+ "F811": [
+ r"^\s*@when\(.*\)",
+ ],
+ },
+ # exemptions applied to all files.
+ r".py$": {
+ "E501": [
+ r"(https?|ftp|file)\:", # URLs
+ r'([\'"])[0-9a-fA-F]{32,}\1', # long hex checksums
+ ]
+ },
+}
+
+
+# compile all regular expressions.
+pattern_exemptions = dict(
+ (
+ re.compile(file_pattern),
+ dict(
+ (code, [re.compile(p) for p in patterns])
+ for code, patterns in error_dict.items()
+ ),
+ )
+ for file_pattern, error_dict in pattern_exemptions.items()
+)
+
+
+class SpackFormatter(Pylint):
+ def __init__(self, options):
+ self.spack_errors = {}
+ self.error_seen = False
+ super().__init__(options)
+
+ def after_init(self): # type: () -> None
+ """Overriding to keep format string from being unset in Default"""
+ pass
+
+ def beginning(self, filename):
+ self.filename = filename
+ self.file_lines = None
+ self.spack_errors = defaultdict(list)
+ for file_pattern, errors in pattern_exemptions.items():
+ if file_pattern.search(filename):
+ for code, pat_arr in errors.items():
+ self.spack_errors[code].extend(pat_arr)
+
+ def handle(self, error): # type: (Violation) -> None
+ """Handle an error reported by Flake8.
+
+ This defaults to calling :meth:`format`, :meth:`show_source`, and
+ then :meth:`write`. This version implements the pattern-based ignore
+ behavior from `spack flake8` as a native flake8 plugin.
+
+ :param error:
+ This will be an instance of
+ :class:`~flake8.style_guide.Violation`.
+ :type error:
+ flake8.style_guide.Violation
+ """
+
+ # print(error.code)
+ # print(error.physical_line)
+ # get list of patterns for this error code
+ pats = self.spack_errors.get(error.code, None)
+ # if any pattern matches, skip line
+ if pats is not None and any(
+ (pat.search(error.physical_line) for pat in pats)
+ ):
+ return
+
+ # Special F811 handling
+ # Prior to Python 3.8, `noqa: F811` needed to be placed on the `@when`
+ # line
+ # Starting with Python 3.8, it must be placed on the `def` line
+ # https://gitlab.com/pycqa/flake8/issues/583
+ # we can only determine if F811 should be ignored given the previous
+ # line, so get the previous line and check it
+ if (
+ self.spack_errors.get("F811", False)
+ and error.code == "F811"
+ and error.line_number > 1
+ ):
+ if self.file_lines is None:
+ if self.filename in {"stdin", "-", "(none)", None}:
+ self.file_lines = pycodestyle.stdin_get_value().splitlines(
+ True
+ )
+ else:
+ self.file_lines = pycodestyle.readlines(self.filename)
+ for pat in self.spack_errors["F811"]:
+ if pat.search(self.file_lines[error.line_number - 2]):
+ return
+
+ self.error_seen = True
+ line = self.format(error)
+ source = self.show_source(error)
+ self.write(line, source)
+
+ def stop(self):
+ """Override stop to check whether any errors we consider to be errors
+ were reported.
+
+ This is a hack, but it makes flake8 behave the desired way.
+ """
+ if not self.error_seen:
+ sys.exit(0)
diff --git a/share/spack/qa/run-build-tests b/share/spack/qa/run-build-tests
index c714c59440..d64aa061fa 100755
--- a/share/spack/qa/run-build-tests
+++ b/share/spack/qa/run-build-tests
@@ -1,6 +1,6 @@
#!/bin/bash -e
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/qa/run-doc-tests b/share/spack/qa/run-doc-tests
index eeba12d8d6..61d18288d0 100755
--- a/share/spack/qa/run-doc-tests
+++ b/share/spack/qa/run-doc-tests
@@ -1,6 +1,6 @@
#!/bin/bash -e
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/qa/run-shell-tests b/share/spack/qa/run-shell-tests
index 9c5302ec89..83838ff5ef 100755
--- a/share/spack/qa/run-shell-tests
+++ b/share/spack/qa/run-shell-tests
@@ -1,6 +1,6 @@
#!/bin/bash -e
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,11 @@
ORIGINAL_PATH="$PATH"
. "$(dirname $0)/setup.sh"
-check_dependencies $coverage kcov git hg svn
+if [ "$COVERAGE" = true ]; then
+ check_dependencies $coverage kcov git hg svn
+else
+ echo "COVERAGE not set to 'true' [skipping coverage]"
+fi
# Clean the environment by removing Spack from the path and getting rid of
# the spack shell function
@@ -43,6 +47,7 @@ fi
# Run the test scripts for their output (these will print nicely)
zsh "$QA_DIR/setup-env-test.sh"
+zsh "$QA_DIR/completion-test.sh"
dash "$QA_DIR/setup-env-test.sh"
# Run fish tests
diff --git a/share/spack/qa/run-flake8-tests b/share/spack/qa/run-style-tests
index d6077fceb8..23d756a3bc 100755
--- a/share/spack/qa/run-flake8-tests
+++ b/share/spack/qa/run-style-tests
@@ -1,6 +1,6 @@
#!/bin/bash -e
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,10 +15,10 @@
# run-flake8-tests
#
. "$(dirname $0)/setup.sh"
-check_dependencies flake8
+check_dependencies flake8 mypy
# verify that the code style is correct
-spack flake8
+spack style
# verify that the license headers are present
spack license verify
diff --git a/share/spack/qa/run-unit-tests b/share/spack/qa/run-unit-tests
index ec8aaf76b9..8384edee0c 100755
--- a/share/spack/qa/run-unit-tests
+++ b/share/spack/qa/run-unit-tests
@@ -1,6 +1,6 @@
#!/bin/bash -e
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,9 +37,14 @@ bin/spack -h
bin/spack help -a
# Profile and print top 20 lines for a simple call to spack spec
-spack -p --lines 20 spec mpileaks%gcc ^elfutils@0.170
+spack -p --lines 20 spec mpileaks%gcc ^dyninst@10.0.0 ^elfutils@0.170
#-----------------------------------------------------------
# Run unit tests with code coverage
#-----------------------------------------------------------
+if [[ "$ONLY_PACKAGES" == "true" ]]; then
+ echo "ONLY PACKAGE RECIPES CHANGED [skipping slow unit tests]"
+ export PYTEST_ADDOPTS='-k "package_sanity" -m "not maybeslow"'
+fi
+
$coverage_run $(which spack) unit-test -x --verbose
diff --git a/share/spack/qa/setup-env-test.csh b/share/spack/qa/setup-env-test.csh
index 02dda30bca..b49f531942 100755
--- a/share/spack/qa/setup-env-test.csh
+++ b/share/spack/qa/setup-env-test.csh
@@ -1,6 +1,6 @@
#!/bin/csh
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/qa/setup-env-test.fish b/share/spack/qa/setup-env-test.fish
index 964d876fe9..c0738515d1 100755
--- a/share/spack/qa/setup-env-test.fish
+++ b/share/spack/qa/setup-env-test.fish
@@ -1,6 +1,6 @@
#!/usr/bin/env fish
#
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/qa/setup-env-test.sh b/share/spack/qa/setup-env-test.sh
index da4fb9657d..bef94dfe1f 100755
--- a/share/spack/qa/setup-env-test.sh
+++ b/share/spack/qa/setup-env-test.sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -109,7 +109,6 @@ succeeds spack -m load b
fails spack -m load -l
# test a variable MacOS clears and one it doesn't for recursive loads
contains "export LD_LIBRARY_PATH=$(spack -m location -i a)/lib:$(spack -m location -i b)/lib" spack -m load --sh a
-contains "export LIBRARY_PATH=$(spack -m location -i a)/lib:$(spack -m location -i b)/lib" spack -m load --sh a
succeeds spack -m load --only dependencies a
succeeds spack -m load --only package a
fails spack -m load d
diff --git a/share/spack/qa/setup.sh b/share/spack/qa/setup.sh
index e614bae909..b15d3a4021 100755
--- a/share/spack/qa/setup.sh
+++ b/share/spack/qa/setup.sh
@@ -1,6 +1,6 @@
#!/bin/bash -e
#
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -66,6 +66,10 @@ check_dependencies() {
spack_package=py-flake8
pip_package=flake8
;;
+ mypy)
+ spack_package=py-mypy
+ pip_package=mypy
+ ;;
dot)
spack_package=graphviz
;;
diff --git a/share/spack/qa/test-framework.sh b/share/spack/qa/test-framework.sh
index 14b58bbecf..4df37cd906 100755
--- a/share/spack/qa/test-framework.sh
+++ b/share/spack/qa/test-framework.sh
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/share/spack/setup-env.csh b/share/spack/setup-env.csh
index b70036456d..4ac0503947 100755
--- a/share/spack/setup-env.csh
+++ b/share/spack/setup-env.csh
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -58,6 +58,18 @@ alias spack 'set _sp_args = (\!*); source $_spack_share_dir/csh/spack.c
alias spacktivate 'spack env activate'
alias _spack_pathadd 'set _pa_args = (\!*) && source $_spack_share_dir/csh/pathadd.csh'
+# Identify and lock the python interpreter
+if (! $?SPACK_PYTHON) then
+ setenv SPACK_PYTHON ""
+endif
+foreach cmd ("$SPACK_PYTHON" python3 python python2)
+ command -v "$cmd" >& /dev/null
+ if ($status == 0) then
+ setenv SPACK_PYTHON `command -v "$cmd"`
+ break
+ endif
+end
+
# Set variables needed by this script
_spack_pathadd PATH "$SPACK_ROOT/bin"
eval `spack --print-shell-vars csh`
diff --git a/share/spack/setup-env.fish b/share/spack/setup-env.fish
index b74eae34d6..7bbc8f8485 100755
--- a/share/spack/setup-env.fish
+++ b/share/spack/setup-env.fish
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -253,7 +253,7 @@ function match_flag -d "checks all combinations of flags ocurring inside of a st
set -l _a (string sub -s 2 (string trim "x$argv[1]"))
set -l _b (string sub -s 2 (string trim "x$argv[2]"))
- if test -z "$_a" || test -z "$_b"
+ if test -z "$_a"; or test -z "$_b"
return 0
end
@@ -668,6 +668,19 @@ set -l sp_source_file (status -f) # name of current file
#
+# Identify and lock the python interpreter
+#
+for cmd in "$SPACK_PYTHON" python3 python python2
+ set -l _sp_python (command -v "$cmd")
+ if test $status -eq 0
+ set -x SPACK_PYTHON $_sp_python
+ break
+ end
+end
+
+
+
+#
# Find root directory and add bin to path.
#
set -l sp_share_dir (realpath (dirname $sp_source_file))
diff --git a/share/spack/setup-env.sh b/share/spack/setup-env.sh
index 5761d16362..a64e371f0c 100755
--- a/share/spack/setup-env.sh
+++ b/share/spack/setup-env.sh
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -303,12 +303,12 @@ _spack_pathadd PATH "${_sp_prefix%/}/bin"
# Check whether a function of the given name is defined
#
_spack_fn_exists() {
- LANG= type $1 2>&1 | grep -q 'function'
+ LANG= type $1 2>&1 | grep -q 'function'
}
need_module="no"
if ! _spack_fn_exists use && ! _spack_fn_exists module; then
- need_module="yes"
+ need_module="yes"
fi;
# Define the spack shell function with some informative no-ops, so when users
@@ -326,6 +326,14 @@ if [ "$_sp_shell" = bash ]; then
export -f _spack_shell_wrapper
fi
+# Identify and lock the python interpreter
+for cmd in "${SPACK_PYTHON:-}" python3 python python2; do
+ if command -v > /dev/null "$cmd"; then
+ export SPACK_PYTHON="$(command -v "$cmd")"
+ break
+ fi
+done
+
#
# make available environment-modules
#
@@ -371,7 +379,7 @@ _sp_multi_pathadd MODULEPATH "$_sp_tcl_roots"
# Add programmable tab completion for Bash
#
-if [ "$_sp_shell" = bash ]; then
+if test "$_sp_shell" = bash || test -n "${ZSH_VERSION:-}"; then
source $_sp_share_dir/spack-completion.bash
fi
diff --git a/share/spack/setup-tutorial-env.sh b/share/spack/setup-tutorial-env.sh
index 1f46f15c2d..16c34ecd43 100755
--- a/share/spack/setup-tutorial-env.sh
+++ b/share/spack/setup-tutorial-env.sh
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -95,16 +95,16 @@ INSTANCEID=$(curl http://169.254.169.254/latest/meta-data//instance-id)
# Get the ID of the Amazon EBS volume associated with the instance.
VOLUMEID=$(aws ec2 describe-instances \
- --instance-id $INSTANCEID \
- --query "Reservations[0].Instances[0].BlockDeviceMappings[0].Ebs.VolumeId" \
- --output text)
+ --instance-id $INSTANCEID \
+ --query "Reservations[0].Instances[0].BlockDeviceMappings[0].Ebs.VolumeId" \
+ --output text)
# Resize the EBS volume.
aws ec2 modify-volume --volume-id $VOLUMEID --size $SIZE
# Wait for the resize to finish.
while [ \
- "$(aws ec2 describe-volumes-modifications \
+ "$(aws ec2 describe-volumes-modifications \
--volume-id $VOLUMEID \
--filters Name=modification-state,Values="optimizing","completed" \
--query "length(VolumesModifications)"\
diff --git a/share/spack/spack-completion.bash b/share/spack/spack-completion.bash
index 5cf32c0cab..6fb681afe3 100755
--- a/share/spack/spack-completion.bash
+++ b/share/spack/spack-completion.bash
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,6 +37,17 @@
#
# See `man bash` for more details.
+if test -n "${ZSH_VERSION:-}" ; then
+ if [[ "$(emulate)" = zsh ]] ; then
+ # ensure base completion support is enabled, ignore insecure directories
+ autoload -U +X compinit && compinit -i
+ # ensure bash compatible completion support is enabled
+ autoload -U +X bashcompinit && bashcompinit
+ emulate sh -c "source '$0:A'"
+ return # stop interpreting file
+ fi
+fi
+
# Bash programmable completion for Spack
_bash_completion_spack() {
# In all following examples, let the cursor be denoted by brackets, i.e. []
@@ -44,7 +55,7 @@ _bash_completion_spack() {
# For our purposes, flags should not affect tab completion. For instance,
# `spack install []` and `spack -d install --jobs 8 []` should both give the same
# possible completions. Therefore, we need to ignore any flags in COMP_WORDS.
- local COMP_WORDS_NO_FLAGS=()
+ local -a COMP_WORDS_NO_FLAGS
local index=0
while [[ "$index" -lt "$COMP_CWORD" ]]
do
@@ -117,7 +128,9 @@ _bash_completion_spack() {
#_test_vars >> temp
# Make sure function exists before calling it
- if [[ "$(type -t $subfunction)" == "function" ]]
+ local rgx #this dance is necessary to cover bash and zsh regex
+ rgx="$subfunction.*function.* "
+ if [[ "$(type $subfunction 2>&1)" =~ $rgx ]]
then
$subfunction
COMPREPLY=($(compgen -W "$SPACK_COMPREPLY" -- "$cur"))
@@ -318,9 +331,9 @@ _spacktivate() {
_spack() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -H --all-help --color -C --config-scope -d --debug --timestamp --pdb -e --env -D --env-dir -E --no-env --use-env-repo -k --insecure -l --enable-locks -L --disable-locks -m --mock -p --profile --sorted-profile --lines -v --verbose --stacktrace -V --version --print-shell-vars"
+ SPACK_COMPREPLY="-h --help -H --all-help --color -c --config -C --config-scope -d --debug --timestamp --pdb -e --env -D --env-dir -E --no-env --use-env-repo -k --insecure -l --enable-locks -L --disable-locks -m --mock -p --profile --sorted-profile --lines -v --verbose --stacktrace -V --version --print-shell-vars"
else
- SPACK_COMPREPLY="activate add arch blame build-env buildcache cd checksum ci clean clone commands compiler compilers concretize config containerize create deactivate debug dependencies dependents deprecate dev-build develop docs edit env extensions external fetch find flake8 gc gpg graph help info install license list load location log-parse maintainers mark mirror module patch pkg providers pydoc python reindex remove rm repo resource restage setup solve spec stage test test-env tutorial undevelop uninstall unit-test unload url verify versions view"
+ SPACK_COMPREPLY="activate add analyze arch blame build-env buildcache cd checksum ci clean clone commands compiler compilers concretize config containerize create deactivate debug dependencies dependents deprecate dev-build develop docs edit env extensions external fetch find flake8 gc gpg graph help info install license list load location log-parse maintainers mark mirror module patch pkg providers pydoc python reindex remove rm repo resource restage solve spec stage style test test-env tutorial undevelop uninstall unit-test unload url verify versions view"
fi
}
@@ -342,6 +355,28 @@ _spack_add() {
fi
}
+_spack_analyze() {
+ if $list_options
+ then
+ SPACK_COMPREPLY="-h --help --monitor --monitor-no-auth --monitor-tags --monitor-keep-going --monitor-host --monitor-prefix"
+ else
+ SPACK_COMPREPLY="list-analyzers run"
+ fi
+}
+
+_spack_analyze_list_analyzers() {
+ SPACK_COMPREPLY="-h --help"
+}
+
+_spack_analyze_run() {
+ if $list_options
+ then
+ SPACK_COMPREPLY="-h --help --overwrite -p --path -a --analyzers"
+ else
+ _all_packages
+ fi
+}
+
_spack_arch() {
SPACK_COMPREPLY="-h --help --known-targets -p --platform -o --operating-system -t --target -f --frontend -b --backend"
}
@@ -460,18 +495,22 @@ _spack_ci() {
then
SPACK_COMPREPLY="-h --help"
else
- SPACK_COMPREPLY="generate rebuild"
+ SPACK_COMPREPLY="generate rebuild rebuild-index"
fi
}
_spack_ci_generate() {
- SPACK_COMPREPLY="-h --help --output-file --copy-to --optimize --dependencies"
+ SPACK_COMPREPLY="-h --help --output-file --copy-to --optimize --dependencies --prune-dag --no-prune-dag --check-index-only"
}
_spack_ci_rebuild() {
SPACK_COMPREPLY="-h --help"
}
+_spack_ci_rebuild_index() {
+ SPACK_COMPREPLY="-h --help"
+}
+
_spack_clean() {
if $list_options
then
@@ -562,7 +601,7 @@ _spack_compilers() {
}
_spack_concretize() {
- SPACK_COMPREPLY="-h --help -f --force"
+ SPACK_COMPREPLY="-h --help -f --force --test"
}
_spack_config() {
@@ -570,7 +609,7 @@ _spack_config() {
then
SPACK_COMPREPLY="-h --help --scope"
else
- SPACK_COMPREPLY="get blame edit list add remove rm update revert"
+ SPACK_COMPREPLY="get blame edit list add prefer-upstream remove rm update revert"
fi
}
@@ -614,6 +653,10 @@ _spack_config_add() {
fi
}
+_spack_config_prefer_upstream() {
+ SPACK_COMPREPLY="-h --help --local"
+}
+
_spack_config_remove() {
if $list_options
then
@@ -719,7 +762,7 @@ _spack_deprecate() {
_spack_dev_build() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -j --jobs -d --source-path -i --ignore-dependencies -n --no-checksum --keep-prefix --skip-patch -q --quiet --drop-in --test -b --before -u --until --clean --dirty"
+ SPACK_COMPREPLY="-h --help -j --jobs -d --source-path -i --ignore-dependencies -n --no-checksum --deprecated --keep-prefix --skip-patch -q --quiet --drop-in --test -b --before -u --until --clean --dirty"
else
_all_packages
fi
@@ -772,7 +815,7 @@ _spack_env_deactivate() {
_spack_env_create() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -d --dir --without-view --with-view"
+ SPACK_COMPREPLY="-h --help -d --dir --keep-relative --without-view --with-view"
else
_environments
fi
@@ -869,7 +912,7 @@ _spack_external() {
_spack_external_find() {
if $list_options
then
- SPACK_COMPREPLY="-h --help --not-buildable --scope"
+ SPACK_COMPREPLY="-h --help --not-buildable --scope -t --tag"
else
_all_packages
fi
@@ -882,7 +925,7 @@ _spack_external_list() {
_spack_fetch() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -n --no-checksum -m --missing -D --dependencies"
+ SPACK_COMPREPLY="-h --help -n --no-checksum --deprecated -m --missing -D --dependencies"
else
_all_packages
fi
@@ -891,7 +934,7 @@ _spack_fetch() {
_spack_find() {
if $list_options
then
- SPACK_COMPREPLY="-h --help --format --json -d --deps -p --paths --groups --no-groups -l --long -L --very-long -t --tags -c --show-concretized -f --show-flags --show-full-compiler -x --explicit -X --implicit -u --unknown -m --missing -v --variants --loaded -M --only-missing --deprecated --only-deprecated -N --namespace --start-date --end-date -b --bootstrap"
+ SPACK_COMPREPLY="-h --help --format --json -d --deps -p --paths --groups --no-groups -l --long -L --very-long -t --tag -c --show-concretized -f --show-flags --show-full-compiler -x --explicit -X --implicit -u --unknown -m --missing -v --variants --loaded -M --only-missing --deprecated --only-deprecated -N --namespace --start-date --end-date -b --bootstrap"
else
_installed_packages
fi
@@ -900,7 +943,7 @@ _spack_find() {
_spack_flake8() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -b --base -k --keep-temp -a --all -o --output -r --root-relative -U --no-untracked"
+ SPACK_COMPREPLY="-h --help -b --base -a --all -o --output -r --root-relative -U --no-untracked --no-flake8 --no-mypy --black"
else
SPACK_COMPREPLY=""
fi
@@ -1020,7 +1063,7 @@ _spack_info() {
_spack_install() {
if $list_options
then
- SPACK_COMPREPLY="-h --help --only -u --until -j --jobs --overwrite --fail-fast --keep-prefix --keep-stage --dont-restage --use-cache --no-cache --cache-only --no-check-signature --require-full-hash-match --show-log-on-error --source -n --no-checksum -v --verbose --fake --only-concrete -f --file --clean --dirty --test --run-tests --log-format --log-file --help-cdash --cdash-upload-url --cdash-build --cdash-site --cdash-track --cdash-buildstamp -y --yes-to-all"
+ SPACK_COMPREPLY="-h --help --only -u --until -j --jobs --overwrite --fail-fast --keep-prefix --keep-stage --dont-restage --use-cache --no-cache --cache-only --monitor --monitor-no-auth --monitor-tags --monitor-keep-going --monitor-host --monitor-prefix --include-build-deps --no-check-signature --require-full-hash-match --show-log-on-error --source -n --no-checksum --deprecated -v --verbose --fake --only-concrete --no-add -f --file --clean --dirty --test --run-tests --log-format --log-file --help-cdash --cdash-upload-url --cdash-build --cdash-site --cdash-track --cdash-buildstamp -y --yes-to-all"
else
_all_packages
fi
@@ -1029,9 +1072,9 @@ _spack_install() {
_spack_license() {
if $list_options
then
- SPACK_COMPREPLY="-h --help"
+ SPACK_COMPREPLY="-h --help --root"
else
- SPACK_COMPREPLY="list-files verify"
+ SPACK_COMPREPLY="list-files verify update-copyright-year"
fi
}
@@ -1040,13 +1083,17 @@ _spack_license_list_files() {
}
_spack_license_verify() {
- SPACK_COMPREPLY="-h --help --root"
+ SPACK_COMPREPLY="-h --help"
+}
+
+_spack_license_update_copyright_year() {
+ SPACK_COMPREPLY="-h --help"
}
_spack_list() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -d --search-description --format --update -v --virtuals -t --tags"
+ SPACK_COMPREPLY="-h --help -d --search-description --format --update -v --virtuals -t --tag"
else
_all_packages
fi
@@ -1100,9 +1147,9 @@ _spack_mark() {
_spack_mirror() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -n --no-checksum"
+ SPACK_COMPREPLY="-h --help -n --no-checksum --deprecated"
else
- SPACK_COMPREPLY="create add remove rm set-url list"
+ SPACK_COMPREPLY="create destroy add remove rm set-url list"
fi
}
@@ -1115,6 +1162,10 @@ _spack_mirror_create() {
fi
}
+_spack_mirror_destroy() {
+ SPACK_COMPREPLY="-h --help -m --mirror-name --mirror-url"
+}
+
_spack_mirror_add() {
if $list_options
then
@@ -1266,7 +1317,7 @@ _spack_module_tcl_loads() {
_spack_patch() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -n --no-checksum"
+ SPACK_COMPREPLY="-h --help -n --no-checksum --deprecated"
else
_all_packages
fi
@@ -1356,7 +1407,7 @@ _spack_pydoc() {
_spack_python() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -V --version -c -m"
+ SPACK_COMPREPLY="-h --help -V --version -c -i -m --path"
else
SPACK_COMPREPLY=""
fi
@@ -1464,39 +1515,39 @@ _spack_restage() {
fi
}
-_spack_setup() {
+_spack_solve() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -i --ignore-dependencies -n --no-checksum -v --verbose --clean --dirty"
+ SPACK_COMPREPLY="-h --help --show --models -l --long -L --very-long -I --install-status -y --yaml -j --json -c --cover -N --namespaces -t --types --timers --stats"
else
_all_packages
fi
}
-_spack_solve() {
+_spack_spec() {
if $list_options
then
- SPACK_COMPREPLY="-h --help --show --models -l --long -L --very-long -I --install-status -y --yaml -j --json -c --cover -N --namespaces -t --types --timers --stats"
+ SPACK_COMPREPLY="-h --help -l --long -L --very-long -I --install-status -y --yaml -j --json -c --cover -N --namespaces --hash-type -t --types"
else
_all_packages
fi
}
-_spack_spec() {
+_spack_stage() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -l --long -L --very-long -I --install-status -y --yaml -j --json -c --cover -N --namespaces -t --types"
+ SPACK_COMPREPLY="-h --help -n --no-checksum --deprecated -p --path"
else
_all_packages
fi
}
-_spack_stage() {
+_spack_style() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -n --no-checksum -p --path"
+ SPACK_COMPREPLY="-h --help -b --base -a --all -o --output -r --root-relative -U --no-untracked --no-flake8 --no-mypy --black"
else
- _all_packages
+ SPACK_COMPREPLY=""
fi
}
@@ -1519,7 +1570,7 @@ _spack_test_run() {
}
_spack_test_list() {
- SPACK_COMPREPLY="-h --help"
+ SPACK_COMPREPLY="-h --help -a --all"
}
_spack_test_find() {
@@ -1649,7 +1700,7 @@ _spack_verify() {
_spack_versions() {
if $list_options
then
- SPACK_COMPREPLY="-h --help -s --safe-only -c --concurrency"
+ SPACK_COMPREPLY="-h --help -s --safe --safe-only -r --remote -n --new -c --concurrency"
else
_all_packages
fi
diff --git a/share/spack/templates/misc/coconcretization.pyt b/share/spack/templates/misc/coconcretization.pyt
index 56f671cb73..fc0ec94cea 100644
--- a/share/spack/templates/misc/coconcretization.pyt
+++ b/share/spack/templates/misc/coconcretization.pyt
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/a/package.py b/var/spack/repos/builtin.mock/packages/a/package.py
index a603940b8b..37570ebf7a 100644
--- a/var/spack/repos/builtin.mock/packages/a/package.py
+++ b/var/spack/repos/builtin.mock/packages/a/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/archive-files/package.py b/var/spack/repos/builtin.mock/packages/archive-files/package.py
index a2c008efb4..12d11e514c 100644
--- a/var/spack/repos/builtin.mock/packages/archive-files/package.py
+++ b/var/spack/repos/builtin.mock/packages/archive-files/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/b/package.py b/var/spack/repos/builtin.mock/packages/b/package.py
index 8cf5674219..24190d4b7e 100644
--- a/var/spack/repos/builtin.mock/packages/b/package.py
+++ b/var/spack/repos/builtin.mock/packages/b/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,5 +13,6 @@ class B(Package):
url = "http://www.example.com/b-1.0.tar.gz"
version('1.0', '0123456789abcdef0123456789abcdef')
+ version('0.9', 'abcd456789abcdef0123456789abcdef')
depends_on('test-dependency', type='test')
diff --git a/var/spack/repos/builtin.mock/packages/boost/package.py b/var/spack/repos/builtin.mock/packages/boost/package.py
index 6d2cea3da9..b13380831f 100644
--- a/var/spack/repos/builtin.mock/packages/boost/package.py
+++ b/var/spack/repos/builtin.mock/packages/boost/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-a/package.py b/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-a/package.py
new file mode 100644
index 0000000000..11efe3efc0
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-a/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class BothLinkAndBuildDepA(Package):
+ """
+ Structure where c occurs as a build dep down the line and as a direct
+ link dep. Useful for testing situations where you copy the parent spec
+ just with link deps, and you want to make sure b is not part of that.
+ a <--build-- b <-link-- c
+ a <--link--- c
+ """
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ depends_on('both-link-and-build-dep-b', type='build')
+ depends_on('both-link-and-build-dep-c', type='link')
diff --git a/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-b/package.py b/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-b/package.py
new file mode 100644
index 0000000000..855ca1fc06
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-b/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class BothLinkAndBuildDepB(Package):
+ """
+ Structure where c occurs as a build dep down the line and as a direct
+ link dep. Useful for testing situations where you copy the parent spec
+ just with link deps, and you want to make sure b is not part of that.
+ a <--build-- b <-link-- c
+ a <--link--- c
+ """
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ depends_on('both-link-and-build-dep-c', type='link')
diff --git a/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-c/package.py b/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-c/package.py
new file mode 100644
index 0000000000..a1507e8f34
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/both-link-and-build-dep-c/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class BothLinkAndBuildDepC(Package):
+ """
+ Structure where c occurs as a build dep down the line and as a direct
+ link dep. Useful for testing situations where you copy the parent spec
+ just with link deps, and you want to make sure b is not part of that.
+ a <--build-- b <-link-- c
+ a <--link--- c
+ """
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
diff --git a/var/spack/repos/builtin.mock/packages/bowtie/package.py b/var/spack/repos/builtin.mock/packages/bowtie/package.py
index 3f8363c2a8..b817ee4914 100644
--- a/var/spack/repos/builtin.mock/packages/bowtie/package.py
+++ b/var/spack/repos/builtin.mock/packages/bowtie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/brillig/package.py b/var/spack/repos/builtin.mock/packages/brillig/package.py
new file mode 100644
index 0000000000..fc475c7117
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/brillig/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Brillig(Package):
+ """ Mock package to test the spack versions command."""
+
+ homepage = "https://www.example.com"
+ url = "https://github.com/vvolkl/brillig/archive/v2.0.0.tar.gz"
+
+ version('2.0.0', sha256='d4bb8f1737d5a7c0321e1675cceccb59dbcb66a94f3a9dd66a37f58bc6df7f15')
+ version('1.0.0', sha256='fcef53f45e82b881af9a6f0530b2732cdaf8c5c60e49b27671594ea658bfe315')
diff --git a/var/spack/repos/builtin.mock/packages/build-error/package.py b/var/spack/repos/builtin.mock/packages/build-error/package.py
index 04e1b147c6..5f0c937786 100644
--- a/var/spack/repos/builtin.mock/packages/build-error/package.py
+++ b/var/spack/repos/builtin.mock/packages/build-error/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/build-warnings/package.py b/var/spack/repos/builtin.mock/packages/build-warnings/package.py
index 02254ef801..f46452061f 100644
--- a/var/spack/repos/builtin.mock/packages/build-warnings/package.py
+++ b/var/spack/repos/builtin.mock/packages/build-warnings/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/c/package.py b/var/spack/repos/builtin.mock/packages/c/package.py
index 835f9d408e..c1904db11e 100644
--- a/var/spack/repos/builtin.mock/packages/c/package.py
+++ b/var/spack/repos/builtin.mock/packages/c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/callpath/package.py b/var/spack/repos/builtin.mock/packages/callpath/package.py
index 42bf277786..cf29e38dd9 100644
--- a/var/spack/repos/builtin.mock/packages/callpath/package.py
+++ b/var/spack/repos/builtin.mock/packages/callpath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/canfail/package.py b/var/spack/repos/builtin.mock/packages/canfail/package.py
index 79ded75a55..5234d47be1 100644
--- a/var/spack/repos/builtin.mock/packages/canfail/package.py
+++ b/var/spack/repos/builtin.mock/packages/canfail/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/cmake-client/package.py b/var/spack/repos/builtin.mock/packages/cmake-client/package.py
index 2350259b22..a22779f3fb 100644
--- a/var/spack/repos/builtin.mock/packages/cmake-client/package.py
+++ b/var/spack/repos/builtin.mock/packages/cmake-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/cmake/package.py b/var/spack/repos/builtin.mock/packages/cmake/package.py
index 4815032e66..1c7fd6014f 100644
--- a/var/spack/repos/builtin.mock/packages/cmake/package.py
+++ b/var/spack/repos/builtin.mock/packages/cmake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/conditional-constrained-dependencies/package.py b/var/spack/repos/builtin.mock/packages/conditional-constrained-dependencies/package.py
index 68fee3e9c7..b540c93885 100644
--- a/var/spack/repos/builtin.mock/packages/conditional-constrained-dependencies/package.py
+++ b/var/spack/repos/builtin.mock/packages/conditional-constrained-dependencies/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/conditional-provider/package.py b/var/spack/repos/builtin.mock/packages/conditional-provider/package.py
index e95f2ad54c..98c69edbfa 100644
--- a/var/spack/repos/builtin.mock/packages/conditional-provider/package.py
+++ b/var/spack/repos/builtin.mock/packages/conditional-provider/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/conditional-virtual-dependency/package.py b/var/spack/repos/builtin.mock/packages/conditional-virtual-dependency/package.py
index 8cfbfa0c1a..2970cb48f3 100644
--- a/var/spack/repos/builtin.mock/packages/conditional-virtual-dependency/package.py
+++ b/var/spack/repos/builtin.mock/packages/conditional-virtual-dependency/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/conditionally-patch-dependency/package.py b/var/spack/repos/builtin.mock/packages/conditionally-patch-dependency/package.py
index 7321d5bbd4..bda6afd463 100644
--- a/var/spack/repos/builtin.mock/packages/conditionally-patch-dependency/package.py
+++ b/var/spack/repos/builtin.mock/packages/conditionally-patch-dependency/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/configure-warning/package.py b/var/spack/repos/builtin.mock/packages/configure-warning/package.py
new file mode 100644
index 0000000000..4163366d17
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/configure-warning/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ConfigureWarning(AutotoolsPackage):
+ """This package prints output that looks like an error during configure, but
+ it actually installs successfully."""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/configure-warning-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ parallel = False
+
+ def autoreconf(self, spec, prefix):
+ pass
+
+ def configure(self, spec, prefix):
+ print('foo: No such file or directory')
+ return 0
+
+ def build(self, spec, prefix):
+ pass
+
+ def install(self, spec, prefix):
+ # sanity_check_prefix requires something in the install directory
+ # Test requires overriding the one provided by `AutotoolsPackage`
+ mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin.mock/packages/conflict-parent/package.py b/var/spack/repos/builtin.mock/packages/conflict-parent/package.py
index 8e8e148b88..0961f8df1b 100644
--- a/var/spack/repos/builtin.mock/packages/conflict-parent/package.py
+++ b/var/spack/repos/builtin.mock/packages/conflict-parent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/conflict/package.py b/var/spack/repos/builtin.mock/packages/conflict/package.py
index d7598aa84d..a4c81bc4d7 100644
--- a/var/spack/repos/builtin.mock/packages/conflict/package.py
+++ b/var/spack/repos/builtin.mock/packages/conflict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py b/var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py
index 3c0f120085..4b33d8b3fd 100644
--- a/var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py
+++ b/var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/corge/package.py b/var/spack/repos/builtin.mock/packages/corge/package.py
index 3bd8b34e47..dd62c103ee 100644
--- a/var/spack/repos/builtin.mock/packages/corge/package.py
+++ b/var/spack/repos/builtin.mock/packages/corge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/cumulative-vrange-bottom/package.py b/var/spack/repos/builtin.mock/packages/cumulative-vrange-bottom/package.py
index dbbec45497..b8390b4e41 100644
--- a/var/spack/repos/builtin.mock/packages/cumulative-vrange-bottom/package.py
+++ b/var/spack/repos/builtin.mock/packages/cumulative-vrange-bottom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/cumulative-vrange-middle/package.py b/var/spack/repos/builtin.mock/packages/cumulative-vrange-middle/package.py
index 7a6d6d4315..1458259442 100644
--- a/var/spack/repos/builtin.mock/packages/cumulative-vrange-middle/package.py
+++ b/var/spack/repos/builtin.mock/packages/cumulative-vrange-middle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/cumulative-vrange-root/package.py b/var/spack/repos/builtin.mock/packages/cumulative-vrange-root/package.py
index 8215ceb517..7aaa6f39a3 100644
--- a/var/spack/repos/builtin.mock/packages/cumulative-vrange-root/package.py
+++ b/var/spack/repos/builtin.mock/packages/cumulative-vrange-root/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,4 +13,4 @@ class CumulativeVrangeRoot(Package):
version('1.0', '4cb3ff35b2472aae70f542116d616e63')
depends_on('cumulative-vrange-middle')
- depends_on('cumulative-vrange-bottom@:2') \ No newline at end of file
+ depends_on('cumulative-vrange-bottom@:2')
diff --git a/var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid1/package.py b/var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid1/package.py
index 2246bf0fce..df0f644c17 100644
--- a/var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid1/package.py
+++ b/var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid2/package.py b/var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid2/package.py
index 9638872a11..15768302fb 100644
--- a/var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid2/package.py
+++ b/var/spack/repos/builtin.mock/packages/dep-diamond-patch-mid2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dep-diamond-patch-top/package.py b/var/spack/repos/builtin.mock/packages/dep-diamond-patch-top/package.py
index fb86fa3ad3..4ded7dcf7c 100644
--- a/var/spack/repos/builtin.mock/packages/dep-diamond-patch-top/package.py
+++ b/var/spack/repos/builtin.mock/packages/dep-diamond-patch-top/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop-root/package.py b/var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop-root/package.py
index 00162ee200..7680738d48 100644
--- a/var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop-root/package.py
+++ b/var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop-root/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop/package.py b/var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop/package.py
index ecb11224b3..a35ad4d3fb 100644
--- a/var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop/package.py
+++ b/var/spack/repos/builtin.mock/packages/dep-with-variants-if-develop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dep-with-variants/package.py b/var/spack/repos/builtin.mock/packages/dep-with-variants/package.py
index d1b08cd5df..ae8b809079 100644
--- a/var/spack/repos/builtin.mock/packages/dep-with-variants/package.py
+++ b/var/spack/repos/builtin.mock/packages/dep-with-variants/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/depb/package.py b/var/spack/repos/builtin.mock/packages/depb/package.py
index 4af71848d3..d17a3b8a75 100644
--- a/var/spack/repos/builtin.mock/packages/depb/package.py
+++ b/var/spack/repos/builtin.mock/packages/depb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dependency-install/package.py b/var/spack/repos/builtin.mock/packages/dependency-install/package.py
index 37cb3edd61..35f627c92f 100644
--- a/var/spack/repos/builtin.mock/packages/dependency-install/package.py
+++ b/var/spack/repos/builtin.mock/packages/dependency-install/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dependent-install/package.py b/var/spack/repos/builtin.mock/packages/dependent-install/package.py
index 84b6331e78..c1859b5314 100644
--- a/var/spack/repos/builtin.mock/packages/dependent-install/package.py
+++ b/var/spack/repos/builtin.mock/packages/dependent-install/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dependent-of-dev-build/package.py b/var/spack/repos/builtin.mock/packages/dependent-of-dev-build/package.py
index 9079fa766a..9b86790a78 100644
--- a/var/spack/repos/builtin.mock/packages/dependent-of-dev-build/package.py
+++ b/var/spack/repos/builtin.mock/packages/dependent-of-dev-build/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/depends-on-run-env/package.py b/var/spack/repos/builtin.mock/packages/depends-on-run-env/package.py
new file mode 100644
index 0000000000..c85a249e9a
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/depends-on-run-env/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class DependsOnRunEnv(Package):
+ """This package has a runtime dependency on another package which needs
+ to perform shell modifications to run.
+ """
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/a-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ depends_on('modifies-run-env', type=('run',))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin.mock/packages/deprecated-versions/package.py b/var/spack/repos/builtin.mock/packages/deprecated-versions/package.py
new file mode 100644
index 0000000000..6dfdfbc49c
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/deprecated-versions/package.py
@@ -0,0 +1,12 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+class DeprecatedVersions(Package):
+ """Package with the most recent version deprecated"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/c-1.0.tar.gz"
+
+ version('1.1.0', '0123456789abcdef0123456789abcdef', deprecated=True)
+ version('1.0.0', '0123456789abcdef0123456789abcdef')
diff --git a/var/spack/repos/builtin.mock/packages/dev-build-test-dependent/package.py b/var/spack/repos/builtin.mock/packages/dev-build-test-dependent/package.py
index e6a5b8351f..973bc22153 100644
--- a/var/spack/repos/builtin.mock/packages/dev-build-test-dependent/package.py
+++ b/var/spack/repos/builtin.mock/packages/dev-build-test-dependent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dev-build-test-install/package.py b/var/spack/repos/builtin.mock/packages/dev-build-test-install/package.py
index a2c979691f..b72b090855 100644
--- a/var/spack/repos/builtin.mock/packages/dev-build-test-install/package.py
+++ b/var/spack/repos/builtin.mock/packages/dev-build-test-install/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/develop-test/package.py b/var/spack/repos/builtin.mock/packages/develop-test/package.py
index 5c8820756d..10472baadd 100644
--- a/var/spack/repos/builtin.mock/packages/develop-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/develop-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/develop-test2/package.py b/var/spack/repos/builtin.mock/packages/develop-test2/package.py
index b3a808206d..b555662ccb 100644
--- a/var/spack/repos/builtin.mock/packages/develop-test2/package.py
+++ b/var/spack/repos/builtin.mock/packages/develop-test2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/direct-mpich/package.py b/var/spack/repos/builtin.mock/packages/direct-mpich/package.py
index 940ecde224..658b2d03f2 100644
--- a/var/spack/repos/builtin.mock/packages/direct-mpich/package.py
+++ b/var/spack/repos/builtin.mock/packages/direct-mpich/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py b/var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py
index 4ad109a272..23f4cda0ad 100644
--- a/var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py
+++ b/var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py b/var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py
index 9e3710c210..7e2d7cfa00 100644
--- a/var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py
+++ b/var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py b/var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py
index 4fd5fa733c..c1265700b9 100644
--- a/var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py
+++ b/var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dt-diamond/package.py b/var/spack/repos/builtin.mock/packages/dt-diamond/package.py
index 90afdd2400..3cafc7f447 100644
--- a/var/spack/repos/builtin.mock/packages/dt-diamond/package.py
+++ b/var/spack/repos/builtin.mock/packages/dt-diamond/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtbuild1/package.py b/var/spack/repos/builtin.mock/packages/dtbuild1/package.py
index f1921ad43f..3f4cffc917 100644
--- a/var/spack/repos/builtin.mock/packages/dtbuild1/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtbuild1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtbuild2/package.py b/var/spack/repos/builtin.mock/packages/dtbuild2/package.py
index cf783ccd9b..5d3ce11d38 100644
--- a/var/spack/repos/builtin.mock/packages/dtbuild2/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtbuild2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtbuild3/package.py b/var/spack/repos/builtin.mock/packages/dtbuild3/package.py
index 1b8f89a2da..c56d26e4b0 100644
--- a/var/spack/repos/builtin.mock/packages/dtbuild3/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtbuild3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtlink1/package.py b/var/spack/repos/builtin.mock/packages/dtlink1/package.py
index 725d3b2061..30a73bdbad 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink1/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtlink2/package.py b/var/spack/repos/builtin.mock/packages/dtlink2/package.py
index b4d871a841..a97be80d83 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink2/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtlink3/package.py b/var/spack/repos/builtin.mock/packages/dtlink3/package.py
index 732b68f867..9b6cdf5cdb 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink3/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtlink4/package.py b/var/spack/repos/builtin.mock/packages/dtlink4/package.py
index d7ac8115ad..ac3ea6ec35 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink4/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtlink5/package.py b/var/spack/repos/builtin.mock/packages/dtlink5/package.py
index faf429bfc1..491de82fab 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink5/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtrun1/package.py b/var/spack/repos/builtin.mock/packages/dtrun1/package.py
index 617d9f3b8a..d4bd5e1056 100644
--- a/var/spack/repos/builtin.mock/packages/dtrun1/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtrun1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtrun2/package.py b/var/spack/repos/builtin.mock/packages/dtrun2/package.py
index 1ba63a2822..4f383ecef1 100644
--- a/var/spack/repos/builtin.mock/packages/dtrun2/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtrun2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtrun3/package.py b/var/spack/repos/builtin.mock/packages/dtrun3/package.py
index c1caea1dde..da26455360 100644
--- a/var/spack/repos/builtin.mock/packages/dtrun3/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtrun3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dttop/package.py b/var/spack/repos/builtin.mock/packages/dttop/package.py
index 120e70e40c..22458206f1 100644
--- a/var/spack/repos/builtin.mock/packages/dttop/package.py
+++ b/var/spack/repos/builtin.mock/packages/dttop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dtuse/package.py b/var/spack/repos/builtin.mock/packages/dtuse/package.py
index 0a5836d0f8..223abf412d 100644
--- a/var/spack/repos/builtin.mock/packages/dtuse/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtuse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/dyninst/package.py b/var/spack/repos/builtin.mock/packages/dyninst/package.py
index 2cf84f94ab..ebaa2afe81 100644
--- a/var/spack/repos/builtin.mock/packages/dyninst/package.py
+++ b/var/spack/repos/builtin.mock/packages/dyninst/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/e/package.py b/var/spack/repos/builtin.mock/packages/e/package.py
index d52db11abe..15aa8fcf83 100644
--- a/var/spack/repos/builtin.mock/packages/e/package.py
+++ b/var/spack/repos/builtin.mock/packages/e/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/ecp-viz-sdk/package.py b/var/spack/repos/builtin.mock/packages/ecp-viz-sdk/package.py
index 76e2718c6f..88d3e8a2a7 100644
--- a/var/spack/repos/builtin.mock/packages/ecp-viz-sdk/package.py
+++ b/var/spack/repos/builtin.mock/packages/ecp-viz-sdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/extendee/package.py b/var/spack/repos/builtin.mock/packages/extendee/package.py
index 0a17848806..edb2c8dd77 100644
--- a/var/spack/repos/builtin.mock/packages/extendee/package.py
+++ b/var/spack/repos/builtin.mock/packages/extendee/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/extension1/package.py b/var/spack/repos/builtin.mock/packages/extension1/package.py
index 73847753cc..5910fa6c22 100644
--- a/var/spack/repos/builtin.mock/packages/extension1/package.py
+++ b/var/spack/repos/builtin.mock/packages/extension1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/extension2/package.py b/var/spack/repos/builtin.mock/packages/extension2/package.py
index 29f3c9423e..95998523b1 100644
--- a/var/spack/repos/builtin.mock/packages/extension2/package.py
+++ b/var/spack/repos/builtin.mock/packages/extension2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/external-buildable-with-variant/package.py b/var/spack/repos/builtin.mock/packages/external-buildable-with-variant/package.py
index 06245d6f69..b62fb062bf 100644
--- a/var/spack/repos/builtin.mock/packages/external-buildable-with-variant/package.py
+++ b/var/spack/repos/builtin.mock/packages/external-buildable-with-variant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/external-common-gdbm/package.py b/var/spack/repos/builtin.mock/packages/external-common-gdbm/package.py
new file mode 100644
index 0000000000..0d7d1b602a
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/external-common-gdbm/package.py
@@ -0,0 +1,13 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ExternalCommonGdbm(Package):
+ homepage = "http://www.gnu.org.ua/software/gdbm/gdbm.html"
+ url = "https://ftpmirror.gnu.org/gdbm/gdbm-1.18.1.tar.gz"
+
+ version('1.18.1', 'be78e48cdfc1a7ad90efff146dce6cfe')
diff --git a/var/spack/repos/builtin.mock/packages/external-common-openssl/package.py b/var/spack/repos/builtin.mock/packages/external-common-openssl/package.py
new file mode 100644
index 0000000000..e719fa20fc
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/external-common-openssl/package.py
@@ -0,0 +1,14 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ExternalCommonOpenssl(Package):
+ homepage = "http://www.openssl.org"
+ url = "http://www.openssl.org/source/openssl-1.1.1i.tar.gz"
+
+ version('1.1.1i', 'be78e48cdfc1a7ad90efff146dce6cfe')
+ depends_on('external-common-perl')
diff --git a/var/spack/repos/builtin.mock/packages/external-common-perl/package.py b/var/spack/repos/builtin.mock/packages/external-common-perl/package.py
new file mode 100644
index 0000000000..a0a702cda0
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/external-common-perl/package.py
@@ -0,0 +1,14 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ExternalCommonPerl(Package):
+ homepage = "http://www.perl.org"
+ url = "http://www.cpan.org/src/5.0/perl-5.32.0.tar.gz"
+
+ version('5.32.0', 'be78e48cdfc1a7ad90efff146dce6cfe')
+ depends_on('external-common-gdbm')
diff --git a/var/spack/repos/builtin.mock/packages/external-common-python/package.py b/var/spack/repos/builtin.mock/packages/external-common-python/package.py
new file mode 100644
index 0000000000..900f375d0d
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/external-common-python/package.py
@@ -0,0 +1,15 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ExternalCommonPython(Package):
+ homepage = "http://www.python.org"
+ url = "http://www.python.org/ftp/python/3.8.7/Python-3.8.7.tgz"
+
+ version('3.8.7', 'be78e48cdfc1a7ad90efff146dce6cfe')
+ depends_on('external-common-openssl')
+ depends_on('external-common-gdbm')
diff --git a/var/spack/repos/builtin.mock/packages/externalmodule/package.py b/var/spack/repos/builtin.mock/packages/externalmodule/package.py
index 675edbc23d..be20d00097 100644
--- a/var/spack/repos/builtin.mock/packages/externalmodule/package.py
+++ b/var/spack/repos/builtin.mock/packages/externalmodule/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/externalprereq/package.py b/var/spack/repos/builtin.mock/packages/externalprereq/package.py
index 595bc8b3b7..07fb361c0c 100644
--- a/var/spack/repos/builtin.mock/packages/externalprereq/package.py
+++ b/var/spack/repos/builtin.mock/packages/externalprereq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/externaltest/package.py b/var/spack/repos/builtin.mock/packages/externaltest/package.py
index f76863a37b..2c3a3131ac 100644
--- a/var/spack/repos/builtin.mock/packages/externaltest/package.py
+++ b/var/spack/repos/builtin.mock/packages/externaltest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/externaltool/package.py b/var/spack/repos/builtin.mock/packages/externaltool/package.py
index 114ae2d4a9..26b7e6473c 100644
--- a/var/spack/repos/builtin.mock/packages/externaltool/package.py
+++ b/var/spack/repos/builtin.mock/packages/externaltool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/externalvirtual/package.py b/var/spack/repos/builtin.mock/packages/externalvirtual/package.py
index aace40767d..6194c42e58 100644
--- a/var/spack/repos/builtin.mock/packages/externalvirtual/package.py
+++ b/var/spack/repos/builtin.mock/packages/externalvirtual/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/failing-build/package.py b/var/spack/repos/builtin.mock/packages/failing-build/package.py
index e95795dcf0..c8ffbf6610 100644
--- a/var/spack/repos/builtin.mock/packages/failing-build/package.py
+++ b/var/spack/repos/builtin.mock/packages/failing-build/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/fake/package.py b/var/spack/repos/builtin.mock/packages/fake/package.py
index 16ff3c6dd6..83ce64e3e5 100644
--- a/var/spack/repos/builtin.mock/packages/fake/package.py
+++ b/var/spack/repos/builtin.mock/packages/fake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/fetch-options/package.py b/var/spack/repos/builtin.mock/packages/fetch-options/package.py
index 1a31a535e1..3c327010a3 100644
--- a/var/spack/repos/builtin.mock/packages/fetch-options/package.py
+++ b/var/spack/repos/builtin.mock/packages/fetch-options/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/fftw/package.py b/var/spack/repos/builtin.mock/packages/fftw/package.py
index 9adcf1ea0a..e77f8412b3 100644
--- a/var/spack/repos/builtin.mock/packages/fftw/package.py
+++ b/var/spack/repos/builtin.mock/packages/fftw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/find-externals1/package.py b/var/spack/repos/builtin.mock/packages/find-externals1/package.py
index 9f5f94aaab..21294adf4d 100644
--- a/var/spack/repos/builtin.mock/packages/find-externals1/package.py
+++ b/var/spack/repos/builtin.mock/packages/find-externals1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/flake8/package.py b/var/spack/repos/builtin.mock/packages/flake8/package.py
index c548ca69b2..3132feaee5 100644
--- a/var/spack/repos/builtin.mock/packages/flake8/package.py
+++ b/var/spack/repos/builtin.mock/packages/flake8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/flatten-deps/package.py b/var/spack/repos/builtin.mock/packages/flatten-deps/package.py
index a272dfc53c..117a91680b 100644
--- a/var/spack/repos/builtin.mock/packages/flatten-deps/package.py
+++ b/var/spack/repos/builtin.mock/packages/flatten-deps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/garply/package.py b/var/spack/repos/builtin.mock/packages/garply/package.py
index 289e172c91..9fa13262a7 100644
--- a/var/spack/repos/builtin.mock/packages/garply/package.py
+++ b/var/spack/repos/builtin.mock/packages/garply/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/gcc/package.py b/var/spack/repos/builtin.mock/packages/gcc/package.py
index 7826e1b5cb..a76967c993 100644
--- a/var/spack/repos/builtin.mock/packages/gcc/package.py
+++ b/var/spack/repos/builtin.mock/packages/gcc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/git-svn-top-level/package.py b/var/spack/repos/builtin.mock/packages/git-svn-top-level/package.py
index e9acff3c6d..d249352fe0 100644
--- a/var/spack/repos/builtin.mock/packages/git-svn-top-level/package.py
+++ b/var/spack/repos/builtin.mock/packages/git-svn-top-level/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/git-test/package.py b/var/spack/repos/builtin.mock/packages/git-test/package.py
index 8430966282..da05c42442 100644
--- a/var/spack/repos/builtin.mock/packages/git-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/git-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/git-top-level/package.py b/var/spack/repos/builtin.mock/packages/git-top-level/package.py
index ba80263224..e971c1bb93 100644
--- a/var/spack/repos/builtin.mock/packages/git-top-level/package.py
+++ b/var/spack/repos/builtin.mock/packages/git-top-level/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/git-url-svn-top-level/package.py b/var/spack/repos/builtin.mock/packages/git-url-svn-top-level/package.py
index b998c0f014..3e39389a34 100644
--- a/var/spack/repos/builtin.mock/packages/git-url-svn-top-level/package.py
+++ b/var/spack/repos/builtin.mock/packages/git-url-svn-top-level/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/git-url-top-level/package.py b/var/spack/repos/builtin.mock/packages/git-url-top-level/package.py
index d93ead7bee..e51cbe5160 100644
--- a/var/spack/repos/builtin.mock/packages/git-url-top-level/package.py
+++ b/var/spack/repos/builtin.mock/packages/git-url-top-level/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/hash-test1/package.py b/var/spack/repos/builtin.mock/packages/hash-test1/package.py
index c46f2339ba..cf289101a1 100644
--- a/var/spack/repos/builtin.mock/packages/hash-test1/package.py
+++ b/var/spack/repos/builtin.mock/packages/hash-test1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/hash-test2/package.py b/var/spack/repos/builtin.mock/packages/hash-test2/package.py
index 2358cd66e2..86c2e8bfa0 100644
--- a/var/spack/repos/builtin.mock/packages/hash-test2/package.py
+++ b/var/spack/repos/builtin.mock/packages/hash-test2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/hash-test3/package.py b/var/spack/repos/builtin.mock/packages/hash-test3/package.py
index e943bd46c7..b20778098f 100644
--- a/var/spack/repos/builtin.mock/packages/hash-test3/package.py
+++ b/var/spack/repos/builtin.mock/packages/hash-test3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/hash-test4/package.py b/var/spack/repos/builtin.mock/packages/hash-test4/package.py
index 4b7f4d40c0..9dbc95f746 100644
--- a/var/spack/repos/builtin.mock/packages/hash-test4/package.py
+++ b/var/spack/repos/builtin.mock/packages/hash-test4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/hdf5/package.py b/var/spack/repos/builtin.mock/packages/hdf5/package.py
index 765a2993b8..6f4d2d1528 100644
--- a/var/spack/repos/builtin.mock/packages/hdf5/package.py
+++ b/var/spack/repos/builtin.mock/packages/hdf5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/hg-test/package.py b/var/spack/repos/builtin.mock/packages/hg-test/package.py
index 67970d4272..21219d9ce6 100644
--- a/var/spack/repos/builtin.mock/packages/hg-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/hg-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/hg-top-level/package.py b/var/spack/repos/builtin.mock/packages/hg-top-level/package.py
index 0f23972592..66d9db91e7 100644
--- a/var/spack/repos/builtin.mock/packages/hg-top-level/package.py
+++ b/var/spack/repos/builtin.mock/packages/hg-top-level/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/hypre/package.py b/var/spack/repos/builtin.mock/packages/hypre/package.py
index bf48afd971..0780fabc97 100644
--- a/var/spack/repos/builtin.mock/packages/hypre/package.py
+++ b/var/spack/repos/builtin.mock/packages/hypre/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/impossible-concretization/package.py b/var/spack/repos/builtin.mock/packages/impossible-concretization/package.py
index bb8ad02b49..bf665087f2 100644
--- a/var/spack/repos/builtin.mock/packages/impossible-concretization/package.py
+++ b/var/spack/repos/builtin.mock/packages/impossible-concretization/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/indirect-mpich/package.py b/var/spack/repos/builtin.mock/packages/indirect-mpich/package.py
index 34bf4c64a0..32f6d79a37 100644
--- a/var/spack/repos/builtin.mock/packages/indirect-mpich/package.py
+++ b/var/spack/repos/builtin.mock/packages/indirect-mpich/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/libdwarf/package.py b/var/spack/repos/builtin.mock/packages/libdwarf/package.py
index 737635a1a5..8714b141b6 100644
--- a/var/spack/repos/builtin.mock/packages/libdwarf/package.py
+++ b/var/spack/repos/builtin.mock/packages/libdwarf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/libelf/package.py b/var/spack/repos/builtin.mock/packages/libelf/package.py
index 6605628965..8625991e5a 100644
--- a/var/spack/repos/builtin.mock/packages/libelf/package.py
+++ b/var/spack/repos/builtin.mock/packages/libelf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/libtool-deletion/package.py b/var/spack/repos/builtin.mock/packages/libtool-deletion/package.py
index 6ca8ce03d8..e70daa7daf 100644
--- a/var/spack/repos/builtin.mock/packages/libtool-deletion/package.py
+++ b/var/spack/repos/builtin.mock/packages/libtool-deletion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/maintainers-1/package.py b/var/spack/repos/builtin.mock/packages/maintainers-1/package.py
index 4c223548dd..51ee91de21 100644
--- a/var/spack/repos/builtin.mock/packages/maintainers-1/package.py
+++ b/var/spack/repos/builtin.mock/packages/maintainers-1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/maintainers-2/package.py b/var/spack/repos/builtin.mock/packages/maintainers-2/package.py
index 8121461858..bd94d8df68 100644
--- a/var/spack/repos/builtin.mock/packages/maintainers-2/package.py
+++ b/var/spack/repos/builtin.mock/packages/maintainers-2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-gnu-broken/package.py b/var/spack/repos/builtin.mock/packages/mirror-gnu-broken/package.py
index d55f57f114..b3a5db11a5 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-gnu-broken/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-gnu-broken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-gnu/package.py b/var/spack/repos/builtin.mock/packages/mirror-gnu/package.py
index fe94998e8c..0d391aab9b 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-gnu/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-gnu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-sourceforge-broken/package.py b/var/spack/repos/builtin.mock/packages/mirror-sourceforge-broken/package.py
index be5d6aac16..4a4093539d 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-sourceforge-broken/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-sourceforge-broken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-sourceforge/package.py b/var/spack/repos/builtin.mock/packages/mirror-sourceforge/package.py
index 6740292576..0997f525ef 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-sourceforge/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-sourceforge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/mirror-gnu-broken/package.py b/var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/mirror-gnu-broken/package.py
index d55f57f114..b3a5db11a5 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/mirror-gnu-broken/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/mirror-gnu-broken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/package.py b/var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/package.py
index 82c3d99819..2353ce998f 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-sourceware-broken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-sourceware/package.py b/var/spack/repos/builtin.mock/packages/mirror-sourceware/package.py
index 31c4ad2ed7..9c6d34b80b 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-sourceware/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-sourceware/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-xorg-broken/package.py b/var/spack/repos/builtin.mock/packages/mirror-xorg-broken/package.py
index 42e9a2be2a..b4f993b232 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-xorg-broken/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-xorg-broken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mirror-xorg/package.py b/var/spack/repos/builtin.mock/packages/mirror-xorg/package.py
index 513eb90780..bc44e234fd 100644
--- a/var/spack/repos/builtin.mock/packages/mirror-xorg/package.py
+++ b/var/spack/repos/builtin.mock/packages/mirror-xorg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/missing-dependency/package.py b/var/spack/repos/builtin.mock/packages/missing-dependency/package.py
index edad3f0b86..131e15b911 100644
--- a/var/spack/repos/builtin.mock/packages/missing-dependency/package.py
+++ b/var/spack/repos/builtin.mock/packages/missing-dependency/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mixedversions/package.py b/var/spack/repos/builtin.mock/packages/mixedversions/package.py
index e0c61ed089..0198731c53 100644
--- a/var/spack/repos/builtin.mock/packages/mixedversions/package.py
+++ b/var/spack/repos/builtin.mock/packages/mixedversions/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/modifies-run-env/package.py b/var/spack/repos/builtin.mock/packages/modifies-run-env/package.py
new file mode 100644
index 0000000000..401750875c
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/modifies-run-env/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ModifiesRunEnv(Package):
+ """Dependency package which needs to make shell modifications to run"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/a-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ def setup_run_environment(self, env):
+ env.set('DEPENDENCY_ENV_VAR', '1')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin.mock/packages/module-path-separator/package.py b/var/spack/repos/builtin.mock/packages/module-path-separator/package.py
index 3b4e2ca9d0..c20499754c 100644
--- a/var/spack/repos/builtin.mock/packages/module-path-separator/package.py
+++ b/var/spack/repos/builtin.mock/packages/module-path-separator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mpich/package.py b/var/spack/repos/builtin.mock/packages/mpich/package.py
index c84a2cd30d..bcf70d7014 100644
--- a/var/spack/repos/builtin.mock/packages/mpich/package.py
+++ b/var/spack/repos/builtin.mock/packages/mpich/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mpich2/package.py b/var/spack/repos/builtin.mock/packages/mpich2/package.py
index 8094c64acb..4a4081e002 100644
--- a/var/spack/repos/builtin.mock/packages/mpich2/package.py
+++ b/var/spack/repos/builtin.mock/packages/mpich2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/mpileaks/package.py b/var/spack/repos/builtin.mock/packages/mpileaks/package.py
index 2e2e92d585..db148b3c1f 100644
--- a/var/spack/repos/builtin.mock/packages/mpileaks/package.py
+++ b/var/spack/repos/builtin.mock/packages/mpileaks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py b/var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py
index 69995b7520..41c7df5578 100644
--- a/var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py
+++ b/var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/multimethod-base/package.py b/var/spack/repos/builtin.mock/packages/multimethod-base/package.py
index 142741f2d2..0887774970 100644
--- a/var/spack/repos/builtin.mock/packages/multimethod-base/package.py
+++ b/var/spack/repos/builtin.mock/packages/multimethod-base/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/multimethod-diamond-parent/package.py b/var/spack/repos/builtin.mock/packages/multimethod-diamond-parent/package.py
index cdde98165d..4246dec98d 100644
--- a/var/spack/repos/builtin.mock/packages/multimethod-diamond-parent/package.py
+++ b/var/spack/repos/builtin.mock/packages/multimethod-diamond-parent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/multimethod-diamond/package.py b/var/spack/repos/builtin.mock/packages/multimethod-diamond/package.py
index 7f29e28411..dc52eb5b19 100644
--- a/var/spack/repos/builtin.mock/packages/multimethod-diamond/package.py
+++ b/var/spack/repos/builtin.mock/packages/multimethod-diamond/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py b/var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py
index 563e19dcb7..41807a2710 100644
--- a/var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py
+++ b/var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/multimethod/package.py b/var/spack/repos/builtin.mock/packages/multimethod/package.py
index 2f0f869de0..1611a79874 100644
--- a/var/spack/repos/builtin.mock/packages/multimethod/package.py
+++ b/var/spack/repos/builtin.mock/packages/multimethod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/multimodule-inheritance/package.py b/var/spack/repos/builtin.mock/packages/multimodule-inheritance/package.py
index 4343b03fe5..aff94a366e 100644
--- a/var/spack/repos/builtin.mock/packages/multimodule-inheritance/package.py
+++ b/var/spack/repos/builtin.mock/packages/multimodule-inheritance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/multivalue-variant/package.py b/var/spack/repos/builtin.mock/packages/multivalue-variant/package.py
index 22d0ea1d97..34663434cb 100644
--- a/var/spack/repos/builtin.mock/packages/multivalue-variant/package.py
+++ b/var/spack/repos/builtin.mock/packages/multivalue-variant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,6 +29,11 @@ class MultivalueVariant(Package):
multi=False
)
+ variant(
+ 'libs', default='shared', values=('shared', 'static'), multi=True,
+ description='Type of libraries to install'
+ )
+
depends_on('mpi')
depends_on('callpath')
depends_on('a')
diff --git a/var/spack/repos/builtin.mock/packages/needs-relocation/package.py b/var/spack/repos/builtin.mock/packages/needs-relocation/package.py
index 681a8a53ed..3382178c48 100644
--- a/var/spack/repos/builtin.mock/packages/needs-relocation/package.py
+++ b/var/spack/repos/builtin.mock/packages/needs-relocation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/netlib-blas/package.py b/var/spack/repos/builtin.mock/packages/netlib-blas/package.py
index 4a759b6145..a7706740ca 100644
--- a/var/spack/repos/builtin.mock/packages/netlib-blas/package.py
+++ b/var/spack/repos/builtin.mock/packages/netlib-blas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/netlib-lapack/package.py b/var/spack/repos/builtin.mock/packages/netlib-lapack/package.py
index b9c69bf66c..d10ddfbe8c 100644
--- a/var/spack/repos/builtin.mock/packages/netlib-lapack/package.py
+++ b/var/spack/repos/builtin.mock/packages/netlib-lapack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/nosource-install/package.py b/var/spack/repos/builtin.mock/packages/nosource-install/package.py
index dc4e2755db..ad2d98f1a0 100644
--- a/var/spack/repos/builtin.mock/packages/nosource-install/package.py
+++ b/var/spack/repos/builtin.mock/packages/nosource-install/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/nosource/package.py b/var/spack/repos/builtin.mock/packages/nosource/package.py
index cfc38fd5ff..f7cd3e5839 100644
--- a/var/spack/repos/builtin.mock/packages/nosource/package.py
+++ b/var/spack/repos/builtin.mock/packages/nosource/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/noversion-bundle/package.py b/var/spack/repos/builtin.mock/packages/noversion-bundle/package.py
index 57c26e1f25..70a73b312c 100644
--- a/var/spack/repos/builtin.mock/packages/noversion-bundle/package.py
+++ b/var/spack/repos/builtin.mock/packages/noversion-bundle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/noversion/package.py b/var/spack/repos/builtin.mock/packages/noversion/package.py
index e22519fcdf..bda52c5ce2 100644
--- a/var/spack/repos/builtin.mock/packages/noversion/package.py
+++ b/var/spack/repos/builtin.mock/packages/noversion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/old-sbang/package.py b/var/spack/repos/builtin.mock/packages/old-sbang/package.py
index 3308f91611..305f693c5a 100644
--- a/var/spack/repos/builtin.mock/packages/old-sbang/package.py
+++ b/var/spack/repos/builtin.mock/packages/old-sbang/package.py
@@ -2,10 +2,11 @@
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-
from spack import *
+import spack.paths
+import spack.store
+
class OldSbang(Package):
"""Toy package for testing the old sbang replacement problem"""
@@ -22,12 +23,12 @@ class OldSbang(Package):
#!/usr/bin/env python
{1}
- '''.format(spack.paths.prefix, prefix.bin)
+'''.format(spack.paths.prefix, prefix.bin)
sbang_style_2 = '''#!/bin/sh {0}/bin/sbang
#!/usr/bin/env python
{1}
- '''.format(spack.store.unpadded_root, prefix.bin)
+'''.format(spack.store.unpadded_root, prefix.bin)
with open('%s/sbang-style-1.sh' % self.prefix.bin, 'w') as f:
f.write(sbang_style_1)
diff --git a/var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py b/var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py
index 997049af56..9b3e2f0e1f 100644
--- a/var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py
+++ b/var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/openblas/package.py b/var/spack/repos/builtin.mock/packages/openblas/package.py
index d97e4091a2..8db616e61d 100644
--- a/var/spack/repos/builtin.mock/packages/openblas/package.py
+++ b/var/spack/repos/builtin.mock/packages/openblas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py b/var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py
index 64437ae337..26c0c21635 100644
--- a/var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py
+++ b/var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py b/var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py
index 1261a117a9..75b76685c5 100644
--- a/var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py
+++ b/var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/optional-dep-test/package.py b/var/spack/repos/builtin.mock/packages/optional-dep-test/package.py
index 9a39e1a624..1d45139c55 100644
--- a/var/spack/repos/builtin.mock/packages/optional-dep-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/optional-dep-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/othervirtual/package.py b/var/spack/repos/builtin.mock/packages/othervirtual/package.py
index c2c091af5c..6ff6822848 100644
--- a/var/spack/repos/builtin.mock/packages/othervirtual/package.py
+++ b/var/spack/repos/builtin.mock/packages/othervirtual/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/override-context-templates/package.py b/var/spack/repos/builtin.mock/packages/override-context-templates/package.py
index 08f4d08828..9d8e0bbbc4 100644
--- a/var/spack/repos/builtin.mock/packages/override-context-templates/package.py
+++ b/var/spack/repos/builtin.mock/packages/override-context-templates/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/override-module-templates/package.py b/var/spack/repos/builtin.mock/packages/override-module-templates/package.py
index 2ed7d0e1e0..3f552a7cb6 100644
--- a/var/spack/repos/builtin.mock/packages/override-module-templates/package.py
+++ b/var/spack/repos/builtin.mock/packages/override-module-templates/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py b/var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py
index cd5c54ad5f..737565e5db 100644
--- a/var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py
+++ b/var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/patch-inheritance/package.py b/var/spack/repos/builtin.mock/packages/patch-inheritance/package.py
index 3f7486b878..8cddcf9be1 100644
--- a/var/spack/repos/builtin.mock/packages/patch-inheritance/package.py
+++ b/var/spack/repos/builtin.mock/packages/patch-inheritance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py
index 1495910fb9..193a5ed84c 100644
--- a/var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py
+++ b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/patch/package.py b/var/spack/repos/builtin.mock/packages/patch/package.py
index d0283cc33c..06357e28f8 100644
--- a/var/spack/repos/builtin.mock/packages/patch/package.py
+++ b/var/spack/repos/builtin.mock/packages/patch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/patchelf/package.py b/var/spack/repos/builtin.mock/packages/patchelf/package.py
index 80221e10e8..7fd84d49db 100644
--- a/var/spack/repos/builtin.mock/packages/patchelf/package.py
+++ b/var/spack/repos/builtin.mock/packages/patchelf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/perl-extension/package.py b/var/spack/repos/builtin.mock/packages/perl-extension/package.py
index af60caefd4..48789632bf 100644
--- a/var/spack/repos/builtin.mock/packages/perl-extension/package.py
+++ b/var/spack/repos/builtin.mock/packages/perl-extension/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/perl/package.py b/var/spack/repos/builtin.mock/packages/perl/package.py
index 2f495c1a97..376ea976e2 100644
--- a/var/spack/repos/builtin.mock/packages/perl/package.py
+++ b/var/spack/repos/builtin.mock/packages/perl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/preferred-test/package.py b/var/spack/repos/builtin.mock/packages/preferred-test/package.py
index 55121c76a6..41ee58aeb6 100644
--- a/var/spack/repos/builtin.mock/packages/preferred-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/preferred-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/printing-package/package.py b/var/spack/repos/builtin.mock/packages/printing-package/package.py
index 096a49d211..f221123668 100644
--- a/var/spack/repos/builtin.mock/packages/printing-package/package.py
+++ b/var/spack/repos/builtin.mock/packages/printing-package/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/py-extension1/package.py b/var/spack/repos/builtin.mock/packages/py-extension1/package.py
index d596440b78..dce9187505 100644
--- a/var/spack/repos/builtin.mock/packages/py-extension1/package.py
+++ b/var/spack/repos/builtin.mock/packages/py-extension1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,9 @@ class PyExtension1(PythonPackage):
homepage = "http://www.example.com"
url = "http://www.example.com/extension1-1.0.tar.gz"
+ # Override settings in base class
+ maintainers = []
+
version('1.0', 'hash-extension1-1.0')
version('2.0', 'hash-extension1-2.0')
diff --git a/var/spack/repos/builtin.mock/packages/py-extension2/package.py b/var/spack/repos/builtin.mock/packages/py-extension2/package.py
index 08e5d07f37..ddf2036ba6 100644
--- a/var/spack/repos/builtin.mock/packages/py-extension2/package.py
+++ b/var/spack/repos/builtin.mock/packages/py-extension2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,9 @@ class PyExtension2(PythonPackage):
homepage = "http://www.example.com"
url = "http://www.example.com/extension2-1.0.tar.gz"
+ # Override settings in base class
+ maintainers = []
+
extends("python")
depends_on('py-extension1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin.mock/packages/py-extension3/package.py b/var/spack/repos/builtin.mock/packages/py-extension3/package.py
index 164aa00339..1c3da0fa2d 100644
--- a/var/spack/repos/builtin.mock/packages/py-extension3/package.py
+++ b/var/spack/repos/builtin.mock/packages/py-extension3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/python/package.py b/var/spack/repos/builtin.mock/packages/python/package.py
index e846572121..9bfaa79d46 100644
--- a/var/spack/repos/builtin.mock/packages/python/package.py
+++ b/var/spack/repos/builtin.mock/packages/python/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/quantum-espresso/package.py b/var/spack/repos/builtin.mock/packages/quantum-espresso/package.py
index 61287ab7c8..c61e1d1842 100644
--- a/var/spack/repos/builtin.mock/packages/quantum-espresso/package.py
+++ b/var/spack/repos/builtin.mock/packages/quantum-espresso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/quux/package.py b/var/spack/repos/builtin.mock/packages/quux/package.py
index 80508d3b55..7d122328cb 100644
--- a/var/spack/repos/builtin.mock/packages/quux/package.py
+++ b/var/spack/repos/builtin.mock/packages/quux/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/raiser/package.py b/var/spack/repos/builtin.mock/packages/raiser/package.py
index 5337d8b127..9fd15341bf 100644
--- a/var/spack/repos/builtin.mock/packages/raiser/package.py
+++ b/var/spack/repos/builtin.mock/packages/raiser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/requires-virtual/package.py b/var/spack/repos/builtin.mock/packages/requires-virtual/package.py
index 7c7428b258..00398c4caf 100644
--- a/var/spack/repos/builtin.mock/packages/requires-virtual/package.py
+++ b/var/spack/repos/builtin.mock/packages/requires-virtual/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/simple-inheritance/package.py b/var/spack/repos/builtin.mock/packages/simple-inheritance/package.py
index 8d65570899..68499245e2 100644
--- a/var/spack/repos/builtin.mock/packages/simple-inheritance/package.py
+++ b/var/spack/repos/builtin.mock/packages/simple-inheritance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent-type/package.py b/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent-type/package.py
index 8b42a82b8d..8cb60c8d8e 100644
--- a/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent-type/package.py
+++ b/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent-type/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py b/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py
index de14faa51f..dcdfb47d60 100644
--- a/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py
+++ b/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/singlevalue-variant/package.py b/var/spack/repos/builtin.mock/packages/singlevalue-variant/package.py
index fa6eca1527..26d05ac296 100644
--- a/var/spack/repos/builtin.mock/packages/singlevalue-variant/package.py
+++ b/var/spack/repos/builtin.mock/packages/singlevalue-variant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/splice-h/package.py b/var/spack/repos/builtin.mock/packages/splice-h/package.py
new file mode 100644
index 0000000000..79b91bc963
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/splice-h/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class SpliceH(AutotoolsPackage):
+ """Simple package with one optional dependency"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/splice-h-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ variant('foo', default=False, description='nope')
+ variant('bar', default=False, description='nope')
+ variant('baz', default=False, description='nope')
+
+ depends_on('splice-z')
+ depends_on('splice-z+foo', when='+foo')
diff --git a/var/spack/repos/builtin.mock/packages/splice-t/package.py b/var/spack/repos/builtin.mock/packages/splice-t/package.py
new file mode 100644
index 0000000000..ec27fd28b6
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/splice-t/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class SpliceT(AutotoolsPackage):
+ """Simple package with one optional dependency"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/splice-t-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ depends_on('splice-h')
+ depends_on('splice-z')
diff --git a/var/spack/repos/builtin.mock/packages/splice-z/package.py b/var/spack/repos/builtin.mock/packages/splice-z/package.py
new file mode 100644
index 0000000000..e28d359b66
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/splice-z/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class SpliceZ(AutotoolsPackage):
+ """Simple package with one optional dependency"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/splice-z-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ variant('foo', default=False, description='nope')
+ variant('bar', default=False, description='nope')
diff --git a/var/spack/repos/builtin.mock/packages/svn-test/package.py b/var/spack/repos/builtin.mock/packages/svn-test/package.py
index dec6d4a413..92fdf109c9 100644
--- a/var/spack/repos/builtin.mock/packages/svn-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/svn-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/svn-top-level/package.py b/var/spack/repos/builtin.mock/packages/svn-top-level/package.py
index 0da7f9656d..204beff171 100644
--- a/var/spack/repos/builtin.mock/packages/svn-top-level/package.py
+++ b/var/spack/repos/builtin.mock/packages/svn-top-level/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/test-dependency/package.py b/var/spack/repos/builtin.mock/packages/test-dependency/package.py
index 70302debd8..513c13aa41 100644
--- a/var/spack/repos/builtin.mock/packages/test-dependency/package.py
+++ b/var/spack/repos/builtin.mock/packages/test-dependency/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/test-error/package.py b/var/spack/repos/builtin.mock/packages/test-error/package.py
index ce36ee7ca3..b50dd1f43f 100644
--- a/var/spack/repos/builtin.mock/packages/test-error/package.py
+++ b/var/spack/repos/builtin.mock/packages/test-error/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/test-fail/package.py b/var/spack/repos/builtin.mock/packages/test-fail/package.py
index 6587ef2bb9..13e5b0608d 100644
--- a/var/spack/repos/builtin.mock/packages/test-fail/package.py
+++ b/var/spack/repos/builtin.mock/packages/test-fail/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/transitive-conditional-virtual-dependency/package.py b/var/spack/repos/builtin.mock/packages/transitive-conditional-virtual-dependency/package.py
index 9b1b66df7f..4710ffc1bb 100644
--- a/var/spack/repos/builtin.mock/packages/transitive-conditional-virtual-dependency/package.py
+++ b/var/spack/repos/builtin.mock/packages/transitive-conditional-virtual-dependency/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py b/var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py
index 180eddcd94..995a752b5b 100644
--- a/var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py
+++ b/var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/trivial-pkg-with-valid-hash/package.py b/var/spack/repos/builtin.mock/packages/trivial-pkg-with-valid-hash/package.py
index 52fd3d99a6..bc02ff6d73 100644
--- a/var/spack/repos/builtin.mock/packages/trivial-pkg-with-valid-hash/package.py
+++ b/var/spack/repos/builtin.mock/packages/trivial-pkg-with-valid-hash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/url-list-test/package.py b/var/spack/repos/builtin.mock/packages/url-list-test/package.py
index 02e1f4747f..f7c54a3c65 100644
--- a/var/spack/repos/builtin.mock/packages/url-list-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/url-list-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/url-only-override-with-gaps/package.py b/var/spack/repos/builtin.mock/packages/url-only-override-with-gaps/package.py
index 5ceaabdfd9..1b797ca3cd 100644
--- a/var/spack/repos/builtin.mock/packages/url-only-override-with-gaps/package.py
+++ b/var/spack/repos/builtin.mock/packages/url-only-override-with-gaps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/url-only-override/package.py b/var/spack/repos/builtin.mock/packages/url-only-override/package.py
index fdc1584116..9a3d01036f 100644
--- a/var/spack/repos/builtin.mock/packages/url-only-override/package.py
+++ b/var/spack/repos/builtin.mock/packages/url-only-override/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/url-test/package.py b/var/spack/repos/builtin.mock/packages/url-test/package.py
index 1deee5515d..53578d69dc 100644
--- a/var/spack/repos/builtin.mock/packages/url-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/url-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/url_override/package.py b/var/spack/repos/builtin.mock/packages/url_override/package.py
index 52eaf47d48..c68fd0edd0 100644
--- a/var/spack/repos/builtin.mock/packages/url_override/package.py
+++ b/var/spack/repos/builtin.mock/packages/url_override/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/v1-provider/package.py b/var/spack/repos/builtin.mock/packages/v1-provider/package.py
index 46b7a99ac9..e4d2fae88e 100644
--- a/var/spack/repos/builtin.mock/packages/v1-provider/package.py
+++ b/var/spack/repos/builtin.mock/packages/v1-provider/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-a/package.py b/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-a/package.py
index f2687d6043..4b0bb90e99 100644
--- a/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-a/package.py
+++ b/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-a/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-b/package.py b/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-b/package.py
index 7660a42a8e..4c0fceae18 100644
--- a/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-b/package.py
+++ b/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-b/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-root/package.py b/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-root/package.py
index c6ea84b8b2..f7d12261ba 100644
--- a/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-root/package.py
+++ b/var/spack/repos/builtin.mock/packages/variant-on-dependency-condition-root/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/vdefault-or-external-root/package.py b/var/spack/repos/builtin.mock/packages/vdefault-or-external-root/package.py
index 49011fc458..4413f74e60 100644
--- a/var/spack/repos/builtin.mock/packages/vdefault-or-external-root/package.py
+++ b/var/spack/repos/builtin.mock/packages/vdefault-or-external-root/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/vdefault-or-external/package.py b/var/spack/repos/builtin.mock/packages/vdefault-or-external/package.py
index 80c674917e..975bfd9d22 100644
--- a/var/spack/repos/builtin.mock/packages/vdefault-or-external/package.py
+++ b/var/spack/repos/builtin.mock/packages/vdefault-or-external/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/when-directives-false/package.py b/var/spack/repos/builtin.mock/packages/when-directives-false/package.py
index f701e753de..eec625997b 100644
--- a/var/spack/repos/builtin.mock/packages/when-directives-false/package.py
+++ b/var/spack/repos/builtin.mock/packages/when-directives-false/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/when-directives-true/package.py b/var/spack/repos/builtin.mock/packages/when-directives-true/package.py
index 6f8f7ed7c1..0003f7ed03 100644
--- a/var/spack/repos/builtin.mock/packages/when-directives-true/package.py
+++ b/var/spack/repos/builtin.mock/packages/when-directives-true/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin.mock/packages/zmpi/package.py b/var/spack/repos/builtin.mock/packages/zmpi/package.py
index c9caa9a20f..af3bee6ef3 100644
--- a/var/spack/repos/builtin.mock/packages/zmpi/package.py
+++ b/var/spack/repos/builtin.mock/packages/zmpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/3dtk/homebrew.patch b/var/spack/repos/builtin/packages/3dtk/homebrew.patch
new file mode 100644
index 0000000000..8a30009da0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/3dtk/homebrew.patch
@@ -0,0 +1,18 @@
+--- a/src/show/CMakeLists.txt 2021-01-14 16:08:27.000000000 -0600
++++ b/src/show/CMakeLists.txt 2021-01-14 20:42:24.000000000 -0600
+@@ -9,13 +9,8 @@
+ find_package(OpenGL REQUIRED)
+ find_package(GLUT REQUIRED)
+ add_definitions(-DWITH_OPENGL)
+- if(APPLE)
+- include_directories(/usr/local/Cellar/glui/2.37/)
+- set(SHOW_LIBS ${SHOW_LIBS} ${GLUT_LIBRARIES} ${OPENGL_LIBRARIES} /usr/local/Cellar/glui/2.37/lib/libglui.a CACHE INTERNAL "")
+- else()
+- include_directories(${PROJECT_SOURCE_DIR}/3rdparty/glui-2.36/include/)
+- set(SHOW_LIBS ${SHOW_LIBS} ${GLUT_LIBRARIES} ${OPENGL_LIBRARIES} glui CACHE INTERNAL "")
+- endif()
++ include_directories(${PROJECT_SOURCE_DIR}/3rdparty/glui-2.36/include/)
++ set(SHOW_LIBS ${SHOW_LIBS} ${GLUT_LIBRARIES} ${OPENGL_LIBRARIES} glui CACHE INTERNAL "")
+ if(WITH_GLEE)
+ message(STATUS "Using opengl extensions")
+ set(SHOW_LIBS ${SHOW_LIBS} glee CACHE INTERNAL "")
diff --git a/var/spack/repos/builtin/packages/3dtk/package.py b/var/spack/repos/builtin/packages/3dtk/package.py
new file mode 100644
index 0000000000..a205bde42c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/3dtk/package.py
@@ -0,0 +1,92 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class _3dtk(CMakePackage):
+ """The 3D Toolkit provides algorithms and methods to process 3D point
+ clouds.
+
+ It includes automatic high-accurate registration (6D simultaneous
+ localization and mapping, 6D SLAM) and other tools, e.g., a fast 3D viewer,
+ plane extraction software, etc. Several file formats for the point clouds
+ are natively supported, new formats can be implemented easily."""
+
+ homepage = "http://slam6d.sourceforge.net/"
+ # Repo seems to be in the process of switching to git:
+ # https://github.com/3DTK/3DTK
+
+ version('trunk', svn='https://svn.code.sf.net/p/slam6d/code/trunk', preferred=True)
+ version('1.2', svn='https://svn.code.sf.net/p/slam6d/code/branches/3dtk-release-1.2')
+
+ variant('cgal', default=False, description='Compile with CGAL support')
+ variant('opengl', default=True, description='Compile with OpenGL support')
+ variant('opencv', default=True, description='Compile with OpenCV support')
+ variant('compact_octree', default=False, description='Whether to use the compact octree display')
+ variant('cuda', default=False, description='Whether to build CUDA accelerated collision detection tools')
+ variant('openmp', default=False, description='Whether to use parallel processing capabilities of OPENMP')
+
+ conflicts('~opencv', when='platform=darwin')
+ conflicts('+compact_octree', when='~opengl')
+
+ generator = 'Ninja'
+
+ depends_on('cmake@3.5:', when='@trunk', type='build')
+ depends_on('cmake@2.6.1:2.999', when='@1.2', type='build')
+ depends_on('ninja', type='build')
+ depends_on('boost+serialization+graph+regex+filesystem+system+thread+date_time+program_options')
+ depends_on('suite-sparse')
+ depends_on('zlib')
+ depends_on('libpng')
+ depends_on('eigen')
+ depends_on('cgal', when='+cgal')
+ depends_on('gl', when='+opengl')
+ depends_on('glew', when='+opengl')
+ depends_on('freeglut', when='+opengl')
+ depends_on('opencv+calib3d+contrib+core+features2d+highgui+imgcodecs+imgproc+ml+videoio', when='+opencv')
+ # Because concretizer is broken
+ depends_on('opencv+flann', when='+opencv')
+ depends_on('cuda', when='+cuda')
+
+ # TODO: add Spack packages for these instead of using vendored copies
+ # depends_on('ann')
+ # depends_on('newmat')
+
+ patch('homebrew.patch', when='platform=darwin')
+
+ def setup_build_environment(self, env):
+ env.prepend_path('CPATH', self.spec['eigen'].prefix.include)
+
+ def cmake_args(self):
+ return [
+ self.define_from_variant('WITH_CGAL', 'cgal'),
+ self.define('WITH_GMP', False),
+ self.define('WITH_LIBZIP', False),
+ self.define_from_variant('WITH_OPENGL', 'opengl'),
+ self.define_from_variant('WITH_OPENCV', 'opencv'),
+ self.define('WITH_QT', False),
+ self.define('WITH_GLFW', False),
+ self.define('WITH_FTGL', False),
+ self.define('WITH_XMLRPC', False),
+ self.define('WITH_LIBCONFIG', False),
+ self.define('WITH_ROS', False),
+ self.define('WITH_PYTHON', False),
+ self.define('WITH_WXWIDGETS', False),
+ self.define_from_variant('WITH_COMPACT_OCTREE', 'compact_octree'),
+ self.define('WITH_GLEE', False),
+ self.define('WITH_LASLIB', False),
+ self.define('WITH_E57', False),
+ self.define('WITH_3DMOUSE', False),
+ self.define_from_variant('WITH_CUDA', 'cuda'),
+ self.define('WITH_RIVLIB', False),
+ self.define('WITH_MICROEPSILONLIB', False),
+ self.define_from_variant('WITH_OPENMP', 'openmp'),
+ self.define('WITH_METRICS', False),
+ self.define('WITH_ADDONS', False),
+ ]
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/3proxy/package.py b/var/spack/repos/builtin/packages/3proxy/package.py
index abad7756c1..41eadd5e18 100644
--- a/var/spack/repos/builtin/packages/3proxy/package.py
+++ b/var/spack/repos/builtin/packages/3proxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/abduco/package.py b/var/spack/repos/builtin/packages/abduco/package.py
index 0c75a1a0d5..cf548b7afc 100644
--- a/var/spack/repos/builtin/packages/abduco/package.py
+++ b/var/spack/repos/builtin/packages/abduco/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/abi-compliance-checker/package.py b/var/spack/repos/builtin/packages/abi-compliance-checker/package.py
index 6e6b919bb3..61daa12782 100644
--- a/var/spack/repos/builtin/packages/abi-compliance-checker/package.py
+++ b/var/spack/repos/builtin/packages/abi-compliance-checker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/abi-dumper/package.py b/var/spack/repos/builtin/packages/abi-dumper/package.py
index 73fbba2aa3..23d43e4062 100644
--- a/var/spack/repos/builtin/packages/abi-dumper/package.py
+++ b/var/spack/repos/builtin/packages/abi-dumper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/abinit/fix_for_fujitsu.patch b/var/spack/repos/builtin/packages/abinit/fix_for_fujitsu.patch
new file mode 100644
index 0000000000..bc179c7cd2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/abinit/fix_for_fujitsu.patch
@@ -0,0 +1,352 @@
+diff -uprN spack-src.org/configure spack-src/configure
+--- spack-src.org/configure 2021-03-11 13:52:52.000000000 +0900
++++ spack-src/configure 2021-03-11 14:14:36.000000000 +0900
+@@ -14183,7 +14183,10 @@ $as_echo "#define FC_OPEN64 1" >>confdef
+
+
+ fc_info_string=`${FC} -V 2>/dev/null | head -n 1`
+- abi_result=`echo "${fc_info_string}" | grep '^Fujitsu Fortran'`
++ if test "${fc_info_string}" = ""; then
++ fc_info_string=`${FC} -V 2>&1 | head -n 1`
++ fi
++ abi_result=`echo "${fc_info_string}" | grep 'Fujitsu Fortran'`
+ if test "${abi_result}" = ""; then
+ abi_result="no"
+ fc_info_string=""
+@@ -14194,9 +14197,17 @@ $as_echo "#define FC_OPEN64 1" >>confdef
+ $as_echo "#define FC_FUJITSU 1" >>confdefs.h
+
+ abi_fc_vendor="fujitsu"
+- abi_fc_version=`echo "${abi_result}" | sed -e 's/.*Driver //;s/ .*//'`
++ abi_fc_version=`echo "${abi_result}" | sed -e 's/.*Driver //'`
+ if test "${abi_fc_version}" = "${abi_result}"; then
+ abi_fc_version="unknown"
++ else
++ abi_fc_version=`echo "${abi_result}" | sed -e 's/.*Driver //;s/ .*//'`
++ fi
++ if test "${abi_fc_version}" = "unknown"; then
++ abi_fc_version=`echo "${abi_result}" | sed -e 's/.*Compiler //;s/ .*//'`
++ if test "${abi_fc_version}" = "${abi_result}"; then
++ abi_fc_version="unknown"
++ fi
+ fi
+ abi_result="yes"
+ fi
+@@ -14655,6 +14666,7 @@ $as_echo "$as_me:${as_lineno-$LINENO}: $
+ # gfortran 4.3 outputs lines setting COLLECT_GCC_OPTIONS, COMPILER_PATH,
+ # LIBRARY_PATH; skip all such settings.
+ ac_fc_v_output=`eval $ac_link 5>&1 2>&1 |
++ sed -r "s/(\-L)(\/[^ ]+)+(\/bin\/\.\.\/lib64\/nofjobj)//g" |
+ sed '/^Driving:/d; /^Configured with:/d;
+ '"/^[_$as_cr_Letters][_$as_cr_alnum]*=/d"`
+ $as_echo "$ac_fc_v_output" >&5
+@@ -16392,15 +16404,29 @@ $as_echo_n "checking which fc hints to a
+ ;;
+ fujitsu)
+ abi_fc_vendor_hnt="fujitsu"
+- abi_fc_version_hnt="default"
+ abi_sys_spec_hnt="default"
+- FCFLAGS_FIXEDFORM='-Fixed -X7'
+- FCFLAGS_FREEFORM='-Free -X9'
+- FCFLAGS_MODDIR='-M $(abinit_moddir)'
+- FCFLAGS_HINTS='-Am -Ee -Ep'
+- abi_fc_wrap='yes'
+- FCFLAGS_OPENMP='--openmp'
+- FCFLAGS_PIC='-K PIC'
++ case "${abi_fc_version}" in
++ 4.[0-9]*)
++ abi_fc_version_hnt="4.x"
++ FCFLAGS_FIXEDFORM='-Fixed -X7'
++ FCFLAGS_FREEFORM='-Free -X9'
++ FCFLAGS_MODDIR='-M $(abinit_moddir)'
++ FCFLAGS_HINTS=''
++ abi_fc_wrap='no'
++ FCFLAGS_OPENMP='-Kopenmp'
++ FCFLAGS_PIC='-K PIC'
++ ;;
++ *)
++ abi_fc_version_hnt="default"
++ FCFLAGS_FIXEDFORM='-Fixed -X7'
++ FCFLAGS_FREEFORM='-Free -X9'
++ FCFLAGS_MODDIR='-M $(abinit_moddir)'
++ FCFLAGS_HINTS='-Am -Ee -Ep'
++ abi_fc_wrap='yes'
++ FCFLAGS_OPENMP='--openmp'
++ FCFLAGS_PIC='-K PIC'
++ ;;
++ esac # [case: abi_fc_version, indent: 2, item: True]
+ ;;
+ pathscale)
+ abi_fc_vendor_hnt="pathscale"
+@@ -18085,22 +18111,43 @@ $as_echo_n "checking which fc optimizati
+ ;;
+ fujitsu)
+ abi_fc_vendor_opt="fujitsu"
+- abi_fc_version_opt="default"
+ abi_cpu_spec_opt="default"
+- case "${enable_optim}" in
+- aggressive)
+- enable_optim_opt="aggressive"
+- FCFLAGS_OPTIM="-Of -X9 -Ps -Wv,-md"
+- ;;
+- safe)
+- enable_optim_opt="safe"
+- FCFLAGS_OPTIM="-Of -X9 -Ps -Wv,-md"
++ case "${abi_fc_version}" in
++ 4.[0-9]*)
++ abi_fc_version_opt="4.x"
++ case "${enable_optim}" in
++ aggressive)
++ enable_optim_opt="aggressive"
++ FCFLAGS_OPTIM="-Kfast -Koptmsg=2 -Nlst=t"
++ ;;
++ safe)
++ enable_optim_opt="safe"
++ FCFLAGS_OPTIM="-O2 -Koptmsg=2 -Nlst=t"
++ ;;
++ standard)
++ enable_optim_opt="standard"
++ FCFLAGS_OPTIM="-O2 -Koptmsg=2 -Nlst=t"
++ ;;
++ esac # [case: enable_optim, indent: 4, item: True]
+ ;;
+- standard)
+- enable_optim_opt="standard"
+- FCFLAGS_OPTIM="-Of -X9 -Ps -Wv,-md"
++ *)
++ abi_fc_version_opt="default"
++ case "${enable_optim}" in
++ aggressive)
++ enable_optim_opt="aggressive"
++ FCFLAGS_OPTIM="-Of -X9 -Ps -Wv,-md"
++ ;;
++ safe)
++ enable_optim_opt="safe"
++ FCFLAGS_OPTIM="-Of -X9 -Ps -Wv,-md"
++ ;;
++ standard)
++ enable_optim_opt="standard"
++ FCFLAGS_OPTIM="-Of -X9 -Ps -Wv,-md"
++ ;;
++ esac # [case: enable_optim, indent: 4, item: True]
+ ;;
+- esac # [case: enable_optim, indent: 2, item: True]
++ esac # [case: abi_fc_version, indent: 2, item: True]
+ ;;
+ pathscale)
+ abi_fc_vendor_opt="pathscale"
+diff -uprN spack-src.org/src/43_wvl_wrappers/m_abi2big.F90 spack-src/src/43_wvl_wrappers/m_abi2big.F90
+--- spack-src.org/src/43_wvl_wrappers/m_abi2big.F90 2021-03-11 13:52:54.000000000 +0900
++++ spack-src/src/43_wvl_wrappers/m_abi2big.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -1333,10 +1333,10 @@ subroutine wvl_setngfft(me_wvl, mgfft, n
+
+ !Arguments ------------------------------------
+ !scalars
+- integer, intent(out) :: mgfft, nfft
++ integer, intent(inout) :: mgfft, nfft
+ integer, intent(in) :: n1i, n2i, n3i,n3d, nproc_wvl, me_wvl
+ !arrays
+- integer, intent(out) :: ngfft(18)
++ integer, intent(inout) :: ngfft(18)
+
+ !Local variables-------------------------------
+ !scalars
+diff -uprN spack-src.org/src/43_wvl_wrappers/m_wvl_denspot.F90 spack-src/src/43_wvl_wrappers/m_wvl_denspot.F90
+--- spack-src.org/src/43_wvl_wrappers/m_wvl_denspot.F90 2021-03-11 13:52:54.000000000 +0900
++++ spack-src/src/43_wvl_wrappers/m_wvl_denspot.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -96,7 +96,7 @@ subroutine wvl_denspot_set(den,gth_param
+ real(dp), intent(in) :: rprimd(3, 3)
+ real(dp), intent(in) :: wvl_frmult,wvl_crmult
+ real(dp), intent(inout) :: xred(3,natom)
+- type(wvl_denspot_type), intent(out) :: den
++ type(wvl_denspot_type), intent(inout) :: den
+ type(wvl_internal_type),intent(in) :: wvl
+ type(pseudopotential_gth_type),intent(in)::gth_params
+
+diff -uprN spack-src.org/src/43_wvl_wrappers/m_wvl_wfs.F90 spack-src/src/43_wvl_wrappers/m_wvl_wfs.F90
+--- spack-src.org/src/43_wvl_wrappers/m_wvl_wfs.F90 2021-03-11 13:52:54.000000000 +0900
++++ spack-src/src/43_wvl_wrappers/m_wvl_wfs.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -103,7 +103,7 @@ subroutine wvl_wfs_set(alphadiis, spinma
+ integer, intent(in) :: natom, nkpt, nsppol, nspinor, nband, nwfshist,me,nproc
+ real(dp), intent(in) :: spinmagntarget, wvl_crmult, wvl_frmult, alphadiis
+ type(pseudopotential_type),intent(in) :: psps
+- type(wvl_wf_type),intent(out) :: wfs
++ type(wvl_wf_type),intent(inout) :: wfs
+ type(wvl_internal_type), intent(in) :: wvl
+ !arrays
+ real(dp), intent(in) :: kpt(3,nkpt)
+diff -uprN spack-src.org/src/52_fft_mpi_noabirule/m_fftw3.F90 spack-src/src/52_fft_mpi_noabirule/m_fftw3.F90
+--- spack-src.org/src/52_fft_mpi_noabirule/m_fftw3.F90 2021-03-11 13:52:52.000000000 +0900
++++ spack-src/src/52_fft_mpi_noabirule/m_fftw3.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -4588,7 +4588,7 @@ subroutine fftw3_mpiback_wf(cplexwf,ndat
+ integer,intent(in) :: cplexwf,ndat,n1,n2,n3,nd1,nd2,nd3proc
+ integer,intent(in) :: max1,max2,max3,m1,m2,m3,md1,md2proc,md3,comm_fft
+ real(dp),intent(in) :: zf(2,md1,md3,md2proc,ndat)
+- real(dp),intent(out) :: zr(2,nd1,nd2,nd3proc,ndat)
++ real(dp),intent(inout) :: zr(2,nd1,nd2,nd3proc,ndat)
+
+ #ifdef HAVE_FFT_FFTW3
+ !Local variables-------------------------------
+@@ -4954,7 +4954,7 @@ subroutine fftw3_mpiforw_wf(cplexwf,ndat
+ integer,intent(in) :: max1,max2,max3,m1,m2,m3,md1,md2proc,md3,comm_fft
+ !arrays
+ real(dp),intent(inout) :: zr(2,nd1,nd2,nd3proc,ndat)
+- real(dp),intent(out) :: zf(2,md1,md3,md2proc,ndat)
++ real(dp),intent(inout) :: zf(2,md1,md3,md2proc,ndat)
+
+ !Local variables-------------------------------
+ !scalars
+@@ -5311,7 +5311,7 @@ subroutine fftw3_mpiback(cplex,ndat,n1,n
+ ! real space input
+ integer,intent(in) :: cplex,ndat,n1,n2,n3,nd1,nd2,nd3,nd1eff,nd2proc,nd3proc,option,comm_fft
+ real(dp),intent(in) :: zf(2,nd1,nd3,nd2proc,ndat)
+- real(dp),intent(out) :: zr(2,nd1eff,nd2,nd3proc,ndat)
++ real(dp),intent(inout) :: zr(2,nd1eff,nd2,nd3proc,ndat)
+
+ !Local variables-------------------------------
+ !scalaras
+@@ -5621,7 +5621,7 @@ subroutine fftw3_mpiforw(cplex,ndat,n1,n
+ integer,intent(in) :: ndat,n1,n2,n3,nd1,nd2,nd3,nd1eff,nd2proc,nd3proc,option
+ !arrays
+ real(dp),intent(in) :: zr(2,nd1eff,nd2,nd3proc,ndat)
+- real(dp),intent(out) :: zf(2,nd1,nd3,nd2proc,ndat)
++ real(dp),intent(inout) :: zf(2,nd1,nd3,nd2proc,ndat)
+
+ !Local variables-------------------------------
+ !scalars
+@@ -6839,7 +6839,7 @@ subroutine fftw3_mpiback_manywf(cplexwf,
+ integer,intent(in) :: cplexwf,ndat,n1,n2,n3,nd1,nd2,nd3proc
+ integer,intent(in) :: max1,max2,max3,m1,m2,m3,md1,md2proc,md3,comm_fft
+ real(dp),intent(in) :: zf(2,md1,md3,md2proc,ndat)
+- real(dp),intent(out) :: zr(2,nd1,nd2,nd3proc,ndat)
++ real(dp),intent(inout) :: zr(2,nd1,nd2,nd3proc,ndat)
+
+ #ifdef HAVE_FFT_FFTW3
+ !Local variables-------------------------------
+@@ -7202,7 +7202,7 @@ subroutine fftw3_mpiforw_manywf(cplexwf,
+ integer,intent(in) :: max1,max2,max3,m1,m2,m3,md1,md2proc,md3,comm_fft
+ !arrays
+ real(dp),intent(inout) :: zr(2,nd1,nd2,nd3proc,ndat)
+- real(dp),intent(out) :: zf(2,md1,md3,md2proc,ndat)
++ real(dp),intent(inout) :: zf(2,md1,md3,md2proc,ndat)
+
+ !Local variables-------------------------------
+ !scalars
+diff -uprN spack-src.org/src/62_poisson/m_psolver.F90 spack-src/src/62_poisson/m_psolver.F90
+--- spack-src.org/src/62_poisson/m_psolver.F90 2021-03-11 13:52:55.000000000 +0900
++++ spack-src/src/62_poisson/m_psolver.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -118,7 +118,7 @@ subroutine psolver_rhohxc(enhartr, enxc,
+ integer,intent(in) :: usexcnhat,usepaw,xclevel
+ real(dp),intent(in) :: rprimd(3,3)
+ real(dp), intent(in) :: xc_denpos
+- real(dp), intent(out) :: enxc, envxc, enhartr, vxcavg
++ real(dp), intent(inout) :: enxc, envxc, enhartr, vxcavg
+ type(mpi_type), intent(in) :: mpi_enreg
+ type(wvl_internal_type), intent(in) :: wvl
+ type(wvl_denspot_type), intent(inout) :: wvl_den
+@@ -128,8 +128,8 @@ subroutine psolver_rhohxc(enhartr, enxc,
+ real(dp),intent(in) :: xccc3d(n3xccc)
+ real(dp),intent(in) :: nhat(nfft,nspden*nhatdim)
+ real(dp),intent(inout) :: rhor(nfft, nspden)
+- real(dp),intent(out) :: vhartr(nfft)
+- real(dp),intent(out) :: vxc(nfft, nspden)
++ real(dp),intent(inout) :: vhartr(nfft)
++ real(dp),intent(inout) :: vxc(nfft, nspden)
+
+ !Local variables-------------------------------
+ #if defined HAVE_BIGDFT
+@@ -577,12 +577,12 @@ subroutine psolver_hartree(enhartr, hgri
+ !Arguments ------------------------------------
+ !scalars
+ integer, intent(in) :: nfft, nspden, icoulomb, usewvl, mpi_comm, me, nproc, nscforder
+- real(dp), intent(out) :: enhartr
++ real(dp), intent(inout) :: enhartr
+ !arrays
+ integer, intent(in) :: ngfft(3)
+ real(dp),intent(in) :: hgrid(3)
+ real(dp),intent(in) :: rhor(nfft,nspden)
+- real(dp),intent(out) :: vhartr(nfft)
++ real(dp),intent(inout) :: vhartr(nfft)
+
+ !Local variables-------------------------------
+ #if defined HAVE_BIGDFT
+diff -uprN spack-src.org/src/62_wvl_wfs/m_wvl_psi.F90 spack-src/src/62_wvl_wfs/m_wvl_psi.F90
+--- spack-src.org/src/62_wvl_wfs/m_wvl_psi.F90 2021-03-11 13:52:54.000000000 +0900
++++ spack-src/src/62_wvl_wfs/m_wvl_psi.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -248,16 +248,16 @@ subroutine wvl_psitohpsi(alphamix,eexctX
+ !scalars
+ integer, intent(in) :: me, nproc, itrp, iter, iscf, natom, nfft, nspden
+ real(dp), intent(in) :: alphamix
+- real(dp), intent(out) :: rpnrm
++ real(dp), intent(inout) :: rpnrm
+ logical, intent(in) :: scf
+ logical, intent(in) :: wvlbigdft
+ type(wvl_data), intent(inout) :: wvl
+ real(dp), intent(inout) :: eexctX,eSIC_DC,ehart,eexcu,vexcu, ekin_sum, epot_sum, eproj_sum
+- real(dp), dimension(6), intent(out) :: xcstr
++ real(dp), dimension(6), intent(inout) :: xcstr
+ real(dp), intent(inout) :: xcart(3, natom)
+ !arrays
+- real(dp),intent(out), optional :: vxc(nfft,nspden)
+- real(dp),intent(out), optional :: vtrial(nfft,nspden)
++ real(dp),intent(inout), optional :: vxc(nfft,nspden)
++ real(dp),intent(inout), optional :: vtrial(nfft,nspden)
+
+ !Local variables-------------------------------
+ !scalars
+@@ -482,7 +482,7 @@ subroutine wvl_tail_corrections(dtset, e
+
+ !Arguments ------------------------------------
+ !scalars
+- real(dp),intent(out) :: etotal
++ real(dp),intent(inout) :: etotal
+ type(MPI_type),intent(in) :: mpi_enreg
+ type(dataset_type),intent(in) :: dtset
+ type(energies_type),intent(inout) :: energies
+diff -uprN spack-src.org/src/67_common/m_mklocl_realspace.F90 spack-src/src/67_common/m_mklocl_realspace.F90
+--- spack-src.org/src/67_common/m_mklocl_realspace.F90 2021-03-11 13:52:53.000000000 +0900
++++ spack-src/src/67_common/m_mklocl_realspace.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -1703,7 +1703,7 @@ subroutine local_forces_wvl(iproc,natom,
+ !arrays
+ real(dp),intent(in) :: rxyz(3,natom)
+ real(dp),dimension(*),intent(in) :: rho,pot
+- real(dp),intent(out) :: floc(3,natom)
++ real(dp),intent(inout) :: floc(3,natom)
+
+ !Local variables -------------------------
+ #if defined HAVE_BIGDFT
+diff -uprN spack-src.org/src/67_common/mkcore_wvl.F90 spack-src/src/67_common/mkcore_wvl.F90
+--- spack-src.org/src/67_common/mkcore_wvl.F90 2021-03-11 13:52:53.000000000 +0900
++++ spack-src/src/67_common/mkcore_wvl.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -138,7 +138,7 @@ subroutine mkcore_wvl(atindx1,corstr,grx
+ integer,intent(in) :: atindx1(natom),nattyp(ntypat)
+ real(dp),intent(in) :: rprimd(3,3),xccc1d(n1xccc,6,ntypat),xcccrc(ntypat),xred(3,natom)
+ real(dp),intent(in),target :: vxc(nfft,nspden)
+- real(dp),intent(out) :: corstr(6),grxc(3,natom)
++ real(dp),intent(inout) :: corstr(6),grxc(3,natom)
+ real(dp),intent(inout) :: xccc3d(n3xccc)
+ type(pawrad_type),intent(in) :: pawrad(:)
+ type(pawtab_type),intent(in) :: pawtab(:)
+@@ -587,8 +587,8 @@ subroutine mkcore_wvl_old(atindx1,corstr
+ real(dp),intent(in) :: psppar(0:4,0:6,ntypat),rprimd(3,3)
+ real(dp),intent(in)::xred(3,natom)
+ real(dp),intent(in)::vxc(nfft,nspden)
+- real(dp),intent(out)::xccc3d(n3xccc)
+- real(dp),intent(out) :: corstr(6),dyfrx2(3,3,natom),grxc(3,natom)
++ real(dp),intent(inout)::xccc3d(n3xccc)
++ real(dp),intent(inout) :: corstr(6),dyfrx2(3,3,natom),grxc(3,natom)
+ type(pawtab_type),intent(in) :: pawtab(ntypat)
+ type(pawrad_type),intent(in) :: pawrad(ntypat)
+
+diff -uprN spack-src.org/src/98_main/abinit.F90 spack-src/src/98_main/abinit.F90
+--- spack-src.org/src/98_main/abinit.F90 2021-03-11 13:52:55.000000000 +0900
++++ spack-src/src/98_main/abinit.F90 2021-03-11 14:06:53.000000000 +0900
+@@ -261,7 +261,7 @@ program abinit
+ open(unit=ab_out,file=filnam(2),form='formatted',status='new', action="write", iomsg=message, iostat=ios)
+ #endif
+ ABI_CHECK(ios == 0, message)
+- rewind (unit=ab_out)
++! rewind (unit=ab_out)
+ codename='ABINIT'//repeat(' ',18)
+ call herald(codename,abinit_version,ab_out)
+ call herald(codename,abinit_version,std_out)
diff --git a/var/spack/repos/builtin/packages/abinit/package.py b/var/spack/repos/builtin/packages/abinit/package.py
index 4378c28213..39be0efd34 100644
--- a/var/spack/repos/builtin/packages/abinit/package.py
+++ b/var/spack/repos/builtin/packages/abinit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -30,7 +30,9 @@ class Abinit(AutotoolsPackage):
homepage = 'http://www.abinit.org'
url = 'https://www.abinit.org/sites/default/files/packages/abinit-8.6.3.tar.gz'
+ version('9.4.2', sha256='d40886f5c8b138bb4aa1ca05da23388eb70a682790cfe5020ecce4db1b1a76bc')
version('8.10.3', sha256='ed626424b4472b93256622fbb9c7645fa3ffb693d4b444b07d488771ea7eaa75')
+ version('8.10.2', sha256='4ee2e0329497bf16a9b2719fe0536cc50c5d5a07c65e18edaf15ba02251cbb73')
version('8.8.2', sha256='15216703bd56a799a249a112b336d07d733627d3756487a4b1cb48ebb625c3e7')
version('8.6.3', sha256='82e8d071088ab8dc1b3a24380e30b68c544685678314df1213180b449c84ca65')
version('8.2.2', sha256='e43544a178d758b0deff3011c51ef7c957d7f2df2ce8543366d68016af9f3ea1')
@@ -43,26 +45,14 @@ class Abinit(AutotoolsPackage):
description='Enables OpenMP threads. Use threaded FFTW3')
variant('scalapack', default=False,
description='Enables scalapack support. Requires MPI')
- # variant('elpa', default=False,
- # description='Uses elpa instead of scalapack. Requires MPI')
-
- # TODO: To be tested.
- # It was working before the last `git pull` but now all tests crash.
- # For the time being, the default is netcdf3 and the internal fallbacks
- # FIXME: rename (trio?) and use multivalued variants to cover
- # --with-trio-flavor={netcdf, none}
- # Note that Abinit@8: does not support etsf_io anymore because it is not
- # compatible with HDF5 and MPI-IO
- variant('hdf5', default=False,
- description='Enables HDF5+Netcdf4 with MPI. WARNING: experimental')
variant('wannier90', default=False,
description='Enables the Wannier90 library')
+ variant('libxml2', default=False,
+ description='Enable libxml2 support, used by multibinit')
# Add dependencies
- # currently one cannot forward options to virtual packages, see #1712.
- # depends_on('blas', when='~openmp')
- # depends_on('blas+openmp', when='+openmp')
+ depends_on('atompaw')
depends_on('blas')
depends_on('lapack')
@@ -71,97 +61,196 @@ class Abinit(AutotoolsPackage):
depends_on('scalapack', when='+scalapack+mpi')
- # depends_on('elpa~openmp', when='+elpa+mpi~openmp')
- # depends_on('elpa+openmp', when='+elpa+mpi+openmp')
+ depends_on('fftw-api')
- depends_on('fftw precision=float,double')
- depends_on('fftw~openmp', when='~openmp')
- depends_on('fftw+openmp', when='+openmp')
+ depends_on('netcdf-fortran')
+ depends_on('netcdf-c+mpi', when='+mpi')
+ depends_on('netcdf-c~mpi', when='~mpi')
+ depends_on('hdf5+mpi', when='+mpi')
+ depends_on('hdf5~mpi', when='~mpi')
+ depends_on("wannier90+shared", when='+wannier90+mpi')
- depends_on('netcdf-fortran', when='+hdf5')
- depends_on('hdf5+mpi', when='+mpi+hdf5') # required for NetCDF-4 support
+ # constrain libxc version
+ depends_on('libxc')
+ depends_on('libxc@:2', when='@:8')
- # pin libxc version
- depends_on("libxc@2.2.2")
+ # libxml2
+ depends_on('libxml2', when='@9:')
# Cannot ask for +scalapack if it does not depend on MPI
conflicts('+scalapack', when='~mpi')
- depends_on("wannier90+shared", when='+wannier90')
-
- # Elpa is a substitute for scalapack and needs mpi
- # conflicts('+elpa', when='~mpi')
- # conflicts('+elpa', when='+scalapack')
+ # Cannot ask for +wannier90 if it does not depend on MPI
+ conflicts('+wannier90', when='~mpi')
+
+ # libxml2 needs version 9 and above
+ conflicts('+libxml2', when='@:8')
+
+ conflicts('%gcc@7:', when='@:8.8')
+ conflicts('%gcc@9:', when='@:8.10')
+
+ # need openmp threading for abinit+openmp
+ # TODO: The logic here can be reversed with the new concretizer. Instead of
+ # using `conflicts`, `depends_on` could be used instead.
+ mkl_message = 'Need to set dependent variant to threads=openmp'
+ conflicts('+openmp',
+ when='^fftw~openmp',
+ msg='Need to request fftw +openmp')
+ conflicts('+openmp',
+ when='^intel-mkl threads=none',
+ msg=mkl_message)
+ conflicts('+openmp',
+ when='^intel-mkl threads=tbb',
+ msg=mkl_message)
+ conflicts('+openmp',
+ when='^intel-parallel-studio +mkl threads=none',
+ msg=mkl_message)
+
+ patch('rm_march_settings.patch', when='@:8')
+ patch('rm_march_settings_v9.patch', when='@9:')
+
+ # Fix detection of Fujitsu compiler
+ # Fix configure not to collect the option that causes an error
+ # Fix intent(out) and unnecessary rewind to avoid compile error
+ patch('fix_for_fujitsu.patch', when='%fj')
def configure_args(self):
spec = self.spec
options = []
+ options += self.with_or_without('libxml2')
+
oapp = options.append
if '+wannier90' in spec:
- oapp('--with-wannier90-libs=-L{0}'
- .format(spec['wannier90'].prefix.lib + ' -lwannier -lm'))
- oapp('--with-wannier90-incs=-I{0}'
- .format(spec['wannier90'].prefix.modules))
- oapp('--with-wannier90-bins={0}'
- .format(spec['wannier90'].prefix.bin))
- oapp('--enable-connectors')
- oapp('--with-dft-flavor=wannier90')
+ if '@:8' in spec:
+ oapp('--with-wannier90-libs=-L{0}'
+ .format(spec['wannier90'].prefix.lib + ' -lwannier -lm'))
+ oapp('--with-wannier90-incs=-I{0}'
+ .format(spec['wannier90'].prefix.modules))
+ oapp('--with-wannier90-bins={0}'
+ .format(spec['wannier90'].prefix.bin))
+ oapp('--enable-connectors')
+ oapp('--with-dft-flavor=atompaw+libxc+wannier90')
+ else:
+ options.extend([
+ 'WANNIER90_CPPFLAGS=-I{0}'.format(
+ spec['wannier90'].prefix.modules),
+ 'WANNIER90_LIBS=-L{0} {1}'.format(
+ spec['wannier90'].prefix.lib, '-lwannier'),
+ ])
+ else:
+ if '@:8' in spec:
+ oapp('--with-dft-flavor=atompaw+libxc')
+ else:
+ '--without-wannier90',
if '+mpi' in spec:
+ oapp('CC={0}'.format(spec['mpi'].mpicc))
+ oapp('CXX={0}'.format(spec['mpi'].mpicxx))
+ oapp('FC={0}'.format(spec['mpi'].mpifc))
+
# MPI version:
# let the configure script auto-detect MPI support from mpi_prefix
- oapp('--with-mpi-prefix={0}'.format(spec['mpi'].prefix))
- oapp('--enable-mpi=yes')
- oapp('--enable-mpi-io=yes')
- oapp('MPIFC={0}/mpifc'.format(spec['mpi'].prefix.bin))
- if '~wannier90' in spec:
- oapp('--with-dft-flavor=atompaw+libxc')
+ if '@:8' in spec:
+ oapp('--enable-mpi=yes')
+ else:
+ oapp('--with-mpi')
+ else:
+ if '@:8' in spec:
+ oapp('--enable-mpi=no')
+ else:
+ oapp('--without-mpi')
# Activate OpenMP in Abinit Fortran code.
if '+openmp' in spec:
oapp('--enable-openmp=yes')
+ else:
+ oapp('--enable-openmp=no')
# BLAS/LAPACK/SCALAPACK-ELPA
linalg = spec['lapack'].libs + spec['blas'].libs
+ if '^mkl' in spec:
+ linalg_flavor = 'mkl'
+ elif '@9:' in spec and '^openblas' in spec:
+ linalg_flavor = 'openblas'
+ else:
+ linalg_flavor = 'custom'
+
if '+scalapack' in spec:
- oapp('--with-linalg-flavor=custom+scalapack')
linalg = spec['scalapack'].libs + linalg
+ if '@:8' in spec:
+ linalg_flavor = 'scalapack+{0}'.format(linalg_flavor)
- # elif '+elpa' in spec:
+ if '@:8' in spec:
+ oapp('--with-linalg-libs={0}'.format(linalg.ld_flags))
else:
- oapp('--with-linalg-flavor=custom')
-
- oapp('--with-linalg-libs={0}'.format(linalg.ld_flags))
-
- # FFTW3: use sequential or threaded version if +openmp
- fftflavor, fftlibs = 'fftw3', '-lfftw3 -lfftw3f'
- if '+openmp' in spec:
- fftflavor = 'fftw3-threads'
- fftlibs = '-lfftw3_omp -lfftw3 -lfftw3f'
-
- options.extend([
- '--with-fft-flavor=%s' % fftflavor,
- '--with-fft-incs=-I%s' % spec['fftw'].prefix.include,
- '--with-fft-libs=-L%s %s' % (spec['fftw'].prefix.lib, fftlibs),
- ])
+ oapp('LINALG_LIBS={0}'.format(linalg.ld_flags))
+
+ oapp('--with-linalg-flavor={0}'.format(linalg_flavor))
+
+ # FFTW3: use sequential from fftw3 or MKL
+ if '@:8' in spec:
+ if '+openmp' in spec:
+ fftflavor, fftlibs = 'fftw3-threads', '-lfftw3_omp -lfftw3 -lfftw3f'
+ options.extend([
+ '--with-fft-incs={0}'.format(spec['fftw'].headers.cpp_flags),
+ '--with-fft-libs=-L{0} {1}'.format(
+ spec['fftw'].prefix.lib, fftlibs),
+ ])
+ else:
+ oapp('--with-fft-incs={0}'.format(spec['fftw-api'].headers.cpp_flags))
+ if '^mkl' in spec:
+ fftflavor = 'dfti'
+ oapp('--with-fft-libs={0}'.format(spec['fftw-api'].libs.ld_flags))
+ elif '^fftw' in spec:
+ fftflavor, fftlibs = 'fftw3', '-lfftw3 -lfftw3f'
+ oapp('--with-fft-libs=-L{0} {1}'.format(
+ spec['fftw-api'].prefix.lib, fftlibs))
+ else:
+ if '+openmp' in spec:
+ fftflavor, fftlibs = 'fftw3-threads', '-lfftw3_omp -lfftw3 -lfftw3f'
+ options.extend([
+ 'FFTW3_CPPFLAGS={0}'.format(spec['fftw'].headers.cpp_flags),
+ 'FFTW3_LIBS=-L{0} {1}'.format(
+ spec['fftw'].prefix.lib, fftlibs),
+ ])
+ else:
+ if '^mkl' in spec:
+ fftflavor = 'dfti'
+ options.extend([
+ 'FFT_CPPFLAGS={0}'.format(spec['fftw-api'].headers.cpp_flags),
+ 'FFT_LIBs={0}'.format(spec['fftw-api'].libs.ld_flags),
+ ])
+ elif '^fftw' in spec:
+ fftflavor, fftlibs = 'fftw3', '-lfftw3 -lfftw3f'
+ options.extend([
+ 'FFTW3_CPPFLAGS={0}'.format(spec['fftw-api'].headers.cpp_flags),
+ 'FFTW3_LIBS=-L{0} {1}'.format(
+ spec['fftw-api'].prefix.lib, fftlibs),
+ ])
+
+ oapp('--with-fft-flavor={0}'.format(fftflavor))
# LibXC library
libxc = spec['libxc:fortran']
- options.extend([
- 'with_libxc_incs={0}'.format(libxc.headers.cpp_flags),
- 'with_libxc_libs={0}'.format(libxc.libs.ld_flags + ' -lm')
- ])
+ if '@:8' in spec:
+ options.extend([
+ '--with-libxc-incs={0}'.format(libxc.headers.cpp_flags),
+ '--with-libxc-libs={0}'.format(libxc.libs.ld_flags + ' -lm')
+ ])
+ else:
+ oapp('--with-libxc={0}'.format(libxc.prefix))
# Netcdf4/HDF5
- if '+hdf5' in spec:
+ hdf5 = spec['hdf5:hl']
+ netcdfc = spec['netcdf-c']
+ netcdff = spec['netcdf-fortran:shared']
+ if '@:8' in spec:
oapp('--with-trio-flavor=netcdf')
# Since version 8, Abinit started to use netcdf4 + hdf5 and we have
# to link with the high level HDF5 library
- hdf5 = spec['hdf5:hl']
- netcdff = spec['netcdf-fortran:shared']
options.extend([
'--with-netcdf-incs={0}'.format(netcdff.headers.cpp_flags),
'--with-netcdf-libs={0}'.format(
@@ -169,9 +258,14 @@ class Abinit(AutotoolsPackage):
),
])
else:
- # In Spack we do our best to avoid building any internally provided
- # dependencies, such as netcdf3 in this case.
- oapp('--with-trio-flavor=none')
+ options.extend([
+ '--with-netcdf={0}'.format(netcdfc.prefix),
+ '--with-netcdf-fortran={0}'.format(netcdff.prefix),
+ ])
+
+ if self.spec.satisfies('%fj'):
+ oapp('FCFLAGS_MODDIR=-M{0}'.format(join_path(
+ self.stage.source_path, 'src/mods')))
return options
diff --git a/var/spack/repos/builtin/packages/abinit/rm_march_settings.patch b/var/spack/repos/builtin/packages/abinit/rm_march_settings.patch
new file mode 100644
index 0000000000..3511fd8d7d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/abinit/rm_march_settings.patch
@@ -0,0 +1,74 @@
+--- spack-src/configure.org 2021-01-18 10:12:04.000000000 +0900
++++ spack-src/configure 2021-01-20 20:26:16.000000000 +0900
+@@ -17412,7 +17412,7 @@
+ case "${enable_optim}" in
+ aggressive)
+ enable_optim_opt="aggressive"
+- CFLAGS_OPTIM="-O3 -mtune=native -march=native"
++ CFLAGS_OPTIM="-O3 -mtune=native "
+ ;;
+ safe)
+ enable_optim_opt="safe"
+@@ -17420,7 +17420,7 @@
+ ;;
+ standard)
+ enable_optim_opt="standard"
+- CFLAGS_OPTIM="-O2 -mtune=native -march=native"
++ CFLAGS_OPTIM="-O2 -mtune=native "
+ ;;
+ esac # [case: enable_optim, indent: 2, item: True]
+ ;;
+@@ -17641,7 +17641,7 @@
+ case "${enable_optim}" in
+ aggressive)
+ enable_optim_opt="aggressive"
+- CXXFLAGS_OPTIM="-O3 -mtune=native -march=native"
++ CXXFLAGS_OPTIM="-O3 -mtune=native "
+ ;;
+ safe)
+ enable_optim_opt="safe"
+@@ -17649,7 +17649,7 @@
+ ;;
+ standard)
+ enable_optim_opt="standard"
+- CXXFLAGS_OPTIM="-O2 -mtune=native -march=native"
++ CXXFLAGS_OPTIM="-O2 -mtune=native "
+ ;;
+ esac # [case: enable_optim, indent: 2, item: True]
+ ;;
+@@ -17815,7 +17815,7 @@
+ case "${enable_optim}" in
+ aggressive)
+ enable_optim_opt="aggressive"
+- FCFLAGS_OPTIM="-O3 -mtune=native -march=native -faggressive-function-elimination -fstack-arrays"
++ FCFLAGS_OPTIM="-O3 -mtune=native -faggressive-function-elimination -fstack-arrays"
+ ;;
+ safe)
+ enable_optim_opt="safe"
+@@ -17823,7 +17823,7 @@
+ ;;
+ standard)
+ enable_optim_opt="standard"
+- FCFLAGS_OPTIM="-O2 -mtune=native -march=native"
++ FCFLAGS_OPTIM="-O2 -mtune=native "
+ ;;
+ esac # [case: enable_optim, indent: 4, item: True]
+ ;;
+@@ -17833,7 +17833,7 @@
+ case "${enable_optim}" in
+ aggressive)
+ enable_optim_opt="aggressive"
+- FCFLAGS_OPTIM="-O3 -mtune=native -march=native -funroll-loops -faggressive-function-elimination"
++ FCFLAGS_OPTIM="-O3 -mtune=native -funroll-loops -faggressive-function-elimination"
+ ;;
+ safe)
+ enable_optim_opt="safe"
+@@ -17841,7 +17841,7 @@
+ ;;
+ standard)
+ enable_optim_opt="standard"
+- FCFLAGS_OPTIM="-O2 -mtune=native -march=native"
++ FCFLAGS_OPTIM="-O2 -mtune=native "
+ ;;
+ esac # [case: enable_optim, indent: 4, item: True]
+ ;;
diff --git a/var/spack/repos/builtin/packages/abinit/rm_march_settings_v9.patch b/var/spack/repos/builtin/packages/abinit/rm_march_settings_v9.patch
new file mode 100644
index 0000000000..c876e7c769
--- /dev/null
+++ b/var/spack/repos/builtin/packages/abinit/rm_march_settings_v9.patch
@@ -0,0 +1,44 @@
+--- a/configure 2021-04-30 04:25:20.000000000 -0500
++++ b/configure 2021-05-14 17:34:11.666320745 -0500
+@@ -16794,11 +16794,11 @@
+ ;;
+ standard)
+ abi_optim_flavor_opt="standard"
+- CFLAGS_OPTIM="-O2 -mtune=native -march=native"
++ CFLAGS_OPTIM="-O2"
+ ;;
+ aggressive)
+ abi_optim_flavor_opt="aggressive"
+- CFLAGS_OPTIM="-O3 -mtune=native -march=native"
++ CFLAGS_OPTIM="-O3"
+ ;;
+ esac # [case: abi_optim_flavor, indent: 2, item: True]
+ ;;
+@@ -16947,11 +16947,11 @@
+ ;;
+ standard)
+ abi_optim_flavor_opt="standard"
+- CXXFLAGS_OPTIM="-O2 -mtune=native -march=native"
++ CXXFLAGS_OPTIM="-O2"
+ ;;
+ aggressive)
+ abi_optim_flavor_opt="aggressive"
+- CXXFLAGS_OPTIM="-O3 -mtune=native -march=native"
++ CXXFLAGS_OPTIM="-O3"
+ ;;
+ esac # [case: abi_optim_flavor, indent: 2, item: True]
+ ;;
+@@ -17100,11 +17100,11 @@
+ ;;
+ standard)
+ abi_optim_flavor_opt="standard"
+- FCFLAGS_OPTIM="-O2 -mtune=native -march=native"
++ FCFLAGS_OPTIM="-O2"
+ ;;
+ aggressive)
+ abi_optim_flavor_opt="aggressive"
+- FCFLAGS_OPTIM="-O3 -mtune=native -march=native -funroll-loops -faggressive-function-elimination"
++ FCFLAGS_OPTIM="-O3 -funroll-loops -faggressive-function-elimination"
+ ;;
+ esac # [case: abi_optim_flavor, indent: 2, item: True]
+ ;;
diff --git a/var/spack/repos/builtin/packages/abseil-cpp/package.py b/var/spack/repos/builtin/packages/abseil-cpp/package.py
index 6044757ee3..3722a1a434 100644
--- a/var/spack/repos/builtin/packages/abseil-cpp/package.py
+++ b/var/spack/repos/builtin/packages/abseil-cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/abyss/package.py b/var/spack/repos/builtin/packages/abyss/package.py
index c7eddfd835..7269078002 100644
--- a/var/spack/repos/builtin/packages/abyss/package.py
+++ b/var/spack/repos/builtin/packages/abyss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/accfft/package.py b/var/spack/repos/builtin/packages/accfft/package.py
index 7009695240..ab0f1566e1 100644
--- a/var/spack/repos/builtin/packages/accfft/package.py
+++ b/var/spack/repos/builtin/packages/accfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/acct/package.py b/var/spack/repos/builtin/packages/acct/package.py
index 5a0c147f25..40157b3ccf 100644
--- a/var/spack/repos/builtin/packages/acct/package.py
+++ b/var/spack/repos/builtin/packages/acct/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/accumulo/package.py b/var/spack/repos/builtin/packages/accumulo/package.py
index 28dc38de0e..d2f3e293d9 100644
--- a/var/spack/repos/builtin/packages/accumulo/package.py
+++ b/var/spack/repos/builtin/packages/accumulo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ace/package.py b/var/spack/repos/builtin/packages/ace/package.py
index 1f8f58c78f..872b29d683 100644
--- a/var/spack/repos/builtin/packages/ace/package.py
+++ b/var/spack/repos/builtin/packages/ace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ack/package.py b/var/spack/repos/builtin/packages/ack/package.py
index 1faf0f7a14..3fdb63c767 100644
--- a/var/spack/repos/builtin/packages/ack/package.py
+++ b/var/spack/repos/builtin/packages/ack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/acl/package.py b/var/spack/repos/builtin/packages/acl/package.py
index 17f916d297..eda6ad84e8 100644
--- a/var/spack/repos/builtin/packages/acl/package.py
+++ b/var/spack/repos/builtin/packages/acl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/acpica-tools/package.py b/var/spack/repos/builtin/packages/acpica-tools/package.py
index 41359bb959..41b595b248 100644
--- a/var/spack/repos/builtin/packages/acpica-tools/package.py
+++ b/var/spack/repos/builtin/packages/acpica-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/acpid/package.py b/var/spack/repos/builtin/packages/acpid/package.py
index 15a73f36d4..0415d850d1 100644
--- a/var/spack/repos/builtin/packages/acpid/package.py
+++ b/var/spack/repos/builtin/packages/acpid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/activeharmony/package.py b/var/spack/repos/builtin/packages/activeharmony/package.py
index 45a55e5600..37c08903ab 100644
--- a/var/spack/repos/builtin/packages/activeharmony/package.py
+++ b/var/spack/repos/builtin/packages/activeharmony/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/activemq/package.py b/var/spack/repos/builtin/packages/activemq/package.py
index 54cff4de32..5c8ed29e02 100644
--- a/var/spack/repos/builtin/packages/activemq/package.py
+++ b/var/spack/repos/builtin/packages/activemq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/acts/package.py b/var/spack/repos/builtin/packages/acts/package.py
index 476bea3b0f..baa5f7edcc 100644
--- a/var/spack/repos/builtin/packages/acts/package.py
+++ b/var/spack/repos/builtin/packages/acts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -33,8 +33,20 @@ class Acts(CMakePackage, CudaPackage):
git = "https://github.com/acts-project/acts.git"
maintainers = ['HadrienG2']
+ tags = ['hep']
+
# Supported Acts versions
- version('master', branch='master')
+ version('main', branch='main')
+ version('master', branch='main', deprecated=True) # For compatibility
+ version('8.02.0', commit='f25cf639915fc2ac65b03882ad3eb11fb037ed00')
+ version('8.01.0', commit='ccc8c77bbc011f3adc020c565a509815be0ea029')
+ version('8.00.0', commit='50c972823144c007b406ae12d7ca25a1e0c35532')
+ version('7.00.0', commit='e663df7ab023bdb5ef206202efc2e54ccb71d416')
+ version('6.00.0', commit='a5cf04acd4b1a2c625e0826189109472a3392558')
+ version('5.00.0', commit='df77b91a7d37b8db6ed028a4d737014b5ad86bb7')
+ version('4.01.0', commit='c383bf434ef69939b47e840e0eac0ba632e6af9f')
+ version('4.00.0', commit='ed64b4b88d366b63adc4a8d1afe5bc97aa5751eb')
+ version('3.00.0', commit='e20260fccb469f4253519d3f0ddb3191b7046db3')
version('2.00.0', commit='8708eae2b2ccdf57ab7b451cfbba413daa1fc43c')
version('1.02.1', commit='f6ebeb9a28297ba8c54fd08b700057dd4ff2a311')
version('1.02.0', commit='e69b95acc9a264e63aded7d1714632066e090542')
@@ -89,15 +101,18 @@ class Acts(CMakePackage, CudaPackage):
variant('examples', default=False, description='Build the examples')
variant('integration_tests', default=False, description='Build the integration tests')
variant('unit_tests', default=False, description='Build the unit tests')
+ variant('log_failure_threshold', default='MAX', description='Log level above which examples should auto-crash')
# Variants that enable / disable Acts plugins
variant('autodiff', default=False, description='Build the auto-differentiation plugin')
variant('dd4hep', default=False, description='Build the DD4hep plugin')
variant('digitization', default=False, description='Build the geometric digitization plugin')
variant('fatras', default=False, description='Build the FAst TRAcking Simulation package')
+ variant('fatras_geant4', default=False, description='Build Geant4 Fatras package')
variant('identification', default=False, description='Build the Identification plugin')
variant('json', default=False, description='Build the Json plugin')
variant('legacy', default=False, description='Build the Legacy package')
+ # FIXME: Cannot build ONNX plugin as Spack doesn't have an ONNX runtime
# FIXME: Cannot build SyCL plugin yet as Spack doesn't have SyCL support
variant('tgeo', default=False, description='Build the TGeo plugin')
@@ -109,19 +124,20 @@ class Acts(CMakePackage, CudaPackage):
# Build dependencies
# FIXME: Use spack's autodiff package once there is one
depends_on('boost @1.62:1.69.99 +program_options +test', when='@:0.10.3')
- depends_on('boost @1.69: +filesystem +program_options +test', when='@0.10.4:')
- depends_on('cmake @3.11:', type='build')
- depends_on('dd4hep @1.10:', when='+dd4hep')
- depends_on('dd4hep @1.10: +geant4', when='+dd4hep +geant4')
- depends_on('eigen @3.2.9:', type='build')
+ depends_on('boost @1.71: +filesystem +program_options +test', when='@0.10.4:')
+ depends_on('cmake @3.14:', type='build')
+ depends_on('dd4hep @1.11:', when='+dd4hep')
+ depends_on('dd4hep @1.11: +geant4', when='+dd4hep +geant4')
+ depends_on('eigen @3.3.7:', type='build')
+ depends_on('geant4', when='+fatras_geant4')
depends_on('geant4', when='+geant4')
- depends_on('hepmc3@3.1:', when='+hepmc3')
- depends_on('heppdt', when='+hepmc3')
- depends_on('intel-tbb', when='+examples')
- depends_on('nlohmann-json @3.2.0:', when='@0.14: +json')
+ depends_on('hepmc3 @3.2.1:', when='+hepmc3')
+ depends_on('heppdt', when='+hepmc3 @:4.0')
+ depends_on('intel-tbb @2020.1:', when='+examples')
+ depends_on('nlohmann-json @3.9.1:', when='@0.14: +json')
depends_on('pythia8', when='+pythia8')
depends_on('root @6.10: cxxstd=14', when='+tgeo @:0.8.0')
- depends_on('root @6.10: cxxstd=17', when='+tgeo @0.8.1:')
+ depends_on('root @6.20: cxxstd=17', when='+tgeo @0.8.1:')
# Some variant combinations do not make sense
conflicts('+autodiff', when='@:1.01')
@@ -184,6 +200,7 @@ class Acts(CMakePackage, CudaPackage):
example_cmake_variant("HEPMC3", "hepmc3"),
example_cmake_variant("PYTHIA8", "pythia8"),
cmake_variant("FATRAS", "fatras"),
+ cmake_variant("FATRAS_GEANT4", "fatras_geant4"),
plugin_cmake_variant("IDENTIFICATION", "identification"),
cmake_variant(integration_tests_label, "integration_tests"),
plugin_cmake_variant("JSON", "json"),
@@ -192,6 +209,9 @@ class Acts(CMakePackage, CudaPackage):
plugin_cmake_variant("TGEO", "tgeo")
]
+ log_failure_threshold = spec.variants['log_failure_threshold'].value
+ args.append("-DACTS_LOG_FAILURE_THRESHOLD={0}".format(log_failure_threshold))
+
cuda_arch = spec.variants['cuda_arch'].value
if cuda_arch != 'none':
args.append('-DCUDA_FLAGS=-arch=sm_{0}'.format(cuda_arch[0]))
diff --git a/var/spack/repos/builtin/packages/addrwatch/package.py b/var/spack/repos/builtin/packages/addrwatch/package.py
index 43cc8036f4..d89d0937d0 100644
--- a/var/spack/repos/builtin/packages/addrwatch/package.py
+++ b/var/spack/repos/builtin/packages/addrwatch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/adept-utils/package.py b/var/spack/repos/builtin/packages/adept-utils/package.py
index b3ea06eac2..c6590cc41a 100644
--- a/var/spack/repos/builtin/packages/adept-utils/package.py
+++ b/var/spack/repos/builtin/packages/adept-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/adf/package.py b/var/spack/repos/builtin/packages/adf/package.py
index ca08794d10..fe1419dc4f 100644
--- a/var/spack/repos/builtin/packages/adf/package.py
+++ b/var/spack/repos/builtin/packages/adf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Adf(Package):
theory."""
homepage = "https://www.scm.com/product/adf/"
+ manual_download = True
+
version('2017.113', '666ef15d253b74c707dd14da35e7cf283ca20e21e24ed43cb953fb9d1f2f1e15')
def url_for_version(self, version):
diff --git a/var/spack/repos/builtin/packages/adiak/package.py b/var/spack/repos/builtin/packages/adiak/package.py
index fc343c8d01..02c1ca81eb 100644
--- a/var/spack/repos/builtin/packages/adiak/package.py
+++ b/var/spack/repos/builtin/packages/adiak/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,17 @@ class Adiak(CMakePackage):
homepage = "https://github.com/LLNL/Adiak"
url = "https://github.com/LLNL/Adiak/releases/download/v0.1/adiak-v0.1.1.tar.gz"
+ git = "https://github.com/LLNL/Adiak"
+
+ maintainers = ["daboehme", "mplegendre"]
variant('mpi', default=True, description='Build with MPI support')
variant('shared', default=True, description='Build dynamic libraries')
+ version('0.3.0-alpha', commit='054d2693a977ed0e1f16c665b4966bb90924779e',
+ submodules=True)
+ version('0.2.1', commit='950e3bfb91519ecb7b7ee7fa3063bfab23c0e2c9',
+ submodules=True, preferred=True)
version('0.1.1', sha256='438e4652e15e206cd0019423d829fd4f2329323ff0c8861d9586bae051d9624b')
depends_on('mpi', when='+mpi')
diff --git a/var/spack/repos/builtin/packages/adios/package.py b/var/spack/repos/builtin/packages/adios/package.py
index 3405e03f65..7c2a19f657 100644
--- a/var/spack/repos/builtin/packages/adios/package.py
+++ b/var/spack/repos/builtin/packages/adios/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/adios2/2.7-fix-python-test-deps.patch b/var/spack/repos/builtin/packages/adios2/2.7-fix-python-test-deps.patch
new file mode 100644
index 0000000000..38e689dca1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/adios2/2.7-fix-python-test-deps.patch
@@ -0,0 +1,175 @@
+From 2454aafa08be8a275b2bdba56df1c38460d165ef Mon Sep 17 00:00:00 2001
+From: Chuck Atkins <chuck.atkins@kitware.com>
+Date: Fri, 22 Jan 2021 00:03:15 -0500
+Subject: [PATCH] Fix test dependency options to ignore python when testing is
+ disabled
+
+---
+ CMakeLists.txt | 15 +++------------
+ bindings/Matlab/README.txt | 2 +-
+ cmake/DetectOptions.cmake | 2 +-
+ scripts/conda/adios2/superbuild/CMakeLists.txt | 2 +-
+ scripts/docker/images/centos7/Dockerfile | 2 +-
+ scripts/docker/images/centos8/Dockerfile | 2 +-
+ scripts/docker/images/ubuntu/Dockerfile | 2 +-
+ scripts/runconf/runconf.sh | 2 +-
+ scripts/runconf/runconf_olcf.sh | 6 +++---
+ 9 files changed, 13 insertions(+), 22 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 76e0e8fba..8823bbf87 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -114,6 +114,8 @@ if((NOT BUILD_SHARED_LIBS) AND (NOT DEFINED CMAKE_POSITION_INDEPENDENT_CODE))
+ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+ endif()
+
++include(CTest)
++
+ adios_option(Blosc "Enable support for Blosc transforms" AUTO)
+ adios_option(BZip2 "Enable support for BZip2 transforms" AUTO)
+ adios_option(ZFP "Enable support for ZFP transforms" AUTO)
+@@ -222,22 +224,11 @@ endif()
+ #------------------------------------------------------------------------------#
+ # Testing
+ #------------------------------------------------------------------------------#
+-if(DEFINED BUILD_TESTING)
+- set(ADIOS2_BUILD_TESTING_DEFAULT ${BUILD_TESTING})
+-else()
+- set(ADIOS2_BUILD_TESTING_DEFAULT ON)
+-endif()
+-unset(BUILD_TESTING)
+-option(ADIOS2_BUILD_TESTING "Build the ADIOS2 testing tree"
+- ${ADIOS2_BUILD_TESTING_DEFAULT})
+-
+ cmake_dependent_option(ADIOS2_RUN_MPI_MPMD_TESTS
+ "Enable the parallel MPMD tests" ON
+- "ADIOS2_BUILD_TESTING;ADIOS2_HAVE_MPI" OFF)
++ "BUILD_TESTING;ADIOS2_HAVE_MPI" OFF)
+ mark_as_advanced(ADIOS2_RUN_MPI_MPMD_TESTS)
+
+-include(CTest)
+-set(BUILD_TESTING ${ADIOS2_BUILD_TESTING})
+ if(BUILD_TESTING)
+ find_program(DIFF_EXECUTABLE diff)
+ if(DIFF_EXECUTABLE)
+diff --git a/bindings/Matlab/README.txt b/bindings/Matlab/README.txt
+index 4b90fac77..f49b057bc 100644
+--- a/bindings/Matlab/README.txt
++++ b/bindings/Matlab/README.txt
+@@ -43,5 +43,5 @@ $ cd <your adios source>
+ $ git pull
+ $ mkdir build.lean
+ $ cd build.lean
+-$ cmake -DCMAKE_INSTALL_PREFIX=/opt/adios/lean -DADIOS2_USE_MPI=OFF -DADIOS2_USE_Fortran=OFF -DADIOS2_USE_Python=OFF -DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DADIOS2_ENABLE_PIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DADIOS2_BUILD_TESTING=OFF -DADIOS2_USE_SST=OFF -DADIOS2_USE_BZip2=OFF -DADIOS2_USE_DataMan=OFF ..
++$ cmake -DCMAKE_INSTALL_PREFIX=/opt/adios/lean -DADIOS2_USE_MPI=OFF -DADIOS2_USE_Fortran=OFF -DADIOS2_USE_Python=OFF -DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DADIOS2_ENABLE_PIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_TESTING=OFF -DADIOS2_USE_SST=OFF -DADIOS2_USE_BZip2=OFF -DADIOS2_USE_DataMan=OFF ..
+
+diff --git a/cmake/DetectOptions.cmake b/cmake/DetectOptions.cmake
+index ca449feee..3b8652d2d 100644
+--- a/cmake/DetectOptions.cmake
++++ b/cmake/DetectOptions.cmake
+@@ -293,7 +293,7 @@ if(Python_FOUND)
+ endif()
+
+ # Even if no python support, we still want the interpreter for tests
+-if(NOT Python_Interpreter_FOUND)
++if(BUILD_TESTING AND NOT Python_Interpreter_FOUND)
+ find_package(Python REQUIRED COMPONENTS Interpreter)
+ endif()
+
+diff --git a/scripts/conda/adios2/superbuild/CMakeLists.txt b/scripts/conda/adios2/superbuild/CMakeLists.txt
+index 75e2ad984..ef0eec25b 100644
+--- a/scripts/conda/adios2/superbuild/CMakeLists.txt
++++ b/scripts/conda/adios2/superbuild/CMakeLists.txt
+@@ -12,7 +12,7 @@ ExternalProject_Add(adios2
+ -DCMAKE_BUILD_TYPE=Release
+ -DBUILD_SHARED_LIBS=ON
+ -DADIOS2_BUILD_EXAMPLES=OFF
+- -DADIOS2_BUILD_TESTING=OFF
++ -DBUILD_TESTING=OFF
+ -DADIOS2_USE_Python=ON
+ -DPYTHON_EXECUTABLE=$ENV{PYTHON}
+ -DADIOS2_USE_MPI=ON
+diff --git a/scripts/docker/images/centos7/Dockerfile b/scripts/docker/images/centos7/Dockerfile
+index 96cb30acb..974bd90eb 100644
+--- a/scripts/docker/images/centos7/Dockerfile
++++ b/scripts/docker/images/centos7/Dockerfile
+@@ -116,7 +116,7 @@ RUN git clone https://github.com/ornladios/adios2.git source && \
+ module load mpi && \
+ cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/opt/adios/${adios_ver_dir} \
+- -DADIOS2_BUILD_TESTING=OFF \
++ -DBUILD_TESTING=OFF \
+ -DADIOS2_BUILD_EXAMPLES=OFF \
+ ../source && \
+ make -j$(grep -c '^processor' /proc/cpuinfo) install && \
+diff --git a/scripts/docker/images/centos8/Dockerfile b/scripts/docker/images/centos8/Dockerfile
+index 01e3af8cb..21a78c913 100644
+--- a/scripts/docker/images/centos8/Dockerfile
++++ b/scripts/docker/images/centos8/Dockerfile
+@@ -116,7 +116,7 @@ RUN git clone https://github.com/ornladios/adios2.git source && \
+ module load mpi && \
+ cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/opt/adios/${adios_ver_dir} \
+- -DADIOS2_BUILD_TESTING=OFF \
++ -DBUILD_TESTING=OFF \
+ -DADIOS2_BUILD_EXAMPLES=OFF \
+ ../source && \
+ make -j$(grep -c '^processor' /proc/cpuinfo) install && \
+diff --git a/scripts/docker/images/ubuntu/Dockerfile b/scripts/docker/images/ubuntu/Dockerfile
+index 1979b81a0..e0f654efb 100644
+--- a/scripts/docker/images/ubuntu/Dockerfile
++++ b/scripts/docker/images/ubuntu/Dockerfile
+@@ -118,7 +118,7 @@ RUN git clone https://github.com/ornladios/adios2.git source && \
+ . /etc/profile && \
+ cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/opt/adios/${adios_ver_dir} \
+- -DADIOS2_BUILD_TESTING=OFF \
++ -DBUILD_TESTING=OFF \
+ -DADIOS2_BUILD_EXAMPLES=OFF \
+ ../source && \
+ make -j$(grep -c '^processor' /proc/cpuinfo) install && \
+diff --git a/scripts/runconf/runconf.sh b/scripts/runconf/runconf.sh
+index 82c3ea21e..ec12ba7ef 100644
+--- a/scripts/runconf/runconf.sh
++++ b/scripts/runconf/runconf.sh
+@@ -46,7 +46,7 @@ cmake -DCMAKE_INSTALL_PREFIX=${PWD}/install \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
+ -DCMAKE_BUILD_TYPE=Release \
+- -DADIOS2_BUILD_TESTING=${VALUE} \
++ -DBUILD_TESTING=${VALUE} \
+ -DADIOS2_BUILD_EXAMPLES=${VALUE} \
+ -DADIOS2_USE_Endian_Reverse=OFF \
+ ${ADIOS2_SOURCE}
+diff --git a/scripts/runconf/runconf_olcf.sh b/scripts/runconf/runconf_olcf.sh
+index 562f9b3dd..3d1ea83bc 100644
+--- a/scripts/runconf/runconf_olcf.sh
++++ b/scripts/runconf/runconf_olcf.sh
+@@ -68,7 +68,7 @@ if [ `hostname | cut -c 1-5` == "titan" ]; then
+ -DADIOS2_USE_Python=OFF \
+ -DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+- -DADIOS2_BUILD_TESTING=OFF \
++ -DBUILD_TESTING=OFF \
+ ${EXTERNAL_OPTS} \
+ ${SRCDIR}
+
+@@ -118,7 +118,7 @@ elif [ `hostname -f | cut -c 1-9` == "summitdev" ]; then
+ -DADIOS2_USE_Python=OFF \
+ -DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF \
+ -DCMAKE_BUILD_TYPE=Debug \
+- -DADIOS2_BUILD_TESTING=ON \
++ -DBUILD_TESTING=ON \
+ -DADIOS2_USE_DataMan=OFF \
+ ${EXTERNAL_OPTS} \
+ ${SRCDIR}
+@@ -156,7 +156,7 @@ elif [ `hostname -f | cut -c 1-4` == "rhea" ]; then
+ -DADIOS2_USE_SST=OFF \
+ -DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF \
+ -DCMAKE_BUILD_TYPE=Debug \
+- -DADIOS2_BUILD_TESTING=ON \
++ -DBUILD_TESTING=ON \
+ -DADIOS2_USE_DataMan=OFF \
+ ${EXTERNAL_OPTS} \
+ ${SRCDIR}
diff --git a/var/spack/repos/builtin/packages/adios2/package.py b/var/spack/repos/builtin/packages/adios2/package.py
index adda8071bd..389d5c7c4a 100644
--- a/var/spack/repos/builtin/packages/adios2/package.py
+++ b/var/spack/repos/builtin/packages/adios2/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os
class Adios2(CMakePackage):
@@ -17,6 +18,8 @@ class Adios2(CMakePackage):
maintainers = ['ax3l', 'chuckatkins', 'williamfgc']
version('master', branch='master')
+ version('2.7.1', sha256='c8e237fd51f49d8a62a0660db12b72ea5067512aa7970f3fcf80b70e3f87ca3e')
+ version('2.7.0', sha256='4b5df1a1f92d7ff380416dec7511cfcfe3dc44da27e486ed63c3e6cffb173924')
version('2.6.0', sha256='45b41889065f8b840725928db092848b8a8b8d1bfae1b92e72f8868d1c76216c')
version('2.5.0', sha256='7c8ff3bf5441dd662806df9650c56a669359cb0185ea232ecb3578de7b065329')
version('2.4.0', sha256='50ecea04b1e41c88835b4b3fd4e7bf0a0a2a3129855c9cc4ba6cf6a1575106e2')
@@ -51,7 +54,7 @@ class Adios2(CMakePackage):
# transport engines
variant('sst', default=True,
description='Enable the SST staging engine')
- variant('dataman', default=True,
+ variant('dataman', default=False,
description='Enable the DataMan engine for WAN transports')
variant('dataspaces', default=False,
description='Enable support for DATASPACES')
@@ -96,14 +99,11 @@ class Adios2(CMakePackage):
depends_on('bzip2', when='@2.4: +bzip2')
depends_on('libpng@1.6:', when='@2.4: +png')
depends_on('zfp@0.5.1:', when='+zfp')
- depends_on('sz@:2.0.2.0', when='+sz')
+ depends_on('sz@2.0.2.0:', when='+sz')
extends('python', when='+python')
- depends_on('python@2.7:2.8,3.5:',
- when='@:2.4.0 +python',
- type=('build', 'run'))
- depends_on('python@3.5:', when='@2.5.0: +python',
- type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.5:', when='@:2.4.0 +python', type=('build', 'run'))
+ depends_on('python@3.5:', when='@2.5.0: +python', type=('build', 'run'))
depends_on('python@2.7:2.8,3.5:', when='@:2.4.0', type='test')
depends_on('python@3.5:', when='@2.5.0:', type='test')
depends_on('py-numpy@1.6.1:', type=('build', 'run'), when='+python')
@@ -118,6 +118,10 @@ class Adios2(CMakePackage):
# See https://github.com/ornladios/ADIOS2/pull/1899
patch('2.5-fix-clear_cache.patch', when='@2.5.0')
+ # Fix an unnecessary python dependency when testing is disabled
+ # See https://github.com/ornladios/ADIOS2/pull/2596
+ patch('2.7-fix-python-test-deps.patch', when='@2.5.0:2.7.0')
+
@when('%fj')
def patch(self):
""" add fujitsu mpi commands #16864 """
@@ -135,48 +139,32 @@ class Adios2(CMakePackage):
def cmake_args(self):
spec = self.spec
+ from_variant = self.define_from_variant
args = [
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'),
- '-DADIOS2_BUILD_TESTING=OFF',
+ from_variant('BUILD_SHARED_LIBS', 'shared'),
'-DADIOS2_BUILD_EXAMPLES=OFF',
- '-DADIOS2_USE_MPI={0}'.format(
- 'ON' if '+mpi' in spec else 'OFF'),
+ from_variant('ADIOS2_USE_MPI', 'mpi'),
'-DADIOS2_USE_MGARD=OFF',
- '-DADIOS2_USE_ZFP={0}'.format(
- 'ON' if '+zfp' in spec else 'OFF'),
- '-DADIOS2_USE_SZ={0}'.format(
- 'ON' if '+sz' in spec else 'OFF'),
- '-DADIOS2_USE_DataMan={0}'.format(
- 'ON' if '+dataman' in spec else 'OFF'),
- '-DADIOS2_USE_SST={0}'.format(
- 'ON' if '+sst' in spec else 'OFF'),
- '-DADIOS2_USE_HDF5={0}'.format(
- 'ON' if '+hdf5' in spec else 'OFF'),
- '-DADIOS2_USE_Python={0}'.format(
- 'ON' if '+python' in spec else 'OFF'),
- '-DADIOS2_USE_Fortran={0}'.format(
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DADIOS2_USE_Endian_Reverse={0}'.format(
- 'ON' if '+endian_reverse' in spec else 'OFF'),
- '-DBUILD_TESTING:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
+ from_variant('ADIOS2_USE_ZFP', 'zfp'),
+ from_variant('ADIOS2_USE_SZ', 'sz'),
+ from_variant('ADIOS2_USE_DataMan', 'dataman'),
+ from_variant('ADIOS2_USE_SST', 'sst'),
+ from_variant('ADIOS2_USE_HDF5', 'hdf5'),
+ from_variant('ADIOS2_USE_Python', 'python'),
+ from_variant('ADIOS2_USE_Fortran', 'fortran'),
+ from_variant('ADIOS2_USE_Endian_Reverse', 'endian_reverse'),
+ self.define('BUILD_TESTING', self.run_tests),
]
if spec.version >= Version('2.4.0'):
- args.append('-DADIOS2_USE_Blosc={0}'.format(
- 'ON' if '+blosc' in spec else 'OFF'))
- args.append('-DADIOS2_USE_BZip2={0}'.format(
- 'ON' if '+bzip2' in spec else 'OFF'))
- args.append('-DADIOS2_USE_PNG={0}'.format(
- 'ON' if '+png' in spec else 'OFF'))
- args.append('-DADIOS2_USE_SSC={0}'.format(
- 'ON' if '+ssc' in spec else 'OFF'))
+ args.append(from_variant('ADIOS2_USE_Blosc', 'blosc'))
+ args.append(from_variant('ADIOS2_USE_BZip2', 'bzip2'))
+ args.append(from_variant('ADIOS2_USE_PNG', 'png'))
+ args.append(from_variant('ADIOS2_USE_SSC', 'ssc'))
if spec.version >= Version('2.5.0'):
- args.append('-DADIOS2_USE_DataSpaces={0}'.format(
- 'ON' if '+dataspaces' in spec else 'OFF'))
+ args.append(from_variant('ADIOS2_USE_DataSpaces', 'dataspaces'))
if spec.version >= Version('2.6.0'):
args.append('-DADIOS2_USE_IME=OFF')
@@ -194,8 +182,7 @@ class Adios2(CMakePackage):
])
if spec.satisfies('~shared'):
- args.append('-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL={0}'.format(
- 'ON' if '+pic' in spec else 'OFF'))
+ args.append(from_variant('CMAKE_POSITION_INDEPENDENT_CODE', 'pic'))
if spec.satisfies('%fj'):
args.extend([
@@ -208,3 +195,42 @@ class Adios2(CMakePackage):
% spec['python'].command.path)
return args
+
+ @property
+ def libs(self):
+ spec = self.spec
+ libs_to_seek = set()
+
+ if spec.satisfies('@2.6:'):
+ libs_to_seek.add('libadios2_core')
+ libs_to_seek.add('libadios2_c')
+ libs_to_seek.add('libadios2_cxx11')
+ if '+fortran' in spec:
+ libs_to_seek.add('libadios2_fortran')
+
+ if '+mpi' in spec:
+ libs_to_seek.add('libadios2_core_mpi')
+ libs_to_seek.add('libadios2_c_mpi')
+ libs_to_seek.add('libadios2_cxx11_mpi')
+ if '+fortran' in spec:
+ libs_to_seek.add('libadios2_fortran_mpi')
+
+ if (self.spec.satisfies('@2.7: +shared+hdf5') and
+ self.spec['hdf5'].satisfies('@1.12:')):
+ libs_to_seek.add('libadios2_h5vol')
+
+ else:
+ libs_to_seek.add('libadios2')
+ if '+fortran' in spec:
+ libs_to_seek.add('libadios2_fortran')
+
+ return find_libraries(list(libs_to_seek), root=self.spec.prefix,
+ shared=('+shared' in spec), recursive=True)
+
+ def setup_run_environment(self, env):
+ try:
+ all_libs = self.libs
+ idx = all_libs.basenames.index('libadios2_h5vol.so')
+ env.prepend_path('HDF5_PLUGIN_PATH', os.path.dirname(all_libs[idx]))
+ except ValueError:
+ pass
diff --git a/var/spack/repos/builtin/packages/adlbx/package.py b/var/spack/repos/builtin/packages/adlbx/package.py
index dad534faaa..a2197e15b8 100644
--- a/var/spack/repos/builtin/packages/adlbx/package.py
+++ b/var/spack/repos/builtin/packages/adlbx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,14 +11,16 @@ class Adlbx(AutotoolsPackage):
"""ADLB/X: Master-worker library + work stealing and data dependencies"""
homepage = 'http://swift-lang.org/Swift-T'
- url = 'http://swift-lang.github.io/swift-t-downloads/spack/adlbx-0.9.2.tar.gz'
+ url = 'http://swift-lang.github.io/swift-t-downloads/spack/adlbx-1.0.0.tar.gz'
git = "https://github.com/swift-lang/swift-t.git"
version('master', branch='master')
+ version('1.0.0', sha256='9d547b1d36e5af1b11c97d0b700c6cb1fec2661cf583553e22b090e3619caba7')
version('0.9.2', sha256='524902d648001b689a98492402d754a607b8c1d0734699154063c1a4f3410d4a')
version('0.9.1', sha256='8913493fe0c097ff13c721ab057514e5bdb55f6318d4e3512692ab739c3190b3')
depends_on('exmcutils@master', when='@master')
+ depends_on('exmcutils@:0.5.7', when='@:0.9.2')
depends_on('exmcutils@:0.5.3', when='@:0.8.0')
depends_on('exmcutils', when='@0.9.1:')
depends_on('autoconf', type='build', when='@master')
diff --git a/var/spack/repos/builtin/packages/admixtools/package.py b/var/spack/repos/builtin/packages/admixtools/package.py
index 5b22451552..8c51a7c5b6 100644
--- a/var/spack/repos/builtin/packages/admixtools/package.py
+++ b/var/spack/repos/builtin/packages/admixtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/adms/package.py b/var/spack/repos/builtin/packages/adms/package.py
new file mode 100644
index 0000000000..169752afc4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/adms/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Adms(AutotoolsPackage):
+ """ADMS is a code generator that converts electrical compact device models
+ specified in high-level description language into ready-to-compile c code
+ for the API of spice simulators."""
+
+ homepage = "https://sourceforge.net/projects/mot-adms/"
+ url = "https://github.com/Qucs/ADMS/releases/download/release-2.3.7/adms-2.3.7.tar.gz"
+ git = "https://github.com/Qucs/ADMS.git"
+
+ maintainers = ['cessenat']
+
+ version('master', branch='master')
+ version('2.3.7', sha256='3a78e1283ecdc3f356410474b3ff44c4dcc82cb89772087fd3bbde8a1038ce08')
+
+ depends_on('bison@2.5:', type='build')
+ depends_on('flex', type='build')
+ depends_on('perl-xml-libxml', type='build')
+
+ @when('@master')
+ def autoreconf(self, spec, prefix):
+ sh = which('sh')
+ sh('./bootstrap.sh')
diff --git a/var/spack/repos/builtin/packages/adol-c/package.py b/var/spack/repos/builtin/packages/adol-c/package.py
index def99d8a4e..404a511236 100644
--- a/var/spack/repos/builtin/packages/adol-c/package.py
+++ b/var/spack/repos/builtin/packages/adol-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/advancecomp/package.py b/var/spack/repos/builtin/packages/advancecomp/package.py
index 149ff1bdb2..60eaec438b 100644
--- a/var/spack/repos/builtin/packages/advancecomp/package.py
+++ b/var/spack/repos/builtin/packages/advancecomp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/adwaita-icon-theme/package.py b/var/spack/repos/builtin/packages/adwaita-icon-theme/package.py
new file mode 100644
index 0000000000..56c2db6bad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/adwaita-icon-theme/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class AdwaitaIconTheme(AutotoolsPackage):
+ """Mostly private use system icons."""
+
+ homepage = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme"
+ url = "https://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/3.38/adwaita-icon-theme-3.38.0.tar.xz"
+
+ version('3.38.0', sha256='6683a1aaf2430ccd9ea638dd4bfe1002bc92b412050c3dba20e480f979faaf97')
+
+ depends_on("gdk-pixbuf", type="build")
+ depends_on("librsvg", type="build")
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_dependent_run_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_build_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
+
+ def setup_run_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/aegean/package.py b/var/spack/repos/builtin/packages/aegean/package.py
index eea46740a0..10107663c9 100644
--- a/var/spack/repos/builtin/packages/aegean/package.py
+++ b/var/spack/repos/builtin/packages/aegean/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aeskeyfind/package.py b/var/spack/repos/builtin/packages/aeskeyfind/package.py
index fdcfad760a..dd681ef218 100644
--- a/var/spack/repos/builtin/packages/aeskeyfind/package.py
+++ b/var/spack/repos/builtin/packages/aeskeyfind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aespipe/package.py b/var/spack/repos/builtin/packages/aespipe/package.py
index 70700bbb50..b8975a7472 100644
--- a/var/spack/repos/builtin/packages/aespipe/package.py
+++ b/var/spack/repos/builtin/packages/aespipe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/agrep/package.py b/var/spack/repos/builtin/packages/agrep/package.py
index dce047ad05..95275764f4 100644
--- a/var/spack/repos/builtin/packages/agrep/package.py
+++ b/var/spack/repos/builtin/packages/agrep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aida/package.py b/var/spack/repos/builtin/packages/aida/package.py
index 592387b86b..7a1c1cd294 100644
--- a/var/spack/repos/builtin/packages/aida/package.py
+++ b/var/spack/repos/builtin/packages/aida/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class Aida(Package):
homepage = "http://aida.freehep.org/"
url = "ftp://ftp.slac.stanford.edu/software/freehep/AIDA/v3.2.1/aida-3.2.1.tar.gz"
+ tags = ['hep']
+
version('3.2.1', sha256='c51da83e99c0985a7ef3e8bc5a60c3ae61f3ca603b61100c2438b4cdadd5bb2e')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/akantu/package.py b/var/spack/repos/builtin/packages/akantu/package.py
index 939c14483b..dce8862426 100644
--- a/var/spack/repos/builtin/packages/akantu/package.py
+++ b/var/spack/repos/builtin/packages/akantu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/alan/package.py b/var/spack/repos/builtin/packages/alan/package.py
index fcf0b69f92..9b69a36c92 100644
--- a/var/spack/repos/builtin/packages/alan/package.py
+++ b/var/spack/repos/builtin/packages/alan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/albany/package.py b/var/spack/repos/builtin/packages/albany/package.py
index c906d898f5..3f2f9094ef 100644
--- a/var/spack/repos/builtin/packages/albany/package.py
+++ b/var/spack/repos/builtin/packages/albany/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -67,36 +67,21 @@ class Albany(CMakePackage):
])
options.extend([
- '-DENABLE_LCM:BOOL=%s' % (
- 'ON' if '+lcm' in spec else 'OFF'),
- '-DENABLE_AERAS:BOOL=%s' % (
- 'ON' if '+aeras' in spec else 'OFF'),
- '-DENABLE_QCAD:BOOL=%s' % (
- 'ON' if '+qcad' in spec else 'OFF'),
- '-DENABLE_HYDRIDE:BOOL=%s' % (
- 'ON' if '+hydride' in spec else 'OFF'),
- '-DENABLE_LCM_SPECULATIVE:BOOL=%s' % (
- 'ON' if '+lcm_spec' in spec else 'OFF'),
- '-DENABLE_LAME:BOOL=%s' % (
- 'ON' if '+lame' in spec else 'OFF'),
- '-DENABLE_DEBUGGING:BOOL=%s' % (
- 'ON' if '+debug' in spec else 'OFF'),
- '-DENABLE_CHECK_FPE:BOOL=%s' % (
- 'ON' if '+fpe' in spec else 'OFF'),
- '-DENABLE_SCOREC:BOOL=%s' % (
- 'ON' if '+scorec' in spec else 'OFF'),
- '-DENABLE_FELIX:BOOL=%s' % (
- 'ON' if '+felix' in spec else 'OFF'),
- '-DENABLE_MOR:BOOL=%s' % (
- 'ON' if '+mor' in spec else 'OFF'),
- '-DENABLE_ALBANY_CI:BOOL=%s' % (
- 'ON' if '+ci' in spec else 'OFF'),
- '-DENABLE_ASCR:BOOL=%s' % (
- 'ON' if '+ascr' in spec else 'OFF'),
- '-DENABLE_PERFORMANCE_TESTS:BOOL=%s' % (
- 'ON' if '+perf' in spec else 'OFF'),
- '-DENABLE_64BIT_INT:BOOL=%s' % (
- 'ON' if '+64bit' in spec else 'OFF')
+ self.define_from_variant('ENABLE_LCM', 'lcm'),
+ self.define_from_variant('ENABLE_AERAS', 'aeras'),
+ self.define_from_variant('ENABLE_QCAD', 'qcad'),
+ self.define_from_variant('ENABLE_HYDRIDE', 'hydride'),
+ self.define_from_variant('ENABLE_LCM_SPECULATIVE', 'lcm_spec'),
+ self.define_from_variant('ENABLE_LAME', 'lame'),
+ self.define_from_variant('ENABLE_DEBUGGING', 'debug'),
+ self.define_from_variant('ENABLE_CHECK_FPE', 'fpe'),
+ self.define_from_variant('ENABLE_SCOREC', 'scorec'),
+ self.define_from_variant('ENABLE_FELIX', 'felix'),
+ self.define_from_variant('ENABLE_MOR', 'mor'),
+ self.define_from_variant('ENABLE_ALBANY_CI', 'ci'),
+ self.define_from_variant('ENABLE_ASCR', 'ascr'),
+ self.define_from_variant('ENABLE_PERFORMANCE_TESTS', 'perf'),
+ self.define_from_variant('ENABLE_64BIT_INT', '64bit')
])
return options
diff --git a/var/spack/repos/builtin/packages/albert/package.py b/var/spack/repos/builtin/packages/albert/package.py
index 386220fa3a..f92054ead4 100644
--- a/var/spack/repos/builtin/packages/albert/package.py
+++ b/var/spack/repos/builtin/packages/albert/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Albert(MakefilePackage):
url = "https://github.com/kentavv/Albert/archive/v4.0a_opt4.tar.gz"
version('4.0a_opt4', sha256='80b9ee774789c9cd123072523cfb693c443c3624708a58a5af177a51f36b2c79')
+ version('4.0a', sha256='caf49e24fb9bf2a09053d9bf022c4737ffe61d62ce9c6bc32aa03dded2a14913')
depends_on('readline')
diff --git a/var/spack/repos/builtin/packages/alembic/package.py b/var/spack/repos/builtin/packages/alembic/package.py
new file mode 100644
index 0000000000..35173009dc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alembic/package.py
@@ -0,0 +1,38 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Alembic(CMakePackage):
+ """Alembic is an open computer graphics interchange
+ framework. Alembic distills complex, animated scenes into a
+ non-procedural, application-independent set of baked
+ geometric results."""
+
+ homepage = "https://www.alembic.io"
+ url = "https://github.com/alembic/alembic/archive/1.7.16.tar.gz"
+
+ version('1.7.16', sha256='2529586c89459af34d27a36ab114ad1d43dafd44061e65cfcfc73b7457379e7c')
+
+ variant('python', default=False, description='Python support')
+ variant('hdf5', default=False, description='HDF5 support')
+
+ depends_on('cmake@2.8.11:', type='build')
+ depends_on('openexr@2.2.0:')
+ depends_on('hdf5@1.8.9:', when="+hdf5")
+ depends_on('boost@1.55:')
+ depends_on('zlib')
+ depends_on('py-ilmbase', when="+python")
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('USE_HDF5', 'hdf5')
+ ]
+
+ if self.spec.satisfies('+python') and self.spec['python'].satisfies('@3:'):
+ args.append('-DPython_ADDITIONAL_VERSIONS=3')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/alglib/package.py b/var/spack/repos/builtin/packages/alglib/package.py
index 872cbfc6d3..6fe40c6b2f 100644
--- a/var/spack/repos/builtin/packages/alglib/package.py
+++ b/var/spack/repos/builtin/packages/alglib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/allpaths-lg/package.py b/var/spack/repos/builtin/packages/allpaths-lg/package.py
index b0bb49b3a1..9409a69e89 100644
--- a/var/spack/repos/builtin/packages/allpaths-lg/package.py
+++ b/var/spack/repos/builtin/packages/allpaths-lg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/alluxio/package.py b/var/spack/repos/builtin/packages/alluxio/package.py
index a0c9be78b0..50ed750b89 100644
--- a/var/spack/repos/builtin/packages/alluxio/package.py
+++ b/var/spack/repos/builtin/packages/alluxio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/alps/alps_climit.patch b/var/spack/repos/builtin/packages/alps/alps_climit.patch
new file mode 100644
index 0000000000..63a45a069a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alps/alps_climit.patch
@@ -0,0 +1,11 @@
+diff -u -r -N e/alps/src/alps/osiris/xdrcore.C h/alps/src/alps/osiris/xdrcore.C
+--- e/alps/src/alps/osiris/xdrcore.C 2020-11-04 12:59:46.000000000 +0900
++++ h/alps/src/alps/osiris/xdrcore.C 2020-12-16 11:45:16.000000000 +0900
+@@ -66,6 +66,7 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <stdlib.h>
++#include <climits>
+
+ #include <alps/osiris/xdrcore.h>
+
diff --git a/var/spack/repos/builtin/packages/alps/alps_cmake_time.patch b/var/spack/repos/builtin/packages/alps/alps_cmake_time.patch
new file mode 100644
index 0000000000..0b64d830bd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alps/alps_cmake_time.patch
@@ -0,0 +1,11 @@
+--- a/alps/config/run_test.cmake 2020-12-10 10:05:48.925076699 +0900
++++ b/alps/config/run_test.cmake 2020-12-10 11:37:18.180959480 +0900
+@@ -3,7 +3,7 @@
+ # (See accompanying file LICENSE_1_0.txt or copy at
+ # http://www.boost.org/LICENSE_1_0.txt)
+
+-find_program(cmd_path ${cmd} ${binarydir} ${dllexedir})
++find_program(cmd_path ${cmd} ${binarydir} ${dllexedir} NO_SYSTEM_ENVIRONMENT_PATH)
+
+ find_file(input_path ${input}.input ${binarydir} ${sourcedir})
+ if(NOT input_path)
diff --git a/var/spack/repos/builtin/packages/alps/alps_newgcc.patch b/var/spack/repos/builtin/packages/alps/alps_newgcc.patch
new file mode 100644
index 0000000000..27e89ad90f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alps/alps_newgcc.patch
@@ -0,0 +1,59 @@
+diff -u -r -N a/alps/applications/dmrg/dmrg/dmtk/system.h b/alps/applications/dmrg/dmrg/dmtk/system.h
+--- a/alps/applications/dmrg/dmrg/dmtk/system.h 2020-10-20 15:38:28.000000000 +0900
++++ b/alps/applications/dmrg/dmrg/dmtk/system.h 2020-10-20 15:40:15.000000000 +0900
+@@ -577,8 +577,11 @@
+ {
+ s.write((const char *)&_numsweeps, sizeof(size_t));
+ for(int i = 1; i <= _numsweeps; i++){
+- s.write((const char *)&_sweeps(0,i), sizeof(double));
+- s.write((const char *)&_sweeps(1,i), sizeof(double));
++ double x;
++ x = _sweeps(0,i);
++ s.write((const char *)&x, sizeof(double));
++ x = _sweeps(1,i);
++ s.write((const char *)&x, sizeof(double));
+ }
+ s.write((const char *)&_in_warmup, sizeof(bool));
+ s.write((const char *)&_sweep, sizeof(int));
+diff -u -r -N a/alps/applications/dmrg/mps/framework/dmrg/mp_tensors/twositetensor.hpp b/alps/applications/dmrg/mps/framework/dmrg/mp_tensors/twositetensor.hpp
+--- a/alps/applications/dmrg/mps/framework/dmrg/mp_tensors/twositetensor.hpp 2020-10-20 14:47:06.000000000 +0900
++++ b/alps/applications/dmrg/mps/framework/dmrg/mp_tensors/twositetensor.hpp 2020-10-20 14:47:53.000000000 +0900
+@@ -216,8 +216,8 @@
+ swap(this->left_i, b.left_i);
+ swap(this->right_i, b.right_i);
+ swap(this->data_, b.data_);
+- swap(this->cur_storage, b.cur_storage);
+- swap(this->cur_normalization, b.cur_normalization);
++ this->swap(this->cur_storage, b.cur_storage);
++ this->swap(this->cur_normalization, b.cur_normalization);
+ }
+
+ template<class Matrix, class SymmGroup>
+diff -u -r -N a/alps/applications/qmc/sse4/model.h b/alps/applications/qmc/sse4/model.h
+--- a/alps/applications/qmc/sse4/model.h 2020-10-20 15:12:20.000000000 +0900
++++ b/alps/applications/qmc/sse4/model.h 2020-12-15 14:56:27.000000000 +0900
+@@ -140,11 +140,6 @@
+ return diag_vertex_indices[e_index(state, utype, sites)];
+ }
+
+- double max_diag_me() const
+- {
+- return _max_diag_me;
+- }
+-
+ double c(unsigned unit_type) const
+ {
+ return epsilon + _max_diag_me[unit_type];
+diff -u -r -N a/alps/src/alps/alea/histogram.h b/alps/src/alps/alea/histogram.h
+--- a/alps/src/alps/alea/histogram.h 2020-10-20 14:49:19.000000000 +0900
++++ b/alps/src/alps/alea/histogram.h 2020-12-15 14:56:59.000000000 +0900
+@@ -85,9 +85,7 @@
+ // forward a few things from container
+
+ const_iterator begin() const { return histogram_.begin();}
+- const_iterator rbegin() const { return histogram_.rbegin();}
+ const_iterator end() const { return histogram_.end();}
+- const_iterator rend() const { return histogram_.rend();}
+ size_type size() const { return histogram_.size();}
+ value_type operator[](size_type i) const { return histogram_[i];}
+ value_type at(size_type i) const { return histogram_.at(i);}
diff --git a/var/spack/repos/builtin/packages/alps/package.py b/var/spack/repos/builtin/packages/alps/package.py
index 55df872933..b75de1c5b1 100644
--- a/var/spack/repos/builtin/packages/alps/package.py
+++ b/var/spack/repos/builtin/packages/alps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -33,12 +33,22 @@ class Alps(CMakePackage):
depends_on('py-scipy', type=('build', 'run'))
depends_on('py-matplotlib', type=('build', 'run'))
- # build fails with gcc@7:
- conflicts('%gcc@7:')
+ # use depends_on to help with dependency resolution
+ depends_on('py-numpy@:1.19', when='^python@:3.6.99')
+ depends_on('py-scipy@:1.5', when='^python@:3.6.99')
+
+ # fix for gcc@7:
+ patch('alps_newgcc.patch', when='%gcc@7:')
# remove a problematic build variable
patch('mpi.patch')
+ # include climits to use INT_MAX
+ patch('alps_climit.patch')
+
+ # ctest tries to test '/usr/bin/time'
+ patch('alps_cmake_time.patch')
+
extends('python')
root_cmakelists_dir = 'alps'
@@ -48,3 +58,30 @@ class Alps(CMakePackage):
args.append('Boost_ROOT_DIR=' + self.spec['boost'].prefix)
args.append("-DCMAKE_CXX_FLAGS={0}".format(self.compiler.cxx98_flag))
return args
+
+ def _single_test(self, target, exename, dataname, opts=[]):
+ troot = self.prefix.tutorials
+ copy_tree(join_path(troot, target), target)
+
+ if target == 'dmrg-01-dmrg':
+ test_dir = self.test_suite.current_test_data_dir
+ copy(join_path(test_dir, dataname), target)
+
+ self.run_test('parameter2xml',
+ options=[dataname, 'SEED=123456'],
+ work_dir=target
+ )
+ options = []
+ options.extend(opts)
+ options.extend(['--write-xml', '{0}.in.xml'.format(dataname)])
+ self.run_test(exename,
+ options=options,
+ expected=['Finished with everything.'],
+ work_dir=target
+ )
+
+ def test(self):
+ self._single_test('mc-02-susceptibilities', 'spinmc', 'parm2a',
+ ['--Tmin', '10'])
+ self._single_test('ed-01-sparsediag', 'sparsediag', 'parm1a')
+ self._single_test('dmrg-01-dmrg', 'dmrg', 'spin_one_half')
diff --git a/var/spack/repos/builtin/packages/alps/test/spin_one_half b/var/spack/repos/builtin/packages/alps/test/spin_one_half
new file mode 100644
index 0000000000..bb47ce88e7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alps/test/spin_one_half
@@ -0,0 +1,9 @@
+LATTICE="open chain lattice"
+MODEL="spin"
+CONSERVED_QUANTUMNUMBERS="N,Sz"
+Sz_total=0
+J=1
+SWEEPS=4
+NUMBER_EIGENVALUES=1
+L=32
+{MAXSTATES=100}
diff --git a/var/spack/repos/builtin/packages/alquimia/package.py b/var/spack/repos/builtin/packages/alquimia/package.py
index d999fb1129..eaa94afd09 100644
--- a/var/spack/repos/builtin/packages/alquimia/package.py
+++ b/var/spack/repos/builtin/packages/alquimia/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -44,8 +44,7 @@ class Alquimia(CMakePackage):
options = ['-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
'-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
'-DUSE_XSDK_DEFAULTS=YES',
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
'-DTPL_ENABLE_MPI:BOOL=ON',
'-DMPI_BASE_DIR:PATH=%s' % spec['mpi'].prefix,
'-DTPL_ENABLE_HDF5:BOOL=ON',
diff --git a/var/spack/repos/builtin/packages/alsa-lib/package.py b/var/spack/repos/builtin/packages/alsa-lib/package.py
index a267f430e2..69277ddc33 100644
--- a/var/spack/repos/builtin/packages/alsa-lib/package.py
+++ b/var/spack/repos/builtin/packages/alsa-lib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aluminum/package.py b/var/spack/repos/builtin/packages/aluminum/package.py
index 8b3453dd54..1cb279a90a 100644
--- a/var/spack/repos/builtin/packages/aluminum/package.py
+++ b/var/spack/repos/builtin/packages/aluminum/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ import os
from spack import *
-class Aluminum(CMakePackage, CudaPackage):
+class Aluminum(CMakePackage, CudaPackage, ROCmPackage):
"""Aluminum provides a generic interface to high-performance
communication libraries, with a focus on allreduce
algorithms. Blocking and non-blocking algorithms and GPU-aware
@@ -22,6 +22,8 @@ class Aluminum(CMakePackage, CudaPackage):
maintainers = ['bvanessen']
version('master', branch='master')
+ version('1.0.0', sha256='028d12e271817214db5c07c77b0528f88862139c3e442e1b12f58717290f414a')
+ version('0.7.0', sha256='bbb73d2847c56efbe6f99e46b41d837763938483f2e2d1982ccf8350d1148caa')
version('0.6.0', sha256='6ca329951f4c7ea52670e46e5020e7e7879d9b56fed5ff8c5df6e624b313e925')
version('0.5.0', sha256='dc365a5849eaba925355a8efb27005c5f22bcd1dca94aaed8d0d29c265c064c1')
version('0.4.0', sha256='4d6fab5481cc7c994b32fb23a37e9ee44041a9f91acf78f981a97cb8ef57bb7d')
@@ -37,12 +39,19 @@ class Aluminum(CMakePackage, CudaPackage):
' communication of accelerator data')
variant('cuda_rma', default=False, description='Builds with support for CUDA intra-node '
' Put/Get and IPC RMA functionality')
+ variant('rccl', default=False, description='Builds with support for NCCL communication lib')
depends_on('cmake@3.17.0:', type='build')
depends_on('mpi')
- depends_on('nccl', when='+nccl')
+ depends_on('nccl@2.7.0-0:', when='+nccl')
depends_on('hwloc@1.11:')
+ depends_on('hwloc +cuda +nvml', when='+cuda')
+ depends_on('hwloc@2.3.0:', when='+rocm')
depends_on('cub', when='@:0.1,0.6.0: +cuda ^cuda@:10.99')
+ depends_on('hipcub', when='@:0.1,0.6.0: +rocm')
+
+ conflicts('~cuda', when='+cuda_rma', msg='CUDA RMA support requires CUDA')
+ conflicts('+cuda', when='+rocm', msg='CUDA and ROCm support are mutually exclusive')
generator = 'Ninja'
depends_on('ninja', type='build')
@@ -50,10 +59,15 @@ class Aluminum(CMakePackage, CudaPackage):
def cmake_args(self):
spec = self.spec
args = [
+ '-DCMAKE_CXX_STANDARD=14',
'-DALUMINUM_ENABLE_CUDA:BOOL=%s' % ('+cuda' in spec),
- '-DALUMINUM_ENABLE_NCCL:BOOL=%s' % ('+nccl' in spec)]
+ '-DALUMINUM_ENABLE_NCCL:BOOL=%s' % ('+nccl' in spec or '+rccl' in spec),
+ '-DALUMINUM_ENABLE_ROCM:BOOL=%s' % ('+rocm' in spec)]
+
+ if '+cuda' in spec:
+ args.append('-DCMAKE_CUDA_STANDARD=14')
- if '@0.5:':
+ if spec.satisfies('@0.5:'):
args.extend([
'-DALUMINUM_ENABLE_HOST_TRANSFER:BOOL=%s' % ('+ht' in spec),
'-DALUMINUM_ENABLE_MPI_CUDA:BOOL=%s' %
@@ -76,4 +90,16 @@ class Aluminum(CMakePackage, CudaPackage):
args.extend([
'-DOpenMP_DIR={0}'.format(clang_root)])
+ if '+rocm' in spec:
+ args.extend([
+ '-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix),
+ '-DHIP_CXX_COMPILER={0}'.format(self.spec['hip'].hipcc)])
+ archs = self.spec.variants['amdgpu_target'].value
+ if archs != 'none':
+ arch_str = ",".join(archs)
+ args.append(
+ '-DHIP_HIPCC_FLAGS=--amdgpu-target={0}'
+ ' -g -fsized-deallocation -fPIC'.format(arch_str)
+ )
+
return args
diff --git a/var/spack/repos/builtin/packages/ambari/package.py b/var/spack/repos/builtin/packages/ambari/package.py
index 796f1a33a6..2348a3c80d 100644
--- a/var/spack/repos/builtin/packages/ambari/package.py
+++ b/var/spack/repos/builtin/packages/ambari/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/amber/package.py b/var/spack/repos/builtin/packages/amber/package.py
index 797d708fbc..4082bff9cd 100644
--- a/var/spack/repos/builtin/packages/amber/package.py
+++ b/var/spack/repos/builtin/packages/amber/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,47 +12,55 @@ class Amber(Package, CudaPackage):
"""Amber is a suite of biomolecular simulation programs together
with Amber tools.
- Note: The version number is composed of the Amber version (major)
- and the tools version (minor). A manual download is required for
- both Amber and Amber tools.
- Spack will search your current directory for the download files.
- Alternatively, add the files to a mirror so that Spack can find them.
- For instructions on how to set up a mirror, see
- http://spack.readthedocs.io/en/latest/mirrors.html"""
+ A manual download is required for Ambers. Spack will search your current
+ directory for the download files. Alternatively, add the files to a mirror
+ so that Spack can find them. For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html
+
+ Note: Only certain versions of ambertools are compatible with amber.
+ Only the latter version of ambertools for each amber version is supported.
+ """
homepage = "http://ambermd.org/"
url = "file://{0}/Amber18.tar.bz2".format(os.getcwd())
- maintainers = ['hseara']
+ manual_download = True
- def url_for_version(self, version):
- url = "file://{0}/Amber{1}.tar.bz2".format(
- os.getcwd(), version.up_to(1))
- return url
+ maintainers = ['hseara']
version(
- '18.20', sha256='2060897c0b11576082d523fb63a51ba701bc7519ff7be3d299d5ec56e8e6e277')
+ '20', sha256='a4c53639441c8cc85adee397933d07856cc4a723c82c6bea585cd76c197ead75')
version(
- '18.19', sha256='2060897c0b11576082d523fb63a51ba701bc7519ff7be3d299d5ec56e8e6e277')
+ '18', sha256='2060897c0b11576082d523fb63a51ba701bc7519ff7be3d299d5ec56e8e6e277')
version(
- '16.16', sha256='3b7ef281fd3c46282a51b6a6deed9ed174a1f6d468002649d84bfc8a2577ae5d')
+ '16', sha256='3b7ef281fd3c46282a51b6a6deed9ed174a1f6d468002649d84bfc8a2577ae5d',
+ deprecated=True)
- resources = [
+ resources = {
# [version amber, version ambertools , sha256sum]
- ('18', '20', 'b1e1f8f277c54e88abc9f590e788bbb2f7a49bcff5e8d8a6eacfaf332a4890f9'),
- ('18', '19', '0c86937904854b64e4831e047851f504ec45b42e593db4ded92c1bee5973e699'),
- ('16', '16', '7b876afe566e9dd7eb6a5aa952a955649044360f15c1f5d4d91ba7f41f3105fa'),
- ]
- for ver, ambertools_ver, checksum in resources:
- resource(when='@{0}.{1}'.format(ver, ambertools_ver),
+ '20': ('20', 'b1e1f8f277c54e88abc9f590e788bbb2f7a49bcff5e8d8a6eacfaf332a4890f9'),
+ '18': ('19', '0c86937904854b64e4831e047851f504ec45b42e593db4ded92c1bee5973e699'),
+ '16': ('16', '7b876afe566e9dd7eb6a5aa952a955649044360f15c1f5d4d91ba7f41f3105fa'),
+ }
+ for ver, (ambertools_ver, ambertools_checksum) in resources.items():
+ resource(when='@{0}'.format(ver),
name='AmberTools',
- url='file://{0}/AmberTools{1}.tar.bz2'.format(os.getcwd(),
- ambertools_ver),
- sha256=checksum,
+ url='http://ambermd.org/downloads/AmberTools{0}.tar.bz2'.format(
+ ambertools_ver),
+ sha256=ambertools_checksum,
destination='',
placement='ambertools_tmpdir',
)
patches = [
+ ('20', '1', '10780cb91a022b49ffdd7b1e2bf4a572fa4edb7745f0fc4e5d93b158d6168e42'),
+ ('20', '2', '9c973e3f8f33a271d60787e8862901e8f69e94e7d80cda1695f7fad7bc396093'),
+ ('20', '3', 'acb359dc9b1bcff7e0f1965baa9f3f3dc18eeae99c49f1103c1e2986c0bbeed8'),
+ ('20', '4', 'fd93c74f5ec80689023648cdd12b2c5fb21a3898c81ebc3fa256ef244932562a'),
+ ('20', '5', '8e46d5be28c002f560050a71f4851b01ef45a3eb66ac90d7e23553fae1370e68'),
+ ('20', '6', '8cf9707b3d08ad9242326f02d1861831ad782c9bfb0c46e7b1f0d4640571d5c1'),
+ ('20', '7', '143b6a09f774aeae8b002afffb00839212020139a11873a3a1a34d4a63fa995d'),
+ ('20', '8', 'a6fc6d5c8ba0aad3a8afe44d1539cc299ef78ab53721e28244198fd5425d14ad'),
+ ('20', '9', '5ce6b534bab869b1e9bfefa353d7f578750e54fa72c8c9d74ddf129d993e78cf'),
('18', '1', '3cefac9a24ece99176d5d2d58fea2722de3e235be5138a128428b9260fe922ad'),
('18', '2', '3a0707a9a59dcbffa765dcf87b68001450095c51b96ec39d21260ba548a2f66a'),
('18', '3', '24c2e06f71ae553a408caa3f722254db2cbf1ca4db274542302184e3d6ca7015'),
@@ -92,17 +100,17 @@ class Amber(Package, CudaPackage):
sha256=checksum, level=0, when='@{0}'.format(ver))
# Patch to add ppc64le in config.guess
- patch('ppc64le.patch', when='@18.20')
+ patch('ppc64le.patch', when='@18: target=ppc64le')
# Patch to add aarch64 in config.guess
- patch('aarch64.patch', when='@18.20')
+ patch('aarch64.patch', when='@18: target=aarch64')
# Workaround to modify the AmberTools script when using the NVIDIA
# compilers
- patch('nvhpc.patch', when='@18.20 %nvhpc')
+ patch('nvhpc.patch', when='@18: %nvhpc')
# Workaround to use NVIDIA compilers to build the bundled Boost
- patch('nvhpc-boost.patch', when='@18.20 %nvhpc')
+ patch('nvhpc-boost.patch', when='@18: %nvhpc')
variant('mpi', description='Build MPI executables',
default=True)
diff --git a/var/spack/repos/builtin/packages/amdblis/package.py b/var/spack/repos/builtin/packages/amdblis/package.py
index e4657aeb8c..22fa9165eb 100644
--- a/var/spack/repos/builtin/packages/amdblis/package.py
+++ b/var/spack/repos/builtin/packages/amdblis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,9 +17,22 @@ class Amdblis(BlisBase):
_name = 'amdblis'
homepage = "https://developer.amd.com/amd-aocl/blas-library/"
- url = "https://github.com/amd/blis/archive/2.2.tar.gz"
+ url = "https://github.com/amd/blis/archive/3.0.tar.gz"
git = "https://github.com/amd/blis.git"
maintainers = ['amd-toolchain-support']
+ version('3.0', sha256='ac848c040cd6c3550fe49148dbdf109216cad72d3235763ee7ee8134e1528517')
version('2.2', sha256='e1feb60ac919cf6d233c43c424f6a8a11eab2c62c2c6e3f2652c15ee9063c0c9')
+
+ def configure_args(self):
+ spec = self.spec
+ args = super(Amdblis, self).configure_args()
+
+ if spec.satisfies('@3.0 %aocc'):
+ """ To enabled Fortran to C calling convention for
+ complex types when compiling with aocc flang"""
+ args.append('CFLAGS={0}'.format("-DAOCL_F2C"))
+ args.append('CXXFLAGS={0}'.format("-DAOCL_F2C"))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/amdfftw/package.py b/var/spack/repos/builtin/packages/amdfftw/package.py
index 9e4887ae98..5ac24cd2b7 100644
--- a/var/spack/repos/builtin/packages/amdfftw/package.py
+++ b/var/spack/repos/builtin/packages/amdfftw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,50 +25,74 @@ class Amdfftw(FftwBase):
_name = 'amdfftw'
homepage = "https://developer.amd.com/amd-aocl/fftw/"
- url = "https://github.com/amd/amd-fftw/archive/2.2.tar.gz"
+ url = "https://github.com/amd/amd-fftw/archive/3.0.tar.gz"
git = "https://github.com/amd/amd-fftw.git"
maintainers = ['amd-toolchain-support']
+ version('3.0', sha256='a69deaf45478a59a69f77c4f7e9872967f1cfe996592dd12beb6318f18ea0bcd')
version('2.2', sha256='de9d777236fb290c335860b458131678f75aa0799c641490c644c843f0e246f8')
- variant('shared', default=True, description='Builds a shared version of the library')
+ variant('shared', default=True, description="Builds a shared version of the library")
variant('openmp', default=True, description="Enable OpenMP support")
- variant('debug', default=False, description='Builds a debug version of the library')
+ variant('threads', default=False, description="Enable SMP threads support")
+ variant('debug', default=False, description="Builds a debug version of the library")
+ variant(
+ 'amd-fast-planner',
+ default=False,
+ description="Option to reduce the planning time without much"
+ "tradeoff in the performance. It is supported for"
+ "Float and double precisions only.")
depends_on('texinfo')
provides('fftw-api@3', when='@2:')
- conflicts('precision=quad', when='%aocc', msg="AOCC clang doesn't support quad precision")
- conflicts('+debug', when='%aocc', msg="AOCC clang doesn't support debug")
+ conflicts('precision=quad', when='@2.2 %aocc', msg="AOCC clang doesn't support quad precision")
+ conflicts('+debug', when='@2.2 %aocc', msg="AOCC clang doesn't support debug")
conflicts('%gcc@:7.2', when="@2.2:", msg="Required GCC version above 7.2 for AMDFFTW")
+ conflicts('+amd-fast-planner', when="@2.2", msg="amd-fast-planner is supported from 3.0 onwards")
+ conflicts(
+ '+amd-fast-planner',
+ when='precision=quad',
+ msg="amd-fast-planner doesn't support quad precision")
+ conflicts(
+ '+amd-fast-planner',
+ when='precision=long_double',
+ msg="amd-fast-planner doesn't support long_double precision")
def configure(self, spec, prefix):
"""Configure function"""
# Base options
options = [
'--prefix={0}'.format(prefix),
- '--enable-amd-opt',
- '--enable-threads'
+ '--enable-amd-opt'
]
# Check if compiler is AOCC
- if spec.satisfies('%aocc'):
+ if '%aocc' in spec:
options.append("CC={0}".format(os.path.basename(spack_cc)))
- options.append("CXX={0}".format(os.path.basename(spack_cxx)))
options.append("FC={0}".format(os.path.basename(spack_fc)))
+ options.append("F77={0}".format(os.path.basename(spack_fc)))
if '+shared' in spec:
options.append('--enable-shared')
else:
options.append('--disable-shared')
+ if '+debug' in spec:
+ options.append('--enable-debug')
+
if '+openmp' in spec:
options.append('--enable-openmp')
else:
options.append('--disable-openmp')
+ if '+threads' in spec:
+ options.append('--enable-threads')
+ else:
+ options.append('--disable-threads')
+
if '+mpi' in spec:
options.append('--enable-mpi')
options.append('--enable-amd-mpifft')
@@ -76,24 +100,33 @@ class Amdfftw(FftwBase):
options.append('--disable-mpi')
options.append('--disable-amd-mpifft')
+ if '+amd-fast-planner' in spec:
+ options.append('--enable-amd-fast-planner')
+ else:
+ options.append('--disable-amd-fast-planner')
+
if not self.compiler.f77 or not self.compiler.fc:
options.append("--disable-fortran")
+ # Cross compilation is supported in amd-fftw by making use of target
+ # variable to set AMD_ARCH configure option.
+ # Spack user can not directly use AMD_ARCH for this purpose but should
+ # use target variable to set appropriate -march option in AMD_ARCH.
+ arch = spec.architecture
+ options.append(
+ "AMD_ARCH={0}".format(
+ arch.target.optimization_flags(
+ spec.compiler).split("=")[-1]))
+
# Specific SIMD support.
# float and double precisions are supported
- simd_features = ['sse2', 'avx', 'avx2', 'avx512', 'avx-128-fma',
- 'kcvi', 'vsx', 'neon']
+ simd_features = ['sse2', 'avx', 'avx2']
+
simd_options = []
for feature in simd_features:
msg = '--enable-{0}' if feature in spec.target else '--disable-{0}'
simd_options.append(msg.format(feature))
- simd_options += [
- '--enable-fma' if 'fma' in spec.target else '--disable-fma'
- ]
-
- float_simd_features = ['altivec', 'sse']
-
# When enabling configure option "--enable-amd-opt", do not use the
# configure option "--enable-generic-simd128" or
# "--enable-generic-simd256"
@@ -117,14 +150,5 @@ class Amdfftw(FftwBase):
if precision in ('float', 'double'):
opts += simd_options
- # float-only acceleration
- if precision == 'float':
- for feature in float_simd_features:
- if feature in spec.target:
- msg = '--enable-{0}'
- else:
- msg = '--disable-{0}'
- opts.append(msg.format(feature))
-
with working_dir(precision, create=True):
configure(*opts)
diff --git a/var/spack/repos/builtin/packages/amdlibflame/package.py b/var/spack/repos/builtin/packages/amdlibflame/package.py
index 2a19f6df89..308d925c3d 100644
--- a/var/spack/repos/builtin/packages/amdlibflame/package.py
+++ b/var/spack/repos/builtin/packages/amdlibflame/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,11 +31,12 @@ class Amdlibflame(LibflameBase):
_name = 'amdlibflame'
homepage = "http://developer.amd.com/amd-cpu-libraries/blas-library/#libflame"
- url = "https://github.com/amd/libflame/archive/2.2.tar.gz"
+ url = "https://github.com/amd/libflame/archive/3.0.tar.gz"
git = "https://github.com/amd/libflame.git"
maintainers = ['amd-toolchain-support']
+ version('3.0', sha256='d94e08b688539748571e6d4c1ec1ce42732eac18bd75de989234983c33f01ced')
version('2.2', sha256='12b9c1f92d2c2fa637305aaa15cf706652406f210eaa5cbc17aaea9fcfa576dc')
patch('aocc-2.2.0.patch', when="@:2.999", level=1)
@@ -54,6 +55,12 @@ class Amdlibflame(LibflameBase):
"""configure_args function"""
args = super(Amdlibflame, self).configure_args()
args.append("--enable-external-lapack-interfaces")
+
+ """To enabled Fortran to C calling convention for
+ complex types when compiling with aocc flang"""
+ if "@3.0: %aocc" in self.spec:
+ args.append("--enable-f2c-dotc")
+
return args
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/amdlibm/0001-libm-ose-Scripts-cleanup-pyc-files.patch b/var/spack/repos/builtin/packages/amdlibm/0001-libm-ose-Scripts-cleanup-pyc-files.patch
new file mode 100755
index 0000000000..fc084b7d4b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/amdlibm/0001-libm-ose-Scripts-cleanup-pyc-files.patch
@@ -0,0 +1,601 @@
+From edd381260e27226d48108ec7b578c43caf723640 Mon Sep 17 00:00:00 2001
+From: Pranoy Jayaraj <Pranoy.Jayaraj@amd.com>
+Date: Sun, 20 Dec 2020 18:04:38 +0530
+Subject: [PATCH 1/2] libm:ose:Scripts:cleanup pyc files
+
+---
+ SConstruct | 29 +++++++-
+ scripts/cfg/__init__.py | 59 ++++++++---------
+ scripts/cfg/compiler/__init__.py | 109 ++++++++++++++-----------------
+ scripts/cfg/compiler/gcc.py | 105 +++++++++++++++--------------
+ scripts/cfg/compiler/llvm.py | 57 ++++++++++++----
+ scripts/cfg/helper.py | 14 ++++
+ src/SConscript | 3 +
+ 7 files changed, 220 insertions(+), 156 deletions(-)
+
+diff --git a/SConstruct b/SConstruct
+index 79a7695..64150c0 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -53,6 +53,22 @@ defcfg = DefaultCfg(build_root=Dir('#build', create=True))
+
+ env = defcfg.GetDefaultEnv()
+
++#check intel lib path
++intel_lib_path = None
++libabi = env['libabi']
++if libabi == 'svml':
++ for p in env['ENV']['PATH'].split(':'):
++ if 'intel' in p:
++ intel_lib_path=p
++ break
++
++ if intel_lib_path is None:
++ print ("Error! Intel lib not found")
++ Exit(2)
++ else:
++ print (intel_lib_path)
++ env.Append(INTEL_LIB_PATH = intel_lib_path)
++
+ # Add shared top-level headers
+ env.Prepend(CPPPATH=[Dir('include')])
+
+@@ -98,10 +114,17 @@ targets += amdlibm
+ #
+ # Build Test lib and associated tests
+ #
++
+ testenv = env.Clone()
+-testenv.Append(
+- LIBPATH=['#'+joinpath(build_root,'src')]
+-)
++if libabi == 'svml':
++ testenv.Append(
++ LIBPATH=['#'+joinpath(build_root,'src'), env['INTEL_LIB_PATH']]
++ )
++else:
++ testenv.Append(
++ LIBPATH=['#'+joinpath(build_root,'src')]
++ )
++
+ test_lib_objs = [] # Will fill at a later date
+ test_objs = SConscript(dirs='tests',
+ exports = {'env' : testenv},
+diff --git a/scripts/cfg/__init__.py b/scripts/cfg/__init__.py
+index d4f34eb..b21ed2f 100644
+--- a/scripts/cfg/__init__.py
++++ b/scripts/cfg/__init__.py
+@@ -1,28 +1,7 @@
++# Copyright (C) Prem Mallappa
+ #
+-# Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved.
++# Author: Prem Mallappa <prem.mallappa@gmail.com>
+ #
+-# Redistribution and use in source and binary forms, with or without modification,
+-# are permitted provided that the following conditions are met:
+-# 1. Redistributions of source code must retain the above copyright notice,
+-# this list of conditions and the following disclaimer.
+-# 2. Redistributions in binary form must reproduce the above copyright notice,
+-# this list of conditions and the following disclaimer in the documentation
+-# and/or other materials provided with the distribution.
+-# 3. Neither the name of the copyright holder nor the names of its contributors
+-# may be used to endorse or promote products derived from this software without
+-# specific prior written permission.
+-#
+-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+-# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+-# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+-# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+-# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+-# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
+-# OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+-# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+-# POSSIBILITY OF SUCH DAMAGE.
+-
+ from os.path import join as joinpath
+ from os import environ
+
+@@ -66,7 +45,9 @@ class DefaultCfg(object):
+ self.defenv = Environment(variables = self.defvars,
+ ENV = {'PATH' : environ['PATH']})
+
+- self.Check()
++ #self.Check()
++ #for key in self.defvars.keys():
++ # print(key)
+
+ def AddOptions(self):
+ opts = cfg.LocalOption()
+@@ -119,6 +100,13 @@ class DefaultCfg(object):
+ --toolchain-base=/usr/local/toolchain/
+ CC will be used as /usr/local/toolchain/bin/gcc if --compiler is gcc""")
+
++ opts.Add('--prefix', dest='prefix', nargs=1, action='callback',
++ type='str',
++ callback=self.__default_store,
++ help="""Specify an install prefix directory
++ the directory will be create if non-existant""")
++
++
+ self.opts = opts
+
+ def AddVariables(self):
+@@ -130,7 +118,7 @@ class DefaultCfg(object):
+ map={}, ignorecase=0), # case sensitive
+ # test abi makes tests to call out for given library call
+ EnumVariable('libabi', 'Test ABI for library function calling', 'aocl',
+- allowed_values=('aocl', 'glibc', 'libm', 'acml','amdlibm'),
++ allowed_values=('aocl', 'glibc', 'libm', 'acml','amdlibm', 'svml'),
+ map={}, ignorecase=2), # lowercase always
+ EnumVariable('developer', 'A developer friendly mode', 0,
+ allowed_values=('0', '1', '2', '3', '4'),
+@@ -140,9 +128,15 @@ class DefaultCfg(object):
+ EnumVariable('compiler', "Select compiler type", 'gcc',
+ allowed_values=('gcc', 'aocc', 'llvm', 'icc'), ignorecase=2),
+
+- PathVariable('toolchain_base', "Use this as toolchain prefix", '/usr/bin')
++ PathVariable('toolchain_base', "Use this as toolchain prefix", '/usr/bin'),
++ PathVariable('prefix', "use this as install prefix", '/usr/local')
+ )
+
++ defvars.Add(PathVariable('CC', help="Custome C compiler", default=None,
++ validator=PathVariable.PathAccept))
++ defvars.Add(PathVariable('CXX', help="Custome C++ compiler", default=None,
++ validator=PathVariable.PathAccept))
++
+ self.defvars = defvars
+
+ def Check(self):
+@@ -154,7 +148,7 @@ class DefaultCfg(object):
+
+ unknown = self.defvars.UnknownVariables()
+ if unknown:
+- print("Unknown variables:", unknown.keys())
++ print("ALM: build: Unknown variables:", unknown.keys())
+ #Exit(1)
+
+ #if debug_mode is mentioned assume build type debug
+@@ -175,14 +169,15 @@ class DefaultCfg(object):
+ env.Append(
+ CPPDEFINES = { 'LIBABI': env['libabi']})
+
+- cmpiler = compiler.gcc.Gcc(self.defenv['build'])
++ cmpiler = compiler.gcc.Gcc(self.defenv['build'],
++ bvars=self.defvars,
++ opts=self.opts)
+ #print(env['compiler'])
+ if env['compiler'] == 'aocc' or env['compiler'] == 'llvm':
+ cmpiler = compiler.llvm.LLVM(self.defenv['build'])
+
+ env.Replace(
+- CXX = cmpiler.CXXCmd(),
+- CC = cmpiler.CCCmd(),
++ CC = cmpiler.Cmd(),
+ CCFLAGS = cmpiler.CFlags(),
+ LINKFLAGS = cmpiler.LDFlags(),
+ )
+@@ -201,6 +196,10 @@ class DefaultCfg(object):
+ CPPDEFINES = {'DEVELOPER' : env['developer']})
+
+ self.defvars.Save(self.def_env_file, env)
++ self.Check()
++
++ env['ENV'].update(environ)
++
+ return env
+
+ def GetHelpTexts(self):
+diff --git a/scripts/cfg/compiler/__init__.py b/scripts/cfg/compiler/__init__.py
+index 60e136a..4383d01 100644
+--- a/scripts/cfg/compiler/__init__.py
++++ b/scripts/cfg/compiler/__init__.py
+@@ -23,77 +23,64 @@
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ # POSSIBILITY OF SUCH DAMAGE.
+
+-class Compiler:
+- def init_env(self):
+- self.env_modifiers = {
+- 'CC' : '',
+- 'CXX' : '',
+- 'CPPFLAGS' : [],
+- 'CFLAGS' : [],
+- 'CXXFLAGS' : [],
+- 'CPPDEFINES' : [],
+- 'LDFLAGS' : []
+- }
++import os
+
+- def CCCmd(self):
+- return self.env_modifiers['CC']
+-
+- def CXXCmd(self):
+- return self.env_modifiers['CXX']
++class Compiler:
++ def __init__(self, prod_mode, bvars = None, opts = None):
++ self.vars = bvars
++ self.opts = opts
++ self.cxxcmd = ''
++ self.cmd = ''
++ self.prod_mode = prod_mode
++ self.compile_flags_debug = [
++ '-g',
++ '-Og',
++ '-march=native',
++ ]
++ self.compile_flags_release = [
++ '-Ofast',
++ '-march=native',
++ '-fipa-pta',
++ '-funsafe-loop-optimizations',
++ '-flto=4',
++ ]
++ self.compile_flag_map = {
++ 'debug': self.compile_flags_debug,
++ 'release' : self.compile_flags_release
++ }
+
+- def CFlags(self):
+- return self.env_modifiers['CFLAGS']
++ self.link_flags_debug = []
+
+- def LDFlags(self):
+- return self.env_modifiers['LDFLAGS']
++ self.link_flags_release = self.compile_flags_release
+
+- def Append(self, d):
+- for key,value in d.items():
+- if isinstance(self.env_modifiers[key], list):
+- self.env_modifiers[key].extend(value)
+- else:
+- self.env_modifiers[key] = value
++ self.link_flag_map = {
++ "debug": self.link_flags_debug,
++ "release": self.link_flags_release
++ }
+
+- def Replace(self, d):
+- self.env_modifiers.update(d)
++ self.cpp_flags_debug = []
+
+- def __init__(self, prod_mode):
+- self.prod_mode = prod_mode
+- self.init_env()
++ self.cpp_flags_release = []
+
+- compile_flags_debug = [
+- '-g',
+- '-Og',
+- #'-march=native',
+- ]
++ self.cpp_flag_map = {
++ "debug": self.cpp_flags_debug,
++ "release": self.cpp_flags_release
++ }
+
+- compile_flags_release = [
+- #'-Ofast',
+- #'-march=native',
+- #'-fipa-pta',
+- #'-funsafe-loop-optimizations',
+- #'-flto=4',
+- #'-fno-strict-aliasing',
+- ]
++ def fixup_from_vars(self):
++ pass
+
+- link_flags_debug = []
+- link_flags_release = compile_flags_release
++ def fixup_from_env(self):
++ if 'CC' in os.environ:
++ self.cmd = os.getenv('CC')
++
++ if 'CXX' in os.environ:
++ self.cxxcmd = os.getenv('CXX')
+
+- cpp_flags_debug = []
+- cpp_flags_release = []
++ if 'CFLAGS' in os.environ:
++ self.compile_flag_map[self.prod_mode]
+
+- pmode = prod_mode.lower()
++ if 'LDFLAGS' in os.environ:
++ self.link_flag_map[self.prod_mode]
+
+- if pmode == "debug" :
+- self.Append({
+- 'CFLAGS' : compile_flags_debug,
+- 'LDFLAGS' : link_flags_debug,
+- 'CPPFLAGS': cpp_flags_debug,}
+- )
+- elif pmode == "release":
+- self.Append({
+- 'CFLAGS' : compile_flags_release,
+- 'LDFLAGS' : link_flags_release,
+- 'CPPFLAGS': cpp_flags_release,}
+- )
+
+diff --git a/scripts/cfg/compiler/gcc.py b/scripts/cfg/compiler/gcc.py
+index c2f8c8e..eb89a73 100644
+--- a/scripts/cfg/compiler/gcc.py
++++ b/scripts/cfg/compiler/gcc.py
+@@ -25,18 +25,36 @@
+
+ from . import Compiler
+ class Gcc(Compiler):
+- def __init__(self, prod_mode):
+- super(Gcc, self).__init__(prod_mode)
+-
+- warnings_cxx = [
+- '-Wctor-dtor-privacy',
+- '-Wnoexcept',
+- '-Wstrict-null-sentinel',
+- '-Wold-style-cast',
+- '-Woverloaded-virtual',
++ def __init__(self, prod_mode, bvars = None, opts = None):
++ super(Gcc, self).__init__(prod_mode, bvars, opts)
++ self.cmd = 'gcc'
++ self.cxxcmd = 'g++'
++ self.compile_flags_debug = [
++ '-g',
++ '-Og',
++ '-march=native',
+ ]
++ self.compile_flags_release = []
++ self.compile_flag_map = {
++ 'debug': self.compile_flags_debug,
++ 'release' : self.compile_flags_release
++ }
++
++ self.link_flags_debug = []
++ self.link_flags_release = self.compile_flags_release
++ self.link_flag_map = {
++ "debug": self.link_flags_debug,
++ "release": self.link_flags_release
++ }
++ self.cpp_flag_map = {
++ "debug": self.cpp_flags_debug,
++ "release": self.cpp_flags_release
++ }
+
+- warnings_c = [
++ self.cpp_flags_debug = []
++ self.cpp_flags_release = []
++
++ self.warnings = [
+ '-Wall',
+ '-Wextra',
+ '-Wpedantic',
+@@ -44,6 +62,7 @@ class Gcc(Compiler):
+ '-Wcast-align',
+ '-Wcast-qual',
+ '-Wconversion',
++ '-Wctor-dtor-privacy',
+ '-Wdisabled-optimization',
+ '-Wdouble-promotion',
+ # '-Weffc++',
+@@ -54,7 +73,10 @@ class Gcc(Compiler):
+ # '-Wlogical-op',
+ '-Wmissing-declarations',
+ '-Wmissing-include-dirs',
++ '-Wnoexcept',
+ '-Wodr',
++ '-Wold-style-cast',
++ '-Woverloaded-virtual',
+ # '-Wpadded',
+ '-Wredundant-decls',
+ '-Wshadow',
+@@ -62,53 +84,40 @@ class Gcc(Compiler):
+ # '-Wsign-promo',
+ # '-Wsuggest-final-methods',
+ # '-Wsuggest-final-types',
+- '-fno-strict-aliasing',
+- # '-Wstrict-overflow=5',
+- # '-Wswitch-default',
+- # -Wswitch-enum needs every switch statement to be handled
+- # explicitly. It would be useful if the language had some
+- # mechanism to activate this on specified switch statements
+- # (to ensure that future changes to the enum are handled
+- # everywhere that they need to be), but it's overkill for an
+- # "all-or-nothing" setting. '-Wswitch-enum',
++ '-Wstrict-null-sentinel',
++ # '-Wstrict-overflow=5',
++ '-Wswitch-default',
++ # -Wswitch-enum needs every switch statement to be handled explicitly.
++ # It would be useful if the language had some mechanism
++ # to activate this on specified switch statements (to ensure that future
++ # changes to the enum are handled everywhere that they need to be), but it's
++ # overkill for an "all-or-nothing" setting.
++ # '-Wswitch-enum',
+ '-Wtrampolines',
+- # '-Wundef',
+- # -Wunsafe-loop-optimizations causes too many spurious warnings. It
+- # may be useful to apply this one periodically and manually
+- # verify the results. It is also issued warning for the
+- # constructor of a const array of const std::string (where
+- # there is no loop in user code).
++ '-Wundef',
++ # -Wunsafe-loop-optimizations causes too many spurious warnings. It may be
++ # useful to apply this one periodically and manually verify the results.
++ # It is also issued warning for the constructor of a const array of const
++ # std::string (where there is no loop in user code).
+ #
+ # '-Wunsafe-loop-optimizations',
+ # -Wuseless-cast is incompatible with BOUNDED_INTEGER_CONDITIONAL
+ # '-Wuseless-cast',
+ '-Wvector-operation-performance',
+- # -Wzero-as-null-pointer-constant does not work with the
+- # operator<=> emulation '-Wzero-as-null-pointer-constant',
++ # -Wzero-as-null-pointer-constant does not work with the operator<=> emulation
++ # '-Wzero-as-null-pointer-constant',
+ '-Werror',
+ '-Wlto-type-mismatch',
+ ]
++ self.fixup_from_env()
+
+
+- # Eventually we should enable all warnings
+- # with compile_flags_release = [] + warnings_c
+- compile_flags_release = []
+- compile_flags_debug = []
+-
+- self.Replace({
+- 'CC' : 'gcc',
+- 'CXX': 'g++',
+- }
+- )
+-
+- if self.prod_mode == "debug":
+- self.Append({
+- 'CFLAGS' : compile_flags_debug,
+- 'CXXFLAGS': warnings_cxx ,
+- })
+- else:
+- self.Append({
+- 'CFLAGS' : compile_flags_release,
+- 'CXXFLAGS': warnings_cxx,
+- })
++ def Cmd(self):
++ return self.cmd
++ def CxxCmd(self):
++ return self.cxxcmd
++ def CFlags(self):
++ return self.compile_flag_map[self.prod_mode]
++ def LDFlags(self):
++ return self.link_flag_map[self.prod_mode]
+
+diff --git a/scripts/cfg/compiler/llvm.py b/scripts/cfg/compiler/llvm.py
+index 0e4c346..b39d341 100644
+--- a/scripts/cfg/compiler/llvm.py
++++ b/scripts/cfg/compiler/llvm.py
+@@ -26,29 +26,58 @@
+ from . import Compiler
+
+ class LLVM(Compiler):
+- def __init__(self, prod_mode):
+- super(LLVM, self).__init__(prod_mode)
+-
+- compile_flags_release = [
+- # fp-contract needed to generate FMA instructions
+- '-ffp-contract=fast',
++ def __init__(self, prod_mode, bvars = None, opts = None):
++ super(LLVM, self).__init__(prod_mode, bvars, opts)
++ self.cmd = 'clang'
++ self.cxxcmd = 'clang++'
++ self.compile_flags_debug = [
++ '-g',
++ '-Og',
++ '-march=native',
++ ]
++ self.compile_flags_release = [
++ '-ffp-contract=fast', # Needed to generate FMA instructions for vector routines
+ #'-Ofast',
+ # '-march=native',
+ # '-fipa-pta',
+ # '-funsafe-loop-optimizations',
+ # '-flto=4',
+ ]
++ self.compile_flag_map = {
++ 'debug': self.compile_flags_debug,
++ 'release' : self.compile_flags_release
++ }
+
+- link_flags_debug = ['-fuse-ld=ld']
+- link_flags_release = ['-fuse-ld=ld']
++ self.link_flags_debug = ['-fuse-ld=ld']
++ self.link_flags_release = ['-fuse-ld=ld']
++
++ self.link_flag_map = {
++ "debug": self.link_flags_debug,
++ "release": self.link_flags_release
++ }
+
+- llvm = {
+- 'CC' : 'clang',
+- 'CXX' : 'clang++',
+- 'CFLAGS' : link_flags_release,
+- 'LDFLAGS' : link_flags_release
++ self.cpp_flag_map = {
++ "debug": self.cpp_flags_debug,
++ "release": self.cpp_flags_release
+ }
+
+- self.Append(llvm)
++ self.cpp_flags_debug = []
++ self.cpp_flags_release = []
++
++ self.warnings = [
++ '-Weverything',
++ ]
++
++ self.fixup_from_env()
++
++ def Cmd(self):
++ return self.cmd
++
++ def CxxCmd(self):
++ return self.cxxcmd
+
++ def CFlags(self):
++ return self.compile_flag_map[self.prod_mode]
+
++ def LDFlags(self):
++ return self.link_flag_map[self.prod_mode]
+diff --git a/scripts/cfg/helper.py b/scripts/cfg/helper.py
+index a0fb991..1d7a01d 100644
+--- a/scripts/cfg/helper.py
++++ b/scripts/cfg/helper.py
+@@ -140,6 +140,18 @@ def UpdateEnvComStr(env):
+ env["SHCCCOMSTR"] = Transform('SHCC')
+ env["SHLINKCOMSTR"] = Transform('SHLINK', hidesrc=True)
+
++
++def MakeInstallRoot(env):
++ """Build root has
++ build/<libabi>-<debug/release/developer>
++ """
++ try:
++ inst = env['prefix']
++ except KeyError:
++ inst = '#install'
++
++ env['INSTALL_PREFIX'] = inst
++
+ def MakeBuildRoot(env):
+ """Build root has
+ build/<libabi>-<debug/release/developer>
+@@ -178,7 +190,9 @@ def SetupConfiguration(env):
+ and puts target into testdir."""
+ #print(env.Dump())
+ MakeBuildRoot(env)
++ MakeInstallRoot(env)
+ UpdateEnvComStr(env)
++ env['compiler'] = GetOption('compiler')
+
+ if env['debug_mode'] != 'no':
+ env.Append(CPPDEFINES = {'DEBUG': '1'})
+diff --git a/src/SConscript b/src/SConscript
+index 0fe4e19..32d6b83 100644
+--- a/src/SConscript
++++ b/src/SConscript
+@@ -27,6 +27,7 @@
+ Import('env')
+ from os.path import join as joinpath
+
++installdir = env['prefix']
+ builddir = joinpath(env['BUILDROOT'], 'src')
+
+ e = env.Clone()
+@@ -73,6 +74,8 @@ libm = almenv.StaticLibrary('alm', alm_objs)
+ libmso = almenv.SharedLibrary('alm', alm_objs)
+
+
++almenv.Alias("install", almenv.Install(joinpath(installdir, "lib"), [libmso, libm]))
++
+ fast_libm = SConscript('fast/SConscript',
+ exports = {'env' : e},
+ duplicate = 0,
+--
+2.28.0
+
diff --git a/var/spack/repos/builtin/packages/amdlibm/0002-libm-ose-prevent-log-v3.c-from-building.patch b/var/spack/repos/builtin/packages/amdlibm/0002-libm-ose-prevent-log-v3.c-from-building.patch
new file mode 100755
index 0000000000..b540f1cda3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/amdlibm/0002-libm-ose-prevent-log-v3.c-from-building.patch
@@ -0,0 +1,25 @@
+From 5ade2f2eb1745f1d09281044e44b3272f01eb5ed Mon Sep 17 00:00:00 2001
+From: Prem Mallappa <Premachandra.Mallappa@amd.com>
+Date: Tue, 22 Dec 2020 21:03:57 +0530
+Subject: [PATCH 2/2] libm: ose: prevent log-v3.c from building
+
+Signed-off-by: Prem Mallappa <Premachandra.Mallappa@amd.com>
+---
+ src/optmized/SConscript | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/optmized/SConscript b/src/optmized/SConscript
+index a614e9b..412dbdf 100644
+--- a/src/optmized/SConscript
++++ b/src/optmized/SConscript
+@@ -67,6 +67,7 @@ else:
+
+ experiment_src=[
+ 'expm1f.c',
++ 'log_v3.c',
+ ]
+
+ source = Glob('*.c', exclude=experiment_src)
+--
+2.28.0
+
diff --git a/var/spack/repos/builtin/packages/amdlibm/package.py b/var/spack/repos/builtin/packages/amdlibm/package.py
new file mode 100644
index 0000000000..8eaca751aa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/amdlibm/package.py
@@ -0,0 +1,70 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class Amdlibm(SConsPackage):
+ """AMD LibM is a software library containing a collection of basic math
+ functions optimized for x86-64 processor-based machines. It provides
+ many routines from the list of standard C99 math functions.
+ Applications can link into AMD LibM library and invoke math functions
+ instead of compiler's math functions for better accuracy and
+ performance."""
+
+ homepage = "https://developer.amd.com/amd-aocl/amd-math-library-libm/"
+ git = "https://github.com/amd/aocl-libm-ose.git"
+ maintainers = ["amd-toolchain-support"]
+
+ # If a user who doesn't specify a version
+ # amdlibm installed for commit ID:4033e02
+ # of master branch.
+ # To install amdlibm from latest master branch:
+ # spack install amdlibm ^amdlibm@master
+ version("3.0", branch="aocl-3.0")
+ version("2.2", commit="4033e022da428125747e118ccd6fdd9cee21c470")
+
+ variant("verbose", default=False,
+ description="Building with verbosity")
+
+ # Mandatory dependencies
+ depends_on("python@3.6.1:", type=("build", "run"))
+ depends_on("scons@3.1.2:", type=("build"))
+ depends_on("mpfr", type=("link"))
+
+ patch("0001-libm-ose-Scripts-cleanup-pyc-files.patch", when="@2.2")
+ patch("0002-libm-ose-prevent-log-v3.c-from-building.patch", when="@2.2")
+
+ conflicts("%gcc@:9.1.999", msg="Minimum required GCC version is 9.2.0")
+
+ def build_args(self, spec, prefix):
+ """Setting build arguments for amdlibm """
+ args = ["--prefix={0}".format(prefix)]
+
+ if "%aocc" in spec:
+ args.append("--compiler=aocc")
+
+ # we are circumventing the use of
+ # Spacks compiler wrappers because
+ # SCons wipes out all environment variables.
+ args.append("CC={0}".format(self.compiler.cc))
+ args.append("CXX={0}".format(self.compiler.cxx))
+
+ if "+verbose" in spec:
+ args.append("verbose=1")
+ else:
+ args.append("verbose=0")
+
+ return args
+
+ install_args = build_args
+
+ @run_after('install')
+ def create_symlink(self):
+ """Symbolic link for backward compatibility"""
+ with working_dir(self.prefix.lib):
+ os.symlink('libalm.a', 'libamdlibm.a')
+ os.symlink('libalm.so', 'libamdlibm.so')
diff --git a/var/spack/repos/builtin/packages/amdscalapack/package.py b/var/spack/repos/builtin/packages/amdscalapack/package.py
index 270641c020..23ccc2ccb3 100644
--- a/var/spack/repos/builtin/packages/amdscalapack/package.py
+++ b/var/spack/repos/builtin/packages/amdscalapack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,11 +20,12 @@ class Amdscalapack(ScalapackBase):
_name = 'amdscalapack'
homepage = "https://developer.amd.com/amd-aocl/scalapack/"
- url = "https://github.com/amd/scalapack/archive/2.2.tar.gz"
+ url = "https://github.com/amd/scalapack/archive/3.0.tar.gz"
git = "https://github.com/amd/scalapack.git"
maintainers = ['amd-toolchain-support']
+ version('3.0', sha256='6e6f3578f44a8e64518d276e7580530599ecfa8729f568303ed2590688e7096f')
version('2.2', sha256='2d64926864fc6d12157b86e3f88eb1a5205e7fc157bf67e7577d0f18b9a7484c')
variant(
@@ -38,11 +39,13 @@ class Amdscalapack(ScalapackBase):
args = super(Amdscalapack, self).cmake_args()
spec = self.spec
- args.extend([
- "-DUSE_DOTC_WRAPPER:BOOL=%s" % (
- 'ON' if '%aocc ^amdblis' in spec else 'OFF'
- )
- ])
+ if spec.satisfies('%gcc@10:'):
+ args.extend(['-DCMAKE_Fortran_FLAGS={0}'.format(
+ "-fallow-argument-mismatch")])
+
+ if spec.satisfies('@2.2'):
+ args.extend(['-DUSE_DOTC_WRAPPER:BOOL=%s' % (
+ 'ON' if spec.satisfies('%aocc ^amdblis') else 'OFF')])
args.extend([
'-DUSE_F2C=ON',
diff --git a/var/spack/repos/builtin/packages/amg/package.py b/var/spack/repos/builtin/packages/amg/package.py
index c2817f161b..19b71ef398 100644
--- a/var/spack/repos/builtin/packages/amg/package.py
+++ b/var/spack/repos/builtin/packages/amg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/amg2013/package.py b/var/spack/repos/builtin/packages/amg2013/package.py
index a63a6a4bac..547e308b53 100644
--- a/var/spack/repos/builtin/packages/amg2013/package.py
+++ b/var/spack/repos/builtin/packages/amg2013/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/amgx/package.py b/var/spack/repos/builtin/packages/amgx/package.py
index c03f3599df..ed9e939086 100644
--- a/var/spack/repos/builtin/packages/amgx/package.py
+++ b/var/spack/repos/builtin/packages/amgx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aml/package.py b/var/spack/repos/builtin/packages/aml/package.py
index 922d24a36f..a29e587a45 100644
--- a/var/spack/repos/builtin/packages/aml/package.py
+++ b/var/spack/repos/builtin/packages/aml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/amp/package.py b/var/spack/repos/builtin/packages/amp/package.py
index 62b9b2fee3..33c84c1c50 100644
--- a/var/spack/repos/builtin/packages/amp/package.py
+++ b/var/spack/repos/builtin/packages/amp/package.py
@@ -1,42 +1,48 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
from spack import *
class Amp(CMakePackage):
- """The Advanced Multi-Physics (AMP) package is an open source parallel
+ """The Advanced Multi-Physics (AMP) package.
+
+ The Advanced Multi-Physics (AMP) package is an open source parallel
object-oriented computational framework that is designed with single
- and multi-domain multi-physics applications in mind. AMP can be used
- to build powerful and flexible multi-physics simulation algorithms
- from lightweight operator, solver, linear algebra, material database,
- discretization, and meshing components. The AMP design is meant to
- enable existing investments in application codes to be leveraged without
- having to adopt dramatically different data structures while developing
- new computational science applications. Application components are
- represented as discrete mathematical operators that only require a
- minimal interface and through operator composition the incremental
- development of complex parallel applications is enabled. AMP is meant
- to allow application domain scientists, computer scientists and
- mathematicians to simulate, collaborate, and conduct research on
- various aspects of massively parallel simulation algorithms."""
+ and multi-domain multi-physics applications in mind.
+ """
homepage = "https://bitbucket.org/AdvancedMultiPhysics/amp"
- hg = homepage
+ hg = homepage
version('develop')
+ variant('boost', default=True, description='Build with support for Boost')
+ variant('hdf5', default=True, description='Build with support for HDF5')
+ variant('hypre', default=True, description='Build with support for hypre')
+ variant('libmesh', default=True, description='Build with libmesh support')
+ variant('mpi', default=True, description='Build with MPI support')
+ variant('netcdf', default=True, description='Build with NetCDF support')
+ variant('petsc', default=True, description='Build with Petsc support')
+ variant('shared', default=True, description='Build shared libraries')
+ variant('silo', default=True, description='Build with support for Silo')
+ variant('sundials', default=True, description='Build with support for Sundials')
+ variant('trilinos', default=True, description='Build with support for Trilinos')
+ variant('zlib', default=True, description='Build with support for zlib')
+
# Everything should be compiled position independent (-fpic)
depends_on('blas')
depends_on('lapack')
depends_on('boost', when='+boost')
- depends_on('petsc', when='+petsc')
- depends_on('trilinos', when='+trilinos')
depends_on('hdf5', when='+hdf5')
- depends_on('hdf5', when='+silo')
+ depends_on('hypre', when='+hypre')
+ depends_on('libmesh', when='+libmesh')
+ depends_on('netcdf-c', when='+netcdf')
+ depends_on('petsc', when='+petsc')
depends_on('silo', when='+silo')
+ depends_on('sundials', when='+sundials')
+ depends_on('trilinos', when='+trilinos')
depends_on('zlib', when="+zlib")
# MPI related dependencies
@@ -45,96 +51,58 @@ class Amp(CMakePackage):
def cmake_args(self):
spec = self.spec
- options = []
-
- # #################### Base Settings #######################
-
- options.extend([
- '-DTPL_URL=https://bitbucket.org/AdvancedMultiPhysics/tpl-builder',
- '-DAMP_DATA_URL=https://bitbucket.org/AdvancedMultiPhysics/amp/downloads/AMP-Data.tar.gz',
- '-DAMP_ENABLE_TESTS:BOOL=OFF',
- '-DAMP_ENABLE_EXAMPLES:BOOL=OFF',
- '-DAMP_ENABLE_CXX11:BOOL=ON',
- '-DCXX_STD=11',
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
- ])
-
- # #################### Compiler Settings #######################
+ options = [
+ self.define('TPL_URL', 'https://bitbucket.org/AdvancedMultiPhysics/tpl-builder'),
+ self.define('AMP_DATA_URL', 'https://bitbucket.org/AdvancedMultiPhysics/amp/downloads/AMP-Data.tar.gz'),
+ self.define('AMP_ENABLE_TESTS', 'OFF'),
+ self.define('AMP_ENABLE_EXAMPLES', 'OFF'),
+ self.define('AMP_ENABLE_CXX11', 'ON'),
+ self.define('CXX_STD', '11'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define('USE_MPI', '0'),
+ ]
if '+mpi' in spec:
options.extend([
- '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
- '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
- '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
- '-DUSE_MPI=0',
- '-DMPI_COMPILER=1',
- '-DMPIEXEC=$s' % spec['mpi'].prefix.bin,
+ self.define('CMAKE_C_COMPILER', spec['mpi'].mpicc),
+ self.define('CMAKE_CXX_COMPILER', spec['mpi'].mpicxx),
+ self.define('CMAKE_Fortran_COMPILER', spec['mpi'].mpifc),
+ self.define('MPI_COMPILER', '1'),
+ self.define('MPIEXEC', spec['mpi'].prefix.bin),
])
else:
options.extend([
- '-DCMAKE_C_COMPILER=%s' % self.compiler.cc,
- '-DCMAKE_CXX_COMPILER=%s' % self.compiler.cxx,
- '-DCMAKE_Fortran_COMPILER=%s' % self.compiler.fc,
- '-DUSE_MPI=0',
+ self.define('CMAKE_C_COMPILER', self.compiler.cc),
+ self.define('CMAKE_CXX_COMPILER', self.compiler.cxx),
+ self.define('CMAKE_Fortran_COMPILER', self.compiler.fc),
])
- # ################## Third Party Libraries #####################
-
- tpl_list = "LAPACK"
- blas = spec['blas'].libs
- lapack = spec['lapack'].libs
+ tpl_list = ["LAPACK"]
+ blas, lapack = spec['blas'].libs, spec['lapack'].libs
options.extend([
- '-DTPL_LAPACK_INSTALL_DIR=%s' % spec['lapack'].prefix,
- '-DTPL_BLAS_LIBRARY_NAMES=%s' % ';'.join(blas.names),
- '-DTPL_BLAS_LIBRARY_DIRS=%s' % ';'.join(blas.directories),
- '-DTPL_LAPACK_LIBRARY_NAMES=%s' % ';'.join(lapack.names),
- '-DTPL_LAPACK_LIBRARY_DIRS=%s' % ';'.join(lapack.directories),
+ self.define('TPL_LAPACK_INSTALL_DIR', spec['lapack'].prefix),
+ self.define('TPL_BLAS_LIBRARY_NAMES', ';'.join(blas.names)),
+ self.define('TPL_BLAS_LIBRARY_DIRS', ';'.join(blas.directories)),
+ self.define('TPL_LAPACK_LIBRARY_NAMES', ';'.join(lapack.names)),
+ self.define('TPL_LAPACK_LIBRARY_DIRS', ';'.join(lapack.directories)),
])
- if '+boost' in spec:
- tpl_list = tpl_list + ";BOOST"
- options.extend(['-DTPL_BOOST_INSTALL_DIR=%s' %
- spec['boost'].prefix, ])
- if '+zlib' in spec:
- tpl_list = tpl_list + ";ZLIB"
- options.extend(['-DTPL_ZLIB_INSTALL_DIR=%s' %
- spec['zlib'].prefix, ])
- if '+hdf5' in spec:
- tpl_list = tpl_list + ";HDF5"
- options.extend(['-DTPL_HDF5_INSTALL_DIR=%s' %
- spec['hdf5'].prefix, ])
- if '+silo' in spec:
- tpl_list = tpl_list + ";SILO"
- options.extend(['-DTPL_SILO_INSTALL_DIR=%s' %
- spec['silo'].prefix, ])
+
+ for vname in (
+ 'boost', 'hdf5', 'hypre', 'libmesh', 'petsc',
+ 'silo', 'sundials', 'trilinos', 'zlib',
+ ):
+ if '+' + vname in spec:
+ tpl_list.append(vname.upper())
+ options.append(self.define(
+ 'TPL_{0}_INSTALL_DIR'.format(vname.upper()),
+ spec[vname].prefix
+ ))
+
if '+netcdf' in spec:
- tpl_list = tpl_list + ";NETCDF"
- options.extend(['-DTPL_NETCDF_INSTALL_DIR=%s' %
- spec['netcdf-c'].prefix, ])
- if '+hypre' in spec:
- tpl_list = tpl_list + ";HYPRE"
- options.extend(['-DTPL_HYPRE_INSTALL_DIR=%s' %
- spec['hypre'].prefix, ])
- if '+petsc' in spec:
- tpl_list = tpl_list + ";PETSC"
- options.extend(['-DTPL_PETSC_INSTALL_DIR=%s' %
- spec['petsc'].prefix, ])
- if '+trilinos' in spec:
- tpl_list = tpl_list + ";TRILINOS"
- options.extend(['-DTPL_TRILINOS_INSTALL_DIR=%s' %
- spec['trilinos'].prefix, ])
- if '+libmesh' in spec:
- tpl_list = tpl_list + ";LIBMESH"
- options.extend(['-DTPL_LIBMESH_INSTALL_DIR=%s' %
- spec['libmesh'].prefix, ])
- if '+sundials' in spec:
- tpl_list = tpl_list + ";SUNDIALS"
- options.extend(['-DTPL_SUNDIALS_INSTALL_DIR=%s' %
- spec['sundials'].prefix, ])
- if '+amp-timer' in spec:
- tpl_list = tpl_list + ";TIMER"
- options.extend(['-DTPL_TIMER_INSTALL_DIR=%s' %
- spec['amp-timer'].prefix, ])
- options.extend(['-DTPL_LIST=%s' % tpl_list, ])
+ tpl_list.append("NETCDF")
+ options.append(self.define(
+ 'TPL_NETCDF_INSTALL_DIR', spec['netcdf-c'].prefix
+ ))
+ options.append(self.define('TPL_LIST', ';'.join(tpl_list)))
return options
diff --git a/var/spack/repos/builtin/packages/ampliconnoise/package.py b/var/spack/repos/builtin/packages/ampliconnoise/package.py
index 20e1f8100c..0ac85a33e9 100644
--- a/var/spack/repos/builtin/packages/ampliconnoise/package.py
+++ b/var/spack/repos/builtin/packages/ampliconnoise/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/amr-wind/package.py b/var/spack/repos/builtin/packages/amr-wind/package.py
new file mode 100644
index 0000000000..7d4651e580
--- /dev/null
+++ b/var/spack/repos/builtin/packages/amr-wind/package.py
@@ -0,0 +1,111 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import itertools
+
+
+def process_amrex_constraints():
+ """Map constraints when building with external AMReX"""
+ a1 = ['+', '~']
+ a2 = ['mpi', 'hypre', 'cuda']
+ a3 = [[x + y for x in a1] for y in a2]
+ for k in itertools.product(*a3):
+ if '+cuda' in k:
+ for arch in CudaPackage.cuda_arch_values:
+ yield ''.join(k) + " cuda_arch=%s" % arch
+ else:
+ yield ''.join(k)
+
+
+class AmrWind(CMakePackage, CudaPackage):
+ """AMR-Wind is a massively parallel, block-structured adaptive-mesh,
+ incompressible flow sover for wind turbine and wind farm simulations. """
+
+ homepage = "https://github.com/Exawind/amr-wind"
+ git = "https://github.com/exawind/amr-wind.git"
+
+ maintainers = ['sayerhs', 'jrood-nrel', 'michaeljbrazell']
+
+ tags = ['ecp', 'ecp-apps']
+
+ version('main', branch='main', submodules=True)
+
+ variant('shared', default=True,
+ description='Build shared libraries')
+ variant('unit', default=True,
+ description='Build unit tests')
+ variant('tests', default=True,
+ description='Activate regression tests')
+ variant('mpi', default=True,
+ description='Enable MPI support')
+ variant('openmp', default=False,
+ description='Enable OpenMP for CPU builds')
+ variant('netcdf', default=True,
+ description='Enable NetCDF support')
+ variant('hypre', default=True,
+ description='Enable Hypre integration')
+ variant('masa', default=False,
+ description='Enable MASA integration')
+ variant('openfast', default=False,
+ description='Enable OpenFAST integration')
+ variant('internal-amrex', default=True,
+ description='Use AMRex submodule to build')
+ variant('fortran', default=False,
+ description='Build fortran interfaces')
+
+ conflicts('+openmp', when='+cuda')
+
+ depends_on('mpi', when='+mpi')
+
+ for opt in process_amrex_constraints():
+ dopt = '+particles' + opt
+ if '+hypre' in dopt:
+ dopt = "+fortran" + dopt
+ depends_on('amrex@develop' + dopt, when='~internal-amrex' + opt)
+
+ depends_on('hypre+mpi+int64~cuda@2.20.0:', when='+mpi~cuda+hypre')
+ depends_on('hypre~mpi+int64~cuda@2.20.0:', when='~mpi~cuda+hypre')
+ for arch in CudaPackage.cuda_arch_values:
+ depends_on('hypre+mpi~int64+cuda cuda_arch=%s @2.20.0:' % arch,
+ when='+mpi+cuda+hypre cuda_arch=%s' % arch)
+ depends_on('hypre~mpi~int64+cuda cuda_arch=%s @2.20.0:' % arch,
+ when='~mpi+cuda+hypre cuda_arch=%s' % arch)
+ depends_on('netcdf-c', when='+netcdf')
+ depends_on('masa', when='+masa')
+ depends_on('openfast+cxx', when='+openfast')
+
+ def cmake_args(self):
+ define = CMakePackage.define
+
+ vs = ["mpi", "cuda", "openmp", "netcdf", "hypre", "masa",
+ "openfast", "tests", "fortran"]
+ args = [
+ self.define_from_variant("AMR_WIND_ENABLE_%s" % v.upper(), v)
+ for v in vs
+ ]
+
+ args += [
+ define('CMAKE_EXPORT_COMPILE_COMMANDS', True),
+ define('AMR_WIND_ENABLE_ALL_WARNINGS', True),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('AMR_WIND_TEST_WITH_FCOMPARE', 'tests'),
+ ]
+
+ if '+cuda' in self.spec:
+ amrex_arch = ['{0:.1f}'.format(float(i) / 10.0)
+ for i in self.spec.variants['cuda_arch'].value]
+ if amrex_arch:
+ args.append(define('AMReX_CUDA_ARCH', amrex_arch))
+
+ if '+internal-amrex' in self.spec:
+ args.append(self.define('AMR_WIND_USE_INTERNAL_AMREX', True))
+ else:
+ args += [
+ self.define('AMR_WIND_USE_INTERNAL_AMREX', False),
+ self.define('AMReX_ROOT', self.spec['amrex'].prefix)
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/amrex/package.py b/var/spack/repos/builtin/packages/amrex/package.py
index 4ded35c18d..58a37bbae4 100644
--- a/var/spack/repos/builtin/packages/amrex/package.py
+++ b/var/spack/repos/builtin/packages/amrex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
from spack import *
-class Amrex(CMakePackage):
+class Amrex(CMakePackage, CudaPackage, ROCmPackage):
"""AMReX is a publicly available software framework designed
for building massively parallel block- structured adaptive
mesh refinement (AMR) applications."""
@@ -18,6 +18,12 @@ class Amrex(CMakePackage):
maintainers = ['mic84', 'asalmgren']
version('develop', branch='development')
+ version('21.05', sha256='eb6d21e48279ad67278413c77b29a1754c18ffe741aa6b3a9f3f01eeac13177f')
+ version('21.04', sha256='1c610e4b0800b16f7f1da74193ff11af0abfb12198b36a7e565a6a7f793087fa')
+ version('21.03', sha256='6307bf75c80c2076bf5bd1cff4d12483280a32b5175fe117f32eed9c89cd1ac5')
+ version('21.02', sha256='4a7ef997c43f9f03f1b06dd1aafa01218773a3265a5c1811f77eb4521b5e75b3')
+ version('21.01', sha256='59de3ed429347ee6a7ad4f09c0c431248f2e081f59c301db37cacb36993622f4')
+ version('20.12', sha256='a8ba1d605780250da77619939582ce44b33cd286f2dbcc0dfd5cdbaf209140a5')
version('20.11', sha256='b86f4f2ebf414cec050e562d4ab81545944bda581b496d69767b4bf6a3060855')
version('20.10', sha256='92def480d1f0bcb5bcb9dfae2ddc8997060414386a1d71ccbfdad785fa2e46fa')
version('20.09', sha256='3ae203f18656117d8201da16e899a6144ec217817a2a5d9b7649e2eef9cacdf9')
@@ -57,9 +63,6 @@ class Amrex(CMakePackage):
description='Build data services')
variant('particles', default=False,
description='Build particle classes')
- variant('build_type', default='Release',
- description='The build type to build',
- values=('Debug', 'Release'))
variant('sundials', default=False,
description='Build AMReX with SUNDIALS support')
variant('hdf5', default=False,
@@ -68,8 +71,8 @@ class Amrex(CMakePackage):
description='Enable Hypre interfaces')
variant('petsc', default=False,
description='Enable PETSc interfaces')
- variant('cuda', default=False,
- description='Enable CUDA interfaces')
+ variant('pic', default=False,
+ description='Enable PIC')
# Build dependencies
depends_on('mpi', when='+mpi')
@@ -79,26 +82,51 @@ class Amrex(CMakePackage):
depends_on('cmake@3.5:', type='build', when='@:18.10.99')
depends_on('cmake@3.13:', type='build', when='@18.11:')
depends_on('cmake@3.14:', type='build', when='@19.04:')
- conflicts('%apple-clang')
- conflicts('%clang')
+ # cmake @3.17: is necessary to handle cuda @11: correctly
+ depends_on('cmake@3.17:', type='build', when='^cuda @11:')
+ depends_on('hdf5@1.10.4: +mpi', when='+hdf5')
+ depends_on('rocrand', type='build', when='+rocm')
+ depends_on('hypre@2.18.2:', type='link', when='@:21.02 +hypre')
+ depends_on('hypre@2.19.0:', type='link', when='@21.03: ~cuda +hypre')
+ depends_on('hypre@2.20.0:', type='link', when='@21.03: +cuda +hypre')
+ depends_on('petsc', type='link', when='+petsc')
+
+ # these versions of gcc have lambda function issues
+ # see https://github.com/spack/spack/issues/22310
+ conflicts('%gcc@8.1.0:8.3.0', when='@21.03')
+ conflicts('%gcc@8.1.0:8.2.0', when='@21.01:21.02')
# Check options compatibility
conflicts('+sundials', when='~fortran',
msg='AMReX SUNDIALS support needs AMReX Fortran API (+fortran)')
+ conflicts('+sundials', when='@20.12:',
+ msg='AMReX >= 20.12 no longer supports SUNDIALS interfaces')
conflicts('+hdf5', when='@:20.06',
msg='AMReX HDF5 support needs AMReX newer than version 20.06')
conflicts('+hypre', when='@:20.06',
msg='AMReX Hypre support needs AMReX newer than version 20.06')
- conflicts('+hypre', when='~fortran',
- msg='AMReX Hypre support needs AMReX Fortran API (+fortran)')
+ conflicts('+hypre', when='@:20.07 ~fortran',
+ msg='AMReX < 20.08 needs the Fortran API (+fortran) for Hypre support')
conflicts('+hypre', when='~linear_solvers',
msg='AMReX Hypre support needs variant +linear_solvers')
conflicts('+petsc', when='@:20.06',
- msg='AMReX PETSc support needs AMReX newer than version 20.06')
- conflicts('+petsc', when='~fortran',
- msg='AMReX PETSc support needs AMReX Fortran API (+fortran)')
+ msg='PETSc support needs AMReX newer than version 20.06')
+ conflicts('+petsc', when='@:20.07 ~fortran',
+ msg='AMReX < 20.08 needs the Fortran API (+fortran) for PETSc support')
conflicts('+petsc', when='~linear_solvers',
msg='AMReX PETSc support needs variant +linear_solvers')
+ conflicts('+cuda', when='@:19.08',
+ msg='AMReX CUDA support needs AMReX newer than version 19.08')
+ conflicts('cuda_arch=10', when='+cuda', msg='AMReX only supports compute capabilities >= 3.5')
+ conflicts('cuda_arch=11', when='+cuda', msg='AMReX only supports compute capabilities >= 3.5')
+ conflicts('cuda_arch=12', when='+cuda', msg='AMReX only supports compute capabilities >= 3.5')
+ conflicts('cuda_arch=13', when='+cuda', msg='AMReX only supports compute capabilities >= 3.5')
+ conflicts('cuda_arch=20', when='+cuda', msg='AMReX only supports compute capabilities >= 3.5')
+ conflicts('cuda_arch=21', when='+cuda', msg='AMReX only supports compute capabilities >= 3.5')
+ conflicts('cuda_arch=30', when='+cuda', msg='AMReX only supports compute capabilities >= 3.5')
+ conflicts('cuda_arch=32', when='+cuda', msg='AMReX only supports compute capabilities >= 3.5')
+ conflicts('+rocm', when='@:20.11', msg='AMReX HIP support needs AMReX newer than version 20.11')
+ conflicts('+cuda', when='+rocm', msg='CUDA and HIP support are exclusive')
def url_for_version(self, version):
if version >= Version('20.05'):
@@ -107,64 +135,90 @@ class Amrex(CMakePackage):
url = "https://github.com/AMReX-Codes/amrex/archive/{0}.tar.gz"
return url.format(version.dotted)
+ def get_cuda_arch_string(self, values):
+ if 'none' in values:
+ return 'Auto'
+ else:
+ # Use format x.y instead of CudaPackage xy format
+ vf = tuple(float(x) / 10.0 for x in values)
+ return ';'.join(str(x) for x in vf)
+
#
- # For versions <= 20.11
+ # For versions > 20.11
#
- @when('@:20.11')
+ @when('@20.12:,develop')
def cmake_args(self):
args = [
'-DUSE_XSDK_DEFAULTS=ON',
- self.define_from_variant('DIM', 'dimensions'),
+ self.define_from_variant('AMReX_SPACEDIM', 'dimensions'),
self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
- self.define_from_variant('ENABLE_MPI', 'mpi'),
- self.define_from_variant('ENABLE_OMP', 'openmp'),
+ self.define_from_variant('AMReX_MPI', 'mpi'),
+ self.define_from_variant('AMReX_OMP', 'openmp'),
'-DXSDK_PRECISION:STRING=%s' %
self.spec.variants['precision'].value.upper(),
self.define_from_variant('XSDK_ENABLE_Fortran', 'fortran'),
- self.define_from_variant('ENABLE_FORTRAN_INTERFACES', 'fortran'),
- self.define_from_variant('ENABLE_EB', 'eb'),
- self.define_from_variant('ENABLE_LINEAR_SOLVERS',
+ self.define_from_variant('AMReX_FORTRAN_INTERFACES', 'fortran'),
+ self.define_from_variant('AMReX_EB', 'eb'),
+ self.define_from_variant('AMReX_LINEAR_SOLVERS',
'linear_solvers'),
- self.define_from_variant('ENABLE_AMRDATA', 'amrdata'),
- self.define_from_variant('ENABLE_PARTICLES', 'particles'),
- self.define_from_variant('ENABLE_SUNDIALS', 'sundials'),
- self.define_from_variant('ENABLE_HDF5', 'hdf5'),
- self.define_from_variant('ENABLE_HYPRE', 'hypre'),
- self.define_from_variant('ENABLE_PETSC', 'petsc'),
- self.define_from_variant('ENABLE_CUDA', 'cuda'),
+ self.define_from_variant('AMReX_AMRDATA', 'amrdata'),
+ self.define_from_variant('AMReX_PARTICLES', 'particles'),
+ self.define_from_variant('AMReX_HDF5', 'hdf5'),
+ self.define_from_variant('AMReX_HYPRE', 'hypre'),
+ self.define_from_variant('AMReX_PETSC', 'petsc'),
+ self.define_from_variant('AMReX_PIC', 'pic'),
]
+
if self.spec.satisfies('%fj'):
args.append('-DCMAKE_Fortran_MODDIR_FLAG=-M')
+ if '+cuda' in self.spec:
+ args.append('-DAMReX_GPU_BACKEND=CUDA')
+ args.append('-DAMReX_CUDA_ERROR_CAPTURE_THIS=ON')
+ args.append('-DAMReX_CUDA_ERROR_CROSS_EXECUTION_SPACE_CALL=ON')
+ cuda_arch = self.spec.variants['cuda_arch'].value
+ args.append('-DAMReX_CUDA_ARCH=' + self.get_cuda_arch_string(cuda_arch))
+
+ if '+rocm' in self.spec:
+ args.append('-DCMAKE_CXX_COMPILER={0}'.format(self.spec['hip'].hipcc))
+ args.append('-DAMReX_GPU_BACKEND=HIP')
+ targets = self.spec.variants['amdgpu_target'].value
+ args.append('-DAMReX_AMD_ARCH=' + ';'.join(str(x) for x in targets))
+
return args
#
- # For versions > 20.11
+ # For versions <= 20.11
#
- @when('@20.12:')
+ @when('@:20.11')
def cmake_args(self):
args = [
'-DUSE_XSDK_DEFAULTS=ON',
- self.define_from_variant('AMReX_SPACEDIM', 'dimensions'),
+ self.define_from_variant('DIM', 'dimensions'),
self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
- self.define_from_variant('AMReX_MPI', 'mpi'),
- self.define_from_variant('AMReX_OMP', 'openmp'),
+ self.define_from_variant('ENABLE_MPI', 'mpi'),
+ self.define_from_variant('ENABLE_OMP', 'openmp'),
'-DXSDK_PRECISION:STRING=%s' %
self.spec.variants['precision'].value.upper(),
self.define_from_variant('XSDK_ENABLE_Fortran', 'fortran'),
- self.define_from_variant('AMReX_FORTRAN_INTERFACES', 'fortran'),
- self.define_from_variant('AMReX_EB', 'eb'),
- self.define_from_variant('AMReX_LINEAR_SOLVERS',
+ self.define_from_variant('ENABLE_FORTRAN_INTERFACES', 'fortran'),
+ self.define_from_variant('ENABLE_EB', 'eb'),
+ self.define_from_variant('ENABLE_LINEAR_SOLVERS',
'linear_solvers'),
- self.define_from_variant('AMReX_AMRDATA', 'amrdata'),
- self.define_from_variant('AMReX_PARTICLES', 'particles'),
- self.define_from_variant('AMReX_SUNDIALS', 'sundials'),
- self.define_from_variant('AMReX_HDF5', 'hdf5'),
- self.define_from_variant('AMReX_HYPRE', 'hypre'),
- self.define_from_variant('AMReX_PETSC', 'petsc'),
- self.define_from_variant('AMReX_CUDA', 'cuda'),
+ self.define_from_variant('ENABLE_AMRDATA', 'amrdata'),
+ self.define_from_variant('ENABLE_PARTICLES', 'particles'),
+ self.define_from_variant('ENABLE_SUNDIALS', 'sundials'),
+ self.define_from_variant('ENABLE_HDF5', 'hdf5'),
+ self.define_from_variant('ENABLE_HYPRE', 'hypre'),
+ self.define_from_variant('ENABLE_PETSC', 'petsc'),
+ self.define_from_variant('ENABLE_CUDA', 'cuda'),
]
+
if self.spec.satisfies('%fj'):
args.append('-DCMAKE_Fortran_MODDIR_FLAG=-M')
+ if '+cuda' in self.spec:
+ cuda_arch = self.spec.variants['cuda_arch'].value
+ args.append('-DCUDA_ARCH=' + self.get_cuda_arch_string(cuda_arch))
+
return args
diff --git a/var/spack/repos/builtin/packages/amrvis/package.py b/var/spack/repos/builtin/packages/amrvis/package.py
index c0ca8c083b..5db42a3336 100644
--- a/var/spack/repos/builtin/packages/amrvis/package.py
+++ b/var/spack/repos/builtin/packages/amrvis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/anaconda2/package.py b/var/spack/repos/builtin/packages/anaconda2/package.py
index e22ab88c8b..b2e8e9e485 100644
--- a/var/spack/repos/builtin/packages/anaconda2/package.py
+++ b/var/spack/repos/builtin/packages/anaconda2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/anaconda3/package.py b/var/spack/repos/builtin/packages/anaconda3/package.py
index 67dd832bd3..12ed3869cd 100644
--- a/var/spack/repos/builtin/packages/anaconda3/package.py
+++ b/var/spack/repos/builtin/packages/anaconda3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ class Anaconda3(Package):
maintainers = ['ajkotobi']
+ version('2020.11', sha256='cf2ff493f11eaad5d09ce2b4feaa5ea90db5174303d5b3fe030e16d29aeef7de', expand=False)
version('2020.07', sha256='38ce717758b95b3bd0b1797cc6ccfb76f29a90c25bdfa50ee45f11e583edfdbf', expand=False)
version('2020.02', sha256='2b9f088b2022edb474915d9f69a803d6449d5fdb4c303041f60ac4aefcc208bb', expand=False)
version('2019.10', sha256='46d762284d252e51cd58a8ca6c8adc9da2eadc82c342927b2f66ed011d1d8b53', expand=False)
diff --git a/var/spack/repos/builtin/packages/andi/package.py b/var/spack/repos/builtin/packages/andi/package.py
index 500c074add..1709b24a4c 100644
--- a/var/spack/repos/builtin/packages/andi/package.py
+++ b/var/spack/repos/builtin/packages/andi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/angsd/package.py b/var/spack/repos/builtin/packages/angsd/package.py
index 6dae47f220..4c29865804 100644
--- a/var/spack/repos/builtin/packages/angsd/package.py
+++ b/var/spack/repos/builtin/packages/angsd/package.py
@@ -1,20 +1,21 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
from spack import *
class Angsd(MakefilePackage):
- """Angsd is a program for analysing NGS data. The software can handle a
- number of different input types from mapped reads to imputed genotype
- probabilities. Most methods take genotype uncertainty into account
- instead of basing the analysis on called genotypes. This is especially
- useful for low and medium depth data."""
+ """Angsd is a program for analysing NGS data.
+
+ The software can handle a number of different input types from mapped
+ reads to imputed genotype probabilities. Most methods take genotype
+ uncertainty into account instead of basing the analysis on called
+ genotypes. This is especially useful for low and medium depth data.
+ """
homepage = "https://github.com/ANGSD/angsd"
- url = "https://github.com/ANGSD/angsd/archive/0.919.tar.gz"
+ url = "https://github.com/ANGSD/angsd/archive/0.919.tar.gz"
version('0.933', sha256='2f992325dc08fa25ac525d9300ef6bd61808e74c521b4cc72a2ce00d98f402bb')
version('0.921', sha256='8892d279ce1804f9e17fe2fc65a47e5498e78fc1c1cb84d2ca2527fd5c198772')
@@ -29,7 +30,7 @@ class Angsd(MakefilePackage):
depends_on('lzma')
depends_on('curl')
- depends_on('r', type='run', when='+rlib')
+ depends_on('r', type='run', when='+r')
def setup_run_environment(self, env):
env.set('R_LIBS', self.prefix.R)
diff --git a/var/spack/repos/builtin/packages/ant/package.py b/var/spack/repos/builtin/packages/ant/package.py
index 057a806b76..542f42082c 100644
--- a/var/spack/repos/builtin/packages/ant/package.py
+++ b/var/spack/repos/builtin/packages/ant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/antimony/package.py b/var/spack/repos/builtin/packages/antimony/package.py
index 157a0a2510..9df56671a6 100644
--- a/var/spack/repos/builtin/packages/antimony/package.py
+++ b/var/spack/repos/builtin/packages/antimony/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/antlr/package.py b/var/spack/repos/builtin/packages/antlr/package.py
index 359f2210dc..d0b75d83ac 100644
--- a/var/spack/repos/builtin/packages/antlr/package.py
+++ b/var/spack/repos/builtin/packages/antlr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ants/package.py b/var/spack/repos/builtin/packages/ants/package.py
index 66d2571b8d..6c3c2232af 100644
--- a/var/spack/repos/builtin/packages/ants/package.py
+++ b/var/spack/repos/builtin/packages/ants/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,13 +15,21 @@ class Ants(CMakePackage):
processing library to which ANTs developers contribute.
"""
- homepage = "http://stnava.github.io/ANTs/"
+ homepage = "https://stnava.github.io/ANTs/"
url = "https://github.com/ANTsX/ANTs/archive/v2.2.0.tar.gz"
+ version('2.3.5', sha256='2fddfd5f274a47f1c383e734a7e763b627c4a8383d2d3b9971561f335016bb0a')
version('2.2.0', sha256='62f8f9ae141cb45025f4bb59277c053acf658d4a3ba868c9e0f609af72e66b4a')
depends_on('zlib', type='link')
+ variant('minc', default=True, description='Build ITK with MINC support')
+
+ def cmake_args(self):
+ return [
+ self.define_from_variant('ITK_BUILD_MINC_SUPPORT', 'minc')
+ ]
+
def install(self, spec, prefix):
with working_dir(
join_path(self.build_directory, 'ANTS-build'),
diff --git a/var/spack/repos/builtin/packages/aocc/package.py b/var/spack/repos/builtin/packages/aocc/package.py
index 74649db620..00aaa7a9a1 100755
--- a/var/spack/repos/builtin/packages/aocc/package.py
+++ b/var/spack/repos/builtin/packages/aocc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,6 +29,13 @@ class Aocc(Package):
'''
family = 'compiler'
homepage = "https://developer.amd.com/amd-aocc/"
+
+ maintainers = ['amd-toolchain-support']
+
+ version(ver="3.0.0", sha256='4ff269b1693856b9920f57e3c85ce488c8b81123ddc88682a3ff283979362227',
+ url='http://developer.amd.com/wordpress/media/files/aocc-compiler-3.0.0.tar')
+ version(ver="2.3.0", sha256='9f8a1544a5268a7fb8cd21ac4bdb3f8d1571949d1de5ca48e2d3309928fc3d15',
+ url='http://developer.amd.com/wordpress/media/files/aocc-compiler-2.3.0.tar')
version(ver="2.2.0", sha256='500940ce36c19297dfba3aa56dcef33b6145867a1f34890945172ac2be83b286',
url='http://developer.amd.com/wordpress/media/files/aocc-compiler-2.2.0.tar')
@@ -51,7 +58,7 @@ class Aocc(Package):
@run_before('install')
def abort_without_license_agreed(self):
- license_url = 'http://developer.amd.com/wordpress/media/files/AOCC_EULA.pdf'
+ license_url = 'http://developer.amd.com/wordpress/media/files/AOCC_EULA.pdf'
install_example = "spack install aocc +license-agreed"
if not self.spec.variants['license-agreed'].value:
raise InstallError("\n\n\nNOTE:\nUse +license-agreed " +
diff --git a/var/spack/repos/builtin/packages/aocl-sparse/package.py b/var/spack/repos/builtin/packages/aocl-sparse/package.py
new file mode 100644
index 0000000000..0be34f7054
--- /dev/null
+++ b/var/spack/repos/builtin/packages/aocl-sparse/package.py
@@ -0,0 +1,104 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class AoclSparse(CMakePackage):
+ """AOCL-Sparse is a library that contains basic linear algebra subroutines
+ for sparse matrices and vectors optimized for AMD EPYC family of processors.
+ It is designed to be used with C and C++. Current functionality of sparse
+ library supports SPMV function with CSR and ELLPACK formats."""
+
+ homepage = "https://developer.amd.com/amd-aocl/aocl-sparse/"
+ url = "https://github.com/amd/aocl-sparse/archive/3.0.tar.gz"
+ git = "https://github.com/amd/aocl-sparse.git"
+
+ maintainers = ['amd-toolchain-support']
+
+ version('3.0', sha256='1d04ba16e04c065051af916b1ed9afce50296edfa9b1513211a7378e1d6b952e')
+ version('2.2', sha256='33c2ed6622cda61d2613ee63ff12c116a6cd209c62e54307b8fde986cd65f664')
+
+ conflicts("%gcc@:9.1.999", msg="Minimum required GCC version is 9.2.0")
+
+ variant('build_type', default='Release',
+ description='CMake build type',
+ values=('Debug', 'Release'))
+ variant('shared', default=True,
+ description='Build shared library')
+ variant('ilp64', default=False,
+ description='Build with ILP64 support')
+
+ depends_on('boost', when='@2.2')
+
+ @property
+ def build_directory(self):
+ """Returns the directory to use when building the package
+
+ :return: directory where to build the package
+ """
+
+ build_directory = self.stage.source_path
+
+ if self.spec.variants['build_type'].value == 'Debug':
+ build_directory = join_path(build_directory, 'build', 'debug')
+ else:
+ build_directory = join_path(build_directory, 'build', 'release')
+
+ return build_directory
+
+ def cmake_args(self):
+ """Runs ``cmake`` in the build directory"""
+ spec = self.spec
+
+ args = [
+ "../..",
+ "-DCMAKE_INSTALL_PREFIX:PATH={0}".format(spec.prefix),
+ "-DCMAKE_CXX_COMPILER={0}".format(os.path.basename(spack_cxx))
+ ]
+
+ if spec.variants['build_type'].value == 'Debug':
+ args.append("-DCMAKE_BUILD_TYPE=Debug")
+ else:
+ args.append("-DCMAKE_BUILD_TYPE=Release")
+
+ args.extend([
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+
+ "-DBUILD_CLIENTS_BENCHMARKS:BOOL=%s" % (
+ 'ON' if self.run_tests else 'OFF')
+ ])
+
+ if spec.satisfies('@3.0:'):
+ args.extend([
+ self.define_from_variant('BUILD_ILP64', 'ilp64')
+ ])
+
+ return args
+
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def check(self):
+ """ Simple test to test the built library by running
+ one of the aocl-sparse examples, after compiling the
+ library with benchmarks.
+ """
+ dso_suffix = 'so' if '+shared' in self.spec else 'a'
+
+ if self.spec.variants['build_type'].value == 'Debug':
+ lib_path = join_path(self.build_directory,
+ 'library',
+ 'libaoclsparse-d.{0}'.format(dso_suffix))
+ else:
+ lib_path = join_path(self.build_directory,
+ 'library',
+ 'libaoclsparse.{0}'.format(dso_suffix))
+
+ test_bench_bin = join_path(self.build_directory, 'tests',
+ 'staging', 'aoclsparse-bench')
+ test_args = " --function=csrmv --precision=d "
+ test_args += "--sizem=1000 --sizen=1000 --sizennz=4000 --verify=1 "
+ os.system(test_bench_bin + test_args + lib_path)
diff --git a/var/spack/repos/builtin/packages/aoflagger/package.py b/var/spack/repos/builtin/packages/aoflagger/package.py
index 9b7ae1abdb..417527cec6 100644
--- a/var/spack/repos/builtin/packages/aoflagger/package.py
+++ b/var/spack/repos/builtin/packages/aoflagger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aom/package.py b/var/spack/repos/builtin/packages/aom/package.py
index 84c027e272..b4ae5171ec 100644
--- a/var/spack/repos/builtin/packages/aom/package.py
+++ b/var/spack/repos/builtin/packages/aom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aomp/0001-Add-cmake-option-for-copying-source-for-debugging.patch b/var/spack/repos/builtin/packages/aomp/0001-Add-cmake-option-for-copying-source-for-debugging.patch
new file mode 100644
index 0000000000..b586e04b56
--- /dev/null
+++ b/var/spack/repos/builtin/packages/aomp/0001-Add-cmake-option-for-copying-source-for-debugging.patch
@@ -0,0 +1,28 @@
+From 526efe86427a4d49da38773534d84025dd4246c3 Mon Sep 17 00:00:00 2001
+From: Ethan Stewart <ethan.stewart@amd.com>
+Date: Tue, 10 Nov 2020 15:32:59 -0600
+Subject: [PATCH] Add cmake option for copying source for debugging.
+
+---
+ openmp/CMakeLists.txt | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/openmp/CMakeLists.txt b/openmp/CMakeLists.txt
+index a86e83c50212..51962b561a3b 100644
+--- a/openmp/CMakeLists.txt
++++ b/openmp/CMakeLists.txt
+@@ -103,3 +103,11 @@ endif()
+
+ # Now that we have seen all testsuites, create the check-openmp target.
+ construct_check_openmp_target()
++
++option(DEBUG_COPY_SOURCE "Enable source code copy for openmp debug build."
++ ${ENABLE_SOURCE_COPY})
++if (${ENABLE_SOURCE_COPY})
++ install(DIRECTORY runtime/src DESTINATION ${OPENMP_INSTALL_LIBDIR}/src/openmp/runtime)
++ install(DIRECTORY libomptarget/src libomptarget/plugins DESTINATION ${OPENMP_INSTALL_LIBDIR}/src/openmp/libomptarget)
++ install(DIRECTORY libompd/src DESTINATION ${OPENMP_INSTALL_LIBDIR}/src/openmp/libompd)
++endif()
+--
+2.17.1
+
diff --git a/var/spack/repos/builtin/packages/aomp/package.py b/var/spack/repos/builtin/packages/aomp/package.py
index 5f561f1b3e..b4109a2f3d 100644
--- a/var/spack/repos/builtin/packages/aomp/package.py
+++ b/var/spack/repos/builtin/packages/aomp/package.py
@@ -1,215 +1,182 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import re
tools_url = 'https://github.com/ROCm-Developer-Tools'
compute_url = 'https://github.com/RadeonOpenCompute'
-# 3.8 SHA Keys
-aomp38 = dict()
-aomp38 = {
- "aomp":
- "86f90d6505eccdb2840069cadf57f7111d4685653c4974cf65fb22b172e55478",
- "devlib":
- "e82cc9a8eb7d92de02cabb856583e28f17a05c8cf9c97aec5275608ef1a38574",
- "llvm":
- "98deabedb6cb3067ee960a643099631902507f236e4d9dc65b3e0f8d659eb55c",
- "flang":
- "54cc6a9706dba6d7808258632ed40fa6493838edb309709d3b25e0f9b02507f8",
- "extras":
- "4460a4f4b03022947f536221483e85dcd9b07064a54516ec103a1939c3f587b5"
-}
-
-# 3.7 SHA Keys
-aomp37 = dict()
-aomp37 = {
- "aomp":
- "970374c3acb9dda8b9a17d7a579dbaab48fac731db8fdce566a65abee37e5ed3",
- "devlib":
- "b3a114180bf184b3b829c356067bc6a98021d52c1c6f9db6bc57272ebafc5f1d",
- "llvm":
- "89b967de5e79f6df7c62fdc12529671fa30989ae7b634d5a7c7996629ec1140e",
- "flang":
- "1fe07a0da20eb66a2a2aa8d354bf95c6f216ec38cc4a051e98041e0d13c34b36",
- "extras":
- "adaf7670b2497ff3ac09636e0dd30f666a5a5b742ecdcb8551d722102dcfbd85"
-}
-
-# 3.5 SHA Keys
-aomp35 = dict()
-
-aomp35 = {
- "aomp":
- "e4526489833896bbc47ba865e0d115fab278ce269789a8c99a97f444595f5f6a",
- "devlib":
- "dce3a4ba672c4a2da4c2260ee4dc96ff6dd51877f5e7e1993cb107372a35a378",
- "llvm":
- "b4fd7305dc57887eec17cce77bbf42215db46a4a3d14d8e517ab92f4e200b29d",
- "flang":
- "cc27f8bfb49257b7a4f0b03f4ba5e06a28dcb6c337065c4201b6075dd2d5bc48",
- "extras":
- "5dbf27f58b8114318208b97ba99a90483b78eebbcad4117cac6881441977e855",
- "hip":
- "86eb7749ff6f6c5f6851cd6c528504d42f9286967324a50dd0dd54a6a74cacc7",
- "vdi":
- "b21866c7c23dc536356db139b88b6beb3c97f58658836974a7fc167feb31ad7f",
- "opencl":
- "8963fcd5a167583b3db8b94363778d4df4593bfce8141e1d3c32a59fb64a0cf6"
-}
+
+aomp = [
+ "e4526489833896bbc47ba865e0d115fab278ce269789a8c99a97f444595f5f6a",
+ "970374c3acb9dda8b9a17d7a579dbaab48fac731db8fdce566a65abee37e5ed3",
+ "86f90d6505eccdb2840069cadf57f7111d4685653c4974cf65fb22b172e55478",
+ "14fc6867af0b17e3bff8cb42cb36f509c95a29b7a933a106bf6778de21f6c123",
+ "ce29cead5391a4a13f2c567e2e059de9291888d24985460725e43a91b740be7a"
+]
+
+devlib = [
+ "dce3a4ba672c4a2da4c2260ee4dc96ff6dd51877f5e7e1993cb107372a35a378",
+ "b3a114180bf184b3b829c356067bc6a98021d52c1c6f9db6bc57272ebafc5f1d",
+ "e82cc9a8eb7d92de02cabb856583e28f17a05c8cf9c97aec5275608ef1a38574",
+ "c99f45dacf5967aef9a31e3731011b9c142446d4a12bac69774998976f2576d7",
+ "bca9291385d6bdc91a8b39a46f0fd816157d38abb1725ff5222e6a0daa0834cc"
+]
+
+llvm = [
+ "b4fd7305dc57887eec17cce77bbf42215db46a4a3d14d8e517ab92f4e200b29d",
+ "89b967de5e79f6df7c62fdc12529671fa30989ae7b634d5a7c7996629ec1140e",
+ "98deabedb6cb3067ee960a643099631902507f236e4d9dc65b3e0f8d659eb55c",
+ "f0a0b9fec0626878340a15742e73a56f155090011716461edcb069dcf05e6b30",
+ "3ff18a8bd31d5b55232327e574dfa3556cf26787e105d0ba99411c5687325a8d"
+]
+
+flang = [
+ "cc27f8bfb49257b7a4f0b03f4ba5e06a28dcb6c337065c4201b6075dd2d5bc48",
+ "1fe07a0da20eb66a2a2aa8d354bf95c6f216ec38cc4a051e98041e0d13c34b36",
+ "54cc6a9706dba6d7808258632ed40fa6493838edb309709d3b25e0f9b02507f8",
+ "43d57bcc87fab092ac242e36da62588a87b6fa91f9e81fdb330159497afdecb3",
+ "81674bf3c9d8fd9b16fb3e5c66a870537c25ff8302fc1b162ab9e95944167163"
+]
+
+extras = [
+ "5dbf27f58b8114318208b97ba99a90483b78eebbcad4117cac6881441977e855",
+ "adaf7670b2497ff3ac09636e0dd30f666a5a5b742ecdcb8551d722102dcfbd85",
+ "4460a4f4b03022947f536221483e85dcd9b07064a54516ec103a1939c3f587b5",
+ "014fca1fba54997c6db0e84822df274fb6807698b6856da4f737f38f10ab0e5d",
+ "ee146cff4b9ee7aae90d7bb1d6b4957839232be0e7dab1865e0ae39832f8f795"
+]
+
+# Used only for 3.5.0
+hip = [
+ "86eb7749ff6f6c5f6851cd6c528504d42f9286967324a50dd0dd54a6a74cacc7"
+]
+
+vdi = [
+ "b21866c7c23dc536356db139b88b6beb3c97f58658836974a7fc167feb31ad7f"
+]
+
+opencl = [
+ "8963fcd5a167583b3db8b94363778d4df4593bfce8141e1d3c32a59fb64a0cf6"
+]
+
+versions = ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0']
+versions_dict = dict()
+hashes = [aomp, devlib, llvm, flang, extras]
+hashes_35 = [aomp, devlib, llvm, flang, extras, hip, vdi, opencl]
+components = ['aomp', 'devlib', 'llvm', 'flang', 'extras']
+components_35 = [
+ 'aomp', 'devlib', 'llvm', 'flang', 'extras', 'hip', 'vdi', 'opencl'
+]
+
+for outer_index, item in enumerate(versions):
+ if item == '3.5.0':
+ use_components = components_35
+ use_hashes = hashes_35
+ else:
+ use_components = components
+ use_hashes = hashes
+ for inner_index, component in enumerate(use_hashes):
+ versions_dict.setdefault(item, {})[use_components[inner_index]] = \
+ use_hashes[inner_index][outer_index]
class Aomp(Package):
"""llvm openmp compiler from AMD."""
homepage = tools_url + "/aomp"
- url = tools_url + "/aomp/archive/rocm-3.8.0.tar.gz"
+ url = tools_url + "/aomp/archive/rocm-3.10.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala', 'estewart08']
- version('3.8.0', sha256=aomp38['aomp'])
- version('3.7.0', sha256=aomp37['aomp'])
- version('3.5.0', sha256=aomp35['aomp'])
-
- depends_on('cmake@3.5.2:3.13.4', type='build')
- depends_on('mesa~llvm@18.3:', type=('build', 'link'))
- depends_on('py-setuptools@44.1.0', type='build')
- depends_on('python@2.7.18', type='build')
+ version('3.10.0', sha256=versions_dict['3.10.0']['aomp'])
+ version('3.9.0', sha256=versions_dict['3.9.0']['aomp'])
+ version('3.8.0', sha256=versions_dict['3.8.0']['aomp'])
+ version('3.7.0', sha256=versions_dict['3.7.0']['aomp'])
+ version('3.5.0', sha256=versions_dict['3.5.0']['aomp'])
+
+ # Cmake above 3.18 would fail the build on 3.5.0
+ depends_on('cmake@3:', type='build')
+ depends_on('cmake@3:3.17', when='@3.5.0', type='build')
+
+ # Python 2 is needed for 3.5.0 and 3.8.0, limit py-setuptools
+ # to avoid spec error
+ depends_on('python@2.7:2.8', when='@3.5.0:3.8.0', type='build')
+ depends_on('py-setuptools@:44', when='@3.5.0:3.8.0',
+ type='build')
+
+ depends_on('python@3:', type='build', when='@3.9.0:')
+ depends_on('py-setuptools', when='@3.9.0:', type='build')
+
+ depends_on('mesa18~llvm@18.3:', type=('build', 'link'))
depends_on('py-pip', when='@3.8.0:', type='build')
- depends_on('py-wheel@0.29.0', when='@3.8.0:', type=('build', 'run'))
+ depends_on('py-wheel', when='@3.8.0:', type=('build', 'run'))
depends_on('perl-data-dumper', type='build')
depends_on('awk', type='build')
depends_on('elfutils', type=('build', 'link'))
depends_on('libffi', type=('build', 'link'))
- for ver in ['3.5.0', '3.7.0', '3.8.0']:
- depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
- depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver)
- depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0']:
+ depends_on('hsakmt-roct@' + ver, type=('build', 'run'), when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
-
- # 3.8.0 Resources
- if ver == '3.8.0':
- resource(
- name='rocm-device-libs',
- url=compute_url +
- '/ROCm-Device-Libs/archive/rocm-3.8.0.tar.gz',
- sha256=aomp38['devlib'],
- expand=True,
- destination='aomp-dir',
- placement='rocm-device-libs',
- when='@3.8.0')
-
- resource(
- name='amd-llvm-project',
- url=tools_url + '/amd-llvm-project/archive/rocm-3.8.0.tar.gz',
- sha256=aomp38['llvm'],
- expand=True,
- destination='aomp-dir',
- placement='amd-llvm-project',
- when='@3.8.0')
-
- resource(
- name='flang',
- url=tools_url + '/flang/archive/rocm-3.8.0.tar.gz',
- sha256=aomp38['flang'],
- expand=True,
- destination='aomp-dir',
- placement='flang',
- when='@3.8.0')
-
- resource(
- name='aomp-extras',
- url=tools_url + '/aomp-extras/archive/rocm-3.8.0.tar.gz',
- sha256=aomp38['extras'],
- expand=True,
- destination='aomp-dir',
- placement='aomp-extras',
- when='@3.8.0')
-
- # 3.7.0 Resources
- if ver == '3.7.0':
- resource(
- name='rocm-device-libs',
- url=compute_url +
- '/ROCm-Device-Libs/archive/rocm-3.7.0.tar.gz',
- sha256=aomp37['devlib'],
- expand=True,
- destination='aomp-dir',
- placement='rocm-device-libs',
- when='@3.7.0')
-
- resource(
- name='amd-llvm-project',
- url=tools_url + '/amd-llvm-project/archive/rocm-3.7.0.tar.gz',
- sha256=aomp37['llvm'],
- expand=True,
- destination='aomp-dir',
- placement='amd-llvm-project',
- when='@3.7.0')
-
- resource(
- name='flang',
- url=tools_url + '/flang/archive/rocm-3.7.0.tar.gz',
- sha256=aomp37['flang'],
- expand=True,
- destination='aomp-dir',
- placement='flang',
- when='@3.7.0')
-
- resource(
- name='aomp-extras',
- url=tools_url + '/aomp-extras/archive/rocm-3.7.0.tar.gz',
- sha256=aomp37['extras'],
- expand=True,
- destination='aomp-dir',
- placement='aomp-extras',
- when='@3.7.0')
-
- # 3.5.0 Resources
- elif ver == '3.5.0':
- resource(
- name='rocm-device-libs',
- url=compute_url +
- '/ROCm-Device-Libs/archive/rocm-3.5.0.tar.gz',
- sha256=aomp35['devlib'],
- expand=True,
- destination='aomp-dir',
- placement='rocm-device-libs',
- when='@3.5.0')
-
- resource(
- name='amd-llvm-project',
- url=tools_url + '/amd-llvm-project/archive/rocm-3.5.0.tar.gz',
- sha256=aomp35['llvm'],
- expand=True,
- destination='aomp-dir',
- placement='amd-llvm-project',
- when='@3.5.0')
-
- resource(
- name='flang',
- url=tools_url + '/flang/archive/rocm-3.5.0.tar.gz',
- sha256=aomp35['flang'],
- expand=True,
- destination='aomp-dir',
- placement='flang',
- when='@3.5.0')
-
- resource(
- name='aomp-extras',
- url=tools_url + '/aomp-extras/archive/rocm-3.5.0.tar.gz',
- sha256=aomp35['extras'],
- expand=True,
- destination='aomp-dir',
- placement='aomp-extras',
- when='@3.5.0')
-
+ depends_on('hsa-rocr-dev@' + ver, type=('build', 'run'),
+ when='@' + ver)
+ depends_on('rocm-device-libs@' + ver, type=('build', 'run'),
+ when='@' + ver)
+
+ if ver != '3.5.0':
+ depends_on('hip@' + ver, type=('build', 'run'), when='@' + ver)
+ depends_on('hip-rocclr@' + ver, type='build', when='@' + ver)
+
+ if ver == '3.9.0' or ver == '3.10.0':
+ depends_on('rocm-gdb@' + ver, type=('build', 'run'),
+ when='@' + ver)
+
+ resource(
+ name='rocm-device-libs',
+ url=compute_url +
+ '/ROCm-Device-Libs/archive/rocm-' + ver + '.tar.gz',
+ sha256=versions_dict[ver]['devlib'],
+ expand=True,
+ destination='aomp-dir',
+ placement='rocm-device-libs',
+ when='@' + ver)
+
+ resource(
+ name='amd-llvm-project',
+ url=tools_url + '/amd-llvm-project/archive/rocm-' + ver
+ + '.tar.gz',
+ sha256=versions_dict[ver]['llvm'],
+ expand=True,
+ destination='aomp-dir',
+ placement='amd-llvm-project',
+ when='@' + ver)
+
+ resource(
+ name='flang',
+ url=tools_url + '/flang/archive/rocm-' + ver + '.tar.gz',
+ sha256=versions_dict[ver]['flang'],
+ expand=True,
+ destination='aomp-dir',
+ placement='flang',
+ when='@' + ver)
+
+ resource(
+ name='aomp-extras',
+ url=tools_url + '/aomp-extras/archive/rocm-' + ver + '.tar.gz',
+ sha256=versions_dict[ver]['extras'],
+ expand=True,
+ destination='aomp-dir',
+ placement='aomp-extras',
+ when='@' + ver)
+
+ if ver == '3.5.0':
resource(
name='hip-on-vdi',
url=tools_url + '/hip/archive/aomp-3.5.0.tar.gz',
- sha256=aomp35['hip'],
+ sha256=versions_dict['3.5.0']['hip'],
expand=True,
destination='aomp-dir',
placement='hip-on-vdi',
@@ -218,7 +185,7 @@ class Aomp(Package):
resource(
name='vdi',
url=tools_url + '/rocclr/archive/aomp-3.5.0.tar.gz',
- sha256=aomp35['vdi'],
+ sha256=versions_dict['3.5.0']['vdi'],
expand=True,
destination='aomp-dir',
placement='vdi',
@@ -226,13 +193,18 @@ class Aomp(Package):
resource(
name='opencl-on-vdi',
- sha256=aomp35['opencl'],
+ sha256=versions_dict['3.5.0']['opencl'],
url=compute_url +
'/ROCm-OpenCL-Runtime/archive/aomp-3.5.0.tar.gz',
expand=True,
destination='aomp-dir',
placement='opencl-on-vdi',
when='@3.5.0')
+
+ # Copy source files over for debug build in 3.9.0
+ patch('0001-Add-cmake-option-for-copying-source-for-debugging.patch',
+ working_dir='aomp-dir/amd-llvm-project', when='@3.9.0:')
+
# Revert back to .amdgcn.bc naming scheme for 3.8.0
patch('0001-Add-amdgcn-to-devicelibs-bitcode-names-3.8.patch',
working_dir='aomp-dir/amd-llvm-project', when='@3.8.0')
@@ -256,8 +228,14 @@ class Aomp(Package):
src = self.stage.source_path
libomptarget = '{0}/aomp-dir/amd-llvm-project/openmp/libomptarget'
aomp_extras = '{0}/aomp-dir/aomp-extras/aomp-device-libs'
+ flang = '{0}/aomp-dir/flang/'
- if self.spec.version == Version('3.8.0'):
+ if self.spec.version >= Version('3.9.0'):
+ filter_file(
+ 'ADDITIONAL_VERSIONS 2.7', 'ADDITIONAL_VERSIONS 3',
+ flang.format(src) + 'CMakeLists.txt')
+
+ if self.spec.version >= Version('3.8.0'):
filter_file(
'{CMAKE_INSTALL_PREFIX}', '{HSA_INCLUDE}',
libomptarget.format(src) + '/hostrpc/services/CMakeLists.txt')
@@ -287,9 +265,10 @@ class Aomp(Package):
string=True)
filter_file(
- r'\${ROCM_DIR}/hsa/include \${ROCM_DIR}/hsa/include/hsa',
+ r'${ROCM_DIR}/hsa/include ${ROCM_DIR}/hsa/include/hsa',
'${HSA_INCLUDE}/hsa/include ${HSA_INCLUDE}/hsa/include/hsa',
- libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt')
+ libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt',
+ string=True)
filter_file(
'{ROCM_DIR}/hsa/lib', '{HSA_LIB}',
@@ -301,15 +280,17 @@ class Aomp(Package):
libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt')
filter_file(
- r'-L\${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS}',
+ r'-L${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS}',
'-L${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS} -L${HSAKMT_LIB64}',
- libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt')
+ libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt',
+ string=True)
filter_file(
- r'-rpath,\${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS}',
+ r'-rpath,${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS}',
'-rpath,${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS}' +
',-rpath,${HSAKMT_LIB64}',
- libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt')
+ libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt',
+ string=True)
filter_file(
'{ROCM_DIR}/include', '{COMGR_INCLUDE}',
@@ -320,15 +301,24 @@ class Aomp(Package):
libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt')
filter_file(
- r'-L\${LLVM_LIBDIR}\${OPENMP_LIBDIR_SUFFIX}',
+ r'-L${LLVM_LIBDIR}${OPENMP_LIBDIR_SUFFIX}',
'-L${LLVM_LIBDIR}${OPENMP_LIBDIR_SUFFIX} -L${COMGR_LIB}',
- libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt')
+ libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt',
+ string=True)
filter_file(
- r'rpath,\${LLVM_LIBDIR}\${OPENMP_LIBDIR_SUFFIX}',
+ r'rpath,${LLVM_LIBDIR}${OPENMP_LIBDIR_SUFFIX}',
'rpath,${LLVM_LIBDIR}${OPENMP_LIBDIR_SUFFIX}' +
'-Wl,-rpath,${COMGR_LIB}',
- libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt')
+ libomptarget.format(src) + '/plugins/hsa/CMakeLists.txt',
+ string=True)
+
+ def setup_run_environment(self, env):
+ devlibs_prefix = self.spec['rocm-device-libs'].prefix
+ aomp_prefix = self.spec['aomp'].prefix
+ env.set('HIP_DEVICE_LIB_PATH',
+ '{0}/amdgcn/bitcode'.format(format(devlibs_prefix)))
+ env.set('AOMP', '{0}'.format(format(aomp_prefix)))
def setup_build_environment(self, env):
aomp_prefix = self.spec['aomp'].prefix
@@ -347,6 +337,15 @@ class Aomp(Package):
hsakmt_prefix = self.spec['hsakmt-roct'].prefix
comgr_prefix = self.spec['comgr'].prefix
opencl_src = '/aomp-dir/opencl-on-vdi/api/opencl'
+ omp_src = '/aomp-dir/amd-llvm-project/openmp'
+ debug_map_format = \
+ '-fdebug-prefix-map={0}{1}={2}'.format(src, omp_src, aomp_prefix)
+
+ if self.spec.version >= Version('3.9.0'):
+ bitcode_dir = '/amdgcn/bitcode'
+ else:
+ bitcode_dir = '/lib'
+
components = dict()
components['amd-llvm-project'] = [
'../aomp-dir/amd-llvm-project/llvm',
@@ -388,19 +387,19 @@ class Aomp(Package):
components['aomp-extras'] = [
'../aomp-dir/aomp-extras',
'-DROCM_PATH=$ROCM_DIR ',
- '-DDEVICE_LIBS_DIR={0}/lib'.format(devlibs_prefix),
+ '-DDEVICE_LIBS_DIR={0}{1}'.format(devlibs_prefix, bitcode_dir),
'-DAOMP_STANDALONE_BUILD=0',
- '-DDEVICELIBS_ROOT={0}/aomp-dir/rocm-device-libs'.format(src)
+ '-DDEVICELIBS_ROOT={0}/aomp-dir/rocm-device-libs'.format(src),
+ '-DCMAKE_VERBOSE_MAKEFILE=1'
]
- components['openmp'] = [
- '../aomp-dir/amd-llvm-project/openmp',
+ openmp_common_args = [
'-DROCM_DIR={0}'.format(hsa_prefix),
- '-DDEVICE_LIBS_DIR={0}/lib'.format(devlibs_prefix),
+ '-DDEVICE_LIBS_DIR={0}{1}'.format(devlibs_prefix, bitcode_dir),
'-DAOMP_STANDALONE_BUILD=0',
'-DDEVICELIBS_ROOT={0}/aomp-dir/rocm-device-libs'.format(src),
- '-DOPENMP_TEST_C_COMPILER=$AOMP/bin/clang',
- '-DOPENMP_TEST_CXX_COMPILER=$AOMP/bin/clang++',
+ '-DOPENMP_TEST_C_COMPILER={0}/bin/clang'.format(aomp_prefix),
+ '-DOPENMP_TEST_CXX_COMPILER={0}/bin/clang++'.format(aomp_prefix),
'-DLIBOMPTARGET_AMDGCN_GFXLIST={0}'.format(gfx_list),
'-DLIBOMP_COPY_EXPORTS=OFF',
'-DHSA_INCLUDE={0}'.format(hsa_prefix),
@@ -413,28 +412,25 @@ class Aomp(Package):
'-DOPENMP_ENABLE_LIBOMPTARGET_HSA=1'
]
+ components['openmp'] = ['../aomp-dir/amd-llvm-project/openmp']
+ components['openmp'] += openmp_common_args
+
components['openmp-debug'] = [
'../aomp-dir/amd-llvm-project/openmp',
- '-DROCM_DIR={0}'.format(hsa_prefix),
- '-DDEVICE_LIBS_DIR={0}/lib'.format(devlibs_prefix),
- '-DAOMP_STANDALONE_BUILD=0',
- '-DDEVICELIBS_ROOT={0}/aomp-dir/rocm-device-libs'.format(src),
- '-DOPENMP_TEST_C_COMPILER=$AOMP/bin/clang',
- '-DOPENMP_TEST_CXX_COMPILER=$AOMP/bin/clang++',
- '-DLIBOMPTARGET_AMDGCN_GFXLIST={0}'.format(gfx_list),
- '-DLIBOMP_COPY_EXPORTS=OFF',
- '-DHSA_INCLUDE={0}'.format(hsa_prefix),
- '-DHSA_LIB={0}/lib'.format(hsa_prefix),
- '-DHSAKMT_LIB={0}/lib'.format(hsakmt_prefix),
- '-DHSAKMT_LIB64={0}/lib64'.format(hsakmt_prefix),
- '-DCOMGR_INCLUDE={0}/include'.format(comgr_prefix),
- '-DCOMGR_LIB={0}/lib'.format(comgr_prefix),
'-DLIBOMPTARGET_NVPTX_DEBUG=ON',
'-DOPENMP_ENABLE_LIBOMPTARGET=1',
'-DOPENMP_ENABLE_LIBOMPTARGET_HSA=1'
+ '-DCMAKE_CXX_FLAGS=-g',
+ '-DCMAKE_C_FLAGS=-g'
]
- if self.spec.version == Version('3.8.0'):
+ if self.spec.version >= Version('3.9.0'):
+ components['openmp-debug'] += [
+ '-DENABLE_SOURCE_COPY=ON',
+ '-DOPENMP_SOURCE_DEBUG_MAP={0}'.format(debug_map_format)
+ ]
+
+ if self.spec.version >= Version('3.8.0'):
components['openmp-debug'] += [
'-DLIBOMP_ARCH=x86_64',
'-DLIBOMP_OMP_VERSION=50',
@@ -444,13 +440,12 @@ class Aomp(Package):
'-DLIBOMP_CPPFLAGS=-O0',
'-DLIBOMP_OMPD_ENABLED=ON',
'-DLIBOMP_OMPD_SUPPORT=ON',
- '-DLIBOMP_OMPT_DEBUG=ON',
- '-DCMAKE_CXX_FLAGS=-g',
- '-DCMAKE_C_FLAGS=-g'
+ '-DLIBOMP_OMPT_DEBUG=ON'
]
- components['pgmath'] = [
- '../aomp-dir/flang/runtime/libpgmath',
+ components['openmp-debug'] += openmp_common_args
+
+ flang_common_args = [
'-DLLVM_ENABLE_ASSERTIONS=ON',
'-DLLVM_CONFIG={0}/bin/llvm-config'.format(aomp_prefix),
'-DCMAKE_CXX_COMPILER={0}/bin/clang++'.format(aomp_prefix),
@@ -459,31 +454,26 @@ class Aomp(Package):
'-DLLVM_TARGETS_TO_BUILD=AMDGPU;x86'
]
+ components['pgmath'] = ['../aomp-dir/flang/runtime/libpgmath']
+ components['pgmath'] += flang_common_args
+
components['flang'] = [
'../aomp-dir/flang',
- '-DLLVM_ENABLE_ASSERTIONS=ON',
- '-DLLVM_CONFIG={0}/bin/llvm-config'.format(aomp_prefix),
- '-DCMAKE_CXX_COMPILER={0}/bin/clang++'.format(aomp_prefix),
- '-DCMAKE_C_COMPILER={0}/bin/clang'.format(aomp_prefix),
- '-DCMAKE_Fortran_COMPILER={0}/bin/flang'.format(aomp_prefix),
- '-DLLVM_TARGETS_TO_BUILD=AMDGPU;x86',
'-DFLANG_OPENMP_GPU_AMD=ON',
'-DFLANG_OPENMP_GPU_NVIDIA=ON'
]
+ components['flang'] += flang_common_args
+
components['flang-runtime'] = [
'../aomp-dir/flang',
- '-DLLVM_ENABLE_ASSERTIONS=ON',
- '-DLLVM_CONFIG={0}/bin/llvm-config'.format(aomp_prefix),
- '-DCMAKE_CXX_COMPILER={0}/bin/clang++'.format(aomp_prefix),
- '-DCMAKE_C_COMPILER={0}/bin/clang'.format(aomp_prefix),
- '-DCMAKE_Fortran_COMPILER={0}/bin/flang'.format(aomp_prefix),
- '-DLLVM_TARGETS_TO_BUILD=AMDGPU;x86',
'-DLLVM_INSTALL_RUNTIME=ON',
'-DFLANG_BUILD_RUNTIME=ON',
'-DOPENMP_BUILD_DIR={0}/spack-build-openmp/runtime/src'.format(src)
]
+ components['flang-runtime'] += flang_common_args
+
if self.spec.version != Version('3.5.0'):
build_order = [
"amd-llvm-project", "aomp-extras",
@@ -496,7 +486,11 @@ class Aomp(Package):
]
# Override standard CMAKE_BUILD_TYPE
- std_cmake_args.remove("-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo")
+ for arg in std_cmake_args:
+ found = re.search("CMAKE_BUILD_TYPE", arg)
+ if found:
+ std_cmake_args.remove(arg)
+
for component in build_order:
with working_dir('spack-build-{0}'.format(component), create=True):
cmake_args = components[component]
diff --git a/var/spack/repos/builtin/packages/apachetop/package.py b/var/spack/repos/builtin/packages/apachetop/package.py
index 19943c849c..c0da70bc36 100644
--- a/var/spack/repos/builtin/packages/apachetop/package.py
+++ b/var/spack/repos/builtin/packages/apachetop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/apcomp/package.py b/var/spack/repos/builtin/packages/apcomp/package.py
index 3e66038030..c21f8eca1a 100644
--- a/var/spack/repos/builtin/packages/apcomp/package.py
+++ b/var/spack/repos/builtin/packages/apcomp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ape/package.py b/var/spack/repos/builtin/packages/ape/package.py
index 343b1a1185..32f8fb437b 100644
--- a/var/spack/repos/builtin/packages/ape/package.py
+++ b/var/spack/repos/builtin/packages/ape/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aperture-photometry/package.py b/var/spack/repos/builtin/packages/aperture-photometry/package.py
index db2532ed92..109ce9d5af 100644
--- a/var/spack/repos/builtin/packages/aperture-photometry/package.py
+++ b/var/spack/repos/builtin/packages/aperture-photometry/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/apex/package.py b/var/spack/repos/builtin/packages/apex/package.py
index dfc9c55c50..7222670768 100644
--- a/var/spack/repos/builtin/packages/apex/package.py
+++ b/var/spack/repos/builtin/packages/apex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/apfel/package.py b/var/spack/repos/builtin/packages/apfel/package.py
new file mode 100644
index 0000000000..4a224f6998
--- /dev/null
+++ b/var/spack/repos/builtin/packages/apfel/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Apfel(AutotoolsPackage):
+ """APFEL is a library able to perform DGLAP evolution up to NNLO in QCD and
+ to NLO in QED, both with pole and MSbar masses. The coupled DGLAP
+ QCD+QED evolution equations are solved in x-space by means of higher
+ order interpolations and Runge-Kutta techniques."""
+
+ homepage = "https://github.com/scarrazza/apfel"
+ url = "https://github.com/scarrazza/apfel/archive/3.0.4.tar.gz"
+
+ tags = ['hep']
+
+ version('3.0.4', sha256='c7bfae7fe2dc0185981850f2fe6ae4842749339d064c25bf525b4ef412bbb224')
+
+ depends_on('swig', when='+python')
+ depends_on('python', when='+python', type=('build', 'run'))
+ depends_on('lhapdf', when='+lhapdf', type=('build', 'run'))
+
+ variant('python', description='Build python wrapper', default=False)
+ variant('lhapdf', description='Link to LHAPDF', default=False)
+
+ def configure_args(self):
+ args = []
+ if self.spec.satisfies('~python'):
+ args.append('--disable-pywrap')
+ else:
+ args.append('--enable-pywrap')
+
+ args += self.enable_or_disable('lhapdf')
+ return args
diff --git a/var/spack/repos/builtin/packages/apple-libunwind/package.py b/var/spack/repos/builtin/packages/apple-libunwind/package.py
index c966ee6c82..e339893c19 100644
--- a/var/spack/repos/builtin/packages/apple-libunwind/package.py
+++ b/var/spack/repos/builtin/packages/apple-libunwind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/apple-libuuid/package.py b/var/spack/repos/builtin/packages/apple-libuuid/package.py
new file mode 100644
index 0000000000..1ed7fe7b37
--- /dev/null
+++ b/var/spack/repos/builtin/packages/apple-libuuid/package.py
@@ -0,0 +1,45 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class AppleLibuuid(BundlePackage):
+ """Placeholder package for Apple's analogue to non-GNU libuuid"""
+
+ homepage = "https://opensource.apple.com/tarballs/Libsystem/"
+
+ version('1353.100.2')
+
+ provides('uuid')
+
+ # Only supported on 'platform=darwin'
+ conflicts('platform=linux')
+ conflicts('platform=cray')
+
+ @property
+ def libs(self):
+ """Export the Apple libuuid library.
+
+ According to https://bugs.freedesktop.org/show_bug.cgi?id=105366,
+ libuuid is provided as part of libsystem_c. The Apple libsystem_c
+ library cannot be linked to directly using an absolute path; doing so
+ will cause the linker to throw an error 'cannot link directly with
+ /usr/lib/system/libsystem_c.dylib' and the linker will suggest linking
+ with System.framework instead. Linking to this framework is equivalent
+ to linking with libSystem.dylib, which can be confirmed on a macOS
+ system by executing at a terminal the command `ls -l
+ /System/Library/Frameworks/System.Framework` -- the file "System" is a
+ symlink to `/usr/lib/libSystem.B.dylib`, and `/usr/lib/libSystem.dylib`
+ also symlinks to this file. Running `otool -L /usr/lib/libSystem.dylib`
+ confirms that it will link dynamically to
+ `/usr/lib/system/libsystem_c.dylib`."""
+
+ return LibraryList('/usr/lib/libSystem.dylib')
+
+ @property
+ def headers(self):
+ """Export the Apple libuuid header."""
+ return HeaderList(self.prefix.include.uuid.join('uuid.h'))
diff --git a/var/spack/repos/builtin/packages/applewmproto/package.py b/var/spack/repos/builtin/packages/applewmproto/package.py
index ea1bbe19e2..4302525575 100644
--- a/var/spack/repos/builtin/packages/applewmproto/package.py
+++ b/var/spack/repos/builtin/packages/applewmproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/appres/package.py b/var/spack/repos/builtin/packages/appres/package.py
index ddf6ebfe9b..5a3456bb5c 100644
--- a/var/spack/repos/builtin/packages/appres/package.py
+++ b/var/spack/repos/builtin/packages/appres/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,6 @@ class Appres(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxt')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/apr-util/package.py b/var/spack/repos/builtin/packages/apr-util/package.py
index 0bb2fecfa6..061beaefd8 100644
--- a/var/spack/repos/builtin/packages/apr-util/package.py
+++ b/var/spack/repos/builtin/packages/apr-util/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/apr/package.py b/var/spack/repos/builtin/packages/apr/package.py
index f4938a1d35..f2d90352ab 100644
--- a/var/spack/repos/builtin/packages/apr/package.py
+++ b/var/spack/repos/builtin/packages/apr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,3 +17,5 @@ class Apr(AutotoolsPackage):
version('1.5.2', sha256='1af06e1720a58851d90694a984af18355b65bb0d047be03ec7d659c746d6dbdb')
patch('missing_includes.patch', when='@1.7.0')
+
+ depends_on('uuid', type='link')
diff --git a/var/spack/repos/builtin/packages/aragorn/package.py b/var/spack/repos/builtin/packages/aragorn/package.py
index 17927f7223..4caf12c694 100644
--- a/var/spack/repos/builtin/packages/aragorn/package.py
+++ b/var/spack/repos/builtin/packages/aragorn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/arbor/package.py b/var/spack/repos/builtin/packages/arbor/package.py
index e48ba70d8e..9adacf477f 100644
--- a/var/spack/repos/builtin/packages/arbor/package.py
+++ b/var/spack/repos/builtin/packages/arbor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,68 +6,71 @@
from spack import *
-class Arbor(CMakePackage):
+class Arbor(CMakePackage, CudaPackage):
"""Arbor is a high-performance library for computational neuroscience
simulations."""
homepage = "https://github.com/arbor-sim/arbor/"
- url = "https://github.com/arbor-sim/arbor/archive/v0.2.tar.gz"
+ git = "https://github.com/arbor-sim/arbor.git"
+ url = "https://github.com/arbor-sim/arbor/releases/download/v0.5/arbor-v0.5-full.tar.gz"
+ maintainers = ['bcumming', 'halfflat']
- version('0.4', sha256='7d9fc6b3262954cc5dc1751215fbb9f2cdb7010e829a2be43022f90da2d8d2e3')
- version('0.2', sha256='43c9181c03be5f3c9820b2b50592d7b41344f37e1200980119ad347eb7bcf4eb')
+ version('master', branch='master', submodules=True)
+ version('0.5', 'd0c8a4c7f97565d7c30493c66249be794d1dc424de266fc79cecbbf0e313df59')
- variant('vectorize', default=False,
- description='Enable vectorization of computational kernels')
- variant('gpu', default=False, description='Enable GPU support')
+ variant('assertions', default=False, description='Enable arb_assert() assertions in code.')
+ variant('doc', default=False, description='Build documentation.')
variant('mpi', default=False, description='Enable MPI support')
- variant('python', default=False,
- description='Enable Python frontend support')
- variant('unwind', default=False,
- description='Enable libunwind for pretty stack traces')
+ variant('neuroml', default=True, description='Build NeuroML support library.')
+ variant('python', default=True, description='Enable Python frontend support')
+ variant('vectorize', default=False, description='Enable vectorization of computational kernels')
- depends_on('cuda', when='+gpu')
- depends_on('mpi', when='+mpi')
- depends_on('libunwind', when='+unwind')
+ # https://arbor.readthedocs.io/en/latest/install/build_install.html?highlight=requirements#compilers
+ conflicts('%gcc@:8.3')
+ conflicts('%clang@:8.0')
+ # Cray compiler v9.2 and later is Clang-based.
+ conflicts('%cce@:9.1')
+ conflicts('%intel')
+
+ depends_on('cmake@3.12:', type='build')
- extends('python@3.6:', when='+python')
+ # misc dependencies
+ depends_on('nlohmann-json')
+ depends_on('cuda@10:', when='+cuda')
+ depends_on('libxml2', when='+neuroml')
+
+ # mpi
+ depends_on('mpi', when='+mpi')
depends_on('py-mpi4py', when='+mpi+python', type=('build', 'run'))
- depends_on('cmake@3.9:', type='build')
- # mentioned in documentation but shouldn't be necessary when
- # using the archive
- # depends_on('git@2.0:', type='build')
-
- # compiler dependencies
- # depends_on(C++14)
- # depends_on('gcc@6.1.0:', type='build')
- # depends_on('llvm@4:', type='build')
- # depends_on('clang-apple@9:', type='build')
-
- # when building documentation, this could be an optional dependency
- depends_on('py-sphinx', type='build')
-
- conflicts('@:0.2', when='target=aarch64:')
-
- def patch(self):
- filter_file(
- r'find_library\(_unwind_library_target unwind-\${libunwind_arch}',
- r'find_library(_unwind_library_target unwind-${_libunwind_arch}',
- 'cmake/FindUnwind.cmake'
- )
- filter_file(
- r'target_compile_definitions\(arbor-private-deps ARB_WITH_UNWIND\)', # noqa: E501
- r'target_compile_definitions(arbor-private-deps INTERFACE WITH_UNWIND)', # noqa: E501
- 'CMakeLists.txt'
- )
+ # python (bindings)
+ extends('python', when='+python')
+ depends_on('python@3.6:', when="+python", type=('build', 'run'))
+ depends_on('py-numpy', when='+python', type=('build', 'run'))
+ depends_on('py-pybind11', when='+python', type=('build', 'run'))
+
+ # sphinx based documentation
+ depends_on('python@3.6:', when="+doc", type='build')
+ depends_on('py-sphinx', when="+doc", type='build')
+ depends_on('py-svgwrite', when='+doc', type='build')
+
+ @property
+ def build_targets(self):
+ return ['all', 'html'] if '+doc' in self.spec else ['all']
def cmake_args(self):
args = [
- '-DARB_VECTORIZE=' + ('ON' if '+vectorize' in self.spec else 'OFF'), # noqa: E501
- '-DARB_WITH_GPU=' + ('ON' if '+gpu' in self.spec else 'OFF'),
- '-DARB_WITH_PYTHON=' + ('ON' if '+python' in self.spec else 'OFF'),
+ self.define_from_variant('ARB_WITH_ASSERTIONS', 'assertions'),
+ self.define_from_variant('ARB_WITH_MPI', 'mpi'),
+ self.define_from_variant('ARB_WITH_NEUROML', 'neuroml'),
+ self.define_from_variant('ARB_WITH_PYTHON', 'python'),
+ self.define_from_variant('ARB_VECTORIZE', 'vectorize'),
]
- if '+unwind' in self.spec:
- args.append('-DUnwind_ROOT_DIR={0}'.format(self.spec['libunwind'].prefix)) # noqa: E501
+ if '+cuda' in self.spec:
+ args.append('-DARB_GPU=cuda')
+
+ # rely on spack's compiler wrapper to set architecture
+ args.append('-DARB_ARCH=')
return args
diff --git a/var/spack/repos/builtin/packages/arborx/package.py b/var/spack/repos/builtin/packages/arborx/package.py
index 7044aec257..8633994ec7 100644
--- a/var/spack/repos/builtin/packages/arborx/package.py
+++ b/var/spack/repos/builtin/packages/arborx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,8 @@ class Arborx(CMakePackage):
maintainers = ['aprokop']
- version('master', branch='master')
+ version('master', branch='master')
+ version('1.0', sha256='9b5f45c8180622c907ef0b7cc27cb18ba272ac6558725d9e460c3f3e764f1075')
version('0.9-beta', sha256='b349b5708d1aa00e8c20c209ac75dc2d164ff9bf1b85adb5437346d194ba6c0d')
# ArborX relies on Kokkos to provide devices, providing one-to-one matching
@@ -25,7 +26,7 @@ class Arborx(CMakePackage):
'serial': (True, "enable Serial backend (default)"),
'cuda': (False, "enable Cuda backend"),
'openmp': (False, "enable OpenMP backend"),
- 'hip': (False, "enable HIP backend")
+ 'rocm': (False, "enable HIP backend")
}
variant('mpi', default=True, description='enable MPI')
@@ -60,7 +61,7 @@ class Arborx(CMakePackage):
options = [
'-DKokkos_ROOT=%s' % (spec['kokkos'].prefix if '~trilinos' in spec
else spec['trilinos'].prefix),
- '-DARBORX_ENABLE_MPI=%s' % ('ON' if '+mpi' in spec else 'OFF')
+ self.define_from_variant('ARBORX_ENABLE_MPI', 'mpi')
]
if '+cuda' in spec:
@@ -69,3 +70,41 @@ class Arborx(CMakePackage):
'-DCMAKE_CXX_COMPILER=%s' % spec["kokkos"].kokkos_cxx)
return options
+
+ examples_src_dir = "examples"
+
+ @run_after('install')
+ def setup_build_tests(self):
+ """Copy the example source files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources([self.examples_src_dir])
+
+ def build_tests(self):
+ """Build test."""
+ cmake_build_path = join_path(self.install_test_root,
+ self.examples_src_dir, "build")
+ cmake_prefix_path = "-DCMAKE_PREFIX_PATH={0}".format(self.spec['arborx'].prefix)
+
+ # We don't need to append the path to Kokkos to CMAKE_PREFIX_PATH
+ # since a hint is already hardcoded inside the CMake ArborX configuration.
+ # Omitting it here allows us to avoid to distinguish between Kokkos
+ # being installed as a standalone or as part of Trilinos.
+ if '+mpi' in self.spec:
+ cmake_prefix_path += ";{0}".format(self.spec['mpi'].prefix)
+ with working_dir(cmake_build_path, create=True):
+ cmake_args = ["..",
+ cmake_prefix_path,
+ "-DCMAKE_CXX_COMPILER={0}".format(self.compiler.cxx)]
+ cmake(*cmake_args)
+ make()
+
+ def run_tests(self):
+ """Run test."""
+ reason = 'Checking ability to execute.'
+ run_path = join_path(self.install_test_root, self.examples_src_dir, 'build')
+ with working_dir(run_path):
+ self.run_test('ctest', ['-V'], [], installed=False, purpose=reason)
+
+ def test(self):
+ self.build_tests()
+ self.run_tests()
diff --git a/var/spack/repos/builtin/packages/archer/package.py b/var/spack/repos/builtin/packages/archer/package.py
index 95c3cc1bf8..bb593b2766 100644
--- a/var/spack/repos/builtin/packages/archer/package.py
+++ b/var/spack/repos/builtin/packages/archer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/argobots/package.py b/var/spack/repos/builtin/packages/argobots/package.py
index 2dc8212eb7..5d0af27b3f 100644
--- a/var/spack/repos/builtin/packages/argobots/package.py
+++ b/var/spack/repos/builtin/packages/argobots/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,19 +21,31 @@ class Argobots(AutotoolsPackage):
maintainers = ['shintaro-iwasaki']
version("main", branch="main")
+ version("1.1", sha256="f0f971196fc8354881681c2282a2f2adb6d48ff5e84cf820ca657daad1549005")
+ version("1.0.1", sha256="fa05a02d7f8f74d845647636609219ee02f6adf628ebcbf40393f829987d9036")
version("1.0", sha256="36a0815f7bf99900a9c9c1eef61ef9b3b76aa2cfc4594a304f6c8c3296da8def")
+ variant("perf", default=True, description="Add performance optimization flags")
variant("valgrind", default=False, description="Enable Valgrind")
variant("debug", default=False, description="Compiled with debugging symbols")
+ variant("stackunwind", default=False, description="Enable function stack unwinding")
+ variant("stackguard", default="none", description="Enable stack guard",
+ values=('none', 'canary-32', 'mprotect', 'mprotect-strict'), multi=False)
+ variant("tool", default=False, description="Enable ABT_tool interface")
+ variant("affinity", default=False, description="Enable affinity setting")
depends_on("m4", type=("build"), when="@main")
depends_on("autoconf", type=("build"), when="@main")
depends_on("automake", type=("build"), when="@main")
depends_on("libtool", type=("build"), when="@main")
depends_on("valgrind", when="+valgrind")
+ depends_on("libunwind", when="+stackunwind")
def configure_args(self):
- args = ["--enable-perf-opt"]
+ args = []
+ if '+perf' in self.spec:
+ args.append('--enable-perf-opt')
+
if '+valgrind' in self.spec:
args.append('--enable-valgrind')
else:
@@ -44,4 +56,18 @@ class Argobots(AutotoolsPackage):
else:
args.append('--disable-debug')
+ if '+stackunwind' in self.spec:
+ args.append('--enable-stack-unwind')
+ args.append('--with-libunwind={0}'.format(self.spec['libunwind'].prefix))
+
+ stackguard = self.spec.variants['stackguard'].value
+ if stackguard != 'none':
+ args.append('--enable-stack-overflow-check={0}'.format(stackguard))
+
+ if '+tool' in self.spec:
+ args.append('--enable-tool')
+
+ if '+affinity' in self.spec:
+ args.append('--enable-affinity')
+
return args
diff --git a/var/spack/repos/builtin/packages/argon2/package.py b/var/spack/repos/builtin/packages/argon2/package.py
index 6d5e1abf04..9f79612d6c 100644
--- a/var/spack/repos/builtin/packages/argon2/package.py
+++ b/var/spack/repos/builtin/packages/argon2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/argp-standalone/package.py b/var/spack/repos/builtin/packages/argp-standalone/package.py
index 380bd4787b..752ad2f652 100644
--- a/var/spack/repos/builtin/packages/argp-standalone/package.py
+++ b/var/spack/repos/builtin/packages/argp-standalone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/args/package.py b/var/spack/repos/builtin/packages/args/package.py
new file mode 100644
index 0000000000..c6c3727b8c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/args/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Args(CMakePackage):
+ """A simple header-only C++ argument parser library. Supposed to be
+ flexible and powerful, and attempts to be compatible with the
+ functionality of the Python standard argparse library (though not
+ necessarily the API)."""
+
+ homepage = "https://taywee.github.io/args"
+ url = "https://github.com/Taywee/args/archive/6.2.3.tar.gz"
+
+ version('6.2.3', sha256='c202d15fc4b30519a08bae7df9e6f4fdc40ac2434ba65d83a108ebbf6e4822c2')
+ version('6.2.2', sha256='8016fb0fc079d746433be3df9cf662e3e931e730aaf9f69f2287eac79ac643c1')
+ version('6.2.1', sha256='699b91fae4509b09974274838e2038612da24eeae89e62d0bc580457a9e261b0')
diff --git a/var/spack/repos/builtin/packages/argtable/package.py b/var/spack/repos/builtin/packages/argtable/package.py
index fa39ee062b..7114315647 100644
--- a/var/spack/repos/builtin/packages/argtable/package.py
+++ b/var/spack/repos/builtin/packages/argtable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aria2/package.py b/var/spack/repos/builtin/packages/aria2/package.py
index 321360cef6..07933c3444 100644
--- a/var/spack/repos/builtin/packages/aria2/package.py
+++ b/var/spack/repos/builtin/packages/aria2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/arm-forge/package.py b/var/spack/repos/builtin/packages/arm-forge/package.py
index 551d910a82..ac8163aca4 100644
--- a/var/spack/repos/builtin/packages/arm-forge/package.py
+++ b/var/spack/repos/builtin/packages/arm-forge/package.py
@@ -1,10 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
-import os
+import subprocess
+import platform
class ArmForge(Package):
@@ -13,116 +14,18 @@ class ArmForge(Package):
Fortran applications on Linux for high performance - from single threads
through to complex parallel HPC codes with MPI, OpenMP, threads or CUDA."""
- homepage = "http://www.allinea.com/products/develop-allinea-forge"
+ homepage = "https://www.arm.com/products/development-tools/server-and-hpc/forge"
+ maintainers = ["NickRF"]
# TODO: this mess should be fixed as soon as a way to parametrize/constrain
# versions (and checksums) based on the target platform shows up
- version(
- "19.0.4-Redhat-6.0-x86_64",
- sha256="0b0b6ed5c3d6833bad46d5ea84346cd46f0e4b3020c31f2fd4318b75ddaf01aa",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Redhat-6.0-x86_64.tar",
- )
- version(
- "19.0.4-Redhat-7.0-x86_64",
- sha256="de3c669f7cb4daf274aae603294c416a953fb558e101eb03bcccf0ef4291e079",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Redhat-7.0-x86_64.tar",
- )
- version(
- "19.0.4-Suse-11-x86_64",
- sha256="24a2c7761c2163f128e4f4b60e963c53774196809ddfa880131c5dde5eb454c2",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Suse-11-x86_64.tar",
- )
- version(
- "19.0.4-Suse-12-x86_64",
- sha256="6688192291fe9696922a34371d07ea66f89bff9b976fd99796e5f9a6651f86e6",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Suse-12-x86_64.tar",
- )
- version(
- "19.0.4-Suse-15-x86_64",
- sha256="dea60d93a157ab6952fd6887f40123ab9d633d5589ffe7824d53fb269294cf35",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Suse-15-x86_64.tar",
- )
- version(
- "19.0.4-19.0.4-Ubuntu-16.04-x86_64",
- sha256="240741beff96f6a0b3976bc98d90863fe475366d5c093af9b96b877a230d479c",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Ubuntu-16.04-x86_64.tar",
- )
- version(
- "19.0.4-Ubuntu-14.04-x86_64",
- sha256="135903906111b61045ddd3e98f1d8e8fd02b5b6ef554a68dfbe6760c76ec65a2",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Ubuntu-14.04-x86_64.tar",
- )
- version(
- "19.0.4-Redhat-7.2-ppc64le",
- sha256="73cb9f4005278e8dd2106a871dcbb53edb8855faeeda75c7abd7936f85fcce56",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Redhat-7.2-ppc64le.tar",
- )
- version(
- "19.0.4-Redhat-7.4-aarch64",
- sha256="8d168e5665a158f65b72d7b996fd283f7f538efbff15648eff44cfb7371ecad7",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Redhat-7.4-aarch64.tar",
- )
- version(
- "19.0.4-Suse-12-aarch64",
- sha256="de3aa62c5b5d5181a7947dcd1dfa66df5d06fd482394044100147210c8182d75",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Suse-12-aarch64.tar",
- )
- version(
- "19.0.4-Ubuntu-16.04-aarch64",
- sha256="3910e320c635dd5c09af7f5696909c7c0ae25406910d2e592e522ed0233e0451",
- url="http://content.allinea.com/downloads/arm-forge-19.0.4-Ubuntu-16.04-aarch64.tar",
- )
- version(
- "19.0.3-Redhat-6.0-x86_64",
- sha256="0ace88a1847d8f622f077cd38fa9dddf7f2d6dd6aad086be0e0a66e10fb8b64b",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Redhat-6.0-x86_64.tar",
- )
- version(
- "19.0.3-Redhat-7.0-x86_64",
- sha256="35c7a9532aa19251343c37b8f5eb51ef04f7b6e8b42bea2bd932f4d83a1e8375",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Redhat-7.0-x86_64.tar",
- )
- version(
- "19.0.3-Suse-11-x86_64",
- sha256="48fe2b1b81a824909fedf5e02cd08d8a62033cce80440eca6efbea0ae8023e75",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Suse-11-x86_64.tar",
- )
- version(
- "19.0.3-Suse-12-x86_64",
- sha256="b4d0f91780dc43544ea946f5117a50ba18750fd50ef811cae5b6b6771b4ebb77",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Suse-12-x86_64.tar",
- )
- version(
- "19.0.3-Ubuntu-16.04-x86_64",
- sha256="ed6726434a6d24d413ed6183756433d63438936dc671cb6a3567b407c8e233e1",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Ubuntu-16.04-x86_64.tar",
- )
- version(
- "19.0.3-Ubuntu-14.04-x86_64",
- sha256="22350d068c4ef60d1aad330636d443f00269c0cc49bed4c05b80f93b9d9a9c66",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Ubuntu-14.04-x86_64.tar",
- )
- version(
- "19.0.3-Redhat-7.2-ppc64le",
- sha256="dc6ea53eead78f0d9ffd8fa74ffddb80e8bd3b4ab8a1edd6f8505ffbea9cea15",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Redhat-7.2-ppc64le.tar",
- )
- version(
- "19.0.3-Redhat-7.4-aarch64",
- sha256="4e19d4200e2936d542bf2b9dc79c7f8b00ccfb37b9191dfc90ac0787680a8b0c",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Redhat-7.4-aarch64.tar",
- )
- version(
- "19.0.3-Suse-12-aarch64",
- sha256="9b27b678d0228b4e51fd517ef0acd1df65b780a3a0b226caa6b6f1b7dccf31e6",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Suse-12-aarch64.tar",
- )
- version(
- "19.0.3-Ubuntu-16.04-aarch64",
- sha256="4470f7067d4a4e0369df8af28b6ca95f58fa0062bf8dffc49f0b7415112c0332",
- url="http://content.allinea.com/downloads/arm-forge-19.0.3-Ubuntu-16.04-aarch64.tar",
- )
+ if platform.machine() == "aarch64":
+ version("21.0", sha256="2bcc745d0049d6b25c77c97b2d7bad7b4f804180972a2306a8599ce41f6a4573")
+ elif platform.machine() == "ppc64le":
+ version("21.0", sha256="60cfa7dd1cd131ec85e67cb660f2f84cf30bb700d8979cae1f5f88af658fd249")
+ elif platform.machine() == "x86_64":
+ version("21.0", sha256="71b713a05d431a3c26bd83cc4d0b65a0afd7d7f5bf57aa11edfb41da90f01774")
# Licensing
license_required = True
@@ -134,7 +37,16 @@ class ArmForge(Package):
"ALLINEA_LICENSE_FILE",
"ALLINEA_LICENCE_FILE",
]
- license_url = "http://www.allinea.com/user-guide/forge/Installation.html"
+ license_url = "https://developer.arm.com/tools-and-software/server-and-hpc/help/help-and-tutorials/system-administration/licensing/arm-licence-server"
+
+ def url_for_version(self, version):
+ return "http://content.allinea.com/downloads/arm-forge-%s-linux-%s.tar" % (version, platform.machine())
def install(self, spec, prefix):
- os.system("./textinstall.sh --accept-licence " + prefix)
+ subprocess.call(["./textinstall.sh", "--accept-licence", prefix])
+
+ def setup_run_environment(self, env):
+ # Only PATH is needed for Forge.
+ # Adding lib to LD_LIBRARY_PATH can cause conflicts with Forge's internal libs.
+ env.clear()
+ env.prepend_path("PATH", join_path(self.prefix, "bin"))
diff --git a/var/spack/repos/builtin/packages/arm/package.py b/var/spack/repos/builtin/packages/arm/package.py
new file mode 100644
index 0000000000..a8cf373ce1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/arm/package.py
@@ -0,0 +1,86 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import os.path
+import re
+
+import llnl.util.tty as tty
+import spack.compiler
+import spack.util.executable
+
+
+class Arm(Package):
+ """Arm Compiler combines the optimized tools and libraries from Arm
+ with a modern LLVM-based compiler framework.
+ """
+
+ homepage = "https://developer.arm.com/tools-and-software/server-and-hpc/arm-allinea-studio"
+ url = "https://developer.arm.com/-/media/Files/downloads/hpc/arm-allinea-studio/20-2-1/Ubuntu16.04/arm-compiler-for-linux_20.2.1_Ubuntu-16.04_aarch64.tar"
+
+ # FIXME: The version is checksummed for Ubuntu 16.04, but this is not
+ # FIXME: important at the moment since the package is only meant to
+ # FIXME: provide detection
+ version('20.2.1', sha256='dc3f945b05b867809d9b507cb8ebba9cf72a6818d349207dbe1392c13dc0ad79')
+
+ def install(self, spec, prefix):
+ raise InstallError(
+ 'No install method available yet, only system detection.'
+ )
+
+ executables = [r'armclang', r'armclang\+\+', r'armflang']
+
+ @classmethod
+ def determine_version(cls, exe):
+ regex_str = r'Arm C\/C\+\+\/Fortran Compiler version ([\d\.]+) '\
+ r'\(build number (\d+)\) '
+ version_regex = re.compile(regex_str)
+ try:
+ output = spack.compiler.get_compiler_version_output(
+ exe, '--version'
+ )
+ match = version_regex.search(output)
+ if match:
+ if match.group(1).count('.') == 1:
+ return match.group(1) + ".0." + match.group(2)
+ return match.group(1) + "." + match.group(2)
+ except spack.util.executable.ProcessError:
+ pass
+ except Exception as e:
+ tty.debug(e)
+
+ @classmethod
+ def determine_variants(cls, exes, version_str):
+ compilers = {}
+ for exe in exes:
+ if 'armclang' in exe:
+ compilers['c'] = exe
+ if 'armclang++' in exe:
+ compilers['cxx'] = exe
+ if 'armflang' in exe:
+ compilers['fortran'] = exe
+ return '', {'compilers': compilers}
+
+ @property
+ def cc(self):
+ msg = "cannot retrieve C compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('c', None)
+ return str(self.spec.prefix.bin.armclang)
+
+ @property
+ def cxx(self):
+ msg = "cannot retrieve C++ compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('cxx', None)
+ return os.path.join(self.spec.prefix.bin, 'armclang++')
+
+ @property
+ def fortran(self):
+ msg = "cannot retrieve Fortran compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('fortran', None)
+ return str(self.spec.prefix.bin.armflang)
diff --git a/var/spack/repos/builtin/packages/armadillo/package.py b/var/spack/repos/builtin/packages/armadillo/package.py
index c4f5e94d15..203812c6c4 100644
--- a/var/spack/repos/builtin/packages/armadillo/package.py
+++ b/var/spack/repos/builtin/packages/armadillo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/arpack-ng/package.py b/var/spack/repos/builtin/packages/arpack-ng/package.py
index 1698a0e4bd..dab97ea656 100644
--- a/var/spack/repos/builtin/packages/arpack-ng/package.py
+++ b/var/spack/repos/builtin/packages/arpack-ng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -39,13 +39,14 @@ class ArpackNg(Package):
git = 'https://github.com/opencollab/arpack-ng.git'
version('develop', branch='master')
+ version('3.8.0', sha256='ada5aeb3878874383307239c9235b716a8a170c6d096a6625bfd529844df003d')
version('3.7.0', sha256='972e3fc3cd0b9d6b5a737c9bf6fd07515c0d6549319d4ffb06970e64fa3cc2d6')
version('3.6.3', sha256='64f3551e5a2f8497399d82af3076b6a33bf1bc95fc46bbcabe66442db366f453')
version('3.6.2', sha256='673c8202de996fd3127350725eb1818e534db4e79de56d5dcee8c00768db599a')
version('3.6.0', sha256='3c88e74cc10bba81dc2c72c4f5fff38a800beebaa0b4c64d321c28c9203b37ea')
version('3.5.0', sha256='50f7a3e3aec2e08e732a487919262238f8504c3ef927246ec3495617dde81239')
version('3.4.0', sha256='69e9fa08bacb2475e636da05a6c222b17c67f1ebeab3793762062248dd9d842f')
- version('3.3.0', sha256='ad59811e7d79d50b8ba19fd908f92a3683d883597b2c7759fdcc38f6311fe5b3')
+ version('3.3.0', sha256='ad59811e7d79d50b8ba19fd908f92a3683d883597b2c7759fdcc38f6311fe5b3', deprecated=True)
variant('shared', default=True,
description='Enables the build of shared libraries')
diff --git a/var/spack/repos/builtin/packages/arrayfire/package.py b/var/spack/repos/builtin/packages/arrayfire/package.py
index d3a7b65e2c..0315dffadc 100644
--- a/var/spack/repos/builtin/packages/arrayfire/package.py
+++ b/var/spack/repos/builtin/packages/arrayfire/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Arrayfire(CMakePackage, CudaPackage):
git = "https://github.com/arrayfire/arrayfire.git"
version('master', submodules=True)
+ version('3.7.3', submodules=True, tag='v3.7.3')
+ version('3.7.2', submodules=True, tag='v3.7.2')
version('3.7.0', submodules=True, tag='v3.7.0')
variant('cuda', default=False, description='Enable Cuda backend')
@@ -22,7 +24,7 @@ class Arrayfire(CMakePackage, CudaPackage):
variant('opencl', default=False, description='Enable OpenCL backend')
depends_on('boost@1.65:')
- depends_on('fftw')
+ depends_on('fftw-api@3:')
depends_on('blas')
depends_on('cuda@7.5:', when='+cuda')
depends_on('cudnn', when='+cuda')
@@ -34,14 +36,32 @@ class Arrayfire(CMakePackage, CudaPackage):
depends_on('fontconfig', when='+forge')
depends_on('glfw@3.1.4:', when='+forge')
+ @property
+ def libs(self):
+ query_parameters = self.spec.last_query.extra_parameters
+
+ libraries = []
+ if 'cpu' in query_parameters:
+ libraries.append('libafcpu')
+ if 'cuda' in query_parameters and '+cuda' in self.spec:
+ libraries.append('libafcuda')
+ if 'opencl' in query_parameters and '+opencl' in self.spec:
+ libraries.append('libafopencl')
+ if not query_parameters or 'unified' in query_parameters:
+ libraries.append('libaf')
+
+ return find_libraries(libraries, root=self.prefix, recursive=True)
+
def cmake_args(self):
args = []
args.extend([
- '-DAF_BUILD_CUDA={0}'.format(
- 'ON' if '+cuda' in self.spec else 'OFF'),
- '-DAF_BUILD_FORGE={0}'.format(
- 'ON' if '+forge' in self.spec else 'OFF'),
- '-DAF_BUILD_OPENCL={0}'.format(
- 'ON' if '+opencl' in self.spec else 'OFF'),
+ self.define_from_variant('AF_BUILD_CUDA', 'cuda'),
+ self.define_from_variant('AF_BUILD_FORGE', 'forge'),
+ self.define_from_variant('AF_BUILD_OPENCL', 'opencl'),
])
+ if '^mkl' in self.spec:
+ args.append('-DUSE_CPU_MKL=ON')
+ if '%intel' not in self.spec:
+ args.append('-DMKL_THREAD_LAYER=GNU OpenMP')
+
return args
diff --git a/var/spack/repos/builtin/packages/arrow/package.py b/var/spack/repos/builtin/packages/arrow/package.py
index bcd0658f3c..9f3a2bc99b 100644
--- a/var/spack/repos/builtin/packages/arrow/package.py
+++ b/var/spack/repos/builtin/packages/arrow/package.py
@@ -1,8 +1,7 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
from spack import *
@@ -32,7 +31,7 @@ class Arrow(CMakePackage, CudaPackage):
depends_on('rapidjson')
depends_on('snappy~shared')
depends_on('zlib+pic')
- depends_on('zstd+pic')
+ depends_on('zstd')
depends_on('thrift+pic', when='+parquet')
depends_on('orc', when='+orc')
diff --git a/var/spack/repos/builtin/packages/asagi/package.py b/var/spack/repos/builtin/packages/asagi/package.py
index 37b16fbec3..150988d9da 100644
--- a/var/spack/repos/builtin/packages/asagi/package.py
+++ b/var/spack/repos/builtin/packages/asagi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -59,15 +59,13 @@ class Asagi(CMakePackage):
args = ['-DMAX_DIMENSIONS=' + spec.variants['max_dimensions'].value,
'-DSHARED_LIB=' + ('ON' if 'shared' in link_type else 'OFF'),
'-DSTATIC_LIB=' + ('ON' if 'static' in link_type else 'OFF'),
- '-DFORTRAN_SUPPORT=' + ('ON' if '+fortran' in spec else 'OFF'),
- '-DTHREADSAFE=' + ('ON' if '+threadsafe' in spec else 'OFF'),
+ self.define_from_variant('FORTRAN_SUPPORT', 'fortran'),
+ self.define_from_variant('THREADSAFE', 'threadsafe'),
'-DNOMPI=' + ('ON' if '~mpi' in spec else 'OFF'),
- '-DMPI3=' + ('ON' if '+mpi3' in spec else 'OFF'),
+ self.define_from_variant('MPI3', 'mpi3'),
'-DNONUMA=' + ('ON' if '~numa' in spec else 'OFF'),
- '-DTESTS=' + ('ON' if '+tests' in spec else 'OFF'),
- '-DEXAMPLES=' + ('ON' if '+examples' in spec else 'OFF'),
- '-DTHREADSAFE_COUNTER='
- + ('ON' if '+threadsafe_counter' in spec else 'OFF'),
- '-DTHREADSAFE_MPI='
- + ('ON' if '+threadsafe_mpi' in spec else 'OFF'), ]
+ self.define_from_variant('TESTS', 'tests'),
+ self.define_from_variant('EXAMPLES', 'examples'),
+ self.define_from_variant('THREADSAFE_COUNTER', 'threadsafe_counter'),
+ self.define_from_variant('THREADSAFE_MPI', 'threadsafe_mpi'), ]
return args
diff --git a/var/spack/repos/builtin/packages/ascent/package.py b/var/spack/repos/builtin/packages/ascent/package.py
index 158f76f298..a8d2c245e0 100644
--- a/var/spack/repos/builtin/packages/ascent/package.py
+++ b/var/spack/repos/builtin/packages/ascent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -41,9 +41,21 @@ class Ascent(Package, CudaPackage):
version('develop',
branch='develop',
+ submodules=True)
+
+ version('0.7.1',
+ tag='v0.7.1',
submodules=True,
preferred=True)
+ version('0.7.0',
+ tag='v0.7.0',
+ submodules=True)
+
+ version('0.6.0',
+ tag='v0.6.0',
+ submodules=True)
+
###########################################################################
# package variants
###########################################################################
@@ -79,9 +91,8 @@ class Ascent(Package, CudaPackage):
# package dependencies
###########################################################################
- # use cmake 3.14, newest that provides proper cuda support
- # and we have seen errors with cuda in 3.15
- depends_on("cmake@3.14.1:3.14.99", type='build')
+ # Certain CMake versions have been found to break for our use cases
+ depends_on("cmake@3.14.1:3.14.99,3.18.2:", type='build')
depends_on("conduit~python", when="~python")
depends_on("conduit+python", when="+python+shared")
depends_on("conduit~shared~python", when="~shared")
@@ -108,8 +119,8 @@ class Ascent(Package, CudaPackage):
#######################
# BabelFlow
#######################
- depends_on('babelflow@develop', when='+babelflow+mpi')
- depends_on('parallelmergetree@develop', when='+babelflow+mpi')
+ depends_on('babelflow', when='+babelflow+mpi')
+ depends_on('parallelmergetree', when='+babelflow+mpi')
#############################
# TPLs for Runtime Features
@@ -136,22 +147,22 @@ class Ascent(Package, CudaPackage):
# devil ray variants with mpi
# we have to specify both because mfem makes us
- depends_on("dray@develop+mpi~test~utils+shared+cuda", when="+dray+mpi+cuda+shared")
- depends_on("dray@develop+mpi~test~utils+shared+openmp", when="+dray+mpi+openmp+shared")
- depends_on("dray@develop+mpi~test~utils+shared~openmp~cuda", when="+dray+mpi~openmp~cuda+shared")
+ depends_on("dray+mpi~test~utils+shared+cuda", when="+dray+mpi+cuda+shared")
+ depends_on("dray+mpi~test~utils+shared+openmp", when="+dray+mpi+openmp+shared")
+ depends_on("dray+mpi~test~utils+shared~openmp~cuda", when="+dray+mpi~openmp~cuda+shared")
- depends_on("dray@develop+mpi~test~utils~shared+cuda", when="+dray+mpi+cuda~shared")
- depends_on("dray@develop+mpi~test~utils~shared+openmp", when="+dray+mpi+openmp~shared")
- depends_on("dray@develop+mpi~test~utils~shared~openmp~cuda", when="+dray+mpi~openmp~cuda~shared")
+ depends_on("dray+mpi~test~utils~shared+cuda", when="+dray+mpi+cuda~shared")
+ depends_on("dray+mpi~test~utils~shared+openmp", when="+dray+mpi+openmp~shared")
+ depends_on("dray+mpi~test~utils~shared~openmp~cuda", when="+dray+mpi~openmp~cuda~shared")
# devil ray variants without mpi
- depends_on("dray@develop~mpi~test~utils+shared+cuda", when="+dray~mpi+cuda+shared")
- depends_on("dray@develop~mpi~test~utils+shared+openmp", when="+dray~mpi+openmp+shared")
- depends_on("dray@develop~mpi~test~utils+shared~openmp~cuda", when="+dray~mpi~openmp~cuda+shared")
+ depends_on("dray~mpi~test~utils+shared+cuda", when="+dray~mpi+cuda+shared")
+ depends_on("dray~mpi~test~utils+shared+openmp", when="+dray~mpi+openmp+shared")
+ depends_on("dray~mpi~test~utils+shared~openmp~cuda", when="+dray~mpi~openmp~cuda+shared")
- depends_on("dray@develop~mpi~test~utils~shared+cuda", when="+dray~mpi+cuda~shared")
- depends_on("dray@develop~mpi~test~utils~shared+openmp", when="+dray~mpi+openmp~shared")
- depends_on("dray@develop~mpi~test~utils~shared~openmp~cuda", when="+dray~mpi~openmp~cuda~shared")
+ depends_on("dray~mpi~test~utils~shared+cuda", when="+dray~mpi+cuda~shared")
+ depends_on("dray~mpi~test~utils~shared+openmp", when="+dray~mpi+openmp~shared")
+ depends_on("dray~mpi~test~utils~shared~openmp~cuda", when="+dray~mpi~openmp~cuda~shared")
#######################
# Documentation related
@@ -159,6 +170,12 @@ class Ascent(Package, CudaPackage):
depends_on("py-sphinx", when="+python+doc", type='build')
depends_on("py-sphinx-rtd-theme", when="+python+doc", type='build')
+ ###########
+ # Conflicts
+ ###########
+ conflicts("+shared", when="+cuda",
+ msg="Ascent needs to be built with ~shared for CUDA builds.")
+
def setup_build_environment(self, env):
env.set('CTEST_OUTPUT_ON_FAILURE', '1')
@@ -184,6 +201,8 @@ class Ascent(Package, CudaPackage):
for arg in std_cmake_args:
if arg.count("RPATH") == 0:
cmake_args.append(arg)
+ if self.spec.satisfies('%cce'):
+ cmake_args.extend(["-DCMAKE_Fortran_FLAGS=-ef"])
cmake_args.extend(["-C", host_cfg_fname, "../src"])
print("Configuring Ascent...")
cmake(*cmake_args)
diff --git a/var/spack/repos/builtin/packages/asciidoc-py3/package.py b/var/spack/repos/builtin/packages/asciidoc-py3/package.py
index 5bfe18f7da..f8695f9cd0 100644
--- a/var/spack/repos/builtin/packages/asciidoc-py3/package.py
+++ b/var/spack/repos/builtin/packages/asciidoc-py3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/asciidoc/package.py b/var/spack/repos/builtin/packages/asciidoc/package.py
index 5571f85dba..4c5ddd2ba0 100644
--- a/var/spack/repos/builtin/packages/asciidoc/package.py
+++ b/var/spack/repos/builtin/packages/asciidoc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,11 +11,33 @@ class Asciidoc(AutotoolsPackage):
pages and other small to medium sized documents."""
homepage = "http://asciidoc.org"
- url = "http://downloads.sourceforge.net/project/asciidoc/asciidoc/8.6.9/asciidoc-8.6.9.tar.gz"
+ # Always working URL but strangely with another checksum
+ url = "https://github.com/asciidoc-py/asciidoc-py/archive/8.6.10.tar.gz"
+ git = "https://github.com/asciidoc-py/asciidoc-py.git"
- version('8.6.9', sha256='78db9d0567c8ab6570a6eff7ffdf84eadd91f2dfc0a92a2d0105d323cab4e1f0')
+ version('master', branch='master')
+ version('9.1.0', sha256='5056c20157349f8dc74f005b6e88ccbf1078c4e26068876f13ca3d1d7d045fe7')
+ version('9.0.5', sha256='edc8328c3682a8568172656f6fc309b189f65219a49517966c7ea144cb25f8b2')
+ version('9.0.4', sha256='fb0e683ae6a4baf34a8969c3af764ca729526196576729ee9275b9f39fd8b79c')
+ version('9.0.3', sha256='b6ef4accd7959f51b532ab4d3aaa211e15f18fd544c4c3cc3ed712f5590a50de')
+ version('9.0.2', sha256='93fbe32d56380afee2f26389d8ebfdf33de72536449d53308120d3c20d2c1e17')
+ version('8.6.10', sha256='22d6793d4f48cefb4a6963853212a214591a591ece1bcbc56af3c67c642003ea')
+ version('8.6.9', sha256='45e95bed1e341980f7de0a66fdc467090956fe55d4625bdad8057cd926e0c6c6')
- depends_on('libxml2')
- depends_on('libxslt')
- depends_on('docbook-xml')
- depends_on('docbook-xsl')
+ depends_on('libxml2', type=('build', 'run'))
+ depends_on('libxslt', type=('build', 'run'))
+ depends_on('docbook-xml', type=('build', 'run'))
+ depends_on('docbook-xsl', type=('build', 'run'))
+ depends_on('python@2.3.0:2.7.99', when='@:8.6.9', type=('build', 'run'))
+ depends_on('python@3.5:', when='@9.0.2:', type=('build', 'run'))
+
+ @when('@:8.6.9')
+ def install(self, spec, prefix):
+ # Old release demands python2
+ mpythpath = spec['python'].command.path
+ exes = ['asciidoc', 'a2x']
+ for exe in exes:
+ fthfile = FileFilter(exe + '.py')
+ fthfile.filter('#!/usr/bin/env python', '#!' + mpythpath)
+
+ make('install')
diff --git a/var/spack/repos/builtin/packages/asdcplib/package.py b/var/spack/repos/builtin/packages/asdcplib/package.py
index abdc7f1c85..567cf0533e 100644
--- a/var/spack/repos/builtin/packages/asdcplib/package.py
+++ b/var/spack/repos/builtin/packages/asdcplib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/asdf-cxx/package.py b/var/spack/repos/builtin/packages/asdf-cxx/package.py
index fadb49714e..ffb871ad32 100644
--- a/var/spack/repos/builtin/packages/asdf-cxx/package.py
+++ b/var/spack/repos/builtin/packages/asdf-cxx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -42,6 +42,8 @@ class AsdfCxx(CMakePackage):
depends_on('openssl')
depends_on('py-numpy', type=('build', 'run'), when='+python')
depends_on('python', type=('build', 'run'), when='+python')
- depends_on('swig', type='build', when='+python')
+ # An error in the cmake script requires swig all the time, not only when
+ # Python bindings are used
+ depends_on('swig @3.0.0:3.999.999', type='build')
depends_on('yaml-cpp')
depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/aspa/package.py b/var/spack/repos/builtin/packages/aspa/package.py
index 256b68e5da..e82a4194ce 100644
--- a/var/spack/repos/builtin/packages/aspa/package.py
+++ b/var/spack/repos/builtin/packages/aspa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aspcud/package.py b/var/spack/repos/builtin/packages/aspcud/package.py
index 2521848f48..7e5d28f12c 100644
--- a/var/spack/repos/builtin/packages/aspcud/package.py
+++ b/var/spack/repos/builtin/packages/aspcud/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,9 +18,10 @@ class Aspcud(CMakePackage):
homepage = "https://potassco.org/aspcud"
url = "https://github.com/potassco/aspcud/archive/v1.9.4.tar.gz"
+ version('1.9.5', sha256='9cd3a9490d377163d87b16fa1a10cc7254bc2dbb9f60e846961ac8233f3835cf')
version('1.9.4', sha256='3645f08b079e1cc80e24cd2d7ae5172a52476d84e3ec5e6a6c0034492a6ea885')
- depends_on('boost', type=('build'))
+ depends_on('boost@1.74:', type=('build'), when='@1.9.5:')
depends_on('cmake', type=('build'))
depends_on('re2c', type=('build'))
depends_on('clingo')
diff --git a/var/spack/repos/builtin/packages/aspect/package.py b/var/spack/repos/builtin/packages/aspect/package.py
index 08e2b59abd..efb17a0be6 100644
--- a/var/spack/repos/builtin/packages/aspect/package.py
+++ b/var/spack/repos/builtin/packages/aspect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -35,8 +35,7 @@ class Aspect(CMakePackage):
def cmake_args(self):
return [
- '-DASPECT_USE_FP_EXCEPTIONS=%s' %
- ('ON' if '+fpe' in self.spec else 'OFF')
+ self.define_from_variant('ASPECT_USE_FP_EXCEPTIONS', 'fpe')
]
def setup_run_environment(self, env):
diff --git a/var/spack/repos/builtin/packages/aspell/package.py b/var/spack/repos/builtin/packages/aspell/package.py
index 01f92ea39f..eec6c4f86e 100644
--- a/var/spack/repos/builtin/packages/aspell/package.py
+++ b/var/spack/repos/builtin/packages/aspell/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aspell6-de/package.py b/var/spack/repos/builtin/packages/aspell6-de/package.py
index 2f3653985f..2d5c143a3f 100644
--- a/var/spack/repos/builtin/packages/aspell6-de/package.py
+++ b/var/spack/repos/builtin/packages/aspell6-de/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aspell6-en/package.py b/var/spack/repos/builtin/packages/aspell6-en/package.py
index 659e1dffe4..da42863b25 100644
--- a/var/spack/repos/builtin/packages/aspell6-en/package.py
+++ b/var/spack/repos/builtin/packages/aspell6-en/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aspell6-es/package.py b/var/spack/repos/builtin/packages/aspell6-es/package.py
index ab757e5e8e..68b4f9d5b5 100644
--- a/var/spack/repos/builtin/packages/aspell6-es/package.py
+++ b/var/spack/repos/builtin/packages/aspell6-es/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/aspera-cli/package.py b/var/spack/repos/builtin/packages/aspera-cli/package.py
index f073fdcbb9..2410401d9a 100644
--- a/var/spack/repos/builtin/packages/aspera-cli/package.py
+++ b/var/spack/repos/builtin/packages/aspera-cli/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/assimp/package.py b/var/spack/repos/builtin/packages/assimp/package.py
index 9c9a937c8e..5a0a1b7b51 100644
--- a/var/spack/repos/builtin/packages/assimp/package.py
+++ b/var/spack/repos/builtin/packages/assimp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,10 @@ class Assimp(CMakePackage):
homepage = "https://www.assimp.org"
url = "https://github.com/assimp/assimp/archive/v4.0.1.tar.gz"
+ git = "https://github.com/assimp/assimp.git"
+ version('master', branch='master')
+ version('5.0.1', sha256='11310ec1f2ad2cd46b95ba88faca8f7aaa1efe9aa12605c55e3de2b977b3dbfc')
version('4.0.1', sha256='60080d8ab4daaab309f65b3cffd99f19eb1af8d05623fff469b9b652818e286e')
variant('shared', default=True,
@@ -23,8 +26,7 @@ class Assimp(CMakePackage):
def cmake_args(self):
args = [
'-DASSIMP_BUILD_TESTS=OFF',
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in self.spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
]
return args
diff --git a/var/spack/repos/builtin/packages/astra/package.py b/var/spack/repos/builtin/packages/astra/package.py
index a74e82bd6b..6285edd7c2 100644
--- a/var/spack/repos/builtin/packages/astra/package.py
+++ b/var/spack/repos/builtin/packages/astra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/astral/package.py b/var/spack/repos/builtin/packages/astral/package.py
index 06cc6eb59e..ee3bd99146 100644
--- a/var/spack/repos/builtin/packages/astral/package.py
+++ b/var/spack/repos/builtin/packages/astral/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/astyle/package.py b/var/spack/repos/builtin/packages/astyle/package.py
index 7b9fdf757e..48e4ba5164 100644
--- a/var/spack/repos/builtin/packages/astyle/package.py
+++ b/var/spack/repos/builtin/packages/astyle/package.py
@@ -1,10 +1,9 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
-import sys
class Astyle(MakefilePackage):
@@ -32,9 +31,9 @@ class Astyle(MakefilePackage):
def edit(self, spec, prefix):
makefile = join_path(self.build_directory, 'Makefile')
filter_file(r'^CXX\s*=.*', 'CXX=%s' % spack_cxx, makefile)
- # strangely enough install -o $(USER) -g $(USER) stoped working on OSX
- if sys.platform == 'darwin':
- filter_file(r'^INSTALL=.*', 'INSTALL=install', makefile)
+ # If the group is not a user account, the installation will fail,
+ # so remove the -o $ (USER) -g $ (USER) parameter.
+ filter_file(r'^INSTALL=.*', 'INSTALL=install', makefile)
@property
def install_targets(self):
diff --git a/var/spack/repos/builtin/packages/at-spi2-atk/package.py b/var/spack/repos/builtin/packages/at-spi2-atk/package.py
index 371b661b45..baa6fb5b10 100644
--- a/var/spack/repos/builtin/packages/at-spi2-atk/package.py
+++ b/var/spack/repos/builtin/packages/at-spi2-atk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class AtSpi2Atk(MesonPackage):
list_url = "http://ftp.gnome.org/pub/gnome/sources/at-spi2-atk"
list_depth = 1
+ version('2.38.0', sha256='cfa008a5af822b36ae6287f18182c40c91dd699c55faa38605881ed175ca464f')
version('2.34.2', sha256='901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0')
version('2.26.2', sha256='61891f0abae1689f6617a963105a3f1dcdab5970c4a36ded9c79a7a544b16a6e')
version('2.26.1', sha256='b4f0c27b61dbffba7a5b5ba2ff88c8cee10ff8dac774fa5b79ce906853623b75')
diff --git a/var/spack/repos/builtin/packages/at-spi2-core/package.py b/var/spack/repos/builtin/packages/at-spi2-core/package.py
index 6e23e901c8..96cb9b9197 100644
--- a/var/spack/repos/builtin/packages/at-spi2-core/package.py
+++ b/var/spack/repos/builtin/packages/at-spi2-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class AtSpi2Core(MesonPackage):
list_url = "http://ftp.gnome.org/pub/gnome/sources/at-spi2-core"
list_depth = 1
+ version('2.40.1', sha256='9f66e3a4ee42db897af478a826b1366d7011a6d55ddb7e9d4bfeb3300ab23856')
version('2.38.0', sha256='84e36c3fe66862133f5fe229772b76aa2526e10de5014a3778f2fa46ce550da5')
version('2.36.0', sha256='88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a')
version('2.28.0', sha256='42a2487ab11ce43c288e73b2668ef8b1ab40a0e2b4f94e80fca04ad27b6f1c87')
diff --git a/var/spack/repos/builtin/packages/atf/package.py b/var/spack/repos/builtin/packages/atf/package.py
index 25fc399fbf..dc586d31f3 100644
--- a/var/spack/repos/builtin/packages/atf/package.py
+++ b/var/spack/repos/builtin/packages/atf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/athena/package.py b/var/spack/repos/builtin/packages/athena/package.py
index 3f587c2e1d..970ccfdb69 100644
--- a/var/spack/repos/builtin/packages/athena/package.py
+++ b/var/spack/repos/builtin/packages/athena/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/atk/package.py b/var/spack/repos/builtin/packages/atk/package.py
index 94e4676315..3c0c998906 100644
--- a/var/spack/repos/builtin/packages/atk/package.py
+++ b/var/spack/repos/builtin/packages/atk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,8 +20,8 @@ class Atk(Package):
version('2.36.0', sha256='fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788')
version('2.30.0', sha256='dd4d90d4217f2a0c1fee708a555596c2c19d26fef0952e1ead1938ab632c027b')
version('2.28.1', sha256='cd3a1ea6ecc268a2497f0cd018e970860de24a6d42086919d6bf6c8e8d53f4fc')
- version('2.20.0', sha256='493a50f6c4a025f588d380a551ec277e070b28a82e63ef8e3c06b3ee7c1238f0')
- version('2.14.0', sha256='2875cc0b32bfb173c066c22a337f79793e0c99d2cc5e81c4dac0d5a523b8fbad')
+ version('2.20.0', sha256='493a50f6c4a025f588d380a551ec277e070b28a82e63ef8e3c06b3ee7c1238f0', deprecated=True)
+ version('2.14.0', sha256='2875cc0b32bfb173c066c22a337f79793e0c99d2cc5e81c4dac0d5a523b8fbad', deprecated=True)
depends_on('meson@0.40.1:', type='build', when='@2.28:')
depends_on('meson@0.46.0:', type='build', when='@2.29:')
diff --git a/var/spack/repos/builtin/packages/atlas/package.py b/var/spack/repos/builtin/packages/atlas/package.py
index ea7b289947..ad9f7784db 100644
--- a/var/spack/repos/builtin/packages/atlas/package.py
+++ b/var/spack/repos/builtin/packages/atlas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/atmi/package.py b/var/spack/repos/builtin/packages/atmi/package.py
index d0b4cc063d..2bea4d852c 100644
--- a/var/spack/repos/builtin/packages/atmi/package.py
+++ b/var/spack/repos/builtin/packages/atmi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,10 +14,15 @@ class Atmi(CMakePackage):
(integrated and discrete)."""
homepage = "https://github.com/RadeonOpenCompute/atmi"
- url = "https://github.com/RadeonOpenCompute/atmi/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/atmi.git"
+ url = "https://github.com/RadeonOpenCompute/atmi/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='c1c89c00d2dc3e764c63b2e51ff7fd5c06d5881ed56aed0adf639582d3389585')
+ version('4.1.0', sha256='b31849f86c79f90466a9d67f0a28a93c1675181e38e2a5f571ffc963e4b06f5f')
+ version('4.0.0', sha256='8a2e5789ee7165aff0f0669eecd23ac0a5c8a5bfbc1acd9380fe9a8ed5bffe3a')
+ version('3.10.0', sha256='387e87c622ec334d3ba7a2f4f015ea9a219712722f4c56c1ef572203d0d072ea')
version('3.9.0', sha256='0a305e85bab210dd9a0410aa01d46227e00b59141e4675c50d731ad1232ab828')
version('3.8.0', sha256='039f0c2b369d0dbc01000754893d9210828f4cb9b36c3e70da8c3819b131c933')
version('3.7.0', sha256='8df08489a10ee04cea911811393e0e7d91bd437fc1fd81a23a4e7ab924a974f3')
@@ -26,7 +31,8 @@ class Atmi(CMakePackage):
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('comgr@' + ver, type='link', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
depends_on('libelf@0.8:', type='link', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/atom-dft/package.py b/var/spack/repos/builtin/packages/atom-dft/package.py
index 81306354e9..dbdb13b3a9 100644
--- a/var/spack/repos/builtin/packages/atom-dft/package.py
+++ b/var/spack/repos/builtin/packages/atom-dft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/atompaw/package.py b/var/spack/repos/builtin/packages/atompaw/package.py
index 46b66a9382..ed4f7f6811 100644
--- a/var/spack/repos/builtin/packages/atompaw/package.py
+++ b/var/spack/repos/builtin/packages/atompaw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,14 +18,16 @@ class Atompaw(Package):
homepage = "http://users.wfu.edu/natalie/papers/pwpaw/man.html"
url = "http://users.wfu.edu/natalie/papers/pwpaw/atompaw-4.0.0.13.tar.gz"
+ version('4.1.1.0', sha256='b1ee2b53720066655d98523ef337e54850cb1e68b3a2da04ff5a1576d3893891')
version('4.0.0.13', sha256='cbd73f11f3e9cc3ff2e5f3ec87498aeaf439555903d0b95a72f3b0a021902020')
version('3.1.0.3', sha256='15fe9a0369bdcc366370a0ecaa67e803ae54534b479ad63c4c7494a04fa3ea78')
depends_on("lapack")
depends_on("blas")
- # pin libxc version
- depends_on("libxc@2.2.1")
+ # libxc
+ depends_on('libxc')
+ depends_on('libxc@:2', when='@:4.0')
def install(self, spec, prefix):
options = ['--prefix=%s' % prefix]
diff --git a/var/spack/repos/builtin/packages/atop/package.py b/var/spack/repos/builtin/packages/atop/package.py
index 3c0772fc4e..75108faf0a 100644
--- a/var/spack/repos/builtin/packages/atop/package.py
+++ b/var/spack/repos/builtin/packages/atop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/attr/package.py b/var/spack/repos/builtin/packages/attr/package.py
index 549909d209..34c442891d 100644
--- a/var/spack/repos/builtin/packages/attr/package.py
+++ b/var/spack/repos/builtin/packages/attr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/audacious/package.py b/var/spack/repos/builtin/packages/audacious/package.py
index a38fb18d96..1036a54711 100644
--- a/var/spack/repos/builtin/packages/audacious/package.py
+++ b/var/spack/repos/builtin/packages/audacious/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/audacity/package.py b/var/spack/repos/builtin/packages/audacity/package.py
index e4ae4dcf16..f45745a814 100644
--- a/var/spack/repos/builtin/packages/audacity/package.py
+++ b/var/spack/repos/builtin/packages/audacity/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/audit-userspace/package.py b/var/spack/repos/builtin/packages/audit-userspace/package.py
index 150a407319..6503fd6e75 100644
--- a/var/spack/repos/builtin/packages/audit-userspace/package.py
+++ b/var/spack/repos/builtin/packages/audit-userspace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/augustus/bam2wig_Makefile.patch b/var/spack/repos/builtin/packages/augustus/bam2wig_Makefile.patch
new file mode 100644
index 0000000000..bbd5bfeef6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/augustus/bam2wig_Makefile.patch
@@ -0,0 +1,23 @@
+--- a/auxprogs/bam2wig/Makefile 2020-12-11 09:40:21.000000000 -0600
++++ b/auxprogs/bam2wig/Makefile 2021-04-07 15:20:59.573957969 -0500
+@@ -19,18 +19,8 @@
+ SOURCES = $(PROGRAM)
+ OBJECTS = $(SOURCES:.c=.o)
+
+-ifneq ($(wildcard ${TOOLDIR}/htslib/htslib/.),) # if TOOLDIR exists and contains htslib
+- INCLUDES=-I$(TOOLDIR)/htslib -I$(TOOLDIR)/htslib/htslib
+- HTSLIBS=-L$(TOOLDIR)/htslib -Wl,-rpath,$(TOOLDIR)/htslib -lhts -lcurses -lm -lz -lpthread -lcurl -lssl -lcrypto -lbz2 -llzma
+- HTSERRHINT="Check if the installed HTSlib is of version 1.10 or higher - see README.txt"
+-else
+- INCLUDES=-I/usr/include/htslib
+- HTSLIBS=-lhts -lz -lpthread
+- ifdef DEF_TOOLDIR
+- HTSERRHINT="There is no htslib folder in directory $(TOOLDIR) \n"
+- endif
+- HTSERRHINT:=$(HTSERRHINT)"Check if HTSlib is installed and of version 1.10 or higher - see README.txt"
+-endif
++INCLUDES=-I$(HTSLIBDIR)/include/htslib
++HTSLIBS=-L$(HTSLIBDIR)/lib -Wl,-rpath,$(HTSLIBDIR)/lib -lhts -lcurses -lm -lz -lpthread -lcurl -lssl -lcrypto -lbz2 -llzma
+
+ CFLAGS:=-Wall -O2 $(CFLAGS)
+ CC?=gcc
diff --git a/var/spack/repos/builtin/packages/augustus/package.py b/var/spack/repos/builtin/packages/augustus/package.py
index f105674261..4ad9991493 100644
--- a/var/spack/repos/builtin/packages/augustus/package.py
+++ b/var/spack/repos/builtin/packages/augustus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,10 @@ class Augustus(MakefilePackage):
genomic sequences"""
homepage = "http://bioinf.uni-greifswald.de/augustus/"
- url = "https://github.com/Gaius-Augustus/Augustus/archive/3.3.2.tar.gz"
- # Releases have moved to github
+ url = "https://github.com/Gaius-Augustus/Augustus/archive/v3.3.4.tar.gz"
+ # Releases have moved to github
+ version('3.4.0', sha256='2c06cf5953da5afdce1478fa10fcd3c280a3b050f1b2367bf3e731d7374d9bb8')
version('3.3.2', sha256='d09f972cfd88deb34b19b69878eb8af3bbbe4f1cde1434b69cedc2aa6247a0f2')
version('3.3.1-tag1', sha256='011379606f381ee21b9716f83e8a1a57b2aaa01aefeebd2748104efa08c47cab',
url='https://github.com/Gaius-Augustus/Augustus/archive/v3.3.1-tag1.tar.gz')
@@ -24,14 +25,24 @@ class Augustus(MakefilePackage):
url='http://bioinf.uni-greifswald.de/augustus/binaries/old/augustus-3.2.3.tar.gz')
depends_on('perl', type=('build', 'run'))
+ depends_on('python', when='@3.3.1:', type=('build', 'run'))
depends_on('bamtools')
depends_on('gsl')
depends_on('boost')
depends_on('zlib')
- depends_on('htslib', when='@3.3.1:')
- depends_on('bcftools', when='@3.3.1:')
- depends_on('samtools', when='@3.3.1:')
+ depends_on('htslib')
+ depends_on('bcftools')
+ depends_on('samtools')
depends_on('curl', when='@3.3.1:')
+ depends_on('sqlite', when='@3.4.0:')
+ depends_on('mysql-client', when='@3.4.0:')
+ depends_on('mysqlpp', when='@3.4.0:')
+ depends_on('lp-solve', when='@3.4.0:')
+ depends_on('suite-sparse', when='@3.4.0:')
+
+ # Trying to use filter_file here got too complicated so use a patch with a
+ # corresponding environment variable
+ patch('bam2wig_Makefile.patch', when='@3.4.0:')
def edit(self, spec, prefix):
# Set compile commands for each compiler and
@@ -44,30 +55,42 @@ class Augustus(MakefilePackage):
self.spec['boost'].prefix.include),
'src/subdir.mk', string=True)
- # Set compile commands to all makefiles.
+ # Makefiles to set spack compiler over gcc/g++
makefiles = [
'auxprogs/aln2wig/Makefile',
'auxprogs/bam2hints/Makefile',
'auxprogs/bam2wig/Makefile',
- 'auxprogs/checkTargetSortedness/Makefile',
'auxprogs/compileSpliceCands/Makefile',
'auxprogs/homGeneMapping/src/Makefile',
'auxprogs/joingenes/Makefile',
- 'src/Makefile'
+ 'src/Makefile',
]
+ if self.version < Version('3.4.0'):
+ makefiles.append('auxprogs/checkTargetSortedness/Makefile')
+
+ if self.version >= Version('3.4.0'):
+ makefiles.extend([
+ 'auxprogs/filterBam/src/Makefile',
+ 'src/unittests/Makefile',
+ ])
+
for makefile in makefiles:
filter_file('gcc', spack_cc, makefile, string=True)
filter_file('g++', spack_cxx, makefile, string=True)
+ bamtools = self.spec['bamtools'].prefix
+ bcftools = self.spec['bcftools'].prefix
+ htslib = self.spec['htslib'].prefix
+ samtools = self.spec['samtools'].prefix
+
with working_dir(join_path('auxprogs', 'filterBam', 'src')):
makefile = FileFilter('Makefile')
- makefile.filter('BAMTOOLS = .*', 'BAMTOOLS = %s' % self.spec[
- 'bamtools'].prefix)
+ makefile.filter('BAMTOOLS = .*', 'BAMTOOLS = {0}'.format(bamtools))
makefile.filter('INCLUDES = *',
'INCLUDES = -I$(BAMTOOLS)/include/bamtools ')
if 'bamtools@2.5:' in spec:
makefile.filter('LIBS = -lbamtools -lz',
- 'LIBS = $(BAMTOOLS)/lib64/'
+ 'LIBS = $(BAMTOOLS)/lib64'
'/libbamtools.a -lz')
if 'bamtools@:2.4' in spec:
makefile.filter('LIBS = -lbamtools -lz',
@@ -75,39 +98,57 @@ class Augustus(MakefilePackage):
'/libbamtools.a -lz')
with working_dir(join_path('auxprogs', 'bam2hints')):
makefile = FileFilter('Makefile')
- makefile.filter('# Variable definition',
- 'BAMTOOLS = %s' % self.spec['bamtools'].prefix)
- makefile.filter('INCLUDES = /usr/include/bamtools',
- 'INCLUDES = $(BAMTOOLS)/include/bamtools')
+ makefile.filter('/usr/include/bamtools',
+ '{0}/include/bamtools'.format(bamtools))
if 'bamtools@2.5:' in spec:
makefile.filter('LIBS = -lbamtools -lz',
- 'LIBS = $(BAMTOOLS)/lib64/'
- '/libbamtools.a -lz')
+ 'LIBS = {0}/lib64'
+ '/libbamtools.a -lz'.format(bamtools))
if 'bamtools@:2.4' in spec:
makefile.filter('LIBS = -lbamtools -lz',
- 'LIBS = $(BAMTOOLS)/lib/bamtools'
- '/libbamtools.a -lz')
- with working_dir(join_path('auxprogs', 'bam2wig')):
- makefile = FileFilter('Makefile')
- # point tools to spack installations
- if 'bcftools' in spec:
- bcftools = self.spec['bcftools'].prefix.include
+ 'LIBS = {0}/lib/bamtools'
+ '/libbamtools.a -lz'.format(bamtools))
+
+ if self.version < Version('3.4.0'):
+ with working_dir(join_path('auxprogs', 'bam2wig')):
+ makefile = FileFilter('Makefile')
+ # point tools to spack installations
makefile.filter('BCFTOOLS=.*$',
- 'BCFTOOLS=%s' % bcftools)
- if 'samtools' in spec:
- samtools = self.spec['samtools'].prefix.include
+ 'BCFTOOLS={0}/include'.format(bcftools))
makefile.filter('SAMTOOLS=.*$',
- 'SAMTOOLS=%s' % samtools)
- if 'htslib' in spec:
- htslib = self.spec['htslib'].prefix.include
+ 'SAMTOOLS={0}/include'.format(samtools))
makefile.filter('HTSLIB=.*$',
- 'HTSLIB=%s' % htslib)
+ 'HTSLIB={0}/include'.format(htslib))
+
+ # fix bad linking dirs
+ makefile.filter('$(SAMTOOLS)/libbam.a',
+ '$(SAMTOOLS)/../lib/libbam.a', string=True)
+ makefile.filter('$(HTSLIB)/libhts.a',
+ '$(HTSLIB)/../lib/libhts.a', string=True)
+ with working_dir(join_path('auxprogs', 'checkTargetSortedness')):
+ makefile = FileFilter('Makefile')
+ makefile.filter('SAMTOOLS.*=.*$',
+ 'SAMTOOLS={0}/include'.format(samtools))
+ makefile.filter('LIBS=-lbam',
+ 'LIBS=$(SAMTOOLS)/../lib/libbam.a',
+ string=True)
+ else:
+ mysql = self.spec['mysql-client'].prefix
+ mysqlpp = self.spec['mysqlpp'].prefix
+ lpsolve = self.spec['lp-solve'].prefix
- # fix bad linking dirs
- makefile.filter('$(SAMTOOLS)/libbam.a',
- '$(SAMTOOLS)/../lib/libbam.a', string=True)
- makefile.filter('$(HTSLIB)/libhts.a',
- '$(HTSLIB)/../lib/libhts.a', string=True)
+ with working_dir('src'):
+ makefile = FileFilter('Makefile')
+ makefile.filter(r'/usr/include/mysql\+\+',
+ '{0}/include/mysql++'.format(mysqlpp))
+ if '^mariadb-c-client' in spec:
+ makefile.filter('/usr/include/mysql',
+ '{0}/include/mariadb'.format(mysql))
+ else:
+ makefile.filter('/usr/include/mysql',
+ '{0}/include/mysql'.format(mysql))
+ makefile.filter('/usr/include/lpsolve',
+ '{0}/include/lpsolve'.format(lpsolve))
def install(self, spec, prefix):
install_tree('bin', join_path(self.spec.prefix, 'bin'))
@@ -117,12 +158,22 @@ class Augustus(MakefilePackage):
@run_after('install')
def filter_sbang(self):
with working_dir(self.prefix.scripts):
- pattern = '^#!.*/usr/bin/perl'
+ pattern = '^#!.*'
repl = '#!{0}'.format(self.spec['perl'].command.path)
- files = glob.iglob("*.pl")
+ files = glob.glob("*.pl")
for file in files:
filter_file(pattern, repl, *files, backup=False)
+ repl = '#!{0}'.format(self.spec['python'].command.path)
+ files = glob.glob("*.py")
+ for file in files:
+ filter_file(pattern, repl, *files, backup=False)
+
+ def setup_build_environment(self, env):
+ if self.version >= Version('3.4.0'):
+ htslib = self.spec['htslib'].prefix
+ env.set('HTSLIBDIR', htslib)
+
def setup_run_environment(self, env):
env.set('AUGUSTUS_CONFIG_PATH', join_path(
self.prefix, 'config'))
diff --git a/var/spack/repos/builtin/packages/authd/package.py b/var/spack/repos/builtin/packages/authd/package.py
index eff7361825..62b51fa279 100644
--- a/var/spack/repos/builtin/packages/authd/package.py
+++ b/var/spack/repos/builtin/packages/authd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/authselect/package.py b/var/spack/repos/builtin/packages/authselect/package.py
index 3cc20e583e..3ba4e491a7 100644
--- a/var/spack/repos/builtin/packages/authselect/package.py
+++ b/var/spack/repos/builtin/packages/authselect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/autoconf-archive/package.py b/var/spack/repos/builtin/packages/autoconf-archive/package.py
index 91e89d46e9..99cca48d30 100644
--- a/var/spack/repos/builtin/packages/autoconf-archive/package.py
+++ b/var/spack/repos/builtin/packages/autoconf-archive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/autoconf/package.py b/var/spack/repos/builtin/packages/autoconf/package.py
index 28be74890c..59c3ff30ca 100644
--- a/var/spack/repos/builtin/packages/autoconf/package.py
+++ b/var/spack/repos/builtin/packages/autoconf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,11 +12,19 @@ class Autoconf(AutotoolsPackage, GNUMirrorPackage):
homepage = 'https://www.gnu.org/software/autoconf/'
gnu_mirror_path = 'autoconf/autoconf-2.69.tar.gz'
- version('2.69', sha256='954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969')
+ version('2.71', sha256='431075ad0bf529ef13cb41e9042c542381103e80015686222b8a9d4abef42a1c')
+ version('2.70', sha256='f05f410fda74323ada4bdc4610db37f8dbd556602ba65bc843edb4d4d4a1b2b7')
+ version('2.69', sha256='954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969',
+ preferred=True)
version('2.62', sha256='83aa747e6443def0ebd1882509c53f5a2133f502ddefa21b3de141c433914bdd')
version('2.59', sha256='9cd05c73c5fcb1f5ccae53dd6cac36bb8cb9c7b3e97ffae5a7c05c72594c88d8')
version('2.13', sha256='f0611136bee505811e9ca11ca7ac188ef5323a8e2ef19cffd3edb3cf08fd791e')
+ # https://savannah.gnu.org/support/?110396
+ patch('https://git.savannah.gnu.org/cgit/autoconf.git/patch/?id=05972f49ee632cd98057a3caf82ebfb9574846da',
+ sha256='eaa3f69d927a853313a0b06e2117c51adab6377a2278549b05abc5df93643e16',
+ when='@2.70')
+
# Note: m4 is not a pure build-time dependency of autoconf. m4 is
# needed when autoconf runs, not only when autoconf is built.
depends_on('m4@1.4.6:', type=('build', 'run'))
@@ -24,6 +32,8 @@ class Autoconf(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
+ tags = ['build-tools']
+
executables = [
'^autoconf$', '^autoheader$', '^autom4te$', '^autoreconf$',
'^autoscan$', '^autoupdate$', '^ifnames$'
@@ -38,9 +48,14 @@ class Autoconf(AutotoolsPackage, GNUMirrorPackage):
def patch(self):
# The full perl shebang might be too long; we have to fix this here
# because autom4te is called during the build
- filter_file('^#! @PERL@ -w',
- '#! /usr/bin/env perl',
- 'bin/autom4te.in')
+ patched_file = 'bin/autom4te.in'
+
+ # We save and restore the modification timestamp of the file to prevent
+ # regeneration of the respective man page:
+ with keep_modification_time(patched_file):
+ filter_file('^#! @PERL@ -w',
+ '#! /usr/bin/env perl',
+ patched_file)
@run_after('install')
def filter_sbang(self):
diff --git a/var/spack/repos/builtin/packages/autodock-gpu/package.py b/var/spack/repos/builtin/packages/autodock-gpu/package.py
index 9766e45e07..5d339c1a1d 100644
--- a/var/spack/repos/builtin/packages/autodock-gpu/package.py
+++ b/var/spack/repos/builtin/packages/autodock-gpu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/autodock-vina/package.py b/var/spack/repos/builtin/packages/autodock-vina/package.py
index 50330a433c..0cae8cf314 100644
--- a/var/spack/repos/builtin/packages/autodock-vina/package.py
+++ b/var/spack/repos/builtin/packages/autodock-vina/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/autofact/package.py b/var/spack/repos/builtin/packages/autofact/package.py
index e7650fd3ab..fb6cf27634 100644
--- a/var/spack/repos/builtin/packages/autofact/package.py
+++ b/var/spack/repos/builtin/packages/autofact/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/autogen/package.py b/var/spack/repos/builtin/packages/autogen/package.py
index e60d35ba1b..9253a1a326 100644
--- a/var/spack/repos/builtin/packages/autogen/package.py
+++ b/var/spack/repos/builtin/packages/autogen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/automaded/package.py b/var/spack/repos/builtin/packages/automaded/package.py
index fe87369020..c83b97f892 100644
--- a/var/spack/repos/builtin/packages/automaded/package.py
+++ b/var/spack/repos/builtin/packages/automaded/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/automake/package.py b/var/spack/repos/builtin/packages/automake/package.py
index 7589712696..e364fe07cb 100644
--- a/var/spack/repos/builtin/packages/automake/package.py
+++ b/var/spack/repos/builtin/packages/automake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class Automake(AutotoolsPackage, GNUMirrorPackage):
homepage = 'http://www.gnu.org/software/automake/'
gnu_mirror_path = 'automake/automake-1.15.tar.gz'
+ version('1.16.3', sha256='ce010788b51f64511a1e9bb2a1ec626037c6d0e7ede32c1c103611b9d3cba65f')
version('1.16.2', sha256='b2f361094b410b4acbf4efba7337bdb786335ca09eb2518635a09fb7319ca5c1')
version('1.16.1', sha256='608a97523f97db32f1f5d5615c98ca69326ced2054c9f82e65bade7fc4c9dea8')
version('1.15.1', sha256='988e32527abe052307d21c8ca000aa238b914df363a617e38f4fb89f5abf6260')
@@ -24,6 +25,8 @@ class Automake(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
+ tags = ['build-tools']
+
executables = ['^automake$']
@classmethod
@@ -38,8 +41,13 @@ class Automake(AutotoolsPackage, GNUMirrorPackage):
if '@:1.15.1' in self.spec:
files_to_be_patched_fmt = 't/wrap/{0}.in'
+ if '@1.16.3:' in self.spec:
+ shebang_string = '^#!@PERL@'
+ else:
+ shebang_string = '^#!@PERL@ -w'
+
for file in ('aclocal', 'automake'):
- filter_file('^#!@PERL@ -w',
+ filter_file(shebang_string,
'#!/usr/bin/env perl',
files_to_be_patched_fmt.format(file))
diff --git a/var/spack/repos/builtin/packages/avizo/package.py b/var/spack/repos/builtin/packages/avizo/package.py
index c8f769b9b2..b2a839c0ad 100644
--- a/var/spack/repos/builtin/packages/avizo/package.py
+++ b/var/spack/repos/builtin/packages/avizo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,8 @@ class Avizo(Package):
homepage = "https://www.thermofisher.com/sa/en/home/industrial/electron-microscopy/electron-microscopy-instruments-workflow-solutions/3d-visualization-analysis-software.html"
+ manual_download = True
+
version('2020.1',
sha256='9321aaa276567eebf116e268353c33a4c930d768d22793f921338e1d8cefe991',
url="file://{0}/Avizo-20201-Linux64-gcc48.bin".format(os.getcwd()),
diff --git a/var/spack/repos/builtin/packages/aws-parallelcluster/package.py b/var/spack/repos/builtin/packages/aws-parallelcluster/package.py
index 999c6aae25..d4771cf82d 100644
--- a/var/spack/repos/builtin/packages/aws-parallelcluster/package.py
+++ b/var/spack/repos/builtin/packages/aws-parallelcluster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,17 +12,17 @@ class AwsParallelcluster(PythonPackage):
tool to deploy and manage HPC clusters in the AWS cloud."""
homepage = "https://github.com/aws/aws-parallelcluster"
- url = "https://pypi.io/packages/source/a/aws-parallelcluster/aws-parallelcluster-2.9.1.tar.gz"
+ pypi = "aws-parallelcluster/aws-parallelcluster-2.10.4.tar.gz"
maintainers = [
- 'sean-smith', 'demartinofra', 'enrico-usai', 'lukeseawalker', 'rexcsn',
- 'ddeidda', 'tilne'
- ]
- import_modules = [
- 'pcluster', 'awsbatch', 'pcluster.dcv', 'pcluster.configure',
- 'pcluster.config', 'pcluster.networking'
+ 'demartinofra', 'enrico-usai', 'lukeseawalker', 'rexcsn', 'tilne'
]
+ version('2.10.4', sha256='487dbf3e79f3e9b6750b1075cef4eb24956f7b310e5bd8de662b98d87491736c')
+ version('2.10.3', sha256='02016358932375c1abb566c6b7f1c891fa617fc4a4ec4ce9969f87758d4039c7')
+ version('2.10.2', sha256='95853535b82e8087c6635a946556ed886e68d3a77d67a375830c57d80f2bbd6e')
+ version('2.10.1', sha256='b3d2ea836c08c9be1667d55a8999aae412d7c2b20f958ca5842e8fa440eb24e0')
+ version('2.10.0', sha256='a7a27871b4f54cb913b0c1233e675131e9b2099549af0840d32c36b7e91b104b')
version('2.9.1', sha256='12dc22286cd447a16931f1f8619bdd47d4543fd0de7905d52b6c6f83ff9db8a3')
version('2.9.0', sha256='e98a8426bc46aca0860d9a2be89bbc4a90aab3ed2f60ca6c385b595fbbe79a78')
version('2.8.1', sha256='c183dc3f053bc2445db724e561cea7f633dd5e7d467a7b3f9b2f2f703f7d5d49')
@@ -33,29 +33,32 @@ class AwsParallelcluster(PythonPackage):
version('2.5.1', sha256='4fd6e14583f8cf81f9e4aa1d6188e3708d3d14e6ae252de0a94caaf58be76303')
version('2.5.0', sha256='3b0209342ea0d9d8cc95505456103ad87c2d4e35771aa838765918194efd0ad3')
- # common deps
- depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+
depends_on('py-future@0.16.0:0.18.2', type=('build', 'run'))
+
depends_on('py-ipaddress@1.0.22:', type=('build', 'run'))
+
depends_on('py-configparser@3.5.0:3.8.1', when='^python@:2', type=('build', 'run'))
- # 2.9.x changes
depends_on('py-tabulate@0.8.2:0.8.3', when='@:2.8', type=('build', 'run'))
depends_on('py-tabulate@0.8.5', when='@2.9: ^python@3.0:3.4', type=('build', 'run'))
depends_on('py-tabulate@0.8.2:0.8.7', when='@2.9: ^python@:2,3.5:', type=('build', 'run'))
+
depends_on('py-pyyaml@5.2', when='@2.6:2.8 ^python@3.0:3.4', type=('build', 'run'))
depends_on('py-pyyaml@5.3.1:', when='@2.9: ^python@:2,3.5:', type=('build', 'run'))
+
depends_on('py-jinja2@2.10.1', when='@2.9: ^python@3.0:3.4', type=('build', 'run'))
depends_on('py-jinja2@2.11.0:', when='@2.9: ^python@:2,3.5:', type=('build', 'run'))
- # 2.8.x changes
- depends_on('py-boto3@1.14.3:', when='@2.8:', type=('build', 'run'))
+ depends_on('py-boto3@1.16.14:', when='@2.10:', type=('build', 'run'))
+ depends_on('py-boto3@1.14.3:', when='@2.8:2.9', type=('build', 'run'))
depends_on('py-boto3@1.10.15:', when='@:2.7', type=('build', 'run'))
- # 2.6.x changes
depends_on('py-setuptools', when='@2.6:', type=('build', 'run'))
- depends_on('py-enum34@1.1.6:', when='@2.6: ^python@:3.3', type=('build', 'run'))
- depends_on('py-enum34@1.1.6:', when='@:2.5', type=('build', 'run'))
+
+ depends_on('py-enum34@1.1.6:', when='^python@:3.3', type=('build', 'run'))
+
depends_on('py-pyyaml@5.1.2', when='@2.6: ^python@:2,3.5:', type=('build', 'run'))
depends_on('py-pyyaml@5.1.2:', when='@:2.5', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/awscli/package.py b/var/spack/repos/builtin/packages/awscli/package.py
index fcdf4490f5..3463f92147 100644
--- a/var/spack/repos/builtin/packages/awscli/package.py
+++ b/var/spack/repos/builtin/packages/awscli/package.py
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,7 @@ class Awscli(PythonPackage):
"""This package provides a unified command line interface to
Amazon Web Services"""
- homepage = "https://pypi.org/project/awscli/"
- url = "https://pypi.io/packages/source/a/awscli/awscli-1.16.308.tar.gz"
+ pypi = "awscli/awscli-1.16.308.tar.gz"
version('1.16.308', sha256='3632fb1db2538128509a7b5e89f2a2c4ea3426bec139944247bddc4d79bf7603')
version('1.16.179', sha256='6a87114d1325358d000abe22b2103baae7b91f053ff245b9fde33cb0affb5e4f')
diff --git a/var/spack/repos/builtin/packages/axel/package.py b/var/spack/repos/builtin/packages/axel/package.py
index d802704e0d..0c68680a2d 100644
--- a/var/spack/repos/builtin/packages/axel/package.py
+++ b/var/spack/repos/builtin/packages/axel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/axl/package.py b/var/spack/repos/builtin/packages/axl/package.py
index 73eb5acdcd..affbed2db5 100644
--- a/var/spack/repos/builtin/packages/axl/package.py
+++ b/var/spack/repos/builtin/packages/axl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,8 @@ def async_api_validator(pkg_name, variant_name, values):
if 'none' in values and len(values) != 1:
raise SpackError("The value 'none' is not usable"
" with other async_api values.")
- if 'ibm_bbapi' in values and 'cray_dw' in values:
- raise SpackError("The 'ibm_bbapi' and 'cray_dw' asynchronous"
+ if 'intel_cppr' in values and 'cray_dw' in values:
+ raise SpackError("The 'intel_cppr' and 'cray_dw' asynchronous"
" APIs are incompatible.")
@@ -20,24 +20,25 @@ class Axl(CMakePackage):
"""Asynchronous transfer library"""
homepage = "https://github.com/ecp-veloc/AXL"
- url = "https://github.com/ecp-veloc/AXL/archive/v0.1.1.zip"
+ url = "https://github.com/ecp-veloc/AXL/archive/v0.4.0.tar.gz"
git = "https://github.com/ecp-veloc/axl.git"
tags = ['ecp']
version('master', branch='master')
- version('0.3.0', sha256='3f5efff87be700a5792a0ee9a7aeae45c640e2936623b024e8bc1056f7952a46')
- version('0.2.0', sha256='a0babe3576da30919f89df2f83c76bd01d06345919f2e54d4dddcd6f73faedcc')
- version('0.1.1', sha256='ebbf231bb542a6c91efb79fce05d4c8a346d5506d88ae1899fb670be52e81933')
+ version('0.4.0', sha256='0530142629d77406a00643be32492760c2cf12d1b56c6b6416791c8ff5298db2')
+ version('0.3.0', sha256='737d616b669109805f7aed1858baac36c97bf0016e1115b5c56ded05d792613e', deprecated=True)
+ version('0.2.0', sha256='d04a445f102b438fe96a1ff3429790b0c035f0d23c2797bb5601a00b582a71fc', deprecated=True)
+ version('0.1.1', sha256='36edac007938fe47d979679414c5c27938944d32536e2e149f642916c5c08eaa', deprecated=True)
variant('async_api', default='daemon',
description="Set of async transfer APIs to enable",
- values=['cray_dw', 'ibm_bbapi', 'daemon', 'none'], multi=True,
+ values=['cray_dw', 'intel_cppr', 'daemon', 'none'], multi=True,
validator=async_api_validator)
- # not-yet implemented functionality
- conflicts('async_api=cray_dw', when='@0.1.0')
- conflicts('async_api=ibm_bbapi', when='@0.1.0')
+ variant('bbapi_fallback', default='False',
+ description='Using BBAPI, if source or destination don\'t support \
+ file extents then fallback to pthreads')
depends_on('kvtree')
@@ -47,12 +48,19 @@ class Axl(CMakePackage):
args.append("-DAXL_LINK_STATIC=ON")
args.append("-DWITH_KVTREE_PREFIX=%s" % self.spec['kvtree'].prefix)
- apis = list(self.spec.variants['async_api'].value)
- if 'daemon' in apis:
- args.append('-DAXL_ASYNC_DAEMON=ON')
- apis.remove('daemon')
+ if self.spec.satisfies('@:0.3.0'):
+ apis = list(self.spec.variants['async_api'].value)
+ if 'daemon' in apis:
+ args.append('-DAXL_ASYNC_DAEMON=ON')
+ apis.remove('daemon')
- for api in apis:
- args.append('-DAXL_ASYNC_API={0}'.format(api))
+ for api in apis:
+ args.append('-DAXL_ASYNC_API={0}'.format(api.upper()))
+
+ if self.spec.satisfies('@0.4.0:'):
+ if '+bbapi_fallback' in self.spec:
+ args.append('-DENABLE_BBAPI_FALLBACK=ON')
+ else:
+ args.append('-DENABLE_BBAPI_FALLBACK=OFF')
return args
diff --git a/var/spack/repos/builtin/packages/axom/package.py b/var/spack/repos/builtin/packages/axom/package.py
index 3a0fa3a736..eb91131c53 100644
--- a/var/spack/repos/builtin/packages/axom/package.py
+++ b/var/spack/repos/builtin/packages/axom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,20 +9,6 @@ import os
import socket
from os.path import join as pjoin
-import llnl.util.tty as tty
-
-
-def cmake_cache_entry(name, value, comment=""):
- """Generate a string for a cmake cache variable"""
- return 'set({0} "{1}" CACHE PATH "{2}")\n\n'.format(name, value, comment)
-
-
-def cmake_cache_option(name, boolean_value, comment=""):
- """Generate a string for a cmake configuration option"""
-
- value = "ON" if boolean_value else "OFF"
- return 'set({0} {1} CACHE BOOL "{2}")\n\n'.format(name, value, comment)
-
def get_spec_path(spec, package_name, path_replacements={}, use_bin=False):
"""Extracts the prefix path for the given spack package
@@ -42,7 +28,7 @@ def get_spec_path(spec, package_name, path_replacements={}, use_bin=False):
return path
-class Axom(CMakePackage, CudaPackage):
+class Axom(CachedCMakePackage, CudaPackage):
"""Axom provides a robust, flexible software infrastructure for the development
of multi-physics applications and computational tools."""
@@ -53,6 +39,7 @@ class Axom(CMakePackage, CudaPackage):
version('main', branch='main', submodules=True)
version('develop', branch='develop', submodules=True)
+ version('0.5.0', tag='v0.5.0', submodules=True)
version('0.4.0', tag='v0.4.0', submodules=True)
version('0.3.3', tag='v0.3.3', submodules=True)
version('0.3.2', tag='v0.3.2', submodules=True)
@@ -60,7 +47,6 @@ class Axom(CMakePackage, CudaPackage):
version('0.3.0', tag='v0.3.0', submodules=True)
version('0.2.9', tag='v0.2.9', submodules=True)
- phases = ["hostconfig", "cmake", "build", "install"]
root_cmakelists_dir = 'src'
# -----------------------------------------------------------------------
@@ -71,7 +57,7 @@ class Axom(CMakePackage, CudaPackage):
variant('debug', default=False,
description='Build debug instead of optimized version')
- variant('cpp14', default=True, description="Build with C++14 support")
+ variant('cpp14', default=True, description="Build with C++14 support")
variant('fortran', default=True, description="Build with Fortran support")
@@ -110,6 +96,8 @@ class Axom(CMakePackage, CudaPackage):
depends_on("lua", when="+lua")
depends_on("scr", when="+scr")
+ depends_on("kvtree@master", when="+scr")
+ depends_on("dtcmp", when="+scr")
depends_on("raja~openmp", when="+raja~openmp")
depends_on("raja+openmp", when="+raja+openmp")
@@ -117,7 +105,7 @@ class Axom(CMakePackage, CudaPackage):
depends_on("umpire~openmp", when="+umpire~openmp")
depends_on("umpire+openmp", when="+umpire+openmp")
- depends_on("umpire+cuda+deviceconst", when="+umpire+cuda")
+ depends_on("umpire+cuda", when="+umpire+cuda")
for sm_ in CudaPackage.cuda_arch_values:
depends_on('raja cuda_arch={0}'.format(sm_),
@@ -139,10 +127,18 @@ class Axom(CMakePackage, CudaPackage):
depends_on("py-shroud", when="+devtools")
depends_on("llvm+clang@10.0.0", when="+devtools", type='build')
+ # Conduit's cmake config files moved and < 0.4.0 can't find it
+ conflicts("conduit@0.7.2:", when="@:0.4.0")
+
+ # Sidre requires conduit_blueprint_mpi.hpp
+ conflicts("conduit@:0.6.0", when="@0.5.0:")
+
def flag_handler(self, name, flags):
- if name in ('cflags', 'cxxflags', 'fflags'):
- # the package manages these flags in another way
- return (None, None, None)
+ if self.spec.satisfies('%cce') and name == 'fflags':
+ flags.append('-ef')
+
+ if name in ('cflags', 'cxxflags', 'cppflags', 'fflags'):
+ return (None, None, None) # handled in the cmake cache
return (flags, None, None)
def _get_sys_type(self, spec):
@@ -152,108 +148,159 @@ class Axom(CMakePackage, CudaPackage):
sys_type = env["SYS_TYPE"]
return sys_type
- def _get_host_config_path(self, spec):
+ @property
+ def cache_name(self):
hostname = socket.gethostname()
if "SYS_TYPE" in env:
# Are we on a LLNL system then strip node number
hostname = hostname.rstrip('1234567890')
- filename = "{0}-{1}-{2}.cmake".format(hostname,
- self._get_sys_type(spec),
- spec.compiler)
- dest_dir = self.stage.source_path
- fullpath = os.path.abspath(pjoin(dest_dir, filename))
- return fullpath
-
- def hostconfig(self, spec, prefix):
- """
- This method creates a 'host-config' file that specifies
- all of the options used to configure and build Axom.
- """
-
- c_compiler = env["SPACK_CC"]
- cpp_compiler = env["SPACK_CXX"]
- f_compiler = None
-
- # see if we should enable fortran support
- if "SPACK_FC" in env.keys():
- # even if this is set, it may not exist
- # do one more sanity check
- if os.path.isfile(env["SPACK_FC"]):
- f_compiler = env["SPACK_FC"]
-
- # cmake
- if "+cmake" in spec:
- cmake_exe = pjoin(spec['cmake'].prefix.bin, "cmake")
- else:
- cmake_exe = which("cmake")
- if cmake_exe is None:
- # error could not find cmake!
- crash()
- cmake_exe = cmake_exe.command
- cmake_exe = os.path.realpath(cmake_exe)
-
- host_config_path = self._get_host_config_path(spec)
- cfg = open(host_config_path, "w")
- cfg.write("#------------------{0}\n".format("-" * 60))
- cfg.write("# !!!! This is a generated file, edit at own risk !!!!\n")
- cfg.write("#------------------{0}\n".format("-" * 60))
- cfg.write("# SYS_TYPE: {0}\n".format(self._get_sys_type(spec)))
- cfg.write("# Compiler Spec: {0}\n".format(spec.compiler))
- cfg.write("#------------------{0}\n".format("-" * 60))
- # show path to cmake for reference and to be used by config-build.py
- cfg.write("# CMake executable path: {0}\n".format(cmake_exe))
- cfg.write("#------------------{0}\n\n".format("-" * 60))
-
- # compiler settings
- cfg.write("#------------------{0}\n".format("-" * 60))
- cfg.write("# Compilers\n")
- cfg.write("#------------------{0}\n\n".format("-" * 60))
-
- cfg.write(cmake_cache_entry("CMAKE_C_COMPILER", c_compiler))
- cfg.write(cmake_cache_entry("CMAKE_CXX_COMPILER", cpp_compiler))
-
- if "+fortran" in spec or f_compiler is not None:
- cfg.write(cmake_cache_option("ENABLE_FORTRAN", True))
- cfg.write(cmake_cache_entry("CMAKE_Fortran_COMPILER", f_compiler))
+ return "{0}-{1}-{2}@{3}.cmake".format(
+ hostname,
+ self._get_sys_type(self.spec),
+ self.spec.compiler.name,
+ self.spec.compiler.version
+ )
+
+ def initconfig_compiler_entries(self):
+ spec = self.spec
+ entries = super(Axom, self).initconfig_compiler_entries()
+
+ if "+fortran" in spec or self.compiler.fc is not None:
+ entries.append(cmake_cache_option("ENABLE_FORTRAN", True))
else:
- cfg.write(cmake_cache_option("ENABLE_FORTRAN", False))
-
- # use global spack compiler flags
- cppflags = ' '.join(spec.compiler_flags['cppflags'])
- if cppflags:
- # avoid always ending up with ' ' with no flags defined
- cppflags += ' '
- cflags = cppflags + ' '.join(spec.compiler_flags['cflags'])
- if cflags:
- cfg.write(cmake_cache_entry("CMAKE_C_FLAGS", cflags))
- cxxflags = cppflags + ' '.join(spec.compiler_flags['cxxflags'])
- if cxxflags:
- cfg.write(cmake_cache_entry("CMAKE_CXX_FLAGS", cxxflags))
- fflags = ' '.join(spec.compiler_flags['fflags'])
- if fflags:
- cfg.write(cmake_cache_entry("CMAKE_Fortran_FLAGS", fflags))
-
- if ((f_compiler is not None)
- and ("gfortran" in f_compiler)
- and ("clang" in cpp_compiler)):
+ entries.append(cmake_cache_option("ENABLE_FORTRAN", False))
+
+ if ((self.compiler.fc is not None)
+ and ("gfortran" in self.compiler.fc)
+ and ("clang" in self.compiler.cxx)):
libdir = pjoin(os.path.dirname(
- os.path.dirname(cpp_compiler)), "lib")
+ os.path.dirname(self.compiler.cxx)), "lib")
flags = ""
for _libpath in [libdir, libdir + "64"]:
if os.path.exists(_libpath):
flags += " -Wl,-rpath,{0}".format(_libpath)
description = ("Adds a missing libstdc++ rpath")
if flags:
- cfg.write(cmake_cache_entry("BLT_EXE_LINKER_FLAGS", flags,
- description))
+ entries.append(cmake_cache_string("BLT_EXE_LINKER_FLAGS", flags,
+ description))
if "+cpp14" in spec:
- cfg.write(cmake_cache_entry("BLT_CXX_STD", "c++14", ""))
+ entries.append(cmake_cache_string("BLT_CXX_STD", "c++14", ""))
+
+ return entries
+
+ def initconfig_hardware_entries(self):
+ spec = self.spec
+ entries = super(Axom, self).initconfig_hardware_entries()
+
+ if spec.satisfies('target=ppc64le:'):
+ if "+cuda" in spec:
+ entries.append(cmake_cache_option("ENABLE_CUDA", True))
+ entries.append(cmake_cache_option("CUDA_SEPARABLE_COMPILATION",
+ True))
+
+ entries.append(
+ cmake_cache_option("AXOM_ENABLE_ANNOTATIONS", True))
+
+ # CUDA_FLAGS
+ cudaflags = "-restrict --expt-extended-lambda "
+
+ if not spec.satisfies('cuda_arch=none'):
+ cuda_arch = spec.variants['cuda_arch'].value[0]
+ entries.append(cmake_cache_string(
+ "CMAKE_CUDA_ARCHITECTURES",
+ cuda_arch))
+ cudaflags += '-arch sm_${CMAKE_CUDA_ARCHITECTURES} '
+ else:
+ entries.append(
+ "# cuda_arch could not be determined\n\n")
+
+ if "+cpp14" in spec:
+ cudaflags += " -std=c++14"
+ else:
+ cudaflags += " -std=c++11"
+ entries.append(
+ cmake_cache_string("CMAKE_CUDA_FLAGS", cudaflags))
+
+ entries.append(
+ "# nvcc does not like gtest's 'pthreads' flag\n")
+ entries.append(
+ cmake_cache_option("gtest_disable_pthreads", True))
+
+ entries.append("#------------------{0}".format("-" * 30))
+ entries.append("# Hardware Specifics")
+ entries.append("#------------------{0}\n".format("-" * 30))
+
+ # OpenMP
+ entries.append(cmake_cache_option("ENABLE_OPENMP",
+ spec.satisfies('+openmp')))
+
+ # Enable death tests
+ entries.append(cmake_cache_option(
+ "ENABLE_GTEST_DEATH_TESTS",
+ not spec.satisfies('+cuda target=ppc64le:')
+ ))
+
+ if spec.satisfies('target=ppc64le:'):
+ if (self.compiler.fc is not None) and ("xlf" in self.compiler.fc):
+ description = ("Converts C-style comments to Fortran style "
+ "in preprocessed files")
+ entries.append(cmake_cache_string(
+ "BLT_FORTRAN_FLAGS",
+ "-WF,-C! -qxlf2003=polymorphic",
+ description))
+ # Grab lib directory for the current fortran compiler
+ libdir = pjoin(os.path.dirname(
+ os.path.dirname(self.compiler.fc)),
+ "lib")
+ description = ("Adds a missing rpath for libraries "
+ "associated with the fortran compiler")
+ linker_flags = "${BLT_EXE_LINKER_FLAGS} -Wl,-rpath," + libdir
+ entries.append(cmake_cache_string("BLT_EXE_LINKER_FLAGS",
+ linker_flags, description))
+ if "+shared" in spec:
+ linker_flags = "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-rpath," \
+ + libdir
+ entries.append(cmake_cache_string(
+ "CMAKE_SHARED_LINKER_FLAGS",
+ linker_flags, description))
+
+ # Fix for working around CMake adding implicit link directories
+ # returned by the BlueOS compilers to link executables with
+ # non-system default stdlib
+ _gcc_prefix = "/usr/tce/packages/gcc/gcc-4.9.3/lib64"
+ if os.path.exists(_gcc_prefix):
+ _gcc_prefix2 = pjoin(
+ _gcc_prefix,
+ "gcc/powerpc64le-unknown-linux-gnu/4.9.3")
+ _link_dirs = "{0};{1}".format(_gcc_prefix, _gcc_prefix2)
+ entries.append(cmake_cache_string(
+ "BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE", _link_dirs))
+
+ return entries
+
+ def initconfig_mpi_entries(self):
+ spec = self.spec
+ entries = super(Axom, self).initconfig_mpi_entries()
+
+ if "+mpi" in spec:
+ entries.append(cmake_cache_option("ENABLE_MPI", True))
+ if spec['mpi'].name == 'spectrum-mpi':
+ entries.append(cmake_cache_string("BLT_MPI_COMMAND_APPEND",
+ "mpibind"))
+ else:
+ entries.append(cmake_cache_option("ENABLE_MPI", False))
+
+ return entries
+
+ def initconfig_package_entries(self):
+ spec = self.spec
+ entries = []
# TPL locations
- cfg.write("#------------------{0}\n".format("-" * 60))
- cfg.write("# TPLs\n")
- cfg.write("#------------------{0}\n\n".format("-" * 60))
+ entries.append("#------------------{0}".format("-" * 60))
+ entries.append("# TPLs")
+ entries.append("#------------------{0}\n".format("-" * 60))
# Try to find the common prefix of the TPL directory, including the
# compiler. If found, we will use this in the TPL paths
@@ -264,113 +311,40 @@ class Axom(CMakePackage, CudaPackage):
if len(prefix_paths) == 2:
tpl_root = os.path.realpath(pjoin(prefix_paths[0], compiler_str))
path_replacements[tpl_root] = "${TPL_ROOT}"
- cfg.write("# Root directory for generated TPLs\n")
- cfg.write(cmake_cache_entry("TPL_ROOT", tpl_root))
+ entries.append("# Root directory for generated TPLs\n")
+ entries.append(cmake_cache_path("TPL_ROOT", tpl_root))
conduit_dir = get_spec_path(spec, "conduit", path_replacements)
- cfg.write(cmake_cache_entry("CONDUIT_DIR", conduit_dir))
+ entries.append(cmake_cache_path("CONDUIT_DIR", conduit_dir))
# optional tpls
-
- if "+mfem" in spec:
- mfem_dir = get_spec_path(spec, "mfem", path_replacements)
- cfg.write(cmake_cache_entry("MFEM_DIR", mfem_dir))
- else:
- cfg.write("# MFEM not built\n\n")
-
- if "+hdf5" in spec:
- hdf5_dir = get_spec_path(spec, "hdf5", path_replacements)
- cfg.write(cmake_cache_entry("HDF5_DIR", hdf5_dir))
- else:
- cfg.write("# HDF5 not built\n\n")
-
- if "+lua" in spec:
- lua_dir = get_spec_path(spec, "lua", path_replacements)
- cfg.write(cmake_cache_entry("LUA_DIR", lua_dir))
- else:
- cfg.write("# Lua not built\n\n")
-
- if "+scr" in spec:
- scr_dir = get_spec_path(spec, "scr", path_replacements)
- cfg.write(cmake_cache_entry("SCR_DIR", scr_dir))
- else:
- cfg.write("# SCR not built\n\n")
-
- if "+raja" in spec:
- raja_dir = get_spec_path(spec, "raja", path_replacements)
- cfg.write(cmake_cache_entry("RAJA_DIR", raja_dir))
- else:
- cfg.write("# RAJA not built\n\n")
-
- if "+umpire" in spec:
- umpire_dir = get_spec_path(spec, "umpire", path_replacements)
- cfg.write(cmake_cache_entry("UMPIRE_DIR", umpire_dir))
- else:
- cfg.write("# Umpire not built\n\n")
-
- cfg.write("#------------------{0}\n".format("-" * 60))
- cfg.write("# MPI\n")
- cfg.write("#------------------{0}\n\n".format("-" * 60))
-
- if "+mpi" in spec:
- cfg.write(cmake_cache_option("ENABLE_MPI", True))
- cfg.write(cmake_cache_entry("MPI_C_COMPILER", spec['mpi'].mpicc))
- cfg.write(cmake_cache_entry("MPI_CXX_COMPILER",
- spec['mpi'].mpicxx))
- if "+fortran" in spec or f_compiler is not None:
- cfg.write(cmake_cache_entry("MPI_Fortran_COMPILER",
- spec['mpi'].mpifc))
-
- # Check for slurm
- using_slurm = False
- slurm_checks = ['+slurm',
- 'schedulers=slurm',
- 'process_managers=slurm']
- if any(spec['mpi'].satisfies(variant) for variant in slurm_checks):
- using_slurm = True
-
- # Determine MPIEXEC
- if using_slurm:
- if spec['mpi'].external:
- mpiexec = '/usr/bin/srun'
- else:
- mpiexec = os.path.join(spec['slurm'].prefix.bin, 'srun')
- else:
- mpiexec = os.path.join(spec['mpi'].prefix.bin, 'mpirun')
- if not os.path.exists(mpiexec):
- mpiexec = os.path.join(spec['mpi'].prefix.bin, 'mpiexec')
-
- if not os.path.exists(mpiexec):
- msg = "Unable to determine MPIEXEC, Axom tests may fail"
- cfg.write("# {0}\n\n".format(msg))
- tty.msg(msg)
+ for dep in ('mfem', 'hdf5', 'lua', 'raja', 'umpire'):
+ if '+%s' % dep in spec:
+ dep_dir = get_spec_path(spec, dep, path_replacements)
+ entries.append(cmake_cache_path('%s_DIR' % dep.upper(),
+ dep_dir))
else:
- # starting with cmake 3.10, FindMPI expects MPIEXEC_EXECUTABLE
- # vs the older versions which expect MPIEXEC
- if self.spec["cmake"].satisfies('@3.10:'):
- cfg.write(cmake_cache_entry("MPIEXEC_EXECUTABLE", mpiexec))
- else:
- cfg.write(cmake_cache_entry("MPIEXEC", mpiexec))
+ entries.append('# %s not build\n' % dep.upper())
- # Determine MPIEXEC_NUMPROC_FLAG
- if using_slurm:
- cfg.write(cmake_cache_entry("MPIEXEC_NUMPROC_FLAG", "-n"))
- else:
- cfg.write(cmake_cache_entry("MPIEXEC_NUMPROC_FLAG", "-np"))
+ if '+scr' in spec:
+ dep_dir = get_spec_path(spec, 'scr', path_replacements)
+ entries.append(cmake_cache_path('SCR_DIR', dep_dir))
- if spec['mpi'].name == 'spectrum-mpi':
- cfg.write(cmake_cache_entry("BLT_MPI_COMMAND_APPEND",
- "mpibind"))
+ # scr's dependencies
+ for dep in ('kvtree', 'dtcmp'):
+ if spec.satisfies('^{0}'.format(dep)):
+ dep_dir = get_spec_path(spec, dep, path_replacements)
+ entries.append(cmake_cache_path('%s_DIR' % dep.upper(), dep_dir))
else:
- cfg.write(cmake_cache_option("ENABLE_MPI", False))
+ entries.append('# scr not build\n')
##################################
# Devtools
##################################
- cfg.write("#------------------{0}\n".format("-" * 60))
- cfg.write("# Devtools\n")
- cfg.write("#------------------{0}\n\n".format("-" * 60))
+ entries.append("#------------------{0}".format("-" * 60))
+ entries.append("# Devtools")
+ entries.append("#------------------{0}\n".format("-" * 60))
# Add common prefix to path replacement list
if "+devtools" in spec:
@@ -379,176 +353,65 @@ class Axom(CMakePackage, CudaPackage):
path2 = os.path.realpath(spec["doxygen"].prefix)
devtools_root = os.path.commonprefix([path1, path2])[:-1]
path_replacements[devtools_root] = "${DEVTOOLS_ROOT}"
- cfg.write("# Root directory for generated developer tools\n")
- cfg.write(cmake_cache_entry("DEVTOOLS_ROOT", devtools_root))
+ entries.append(
+ "# Root directory for generated developer tools\n")
+ entries.append(cmake_cache_path("DEVTOOLS_ROOT", devtools_root))
- if "+python" in spec or "+devtools" in spec:
+ # Only turn on clangformat support if devtools is on
+ clang_fmt_path = spec['llvm'].prefix.bin.join('clang-format')
+ entries.append(cmake_cache_path(
+ "CLANGFORMAT_EXECUTABLE", clang_fmt_path))
+ else:
+ entries.append("# ClangFormat disabled due to disabled devtools\n")
+ entries.append(cmake_cache_option("ENABLE_CLANGFORMAT", False))
+
+ if spec.satisfies('^python') or "+devtools" in spec:
python_path = os.path.realpath(spec['python'].command.path)
for key in path_replacements:
python_path = python_path.replace(key, path_replacements[key])
- cfg.write(cmake_cache_entry("PYTHON_EXECUTABLE", python_path))
-
- if "doxygen" in spec or "py-sphinx" in spec:
- cfg.write(cmake_cache_option("ENABLE_DOCS", True))
-
- if "doxygen" in spec:
- doxygen_bin_dir = get_spec_path(spec, "doxygen",
- path_replacements,
- use_bin=True)
- cfg.write(cmake_cache_entry("DOXYGEN_EXECUTABLE",
- pjoin(doxygen_bin_dir,
- "doxygen")))
-
- if "py-sphinx" in spec:
- python_bin_dir = get_spec_path(spec, "python",
- path_replacements,
- use_bin=True)
- cfg.write(cmake_cache_entry("SPHINX_EXECUTABLE",
+ entries.append(cmake_cache_path("PYTHON_EXECUTABLE", python_path))
+
+ enable_docs = spec.satisfies('^doxygen') or spec.satisfies('^py-sphinx')
+ entries.append(cmake_cache_option("ENABLE_DOCS", enable_docs))
+
+ if spec.satisfies('^py-sphinx'):
+ python_bin_dir = get_spec_path(spec, "python",
+ path_replacements,
+ use_bin=True)
+ entries.append(cmake_cache_path("SPHINX_EXECUTABLE",
pjoin(python_bin_dir,
"sphinx-build")))
- else:
- cfg.write(cmake_cache_option("ENABLE_DOCS", False))
- if "py-shroud" in spec:
+ if spec.satisfies('^py-shroud'):
shroud_bin_dir = get_spec_path(spec, "py-shroud",
path_replacements, use_bin=True)
- cfg.write(cmake_cache_entry("SHROUD_EXECUTABLE",
- pjoin(shroud_bin_dir, "shroud")))
-
- if "cppcheck" in spec:
- cppcheck_bin_dir = get_spec_path(spec, "cppcheck",
- path_replacements, use_bin=True)
- cfg.write(cmake_cache_entry("CPPCHECK_EXECUTABLE",
- pjoin(cppcheck_bin_dir, "cppcheck")))
-
- # Only turn on clangformat support if devtools is on
- if "+devtools" in spec:
- clang_fmt_path = spec['llvm'].prefix.bin.join('clang-format')
- cfg.write(cmake_cache_entry("CLANGFORMAT_EXECUTABLE",
- clang_fmt_path))
- else:
- cfg.write("# ClangFormat disabled due to disabled devtools\n")
- cfg.write(cmake_cache_option("ENABLE_CLANGFORMAT", False))
-
- ##################################
- # Other machine specifics
- ##################################
-
- cfg.write("#------------------{0}\n".format("-" * 60))
- cfg.write("# Other machine specifics\n")
- cfg.write("#------------------{0}\n\n".format("-" * 60))
-
- # OpenMP
- if "+openmp" in spec:
- cfg.write(cmake_cache_option("ENABLE_OPENMP", True))
- else:
- cfg.write(cmake_cache_option("ENABLE_OPENMP", False))
-
- # Enable death tests
- if spec.satisfies('target=ppc64le:') and "+cuda" in spec:
- cfg.write(cmake_cache_option("ENABLE_GTEST_DEATH_TESTS", False))
- else:
- cfg.write(cmake_cache_option("ENABLE_GTEST_DEATH_TESTS", True))
-
- # Override XL compiler family
- familymsg = ("Override to proper compiler family for XL")
- if (f_compiler is not None) and ("xlf" in f_compiler):
- cfg.write(cmake_cache_entry("CMAKE_Fortran_COMPILER_ID", "XL",
- familymsg))
- if "xlc" in c_compiler:
- cfg.write(cmake_cache_entry("CMAKE_C_COMPILER_ID", "XL",
- familymsg))
- if "xlC" in cpp_compiler:
- cfg.write(cmake_cache_entry("CMAKE_CXX_COMPILER_ID", "XL",
- familymsg))
-
- if spec.satisfies('target=ppc64le:'):
- if (f_compiler is not None) and ("xlf" in f_compiler):
- description = ("Converts C-style comments to Fortran style "
- "in preprocessed files")
- cfg.write(cmake_cache_entry("BLT_FORTRAN_FLAGS",
- "-WF,-C! -qxlf2003=polymorphic",
- description))
- # Grab lib directory for the current fortran compiler
- libdir = os.path.join(os.path.dirname(
- os.path.dirname(f_compiler)), "lib")
- description = ("Adds a missing rpath for libraries "
- "associated with the fortran compiler")
- linker_flags = "${BLT_EXE_LINKER_FLAGS} -Wl,-rpath," + libdir
- cfg.write(cmake_cache_entry("BLT_EXE_LINKER_FLAGS",
- linker_flags, description))
- if "+shared" in spec:
- linker_flags = "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-rpath," \
- + libdir
- cfg.write(cmake_cache_entry("CMAKE_SHARED_LINKER_FLAGS",
- linker_flags, description))
-
- if "+cuda" in spec:
- cfg.write("#------------------{0}\n".format("-" * 60))
- cfg.write("# Cuda\n")
- cfg.write("#------------------{0}\n\n".format("-" * 60))
+ entries.append(cmake_cache_path("SHROUD_EXECUTABLE",
+ pjoin(shroud_bin_dir, "shroud")))
- cfg.write(cmake_cache_option("ENABLE_CUDA", True))
+ for dep in ('cppcheck', 'doxygen'):
+ if spec.satisfies('^%s' % dep):
+ dep_bin_dir = get_spec_path(spec, dep, path_replacements,
+ use_bin=True)
+ entries.append(cmake_cache_path('%s_EXECUTABLE' % dep.upper(),
+ pjoin(dep_bin_dir, dep)))
- cudatoolkitdir = spec['cuda'].prefix
- cfg.write(cmake_cache_entry("CUDA_TOOLKIT_ROOT_DIR",
- cudatoolkitdir))
- cudacompiler = "${CUDA_TOOLKIT_ROOT_DIR}/bin/nvcc"
- cfg.write(cmake_cache_entry("CMAKE_CUDA_COMPILER",
- cudacompiler))
-
- cfg.write(cmake_cache_option("CUDA_SEPARABLE_COMPILATION",
- True))
-
- cfg.write(cmake_cache_option("AXOM_ENABLE_ANNOTATIONS", True))
-
- # CUDA_FLAGS
- cudaflags = "-restrict "
-
- if not spec.satisfies('cuda_arch=none'):
- cuda_arch = spec.variants['cuda_arch'].value
- axom_arch = 'sm_{0}'.format(cuda_arch[0])
- cfg.write(cmake_cache_entry("AXOM_CUDA_ARCH", axom_arch))
- cudaflags += "-arch ${AXOM_CUDA_ARCH} "
- else:
- cfg.write("# cuda_arch could not be determined\n\n")
-
- cudaflags += "-std=c++11 --expt-extended-lambda -G "
- cfg.write(cmake_cache_entry("CMAKE_CUDA_FLAGS", cudaflags))
-
- if "+mpi" in spec:
- cfg.write(cmake_cache_entry("CMAKE_CUDA_HOST_COMPILER",
- "${MPI_CXX_COMPILER}"))
- else:
- cfg.write(cmake_cache_entry("CMAKE_CUDA_HOST_COMPILER",
- "${CMAKE_CXX_COMPILER}"))
-
- cfg.write("# nvcc does not like gtest's 'pthreads' flag\n")
- cfg.write(cmake_cache_option("gtest_disable_pthreads", True))
-
- cfg.write("\n")
- cfg.close()
- tty.info("Spack generated Axom host-config file: " + host_config_path)
+ return entries
def cmake_args(self):
- spec = self.spec
- host_config_path = self._get_host_config_path(spec)
-
options = []
- options.extend(['-C', host_config_path])
if self.run_tests is False:
options.append('-DENABLE_TESTS=OFF')
else:
options.append('-DENABLE_TESTS=ON')
- if "+shared" in spec:
- options.append('-DBUILD_SHARED_LIBS=ON')
- else:
- options.append('-DBUILD_SHARED_LIBS=OFF')
+ options.append(self.define_from_variant(
+ 'BUILD_SHARED_LIBS', 'shared'))
return options
- @run_after('install')
- def install_cmake_cache(self):
- install(self._get_host_config_path(self.spec), prefix)
+ def patch(self):
+ if self.spec.satisfies('%cce'):
+ filter_file('PROPERTIES LINKER_LANGUAGE CXX',
+ 'PROPERTIES LINKER_LANGUAGE CXX \n LINK_FLAGS "-fopenmp"',
+ 'src/axom/quest/examples/CMakeLists.txt')
diff --git a/var/spack/repos/builtin/packages/babelflow/package.py b/var/spack/repos/builtin/packages/babelflow/package.py
index 568f8bf7c8..8110f4d61f 100644
--- a/var/spack/repos/builtin/packages/babelflow/package.py
+++ b/var/spack/repos/builtin/packages/babelflow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,20 +12,18 @@ class Babelflow(CMakePackage):
executed on top of one of several available runtime systems."""
homepage = "https://github.com/sci-visus/BabelFlow"
+ url = "https://github.com/sci-visus/BabelFlow/archive/v1.0.1.tar.gz"
git = 'https://github.com/sci-visus/BabelFlow.git'
maintainers = ['spetruzza']
- version('develop',
- branch='ascent',
- submodules=True)
+ version('1.0.1', sha256='b7817870b7a1d7ae7ae2eff1a1acec2824675fb856f666d5dc95c41ce453ae91')
+ version('1.0.0', sha256='4c4d7ddf60e25e8d3550c07875dba3e46e7c9e61b309cc47a409461b7ffa405e')
depends_on('mpi')
variant("shared", default=True, description="Build Babelflow as shared libs")
def cmake_args(self):
- args = [
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF')]
+ args = [self.define_from_variant('BUILD_SHARED_LIBS', 'shared')]
return args
diff --git a/var/spack/repos/builtin/packages/babeltrace/package.py b/var/spack/repos/builtin/packages/babeltrace/package.py
index 58e59b1862..f3c0177e1c 100644
--- a/var/spack/repos/builtin/packages/babeltrace/package.py
+++ b/var/spack/repos/builtin/packages/babeltrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,5 +17,5 @@ class Babeltrace(AutotoolsPackage):
version('1.2.4', sha256='666e3a1ad2dc7d5703059963056e7800f0eab59c8eeb6be2efe4f3acc5209eb1')
depends_on('glib@2.22:', type=('build', 'link'))
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('popt')
diff --git a/var/spack/repos/builtin/packages/backupninja/package.py b/var/spack/repos/builtin/packages/backupninja/package.py
index 300070fb24..5639f88f38 100644
--- a/var/spack/repos/builtin/packages/backupninja/package.py
+++ b/var/spack/repos/builtin/packages/backupninja/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bam-readcount/package.py b/var/spack/repos/builtin/packages/bam-readcount/package.py
index 45476299eb..498440378d 100644
--- a/var/spack/repos/builtin/packages/bam-readcount/package.py
+++ b/var/spack/repos/builtin/packages/bam-readcount/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bamaddrg/package.py b/var/spack/repos/builtin/packages/bamaddrg/package.py
index c828d048aa..d006a6a1d3 100644
--- a/var/spack/repos/builtin/packages/bamaddrg/package.py
+++ b/var/spack/repos/builtin/packages/bamaddrg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bamdst/package.py b/var/spack/repos/builtin/packages/bamdst/package.py
index 9283d26d6a..593a02091c 100644
--- a/var/spack/repos/builtin/packages/bamdst/package.py
+++ b/var/spack/repos/builtin/packages/bamdst/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bamtools/package.py b/var/spack/repos/builtin/packages/bamtools/package.py
index cf68d9ef4a..d88c8cb557 100644
--- a/var/spack/repos/builtin/packages/bamtools/package.py
+++ b/var/spack/repos/builtin/packages/bamtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bamutil/package.py b/var/spack/repos/builtin/packages/bamutil/package.py
index 0ea2d66eaf..7d2b765eb0 100644
--- a/var/spack/repos/builtin/packages/bamutil/package.py
+++ b/var/spack/repos/builtin/packages/bamutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bannergrab/package.py b/var/spack/repos/builtin/packages/bannergrab/package.py
index ed8af4a0e3..50b5bb7085 100644
--- a/var/spack/repos/builtin/packages/bannergrab/package.py
+++ b/var/spack/repos/builtin/packages/bannergrab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/barrnap/package.py b/var/spack/repos/builtin/packages/barrnap/package.py
index ce293fd228..6c4502150f 100644
--- a/var/spack/repos/builtin/packages/barrnap/package.py
+++ b/var/spack/repos/builtin/packages/barrnap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bart/Makefile-0.7.00.patch b/var/spack/repos/builtin/packages/bart/Makefile-0.7.00.patch
new file mode 100644
index 0000000000..f1fcf034fa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bart/Makefile-0.7.00.patch
@@ -0,0 +1,30 @@
+--- a/Makefile 2021-03-01 08:17:01.000000000 -0600
++++ b/Makefile 2021-04-11 15:20:15.240729080 -0500
+@@ -315,7 +315,7 @@
+ ifeq ($(BUILDTYPE), MacOSX)
+ CUDA_L := -L$(CUDA_BASE)/lib -lcufft -lcudart -lcublas -m64 -lstdc++
+ else
+-CUDA_L := -L$(CUDA_BASE)/lib -lcufft -lcudart -lcublas -lstdc++ -Wl,-rpath $(CUDA_BASE)/lib
++CUDA_L := -L$(CUDA_BASE)/lib -lcufft -lcudart -lcublas -lstdc++
+ endif
+ else
+ CUDA_H :=
+@@ -355,14 +355,13 @@
+ CPPFLAGS += -DUSE_ACML
+ else
+ BLAS_H := -I$(BLAS_BASE)/include
+-ifeq ($(BUILDTYPE), MacOSX)
+-BLAS_L := -L$(BLAS_BASE)/lib -lopenblas
++ifeq ($(OPENBLAS),1)
++BLAS_L := -lopenblas
+ else
+ ifeq ($(NOLAPACKE),1)
+-BLAS_L := -L$(BLAS_BASE)/lib -llapack -lblas
+-CPPFLAGS += -Isrc/lapacke
++BLAS_L := -llapack -lcblas
+ else
+-BLAS_L := -L$(BLAS_BASE)/lib -llapacke -lblas
++BLAS_L := -llapacke -lcblas
+ endif
+ endif
+ endif
diff --git a/var/spack/repos/builtin/packages/bart/package.py b/var/spack/repos/builtin/packages/bart/package.py
index 43b2c1e566..897572e2c7 100644
--- a/var/spack/repos/builtin/packages/bart/package.py
+++ b/var/spack/repos/builtin/packages/bart/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,9 @@ class Bart(MakefilePackage, CudaPackage):
homepage = "https://mrirecon.github.io/bart/"
url = "https://github.com/mrirecon/bart/archive/v0.5.00.tar.gz"
+ maintainers = ['glennpj']
+
+ version('0.7.00', sha256='a16afc4b632c703d95b5c34e47acd82fafc19f51f9aff442373eecfef08bfc41')
version('0.6.00', sha256='dbbd33d1e3ed3324fe21f90a3b62cb51765fe369f21df100b46a32004928f18d')
version('0.5.00', sha256='30eedcda0f0ef3808157542e0d67df5be49ee41e4f41487af5c850632788f643')
@@ -21,11 +24,12 @@ class Bart(MakefilePackage, CudaPackage):
when='@0.5.00')
# patch to fix Makefile for openblas and cuda
- patch('Makefile.patch')
+ patch('Makefile.patch', when='@:0.6.00')
+ patch('Makefile-0.7.00.patch', when='@0.7.00:')
# patch to set path to bart
patch('bart_path-0.5.00.patch', when='@0.5.00')
- patch('bart_path-0.6.00.patch', when='@0.6.00')
+ patch('bart_path-0.6.00.patch', when='@0.6.00:')
depends_on('libpng')
depends_on('fftw')
@@ -44,9 +48,9 @@ class Bart(MakefilePackage, CudaPackage):
if spec['blas'].name == 'openblas':
env['OPENBLAS'] = '1'
- if spec['blas'].name in ['intel-mkl', 'intel-parallel-studio']:
+ if '^mkl' in spec:
env['MKL'] = '1'
- env['MKL_BASE'] = env['MKLROOT']
+ env['MKL_BASE'] = spec['mkl'].prefix.mkl
else:
env['BLAS_BASE'] = spec['blas'].prefix
diff --git a/var/spack/repos/builtin/packages/bash-completion/package.py b/var/spack/repos/builtin/packages/bash-completion/package.py
index d5f250ebc5..c03dabf74f 100644
--- a/var/spack/repos/builtin/packages/bash-completion/package.py
+++ b/var/spack/repos/builtin/packages/bash-completion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bash/package.py b/var/spack/repos/builtin/packages/bash/package.py
index 45a0b00651..4769f455c0 100644
--- a/var/spack/repos/builtin/packages/bash/package.py
+++ b/var/spack/repos/builtin/packages/bash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bashtop/package.py b/var/spack/repos/builtin/packages/bashtop/package.py
index 47f98f14a8..a8cea8df8f 100644
--- a/var/spack/repos/builtin/packages/bashtop/package.py
+++ b/var/spack/repos/builtin/packages/bashtop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bat/package.py b/var/spack/repos/builtin/packages/bat/package.py
index 0463580f8f..0a3b60a0bf 100644
--- a/var/spack/repos/builtin/packages/bat/package.py
+++ b/var/spack/repos/builtin/packages/bat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/batctl/package.py b/var/spack/repos/builtin/packages/batctl/package.py
index 45bd5ecd73..bb99380248 100644
--- a/var/spack/repos/builtin/packages/batctl/package.py
+++ b/var/spack/repos/builtin/packages/batctl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bats/package.py b/var/spack/repos/builtin/packages/bats/package.py
index 531473a9e8..f3024a91b3 100644
--- a/var/spack/repos/builtin/packages/bats/package.py
+++ b/var/spack/repos/builtin/packages/bats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bazel/linux_ppc-0.29.1.patch b/var/spack/repos/builtin/packages/bazel/linux_ppc-0.29.1.patch
new file mode 100644
index 0000000000..c3ed9ab254
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bazel/linux_ppc-0.29.1.patch
@@ -0,0 +1,61 @@
+From 9c9d27561780bc56d9f0867e325c7421a94ee1cb Mon Sep 17 00:00:00 2001
+From: Harsh Bhatia <bhatia4@llnl.gov>
+Date: Tue, 15 Dec 2020 15:56:10 -0800
+Subject: [PATCH] https://github.com/bazelbuild/bazel/commit/ab62a6e097590dac5ec946ad7a796ea0e8593ae0
+
+---
+ src/conditions/BUILD | 6 ++++++
+ third_party/BUILD | 8 ++++++--
+ 2 files changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/src/conditions/BUILD b/src/conditions/BUILD
+index 2b28e28057..faa41a439d 100644
+--- a/src/conditions/BUILD
++++ b/src/conditions/BUILD
+@@ -10,6 +10,12 @@ filegroup(
+ visibility = ["//src:__pkg__"],
+ )
+
++config_setting(
++ name = "linux_ppc",
++ values = {"cpu": "ppc"},
++ visibility = ["//visibility:public"],
++)
++
+ config_setting(
+ name = "linux_x86_64",
+ values = {"cpu": "k8"},
+diff --git a/third_party/BUILD b/third_party/BUILD
+index 159006d741..4fcae54c00 100644
+--- a/third_party/BUILD
++++ b/third_party/BUILD
+@@ -523,12 +523,13 @@ UNNECESSARY_DYNAMIC_LIBRARIES = select({
+ "//src/conditions:darwin": "*.so *.dll",
+ "//src/conditions:darwin_x86_64": "*.so *.dll",
+ "//src/conditions:linux_x86_64": "*.jnilib *.dll",
++ "//src/conditions:linux_ppc": "*.so *.jnilib *.dll",
+ # The .so file is an x86 one, so we can just remove it if the CPU is not x86
+ "//src/conditions:arm": "*.so *.jnilib *.dll",
+ "//src/conditions:linux_aarch64": "*.so *.jnilib *.dll",
+ # Play it safe -- better have a big binary than a slow binary
+ # zip -d does require an argument. Supply something bogus.
+- "//conditions:default": "*.bogusextension",
++ "//conditions:default": "",
+ })
+
+ # Remove native libraries that are for a platform different from the one we are
+@@ -537,7 +538,10 @@ genrule(
+ name = "filter_netty_dynamic_libs",
+ srcs = ["netty_tcnative/netty-tcnative-boringssl-static-2.0.24.Final.jar"],
+ outs = ["netty_tcnative/netty-tcnative-filtered.jar"],
+- cmd = "cp $< $@ && zip -qd $@ " + UNNECESSARY_DYNAMIC_LIBRARIES,
++ cmd = "cp $< $@ && " +
++ # End successfully if there is nothing to be deleted from the archive
++ "if [ -n '" + UNNECESSARY_DYNAMIC_LIBRARIES + "' ]; then " +
++ "zip -qd $@ " + UNNECESSARY_DYNAMIC_LIBRARIES + "; fi",
+ )
+
+ java_import(
+--
+2.21.0 (Apple Git-122.2)
+
diff --git a/var/spack/repos/builtin/packages/bazel/package.py b/var/spack/repos/builtin/packages/bazel/package.py
index ad1239529d..74e72a3623 100644
--- a/var/spack/repos/builtin/packages/bazel/package.py
+++ b/var/spack/repos/builtin/packages/bazel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,12 @@ class Bazel(Package):
url = "https://github.com/bazelbuild/bazel/releases/download/3.1.0/bazel-3.1.0-dist.zip"
maintainers = ['adamjstewart']
-
+ version('4.0.0', sha256='d350f80e70654932db252db380d2ec0144a00e86f8d9f2b4c799ffdb48e9cdd1')
+ version('3.7.2', sha256='de255bb42163a915312df9f4b86e5b874b46d9e8d4b72604b5123c3a845ed9b1')
+ version('3.7.1', sha256='c9244e5905df6b0190113e26082c72d58b56b1b0dec66d076f083ce4089b0307')
+ version('3.7.0', sha256='63873623917c756d1be49ff4d5fc23049736180e6b9a7d5236c6f204eddae3cc')
+ version('3.6.0', sha256='3a18f24febb5203f11b0985b27e120ac623058d1d5ca79cd6df992e67d57240a')
+ version('3.5.1', sha256='67eae714578b22d24192b0eb3a2d35b07578bbd57a33c50f1e74f8acd6378b3c')
version('3.5.0', sha256='334429059cf82e222ca8a9d9dbbd26f8e1eb308613463c2b8655dd4201b127ec')
version('3.4.1', sha256='27af1f11c8f23436915925b25cf6e1fb07fccf2d2a193a307c93437c60f63ba8')
version('3.4.0', sha256='7583abf8905ba9dd5394294e815e8873635ac4e5067e63392e8a33b397e450d8')
@@ -105,6 +110,11 @@ class Bazel(Package):
depends_on('python', type=('build', 'run'))
depends_on('zip', when='platform=linux', type=('build', 'run'))
+ # make work on power9 (2x commits)
+ # https://github.com/bazelbuild/bazel/commit/5cff4f1edf8b95bf0612791632255852332f72b5
+ # https://github.com/bazelbuild/bazel/commit/ab62a6e097590dac5ec946ad7a796ea0e8593ae0
+ patch('linux_ppc-0.29.1.patch', when='@0.29.1')
+
# Pass Spack environment variables to the build
patch('bazelruleclassprovider-0.25.patch', when='@0.25:')
patch('bazelruleclassprovider-0.14.patch', when='@0.14:0.24')
@@ -160,6 +170,11 @@ class Bazel(Package):
return url.format(version)
def setup_build_environment(self, env):
+ # fix the broken linking (on power9)
+ # https://github.com/bazelbuild/bazel/issues/10327
+ env.set('BAZEL_LINKOPTS', '')
+ env.set('BAZEL_LINKLIBS', '-lstdc++')
+
env.set('EXTRA_BAZEL_ARGS',
# Spack's logs don't handle colored output well
'--color=no --host_javabase=@local_jdk//:jdk'
diff --git a/var/spack/repos/builtin/packages/bbcp/package.py b/var/spack/repos/builtin/packages/bbcp/package.py
index 0ea5d88a89..a52f68b159 100644
--- a/var/spack/repos/builtin/packages/bbcp/package.py
+++ b/var/spack/repos/builtin/packages/bbcp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bbmap/package.py b/var/spack/repos/builtin/packages/bbmap/package.py
index f4019c8391..1e420bf75c 100644
--- a/var/spack/repos/builtin/packages/bbmap/package.py
+++ b/var/spack/repos/builtin/packages/bbmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bc/package.py b/var/spack/repos/builtin/packages/bc/package.py
index b78bf8878c..35df0518db 100644
--- a/var/spack/repos/builtin/packages/bc/package.py
+++ b/var/spack/repos/builtin/packages/bc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bcache/package.py b/var/spack/repos/builtin/packages/bcache/package.py
index 9d7eb9b706..c25f333eab 100644
--- a/var/spack/repos/builtin/packages/bcache/package.py
+++ b/var/spack/repos/builtin/packages/bcache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ class Bcache(MakefilePackage):
version('1.0.5', sha256='1449294ef545b3dc6f715f7b063bc2c8656984ad73bcd81a0dc048cbba416ea9')
version('1.0.4', sha256='102ffc3a8389180f4b491188c3520f8a4b1a84e5a7ca26d2bd6de1821f4d913d')
+ depends_on('uuid')
depends_on('util-linux')
depends_on('gettext')
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/bcftools/package.py b/var/spack/repos/builtin/packages/bcftools/package.py
index ef411aaed5..61da8e9d1a 100644
--- a/var/spack/repos/builtin/packages/bcftools/package.py
+++ b/var/spack/repos/builtin/packages/bcftools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Bcftools(AutotoolsPackage):
homepage = "http://samtools.github.io/bcftools/"
url = "https://github.com/samtools/bcftools/releases/download/1.3.1/bcftools-1.3.1.tar.bz2"
+ version('1.12', sha256='7a0e6532b1495b9254e38c6698d955e5176c1ee08b760dfea2235ee161a024f5')
version('1.10.2', sha256='f57301869d0055ce3b8e26d8ad880c0c1989bf25eaec8ea5db99b60e31354e2c')
version('1.9', sha256='6f36d0e6f16ec4acf88649fb1565d443acf0ba40f25a9afd87f14d14d13070c8')
version('1.8', sha256='4acbfd691f137742e0be63d09f516434f0faf617a5c60f466140e0677915fced')
@@ -37,6 +38,7 @@ class Bcftools(AutotoolsPackage):
depends_on('perl', when='@1.8:~perl-filters', type='run')
depends_on('perl', when='@1.8:+perl-filters', type=('build', 'run'))
+ depends_on('htslib@1.12', when='@1.12')
depends_on('htslib@1.10.2', when='@1.10.2')
depends_on('htslib@1.9', when='@1.9')
depends_on('htslib@1.8', when='@1.8')
diff --git a/var/spack/repos/builtin/packages/bcl2fastq2/package.py b/var/spack/repos/builtin/packages/bcl2fastq2/package.py
index 5f2062859d..88be787713 100644
--- a/var/spack/repos/builtin/packages/bcl2fastq2/package.py
+++ b/var/spack/repos/builtin/packages/bcl2fastq2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,7 +26,7 @@ class Bcl2fastq2(Package):
msg='malloc.h/etc requirements break build on macs')
depends_on('boost@1.54.0')
- depends_on('cmake@2.8.9:')
+ depends_on('cmake@2.8.9:', type='build')
depends_on('libxml2@2.7.8')
depends_on('libxslt@1.1.26~crypto')
depends_on('libgcrypt')
diff --git a/var/spack/repos/builtin/packages/bdftopcf/package.py b/var/spack/repos/builtin/packages/bdftopcf/package.py
index 8c410358c7..edfc810c00 100644
--- a/var/spack/repos/builtin/packages/bdftopcf/package.py
+++ b/var/spack/repos/builtin/packages/bdftopcf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,6 @@ class Bdftopcf(AutotoolsPackage, XorgPackage):
depends_on('libxfont')
depends_on('pkgconfig', type='build')
- depends_on('xproto', type='build')
- depends_on('fontsproto', type='build')
+ depends_on('xproto')
+ depends_on('fontsproto')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/bdii/package.py b/var/spack/repos/builtin/packages/bdii/package.py
index 69bc06ccac..8c283cf7fa 100644
--- a/var/spack/repos/builtin/packages/bdii/package.py
+++ b/var/spack/repos/builtin/packages/bdii/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bdw-gc/package.py b/var/spack/repos/builtin/packages/bdw-gc/package.py
index 40a5aca8cf..00eaa87bbd 100644
--- a/var/spack/repos/builtin/packages/bdw-gc/package.py
+++ b/var/spack/repos/builtin/packages/bdw-gc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/beagle/package.py b/var/spack/repos/builtin/packages/beagle/package.py
index cbe12a83aa..d0beb9443b 100644
--- a/var/spack/repos/builtin/packages/beagle/package.py
+++ b/var/spack/repos/builtin/packages/beagle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/beakerlib/package.py b/var/spack/repos/builtin/packages/beakerlib/package.py
index fac03c5106..0dc7194909 100644
--- a/var/spack/repos/builtin/packages/beakerlib/package.py
+++ b/var/spack/repos/builtin/packages/beakerlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bear/package.py b/var/spack/repos/builtin/packages/bear/package.py
index df43e55736..0ca891c6e6 100644
--- a/var/spack/repos/builtin/packages/bear/package.py
+++ b/var/spack/repos/builtin/packages/bear/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/beast-tracer/package.py b/var/spack/repos/builtin/packages/beast-tracer/package.py
index e7e4a344d7..c1e0e8129b 100644
--- a/var/spack/repos/builtin/packages/beast-tracer/package.py
+++ b/var/spack/repos/builtin/packages/beast-tracer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/beast1/package.py b/var/spack/repos/builtin/packages/beast1/package.py
index cee34e4814..6836a958af 100644
--- a/var/spack/repos/builtin/packages/beast1/package.py
+++ b/var/spack/repos/builtin/packages/beast1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/beast2/package.py b/var/spack/repos/builtin/packages/beast2/package.py
index f7ff1b0e72..7b8d89adb5 100644
--- a/var/spack/repos/builtin/packages/beast2/package.py
+++ b/var/spack/repos/builtin/packages/beast2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bedops/package.py b/var/spack/repos/builtin/packages/bedops/package.py
index a8a6e7a607..ce7b978ca8 100644
--- a/var/spack/repos/builtin/packages/bedops/package.py
+++ b/var/spack/repos/builtin/packages/bedops/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bedtools2/package.py b/var/spack/repos/builtin/packages/bedtools2/package.py
index b9c1cd06d1..6c34807670 100644
--- a/var/spack/repos/builtin/packages/bedtools2/package.py
+++ b/var/spack/repos/builtin/packages/bedtools2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Bedtools2(Package):
homepage = "https://github.com/arq5x/bedtools2"
url = "https://github.com/arq5x/bedtools2/archive/v2.26.0.tar.gz"
+ version('2.29.2', sha256='bc2f36b5d4fc9890c69f607d54da873032628462e88c545dd633d2c787a544a5')
version('2.27.1', sha256='edcac089d84e63a51f85c3c189469daa7d42180272130b046856faad3cf79112')
version('2.27.0', sha256='e91390b567e577d337c15ca301e264b0355441f5ab90fa4f971622e3043e0ca0')
version('2.26.0', sha256='15db784f60a11b104ccbc9f440282e5780e0522b8d55d359a8318a6b61897977')
@@ -22,6 +23,8 @@ class Bedtools2(Package):
version('2.23.0', sha256='9dacaa561d11ce9835d1d51e5aeb092bcbe117b7119663ec9a671abac6a36056')
depends_on('zlib')
+ depends_on('bzip2', when='@2.29:')
+ depends_on('xz', when='@2.29:')
depends_on('python', type='build')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/beforelight/package.py b/var/spack/repos/builtin/packages/beforelight/package.py
index 3fff45aa59..764959934c 100644
--- a/var/spack/repos/builtin/packages/beforelight/package.py
+++ b/var/spack/repos/builtin/packages/beforelight/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/benchmark/package.py b/var/spack/repos/builtin/packages/benchmark/package.py
index c02a9e8b5f..c8911c2cac 100644
--- a/var/spack/repos/builtin/packages/benchmark/package.py
+++ b/var/spack/repos/builtin/packages/benchmark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/berkeley-db/drop-docs.patch b/var/spack/repos/builtin/packages/berkeley-db/drop-docs.patch
new file mode 100644
index 0000000000..93b9e899df
--- /dev/null
+++ b/var/spack/repos/builtin/packages/berkeley-db/drop-docs.patch
@@ -0,0 +1,25 @@
+From 310ecb91e619192fd7097a24889485526315667a Mon Sep 17 00:00:00 2001
+From: Harmen Stoppels <harmenstoppels@gmail.com>
+Date: Thu, 25 Feb 2021 16:32:30 +0100
+Subject: [PATCH] remove smth
+
+---
+ dist/Makefile.in | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/dist/Makefile.in b/dist/Makefile.in
+index e90c0c2..d041d47 100644
+--- a/dist/Makefile.in
++++ b/dist/Makefile.in
+@@ -1160,6 +1160,8 @@ DOCLIST=api_reference articles bdb-sql collections csharp \
+ gsg gsg_db_rep gsg_txn index.html installation java \
+ license porting programmer_reference upgrading
+
++DOCLIST=index.html
++
+ install_docs:
+ @echo "Installing documentation: $(DESTDIR)$(docdir) ..."
+ @test -d $(DESTDIR)$(docdir) || \
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/berkeley-db/package.py b/var/spack/repos/builtin/packages/berkeley-db/package.py
index 0385de81a1..d2c79fc8db 100644
--- a/var/spack/repos/builtin/packages/berkeley-db/package.py
+++ b/var/spack/repos/builtin/packages/berkeley-db/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,18 +8,30 @@ class BerkeleyDb(AutotoolsPackage):
"""Oracle Berkeley DB"""
homepage = "https://www.oracle.com/database/technologies/related/berkeleydb.html"
+ # URL must remain http:// so Spack can bootstrap curl
url = "http://download.oracle.com/berkeley-db/db-18.1.40.tar.gz"
version("18.1.40", sha256="0cecb2ef0c67b166de93732769abdeba0555086d51de1090df325e18ee8da9c8")
- version('18.1.32', sha256='fa1fe7de9ba91ad472c25d026f931802597c29f28ae951960685cde487c8d654')
+ version('18.1.32', sha256='fa1fe7de9ba91ad472c25d026f931802597c29f28ae951960685cde487c8d654', deprecated=True)
version('6.2.32', sha256='a9c5e2b004a5777aa03510cfe5cd766a4a3b777713406b02809c17c8e0e7a8fb')
version('6.1.29', sha256='b3c18180e4160d97dd197ba1d37c19f6ea2ec91d31bbfaf8972d99ba097af17d')
- version('6.0.35', sha256='24421affa8ae436fe427ae4f5f2d1634da83d3d55a5ad6354a98eeedb825de55')
+ version('6.0.35', sha256='24421affa8ae436fe427ae4f5f2d1634da83d3d55a5ad6354a98eeedb825de55', deprecated=True)
version('5.3.28', sha256='e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628')
+ variant('docs', default=False)
+ variant('cxx', default=True, description='Build with C++ API')
+ variant('stl', default=True, description='Build with C++ STL API')
+
configure_directory = 'dist'
build_directory = 'build_unix'
+ patch("drop-docs.patch", when='~docs')
+
+ conflicts('%clang@7:', when='@5.3.28')
+ conflicts('%gcc@8:', when='@5.3.28')
+
+ conflicts('+stl', when='~cxx', msg='+stl implies +cxx')
+
def patch(self):
# some of the docs are missing in 18.1.40
if self.spec.satisfies("@18.1.40"):
@@ -27,11 +39,11 @@ class BerkeleyDb(AutotoolsPackage):
filter_file(r'gsg_db_server', '', 'dist/Makefile.in')
def configure_args(self):
+ spec = self.spec
+
config_args = [
'--disable-static',
- '--enable-cxx',
'--enable-dbm',
- '--enable-stl',
# compat with system berkeley-db on darwin
"--enable-compat185",
# SSL support requires OpenSSL, but OpenSSL depends on Perl, which
@@ -39,9 +51,13 @@ class BerkeleyDb(AutotoolsPackage):
'--with-repmgr-ssl=no',
]
- # The default glibc provided by CentOS 7 does not provide proper
- # atomic support when using the NVIDIA compilers
- if self.spec.satisfies('%nvhpc os=centos7'):
+ config_args += self.enable_or_disable('cxx')
+ config_args += self.enable_or_disable('stl')
+
+ # The default glibc provided by CentOS 7 and Red Hat 8 does not provide
+ # proper atomic support when using the NVIDIA compilers
+ if (spec.satisfies('%nvhpc')
+ and (spec.satisfies('os=centos7') or spec.satisfies('os=rhel8'))):
config_args.append('--disable-atomicsupport')
return config_args
diff --git a/var/spack/repos/builtin/packages/bertini/package.py b/var/spack/repos/builtin/packages/bertini/package.py
index aba08990c6..28c948a7a7 100644
--- a/var/spack/repos/builtin/packages/bertini/package.py
+++ b/var/spack/repos/builtin/packages/bertini/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bgpdump/package.py b/var/spack/repos/builtin/packages/bgpdump/package.py
index e708860dc3..8863cd5c58 100644
--- a/var/spack/repos/builtin/packages/bgpdump/package.py
+++ b/var/spack/repos/builtin/packages/bgpdump/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bib2xhtml/package.py b/var/spack/repos/builtin/packages/bib2xhtml/package.py
index 36ce8254ee..3be5aadecf 100644
--- a/var/spack/repos/builtin/packages/bib2xhtml/package.py
+++ b/var/spack/repos/builtin/packages/bib2xhtml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,8 @@ class Bib2xhtml(Package):
version('3.0-79-ge935', sha256='4a2d2d89dd2f3fed1c735055b806809b5cc1cde32dee1aa5987097ec5bf2181f')
+ depends_on('texlive', type='run')
+
def install(self, spec, prefix):
# Add the bst include files to the install directory
bst_include = join_path(prefix.share, 'bib2xhtml')
diff --git a/var/spack/repos/builtin/packages/bigreqsproto/package.py b/var/spack/repos/builtin/packages/bigreqsproto/package.py
index caa8fcd51e..340b463c1d 100644
--- a/var/spack/repos/builtin/packages/bigreqsproto/package.py
+++ b/var/spack/repos/builtin/packages/bigreqsproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bind9/package.py b/var/spack/repos/builtin/packages/bind9/package.py
index 7c31821e6c..d5b8f2d31c 100644
--- a/var/spack/repos/builtin/packages/bind9/package.py
+++ b/var/spack/repos/builtin/packages/bind9/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,12 @@ class Bind9(AutotoolsPackage):
version('9_14_6', sha256='98be7a7b6d614b519f6c8d6ec7a8a39759ae9604d87228d9dc7c034471e5433e')
+ depends_on('libuv', type='link')
+ depends_on('pkgconfig', type='build')
+ depends_on('openssl', type='link')
+ depends_on('libiconv', type='link')
+
def configure_args(self):
- args = ["--without-python", "--disable-linux-caps"]
+ args = ["--without-python", "--disable-linux-caps",
+ '--with-openssl={0}'.format(self.spec['openssl'].prefix)]
return args
diff --git a/var/spack/repos/builtin/packages/binutils/package.py b/var/spack/repos/builtin/packages/binutils/package.py
index f79015cf6b..bd3b64394c 100644
--- a/var/spack/repos/builtin/packages/binutils/package.py
+++ b/var/spack/repos/builtin/packages/binutils/package.py
@@ -1,10 +1,8 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-import sys
-
class Binutils(AutotoolsPackage, GNUMirrorPackage):
"""GNU binutils, which contain the linker, assembler, objdump and others"""
@@ -12,6 +10,8 @@ class Binutils(AutotoolsPackage, GNUMirrorPackage):
homepage = "http://www.gnu.org/software/binutils/"
gnu_mirror_path = "binutils/binutils-2.28.tar.bz2"
+ version('2.36.1', sha256='5b4bd2e79e30ce8db0abd76dd2c2eae14a94ce212cfc59d3c37d23e24bc6d7a3')
+ version('2.35.2', sha256='cfa7644dbecf4591e136eb407c1c1da16578bd2b03f0c2e8acdceba194bb9d61')
version('2.35.1', sha256='320e7a1d0f46fcd9f413f1046e216cbe23bb2bce6deb6c6a63304425e48b1942')
version('2.35', sha256='7d24660f87093670738e58bcc7b7b06f121c0fcb0ca8fc44368d675a5ef9cff7')
version('2.34', sha256='89f010078b6cf69c23c27897d686055ab89b198dddf819efb0a4f2c38a0b36e6')
@@ -28,16 +28,19 @@ class Binutils(AutotoolsPackage, GNUMirrorPackage):
version('2.23.2', sha256='fe914e56fed7a9ec2eb45274b1f2e14b0d8b4f41906a5194eac6883cfe5c1097')
version('2.20.1', sha256='71d37c96451333c5c0b84b170169fdcb138bbb27397dc06281905d9717c8ed64')
- variant('plugins', default=False,
+ variant('plugins', default=True,
description="enable plugins, needed for gold linker")
- variant('gold', default=(sys.platform != 'darwin'),
+ variant('gold', default=False,
description="build the gold linker")
variant('libiberty', default=False, description='Also install libiberty.')
variant('nls', default=True, description='Enable Native Language Support')
variant('headers', default=False, description='Install extra headers (e.g. ELF)')
variant('lto', default=False, description='Enable lto.')
variant('ld', default=False, description='Enable ld.')
+ variant('gas', default=False, description='Enable as assembler.')
variant('interwork', default=False, description='Enable interwork.')
+ variant('libs', default='shared,static', values=('shared', 'static'),
+ multi=True, description='Build shared libs, static libs or both')
patch('cr16.patch', when='@:2.29.1')
patch('update_symbol-2.26.patch', when='@2.26')
@@ -58,51 +61,71 @@ class Binutils(AutotoolsPackage, GNUMirrorPackage):
conflicts('+gold', when='platform=darwin',
msg="Binutils cannot build linkers on macOS")
+ # When you build binutils with ~ld and +gas and load it in your PATH, you
+ # may end up with incompatibilities between a potentially older system ld
+ # and a recent assembler. For instance the linker on ubuntu 16.04 from
+ # binutils 2.26 and the assembler from binutils 2.36.1 will result in:
+ # "unable to initialize decompress status for section .debug_info"
+ # when compiling with debug symbols on gcc.
+ conflicts('+gas', '~ld', msg="Assembler not always compatible with system ld")
+
+ # When you build ld.gold you automatically get ld, even when you add the
+ # --disable-ld flag
+ conflicts('~ld', '+gold')
+
+ def setup_build_environment(self, env):
+
+ if self.spec.satisfies('%cce'):
+ env.append_flags('LDFLAGS', '-Wl,-z,muldefs')
+
+ if '+nls' in self.spec:
+ env.append_flags('LDFLAGS', '-lintl')
+
def configure_args(self):
spec = self.spec
- configure_args = [
+ args = [
'--disable-dependency-tracking',
'--disable-werror',
'--enable-multilib',
- '--enable-shared',
'--enable-64-bit-bfd',
'--enable-targets=all',
'--with-system-zlib',
'--with-sysroot=/',
]
- if '+lto' in spec:
- configure_args.append('--enable-lto')
-
- if '+ld' in spec:
- configure_args.append('--enable-ld')
-
- if '+interwork' in spec:
- configure_args.append('--enable-interwork')
-
- if '+gold' in spec:
- configure_args.append('--enable-gold')
-
- if '+plugins' in spec:
- configure_args.append('--enable-plugins')
+ args += self.enable_or_disable('libs')
+ args += self.enable_or_disable('lto')
+ args += self.enable_or_disable('ld')
+ args += self.enable_or_disable('gas')
+ args += self.enable_or_disable('interwork')
+ args += self.enable_or_disable('gold')
+ args += self.enable_or_disable('plugins')
if '+libiberty' in spec:
- configure_args.append('--enable-install-libiberty')
+ args.append('--enable-install-libiberty')
+ else:
+ args.append('--disable-install-libiberty')
if '+nls' in spec:
- configure_args.append('--enable-nls')
- configure_args.append('LDFLAGS=-lintl')
+ args.append('--enable-nls')
else:
- configure_args.append('--disable-nls')
+ args.append('--disable-nls')
# To avoid namespace collisions with Darwin/BSD system tools,
# prefix executables with "g", e.g., gar, gnm; see Homebrew
# https://github.com/Homebrew/homebrew-core/blob/master/Formula/binutils.rb
if spec.satisfies('platform=darwin'):
- configure_args.append('--program-prefix=g')
+ args.append('--program-prefix=g')
+
+ return args
- return configure_args
+ # 2.36 is missing some dependencies and requires serial make install.
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=27482
+ @when('@2.36:')
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ make('-j', '1', *self.install_targets)
@run_after('install')
def install_headers(self):
@@ -118,17 +141,20 @@ class Binutils(AutotoolsPackage, GNUMirrorPackage):
extradir)
def flag_handler(self, name, flags):
+ # Use a separate variable for injecting flags. This way, installing
+ # `binutils cflags='-O2'` will still work as expected.
+ iflags = []
# To ignore the errors of narrowing conversions for
# the Fujitsu compiler
if name == 'cxxflags' and (
self.spec.satisfies('@:2.31.1') and
self.compiler.name in ('fj', 'clang', 'apple-clang')
):
- flags.append('-Wno-narrowing')
+ iflags.append('-Wno-narrowing')
elif name == 'cflags':
if self.spec.satisfies('@:2.34 %gcc@10:'):
- flags.append('-fcommon')
- return (flags, None, None)
+ iflags.append('-fcommon')
+ return (iflags, None, flags)
def test(self):
spec_vers = str(self.spec.version)
diff --git a/var/spack/repos/builtin/packages/bioawk/package.py b/var/spack/repos/builtin/packages/bioawk/package.py
index d7317d4293..596fd45083 100644
--- a/var/spack/repos/builtin/packages/bioawk/package.py
+++ b/var/spack/repos/builtin/packages/bioawk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/biobambam2/package.py b/var/spack/repos/builtin/packages/biobambam2/package.py
new file mode 100644
index 0000000000..bafad81657
--- /dev/null
+++ b/var/spack/repos/builtin/packages/biobambam2/package.py
@@ -0,0 +1,46 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Biobambam2(AutotoolsPackage):
+ """Tools for early stage alignment file processing"""
+
+ homepage = "https://gitlab.com/german.tischler/biobambam2"
+ url = "https://gitlab.com/german.tischler/biobambam2/-/archive/2.0.177-release-20201112105453/biobambam2-2.0.177-release-20201112105453.tar.gz"
+
+ version('2.0.177', sha256='ad0a418fb49a31996a105a1a275c0d1dfc8b84aa91d48fa1efb6ff4fe1e74181',
+ url='https://gitlab.com/german.tischler/biobambam2/-/archive/2.0.177-release-20201112105453/biobambam2-2.0.177-release-20201112105453.tar.gz')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('libmaus2')
+
+ test_src_dir = 'test'
+
+ def configure_args(self):
+ args = ['--with-libmaus2={0}'.format(self.spec['libmaus2'].prefix)]
+ return args
+
+ def _fix_shortsort(self):
+ """Fix the testshortsort.sh file copied during installation."""
+ test_dir = join_path(self.install_test_root, self.test_src_dir)
+ filter_file('../src/', '', join_path(test_dir, 'testshortsort.sh'))
+
+ @run_after('install')
+ def cache_test_sources(self):
+ """Copy the test source files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources(self.test_src_dir)
+ self._fix_shortsort()
+
+ def test(self):
+ test_dir = join_path(self.install_test_root, self.test_src_dir)
+ self.run_test('sh', ['testshortsort.sh'],
+ expected='Alignments sorted by coordinate.',
+ work_dir=test_dir)
diff --git a/var/spack/repos/builtin/packages/biobloom/package.py b/var/spack/repos/builtin/packages/biobloom/package.py
index c9d1ac687f..0197843302 100644
--- a/var/spack/repos/builtin/packages/biobloom/package.py
+++ b/var/spack/repos/builtin/packages/biobloom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/biopieces/package.py b/var/spack/repos/builtin/packages/biopieces/package.py
index 6e94f3855d..b1e44aaea9 100644
--- a/var/spack/repos/builtin/packages/biopieces/package.py
+++ b/var/spack/repos/builtin/packages/biopieces/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bird/package.py b/var/spack/repos/builtin/packages/bird/package.py
index bf0a6209a5..7b48ed0e41 100644
--- a/var/spack/repos/builtin/packages/bird/package.py
+++ b/var/spack/repos/builtin/packages/bird/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,5 +23,7 @@ class Bird(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
+ depends_on('flex', type='build')
+ depends_on('bison', type='build')
depends_on('ncurses')
depends_on('readline')
diff --git a/var/spack/repos/builtin/packages/bismark/package.py b/var/spack/repos/builtin/packages/bismark/package.py
index cb71eed678..9dad04177a 100644
--- a/var/spack/repos/builtin/packages/bismark/package.py
+++ b/var/spack/repos/builtin/packages/bismark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bison/nvhpc.patch b/var/spack/repos/builtin/packages/bison/nvhpc-3.6.patch
index 88cd8f641e..88cd8f641e 100644
--- a/var/spack/repos/builtin/packages/bison/nvhpc.patch
+++ b/var/spack/repos/builtin/packages/bison/nvhpc-3.6.patch
diff --git a/var/spack/repos/builtin/packages/bison/nvhpc-3.7.patch b/var/spack/repos/builtin/packages/bison/nvhpc-3.7.patch
new file mode 100644
index 0000000000..d678cda57e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bison/nvhpc-3.7.patch
@@ -0,0 +1,38 @@
+--- a/lib/xalloc-oversized.h
++++ b/lib/xalloc-oversized.h
+@@ -41,10 +41,10 @@
+ positive and N must be nonnegative. This is a macro, not a
+ function, so that it works correctly even when SIZE_MAX < N. */
+
+-#if 7 <= __GNUC__ && !defined __clang__
++#if 7 <= __GNUC__ && !defined __clang__ && !defined __NVCOMPILER
+ # define xalloc_oversized(n, s) \
+ __builtin_mul_overflow_p (n, s, (__xalloc_count_type) 1)
+-#elif 5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__
++#elif 5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__ && !defined __NVCOMPILER
+ # define xalloc_oversized(n, s) \
+ (__builtin_constant_p (n) && __builtin_constant_p (s) \
+ ? __xalloc_oversized (n, s) \
+--- a/lib/intprops.h
++++ b/lib/intprops.h
+@@ -226,9 +226,9 @@
+
+ /* True if __builtin_add_overflow (A, B, P) and __builtin_sub_overflow
+ (A, B, P) work when P is non-null. */
+-#if 5 <= __GNUC__ && !defined __ICC
++#if 5 <= __GNUC__ && !defined __ICC && !defined __NVCOMPILER
+ # define _GL_HAS_BUILTIN_ADD_OVERFLOW 1
+-#elif defined __has_builtin
++#elif defined __has_builtin && !defined __NVCOMPILER
+ # define _GL_HAS_BUILTIN_ADD_OVERFLOW __has_builtin (__builtin_add_overflow)
+ #else
+ # define _GL_HAS_BUILTIN_ADD_OVERFLOW 0
+@@ -249,7 +249,7 @@
+ presumably run afoul of Clang bug 16404. */
+ # define _GL_HAS_BUILTIN_OVERFLOW_P 0
+ #else
+-# define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__)
++# define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__ && !defined __NVCOMPILER)
+ #endif
+
+ /* The _GL*_OVERFLOW macros have the same restrictions as the
diff --git a/var/spack/repos/builtin/packages/bison/package.py b/var/spack/repos/builtin/packages/bison/package.py
index 8b4ebfa8bd..d6b5e35fee 100644
--- a/var/spack/repos/builtin/packages/bison/package.py
+++ b/var/spack/repos/builtin/packages/bison/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,13 @@ class Bison(AutotoolsPackage, GNUMirrorPackage):
executables = ['^bison$']
+ version('3.7.6', sha256='69dc0bb46ea8fc307d4ca1e0b61c8c355eb207d0b0c69f4f8462328e74d7b9ea')
+ version('3.7.5', sha256='151cb5f12716e3fe93a27a317cd44878329659f275b342779bfaef4a526bbf70')
+ version('3.7.4', sha256='fbabc7359ccd8b4b36d47bfe37ebbce44805c052526d5558b95eda125d1677e2')
+ version('3.7.3', sha256='104fe912f2212ab4e4a59df888a93b719a046ffc38d178e943f6c54b1f27b3c7')
+ version('3.7.2', sha256='415cd91044517bbfd8d135dea24e054501db238a5515edd9cdbb795ba3e82a84')
+ version('3.7.1', sha256='1dd952839cf0d5a8178c691eeae40dc48fa50d18dcce648b1ad9ae0195367d13')
+ version('3.7', sha256='492ad61202de893ca21a99b621d63fa5389da58804ad79d3f226b8d04b803998')
version('3.6.4', sha256='8183de64b5383f3634942c7b151bf2577f74273b2731574cdda8a8f3a0ab13e9')
version('3.6.3', sha256='4b4c4943931e811f1073006ce3d8ee022a02b11b501e9cbf4def3613b24a3e63')
version('3.6.2', sha256='e28ed3aad934de2d1df68be209ac0b454f7b6d3c3d6d01126e5cd2cbadba089a')
@@ -43,10 +50,12 @@ class Bison(AutotoolsPackage, GNUMirrorPackage):
depends_on('diffutils', type='build')
depends_on('m4', type=('build', 'run'))
depends_on('perl', type='build')
- depends_on('help2man', type='build')
patch('pgi.patch', when='@3.0.4')
- patch('nvhpc.patch', when='%nvhpc')
+ # The NVIDIA compilers do not currently support some GNU builtins.
+ # Detect this case and use the fallback path.
+ patch('nvhpc-3.6.patch', when='@3.6.0:3.6.99 %nvhpc')
+ patch('nvhpc-3.7.patch', when='@3.7.0:3.7.99 %nvhpc')
conflicts('%intel@:14', when='@3.4.2:',
msg="Intel 14 has immature C11 support")
diff --git a/var/spack/repos/builtin/packages/bitlbee/package.py b/var/spack/repos/builtin/packages/bitlbee/package.py
index c64da4736f..a96e06b4ba 100644
--- a/var/spack/repos/builtin/packages/bitlbee/package.py
+++ b/var/spack/repos/builtin/packages/bitlbee/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bitmap/package.py b/var/spack/repos/builtin/packages/bitmap/package.py
index 06e793bcd3..5dbf830bc2 100644
--- a/var/spack/repos/builtin/packages/bitmap/package.py
+++ b/var/spack/repos/builtin/packages/bitmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,7 +20,7 @@ class Bitmap(AutotoolsPackage, XorgPackage):
depends_on('libxmu')
depends_on('libxt')
- depends_on('xbitmaps', type='build')
- depends_on('xproto@7.0.25:', type='build')
+ depends_on('xbitmaps')
+ depends_on('xproto@7.0.25:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/bitsery/package.py b/var/spack/repos/builtin/packages/bitsery/package.py
index 8a2ce07b60..3c69a63c75 100644
--- a/var/spack/repos/builtin/packages/bitsery/package.py
+++ b/var/spack/repos/builtin/packages/bitsery/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/blaspp/package.py b/var/spack/repos/builtin/packages/blaspp/package.py
index 7b6c4da613..1013a954a0 100644
--- a/var/spack/repos/builtin/packages/blaspp/package.py
+++ b/var/spack/repos/builtin/packages/blaspp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
import os
-class Blaspp(CMakePackage, CudaPackage):
+class Blaspp(CMakePackage, CudaPackage, ROCmPackage):
"""C++ API for the Basic Linear Algebra Subroutines. Developed by the
Innovative Computing Laboratory at the University of Tennessee,
Knoxville."""
@@ -18,36 +18,52 @@ class Blaspp(CMakePackage, CudaPackage):
maintainers = ['teonnik', 'Sely85', 'G-Ragghianti', 'mgates3']
version('master', branch='master')
+ version('2021.04.01', sha256='11fc7b7e725086532ada58c0de53f30e480c2a06f1497b8081ea6d8f97e26150')
version('2020.10.02', sha256='36e45bb5a8793ba5d7bc7c34fc263f91f92b0946634682937041221a6bf1a150')
version('2020.10.01', sha256='1a05dbc46caf797d59a7c189216b876fdb1b2ff3e2eb48f1e6ca4b2756c59153')
version('2020.10.00', sha256='ce148cfe397428d507c72d7d9eba5e9d3f55ad4cd842e6e873c670183dcb7795')
variant('openmp', default=True, description='Use OpenMP internally.')
- variant('cuda', default=True, description='Build with CUDA')
variant('shared', default=True, description='Build shared libraries')
depends_on('cmake@3.15.0:', type='build')
depends_on('blas')
+ depends_on('llvm-openmp', when='%apple-clang +openmp')
+ depends_on('rocblas', when='+rocm')
- # This will attempt to use a supported version of OpenBLAS
- depends_on('openblas@:0.3.5', when='^openblas')
- # In some cases, the spack concretizer will fail to use a supported
- # version of OpenBLAS. In this case, present an error message.
- conflicts('^openblas@0.3.6:', msg='Testing errors in OpenBLAS >=0.3.6')
+ # only supported with clingo solver: virtual dependency preferences
+ # depends_on('openblas threads=openmp', when='+openmp ^openblas')
+
+ # BLAS++ tests will fail when using openblas > 0.3.5 without multithreading support
+ # locking is only supported in openblas 3.7+
+ conflicts('^openblas@0.3.6 threads=none', msg='BLAS++ requires a threadsafe openblas')
+ conflicts('^openblas@0.3.7: ~locking', msg='BLAS++ requires a threadsafe openblas')
+
+ conflicts('+rocm', when='@:2020.10.02', msg='ROCm support requires BLAS++ 2021.04.00 or greater')
+ conflicts('+rocm', when='+cuda', msg='BLAS++ can only support one GPU backend at a time')
def cmake_args(self):
spec = self.spec
+ backend_config = '-Duse_cuda=%s' % ('+cuda' in spec)
+ if self.version >= Version('2021.04.01'):
+ backend = 'none'
+ if '+cuda' in spec:
+ backend = 'cuda'
+ if '+rocm' in spec:
+ backend = 'hip'
+ backend_config = '-Dgpu_backend=%s' % backend
return [
'-Dbuild_tests=%s' % self.run_tests,
'-Duse_openmp=%s' % ('+openmp' in spec),
'-DBUILD_SHARED_LIBS=%s' % ('+shared' in spec),
- '-Duse_cuda=%s' % ('+cuda' in spec),
+ backend_config,
'-DBLAS_LIBRARIES=%s' % spec['blas'].libs.joined(';')
]
def check(self):
# If the tester fails to build, ensure that the check() fails.
if os.path.isfile(join_path(self.build_directory, 'test', 'tester')):
- make('check')
+ with working_dir(self.build_directory):
+ make('check')
else:
raise Exception('The tester was not built!')
diff --git a/var/spack/repos/builtin/packages/blasr-libcpp/package.py b/var/spack/repos/builtin/packages/blasr-libcpp/package.py
index 658561a39a..c93e9d4d7c 100644
--- a/var/spack/repos/builtin/packages/blasr-libcpp/package.py
+++ b/var/spack/repos/builtin/packages/blasr-libcpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/blasr/package.py b/var/spack/repos/builtin/packages/blasr/package.py
index 5c6afdba3a..22a9ef0958 100644
--- a/var/spack/repos/builtin/packages/blasr/package.py
+++ b/var/spack/repos/builtin/packages/blasr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/blast-legacy/package.py b/var/spack/repos/builtin/packages/blast-legacy/package.py
index faf5a155af..e47f4b7c2e 100644
--- a/var/spack/repos/builtin/packages/blast-legacy/package.py
+++ b/var/spack/repos/builtin/packages/blast-legacy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class BlastLegacy(Package):
homepage = "https://www.ncbi.nlm.nih.gov/"
url = "ftp://ftp.ncbi.nlm.nih.gov/blast/executables/legacy.NOTSUPPORTED/2.2.26/ncbi.tar.gz"
- version('2.2.26', sha256='d8fffac25efc8ca894c707c840a4797a8a949ae6fd983d2f91c9972f788efb7d')
+ version('2.2.26', sha256='d8fffac25efc8ca894c707c840a4797a8a949ae6fd983d2f91c9972f788efb7d', deprecated=True)
depends_on('tcsh', type='build')
diff --git a/var/spack/repos/builtin/packages/blast-plus/package.py b/var/spack/repos/builtin/packages/blast-plus/package.py
index febe4fc159..3fb2d4a85b 100644
--- a/var/spack/repos/builtin/packages/blast-plus/package.py
+++ b/var/spack/repos/builtin/packages/blast-plus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,8 +21,9 @@ class BlastPlus(AutotoolsPackage):
"""Basic Local Alignment Search Tool."""
homepage = "http://blast.ncbi.nlm.nih.gov/"
- url = "https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.6.0/ncbi-blast-2.6.0+-src.tar.gz"
+ url = "https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.11.0/ncbi-blast-2.11.0+-src.tar.gz"
+ version('2.11.0', sha256='d88e1858ae7ce553545a795a2120e657a799a6d334f2a07ef0330cc3e74e1954')
version('2.9.0', sha256='a390cc2d7a09422759fc178db84de9def822cbe485916bbb2ec0d215dacdc257')
version('2.8.1', sha256='e03dd1a30e37cb8a859d3788a452c5d70ee1f9102d1ee0f93b2fbd145925118f')
version('2.7.1', sha256='10a78d3007413a6d4c983d2acbf03ef84b622b82bd9a59c6bd9fbdde9d0298ca')
diff --git a/var/spack/repos/builtin/packages/blast2go/package.py b/var/spack/repos/builtin/packages/blast2go/package.py
index d272065474..bd474f5141 100644
--- a/var/spack/repos/builtin/packages/blast2go/package.py
+++ b/var/spack/repos/builtin/packages/blast2go/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import archspec
class Blast2go(Package):
@@ -14,6 +15,10 @@ class Blast2go(Package):
version('5.2.5', sha256='c37aeda25f96ac0553b52da6b5af3167d50671ddbfb3b39bcb11afe5d0643891')
+ for t in set([str(x.family) for x in archspec.cpu.TARGETS.values()
+ if str(x.family) != 'x86_64']):
+ conflicts('target={0}:'.format(t), msg='blast2go is available x86_64 only')
+
depends_on('bash', type='build')
depends_on('blast-plus', type='run')
depends_on('java', type='build')
diff --git a/var/spack/repos/builtin/packages/blat/package.py b/var/spack/repos/builtin/packages/blat/package.py
index 831329eafb..0da2ef9628 100644
--- a/var/spack/repos/builtin/packages/blat/package.py
+++ b/var/spack/repos/builtin/packages/blat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/blaze/package.py b/var/spack/repos/builtin/packages/blaze/package.py
index 81c6f5f715..80c105b6ea 100644
--- a/var/spack/repos/builtin/packages/blaze/package.py
+++ b/var/spack/repos/builtin/packages/blaze/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/blis/package.py b/var/spack/repos/builtin/packages/blis/package.py
index 8e8deaf61f..d6834fe9cc 100644
--- a/var/spack/repos/builtin/packages/blis/package.py
+++ b/var/spack/repos/builtin/packages/blis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -53,7 +53,8 @@ class BlisBase(Package):
phases = ['configure', 'build', 'install']
- def configure(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
config_args = []
config_args.append("--enable-threading=" +
@@ -79,7 +80,13 @@ class BlisBase(Package):
else:
config_args.append("--disable-static")
- # FIXME: add cpu isa variants.
+ return config_args
+
+ def configure(self, spec, prefix):
+ config_args = self.configure_args()
+
+ # To ensure auto should always be the
+ # last argument for base and derived class
config_args.append("auto")
configure("--prefix=" + prefix,
@@ -105,7 +112,10 @@ class BlisBase(Package):
@property
def libs(self):
return find_libraries(
- ["libblis", "libblis-mt"], root=self.prefix, recursive=True
+ ["libblis", "libblis-mt"],
+ root=self.prefix,
+ shared='+shared' in self.spec,
+ recursive=True
)
@@ -128,6 +138,8 @@ class Blis(BlisBase):
git = "https://github.com/flame/blis.git"
version('master', branch='master')
+ version('0.8.1', sha256='729694128719801e82fae7b5f2489ab73e4a467f46271beff09588c9265a697b')
+ version('0.8.0', sha256='5e05868c4a6cf5032a7492f8861653e939a8f907a4fa524bbb6e14394e170a3d')
version('0.7.0', sha256='7e345d666799e15bba570bd125f97042f17bf752a61dcf314486a6cd096d5f68')
version('0.6.1', sha256='76b22f29b7789cf117c0873d2a6b2a6d61f903869168148f2e7306353c105c37')
version('0.6.0', sha256='ad5765cc3f492d0c663f494850dafc4d72f901c332eb442f404814ff2995e5a9')
diff --git a/var/spack/repos/builtin/packages/bliss/package.py b/var/spack/repos/builtin/packages/bliss/package.py
index b42e9cac9c..f5333c73a6 100644
--- a/var/spack/repos/builtin/packages/bliss/package.py
+++ b/var/spack/repos/builtin/packages/bliss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/blitz/package.py b/var/spack/repos/builtin/packages/blitz/package.py
index 4a823b3e20..d44df205fe 100644
--- a/var/spack/repos/builtin/packages/blitz/package.py
+++ b/var/spack/repos/builtin/packages/blitz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,11 +9,15 @@ from spack import *
class Blitz(AutotoolsPackage):
"""N-dimensional arrays for C++"""
homepage = "http://github.com/blitzpp/blitz"
- url = "https://github.com/blitzpp/blitz/archive/1.0.1.tar.gz"
+ url = "https://github.com/blitzpp/blitz/archive/1.0.2.tar.gz"
+ version('1.0.2', sha256='500db9c3b2617e1f03d0e548977aec10d36811ba1c43bb5ef250c0e3853ae1c2')
version('1.0.1', sha256='b62fc3f07b64b264307b01fec5e4f2793e09a68dcb5378984aedbc2e4b3adcef')
version('1.0.0', sha256='79c06ea9a0585ba0e290c8140300e3ad19491c45c1d90feb52819abc3b58a0c1')
+ depends_on('python@:2.7.999', type='build', when='@:1.0.1')
+ depends_on('python@3:', type='build', when='@1.0.2:')
+
build_targets = ['lib']
def check(self):
diff --git a/var/spack/repos/builtin/packages/blktrace/package.py b/var/spack/repos/builtin/packages/blktrace/package.py
index bf0b1eae05..2272722b1e 100644
--- a/var/spack/repos/builtin/packages/blktrace/package.py
+++ b/var/spack/repos/builtin/packages/blktrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bloaty/package.py b/var/spack/repos/builtin/packages/bloaty/package.py
new file mode 100644
index 0000000000..0bdb33d7da
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bloaty/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Bloaty(CMakePackage):
+ """Bloaty McBloatface: a size profiler for binaries."""
+
+ homepage = "https://github.com/google/bloaty"
+ url = "https://github.com/google/bloaty/releases/download/v1.1/bloaty-1.1.tar.bz2"
+
+ maintiners = ["cyrush"]
+
+ version('1.1',
+ sha256='a308d8369d5812aba45982e55e7c3db2ea4780b7496a5455792fb3dcba9abd6f')
diff --git a/var/spack/repos/builtin/packages/blogbench/package.py b/var/spack/repos/builtin/packages/blogbench/package.py
index d9a7fd6088..d66bf8b77c 100644
--- a/var/spack/repos/builtin/packages/blogbench/package.py
+++ b/var/spack/repos/builtin/packages/blogbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/blt/package.py b/var/spack/repos/builtin/packages/blt/package.py
index 430c82affd..372f6a92b0 100644
--- a/var/spack/repos/builtin/packages/blt/package.py
+++ b/var/spack/repos/builtin/packages/blt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,18 @@ class Blt(Package):
Testing large-scale high performance computing (HPC) applications."""
homepage = "https://github.com/LLNL/blt"
- url = "https://github.com/LLNL/blt/archive/v0.3.6.tar.gz"
+ url = "https://github.com/LLNL/blt/archive/v0.4.0.tar.gz"
git = "https://github.com/LLNL/blt.git"
- maintainers = ['davidbeckingsale']
+ maintainers = ['white238', 'davidbeckingsale']
version('develop', branch='develop')
version('main', branch='main')
+ # Note: 0.4.0 contains a breaking change to BLT created targets
+ # if you export targets this could cause problems in downstream
+ # projects if not handled properly. More info here:
+ # https://llnl-blt.readthedocs.io/en/develop/tutorial/exporting_targets.html
+ version('0.4.0', sha256='f3bc45d28b9b2eb6df43b75d4f6f89a1557d73d012da7b75bac1be0574767193')
version('0.3.6', sha256='6276317c29e7ff8524fbea47d9288ddb40ac06e9f9da5e878bf9011e2c99bf71')
version('0.3.5', sha256='68a1c224bb9203461ae6f5ab0ff3c50b4a58dcce6c2d2799489a1811f425fb84')
version('0.3.0', sha256='bb917a67cb7335d6721c997ba9c5dca70506006d7bba5e0e50033dd0836481a5')
diff --git a/var/spack/repos/builtin/packages/bmake/package.py b/var/spack/repos/builtin/packages/bmake/package.py
index 2988bc2729..08c05e1bcb 100644
--- a/var/spack/repos/builtin/packages/bmake/package.py
+++ b/var/spack/repos/builtin/packages/bmake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bmi/package.py b/var/spack/repos/builtin/packages/bmi/package.py
index c2862ed3ee..1d9b5c4773 100644
--- a/var/spack/repos/builtin/packages/bmi/package.py
+++ b/var/spack/repos/builtin/packages/bmi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,12 +9,12 @@ from spack import *
class Bmi(AutotoolsPackage):
"""a communications framework and network abstraction layer"""
- homepage = 'https://xgitlab.cels.anl.gov/sds/bmi'
- git = 'https://xgitlab.cels.anl.gov/sds/bmi.git'
+ homepage = 'https://github.com/radix-io/bmi/'
+ git = 'https://github.com/radix-io/bmi.git'
maintainers = ['carns']
- version('develop', branch='master')
+ version('main', branch='main')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
diff --git a/var/spack/repos/builtin/packages/bml/package.py b/var/spack/repos/builtin/packages/bml/package.py
index 48a263f85e..b3c021315b 100644
--- a/var/spack/repos/builtin/packages/bml/package.py
+++ b/var/spack/repos/builtin/packages/bml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -34,8 +34,7 @@ class Bml(CMakePackage):
def cmake_args(self):
args = [
- '-DBUILD_SHARED_LIBS={0}'.format(
- 'ON' if '+shared' in self.spec else 'OFF')
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared')
]
spec = self.spec
if '+mpi' in spec:
diff --git a/var/spack/repos/builtin/packages/bohrium/package.py b/var/spack/repos/builtin/packages/bohrium/package.py
index 1fb05be2a0..81d489d0de 100644
--- a/var/spack/repos/builtin/packages/bohrium/package.py
+++ b/var/spack/repos/builtin/packages/bohrium/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/boinc-client/package.py b/var/spack/repos/builtin/packages/boinc-client/package.py
index 80e6416e4b..590a627e81 100644
--- a/var/spack/repos/builtin/packages/boinc-client/package.py
+++ b/var/spack/repos/builtin/packages/boinc-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bolt/package.py b/var/spack/repos/builtin/packages/bolt/package.py
index b4e4cf95ce..c3f7870f3f 100644
--- a/var/spack/repos/builtin/packages/bolt/package.py
+++ b/var/spack/repos/builtin/packages/bolt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,8 @@ class Bolt(CMakePackage):
maintainers = ['shintaro-iwasaki']
version("main", branch="main")
+ version("2.0", sha256="f84b6a525953edbaa5d28748ef3ab172a3b6f6899b07092065ba7d1ccc6eb5ac")
+ version("1.0.1", sha256="769e30dfc4042cee7ebbdadd23cf08796c03bcd8b335f516dc8cbc3f8adfa597")
version("1.0", sha256="1c0d2f75597485ca36335d313a73736594e75c8a36123c5a6f54d01b5ba5c384")
depends_on('argobots')
diff --git a/var/spack/repos/builtin/packages/bonniepp/package.py b/var/spack/repos/builtin/packages/bonniepp/package.py
index 6a33a15ea7..15f2e1cb2d 100644
--- a/var/spack/repos/builtin/packages/bonniepp/package.py
+++ b/var/spack/repos/builtin/packages/bonniepp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bookleaf-cpp/package.py b/var/spack/repos/builtin/packages/bookleaf-cpp/package.py
index 1fec8cbc6d..7a82b4a947 100644
--- a/var/spack/repos/builtin/packages/bookleaf-cpp/package.py
+++ b/var/spack/repos/builtin/packages/bookleaf-cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/boost/boost_218.patch b/var/spack/repos/builtin/packages/boost/boost_218.patch
new file mode 100644
index 0000000000..ab4d9085f5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/boost_218.patch
@@ -0,0 +1,10 @@
+--- a/libs/python/src/numpy/numpy.cpp
++++ b/libs/python/src/numpy/numpy.cpp
+@@ -19,6 +19,7 @@ static void wrap_import_array()
+ static void * wrap_import_array()
+ {
+ import_array();
++ return NULL;
+ }
+ #endif
+
diff --git a/var/spack/repos/builtin/packages/boost/bootstrap-toolset.patch b/var/spack/repos/builtin/packages/boost/bootstrap-toolset.patch
new file mode 100644
index 0000000000..8aed227207
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/bootstrap-toolset.patch
@@ -0,0 +1,11 @@
+--- a/bootstrap.sh 2020-12-03 00:00:59.000000000 -0500
++++ a/bootstrap.sh 2021-01-08 13:38:30.000000000 -0500
+@@ -223,7 +223,7 @@
+ if test "x$BJAM" = x; then
+ $ECHO "Building B2 engine.."
+ pwd=`pwd`
+- (cd "$my_dir/tools/build/src/engine" && ./build.sh)
++ (cd "$my_dir/tools/build/src/engine" && ./build.sh "$TOOLSET")
+ if [ $? -ne 0 ]; then
+ echo
+ echo "Failed to build B2 build engine"
diff --git a/var/spack/repos/builtin/packages/boost/package.py b/var/spack/repos/builtin/packages/boost/package.py
index 089758fb73..a0c3656941 100644
--- a/var/spack/repos/builtin/packages/boost/package.py
+++ b/var/spack/repos/builtin/packages/boost/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,6 +25,8 @@ class Boost(Package):
maintainers = ['hainest']
version('develop', branch='develop', submodules=True)
+ version('1.76.0', sha256='f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41')
+ version('1.75.0', sha256='953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb')
version('1.74.0', sha256='83bfc1507731a0906e387fc28b7ef5417d591429e51e788417fe9ff025e116b1')
version('1.73.0', sha256='4eb3b8d442b426dc35346235c8733b5ae35ba431690e38c6a8263dce9fcbb402')
version('1.72.0', sha256='59c9b274bc451cf91a9ba1dd2c7fdcaf5d60b1b3aa83f2c9fa143417cc660722')
@@ -158,7 +160,13 @@ class Boost(Package):
description='Default symbol visibility in compiled libraries '
'(1.69.0 or later)')
+ # Unicode support
depends_on('icu4c', when='+icu')
+ depends_on('icu4c cxxstd=11', when='+icu cxxstd=11')
+ depends_on('icu4c cxxstd=14', when='+icu cxxstd=14')
+ depends_on('icu4c cxxstd=17', when='+icu cxxstd=17')
+ conflicts('cxxstd=98', when='+icu') # Requires c++11 at least
+
depends_on('python', when='+python')
depends_on('mpi', when='+mpi')
depends_on('bzip2', when='+iostreams')
@@ -253,7 +261,16 @@ class Boost(Package):
# Support bzip2 and gzip in other directory
# See https://github.com/boostorg/build/pull/154
- patch('boost_154.patch', when='@:1.63.99')
+ patch('boost_154.patch', when='@1.56.0:1.63.99')
+
+ # Backport Python3 import problem
+ # See https://github.com/boostorg/python/pull/218
+ patch('boost_218.patch', when='@1.63.0:1.67.99')
+
+ # Fix B2 bootstrap toolset during installation
+ # See https://github.com/spack/spack/issues/20757
+ # and https://github.com/spack/spack/pull/21408
+ patch("bootstrap-toolset.patch", when="@1.75")
def patch(self):
# Disable SSSE3 and AVX2 when using the NVIDIA compiler
@@ -270,7 +287,7 @@ class Boost(Package):
def url_for_version(self, version):
if version >= Version('1.63.0'):
- url = "https://dl.bintray.com/boostorg/release/{0}/source/boost_{1}.tar.bz2"
+ url = "https://boostorg.jfrog.io/artifactory/main/release/{0}/source/boost_{1}.tar.bz2"
else:
url = "http://downloads.sourceforge.net/project/boost/boost/{0}/boost_{1}.tar.bz2"
@@ -321,6 +338,11 @@ class Boost(Package):
if '+python' in spec:
options.append('--with-python=%s' % spec['python'].command.path)
+ if '+icu' in spec:
+ options.append('--with-icu')
+ else:
+ options.append('--without-icu')
+
with open('user-config.jam', 'w') as f:
# Boost may end up using gcc even though clang+gfortran is set in
# compilers.yaml. Make sure this does not happen:
@@ -356,8 +378,10 @@ class Boost(Package):
else:
options.append('variant=release')
- if '+icu_support' in spec:
- options.extend(['-s', 'ICU_PATH=%s' % spec['icu'].prefix])
+ if '+icu' in spec:
+ options.extend(['-s', 'ICU_PATH=%s' % spec['icu4c'].prefix])
+ else:
+ options.append('--disable-icu')
if '+iostreams' in spec:
options.extend([
@@ -522,7 +546,7 @@ class Boost(Package):
threading_opts = self.determine_b2_options(spec, b2_options)
- b2('--clean')
+ b2('--clean', *b2_options)
# In theory it could be done on one call but it fails on
# Boost.MPI if the threading options are not separated.
diff --git a/var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py b/var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py
index 93ae4a8322..f6b92d2744 100644
--- a/var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py
+++ b/var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/botan/package.py b/var/spack/repos/builtin/packages/botan/package.py
index 883f7a5e8a..87005a4a44 100644
--- a/var/spack/repos/builtin/packages/botan/package.py
+++ b/var/spack/repos/builtin/packages/botan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,9 @@ class Botan(Package):
maintainers = ['aumuell']
+ version('2.17.2', sha256='ebe27dfe2b55d7e02bf520e926606c48b76b22facb483256b13ab38e018e1e6c')
+ version('2.17.1', sha256='741358b3f1638ed7d9b2f59b4e344aa46f4966b15958b5434c0ac1580df0c0c1')
+ version('2.17.0', sha256='b97044b312aa718349af7851331b064bc7bd5352400d5f80793bace427d01343')
version('2.16.0', sha256='92ed6ebc918d86bd1b04221ca518af4cf29cc326c4760740bd2d22e61cea2628')
version('2.15.0', sha256='d88af1307f1fefac79aa4f2f524699478d69ce15a857cf2d0a90ac6bf2a50009')
version('2.14.0', sha256='0c10f12b424a40ee19bde00292098e201d7498535c062d8d5b586d07861a54b5')
diff --git a/var/spack/repos/builtin/packages/bowtie/package.py b/var/spack/repos/builtin/packages/bowtie/package.py
index e473925796..a3120f5789 100644
--- a/var/spack/repos/builtin/packages/bowtie/package.py
+++ b/var/spack/repos/builtin/packages/bowtie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bowtie2/package.py b/var/spack/repos/builtin/packages/bowtie2/package.py
index e09ea00e50..df24b34ff1 100644
--- a/var/spack/repos/builtin/packages/bowtie2/package.py
+++ b/var/spack/repos/builtin/packages/bowtie2/package.py
@@ -1,10 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-class Bowtie2(Package):
+class Bowtie2(MakefilePackage):
"""Bowtie 2 is an ultrafast and memory-efficient tool for aligning
sequencing reads to long reference sequences"""
@@ -25,49 +25,49 @@ class Bowtie2(Package):
depends_on('perl', type='run')
depends_on('python', type='run')
depends_on('zlib', when='@2.3.1:')
+ depends_on('simde', type='link')
patch('bowtie2-2.2.5.patch', when='@2.2.5', level=0)
patch('bowtie2-2.3.1.patch', when='@2.3.1', level=0)
patch('bowtie2-2.3.0.patch', when='@2.3.0', level=0)
- resource(name='simde', git="https://github.com/nemequ/simde",
- destination='.', when='target=aarch64:')
# seems to have trouble with 6's -std=gnu++14
conflicts('%gcc@6:', when='@:2.3.1')
+ conflicts('^intel-oneapi-tbb', when='@:2.3.5.1')
conflicts('@:2.3.5.0', when='target=aarch64:')
conflicts('@2.4.1', when='target=aarch64:')
- def patch(self):
- if self.spec.target.family == 'aarch64':
- copy_tree('simde', 'third_party/simde')
- if self.spec.satisfies('%gcc@:4.8.9'):
- filter_file('-fopenmp-simd', '', 'Makefile')
+ def edit(self, spec, prefix):
+ kwargs = {'ignore_absent': True, 'backup': False, 'string': False}
- @run_before('install')
- def filter_sbang(self):
- """Run before install so that the standard Spack sbang install hook
- can fix up the path to the perl|python binary.
- """
+ match = '^#!/usr/bin/env perl'
+ perl = spec['perl'].command
+ substitute = "#!{perl}".format(perl=perl)
+ files = ['bowtie2', ]
+ filter_file(match, substitute, *files, **kwargs)
- with working_dir(self.stage.source_path):
- kwargs = {'ignore_absent': True, 'backup': False, 'string': False}
+ match = '^#!/usr/bin/env python.*'
+ python = spec['python'].command
+ substitute = "#!{python}".format(python=python)
+ files = ['bowtie2-build', 'bowtie2-inspect']
+ filter_file(match, substitute, *files, **kwargs)
- match = '^#!/usr/bin/env perl'
- perl = self.spec['perl'].command
- substitute = "#!{perl}".format(perl=perl)
- files = ['bowtie2', ]
- filter_file(match, substitute, *files, **kwargs)
+ match = '-Ithird_party/simde'
+ simdepath = spec['simde'].prefix.include
+ substitute = "-I{simdepath}".format(simdepath=simdepath)
+ files = ['Makefile']
+ filter_file(match, substitute, *files, **kwargs)
- match = '^#!/usr/bin/env python'
- python = self.spec['python'].command
- substitute = "#!{python}".format(python=python)
- files = ['bowtie2-build', 'bowtie2-inspect']
- filter_file(match, substitute, *files, **kwargs)
-
- def install(self, spec, prefix):
- make_arg = []
- if self.spec.target.family == 'aarch64':
+ @property
+ def build_targets(self):
+ make_arg = ['PREFIX={0}'.format(self.prefix)]
+ if self.spec.satisfies('target=aarch64:'):
make_arg.append('POPCNT_CAPABILITY=0')
- make(*make_arg)
- mkdirp(prefix.bin)
- install('bowtie2*', prefix.bin)
+ return make_arg
+
+ @property
+ def install_targets(self):
+ if self.spec.satisfies('@:2.3.9'):
+ return ['prefix={0}'.format(self.prefix), 'install']
+ else:
+ return ['PREFIX={0}'.format(self.prefix), 'install']
diff --git a/var/spack/repos/builtin/packages/boxlib/package.py b/var/spack/repos/builtin/packages/boxlib/package.py
index def583de9f..492ef31eda 100644
--- a/var/spack/repos/builtin/packages/boxlib/package.py
+++ b/var/spack/repos/builtin/packages/boxlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bpp-core/package.py b/var/spack/repos/builtin/packages/bpp-core/package.py
index 02eb02681b..95f27290f1 100644
--- a/var/spack/repos/builtin/packages/bpp-core/package.py
+++ b/var/spack/repos/builtin/packages/bpp-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class BppCore(CMakePackage):
homepage = "http://biopp.univ-montp2.fr/wiki/index.php/Installation"
url = "http://biopp.univ-montp2.fr/repos/sources/bpp-core-2.2.0.tar.gz"
+ version('2.4.1', sha256='1150b8ced22cff23dd4770d7c23fad11239070b44007740e77407f0d746c0af6')
version('2.2.0', sha256='aacd4afddd1584ab6bfa1ff6931259408f1d39958a0bdc5f78bf1f9ee4e98b79')
depends_on('cmake@2.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/bpp-phyl-omics/package.py b/var/spack/repos/builtin/packages/bpp-phyl-omics/package.py
index f78c599ba1..21db65d055 100644
--- a/var/spack/repos/builtin/packages/bpp-phyl-omics/package.py
+++ b/var/spack/repos/builtin/packages/bpp-phyl-omics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bpp-phyl/package.py b/var/spack/repos/builtin/packages/bpp-phyl/package.py
index a0b73d804d..2e75ecbe49 100644
--- a/var/spack/repos/builtin/packages/bpp-phyl/package.py
+++ b/var/spack/repos/builtin/packages/bpp-phyl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bpp-seq-omics/package.py b/var/spack/repos/builtin/packages/bpp-seq-omics/package.py
index 922684ed6a..70e66ede95 100644
--- a/var/spack/repos/builtin/packages/bpp-seq-omics/package.py
+++ b/var/spack/repos/builtin/packages/bpp-seq-omics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bpp-seq/package.py b/var/spack/repos/builtin/packages/bpp-seq/package.py
index 57141e3afb..04b2a8e55a 100644
--- a/var/spack/repos/builtin/packages/bpp-seq/package.py
+++ b/var/spack/repos/builtin/packages/bpp-seq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class BppSeq(CMakePackage):
homepage = "http://biopp.univ-montp2.fr/wiki/index.php/Installation"
url = "http://biopp.univ-montp2.fr/repos/sources/bpp-seq-2.2.0.tar.gz"
+ version('2.4.1', sha256='dbfcb04803e4b7f08f9f159da8a947c91906c3ca8b20683ac193f6dc524d4655')
version('2.2.0', sha256='0927d7fb0301c1b99a7353d5876deadb4a3040776cc74e8fe1c366fe920e7b6b')
depends_on('cmake@2.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/bpp-suite/package.py b/var/spack/repos/builtin/packages/bpp-suite/package.py
index 889a25de49..015362338b 100644
--- a/var/spack/repos/builtin/packages/bpp-suite/package.py
+++ b/var/spack/repos/builtin/packages/bpp-suite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bracken/package.py b/var/spack/repos/builtin/packages/bracken/package.py
index bc250f8b1e..88a3ee4109 100644
--- a/var/spack/repos/builtin/packages/bracken/package.py
+++ b/var/spack/repos/builtin/packages/bracken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/braker/package.py b/var/spack/repos/builtin/packages/braker/package.py
index b3f0f95737..b079393387 100644
--- a/var/spack/repos/builtin/packages/braker/package.py
+++ b/var/spack/repos/builtin/packages/braker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Braker(Package):
url = "https://github.com/Gaius-Augustus/BRAKER/archive/v2.1.4.tar.gz"
list_url = "http://bioinf.uni-greifswald.de/augustus/binaries/old"
+ version('2.1.6', sha256='eef3c4037364472988a010322cbd79b5171158f9c016f4383809adade4866c06')
version('2.1.4', sha256='d48af5649cc879343046f9ddf180fe2c709b5810e0b78cf314bf298514d31d52')
version('1.11', sha256='cb2d9abe1720ed58753d362eee4af3791007efc617754804882d31f9fe2eab00',
url='http://bioinf.uni-greifswald.de/augustus/binaries/old/BRAKER1_v1.11.tar.gz')
diff --git a/var/spack/repos/builtin/packages/branson/package.py b/var/spack/repos/builtin/packages/branson/package.py
index a5489668c3..91b844f63a 100644
--- a/var/spack/repos/builtin/packages/branson/package.py
+++ b/var/spack/repos/builtin/packages/branson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,7 +27,7 @@ class Branson(CMakePackage):
depends_on('mpi@2:')
depends_on('boost', when='@:0.81')
depends_on('metis')
- depends_on('parmetis', when='@:0.82')
+ depends_on('parmetis', when='@:0.81')
root_cmakelists_dir = 'src'
diff --git a/var/spack/repos/builtin/packages/breakdancer/package.py b/var/spack/repos/builtin/packages/breakdancer/package.py
index 0852d763c2..606b153e27 100644
--- a/var/spack/repos/builtin/packages/breakdancer/package.py
+++ b/var/spack/repos/builtin/packages/breakdancer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bref3/package.py b/var/spack/repos/builtin/packages/bref3/package.py
index 521f2f1043..d46e56e225 100644
--- a/var/spack/repos/builtin/packages/bref3/package.py
+++ b/var/spack/repos/builtin/packages/bref3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class Bref3(Package):
homepage = "http://faculty.washington.edu/browning/beagle/beagle.html"
- version('2019-11-25', sha256='969c0881050c4a48d19be9ea64bf49fa68c1403b69f9f739bbfd865dda639b2d',
+ version('2019-11-25', sha256='969c0881050c4a48d19be9ea64bf49fa68c1403b69f9f739bbfd865dda639b2d',
expand=False, url='http://faculty.washington.edu/browning/beagle/bref3.25Nov19.28d.jar')
version('2019-07-12', sha256='8a9c3b6c38e36ef4c05a61108f083005fd985026c67d75a8173088f88816a202',
expand=False, url='https://faculty.washington.edu/browning/beagle/bref3.12Jul19.0df.jar')
diff --git a/var/spack/repos/builtin/packages/breseq/package.py b/var/spack/repos/builtin/packages/breseq/package.py
index 4efb1207fe..363f6b4987 100644
--- a/var/spack/repos/builtin/packages/breseq/package.py
+++ b/var/spack/repos/builtin/packages/breseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bridger/package.py b/var/spack/repos/builtin/packages/bridger/package.py
index dbd4bb3f75..88f06eb22e 100644
--- a/var/spack/repos/builtin/packages/bridger/package.py
+++ b/var/spack/repos/builtin/packages/bridger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/brigand/package.py b/var/spack/repos/builtin/packages/brigand/package.py
index afb175dd45..4f6b1d0c9a 100644
--- a/var/spack/repos/builtin/packages/brigand/package.py
+++ b/var/spack/repos/builtin/packages/brigand/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/brltty/package.py b/var/spack/repos/builtin/packages/brltty/package.py
index a5d047c954..764627e27a 100644
--- a/var/spack/repos/builtin/packages/brltty/package.py
+++ b/var/spack/repos/builtin/packages/brltty/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/brotli/package.py b/var/spack/repos/builtin/packages/brotli/package.py
index f5f2e478ac..ec3396cada 100644
--- a/var/spack/repos/builtin/packages/brotli/package.py
+++ b/var/spack/repos/builtin/packages/brotli/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/brpc/package.py b/var/spack/repos/builtin/packages/brpc/package.py
index d5481d300b..a336311eaa 100644
--- a/var/spack/repos/builtin/packages/brpc/package.py
+++ b/var/spack/repos/builtin/packages/brpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/brynet/package.py b/var/spack/repos/builtin/packages/brynet/package.py
new file mode 100644
index 0000000000..7f288ba9b4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/brynet/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Brynet(CMakePackage):
+ """Header Only Cross platform high performance TCP network library
+ using C++ 11."""
+
+ homepage = "https://github.com/IronsDu/brynet"
+ url = "https://github.com/IronsDu/brynet/archive/v1.0.8.tar.gz"
+
+ version('1.10.0', sha256='a7bc20c4a2cc2f0f29af56e9355b8769256785850ddedcef226e9562e97d05cf')
+ version('1.0.8', sha256='e37dee5fa14acec99bdd7ce8530a00ff5116f608f0a5401cd2e32e10f23975fc')
+ version('1.0.7', sha256='60116fccff108d03f3ff0a3d5c1fb5ad442bad7ef155bf1a3c7819ffc9d57524')
+ version('1.0.6', sha256='5e94b5b64fbdfbcb4e33b11fb7832cf0ca3898ab6b6461867182598bab7ca65f')
+
+ def cmake_args(self):
+ args = []
+ args.append('-Dbrynet_BUILD_EXAMPLES=ON')
+ args.append('-Dbrynet_BUILD_TESTS=ON')
+ return args
diff --git a/var/spack/repos/builtin/packages/bsseeker2/package.py b/var/spack/repos/builtin/packages/bsseeker2/package.py
index 6b909156d1..995d4fe453 100644
--- a/var/spack/repos/builtin/packages/bsseeker2/package.py
+++ b/var/spack/repos/builtin/packages/bsseeker2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bubblewrap/package.py b/var/spack/repos/builtin/packages/bubblewrap/package.py
index dc00c56148..f39c42e20f 100644
--- a/var/spack/repos/builtin/packages/bubblewrap/package.py
+++ b/var/spack/repos/builtin/packages/bubblewrap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bucky/package.py b/var/spack/repos/builtin/packages/bucky/package.py
index 41337e7e84..03c691a0b4 100644
--- a/var/spack/repos/builtin/packages/bucky/package.py
+++ b/var/spack/repos/builtin/packages/bucky/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/buddy/package.py b/var/spack/repos/builtin/packages/buddy/package.py
index d6e92bb9b3..c7d261f1ca 100644
--- a/var/spack/repos/builtin/packages/buddy/package.py
+++ b/var/spack/repos/builtin/packages/buddy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bumpversion/package.py b/var/spack/repos/builtin/packages/bumpversion/package.py
index ac7e839153..fc0f4de381 100644
--- a/var/spack/repos/builtin/packages/bumpversion/package.py
+++ b/var/spack/repos/builtin/packages/bumpversion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class Bumpversion(PythonPackage):
"""Version-bump your software with a single command."""
- homepage = "https://pypi.python.org/pypi/bumpversion"
- url = "https://pypi.io/packages/source/b/bumpversion/bumpversion-0.5.0.tar.gz"
+ pypi = "bumpversion/bumpversion-0.5.0.tar.gz"
version('0.5.3', sha256='6744c873dd7aafc24453d8b6a1a0d6d109faf63cd0cd19cb78fd46e74932c77e')
version('0.5.0', sha256='030832b9b46848e1c1ac6678dba8242a021e35e908b65565800c9650291117dc')
diff --git a/var/spack/repos/builtin/packages/busco/package.py b/var/spack/repos/builtin/packages/busco/package.py
index a485dfabfe..67c50411fa 100644
--- a/var/spack/repos/builtin/packages/busco/package.py
+++ b/var/spack/repos/builtin/packages/busco/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/busybox/package.py b/var/spack/repos/builtin/packages/busybox/package.py
index 8b8d11c534..bc22704348 100644
--- a/var/spack/repos/builtin/packages/busybox/package.py
+++ b/var/spack/repos/builtin/packages/busybox/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/butter/package.py b/var/spack/repos/builtin/packages/butter/package.py
index b06126e339..ff0042211d 100644
--- a/var/spack/repos/builtin/packages/butter/package.py
+++ b/var/spack/repos/builtin/packages/butter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/butterflypack/package.py b/var/spack/repos/builtin/packages/butterflypack/package.py
index 8926c2a865..aa145b28bf 100644
--- a/var/spack/repos/builtin/packages/butterflypack/package.py
+++ b/var/spack/repos/builtin/packages/butterflypack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -48,9 +48,6 @@ class Butterflypack(CMakePackage):
def cmake_args(self):
spec = self.spec
- def on_off(varstr):
- return 'ON' if varstr in spec else 'OFF'
-
args = [
'-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
'-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
@@ -60,7 +57,7 @@ class Butterflypack(CMakePackage):
'-DTPL_SCALAPACK_LIBRARIES=%s' % spec['scalapack'].
libs.joined(";"),
'-DTPL_ARPACK_LIBRARIES=%s' % spec['arpack-ng'].libs.joined(";"),
- '-DBUILD_SHARED_LIBS=%s' % on_off('+shared'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
]
return args
diff --git a/var/spack/repos/builtin/packages/bwa/bwa_for_aarch64.patch b/var/spack/repos/builtin/packages/bwa/bwa_for_aarch64.patch
index 2bebcb5023..995b03193f 100644
--- a/var/spack/repos/builtin/packages/bwa/bwa_for_aarch64.patch
+++ b/var/spack/repos/builtin/packages/bwa/bwa_for_aarch64.patch
@@ -7,7 +7,7 @@ index 9793e5e..2eecef4 100644
#include <stdint.h>
#include <assert.h>
-#include <emmintrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#include "ksw.h"
#ifdef USE_MALLOC_WRAPPERS
diff --git a/var/spack/repos/builtin/packages/bwa/package.py b/var/spack/repos/builtin/packages/bwa/package.py
index 266ac915e3..65a3ae7bc8 100644
--- a/var/spack/repos/builtin/packages/bwa/package.py
+++ b/var/spack/repos/builtin/packages/bwa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bwtool/package.py b/var/spack/repos/builtin/packages/bwtool/package.py
index 8bdaa4b3ec..6bc319819b 100644
--- a/var/spack/repos/builtin/packages/bwtool/package.py
+++ b/var/spack/repos/builtin/packages/bwtool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/byacc/package.py b/var/spack/repos/builtin/packages/byacc/package.py
index e262ab0420..2c20821e95 100644
--- a/var/spack/repos/builtin/packages/byacc/package.py
+++ b/var/spack/repos/builtin/packages/byacc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/byobu/package.py b/var/spack/repos/builtin/packages/byobu/package.py
index dd7d5babb8..d301845f49 100644
--- a/var/spack/repos/builtin/packages/byobu/package.py
+++ b/var/spack/repos/builtin/packages/byobu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/byte-unixbench/package.py b/var/spack/repos/builtin/packages/byte-unixbench/package.py
index 96aecd8fa4..84aabb8d7f 100644
--- a/var/spack/repos/builtin/packages/byte-unixbench/package.py
+++ b/var/spack/repos/builtin/packages/byte-unixbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/byteman/package.py b/var/spack/repos/builtin/packages/byteman/package.py
index 7656d0ef52..2c28195f47 100644
--- a/var/spack/repos/builtin/packages/byteman/package.py
+++ b/var/spack/repos/builtin/packages/byteman/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/bzip2/package.py b/var/spack/repos/builtin/packages/bzip2/package.py
index d3700a8a40..f3211d1c42 100644
--- a/var/spack/repos/builtin/packages/bzip2/package.py
+++ b/var/spack/repos/builtin/packages/bzip2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,6 +25,8 @@ class Bzip2(Package, SourcewarePackage):
version('1.0.6', sha256='a2848f34fcd5d6cf47def00461fcb528a0484d8edef8208d6d2e2909dc61d9cd')
variant('shared', default=True, description='Enables the build of shared libraries.')
+ variant('pic', default=False, description='Build static libraries with PIC')
+ variant('debug', default=False, description='Enable debug symbols and disable optimization')
depends_on('diffutils', type='build')
@@ -43,7 +45,20 @@ class Bzip2(Package, SourcewarePackage):
'libbz2', root=self.prefix, shared=shared, recursive=True
)
+ def flag_handler(self, name, flags):
+ if name == 'cflags':
+ if '+pic' in self.spec:
+ flags.append(self.compiler.cc_pic_flag)
+ if '+debug' in self.spec:
+ flags.append('-g')
+ return(flags, None, None)
+
def patch(self):
+ if self.spec.satisfies('+debug'):
+ for makefile in ['Makefile', 'Makefile-libbz2_so']:
+ filter_file(r'-O ', '-O0 ', makefile)
+ filter_file(r'-O2 ', '-O0 ', makefile)
+
# bzip2 comes with two separate Makefiles for static and dynamic builds
# Tell both to use Spack's compiler wrapper instead of GCC
filter_file(r'^CC=gcc', 'CC={0}'.format(spack_cc), 'Makefile')
@@ -52,7 +67,7 @@ class Bzip2(Package, SourcewarePackage):
)
# The Makefiles use GCC flags that are incompatible with PGI
- if self.spec.satisfies('%pgi') or self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%pgi') or self.spec.satisfies('%nvhpc@:20.11'):
filter_file('-Wall -Winline', '-Minform=inform', 'Makefile')
filter_file('-Wall -Winline', '-Minform=inform',
'Makefile-libbz2_so')
diff --git a/var/spack/repos/builtin/packages/c-ares/package.py b/var/spack/repos/builtin/packages/c-ares/package.py
index 8cd7fd4b7b..616cb4d02f 100644
--- a/var/spack/repos/builtin/packages/c-ares/package.py
+++ b/var/spack/repos/builtin/packages/c-ares/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/c-blosc/package.py b/var/spack/repos/builtin/packages/c-blosc/package.py
index 7128059056..2fb292a19d 100644
--- a/var/spack/repos/builtin/packages/c-blosc/package.py
+++ b/var/spack/repos/builtin/packages/c-blosc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class CBlosc(CMakePackage):
homepage = "http://www.blosc.org"
url = "https://github.com/Blosc/c-blosc/archive/v1.11.1.tar.gz"
+ version('1.21.0', sha256='b0ef4fda82a1d9cbd11e0f4b9685abf14372db51703c595ecd4d76001a8b342d')
version('1.17.0', sha256='75d98c752b8cf0d4a6380a3089d56523f175b0afa2d0cf724a1bd0a1a8f975a4')
version('1.16.3', sha256='bec56cb0956725beb93d50478e918aca09f489f1bfe543dbd3087827a7344396')
version('1.15.0', sha256='dbbb01f9fedcdf2c2ff73296353a9253f44ce9de89c081cbd8146170dce2ba8f')
diff --git a/var/spack/repos/builtin/packages/c-blosc2/package.py b/var/spack/repos/builtin/packages/c-blosc2/package.py
index 98b4326f06..82206d28fe 100644
--- a/var/spack/repos/builtin/packages/c-blosc2/package.py
+++ b/var/spack/repos/builtin/packages/c-blosc2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,11 +11,13 @@ class CBlosc2(CMakePackage):
other bells and whistles"""
homepage = "http://www.blosc.org"
+ url = "https://github.com/Blosc/c-blosc2/archive/refs/tags/v2.0.0.rc1.tar.gz"
git = "https://github.com/Blosc/c-blosc2.git"
maintainers = ['ax3l']
version('develop', branch='master')
+ version('2.0.0.rc1', sha256='c30b72af5446f052bad1791000e5a44d156c96b0e39b4bc8e9f97a013c7d1b69')
variant('avx2', default=True, description='Enable AVX2 support')
@@ -58,12 +60,9 @@ class CBlosc2(CMakePackage):
'-DPREFER_EXTERNAL_ZSTD=ON',
'-DDEACTIVATE_AVX2={0}'.format(
'ON' if '~avx2' in spec else 'OFF'),
- '-DBUILD_TESTS={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
- '-DBUILD_BENCHMARKS={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
- '-DBUILD_EXAMPLES={0}'.format(
- 'ON' if self.run_tests else 'OFF')
+ self.define('BUILD_TESTS', self.run_tests),
+ self.define('BUILD_BENCHMARKS', self.run_tests),
+ self.define('BUILD_EXAMPLES', self.run_tests)
]
return args
diff --git a/var/spack/repos/builtin/packages/c-lime/package.py b/var/spack/repos/builtin/packages/c-lime/package.py
index 525861a161..aefc97b8fd 100644
--- a/var/spack/repos/builtin/packages/c-lime/package.py
+++ b/var/spack/repos/builtin/packages/c-lime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/c/package.py b/var/spack/repos/builtin/packages/c/package.py
index 72a3343aa1..e49139136f 100644
--- a/var/spack/repos/builtin/packages/c/package.py
+++ b/var/spack/repos/builtin/packages/c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ca-certificates-mozilla/package.py b/var/spack/repos/builtin/packages/ca-certificates-mozilla/package.py
new file mode 100644
index 0000000000..e81cb568aa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ca-certificates-mozilla/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class CaCertificatesMozilla(Package):
+ """The Mozilla CA certificate store in PEM format"""
+
+ homepage = "https://curl.se/docs/caextract.html"
+ url = "https://curl.se/ca/cacert-2021-04-13.pem"
+
+ maintainers = ['haampie']
+
+ version('2021-04-13', sha256='533610ad2b004c1622a40622f86ced5e89762e1c0e4b3ae08b31b240d863e91f', expand=False)
+ version('2021-01-19', sha256='e010c0c071a2c79a76aa3c289dc7e4ac4ed38492bfda06d766a80b707ebd2f29', expand=False)
+ version('2020-12-08', sha256='313d562594ebd07846ad6b840dd18993f22e0f8b3f275d9aacfae118f4f00fb7', expand=False)
+ version('2020-10-14', sha256='bb28d145ed1a4ee67253d8ddb11268069c9dafe3db25a9eee654974c4e43eee5', expand=False)
+ version('2020-07-22', sha256='2782f0f8e89c786f40240fc1916677be660fb8d8e25dede50c9f6f7b0c2c2178', expand=False)
+ version('2020-06-24', sha256='726889705b00f736200ed7999f7a50021b8735d53228d679c4e6665aa3b44987', expand=False)
+ version('2020-01-01', sha256='adf770dfd574a0d6026bfaa270cb6879b063957177a991d453ff1d302c02081f', expand=False)
+ version('2019-11-27', sha256='0d98a1a961aab523c9dc547e315e1d79e887dea575426ff03567e455fc0b66b4', expand=False)
+ version('2019-10-16', sha256='5cd8052fcf548ba7e08899d8458a32942bf70450c9af67a0850b4c711804a2e4', expand=False)
+ version('2019-08-28', sha256='38b6230aa4bee062cd34ee0ff6da173250899642b1937fc130896290b6bd91e3', expand=False)
+
+ # Make spack checksum work
+ def url_for_version(self, version):
+ return "https://curl.se/ca/cacert-{0}.pem".format(version)
+
+ # Install the the pem file as share/cacert.pem
+ def install(self, spec, prefix):
+ share = join_path(self.prefix, 'share')
+ mkdir(share)
+ install("cacert-{0}.pem".format(spec.version),
+ join_path(share, "cacert.pem"))
diff --git a/var/spack/repos/builtin/packages/cabana/package.py b/var/spack/repos/builtin/packages/cabana/package.py
index b84bfa60b0..ff55a5661a 100644
--- a/var/spack/repos/builtin/packages/cabana/package.py
+++ b/var/spack/repos/builtin/packages/cabana/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cachefilesd/package.py b/var/spack/repos/builtin/packages/cachefilesd/package.py
index 7924d395eb..e8911872d7 100644
--- a/var/spack/repos/builtin/packages/cachefilesd/package.py
+++ b/var/spack/repos/builtin/packages/cachefilesd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/caffe/package.py b/var/spack/repos/builtin/packages/caffe/package.py
index 187bdc5764..1dab412e95 100644
--- a/var/spack/repos/builtin/packages/caffe/package.py
+++ b/var/spack/repos/builtin/packages/caffe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cairo/package.py b/var/spack/repos/builtin/packages/cairo/package.py
index 0092d0bfb1..eefd277572 100644
--- a/var/spack/repos/builtin/packages/cairo/package.py
+++ b/var/spack/repos/builtin/packages/cairo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cairomm/package.py b/var/spack/repos/builtin/packages/cairomm/package.py
index 39424e7c7e..8f6f2ef60e 100644
--- a/var/spack/repos/builtin/packages/cairomm/package.py
+++ b/var/spack/repos/builtin/packages/cairomm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/caliper/package.py b/var/spack/repos/builtin/packages/caliper/package.py
index fe55a69133..b550527189 100644
--- a/var/spack/repos/builtin/packages/caliper/package.py
+++ b/var/spack/repos/builtin/packages/caliper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
import sys
-class Caliper(CMakePackage):
+class Caliper(CMakePackage, CudaPackage):
"""Caliper is a program instrumentation and performance measurement
framework. It is designed as a performance analysis toolbox in a
library, allowing one to bake performance analysis capabilities
@@ -17,8 +17,12 @@ class Caliper(CMakePackage):
homepage = "https://github.com/LLNL/Caliper"
git = "https://github.com/LLNL/Caliper.git"
+ url = "https://github.com/LLNL/Caliper/archive/v2.5.0.tar.gz"
- version('master')
+ maintainers = ["daboehme"]
+
+ version('master', branch='master')
+ version('2.5.0', sha256='d553e60697d61c53de369b9ca464eb30710bda90fba9671201543b64eeac943c')
version('2.4.0', tag='v2.4.0')
version('2.3.0', tag='v2.3.0')
version('2.2.0', tag='v2.2.0')
@@ -36,15 +40,15 @@ class Caliper(CMakePackage):
description='Enable Adiak support')
variant('mpi', default=True,
description='Enable MPI wrappers')
- variant('dyninst', default=False,
- description='Enable symbol translation support with dyninst')
# libunwind has some issues on Mac
- variant('callpath', default=sys.platform != 'darwin',
- description='Enable callpath service (requires libunwind)')
+ variant('libunwind', default=sys.platform != 'darwin',
+ description='Enable stack unwind support')
+ variant('libdw', default=is_linux,
+ description='Enable DWARF symbol lookup')
# pthread_self() signature is incompatible with PAPI_thread_init() on Mac
variant('papi', default=sys.platform != 'darwin',
description='Enable PAPI service')
- variant('libpfm', default=is_linux,
+ variant('libpfm', default=False,
description='Enable libpfm (perf_events) service')
# Gotcha is Linux-only
variant('gotcha', default=is_linux,
@@ -53,18 +57,19 @@ class Caliper(CMakePackage):
description='Enable sampling support on Linux')
variant('sosflow', default=False,
description='Enable SOSflow support')
+ variant('fortran', default=False,
+ description='Enable Fortran support')
depends_on('adiak@0.1:0.99', when='@2.2: +adiak')
- depends_on('dyninst@10.0:10.99', when='@2: +dyninst')
-
depends_on('papi@5.3:5.99', when='@:2.2 +papi')
depends_on('papi@5.3:6.99', when='@2.3: +papi')
depends_on('libpfm4@4.8:4.99', when='+libpfm')
depends_on('mpi', when='+mpi')
- depends_on('unwind@1.2:1.99', when='+callpath')
+ depends_on('unwind@1.2:1.99', when='+libunwind')
+ depends_on('elfutils', when='+libdw')
depends_on('sosflow@spack', when='@1.0:1.99+sosflow')
@@ -72,12 +77,9 @@ class Caliper(CMakePackage):
depends_on('python', type='build')
# sosflow support not yet in 2.0
- conflicts('+sosflow', '@2.0.0:2.4.99')
+ conflicts('+sosflow', '@2.0.0:2.5.99')
conflicts('+adiak', '@:2.1.99')
-
- # The Dyninst 9.X used by v1.9.X is deprecated
- conflicts('+dyninst', when='@:1.99',
- msg='Dyninst unsupported by version <=2.0.1')
+ conflicts('+libdw', '@:2.4.99')
patch('for_aarch64.patch', when='target=aarch64:')
@@ -91,27 +93,46 @@ class Caliper(CMakePackage):
'-DBUILD_DOCS=Off',
'-DBUILD_SHARED_LIBS=%s' % ('On' if '+shared' in spec else 'Off'),
'-DWITH_ADIAK=%s' % ('On' if '+adiak' in spec else 'Off'),
- '-DWITH_DYNINST=%s' % ('On' if '+dyninst' in spec else 'Off'),
- '-DWITH_CALLPATH=%s' % ('On' if '+callpath' in spec else 'Off'),
'-DWITH_GOTCHA=%s' % ('On' if '+gotcha' in spec else 'Off'),
'-DWITH_PAPI=%s' % ('On' if '+papi' in spec else 'Off'),
+ '-DWITH_LIBDW=%s' % ('On' if '+libdw' in spec else 'Off'),
'-DWITH_LIBPFM=%s' % ('On' if '+libpfm' in spec else 'Off'),
'-DWITH_SOSFLOW=%s' % ('On' if '+sosflow' in spec else 'Off'),
'-DWITH_SAMPLER=%s' % ('On' if '+sampler' in spec else 'Off'),
- '-DWITH_MPI=%s' % ('On' if '+mpi' in spec else 'Off')
+ '-DWITH_MPI=%s' % ('On' if '+mpi' in spec else 'Off'),
+ '-DWITH_FORTRAN=%s' % ('On' if '+fortran' in spec else 'Off')
]
if '+papi' in spec:
args.append('-DPAPI_PREFIX=%s' % spec['papi'].prefix)
+ if '+libdw' in spec:
+ args.append('-DLIBDW_PREFIX=%s' % spec['elfutils'].prefix)
if '+libpfm' in spec:
args.append('-DLIBPFM_INSTALL=%s' % spec['libpfm4'].prefix)
if '+sosflow' in spec:
args.append('-DSOS_PREFIX=%s' % spec['sosflow'].prefix)
- if '+callpath' in spec:
- args.append('-DLIBUNWIND_PREFIX=%s' % spec['libunwind'].prefix)
+
+ # -DWITH_CALLPATH was renamed -DWITH_LIBUNWIND in 2.5
+ callpath_flag = 'LIBUNWIND' if spec.satisfies('@2.5:') else 'CALLPATH'
+ if '+libunwind' in spec:
+ args.append('-DLIBUNWIND_PREFIX=%s' % spec['unwind'].prefix)
+ args.append('-DWITH_%s=On' % callpath_flag)
+ else:
+ args.append('-DWITH_%s=Off' % callpath_flag)
if '+mpi' in spec:
args.append('-DMPI_C_COMPILER=%s' % spec['mpi'].mpicc)
args.append('-DMPI_CXX_COMPILER=%s' % spec['mpi'].mpicxx)
+ if '+cuda' in spec:
+ args.append('-DCUDA_TOOLKIT_ROOT_DIR=%s' % spec['cuda'].prefix)
+ # technically only works with cuda 10.2+, otherwise cupti is in
+ # ${CUDA_TOOLKIT_ROOT_DIR}/extras/CUPTI
+ args.append('-DCUPTI_PREFIX=%s' % spec['cuda'].prefix)
+ args.append('-DWITH_NVTX=On')
+ args.append('-DWITH_CUPTI=On')
+ else:
+ args.append('-DWITH_NVTX=Off')
+ args.append('-DWITH_CUPTI=Off')
+
return args
diff --git a/var/spack/repos/builtin/packages/callflow/package.py b/var/spack/repos/builtin/packages/callflow/package.py
new file mode 100644
index 0000000000..051a9172d3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/callflow/package.py
@@ -0,0 +1,43 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Callflow(PythonPackage):
+ """CallFlow is an interactive visual analysis tool that provides a
+ high-level overview of CCTs together with semantic refinement
+ operations to progressively explore the CCTs."""
+
+ homepage = "https://github.com/LLNL/CallFlow"
+ url = "https://github.com/LLNL/CallFlow/archive/v1.1.0.tar.gz"
+ git = 'https://github.com/LLNL/CallFlow.git'
+
+ maintainers = ["bhatiaharsh", "jarusified"]
+
+ version('develop', branch='develop')
+ version('1.1.2', sha256='60d2327843469f42be9366ff31d7a6afc85021af4e38b7d6704b2d8c3da7ed36')
+ version('1.1.1', sha256='a52e6e0697a406dfe391225d3cc3c5c5a12a6c86b68f0f8e47777c79fd45cb28')
+ version('1.1.0', sha256='f8b875eb62fbac04b117e3c23fccff99d768158226a9b7fa222a2b2a6acafa44')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-pandas', type=('build', 'run'))
+ depends_on('py-hatchet', type=('build', 'run'))
+ depends_on('py-statsmodels', type=('build', 'run'))
+ depends_on('py-scikit-learn', type=('build', 'run'))
+
+ depends_on('py-colorlog', type=('build', 'run'))
+ depends_on('py-jsonschema', type=('build', 'run'))
+
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-networkx', type=('build', 'run'))
+
+ depends_on('py-ipython', type=('build', 'run'))
+ depends_on('py-flask-socketio', type=('build', 'run'))
+ depends_on('py-flask-cors', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/callpath/package.py b/var/spack/repos/builtin/packages/callpath/package.py
index 300f55e8d5..a055c67cb8 100644
--- a/var/spack/repos/builtin/packages/callpath/package.py
+++ b/var/spack/repos/builtin/packages/callpath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/camellia/package.py b/var/spack/repos/builtin/packages/camellia/package.py
index ba443a80af..857fe5ec69 100644
--- a/var/spack/repos/builtin/packages/camellia/package.py
+++ b/var/spack/repos/builtin/packages/camellia/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/camp/package.py b/var/spack/repos/builtin/packages/camp/package.py
index 882bfec528..66e1f245f2 100644
--- a/var/spack/repos/builtin/packages/camp/package.py
+++ b/var/spack/repos/builtin/packages/camp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,8 +19,10 @@ class Camp(CMakePackage, CudaPackage, ROCmPackage):
version('master', branch='master', submodules='True')
version('0.1.0', sha256='fd4f0f2a60b82a12a1d9f943f8893dc6fe770db493f8fae5ef6f7d0c439bebcc')
- depends_on('cmake@3.8:', type='build')
- depends_on('cmake@3.9:', type='build', when="+cuda")
+ # TODO: figure out gtest dependency and then set this default True.
+ variant('tests', default=False, description='Build tests')
+
+ depends_on('cub', when='+cuda')
def cmake_args(self):
spec = self.spec
@@ -54,7 +56,6 @@ class Camp(CMakePackage, CudaPackage, ROCmPackage):
else:
options.append('-DENABLE_HIP=OFF')
- options.append('-DENABLE_TESTS={0}'.format(
- "On" if self.run_tests else "Off"))
+ options.append(self.define_from_variant('ENABLE_TESTS', 'tests'))
return options
diff --git a/var/spack/repos/builtin/packages/camx/package.py b/var/spack/repos/builtin/packages/camx/package.py
index 473c60ca05..54c34a95c2 100644
--- a/var/spack/repos/builtin/packages/camx/package.py
+++ b/var/spack/repos/builtin/packages/camx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/canal/package.py b/var/spack/repos/builtin/packages/canal/package.py
index 3dd982a0e4..3600356c10 100644
--- a/var/spack/repos/builtin/packages/canal/package.py
+++ b/var/spack/repos/builtin/packages/canal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/candle-benchmarks/package.py b/var/spack/repos/builtin/packages/candle-benchmarks/package.py
index b0f276108f..8593e141cd 100644
--- a/var/spack/repos/builtin/packages/candle-benchmarks/package.py
+++ b/var/spack/repos/builtin/packages/candle-benchmarks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cantera/package.py b/var/spack/repos/builtin/packages/cantera/package.py
index 9846fff48d..fb6c857414 100644
--- a/var/spack/repos/builtin/packages/cantera/package.py
+++ b/var/spack/repos/builtin/packages/cantera/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/canu/package.py b/var/spack/repos/builtin/packages/canu/package.py
index 1bf0e0cca1..9ce5f7db1f 100644
--- a/var/spack/repos/builtin/packages/canu/package.py
+++ b/var/spack/repos/builtin/packages/canu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cap3/package.py b/var/spack/repos/builtin/packages/cap3/package.py
index 45feee4ef0..ad87342455 100644
--- a/var/spack/repos/builtin/packages/cap3/package.py
+++ b/var/spack/repos/builtin/packages/cap3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/capnproto/package.py b/var/spack/repos/builtin/packages/capnproto/package.py
index 2533e8aabe..48a3f4a70f 100644
--- a/var/spack/repos/builtin/packages/capnproto/package.py
+++ b/var/spack/repos/builtin/packages/capnproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Capnproto(AutotoolsPackage):
url = "https://capnproto.org/capnproto-c++-0.7.0.tar.gz"
git = "https://github.com/capnproto/capnproto"
+ version('0.8.0', sha256='d1f40e47574c65700f0ec98bf66729378efabe3c72bc0cda795037498541c10d')
version('0.7.0', sha256='c9a4c0bd88123064d483ab46ecee777f14d933359e23bff6fb4f4dbd28b4cd41')
def configure_args(self):
diff --git a/var/spack/repos/builtin/packages/capstone/package.py b/var/spack/repos/builtin/packages/capstone/package.py
index 619856ebac..9574fc8e5d 100644
--- a/var/spack/repos/builtin/packages/capstone/package.py
+++ b/var/spack/repos/builtin/packages/capstone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cardioid/package.py b/var/spack/repos/builtin/packages/cardioid/package.py
index b3effc28e4..10043b6240 100644
--- a/var/spack/repos/builtin/packages/cardioid/package.py
+++ b/var/spack/repos/builtin/packages/cardioid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/care/package.py b/var/spack/repos/builtin/packages/care/package.py
new file mode 100644
index 0000000000..0cd358c60a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/care/package.py
@@ -0,0 +1,131 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Care(CMakePackage, CudaPackage, ROCmPackage):
+ """
+ Algorithms for chai managed arrays.
+ """
+
+ homepage = "https://github.com/LLNL/CARE"
+ git = "https://github.com/LLNL/CARE.git"
+
+ version('develop', branch='develop', submodules='True')
+ version('master', branch='main', submodules='True')
+ version('0.3.0', tag='v0.3.0', submodules='True')
+ version('0.2.0', tag='v0.2.0', submodules='True')
+
+ variant('openmp', default=False, description='Build Shared Libs')
+ variant('implicit_conversions', default=True, description='Enable implicit'
+ 'conversions to/from raw pointers')
+ variant('benchmarks', default=True, description='Build benchmarks.')
+ variant('examples', default=True, description='Build examples.')
+ variant('docs', default=False, description='Build documentation')
+ variant('tests', default=False, description='Build tests')
+ variant('loop_fuser', default=False, description='Enable loop fusion capability')
+
+ depends_on('blt@0.4.0:', type='build', when='@0.3.1:')
+ depends_on('blt@:0.3.6', type='build', when='@:0.3.0')
+
+ depends_on('camp')
+ depends_on('umpire@develop')
+ depends_on('raja@develop')
+ depends_on('chai@develop+enable_pick~benchmarks')
+
+ # WARNING: this package currently only supports an internal cub
+ # package. This will cause a race condition if compiled with another
+ # package that uses cub. TODO: have all packages point to the same external
+ # cub package.
+ depends_on('camp+cuda', when='+cuda')
+ depends_on('umpire+cuda~shared', when='+cuda')
+ depends_on('cub', when='+cuda')
+ depends_on('raja+cuda~openmp', when='+cuda')
+ depends_on('chai+cuda~shared', when='+cuda')
+
+ # variants +rocm and amdgpu_targets are not automatically passed to
+ # dependencies, so do it manually.
+ depends_on('camp+rocm', when='+rocm')
+ depends_on('umpire+rocm', when='+rocm')
+ depends_on('raja+rocm~openmp', when='+rocm')
+ depends_on('chai+rocm', when='+rocm')
+ for val in ROCmPackage.amdgpu_targets:
+ depends_on('camp amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
+ depends_on('umpire amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
+ depends_on('raja amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
+ depends_on('chai amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
+
+ conflicts('+openmp', when='+rocm')
+ conflicts('+openmp', when='+cuda')
+
+ def cmake_args(self):
+ spec = self.spec
+ from_variant = self.define_from_variant
+
+ options = []
+ options.append('-DBLT_SOURCE_DIR={0}'.format(spec['blt'].prefix))
+
+ if '+cuda' in spec:
+ options.extend([
+ '-DENABLE_CUDA=ON',
+ '-DCUDA_TOOLKIT_ROOT_DIR=' + spec['cuda'].prefix,
+ '-DNVTOOLSEXT_DIR=' + spec['cuda'].prefix,
+ '-DCUB_DIR=' + spec['cub'].prefix])
+
+ if not spec.satisfies('cuda_arch=none'):
+ cuda_arch = spec.variants['cuda_arch'].value
+ # Please note that within care, CUDA_ARCH is assigned to -code
+ # and likewise CUDA_CODE is assigned to -arch, so these are
+ # intentionally flipped here.
+ options.append('-DCUDA_ARCH=sm_{0}'.format(cuda_arch[0]))
+ options.append('-DCUDA_CODE=compute_{0}'.format(cuda_arch[0]))
+ else:
+ options.append('-DENABLE_CUDA=OFF')
+
+ if '+rocm' in spec:
+ options.extend([
+ '-DENABLE_HIP=ON',
+ '-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix)])
+
+ archs = self.spec.variants['amdgpu_target'].value
+ if archs != 'none':
+ arch_str = ",".join(archs)
+ options.append(
+ '-DHIP_HIPCC_FLAGS=--amdgpu-target={0}'.format(arch_str)
+ )
+ else:
+ options.append('-DENABLE_HIP=OFF')
+
+ options.extend([
+ from_variant('CARE_ENABLE_IMPLICIT_CONVERSIONS',
+ 'implicit_conversions'),
+ from_variant('CARE_ENABLE_LOOP_FUSER', 'loop_fuser'),
+ self.define('CAMP_DIR', spec['camp'].prefix.share.camp.cmake),
+ self.define('UMPIRE_DIR', spec['umpire'].prefix.share.umpire.cmake),
+ self.define('RAJA_DIR', spec['raja'].prefix.share.raja.cmake),
+ self.define('CHAI_DIR', spec['chai'].prefix.share.chai.cmake),
+ from_variant('CARE_ENABLE_TESTS', 'tests'),
+ ])
+
+ # For tests to work, we also need BLT_ENABLE_TESTS to be on.
+ # This will take care of the gtest dependency. CARE developers should
+ # consider consolidating these flags in the future.
+ options.append(from_variant('BLT_ENABLE_TESTS', 'tests'))
+
+ # There are both CARE_ENABLE_* and ENABLE_* variables in here because
+ # one controls the BLT infrastructure and the other controls the CARE
+ # infrastructure. The goal is to just be able to use the CARE_ENABLE_*
+ # variables, but CARE isn't set up correctly for that yet.
+ options.append(from_variant('ENABLE_BENCHMARKS', 'benchmarks'))
+ options.append(from_variant('CARE_ENABLE_BENCHMARKS', 'benchmarks'))
+
+ options.append(from_variant('ENABLE_EXAMPLES', 'examples'))
+ options.append(from_variant('CARE_ENABLE_EXAMPLES', 'examples'))
+
+ options.append(from_variant('ENABLE_DOCS', 'docs'))
+ options.append(from_variant('CARE_ENABLE_DOCS', 'docs'))
+
+ return options
diff --git a/var/spack/repos/builtin/packages/casacore/package.py b/var/spack/repos/builtin/packages/casacore/package.py
index 7fbb913de2..63c7d26772 100644
--- a/var/spack/repos/builtin/packages/casacore/package.py
+++ b/var/spack/repos/builtin/packages/casacore/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os
class Casacore(CMakePackage):
@@ -14,6 +15,7 @@ class Casacore(CMakePackage):
maintainers = ['mpokorny']
+ version('3.4.0', sha256='31f02ad2e26f29bab4a47a2a69e049d7bc511084a0b8263360e6157356f92ae1')
version('3.3.0', sha256='3a714644b908ef6e81489b792cc9b80f6d8267a275e15d38a42a6a5137d39d3d')
version('3.2.0', sha256='ae5d3786cb6dfdd7ebc5eecc0c724ff02bbf6929720bc23be43a027978e79a5f')
version('3.1.2', sha256='ac94f4246412eb45d503f1019cabe2bb04e3861e1f3254b832d9b1164ea5f281')
@@ -22,12 +24,14 @@ class Casacore(CMakePackage):
version('3.0.0', sha256='6f0e68fd77b5c96299f7583a03a53a90980ec347bff9dfb4c0abb0e2933e6bcb')
version('2.4.1', sha256='58eccc875053b2c6fe44fe53b6463030ef169597ec29926936f18d27b5087d63')
+ depends_on('cmake@3.7.1:', type='build')
+
variant('openmp', default=False, description='Build OpenMP support')
variant('shared', default=True, description='Build shared libraries')
variant('readline', default=True, description='Build readline support')
# see note below about the reason for disabling the "sofa" variant
# variant('sofa', default=False, description='Build SOFA support')
- variant('fftw', default=False, description='Build FFTW3 support')
+ variant('fftpack', default=False, description='Build FFTPack')
variant('hdf5', default=False, description='Build HDF5 support')
variant('python', default=False, description='Build python support')
@@ -42,9 +46,10 @@ class Casacore(CMakePackage):
depends_on('bison', type='build')
depends_on('blas')
depends_on('lapack')
- depends_on('cfitsio@3.181:')
+ depends_on('cfitsio')
depends_on('wcslib@4.20:+cfitsio')
- depends_on('fftw@3.0.0:~mpi precision=float,double', when='+fftw')
+ depends_on('fftw@3.0.0: precision=float,double', when='@3.4.0:')
+ depends_on('fftw@3.0.0: precision=float,double', when='~fftpack')
# SOFA dependency suffers the same problem in CMakeLists.txt as readline;
# force a dependency when building unit tests
depends_on('sofa-c', type='test')
@@ -61,15 +66,30 @@ class Casacore(CMakePackage):
args.append(self.define_from_variant('USE_OPENMP', 'openmp'))
args.append(self.define_from_variant('USE_READLINE', 'readline'))
args.append(self.define_from_variant('USE_HDF5', 'hdf5'))
- args.append(self.define_from_variant('USE_FFTW3', 'fftw'))
+
+ # fftw3 is required by casacore starting with v3.4.0, but the
+ # old fftpack is still available. For v3.4.0 and later, we
+ # always require FFTW3 dependency with the optional addition
+ # of FFTPack. In older casacore versions, only one of FFTW3 or
+ # FFTPack can be selected.
+ if spec.satisfies('@3.4.0:'):
+ if spec.satisfies('+fftpack'):
+ args.append('-DBUILD_FFTPACK_DEPRECATED=YES')
+ args.append(self.define('USE_FFTW3', True))
+ else:
+ args.append(self.define('USE_FFTW3', spec.satisfies('~fftpack')))
# Python2 and Python3 binding
- if '+python' not in spec:
+ if spec.satisfies('~python'):
args.extend(['-DBUILD_PYTHON=NO', '-DBUILD_PYTHON3=NO'])
- elif spec['python'].version >= Version('3.0.0'):
+ elif spec.satisfies('^python@3.0.0:'):
args.extend(['-DBUILD_PYTHON=NO', '-DBUILD_PYTHON3=YES'])
else:
args.extend(['-DBUILD_PYTHON=YES', '-DBUILD_PYTHON3=NO'])
args.append('-DBUILD_TESTING=OFF')
return args
+
+ def patch(self):
+ # Rely on CMake ability to find hdf5, available since CMake 3.7.X
+ os.remove('cmake/FindHDF5.cmake')
diff --git a/var/spack/repos/builtin/packages/cask/package.py b/var/spack/repos/builtin/packages/cask/package.py
index ed115ca3e6..e49079f65d 100644
--- a/var/spack/repos/builtin/packages/cask/package.py
+++ b/var/spack/repos/builtin/packages/cask/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/casper/package.py b/var/spack/repos/builtin/packages/casper/package.py
index a15365ccaa..962cda6fb6 100644
--- a/var/spack/repos/builtin/packages/casper/package.py
+++ b/var/spack/repos/builtin/packages/casper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cassandra/package.py b/var/spack/repos/builtin/packages/cassandra/package.py
index f80b3c173b..bb1f4aab59 100644
--- a/var/spack/repos/builtin/packages/cassandra/package.py
+++ b/var/spack/repos/builtin/packages/cassandra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/catalyst/package.py b/var/spack/repos/builtin/packages/catalyst/package.py
index 5806b0cd75..d55c7f669b 100644
--- a/var/spack/repos/builtin/packages/catalyst/package.py
+++ b/var/spack/repos/builtin/packages/catalyst/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -66,8 +66,8 @@ class Catalyst(CMakePackage):
depends_on('py-numpy', when='+python', type=('build', 'run'))
depends_on('py-numpy', when='+python3', type=('build', 'run'))
- depends_on('py-mpi4py', when='+python+mpi', type=('build', 'run'))
- depends_on('py-mpi4py', when='+python3+mpi', type=('build', 'run'))
+ depends_on('py-mpi4py', when='+python', type=('build', 'run'))
+ depends_on('py-mpi4py', when='+python3', type=('build', 'run'))
depends_on('gl@3.2:', when='+rendering')
depends_on('osmesa', when='+rendering+osmesa')
@@ -226,12 +226,12 @@ class Catalyst(CMakePackage):
'-DPARAVIEW_ENABLE_PYTHON:BOOL=ON',
'-DPYTHON_EXECUTABLE:FILEPATH=%s' %
spec['python'].command.path,
- '-DVTK_USE_SYSTEM_MPI4PY:BOOL=%s' % variant_bool('+mpi')
+ '-DVTK_USE_SYSTEM_MPI4PY:BOOL=ON'
])
else:
cmake_args.append('-DPARAVIEW_ENABLE_PYTHON:BOOL=OFF')
- if spec.platform == 'linux' and spec.target == 'aarch64':
+ if spec.platform == 'linux' and spec.target.family == 'aarch64':
cmake_args.append('-DCMAKE_CXX_FLAGS=-DPNG_ARM_NEON_OPT=0')
cmake_args.append('-DCMAKE_C_FLAGS=-DPNG_ARM_NEON_OPT=0')
diff --git a/var/spack/repos/builtin/packages/catch2/package.py b/var/spack/repos/builtin/packages/catch2/package.py
index a3a3593ded..2b7e468073 100644
--- a/var/spack/repos/builtin/packages/catch2/package.py
+++ b/var/spack/repos/builtin/packages/catch2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,9 +16,16 @@ class Catch2(CMakePackage):
maintainers = ["ax3l", "AndrewGaspar"]
# In-Development
- version('master', branch='master')
+ version('develop', branch='devel')
# Releases
+ version('3.0.0-preview3', sha256='06a4f903858f21c553e988f8b76c9c6915d1f95f95512d6a58c421e02a2c4975')
+ version('2.13.4', sha256='e7eb70b3d0ac2ed7dcf14563ad808740c29e628edde99e973adad373a2b5e4df', preferred=True)
+ version('2.13.3', sha256='fedc5b008f7eb574f45098e7c7138211c543f0f8ad04792090e790511697a877')
+ version('2.13.2', sha256='5e39d9199f4f174dc3c8896fb4cf0a2ce9b9c358ae759b87fade6d615ca2d27e')
+ version('2.13.1', sha256='36bcc9e6190923961be11e589d747e606515de95f10779e29853cfeae560bd6c')
+ version('2.13.0', sha256='4e6608d3fb0247e2aa988735bae2064381b0ec712f47beb766dd761838a546b6')
+ version('2.12.4', sha256='5436725bbc6ee131a0bc9545bef31f0adabbb21fbc39fb6f1b2a42c12e4f8107')
version('2.12.3', sha256='78425e7055cea5bad1ff8db7ea0d6dfc0722ece156be1ccf3597c15e674e6943')
version('2.12.1', sha256='e5635c082282ea518a8dd7ee89796c8026af8ea9068cd7402fb1615deacd91c3')
version('2.12.0', sha256='6606b754363d3a4521bfecf717dc1972c50dca282bd428dfb1370ec8b9c26918')
@@ -86,8 +93,7 @@ class Catch2(CMakePackage):
args.append('-DNO_SELFTEST={0}'.format(
'OFF' if self.run_tests else 'ON'))
elif spec.satisfies('@2.1.1:'):
- args.append('-DBUILD_TESTING:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'))
+ args.append(self.define('BUILD_TESTING', self.run_tests))
return args
@when('@:1.6.99')
diff --git a/var/spack/repos/builtin/packages/cbc/package.py b/var/spack/repos/builtin/packages/cbc/package.py
index 171e2a3c83..5c97bb86c2 100644
--- a/var/spack/repos/builtin/packages/cbc/package.py
+++ b/var/spack/repos/builtin/packages/cbc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cbench/package.py b/var/spack/repos/builtin/packages/cbench/package.py
index 8a24a54d6e..86453815c0 100644
--- a/var/spack/repos/builtin/packages/cbench/package.py
+++ b/var/spack/repos/builtin/packages/cbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cbflib/cbf_f16.patch b/var/spack/repos/builtin/packages/cbflib/cbf_f16.patch
new file mode 100644
index 0000000000..5f81d4e7e7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cbflib/cbf_f16.patch
@@ -0,0 +1,17 @@
+--- a/src/fcb_skip_whitespace.f90 2021-01-26 15:14:30.565029427 +0900
++++ b/src/fcb_skip_whitespace.f90 2021-01-26 15:15:01.016918388 +0900
+@@ -65,11 +65,11 @@
+ END IF
+ ELSE
+ SELECT CASE (LINE(IC))
+- CASE (Z'5C') ! backslash
++ CASE (INT(Z'5C')) ! backslash
+ IC = IC+1 ! force skip of next character
+- CASE (Z'28') ! open paren
++ CASE (INT(Z'28')) ! open paren
+ COMMENT_LEVEL = COMMENT_LEVEL+1;
+- CASE (Z'29') ! close paren
++ CASE (INT(Z'29')) ! close paren
+ COMMENT_LEVEL = COMMENT_LEVEL-1;
+ END SELECT
+ IC = IC+1;
diff --git a/var/spack/repos/builtin/packages/cbflib/cbf_int.patch b/var/spack/repos/builtin/packages/cbflib/cbf_int.patch
new file mode 100644
index 0000000000..a234859d5e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cbflib/cbf_int.patch
@@ -0,0 +1,11 @@
+--- a/src/cbf_ws.c 2021-01-26 15:31:04.793960741 +0900
++++ b/src/cbf_ws.c 2021-01-26 15:32:08.092795581 +0900
+@@ -1034,7 +1034,7 @@
+
+ const char * line;
+
+- char c, cprev, cprevprev, cprevprevprev;
++ int c, cprev, cprevprev, cprevprevprev;
+
+ size_t length;
+
diff --git a/var/spack/repos/builtin/packages/cbflib/checkint.c b/var/spack/repos/builtin/packages/cbflib/checkint.c
new file mode 100644
index 0000000000..7187d6a5f9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cbflib/checkint.c
@@ -0,0 +1,4 @@
+#include <limits.h>
+#if LONG_MAX == LLONG_MAX
+#error LONG=LLONG
+#endif
diff --git a/var/spack/repos/builtin/packages/cbflib/package.py b/var/spack/repos/builtin/packages/cbflib/package.py
new file mode 100644
index 0000000000..ed244db339
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cbflib/package.py
@@ -0,0 +1,43 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class Cbflib(MakefilePackage):
+ """CBFLIB is a library of ANSI-C functions providing a simple mechanism
+ for accessing Crystallographic Binary Files (CBF files) and
+ Image-supporting CIF (imgCIF) files."""
+
+ homepage = "http://www.bernstein-plus-sons.com/software/CBF/"
+ url = "https://downloads.sourceforge.net/project/cbflib/cbflib/CBFlib_0.9.2/CBFlib-0.9.2.tar.gz"
+
+ version('0.9.2', sha256='367e37e1908a65d5472e921150291332823a751206804866e752b793bca17afc')
+
+ depends_on('m4', type='build')
+
+ patch('cbf_f16.patch')
+ patch('cbf_int.patch')
+
+ def setup_build_environment(self, env):
+ ce = Executable(self.compiler.cc)
+ ce('-E', join_path(os.path.dirname(__file__), "checkint.c"),
+ output=str, error=str, fail_on_error=False)
+ if ce.returncode != 0:
+ env.set('CBF_DONT_USE_LONG_LONG', '1')
+
+ def edit(self, spec, prefix):
+ mf = FileFilter('Makefile')
+ mf.filter(r'^CC.+', "CC = {0}".format(spack_cc))
+ mf.filter(r'^C\+\+.+', "C++ = {0}".format(spack_cxx))
+ mf.filter('gfortran', spack_fc)
+ mf.filter(r'^INSTALLDIR .+', "INSTALLDIR = {0}".format(prefix))
+
+ def build(self, spec, prefix):
+ pass
+
+ def install(self, spec, prefix):
+ make('install', parallel=False)
diff --git a/var/spack/repos/builtin/packages/cblas/package.py b/var/spack/repos/builtin/packages/cblas/package.py
index 92ea521b94..f70a38fcf4 100644
--- a/var/spack/repos/builtin/packages/cblas/package.py
+++ b/var/spack/repos/builtin/packages/cblas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py b/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py
index 1ae389d801..dfa75ed1e4 100644
--- a/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,18 +29,18 @@ class CbtfArgonavisGui(QMakePackage):
# Dependencies for the openspeedshop cbtf packages.
depends_on("cbtf@develop", when='@develop')
- depends_on("cbtf@1.9.1.0:9999", when='@1.3.0.0:9999')
+ depends_on("cbtf@1.9.3:9999", when='@1.3.0.0:9999')
depends_on("cbtf-krell@develop", when='@develop')
- depends_on("cbtf-krell@1.9.1.0:9999", when='@1.3.0.0:9999')
+ depends_on("cbtf-krell@1.9.3:9999", when='@1.3.0.0:9999')
depends_on("cbtf-argonavis@develop", when='@develop')
- depends_on("cbtf-argonavis@1.9.1.0:9999", when='@1.3.0.0:9999')
+ depends_on("cbtf-argonavis@1.9.3:9999", when='@1.3.0.0:9999')
depends_on("cuda")
depends_on("openspeedshop-utils+cuda@develop", when='@develop')
- depends_on("openspeedshop-utils@2.3.1.3:+cuda", when='@1.3.0.0:9999')
+ depends_on("openspeedshop-utils@2.4.0:+cuda", when='@1.3.0.0:9999')
# For Xerces-C
depends_on("xerces-c")
diff --git a/var/spack/repos/builtin/packages/cbtf-argonavis/package.py b/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
index 371d2eb809..8c5ea4d3b1 100644
--- a/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,11 +14,9 @@ class CbtfArgonavis(CMakePackage):
git = "https://github.com/OpenSpeedShop/cbtf-argonavis.git"
version('develop', branch='master')
+ version('1.9.4.1', branch='1.9.4.1')
+ version('1.9.4', branch='1.9.4')
version('1.9.3', branch='1.9.3')
- version('1.9.2', branch='1.9.2')
- version('1.9.1.2', branch='1.9.1.2')
- version('1.9.1.1', branch='1.9.1.1')
- version('1.9.1.0', branch='1.9.1.0')
variant('cti', default=False,
description="Build MRNet with the CTI startup option")
@@ -27,52 +25,54 @@ class CbtfArgonavis(CMakePackage):
to point to target build.")
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
- variant('build_type', default='None', values=('None',),
- description='CMake build type')
+
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo'))
depends_on("cmake@3.0.2:", type='build')
# To specify ^elfutils@0.170 on the command line spack
# apparently needs/wants this dependency explicity here
# even though it is referenced downstream
- depends_on("elf", type="link")
+ depends_on("elfutils", type="link")
# For boost
- depends_on("boost@1.66.0:1.69.0")
+ depends_on("boost@1.70.0:")
# For MRNet
depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti', type=('build', 'link', 'run'))
depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop~cti', type=('build', 'link', 'run'))
- depends_on("mrnet@5.0.1-3+cti", when='@1.9.1.0:9999+cti', type=('build', 'link', 'run'))
- depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0:9999~cti', type=('build', 'link', 'run'))
+ depends_on("mrnet@5.0.1-3+cti", when='@1.9.3:9999+cti', type=('build', 'link', 'run'))
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.3:9999~cti', type=('build', 'link', 'run'))
# For CBTF
depends_on("cbtf@develop", when='@develop', type=('build', 'link', 'run'))
- depends_on("cbtf@1.9.1.0:9999", when='@1.9.1.0:9999', type=('build', 'link', 'run'))
+ depends_on("cbtf@1.9.3:9999", when='@1.9.3:9999', type=('build', 'link', 'run'))
# For CBTF with cti
depends_on("cbtf@develop+cti", when='@develop+cti', type=('build', 'link', 'run'))
- depends_on("cbtf@1.9.1.0:9999+cti", when='@1.9.1.0:9999+cti', type=('build', 'link', 'run'))
+ depends_on("cbtf@1.9.3:9999+cti", when='@1.9.3:9999+cti', type=('build', 'link', 'run'))
# For CBTF with runtime
depends_on("cbtf@develop+runtime", when='@develop+runtime', type=('build', 'link', 'run'))
- depends_on("cbtf@1.9.1.0:9999+runtime", when='@1.9.1.0:9999+runtime', type=('build', 'link', 'run'))
+ depends_on("cbtf@1.9.3:9999+runtime", when='@1.9.3:9999+runtime', type=('build', 'link', 'run'))
# For libmonitor
- depends_on("libmonitor@2013.02.18+krellpatch", type=('build', 'link', 'run'))
+ depends_on("libmonitor@2013.02.18+commrank", type=('build', 'link', 'run'))
# For PAPI
depends_on("papi@5.4.1:", type=('build', 'link', 'run'))
# For CBTF-KRELL
depends_on("cbtf-krell@develop", when='@develop', type=('build', 'link', 'run'))
- depends_on("cbtf-krell@1.9.1.0:9999", when='@1.9.1.0:9999', type=('build', 'link', 'run'))
+ depends_on("cbtf-krell@1.9.3:9999", when='@1.9.3:9999', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+cti', when='@develop+cti', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+cti', when='@1.9.1.0:9999+cti', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+cti', when='@1.9.3:9999+cti', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+runtime', when='@develop+runtime', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+runtime', when='@1.9.1.0:9999+runtime', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+runtime', when='@1.9.3:9999+runtime', type=('build', 'link', 'run'))
# For CUDA
depends_on("cuda")
@@ -83,25 +83,26 @@ class CbtfArgonavis(CMakePackage):
def cmake_args(self):
spec = self.spec
- compile_flags = "-O2 -g"
+ compile_flags = "-O2 -g -Wall"
cmake_args = [
- '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags,
- '-DCUDA_DIR=%s' % spec['cuda'].prefix,
- '-DCUDA_INSTALL_PATH=%s' % spec['cuda'].prefix,
+ '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DCUDA_DIR=%s' % spec['cuda'].prefix,
+ '-DCUDA_INSTALL_PATH=%s' % spec['cuda'].prefix,
'-DCUDA_TOOLKIT_ROOT_DIR=%s' % spec['cuda'].prefix,
- '-DCUPTI_DIR=%s' % spec['cuda'].prefix.extras.CUPTI,
- '-DCUPTI_ROOT=%s' % spec['cuda'].prefix.extras.CUPTI,
- '-DPAPI_ROOT=%s' % spec['papi'].prefix,
- '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
- '-DBOOST_ROOT=%s' % spec['boost'].prefix,
- '-DBoost_DIR=%s' % spec['boost'].prefix,
- '-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
- '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
- '-DBoost_NO_SYSTEM_PATHS=ON']
+ '-DCUPTI_DIR=%s' % spec['cuda'].prefix.extras.CUPTI,
+ '-DCUPTI_ROOT=%s' % spec['cuda'].prefix.extras.CUPTI,
+ '-DPAPI_ROOT=%s' % spec['papi'].prefix,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DBoost_NO_SYSTEM_PATHS=TRUE',
+ '-DBoost_NO_BOOST_CMAKE=TRUE',
+ '-DBOOST_ROOT=%s' % spec['boost'].prefix,
+ '-DBoost_DIR=%s' % spec['boost'].prefix,
+ '-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
+ '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix]
return cmake_args
diff --git a/var/spack/repos/builtin/packages/cbtf-krell/package.py b/var/spack/repos/builtin/packages/cbtf-krell/package.py
index ea238bc439..8133f3e85f 100644
--- a/var/spack/repos/builtin/packages/cbtf-krell/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-krell/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,20 +9,18 @@ import spack.store
class CbtfKrell(CMakePackage):
- """CBTF Krell project contains the Krell Institute contributions to the
- CBTF project. These contributions include many performance data
- collectors and support libraries as well as some example tools
+ """CBTF Krell project contains collector and runtime contributions
+ to the CBTF project. These contributions include many performance
+ data collectors and support libraries as well as some example tools
that drive the data collection at HPC levels of scale.
"""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
git = "https://github.com/OpenSpeedShop/cbtf-krell.git"
version('develop', branch='master')
+ version('1.9.4.1', branch='1.9.4.1')
+ version('1.9.4', branch='1.9.4')
version('1.9.3', branch='1.9.3')
- version('1.9.2', branch='1.9.2')
- version('1.9.1.2', branch='1.9.1.2')
- version('1.9.1.1', branch='1.9.1.1')
- version('1.9.1.0', branch='1.9.1.0')
# MPI variants
variant('openmpi', default=False,
@@ -39,8 +37,9 @@ class CbtfKrell(CMakePackage):
description="Build mpi experiment collector for mpich MPI.")
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
- variant('build_type', default='None', values=('None',),
- description='CMake build type')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo'))
variant('cti', default=False,
description="Build MRNet with the CTI startup option")
variant('crayfe', default=False,
@@ -57,42 +56,42 @@ class CbtfKrell(CMakePackage):
depends_on("libtirpc", type='link')
# For binutils
- depends_on("binutils")
+ depends_on("binutils+plugins~gold@2.32")
# For boost
- depends_on("boost@1.66.0:1.69.0")
+ depends_on("boost@1.70.0:")
# For Dyninst
- depends_on("dyninst@develop", when='@develop')
- depends_on("dyninst@10:", when='@1.9.1.0:9999')
+ depends_on("dyninst@10.1.0", when='@develop')
+ depends_on("dyninst@10.1.0", when='@1.9.3:9999')
# For MRNet
depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti', type=('build', 'link', 'run'))
depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop', type=('build', 'link', 'run'))
- depends_on("mrnet@5.0.1-3+cti", when='@1.9.1.0:9999+cti', type=('build', 'link', 'run'))
- depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0:9999', type=('build', 'link', 'run'))
+ depends_on("mrnet@5.0.1-3+cti", when='@1.9.3:9999+cti', type=('build', 'link', 'run'))
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.3:9999', type=('build', 'link', 'run'))
# For Xerces-C
depends_on("xerces-c")
# For CBTF
depends_on("cbtf@develop", when='@develop', type=('build', 'link', 'run'))
- depends_on("cbtf@1.9.1.0:9999", when='@1.9.1.0:9999', type=('build', 'link', 'run'))
+ depends_on("cbtf@1.9.3:9999", when='@1.9.3:9999', type=('build', 'link', 'run'))
# For CBTF with cti
depends_on("cbtf@develop+cti", when='@develop+cti', type=('build', 'link', 'run'))
- depends_on("cbtf@1.9.1.0:9999+cti", when='@1.9.1.0:9999+cti', type=('build', 'link', 'run'))
+ depends_on("cbtf@1.9.3:9999+cti", when='@1.9.3:9999+cti', type=('build', 'link', 'run'))
# For CBTF with runtime
depends_on("cbtf@develop+runtime", when='@develop+runtime', type=('build', 'link', 'run'))
- depends_on("cbtf@1.9.1.0:9999+runtime", when='@1.9.1.0:9999+runtime', type=('build', 'link', 'run'))
+ depends_on("cbtf@1.9.3:9999+runtime", when='@1.9.3:9999+runtime', type=('build', 'link', 'run'))
# for services and collectors
- depends_on("libmonitor@2013.02.18+krellpatch", type=('build', 'link', 'run'))
+ depends_on("libmonitor@2013.02.18+commrank", type=('build', 'link', 'run'))
depends_on("libunwind", when='@develop')
- depends_on("libunwind@1.2.1", when='@1.9.1.0:9999')
+ depends_on("libunwind@1.2.1", when='@1.9.3:9999')
depends_on("papi@5.4.1:", type=('build', 'link', 'run'))
@@ -203,7 +202,7 @@ class CbtfKrell(CMakePackage):
def cmake_args(self):
spec = self.spec
- compile_flags = "-O2 -g"
+ compile_flags = "-O2 -g -Wall"
# Add in paths for finding package config files that tell us
# where to find these packages
@@ -215,7 +214,11 @@ class CbtfKrell(CMakePackage):
'-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
'-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
'-DPAPI_DIR=%s' % spec['papi'].prefix,
- '-DBOOST_DIR=%s' % spec['boost'].prefix,
+ '-DBoost_NO_SYSTEM_PATHS=TRUE',
+ '-DBoost_NO_BOOST_CMAKE=TRUE',
+ '-DBOOST_ROOT=%s' % spec['boost'].prefix,
+ '-DBoost_DIR=%s' % spec['boost'].prefix,
+ '-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib,
'-DMRNET_DIR=%s' % spec['mrnet'].prefix,
'-DDYNINST_DIR=%s' % spec['dyninst'].prefix,
'-DLIBIOMP_DIR=%s' % spec['llvm-openmp-ompt'].prefix,
diff --git a/var/spack/repos/builtin/packages/cbtf-lanl/package.py b/var/spack/repos/builtin/packages/cbtf-lanl/package.py
index 857ef6c7f9..bb42d4a307 100644
--- a/var/spack/repos/builtin/packages/cbtf-lanl/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-lanl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,14 +14,13 @@ class CbtfLanl(CMakePackage):
git = "https://github.com/OpenSpeedShop/cbtf-lanl.git"
version('develop', branch='master')
+ version('1.9.4.1', branch='1.9.4.1')
+ version('1.9.4', branch='1.9.4')
version('1.9.3', branch='1.9.3')
- version('1.9.2', branch='1.9.2')
- version('1.9.1.2', branch='1.9.1.2')
- version('1.9.1.1', branch='1.9.1.1')
- version('1.9.1.0', branch='1.9.1.0')
- variant('build_type', default='None', values=('None',),
- description='CMake build type')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo'))
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
@@ -34,33 +33,33 @@ class CbtfLanl(CMakePackage):
# For MRNet
depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti')
depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop')
- depends_on("mrnet@5.0.1-3+cti", when='@1.9.1.0:9999+cti')
- depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0:9999')
+ depends_on("mrnet@5.0.1-3+cti", when='@1.9.3:9999+cti')
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.3:9999')
# For Xerces-C
depends_on("xerces-c")
# For CBTF
depends_on("cbtf@develop", when='@develop')
- depends_on("cbtf@1.9.1.0:9999", when='@1.9.1.0:9999')
+ depends_on("cbtf@1.9.3:9999", when='@1.9.3:9999')
# For CBTF with cti
depends_on("cbtf@develop+cti", when='@develop+cti')
- depends_on("cbtf@1.9.1.0:9999+cti", when='@1.9.1.0:9999+cti')
+ depends_on("cbtf@1.9.3:9999+cti", when='@1.9.3:9999+cti')
# For CBTF with runtime
depends_on("cbtf@develop+runtime", when='@develop+runtime')
- depends_on("cbtf@1.9.1.0:9999+runtime", when='@1.9.1.0:9999+runtime')
+ depends_on("cbtf@1.9.3:9999+runtime", when='@1.9.3:9999+runtime')
# For CBTF-KRELL
depends_on("cbtf-krell@develop", when='@develop')
- depends_on("cbtf-krell@1.9.1.0:9999", when='@1.9.1.0:9999')
+ depends_on("cbtf-krell@1.9.3:9999", when='@1.9.3:9999')
depends_on('cbtf-krell@develop+cti', when='@develop+cti')
- depends_on('cbtf-krell@1.9.1.0:9999+cti', when='@1.9.1.0:9999+cti')
+ depends_on('cbtf-krell@1.9.3:9999+cti', when='@1.9.3:9999+cti')
depends_on('cbtf-krell@develop+runtime', when='@develop+runtime')
- depends_on('cbtf-krell@1.9.1.0:9999+runtime', when='@1.9.1.0:9999+runtime')
+ depends_on('cbtf-krell@1.9.3:9999+runtime', when='@1.9.3:9999+runtime')
parallel = False
@@ -69,7 +68,7 @@ class CbtfLanl(CMakePackage):
def cmake_args(self):
spec = self.spec
- compile_flags = "-O2 -g"
+ compile_flags = "-O2 -g -Wall"
cmake_args = [
'-DCMAKE_CXX_FLAGS=%s' % compile_flags,
diff --git a/var/spack/repos/builtin/packages/cbtf/package.py b/var/spack/repos/builtin/packages/cbtf/package.py
index 4c64732166..64ec74dbd2 100644
--- a/var/spack/repos/builtin/packages/cbtf/package.py
+++ b/var/spack/repos/builtin/packages/cbtf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,11 +17,9 @@ class Cbtf(CMakePackage):
git = "https://github.com/OpenSpeedShop/cbtf.git"
version('develop', branch='master')
+ version('1.9.4.1', branch='1.9.4.1')
+ version('1.9.4', branch='1.9.4')
version('1.9.3', branch='1.9.3')
- version('1.9.2', branch='1.9.2')
- version('1.9.1.2', branch='1.9.1.2')
- version('1.9.1.1', branch='1.9.1.1')
- version('1.9.1.0', branch='1.9.1.0')
variant('cti', default=False,
description="Build MRNet with the CTI startup option")
@@ -29,24 +27,25 @@ class Cbtf(CMakePackage):
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
- variant('build_type', default='None', values=('None',),
- description='CMake build type')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo'))
depends_on("cmake@3.0.2:", type='build')
# for rpcgen
- depends_on("rpcsvc-proto", type='build')
+ depends_on("rpcsvc-proto")
# for rpc
depends_on("libtirpc", type='link')
- depends_on("boost@1.66.0:1.69.0")
+ depends_on("boost@1.70.0:")
# For MRNet
depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti')
depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop')
- depends_on("mrnet@5.0.1-3+cti", when='@1.9.1.0:9999+cti')
- depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0:9999')
+ depends_on("mrnet@5.0.1-3+cti", when='@1.9.3:9999+cti')
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.3:9999')
# For Xerces-C
depends_on("xerces-c")
@@ -67,7 +66,7 @@ class Cbtf(CMakePackage):
# or BOOST_INCLUDEDIR). Useful when specifying BOOST_ROOT.
# Defaults to OFF.
- compile_flags = "-O2 -g"
+ compile_flags = "-O2 -g -Wall"
if spec.satisfies('+runtime'):
diff --git a/var/spack/repos/builtin/packages/cc65/package.py b/var/spack/repos/builtin/packages/cc65/package.py
index 414daeea63..cd21e400d6 100644
--- a/var/spack/repos/builtin/packages/cc65/package.py
+++ b/var/spack/repos/builtin/packages/cc65/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ccache/package.py b/var/spack/repos/builtin/packages/ccache/package.py
index e4f9a52353..11d63f0756 100644
--- a/var/spack/repos/builtin/packages/ccache/package.py
+++ b/var/spack/repos/builtin/packages/ccache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,21 @@ from spack import *
import re
-class Ccache(AutotoolsPackage):
+class Ccache(CMakePackage):
"""ccache is a compiler cache. It speeds up recompilation by caching
previous compilations and detecting when the same compilation is being done
again."""
- homepage = "https://ccache.samba.org/"
- url = "https://github.com/ccache/ccache/releases/download/v3.7.9/ccache-3.7.9.tar.gz"
+ homepage = "https://ccache.dev/"
+ url = "https://github.com/ccache/ccache/releases/download/v4.2.1/ccache-4.2.1.tar.gz"
executables = ['^ccache$']
+ version('4.3', sha256='b9789c42e52c73e99428f311a34def9ffec3462736439afd12dbacc7987c1533')
+ version('4.2.1', sha256='320d2b17d2f76393e5d4bb28c8dee5ca783248e9cd23dff0654694d60f8a4b62')
+ version('4.2', sha256='dbf139ff32031b54cb47f2d7983269f328df14b5a427882f89f7721e5c411b7e')
+ version('4.1', sha256='cdeefb827b3eef3b42b5454858123881a4a90abbd46cc72cf8c20b3bd039deb7')
+ version('4.0', sha256='ac97af86679028ebc8555c99318352588ff50f515fc3a7f8ed21a8ad367e3d45')
version('3.7.11', sha256='34309a59d4b6b6b33756366aa9d3144a4655587be9f914476b4c0e2d36365f01')
version('3.7.9', sha256='92838e2133c9e704fdab9ee2608dad86c99021278b9ac47d065aa8ff2ea8ce36')
version('3.7.1', sha256='e562fcdbe766406b6fe4bf97ce5c001d2be8a17465f33bcddefc9499bbb057d8')
@@ -27,9 +32,25 @@ class Ccache(AutotoolsPackage):
version('3.3', sha256='b220fce435fe3d86b8b90097e986a17f6c1f971e0841283dd816adb238c5fd6a')
version('3.2.9', sha256='1e13961b83a3d215c4013469c149414a79312a22d3c7bf9f946abac9ee33e63f')
- depends_on('gperf')
- depends_on('libxslt')
- depends_on('zlib')
+ depends_on('zstd', when='@4.0:')
+
+ depends_on('gperf', when='@:3.99')
+ depends_on('libxslt', when='@:3.99')
+ depends_on('zlib', when='@:3.99')
+
+ # Before 4.0 this was an Autotools package
+ @when('@:3.99')
+ def cmake(self, spec, prefix):
+ configure_args = ["--prefix=" + prefix]
+ configure(*configure_args)
+
+ @when('@:3.99')
+ def build(self, spec, prefix):
+ make()
+
+ @when('@:3.99')
+ def install(self, spec, prefix):
+ make("install")
@classmethod
def determine_version(cls, exe):
diff --git a/var/spack/repos/builtin/packages/ccfits/package.py b/var/spack/repos/builtin/packages/ccfits/package.py
index a4eb088a75..59ab9e144d 100644
--- a/var/spack/repos/builtin/packages/ccfits/package.py
+++ b/var/spack/repos/builtin/packages/ccfits/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ccls/package.py b/var/spack/repos/builtin/packages/ccls/package.py
new file mode 100644
index 0000000000..5e05efcbf1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ccls/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Ccls(CMakePackage):
+ """C/C++ language server"""
+
+ homepage = "https://github.com/MaskRay/ccls"
+ git = "https://github.com/MaskRay/ccls.git"
+ url = "https://github.com/MaskRay/ccls/archive/0.20201025.tar.gz"
+
+ maintainers = ['jacobmerson']
+
+ version('0.20201025', sha256='1470797b2c1a466e2d8a069efd807aac6fefdef8a556e1edf2d44f370c949221')
+
+ variant('build_type', default='Release', description='CMake build type',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'))
+
+ depends_on("cmake@3.8:", type="build")
+ depends_on('llvm@7:')
+ depends_on('rapidjson')
diff --git a/var/spack/repos/builtin/packages/ccs-qcd/package.py b/var/spack/repos/builtin/packages/ccs-qcd/package.py
index 31b85dd969..d80209e1f7 100644
--- a/var/spack/repos/builtin/packages/ccs-qcd/package.py
+++ b/var/spack/repos/builtin/packages/ccs-qcd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,6 +31,8 @@ class CcsQcd(MakefilePackage):
homepage = "https://github.com/fiber-miniapp/ccs-qcd"
git = "https://github.com/fiber-miniapp/ccs-qcd.git"
+ tags = ['hep']
+
version('master', branch='master')
version('1.2.1', commit='d7c6b6923f35a824e997ba8db5bd12dc20dda45c')
diff --git a/var/spack/repos/builtin/packages/cctools/package.py b/var/spack/repos/builtin/packages/cctools/package.py
index f1d03740e8..c664651774 100644
--- a/var/spack/repos/builtin/packages/cctools/package.py
+++ b/var/spack/repos/builtin/packages/cctools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,12 @@ class Cctools(AutotoolsPackage):
"""
homepage = "https://cctools.readthedocs.io"
- url = "https://ccl.cse.nd.edu/software/files/cctools-7.1.5-source.tar.gz"
+ url = "https://ccl.cse.nd.edu/software/files/cctools-7.2.4-source.tar.gz"
+ version('7.2.4', sha256='36d36465a14b503a27c4739ebe0e11e00970ef6abb07c0365a46670753dddbd0')
+ version('7.2.3', sha256='c9d32f9e9d4886ef88b79cc7c898c26e8369a004132080697b8523560cb8765b')
+ version('7.2.2', sha256='3eee05826954792e3ef974fefe3b8e436f09cd368b195287639b67f5acfa050f')
+ version('7.2.1', sha256='8f847fef9bca1ebd23a93d74fc093807d2c3e584111c087cf25e070e130eb820')
version('7.1.7', sha256='63cbfabe52591d41a1b27040bf27700d2a11b2f30cb2e25132e0016fb1aade03')
version('7.1.5', sha256='c01415fd47a1d9626b6c556e0dc0a6b0d3cd67224fa060cabd44ff78eede1d8a')
version('7.1.3', sha256='b937878ab429dda31bc692e5d9ffb402b9eb44bb674c07a934bb769cee4165ba')
diff --git a/var/spack/repos/builtin/packages/cdbfasta/package.py b/var/spack/repos/builtin/packages/cdbfasta/package.py
index 812dd7a7db..05c15498b4 100644
--- a/var/spack/repos/builtin/packages/cdbfasta/package.py
+++ b/var/spack/repos/builtin/packages/cdbfasta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cdd/package.py b/var/spack/repos/builtin/packages/cdd/package.py
index 2487b8bb77..1c6f9f2a1b 100644
--- a/var/spack/repos/builtin/packages/cdd/package.py
+++ b/var/spack/repos/builtin/packages/cdd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cddlib/package.py b/var/spack/repos/builtin/packages/cddlib/package.py
index 199d283ab7..c501aad344 100644
--- a/var/spack/repos/builtin/packages/cddlib/package.py
+++ b/var/spack/repos/builtin/packages/cddlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cdecimal/package.py b/var/spack/repos/builtin/packages/cdecimal/package.py
index 882af3bb21..c044303c0c 100644
--- a/var/spack/repos/builtin/packages/cdecimal/package.py
+++ b/var/spack/repos/builtin/packages/cdecimal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cdhit/package.py b/var/spack/repos/builtin/packages/cdhit/package.py
index a58b959942..96c6eb36b1 100644
--- a/var/spack/repos/builtin/packages/cdhit/package.py
+++ b/var/spack/repos/builtin/packages/cdhit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cdo/package.py b/var/spack/repos/builtin/packages/cdo/package.py
index 4096176dbb..8de2088d7e 100644
--- a/var/spack/repos/builtin/packages/cdo/package.py
+++ b/var/spack/repos/builtin/packages/cdo/package.py
@@ -1,9 +1,12 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from collections import defaultdict
+
from spack import *
+from spack.util.environment import is_system_path
class Cdo(AutotoolsPackage):
@@ -15,12 +18,12 @@ class Cdo(AutotoolsPackage):
url = 'https://code.mpimet.mpg.de/attachments/download/12760/cdo-1.7.2.tar.gz'
list_url = 'https://code.mpimet.mpg.de/projects/cdo/files'
- maintainers = ['skosukhin']
+ maintainers = ['skosukhin', 'Try2Code']
+ version('1.9.10', sha256='cc39c89bbb481d7b3945a06c56a8492047235f46ac363c4f0d980fccdde6677e', url='https://code.mpimet.mpg.de/attachments/download/24638/cdo-1.9.10.tar.gz')
version('1.9.9', sha256='959b5b58f495d521a7fd1daa84644888ec87d6a0df43f22ad950d17aee5ba98d', url='https://code.mpimet.mpg.de/attachments/download/23323/cdo-1.9.9.tar.gz')
version('1.9.8', sha256='f2660ac6f8bf3fa071cf2a3a196b3ec75ad007deb3a782455e80f28680c5252a', url='https://code.mpimet.mpg.de/attachments/download/20826/cdo-1.9.8.tar.gz')
- version('1.9.7.1', sha256='3771952e065bcf935d43e492707370ed2a0ecb59a06bea24f9ab69d77943962c',
- url='https://code.mpimet.mpg.de/attachments/download/20124/cdo-1.9.7.1.tar.gz')
+ version('1.9.7.1', sha256='3771952e065bcf935d43e492707370ed2a0ecb59a06bea24f9ab69d77943962c', url='https://code.mpimet.mpg.de/attachments/download/20124/cdo-1.9.7.1.tar.gz')
version('1.9.6', sha256='b31474c94548d21393758caa33f35cf7f423d5dfc84562ad80a2bdcb725b5585', url='https://code.mpimet.mpg.de/attachments/download/19299/cdo-1.9.6.tar.gz')
version('1.9.5', sha256='48ed65cc5b436753c8e7f9eadd8aa97376698ce230ceafed2a4350a5b1a27148', url='https://code.mpimet.mpg.de/attachments/download/18264/cdo-1.9.5.tar.gz')
version('1.9.4', sha256='3d1c0fd3f7d38c5d3d88139ca1546c9d24e1b1ff752a794a4194dfe624695def', url='https://code.mpimet.mpg.de/attachments/download/17374/cdo-1.9.4.tar.gz')
@@ -54,8 +57,8 @@ class Cdo(AutotoolsPackage):
depends_on('pkgconfig', type='build')
depends_on('netcdf-c', when='+netcdf')
- # In this case CDO does not depend on hdf5 directly but we need the backend
- # of netcdf to be thread safe.
+ # The internal library of CDO implicitly links to hdf5.
+ # We also need the backend of netcdf to be thread safe.
depends_on('hdf5+threadsafe', when='+netcdf')
depends_on('grib-api', when='grib2=grib-api')
@@ -67,31 +70,54 @@ class Cdo(AutotoolsPackage):
depends_on('udunits', when='+udunits2')
depends_on('libxml2', when='+libxml2')
- depends_on('proj@:5', when='+proj')
+ depends_on('proj@:5', when='@:1.9.6+proj')
+ depends_on('proj@:7', when='@1.9.7+proj')
+ depends_on('proj@5:', when='@1.9.8:+proj')
depends_on('curl', when='+curl')
- depends_on('fftw@3:', when='+fftw3')
+ depends_on('fftw-api@3:', when='+fftw3')
depends_on('magics', when='+magics')
- depends_on('libuuid')
+ depends_on('uuid')
- conflicts('grib2=eccodes', when='@:1.8',
- msg='Eccodes is supported starting version 1.9.0')
conflicts('+szip', when='+external-grib1 grib2=none',
msg='The configuration does not support GRIB1')
conflicts('%gcc@9:', when='@:1.9.6',
msg='GCC 9 changed OpenMP data sharing behavior')
def configure_args(self):
- config_args = self.with_or_without(
- 'netcdf',
- activation_value=lambda x: self.spec['netcdf-c'].prefix)
+ config_args = []
+
+ flags = defaultdict(list)
+
+ def yes_or_prefix(spec_name):
+ prefix = self.spec[spec_name].prefix
+ return 'yes' if is_system_path(prefix) else prefix
+
+ if '+netcdf' in self.spec:
+ config_args.append('--with-netcdf=' + yes_or_prefix('netcdf-c'))
+ # We need to make sure that the libtool script of libcdi - the
+ # internal library of CDO - finds the correct version of hdf5.
+ # Note that the argument of --with-hdf5 is not passed to the
+ # configure script of libcdi, therefore we have to provide
+ # additional flags regardless of whether hdf5 support is enabled.
+ hdf5_spec = self.spec['hdf5']
+ if not is_system_path(hdf5_spec.prefix):
+ flags['LDFLAGS'].append(self.spec['hdf5'].libs.search_flags)
+ else:
+ config_args.append('--without-netcdf')
if self.spec.variants['grib2'].value == 'eccodes':
- config_args.append('--with-eccodes=' +
- self.spec['eccodes'].prefix)
- config_args.append('--without-grib_api')
+ if self.spec.satisfies('@1.9:'):
+ config_args.append('--with-eccodes=' + yes_or_prefix('eccodes'))
+ config_args.append('--without-grib_api')
+ else:
+ config_args.append('--with-grib_api=yes')
+ eccodes_spec = self.spec['eccodes']
+ eccodes_libs = eccodes_spec.libs
+ flags['LIBS'].append(eccodes_libs.link_flags)
+ if not is_system_path(eccodes_spec.prefix):
+ flags['LDFLAGS'].append(eccodes_libs.search_flags)
elif self.spec.variants['grib2'].value == 'grib-api':
- config_args.append('--with-grib_api=' +
- self.spec['grib-api'].prefix)
+ config_args.append('--with-grib_api=' + yes_or_prefix('grib-api'))
if self.spec.satisfies('@1.9:'):
config_args.append('--without-eccodes')
else:
@@ -105,28 +131,39 @@ class Cdo(AutotoolsPackage):
config_args.append('--enable-cgribex')
if '+szip' in self.spec:
- config_args.append('--with-szlib=' + self.spec['szip'].prefix)
+ config_args.append('--with-szlib=' + yes_or_prefix('szip'))
else:
config_args.append('--without-szlib')
config_args += self.with_or_without('hdf5',
- activation_value='prefix')
+ activation_value=yes_or_prefix)
config_args += self.with_or_without(
'udunits2',
- activation_value=lambda x: self.spec['udunits'].prefix)
-
- config_args += self.with_or_without('libxml2',
- activation_value='prefix')
+ activation_value=lambda x: yes_or_prefix('udunits'))
+
+ if '+libxml2' in self.spec:
+ libxml2_spec = self.spec['libxml2']
+ if is_system_path(libxml2_spec.prefix):
+ config_args.append('--with-libxml2=yes')
+ # Spack does not inject the header search flag in this case,
+ # which is still required, unless libxml2 is installed to '/usr'
+ # (handled by the configure script of CDO).
+ if libxml2_spec.prefix != '/usr':
+ flags['CPPFLAGS'].append(libxml2_spec.headers.include_flags)
+ else:
+ config_args.append('--with-libxml2=' + libxml2_spec.prefix)
+ else:
+ config_args.append('--without-libxml2')
config_args += self.with_or_without('proj',
- activation_value='prefix')
+ activation_value=yes_or_prefix)
config_args += self.with_or_without('curl',
- activation_value='prefix')
+ activation_value=yes_or_prefix)
config_args += self.with_or_without('magics',
- activation_value='prefix')
+ activation_value=yes_or_prefix)
config_args += self.with_or_without('fftw3')
@@ -138,7 +175,9 @@ class Cdo(AutotoolsPackage):
# following flags. This works for OpenMPI, MPICH, MVAPICH, Intel MPI,
# IBM Spectrum MPI, bullx MPI, and Cray MPI.
if self.spec.satisfies('@1.9:+hdf5^hdf5+mpi'):
- config_args.append(
- 'CPPFLAGS=-DOMPI_SKIP_MPICXX -DMPICH_SKIP_MPICXX')
+ flags['CPPFLAGS'].append('-DOMPI_SKIP_MPICXX -DMPICH_SKIP_MPICXX')
+
+ config_args.extend(['{0}={1}'.format(var, ' '.join(val))
+ for var, val in flags.items()])
return config_args
diff --git a/var/spack/repos/builtin/packages/ceed/package.py b/var/spack/repos/builtin/packages/ceed/package.py
index f4cf410508..1090385a32 100644
--- a/var/spack/repos/builtin/packages/ceed/package.py
+++ b/var/spack/repos/builtin/packages/ceed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cereal/package.py b/var/spack/repos/builtin/packages/cereal/package.py
index c35892538d..9fa2652d4c 100644
--- a/var/spack/repos/builtin/packages/cereal/package.py
+++ b/var/spack/repos/builtin/packages/cereal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ceres-solver/package.py b/var/spack/repos/builtin/packages/ceres-solver/package.py
index ab84b4f9b7..7336a5d0ba 100644
--- a/var/spack/repos/builtin/packages/ceres-solver/package.py
+++ b/var/spack/repos/builtin/packages/ceres-solver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class CeresSolver(CMakePackage):
homepage = "http://ceres-solver.org"
url = "http://ceres-solver.org/ceres-solver-1.12.0.tar.gz"
+ version('2.0.0', sha256='10298a1d75ca884aa0507d1abb0e0f04800a92871cd400d4c361b56a777a7603')
version('1.14.0', sha256='4744005fc3b902fed886ea418df70690caa8e2ff6b5a90f3dd88a3d291ef8e8e')
version('1.12.0', sha256='745bfed55111e086954126b748eb9efe20e30be5b825c6dec3c525cf20afc895')
diff --git a/var/spack/repos/builtin/packages/cfitsio/package.py b/var/spack/repos/builtin/packages/cfitsio/package.py
index dfac754190..535446eb38 100644
--- a/var/spack/repos/builtin/packages/cfitsio/package.py
+++ b/var/spack/repos/builtin/packages/cfitsio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,12 +12,15 @@ class Cfitsio(AutotoolsPackage):
"""
homepage = 'http://heasarc.gsfc.nasa.gov/fitsio/'
- url = 'http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio3450.tar.gz'
+ url = 'http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio-3.49.tar.gz'
- version('3.450', sha256='bf6012dbe668ecb22c399c4b7b2814557ee282c74a7d5dc704eb17c30d9fb92e')
- version('3.420', sha256='6c10aa636118fa12d9a5e2e66f22c6436fb358da2af6dbf7e133c142e2ac16b8')
- version('3.410', sha256='a556ac7ea1965545dcb4d41cfef8e4915eeb8c0faa1b52f7ff70870f8bb5734c')
- version('3.370', sha256='092897c6dae4dfe42d91d35a738e45e8236aa3d8f9b3ffc7f0e6545b8319c63a')
+ version('3.49', sha256='5b65a20d5c53494ec8f638267fca4a629836b7ac8dd0ef0266834eab270ed4b3')
+ version('3.48', sha256='91b48ffef544eb8ea3908543052331072c99bf09ceb139cb3c6977fc3e47aac1')
+ version('3.47', sha256='418516f10ee1e0f1b520926eeca6b77ce639bed88804c7c545e74f26b3edf4ef')
+ version('3.45', sha256='bf6012dbe668ecb22c399c4b7b2814557ee282c74a7d5dc704eb17c30d9fb92e')
+ version('3.42', sha256='6c10aa636118fa12d9a5e2e66f22c6436fb358da2af6dbf7e133c142e2ac16b8')
+ version('3.41', sha256='a556ac7ea1965545dcb4d41cfef8e4915eeb8c0faa1b52f7ff70870f8bb5734c')
+ version('3.37', sha256='092897c6dae4dfe42d91d35a738e45e8236aa3d8f9b3ffc7f0e6545b8319c63a')
variant('bzip2', default=True, description='Enable bzip2 support')
variant('shared', default=True, description='Build shared libraries')
@@ -26,7 +29,10 @@ class Cfitsio(AutotoolsPackage):
depends_on('bzip2', when='+bzip2')
def url_for_version(self, version):
- url = 'http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio{0}.tar.gz'
+ if version >= Version('3.47'):
+ return super(Cfitsio, self).url_for_version(version)
+
+ url = 'http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio{0}0.tar.gz'
return url.format(version.joined)
def configure_args(self):
diff --git a/var/spack/repos/builtin/packages/cgal/package.py b/var/spack/repos/builtin/packages/cgal/package.py
index 41fc640448..061b5d30e7 100644
--- a/var/spack/repos/builtin/packages/cgal/package.py
+++ b/var/spack/repos/builtin/packages/cgal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,7 +31,7 @@ class Cgal(CMakePackage):
variant('build_type', default='Release',
description='The build type to build',
values=('Debug', 'Release'))
- variant('header-only', default=False,
+ variant('header_only', default=False,
description='Install in header only mode')
# ---- See "7 CGAL Libraries" at:
diff --git a/var/spack/repos/builtin/packages/cgdb/package.py b/var/spack/repos/builtin/packages/cgdb/package.py
index 269561b070..8c3c2e4ec1 100644
--- a/var/spack/repos/builtin/packages/cgdb/package.py
+++ b/var/spack/repos/builtin/packages/cgdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,9 @@ class Cgdb(AutotoolsPackage):
# Required dependency
depends_on('ncurses')
depends_on('readline')
+ depends_on('flex', type='build')
+ depends_on('bison', type='build')
+ depends_on('texinfo', type='build')
def configure_args(self):
spec = self.spec
diff --git a/var/spack/repos/builtin/packages/cgdcbxd/package.py b/var/spack/repos/builtin/packages/cgdcbxd/package.py
index 63eb408bad..3faad1b494 100644
--- a/var/spack/repos/builtin/packages/cgdcbxd/package.py
+++ b/var/spack/repos/builtin/packages/cgdcbxd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cget/package.py b/var/spack/repos/builtin/packages/cget/package.py
index ee8bcb1acf..9b76cc795b 100644
--- a/var/spack/repos/builtin/packages/cget/package.py
+++ b/var/spack/repos/builtin/packages/cget/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class Cget(PythonPackage):
"""Cmake package retrieval."""
homepage = "https://github.com/pfultz2/cget"
- url = "https://pypi.io/packages/source/c/cget/cget-0.1.9.tar.gz"
+ pypi = "cget/cget-0.1.9.tar.gz"
version('0.1.9', sha256='2a7913b601bec615208585eda7e69998a43cc17080d36c2ff2ce8742c9794bf6')
diff --git a/var/spack/repos/builtin/packages/cgl/package.py b/var/spack/repos/builtin/packages/cgl/package.py
index 1c0a694df5..24e16e4e95 100644
--- a/var/spack/repos/builtin/packages/cgl/package.py
+++ b/var/spack/repos/builtin/packages/cgl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cgm/package.py b/var/spack/repos/builtin/packages/cgm/package.py
index 295b85a7ba..9d109b44ba 100644
--- a/var/spack/repos/builtin/packages/cgm/package.py
+++ b/var/spack/repos/builtin/packages/cgm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cgns/package.py b/var/spack/repos/builtin/packages/cgns/package.py
index 5e05c805af..799a817454 100644
--- a/var/spack/repos/builtin/packages/cgns/package.py
+++ b/var/spack/repos/builtin/packages/cgns/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,8 +16,12 @@ class Cgns(CMakePackage):
url = "https://github.com/CGNS/CGNS/archive/v3.3.0.tar.gz"
git = "https://github.com/CGNS/CGNS"
+ parallel = False
+
version('develop', branch='develop')
version('master', branch='master')
+ version('4.2.0', sha256='090ec6cb0916d90c16790183fc7c2bd2bd7e9a5e3764b36c8196ba37bf1dc817')
+ version('4.1.2', sha256='951653956f509b8a64040f1440c77f5ee0e6e2bf0a9eef1248d370f60a400050')
version('4.1.1', sha256='055d345c3569df3ae832fb2611cd7e0bc61d56da41b2be1533407e949581e226')
version('4.1.0', sha256='4674de1fac3c47998248725fd670377be497f568312c5903d1bb8090a3cf4da0')
version('4.0.0', sha256='748585a8e52dff4d250d6b603e6b847d05498e4566aba2dc3d7a7d85c4d55849')
@@ -36,7 +40,6 @@ class Cgns(CMakePackage):
variant('static', default=False, description='Build static libraries')
variant('testing', default=False, description='Build CGNS testing')
variant('legacy', default=False, description='Enable legacy options')
- variant('parallel', default=False, description='Enable parallel features')
variant('mem_debug', default=False, description='Enable memory debugging option')
depends_on('hdf5~mpi', when='+hdf5~mpi')
@@ -48,28 +51,17 @@ class Cgns(CMakePackage):
options = []
options.extend([
- '-DCGNS_ENABLE_FORTRAN:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DCGNS_ENABLE_SCOPING:BOOL=%s' % (
- 'ON' if '+scoping' in spec else 'OFF'),
- '-DCGNS_ENABLE_PARALLEL:BOOL=%s' % (
- 'ON' if '+mpi' in spec else 'OFF'),
+ self.define_from_variant('CGNS_ENABLE_FORTRAN', 'fortran'),
+ self.define_from_variant('CGNS_ENABLE_SCOPING', 'scoping'),
+ self.define_from_variant('CGNS_ENABLE_PARALLEL', 'mpi'),
'-DCGNS_ENABLE_TESTS:BOOL=OFF',
- '-DCGNS_BUILD_TESTING:BOOL=%s' % (
- 'ON' if '+testing' in spec else 'OFF'),
+ self.define_from_variant('CGNS_BUILD_TESTING', 'testing'),
'-DCGNS_BUILD_CGNSTOOLS:BOOL=OFF',
- '-DCGNS_BUILD_SHARED:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
- '-DCGNS_BUILD_STATIC:BOOL=%s' % (
- 'ON' if '+static' in spec else 'OFF'),
- '-DCGNS_ENABLE_BASE_SCOPE:BOOL=%s' % (
- 'ON' if '+base_scope' in spec else 'OFF'),
- '-DCGNS_ENABLE_LEGACY:BOOL=%s' % (
- 'ON' if '+legacy' in spec else 'OFF'),
- '-DCGNS_ENABLE_PARALLEL:BOOL=%s' % (
- 'ON' if '+parallel' in spec else 'OFF'),
- '-DCGNS_ENABLE_MEM_DEBUG:BOOL=%s' % (
- 'ON' if '+mem_debug' in spec else 'OFF')
+ self.define_from_variant('CGNS_BUILD_SHARED', 'shared'),
+ self.define_from_variant('CGNS_BUILD_STATIC', 'static'),
+ self.define_from_variant('CGNS_ENABLE_BASE_SCOPE', 'base_scope'),
+ self.define_from_variant('CGNS_ENABLE_LEGACY', 'legacy'),
+ self.define_from_variant('CGNS_ENABLE_MEM_DEBUG', 'mem_debug')
])
if '+mpi' in spec:
@@ -80,8 +72,7 @@ class Cgns(CMakePackage):
])
options.append(
- '-DCGNS_ENABLE_64BIT:BOOL={0}'.format(
- 'ON' if '+int64' in spec else 'OFF'))
+ self.define_from_variant('CGNS_ENABLE_64BIT', 'int64'))
if '+hdf5' in spec:
options.extend([
diff --git a/var/spack/repos/builtin/packages/chai/package.py b/var/spack/repos/builtin/packages/chai/package.py
index 6fd33dea8b..b284da358f 100644
--- a/var/spack/repos/builtin/packages/chai/package.py
+++ b/var/spack/repos/builtin/packages/chai/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Chai(CMakePackage, CudaPackage, ROCmPackage):
version('develop', branch='develop', submodules='True')
version('master', branch='main', submodules='True')
+ version('2.3.0', tag='v2.3.0', submodules='True')
version('2.1.1', tag='v2.1.1', submodules='True')
version('2.1.0', tag='v2.1.0', submodules='True')
version('2.0.0', tag='v2.0.0', submodules='True')
@@ -23,16 +24,24 @@ class Chai(CMakePackage, CudaPackage, ROCmPackage):
version('1.1.0', tag='v1.1.0', submodules='True')
version('1.0', tag='v1.0', submodules='True')
+ variant('enable_pick', default=False, description='Enable pick method')
variant('shared', default=True, description='Build Shared Libs')
variant('raja', default=False, description='Build plugin for RAJA')
variant('benchmarks', default=True, description='Build benchmarks.')
variant('examples', default=True, description='Build examples.')
+ # TODO: figure out gtest dependency and then set this default True
+ # and remove the +tests conflict below.
+ variant('tests', default=False, description='Build tests')
depends_on('cmake@3.8:', type='build')
+ depends_on('cmake@3.9:', type='build', when="+cuda")
+
+ depends_on('blt@0.4.0:', type='build', when='@2.3.1:')
+ depends_on('blt@:0.3.6', type='build', when='@:2.3.0')
+
depends_on('umpire')
depends_on('raja', when="+raja")
- depends_on('cmake@3.9:', type='build', when="+cuda")
depends_on('umpire+cuda', when="+cuda")
depends_on('raja+cuda', when="+raja+cuda")
@@ -44,10 +53,13 @@ class Chai(CMakePackage, CudaPackage, ROCmPackage):
depends_on('umpire amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
depends_on('raja amdgpu_target=%s' % val, when='+raja amdgpu_target=%s' % val)
+ conflicts('+benchmarks', when='~tests')
+
def cmake_args(self):
spec = self.spec
options = []
+ options.append('-DBLT_SOURCE_DIR={0}'.format(spec['blt'].prefix))
if '+cuda' in spec:
options.extend([
@@ -80,23 +92,16 @@ class Chai(CMakePackage, CudaPackage, ROCmPackage):
options.extend(['-DENABLE_RAJA_PLUGIN=ON',
'-DRAJA_DIR=' + spec['raja'].prefix])
+ options.append(self.define_from_variant('ENABLE_PICK', 'enable_pick'))
+
options.append('-Dumpire_DIR:PATH='
+ spec['umpire'].prefix.share.umpire.cmake)
options.append('-DENABLE_TESTS={0}'.format(
- 'ON' if self.run_tests else 'OFF'))
-
- # give clear error for conflict between self.run_tests and
- # benchmarks variant.
- if not self.run_tests and '+benchmarks' in spec:
- raise InstallError(
- 'ENABLE_BENCHMARKS requires ENABLE_TESTS to be ON'
- )
+ 'ON' if '+tests' in spec else 'OFF'))
- options.append('-DENABLE_BENCHMARKS={0}'.format(
- 'ON' if '+benchmarks' in spec else 'OFF'))
+ options.append(self.define_from_variant('ENABLE_BENCHMARKS', 'benchmarks'))
- options.append('-DENABLE_EXAMPLES={0}'.format(
- 'ON' if '+examples' in spec else 'OFF'))
+ options.append(self.define_from_variant('ENABLE_EXAMPLES', 'examples'))
return options
diff --git a/var/spack/repos/builtin/packages/changa/package.py b/var/spack/repos/builtin/packages/changa/package.py
index a6adb48c38..4c6bfb7c36 100644
--- a/var/spack/repos/builtin/packages/changa/package.py
+++ b/var/spack/repos/builtin/packages/changa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/channelflow/package.py b/var/spack/repos/builtin/packages/channelflow/package.py
index ecd16053a5..f4a01f7548 100644
--- a/var/spack/repos/builtin/packages/channelflow/package.py
+++ b/var/spack/repos/builtin/packages/channelflow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/chapel/package.py b/var/spack/repos/builtin/packages/chapel/package.py
index 142fb60a8b..5952e38a72 100644
--- a/var/spack/repos/builtin/packages/chapel/package.py
+++ b/var/spack/repos/builtin/packages/chapel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/charliecloud/package.py b/var/spack/repos/builtin/packages/charliecloud/package.py
index 3f2f836eb7..e871483a7e 100644
--- a/var/spack/repos/builtin/packages/charliecloud/package.py
+++ b/var/spack/repos/builtin/packages/charliecloud/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,9 @@ class Charliecloud(AutotoolsPackage):
git = "https://github.com/hpc/charliecloud.git"
version('master', branch='master')
+ version('0.23', sha256='5e458b943ad0e27d1264bb089e48d4a676219179b0e96a7d761387a36c45b4d9')
+ version('0.22', sha256='f65e4111ce87e449c656032da69f3b1cfc70a5a416a5e410329c1b0b2e953907')
+ version('0.21', sha256='024884074d283c4a0387d899161610fa4ae739ac1efcc9e53d7d626ddc20359f')
version('0.19', sha256='99619fd86860cda18f7f7a7cf7391f702ec9ebd3193791320dea647769996447')
version('0.18', sha256='15ce63353afe1fc6bcc10979496a54fcd5628f997cb13c827c9fc7afb795bdc5')
diff --git a/var/spack/repos/builtin/packages/charmpp/charm_6.7.1_aocc.patch b/var/spack/repos/builtin/packages/charmpp/charm_6.7.1_aocc.patch
new file mode 100644
index 0000000000..3967e5fc3e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/charmpp/charm_6.7.1_aocc.patch
@@ -0,0 +1,188 @@
+diff -bur charm-6.7.1/src/arch/mpi-linux-x86_64/cc-mpicxx.sh updated-charm-6.7.1/src/arch/mpi-linux-x86_64/cc-mpicxx.sh
+--- charm-6.7.1/src/arch/mpi-linux-x86_64/cc-mpicxx.sh 2016-11-07 20:14:26.000000000 +0530
++++ updated-charm-6.7.1/src/arch/mpi-linux-x86_64/cc-mpicxx.sh 2019-08-26 16:55:40.868903291 +0530
+@@ -14,7 +14,7 @@
+
+ CMK_REAL_COMPILER=`$MPICXX -show 2>/dev/null | cut -d' ' -f1 `
+ case "$CMK_REAL_COMPILER" in
+-g++) CMK_AMD64="-m64 -fPIC" ;;
++clang++) CMK_AMD64="-m64 -fPIC" ;;
+ icpc) CMK_AMD64="-m64";;
+ pgCC) CMK_AMD64="-DCMK_FIND_FIRST_OF_PREDICATE=1 --no_using_std " ;;
+ FCC) CMK_AMD64="-Kfast -DCMK_FIND_FIRST_OF_PREDICATE=1 --variadic_macros";;
+diff -bur charm-6.7.1/src/arch/mpi-linux-x86_64/conv-mach-scyld.sh updated-charm-6.7.1/src/arch/mpi-linux-x86_64/conv-mach-scyld.sh
+--- charm-6.7.1/src/arch/mpi-linux-x86_64/conv-mach-scyld.sh 2016-11-07 20:14:26.000000000 +0530
++++ updated-charm-6.7.1/src/arch/mpi-linux-x86_64/conv-mach-scyld.sh 2019-08-26 16:55:40.868903291 +0530
+@@ -1,14 +1,14 @@
+
+ case "$CMK_CC" in
+ mpicc*)
+- CMK_CPP_C="gcc -E "
+- CMK_CC="gcc -fPIC"
+- CMK_CC_RELIABLE="gcc -fPIC"
+- CMK_CC_FASTEST="gcc -fPIC"
+- CMK_CXX="g++ -fPIC"
+- CMK_CXXPP="gcc -E "
+- CMK_LD="gcc"
+- CMK_LDXX="g++"
++ CMK_CPP_C="clang -E "
++ CMK_CC="clang -fPIC"
++ CMK_CC_RELIABLE="clang -fPIC"
++ CMK_CC_FASTEST="clang -fPIC"
++ CMK_CXX="clang++ -fPIC"
++ CMK_CXXPP="clang -E "
++ CMK_LD="clang"
++ CMK_LDXX="clang++"
+
+ # native compiler for compiling charmxi, etc
+ CMK_NATIVE_CC="$CMK_CC"
+Only in updated-charm-6.7.1/src/arch/mpi-linux-x86_64: conv-mach-scyld.sh.orig
+Only in updated-charm-6.7.1/src/arch/mpi-linux-x86_64: conv-mach-scyld.sh.rej
+diff -bur charm-6.7.1/src/arch/mpi-linux-x86_64/conv-mach.sh updated-charm-6.7.1/src/arch/mpi-linux-x86_64/conv-mach.sh
+--- charm-6.7.1/src/arch/mpi-linux-x86_64/conv-mach.sh 2016-11-07 20:14:26.000000000 +0530
++++ updated-charm-6.7.1/src/arch/mpi-linux-x86_64/conv-mach.sh 2019-08-26 16:55:40.868903291 +0530
+@@ -23,7 +23,7 @@
+
+ CMK_REAL_COMPILER=`$MPICXX -show 2>/dev/null | cut -d' ' -f1 `
+ case "$CMK_REAL_COMPILER" in
+-g++) CMK_AMD64_CC="$CMK_GCC64"; CMK_AMD64_CXX="$CMK_GCC64" ;;
++clang++) CMK_AMD64_CC="$CMK_GCC64"; CMK_AMD64_CXX="$CMK_GCC64" ;;
+ pgCC) CMK_AMD64_CC="-fPIC"; CMK_AMD64_CXX="-fPIC -DCMK_FIND_FIRST_OF_PREDICATE=1 --no_using_std " ;;
+ charmc) echo "Error> charmc can not call AMPI's mpicxx/mpiCC wrapper! Please fix your PATH."; exit 1 ;;
+ esac
+@@ -38,10 +38,10 @@
+ CMK_LIBS="-lckqt $CMK_SYSLIBS "
+ CMK_LD_LIBRARY_PATH="-Wl,-rpath,$CHARMLIBSO/"
+
+-CMK_NATIVE_CC="gcc $CMK_GCC64 "
+-CMK_NATIVE_LD="gcc $CMK_GCC64 "
+-CMK_NATIVE_CXX="g++ $CMK_GCC64 "
+-CMK_NATIVE_LDXX="g++ $CMK_GCC64 "
++CMK_NATIVE_CC="clang $CMK_GCC64 "
++CMK_NATIVE_LD="clang $CMK_GCC64 "
++CMK_NATIVE_CXX="clang++ $CMK_GCC64 "
++CMK_NATIVE_LDXX="clang++ $CMK_GCC64 "
+ CMK_NATIVE_LIBS=""
+
+ # fortran compiler
+@@ -51,7 +51,7 @@
+ # CMK_FPP="/lib/cpp -P -CC"
+ # CMK_CF90="$CMK_CF90 -fpic -fautomatic -fdollar-ok "
+ # CMK_CF90_FIXED="$CMK_CF90 -ffixed-form "
+-# CMK_F90LIBS="-lgfortran "
++# CMK_F90LIBS=" "
+ # CMK_F90_USE_MODDIR=1
+ # CMK_F90_MODINC="-I"
+ # CMK_MOD_NAME_ALLCAPS=
+diff -bur charm-6.7.1/src/libs/ck-libs/ckloop/Makefile updated-charm-6.7.1/src/libs/ck-libs/ckloop/Makefile
+--- charm-6.7.1/src/libs/ck-libs/ckloop/Makefile 2016-11-07 20:14:28.000000000 +0530
++++ updated-charm-6.7.1/src/libs/ck-libs/ckloop/Makefile 2019-08-26 16:55:40.852903122 +0530
+@@ -38,7 +38,7 @@
+ for i in $(LIBOBJ) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$i : $$SRCFILE" ; \
+- g++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
++ clang++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -I$(CDIR)/tmp -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+
+Only in updated-charm-6.7.1/src/libs/ck-libs/ckloop: Makefile.orig
+Only in updated-charm-6.7.1/src/libs/ck-libs/ckloop: Makefile.rej
+diff -bur charm-6.7.1/src/libs/ck-libs/completion/Makefile updated-charm-6.7.1/src/libs/ck-libs/completion/Makefile
+--- charm-6.7.1/src/libs/ck-libs/completion/Makefile 2016-11-07 20:14:28.000000000 +0530
++++ updated-charm-6.7.1/src/libs/ck-libs/completion/Makefile 2019-08-26 16:55:40.852903122 +0530
+@@ -45,7 +45,7 @@
+ for i in $(LIBOBJ) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$i : $$SRCFILE" ; \
+- g++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
++ clang++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -I$(CDIR)/tmp -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+
+Only in updated-charm-6.7.1/src/libs/ck-libs/completion: Makefile.orig
+Only in updated-charm-6.7.1/src/libs/ck-libs/completion: Makefile.rej
+diff -bur charm-6.7.1/src/libs/ck-libs/multicast/Makefile updated-charm-6.7.1/src/libs/ck-libs/multicast/Makefile
+--- charm-6.7.1/src/libs/ck-libs/multicast/Makefile 2016-11-07 20:14:29.000000000 +0530
++++ updated-charm-6.7.1/src/libs/ck-libs/multicast/Makefile 2019-08-26 16:55:40.852903122 +0530
+@@ -53,7 +53,7 @@
+ for i in $(LIBOBJ) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$i : $$SRCFILE" ; \
+- g++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
++ clang++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -I$(CDIR)/tmp -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+
+Only in updated-charm-6.7.1/src/libs/ck-libs/multicast: Makefile.orig
+Only in updated-charm-6.7.1/src/libs/ck-libs/multicast: Makefile.rej
+diff -bur charm-6.7.1/src/libs/ck-libs/NDMeshStreamer/Makefile updated-charm-6.7.1/src/libs/ck-libs/NDMeshStreamer/Makefile
+--- charm-6.7.1/src/libs/ck-libs/NDMeshStreamer/Makefile 2016-11-07 20:14:27.000000000 +0530
++++ updated-charm-6.7.1/src/libs/ck-libs/NDMeshStreamer/Makefile 2019-08-26 16:55:40.852903122 +0530
+@@ -52,7 +52,7 @@
+ for i in $(LIBOBJ) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$i : $$SRCFILE" ; \
+- g++ -MM -Wno-deprecated -I$(CDIR)/tmp -I../completion $$SRCFILE >> $(DEPENDFILE); \
++ clang++ -MM -Wno-deprecated -I$(CDIR)/tmp -I../completion $$SRCFILE >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -I$(CDIR)/tmp -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+
+Only in updated-charm-6.7.1/src/libs/ck-libs/NDMeshStreamer: Makefile.orig
+Only in updated-charm-6.7.1/src/libs/ck-libs/NDMeshStreamer: Makefile.rej
+diff -bur charm-6.7.1/src/QuickThreads/Makefile updated-charm-6.7.1/src/QuickThreads/Makefile
+--- charm-6.7.1/src/QuickThreads/Makefile 2016-11-07 20:14:25.000000000 +0530
++++ updated-charm-6.7.1/src/QuickThreads/Makefile 2019-08-26 16:55:40.856903165 +0530
+@@ -1,5 +1,5 @@
+
+-CC=gcc -I. -O2
++CC=clang -I. -O2
+
+ all: qt stp testpgm
+
+diff -bur charm-6.7.1/src/scripts/Makefile updated-charm-6.7.1/src/scripts/Makefile
+--- charm-6.7.1/src/scripts/Makefile 2016-11-07 20:14:29.000000000 +0530
++++ updated-charm-6.7.1/src/scripts/Makefile 2019-08-26 16:55:40.840902996 +0530
+@@ -942,7 +942,7 @@
+ SRCFILE=`basename $$i .o`.C ; \
+ [ ! -f $$SRCFILE ] && SRCFILE=`basename $$i .o`.c ; \
+ echo "checking dependencies for $$SRCFILE" ; \
+- if g++ -MM -Wno-deprecated -I. -I$(INC) $$SRCFILE >> $(DEPENDFILE); then true ; else echo '' ; echo "Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit; fi; \
++ if clang++ -MM -Wno-deprecated -I. -I$(INC) $$SRCFILE >> $(DEPENDFILE); then true ; else echo '' ; echo "Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit; fi; \
+ echo '' >> $(DEPENDFILE) ; \
+ done; \
+
+@@ -968,7 +968,7 @@
+ found=`/usr/bin/find $$SRCDIR -depth 1 -name $$SRCFILE`; \
+ [ ! $$found ] && SRCFILE=`basename $$i .o`.c ; \
+ echo "checking dependencies for $$SRCFILE" ; \
+- if g++ -MM -Wno-deprecated -I. -I$(INC) $$SRCFILE >> $(DEPENDFILE); then true ; else echo '' ; echo "Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit; fi; \
++ if clang++ -MM -Wno-deprecated -I. -I$(INC) $$SRCFILE >> $(DEPENDFILE); then true ; else echo '' ; echo "Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit; fi; \
+ echo '' >> $(DEPENDFILE) ; \
+ done; \
+
+diff -bur charm-6.7.1/tests/charm++/megatest/Makefile updated-charm-6.7.1/tests/charm++/megatest/Makefile
+--- charm-6.7.1/tests/charm++/megatest/Makefile 2016-11-07 20:14:30.000000000 +0530
++++ updated-charm-6.7.1/tests/charm++/megatest/Makefile 2019-08-26 16:55:40.820902785 +0530
+@@ -118,7 +118,7 @@
+ for i in $(OBJS) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$SRCFILE" ; \
+- g++ -MM -I$(CHARMINC) $$SRCFILE | \
++ clang++ -MM -I$(CHARMINC) $$SRCFILE | \
+ perl $(CHARMBIN)/dep.pl $(CHARMINC) /usr/include /usr/local >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+--- charm-6.7.1/src/scripts/configure 2016-11-07 20:14:31.000000000 +0530
++++ updated-charm/charm-6.7.1/src/scripts/configure 2020-10-21 12:54:06.476958828 +0530
+@@ -2141,8 +2141,8 @@
+ $as_echo_n "checking \"$1\"... " >&6; }
+ echo "### $1" >> $charmout
+ cat $t >> $charmout
+- echo $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CXX $OPTS_LD -c $t -o test.o $4 >> $charmout
+- $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CXX $OPTS_LD -c $t -o test.o $4 > out 2>&1
++ echo $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CXX $OPTS_LD -Qunused-arguments -c $t -o test.o $4 >> $charmout
++ $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CXX $OPTS_LD -Qunused-arguments -c $t -o test.o $4 > out 2>&1
+ test_result $? "$1" "$2" "$3"
+ strictpass=$pass
+ strictfail=$fail
diff --git a/var/spack/repos/builtin/packages/charmpp/charm_6.8.2_aocc.patch b/var/spack/repos/builtin/packages/charmpp/charm_6.8.2_aocc.patch
new file mode 100644
index 0000000000..b1a736c2b6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/charmpp/charm_6.8.2_aocc.patch
@@ -0,0 +1,165 @@
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/cc-mpicxx.sh 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/cc-mpicxx.sh
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/cc-mpicxx.sh 2018-01-11 19:06:19.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/cc-mpicxx.sh 2019-11-12 06:02:23.005454343 -0600
+@@ -15,6 +15,7 @@
+ CMK_REAL_COMPILER=`$MPICXX -show 2>/dev/null | cut -d' ' -f1 `
+ case "$CMK_REAL_COMPILER" in
+ g++) CMK_AMD64="-m64 -fPIC" ;;
++clang++) CMK_AMD64="-m64 -fPIC" ;;
+ icpc) CMK_AMD64="-m64";;
+ pgCC) CMK_AMD64="-DCMK_FIND_FIRST_OF_PREDICATE=1 --no_using_std " ;;
+ FCC) CMK_AMD64="-Kfast -DCMK_FIND_FIRST_OF_PREDICATE=1 --variadic_macros";;
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/conv-mach-scyld.sh 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/conv-mach-scyld.sh
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/conv-mach-scyld.sh 2018-01-11 19:06:19.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/conv-mach-scyld.sh 2019-11-12 06:05:22.666969636 -0600
+@@ -1,13 +1,14 @@
+
+ case "$CMK_CC" in
+ mpicc*)
+- CMK_CPP_C="gcc -E "
+- CMK_CC="gcc -fPIC"
+- CMK_CC_RELIABLE="gcc -fPIC"
+- CMK_CC_FASTEST="gcc -fPIC"
+- CMK_CXX="g++ -fPIC"
+- CMK_LD="gcc"
+- CMK_LDXX="g++"
++ CMK_CPP_C="clang -E "
++ CMK_CC="clang -fPIC"
++ CMK_CC_RELIABLE="clang -fPIC"
++ CMK_CC_FASTEST="clang -fPIC"
++ CMK_CXXPP="clang -E "
++ CMK_CXX="clang++ -fPIC"
++ CMK_LD="clang"
++ CMK_LDXX="clang++"
+
+ # native compiler for compiling charmxi, etc
+ CMK_NATIVE_CC="$CMK_CC"
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/conv-mach.sh 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/conv-mach.sh
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/conv-mach.sh 2018-01-11 19:06:19.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/arch/mpi-linux-x86_64/conv-mach.sh 2019-11-12 06:07:41.361999246 -0600
+@@ -23,6 +23,7 @@
+
+ CMK_REAL_COMPILER=`$MPICXX -show 2>/dev/null | cut -d' ' -f1 `
+ case "$CMK_REAL_COMPILER" in
++clang++) CMK_AMD64_CC="$CMK_GCC64"; CMK_AMD64_CXX="$CMK_GCC64" ;;
+ g++) CMK_AMD64_CC="$CMK_GCC64"; CMK_AMD64_CXX="$CMK_GCC64" ;;
+ pgCC) CMK_AMD64_CC='-fPIC'; CMK_AMD64_CXX='-fPIC -DCMK_FIND_FIRST_OF_PREDICATE=1 --no_using_std ' ;;
+ charmc) echo "Error> charmc can not call AMPI's mpicxx/mpiCC wrapper! Please fix your PATH."; exit 1 ;;
+@@ -37,10 +38,10 @@
+ CMK_LIBS="-lckqt $CMK_SYSLIBS "
+ CMK_LD_LIBRARY_PATH="-Wl,-rpath,$CHARMLIBSO/"
+
+-CMK_NATIVE_CC="gcc $CMK_GCC64 "
+-CMK_NATIVE_LD="gcc $CMK_GCC64 "
+-CMK_NATIVE_CXX="g++ $CMK_GCC64 "
+-CMK_NATIVE_LDXX="g++ $CMK_GCC64 "
++CMK_NATIVE_CC="clang $CMK_GCC64 "
++CMK_NATIVE_LD="clang $CMK_GCC64 "
++CMK_NATIVE_CXX="clang++ $CMK_GCC64 "
++CMK_NATIVE_LDXX="clang++ $CMK_GCC64 "
+ CMK_NATIVE_LIBS=''
+
+ # fortran compiler
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/ckloop/Makefile 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/ckloop/Makefile
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/ckloop/Makefile 2018-01-11 19:06:15.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/ckloop/Makefile 2019-11-12 06:09:16.200438412 -0600
+@@ -38,7 +38,7 @@
+ for i in $(LIBOBJ) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$i : $$SRCFILE" ; \
+- g++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
++ clang++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -I$(CDIR)/tmp -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/completion/Makefile 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/completion/Makefile
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/completion/Makefile 2018-01-11 19:06:16.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/completion/Makefile 2019-11-12 06:09:41.247346697 -0600
+@@ -45,7 +45,7 @@
+ for i in $(LIBOBJ) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$i : $$SRCFILE" ; \
+- g++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
++ clang++ -MM -Wno-deprecated -I$(CDIR)/tmp $$SRCFILE >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -I$(CDIR)/tmp -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/NDMeshStreamer/Makefile 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/NDMeshStreamer/Makefile
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/NDMeshStreamer/Makefile 2018-01-11 19:06:15.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/libs/ck-libs/NDMeshStreamer/Makefile 2019-11-12 06:09:59.079993368 -0600
+@@ -52,7 +52,7 @@
+ for i in $(LIBOBJ) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$i : $$SRCFILE" ; \
+- g++ -MM -Wno-deprecated -I$(CDIR)/tmp -I../completion $$SRCFILE >> $(DEPENDFILE); \
++ clang++ -MM -Wno-deprecated -I$(CDIR)/tmp -I../completion $$SRCFILE >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -I$(CDIR)/tmp -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/src/QuickThreads/Makefile 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/QuickThreads/Makefile
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/QuickThreads/Makefile 2018-01-11 19:06:13.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/QuickThreads/Makefile 2019-11-12 06:10:37.744395459 -0600
+@@ -1,5 +1,5 @@
+
+-CC=gcc -I. -O2
++CC=clang -I. -O2
+
+ all: qt stp testpgm
+
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/src/scripts/Makefile 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/scripts/Makefile
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/scripts/Makefile 2018-01-11 19:06:20.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/scripts/Makefile 2019-11-12 06:10:59.888198461 -0600
+@@ -962,7 +962,7 @@
+ SRCFILE=`basename $$i .o`.C ; \
+ [ ! -f $$SRCFILE ] && SRCFILE=`basename $$i .o`.c ; \
+ echo "checking dependencies for $$SRCFILE" ; \
+- if g++ -std=c++0x -MM -Wno-deprecated -I. -I$(INC) $$SRCFILE >> $(DEPENDFILE); then true ; else echo '' ; echo "Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit; fi; \
++ if clang++ -std=c++0x -MM -Wno-deprecated -I. -I$(INC) $$SRCFILE >> $(DEPENDFILE); then true ; else echo '' ; echo "Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit; fi; \
+ echo '' >> $(DEPENDFILE) ; \
+ done; \
+
+@@ -988,7 +988,7 @@
+ found=`/usr/bin/find $$SRCDIR -depth 1 -name $$SRCFILE`; \
+ [ ! $$found ] && SRCFILE=`basename $$i .o`.c ; \
+ echo "checking dependencies for $$SRCFILE" ; \
+- if g++ -std=c++0x -MM -Wno-deprecated -I. -I$(INC) $$SRCFILE >> $(DEPENDFILE); then true ; else echo '' ; echo "Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit; fi; \
++ if clang++ -std=c++0x -MM -Wno-deprecated -I. -I$(INC) $$SRCFILE >> $(DEPENDFILE); then true ; else echo '' ; echo "Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit; fi; \
+ echo '' >> $(DEPENDFILE) ; \
+ done; \
+
+diff -ruN 00/NAMD_2.13_Source/charm-6.8.2/tests/charm++/megatest/Makefile 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/tests/charm++/megatest/Makefile
+--- 00/NAMD_2.13_Source/charm-6.8.2/tests/charm++/megatest/Makefile 2018-01-11 19:06:18.000000000 -0600
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/tests/charm++/megatest/Makefile 2019-11-12 06:11:38.193587531 -0600
+@@ -116,7 +116,7 @@
+ for i in $(OBJS) ; do \
+ SRCFILE=`basename $$i .o`.C ; \
+ echo "checking dependencies for $$SRCFILE" ; \
+- g++ -std=c++0x -MM -I$(CHARMINC) $$SRCFILE | \
++ clang++ -std=c++0x -MM -I$(CHARMINC) $$SRCFILE | \
+ perl $(CHARMBIN)/dep.pl $(CHARMINC) /usr/include /usr/local >> $(DEPENDFILE); \
+ echo ' $$(CHARMC) -o '$$i $$SRCFILE >> $(DEPENDFILE) ; \
+ done;
+--- 00/NAMD_2.13_Source/charm-6.8.2/src/scripts/configure 2018-01-12 06:36:21.000000000 +0530
++++ 00_aocc-patch/NAMD_2.13_Source/charm-6.8.2/src/scripts/configure 2020-10-21 15:01:20.240748316 +0530
+@@ -2183,8 +2183,8 @@
+ $as_echo_n "checking \"$1\"... " >&6; }
+ echo "### $1" >> $charmout
+ cat $tc >> $charmout
+- echo $CMK_CC -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CC $OPTS_LD -c $tc -o test.o $4 >> $charmout
+- $CMK_CC -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CC $OPTS_LD -c $tc -o test.o $4 > out 2>&1
++ echo $CMK_CC -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CC $OPTS_LD -Qunused-arguments -c $tc -o test.o $4 >> $charmout
++ $CMK_CC -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CC $OPTS_LD -Qunused-arguments -c $tc -o test.o $4 > out 2>&1
+ test_result $? "$1" "$2" "$3"
+ strictpass=$pass
+ strictfail=$fail
+@@ -2208,8 +2208,8 @@
+ $as_echo_n "checking \"$1\"... " >&6; }
+ echo "### $1" >> $charmout
+ cat $t >> $charmout
+- echo $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CXX $OPTS_LD -c $t -o test.o $4 >> $charmout
+- $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CXX $OPTS_LD -c $t -o test.o $4 > out 2>&1
++ echo $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CXX $OPTS_LD -Qunused-arguments -c $t -o test.o $4 >> $charmout
++ $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $CMK_SYSINC $OPTS_CXX $OPTS_LD -Qunused-arguments -c $t -o test.o $4 > out 2>&1
+ test_result $? "$1" "$2" "$3"
+ strictpass=$pass
+ strictfail=$fail
diff --git a/var/spack/repos/builtin/packages/charmpp/package.py b/var/spack/repos/builtin/packages/charmpp/package.py
index 9fbc8573ba..053d50489a 100644
--- a/var/spack/repos/builtin/packages/charmpp/package.py
+++ b/var/spack/repos/builtin/packages/charmpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,11 +17,13 @@ class Charmpp(Package):
allows programs to run portably from small multicore computers
(your laptop) to the largest supercomputers."""
- homepage = "http://charmplusplus.org"
- url = "http://charm.cs.illinois.edu/distrib/charm-6.8.2.tar.gz"
+ homepage = "https://charmplusplus.org"
+ url = "https://charm.cs.illinois.edu/distrib/charm-6.8.2.tar.gz"
git = "https://github.com/UIUC-PPL/charm.git"
- version("develop", branch="master")
+ maintainers = ["matthiasdiener"]
+
+ version("main", branch="main")
version('6.10.2', sha256='7abb4cace8aebdfbb8006eac03eb766897c009cfb919da0d0a33f74c3b4e6deb')
version('6.10.1', sha256='ab96198105daabbb8c8bdf370f87b0523521ce502c656cb6cd5b89f69a2c70a8')
@@ -37,10 +39,14 @@ class Charmpp(Package):
version("6.5.1", sha256="68aa43e2a6e476e116a7e80e385c25c6ac6497807348025505ba8bfa256ed34a")
# Support OpenMPI; see
- # <https://charm.cs.illinois.edu/redmine/issues/1206>
+ # <https://github.com/UIUC-PPL/charm/issues/1206>
# Patch is no longer needed in versions 6.8.0+
patch("mpi.patch", when="@:6.7.1")
+ # Patch for AOCC
+ patch('charm_6.7.1_aocc.patch', when="@6.7.1 %aocc", level=1)
+ patch('charm_6.8.2_aocc.patch', when="@6.8.2 %aocc", level=3)
+
# support Fujitsu compiler
patch("fj.patch", when="%fj")
@@ -147,17 +153,12 @@ class Charmpp(Package):
("darwin", "x86_64", "mpi"): "mpi-darwin-x86_64",
("darwin", "x86_64", "multicore"): "multicore-darwin-x86_64",
("darwin", "x86_64", "netlrts"): "netlrts-darwin-x86_64",
- ("linux", "i386", "mpi"): "mpi-linux",
- ("linux", "i386", "multicore"): "multicore-linux",
- ("linux", "i386", "netlrts"): "netlrts-linux",
- ("linux", "i386", "uth"): "uth-linux",
("linux", "x86_64", "mpi"): "mpi-linux-x86_64",
("linux", "x86_64", "multicore"): "multicore-linux-x86_64",
("linux", "x86_64", "netlrts"): "netlrts-linux-x86_64",
("linux", "x86_64", "verbs"): "verbs-linux-x86_64",
("linux", "x86_64", "ofi"): "ofi-linux-x86_64",
("linux", "x86_64", "ucx"): "ucx-linux-x86_64",
- ("linux", "x86_64", "uth"): "uth-linux-x86_64",
("linux", "ppc", "mpi"): "mpi-linux-ppc",
("linux", "ppc", "multicore"): "multicore-linux-ppc",
("linux", "ppc", "netlrts"): "netlrts-linux-ppc",
@@ -173,6 +174,21 @@ class Charmpp(Package):
("cnl", "x86_64", "gni"): "gni-crayxc",
("cnl", "x86_64", "mpi"): "mpi-crayxc",
}
+
+ # Some versions were renamed/removed in 6.11
+ if self.spec.version < Version("6.11.0"):
+ versions.update({("linux", "i386", "mpi"): "mpi-linux"})
+ versions.update({("linux", "i386", "multicore"):
+ "multicore-linux"})
+ versions.update({("linux", "i386", "netlrts"): "netlrts-linux"})
+ versions.update({("linux", "i386", "uth"): "uth-linux"})
+ else:
+ versions.update({("linux", "i386", "mpi"): "mpi-linux-i386"})
+ versions.update({("linux", "i386", "multicore"):
+ "multicore-linux-i386"})
+ versions.update({("linux", "i386", "netlrts"):
+ "netlrts-linux-i386"})
+
if (plat, mach, comm) not in versions:
raise InstallError(
"The communication mechanism %s is not supported "
@@ -224,12 +240,15 @@ class Charmpp(Package):
# not, then we need to query the compiler vendor from Spack
# here.
options = [
- os.path.basename(self.compiler.cc),
- os.path.basename(self.compiler.fc),
- "-j%d" % make_jobs,
- "--destination=%s" % builddir,
+ os.path.basename(self.compiler.cc)
]
+ if '@:6.8.2 %aocc' not in spec:
+ options.append(os.path.basename(self.compiler.fc))
+
+ options.append("-j%d" % make_jobs)
+ options.append("--destination=%s" % builddir)
+
if "pmi=slurmpmi" in spec:
options.append("slurmpmi")
if "pmi=slurmpmi2" in spec:
@@ -301,7 +320,10 @@ class Charmpp(Package):
os.rename(tmppath, filepath)
except (IOError, OSError):
pass
- shutil.rmtree(join_path(builddir, "tmp"))
+
+ tmp_path = join_path(builddir, "tmp")
+ if not os.path.islink(tmp_path):
+ shutil.rmtree(tmp_path)
if self.spec.satisfies('@6.9.99'):
# A broken 'doc' link in the prefix can break the build.
@@ -315,8 +337,8 @@ class Charmpp(Package):
@run_after('install')
@on_package_attributes(run_tests=True)
def check_build(self):
- make('-C', join_path(self.stage.source_path, 'charm/tests'),
- 'test', parallel=False)
+ make('-C', join_path(self.stage.source_path, 'tests'),
+ 'test', 'TESTOPTS=++local', parallel=False)
def setup_dependent_build_environment(self, env, dependent_spec):
env.set('MPICC', self.prefix.bin.ampicc)
diff --git a/var/spack/repos/builtin/packages/chatterbug/package.py b/var/spack/repos/builtin/packages/chatterbug/package.py
index 7bee6bd4cb..0ecedcadcc 100644
--- a/var/spack/repos/builtin/packages/chatterbug/package.py
+++ b/var/spack/repos/builtin/packages/chatterbug/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/check/package.py b/var/spack/repos/builtin/packages/check/package.py
index 93121f2cd3..04f3738b5e 100644
--- a/var/spack/repos/builtin/packages/check/package.py
+++ b/var/spack/repos/builtin/packages/check/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/chgcentre/package.py b/var/spack/repos/builtin/packages/chgcentre/package.py
index 7d93b296a0..48e0eac6cb 100644
--- a/var/spack/repos/builtin/packages/chgcentre/package.py
+++ b/var/spack/repos/builtin/packages/chgcentre/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/chill/package.py b/var/spack/repos/builtin/packages/chill/package.py
index 1358453b09..0d7c116597 100644
--- a/var/spack/repos/builtin/packages/chill/package.py
+++ b/var/spack/repos/builtin/packages/chill/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/chlorop/package.py b/var/spack/repos/builtin/packages/chlorop/package.py
index a7bcb696f1..119c06a1f6 100644
--- a/var/spack/repos/builtin/packages/chlorop/package.py
+++ b/var/spack/repos/builtin/packages/chlorop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ class Chlorop(Package):
homepage = "http://www.cbs.dtu.dk/services/ChloroP/"
url = "file://{0}/chlorop-1.1.Linux.tar.gz".format(os.getcwd())
+ manual_download = True
version('1.1', 'eb0ba6b28dfa735163ad5fc70e30139e46e33f6ae27f87666a7167a4ac5f71d9')
diff --git a/var/spack/repos/builtin/packages/chombo/package.py b/var/spack/repos/builtin/packages/chombo/package.py
index 3b05e34a75..af4a2ab68b 100644
--- a/var/spack/repos/builtin/packages/chombo/package.py
+++ b/var/spack/repos/builtin/packages/chombo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/chrony/package.py b/var/spack/repos/builtin/packages/chrony/package.py
index f723fcc14a..ce87f569e3 100644
--- a/var/spack/repos/builtin/packages/chrony/package.py
+++ b/var/spack/repos/builtin/packages/chrony/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,7 @@ class Chrony(AutotoolsPackage):
version('3.3', sha256='0dd7323b5ed9e3208236c1b39fcabf2ad03469fa07ac516ba9c682206133f66d')
depends_on('ruby-asciidoctor')
+ depends_on('bison', type='build')
def setup_run_environment(self, env):
env.prepend_path('PATH', self.prefix.sbin)
diff --git a/var/spack/repos/builtin/packages/chrpath/package.py b/var/spack/repos/builtin/packages/chrpath/package.py
index 0cfbc2a7fc..10b62060c1 100644
--- a/var/spack/repos/builtin/packages/chrpath/package.py
+++ b/var/spack/repos/builtin/packages/chrpath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cinch/package.py b/var/spack/repos/builtin/packages/cinch/package.py
index f46a801cd4..a5a0b6a6c3 100644
--- a/var/spack/repos/builtin/packages/cinch/package.py
+++ b/var/spack/repos/builtin/packages/cinch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/circos/package.py b/var/spack/repos/builtin/packages/circos/package.py
index 9a4cb997d1..f3a57bb47a 100644
--- a/var/spack/repos/builtin/packages/circos/package.py
+++ b/var/spack/repos/builtin/packages/circos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cistem/package.py b/var/spack/repos/builtin/packages/cistem/package.py
index b12d35934f..991714302a 100644
--- a/var/spack/repos/builtin/packages/cistem/package.py
+++ b/var/spack/repos/builtin/packages/cistem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/citcoms/package.py b/var/spack/repos/builtin/packages/citcoms/package.py
index 35fe86b2b4..d0625a5235 100644
--- a/var/spack/repos/builtin/packages/citcoms/package.py
+++ b/var/spack/repos/builtin/packages/citcoms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cityhash/package.py b/var/spack/repos/builtin/packages/cityhash/package.py
index ebe96e58e2..3ad3c96cd2 100644
--- a/var/spack/repos/builtin/packages/cityhash/package.py
+++ b/var/spack/repos/builtin/packages/cityhash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ck/package.py b/var/spack/repos/builtin/packages/ck/package.py
index 9752aa1ebd..6a326d2a4a 100644
--- a/var/spack/repos/builtin/packages/ck/package.py
+++ b/var/spack/repos/builtin/packages/ck/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clamav/package.py b/var/spack/repos/builtin/packages/clamav/package.py
index cb67e39c1b..8fc5e776f5 100644
--- a/var/spack/repos/builtin/packages/clamav/package.py
+++ b/var/spack/repos/builtin/packages/clamav/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clamr/package.py b/var/spack/repos/builtin/packages/clamr/package.py
index ea72bbb1e2..4c09e7c4e8 100644
--- a/var/spack/repos/builtin/packages/clamr/package.py
+++ b/var/spack/repos/builtin/packages/clamr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,7 +27,7 @@ class Clamr(CMakePackage):
values=('single', 'mixed', 'full'),
description='single, mixed, or full double precision values')
- depends_on('cmake@3.1:')
+ depends_on('cmake@3.1:', type='build')
depends_on('mpi')
depends_on('mpe', when='graphics=mpe')
diff --git a/var/spack/repos/builtin/packages/clapack/package.py b/var/spack/repos/builtin/packages/clapack/package.py
index 6796bf97ff..7a96752f57 100644
--- a/var/spack/repos/builtin/packages/clapack/package.py
+++ b/var/spack/repos/builtin/packages/clapack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clara/package.py b/var/spack/repos/builtin/packages/clara/package.py
index f60b885a7b..9aa79edef7 100644
--- a/var/spack/repos/builtin/packages/clara/package.py
+++ b/var/spack/repos/builtin/packages/clara/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/claw/package.py b/var/spack/repos/builtin/packages/claw/package.py
index 19b574f530..753cadb439 100644
--- a/var/spack/repos/builtin/packages/claw/package.py
+++ b/var/spack/repos/builtin/packages/claw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -34,10 +34,18 @@ class Claw(CMakePackage):
depends_on('java@7:', when="@1.1.0:1.2.3")
depends_on('libxml2')
+ # Enable parsing of source files with calls to TRACEBACKQQ from the Intel
+ # Fortran run-time library:
patch('https://github.com/claw-project/claw-compiler/commit/e9fe6dbd291454ce34dd58f21d102f7f1bdff874.patch',
sha256='44a3e17bf6e972db9760fc50bc0948309ee441dab1cdb11816ba675de0138549',
when='@:2.0.2%intel')
+ # Fix the dependency preprocessing for compilers that cannot use
+ # redirection > to save file (cce is currently the only known case):
+ patch('https://github.com/claw-project/claw-compiler/commit/4d8bc7a794af3651b8b61501388fc00096b23a85.patch',
+ sha256='0a55110c67d7755741e1c86c2f71341286e7502a81ac29958ce80273e87bc8e1',
+ when='@2.0.2%cce')
+
# Cache ANT dependencies in the stage directory.
# Otherwise, they are cached to the user's home directory.
patch('ivy_local_cache.patch')
@@ -47,6 +55,18 @@ class Claw(CMakePackage):
filter_compiler_wrappers('claw_f.conf', relative_root='etc')
+ def flag_handler(self, name, flags):
+ if name == 'cflags':
+ comp_spec = self.spec.compiler
+ # https://gcc.gnu.org/gcc-10/porting_to.html
+ # https://releases.llvm.org/11.0.0/tools/clang/docs/ReleaseNotes.html#modified-compiler-flags
+ # TODO: take care of other Clang-based compilers when they become
+ # real cases
+ if comp_spec.satisfies('gcc@10:') or comp_spec.satisfies('cce@11:'):
+ flags.append('-fcommon')
+
+ return flags, None, None
+
def cmake_args(self):
args = [
'-DOMNI_CONF_OPTION=--with-libxml2=%s' %
diff --git a/var/spack/repos/builtin/packages/cleaveland4/package.py b/var/spack/repos/builtin/packages/cleaveland4/package.py
index d9d845bfdc..eb01d19957 100644
--- a/var/spack/repos/builtin/packages/cleaveland4/package.py
+++ b/var/spack/repos/builtin/packages/cleaveland4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cleverleaf/package.py b/var/spack/repos/builtin/packages/cleverleaf/package.py
index 2b8163f5a6..a177bcc69e 100644
--- a/var/spack/repos/builtin/packages/cleverleaf/package.py
+++ b/var/spack/repos/builtin/packages/cleverleaf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clfft/package.py b/var/spack/repos/builtin/packages/clfft/package.py
index c87d298969..53c10bcb3e 100644
--- a/var/spack/repos/builtin/packages/clfft/package.py
+++ b/var/spack/repos/builtin/packages/clfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,12 +26,8 @@ class Clfft(CMakePackage):
root_cmakelists_dir = 'src'
def cmake_args(self):
- spec = self.spec
-
args = [
- '-DBUILD_CLIENT:BOOL={0}'.format((
- 'ON' if '+client' in spec else 'OFF')),
- '-DBUILD_CALLBACK_CLIENT:BOOL={0}'.format((
- 'ON' if '+client' in spec else 'OFF'))
+ self.define_from_variant('BUILD_CLIENT', 'client'),
+ self.define_from_variant('BUILD_CALLBACK_CLIENT', 'client')
]
return args
diff --git a/var/spack/repos/builtin/packages/clhep/package.py b/var/spack/repos/builtin/packages/clhep/package.py
index 4fca7f7efb..6ff3a38000 100644
--- a/var/spack/repos/builtin/packages/clhep/package.py
+++ b/var/spack/repos/builtin/packages/clhep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,8 +14,11 @@ class Clhep(CMakePackage):
list_url = "https://proj-clhep.web.cern.ch/proj-clhep/"
list_depth = 1
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
+ version('2.4.4.0', sha256='5df78c11733a091da9ae5a24ce31161d44034dd45f20455587db85f1ca1ba539')
version('2.4.1.3', sha256='27c257934929f4cb1643aa60aeaad6519025d8f0a1c199bc3137ad7368245913')
version('2.4.1.2', sha256='ff96e7282254164380460bc8cf2dff2b58944084eadcd872b5661eb5a33fa4b8')
version('2.4.1.0', sha256='d14736eb5c3d21f86ce831dc1afcf03d423825b35c84deb6f8fd16773528c54d')
diff --git a/var/spack/repos/builtin/packages/cli11/package.py b/var/spack/repos/builtin/packages/cli11/package.py
new file mode 100644
index 0000000000..74b0b979f3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cli11/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Cli11(CMakePackage):
+ """CLI11 is a command line parser for C++11 and beyond that provides a rich
+ feature set with a simple and intuitive interface."""
+
+ homepage = "https://cliutils.github.io/CLI11/book/"
+ url = "https://github.com/CLIUtils/CLI11/archive/v1.9.1.tar.gz"
+ maintainers = ['nightlark']
+
+ version('1.9.1', sha256='c780cf8cf3ba5ec2648a7eeb20a47e274493258f38a9b417628e0576f473a50b')
+
+ depends_on('cmake@3.4:', type='build')
+
+ def cmake_args(self):
+ args = [
+ '-DCLI11_BUILD_DOCS=OFF',
+ '-DCLI11_BUILD_TESTS=OFF',
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/clinfo/package.py b/var/spack/repos/builtin/packages/clinfo/package.py
index 1fb78b42aa..9d6f4f26b8 100644
--- a/var/spack/repos/builtin/packages/clinfo/package.py
+++ b/var/spack/repos/builtin/packages/clinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clingo-bootstrap/package.py b/var/spack/repos/builtin/packages/clingo-bootstrap/package.py
index aeef40c4e1..5408ef92b7 100644
--- a/var/spack/repos/builtin/packages/clingo-bootstrap/package.py
+++ b/var/spack/repos/builtin/packages/clingo-bootstrap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clingo/package.py b/var/spack/repos/builtin/packages/clingo/package.py
index 84f3c37c27..6c716fce73 100644
--- a/var/spack/repos/builtin/packages/clingo/package.py
+++ b/var/spack/repos/builtin/packages/clingo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,9 +23,11 @@ class Clingo(CMakePackage):
maintainers = ["tgamblin", "alalazo"]
- version('master', branch='master', submodules=True, preferred=True)
+ version('master', branch='master', submodules=True)
version('spack', commit='2a025667090d71b2c9dce60fe924feb6bde8f667', submodules=True)
+ version('5.5.0', sha256='c9d7004a0caec61b636ad1c1960fbf339ef8fdee9719321fc1b6b210613a8499')
+ version('5.4.1', sha256='ac6606388abfe2482167ce8fd4eb0737ef6abeeb35a9d3ac3016c6f715bfee02')
version('5.4.0', sha256='e2de331ee0a6d254193aab5995338a621372517adcf91568092be8ac511c18f3')
version('5.3.0', sha256='b0d406d2809352caef7fccf69e8864d55e81ee84f4888b0744894977f703f976')
version('5.2.2', sha256='da1ef8142e75c5a6f23c9403b90d4f40b9f862969ba71e2aaee9a257d058bfcf')
@@ -40,6 +42,13 @@ class Clingo(CMakePackage):
depends_on('python', type=("build", "link", "run"), when="+python")
extends('python', when='+python')
+ # Clingo 5.5.0 supports Python 3.6 or later and needs CFFI
+ depends_on(
+ 'python@3.6.0:',
+ type=('build', 'link', 'run'), when='@5.5.0: +python'
+ )
+ depends_on('py-cffi', type=('build', 'run'), when='@5.5.0: +python')
+
patch('python38.patch', when="@5.3:5.4")
def patch(self):
diff --git a/var/spack/repos/builtin/packages/cln/package.py b/var/spack/repos/builtin/packages/cln/package.py
index 4d1e731080..a7dae3b5f5 100644
--- a/var/spack/repos/builtin/packages/cln/package.py
+++ b/var/spack/repos/builtin/packages/cln/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -38,6 +38,7 @@ class Cln(AutotoolsPackage):
depends_on('libtool', type='build')
depends_on('m4', type='build')
depends_on('gmp@4.1:', when='+gmp')
+ depends_on('texinfo', type='build')
# Dependencies required to define macro AC_LIB_LINKFLAGS_FROM_LIBS
depends_on('gettext', type='build')
diff --git a/var/spack/repos/builtin/packages/cloc/package.py b/var/spack/repos/builtin/packages/cloc/package.py
index d5e8feeffe..2ad98d111d 100644
--- a/var/spack/repos/builtin/packages/cloc/package.py
+++ b/var/spack/repos/builtin/packages/cloc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cloog/package.py b/var/spack/repos/builtin/packages/cloog/package.py
index cc62b11e27..3ffea92acd 100644
--- a/var/spack/repos/builtin/packages/cloog/package.py
+++ b/var/spack/repos/builtin/packages/cloog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cloverleaf/package.py b/var/spack/repos/builtin/packages/cloverleaf/package.py
index eba94f4649..a4a0c43d3a 100644
--- a/var/spack/repos/builtin/packages/cloverleaf/package.py
+++ b/var/spack/repos/builtin/packages/cloverleaf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cloverleaf3d/package.py b/var/spack/repos/builtin/packages/cloverleaf3d/package.py
index 77e34f2a63..56de6ac5ee 100644
--- a/var/spack/repos/builtin/packages/cloverleaf3d/package.py
+++ b/var/spack/repos/builtin/packages/cloverleaf3d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clp/package.py b/var/spack/repos/builtin/packages/clp/package.py
index 90ff785016..667ec68f8c 100644
--- a/var/spack/repos/builtin/packages/clp/package.py
+++ b/var/spack/repos/builtin/packages/clp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clustal-omega/package.py b/var/spack/repos/builtin/packages/clustal-omega/package.py
index d966eb65d2..ab7161365b 100644
--- a/var/spack/repos/builtin/packages/clustal-omega/package.py
+++ b/var/spack/repos/builtin/packages/clustal-omega/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/clustalw/package.py b/var/spack/repos/builtin/packages/clustalw/package.py
index 42aca319d4..20a926090c 100644
--- a/var/spack/repos/builtin/packages/clustalw/package.py
+++ b/var/spack/repos/builtin/packages/clustalw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cmake/5882-enable-cce-fortran-preprocessing.patch b/var/spack/repos/builtin/packages/cmake/5882-enable-cce-fortran-preprocessing.patch
new file mode 100644
index 0000000000..5e01a0079d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cmake/5882-enable-cce-fortran-preprocessing.patch
@@ -0,0 +1,31 @@
+From ef513fe3d1d864d865d7143699834228988a7cd7 Mon Sep 17 00:00:00 2001
+From: Brad King <brad.king@kitware.com>
+Date: Fri, 5 Mar 2021 08:08:16 -0500
+Subject: [PATCH] Cray: Enable explicit Fortran preprocessing for Ninja
+ generator
+
+Cray 11.0 adds support for preprocessing with output written to a
+specified file (instead of always next to the source). Use it to
+enable Cray Fortran with the Ninja generator.
+
+Patch-by: James Elliott
+Fixes: #20731
+---
+ Modules/Compiler/Cray-Fortran.cmake | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/Modules/Compiler/Cray-Fortran.cmake b/Modules/Compiler/Cray-Fortran.cmake
+index 696ae76074..0d5e1c7679 100644
+--- a/Modules/Compiler/Cray-Fortran.cmake
++++ b/Modules/Compiler/Cray-Fortran.cmake
+@@ -19,3 +19,7 @@ else()
+ set(CMAKE_Fortran_COMPILE_OPTIONS_PREPROCESS_ON "-eZ")
+ set(CMAKE_Fortran_COMPILE_OPTIONS_PREPROCESS_OFF "-dZ")
+ endif()
++
++if (NOT CMAKE_Fortran_COMPILER_VERSION VERSION_LESS 11.0)
++ set(CMAKE_Fortran_PREPROCESS_SOURCE "<CMAKE_Fortran_COMPILER> -o <PREPROCESSED_SOURCE> <DEFINES> <INCLUDES> <FLAGS> -eP <SOURCE>")
++endif()
+--
+GitLab
+
diff --git a/var/spack/repos/builtin/packages/cmake/package.py b/var/spack/repos/builtin/packages/cmake/package.py
index a3bad699e1..aec3d6b41e 100644
--- a/var/spack/repos/builtin/packages/cmake/package.py
+++ b/var/spack/repos/builtin/packages/cmake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,20 +11,38 @@ class Cmake(Package):
tools designed to build, test and package software.
"""
homepage = 'https://www.cmake.org'
- url = 'https://github.com/Kitware/CMake/releases/download/v3.15.5/cmake-3.15.5.tar.gz'
+ url = 'https://github.com/Kitware/CMake/releases/download/v3.19.0/cmake-3.19.0.tar.gz'
maintainers = ['chuckatkins']
+ tags = ['build-tools']
+
executables = ['^cmake$']
+ version('3.20.2', sha256='aecf6ecb975179eb3bb6a4a50cae192d41e92b9372b02300f9e8f1d5f559544e')
+ version('3.20.1', sha256='3f1808b9b00281df06c91dd7a021d7f52f724101000da7985a401678dfe035b0')
+ version('3.20.0', sha256='9c06b2ddf7c337e31d8201f6ebcd3bba86a9a033976a9aee207fe0c6971f4755')
+ version('3.19.8', sha256='09b4fa4837aae55c75fb170f6a6e2b44818deba48335d1969deddfbb34e30369')
+ version('3.19.7', sha256='58a15f0d56a0afccc3cc5371234fce73fcc6c8f9dbd775d898e510b83175588e')
+ version('3.19.6', sha256='ec87ab67c45f47c4285f204280c5cde48e1c920cfcfed1555b27fb3b1a1d20ba')
+ version('3.19.5', sha256='c432296eb5dec6d71eae15d140f6297d63df44e9ffe3e453628d1dc8fc4201ce')
+ version('3.19.4', sha256='7d0232b9f1c57e8de81f38071ef8203e6820fe7eec8ae46a1df125d88dbcc2e1')
+ version('3.19.3', sha256='3faca7c131494a1e34d66e9f8972ff5369e48d419ea8ceaa3dc15b4c11367732')
+ version('3.19.2', sha256='e3e0fd3b23b7fb13e1a856581078e0776ffa2df4e9d3164039c36d3315e0c7f0')
+ version('3.19.1', sha256='1d266ea3a76ef650cdcf16c782a317cb4a7aa461617ee941e389cb48738a3aba')
+ version('3.19.0', sha256='fdda688155aa7e72b7c63ef6f559fca4b6c07382ea6dca0beb5f45aececaf493')
+ version('3.18.6', sha256='124f571ab70332da97a173cb794dfa09a5b20ccbb80a08e56570a500f47b6600')
+ version('3.18.5', sha256='080bf24b0f73f4bf3ec368d2be1aa59369b9bb1cd693deeb6f18fe553ca74ab4')
version('3.18.4', sha256='597c61358e6a92ecbfad42a9b5321ddd801fc7e7eca08441307c9138382d4f77')
version('3.18.3', sha256='2c89f4e30af4914fd6fb5d00f863629812ada848eee4e2d29ec7e456d7fa32e5')
version('3.18.2', sha256='5d4e40fc775d3d828c72e5c45906b4d9b59003c9433ff1b36a1cb552bbd51d7e')
version('3.18.1', sha256='c0e3338bd37e67155b9d1e9526fec326b5c541f74857771b7ffed0c46ad62508')
version('3.18.0', sha256='83b4ffcb9482a73961521d2bafe4a16df0168f03f56e6624c419c461e5317e29')
+ version('3.17.5', sha256='8c3083d98fd93c1228d5e4e40dbff2dd88f4f7b73b9fa24a2938627b8bc28f1a')
version('3.17.4', sha256='86985d73d0a63ec99c236aab5287316e252164f33d7c4cb160954a980c71f36f')
version('3.17.3', sha256='0bd60d512275dc9f6ef2a2865426a184642ceb3761794e6b65bff233b91d8c40')
version('3.17.1', sha256='3aa9114485da39cbd9665a0bfe986894a282d5f0882b1dea960a739496620727')
version('3.17.0', sha256='b74c05b55115eacc4fa2b77a814981dbda05cdc95a53e279fe16b7b272f00847')
+ version('3.16.9', sha256='1708361827a5a0de37d55f5c9698004c035abb1de6120a376d5d59a81630191f')
version('3.16.8', sha256='177434021132686cb901fea7db9fa2345efe48d566b998961594d5cc346ac588')
version('3.16.7', sha256='5f49c95a2933b1800f14840f3a389f4cef0b19093985a35053b43f38ec21358f')
version('3.16.6', sha256='6f6ff1a197851b0fa8412ff5de602e6717a4eb9509b2c385b08589c4e7a16b62')
@@ -91,6 +109,10 @@ class Cmake(Package):
version('3.0.2', sha256='6b4ea61eadbbd9bec0ccb383c29d1f4496eacc121ef7acf37c7a24777805693e')
version('2.8.10.2', sha256='ce524fb39da06ee6d47534bbcec6e0b50422e18b62abc4781a4ba72ea2910eb1')
+ variant('build_type', default='Release',
+ description='CMake build type',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'))
+
# Revert the change that introduced a regression when parsing mpi link
# flags, see: https://gitlab.kitware.com/cmake/cmake/issues/19516
patch('cmake-revert-findmpi-link-flag-list.patch', when='@3.15.0')
@@ -171,6 +193,13 @@ class Cmake(Package):
# https://gitlab.kitware.com/cmake/cmake/-/merge_requests/5025
patch('pgi-cxx-ansi.patch', when='@3.15:3.18.99')
+ # Adds CCE v11+ fortran preprocessing definition.
+ # requires Cmake 3.19+
+ # https://gitlab.kitware.com/cmake/cmake/-/merge_requests/5882
+ patch('5882-enable-cce-fortran-preprocessing.patch',
+ sha256='b48396c0e4f61756248156b6cebe9bc0d7a22228639b47b5aa77c9330588ce88',
+ when='@3.19.0:3.19.99')
+
conflicts('+qt', when='^qt@5.4.0') # qt-5.4.0 has broken CMake modules
# https://gitlab.kitware.com/cmake/cmake/issues/18166
@@ -200,6 +229,8 @@ class Cmake(Package):
def bootstrap_args(self):
spec = self.spec
args = [
+ 'CFLAGS=-O3',
+ 'CXXFLAGS=-O3',
'--prefix={0}'.format(self.prefix),
'--parallel={0}'.format(make_jobs)
]
@@ -228,8 +259,8 @@ class Cmake(Package):
# Now for CMake arguments to pass after the initial bootstrap
args.append('--')
- # Make sure to create an optimized release build
- args.append('-DCMAKE_BUILD_TYPE=Release')
+ args.append('-DCMAKE_BUILD_TYPE={0}'.format(
+ self.spec.variants['build_type'].value))
# Install CMake correctly, even if `spack install` runs
# inside a ctest environment
diff --git a/var/spack/repos/builtin/packages/cmaq/package.py b/var/spack/repos/builtin/packages/cmaq/package.py
index 2f8d35e5c4..19c6789928 100644
--- a/var/spack/repos/builtin/packages/cmaq/package.py
+++ b/var/spack/repos/builtin/packages/cmaq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cmark/package.py b/var/spack/repos/builtin/packages/cmark/package.py
index a5391821b1..392087fcb8 100644
--- a/var/spack/repos/builtin/packages/cmark/package.py
+++ b/var/spack/repos/builtin/packages/cmark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cminpack/package.py b/var/spack/repos/builtin/packages/cminpack/package.py
index e269accabf..a553de9a7b 100644
--- a/var/spack/repos/builtin/packages/cminpack/package.py
+++ b/var/spack/repos/builtin/packages/cminpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -30,8 +30,7 @@ class Cminpack(CMakePackage):
def cmake_args(self):
args = [
- '-DBUILD_SHARED_LIBS=%s' % (
- 'ON' if '+shared' in self.spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
'-DUSE_BLAS=%s' % (
'ON' if 'blas' in self.spec else 'OFF')
]
diff --git a/var/spack/repos/builtin/packages/cmocka/package.py b/var/spack/repos/builtin/packages/cmocka/package.py
index 4fd6324375..8e2a81fc58 100644
--- a/var/spack/repos/builtin/packages/cmocka/package.py
+++ b/var/spack/repos/builtin/packages/cmocka/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cmockery/package.py b/var/spack/repos/builtin/packages/cmockery/package.py
index bb4cf5b22c..c35b44bc59 100644
--- a/var/spack/repos/builtin/packages/cmockery/package.py
+++ b/var/spack/repos/builtin/packages/cmockery/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cmor/package.py b/var/spack/repos/builtin/packages/cmor/package.py
index 5cbfa69613..2d30d7c721 100644
--- a/var/spack/repos/builtin/packages/cmor/package.py
+++ b/var/spack/repos/builtin/packages/cmor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cnmem/package.py b/var/spack/repos/builtin/packages/cnmem/package.py
index 9e6ebd4d86..9dc2671c5a 100644
--- a/var/spack/repos/builtin/packages/cnmem/package.py
+++ b/var/spack/repos/builtin/packages/cnmem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cnpy/package.py b/var/spack/repos/builtin/packages/cnpy/package.py
index c80db33b57..0019892865 100644
--- a/var/spack/repos/builtin/packages/cnpy/package.py
+++ b/var/spack/repos/builtin/packages/cnpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cntk/package.py b/var/spack/repos/builtin/packages/cntk/package.py
index 098341402e..64ebe95c02 100644
--- a/var/spack/repos/builtin/packages/cntk/package.py
+++ b/var/spack/repos/builtin/packages/cntk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cntk1bitsgd/package.py b/var/spack/repos/builtin/packages/cntk1bitsgd/package.py
index efaa6e1af3..3e6e67b67a 100644
--- a/var/spack/repos/builtin/packages/cntk1bitsgd/package.py
+++ b/var/spack/repos/builtin/packages/cntk1bitsgd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cnvnator/package.py b/var/spack/repos/builtin/packages/cnvnator/package.py
index 8160f21e02..219f70b66a 100644
--- a/var/spack/repos/builtin/packages/cnvnator/package.py
+++ b/var/spack/repos/builtin/packages/cnvnator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,7 +37,7 @@ class Cnvnator(MakefilePackage):
makefile.filter('-I$(SAMDIR)', '-I$(SAMINC)', string=True)
# Link more libs
makefile.filter('^override LIBS.*',
- 'override LIBS += -lz -lbz2 -lcurl -llzma')
+ 'override LIBS += -lz -lbz2 -lcurl -llzma -lcrypto')
def build(self, spec, prefix):
make('ROOTSYS={0}'.format(spec['root'].prefix),
diff --git a/var/spack/repos/builtin/packages/codar-cheetah/package.py b/var/spack/repos/builtin/packages/codar-cheetah/package.py
index 2de5e80be7..ce7c475993 100644
--- a/var/spack/repos/builtin/packages/codar-cheetah/package.py
+++ b/var/spack/repos/builtin/packages/codar-cheetah/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/code-server/package.py b/var/spack/repos/builtin/packages/code-server/package.py
index 534577e9d1..96826e9b54 100644
--- a/var/spack/repos/builtin/packages/code-server/package.py
+++ b/var/spack/repos/builtin/packages/code-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/codec2/package.py b/var/spack/repos/builtin/packages/codec2/package.py
index 55a526c854..e90ecd00bd 100644
--- a/var/spack/repos/builtin/packages/codec2/package.py
+++ b/var/spack/repos/builtin/packages/codec2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/codes/package.py b/var/spack/repos/builtin/packages/codes/package.py
index 23ea42cf8c..eacd82b82d 100644
--- a/var/spack/repos/builtin/packages/codes/package.py
+++ b/var/spack/repos/builtin/packages/codes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -47,6 +47,6 @@ class Codes(AutotoolsPackage):
if "+dumpi" in spec:
config_args.extend([
- '--with-dumpi=%s'.format(spec['sst-dumpi'].prefix)])
+ '--with-dumpi=%s' % spec['sst-dumpi'].prefix])
return config_args
diff --git a/var/spack/repos/builtin/packages/coevp/package.py b/var/spack/repos/builtin/packages/coevp/package.py
index 9224cba92c..5cb118e666 100644
--- a/var/spack/repos/builtin/packages/coevp/package.py
+++ b/var/spack/repos/builtin/packages/coevp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cohmm/package.py b/var/spack/repos/builtin/packages/cohmm/package.py
index 97eab37c28..83b5375080 100644
--- a/var/spack/repos/builtin/packages/cohmm/package.py
+++ b/var/spack/repos/builtin/packages/cohmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/coin3d/package.py b/var/spack/repos/builtin/packages/coin3d/package.py
index c613736a3d..23b6549950 100644
--- a/var/spack/repos/builtin/packages/coin3d/package.py
+++ b/var/spack/repos/builtin/packages/coin3d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,12 +20,12 @@ class Coin3d(AutotoolsPackage):
depends_on('boost@1.45.0:', type='build')
depends_on('doxygen', when='+html', type='build')
depends_on('perl', when='+html', type='build')
- depends_on('openglu', type='link')
- depends_on('opengl', type='link')
+ depends_on('glu', type='link')
+ depends_on('gl', type='link')
depends_on('libsm', type='link')
depends_on('libxext', type='link')
depends_on('libice', type='link')
- depends_on('libuuid', type='link')
+ depends_on('uuid', type='link')
depends_on('libxcb', type='link')
depends_on('libxau', type='link')
diff --git a/var/spack/repos/builtin/packages/coinhsl/package.py b/var/spack/repos/builtin/packages/coinhsl/package.py
index 50fdaa079f..1ef932f818 100644
--- a/var/spack/repos/builtin/packages/coinhsl/package.py
+++ b/var/spack/repos/builtin/packages/coinhsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,6 +24,7 @@ class Coinhsl(AutotoolsPackage):
# exist
homepage = "http://www.hsl.rl.ac.uk/ipopt/"
url = "file://{0}/coinhsl-archive-2014.01.17.tar.gz".format(os.getcwd())
+ manual_download = True
# CoinHSL has a few versions that vary with respect to stability/features
# and licensing terms.
diff --git a/var/spack/repos/builtin/packages/coinutils/package.py b/var/spack/repos/builtin/packages/coinutils/package.py
index 87af413126..d956508dde 100644
--- a/var/spack/repos/builtin/packages/coinutils/package.py
+++ b/var/spack/repos/builtin/packages/coinutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/collectd/package.py b/var/spack/repos/builtin/packages/collectd/package.py
index 35472a4a67..0723955200 100644
--- a/var/spack/repos/builtin/packages/collectd/package.py
+++ b/var/spack/repos/builtin/packages/collectd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,10 @@ class Collectd(AutotoolsPackage):
"""The system statistics collection daemon."""
homepage = "http://collectd.org/"
- url = "https://github.com/collectd/collectd/archive/collectd-5.11.0.tar.gz"
+ url = "https://github.com/collectd/collectd/releases/download/collectd-5.11.0/collectd-5.11.0.tar.bz2"
- version('5.11.0', sha256='639676d09c5980ceea90b5a97811a9647d94e368528cce7cea3d43f0f308465d')
- version('5.10.0', sha256='bcde95a3997b5eee448d247d9414854994b3592cb9fb4fecd6ff78082cc28a1b')
+ version('5.12.0', sha256='5bae043042c19c31f77eb8464e56a01a5454e0b39fa07cf7ad0f1bfc9c3a09d6')
+ version('5.11.0', sha256='37b10a806e34aa8570c1cafa6006c604796fae13cc2e1b3e630d33dcba9e5db2')
+ version('5.10.0', sha256='a03359f563023e744c2dc743008a00a848f4cd506e072621d86b6d8313c0375b')
- depends_on('m4', type='build')
- depends_on('autoconf', type='build')
- depends_on('automake', type='build')
- depends_on('libtool', type='build')
+ depends_on('valgrind', type='test')
diff --git a/var/spack/repos/builtin/packages/collier/package.py b/var/spack/repos/builtin/packages/collier/package.py
index e1d6245b35..5c3b3dd2b6 100644
--- a/var/spack/repos/builtin/packages/collier/package.py
+++ b/var/spack/repos/builtin/packages/collier/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class Collier(CMakePackage):
homepage = "https://collier.hepforge.org"
url = "https://collier.hepforge.org/downloads/?f=collier-1.2.5.tar.gz"
+ tags = ['hep']
+
version('1.2.5', sha256='3ec58a975ff0c3b1ca870bc38973476c923ff78fd3dd5850e296037852b94a8b')
version('1.2.4', sha256='92ae8f61461b232fbd47a6d8e832e1a726d504f9390b7edc49a68fceedff8857')
version('1.2.3', sha256='e6f72df223654df59113b0067a4bebe9f8c20227bb81371d3193e1557bdf56fb')
diff --git a/var/spack/repos/builtin/packages/colm/package.py b/var/spack/repos/builtin/packages/colm/package.py
index e455c3a8f7..74292af208 100644
--- a/var/spack/repos/builtin/packages/colm/package.py
+++ b/var/spack/repos/builtin/packages/colm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/colordiff/package.py b/var/spack/repos/builtin/packages/colordiff/package.py
index 5d97c61d47..a2fb6ee5ac 100644
--- a/var/spack/repos/builtin/packages/colordiff/package.py
+++ b/var/spack/repos/builtin/packages/colordiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/comd/package.py b/var/spack/repos/builtin/packages/comd/package.py
index 8f2446c2a9..5ab3600f1f 100644
--- a/var/spack/repos/builtin/packages/comd/package.py
+++ b/var/spack/repos/builtin/packages/comd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/comgr/hip-tests.patch b/var/spack/repos/builtin/packages/comgr/hip-tests.patch
new file mode 100644
index 0000000000..7002f20653
--- /dev/null
+++ b/var/spack/repos/builtin/packages/comgr/hip-tests.patch
@@ -0,0 +1,11 @@
+diff -Naurb ROCm-CompilerSupport-rocm-3.10.0.orig/lib/comgr/test/CMakeLists.txt ROCm-CompilerSupport-rocm-3.10.0/lib/comgr/test/CMakeLists.txt
+--- ROCm-CompilerSupport-rocm-3.10.0.orig/lib/comgr/test/CMakeLists.txt 2020-09-16 14:17:12.000000000 -0500
++++ ROCm-CompilerSupport-rocm-3.10.0/lib/comgr/test/CMakeLists.txt 2020-12-14 10:11:56.609584283 -0600
+@@ -120,7 +120,6 @@
+ add_comgr_test(include_subdirectory_test)
+ add_comgr_test(options_test)
+ # Test : Compile HIP only if HIP-Clang is installed.
+-find_package(hip CONFIG PATHS /opt/rocm/hip QUIET)
+ if (DEFINED HIP_COMPILER AND "${HIP_COMPILER}" STREQUAL "clang")
+ add_comgr_test(compile_hip_test)
+ add_comgr_test(compile_hip_test_in_process)
diff --git a/var/spack/repos/builtin/packages/comgr/package.py b/var/spack/repos/builtin/packages/comgr/package.py
index b83d6558e5..cdb573ea8d 100644
--- a/var/spack/repos/builtin/packages/comgr/package.py
+++ b/var/spack/repos/builtin/packages/comgr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,17 @@ class Comgr(CMakePackage):
contains one library, the Code Object Manager (Comgr)"""
homepage = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport"
- url = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport.git"
+ url = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='amd-stg-open')
+
+ version('4.2.0', sha256='40a1ea50d2aea0cf75c4d17cdd6a7fe44ae999bf0147d24a756ca4675ce24e36')
+ version('4.1.0', sha256='ffb625978555c63582aa46857672431793261166aa31761eff4fe5c2cab661ae')
+ version('4.0.0', sha256='f389601fb70b2d9a60d0e2798919af9ddf7b8376a2e460141507fe50073dfb31')
+ version('3.10.0', sha256='b44ee5805a6236213d758fa4b612bb859d8f774b9b4bdc3a2699bb009dd631bc')
version('3.9.0', sha256='6600e144d72dadb6d893a3388b42af103b9443755ce556f4e9e205ccd8ec0c83')
version('3.8.0', sha256='62a35480dfabaa98883d91ed0f7c490daa9bbd424af37e07e5d85a6e8030b146')
version('3.7.0', sha256='73e56ec3c63dade24ad351e9340e2f8e127694028c1fb7cec5035376bf098432')
@@ -23,13 +30,21 @@ class Comgr(CMakePackage):
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
+ # Disable the hip compile tests. Spack should not be using
+ # /opt/rocm, and this breaks the build when /opt/rocm exists.
+ patch('hip-tests.patch')
+
+ depends_on('cmake@3.2.0:', type='build', when='@:3.8.99')
+ depends_on('cmake@3.13.4:', type='build', when='@3.9.0:')
+
depends_on('zlib', type='link')
depends_on('z3', type='link')
depends_on('ncurses', type='link')
- depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
- root_cmakelists_dir = 'lib/comgr'
+ root_cmakelists_dir = join_path('lib', 'comgr')
diff --git a/var/spack/repos/builtin/packages/commons-lang/package.py b/var/spack/repos/builtin/packages/commons-lang/package.py
index a324565093..aed68d5026 100644
--- a/var/spack/repos/builtin/packages/commons-lang/package.py
+++ b/var/spack/repos/builtin/packages/commons-lang/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/commons-lang3/package.py b/var/spack/repos/builtin/packages/commons-lang3/package.py
index d9aca99e35..6d1a9b7b1f 100644
--- a/var/spack/repos/builtin/packages/commons-lang3/package.py
+++ b/var/spack/repos/builtin/packages/commons-lang3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/commons-logging/package.py b/var/spack/repos/builtin/packages/commons-logging/package.py
index 3ca20d2d5e..b42fc3797e 100644
--- a/var/spack/repos/builtin/packages/commons-logging/package.py
+++ b/var/spack/repos/builtin/packages/commons-logging/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/compadre/package.py b/var/spack/repos/builtin/packages/compadre/package.py
new file mode 100644
index 0000000000..58e130a0f8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/compadre/package.py
@@ -0,0 +1,58 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Compadre(CMakePackage):
+ """The Compadre Toolkit provides a performance portable solution for the
+ parallel evaluation of computationally dense kernels. The toolkit
+ specifically targets the Generalized Moving Least Squares (GMLS) approach,
+ which requires the inversion of small dense matrices. The result is a set
+ of weights that provide the information needed for remap or entries that
+ constitute the rows of some globally sparse matrix.
+ """
+
+ homepage = 'https://github.com/SNLComputation/compadre'
+ git = 'https://github.com/SNLComputation/compadre.git'
+ url = 'https://github.com/SNLComputation/compadre/archive/v1.3.0.tar.gz'
+ maintainers = ['kuberry']
+
+ version('master', branch='master', preferred=True)
+ version('1.3.0', 'f711a840fd921e84660451ded408023ec3bcfc98fd0a7dc4a299bfae6ab489c2')
+
+ depends_on('kokkos@3.3.01:main')
+ depends_on('kokkos-kernels@3.3.01:main')
+ depends_on('cmake@3.13:', type='build')
+
+ variant('build_type', default='Release',
+ description='CMake build type',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'))
+
+ variant('mpi', default=False, description='Enable MPI support')
+ depends_on('mpi', when='+mpi')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ kokkos = spec['kokkos']
+ kokkos_kernels = spec['kokkos-kernels']
+
+ options = []
+ options.extend([
+ '-DKokkosCore_PREFIX={0}'.format(kokkos.prefix),
+ '-DKokkosKernels_PREFIX={0}'.format(kokkos_kernels.prefix),
+ '-DCMAKE_CXX_COMPILER:STRING={0}'.format(spec["kokkos"].kokkos_cxx),
+ ])
+
+ if '+mpi' in spec:
+ options.append('-DCompadre_USE_MPI:BOOL=ON')
+
+ if '+shared' in spec:
+ options.append('-DBUILD_SHARED_LIBS:BOOL=ON')
+ else:
+ options.append('-DBUILD_SHARED_LIBS:BOOL=OFF')
+
+ return options
diff --git a/var/spack/repos/builtin/packages/compiz/package.py b/var/spack/repos/builtin/packages/compiz/package.py
index ed90e45174..b5607620e5 100644
--- a/var/spack/repos/builtin/packages/compiz/package.py
+++ b/var/spack/repos/builtin/packages/compiz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/compositeproto/package.py b/var/spack/repos/builtin/packages/compositeproto/package.py
index bf1bedaf20..18c4300f60 100644
--- a/var/spack/repos/builtin/packages/compositeproto/package.py
+++ b/var/spack/repos/builtin/packages/compositeproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/conda4aarch64/package.py b/var/spack/repos/builtin/packages/conda4aarch64/package.py
index fe7ede5c14..e24f77108e 100644
--- a/var/spack/repos/builtin/packages/conda4aarch64/package.py
+++ b/var/spack/repos/builtin/packages/conda4aarch64/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/conduit/package.py b/var/spack/repos/builtin/packages/conduit/package.py
index 57d49da70e..64b5e52930 100644
--- a/var/spack/repos/builtin/packages/conduit/package.py
+++ b/var/spack/repos/builtin/packages/conduit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,7 +27,7 @@ def cmake_cache_entry(name, value, vtype=None):
return 'set({0} "{1}" CACHE {2} "")\n\n'.format(name, value, vtype)
-class Conduit(Package):
+class Conduit(CMakePackage):
"""Conduit is an open source project from Lawrence Livermore National
Laboratory that provides an intuitive model for describing hierarchical
scientific data in C++, C, Fortran, and Python. It is used for data
@@ -37,7 +37,15 @@ class Conduit(Package):
url = "https://github.com/LLNL/conduit/releases/download/v0.3.0/conduit-v0.3.0-src-with-blt.tar.gz"
git = "https://github.com/LLNL/conduit.git"
- version('master', branch='master', submodules=True, preferred=True)
+ version('develop', branch='develop', submodules=True)
+ # note: the main branch in conduit was renamed to develop, this next entry
+ # is to bridge any spack dependencies that are still using the name master
+ version('master', branch='develop', submodules=True)
+ # note: 2021-05-05 latest tagged release is now preferred instead of develop
+ version('0.7.2', sha256='359fd176297700cdaed2c63e3b72d236ff3feec21a655c7c8292033d21d5228a')
+ version('0.7.1', sha256='460a480cf08fedbf5b38f707f94f20828798327adadb077f80dbab048fd0a07d')
+ version('0.7.0', sha256='ecaa9668ebec5d4efad19b104d654a587c0adbd5f502128f89601408cb4d7d0c')
+ version('0.6.0', sha256='078f086a13b67a97e4ab6fe1063f2fef2356df297e45b43bb43d74635f80475d')
version('0.5.1', sha256='68a3696d1ec6d3a4402b44a464d723e6529ec41016f9b44c053676affe516d44')
version('0.5.0', sha256='7efac668763d02bd0a2c0c1b134d9f5ee27e99008183905bb0512e5502b8b4fe')
version('0.4.0', sha256='c228e6f0ce5a9c0ffb98e0b3d886f2758ace1a4b40d00f3f118542c0747c1f52')
@@ -84,8 +92,8 @@ class Conduit(Package):
#######################
# CMake
#######################
- # cmake 3.8.2 or newer
- depends_on("cmake@3.8.2:", type='build')
+ # cmake 3.14.1 or newer
+ depends_on("cmake@3.14.1:", type='build')
#######################
# Python
@@ -102,7 +110,7 @@ class Conduit(Package):
###############
# HDF5
###############
- # TODO: cxx variant is disabled due to build issue Cyrus
+ # Note: cxx variant is disabled due to build issue Cyrus
# experienced on BGQ. When on, the static build tries
# to link against shared libs.
#
@@ -131,7 +139,10 @@ class Conduit(Package):
#######################
# ZFP
#######################
- depends_on("zfp", when="+zfp")
+ depends_on("zfp bsws=8", when="+zfp")
+
+ # hdf5 zfp plugin when both hdf5 and zfp are on
+ depends_on("h5z-zfp~fortran", when="+hdf5+zfp")
#######################
# MPI
@@ -149,14 +160,10 @@ class Conduit(Package):
# Cmake will support fj compiler and this patch will be removed
patch('fj_flags.patch', when='%fj')
+ ###################################
# build phases used by this package
- phases = ["configure", "build", "install"]
-
- def flag_handler(self, name, flags):
- if name in ('cflags', 'cxxflags', 'fflags'):
- # the package manages these flags in another way
- return (None, None, None)
- return (flags, None, None)
+ ###################################
+ phases = ['hostconfig', 'cmake', 'build', 'install']
def setup_build_environment(self, env):
env.set('CTEST_OUTPUT_ON_FAILURE', '1')
@@ -178,42 +185,16 @@ class Conduit(Package):
return "https://github.com/LLNL/conduit/releases/download/v{0}/conduit-v{1}-src-with-blt.tar.gz".format(v, v)
return url
- def configure(self, spec, prefix):
- """
- Configure Conduit.
- """
- with working_dir('spack-build', create=True):
- py_site_pkgs_dir = None
- if "+python" in spec:
- py_site_pkgs_dir = site_packages_dir
-
- host_cfg_fname = self.create_host_config(spec,
- prefix,
- py_site_pkgs_dir)
- # save this filename for
- # other package recipe steps to access
- self.host_cfg_fname = host_cfg_fname
- cmake_args = []
- # if we have a static build, we need to avoid any of
- # spack's default cmake settings related to rpaths
- # (see: https://github.com/spack/spack/issues/2658)
- if "+shared" in spec:
- cmake_args.extend(std_cmake_args)
- else:
- for arg in std_cmake_args:
- if arg.count("RPATH") == 0:
- cmake_args.append(arg)
- cmake_args.extend(["-C", host_cfg_fname, "../src"])
- print("Configuring Conduit...")
- cmake(*cmake_args)
+ ####################################################################
+ # Note: cmake, build, and install stages are handled by CMakePackage
+ ####################################################################
- def build(self, spec, prefix):
- """
- Build Conduit.
- """
- with working_dir('spack-build'):
- print("Building Conduit...")
- make()
+ # provide cmake args (pass host config as cmake cache file)
+ def cmake_args(self):
+ host_config = self._get_host_config_path(self.spec)
+ options = []
+ options.extend(['-C', host_config, "../spack-src/src/"])
+ return options
@run_after('build')
@on_package_attributes(run_tests=True)
@@ -222,16 +203,6 @@ class Conduit(Package):
print("Running Conduit Unit Tests...")
make("test")
- def install(self, spec, prefix):
- """
- Install Conduit.
- """
- with working_dir('spack-build'):
- make("install")
- # install copy of host config for provenance
- print("Installing Conduit CMake Host Config File...")
- install(self.host_cfg_fname, prefix)
-
@run_after('install')
@on_package_attributes(run_tests=True)
def check_install(self):
@@ -269,24 +240,30 @@ class Conduit(Package):
example = Executable('./conduit_example')
example()
- def create_host_config(self, spec, prefix, py_site_pkgs_dir=None):
+ def _get_host_config_path(self, spec):
+ sys_type = spec.architecture
+ # if on llnl systems, we can use the SYS_TYPE
+ if "SYS_TYPE" in env:
+ sys_type = env["SYS_TYPE"]
+ host_config_path = "{0}-{1}-{2}-conduit-{3}.cmake".format(socket.gethostname(),
+ sys_type,
+ spec.compiler,
+ spec.dag_hash())
+ dest_dir = spec.prefix
+ host_config_path = os.path.abspath(join_path(dest_dir,
+ host_config_path))
+ return host_config_path
+
+ def hostconfig(self, spec, prefix):
"""
This method creates a 'host-config' file that specifies
all of the options used to configure and build conduit.
For more details about 'host-config' files see:
http://software.llnl.gov/conduit/building.html
-
- Note:
- The `py_site_pkgs_dir` arg exists to allow a package that
- subclasses this package provide a specific site packages
- dir when calling this function. `py_site_pkgs_dir` should
- be an absolute path or `None`.
-
- This is necessary because the spack `site_packages_dir`
- var will not exist in the base class. For more details
- on this issue see: https://github.com/spack/spack/issues/6261
"""
+ if not os.path.isdir(spec.prefix):
+ os.mkdir(spec.prefix)
#######################
# Compiler Info
@@ -302,8 +279,7 @@ class Conduit(Package):
f_compiler = env["SPACK_FC"]
#######################################################################
- # By directly fetching the names of the actual compilers we appear
- # to doing something evil here, but this is necessary to create a
+ # Directly fetch the names of the actual compilers to create a
# 'host config' file that works outside of the spack install env.
#######################################################################
@@ -320,9 +296,9 @@ class Conduit(Package):
##############################################
cmake_exe = spec['cmake'].command.path
- host_cfg_fname = "%s-%s-%s-conduit.cmake" % (socket.gethostname(),
- sys_type,
- spec.compiler)
+
+ # get hostconfig name
+ host_cfg_fname = self._get_host_config_path(spec)
cfg = open(host_cfg_fname, "w")
cfg.write("##################################\n")
@@ -373,6 +349,8 @@ class Conduit(Package):
if cxxflags:
cfg.write(cmake_cache_entry("CMAKE_CXX_FLAGS", cxxflags))
fflags = ' '.join(spec.compiler_flags['fflags'])
+ if self.spec.satisfies('%cce'):
+ fflags += " -ef"
if fflags:
cfg.write(cmake_cache_entry("CMAKE_Fortran_FLAGS", fflags))
@@ -442,10 +420,13 @@ class Conduit(Package):
cfg.write("# python from spack \n")
cfg.write(cmake_cache_entry("PYTHON_EXECUTABLE",
spec['python'].command.path))
- # only set dest python site packages dir if passed
- if py_site_pkgs_dir:
+ try:
+ cfg.write("# python module install dir\n")
cfg.write(cmake_cache_entry("PYTHON_MODULE_INSTALL_PREFIX",
- py_site_pkgs_dir))
+ site_packages_dir))
+ except NameError:
+ # spack's won't exist in a subclass
+ pass
else:
cfg.write(cmake_cache_entry("ENABLE_PYTHON", "OFF"))
@@ -530,6 +511,17 @@ class Conduit(Package):
cfg.write("# hdf5 not built by spack \n")
#######################
+ # h5z-zfp
+ #######################
+
+ cfg.write("# h5z-zfp from spack \n")
+
+ if "+hdf5+zfp" in spec:
+ cfg.write(cmake_cache_entry("H5ZZFP_DIR", spec['h5z-zfp'].prefix))
+ else:
+ cfg.write("# h5z-zfp not built by spack \n")
+
+ #######################
# Silo
#######################
@@ -558,4 +550,3 @@ class Conduit(Package):
host_cfg_fname = os.path.abspath(host_cfg_fname)
tty.info("spack generated conduit host-config file: " + host_cfg_fname)
- return host_cfg_fname
diff --git a/var/spack/repos/builtin/packages/connect-proxy/package.py b/var/spack/repos/builtin/packages/connect-proxy/package.py
index e4fde75b9e..390663989e 100644
--- a/var/spack/repos/builtin/packages/connect-proxy/package.py
+++ b/var/spack/repos/builtin/packages/connect-proxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/conserver/package.py b/var/spack/repos/builtin/packages/conserver/package.py
index 88d041ce04..c6c0775be7 100644
--- a/var/spack/repos/builtin/packages/conserver/package.py
+++ b/var/spack/repos/builtin/packages/conserver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/console-bridge/package.py b/var/spack/repos/builtin/packages/console-bridge/package.py
index d50b8d4e63..9b10e4f5b6 100644
--- a/var/spack/repos/builtin/packages/console-bridge/package.py
+++ b/var/spack/repos/builtin/packages/console-bridge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/constype/package.py b/var/spack/repos/builtin/packages/constype/package.py
index 92ea0c3f4f..f018727d1c 100644
--- a/var/spack/repos/builtin/packages/constype/package.py
+++ b/var/spack/repos/builtin/packages/constype/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/consul/package.py b/var/spack/repos/builtin/packages/consul/package.py
index 7882937547..883c4d5baf 100644
--- a/var/spack/repos/builtin/packages/consul/package.py
+++ b/var/spack/repos/builtin/packages/consul/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/converge/package.py b/var/spack/repos/builtin/packages/converge/package.py
index 639b799ee7..9f20667335 100644
--- a/var/spack/repos/builtin/packages/converge/package.py
+++ b/var/spack/repos/builtin/packages/converge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/coral/package.py b/var/spack/repos/builtin/packages/coral/package.py
new file mode 100644
index 0000000000..34fe3c259f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/coral/package.py
@@ -0,0 +1,59 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Coral(CMakePackage):
+ """CORAL is an abstraction layer with an SQL-free API to access data stored
+ using relational database technologies. It is used directly by
+ experiment-specific applications and internally by COOL."""
+
+ homepage = "https://coral-cool.docs.cern.ch/"
+ git = "https://gitlab.cern.ch/lcgcoral/coral.git"
+
+ tags = ['hep']
+
+ version('3.3.3', tag='CORAL_3_3_3')
+ variant('binary_tag', default='auto')
+
+ depends_on('ninja')
+ depends_on('ccache')
+ depends_on('boost')
+ depends_on('cppunit')
+ depends_on('expat')
+ depends_on('frontier-client')
+ depends_on('libaio')
+ depends_on('mariadb')
+ depends_on('python')
+# depends_on('qmtest')
+ depends_on('xerces-c')
+ depends_on('sqlite')
+ depends_on('gperftools')
+ depends_on('igprof')
+ depends_on('libunwind')
+ depends_on('valgrind')
+ depends_on('oracle-instant-client')
+
+ def determine_binary_tag(self):
+ # As far as I can tell from reading the source code, `binary_tag`
+ # can be almost arbitraryThe only real difference it makes is
+ # disabling oracle dependency for non-x86 platforms
+ if self.spec.variants['binary_tag'].value != 'auto':
+ return self.spec.variants['binary_tag'].value
+
+ binary_tag = str(self.spec.target.family) + \
+ '-' + self.spec.os + \
+ '-' + self.spec.compiler.name + str(self.spec.compiler.version.joined) + \
+ ('-opt' if 'Rel' in self.spec.variants['build_type'].value else '-dbg')
+
+ return binary_tag
+
+ def cmake_args(self):
+ args = ['-DBINARY_TAG=' + self.determine_binary_tag()]
+ if self.spec['python'].version >= Version("3.0.0"):
+ args.append('-DLCG_python3=on')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/corenlp/package.py b/var/spack/repos/builtin/packages/corenlp/package.py
index 6cb1325e92..69d56b94c3 100644
--- a/var/spack/repos/builtin/packages/corenlp/package.py
+++ b/var/spack/repos/builtin/packages/corenlp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/coreutils/package.py b/var/spack/repos/builtin/packages/coreutils/package.py
index 569831dac7..e73a8e47e3 100644
--- a/var/spack/repos/builtin/packages/coreutils/package.py
+++ b/var/spack/repos/builtin/packages/coreutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Coreutils(AutotoolsPackage, GNUMirrorPackage):
homepage = 'http://www.gnu.org/software/coreutils/'
gnu_mirror_path = 'coreutils/coreutils-8.26.tar.xz'
+ version('8.32', sha256='4458d8de7849df44ccab15e16b1548b285224dbba5f08fac070c1c0e0bcc4cfa')
version('8.31', sha256='ff7a9c918edce6b4f4b2725e3f9b37b0c4d193531cac49a48b56c4d0d3a9e9fd')
version('8.30', sha256='e831b3a86091496cdba720411f9748de81507798f6130adeaef872d206e1b057')
version('8.29', sha256='92d0fa1c311cacefa89853bdb53c62f4110cdfda3820346b59cbd098f40f955e')
diff --git a/var/spack/repos/builtin/packages/corset/package.py b/var/spack/repos/builtin/packages/corset/package.py
index c429b1dca4..324bf50bde 100644
--- a/var/spack/repos/builtin/packages/corset/package.py
+++ b/var/spack/repos/builtin/packages/corset/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cosbench/package.py b/var/spack/repos/builtin/packages/cosbench/package.py
index 2e3fd5997a..4becb709e9 100644
--- a/var/spack/repos/builtin/packages/cosbench/package.py
+++ b/var/spack/repos/builtin/packages/cosbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cosma/package.py b/var/spack/repos/builtin/packages/cosma/package.py
index 18d69605ee..ea65b41c26 100644
--- a/var/spack/repos/builtin/packages/cosma/package.py
+++ b/var/spack/repos/builtin/packages/cosma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class Cosma(CMakePackage, CudaPackage):
# note: The default archives produced with github do not have the archives
# of the submodules.
version('master', branch='master', submodules=True)
+ version('2.3.0', sha256='0c01c2deb5a0cd177952178350188a62c42ce55e604d7948ac472f55bf0d4815')
version('2.2.0', sha256='1eb92a98110df595070a12193b9221eecf9d103ced8836c960f6c79a2bd553ca')
version('2.0.7', sha256='8d70bfcbda6239b6a8fbeaca138790bbe58c0c3aa576879480d2632d4936cf7e')
version('2.0.2', sha256='4f3354828bc718f3eef2f0098c3bdca3499297497a220da32db1acd57920c68d')
diff --git a/var/spack/repos/builtin/packages/cosmoflow-benchmark/package.py b/var/spack/repos/builtin/packages/cosmoflow-benchmark/package.py
index 97f1fef1d8..8124b5d8b4 100644
--- a/var/spack/repos/builtin/packages/cosmoflow-benchmark/package.py
+++ b/var/spack/repos/builtin/packages/cosmoflow-benchmark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cosmomc/package.py b/var/spack/repos/builtin/packages/cosmomc/package.py
index 60374e6fbe..ba013fa409 100644
--- a/var/spack/repos/builtin/packages/cosmomc/package.py
+++ b/var/spack/repos/builtin/packages/cosmomc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cosp2/package.py b/var/spack/repos/builtin/packages/cosp2/package.py
index 36f64a1a38..7c126a0d98 100644
--- a/var/spack/repos/builtin/packages/cosp2/package.py
+++ b/var/spack/repos/builtin/packages/cosp2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cotter/package.py b/var/spack/repos/builtin/packages/cotter/package.py
index 3614f68ef5..be58dbee14 100644
--- a/var/spack/repos/builtin/packages/cotter/package.py
+++ b/var/spack/repos/builtin/packages/cotter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/couchdb/package.py b/var/spack/repos/builtin/packages/couchdb/package.py
index c151b963f4..0c177ecb86 100644
--- a/var/spack/repos/builtin/packages/couchdb/package.py
+++ b/var/spack/repos/builtin/packages/couchdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cowsay/package.py b/var/spack/repos/builtin/packages/cowsay/package.py
index 05f818a9f3..5540163a96 100644
--- a/var/spack/repos/builtin/packages/cowsay/package.py
+++ b/var/spack/repos/builtin/packages/cowsay/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cp2k/package.py b/var/spack/repos/builtin/packages/cp2k/package.py
index 1a74283b3c..b9c8e57dac 100644
--- a/var/spack/repos/builtin/packages/cp2k/package.py
+++ b/var/spack/repos/builtin/packages/cp2k/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,7 @@ class Cp2k(MakefilePackage, CudaPackage):
maintainers = ['dev-zero']
+ version('8.1', sha256='7f37aead120730234a60b2989d0547ae5e5498d93b1e9b5eb548c041ee8e7772')
version('7.1', sha256='ccd711a09a426145440e666310dd01cc5772ab103493c4ae6a3470898cd0addb')
version('6.1', sha256='af803558e0a6b9e9d9ce8a3ab955ba32bacd179922455424e061c82c9fefa34b')
version('5.1', sha256='e23613b593354fa82e0b8410e17d94c607a0b8c6d9b5d843528403ab09904412')
@@ -47,15 +48,11 @@ class Cp2k(MakefilePackage, CudaPackage):
description=('Enable planewave electronic structure'
' calculations via SIRIUS'))
variant('cosma', default=False, description='Use COSMA for p?gemm')
+ variant('libvori', default=False,
+ description=('Enable support for Voronoi integration'
+ ' and BQB compression'))
+ variant('spglib', default=False, description='Enable support for spglib')
- # override cuda_arch from CudaPackage since we only support one arch
- # at a time and only specific ones for which we have parameter files
- # for optimal kernels
- variant('cuda_arch',
- description='CUDA architecture',
- default='none',
- values=('none', '35', '37', '60', '70'),
- multi=False)
variant('cuda_arch_35_k20x', default=False,
description=('CP2K (resp. DBCSR) has specific parameter sets for'
' different GPU models. Enable this when building'
@@ -74,6 +71,7 @@ class Cp2k(MakefilePackage, CudaPackage):
multi=False)
depends_on('python', type='build')
+ depends_on('python@3:', when='@8:', type='build')
depends_on('blas')
depends_on('lapack')
@@ -96,7 +94,8 @@ class Cp2k(MakefilePackage, CudaPackage):
depends_on('libxc@2.2.2:3.99.0', when='+libxc@:5.5999', type='build')
depends_on('libxc@4.0.3:4.99.0', when='+libxc@6.0:6.9', type='build')
- depends_on('libxc@4.0.3:4.99.0', when='+libxc@7.0:')
+ depends_on('libxc@4.0.3:4.99.0', when='+libxc@7.0:8.1')
+ depends_on('libxc@5.1.3:5.1.99', when='+libxc@8.2:')
depends_on('mpi@2:', when='+mpi')
depends_on('scalapack', when='+mpi')
@@ -129,6 +128,10 @@ class Cp2k(MakefilePackage, CudaPackage):
depends_on('py-numpy', when='@7:+cuda', type='build')
depends_on('python@3.6:', when='@7:+cuda', type='build')
+ depends_on('libvori@201219:', when='@8.1+libvori', type='build')
+ depends_on('libvori@210412:', when='@8.2:+libvori', type='build')
+ depends_on('spglib', when='+spglib')
+
# PEXSI, ELPA, COSMA and SIRIUS depend on MPI
conflicts('~mpi', '+pexsi')
conflicts('~mpi', '+elpa')
@@ -137,6 +140,8 @@ class Cp2k(MakefilePackage, CudaPackage):
conflicts('+sirius', '@:6.999') # sirius support was introduced in 7+
conflicts('+cosma', '@:7.999') # COSMA support was introduced in 8+
+ conflicts('+libvori', '@:7.999') # libvori support was introduced in 8+
+
conflicts('~cuda', '+cuda_fft')
conflicts('~cuda', '+cuda_blas')
@@ -155,11 +160,25 @@ class Cp2k(MakefilePackage, CudaPackage):
conflicts('smm=libxsmm', when='target=aarch64:', msg='libxsmm is not available on arm')
conflicts('^fftw~openmp', when='+openmp')
+ conflicts('^amdfftw~openmp', when='+openmp')
conflicts('^openblas threads=none', when='+openmp')
conflicts('^openblas threads=pthreads', when='+openmp')
conflicts('~openmp', when='@8:', msg='Building without OpenMP is not supported in CP2K 8+')
+ # We only support specific cuda_archs for which we have parameter files
+ # for optimal kernels. Note that we don't override the cuda_archs property
+ # from the parent class, since the parent class defines constraints for all
+ # versions. Instead just mark all unsupported cuda archs as conflicting.
+ dbcsr_cuda_archs = ('35', '37', '60', '70')
+ cuda_msg = 'cp2k only supports cuda_arch {0}'.format(dbcsr_cuda_archs)
+
+ for arch in CudaPackage.cuda_arch_values:
+ if arch not in dbcsr_cuda_archs:
+ conflicts('+cuda', when='cuda_arch={0}'.format(arch), msg=cuda_msg)
+
+ conflicts('+cuda', when='cuda_arch=none', msg=cuda_msg)
+
@property
def makefile_architecture(self):
return '{0.architecture}-{0.compiler.name}'.format(self.spec)
@@ -176,11 +195,11 @@ class Cp2k(MakefilePackage, CudaPackage):
makefile_basename = '.'.join([
self.makefile_architecture, self.makefile_version
])
- return os.path.join('arch', makefile_basename)
+ return join_path('arch', makefile_basename)
@property
def archive_files(self):
- return [os.path.join(self.stage.source_path, self.makefile)]
+ return [join_path(self.stage.source_path, self.makefile)]
def edit(self, spec, prefix):
pkgconf = which('pkg-config')
@@ -188,6 +207,9 @@ class Cp2k(MakefilePackage, CudaPackage):
if '^fftw' in spec:
fftw = spec['fftw:openmp' if '+openmp' in spec else 'fftw']
fftw_header_dir = fftw.headers.directories[0]
+ elif '^amdfftw' in spec:
+ fftw = spec['amdfftw:openmp' if '+openmp' in spec else 'amdfftw']
+ fftw_header_dir = fftw.headers.directories[0]
elif '^intel-mkl' in spec:
fftw = spec['intel-mkl']
fftw_header_dir = fftw.headers.directories[0] + '/fftw'
@@ -199,6 +221,9 @@ class Cp2k(MakefilePackage, CudaPackage):
if os.path.exists(incdir):
fftw_header_dir = incdir
break
+ elif '^cray-fftw' in spec:
+ fftw = spec['cray-fftw']
+ fftw_header_dir = fftw.headers.directories[0]
optimization_flags = {
'gcc': [
@@ -211,6 +236,7 @@ class Cp2k(MakefilePackage, CudaPackage):
'nvhpc': ['-fast'],
'cray': ['-O2'],
'xl': ['-O3'],
+ 'aocc': ['-O1'],
}
dflags = ['-DNDEBUG']
@@ -247,6 +273,11 @@ class Cp2k(MakefilePackage, CudaPackage):
'-ffree-line-length-none',
'-ggdb', # make sure we get proper Fortran backtraces
]
+ elif '%aocc' in spec:
+ fcflags += [
+ '-ffree-form',
+ '-Mbackslash',
+ ]
elif '%pgi' in spec or '%nvhpc' in spec:
fcflags += ['-Mfreeform', '-Mextend']
elif '%cray' in spec:
@@ -281,8 +312,8 @@ class Cp2k(MakefilePackage, CudaPackage):
dflags.extend(['-D__PLUMED2'])
cppflags.extend(['-D__PLUMED2'])
libs.extend([
- os.path.join(self.spec['plumed'].prefix.lib,
- 'libplumed.{0}'.format(dso_suffix))
+ join_path(self.spec['plumed'].prefix.lib,
+ 'libplumed.{0}'.format(dso_suffix))
])
cc = spack_cc if '~mpi' in spec else spec['mpi'].mpicc
@@ -335,7 +366,7 @@ class Cp2k(MakefilePackage, CudaPackage):
if 'wannier90' in spec:
cppflags.append('-D__WANNIER90')
- wannier = os.path.join(
+ wannier = join_path(
spec['wannier90'].libs.directories[0], 'libwannier.a'
)
libs.append(wannier)
@@ -355,9 +386,9 @@ class Cp2k(MakefilePackage, CudaPackage):
# runtime due to wrong offsets into the shared library
# symbols.
libs.extend([
- os.path.join(
+ join_path(
spec['libint'].libs.directories[0], 'libderiv.a'),
- os.path.join(
+ join_path(
spec['libint'].libs.directories[0], 'libint.a'),
])
else:
@@ -374,22 +405,24 @@ class Cp2k(MakefilePackage, CudaPackage):
libs.append(str(libxc.libs))
else:
fcflags += pkgconf('--cflags', 'libxcf03', output=str).split()
- libs += pkgconf('--libs', 'libxcf03', output=str).split()
+ # some Fortran functions seem to be direct wrappers of the
+ # C functions such that we get a direct dependency on them,
+ # requiring `-lxc` to be present in addition to `-lxcf03`
+ libs += pkgconf('--libs', 'libxcf03', 'libxc', output=str).split()
if '+pexsi' in spec:
cppflags.append('-D__LIBPEXSI')
- fcflags.append('-I' + os.path.join(
+ fcflags.append('-I' + join_path(
spec['pexsi'].prefix, 'fortran'))
libs.extend([
- os.path.join(spec['pexsi'].libs.directories[0],
- 'libpexsi.a'),
- os.path.join(spec['superlu-dist'].libs.directories[0],
- 'libsuperlu_dist.a'),
- os.path.join(
+ join_path(spec['pexsi'].libs.directories[0], 'libpexsi.a'),
+ join_path(spec['superlu-dist'].libs.directories[0],
+ 'libsuperlu_dist.a'),
+ join_path(
spec['parmetis'].libs.directories[0],
'libparmetis.{0}'.format(dso_suffix)
),
- os.path.join(
+ join_path(
spec['metis'].libs.directories[0],
'libmetis.{0}'.format(dso_suffix)
),
@@ -400,11 +433,18 @@ class Cp2k(MakefilePackage, CudaPackage):
elpa_suffix = '_openmp' if '+openmp' in elpa else ''
elpa_incdir = elpa.headers.directories[0]
- fcflags += ['-I{0}'.format(os.path.join(elpa_incdir, 'modules'))]
- libs.append(os.path.join(elpa.libs.directories[0],
- ('libelpa{elpa_suffix}.{dso_suffix}'
- .format(elpa_suffix=elpa_suffix,
- dso_suffix=dso_suffix))))
+ fcflags += ['-I{0}'.format(join_path(elpa_incdir, 'modules'))]
+
+ # Currently AOCC support only static libraries of ELPA
+ if '%aocc' in spec:
+ libs.append(join_path(elpa.prefix.lib,
+ ('libelpa{elpa_suffix}.a'
+ .format(elpa_suffix=elpa_suffix))))
+ else:
+ libs.append(join_path(elpa.prefix.lib,
+ ('libelpa{elpa_suffix}.{dso_suffix}'
+ .format(elpa_suffix=elpa_suffix,
+ dso_suffix=dso_suffix))))
if spec.satisfies('@:4.999'):
if elpa.satisfies('@:2014.5.999'):
@@ -417,7 +457,7 @@ class Cp2k(MakefilePackage, CudaPackage):
cppflags.append('-D__ELPA={0}{1:02d}'
.format(elpa.version[0],
int(elpa.version[1])))
- fcflags += ['-I{0}'.format(os.path.join(elpa_incdir, 'elpa'))]
+ fcflags += ['-I{0}'.format(join_path(elpa_incdir, 'elpa'))]
if spec.satisfies('+sirius'):
sirius = spec['sirius']
@@ -439,7 +479,7 @@ class Cp2k(MakefilePackage, CudaPackage):
cppflags += ['-D__PW_CUDA']
libs += ['-lcufft', '-lcublas']
- cuda_arch = spec.variants['cuda_arch'].value
+ cuda_arch = spec.variants['cuda_arch'].value[0]
if cuda_arch:
gpuver = {
'35': 'K40',
@@ -453,12 +493,12 @@ class Cp2k(MakefilePackage, CudaPackage):
gpuver = 'K20X'
if 'smm=libsmm' in spec:
- lib_dir = os.path.join(
+ lib_dir = join_path(
'lib', self.makefile_architecture, self.makefile_version
)
mkdirp(lib_dir)
try:
- copy(env['LIBSMM_PATH'], os.path.join(lib_dir, 'libsmm.a'))
+ copy(env['LIBSMM_PATH'], join_path(lib_dir, 'libsmm.a'))
except KeyError:
raise KeyError('Point environment variable LIBSMM_PATH to '
'the absolute path of the libsmm.a file')
@@ -479,6 +519,19 @@ class Cp2k(MakefilePackage, CudaPackage):
output=str).split()
libs += pkgconf('--libs', 'libxsmmf', output=str).split()
+ if '+libvori' in spec:
+ cppflags += ['-D__LIBVORI']
+ libvori = spec['libvori'].libs
+ ldflags += [libvori.search_flags]
+ libs += libvori
+ libs += ['-lstdc++']
+
+ if '+spglib' in spec:
+ cppflags += ['-D__SPGLIB']
+ spglib = spec['spglib'].libs
+ ldflags += [spglib.search_flags]
+ libs += spglib
+
dflags.extend(cppflags)
cflags.extend(cppflags)
cxxflags.extend(cppflags)
@@ -516,7 +569,7 @@ class Cp2k(MakefilePackage, CudaPackage):
if spec.satisfies('+cuda'):
mkf.write('NVCC = {0}\n'.format(
- os.path.join(spec['cuda'].prefix, 'bin', 'nvcc')))
+ join_path(spec['cuda'].prefix, 'bin', 'nvcc')))
# Write compiler flags to file
def fflags(var, lst):
@@ -547,7 +600,7 @@ class Cp2k(MakefilePackage, CudaPackage):
if self.spec.satisfies('@:6.9999'):
# prior to version 7.1 was the Makefile located in makefiles/
- build_dir = os.path.join(build_dir, 'makefiles')
+ build_dir = join_path(build_dir, 'makefiles')
return build_dir
@@ -559,18 +612,21 @@ class Cp2k(MakefilePackage, CudaPackage):
]
def build(self, spec, prefix):
+ if len(spec.variants['cuda_arch'].value) > 1:
+ raise InstallError("cp2k supports only one cuda_arch at a time")
+
# Apparently the Makefile bases its paths on PWD
# so we need to set PWD = self.build_directory
with spack.util.environment.set_env(PWD=self.build_directory):
super(Cp2k, self).build(spec, prefix)
def install(self, spec, prefix):
- exe_dir = os.path.join('exe', self.makefile_architecture)
+ exe_dir = join_path('exe', self.makefile_architecture)
install_tree(exe_dir, self.prefix.bin)
install_tree('data', self.prefix.share.data)
def check(self):
- data_dir = os.path.join(self.stage.source_path, 'data')
+ data_dir = join_path(self.stage.source_path, 'data')
# CP2K < 7 still uses $PWD to detect the current working dir
# and Makefile is in a subdir, account for both facts here:
diff --git a/var/spack/repos/builtin/packages/cpio/package.py b/var/spack/repos/builtin/packages/cpio/package.py
index d725ef3955..5a351d9dc0 100644
--- a/var/spack/repos/builtin/packages/cpio/package.py
+++ b/var/spack/repos/builtin/packages/cpio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,7 +32,7 @@ class Cpio(AutotoolsPackage, GNUMirrorPackage):
spec = self.spec
if name == 'cflags':
- if '%intel@:18.999' in spec:
+ if '%intel@:17.999' in spec:
flags.append('-no-gcc')
elif '%clang' in spec or '%fj' in spec:
diff --git a/var/spack/repos/builtin/packages/cpmd/package.py b/var/spack/repos/builtin/packages/cpmd/package.py
new file mode 100644
index 0000000000..4c534fa2a7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cpmd/package.py
@@ -0,0 +1,105 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class Cpmd(MakefilePackage):
+ """The CPMD code is a parallelized plane wave / pseudopotential
+ implementation of Density Functional Theory, particularly
+ designed for ab-initio molecular dynamics.
+ Move to new directory, download CPMD main archive and patch.to.XXXXs
+ manually, and run Spack"""
+
+ homepage = "https://www.cpmd.org/wordpress/"
+ basedir = os.getcwd()
+ url = "file://{0}/cpmd-v4.3.tar.gz".format(basedir)
+ manual_download = True
+
+ version('4.3', sha256='4f31ddf045f1ae5d6f25559d85ddbdab4d7a6200362849df833632976d095df4')
+
+ variant('omp', description='Enables the use of OMP instructions',
+ default=False)
+ variant('mpi', description='Build with MPI support', default=False)
+
+ depends_on('lapack')
+ depends_on('mpi', when='+mpi')
+
+ conflicts('^openblas threads=none', when='+omp')
+ conflicts('^openblas threads=pthreads', when='+omp')
+
+ patch('file://{0}/patch.to.4612'.format(basedir), sha256='3b7d91e04c40418ad958069234ec7253fbf6c4be361a1d5cfd804774eeb44915', level=0, when='@4.3')
+ patch('file://{0}/patch.to.4615'.format(basedir), sha256='5ec5790fb6ca64632bcc1b0f5b8f3423c54455766a0979ff4136624bbe8d49eb', level=0, when='@4.3')
+ patch('file://{0}/patch.to.4616'.format(basedir), sha256='ac0bc215c4259f55da4dc59803fe636f797e241f8a01974e05730c9778ad44c4', level=0, when='@4.3')
+ patch('file://{0}/patch.to.4621'.format(basedir), sha256='2d2bc7e37246032fc354f51da7dbdb5a219dd228867399931b0e94da1265d5ca', level=0, when='@4.3')
+ patch('file://{0}/patch.to.4624'.format(basedir), sha256='0a19687528264bf91c9f50ffdc0b920a8511eecf5259b667c8c29350f9dabc53', level=0, when='@4.3')
+
+ def edit(self, spec, prefix):
+ # patch configure file
+ cbase = 'LINUX-GFORTRAN'
+ cp = FileFilter(join_path('configure', cbase))
+ # Compilers
+ if spec.satisfies('+mpi'):
+ fc = spec["mpi"].mpifc
+ cc = spec["mpi"].mpicc
+ else:
+ fc = spack_fc
+ cc = spack_cc
+
+ cp.filter('FC=.+', "FC='{0}'".format(fc))
+ cp.filter('CC=.+', "CC='{0}'".format(cc))
+ cp.filter('LD=.+', "LD='{0}'".format(fc))
+
+ # MPI flag
+ if spec.satisfies('+mpi'):
+ cp.filter('-D__Linux', '-D__Linux -D__PARALLEL')
+
+ # OMP flag
+ if spec.satisfies('+omp'):
+ cp.filter('-fopenmp', self.compiler.openmp_flag)
+
+ # lapack
+ cp.filter(
+ 'LIBS=.+',
+ "LIBS='{0}'".format(spec['lapack'].libs.ld_flags)
+ )
+
+ # LFLAGS
+ cp.filter("'-static '", '')
+
+ # Compiler specific
+ if spec.satisfies('%fj'):
+ cp.filter('-ffixed-form', '-Fixed')
+ cp.filter('-ffree-line-length-none', '')
+ cp.filter('-falign-commons', '-Kalign_commons')
+
+ # create Makefile
+ bash = which('bash')
+ if spec.satisfies('+omp'):
+ bash('./configure.sh', '-omp', cbase)
+ else:
+ bash('./configure.sh', cbase)
+
+ def install(self, spec, prefix):
+ install_tree('.', prefix)
+
+ def test(self):
+ test_dir = self.test_suite.current_test_data_dir
+ test_file = join_path(test_dir, '1-h2o-pbc-geoopt.inp')
+ opts = []
+ if self.spec.satisfies('+mpi'):
+ exe_name = self.spec['mpi'].prefix.bin.mpirun
+ opts.extend(['-n', '2'])
+ opts.append(join_path(self.prefix.bin, 'cpmd.x'))
+ else:
+ exe_name = 'cpmd.x'
+ opts.append(test_file)
+ opts.append(test_dir)
+ expected = ['2 1 H O 1.84444 0.97604',
+ '3 1 H O 1.84444 0.97604',
+ '2 1 3 H O H 103.8663'
+ ]
+ self.run_test(exe_name, options=opts, expected=expected)
diff --git a/var/spack/repos/builtin/packages/cpmd/test/1-h2o-pbc-geoopt.inp b/var/spack/repos/builtin/packages/cpmd/test/1-h2o-pbc-geoopt.inp
new file mode 100644
index 0000000000..38fc0165cc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cpmd/test/1-h2o-pbc-geoopt.inp
@@ -0,0 +1,51 @@
+&INFO
+single water molecule with pbc.
+default geometry optimization
+&END
+
+&CPMD
+ OPTIMIZE GEOMETRY XYZ
+ HESSIAN UNITY
+ CONVERGENCE ORBITALS
+ 1.0d-7
+ CONVERGENCE GEOMETRY
+ 3.0d-4
+ ODIIS
+ 5
+ MAXSTEP
+ 100
+ MAXCPUTIME
+ 1500
+
+ STRUCTURE BONDS ANGLES
+&END
+
+&DFT
+ FUNCTIONAL BLYP
+ GC-CUTOFF
+ 1.0d-06
+&END
+
+&SYSTEM
+ SYMMETRY
+ 1
+ CELL
+ 20.0 1.0 1.0 0.0 0.0 0.0
+ CUTOFF
+ 70.0
+&END
+
+&ATOMS
+
+*O_MT_BLYP.psp KLEINMAN-BYLANDER
+ LMAX=P
+ 1
+ 10.0 10.0 10.0
+
+*H_CVB_BLYP.psp
+ LMAX=S
+ 2
+ 8.5 9.0 10.0
+ 11.5 9.0 10.0
+
+&END
diff --git a/var/spack/repos/builtin/packages/cpmd/test/H_CVB_BLYP.psp b/var/spack/repos/builtin/packages/cpmd/test/H_CVB_BLYP.psp
new file mode 100644
index 0000000000..a9c4ec162a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cpmd/test/H_CVB_BLYP.psp
@@ -0,0 +1,28 @@
+&ATOM
+ Z = 1
+ ZV = 1
+ XC = 1312 .666667
+ TYPE = NORMCONSERVING CAR
+&END
+&INFO
+ ============================================================
+ | hydrogen pseudopotential with |
+ | Exchange-Correlation Functional : |
+ | Slater exchange : .6667 |
+ | LDA correlation : Lee-Yang-Parr |
+ | Exchange GC : Becke (1988) |
+ | Correlation GC : Lee-Yang-Parr |
+ | Von Barth-Car normconserving PP after P. Giannozzi |
+ | ALPHA(CORE): .25 |
+ | .2829559 -1.961599 .4051810 |
+ | Note this is the PP used by Michiel Sprik |
+ ============================================================
+&END
+&POTENTIAL
+ CAR
+ 0.25000
+ 0.2829559 -1.9615990 0.405181
+ 0.2829559 -1.9615990 0.405181
+ 0.2829559 -1.9615990 0.405181
+&END
+
diff --git a/var/spack/repos/builtin/packages/cpmd/test/O_MT_BLYP.psp b/var/spack/repos/builtin/packages/cpmd/test/O_MT_BLYP.psp
new file mode 100644
index 0000000000..f73f83750e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cpmd/test/O_MT_BLYP.psp
@@ -0,0 +1,1301 @@
+&ATOM
+ Z = 8
+ ZV = 6
+ XC = 1312 .666667
+ TYPE = NORMCONSERVING NUMERIC
+&END
+&INFO
+ ============================================================
+ | Pseudopotential Report Thu Nov 30 13:19:26 1995 |
+ ------------------------------------------------------------
+ | Atomic Symbol : O |
+ | Atomic Number : 8 |
+ | Number of core states : 1 |
+ | Number of valence states : 2 |
+ | Exchange-Correlation Functional : |
+ | Slater exchange : .6667 |
+ | LDA correlation : Lee-Yang-Parr |
+ | Exchange GC : Becke (1988) |
+ | Correlation GC : Lee-Yang-Parr |
+ | Electron Configuration : N L Occupation |
+ | 1 S 2.0000 |
+ | 2 S 2.0000 |
+ | 2 P 4.0000 |
+ | Full Potential Total Energy -75.023693 |
+ | Trouiller-Martins normconserving PP |
+ | n l rc energy |
+ | 2 S 1.0500 -.87404 |
+ | 2 P 1.0500 -.33186 |
+ | 3 D 1.0500 -.33186 |
+ | Number of Mesh Points : 631 |
+ | Pseudoatom Total Energy -15.775323 |
+ ============================================================
+&END
+&POTENTIAL
+ 631
+ .78125000E-03 -.10010538E+02 -.25377186E+02 -.20655870E+02
+ .79492188E-03 -.10010538E+02 -.25377186E+02 -.20655870E+02
+ .80883301E-03 -.99910402E+01 -.25357688E+02 -.20636372E+02
+ .82298759E-03 -.10064317E+02 -.25430964E+02 -.20709649E+02
+ .83738987E-03 -.10143116E+02 -.25509764E+02 -.20788448E+02
+ .85204419E-03 -.10120596E+02 -.25487243E+02 -.20765927E+02
+ .86695496E-03 -.10125910E+02 -.25492557E+02 -.20771242E+02
+ .88212668E-03 -.10123540E+02 -.25490187E+02 -.20768871E+02
+ .89756389E-03 -.10123253E+02 -.25489900E+02 -.20768584E+02
+ .91327126E-03 -.10122361E+02 -.25489008E+02 -.20767693E+02
+ .92925351E-03 -.10121603E+02 -.25488251E+02 -.20766935E+02
+ .94551544E-03 -.10120775E+02 -.25487422E+02 -.20766107E+02
+ .96206196E-03 -.10119931E+02 -.25486579E+02 -.20765263E+02
+ .97889805E-03 -.10119056E+02 -.25485703E+02 -.20764388E+02
+ .99602877E-03 -.10118152E+02 -.25484800E+02 -.20763484E+02
+ .10134593E-02 -.10117218E+02 -.25483866E+02 -.20762550E+02
+ .10311948E-02 -.10116253E+02 -.25482901E+02 -.20761585E+02
+ .10492407E-02 -.10115256E+02 -.25481903E+02 -.20760587E+02
+ .10676024E-02 -.10114225E+02 -.25480872E+02 -.20759557E+02
+ .10862855E-02 -.10113160E+02 -.25479807E+02 -.20758492E+02
+ .11052955E-02 -.10112059E+02 -.25478707E+02 -.20757391E+02
+ .11246381E-02 -.10110922E+02 -.25477570E+02 -.20756254E+02
+ .11443193E-02 -.10109747E+02 -.25476395E+02 -.20755079E+02
+ .11643449E-02 -.10108534E+02 -.25475181E+02 -.20753865E+02
+ .11847209E-02 -.10107280E+02 -.25473927E+02 -.20752611E+02
+ .12054535E-02 -.10105984E+02 -.25472632E+02 -.20751316E+02
+ .12265490E-02 -.10104646E+02 -.25471293E+02 -.20749978E+02
+ .12480136E-02 -.10103264E+02 -.25469911E+02 -.20748595E+02
+ .12698538E-02 -.10101836E+02 -.25468483E+02 -.20747167E+02
+ .12920763E-02 -.10100361E+02 -.25467008E+02 -.20745693E+02
+ .13146876E-02 -.10098838E+02 -.25465485E+02 -.20744169E+02
+ .13376946E-02 -.10097265E+02 -.25463912E+02 -.20742596E+02
+ .13611043E-02 -.10095640E+02 -.25462288E+02 -.20740972E+02
+ .13849236E-02 -.10093963E+02 -.25460610E+02 -.20739295E+02
+ .14091598E-02 -.10092231E+02 -.25458878E+02 -.20737563E+02
+ .14338201E-02 -.10090443E+02 -.25457090E+02 -.20735774E+02
+ .14589119E-02 -.10088597E+02 -.25455244E+02 -.20733928E+02
+ .14844429E-02 -.10086691E+02 -.25453338E+02 -.20732023E+02
+ .15104206E-02 -.10084724E+02 -.25451371E+02 -.20730055E+02
+ .15368530E-02 -.10082693E+02 -.25449340E+02 -.20728025E+02
+ .15637479E-02 -.10080597E+02 -.25447245E+02 -.20725929E+02
+ .15911135E-02 -.10078435E+02 -.25445082E+02 -.20723767E+02
+ .16189580E-02 -.10076203E+02 -.25442851E+02 -.20721535E+02
+ .16472898E-02 -.10073900E+02 -.25440548E+02 -.20719232E+02
+ .16761173E-02 -.10071525E+02 -.25438172E+02 -.20716857E+02
+ .17054494E-02 -.10069074E+02 -.25435722E+02 -.20714406E+02
+ .17352948E-02 -.10066546E+02 -.25433194E+02 -.20711878E+02
+ .17656624E-02 -.10063939E+02 -.25430586E+02 -.20709270E+02
+ .17965615E-02 -.10061250E+02 -.25427897E+02 -.20706581E+02
+ .18280013E-02 -.10058476E+02 -.25425124E+02 -.20703808E+02
+ .18599914E-02 -.10055617E+02 -.25422265E+02 -.20700949E+02
+ .18925412E-02 -.10052669E+02 -.25419317E+02 -.20698001E+02
+ .19256607E-02 -.10049630E+02 -.25416278E+02 -.20694962E+02
+ .19593597E-02 -.10046498E+02 -.25413145E+02 -.20691830E+02
+ .19936485E-02 -.10043269E+02 -.25409917E+02 -.20688601E+02
+ .20285374E-02 -.10039942E+02 -.25406590E+02 -.20685274E+02
+ .20640368E-02 -.10036514E+02 -.25403162E+02 -.20681846E+02
+ .21001574E-02 -.10032982E+02 -.25399630E+02 -.20678314E+02
+ .21369102E-02 -.10029344E+02 -.25395991E+02 -.20674676E+02
+ .21743061E-02 -.10025596E+02 -.25392244E+02 -.20670928E+02
+ .22123565E-02 -.10021736E+02 -.25388384E+02 -.20667068E+02
+ .22510727E-02 -.10017762E+02 -.25384409E+02 -.20663094E+02
+ .22904665E-02 -.10013670E+02 -.25380317E+02 -.20659001E+02
+ .23305496E-02 -.10009457E+02 -.25376104E+02 -.20654788E+02
+ .23713343E-02 -.10005120E+02 -.25371767E+02 -.20650452E+02
+ .24128326E-02 -.10000657E+02 -.25367304E+02 -.20645988E+02
+ .24550572E-02 -.99960636E+01 -.25362711E+02 -.20641395E+02
+ .24980207E-02 -.99913378E+01 -.25357985E+02 -.20636670E+02
+ .25417360E-02 -.99864761E+01 -.25353124E+02 -.20631808E+02
+ .25862164E-02 -.99814752E+01 -.25348123E+02 -.20626807E+02
+ .26314752E-02 -.99763320E+01 -.25342979E+02 -.20621664E+02
+ .26775260E-02 -.99710432E+01 -.25337691E+02 -.20616375E+02
+ .27243827E-02 -.99656055E+01 -.25332253E+02 -.20610937E+02
+ .27720594E-02 -.99600155E+01 -.25326663E+02 -.20605347E+02
+ .28205705E-02 -.99542699E+01 -.25320917E+02 -.20599602E+02
+ .28699305E-02 -.99483652E+01 -.25315013E+02 -.20593697E+02
+ .29201542E-02 -.99422980E+01 -.25308945E+02 -.20587630E+02
+ .29712569E-02 -.99360648E+01 -.25302712E+02 -.20581397E+02
+ .30232539E-02 -.99296622E+01 -.25296310E+02 -.20574994E+02
+ .30761609E-02 -.99230864E+01 -.25289734E+02 -.20568418E+02
+ .31299937E-02 -.99163340E+01 -.25282981E+02 -.20561666E+02
+ .31847686E-02 -.99094013E+01 -.25276049E+02 -.20554733E+02
+ .32405020E-02 -.99022847E+01 -.25268932E+02 -.20547616E+02
+ .32972108E-02 -.98949805E+01 -.25261628E+02 -.20540312E+02
+ .33549120E-02 -.98874849E+01 -.25254132E+02 -.20532817E+02
+ .34136230E-02 -.98797944E+01 -.25246442E+02 -.20525126E+02
+ .34733614E-02 -.98719050E+01 -.25238552E+02 -.20517237E+02
+ .35341452E-02 -.98638131E+01 -.25230460E+02 -.20509145E+02
+ .35959927E-02 -.98555147E+01 -.25222162E+02 -.20500846E+02
+ .36589226E-02 -.98470062E+01 -.25213654E+02 -.20492338E+02
+ .37229538E-02 -.98382836E+01 -.25204931E+02 -.20483615E+02
+ .37881054E-02 -.98293432E+01 -.25195991E+02 -.20474675E+02
+ .38543973E-02 -.98201809E+01 -.25186828E+02 -.20465513E+02
+ .39218492E-02 -.98107929E+01 -.25177440E+02 -.20456125E+02
+ .39904816E-02 -.98011753E+01 -.25167823E+02 -.20446507E+02
+ .40603150E-02 -.97913243E+01 -.25157972E+02 -.20436656E+02
+ .41313705E-02 -.97812357E+01 -.25147883E+02 -.20426567E+02
+ .42036695E-02 -.97709058E+01 -.25137553E+02 -.20416238E+02
+ .42772337E-02 -.97603305E+01 -.25126978E+02 -.20405662E+02
+ .43520853E-02 -.97495060E+01 -.25116153E+02 -.20394838E+02
+ .44282468E-02 -.97384282E+01 -.25105076E+02 -.20383760E+02
+ .45057411E-02 -.97270932E+01 -.25093741E+02 -.20372425E+02
+ .45845916E-02 -.97154971E+01 -.25082144E+02 -.20360829E+02
+ .46648220E-02 -.97036358E+01 -.25070283E+02 -.20348968E+02
+ .47464564E-02 -.96915056E+01 -.25058153E+02 -.20336837E+02
+ .48295193E-02 -.96791024E+01 -.25045750E+02 -.20324434E+02
+ .49140359E-02 -.96664223E+01 -.25033070E+02 -.20311754E+02
+ .50000316E-02 -.96534615E+01 -.25020109E+02 -.20298793E+02
+ .50875321E-02 -.96402160E+01 -.25006863E+02 -.20285548E+02
+ .51765639E-02 -.96266820E+01 -.24993329E+02 -.20272014E+02
+ .52671538E-02 -.96128556E+01 -.24979503E+02 -.20258187E+02
+ .53593290E-02 -.95987331E+01 -.24965380E+02 -.20244065E+02
+ .54531172E-02 -.95843108E+01 -.24950958E+02 -.20229642E+02
+ .55485468E-02 -.95695847E+01 -.24936232E+02 -.20214916E+02
+ .56456464E-02 -.95545514E+01 -.24921199E+02 -.20199883E+02
+ .57444452E-02 -.95392070E+01 -.24905854E+02 -.20184539E+02
+ .58449730E-02 -.95235481E+01 -.24890195E+02 -.20168880E+02
+ .59472600E-02 -.95075711E+01 -.24874218E+02 -.20152903E+02
+ .60513370E-02 -.94912725E+01 -.24857920E+02 -.20136604E+02
+ .61572354E-02 -.94746489E+01 -.24841296E+02 -.20119980E+02
+ .62649871E-02 -.94576970E+01 -.24824344E+02 -.20103028E+02
+ .63746243E-02 -.94404134E+01 -.24807060E+02 -.20085745E+02
+ .64861803E-02 -.94227951E+01 -.24789442E+02 -.20068127E+02
+ .65996884E-02 -.94048388E+01 -.24771486E+02 -.20050170E+02
+ .67151830E-02 -.93865417E+01 -.24753189E+02 -.20031873E+02
+ .68326987E-02 -.93679008E+01 -.24734548E+02 -.20013232E+02
+ .69522709E-02 -.93489132E+01 -.24715560E+02 -.19994245E+02
+ .70739356E-02 -.93295764E+01 -.24696223E+02 -.19974908E+02
+ .71977295E-02 -.93098877E+01 -.24676534E+02 -.19955219E+02
+ .73236898E-02 -.92898447E+01 -.24656491E+02 -.19935176E+02
+ .74518543E-02 -.92694451E+01 -.24636092E+02 -.19914776E+02
+ .75822618E-02 -.92486867E+01 -.24615333E+02 -.19894018E+02
+ .77149514E-02 -.92275675E+01 -.24594214E+02 -.19872899E+02
+ .78499630E-02 -.92060857E+01 -.24572732E+02 -.19851417E+02
+ .79873374E-02 -.91842395E+01 -.24550886E+02 -.19829571E+02
+ .81271158E-02 -.91620274E+01 -.24528674E+02 -.19807359E+02
+ .82693403E-02 -.91394480E+01 -.24506094E+02 -.19784779E+02
+ .84140538E-02 -.91165002E+01 -.24483146E+02 -.19761831E+02
+ .85612997E-02 -.90931831E+01 -.24459829E+02 -.19738514E+02
+ .87111224E-02 -.90694957E+01 -.24436142E+02 -.19714827E+02
+ .88635671E-02 -.90454376E+01 -.24412083E+02 -.19690768E+02
+ .90186795E-02 -.90210085E+01 -.24387654E+02 -.19666339E+02
+ .91765064E-02 -.89962082E+01 -.24362854E+02 -.19641539E+02
+ .93370953E-02 -.89710368E+01 -.24337682E+02 -.19616367E+02
+ .95004944E-02 -.89454946E+01 -.24312140E+02 -.19590825E+02
+ .96667531E-02 -.89195824E+01 -.24286228E+02 -.19564913E+02
+ .98359213E-02 -.88933010E+01 -.24259946E+02 -.19538631E+02
+ .10008050E-01 -.88666515E+01 -.24233296E+02 -.19511982E+02
+ .10183191E-01 -.88396353E+01 -.24206280E+02 -.19484965E+02
+ .10361397E-01 -.88122541E+01 -.24178899E+02 -.19457584E+02
+ .10542721E-01 -.87845098E+01 -.24151154E+02 -.19429840E+02
+ .10727219E-01 -.87564049E+01 -.24123049E+02 -.19401735E+02
+ .10914945E-01 -.87279418E+01 -.24094586E+02 -.19373271E+02
+ .11105957E-01 -.86991234E+01 -.24065767E+02 -.19344453E+02
+ .11300311E-01 -.86699530E+01 -.24036596E+02 -.19315282E+02
+ .11498066E-01 -.86404340E+01 -.24007077E+02 -.19285763E+02
+ .11699282E-01 -.86105704E+01 -.23977213E+02 -.19255899E+02
+ .11904020E-01 -.85803662E+01 -.23947009E+02 -.19225695E+02
+ .12112340E-01 -.85498262E+01 -.23916468E+02 -.19195155E+02
+ .12324306E-01 -.85189550E+01 -.23885596E+02 -.19164283E+02
+ .12539981E-01 -.84877580E+01 -.23854399E+02 -.19133086E+02
+ .12759431E-01 -.84562406E+01 -.23822881E+02 -.19101568E+02
+ .12982721E-01 -.84244089E+01 -.23791049E+02 -.19069736E+02
+ .13209919E-01 -.83922692E+01 -.23758909E+02 -.19037596E+02
+ .13441092E-01 -.83598280E+01 -.23726467E+02 -.19005155E+02
+ .13676311E-01 -.83270923E+01 -.23693731E+02 -.18972419E+02
+ .13915647E-01 -.82940696E+01 -.23660707E+02 -.18939396E+02
+ .14159171E-01 -.82607676E+01 -.23627405E+02 -.18906093E+02
+ .14406956E-01 -.82271943E+01 -.23593831E+02 -.18872520E+02
+ .14659078E-01 -.81933582E+01 -.23559994E+02 -.18838683E+02
+ .14915612E-01 -.81592682E+01 -.23525903E+02 -.18804593E+02
+ .15176635E-01 -.81249333E+01 -.23491567E+02 -.18770257E+02
+ .15442226E-01 -.80903631E+01 -.23456996E+02 -.18735686E+02
+ .15712465E-01 -.80555675E+01 -.23422199E+02 -.18700890E+02
+ .15987433E-01 -.80205567E+01 -.23387187E+02 -.18665879E+02
+ .16267213E-01 -.79853412E+01 -.23351971E+02 -.18630663E+02
+ .16551890E-01 -.79499320E+01 -.23316560E+02 -.18595253E+02
+ .16841548E-01 -.79143401E+01 -.23280967E+02 -.18559660E+02
+ .17136275E-01 -.78785773E+01 -.23245202E+02 -.18523896E+02
+ .17436160E-01 -.78426552E+01 -.23209279E+02 -.18487973E+02
+ .17741292E-01 -.78065859E+01 -.23173208E+02 -.18451903E+02
+ .18051765E-01 -.77703821E+01 -.23137002E+02 -.18415698E+02
+ .18367671E-01 -.77340562E+01 -.23100674E+02 -.18379371E+02
+ .18689105E-01 -.76976212E+01 -.23064237E+02 -.18342935E+02
+ .19016164E-01 -.76610904E+01 -.23027704E+02 -.18306403E+02
+ .19348947E-01 -.76244772E+01 -.22991089E+02 -.18269788E+02
+ .19687554E-01 -.75877952E+01 -.22954404E+02 -.18233105E+02
+ .20032086E-01 -.75510583E+01 -.22917664E+02 -.18196366E+02
+ .20382648E-01 -.75142805E+01 -.22880884E+02 -.18159587E+02
+ .20739344E-01 -.74774761E+01 -.22844076E+02 -.18122780E+02
+ .21102282E-01 -.74406593E+01 -.22807256E+02 -.18085962E+02
+ .21471572E-01 -.74038447E+01 -.22770437E+02 -.18049145E+02
+ .21847325E-01 -.73670469E+01 -.22733636E+02 -.18012345E+02
+ .22229653E-01 -.73302807E+01 -.22696865E+02 -.17975576E+02
+ .22618672E-01 -.72935607E+01 -.22660141E+02 -.17938854E+02
+ .23014499E-01 -.72569018E+01 -.22623477E+02 -.17902192E+02
+ .23417252E-01 -.72203190E+01 -.22586889E+02 -.17865606E+02
+ .23827054E-01 -.71838270E+01 -.22550392E+02 -.17829111E+02
+ .24244028E-01 -.71474408E+01 -.22513999E+02 -.17792721E+02
+ .24668298E-01 -.71111751E+01 -.22477727E+02 -.17756452E+02
+ .25099994E-01 -.70750448E+01 -.22441590E+02 -.17720318E+02
+ .25539243E-01 -.70390646E+01 -.22405603E+02 -.17684333E+02
+ .25986180E-01 -.70032491E+01 -.22369779E+02 -.17648513E+02
+ .26440938E-01 -.69676127E+01 -.22334134E+02 -.17612872E+02
+ .26903655E-01 -.69321699E+01 -.22298683E+02 -.17577424E+02
+ .27374469E-01 -.68969347E+01 -.22263438E+02 -.17542183E+02
+ .27853522E-01 -.68619212E+01 -.22228414E+02 -.17507164E+02
+ .28340959E-01 -.68271431E+01 -.22193625E+02 -.17472379E+02
+ .28836925E-01 -.67926141E+01 -.22159084E+02 -.17437843E+02
+ .29341572E-01 -.67583473E+01 -.22124804E+02 -.17403569E+02
+ .29855049E-01 -.67243559E+01 -.22090799E+02 -.17369570E+02
+ .30377512E-01 -.66906525E+01 -.22057081E+02 -.17335858E+02
+ .30909119E-01 -.66572495E+01 -.22023662E+02 -.17302446E+02
+ .31450028E-01 -.66241591E+01 -.21990555E+02 -.17269346E+02
+ .32000404E-01 -.65913929E+01 -.21957771E+02 -.17236569E+02
+ .32560411E-01 -.65589624E+01 -.21925321E+02 -.17204128E+02
+ .33130218E-01 -.65268785E+01 -.21893217E+02 -.17172032E+02
+ .33709997E-01 -.64951518E+01 -.21861468E+02 -.17140292E+02
+ .34299922E-01 -.64637925E+01 -.21830084E+02 -.17108919E+02
+ .34900171E-01 -.64328102E+01 -.21799077E+02 -.17077922E+02
+ .35510924E-01 -.64022143E+01 -.21768453E+02 -.17047311E+02
+ .36132365E-01 -.63720136E+01 -.21738224E+02 -.17017093E+02
+ .36764681E-01 -.63422165E+01 -.21708395E+02 -.16987278E+02
+ .37408063E-01 -.63128309E+01 -.21678976E+02 -.16957873E+02
+ .38062704E-01 -.62838641E+01 -.21649973E+02 -.16928885E+02
+ .38728801E-01 -.62553230E+01 -.21621393E+02 -.16900322E+02
+ .39406555E-01 -.62272141E+01 -.21593243E+02 -.16872189E+02
+ .40096170E-01 -.61995433E+01 -.21565528E+02 -.16844493E+02
+ .40797853E-01 -.61723158E+01 -.21538253E+02 -.16817238E+02
+ .41511816E-01 -.61455365E+01 -.21511423E+02 -.16790429E+02
+ .42238272E-01 -.61192098E+01 -.21485041E+02 -.16764071E+02
+ .42977442E-01 -.60933394E+01 -.21459112E+02 -.16738167E+02
+ .43729547E-01 -.60679286E+01 -.21433639E+02 -.16712720E+02
+ .44494814E-01 -.60429801E+01 -.21408623E+02 -.16687732E+02
+ .45273474E-01 -.60184960E+01 -.21384067E+02 -.16663207E+02
+ .46065760E-01 -.59944780E+01 -.21359972E+02 -.16639144E+02
+ .46871910E-01 -.59709273E+01 -.21336339E+02 -.16615546E+02
+ .47692169E-01 -.59478444E+01 -.21313167E+02 -.16592412E+02
+ .48526782E-01 -.59252293E+01 -.21290457E+02 -.16569742E+02
+ .49376000E-01 -.59030816E+01 -.21268208E+02 -.16547535E+02
+ .50240080E-01 -.58814002E+01 -.21246418E+02 -.16525791E+02
+ .51119282E-01 -.58601838E+01 -.21225084E+02 -.16504507E+02
+ .52013869E-01 -.58394301E+01 -.21204206E+02 -.16483681E+02
+ .52924112E-01 -.58191368E+01 -.21183778E+02 -.16463311E+02
+ .53850284E-01 -.57993007E+01 -.21163799E+02 -.16443392E+02
+ .54792664E-01 -.57799184E+01 -.21144263E+02 -.16423920E+02
+ .55751535E-01 -.57609858E+01 -.21125165E+02 -.16404893E+02
+ .56727187E-01 -.57424984E+01 -.21106501E+02 -.16386303E+02
+ .57719913E-01 -.57244514E+01 -.21088265E+02 -.16368147E+02
+ .58730012E-01 -.57068391E+01 -.21070450E+02 -.16350417E+02
+ .59757787E-01 -.56896559E+01 -.21053049E+02 -.16333109E+02
+ .60803548E-01 -.56728953E+01 -.21036056E+02 -.16316214E+02
+ .61867610E-01 -.56565507E+01 -.21019462E+02 -.16299725E+02
+ .62950293E-01 -.56406148E+01 -.21003259E+02 -.16283635E+02
+ .64051923E-01 -.56250802E+01 -.20987438E+02 -.16267935E+02
+ .65172832E-01 -.56099388E+01 -.20971990E+02 -.16252616E+02
+ .66313357E-01 -.55951822E+01 -.20956905E+02 -.16237670E+02
+ .67473840E-01 -.55808019E+01 -.20942173E+02 -.16223086E+02
+ .68654633E-01 -.55667887E+01 -.20927783E+02 -.16208855E+02
+ .69856089E-01 -.55531331E+01 -.20913724E+02 -.16194966E+02
+ .71078570E-01 -.55398256E+01 -.20899984E+02 -.16181408E+02
+ .72322445E-01 -.55268559E+01 -.20886551E+02 -.16168171E+02
+ .73588088E-01 -.55142138E+01 -.20873413E+02 -.16155242E+02
+ .74875880E-01 -.55018886E+01 -.20860556E+02 -.16142609E+02
+ .76186208E-01 -.54898695E+01 -.20847968E+02 -.16130261E+02
+ .77519466E-01 -.54781453E+01 -.20835634E+02 -.16118184E+02
+ .78876057E-01 -.54667047E+01 -.20823540E+02 -.16106366E+02
+ .80256388E-01 -.54555361E+01 -.20811672E+02 -.16094792E+02
+ .81660875E-01 -.54446278E+01 -.20800015E+02 -.16083451E+02
+ .83089940E-01 -.54339680E+01 -.20788553E+02 -.16072327E+02
+ .84544014E-01 -.54235444E+01 -.20777270E+02 -.16061406E+02
+ .86023534E-01 -.54133451E+01 -.20766151E+02 -.16050674E+02
+ .87528946E-01 -.54033578E+01 -.20755179E+02 -.16040117E+02
+ .89060702E-01 -.53935701E+01 -.20744336E+02 -.16029718E+02
+ .90619265E-01 -.53839698E+01 -.20733606E+02 -.16019464E+02
+ .92205102E-01 -.53745444E+01 -.20722972E+02 -.16009338E+02
+ .93818691E-01 -.53652815E+01 -.20712414E+02 -.15999325E+02
+ .95460518E-01 -.53561689E+01 -.20701915E+02 -.15989410E+02
+ .97131077E-01 -.53471942E+01 -.20691456E+02 -.15979575E+02
+ .98830871E-01 -.53383453E+01 -.20681019E+02 -.15969805E+02
+ .10056041E+00 -.53296102E+01 -.20670583E+02 -.15960085E+02
+ .10232022E+00 -.53209770E+01 -.20660129E+02 -.15950396E+02
+ .10411082E+00 -.53124339E+01 -.20649637E+02 -.15940723E+02
+ .10593276E+00 -.53039694E+01 -.20639086E+02 -.15931049E+02
+ .10778659E+00 -.52955722E+01 -.20628456E+02 -.15921356E+02
+ .10967285E+00 -.52872314E+01 -.20617726E+02 -.15911629E+02
+ .11159213E+00 -.52789364E+01 -.20606874E+02 -.15901850E+02
+ .11354499E+00 -.52706767E+01 -.20595878E+02 -.15892003E+02
+ .11553202E+00 -.52624424E+01 -.20584715E+02 -.15882068E+02
+ .11755384E+00 -.52542239E+01 -.20573363E+02 -.15872031E+02
+ .11961103E+00 -.52460123E+01 -.20561799E+02 -.15861872E+02
+ .12170422E+00 -.52377987E+01 -.20549999E+02 -.15851575E+02
+ .12383404E+00 -.52295752E+01 -.20537939E+02 -.15841122E+02
+ .12600114E+00 -.52213341E+01 -.20525593E+02 -.15830495E+02
+ .12820616E+00 -.52130685E+01 -.20512937E+02 -.15819677E+02
+ .13044977E+00 -.52047722E+01 -.20499945E+02 -.15808650E+02
+ .13273264E+00 -.51964393E+01 -.20486591E+02 -.15797396E+02
+ .13505546E+00 -.51880650E+01 -.20472846E+02 -.15785896E+02
+ .13741893E+00 -.51796451E+01 -.20458684E+02 -.15774134E+02
+ .13982376E+00 -.51711762E+01 -.20444075E+02 -.15762089E+02
+ .14227068E+00 -.51626557E+01 -.20428990E+02 -.15749745E+02
+ .14476041E+00 -.51540819E+01 -.20413399E+02 -.15737082E+02
+ .14729372E+00 -.51454542E+01 -.20397270E+02 -.15724082E+02
+ .14987136E+00 -.51367728E+01 -.20380572E+02 -.15710726E+02
+ .15249411E+00 -.51280390E+01 -.20363271E+02 -.15696994E+02
+ .15516276E+00 -.51192551E+01 -.20345332E+02 -.15682867E+02
+ .15787811E+00 -.51104248E+01 -.20326720E+02 -.15668325E+02
+ .16064097E+00 -.51015528E+01 -.20307398E+02 -.15653349E+02
+ .16345219E+00 -.50926451E+01 -.20287328E+02 -.15637917E+02
+ .16631260E+00 -.50837091E+01 -.20266470E+02 -.15622010E+02
+ .16922307E+00 -.50747536E+01 -.20244782E+02 -.15605607E+02
+ .17218448E+00 -.50657887E+01 -.20222222E+02 -.15588684E+02
+ .17519771E+00 -.50568264E+01 -.20198745E+02 -.15571222E+02
+ .17826367E+00 -.50478801E+01 -.20174306E+02 -.15553197E+02
+ .18138328E+00 -.50389648E+01 -.20148854E+02 -.15534586E+02
+ .18455749E+00 -.50300976E+01 -.20122340E+02 -.15515367E+02
+ .18778724E+00 -.50212972E+01 -.20094712E+02 -.15495513E+02
+ .19107352E+00 -.50125845E+01 -.20065914E+02 -.15475002E+02
+ .19441731E+00 -.50039823E+01 -.20035889E+02 -.15453807E+02
+ .19781961E+00 -.49955156E+01 -.20004577E+02 -.15431902E+02
+ .20128145E+00 -.49872117E+01 -.19971916E+02 -.15409259E+02
+ .20480388E+00 -.49791003E+01 -.19937841E+02 -.15385851E+02
+ .20838795E+00 -.49712134E+01 -.19902283E+02 -.15361650E+02
+ .21203473E+00 -.49635859E+01 -.19865172E+02 -.15336624E+02
+ .21574534E+00 -.49562551E+01 -.19826432E+02 -.15310742E+02
+ .21952089E+00 -.49492613E+01 -.19785987E+02 -.15283974E+02
+ .22336250E+00 -.49426475E+01 -.19743756E+02 -.15256285E+02
+ .22727135E+00 -.49364601E+01 -.19699653E+02 -.15227642E+02
+ .23124859E+00 -.49307482E+01 -.19653591E+02 -.15198007E+02
+ .23529544E+00 -.49255646E+01 -.19605477E+02 -.15167345E+02
+ .23941311E+00 -.49209654E+01 -.19555217E+02 -.15135616E+02
+ .24360284E+00 -.49170099E+01 -.19502709E+02 -.15102781E+02
+ .24786589E+00 -.49137614E+01 -.19447851E+02 -.15068798E+02
+ .25220355E+00 -.49112867E+01 -.19390534E+02 -.15033623E+02
+ .25661711E+00 -.49096566E+01 -.19330646E+02 -.14997211E+02
+ .26110791E+00 -.49089458E+01 -.19268070E+02 -.14959517E+02
+ .26567730E+00 -.49092329E+01 -.19202687E+02 -.14920491E+02
+ .27032665E+00 -.49106007E+01 -.19134371E+02 -.14880083E+02
+ .27505737E+00 -.49131362E+01 -.19062993E+02 -.14838241E+02
+ .27987087E+00 -.49169306E+01 -.18988420E+02 -.14794911E+02
+ .28476861E+00 -.49220793E+01 -.18910516E+02 -.14750036E+02
+ .28975206E+00 -.49286822E+01 -.18829139E+02 -.14703559E+02
+ .29482272E+00 -.49368432E+01 -.18744146E+02 -.14655420E+02
+ .29998212E+00 -.49466706E+01 -.18655388E+02 -.14605556E+02
+ .30523181E+00 -.49582770E+01 -.18562714E+02 -.14553905E+02
+ .31057336E+00 -.49717787E+01 -.18465973E+02 -.14500400E+02
+ .31600840E+00 -.49872964E+01 -.18365008E+02 -.14444974E+02
+ .32153854E+00 -.50049542E+01 -.18259663E+02 -.14387558E+02
+ .32716547E+00 -.50248799E+01 -.18149779E+02 -.14328081E+02
+ .33289086E+00 -.50472044E+01 -.18035200E+02 -.14266471E+02
+ .33871645E+00 -.50720617E+01 -.17915767E+02 -.14202656E+02
+ .34464399E+00 -.50995879E+01 -.17791326E+02 -.14136560E+02
+ .35067526E+00 -.51299217E+01 -.17661725E+02 -.14068110E+02
+ .35681208E+00 -.51632030E+01 -.17526814E+02 -.13997231E+02
+ .36305629E+00 -.51995733E+01 -.17386451E+02 -.13923850E+02
+ .36940978E+00 -.52391749E+01 -.17240504E+02 -.13847893E+02
+ .37587445E+00 -.52821513E+01 -.17088848E+02 -.13769293E+02
+ .38245225E+00 -.53286476E+01 -.16931373E+02 -.13687986E+02
+ .38914516E+00 -.53788114E+01 -.16767988E+02 -.13603917E+02
+ .39595520E+00 -.54327950E+01 -.16598626E+02 -.13517043E+02
+ .40288442E+00 -.54907571E+01 -.16423249E+02 -.13427337E+02
+ .40993490E+00 -.55528620E+01 -.16241849E+02 -.13334791E+02
+ .41710876E+00 -.56192714E+01 -.16054451E+02 -.13239409E+02
+ .42440816E+00 -.56901229E+01 -.15861088E+02 -.13141191E+02
+ .43183530E+00 -.57654944E+01 -.15661778E+02 -.13040098E+02
+ .43939242E+00 -.58453678E+01 -.15456487E+02 -.12936020E+02
+ .44708179E+00 -.59296144E+01 -.15245126E+02 -.12828768E+02
+ .45490572E+00 -.60180132E+01 -.15027568E+02 -.12718093E+02
+ .46286657E+00 -.61102891E+01 -.14803702E+02 -.12603732E+02
+ .47096674E+00 -.62061467E+01 -.14573462E+02 -.12485446E+02
+ .47920865E+00 -.63052857E+01 -.14336862E+02 -.12363037E+02
+ .48759481E+00 -.64074009E+01 -.14093990E+02 -.12236359E+02
+ .49612771E+00 -.65121738E+01 -.13845017E+02 -.12105312E+02
+ .50480995E+00 -.66192615E+01 -.13590184E+02 -.11969837E+02
+ .51364412E+00 -.67282876E+01 -.13329807E+02 -.11829914E+02
+ .52263290E+00 -.68388335E+01 -.13064269E+02 -.11685555E+02
+ .53177897E+00 -.69504319E+01 -.12794021E+02 -.11536811E+02
+ .54108510E+00 -.70625613E+01 -.12519581E+02 -.11383764E+02
+ .55055409E+00 -.71746422E+01 -.12241535E+02 -.11226531E+02
+ .56018879E+00 -.72860329E+01 -.11960535E+02 -.11065265E+02
+ .56999209E+00 -.73960281E+01 -.11677298E+02 -.10900157E+02
+ .57996695E+00 -.75038573E+01 -.11392607E+02 -.10731434E+02
+ .59011638E+00 -.76086850E+01 -.11107305E+02 -.10559366E+02
+ .60044341E+00 -.77096126E+01 -.10822294E+02 -.10384260E+02
+ .61095117E+00 -.78056810E+01 -.10538530E+02 -.10206466E+02
+ .62164282E+00 -.78958768E+01 -.10257018E+02 -.10026374E+02
+ .63252157E+00 -.79791391E+01 -.99788064E+01 -.98444166E+01
+ .64359070E+00 -.80543693E+01 -.97049748E+01 -.96610649E+01
+ .65485353E+00 -.81204446E+01 -.94366279E+01 -.94768299E+01
+ .66631347E+00 -.81762327E+01 -.91748818E+01 -.92922583E+01
+ .67797395E+00 -.82206111E+01 -.89208508E+01 -.91079295E+01
+ .68983850E+00 -.82524892E+01 -.86756318E+01 -.89244503E+01
+ .70191067E+00 -.82708339E+01 -.84402854E+01 -.87424492E+01
+ .71419411E+00 -.82746984E+01 -.82158166E+01 -.85625688E+01
+ .72669251E+00 -.82632542E+01 -.80031506E+01 -.83854562E+01
+ .73940963E+00 -.82358267E+01 -.78031079E+01 -.82117518E+01
+ .75234929E+00 -.81919320E+01 -.76163758E+01 -.80420768E+01
+ .76551541E+00 -.81313165E+01 -.74434771E+01 -.78770176E+01
+ .77891193E+00 -.80539963E+01 -.72847375E+01 -.77171096E+01
+ .79254288E+00 -.79602960E+01 -.71402503E+01 -.75628179E+01
+ .80641239E+00 -.78508854E+01 -.70098401E+01 -.74145172E+01
+ .82052460E+00 -.77268108E+01 -.68930283E+01 -.72724707E+01
+ .83488378E+00 -.75895190E+01 -.67889992E+01 -.71368079E+01
+ .84949425E+00 -.74408701E+01 -.66965737E+01 -.70075037E+01
+ .86436040E+00 -.72831356E+01 -.66141910E+01 -.68843594E+01
+ .87948671E+00 -.71189753E+01 -.65399076E+01 -.67669885E+01
+ .89487772E+00 -.69513872E+01 -.64714179E+01 -.66548089E+01
+ .91053808E+00 -.67836221E+01 -.64061090E+01 -.65470480E+01
+ .92647250E+00 -.66190521E+01 -.63411603E+01 -.64427636E+01
+ .94268577E+00 -.64609796E+01 -.62737053E+01 -.63408889E+01
+ .95918277E+00 -.63123705E+01 -.62010744E+01 -.62403111E+01
+ .97596847E+00 -.61754886E+01 -.61211428E+01 -.61399951E+01
+ .99304792E+00 -.60514058E+01 -.60328140E+01 -.60391669E+01
+ .10104263E+01 -.59393527E+01 -.59366753E+01 -.59375773E+01
+ .10281087E+01 -.58358701E+01 -.58358701E+01 -.58358701E+01
+ .10461006E+01 -.57355168E+01 -.57355168E+01 -.57355168E+01
+ .10644074E+01 -.56368850E+01 -.56368850E+01 -.56368850E+01
+ .10830345E+01 -.55399471E+01 -.55399471E+01 -.55399471E+01
+ .11019876E+01 -.54446743E+01 -.54446743E+01 -.54446743E+01
+ .11212724E+01 -.53510382E+01 -.53510382E+01 -.53510382E+01
+ .11408947E+01 -.52590111E+01 -.52590111E+01 -.52590111E+01
+ .11608603E+01 -.51685657E+01 -.51685657E+01 -.51685657E+01
+ .11811754E+01 -.50796748E+01 -.50796748E+01 -.50796748E+01
+ .12018459E+01 -.49923120E+01 -.49923120E+01 -.49923120E+01
+ .12228782E+01 -.49064512E+01 -.49064512E+01 -.49064512E+01
+ .12442786E+01 -.48220666E+01 -.48220666E+01 -.48220666E+01
+ .12660535E+01 -.47391330E+01 -.47391330E+01 -.47391330E+01
+ .12882094E+01 -.46576254E+01 -.46576254E+01 -.46576254E+01
+ .13107531E+01 -.45775195E+01 -.45775195E+01 -.45775195E+01
+ .13336913E+01 -.44987912E+01 -.44987912E+01 -.44987912E+01
+ .13570309E+01 -.44214167E+01 -.44214167E+01 -.44214167E+01
+ .13807789E+01 -.43453730E+01 -.43453730E+01 -.43453730E+01
+ .14049425E+01 -.42706370E+01 -.42706370E+01 -.42706370E+01
+ .14295290E+01 -.41971864E+01 -.41971864E+01 -.41971864E+01
+ .14545458E+01 -.41249990E+01 -.41249990E+01 -.41249990E+01
+ .14800003E+01 -.40540531E+01 -.40540531E+01 -.40540531E+01
+ .15059003E+01 -.39843274E+01 -.39843274E+01 -.39843274E+01
+ .15322536E+01 -.39158009E+01 -.39158009E+01 -.39158009E+01
+ .15590680E+01 -.38484530E+01 -.38484530E+01 -.38484530E+01
+ .15863517E+01 -.37822634E+01 -.37822634E+01 -.37822634E+01
+ .16141129E+01 -.37172121E+01 -.37172121E+01 -.37172121E+01
+ .16423599E+01 -.36532797E+01 -.36532797E+01 -.36532797E+01
+ .16711012E+01 -.35904469E+01 -.35904469E+01 -.35904469E+01
+ .17003454E+01 -.35286948E+01 -.35286948E+01 -.35286948E+01
+ .17301015E+01 -.34680047E+01 -.34680047E+01 -.34680047E+01
+ .17603783E+01 -.34083584E+01 -.34083584E+01 -.34083584E+01
+ .17911849E+01 -.33497380E+01 -.33497380E+01 -.33497380E+01
+ .18225306E+01 -.32921258E+01 -.32921258E+01 -.32921258E+01
+ .18544249E+01 -.32355044E+01 -.32355044E+01 -.32355044E+01
+ .18868773E+01 -.31798569E+01 -.31798569E+01 -.31798569E+01
+ .19198977E+01 -.31251665E+01 -.31251665E+01 -.31251665E+01
+ .19534959E+01 -.30714167E+01 -.30714167E+01 -.30714167E+01
+ .19876821E+01 -.30185914E+01 -.30185914E+01 -.30185914E+01
+ .20224665E+01 -.29666746E+01 -.29666746E+01 -.29666746E+01
+ .20578597E+01 -.29156507E+01 -.29156507E+01 -.29156507E+01
+ .20938722E+01 -.28655044E+01 -.28655044E+01 -.28655044E+01
+ .21305150E+01 -.28162205E+01 -.28162205E+01 -.28162205E+01
+ .21677990E+01 -.27677843E+01 -.27677843E+01 -.27677843E+01
+ .22057355E+01 -.27201811E+01 -.27201811E+01 -.27201811E+01
+ .22443358E+01 -.26733967E+01 -.26733967E+01 -.26733967E+01
+ .22836117E+01 -.26274169E+01 -.26274169E+01 -.26274169E+01
+ .23235749E+01 -.25822279E+01 -.25822279E+01 -.25822279E+01
+ .23642375E+01 -.25378161E+01 -.25378161E+01 -.25378161E+01
+ .24056116E+01 -.24941682E+01 -.24941682E+01 -.24941682E+01
+ .24477098E+01 -.24512709E+01 -.24512709E+01 -.24512709E+01
+ .24905448E+01 -.24091115E+01 -.24091115E+01 -.24091115E+01
+ .25341293E+01 -.23676771E+01 -.23676771E+01 -.23676771E+01
+ .25784766E+01 -.23269554E+01 -.23269554E+01 -.23269554E+01
+ .26235999E+01 -.22869340E+01 -.22869340E+01 -.22869340E+01
+ .26695129E+01 -.22476010E+01 -.22476010E+01 -.22476010E+01
+ .27162294E+01 -.22089445E+01 -.22089445E+01 -.22089445E+01
+ .27637634E+01 -.21709528E+01 -.21709528E+01 -.21709528E+01
+ .28121293E+01 -.21336146E+01 -.21336146E+01 -.21336146E+01
+ .28613415E+01 -.20969185E+01 -.20969185E+01 -.20969185E+01
+ .29114150E+01 -.20608536E+01 -.20608536E+01 -.20608536E+01
+ .29623648E+01 -.20254089E+01 -.20254089E+01 -.20254089E+01
+ .30142061E+01 -.19905739E+01 -.19905739E+01 -.19905739E+01
+ .30669547E+01 -.19563380E+01 -.19563380E+01 -.19563380E+01
+ .31206265E+01 -.19226909E+01 -.19226909E+01 -.19226909E+01
+ .31752374E+01 -.18896225E+01 -.18896225E+01 -.18896225E+01
+ .32308041E+01 -.18571228E+01 -.18571228E+01 -.18571228E+01
+ .32873431E+01 -.18251821E+01 -.18251821E+01 -.18251821E+01
+ .33448716E+01 -.17937908E+01 -.17937908E+01 -.17937908E+01
+ .34034069E+01 -.17629394E+01 -.17629394E+01 -.17629394E+01
+ .34629665E+01 -.17326185E+01 -.17326185E+01 -.17326185E+01
+ .35235684E+01 -.17028192E+01 -.17028192E+01 -.17028192E+01
+ .35852309E+01 -.16735324E+01 -.16735324E+01 -.16735324E+01
+ .36479724E+01 -.16447493E+01 -.16447493E+01 -.16447493E+01
+ .37118119E+01 -.16164612E+01 -.16164612E+01 -.16164612E+01
+ .37767686E+01 -.15886597E+01 -.15886597E+01 -.15886597E+01
+ .38428621E+01 -.15613363E+01 -.15613363E+01 -.15613363E+01
+ .39101122E+01 -.15344828E+01 -.15344828E+01 -.15344828E+01
+ .39785391E+01 -.15080912E+01 -.15080912E+01 -.15080912E+01
+ .40481636E+01 -.14821535E+01 -.14821535E+01 -.14821535E+01
+ .41190064E+01 -.14566619E+01 -.14566619E+01 -.14566619E+01
+ .41910891E+01 -.14316088E+01 -.14316088E+01 -.14316088E+01
+ .42644331E+01 -.14069865E+01 -.14069865E+01 -.14069865E+01
+ .43390607E+01 -.13827877E+01 -.13827877E+01 -.13827877E+01
+ .44149943E+01 -.13590052E+01 -.13590052E+01 -.13590052E+01
+ .44922567E+01 -.13356316E+01 -.13356316E+01 -.13356316E+01
+ .45708712E+01 -.13126600E+01 -.13126600E+01 -.13126600E+01
+ .46508614E+01 -.12900836E+01 -.12900836E+01 -.12900836E+01
+ .47322515E+01 -.12678954E+01 -.12678954E+01 -.12678954E+01
+ .48150659E+01 -.12460889E+01 -.12460889E+01 -.12460889E+01
+ .48993295E+01 -.12246574E+01 -.12246574E+01 -.12246574E+01
+ .49850678E+01 -.12035945E+01 -.12035945E+01 -.12035945E+01
+ .50723065E+01 -.11828938E+01 -.11828938E+01 -.11828938E+01
+ .51610718E+01 -.11625492E+01 -.11625492E+01 -.11625492E+01
+ .52513906E+01 -.11425545E+01 -.11425545E+01 -.11425545E+01
+ .53432899E+01 -.11229037E+01 -.11229037E+01 -.11229037E+01
+ .54367975E+01 -.11035908E+01 -.11035908E+01 -.11035908E+01
+ .55319415E+01 -.10846102E+01 -.10846102E+01 -.10846102E+01
+ .56287504E+01 -.10659559E+01 -.10659559E+01 -.10659559E+01
+ .57272536E+01 -.10476225E+01 -.10476225E+01 -.10476225E+01
+ .58274805E+01 -.10296045E+01 -.10296045E+01 -.10296045E+01
+ .59294614E+01 -.10118963E+01 -.10118963E+01 -.10118963E+01
+ .60332270E+01 -.99449266E+00 -.99449266E+00 -.99449266E+00
+ .61388085E+01 -.97738836E+00 -.97738836E+00 -.97738836E+00
+ .62462376E+01 -.96057824E+00 -.96057824E+00 -.96057824E+00
+ .63555468E+01 -.94405724E+00 -.94405724E+00 -.94405724E+00
+ .64667688E+01 -.92782039E+00 -.92782039E+00 -.92782039E+00
+ .65799373E+01 -.91186279E+00 -.91186279E+00 -.91186279E+00
+ .66950862E+01 -.89617964E+00 -.89617964E+00 -.89617964E+00
+ .68122502E+01 -.88076623E+00 -.88076623E+00 -.88076623E+00
+ .69314646E+01 -.86561792E+00 -.86561792E+00 -.86561792E+00
+ .70527652E+01 -.85073014E+00 -.85073014E+00 -.85073014E+00
+ .71761886E+01 -.83609842E+00 -.83609842E+00 -.83609842E+00
+ .73017719E+01 -.82171835E+00 -.82171835E+00 -.82171835E+00
+ .74295529E+01 -.80758560E+00 -.80758560E+00 -.80758560E+00
+ .75595701E+01 -.79369592E+00 -.79369592E+00 -.79369592E+00
+ .76918626E+01 -.78004513E+00 -.78004513E+00 -.78004513E+00
+ .78264702E+01 -.76662912E+00 -.76662912E+00 -.76662912E+00
+ .79634334E+01 -.75344386E+00 -.75344386E+00 -.75344386E+00
+ .81027935E+01 -.74048536E+00 -.74048536E+00 -.74048536E+00
+ .82445924E+01 -.72774974E+00 -.72774974E+00 -.72774974E+00
+ .83888727E+01 -.71523316E+00 -.71523316E+00 -.71523316E+00
+ .85356780E+01 -.70293186E+00 -.70293186E+00 -.70293186E+00
+ .86850524E+01 -.69084212E+00 -.69084212E+00 -.69084212E+00
+ .88370408E+01 -.67896031E+00 -.67896031E+00 -.67896031E+00
+ .89916890E+01 -.66728286E+00 -.66728286E+00 -.66728286E+00
+ .91490436E+01 -.65580625E+00 -.65580625E+00 -.65580625E+00
+ .93091518E+01 -.64452703E+00 -.64452703E+00 -.64452703E+00
+ .94720620E+01 -.63344180E+00 -.63344180E+00 -.63344180E+00
+ .96378231E+01 -.62254722E+00 -.62254722E+00 -.62254722E+00
+ .98064850E+01 -.61184002E+00 -.61184002E+00 -.61184002E+00
+ .99780984E+01 -.60131698E+00 -.60131698E+00 -.60131698E+00
+ .10152715E+02 -.59097491E+00 -.59097491E+00 -.59097491E+00
+ .10330388E+02 -.58081073E+00 -.58081073E+00 -.58081073E+00
+ .10511169E+02 -.57082135E+00 -.57082135E+00 -.57082135E+00
+ .10695115E+02 -.56100379E+00 -.56100379E+00 -.56100379E+00
+ .10882279E+02 -.55135507E+00 -.55135507E+00 -.55135507E+00
+ .11072719E+02 -.54187231E+00 -.54187231E+00 -.54187231E+00
+ .11266492E+02 -.53255264E+00 -.53255264E+00 -.53255264E+00
+ .11463656E+02 -.52339326E+00 -.52339326E+00 -.52339326E+00
+ .11664270E+02 -.51439141E+00 -.51439141E+00 -.51439141E+00
+ .11868394E+02 -.50554438E+00 -.50554438E+00 -.50554438E+00
+ .12076091E+02 -.49684951E+00 -.49684951E+00 -.49684951E+00
+ .12287423E+02 -.48830419E+00 -.48830419E+00 -.48830419E+00
+ .12502453E+02 -.47990584E+00 -.47990584E+00 -.47990584E+00
+ .12721246E+02 -.47165193E+00 -.47165193E+00 -.47165193E+00
+ .12943867E+02 -.46353998E+00 -.46353998E+00 -.46353998E+00
+ .13170385E+02 -.45556755E+00 -.45556755E+00 -.45556755E+00
+ .13400867E+02 -.44773223E+00 -.44773223E+00 -.44773223E+00
+ .13635382E+02 -.44003168E+00 -.44003168E+00 -.44003168E+00
+ .13874001E+02 -.43246357E+00 -.43246357E+00 -.43246357E+00
+ .14116796E+02 -.42502562E+00 -.42502562E+00 -.42502562E+00
+ .14363840E+02 -.41771560E+00 -.41771560E+00 -.41771560E+00
+ .14615207E+02 -.41053130E+00 -.41053130E+00 -.41053130E+00
+ .14870973E+02 -.40347056E+00 -.40347056E+00 -.40347056E+00
+ .15131215E+02 -.39653127E+00 -.39653127E+00 -.39653127E+00
+ .15396012E+02 -.38971132E+00 -.38971132E+00 -.38971132E+00
+ .15665442E+02 -.38300867E+00 -.38300867E+00 -.38300867E+00
+ .15939587E+02 -.37642129E+00 -.37642129E+00 -.37642129E+00
+ .16218530E+02 -.36994722E+00 -.36994722E+00 -.36994722E+00
+ .16502354E+02 -.36358449E+00 -.36358449E+00 -.36358449E+00
+ .16791145E+02 -.35733119E+00 -.35733119E+00 -.35733119E+00
+ .17084990E+02 -.35118545E+00 -.35118545E+00 -.35118545E+00
+ .17383978E+02 -.34514540E+00 -.34514540E+00 -.34514540E+00
+ .17688197E+02 -.33920924E+00 -.33920924E+00 -.33920924E+00
+ .17997741E+02 -.33337518E+00 -.33337518E+00 -.33337518E+00
+ .18312701E+02 -.32764145E+00 -.32764145E+00 -.32764145E+00
+ .18633174E+02 -.32200634E+00 -.32200634E+00 -.32200634E+00
+ .18959254E+02 -.31646815E+00 -.31646815E+00 -.31646815E+00
+ .19291041E+02 -.31102521E+00 -.31102521E+00 -.31102521E+00
+ .19628634E+02 -.30567588E+00 -.30567588E+00 -.30567588E+00
+ .19972135E+02 -.30041855E+00 -.30041855E+00 -.30041855E+00
+ .20321648E+02 -.29525165E+00 -.29525165E+00 -.29525165E+00
+ .20677277E+02 -.29017361E+00 -.29017361E+00 -.29017361E+00
+ .21039129E+02 -.28518291E+00 -.28518291E+00 -.28518291E+00
+ .21407314E+02 -.28027804E+00 -.28027804E+00 -.28027804E+00
+ .21781942E+02 -.27545754E+00 -.27545754E+00 -.27545754E+00
+ .22163126E+02 -.27071994E+00 -.27071994E+00 -.27071994E+00
+ .22550980E+02 -.26606382E+00 -.26606382E+00 -.26606382E+00
+ .22945622E+02 -.26148778E+00 -.26148778E+00 -.26148778E+00
+ .23347171E+02 -.25699045E+00 -.25699045E+00 -.25699045E+00
+ .23755746E+02 -.25257047E+00 -.25257047E+00 -.25257047E+00
+ .24171472E+02 -.24822650E+00 -.24822650E+00 -.24822650E+00
+ .24594473E+02 -.24395725E+00 -.24395725E+00 -.24395725E+00
+ .25024876E+02 -.23976143E+00 -.23976143E+00 -.23976143E+00
+ .25462811E+02 -.23563777E+00 -.23563777E+00 -.23563777E+00
+ .25908410E+02 -.23158503E+00 -.23158503E+00 -.23158503E+00
+ .26361808E+02 -.22760199E+00 -.22760199E+00 -.22760199E+00
+ .26823139E+02 -.22368746E+00 -.22368746E+00 -.22368746E+00
+ .27292544E+02 -.21984026E+00 -.21984026E+00 -.21984026E+00
+ .27770164E+02 -.21605922E+00 -.21605922E+00 -.21605922E+00
+ .28256142E+02 -.21234322E+00 -.21234322E+00 -.21234322E+00
+ .28750624E+02 -.20869112E+00 -.20869112E+00 -.20869112E+00
+ .29253760E+02 -.20510184E+00 -.20510184E+00 -.20510184E+00
+ .29765701E+02 -.20157429E+00 -.20157429E+00 -.20157429E+00
+ .30286601E+02 -.19810741E+00 -.19810741E+00 -.19810741E+00
+ .30816616E+02 -.19470016E+00 -.19470016E+00 -.19470016E+00
+ .31355907E+02 -.19135151E+00 -.19135151E+00 -.19135151E+00
+ .31904635E+02 -.18806045E+00 -.18806045E+00 -.18806045E+00
+ .32462966E+02 -.18482599E+00 -.18482599E+00 -.18482599E+00
+ .33031068E+02 -.18164717E+00 -.18164717E+00 -.18164717E+00
+ .33609112E+02 -.17852301E+00 -.17852301E+00 -.17852301E+00
+ .34197271E+02 -.17545259E+00 -.17545259E+00 -.17545259E+00
+ .34795724E+02 -.17243498E+00 -.17243498E+00 -.17243498E+00
+ .35404649E+02 -.16946927E+00 -.16946927E+00 -.16946927E+00
+ .36024230E+02 -.16655456E+00 -.16655456E+00 -.16655456E+00
+ .36654654E+02 -.16368999E+00 -.16368999E+00 -.16368999E+00
+ .37296111E+02 -.16087468E+00 -.16087468E+00 -.16087468E+00
+ .37948793E+02 -.15810780E+00 -.15810780E+00 -.15810780E+00
+ .38612896E+02 -.15538850E+00 -.15538850E+00 -.15538850E+00
+ .39288622E+02 -.15271597E+00 -.15271597E+00 -.15271597E+00
+ .39976173E+02 -.15008940E+00 -.15008940E+00 -.15008940E+00
+ .40675756E+02 -.14750801E+00 -.14750801E+00 -.14750801E+00
+ .41387582E+02 -.14497102E+00 -.14497102E+00 -.14497102E+00
+ .42111864E+02 -.14247766E+00 -.14247766E+00 -.14247766E+00
+ .42848822E+02 -.14002719E+00 -.14002719E+00 -.14002719E+00
+ .43598676E+02 -.13761886E+00 -.13761886E+00 -.13761886E+00
+&END
+&WAVEFUNCTION
+ 631 CHANNELS=1
+ .78125000E-03 .25554409E-03 .10390134E-05 .46103462E-10
+ .79492188E-03 .26001611E-03 .10756971E-05 .48566498E-10
+ .80883301E-03 .26456640E-03 .11136759E-05 .51161120E-10
+ .82298759E-03 .26919631E-03 .11529957E-05 .53894357E-10
+ .83738987E-03 .27390724E-03 .11937036E-05 .56773616E-10
+ .85204419E-03 .27870062E-03 .12358488E-05 .59806696E-10
+ .86695496E-03 .28357788E-03 .12794820E-05 .63001815E-10
+ .88212668E-03 .28854049E-03 .13246556E-05 .66367631E-10
+ .89756389E-03 .29358995E-03 .13714242E-05 .69913262E-10
+ .91327126E-03 .29872778E-03 .14198440E-05 .73648315E-10
+ .92925351E-03 .30395552E-03 .14699734E-05 .77582910E-10
+ .94551544E-03 .30927474E-03 .15218726E-05 .81727707E-10
+ .96206196E-03 .31468705E-03 .15756041E-05 .86093935E-10
+ .97889805E-03 .32019408E-03 .16312327E-05 .90693425E-10
+ .99602877E-03 .32579748E-03 .16888253E-05 .95538638E-10
+ .10134593E-02 .33149894E-03 .17484513E-05 .10064270E-09
+ .10311948E-02 .33730017E-03 .18101824E-05 .10601945E-09
+ .10492407E-02 .34320293E-03 .18740930E-05 .11168344E-09
+ .10676024E-02 .34920898E-03 .19402601E-05 .11765002E-09
+ .10862855E-02 .35532015E-03 .20087632E-05 .12393536E-09
+ .11052955E-02 .36153825E-03 .20796849E-05 .13055650E-09
+ .11246381E-02 .36786518E-03 .21531106E-05 .13753136E-09
+ .11443193E-02 .37430283E-03 .22291287E-05 .14487884E-09
+ .11643449E-02 .38085313E-03 .23078306E-05 .15261886E-09
+ .11847209E-02 .38751807E-03 .23893112E-05 .16077237E-09
+ .12054535E-02 .39429965E-03 .24736685E-05 .16936149E-09
+ .12265490E-02 .40119990E-03 .25610042E-05 .17840946E-09
+ .12480136E-02 .40822091E-03 .26514233E-05 .18794082E-09
+ .12698538E-02 .41536478E-03 .27450347E-05 .19798138E-09
+ .12920763E-02 .42263368E-03 .28419512E-05 .20855834E-09
+ .13146876E-02 .43002978E-03 .29422894E-05 .21970037E-09
+ .13376946E-02 .43755531E-03 .30461701E-05 .23143765E-09
+ .13611043E-02 .44521255E-03 .31537185E-05 .24380199E-09
+ .13849236E-02 .45300378E-03 .32650639E-05 .25682687E-09
+ .14091598E-02 .46093136E-03 .33803405E-05 .27054760E-09
+ .14338201E-02 .46899768E-03 .34996870E-05 .28500134E-09
+ .14589119E-02 .47720516E-03 .36232471E-05 .30022726E-09
+ .14844429E-02 .48555627E-03 .37511696E-05 .31626660E-09
+ .15104206E-02 .49405352E-03 .38836086E-05 .33316283E-09
+ .15368530E-02 .50269948E-03 .40207234E-05 .35096173E-09
+ .15637479E-02 .51149674E-03 .41626791E-05 .36971151E-09
+ .15911135E-02 .52044796E-03 .43096467E-05 .38946298E-09
+ .16189580E-02 .52955583E-03 .44618031E-05 .41026964E-09
+ .16472898E-02 .53882308E-03 .46193315E-05 .43218789E-09
+ .16761173E-02 .54825251E-03 .47824215E-05 .45527709E-09
+ .17054494E-02 .55784696E-03 .49512696E-05 .47959980E-09
+ .17352948E-02 .56760932E-03 .51260789E-05 .50522193E-09
+ .17656624E-02 .57754252E-03 .53070600E-05 .53221289E-09
+ .17965615E-02 .58764955E-03 .54944307E-05 .56064582E-09
+ .18280013E-02 .59793346E-03 .56884167E-05 .59059774E-09
+ .18599914E-02 .60839733E-03 .58892514E-05 .62214980E-09
+ .18925412E-02 .61904433E-03 .60971768E-05 .65538750E-09
+ .19256607E-02 .62987765E-03 .63124430E-05 .69040089E-09
+ .19593597E-02 .64090056E-03 .65353094E-05 .72728482E-09
+ .19936485E-02 .65211637E-03 .67660441E-05 .76613924E-09
+ .20285374E-02 .66352846E-03 .70049251E-05 .80706940E-09
+ .20640368E-02 .67514027E-03 .72522398E-05 .85018621E-09
+ .21001574E-02 .68695529E-03 .75082860E-05 .89560648E-09
+ .21369102E-02 .69897707E-03 .77733721E-05 .94345327E-09
+ .21743061E-02 .71120924E-03 .80478172E-05 .99385622E-09
+ .22123565E-02 .72365547E-03 .83319515E-05 .10469519E-08
+ .22510727E-02 .73631952E-03 .86261174E-05 .11028841E-08
+ .22904665E-02 .74920519E-03 .89306688E-05 .11618045E-08
+ .23305496E-02 .76231637E-03 .92459725E-05 .12238725E-08
+ .23713343E-02 .77565700E-03 .95724080E-05 .12892565E-08
+ .24128326E-02 .78923109E-03 .99103683E-05 .13581336E-08
+ .24550572E-02 .80304274E-03 .10260260E-04 .14306903E-08
+ .24980207E-02 .81709609E-03 .10622505E-04 .15071232E-08
+ .25417360E-02 .83139539E-03 .10997540E-04 .15876395E-08
+ .25862164E-02 .84594492E-03 .11385814E-04 .16724572E-08
+ .26314752E-02 .86074908E-03 .11787797E-04 .17618062E-08
+ .26775260E-02 .87581233E-03 .12203971E-04 .18559285E-08
+ .27243827E-02 .89113918E-03 .12634839E-04 .19550792E-08
+ .27720594E-02 .90673426E-03 .13080918E-04 .20595269E-08
+ .28205705E-02 .92260227E-03 .13542746E-04 .21695545E-08
+ .28699305E-02 .93874797E-03 .14020879E-04 .22854602E-08
+ .29201542E-02 .95517624E-03 .14515892E-04 .24075580E-08
+ .29712569E-02 .97189200E-03 .15028381E-04 .25361787E-08
+ .30232539E-02 .98890031E-03 .15558963E-04 .26716707E-08
+ .30761609E-02 .10062063E-02 .16108277E-04 .28144011E-08
+ .31299937E-02 .10238151E-02 .16676984E-04 .29647567E-08
+ .31847686E-02 .10417321E-02 .17265769E-04 .31231448E-08
+ .32405020E-02 .10599626E-02 .17875341E-04 .32899945E-08
+ .32972108E-02 .10785122E-02 .18506433E-04 .34657578E-08
+ .33549120E-02 .10973865E-02 .19159805E-04 .36509110E-08
+ .34136230E-02 .11165910E-02 .19836244E-04 .38459557E-08
+ .34733614E-02 .11361316E-02 .20536564E-04 .40514203E-08
+ .35341452E-02 .11560142E-02 .21261608E-04 .42678615E-08
+ .35959927E-02 .11762448E-02 .22012248E-04 .44958656E-08
+ .36589226E-02 .11968294E-02 .22789389E-04 .47360504E-08
+ .37229538E-02 .12177743E-02 .23593966E-04 .49890666E-08
+ .37881054E-02 .12390858E-02 .24426947E-04 .52555997E-08
+ .38543973E-02 .12607702E-02 .25289335E-04 .55363717E-08
+ .39218492E-02 .12828341E-02 .26182168E-04 .58321435E-08
+ .39904816E-02 .13052841E-02 .27106521E-04 .61437162E-08
+ .40603150E-02 .13281271E-02 .28063507E-04 .64719340E-08
+ .41313705E-02 .13513698E-02 .29054277E-04 .68176861E-08
+ .42036695E-02 .13750193E-02 .30080024E-04 .71819092E-08
+ .42772337E-02 .13990827E-02 .31141982E-04 .75655902E-08
+ .43520853E-02 .14235672E-02 .32241430E-04 .79697683E-08
+ .44282468E-02 .14484802E-02 .33379692E-04 .83955388E-08
+ .45057411E-02 .14738293E-02 .34558137E-04 .88440549E-08
+ .45845916E-02 .14996220E-02 .35778183E-04 .93165319E-08
+ .46648220E-02 .15258661E-02 .37041300E-04 .98142498E-08
+ .47464564E-02 .15525695E-02 .38349007E-04 .10338557E-07
+ .48295193E-02 .15797402E-02 .39702878E-04 .10890874E-07
+ .49140359E-02 .16073865E-02 .41104543E-04 .11472697E-07
+ .50000316E-02 .16355167E-02 .42555689E-04 .12085602E-07
+ .50875321E-02 .16641392E-02 .44058062E-04 .12731249E-07
+ .51765639E-02 .16932626E-02 .45613470E-04 .13411389E-07
+ .52671538E-02 .17228957E-02 .47223786E-04 .14127863E-07
+ .53593290E-02 .17530475E-02 .48890947E-04 .14882612E-07
+ .54531172E-02 .17837270E-02 .50616959E-04 .15677681E-07
+ .55485468E-02 .18149434E-02 .52403900E-04 .16515225E-07
+ .56456464E-02 .18467062E-02 .54253920E-04 .17397511E-07
+ .57444452E-02 .18790249E-02 .56169246E-04 .18326931E-07
+ .58449730E-02 .19119092E-02 .58152182E-04 .19306001E-07
+ .59472600E-02 .19453691E-02 .60205114E-04 .20337374E-07
+ .60513370E-02 .19794147E-02 .62330513E-04 .21423845E-07
+ .61572354E-02 .20140561E-02 .64530936E-04 .22568357E-07
+ .62649871E-02 .20493038E-02 .66809031E-04 .23774009E-07
+ .63746243E-02 .20851684E-02 .69167539E-04 .25044069E-07
+ .64861803E-02 .21216608E-02 .71609298E-04 .26381976E-07
+ .65996884E-02 .21587919E-02 .74137246E-04 .27791355E-07
+ .67151830E-02 .21965729E-02 .76754424E-04 .29276024E-07
+ .68326987E-02 .22350152E-02 .79463980E-04 .30840005E-07
+ .69522709E-02 .22741304E-02 .82269176E-04 .32487534E-07
+ .70739356E-02 .23139302E-02 .85173385E-04 .34223074E-07
+ .71977295E-02 .23544266E-02 .88180102E-04 .36051328E-07
+ .73236898E-02 .23956319E-02 .91292944E-04 .37977246E-07
+ .74518543E-02 .24375583E-02 .94515654E-04 .40006046E-07
+ .75822618E-02 .24802187E-02 .97852111E-04 .42143225E-07
+ .77149514E-02 .25236258E-02 .10130633E-03 .44394570E-07
+ .78499630E-02 .25677927E-02 .10488246E-03 .46766181E-07
+ .79873374E-02 .26127327E-02 .10858480E-03 .49264481E-07
+ .81271158E-02 .26584593E-02 .11241781E-03 .51896237E-07
+ .82693403E-02 .27049864E-02 .11638611E-03 .54668579E-07
+ .84140538E-02 .27523279E-02 .12049445E-03 .57589015E-07
+ .85612997E-02 .28004980E-02 .12474778E-03 .60665457E-07
+ .87111224E-02 .28495115E-02 .12915122E-03 .63906236E-07
+ .88635671E-02 .28993829E-02 .13371007E-03 .67320132E-07
+ .90186795E-02 .29501273E-02 .13842979E-03 .70916390E-07
+ .91765064E-02 .30017600E-02 .14331608E-03 .74704751E-07
+ .93370953E-02 .30542966E-02 .14837480E-03 .78695477E-07
+ .95004944E-02 .31077528E-02 .15361203E-03 .82899375E-07
+ .96667531E-02 .31621449E-02 .15903408E-03 .87327833E-07
+ .98359213E-02 .32174892E-02 .16464745E-03 .91992843E-07
+ .10008050E-01 .32738024E-02 .17045891E-03 .96907041E-07
+ .10183191E-01 .33311015E-02 .17647542E-03 .10208374E-06
+ .10361397E-01 .33894036E-02 .18270424E-03 .10753695E-06
+ .10542721E-01 .34487265E-02 .18915283E-03 .11328145E-06
+ .10727219E-01 .35090880E-02 .19582896E-03 .11933279E-06
+ .10914945E-01 .35705063E-02 .20274064E-03 .12570736E-06
+ .11105957E-01 .36329999E-02 .20989618E-03 .13242243E-06
+ .11300311E-01 .36965876E-02 .21730418E-03 .13949617E-06
+ .11498066E-01 .37612887E-02 .22497353E-03 .14694775E-06
+ .11699282E-01 .38271227E-02 .23291346E-03 .15479735E-06
+ .11904020E-01 .38941093E-02 .24113350E-03 .16306622E-06
+ .12112340E-01 .39622688E-02 .24964352E-03 .17177675E-06
+ .12324306E-01 .40316218E-02 .25845375E-03 .18095253E-06
+ .12539981E-01 .41021892E-02 .26757477E-03 .19061840E-06
+ .12759431E-01 .41739923E-02 .27701752E-03 .20080055E-06
+ .12982721E-01 .42470527E-02 .28679336E-03 .21152653E-06
+ .13209919E-01 .43213925E-02 .29691401E-03 .22282539E-06
+ .13441092E-01 .43970342E-02 .30739163E-03 .23472772E-06
+ .13676311E-01 .44740004E-02 .31823879E-03 .24726576E-06
+ .13915647E-01 .45523146E-02 .32946852E-03 .26047343E-06
+ .14159171E-01 .46320003E-02 .34109428E-03 .27438651E-06
+ .14406956E-01 .47130815E-02 .35313005E-03 .28904266E-06
+ .14659078E-01 .47955828E-02 .36559024E-03 .30448155E-06
+ .14915612E-01 .48795291E-02 .37848982E-03 .32074498E-06
+ .15176635E-01 .49649457E-02 .39184426E-03 .33787698E-06
+ .15442226E-01 .50518585E-02 .40566958E-03 .35592393E-06
+ .15712465E-01 .51402935E-02 .41998235E-03 .37493467E-06
+ .15987433E-01 .52302777E-02 .43479974E-03 .39496066E-06
+ .16267213E-01 .53218382E-02 .45013951E-03 .41605611E-06
+ .16551890E-01 .54150026E-02 .46602006E-03 .43827811E-06
+ .16841548E-01 .55097991E-02 .48246042E-03 .46168682E-06
+ .17136275E-01 .56062563E-02 .49948028E-03 .48634557E-06
+ .17436160E-01 .57044035E-02 .51710004E-03 .51232112E-06
+ .17741292E-01 .58042703E-02 .53534082E-03 .53968375E-06
+ .18051765E-01 .59058868E-02 .55422445E-03 .56850750E-06
+ .18367671E-01 .60092839E-02 .57377355E-03 .59887038E-06
+ .18689105E-01 .61144927E-02 .59401153E-03 .63085455E-06
+ .19016164E-01 .62215452E-02 .61496262E-03 .66454654E-06
+ .19348947E-01 .63304738E-02 .63665188E-03 .70003751E-06
+ .19687554E-01 .64413113E-02 .65910527E-03 .73742348E-06
+ .20032086E-01 .65540914E-02 .68234966E-03 .77680559E-06
+ .20382648E-01 .66688482E-02 .70641284E-03 .81829038E-06
+ .20739344E-01 .67856165E-02 .73132359E-03 .86199006E-06
+ .21102282E-01 .69044315E-02 .75711169E-03 .90802285E-06
+ .21471572E-01 .70253295E-02 .78380795E-03 .95651324E-06
+ .21847325E-01 .71483469E-02 .81144428E-03 .10075924E-05
+ .22229653E-01 .72735210E-02 .84005369E-03 .10613984E-05
+ .22618672E-01 .74008899E-02 .86967034E-03 .11180768E-05
+ .23014499E-01 .75304921E-02 .90032960E-03 .11777809E-05
+ .23417252E-01 .76623670E-02 .93206804E-03 .12406721E-05
+ .23827054E-01 .77965546E-02 .96492355E-03 .13069203E-05
+ .24244028E-01 .79330956E-02 .99893530E-03 .13767048E-05
+ .24668298E-01 .80720315E-02 .10341439E-02 .14502142E-05
+ .25099994E-01 .82134045E-02 .10705912E-02 .15276471E-05
+ .25539243E-01 .83572575E-02 .11083207E-02 .16092129E-05
+ .25986180E-01 .85036343E-02 .11473773E-02 .16951319E-05
+ .26440938E-01 .86525793E-02 .11878076E-02 .17856364E-05
+ .26903655E-01 .88041379E-02 .12296596E-02 .18809709E-05
+ .27374469E-01 .89583562E-02 .12729831E-02 .19813930E-05
+ .27853522E-01 .91152810E-02 .13178297E-02 .20871740E-05
+ .28340959E-01 .92749603E-02 .13642527E-02 .21985996E-05
+ .28836925E-01 .94374426E-02 .14123071E-02 .23159708E-05
+ .29341572E-01 .96027774E-02 .14620502E-02 .24396046E-05
+ .29855049E-01 .97710153E-02 .15135408E-02 .25698348E-05
+ .30377512E-01 .99422073E-02 .15668401E-02 .27070130E-05
+ .30909119E-01 .10116406E-01 .16220113E-02 .28515097E-05
+ .31450028E-01 .10293664E-01 .16791197E-02 .30037148E-05
+ .32000404E-01 .10474036E-01 .17382331E-02 .31640391E-05
+ .32560411E-01 .10657577E-01 .17994213E-02 .33329154E-05
+ .33130218E-01 .10844344E-01 .18627568E-02 .35107993E-05
+ .33709997E-01 .11034392E-01 .19283143E-02 .36981706E-05
+ .34299922E-01 .11227781E-01 .19961715E-02 .38955350E-05
+ .34900171E-01 .11424569E-01 .20664083E-02 .41034246E-05
+ .35510924E-01 .11624818E-01 .21391076E-02 .43224000E-05
+ .36132365E-01 .11828587E-01 .22143552E-02 .45530517E-05
+ .36764681E-01 .12035941E-01 .22922397E-02 .47960014E-05
+ .37408063E-01 .12246942E-01 .23728527E-02 .50519039E-05
+ .38062704E-01 .12461656E-01 .24562891E-02 .53214489E-05
+ .38728801E-01 .12680148E-01 .25426469E-02 .56053625E-05
+ .39406555E-01 .12902486E-01 .26320275E-02 .59044096E-05
+ .40096170E-01 .13128738E-01 .27245358E-02 .62193954E-05
+ .40797853E-01 .13358974E-01 .28202802E-02 .65511681E-05
+ .41511816E-01 .13593265E-01 .29193728E-02 .69006208E-05
+ .42238272E-01 .13831683E-01 .30219295E-02 .72686941E-05
+ .42977442E-01 .14074302E-01 .31280700E-02 .76563782E-05
+ .43729547E-01 .14321197E-01 .32379184E-02 .80647162E-05
+ .44494814E-01 .14572444E-01 .33516027E-02 .84948061E-05
+ .45273474E-01 .14828122E-01 .34692552E-02 .89478043E-05
+ .46065760E-01 .15088310E-01 .35910128E-02 .94249285E-05
+ .46871910E-01 .15353087E-01 .37170170E-02 .99274607E-05
+ .47692169E-01 .15622538E-01 .38474140E-02 .10456751E-04
+ .48526782E-01 .15896745E-01 .39823547E-02 .11014221E-04
+ .49376000E-01 .16175795E-01 .41219954E-02 .11601367E-04
+ .50240080E-01 .16459773E-01 .42664975E-02 .12219765E-04
+ .51119282E-01 .16748770E-01 .44160275E-02 .12871074E-04
+ .52013869E-01 .17042874E-01 .45707577E-02 .13557041E-04
+ .52924112E-01 .17342179E-01 .47308661E-02 .14279505E-04
+ .53850284E-01 .17646778E-01 .48965364E-02 .15040402E-04
+ .54792664E-01 .17956768E-01 .50679587E-02 .15841771E-04
+ .55751535E-01 .18272244E-01 .52453289E-02 .16685758E-04
+ .56727187E-01 .18593307E-01 .54288496E-02 .17574622E-04
+ .57719913E-01 .18920058E-01 .56187300E-02 .18510741E-04
+ .58730012E-01 .19252601E-01 .58151861E-02 .19496619E-04
+ .59757787E-01 .19591040E-01 .60184408E-02 .20534891E-04
+ .60803548E-01 .19935483E-01 .62287244E-02 .21628332E-04
+ .61867610E-01 .20286039E-01 .64462744E-02 .22779862E-04
+ .62950293E-01 .20642820E-01 .66713363E-02 .23992555E-04
+ .64051923E-01 .21005939E-01 .69041630E-02 .25269646E-04
+ .65172832E-01 .21375514E-01 .71450159E-02 .26614539E-04
+ .66313357E-01 .21751661E-01 .73941644E-02 .28030820E-04
+ .67473840E-01 .22134501E-01 .76518867E-02 .29522260E-04
+ .68654633E-01 .22524158E-01 .79184694E-02 .31092829E-04
+ .69856089E-01 .22920758E-01 .81942085E-02 .32746705E-04
+ .71078570E-01 .23324427E-01 .84794089E-02 .34488283E-04
+ .72322445E-01 .23735298E-01 .87743852E-02 .36322191E-04
+ .73588088E-01 .24153502E-01 .90794616E-02 .38253297E-04
+ .74875880E-01 .24579177E-01 .93949724E-02 .40286722E-04
+ .76186208E-01 .25012461E-01 .97212618E-02 .42427858E-04
+ .77519466E-01 .25453496E-01 .10058685E-01 .44682374E-04
+ .78876057E-01 .25902426E-01 .10407607E-01 .47056238E-04
+ .80256388E-01 .26359400E-01 .10768405E-01 .49555726E-04
+ .81660875E-01 .26824567E-01 .11141467E-01 .52187441E-04
+ .83089940E-01 .27298082E-01 .11527191E-01 .54958329E-04
+ .84544014E-01 .27780101E-01 .11925989E-01 .57875698E-04
+ .86023534E-01 .28270787E-01 .12338283E-01 .60947234E-04
+ .87528946E-01 .28770301E-01 .12764510E-01 .64181019E-04
+ .89060702E-01 .29278812E-01 .13205115E-01 .67585555E-04
+ .90619265E-01 .29796492E-01 .13660560E-01 .71169784E-04
+ .92205102E-01 .30323514E-01 .14131317E-01 .74943108E-04
+ .93818691E-01 .30860057E-01 .14617873E-01 .78915413E-04
+ .95460518E-01 .31406304E-01 .15120727E-01 .83097096E-04
+ .97131077E-01 .31962442E-01 .15640393E-01 .87499087E-04
+ .98830871E-01 .32528661E-01 .16177397E-01 .92132876E-04
+ .10056041E+00 .33105157E-01 .16732280E-01 .97010543E-04
+ .10232022E+00 .33692128E-01 .17305598E-01 .10214479E-03
+ .10411082E+00 .34289779E-01 .17897919E-01 .10754895E-03
+ .10593276E+00 .34898318E-01 .18509826E-01 .11323707E-03
+ .10778659E+00 .35517960E-01 .19141919E-01 .11922388E-03
+ .10967285E+00 .36148921E-01 .19794810E-01 .12552487E-03
+ .11159213E+00 .36791427E-01 .20469125E-01 .13215632E-03
+ .11354499E+00 .37445705E-01 .21165508E-01 .13913533E-03
+ .11553202E+00 .38111990E-01 .21884615E-01 .14647987E-03
+ .11755384E+00 .38790521E-01 .22627117E-01 .15420880E-03
+ .11961103E+00 .39481545E-01 .23393701E-01 .16234194E-03
+ .12170422E+00 .40185312E-01 .24185067E-01 .17090011E-03
+ .12383404E+00 .40902080E-01 .25001931E-01 .17990517E-03
+ .12600114E+00 .41632113E-01 .25845023E-01 .18938006E-03
+ .12820616E+00 .42375682E-01 .26715084E-01 .19934887E-03
+ .13044977E+00 .43133064E-01 .27612873E-01 .20983691E-03
+ .13273264E+00 .43904543E-01 .28539161E-01 .22087070E-03
+ .13505546E+00 .44690410E-01 .29494730E-01 .23247810E-03
+ .13741893E+00 .45490964E-01 .30480377E-01 .24468834E-03
+ .13982376E+00 .46306512E-01 .31496910E-01 .25753209E-03
+ .14227068E+00 .47137368E-01 .32545147E-01 .27104150E-03
+ .14476041E+00 .47983855E-01 .33625919E-01 .28525030E-03
+ .14729372E+00 .48846303E-01 .34740064E-01 .30019388E-03
+ .14987136E+00 .49725052E-01 .35888432E-01 .31590931E-03
+ .15249411E+00 .50620452E-01 .37071878E-01 .33243547E-03
+ .15516276E+00 .51532861E-01 .38291265E-01 .34981311E-03
+ .15787811E+00 .52462646E-01 .39547461E-01 .36808491E-03
+ .16064097E+00 .53410185E-01 .40841338E-01 .38729561E-03
+ .16345219E+00 .54375866E-01 .42173770E-01 .40749206E-03
+ .16631260E+00 .55360089E-01 .43545633E-01 .42872333E-03
+ .16922307E+00 .56363264E-01 .44957801E-01 .45104077E-03
+ .17218448E+00 .57385810E-01 .46411145E-01 .47449816E-03
+ .17519771E+00 .58428163E-01 .47906531E-01 .49915177E-03
+ .17826367E+00 .59490767E-01 .49444817E-01 .52506047E-03
+ .18138328E+00 .60574080E-01 .51026850E-01 .55228584E-03
+ .18455749E+00 .61678572E-01 .52653467E-01 .58089226E-03
+ .18778724E+00 .62804729E-01 .54325486E-01 .61094705E-03
+ .19107352E+00 .63953049E-01 .56043707E-01 .64252057E-03
+ .19441731E+00 .65124044E-01 .57808908E-01 .67568630E-03
+ .19781961E+00 .66318240E-01 .59621840E-01 .71052102E-03
+ .20128145E+00 .67536182E-01 .61483224E-01 .74710487E-03
+ .20480388E+00 .68778426E-01 .63393748E-01 .78552153E-03
+ .20838795E+00 .70045547E-01 .65354058E-01 .82585827E-03
+ .21203473E+00 .71338136E-01 .67364760E-01 .86820615E-03
+ .21574534E+00 .72656800E-01 .69426410E-01 .91266009E-03
+ .21952089E+00 .74002164E-01 .71539510E-01 .95931904E-03
+ .22336250E+00 .75374872E-01 .73704502E-01 .10082861E-02
+ .22727135E+00 .76775583E-01 .75921765E-01 .10596685E-02
+ .23124859E+00 .78204979E-01 .78191605E-01 .11135781E-02
+ .23529544E+00 .79663758E-01 .80514249E-01 .11701310E-02
+ .23941311E+00 .81152639E-01 .82889841E-01 .12294482E-02
+ .24360284E+00 .82672358E-01 .85318433E-01 .12916553E-02
+ .24786589E+00 .84223674E-01 .87799978E-01 .13568829E-02
+ .25220355E+00 .85807363E-01 .90334321E-01 .14252665E-02
+ .25661711E+00 .87424225E-01 .92921196E-01 .14969468E-02
+ .26110791E+00 .89075076E-01 .95560211E-01 .15720697E-02
+ .26567730E+00 .90760755E-01 .98250846E-01 .16507864E-02
+ .27032665E+00 .92482119E-01 .10099244E+00 .17332537E-02
+ .27505737E+00 .94240046E-01 .10378419E+00 .18196338E-02
+ .27987087E+00 .96035431E-01 .10662512E+00 .19100946E-02
+ .28476861E+00 .97869188E-01 .10951412E+00 .20048097E-02
+ .28975206E+00 .99742251E-01 .11244988E+00 .21039584E-02
+ .29482272E+00 .10165557E+00 .11543092E+00 .22077260E-02
+ .29998212E+00 .10361010E+00 .11845557E+00 .23163035E-02
+ .30523181E+00 .10560682E+00 .12152196E+00 .24298880E-02
+ .31057336E+00 .10764672E+00 .12462801E+00 .25486826E-02
+ .31600840E+00 .10973080E+00 .12777145E+00 .26728963E-02
+ .32153854E+00 .11186006E+00 .13094976E+00 .28027441E-02
+ .32716547E+00 .11403550E+00 .13416023E+00 .29384471E-02
+ .33289086E+00 .11625812E+00 .13739988E+00 .30802322E-02
+ .33871645E+00 .11852893E+00 .14066554E+00 .32283324E-02
+ .34464399E+00 .12084890E+00 .14395377E+00 .33829866E-02
+ .35067526E+00 .12321902E+00 .14726091E+00 .35444396E-02
+ .35681208E+00 .12564021E+00 .15058307E+00 .37129419E-02
+ .36305629E+00 .12811341E+00 .15391610E+00 .38887498E-02
+ .36940978E+00 .13063948E+00 .15725563E+00 .40721253E-02
+ .37587445E+00 .13321925E+00 .16059708E+00 .42633359E-02
+ .38245225E+00 .13585348E+00 .16393562E+00 .44626546E-02
+ .38914516E+00 .13854286E+00 .16726622E+00 .46703599E-02
+ .39595520E+00 .14128800E+00 .17058368E+00 .48867358E-02
+ .40288442E+00 .14408940E+00 .17388257E+00 .51120713E-02
+ .40993490E+00 .14694744E+00 .17715735E+00 .53466609E-02
+ .41710876E+00 .14986237E+00 .18040228E+00 .55908043E-02
+ .42440816E+00 .15283427E+00 .18361154E+00 .58448064E-02
+ .43183530E+00 .15586306E+00 .18677920E+00 .61089778E-02
+ .43939242E+00 .15894844E+00 .18989927E+00 .63836341E-02
+ .44708179E+00 .16208987E+00 .19296572E+00 .66690970E-02
+ .45490572E+00 .16528659E+00 .19597254E+00 .69656938E-02
+ .46286657E+00 .16853750E+00 .19891375E+00 .72737583E-02
+ .47096674E+00 .17184122E+00 .20178346E+00 .75936309E-02
+ .47920865E+00 .17519598E+00 .20457588E+00 .79256594E-02
+ .48759481E+00 .17859965E+00 .20728544E+00 .82701995E-02
+ .49612771E+00 .18204963E+00 .20990674E+00 .86276160E-02
+ .50480995E+00 .18554289E+00 .21243466E+00 .89982833E-02
+ .51364412E+00 .18907587E+00 .21486441E+00 .93825870E-02
+ .52263290E+00 .19264445E+00 .21719154E+00 .97809253E-02
+ .53177897E+00 .19624393E+00 .21941202E+00 .10193710E-01
+ .54108510E+00 .19986899E+00 .22152225E+00 .10621370E-01
+ .55055409E+00 .20351363E+00 .22351916E+00 .11064352E-01
+ .56018879E+00 .20717116E+00 .22540018E+00 .11523121E-01
+ .56999209E+00 .21083415E+00 .22716332E+00 .11998168E-01
+ .57996695E+00 .21449442E+00 .22880720E+00 .12490008E-01
+ .59011638E+00 .21814303E+00 .23033104E+00 .12999185E-01
+ .60044341E+00 .22177027E+00 .23173470E+00 .13526276E-01
+ .61095117E+00 .22536562E+00 .23301867E+00 .14071894E-01
+ .62164282E+00 .22891787E+00 .23418407E+00 .14636691E-01
+ .63252157E+00 .23241504E+00 .23523265E+00 .15221362E-01
+ .64359070E+00 .23584451E+00 .23616674E+00 .15826652E-01
+ .65485353E+00 .23919306E+00 .23698923E+00 .16453356E-01
+ .66631347E+00 .24244693E+00 .23770351E+00 .17102324E-01
+ .67797395E+00 .24559202E+00 .23831338E+00 .17774469E-01
+ .68983850E+00 .24861392E+00 .23882302E+00 .18470766E-01
+ .70191067E+00 .25149815E+00 .23923689E+00 .19192256E-01
+ .71419411E+00 .25423030E+00 .23955958E+00 .19940055E-01
+ .72669251E+00 .25679624E+00 .23979576E+00 .20715347E-01
+ .73940963E+00 .25918234E+00 .23995000E+00 .21519395E-01
+ .75234929E+00 .26137572E+00 .24002668E+00 .22353537E-01
+ .76551541E+00 .26336444E+00 .24002984E+00 .23219189E-01
+ .77891193E+00 .26513779E+00 .23996305E+00 .24117841E-01
+ .79254288E+00 .26668651E+00 .23982926E+00 .25051061E-01
+ .80641239E+00 .26800297E+00 .23963071E+00 .26020485E-01
+ .82052460E+00 .26908138E+00 .23936877E+00 .27027821E-01
+ .83488378E+00 .26991789E+00 .23904394E+00 .28074841E-01
+ .84949425E+00 .27051073E+00 .23865570E+00 .29163377E-01
+ .86436040E+00 .27086014E+00 .23820261E+00 .30295318E-01
+ .87948671E+00 .27096835E+00 .23768224E+00 .31472606E-01
+ .89487772E+00 .27083940E+00 .23709137E+00 .32697236E-01
+ .91053808E+00 .27047885E+00 .23642612E+00 .33971261E-01
+ .92647250E+00 .26989351E+00 .23568217E+00 .35296793E-01
+ .94268577E+00 .26909092E+00 .23485512E+00 .36676018E-01
+ .95918277E+00 .26807890E+00 .23394081E+00 .38111217E-01
+ .97596847E+00 .26686503E+00 .23293571E+00 .39604788E-01
+ .99304792E+00 .26545618E+00 .23183729E+00 .41159276E-01
+ .10104263E+01 .26385822E+00 .23064428E+00 .42777409E-01
+ .10281087E+01 .26207592E+00 .22935672E+00 .44462116E-01
+ .10461006E+01 .26011333E+00 .22797559E+00 .46216538E-01
+ .10644074E+01 .25797453E+00 .22650232E+00 .48044008E-01
+ .10830345E+01 .25566395E+00 .22493835E+00 .49948043E-01
+ .11019876E+01 .25318627E+00 .22328529E+00 .51932358E-01
+ .11212724E+01 .25054646E+00 .22154487E+00 .54000884E-01
+ .11408947E+01 .24774974E+00 .21971892E+00 .56157774E-01
+ .11608603E+01 .24480159E+00 .21780938E+00 .58407421E-01
+ .11811754E+01 .24170771E+00 .21581830E+00 .60754472E-01
+ .12018459E+01 .23847402E+00 .21374781E+00 .63203845E-01
+ .12228782E+01 .23510667E+00 .21160014E+00 .65760743E-01
+ .12442786E+01 .23161195E+00 .20937761E+00 .68430677E-01
+ .12660535E+01 .22799636E+00 .20708263E+00 .71219483E-01
+ .12882094E+01 .22426653E+00 .20471766E+00 .74133344E-01
+ .13107531E+01 .22042924E+00 .20228527E+00 .77178813E-01
+ .13336913E+01 .21649137E+00 .19978805E+00 .80362835E-01
+ .13570309E+01 .21245993E+00 .19722870E+00 .83692775E-01
+ .13807789E+01 .20834197E+00 .19460995E+00 .87176447E-01
+ .14049425E+01 .20414465E+00 .19193457E+00 .90822141E-01
+ .14295290E+01 .19987515E+00 .18920541E+00 .94638658E-01
+ .14545458E+01 .19554068E+00 .18642532E+00 .98635341E-01
+ .14800003E+01 .19114848E+00 .18359722E+00 .10282212E+00
+ .15059003E+01 .18670577E+00 .18072405E+00 .10720954E+00
+ .15322536E+01 .18221974E+00 .17780875E+00 .11180881E+00
+ .15590680E+01 .17769757E+00 .17485432E+00 .11663186E+00
+ .15863517E+01 .17314636E+00 .17186375E+00 .12169138E+00
+ .16141129E+01 .16857314E+00 .16884004E+00 .12700086E+00
+ .16423599E+01 .16398486E+00 .16578621E+00 .13257468E+00
+ .16711012E+01 .15938835E+00 .16270528E+00 .13842816E+00
+ .17003454E+01 .15479035E+00 .15960024E+00 .14457760E+00
+ .17301015E+01 .15019744E+00 .15647411E+00 .15104041E+00
+ .17603783E+01 .14561607E+00 .15332986E+00 .15783514E+00
+ .17911849E+01 .14105253E+00 .15017047E+00 .16498158E+00
+ .18225306E+01 .13651292E+00 .14699890E+00 .17250086E+00
+ .18544249E+01 .13200317E+00 .14381805E+00 .18041556E+00
+ .18868773E+01 .12752901E+00 .14063083E+00 .18874979E+00
+ .19198977E+01 .12309597E+00 .13744011E+00 .19752933E+00
+ .19534959E+01 .11870935E+00 .13424869E+00 .20678177E+00
+ .19876821E+01 .11437424E+00 .13105936E+00 .21653661E+00
+ .20224665E+01 .11009547E+00 .12787486E+00 .22682544E+00
+ .20578597E+01 .10587767E+00 .12469788E+00 .23768210E+00
+ .20938722E+01 .10172518E+00 .12153105E+00 .24914287E+00
+ .21305150E+01 .97642098E-01 .11837696E+00 .26124664E+00
+ .21677990E+01 .93632275E-01 .11523811E+00 .27403513E+00
+ .22057355E+01 .89699284E-01 .11211697E+00 .28755313E+00
+ .22443358E+01 .85846436E-01 .10901594E+00 .30184877E+00
+ .22836117E+01 .82076769E-01 .10593733E+00 .31697373E+00
+ .23235749E+01 .78393054E-01 .10288341E+00 .33298362E+00
+ .23642375E+01 .74797785E-01 .99856358E-01 .34993824E+00
+ .24056116E+01 .71293186E-01 .96858274E-01 .36790200E+00
+ .24477098E+01 .67881211E-01 .93891191E-01 .38694426E+00
+ .24905448E+01 .64563544E-01 .90957055E-01 .40713979E+00
+ .25341293E+01 .61341603E-01 .88057737E-01 .42856923E+00
+ .25784766E+01 .58216544E-01 .85195019E-01 .45131963E+00
+ .26235999E+01 .55189264E-01 .82370603E-01 .00000000E+00
+ .26695129E+01 .52260409E-01 .79586106E-01 .00000000E+00
+ .27162294E+01 .49430376E-01 .76843057E-01 .00000000E+00
+ .27637634E+01 .46699326E-01 .74142901E-01 .00000000E+00
+ .28121293E+01 .44067185E-01 .71486996E-01 .00000000E+00
+ .28613415E+01 .41533657E-01 .68876617E-01 .00000000E+00
+ .29114150E+01 .39098228E-01 .66312949E-01 .00000000E+00
+ .29623648E+01 .36760180E-01 .63797095E-01 .00000000E+00
+ .30142061E+01 .34518601E-01 .61330076E-01 .00000000E+00
+ .30669547E+01 .32372389E-01 .58912829E-01 .00000000E+00
+ .31206265E+01 .30320269E-01 .56546209E-01 .00000000E+00
+ .31752374E+01 .28360803E-01 .54230996E-01 .00000000E+00
+ .32308041E+01 .26492397E-01 .51967889E-01 .00000000E+00
+ .32873431E+01 .24713319E-01 .49757517E-01 .00000000E+00
+ .33448716E+01 .23021703E-01 .47600433E-01 .00000000E+00
+ .34034069E+01 .21415566E-01 .45497120E-01 .00000000E+00
+ .34629665E+01 .19892819E-01 .43447997E-01 .00000000E+00
+ .35235684E+01 .18451274E-01 .41453412E-01 .00000000E+00
+ .35852309E+01 .17088660E-01 .39513653E-01 .00000000E+00
+ .36479724E+01 .15802632E-01 .37628944E-01 .00000000E+00
+ .37118119E+01 .14590781E-01 .35799449E-01 .00000000E+00
+ .37767686E+01 .13450646E-01 .34025273E-01 .00000000E+00
+ .38428621E+01 .12379721E-01 .32306458E-01 .00000000E+00
+ .39101122E+01 .11375467E-01 .30642991E-01 .00000000E+00
+ .39785391E+01 .10435322E-01 .29034792E-01 .00000000E+00
+ .40481636E+01 .95567058E-02 .27481725E-01 .00000000E+00
+ .41190064E+01 .87370320E-02 .25983583E-01 .00000000E+00
+ .41910891E+01 .79737139E-02 .24540095E-01 .00000000E+00
+ .42644331E+01 .72641724E-02 .23150919E-01 .00000000E+00
+ .43390607E+01 .66058437E-02 .21815638E-01 .00000000E+00
+ .44149943E+01 .59961859E-02 .20533758E-01 .00000000E+00
+ .44922567E+01 .54326860E-02 .19304705E-01 .00000000E+00
+ .45708712E+01 .49128666E-02 .18127822E-01 .00000000E+00
+ .46508614E+01 .44342922E-02 .17002371E-01 .00000000E+00
+ .47322515E+01 .39945757E-02 .15927528E-01 .00000000E+00
+ .48150659E+01 .35913847E-02 .14902386E-01 .00000000E+00
+ .48993295E+01 .32224471E-02 .13925963E-01 .00000000E+00
+ .49850678E+01 .28855567E-02 .12997199E-01 .00000000E+00
+ .50723065E+01 .25785787E-02 .12114967E-01 .00000000E+00
+ .51610718E+01 .22994538E-02 .11278077E-01 .00000000E+00
+ .52513906E+01 .20462026E-02 .10485286E-01 .00000000E+00
+ .53432899E+01 .18169286E-02 .97353034E-02 .00000000E+00
+ .54367975E+01 .16098209E-02 .90268027E-02 .00000000E+00
+ .55319415E+01 .14231557E-02 .83584253E-02 .00000000E+00
+ .56287504E+01 .12552976E-02 .77287903E-02 .00000000E+00
+ .57272536E+01 .11046999E-02 .71365007E-02 .00000000E+00
+ .58274805E+01 .96990387E-03 .65801491E-02 .00000000E+00
+ .59294614E+01 .84953840E-03 .60583234E-02 .00000000E+00
+ .60332270E+01 .74231813E-03 .55696118E-02 .00000000E+00
+ .61388085E+01 .64704178E-03 .51126069E-02 .00000000E+00
+ .62462376E+01 .56258991E-03 .46859099E-02 .00000000E+00
+ .63555468E+01 .48792240E-03 .42881345E-02 .00000000E+00
+ .64667688E+01 .42207563E-03 .39179101E-02 .00000000E+00
+ .65799373E+01 .36415955E-03 .35738854E-02 .00000000E+00
+ .66950862E+01 .31335447E-03 .32547316E-02 .00000000E+00
+ .68122502E+01 .26890778E-03 .29591448E-02 .00000000E+00
+ .69314646E+01 .23013057E-03 .26858493E-02 .00000000E+00
+ .70527652E+01 .19639416E-03 .24335995E-02 .00000000E+00
+ .71761886E+01 .16712661E-03 .22011829E-02 .00000000E+00
+ .73017719E+01 .14180924E-03 .19874213E-02 .00000000E+00
+ .74295529E+01 .11997315E-03 .17911731E-02 .00000000E+00
+ .75595701E+01 .10119583E-03 .16113348E-02 .00000000E+00
+ .76918626E+01 .85097769E-04 .14468423E-02 .00000000E+00
+ .78264702E+01 .71339207E-04 .12966720E-02 .00000000E+00
+ .79634334E+01 .59617001E-04 .11598415E-02 .00000000E+00
+ .81027935E+01 .49661576E-04 .10354104E-02 .00000000E+00
+ .82445924E+01 .41234027E-04 .92248093E-03 .00000000E+00
+ .83888727E+01 .34123362E-04 .82019760E-03 .00000000E+00
+ .85356780E+01 .28143894E-04 .72774770E-03 .00000000E+00
+ .86850524E+01 .23132784E-04 .64436085E-03 .00000000E+00
+ .88370408E+01 .18947748E-04 .56930871E-03 .00000000E+00
+ .89916890E+01 .15464909E-04 .50190439E-03 .00000000E+00
+ .91490436E+01 .12576821E-04 .44150171E-03 .00000000E+00
+ .93091518E+01 .10190637E-04 .38749442E-03 .00000000E+00
+ .94720620E+01 .82264295E-05 .33931510E-03 .00000000E+00
+ .96378231E+01 .66156600E-05 .29643415E-03 .00000000E+00
+ .98064850E+01 .52997859E-05 .25835848E-03 .00000000E+00
+ .99780984E+01 .42290016E-05 .22463027E-03 .00000000E+00
+ .10152715E+02 .33611055E-05 .19482556E-03 .00000000E+00
+ .10330388E+02 .26604851E-05 .16855276E-03 .00000000E+00
+ .10511169E+02 .20972145E-05 .14545130E-03 .00000000E+00
+ .10695115E+02 .16462482E-05 .12518970E-03 .00000000E+00
+ .10882279E+02 .12867274E-05 .10746527E-03 .00000000E+00
+ .11072719E+02 .10013204E-05 .91998686E-04 .00000000E+00
+ .11266492E+02 .77577439E-06 .78542586E-04 .00000000E+00
+ .11463656E+02 .59826674E-06 .66859971E-04 .00000000E+00
+ .11664270E+02 .45920219E-06 .56746827E-04 .00000000E+00
+ .11868394E+02 .35081408E-06 .48025200E-04 .00000000E+00
+ .12076091E+02 .26674906E-06 .40527663E-04 .00000000E+00
+ .12287423E+02 .20185817E-06 .34100988E-04 .00000000E+00
+ .12502453E+02 .15200947E-06 .28608333E-04 .00000000E+00
+ .12721246E+02 .11390393E-06 .23927934E-04 .00000000E+00
+ .12943867E+02 .84920529E-07 .19951762E-04 .00000000E+00
+ .13170385E+02 .62987454E-07 .16584273E-04 .00000000E+00
+ .13400867E+02 .46475441E-07 .13741234E-04 .00000000E+00
+ .13635382E+02 .34109940E-07 .11348629E-04 .00000000E+00
+ .13874001E+02 .24899220E-07 .93416237E-05 .00000000E+00
+ .14116796E+02 .00000000E+00 .76636273E-05 .00000000E+00
+ .14363840E+02 .00000000E+00 .62653927E-05 .00000000E+00
+ .14615207E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .14870973E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .15131215E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .15396012E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .15665442E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .15939587E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .16218530E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .16502354E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .16791145E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .17084990E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .17383978E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .17688197E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .17997741E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .18312701E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .18633174E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .18959254E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .19291041E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .19628634E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .19972135E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .20321648E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .20677277E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .21039129E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .21407314E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .21781942E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .22163126E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .22550980E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .22945622E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .23347171E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .23755746E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .24171472E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .24594473E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .25024876E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .25462811E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .25908410E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .26361808E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .26823139E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .27292544E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .27770164E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .28256142E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .28750624E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .29253760E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .29765701E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .30286601E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .30816616E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .31355907E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .31904635E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .32462966E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .33031068E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .33609112E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .34197271E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .34795724E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .35404649E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .36024230E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .36654654E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .37296111E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .37948793E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .38612896E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .39288622E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .39976173E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .40675756E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .41387582E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .42111864E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .42848822E+02 .00000000E+00 .00000000E+00 .00000000E+00
+ .43598676E+02 .00000000E+00 .00000000E+00 .00000000E+00
+&END
diff --git a/var/spack/repos/builtin/packages/cpp-httplib/package.py b/var/spack/repos/builtin/packages/cpp-httplib/package.py
index 2774a95bd1..eaeb220385 100644
--- a/var/spack/repos/builtin/packages/cpp-httplib/package.py
+++ b/var/spack/repos/builtin/packages/cpp-httplib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cppad/package.py b/var/spack/repos/builtin/packages/cppad/package.py
index 28b1e4faee..6f7ea89d4b 100644
--- a/var/spack/repos/builtin/packages/cppad/package.py
+++ b/var/spack/repos/builtin/packages/cppad/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cppcheck/package.py b/var/spack/repos/builtin/packages/cppcheck/package.py
index 7d00ca4969..ed001ccbfc 100644
--- a/var/spack/repos/builtin/packages/cppcheck/package.py
+++ b/var/spack/repos/builtin/packages/cppcheck/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,10 @@ class Cppcheck(MakefilePackage):
url = "https://downloads.sourceforge.net/project/cppcheck/cppcheck/1.78/cppcheck-1.78.tar.bz2"
version('2.1', sha256='ab26eeef039e5b58aac01efb8cb664f2cc16bf9879c61bc93cd00c95be89a5f7')
+ version('2.0', sha256='5f77d36a37ed9ef58ea8b499e4b1db20468114c9ca12b5fb39b95906cab25a3f')
+ version('1.90', sha256='43758d56613596c29440e55ea96a5a13e36f81ca377a8939648b5242faf61883')
+ version('1.89', sha256='5f02389cb24554f5a7ac3d29db8ac19c740f23c92e97eb7fec3881fe86c26f2c')
+ version('1.88', sha256='bb25441749977713476dc630dfe7617b3d9e95c46fec0edbec4ff8ff6fda38ca')
version('1.87', sha256='e3b0a46747822471df275417d4b74b56ecac88367433e7428f39288a32c581ca')
version('1.81', sha256='bb694f37ae0b5fed48c6cdc2fb5e528daf32cefc64e16b1a520c5411323cf27e')
version('1.78', sha256='e42696f7d6321b98cb479ad9728d051effe543b26aca8102428f60b9850786b1')
diff --git a/var/spack/repos/builtin/packages/cppgsl/package.py b/var/spack/repos/builtin/packages/cppgsl/package.py
index ce045a7c68..1695283f0a 100644
--- a/var/spack/repos/builtin/packages/cppgsl/package.py
+++ b/var/spack/repos/builtin/packages/cppgsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cpprestsdk/package.py b/var/spack/repos/builtin/packages/cpprestsdk/package.py
index 70425ed7db..40f4097879 100644
--- a/var/spack/repos/builtin/packages/cpprestsdk/package.py
+++ b/var/spack/repos/builtin/packages/cpprestsdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cppunit/package.py b/var/spack/repos/builtin/packages/cppunit/package.py
index ac6c22340f..13eac4bc3a 100644
--- a/var/spack/repos/builtin/packages/cppunit/package.py
+++ b/var/spack/repos/builtin/packages/cppunit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cppzmq/package.py b/var/spack/repos/builtin/packages/cppzmq/package.py
index 2d5191c0cd..ddde79f00d 100644
--- a/var/spack/repos/builtin/packages/cppzmq/package.py
+++ b/var/spack/repos/builtin/packages/cppzmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cpu-features/package.py b/var/spack/repos/builtin/packages/cpu-features/package.py
index 9ee4d483ee..0c69984248 100644
--- a/var/spack/repos/builtin/packages/cpu-features/package.py
+++ b/var/spack/repos/builtin/packages/cpu-features/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cpuinfo/package.py b/var/spack/repos/builtin/packages/cpuinfo/package.py
index ba341f822a..37f938ada0 100644
--- a/var/spack/repos/builtin/packages/cpuinfo/package.py
+++ b/var/spack/repos/builtin/packages/cpuinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cqrlib/cqr.patch b/var/spack/repos/builtin/packages/cqrlib/cqr.patch
new file mode 100644
index 0000000000..8473a54181
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cqrlib/cqr.patch
@@ -0,0 +1,20 @@
+--- a/cqrlib.h 2021-01-27 16:52:35.771183668 +0900
++++ b/cqrlib.h 2021-01-27 16:53:22.371528465 +0900
+@@ -573,7 +573,7 @@
+ {
+ CPPQR vquat( 0.0, v[0], v[1], v[2] );
+ const CPPQR wquat = (*this)*vquat;
+- const CPPQR qconj = *this.Conjugate( );
++ const CPPQR qconj = (*this).Conjugate();
+ vquat = wquat * qconj;
+ w[0] = vquat.x; w[1] = vquat.y; w[2] = vquat.z;
+ return;
+@@ -583,7 +583,7 @@
+ {
+ CPPQR vquat( 0.0, v[0], v[1], v[2] );
+ const CPPQR wquat = (*this)*vquat;
+- const CPPQR qconj = *this.Conjugate( );
++ const CPPQR qconj = (*this).Conjugate();
+ vquat = wquat * qconj;
+ return VectorType(vquat.x, vquat.y, vquat.z);
+ }
diff --git a/var/spack/repos/builtin/packages/cqrlib/package.py b/var/spack/repos/builtin/packages/cqrlib/package.py
new file mode 100644
index 0000000000..97d587f277
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cqrlib/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Cqrlib(MakefilePackage):
+ """CQRlib -- ANSI C API for Quaternion Rotations"""
+
+ homepage = "http://cqrlib.sourceforge.net/"
+ url = "https://downloads.sourceforge.net/project/cqrlib/cqrlib/CQRlib-1.1.2/CQRlib-1.1.2.tar.gz"
+
+ version('1.1.2', sha256='af3cf2402974579f3c6efc6a6174a5da52786db4bfee9d38d504d93bc42410fd')
+
+ depends_on('libtool', type='build')
+
+ patch('cqr.patch')
+
+ def edit(self, spec, prefix):
+ mf = FileFilter('Makefile')
+ mf.filter(r'^CC.+', "CC = {0}".format(spack_cc))
+ mf.filter(r'^CXX.+', "CXX = {0}".format(spack_cxx))
+ mf.filter(r'^INSTALLDIR .+', "INSTALLDIR = {0}".format(prefix))
+
+ def build(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin/packages/cquery/fix-gcc10.patch b/var/spack/repos/builtin/packages/cquery/fix-gcc10.patch
new file mode 100644
index 0000000000..3e62637f0f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cquery/fix-gcc10.patch
@@ -0,0 +1,10 @@
+diff -purw src/options.h src/options.h
+--- src/options.h 2020-05-13 13:26:39.743491698 +0200
++++ src/options.h 2020-05-13 13:28:47.277181534 +0200
+@@ -1,5 +1,6 @@
+ #pragma once
+
++#include <string>
+ #include <unordered_map>
+
+ std::unordered_map<std::string, std::string> ParseOptions(int argc,
diff --git a/var/spack/repos/builtin/packages/cquery/package.py b/var/spack/repos/builtin/packages/cquery/package.py
index 76e05d086f..f9338a2ab4 100644
--- a/var/spack/repos/builtin/packages/cquery/package.py
+++ b/var/spack/repos/builtin/packages/cquery/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,9 @@ class Cquery(CMakePackage):
depends_on('llvm')
+ # trivial patch (missing header) by mueller@kip.uni-heidelberg.de
+ patch('fix-gcc10.patch', level=0, when='%gcc@10.0:')
+
def cmake_args(self):
args = ['-DCMAKE_EXPORT_COMPILE_COMMANDS=YES',
'-DSYSTEM_CLANG=ON']
diff --git a/var/spack/repos/builtin/packages/cracklib/package.py b/var/spack/repos/builtin/packages/cracklib/package.py
index 43ae03906a..1cb6e5d6cf 100644
--- a/var/spack/repos/builtin/packages/cracklib/package.py
+++ b/var/spack/repos/builtin/packages/cracklib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cradl/package.py b/var/spack/repos/builtin/packages/cradl/package.py
index 2f42736d97..8db35b2ddc 100644
--- a/var/spack/repos/builtin/packages/cradl/package.py
+++ b/var/spack/repos/builtin/packages/cradl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cram/package.py b/var/spack/repos/builtin/packages/cram/package.py
index a13b67a2ec..2d81679eea 100644
--- a/var/spack/repos/builtin/packages/cram/package.py
+++ b/var/spack/repos/builtin/packages/cram/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cray-fftw/package.py b/var/spack/repos/builtin/packages/cray-fftw/package.py
new file mode 100644
index 0000000000..ffc713d3a0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cray-fftw/package.py
@@ -0,0 +1,75 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class CrayFftw(Package):
+ """FFTW is a C subroutine library for computing the discrete Fourier
+ transform (DFT) in one or more dimensions, of arbitrary input
+ size, and of both real and complex data (as well as of even/odd
+ data, i.e. the discrete cosine/sine transforms or DCT/DST).
+ This package is a wrapper for Cray's version of FFTW.
+
+ To install this package, list it as an external package in packages.yaml,
+ and make sure to load the correct cray-fftw module. In some cases you
+ need to load cray-mpich before cray-fftw.
+ """
+
+ homepage = "https://docs.nersc.gov/development/libraries/fftw/"
+ has_code = False # Skip attempts to fetch source that is not available
+
+ maintainers = ['haampie']
+
+ version('3.3.8.8')
+ version('3.3.8.7')
+
+ provides('fftw-api@3')
+
+ variant(
+ 'precision', values=any_combination_of(
+ 'float', 'double'
+ ).prohibit_empty_set().with_default('float,double'),
+ description='Build the selected floating-point precision libraries'
+ )
+
+ variant('openmp', default=False, description="Enable OpenMP support.")
+ variant('mpi', default=True, description='Activate MPI support')
+ depends_on('mpi', when='+mpi')
+
+ def install(self, spec, prefix):
+ raise InstallError(
+ self.spec.format('{name} is not installable, you need to specify '
+ 'it as an external package in packages.yaml'))
+
+ @property
+ def libs(self):
+
+ # Reduce repetitions of entries
+ query_parameters = list(llnl.util.lang.dedupe(
+ self.spec.last_query.extra_parameters
+ ))
+
+ # List of all the suffixes associated with float precisions
+ precisions = [
+ ('float', 'f'),
+ ('double', ''),
+ ]
+
+ # Retrieve the correct suffixes, or use double as a default
+ suffixes = [v for k, v in precisions if k in query_parameters] or ['']
+
+ # Construct the list of libraries that needs to be found
+ libraries = []
+ for sfx in suffixes:
+ if 'mpi' in query_parameters and '+mpi' in self.spec:
+ libraries.append('libfftw3' + sfx + '_mpi')
+
+ if 'openmp' in query_parameters and '+openmp' in self.spec:
+ libraries.append('libfftw3' + sfx + '_omp')
+
+ libraries.append('libfftw3' + sfx)
+
+ return find_libraries(libraries, root=self.prefix, recursive=True)
diff --git a/var/spack/repos/builtin/packages/cray-libsci/package.py b/var/spack/repos/builtin/packages/cray-libsci/package.py
index 126ed28a54..8fcdb2da61 100755
--- a/var/spack/repos/builtin/packages/cray-libsci/package.py
+++ b/var/spack/repos/builtin/packages/cray-libsci/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class CrayLibsci(Package):
has_code = False # Skip attempts to fetch source that is not available
version("20.06.1")
+ version("20.03.1")
version("19.06.1")
version("18.12.1")
version("18.11.1.2")
@@ -35,7 +36,8 @@ class CrayLibsci(Package):
'gcc': 'GNU',
'cce': 'CRAY',
'intel': 'INTEL',
- 'clang': 'ALLINEA'
+ 'clang': 'ALLINEA',
+ 'aocc': 'AOCC'
}
@property
@@ -55,16 +57,19 @@ class CrayLibsci(Package):
shared = True if "+shared" in self.spec else False
compiler = self.spec.compiler.name
+ lib = []
if "+openmp" in self.spec and "+mpi" in self.spec:
- lib = "libsci_{0}_mpi_mp"
+ lib = ["libsci_{0}_mpi_mp", "libsci_{0}_mp"]
elif "+openmp" in self.spec:
- lib = "libsci_{0}_mp"
+ lib = ["libsci_{0}_mp"]
elif "+mpi" in self.spec:
- lib = "libsci_{0}_mpi"
+ lib = ["libsci_{0}_mpi", "libsci_{0}"]
else:
- lib = "libsci_{0}"
+ lib = ["libsci_{0}"]
- libname = lib.format(self.canonical_names[compiler].lower())
+ libname = []
+ for lib_fmt in lib:
+ libname.append(lib_fmt.format(self.canonical_names[compiler].lower()))
return find_libraries(
libname,
diff --git a/var/spack/repos/builtin/packages/cray-mpich/package.py b/var/spack/repos/builtin/packages/cray-mpich/package.py
new file mode 100644
index 0000000000..4bfb5b1ca2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cray-mpich/package.py
@@ -0,0 +1,105 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+from spack.util.module_cmd import module
+from spack.util.module_cmd import get_path_args_from_module_line
+import os
+
+
+class CrayMpich(Package):
+ """Cray's MPICH is a high performance and widely portable implementation of
+ the Message Passing Interface (MPI) standard."""
+
+ homepage = "https://docs.nersc.gov/development/compilers/wrappers/"
+ has_code = False # Skip attempts to fetch source that is not available
+
+ maintainers = ['haampie']
+
+ version('8.1.0')
+ version('8.0.16')
+ version('8.0.14')
+ version('8.0.11')
+ version('8.0.9')
+ version('7.7.16')
+ version('7.7.15')
+ version('7.7.14')
+ version('7.7.13')
+
+ provides('mpi@3')
+
+ canonical_names = {
+ 'gcc': 'GNU',
+ 'cce': 'CRAY',
+ 'intel': 'INTEL',
+ 'clang': 'ALLINEA',
+ 'aocc': 'AOCC'
+ }
+
+ @property
+ def modname(self):
+ return "cray-mpich/{0}".format(self.version)
+
+ @property
+ def external_prefix(self):
+ mpich_module = module("show", self.modname).splitlines()
+
+ for line in mpich_module:
+ if "CRAY_MPICH_DIR" in line:
+ return get_path_args_from_module_line(line)[0]
+
+ def setup_run_environment(self, env):
+ env.set('MPICC', spack_cc)
+ env.set('MPICXX', spack_cxx)
+ env.set('MPIF77', spack_fc)
+ env.set('MPIF90', spack_fc)
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ self.setup_run_environment(env)
+
+ env.set('MPICH_CC', spack_cc)
+ env.set('MPICH_CXX', spack_cxx)
+ env.set('MPICH_F77', spack_f77)
+ env.set('MPICH_F90', spack_fc)
+ env.set('MPICH_FC', spack_fc)
+
+ def setup_dependent_package(self, module, dependent_spec):
+ spec = self.spec
+ spec.mpicc = spack_cc
+ spec.mpicxx = spack_cxx
+ spec.mpifc = spack_fc
+ spec.mpif77 = spack_f77
+
+ def install(self, spec, prefix):
+ raise InstallError(
+ self.spec.format('{name} is not installable, you need to specify '
+ 'it as an external package in packages.yaml'))
+
+ @property
+ def headers(self):
+ hdrs = find_headers('mpi', self.prefix.include, recursive=True)
+ hdrs.directories = os.path.dirname(hdrs[0])
+ return hdrs
+
+ @property
+ def libs(self):
+ query_parameters = self.spec.last_query.extra_parameters
+
+ libraries = ['libmpich']
+
+ if 'cxx' in query_parameters:
+ libraries.extend(['libmpicxx', 'libmpichcxx'])
+
+ if 'f77' in query_parameters:
+ libraries.extend(['libmpifort', 'libmpichfort',
+ 'libfmpi', 'libfmpich'])
+
+ if 'f90' in query_parameters:
+ libraries.extend(['libmpif90', 'libmpichf90'])
+
+ libs = find_libraries(libraries, root=self.prefix.lib, recursive=True)
+ libs += find_libraries(libraries, root=self.prefix.lib64, recursive=True)
+
+ return libs
diff --git a/var/spack/repos/builtin/packages/cromwell-womtool/package.py b/var/spack/repos/builtin/packages/cromwell-womtool/package.py
index f40ce13c4f..3b4229600f 100644
--- a/var/spack/repos/builtin/packages/cromwell-womtool/package.py
+++ b/var/spack/repos/builtin/packages/cromwell-womtool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cromwell/package.py b/var/spack/repos/builtin/packages/cromwell/package.py
index 21e1d9c779..adaf2ff60f 100644
--- a/var/spack/repos/builtin/packages/cromwell/package.py
+++ b/var/spack/repos/builtin/packages/cromwell/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cronie/package.py b/var/spack/repos/builtin/packages/cronie/package.py
index 998e366418..8c763ec102 100644
--- a/var/spack/repos/builtin/packages/cronie/package.py
+++ b/var/spack/repos/builtin/packages/cronie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cryptopp/package.py b/var/spack/repos/builtin/packages/cryptopp/package.py
index fa586eca4b..aecfcb2483 100644
--- a/var/spack/repos/builtin/packages/cryptopp/package.py
+++ b/var/spack/repos/builtin/packages/cryptopp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cryptsetup/package.py b/var/spack/repos/builtin/packages/cryptsetup/package.py
index 6b57ad6877..73131d595b 100644
--- a/var/spack/repos/builtin/packages/cryptsetup/package.py
+++ b/var/spack/repos/builtin/packages/cryptsetup/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,16 +16,18 @@ class Cryptsetup(AutotoolsPackage):
# If you're adding newer versions, check whether the patch below
# still needs to be applied.
+ version('2.3.5', sha256='ced9946f444d132536daf92fc8aca4277638a3c2d96e20540b2bae4d36fd70c1')
+ version('2.3.4', sha256='9d16eebb96b53b514778e813019b8dd15fea9fec5aafde9fae5febf59df83773')
version('2.3.1', sha256='92aba4d559a2cf7043faed92e0f22c5addea36bd63f8c039ba5a8f3a159fe7d2')
version('2.2.3', sha256='2af0ec9551ab9c870074cae9d3f68d82cab004f4095fa89db0e4413713424a46')
version('2.2.2', sha256='2af0ec9551ab9c870074cae9d3f68d82cab004f4095fa89db0e4413713424a46')
version('2.2.1', sha256='94e79a31ed38bdb0acd9af7ccca1605a2ac62ca850ed640202876b1ee11c1c61')
- depends_on('libuuid', type=('build', 'link'))
+ depends_on('uuid', type=('build', 'link'))
depends_on('lvm2', type=('build', 'link'))
depends_on('popt', type=('build', 'link'))
depends_on('json-c', type=('build', 'link'))
- depends_on('util-linux~libuuid', type=('build', 'link'))
+ depends_on('util-linux', type=('build', 'link'))
depends_on('gettext', type=('build', 'link'))
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/csa-c/package.py b/var/spack/repos/builtin/packages/csa-c/package.py
index 9bc09f49fd..d08c1e91ff 100644
--- a/var/spack/repos/builtin/packages/csa-c/package.py
+++ b/var/spack/repos/builtin/packages/csa-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cscope/package.py b/var/spack/repos/builtin/packages/cscope/package.py
index a829b1e1e5..407c4fbf8b 100644
--- a/var/spack/repos/builtin/packages/cscope/package.py
+++ b/var/spack/repos/builtin/packages/cscope/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/csdp/package.py b/var/spack/repos/builtin/packages/csdp/package.py
index ef35d6551c..bd9d7b097e 100644
--- a/var/spack/repos/builtin/packages/csdp/package.py
+++ b/var/spack/repos/builtin/packages/csdp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ctffind/package.py b/var/spack/repos/builtin/packages/ctffind/package.py
index b20ce75ad7..cc6cb45de1 100644
--- a/var/spack/repos/builtin/packages/ctffind/package.py
+++ b/var/spack/repos/builtin/packages/ctffind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,10 +9,10 @@ from spack import *
class Ctffind(AutotoolsPackage):
"""Fast and accurate defocus estimation from electron micrographs."""
- homepage = "http://grigoriefflab.janelia.org/ctffind4"
- url = "http://grigoriefflab.janelia.org/sites/default/files/ctffind-4.1.8.tar.gz"
+ homepage = "https://grigoriefflab.umassmed.edu/ctf_estimation_ctffind_ctftilt"
+ url = "https://grigoriefflab.umassmed.edu/system/tdf?path=ctffind-4.1.8.tar.gz&file=1&type=node&id=26"
- version('4.1.8', sha256='bec43c0b8d32878c740d6284ef6d9d22718c80dc62270be18d1d44e8b84b2729')
+ version('4.1.8', sha256='bec43c0b8d32878c740d6284ef6d9d22718c80dc62270be18d1d44e8b84b2729', extension='tar.gz')
depends_on('wxwidgets')
depends_on('fftw@3:')
diff --git a/var/spack/repos/builtin/packages/ctpl/package.py b/var/spack/repos/builtin/packages/ctpl/package.py
index 1fc00729dd..30feef5318 100644
--- a/var/spack/repos/builtin/packages/ctpl/package.py
+++ b/var/spack/repos/builtin/packages/ctpl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ class Ctpl(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
+ depends_on('gettext', type='build')
depends_on('gtk-doc')
depends_on('glib@2.10:')
diff --git a/var/spack/repos/builtin/packages/ctre/package.py b/var/spack/repos/builtin/packages/ctre/package.py
index 2dc188b775..d87ec5d745 100644
--- a/var/spack/repos/builtin/packages/ctre/package.py
+++ b/var/spack/repos/builtin/packages/ctre/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cub/package.py b/var/spack/repos/builtin/packages/cub/package.py
index dba0d2e980..1b7fe570fb 100644
--- a/var/spack/repos/builtin/packages/cub/package.py
+++ b/var/spack/repos/builtin/packages/cub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,14 @@ class Cub(Package):
and other utilities for CUDA kernel programming."""
homepage = "https://nvlabs.github.com/cub"
- url = "https://github.com/NVlabs/cub/archive/1.7.1.zip"
- git = "https://github.com/NVlabs/cub.git"
+ url = "https://github.com/NVIDIA/cub/archive/1.12.0.zip"
+ git = "https://github.com/NVIDIA/cub.git"
+ version('1.12.0', sha256='92f0f39235db787f4850d5c4ffdaa7d5367a2f153bdd3b4a1161a6a2fefb7bfc')
+ version('1.12.0-rc0', sha256='c9470cb5a23849e3143a3b2f07fe4d48ed3c8e0ec862b4d4c02ec15afb4fc331')
+ version('1.11.0', sha256='4c5d6a42350e010273be33f72af8c9b6253cfe55e2a0584fe7bf9f84dc338d00')
+ version('1.10.0', sha256='d6be1acfa65be4e25be40f576687fed19c00896390cbc6205888c69ac2f150de')
+ version('1.9.10-1', sha256='6f0e6a6b2996000cefbe9bff1716689fd71c2cd4004d23b238a9cb90c4421bdc')
version('1.9.10', sha256='063fea7c9bf87677a5fc5889e3fcd51582b77a2b3af9fa599d846a9c98ce9407')
version('1.9.9', sha256='162514b3cc264ac89d91898b58450190b8192e2af1142cf8ccac2d59aa160dda')
version('1.9.8-1', sha256='f61d05367bd8fe8bfb0eafa20f7b14d27deb8b25a398c53d8a97a01a2399431b')
diff --git a/var/spack/repos/builtin/packages/cube-blade/package.py b/var/spack/repos/builtin/packages/cube-blade/package.py
new file mode 100644
index 0000000000..79a9e3e217
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cube-blade/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class CubeBlade(AutotoolsPackage):
+ """Simple OTF2 trace explorer"""
+
+ homepage = "https://www.scalasca.org/software/cube-4.x/download.html"
+ url = "http://apps.fz-juelich.de/scalasca/releases/cube/4.5/dist/blade-0.2.tar.gz"
+
+ version('0.2', sha256='ab3c5bbca79e2ec599166e75b3c96a8f6a18b3064414fc39e56f78aaae9c165c')
+
+ depends_on('cube@4.5:')
+ depends_on('cubelib@4.5:')
+ depends_on('qt@5.9.1:')
+ depends_on('otf2@2.1.1:')
+
+ # Without this patch, the Blade plugin crashes Cube on startup
+ patch('return-bool.patch')
diff --git a/var/spack/repos/builtin/packages/cube-blade/return-bool.patch b/var/spack/repos/builtin/packages/cube-blade/return-bool.patch
new file mode 100644
index 0000000000..cdeeb1e328
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cube-blade/return-bool.patch
@@ -0,0 +1,9 @@
+--- a/src/gui/BladePlugin.cpp 2021-03-19 13:32:33.609988108 +0100
++++ b/src/gui/BladePlugin.cpp 2021-03-19 13:32:49.153702599 +0100
+@@ -348,5 +348,6 @@
+ BladePlugin::checkForSalsaViewer()
+ {
+ // service->setGlobalValue( BladePlugin::BLADE_PLUGIN_NOTIFIER , QVariant( ++val ), false ); // true = notify myself
++ return true;
+ }
+
diff --git a/var/spack/repos/builtin/packages/cube/package.py b/var/spack/repos/builtin/packages/cube/package.py
index d2eeb203c0..e0f639cc9d 100644
--- a/var/spack/repos/builtin/packages/cube/package.py
+++ b/var/spack/repos/builtin/packages/cube/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,8 @@ class Cube(AutotoolsPackage):
homepage = "http://www.scalasca.org/software/cube-4.x/download.html"
url = "http://apps.fz-juelich.de/scalasca/releases/cube/4.4/dist/cubegui-4.4.2.tar.gz"
- version('4.5', sha256='ffe84108adce0adf06dca80820d941b1a60a5580a8bacc8f7c1b6989c8ab1bfa')
+ version('4.6', sha256='1871c6736121d94a22314cb5daa8f3cbb978b58bfe54f677c4c9c9693757d0c5')
+ version('4.5', sha256='ffe84108adce0adf06dca80820d941b1a60a5580a8bacc8f7c1b6989c8ab1bfa')
version('4.4.4', sha256='9b7b96d5a64b558a9017cc3599bba93a42095534e018e3de9b1f80ab6d04cc34')
version('4.4.3', sha256='bf4b0f2ff68507ff82ba24eb4895aed961710dae16d783c222a12f152440cf36')
version('4.4.2', sha256='29b6479616a524f8325f5031a883963bf965fb92569de33271a020f08650ec7b')
@@ -31,7 +32,13 @@ class Cube(AutotoolsPackage):
patch('qt-version.patch', when='@4.3.0:4.3.999 +gui')
- depends_on('cubelib', when='@4.4:')
+ depends_on('cubelib@4.6', when='@4.6')
+ depends_on('cubelib@4.5', when='@4.5')
+ # There is a backwards dependency in series 4
+ depends_on('cubelib@4.4:4.4.4', when='@4.4.4')
+ depends_on('cubelib@4.4:4.4.3', when='@4.4.3')
+ depends_on('cubelib@4.4:4.4.2', when='@4.4.2')
+ depends_on('cubelib@4.4', when='@4.4')
depends_on('pkgconfig', type='build')
depends_on('dbus')
diff --git a/var/spack/repos/builtin/packages/cubelib/package.py b/var/spack/repos/builtin/packages/cubelib/package.py
index 7d6181c7c1..84b45529c1 100644
--- a/var/spack/repos/builtin/packages/cubelib/package.py
+++ b/var/spack/repos/builtin/packages/cubelib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Cubelib(AutotoolsPackage):
homepage = "http://www.scalasca.org/software/cube-4.x/download.html"
url = "http://apps.fz-juelich.de/scalasca/releases/cube/4.4/dist/cubelib-4.4.tar.gz"
+ version('4.6', sha256='36eaffa7688db8b9304c9e48ca5dc4edc2cb66538aaf48657b9b5ccd7979385b')
version('4.5', sha256='98f66837b4a834b1aacbcd4480a242d7a8c4a1b8dd44e02e836b8c7a4f0ffd98')
version('4.4.4', sha256='adb8216ee3b7701383884417374e7ff946edb30e56640307c65465187dca7512')
version('4.4.3', sha256='bcd4fa81a5ba37194e590a5d7c3e6c44b448f5e156a175837b77c21206847a8d')
diff --git a/var/spack/repos/builtin/packages/cubew/package.py b/var/spack/repos/builtin/packages/cubew/package.py
index c21310601b..412af61d0d 100644
--- a/var/spack/repos/builtin/packages/cubew/package.py
+++ b/var/spack/repos/builtin/packages/cubew/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Cubew(AutotoolsPackage):
homepage = "http://www.scalasca.org/software/cube-4.x/download.html"
url = "http://apps.fz-juelich.de/scalasca/releases/cube/4.4/dist/cubew-4.4.tar.gz"
+ version('4.6', sha256='99fe58ce7ab13061ebfbc360aedaecc28099a30636c5269a42c0cbaf57149aa8')
version('4.5', sha256='16bd8fd864197a74ca65f7325761ad75d73d555072326e95e1338cff39f28a5c')
version('4.4.3', sha256='93fff6cc1e8b0780f0171ef5302a2e1a257f99b6383fbfc1b9b82f925ceff501')
version('4.4.2', sha256='31a71e9a05e6523de2b86b4026821bbb75fb411eb5b18ae38b27c1f44158014a')
diff --git a/var/spack/repos/builtin/packages/cubist/package.py b/var/spack/repos/builtin/packages/cubist/package.py
index 70e851520d..ee2022ebd5 100644
--- a/var/spack/repos/builtin/packages/cubist/package.py
+++ b/var/spack/repos/builtin/packages/cubist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cuda-memtest/package.py b/var/spack/repos/builtin/packages/cuda-memtest/package.py
index 5cd6940659..d9c8f21e10 100644
--- a/var/spack/repos/builtin/packages/cuda-memtest/package.py
+++ b/var/spack/repos/builtin/packages/cuda-memtest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cuda/package.py b/var/spack/repos/builtin/packages/cuda/package.py
index ec9a11b160..001b3b6864 100644
--- a/var/spack/repos/builtin/packages/cuda/package.py
+++ b/var/spack/repos/builtin/packages/cuda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,17 +23,37 @@ import llnl.util.tty as tty
# format returned by platform.system() and 'arch' by platform.machine()
_versions = {
+ '11.3.0': {
+ 'Linux-aarch64': ('f7b284cf055fcf18be9a9aa216e3c7968d3e011446eb0c7200a3353c223ce718', 'https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux_sbsa.run'),
+ 'Linux-x86_64': ('262da7f77db177b153a6b70b5812210f3f72f00eb608ab9cf2a4582328c4bf5c', 'https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux.run'),
+ 'Linux-ppc64le': ('c0010107933b575a87e27b1293e5dc32b74201486f4ae2f4c8695ea727d22857', 'https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux_ppc64le.run')},
+ '11.2.2': {
+ 'Linux-aarch64': ('2f915ad631331eebdafaabd971723a60290ae8bb090d771075b9e6a0b28cbae6', 'https://developer.download.nvidia.com/compute/cuda/11.2.2/local_installers/cuda_11.2.2_460.32.03_linux_sbsa.run'),
+ 'Linux-x86_64': ('0a2e477224af7f6003b49edfd2bfee07667a8148fe3627cfd2765f6ad72fa19d', 'https://developer.download.nvidia.com/compute/cuda/11.2.2/local_installers/cuda_11.2.2_460.32.03_linux.run'),
+ 'Linux-ppc64le': ('2304ec235fe5d1f8bf75f00dc2c2d11473759dc23428dbbd5fb5040bc8c757e3', 'https://developer.download.nvidia.com/compute/cuda/11.2.2/local_installers/cuda_11.2.2_460.32.03_linux_ppc64le.run')},
+ '11.2.1': {
+ 'Linux-aarch64': ('4b322fa6477d1a2cd2f2f526fa520c0f90bef2c264ef8435cb016bebb5456c5e', 'https://developer.download.nvidia.com/compute/cuda/11.2.1/local_installers/cuda_11.2.1_460.32.03_linux_sbsa.run'),
+ 'Linux-x86_64': ('1da98cb897cc5f58a7445a4a66ca4f6926867706cb3af58a669cdcd8dc3d17c8', 'https://developer.download.nvidia.com/compute/cuda/11.2.1/local_installers/cuda_11.2.1_460.32.03_linux.run'),
+ 'Linux-ppc64le': ('b3e8b6cd76872deb3acd050d32e197bc1c655e142b169070f0f9753680461a3f', 'https://developer.download.nvidia.com/compute/cuda/11.2.1/local_installers/cuda_11.2.1_460.32.03_linux_ppc64le.run')},
+ '11.2.0': {
+ 'Linux-aarch64': ('c11dc274660e9b47b0f25ca66861a7406246a7191f1b04d0710515fcac0fa6cd', 'https://developer.download.nvidia.com/compute/cuda/11.2.0/local_installers/cuda_11.2.0_460.27.04_linux_sbsa.run'),
+ 'Linux-x86_64': ('9c50283241ac325d3085289ed9b9c170531369de41165ce271352d4a898cbdce', 'https://developer.download.nvidia.com/compute/cuda/11.2.0/local_installers/cuda_11.2.0_460.27.04_linux.run'),
+ 'Linux-ppc64le': ('adc3267df5dbfdaf51cb4c9b227ba6bfd979a39d9b4136bba0eba6b1dd2a2731', 'https://developer.download.nvidia.com/compute/cuda/11.2.0/local_installers/cuda_11.2.0_460.27.04_linux_ppc64le.run')},
+ '11.1.1': {
+ 'Linux-aarch64': ('9ab1dbafba205c06bea8c88e38cdadb3038af19cb56e7b3ba734d3d7a84b8f02', 'https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux_sbsa.run'),
+ 'Linux-x86_64': ('3eae6727086024925ebbcef3e9a45ad379d8490768fd00f9c2d8b6fd9cd8dd8f', 'https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run'),
+ 'Linux-ppc64le': ('023e571fe26ee829c98138dfc305a92279854aac7d184d255fd58c06c6af3c17', 'https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux_ppc64le.run')},
'11.1.0': {
'Linux-aarch64': ('878cbd36c5897468ef28f02da50b2f546af0434a8a89d1c724a4d2013d6aa993', 'https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux_sbsa.run'),
'Linux-x86_64': ('858cbab091fde94556a249b9580fadff55a46eafbcb4d4a741d2dcd358ab94a5', 'https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.run'),
'Linux-ppc64le': ('a561e6f7f659bc4100e4713523b0b8aad6b36aa77fac847f6423e7780c750064', 'https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux_ppc64le.run')},
'11.0.2': {
- 'Linux-aarch64': ('23851e30f7c47a1baad92891abde0adbc783de5962c7480b9725198ceacda4a0', 'http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux_sbsa.run'),
- 'Linux-x86_64': ('48247ada0e3f106051029ae8f70fbd0c238040f58b0880e55026374a959a69c1', 'http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run'),
- 'Linux-ppc64le': ('db06d0f3fbf6f7aa1f106fc921ad1c86162210a26e8cb65b171c5240a3bf75da', 'http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux_ppc64le.run')},
+ 'Linux-aarch64': ('23851e30f7c47a1baad92891abde0adbc783de5962c7480b9725198ceacda4a0', 'https://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux_sbsa.run'),
+ 'Linux-x86_64': ('48247ada0e3f106051029ae8f70fbd0c238040f58b0880e55026374a959a69c1', 'https://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run'),
+ 'Linux-ppc64le': ('db06d0f3fbf6f7aa1f106fc921ad1c86162210a26e8cb65b171c5240a3bf75da', 'https://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux_ppc64le.run')},
'10.2.89': {
- 'Linux-x86_64': ('560d07fdcf4a46717f2242948cd4f92c5f9b6fc7eae10dd996614da913d5ca11', 'http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run'),
- 'Linux-ppc64le': ('5227774fcb8b10bd2d8714f0a716a75d7a2df240a9f2a49beb76710b1c0fc619', 'http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux_ppc64le.run')},
+ 'Linux-x86_64': ('560d07fdcf4a46717f2242948cd4f92c5f9b6fc7eae10dd996614da913d5ca11', 'https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run'),
+ 'Linux-ppc64le': ('5227774fcb8b10bd2d8714f0a716a75d7a2df240a9f2a49beb76710b1c0fc619', 'https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux_ppc64le.run')},
'10.1.243': {
'Linux-x86_64': ('e7c22dc21278eb1b82f34a60ad7640b41ad3943d929bebda3008b72536855d31', 'https://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run'),
'Linux-ppc64le': ('b198002eef010bab9e745ae98e47567c955d00cf34cc8f8d2f0a6feb810523bf', 'https://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux_ppc64le.run')},
@@ -87,7 +107,15 @@ class Cuda(Package):
# Mojave support -- only macOS High Sierra 10.13 is supported.
conflicts('arch=darwin-mojave-x86_64')
+ variant('dev', default=False, description='Enable development dependencies, i.e to use cuda-gdb')
+
depends_on('libxml2', when='@10.1.243:')
+ # cuda-gdb needs libncurses.so.5
+ # see https://docs.nvidia.com/cuda/cuda-gdb/index.html#common-issues-oss
+ depends_on('ncurses abi=5', type='run', when='+dev')
+
+ provides('opencl@:1.2', when='@7:')
+ provides('opencl@:1.1', when='@:6')
@classmethod
def determine_version(cls, exe):
@@ -126,6 +154,15 @@ class Cuda(Package):
# https://gist.github.com/ax3l/9489132
# for details.
+ # CUDA 10.1 on ppc64le fails to copy some files, the workaround is adapted from
+ # https://forums.developer.nvidia.com/t/cuda-10-1-243-10-1-update-2-ppc64le-run-file-installation-issue/82433
+ # See also #21170
+ if spec.satisfies('@10.1.243') and platform.machine() == 'ppc64le':
+ includedir = "targets/ppc64le-linux/include"
+ os.makedirs(os.path.join(prefix, includedir))
+ os.makedirs(os.path.join(prefix, "src"))
+ os.symlink(includedir, os.path.join(prefix, "include"))
+
# CUDA 10.1+ has different cmdline options for the installer
arguments = [
runfile, # the install script
diff --git a/var/spack/repos/builtin/packages/cudnn/package.py b/var/spack/repos/builtin/packages/cudnn/package.py
index 7b9e310524..1ddd1734c8 100644
--- a/var/spack/repos/builtin/packages/cudnn/package.py
+++ b/var/spack/repos/builtin/packages/cudnn/package.py
@@ -1,233 +1,214 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import os
from spack import *
-
-
-class Cudnn(Package):
- """NVIDIA cuDNN is a GPU-accelerated library of primitives for deep
- neural networks"""
-
- homepage = "https://developer.nvidia.com/cudnn"
-
- # Latest versions available at:
- # https://developer.nvidia.com/rdp/cudnn-download
- # Archived versions available at:
- # https://developer.nvidia.com/rdp/cudnn-archive
- # Note that download links don't work from command line,
- # need to use modified URLs like in url_for_version.
-
- maintainers = ['adamjstewart']
-
- # cudNN 8.0.4
- version('8.0.4.30-11.1-linux-x64',
- sha256='8f4c662343afce5998ce963500fe3bb167e9a508c1a1a949d821a4b80fa9beab')
- version('8.0.4.30-11.1-linux-ppc64le',
- sha256='b4ddb51610cbae806017616698635a9914c3e1eb14259f3a39ee5c84e7106712')
- version('8.0.4.30-11.0-linux-x64',
- sha256='38a81a28952e314e21577432b0bab68357ef9de7f6c8858f721f78df9ee60c35',
- preferred=True)
- version('8.0.4.30-11.0-linux-ppc64le',
- sha256='8da8ed689b1a348182ddd3f59b6758a502e11dc6708c33f96e3b4a40e033d2e1')
- version('8.0.4.30-10.2-linux-x64',
- sha256='c12c69eb16698eacac40aa46b9ce399d4cd86efb6ff0c105142f8a28fcfb980e')
- version('8.0.4.30-10.2-linux-ppc64le',
- sha256='32a5b92f9e1ef2be90e10f220c4ab144ca59d215eb6a386e93597f447aa6507e')
- version('8.0.4.30-10.1-linux-x64',
- sha256='eb4b888e61715168f57a0a0a21c281ada6856b728e5112618ed15f8637487715')
- version('8.0.4.30-10.1-linux-ppc64le',
- sha256='690811bbf04adef635f4a6f480575fc2a558c4a2c98c85c7090a3a8c60dacea9')
+import platform
+
+_versions = {
+ # cuDNN 8.2.0
+ '8.2.0.53-11.3': {
+ 'Linux-x86_64': '7a195dc93a7cda2bdd4d9b73958d259c784be422cd941a9a625aab75309f19dc',
+ 'Linux-ppc64le': 'cfe06735671a41a5e25fc7542d740177ac8eab1ab146bd30f19e0fa836895611',
+ 'Linux-aarch64sbsa': '0f44af94eef7826dc7b41f92aade3d5210891cdb10858bc0a28ba7167909ab7c'},
+ '8.2.0.53-10.2': {
+ 'Linux-x86_64': '6ecbc98b3795e940ce0831ffb7cd2c0781830fdd6b1911f950bcaf6d569f807c'},
+
+ # cuDNN 8.1.1
+ '8.1.1.33-11.2': {
+ 'Linux-x86_64': '98a8784e92862f20018d20c281b30d4a0cd951f93694f6433ccf4ae9c502ba6a',
+ 'Linux-ppc64le': 'c3e535a5d633ad8f4d50be0b6f8efd084c6c6ed3525c07cbd89fc508b1d76c7a',
+ 'Linux-aarch64sbsa': '4f7e4f5698539659d51f28dff0da11e5445a5ae58439af1d8a8e9f2d93535245'},
+ '8.1.1.33-10.2': {
+ 'Linux-x86_64': '2a4a7b99a6e9bfa690eb19bb41e49553f2a7a491a5b3abfcae900e166c5b6ebd'},
+
+ # cuDNN 8.1.0
+ '8.1.0.77-11.2': {
+ 'Linux-x86_64': 'dbe82faf071d91ba9bcf00480146ad33f462482dfee56caf4479c1b8dabe3ecb',
+ 'Linux-ppc64le': '0d3f8fa21959e9f94889841cc8445aecf41d2f3c557091b447313afb43034037',
+ 'Linux-aarch64sbsa': 'ba16ff486b68a8b50b69b32702612634954de529f39cfff68c12b8bfc1958499'},
+ '8.1.0.77-10.2': {
+ 'Linux-x86_64': 'c5bc617d89198b0fbe485156446be15a08aee37f7aff41c797b120912f2b14b4'},
+
+ # cuDNN 8.0.5
+ '8.0.5.39-11.1': {
+ 'Linux-x86_64': '1d046bfa79399dabcc6f6cb1507918754439442ea0ca9e0fbecdd446f9b00cce',
+ 'Linux-aarch64sbsa': '0c3542c51b42131247cd9f839d0ebefe4e02bb46d1716be1682cb2919278085a'},
+ '8.0.5.39-11.0': {
+ 'Linux-x86_64': '4e16ee7895deb4a8b1c194b812ba49586ef7d26902051401d3717511898a9b73',
+ 'Linux-ppc64le': '05207a02c0b4f22464dbb0ee646693df4a70ae557640ba576ba8678c26393004'},
+ '8.0.5.39-10.2': {
+ 'Linux-x86_64': '21f84c05c67bf1ec859e77c38ccd5bf154964fa1c308f449959be4c356e382f3',
+ 'Linux-ppc64le': 'ce128ea090b05e36d00ffe921e45982ca10e8207e40cfc2e0067d0f62d9b36f9'},
+ '8.0.5.39-10.1': {
+ 'Linux-x86_64': '90908495298896b33aa95063a3471f93c36627d7ac01c17dc36d75c65eea4a00',
+ 'Linux-ppc64le': 'e43b10bb3932d5e7a598dcc726d16dc9938dd99dd319cd74b3420f3ed65fe5e0'},
+
+ # cuDNN 8.0.4
+ '8.0.4.30-11.1': {
+ 'Linux-x86_64': '8f4c662343afce5998ce963500fe3bb167e9a508c1a1a949d821a4b80fa9beab',
+ 'Linux-ppc64le': 'b4ddb51610cbae806017616698635a9914c3e1eb14259f3a39ee5c84e7106712'},
+ '8.0.4.30-11.0': {
+ 'Linux-x86_64': '38a81a28952e314e21577432b0bab68357ef9de7f6c8858f721f78df9ee60c35',
+ 'Linux-ppc64le': '8da8ed689b1a348182ddd3f59b6758a502e11dc6708c33f96e3b4a40e033d2e1'},
+ '8.0.4.30-10.2': {
+ 'Linux-x86_64': 'c12c69eb16698eacac40aa46b9ce399d4cd86efb6ff0c105142f8a28fcfb980e',
+ 'Linux-ppc64le': '32a5b92f9e1ef2be90e10f220c4ab144ca59d215eb6a386e93597f447aa6507e'},
+ '8.0.4.30-10.1': {
+ 'Linux-x86_64': 'eb4b888e61715168f57a0a0a21c281ada6856b728e5112618ed15f8637487715',
+ 'Linux-ppc64le': '690811bbf04adef635f4a6f480575fc2a558c4a2c98c85c7090a3a8c60dacea9'},
# cuDNN 8.0.3
- version('8.0.3.33-11.0-linux-x64',
- sha256='8924bcc4f833734bdd0009050d110ad0c8419d3796010cf7bc515df654f6065a')
- version('8.0.3.33-11.0-linux-ppc64le',
- sha256='c2d0519831137b43d0eebe07522edb4ef5d62320e65e5d5fa840a9856f25923d')
- version('8.0.3.33-10.2-linux-x64',
- sha256='b3d487c621e24b5711983b89bb8ad34f0378bdbf8a1a4b86eefaa23b19956dcc')
- version('8.0.3.33-10.2-linux-ppc64le',
- sha256='ff22c9c37af191c9104989d784427cde744cdde879bfebf3e4e55ca6a9634a11')
- version('8.0.3.33-10.1-linux-x64',
- sha256='4752ac6aea4e4d2226061610d6843da6338ef75a93518aa9ce50d0f58df5fb07')
- version('8.0.3.33-10.1-linux-ppc64le',
- sha256='c546175f6ec86a11ee8fb9ab5526fa8d854322545769a87d35b1a505992f89c3')
+ '8.0.3.33-11.0': {
+ 'Linux-x86_64': '8924bcc4f833734bdd0009050d110ad0c8419d3796010cf7bc515df654f6065a',
+ 'Linux-ppc64le': 'c2d0519831137b43d0eebe07522edb4ef5d62320e65e5d5fa840a9856f25923d'},
+ '8.0.3.33-10.2': {
+ 'Linux-x86_64': 'b3d487c621e24b5711983b89bb8ad34f0378bdbf8a1a4b86eefaa23b19956dcc',
+ 'Linux-ppc64le': 'ff22c9c37af191c9104989d784427cde744cdde879bfebf3e4e55ca6a9634a11'},
+ '8.0.3.33-10.1': {
+ 'Linux-x86_64': '4752ac6aea4e4d2226061610d6843da6338ef75a93518aa9ce50d0f58df5fb07',
+ 'Linux-ppc64le': 'c546175f6ec86a11ee8fb9ab5526fa8d854322545769a87d35b1a505992f89c3'},
# cuDNN 8.0.2
- version('8.0.2.39-11.0-linux-x64',
- sha256='672f46288b8edd98f8d156a4f1ff518201ca6de0cff67915ceaa37f6d6d86345')
- version('8.0.2.39-11.0-linux-ppc64le',
- sha256='b7c1ce5b1191eb007ba3455ea5f497fdce293a646545d8a6ed93e9bb06d7f057')
- version('8.0.2.39-10.2-linux-x64',
- sha256='c9cbe5c211360f3cfbc0fb104f0e9096b37e53f89392525679f049276b2f701f')
- version('8.0.2.39-10.2-linux-ppc64le',
- sha256='c32325ff84a8123491f2e58b3694885a9a672005bc21764b38874688c0e43262')
- version('8.0.2.39-10.1-linux-x64',
- sha256='82148a68bd6bdaab93af5e05bb1842b8ccb3ab7de7bed41f609a7616c102213d')
- version('8.0.2.39-10.1-linux-ppc64le',
- sha256='8196ec4f031356317baeccefbc4f61c8fccb2cf0bdef0a6431438918ddf68fb9')
+ '8.0.2.39-11.0': {
+ 'Linux-x86_64': '672f46288b8edd98f8d156a4f1ff518201ca6de0cff67915ceaa37f6d6d86345',
+ 'Linux-ppc64le': 'b7c1ce5b1191eb007ba3455ea5f497fdce293a646545d8a6ed93e9bb06d7f057'},
+ '8.0.2.39-10.2': {
+ 'Linux-x86_64': 'c9cbe5c211360f3cfbc0fb104f0e9096b37e53f89392525679f049276b2f701f',
+ 'Linux-ppc64le': 'c32325ff84a8123491f2e58b3694885a9a672005bc21764b38874688c0e43262'},
+ '8.0.2.39-10.1': {
+ 'Linux-x86_64': '82148a68bd6bdaab93af5e05bb1842b8ccb3ab7de7bed41f609a7616c102213d',
+ 'Linux-ppc64le': '8196ec4f031356317baeccefbc4f61c8fccb2cf0bdef0a6431438918ddf68fb9'},
# cuDNN 8.0
- version('8.0.0.180-11.0-linux-x64',
- sha256='9e75ea70280a77de815e0bdc85d08b67e081bc99a708b574092142344d2ba07e')
- version('8.0.0.180-11.0-linux-ppc64le',
- sha256='1229e94731bbca63ee7f5a239f4e1838a51a301d896f3097fbf7377d74704060')
- version('8.0.0.180-10.2-linux-x64',
- sha256='0c87c12358ee2b99d57c2a8c7560e3bb93e54bb929f5f8bec4964a72a2bb261d')
- version('8.0.0.180-10.2-linux-ppc64le',
- sha256='59e4ad6db15fcc374976e8052fe39e3f30f34079710fb3c7751a64c853d9243f')
+ '8.0.0.180-11.0': {
+ 'Linux-x86_64': '9e75ea70280a77de815e0bdc85d08b67e081bc99a708b574092142344d2ba07e',
+ 'Linux-ppc64le': '1229e94731bbca63ee7f5a239f4e1838a51a301d896f3097fbf7377d74704060'},
+ '8.0.0.180-10.2': {
+ 'Linux-x86_64': '0c87c12358ee2b99d57c2a8c7560e3bb93e54bb929f5f8bec4964a72a2bb261d',
+ 'Linux-ppc64le': '59e4ad6db15fcc374976e8052fe39e3f30f34079710fb3c7751a64c853d9243f'},
# cuDNN 7.6.5
- version('7.6.5.32-10.2-linux-x64',
- sha256='600267f2caaed2fd58eb214ba669d8ea35f396a7d19b94822e6b36f9f7088c20')
- version('7.6.5.32-10.2-linux-ppc64le',
- sha256='7dc08b6ab9331bfd12207d4802c61db1ad7cace7395b67a6e7b16efa0335668b')
- version('7.6.5.32-10.1-linux-x64',
- sha256='7eaec8039a2c30ab0bc758d303588767693def6bf49b22485a2c00bf2e136cb3')
- version('7.6.5.32-10.1-osx-x64',
- sha256='8ecce28a5ed388a2b9b2d239e08d7c550f53b79288e6d9e5eb4c152bfc711aff')
- version('7.6.5.32-10.1-linux-ppc64le',
- sha256='97b2faf73eedfc128f2f5762784d21467a95b2d5ba719825419c058f427cbf56')
-
- version('7.6.5.32-10.0-linux-x64',
- sha256='28355e395f0b2b93ac2c83b61360b35ba6cd0377e44e78be197b6b61b4b492ba')
- version('7.6.5.32-10.0-osx-x64',
- sha256='6fa0b819374da49102e285ecf7fcb8879df4d0b3cc430cc8b781cdeb41009b47')
- version('7.6.5.32-10.0-linux-ppc64le',
- sha256='b1717f4570083bbfc6b8b59f280bae4e4197cc1cb50e9d873c05adf670084c5b')
-
- version('7.6.5.32-9.2-linux-x64',
- sha256='a2a2c7a8ba7b16d323b651766ee37dcfdbc2b50d920f73f8fde85005424960e4')
- version('7.6.5.32-9.2-linux-ppc64le',
- sha256='a11f44f9a827b7e69f527a9d260f1637694ff7c1674a3e46bd9ec054a08f9a76')
-
- version('7.6.5.32-9.0-linux-x64',
- sha256='bd0a4c0090d5b02feec3f195738968690cc2470b9bc6026e6fe8ff245cd261c8')
+ '7.6.5.32-10.2': {
+ 'Linux-x86_64': '600267f2caaed2fd58eb214ba669d8ea35f396a7d19b94822e6b36f9f7088c20',
+ 'Linux-ppc64le': '7dc08b6ab9331bfd12207d4802c61db1ad7cace7395b67a6e7b16efa0335668b'},
+ '7.6.5.32-10.1': {
+ 'Linux-x86_64': '7eaec8039a2c30ab0bc758d303588767693def6bf49b22485a2c00bf2e136cb3',
+ 'Darwin-x86_64': '8ecce28a5ed388a2b9b2d239e08d7c550f53b79288e6d9e5eb4c152bfc711aff',
+ 'Linux-ppc64le': '97b2faf73eedfc128f2f5762784d21467a95b2d5ba719825419c058f427cbf56'},
+
+ '7.6.5.32-10.0': {
+ 'Linux-x86_64': '28355e395f0b2b93ac2c83b61360b35ba6cd0377e44e78be197b6b61b4b492ba',
+ 'Darwin-x86_64': '6fa0b819374da49102e285ecf7fcb8879df4d0b3cc430cc8b781cdeb41009b47',
+ 'Linux-ppc64le': 'b1717f4570083bbfc6b8b59f280bae4e4197cc1cb50e9d873c05adf670084c5b'},
+
+ '7.6.5.32-9.2': {
+ 'Linux-x86_64': 'a2a2c7a8ba7b16d323b651766ee37dcfdbc2b50d920f73f8fde85005424960e4',
+ 'Linux-ppc64le': 'a11f44f9a827b7e69f527a9d260f1637694ff7c1674a3e46bd9ec054a08f9a76'},
+
+ '7.6.5.32-9.0': {
+ 'Linux-x86_64': 'bd0a4c0090d5b02feec3f195738968690cc2470b9bc6026e6fe8ff245cd261c8'},
# cuDNN 7.6.4
- version('7.6.4.38-10.1-linux-x64',
- sha256='32091d115c0373027418620a09ebec3658a6bc467d011de7cdd0eb07d644b099')
- version('7.6.4.38-10.1-osx-x64',
- sha256='bfced062c3689ced2c1fb49c7d5052e6bc3da6974c1eb707e4dcf8cd209d4236')
- version('7.6.4.38-10.1-linux-ppc64le',
- sha256='f3615fea50986a4dfd05d7a0cf83396dfdceefa9c209e8bf9691e20a48e420ce')
-
- version('7.6.4.38-10.0-linux-x64',
- sha256='417bb5daf51377037eb2f5c87649000ca1b9cec0acb16cfe07cb1d3e9a961dbf')
- version('7.6.4.38-10.0-osx-x64',
- sha256='af01ab841caec25087776a6b8fc7782883da12e590e24825ad1031f9ae0ed4b1')
- version('7.6.4.38-10.0-linux-ppc64le',
- sha256='c1725ad6bd7d7741e080a1e6da4b62eac027a94ac55c606cce261e3f829400bb')
-
- version('7.6.4.38-9.2-linux-x64',
- sha256='c79156531e641289b6a6952888b9637059ef30defd43c3cf82acf38d67f60a27')
- version('7.6.4.38-9.2-linux-ppc64le',
- sha256='98d8aae2dcd851558397a9a30b73242f257e1556be17c83650e63a0685969884')
-
- version('7.6.4.38-9.0-linux-x64',
- sha256='8db78c3623c192d4f03f3087b41c32cb0baac95e13408b5d9dabe626cb4aab5d')
+ '7.6.4.38-10.1': {
+ 'Linux-x86_64': '32091d115c0373027418620a09ebec3658a6bc467d011de7cdd0eb07d644b099',
+ 'Darwin-x86_64': 'bfced062c3689ced2c1fb49c7d5052e6bc3da6974c1eb707e4dcf8cd209d4236',
+ 'Linux-ppc64le': 'f3615fea50986a4dfd05d7a0cf83396dfdceefa9c209e8bf9691e20a48e420ce'},
+
+ '7.6.4.38-10.0': {
+ 'Linux-x86_64': '417bb5daf51377037eb2f5c87649000ca1b9cec0acb16cfe07cb1d3e9a961dbf',
+ 'Darwin-x86_64': 'af01ab841caec25087776a6b8fc7782883da12e590e24825ad1031f9ae0ed4b1',
+ 'Linux-ppc64le': 'c1725ad6bd7d7741e080a1e6da4b62eac027a94ac55c606cce261e3f829400bb'},
+
+ '7.6.4.38-9.2': {
+ 'Linux-x86_64': 'c79156531e641289b6a6952888b9637059ef30defd43c3cf82acf38d67f60a27',
+ 'Linux-ppc64le': '98d8aae2dcd851558397a9a30b73242f257e1556be17c83650e63a0685969884'},
+
+ '7.6.4.38-9.0': {
+ 'Linux-x86_64': '8db78c3623c192d4f03f3087b41c32cb0baac95e13408b5d9dabe626cb4aab5d'},
# cuDNN 7.6.3
- version('7.6.3.30-10.1-linux-x64',
- sha256='352557346d8111e2f954c494be1a90207103d316b8777c33e62b3a7f7b708961')
- version('7.6.3.30-10.1-linux-ppc64le',
- sha256='f274735a8fc31923d3623b1c3d2b1d0d35bb176687077c6a4d4353c6b900d8ee')
+ '7.6.3.30-10.1': {
+ 'Linux-x86_64': '352557346d8111e2f954c494be1a90207103d316b8777c33e62b3a7f7b708961',
+ 'Linux-ppc64le': 'f274735a8fc31923d3623b1c3d2b1d0d35bb176687077c6a4d4353c6b900d8ee'},
# cuDNN 7.5.1
- version('7.5.1.10-10.1-linux-x64',
- sha256='2c833f43c9147d9a25a20947a4c5a5f5c33b2443240fd767f63b330c482e68e0')
- version('7.5.1.10-10.1-linux-ppc64le',
- sha256='a9e23bc83c970daec20874ccd1d8d80b648adf15440ecd0164818b330b1e2663')
+ '7.5.1.10-10.1': {
+ 'Linux-x86_64': '2c833f43c9147d9a25a20947a4c5a5f5c33b2443240fd767f63b330c482e68e0',
+ 'Linux-ppc64le': 'a9e23bc83c970daec20874ccd1d8d80b648adf15440ecd0164818b330b1e2663'},
- version('7.5.1.10-10.0-linux-x64',
- sha256='c0a4ec438920aa581dd567117b9c316745b4a451ac739b1e04939a3d8b229985')
- version('7.5.1.10-10.0-linux-ppc64le',
- sha256='d9205718da5fbab85433476f9ff61fcf4b889d216d6eea26753bbc24d115dd70')
+ '7.5.1.10-10.0': {
+ 'Linux-x86_64': 'c0a4ec438920aa581dd567117b9c316745b4a451ac739b1e04939a3d8b229985',
+ 'Linux-ppc64le': 'd9205718da5fbab85433476f9ff61fcf4b889d216d6eea26753bbc24d115dd70'},
# cuDNN 7.5.0
- version('7.5.0.56-10.1-linux-x64',
- sha256='c31697d6b71afe62838ad2e57da3c3c9419c4e9f5635d14b683ebe63f904fbc8')
- version('7.5.0.56-10.1-linux-ppc64le',
- sha256='15415eb714ab86ab6c7531f2cac6474b5dafd989479b062776c670b190e43638')
+ '7.5.0.56-10.1': {
+ 'Linux-x86_64': 'c31697d6b71afe62838ad2e57da3c3c9419c4e9f5635d14b683ebe63f904fbc8',
+ 'Linux-ppc64le': '15415eb714ab86ab6c7531f2cac6474b5dafd989479b062776c670b190e43638'},
- version('7.5.0.56-10.0-linux-x64',
- sha256='701097882cb745d4683bb7ff6c33b8a35c7c81be31bac78f05bad130e7e0b781')
- version('7.5.0.56-10.0-linux-ppc64le',
- sha256='f0c1cbd9de553c8e2a3893915bd5fff57b30e368ef4c964d783b6a877869e93a')
+ '7.5.0.56-10.0': {
+ 'Linux-x86_64': '701097882cb745d4683bb7ff6c33b8a35c7c81be31bac78f05bad130e7e0b781',
+ 'Linux-ppc64le': 'f0c1cbd9de553c8e2a3893915bd5fff57b30e368ef4c964d783b6a877869e93a'},
# cuDNN 7.3.0
- version('7.3.0.29-9.0-linux-x64',
- sha256='403f9043ff2c7b2c5967454872275d07bca11fd41dfc7b21995eadcad6dbe49b')
+ '7.3.0.29-9.0': {
+ 'Linux-x86_64': '403f9043ff2c7b2c5967454872275d07bca11fd41dfc7b21995eadcad6dbe49b'},
# cuDNN 7.2.1
- version('7.2.1.38-9.0-linux-x64',
- sha256='cf007437b9ac6250ec63b89c25f248d2597fdd01369c80146567f78e75ce4e37')
+ '7.2.1.38-9.0': {
+ 'Linux-x86_64': 'cf007437b9ac6250ec63b89c25f248d2597fdd01369c80146567f78e75ce4e37'},
# cuDNN 7.1.3
- version('7.1.3-9.1-linux-x64',
- sha256='dd616d3794167ceb923d706bf73e8d6acdda770751492b921ee6827cdf190228')
- version('7.1.3-9.1-linux-ppc64le',
- sha256='e3b4837f711b98a52faacc872a68b332c833917ef3cf87c0108f1d01af9b2931')
+ '7.1.3-9.1': {
+ 'Linux-x86_64': 'dd616d3794167ceb923d706bf73e8d6acdda770751492b921ee6827cdf190228',
+ 'Linux-ppc64le': 'e3b4837f711b98a52faacc872a68b332c833917ef3cf87c0108f1d01af9b2931'},
# cuDNN 6.0
- version('6.0-8.0-linux-x64',
- sha256='9b09110af48c9a4d7b6344eb4b3e344daa84987ed6177d5c44319732f3bb7f9c')
+ '6.0-8.0': {
+ 'Linux-x86_64': '9b09110af48c9a4d7b6344eb4b3e344daa84987ed6177d5c44319732f3bb7f9c'},
# cuDNN 5.1
- version('5.1-8.0-linux-x64',
- sha256='c10719b36f2dd6e9ddc63e3189affaa1a94d7d027e63b71c3f64d449ab0645ce')
-
- # CUDA 10.2
- depends_on('cuda@10.2.0:10.2.999', when='@7.6.5.32-10.2-linux-x64')
-
- # CUDA 10.1
- depends_on('cuda@10.1.0:10.1.999', when='@7.6.5.32-10.1-osx-x64')
- depends_on('cuda@10.1.0:10.1.999', when='@7.6.5.32-10.1-linux-x64')
- depends_on('cuda@10.1.0:10.1.999', when='@7.6.5.32-10.1-linux-ppc64le')
- depends_on('cuda@10.1.0:10.1.999', when='@7.6.4.38-10.1-osx-x64')
- depends_on('cuda@10.1.0:10.1.999', when='@7.6.4.38-10.1-linux-x64')
- depends_on('cuda@10.1.0:10.1.999', when='@7.6.4.38-10.1-linux-ppc64le')
- depends_on('cuda@10.1.0:10.1.999', when='@7.6.3.30-10.1-linux-x64')
- depends_on('cuda@10.1.0:10.1.999', when='@7.6.3.30-10.1-linux-ppc64le')
- depends_on('cuda@10.1.0:10.1.999', when='@7.5.0.56-10.1-linux-x64')
- depends_on('cuda@10.1.0:10.1.999', when='@7.5.0.56-10.1-linux-ppc64le')
-
- # CUDA 10.0
- depends_on('cuda@10.0.0:10.0.999', when='@7.6.5.32-10.0-osx-x64')
- depends_on('cuda@10.0.0:10.0.999', when='@7.6.5.32-10.0-linux-x64')
- depends_on('cuda@10.0.0:10.0.999', when='@7.6.5.32-10.0-linux-ppc64le')
- depends_on('cuda@10.0.0:10.0.999', when='@7.6.4.38-10.0-osx-x64')
- depends_on('cuda@10.0.0:10.0.999', when='@7.6.4.38-10.0-linux-x64')
- depends_on('cuda@10.0.0:10.0.999', when='@7.6.4.38-10.0-linux-ppc64le')
- depends_on('cuda@10.0.0:10.0.999', when='@7.5.1.10-10.0-linux-x64')
- depends_on('cuda@10.0.0:10.0.999', when='@7.5.1.10-10.0-linux-ppc64le')
- depends_on('cuda@10.0.0:10.0.999', when='@7.5.0.56-10.0-linux-x64')
- depends_on('cuda@10.0.0:10.0.999', when='@7.5.0.56-10.0-linux-ppc64le')
-
- # CUDA 9.2
- depends_on('cuda@9.2.0:9.2.999', when='@7.6.5.32-9.2-linux-x64')
- depends_on('cuda@9.2.0:9.2.999', when='@7.6.5.32-9.2-linux-ppc64le')
- depends_on('cuda@9.2.0:9.2.999', when='@7.6.4.38-9.2-linux-x64')
- depends_on('cuda@9.2.0:9.2.999', when='@7.6.4.38-9.2-linux-ppc64le')
-
- # CUDA 9.1
- depends_on('cuda@9.1.0:9.1.999', when='@7.1.3-9.1-linux-x64')
- depends_on('cuda@9.1.0:9.1.999', when='@7.1.3-9.1-linux-ppc64le')
-
- # CUDA 9.0
- depends_on('cuda@9.0.0:9.0.999', when='@7.6.5.32-9.0-linux-x64')
- depends_on('cuda@9.0.0:9.0.999', when='@7.6.4.38-9.0-linux-x64')
- depends_on('cuda@9.0.0:9.0.999', when='@7.3.0.29-9.0-linux-x64')
- depends_on('cuda@9.0.0:9.0.999', when='@7.2.1.38-9.0-linux-x64')
-
- # CUDA 8.0
- depends_on('cuda@8.0.0:8.0.999', when='@6.0-8.0-linux-x64')
- depends_on('cuda@8.0.0:8.0.999', when='@5.1-8.0-linux-x64')
+ '5.1-8.0': {
+ 'Linux-x86_64': 'c10719b36f2dd6e9ddc63e3189affaa1a94d7d027e63b71c3f64d449ab0645ce'},
+
+}
+
+
+class Cudnn(Package):
+ """NVIDIA cuDNN is a GPU-accelerated library of primitives for deep
+ neural networks"""
+
+ homepage = "https://developer.nvidia.com/cudnn"
+
+ # Latest versions available at:
+ # https://developer.nvidia.com/rdp/cudnn-download
+ # Archived versions available at:
+ # https://developer.nvidia.com/rdp/cudnn-archive
+ # Note that download links don't work from command line,
+ # need to use modified URLs like in url_for_version.
+
+ maintainers = ['adamjstewart', 'bvanessen']
+
+ for ver, packages in _versions.items():
+ key = "{0}-{1}".format(platform.system(), platform.machine())
+ pkg = packages.get(key)
+ cudnn_ver, cuda_ver = ver.split('-')
+ long_ver = "{0}-{1}".format(cudnn_ver, cuda_ver)
+ if pkg:
+ version(long_ver, sha256=pkg)
+ # Add constraints matching CUDA version to cuDNN version
+ cuda_req = 'cuda@{0}.0:{0}.999'.format(cuda_ver)
+ cudnn_ver_req = '@{0}'.format(long_ver)
+ depends_on(cuda_req, when=cudnn_ver_req)
def url_for_version(self, version):
- url = 'https://developer.download.nvidia.com/compute/redist/cudnn/v{0}/cudnn-{1}-v{2}.tgz'
+ url = 'https://developer.download.nvidia.com/compute/redist/cudnn/v{0}/cudnn-{1}-{2}-v{3}.tgz'
+ # Get the system and machine arch for building the file path
+ sys = "{0}-{1}".format(platform.system(), platform.machine())
+ # Munge it to match Nvidia's naming scheme
+ sys_key = sys.lower().replace('x86_64', 'x64').replace('darwin', 'osx')
if version >= Version('7.2'):
directory = version[:3]
@@ -246,7 +227,7 @@ class Cudnn(Package):
ver = version[:2]
cuda = version[2:]
- return url.format(directory, cuda, ver)
+ return url.format(directory, cuda, sys_key, ver)
def setup_run_environment(self, env):
if 'target=ppc64le: platform=linux' in self.spec:
diff --git a/var/spack/repos/builtin/packages/cufflinks/package.py b/var/spack/repos/builtin/packages/cufflinks/package.py
index 93e8cb9075..1b9566e22f 100644
--- a/var/spack/repos/builtin/packages/cufflinks/package.py
+++ b/var/spack/repos/builtin/packages/cufflinks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cunit/package.py b/var/spack/repos/builtin/packages/cunit/package.py
index 511f1d7c25..b555b16df9 100644
--- a/var/spack/repos/builtin/packages/cunit/package.py
+++ b/var/spack/repos/builtin/packages/cunit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cups/package.py b/var/spack/repos/builtin/packages/cups/package.py
index b2688064da..08e5270dc7 100644
--- a/var/spack/repos/builtin/packages/cups/package.py
+++ b/var/spack/repos/builtin/packages/cups/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/curl/package.py b/var/spack/repos/builtin/packages/curl/package.py
index 8cf695f6f0..4c240991f4 100644
--- a/var/spack/repos/builtin/packages/curl/package.py
+++ b/var/spack/repos/builtin/packages/curl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,19 @@ class Curl(AutotoolsPackage):
"""cURL is an open source command line tool and library for
transferring data with URL syntax"""
- homepage = "http://curl.haxx.se"
+ homepage = "https://curl.se/"
# URL must remain http:// so Spack can bootstrap curl
- url = "http://curl.haxx.se/download/curl-7.60.0.tar.bz2"
+ url = "http://curl.haxx.se/download/curl-7.74.0.tar.bz2"
+ version('7.76.1', sha256='7a8e184d7d31312c4ebf6a8cb59cd757e61b2b2833a9ed4f9bf708066e7695e9')
+ version('7.76.0', sha256='e29bfe3633701590d75b0071bbb649ee5ca4ca73f00649268bd389639531c49a')
+ version('7.75.0', sha256='50552d4501c178e4cc68baaecc487f466a3d6d19bbf4e50a01869effb316d026')
+ version('7.74.0', sha256='0f4d63e6681636539dc88fa8e929f934cd3a840c46e0bf28c73be11e521b77a5')
+ version('7.73.0', sha256='cf34fe0b07b800f1c01a499a6e8b2af548f6d0e044dca4a29d88a4bee146d131')
version('7.72.0', sha256='ad91970864102a59765e20ce16216efc9d6ad381471f7accceceab7d905703ef')
version('7.71.0', sha256='600f00ac2481a89548a4141ddf983fd9386165e1960bac91d0a1c81dca5dd341')
version('7.68.0', sha256='207f54917dd6a2dc733065ccf18d61bb5bebeaceb5df49cd9445483e8623eeb9')
+ version('7.64.0', sha256='d573ba1c2d1cf9d8533fadcce480d778417964e8d04ccddcc76e591d544cf2eb')
version('7.63.0', sha256='9bab7ed4ecff77020a312d84cc5fb7eb02d58419d218f267477a724a17fd8dd8')
version('7.60.0', sha256='897dfb2204bd99be328279f88f55b7c61592216b0542fcbe995c60aa92871e9b')
version('7.59.0', sha256='b5920ffd6a8c95585fb95070e0ced38322790cb335c39d0dab852d12e157b5a0')
diff --git a/var/spack/repos/builtin/packages/cusz/package.py b/var/spack/repos/builtin/packages/cusz/package.py
index c846c31320..1b020c7493 100644
--- a/var/spack/repos/builtin/packages/cusz/package.py
+++ b/var/spack/repos/builtin/packages/cusz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cvector/package.py b/var/spack/repos/builtin/packages/cvector/package.py
new file mode 100644
index 0000000000..d4c6d0c4f6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cvector/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Cvector(MakefilePackage):
+ """CVector -- ANSI C API for Dynamic Arrays"""
+
+ homepage = "http://cvector.sourceforge.net/"
+ url = "https://downloads.sourceforge.net/project/cvector/cvector/CVector-1.0.3/CVector-1.0.3.tar.gz"
+
+ version('1.0.3', sha256='d3fa92de3cd5ba8697abdbb52080248b2c252a81cf40a8ec639be301518d0ce3')
+
+ depends_on('libtool', type='build')
+
+ def edit(self, spec, prefix):
+ mf = FileFilter('Makefile')
+ mf.filter(r'^CC.+', "CC = {0}".format(spack_cc))
+ mf.filter(r'^INSTALL_PREFIX .+', "INSTALL_PREFIX = {0}".format(prefix))
+
+ def build(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin/packages/cvs/package.py b/var/spack/repos/builtin/packages/cvs/package.py
index 7dd3cd129b..a6fef2ef0a 100644
--- a/var/spack/repos/builtin/packages/cvs/package.py
+++ b/var/spack/repos/builtin/packages/cvs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cxx/package.py b/var/spack/repos/builtin/packages/cxx/package.py
index 0be36c3ae5..f06949b698 100644
--- a/var/spack/repos/builtin/packages/cxx/package.py
+++ b/var/spack/repos/builtin/packages/cxx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cxxopts/package.py b/var/spack/repos/builtin/packages/cxxopts/package.py
index e5bd1d68ef..ad0927727e 100644
--- a/var/spack/repos/builtin/packages/cxxopts/package.py
+++ b/var/spack/repos/builtin/packages/cxxopts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/cxxtest/package.py b/var/spack/repos/builtin/packages/cxxtest/package.py
new file mode 100644
index 0000000000..a8d9df2359
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cxxtest/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Cxxtest(Package):
+ """C++ unit test system."""
+
+ homepage = "https://cxxtest.com/"
+ url = "https://sourceforge.net/projects/cxxtest/files/cxxtest/4.4/cxxtest-4.4.tar.gz/download"
+
+ version('4.4', sha256='1c154fef91c65dbf1cd4519af7ade70a61d85a923b6e0c0b007dc7f4895cf7d8')
+
+ def install(self, spec, prefix):
+ install_tree(self.stage.source_path, prefix)
diff --git a/var/spack/repos/builtin/packages/cyrus-sasl/package.py b/var/spack/repos/builtin/packages/cyrus-sasl/package.py
index 98848ccff9..355180ab79 100644
--- a/var/spack/repos/builtin/packages/cyrus-sasl/package.py
+++ b/var/spack/repos/builtin/packages/cyrus-sasl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/czmq/package.py b/var/spack/repos/builtin/packages/czmq/package.py
index acd128adc1..c09987df73 100644
--- a/var/spack/repos/builtin/packages/czmq/package.py
+++ b/var/spack/repos/builtin/packages/czmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,7 +19,7 @@ class Czmq(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('autoconf', type='build')
depends_on('pkgconfig', type='build')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('libzmq')
def autoreconf(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/dakota/package.py b/var/spack/repos/builtin/packages/dakota/package.py
index 20ce29f7a9..656adfc460 100644
--- a/var/spack/repos/builtin/packages/dakota/package.py
+++ b/var/spack/repos/builtin/packages/dakota/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -44,6 +44,7 @@ class Dakota(CMakePackage):
depends_on('mpi', when='+mpi')
depends_on('python')
+ depends_on('perl-data-dumper', type='build', when='@6.12:')
depends_on('boost@:1.68.0', when='@:6.12')
depends_on('cmake@2.8.9:', type='build')
@@ -51,8 +52,7 @@ class Dakota(CMakePackage):
spec = self.spec
args = [
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
]
if '+mpi' in spec:
diff --git a/var/spack/repos/builtin/packages/daligner/package.py b/var/spack/repos/builtin/packages/daligner/package.py
index 8f05e8b9c0..4db5d6dda8 100644
--- a/var/spack/repos/builtin/packages/daligner/package.py
+++ b/var/spack/repos/builtin/packages/daligner/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dalton/package.py b/var/spack/repos/builtin/packages/dalton/package.py
new file mode 100644
index 0000000000..e38b430274
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dalton/package.py
@@ -0,0 +1,46 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Dalton(CMakePackage):
+ """
+ The Dalto nprogram is designed to allow convenient,
+ automated determination of a largenumber of molecular properties
+ based on an HF, HF-srDFT, DFT, MP2, CC, CI, MCSCF or MC-srDFT
+ reference wave function.
+ """
+
+ homepage = "https://daltonprogram.org"
+ git = 'https://gitlab.com/dalton/dalton.git'
+
+ version('2020.0', branch='Dalton2020.0', submodules=True)
+
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('mpi')
+
+ def setup_run_environment(self, env):
+ env.prepend_path('PATH', self.spec.prefix.join('dalton'))
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = ['-DENABLE_BUILTIN_BLAS=OFF',
+ '-DENABLE_BUILTIN_LAPACK=OFF',
+ '-DUSE_BUILTIN_LAPACK=OFF',
+ '-DENABLE_STATIC_LINKING=OFF',
+ '-DENABLE_MPI=ON',
+ '-DCMAKE_C_COMPILER={0}'.format(
+ spec['mpi'].prefix.bin.mpicc),
+ '-DCMAKE_CXX_COMPILER={0}'.format(
+ spec['mpi'].prefix.bin.mpicxx),
+ '-DCMAKE_Fortran_COMPILER={0}'.format(
+ spec['mpi'].prefix.bin.mpif90),
+ '-DMPIEXEC_MAX_NUMPROCS=128'
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/damageproto/package.py b/var/spack/repos/builtin/packages/damageproto/package.py
index ad8f08d7de..74f514da7e 100644
--- a/var/spack/repos/builtin/packages/damageproto/package.py
+++ b/var/spack/repos/builtin/packages/damageproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/damaris/package.py b/var/spack/repos/builtin/packages/damaris/package.py
index 13616e1d78..81a439f8cc 100644
--- a/var/spack/repos/builtin/packages/damaris/package.py
+++ b/var/spack/repos/builtin/packages/damaris/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/damselfly/package.py b/var/spack/repos/builtin/packages/damselfly/package.py
index 5629b94efa..20c156e4fe 100644
--- a/var/spack/repos/builtin/packages/damselfly/package.py
+++ b/var/spack/repos/builtin/packages/damselfly/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/darshan-runtime/package.py b/var/spack/repos/builtin/packages/darshan-runtime/package.py
index 1c81045e69..075a3ddc05 100644
--- a/var/spack/repos/builtin/packages/darshan-runtime/package.py
+++ b/var/spack/repos/builtin/packages/darshan-runtime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,7 +20,10 @@ class DarshanRuntime(Package):
maintainers = ['shanedsnyder', 'carns']
- version('develop', branch='master')
+ version('master', branch='master', submodules=True)
+ version('3.3.0', sha256='2e8bccf28acfa9f9394f2084ec18122c66e45d966087fa2e533928e824fcb57a', preferred=True)
+ version('3.3.0-pre2', sha256='0fc09f86f935132b7b05df981b05cdb3796a1ea02c7acd1905323691df65e761')
+ version('3.3.0-pre1', sha256='1c655359455b5122921091bab9961491be58a5f0158f073d09fe8cc772bd0812')
version('3.2.1', sha256='d63048b7a3d1c4de939875943e3e7a2468a9034fcb68585edbc87f57f622e7f7')
version('3.2.0', sha256='4035435bdc0fa2a678247fbf8d5a31dfeb3a133baf06577786b1fe8d00a31b7e')
version('3.1.8', sha256='3ed51c8d5d93b4a8cbb7d53d13052140a9dffe0bc1a3e1ebfc44a36a184b5c82')
@@ -31,11 +34,26 @@ class DarshanRuntime(Package):
depends_on('mpi', when='+mpi')
depends_on('zlib')
+ depends_on('hdf5', when='+hdf5')
+ depends_on('papi', when='+apxc')
variant('slurm', default=False, description='Use Slurm Job ID')
variant('cobalt', default=False, description='Use Coblat Job Id')
variant('pbs', default=False, description='Use PBS Job Id')
variant('mpi', default=True, description='Compile with MPI support')
+ variant('hdf5', default=False, description='Compile with HDF5 module')
+ variant('apmpi', default=False, description='Compile with AutoPerf MPI module')
+ variant('apmpi_sync', default=False, description='Compile with AutoPerf MPI module (with collective synchronization timing)')
+ variant('apxc', default=False, description='Compile with AutoPerf XC module')
+
+ conflicts('+hdf5', when='@:3.1.8',
+ msg='+hdf5 variant only available starting from version 3.2.0')
+ conflicts('+apmpi', when='@:3.2.1',
+ msg='+apmpi variant only available starting from version 3.3.0')
+ conflicts('+apmpi_sync', when='@:3.2.1',
+ msg='+apmpi variant only available starting from version 3.3.0')
+ conflicts('+apxc', when='@:3.2.1',
+ msg='+apxc variant only available starting from version 3.3.0')
def install(self, spec, prefix):
@@ -53,6 +71,18 @@ class DarshanRuntime(Package):
options = ['CC=%s' % spec['mpi'].mpicc]
else:
options = ['--without-mpi']
+
+ if '+hdf5' in spec:
+ options.extend(['--enable-hdf5-mod=%s' % spec['hdf5'].prefix])
+
+ if '+apmpi' in spec:
+ options.extend(['--enable-apmpi-mod'])
+ if '+apmpi_sync' in spec:
+ options.extend(['--enable-apmpi-mod',
+ '--enable-apmpi-coll-sync'])
+ if '+apxc' in spec:
+ options.extend(['--enable-apxc-mod'])
+
options.extend(['--with-mem-align=8',
'--with-log-path-by-env=DARSHAN_LOG_DIR_PATH',
'--with-jobid-env=%s' % job_id,
diff --git a/var/spack/repos/builtin/packages/darshan-util/package.py b/var/spack/repos/builtin/packages/darshan-util/package.py
index abd194e027..57143f12e8 100644
--- a/var/spack/repos/builtin/packages/darshan-util/package.py
+++ b/var/spack/repos/builtin/packages/darshan-util/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,10 @@ class DarshanUtil(Package):
maintainers = ['shanedsnyder', 'carns']
- version('develop', branch='master')
+ version('master', branch='master', submodules='True')
+ version('3.3.0', sha256='2e8bccf28acfa9f9394f2084ec18122c66e45d966087fa2e533928e824fcb57a', preferred=True)
+ version('3.3.0-pre2', sha256='0fc09f86f935132b7b05df981b05cdb3796a1ea02c7acd1905323691df65e761')
+ version('3.3.0-pre1', sha256='1c655359455b5122921091bab9961491be58a5f0158f073d09fe8cc772bd0812')
version('3.2.1', sha256='d63048b7a3d1c4de939875943e3e7a2468a9034fcb68585edbc87f57f622e7f7')
version('3.2.0', sha256='4035435bdc0fa2a678247fbf8d5a31dfeb3a133baf06577786b1fe8d00a31b7e')
version('3.1.8', sha256='3ed51c8d5d93b4a8cbb7d53d13052140a9dffe0bc1a3e1ebfc44a36a184b5c82')
@@ -28,15 +31,31 @@ class DarshanUtil(Package):
version('3.0.0', sha256='95232710f5631bbf665964c0650df729c48104494e887442596128d189da43e0')
variant('bzip2', default=False, description="Enable bzip2 compression")
+ variant('shared', default=True, description='Build shared libraries')
+ variant('apmpi', default=False, description='Compile with AutoPerf MPI module support')
+ variant('apxc', default=False, description='Compile with AutoPerf XC module support')
+
depends_on('zlib')
depends_on('bzip2', when="+bzip2", type=("build", "link", "run"))
patch('retvoid.patch', when='@3.2.0:3.2.1')
+ conflicts('+apmpi', when='@:3.2.1',
+ msg='+apmpi variant only available starting from version 3.3.0')
+ conflicts('+apxc', when='@:3.2.1',
+ msg='+apxc variant only available starting from version 3.3.0')
+
def install(self, spec, prefix):
options = ['CC=%s' % self.compiler.cc,
'--with-zlib=%s' % spec['zlib'].prefix]
+ if '+shared' in spec:
+ options.extend(['--enable-shared'])
+
+ if '+apmpi' in spec:
+ options.extend(['--enable-autoperf-apmpi'])
+ if '+apxc' in spec:
+ options.extend(['--enable-autoperf-apxc'])
with working_dir('spack-build', create=True):
configure = Executable('../darshan-util/configure')
diff --git a/var/spack/repos/builtin/packages/dash/package.py b/var/spack/repos/builtin/packages/dash/package.py
index 57323d6721..6399c87063 100644
--- a/var/spack/repos/builtin/packages/dash/package.py
+++ b/var/spack/repos/builtin/packages/dash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/datamash/package.py b/var/spack/repos/builtin/packages/datamash/package.py
index 65fcddbe0a..8125f3604e 100644
--- a/var/spack/repos/builtin/packages/datamash/package.py
+++ b/var/spack/repos/builtin/packages/datamash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dataspaces/package.py b/var/spack/repos/builtin/packages/dataspaces/package.py
index be5c5c884f..9c85b6b804 100644
--- a/var/spack/repos/builtin/packages/dataspaces/package.py
+++ b/var/spack/repos/builtin/packages/dataspaces/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/datatransferkit/package.py b/var/spack/repos/builtin/packages/datatransferkit/package.py
index 070f724d2a..8cc72a2da5 100644
--- a/var/spack/repos/builtin/packages/datatransferkit/package.py
+++ b/var/spack/repos/builtin/packages/datatransferkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,11 +19,14 @@ class Datatransferkit(CMakePackage):
version('master', branch='master', submodules=True)
version('3.1-rc2', commit='1abc1a43b33dffc7a16d7497b4185d09d865e36a', submodules=True)
+ variant('external-arborx', default=False,
+ description='use an external ArborX library instead of the submodule')
variant('openmp', default=False, description='enable OpenMP backend')
variant('serial', default=True, description='enable Serial backend (default)')
variant('shared', default=True,
description='enable the build of shared lib')
+ depends_on('arborx@1.0:', when='+external-arborx')
depends_on('cmake', type='build')
depends_on('trilinos+intrepid2+shards~dtk', when='+serial')
depends_on('trilinos+intrepid2+shards+openmp~dtk', when='+openmp')
@@ -32,11 +35,12 @@ class Datatransferkit(CMakePackage):
def cmake_args(self):
spec = self.spec
+ from_variant = self.define_from_variant
options = [
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
+ from_variant('BUILD_SHARED_LIBS', 'shared'),
'-DDataTransferKit_ENABLE_DataTransferKit=ON',
+ from_variant('DataTransferKit_ENABLE_ArborX_TPL', 'external-arborx'),
'-DDataTransferKit_ENABLE_TESTS=OFF',
'-DDataTransferKit_ENABLE_EXAMPLES=OFF',
'-DCMAKE_CXX_EXTENSIONS=OFF',
diff --git a/var/spack/repos/builtin/packages/date/package.py b/var/spack/repos/builtin/packages/date/package.py
index 0d2e7e5d8a..390498fe71 100644
--- a/var/spack/repos/builtin/packages/date/package.py
+++ b/var/spack/repos/builtin/packages/date/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dateutils/package.py b/var/spack/repos/builtin/packages/dateutils/package.py
index 8927731942..58b5e02fce 100644
--- a/var/spack/repos/builtin/packages/dateutils/package.py
+++ b/var/spack/repos/builtin/packages/dateutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/davix/package.py b/var/spack/repos/builtin/packages/davix/package.py
index e1845d549a..5d3355f162 100644
--- a/var/spack/repos/builtin/packages/davix/package.py
+++ b/var/spack/repos/builtin/packages/davix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,11 +9,10 @@ from spack import *
class Davix(CMakePackage):
"""High-performance file management over WebDAV/HTTP."""
- homepage = "https://dmc.web.cern.ch/projects/davix"
- url = "http://grid-deployment.web.cern.ch/grid-deployment/dms/lcgutil/tar/davix/0.6.8/davix-0.6.8.tar.gz"
- list_url = "http://grid-deployment.web.cern.ch/grid-deployment/dms/lcgutil/tar/davix/"
- list_depth = 1
+ homepage = "https://davix.web.cern.ch/davix/docs/devel/index.html"
+ url = "https://github.com/cern-fts/davix/releases/download/R_0_7_6/davix-0.7.6.tar.gz"
+ version('0.7.6', sha256='a2e7fdff29f7ba247a3bcdb08ab1db6d6ed745de2d3971b46526986caf360673')
version('0.7.5', sha256='d920ca976846875d83af4dc50c99280bb3741fcf8351d5733453e70fa5fe6fc8')
version('0.7.3', sha256='cd46276e72c6a0da1e2ad30eb66ec509a4c023687767c62a66713fa8c23d328a')
version('0.6.9', sha256='fbd97eb5fdf82ca48770d06bf8e2805b35f23255478aa381a9d25a49eb98e348')
@@ -27,7 +26,7 @@ class Davix(CMakePackage):
depends_on('pkgconfig', type='build')
depends_on('libxml2')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('openssl')
def cmake_args(self):
diff --git a/var/spack/repos/builtin/packages/dbcsr/package.py b/var/spack/repos/builtin/packages/dbcsr/package.py
index 028efb0e1d..a2883f7183 100644
--- a/var/spack/repos/builtin/packages/dbcsr/package.py
+++ b/var/spack/repos/builtin/packages/dbcsr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
from spack import *
-class Dbcsr(CMakePackage, CudaPackage):
+class Dbcsr(CMakePackage, CudaPackage, ROCmPackage):
"""Distributed Block Compressed Sparse Row matrix library."""
homepage = "https://github.com/cp2k/dbcsr"
@@ -21,16 +21,13 @@ class Dbcsr(CMakePackage, CudaPackage):
variant('shared', default=True, description='Build shared library')
variant('smm', default='libxsmm', values=('libxsmm', 'blas'),
description='Library for small matrix multiplications')
- variant('cuda_arch',
- description='CUDA architecture',
- default='none',
- values=('none', '35', '37', '60', '70'),
- multi=False)
variant('cuda_arch_35_k20x', default=False,
description=('CP2K (resp. DBCSR) has specific parameter sets for'
' different GPU models. Enable this when building'
' with cuda_arch=35 for a K20x instead of a K40'))
+ variant('opencl', default=False, description='Enable OpenCL backend')
+
depends_on('blas')
depends_on('lapack')
depends_on('mpi', when='+mpi')
@@ -41,36 +38,69 @@ class Dbcsr(CMakePackage, CudaPackage):
depends_on('pkgconfig', type='build')
depends_on('python@3.6:', type='build', when='+cuda')
- conflicts('+cuda', when='cuda_arch=none')
+ depends_on('hipblas', when='+rocm')
+
+ depends_on('opencl', when='+opencl')
+
+ # We only support specific gpu archs for which we have parameter files
+ # for optimal kernels. Note that we don't override the parent class arch
+ # properties, since the parent class defines constraints for different archs
+ # Instead just mark all unsupported cuda archs as conflicting.
+ dbcsr_cuda_archs = ('35', '37', '60', '70')
+ cuda_msg = 'dbcsr only supports cuda_arch {0}'.format(dbcsr_cuda_archs)
+
+ for arch in CudaPackage.cuda_arch_values:
+ if arch not in dbcsr_cuda_archs:
+ conflicts('+cuda', when='cuda_arch={0}'.format(arch), msg=cuda_msg)
+
+ conflicts('+cuda', when='cuda_arch=none', msg=cuda_msg)
+
+ dbcsr_amdgpu_targets = ('gfx906')
+ amd_msg = 'DBCSR only supports amdgpu_target {0}'.format(dbcsr_amdgpu_targets)
+
+ for arch in ROCmPackage.amdgpu_targets:
+ if arch not in dbcsr_amdgpu_targets:
+ conflicts('+rocm', when='amdgpu_target={0}'.format(arch), msg=amd_msg)
+
+ accel_msg = "CUDA, ROCm and OpenCL support are mutually exlusive"
+ conflicts('+cuda', when='+rocm', msg=accel_msg)
+ conflicts('+cuda', when='+opencl', msg=accel_msg)
+ conflicts('+rocm', when='+opencl', msg=accel_msg)
+
+ # Require openmp threading for OpenBLAS by making other options conflict
+ conflicts('^openblas threads=pthreads', when='+openmp')
+ conflicts('^openblas threads=none', when='+openmp')
+
+ conflicts('smm=blas', when='+opencl')
generator = 'Ninja'
depends_on('ninja@1.10:', type='build')
def cmake_args(self):
- if ('+openmp' in self.spec
- and '^openblas' in self.spec
- and '^openblas threads=openmp' not in self.spec):
- raise InstallError(
- '^openblas threads=openmp required for dbcsr+openmp')
-
spec = self.spec
+
+ if len(spec.variants['cuda_arch'].value) > 1:
+ raise InstallError("dbcsr supports only one cuda_arch at a time")
+
+ if len(spec.variants['amdgpu_target'].value) > 1:
+ raise InstallError("DBCSR supports only one amdgpu_arch at a time")
+
args = [
'-DUSE_SMM=%s' % ('libxsmm' if 'smm=libxsmm' in spec else 'blas'),
- '-DUSE_MPI=%s' % ('ON' if '+mpi' in spec else 'OFF'),
- '-DUSE_OPENMP=%s' % (
- 'ON' if '+openmp' in spec else 'OFF'),
+ self.define_from_variant('USE_MPI', 'mpi'),
+ self.define_from_variant('USE_OPENMP', 'openmp'),
# C API needs MPI
- '-DWITH_C_API=%s' % ('ON' if '+mpi' in spec else 'OFF'),
+ self.define_from_variant('WITH_C_API', 'mpi'),
'-DBLAS_FOUND=true',
'-DBLAS_LIBRARIES=%s' % (spec['blas'].libs.joined(';')),
'-DLAPACK_FOUND=true',
'-DLAPACK_LIBRARIES=%s' % (spec['lapack'].libs.joined(';')),
'-DWITH_EXAMPLES=ON',
- '-DBUILD_SHARED_LIBS=%s' % ('ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
]
- if '+cuda' in self.spec:
- cuda_arch = self.spec.variants['cuda_arch'].value
+ if self.spec.satisfies('+cuda'):
+ cuda_arch = self.spec.variants['cuda_arch'].value[0]
gpuver = {
'35': 'K40',
@@ -83,7 +113,27 @@ class Dbcsr(CMakePackage, CudaPackage):
and self.spec.satisfies('+cuda_arch_35_k20x')):
gpuver = 'K20X'
- args += ['-DWITH_GPU=%s' % gpuver]
+ args += [
+ '-DWITH_GPU=%s' % gpuver,
+ '-DUSE_ACCEL=cuda'
+ ]
+
+ if self.spec.satisfies('+rocm'):
+ amd_arch = self.spec.variants['amdgpu_target'].value[0]
+
+ gpuver = {
+ 'gfx906': 'Mi50'
+ }[amd_arch]
+
+ args += [
+ '-DWITH_GPU={0}'.format(gpuver),
+ '-DUSE_ACCEL=hip'
+ ]
+
+ if self.spec.satisfies('+opencl'):
+ args += [
+ '-DUSE_ACCEL=opencl'
+ ]
return args
diff --git a/var/spack/repos/builtin/packages/dbow2/package.py b/var/spack/repos/builtin/packages/dbow2/package.py
new file mode 100644
index 0000000000..0677c4ced5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dbow2/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Dbow2(CMakePackage):
+ """DBoW2 is an improved version of the DBow library, an open source C++
+ library for indexing and converting images into a bag-of-word
+ representation."""
+
+ homepage = "https://github.com/dorian3d/DBoW2"
+ git = "https://github.com/dorian3d/DBoW2.git"
+
+ version('master', branch='master')
+ version('shinsumicco', git='https://github.com/shinsumicco/DBoW2.git', branch='master')
+
+ depends_on('cmake@3.0:', type='build')
+ depends_on('opencv+calib3d+core+features2d+highgui+imgproc')
+ depends_on('boost')
+ depends_on('dlib')
+ depends_on('eigen', type='link')
diff --git a/var/spack/repos/builtin/packages/dbus-glib/package.py b/var/spack/repos/builtin/packages/dbus-glib/package.py
index 7cfe425e5d..7187976b43 100644
--- a/var/spack/repos/builtin/packages/dbus-glib/package.py
+++ b/var/spack/repos/builtin/packages/dbus-glib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dbus/package.py b/var/spack/repos/builtin/packages/dbus/package.py
index f47f7f4b16..be91ce0b9e 100644
--- a/var/spack/repos/builtin/packages/dbus/package.py
+++ b/var/spack/repos/builtin/packages/dbus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dbxtool/package.py b/var/spack/repos/builtin/packages/dbxtool/package.py
index 3a7524bf5f..d5e8419e98 100644
--- a/var/spack/repos/builtin/packages/dbxtool/package.py
+++ b/var/spack/repos/builtin/packages/dbxtool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dcap/package.py b/var/spack/repos/builtin/packages/dcap/package.py
index 487c02fade..d885f77047 100644
--- a/var/spack/repos/builtin/packages/dcap/package.py
+++ b/var/spack/repos/builtin/packages/dcap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dcmtk/package.py b/var/spack/repos/builtin/packages/dcmtk/package.py
index 7b5fab7f64..bd546847cc 100644
--- a/var/spack/repos/builtin/packages/dcmtk/package.py
+++ b/var/spack/repos/builtin/packages/dcmtk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dd4hep/package.py b/var/spack/repos/builtin/packages/dd4hep/package.py
index 7fb4868a91..0047bb3773 100644
--- a/var/spack/repos/builtin/packages/dd4hep/package.py
+++ b/var/spack/repos/builtin/packages/dd4hep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,23 +21,28 @@ class Dd4hep(CMakePackage):
maintainers = ['vvolkl', 'drbenmorgan']
+ tags = ['hep']
+
version('master', branch='master')
+ version('1.16.1', sha256='c8b1312aa88283986f89cc008d317b3476027fd146fdb586f9f1fbbb47763f1a')
+ version('1.16', sha256='ea9755cd255cf1b058e0e3cd743101ca9ca5ff79f4c60be89f9ba72b1ae5ec69')
+ version('1.15', sha256='992a24bd4b3dfaffecec9d1c09e8cde2c7f89d38756879a47b23208242f4e352')
version('1.14.1', sha256='5b5742f1e23c2b36d3174cca95f810ce909c0eb66f3d6d7acb0ba657819e6717')
- version('1.14.0', sha256='b603aa3c0db8dda392253aa71fa4a0f0c3c9715d47df0b895d45c1e8849f4895')
+ version('1.14', sha256='b603aa3c0db8dda392253aa71fa4a0f0c3c9715d47df0b895d45c1e8849f4895')
version('1.13.1', sha256='83fa70cd74ce93b2f52f098388dff58d179f05ace5b50aea3f408bb8abf7cb73')
- version('1.13.0', sha256='0b1f9d902ebe21a9178c1e41204c066b29f68c8836fd1d03a9ce979811ddb295')
+ version('1.13', sha256='0b1f9d902ebe21a9178c1e41204c066b29f68c8836fd1d03a9ce979811ddb295')
version('1.12.1', sha256='85e8c775ec03c499ce10911e228342e757c81ce9ef2a9195cb253b85175a2e93')
- version('1.12.0', sha256='133a1fb8ce0466d2482f3ebb03e60b3bebb9b2d3e33d14ba15c8fbb91706b398')
+ version('1.12', sha256='133a1fb8ce0466d2482f3ebb03e60b3bebb9b2d3e33d14ba15c8fbb91706b398')
version('1.11.2', sha256='96a53dd26cb8df11c6dae54669fbc9cc3c90dd47c67e07b24be9a1341c95abc4')
version('1.11.1', sha256='d7902dd7f6744bbda92f6e303ad5a3410eec4a0d2195cdc86f6c1167e72893f0')
- version('1.11.0', sha256='25643296f15f9d11ad4ad550b7c3b92e8974fc56f1ee8e4455501010789ae7b6')
- version('1.10.0', sha256='1d6b5d1c368dc8bcedd9c61b7c7e1a44bad427f8bd34932516aff47c88a31d95')
+ version('1.11', sha256='25643296f15f9d11ad4ad550b7c3b92e8974fc56f1ee8e4455501010789ae7b6')
+ version('1.10', sha256='1d6b5d1c368dc8bcedd9c61b7c7e1a44bad427f8bd34932516aff47c88a31d95')
generator = 'Ninja'
# Workarounds for various TBB issues in DD4hep v1.11
# See https://github.com/AIDASoft/DD4hep/pull/613 .
- patch('tbb-workarounds.patch', when='@1.11.0')
+ patch('tbb-workarounds.patch', when='@1.11')
patch('tbb2.patch', when='@1.12.1')
variant('xercesc', default=False, description="Enable 'Detector Builders' based on XercesC")
@@ -45,7 +50,11 @@ class Dd4hep(CMakePackage):
variant('assimp', default=False, description="Enable CAD interface based on Assimp")
variant('hepmc3', default=False, description="Enable build with hepmc3")
variant('lcio', default=False, description="Enable build with lcio")
- variant('debug', default=False, description="Enable debug build")
+ variant('edm4hep', default=True, description="Enable build with edm4hep")
+ variant('geant4units', default=False, description="Use geant4 units throughout")
+ variant('debug', default=False,
+ description="Enable debug build flag - adds extra info in"
+ " some places in addtion to the debug build type")
depends_on('cmake @3.12:', type='build')
depends_on('ninja', type='build')
@@ -54,9 +63,10 @@ class Dd4hep(CMakePackage):
extends('python')
depends_on('xerces-c', when='+xercesc')
depends_on('geant4@10.2.2:', when='+geant4')
- depends_on('assimp', when='+assimp')
+ depends_on('assimp@5.0.2:', when='+assimp')
depends_on('hepmc3', when="+hepmc3")
depends_on('lcio', when="+lcio")
+ depends_on('edm4hep', when="+edm4hep")
def cmake_args(self):
spec = self.spec
@@ -65,13 +75,18 @@ class Dd4hep(CMakePackage):
if cxxstd == "11":
cxxstd = "14"
args = [
+ self.define_from_variant('DD4HEP_USE_EDM4HEP', 'edm4hep'),
+ self.define_from_variant('DD4HEP_USE_XERCESC', 'xercesc'),
+ self.define_from_variant('DD4HEP_USE_GEANT4', 'geant4'),
+ self.define_from_variant('DD4HEP_USE_LCIO', 'lcio'),
+ self.define_from_variant('DD4HEP_USE_HEPMC3', 'hepmc3'),
+ self.define_from_variant('DD4HEP_USE_GEANT4_UNITS', 'geant4units'),
+ self.define_from_variant('DD4HEP_BUILD_DEBUG', 'debug'),
+ # Downloads assimp from github and builds it on the fly.
+ # However, with spack it is preferrable to have a proper external
+ # dependency, so we disable it.
+ self.define('DD4HEP_LOAD_ASSIMP', False),
"-DCMAKE_CXX_STANDARD={0}".format(cxxstd),
- "-DDD4HEP_USE_XERCESC={0}".format(spec.satisfies('+xercesc')),
- "-DDD4HEP_USE_GEANT4={0}".format(spec.satisfies('+geant4')),
- "-DDD4HEP_USE_LCIO={0}".format(spec.satisfies('+lcio')),
- "-DDD4HEP_LOAD_ASSIMP={0}".format(spec.satisfies('+assimp')),
- "-DDD4HEP_USE_HEPMC3={0}".format(spec.satisfies('+hepmc3')),
- "-DDD4HEP_BUILD_DEBUG={0}".format(spec.satisfies('+debug')),
"-DBUILD_TESTING={0}".format(self.run_tests),
"-DBOOST_ROOT={0}".format(spec['boost'].prefix),
"-DBoost_NO_BOOST_CMAKE=ON",
@@ -82,6 +97,7 @@ class Dd4hep(CMakePackage):
def setup_run_environment(self, env):
# used p.ex. in ddsim to find DDDetectors dir
env.set("DD4hepINSTALL", self.prefix)
+ env.set("DD4HEP", self.prefix.examples)
env.set("DD4hep_DIR", self.prefix)
env.set("DD4hep_ROOT", self.prefix)
@@ -89,11 +105,20 @@ class Dd4hep(CMakePackage):
# dd4hep releases are dashes and padded with a leading zero
# the patch version is omitted when 0
# so for example v01-12-01, v01-12 ...
- major = (str(version[0]).zfill(2))
- minor = (str(version[1]).zfill(2))
- patch = (str(version[2]).zfill(2))
- if version[2] == 0:
- url = "https://github.com/AIDASoft/DD4hep/archive/v%s-%s.tar.gz" % (major, minor)
+ base_url = self.url.rsplit('/', 1)[0]
+ if len(version) == 1:
+ major = version[0]
+ minor, patch = 0, 0
+ elif len(version) == 2:
+ major, minor = version
+ patch = 0
+ else:
+ major, minor, patch = version
+ # By now the data is normalized enough to handle it easily depending
+ # on the value of the patch version
+ if patch == 0:
+ version_str = 'v%02d-%02d.tar.gz' % (major, minor)
else:
- url = "https://github.com/AIDASoft/DD4hep/archive/v%s-%s-%s.tar.gz" % (major, minor, patch)
- return url
+ version_str = 'v%02d-%02d-%02d.tar.gz' % (major, minor, patch)
+
+ return base_url + '/' + version_str
diff --git a/var/spack/repos/builtin/packages/ddd/package.py b/var/spack/repos/builtin/packages/ddd/package.py
index 7c3e548b37..4224ac402e 100644
--- a/var/spack/repos/builtin/packages/ddd/package.py
+++ b/var/spack/repos/builtin/packages/ddd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dealii-parameter-gui/package.py b/var/spack/repos/builtin/packages/dealii-parameter-gui/package.py
index f6e6cdcaaa..3820c8e802 100644
--- a/var/spack/repos/builtin/packages/dealii-parameter-gui/package.py
+++ b/var/spack/repos/builtin/packages/dealii-parameter-gui/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dealii/package.py b/var/spack/repos/builtin/packages/dealii/package.py
index d8a225daba..b6fbfba484 100644
--- a/var/spack/repos/builtin/packages/dealii/package.py
+++ b/var/spack/repos/builtin/packages/dealii/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -78,6 +78,7 @@ class Dealii(CMakePackage, CudaPackage):
description='Compile with Metis')
variant('muparser', default=True,
description='Compile with muParser')
+ # TODO @9.3: disable by default
variant('nanoflann', default=True,
description='Compile with Nanoflann')
variant('netcdf', default=False,
@@ -96,6 +97,14 @@ class Dealii(CMakePackage, CudaPackage):
description='Compile with Slepc (only with Petsc and MPI)')
variant('symengine', default=True,
description='Compile with SymEngine')
+ # TODO @9.3: enable by default
+ variant('simplex', default=False,
+ description='Compile with Simplex support')
+ # TODO @9.3: enable by default, when we know what to do
+ # variant('taskflow', default=False,
+ # description='Compile with multi-threading via Taskflow')
+ # TODO @9.3: disable by default
+ # (NB: only if tbb is removed in 9.3, as planned!!!)
variant('threads', default=True,
description='Compile with multi-threading via TBB')
variant('trilinos', default=True,
@@ -159,10 +168,10 @@ class Dealii(CMakePackage, CudaPackage):
depends_on('ginkgo', when='@9.1:+ginkgo')
depends_on('gmsh+tetgen+netgen+oce', when='@9.0:+gmsh', type=('build', 'run'))
depends_on('gsl', when='@8.5.0:+gsl')
- # FIXME: next line fixes concretization with petsc
+ # TODO: next line fixes concretization with petsc
depends_on('hdf5+mpi+hl+fortran', when='+hdf5+mpi+petsc')
depends_on('hdf5+mpi+hl', when='+hdf5+mpi~petsc')
- # FIXME: concretizer bug. The two lines mimic what comes from PETSc
+ # TODO: concretizer bug. The two lines mimic what comes from PETSc
# but we should not need it
depends_on('metis@5:+int64', when='+metis+int64')
depends_on('metis@5:~int64', when='+metis~int64')
@@ -180,13 +189,17 @@ class Dealii(CMakePackage, CudaPackage):
depends_on('slepc', when='+slepc+petsc+mpi')
depends_on('slepc@:3.6.3', when='@:8.4.1+slepc+petsc+mpi')
depends_on('slepc~arpack', when='+slepc+petsc+mpi+int64')
- depends_on('sundials@:3~pthread', when='@9.0:+sundials')
+ depends_on('sundials@:3~pthread', when='@9.0:9.2+sundials')
+ depends_on('sundials@5:', when='@9.3:+sundials')
+ # depends_on('taskflow', when='@9.3:+taskflow')
depends_on('trilinos gotype=int', when='+trilinos@12.18.1:')
+ # TODO: next line fixes concretization with trilinos and adol-c
+ depends_on('trilinos~exodus~netcdf', when='@9.0:+adol-c+trilinos')
# Both Trilinos and SymEngine bundle the Teuchos RCP library.
# This leads to conflicts between macros defined in the included
# headers when they are not compiled in the same mode.
# See https://github.com/symengine/symengine/issues/1516
- # FIXME: uncomment when the following is fixed
+ # TODO: uncomment when the following is fixed
# https://github.com/spack/spack/issues/11160
# depends_on("symengine@0.4: build_type=Release", when="@9.1:+symengine+trilinos^trilinos~debug") # NOQA: ignore=E501
# depends_on("symengine@0.4: build_type=Debug", when="@9.1:+symengine+trilinos^trilinos+debug") # NOQA: ignore=E501
@@ -194,12 +207,16 @@ class Dealii(CMakePackage, CudaPackage):
depends_on('symengine@0.6:', when='@9.2:+symengine')
depends_on('tbb', when='+threads')
# do not require +rol to make concretization of xsdk possible
- depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+sacado+teuchos', when='+trilinos+mpi~int64~cuda')
- depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+sacado+teuchos~hypre', when='+trilinos+mpi+int64~cuda')
- # FIXME: temporary disable Tpetra when using CUDA due to
+ depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+sacado+teuchos',
+ when='+trilinos+mpi~int64~cuda')
+ depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+sacado+teuchos~hypre',
+ when='+trilinos+mpi+int64~cuda')
+ # TODO: temporary disable Tpetra when using CUDA due to
# namespace "Kokkos::Impl" has no member "cuda_abort"
- depends_on('trilinos@master+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~amesos2~ifpack2~intrepid2~kokkos~tpetra~zoltan2', when='+trilinos+mpi~int64+cuda')
- depends_on('trilinos@master+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~hypre~amesos2~ifpack2~intrepid2~kokkos~tpetra~zoltan2', when='+trilinos+mpi+int64+cuda')
+ depends_on('trilinos@master+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~amesos2~ifpack2~intrepid2~kokkos~tpetra~zoltan2',
+ when='+trilinos+mpi~int64+cuda')
+ depends_on('trilinos@master+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~hypre~amesos2~ifpack2~intrepid2~kokkos~tpetra~zoltan2',
+ when='+trilinos+mpi+int64+cuda')
# Explicitly provide a destructor in BlockVector,
# otherwise deal.II may fail to build with Intel compilers.
@@ -218,8 +235,13 @@ class Dealii(CMakePackage, CudaPackage):
sha256='6f876dc8eadafe2c4ec2a6673864fb451c6627ca80511b6e16f3c401946fdf33',
when='@9.0.0:9.1.1')
+ # Explicitly include a boost header, otherwise deal.II fails to compile
+ # https://github.com/dealii/dealii/pull/11438
+ patch('https://github.com/dealii/dealii/commit/3b815e21c4bfd82c792ba80e4d90314c8bb9edc9.patch',
+ sha256='5f9f411ab9336bf49d8293b9936344bad6e1cf720955b9d8e8b29883593b0ed9',
+ when='@9.2.0 ^boost@1.72.0:')
+
# Check for sufficiently modern versions
- conflicts('cxxstd=98', when='@9.0:')
conflicts('cxxstd=11', when='@9.3:')
# Interfaces added in 8.5.0:
@@ -244,6 +266,13 @@ class Dealii(CMakePackage, CudaPackage):
'onwards. Please explicitly disable this variant '
'via ~{0}'.format(p))
+ # interfaces added in 9.3.0:
+ for p in ['simplex']: # , 'taskflow']:
+ conflicts('+{0}'.format(p), when='@:9.2',
+ msg='The interface to {0} is supported from version 9.3.0 '
+ 'onwards. Please explicitly disable this variant '
+ 'via ~{0}'.format(p))
+
# Interfaces removed in 9.3.0:
conflicts('+nanoflann', when='@9.3.0:',
msg='The interface to Nanoflann was removed from version 9.3.0. '
@@ -384,7 +413,7 @@ class Dealii(CMakePackage, CudaPackage):
'deal.II only supports compilation for a single GPU!'
)
flags = '-arch=sm_{0}'.format(cuda_arch[0])
- # FIXME: there are some compiler errors in dealii
+ # TODO: there are some compiler errors in dealii
# with: flags = ' '.join(self.cuda_flags(cuda_arch))
# Stick with -arch=sm_xy for now.
options.append(
@@ -426,6 +455,11 @@ class Dealii(CMakePackage, CudaPackage):
self.define('PYTHON_LIBRARY', python_library)
])
+ # Simplex support
+ options.append(self.define_from_variant(
+ 'DEAL_II_WITH_SIMPLEX_SUPPORT', 'simplex'
+ ))
+
# Threading
options.append(self.define_from_variant(
'DEAL_II_WITH_THREADS', 'threads'
@@ -453,7 +487,7 @@ class Dealii(CMakePackage, CudaPackage):
for library in (
'gsl', 'hdf5', 'p4est', 'petsc', 'slepc', 'trilinos', 'metis',
'sundials', 'nanoflann', 'assimp', 'gmsh', 'muparser',
- 'symengine', 'ginkgo'):
+ 'symengine', 'ginkgo'): # 'taskflow'):
options.append(self.define_from_variant(
'DEAL_II_WITH_{0}'.format(library.upper()), library
))
diff --git a/var/spack/repos/builtin/packages/debbuild/package.py b/var/spack/repos/builtin/packages/debbuild/package.py
index 3a47236ae7..36a4cd4692 100644
--- a/var/spack/repos/builtin/packages/debbuild/package.py
+++ b/var/spack/repos/builtin/packages/debbuild/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/debugedit/package.py b/var/spack/repos/builtin/packages/debugedit/package.py
new file mode 100644
index 0000000000..c677eb1242
--- /dev/null
+++ b/var/spack/repos/builtin/packages/debugedit/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Debugedit(AutotoolsPackage):
+ """
+ Debugedit was originally part of the rpm project, and is currently
+ being refactored to be provided outside of it. This source will
+ eventually be moved to sourceware or similar, as it is being maintained
+ by RedHat.
+ """
+
+ homepage = "https://code.wildebeest.org/git/user/mjw/debugedit"
+ git = "git://code.wildebeest.org/user/mjw/debugedit"
+
+ version('develop', branch='main')
+
+ depends_on('pkgconfig', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('elfutils') # requires libdw
+ depends_on('libiberty')
+
+ def build(self, spec, prefix):
+ # requires libiberty
+ libiberty = spec['libiberty'].prefix.include.libiberty
+ make('CPPFLAGS=-I%s' % libiberty)
diff --git a/var/spack/repos/builtin/packages/decentralized-internet/package.py b/var/spack/repos/builtin/packages/decentralized-internet/package.py
index fabdba423a..01840a5938 100644
--- a/var/spack/repos/builtin/packages/decentralized-internet/package.py
+++ b/var/spack/repos/builtin/packages/decentralized-internet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/deconseq-standalone/package.py b/var/spack/repos/builtin/packages/deconseq-standalone/package.py
index 82409198eb..f6c95aab4c 100644
--- a/var/spack/repos/builtin/packages/deconseq-standalone/package.py
+++ b/var/spack/repos/builtin/packages/deconseq-standalone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dejagnu/package.py b/var/spack/repos/builtin/packages/dejagnu/package.py
index 6826b947ec..3bd4c80170 100644
--- a/var/spack/repos/builtin/packages/dejagnu/package.py
+++ b/var/spack/repos/builtin/packages/dejagnu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/delly2/package.py b/var/spack/repos/builtin/packages/delly2/package.py
index 0bd2f4f6f4..a674d4e17d 100644
--- a/var/spack/repos/builtin/packages/delly2/package.py
+++ b/var/spack/repos/builtin/packages/delly2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/delphes/package.py b/var/spack/repos/builtin/packages/delphes/package.py
index 09163f8254..bd10d97cca 100644
--- a/var/spack/repos/builtin/packages/delphes/package.py
+++ b/var/spack/repos/builtin/packages/delphes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,11 +15,13 @@ class Delphes(CMakePackage):
git = "https://github.com/delphes/delphes.git"
url = "http://cp3.irmp.ucl.ac.be/downloads/Delphes-3.4.2.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan', 'vvolkl', 'selvaggi']
version('master', branch='master')
- version('3.4.3pre05', tag='3.4.3pre05')
- version('3.4.3pre04', tag='3.4.3pre04')
+ version('3.4.3pre08', tag='3.4.3pre08')
+ version('3.4.3pre06', tag='3.4.3pre06')
version('3.4.2', sha256='d46a7c5474de650befdb89377115feee31f1743107ceb3d8da699be9d48c097b', preferred=True)
version('3.4.1', sha256='4b5a2aeac326643f45b6d45c39ba2302e323eeb86d8cb58843c6e73949b1208a')
version('3.4.0', sha256='c0f9500663a0c3a5c1eddcee598a67b5bcfc9318303195c6cacc0590b4023fa1')
diff --git a/var/spack/repos/builtin/packages/delta/package.py b/var/spack/repos/builtin/packages/delta/package.py
index c24a10ec2c..588b26b2d8 100644
--- a/var/spack/repos/builtin/packages/delta/package.py
+++ b/var/spack/repos/builtin/packages/delta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/denovogear/package.py b/var/spack/repos/builtin/packages/denovogear/package.py
index bc683febef..9af96093c1 100644
--- a/var/spack/repos/builtin/packages/denovogear/package.py
+++ b/var/spack/repos/builtin/packages/denovogear/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dftbplus/package.py b/var/spack/repos/builtin/packages/dftbplus/package.py
index a8b313988e..6186450cd8 100644
--- a/var/spack/repos/builtin/packages/dftbplus/package.py
+++ b/var/spack/repos/builtin/packages/dftbplus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dftd3-lib/package.py b/var/spack/repos/builtin/packages/dftd3-lib/package.py
index 793a312342..21538c4f8f 100644
--- a/var/spack/repos/builtin/packages/dftd3-lib/package.py
+++ b/var/spack/repos/builtin/packages/dftd3-lib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dftd4/package.py b/var/spack/repos/builtin/packages/dftd4/package.py
new file mode 100644
index 0000000000..7723e404b4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dftd4/package.py
@@ -0,0 +1,43 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Dftd4(MesonPackage):
+ """Generally Applicable Atomic-Charge Dependent London Dispersion Correction"""
+
+ homepage = "https://www.chemie.uni-bonn.de/pctc/mulliken-center/software/dftd4"
+ git = "https://github.com/dftd4/dftd4.git"
+
+ version("main", branch="main")
+ version("3.1.0", tag="v3.1.0")
+ version("3.0.0", tag="v3.0.0")
+
+ variant("openmp", default=True, description="Use OpenMP parallelisation")
+ variant("python", default=False, description="Build Python extension module")
+
+ depends_on("blas")
+ depends_on("cmake", type="build")
+ depends_on("lapack")
+ depends_on("meson@0.57.1:", type="build") # mesonbuild/meson#8377
+ depends_on("pkgconfig", type="build")
+ depends_on("py-cffi", when="+python")
+ depends_on("python@3.6:", when="+python")
+
+ def meson_args(self):
+ lapack = self.spec["lapack"].libs.names[0]
+ if lapack == "lapack":
+ lapack = "netlib"
+ elif lapack.startswith("mkl"):
+ lapack = "mkl"
+ elif lapack != "openblas":
+ lapack = "auto"
+
+ return [
+ "-Dlapack={0}".format(lapack),
+ "-Dopenmp={0}".format(str("+openmp" in self.spec).lower()),
+ "-Dpython={0}".format(str("+python" in self.spec).lower()),
+ ]
diff --git a/var/spack/repos/builtin/packages/dftfe/package.py b/var/spack/repos/builtin/packages/dftfe/package.py
index a463aa7ccb..4e3a58a61d 100644
--- a/var/spack/repos/builtin/packages/dftfe/package.py
+++ b/var/spack/repos/builtin/packages/dftfe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dhpmm-f/package.py b/var/spack/repos/builtin/packages/dhpmm-f/package.py
index 5e2bfa3154..d58540209a 100644
--- a/var/spack/repos/builtin/packages/dhpmm-f/package.py
+++ b/var/spack/repos/builtin/packages/dhpmm-f/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dhtest/package.py b/var/spack/repos/builtin/packages/dhtest/package.py
index 12c45e246a..6b6e0cce6c 100644
--- a/var/spack/repos/builtin/packages/dhtest/package.py
+++ b/var/spack/repos/builtin/packages/dhtest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dia/package.py b/var/spack/repos/builtin/packages/dia/package.py
index 19f3897013..129c886876 100644
--- a/var/spack/repos/builtin/packages/dia/package.py
+++ b/var/spack/repos/builtin/packages/dia/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,7 +21,7 @@ class Dia(Package):
depends_on('python')
depends_on('swig')
depends_on('libsm')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('libxinerama')
depends_on('libxrender')
depends_on('libxml2')
diff --git a/var/spack/repos/builtin/packages/dialign-tx/package.py b/var/spack/repos/builtin/packages/dialign-tx/package.py
index 4c1d538531..173532cf37 100644
--- a/var/spack/repos/builtin/packages/dialign-tx/package.py
+++ b/var/spack/repos/builtin/packages/dialign-tx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dialign/package.py b/var/spack/repos/builtin/packages/dialign/package.py
index 406a524fab..fc18227817 100644
--- a/var/spack/repos/builtin/packages/dialign/package.py
+++ b/var/spack/repos/builtin/packages/dialign/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/diamond/package.py b/var/spack/repos/builtin/packages/diamond/package.py
index 9664c3e14b..969336fff0 100644
--- a/var/spack/repos/builtin/packages/diamond/package.py
+++ b/var/spack/repos/builtin/packages/diamond/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/diffmark/package.py b/var/spack/repos/builtin/packages/diffmark/package.py
index 0c86e12d07..55888b1008 100644
--- a/var/spack/repos/builtin/packages/diffmark/package.py
+++ b/var/spack/repos/builtin/packages/diffmark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/diffsplice/package.py b/var/spack/repos/builtin/packages/diffsplice/package.py
index dc3c9f2023..a3589c67e8 100644
--- a/var/spack/repos/builtin/packages/diffsplice/package.py
+++ b/var/spack/repos/builtin/packages/diffsplice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/diffutils/package.py b/var/spack/repos/builtin/packages/diffutils/package.py
index b598410ba8..bcf715fd05 100644
--- a/var/spack/repos/builtin/packages/diffutils/package.py
+++ b/var/spack/repos/builtin/packages/diffutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dihydrogen/package.py b/var/spack/repos/builtin/packages/dihydrogen/package.py
index 03a3f8f671..b7c16facf3 100644
--- a/var/spack/repos/builtin/packages/dihydrogen/package.py
+++ b/var/spack/repos/builtin/packages/dihydrogen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ import os
from spack import *
-class Dihydrogen(CMakePackage, CudaPackage):
+class Dihydrogen(CMakePackage, CudaPackage, ROCmPackage):
"""DiHydrogen is the second version of the Hydrogen fork of the
well-known distributed linear algebra library,
Elemental. DiHydrogen aims to be a basic distributed
@@ -23,6 +23,8 @@ class Dihydrogen(CMakePackage, CudaPackage):
version('develop', branch='develop')
version('master', branch='master')
+ version('0.2.1', sha256='11e2c0f8a94ffa22e816deff0357dde6f82cc8eac21b587c800a346afb5c49ac')
+ version('0.2.0', sha256='e1f597e80f93cf49a0cb2dbc079a1f348641178c49558b28438963bd4a0bdaa4')
version('0.1', sha256='171d4b8adda1e501c38177ec966e6f11f8980bf71345e5f6d87d0a988fef4c4e')
variant('al', default=True,
@@ -31,8 +33,9 @@ class Dihydrogen(CMakePackage, CudaPackage):
description='Enable extra warnings and force tests to be enabled.')
variant('half', default=False,
description='Enable FP16 support on the CPU.')
- variant('legacy', default=False,
- description='Enable the legacy DistConv code branch.')
+ variant('distconv', default=False,
+ description='Support distributed convolutions: spatial, channel, '
+ 'filter.')
variant('nvshmem', default=False,
description='Builds with support for NVSHMEM')
variant('openmp', default=False,
@@ -52,55 +55,56 @@ class Dihydrogen(CMakePackage, CudaPackage):
variant('blas', default='openblas', values=('openblas', 'mkl', 'accelerate', 'essl'),
description='Enable the use of OpenBlas/MKL/Accelerate/ESSL')
- # Override the default set of CUDA architectures with the relevant
- # subset from lib/spack/spack/build_systems/cuda.py
- cuda_arch_values = [
- '30', '32', '35', '37',
- '50', '52', '53',
- '60', '61', '62',
- '70', '72', '75',
- '80'
- ]
- variant('cuda_arch',
- description='CUDA architecture',
- values=spack.variant.auto_or_any_combination_of(*cuda_arch_values))
+ conflicts('~cuda', when='+nvshmem')
depends_on('mpi')
depends_on('catch2', type='test')
# Specify the correct version of Aluminum
depends_on('aluminum@0.4:0.4.99', when='@0.1:0.1.99 +al')
- depends_on('aluminum@0.5:', when='@:0.0,0.2: +al')
+ depends_on('aluminum@0.5.0:0.5.99', when='@0.2.0 +al')
+ depends_on('aluminum@0.7.0:0.7.99', when='@0.2.1 +al')
+ depends_on('aluminum@0.7.0:', when='@:0.0,0.2.1: +al')
# Add Aluminum variants
depends_on('aluminum +cuda +nccl +ht +cuda_rma', when='+al +cuda')
+ depends_on('aluminum +rocm +rccl +ht', when='+al +rocm')
+
+ for arch in CudaPackage.cuda_arch_values:
+ depends_on('aluminum cuda_arch=%s' % arch, when='+al +cuda cuda_arch=%s' % arch)
- depends_on('cuda', when=('+cuda' or '+legacy'))
- depends_on('cudnn', when=('+cuda' or '+legacy'))
+ # variants +rocm and amdgpu_targets are not automatically passed to
+ # dependencies, so do it manually.
+ for val in ROCmPackage.amdgpu_targets:
+ depends_on('aluminum amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
+
+ for when in ['+cuda', '+distconv']:
+ depends_on('cuda', when=when)
+ depends_on('cudnn', when=when)
depends_on('cub', when='^cuda@:10.99')
# Note that #1712 forces us to enumerate the different blas variants
- depends_on('openblas', when='blas=openblas ~openmp_blas ~int64_blas')
- depends_on('openblas +ilp64', when='blas=openblas ~openmp_blas +int64_blas')
- depends_on('openblas threads=openmp', when='blas=openblas +openmp_blas ~int64_blas')
- depends_on('openblas threads=openmp +lip64', when='blas=openblas +openmp_blas +int64_blas')
+ depends_on('openblas', when='blas=openblas')
+ depends_on('openblas +ilp64', when='blas=openblas +int64_blas')
+ depends_on('openblas threads=openmp', when='blas=openblas +openmp_blas')
- depends_on('intel-mkl', when="blas=mkl ~openmp_blas ~int64_blas")
- depends_on('intel-mkl +ilp64', when="blas=mkl ~openmp_blas +int64_blas")
- depends_on('intel-mkl threads=openmp', when='blas=mkl +openmp_blas ~int64_blas')
- depends_on('intel-mkl@2017.1 +openmp +ilp64', when='blas=mkl +openmp_blas +int64_blas')
+ depends_on('intel-mkl', when="blas=mkl")
+ depends_on('intel-mkl +ilp64', when="blas=mkl +int64_blas")
+ depends_on('intel-mkl threads=openmp', when='blas=mkl +openmp_blas')
depends_on('veclibfort', when='blas=accelerate')
conflicts('blas=accelerate +openmp_blas')
- depends_on('essl -cuda', when='blas=essl -openmp_blas ~int64_blas')
- depends_on('essl -cuda +ilp64', when='blas=essl -openmp_blas +int64_blas')
- depends_on('essl threads=openmp', when='blas=essl +openmp_blas ~int64_blas')
- depends_on('essl threads=openmp +ilp64', when='blas=essl +openmp_blas +int64_blas')
+ depends_on('essl', when='blas=essl')
+ depends_on('essl +ilp64', when='blas=essl +int64_blas')
+ depends_on('essl threads=openmp', when='blas=essl +openmp_blas')
depends_on('netlib-lapack +external-blas', when='blas=essl')
- # Legacy builds require cuda
- conflicts('~cuda', when='+legacy')
+ # Distconv builds require cuda
+ conflicts('~cuda', when='+distconv')
+
+ conflicts('+distconv', when='+half')
+ conflicts('+rocm', when='+half')
depends_on('half', when='+half')
@@ -113,6 +117,10 @@ class Dihydrogen(CMakePackage, CudaPackage):
depends_on('llvm-openmp', when='%apple-clang +openmp')
+ depends_on('nvshmem', when='+nvshmem')
+
+ # Idenfity versions of cuda_arch that are too old
+ # from lib/spack/spack/build_systems/cuda.py
illegal_cuda_arch_values = [
'10', '11', '12', '13',
'20', '21',
@@ -131,10 +139,12 @@ class Dihydrogen(CMakePackage, CudaPackage):
spec = self.spec
args = [
+ '-DCMAKE_CXX_STANDARD=17',
'-DCMAKE_INSTALL_MESSAGE:STRING=LAZY',
'-DBUILD_SHARED_LIBS:BOOL=%s' % ('+shared' in spec),
+ '-DH2_ENABLE_ALUMINUM=%s' % ('+al' in spec),
'-DH2_ENABLE_CUDA=%s' % ('+cuda' in spec),
- '-DH2_ENABLE_DISTCONV_LEGACY=%s' % ('+legacy' in spec),
+ '-DH2_ENABLE_DISTCONV_LEGACY=%s' % ('+distconv' in spec),
'-DH2_ENABLE_OPENMP=%s' % ('+openmp' in spec),
'-DH2_ENABLE_FP16=%s' % ('+half' in spec),
'-DH2_ENABLE_HIP_ROCM=%s' % ('+rocm' in spec),
@@ -142,23 +152,17 @@ class Dihydrogen(CMakePackage, CudaPackage):
]
if '+cuda' in spec:
- cuda_arch = spec.variants['cuda_arch'].value
- if len(cuda_arch) == 1 and cuda_arch[0] == 'auto':
- args.append('-DCMAKE_CUDA_FLAGS=-arch=sm_60')
+ if spec.satisfies('^cuda@11.0:'):
+ args.append('-DCMAKE_CUDA_STANDARD=17')
else:
- cuda_arch = [x for x in spec.variants['cuda_arch'].value
- if x != 'auto']
- if cuda_arch:
- args.append('-DCMAKE_CUDA_FLAGS={0}'.format(
- ' '.join(self.cuda_flags(cuda_arch))
- ))
-
- if '+cuda' in spec or '+legacy' in spec:
+ args.append('-DCMAKE_CUDA_STANDARD=14')
+
+ if '+cuda' in spec or '+distconv' in spec:
args.append('-DcuDNN_DIR={0}'.format(
spec['cudnn'].prefix))
if spec.satisfies('^cuda@:10.99'):
- if '+cuda' in spec or '+legacy' in spec:
+ if '+cuda' in spec or '+distconv' in spec:
args.append('-DCUB_DIR={0}'.format(
spec['cub'].prefix))
@@ -173,6 +177,18 @@ class Dihydrogen(CMakePackage, CudaPackage):
'-DOpenMP_libomp_LIBRARY={0}/lib/libomp.dylib'.format(
clang_root)])
+ if '+rocm' in spec:
+ args.extend([
+ '-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix),
+ '-DHIP_CXX_COMPILER={0}'.format(self.spec['hip'].hipcc)])
+ archs = self.spec.variants['amdgpu_target'].value
+ if archs != 'none':
+ arch_str = ",".join(archs)
+ args.append(
+ '-DHIP_HIPCC_FLAGS=--amdgpu-target={0}'
+ ' -g -fsized-deallocation -fPIC'.format(arch_str)
+ )
+
return args
def setup_build_environment(self, env):
diff --git a/var/spack/repos/builtin/packages/dimemas/package.py b/var/spack/repos/builtin/packages/dimemas/package.py
index 6b5ba9690d..5bcf605d49 100644
--- a/var/spack/repos/builtin/packages/dimemas/package.py
+++ b/var/spack/repos/builtin/packages/dimemas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ding-libs/package.py b/var/spack/repos/builtin/packages/ding-libs/package.py
index 2939ef638e..023e3e36e5 100644
--- a/var/spack/repos/builtin/packages/ding-libs/package.py
+++ b/var/spack/repos/builtin/packages/ding-libs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dire/package.py b/var/spack/repos/builtin/packages/dire/package.py
index fd9ae5075c..deb7be8226 100644
--- a/var/spack/repos/builtin/packages/dire/package.py
+++ b/var/spack/repos/builtin/packages/dire/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,8 @@ class Dire(Package):
git = "http://gitlab.com/dire/direforpythia"
list_url = "http://dire.gitlab.io/Downloads.html"
+ tags = ['hep']
+
maintainer = ['mdiefent']
version('2.004', sha256='8cc1213b58fec744fdaa50834560a14b141de99efb2c3e3d3d47f3d6d84b179f')
diff --git a/var/spack/repos/builtin/packages/direnv/package.py b/var/spack/repos/builtin/packages/direnv/package.py
index a021905849..8ffe3c9b50 100644
--- a/var/spack/repos/builtin/packages/direnv/package.py
+++ b/var/spack/repos/builtin/packages/direnv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/discovar/package.py b/var/spack/repos/builtin/packages/discovar/package.py
index 7b9acfc0e4..9904b1fd89 100644
--- a/var/spack/repos/builtin/packages/discovar/package.py
+++ b/var/spack/repos/builtin/packages/discovar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/discovardenovo/package.py b/var/spack/repos/builtin/packages/discovardenovo/package.py
index bf14043f83..69ede74547 100644
--- a/var/spack/repos/builtin/packages/discovardenovo/package.py
+++ b/var/spack/repos/builtin/packages/discovardenovo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/disktype/package.py b/var/spack/repos/builtin/packages/disktype/package.py
index a45fc324a0..8432272a12 100644
--- a/var/spack/repos/builtin/packages/disktype/package.py
+++ b/var/spack/repos/builtin/packages/disktype/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dislin/package.py b/var/spack/repos/builtin/packages/dislin/package.py
index 518db4eba9..528dbeda8d 100644
--- a/var/spack/repos/builtin/packages/dislin/package.py
+++ b/var/spack/repos/builtin/packages/dislin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/distcc/package.py b/var/spack/repos/builtin/packages/distcc/package.py
index 7143a55017..6807292de0 100644
--- a/var/spack/repos/builtin/packages/distcc/package.py
+++ b/var/spack/repos/builtin/packages/distcc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/diy/package.py b/var/spack/repos/builtin/packages/diy/package.py
index efd581f1ba..9889c272aa 100644
--- a/var/spack/repos/builtin/packages/diy/package.py
+++ b/var/spack/repos/builtin/packages/diy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dlib/package.py b/var/spack/repos/builtin/packages/dlib/package.py
new file mode 100644
index 0000000000..fc85237ef3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dlib/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Dlib(CMakePackage):
+ """DLib is a collection of C++ classes to solve common tasks in C++
+ programs, as well as to offer additional functionality to use OpenCV
+ data and to solve computer vision problems."""
+
+ homepage = "https://github.com/dorian3d/DLib"
+ git = "https://github.com/dorian3d/DLib.git"
+
+ version('master', branch='master')
+
+ depends_on('cmake@3.0:', type='build')
+ depends_on('opencv+calib3d+core+features2d+highgui+imgproc+imgcodecs')
+ # Because concretizer is broken...
+ # TODO: remove when original concretizer is obsolete
+ depends_on('opencv+flann')
diff --git a/var/spack/repos/builtin/packages/dlpack/package.py b/var/spack/repos/builtin/packages/dlpack/package.py
index 4e4b74e102..5c0b1c8fa6 100644
--- a/var/spack/repos/builtin/packages/dlpack/package.py
+++ b/var/spack/repos/builtin/packages/dlpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,16 @@ class Dlpack(Package):
"""DLPack is an RFC for common tensor and operator guidelines
in deep learning systems."""
- homepage = "https://github.com/sjtuhpcc/dlpack"
+ homepage = "https://github.com/dmlc/dlpack"
git = "https://github.com/dmlc/dlpack.git"
+ url = "https://github.com/dmlc/dlpack/archive/refs/tags/v0.5.tar.gz"
version('master', branch='master')
+ version('0.5', sha256='9209ac194a175aaab4381313891fba047cb173b2bdd15ac934f83f567f9cd514')
+ version('0.4', sha256='d0a533189ecd45a033b72e276fccaa2122cfd76de125e0a5e126bdea0fec2d24')
+ version('0.3', sha256='703149f5b39ead42cc734c03c7c4bd581fcad1c5a3939e7a4b5bc82f54c3c32a')
+ version('0.2', sha256='419f76ef723d21b72b704b2c4bf718dcd9d2ecd44cd28c8a71798389b7932ae5')
+ version('0.1', sha256='c69b06bfe03711e9d9d3f4d3f307d6dfd7e21d4864a053cca26296d5d05c175c')
def install(self, spec, prefix):
install_tree('include', prefix.include)
diff --git a/var/spack/repos/builtin/packages/dmd/package.py b/var/spack/repos/builtin/packages/dmd/package.py
index b18ab86cf1..15ff5c4d8d 100644
--- a/var/spack/repos/builtin/packages/dmd/package.py
+++ b/var/spack/repos/builtin/packages/dmd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dmidecode/package.py b/var/spack/repos/builtin/packages/dmidecode/package.py
index b6b4015bce..2c6d9e0365 100644
--- a/var/spack/repos/builtin/packages/dmidecode/package.py
+++ b/var/spack/repos/builtin/packages/dmidecode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dmlc-core/package.py b/var/spack/repos/builtin/packages/dmlc-core/package.py
index ed65eab682..3dab3aec02 100644
--- a/var/spack/repos/builtin/packages/dmlc-core/package.py
+++ b/var/spack/repos/builtin/packages/dmlc-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,7 +31,6 @@ class DmlcCore(CMakePackage):
'make/config.mk')
def cmake_args(self):
- spec = self.spec
return [
- '-DUSE_OPENMP=%s' % ('ON' if '+openmp' in spec else 'OFF'),
+ self.define_from_variant('USE_OPENMP', 'openmp'),
]
diff --git a/var/spack/repos/builtin/packages/dmtcp/package.py b/var/spack/repos/builtin/packages/dmtcp/package.py
index 107d0d3b2a..554d86be6d 100644
--- a/var/spack/repos/builtin/packages/dmtcp/package.py
+++ b/var/spack/repos/builtin/packages/dmtcp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dmxproto/package.py b/var/spack/repos/builtin/packages/dmxproto/package.py
index 31959981a0..5770e92ab4 100644
--- a/var/spack/repos/builtin/packages/dmxproto/package.py
+++ b/var/spack/repos/builtin/packages/dmxproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dnsmap/package.py b/var/spack/repos/builtin/packages/dnsmap/package.py
index f0b206e626..7f4d90313f 100644
--- a/var/spack/repos/builtin/packages/dnsmap/package.py
+++ b/var/spack/repos/builtin/packages/dnsmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dnsmasq/package.py b/var/spack/repos/builtin/packages/dnsmasq/package.py
index 8f0ff1bcf8..7b1dc85122 100644
--- a/var/spack/repos/builtin/packages/dnsmasq/package.py
+++ b/var/spack/repos/builtin/packages/dnsmasq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dnstop/package.py b/var/spack/repos/builtin/packages/dnstop/package.py
index 7b310c9677..24790284c1 100644
--- a/var/spack/repos/builtin/packages/dnstop/package.py
+++ b/var/spack/repos/builtin/packages/dnstop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dnstracer/package.py b/var/spack/repos/builtin/packages/dnstracer/package.py
index 4a2603845d..6a6d6a43ce 100644
--- a/var/spack/repos/builtin/packages/dnstracer/package.py
+++ b/var/spack/repos/builtin/packages/dnstracer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/docbook-xml/package.py b/var/spack/repos/builtin/packages/docbook-xml/package.py
index 35b6669a50..ee1a5b830c 100644
--- a/var/spack/repos/builtin/packages/docbook-xml/package.py
+++ b/var/spack/repos/builtin/packages/docbook-xml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class DocbookXml(Package):
list_depth = 1
version('4.5', sha256='4e4e037a2b83c98c6c94818390d4bdd3f6e10f6ec62dd79188594e26190dc7b4')
+ version('4.3', sha256='23068a94ea6fd484b004c5a73ec36a66aa47ea8f0d6b62cc1695931f5c143464')
def install(self, spec, prefix):
install_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/docbook-xsl/package.py b/var/spack/repos/builtin/packages/docbook-xsl/package.py
index 8b7d84007a..7f6a3e1b01 100644
--- a/var/spack/repos/builtin/packages/docbook-xsl/package.py
+++ b/var/spack/repos/builtin/packages/docbook-xsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class DocbookXsl(Package):
url = "https://github.com/docbook/xslt10-stylesheets/releases/download/release%2F1.79.2/docbook-xsl-1.79.2.tar.bz2"
version('1.79.2', sha256='316524ea444e53208a2fb90eeb676af755da96e1417835ba5f5eb719c81fa371')
+ version('1.78.1', sha256='c98f7296ab5c8ccd2e0bc07634976a37f50847df2d8a59bdb1e157664700b467', url='https://sourceforge.net/projects/docbook/files/docbook-xsl/1.78.1/docbook-xsl-1.78.1.tar.bz2')
depends_on('docbook-xml')
diff --git a/var/spack/repos/builtin/packages/dock/package.py b/var/spack/repos/builtin/packages/dock/package.py
index 2493be97f1..16419df45d 100644
--- a/var/spack/repos/builtin/packages/dock/package.py
+++ b/var/spack/repos/builtin/packages/dock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Dock(Package):
homepage = "http://dock.compbio.ucsf.edu/DOCK_6/index.htm"
url = "file://{0}/dock.6.9_source.tar.gz".format(os.getcwd())
+ manual_download = True
version('6.9', sha256='c2caef9b4bb47bb0cb437f6dc21f4c605fd3d0d9cc817fa13748c050dc87a5a8')
diff --git a/var/spack/repos/builtin/packages/dos2unix/package.py b/var/spack/repos/builtin/packages/dos2unix/package.py
index 8630b8369a..ba40a9fdcb 100644
--- a/var/spack/repos/builtin/packages/dos2unix/package.py
+++ b/var/spack/repos/builtin/packages/dos2unix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class Dos2unix(MakefilePackage):
version('7.3.4', sha256='8ccda7bbc5a2f903dafd95900abb5bf5e77a769b572ef25150fde4056c5f30c5')
- depends_on('gettext', type='build')
+ depends_on('gettext')
def install(self, spec, prefix):
make('prefix={0}'.format(prefix), 'install')
diff --git a/var/spack/repos/builtin/packages/dosfstools/package.py b/var/spack/repos/builtin/packages/dosfstools/package.py
index 5d079983fd..f13287c476 100644
--- a/var/spack/repos/builtin/packages/dosfstools/package.py
+++ b/var/spack/repos/builtin/packages/dosfstools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dotconf/package.py b/var/spack/repos/builtin/packages/dotconf/package.py
index 8a11d1a0c6..6a14c58d18 100644
--- a/var/spack/repos/builtin/packages/dotconf/package.py
+++ b/var/spack/repos/builtin/packages/dotconf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dotnet-core-sdk/package.py b/var/spack/repos/builtin/packages/dotnet-core-sdk/package.py
index 16b5a22643..e354e63cc3 100644
--- a/var/spack/repos/builtin/packages/dotnet-core-sdk/package.py
+++ b/var/spack/repos/builtin/packages/dotnet-core-sdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,14 @@ class DotnetCoreSdk(Package):
homepage = "https://www.microsoft.com/net/"
+ version('5.0.4',
+ url='https://download.visualstudio.microsoft.com/download/pr/73a9cb2a-1acd-4d20-b864-d12797ca3d40/075dbe1dc3bba4aa85ca420167b861b6/dotnet-sdk-5.0.201-linux-x64.tar.gz',
+ sha256='9ff77087831e8ca32719566ec9ef537e136cfc02c5ff565e53f5509cc6e7b341')
+
+ version('3.1.13',
+ url='https://download.visualstudio.microsoft.com/download/pr/ab82011d-2549-4e23-a8a9-a2b522a31f27/6e615d6177e49c3e874d05ee3566e8bf/dotnet-sdk-3.1.407-linux-x64.tar.gz',
+ sha256='a744359910206fe657c3a02dfa54092f288a44c63c7c86891e866f0678a7e911')
+
version('2.1.300',
url='https://download.microsoft.com/download/8/8/5/88544F33-836A-49A5-8B67-451C24709A8F/dotnet-sdk-2.1.300-linux-x64.tar.gz',
sha256='fabca4c8825182ff18e5a2f82dfe75aecd10260ee9e7c85a8c4b3d108e5d8e1b')
diff --git a/var/spack/repos/builtin/packages/double-conversion/package.py b/var/spack/repos/builtin/packages/double-conversion/package.py
index 70ef475aaa..e7ac4910d0 100644
--- a/var/spack/repos/builtin/packages/double-conversion/package.py
+++ b/var/spack/repos/builtin/packages/double-conversion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/doxygen/cpp17_namespaces.patch b/var/spack/repos/builtin/packages/doxygen/cpp17_namespaces.patch
new file mode 100644
index 0000000000..3d7e892b80
--- /dev/null
+++ b/var/spack/repos/builtin/packages/doxygen/cpp17_namespaces.patch
@@ -0,0 +1,30 @@
+From 788440279e0f0fdc7dce27ec266d7d5c11bcda1c Mon Sep 17 00:00:00 2001
+From: Matthew Hatch <mrhatch97@gmail.com>
+Date: Thu, 9 May 2019 01:05:43 -0700
+Subject: [PATCH] Fixed C++17-namespace assignment bug
+
+Added scope save and restore before and after namespace parsing
+---
+ src/scanner.l | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/scanner.l b/src/scanner.l
+index d3902b38d..5395e499c 100644
+--- a/src/scanner.l
++++ b/src/scanner.l
+@@ -3941,6 +3941,7 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
+ else
+ {
+ current->endBodyLine = yyLineNr;
++ Entry * original_root = current_root; // save root this namespace is in
+ if (current->section == Entry::NAMESPACE_SEC && current->type == "namespace")
+ {
+ int split_point;
+@@ -4005,6 +4006,7 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
+ )
+ { // namespaces and interfaces and java classes ends with a closing bracket without semicolon
+ current->reset();
++ current_root = original_root; // restore scope from before namespace descent
+ initEntry();
+ memspecEntry = 0;
+ BEGIN( FindMembers ) ;
diff --git a/var/spack/repos/builtin/packages/doxygen/gcc-partial-inlining-bug.patch b/var/spack/repos/builtin/packages/doxygen/gcc-partial-inlining-bug.patch
new file mode 100644
index 0000000000..13d0a78e80
--- /dev/null
+++ b/var/spack/repos/builtin/packages/doxygen/gcc-partial-inlining-bug.patch
@@ -0,0 +1,14 @@
+--- a/src/CMakeLists.txt 2021-02-10 22:55:14.766411242 -0500
++++ b/src/CMakeLists.txt 2021-02-10 23:10:17.651541580 -0500
+@@ -305,6 +305,11 @@
+ xmldocvisitor.cpp
+ xmlgen.cpp
+ )
++# Work aroung for GCC bug getting stuck in an infinite loop
++if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
++set_source_files_properties(doxygen.cpp PROPERTIES COMPILE_FLAGS -fno-partial-inlining)
++endif()
++
+ add_sanitizers(doxymain)
+
+ # LLVM/clang headers give a lot of warnings with -Wshadow and -Wcast-align so we disable them for
diff --git a/var/spack/repos/builtin/packages/doxygen/package.py b/var/spack/repos/builtin/packages/doxygen/package.py
index d237fc3d26..fa22b56754 100644
--- a/var/spack/repos/builtin/packages/doxygen/package.py
+++ b/var/spack/repos/builtin/packages/doxygen/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import re
class Doxygen(CMakePackage):
@@ -17,6 +18,8 @@ class Doxygen(CMakePackage):
git = "https://github.com/doxygen/doxygen.git"
# Doxygen versions on GitHub
+ version('1.9.1', commit='ef9b20ac7f8a8621fcfc299f8bd0b80422390f4b')
+ version('1.9.0', commit='71777ff3973331bd9453870593a762e184ba9f78')
version('1.8.20', commit='f246dd2f1c58eea39ea3f50c108019e4d4137bd5')
version('1.8.17', commit='b5fa3cd1c6e6240e20d3b80a70e3f04040b32021')
version('1.8.16', commit='cfd73d5c4d1a66c620a3b7c08b72a3f3c3f94255')
@@ -33,14 +36,38 @@ class Doxygen(CMakePackage):
variant('mscgen', default=False,
description='Build with support for code graphs from mscgen.')
+ executables = ['doxygen']
+
+ @classmethod
+ def determine_version(cls, exe):
+ output = Executable(exe)('-v', output=str, error=str)
+ match = re.search(r"^([\d\.]+)$", output)
+ return match.group(1) if match else None
+
+ @classmethod
+ def determine_variants(cls, exes, version_str):
+ variants = ''
+ if which('dot'):
+ variants += "+graphviz"
+ else:
+ variants += "~graphviz"
+
+ if which('mscgen'):
+ variants += "+mscgen"
+ else:
+ variants += "~mscgen"
+
+ return variants
+
depends_on("cmake@2.8.12:", type='build')
depends_on("python", type='build') # 2 or 3 OK; used in CMake build
depends_on("iconv")
depends_on("flex", type='build')
+ depends_on("bison", type='build')
# code.l just checks subminor version <=2.5.4 or >=2.5.33
# but does not recognize 2.6.x as newer...could be patched if needed
depends_on("flex@2.5.39", type='build', when='@1.8.10')
- depends_on("bison", type='build')
+ depends_on("bison@2.7:", type='build', when='@1.8.10:')
# optional dependencies
depends_on("graphviz", when="+graphviz", type='run')
@@ -51,6 +78,13 @@ class Doxygen(CMakePackage):
# Also - https://github.com/doxygen/doxygen/pull/6588
patch('shared_ptr.patch', when='@1.8.14')
+ # Support C++17's nested namespaces a::b::c. For details about this patch, see
+ # https://github.com/doxygen/doxygen/pull/6977/commits/788440279e0f0fdc7dce27ec266d7d5c11bcda1c
+ patch('cpp17_namespaces.patch', when='@1.8.15')
+
+ # Workaround for gcc getting stuck in an infinite loop
+ patch('gcc-partial-inlining-bug.patch', when='@1.8.20: %gcc@7')
+
def patch(self):
if self.spec['iconv'].name == 'libc':
return
diff --git a/var/spack/repos/builtin/packages/dpdk/package.py b/var/spack/repos/builtin/packages/dpdk/package.py
index b01c41be84..0d3809e489 100644
--- a/var/spack/repos/builtin/packages/dpdk/package.py
+++ b/var/spack/repos/builtin/packages/dpdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,15 +19,9 @@ class Dpdk(MakefilePackage):
version('19.05', sha256='5fea95cb726e6adaa506dab330e79563ccd4dacf03f126c826aabdced605d32b')
version('19.02', sha256='04885d32c86fff5aefcfffdb8257fed405233602dbcd22f8298be13c2e285a50')
- depends_on('numactl')
+ conflicts('target=aarch64:', msg='DPDK is not supported on aarch64.')
- @when('%gcc target=aarch64:')
- def patch(self):
- filter_file(
- r'^MACHINE_CFLAGS',
- '#MACHINE_CFLAGS',
- join_path('mk', 'machine', 'armv8a', 'rte.vars.mk')
- )
+ depends_on('numactl')
def build(self, spec, prefix):
make('defconfig')
diff --git a/var/spack/repos/builtin/packages/draco/package.py b/var/spack/repos/builtin/packages/draco/package.py
index eed12b8e75..242c7bcad6 100644
--- a/var/spack/repos/builtin/packages/draco/package.py
+++ b/var/spack/repos/builtin/packages/draco/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,9 @@ class Draco(CMakePackage):
maintainers = ['KineticTheory']
version('develop', branch='develop')
+ version('7.10.0', sha256='3530263a23a648fc7ae65748568f0a725a8b2c9bac9a41cc3cb1250c4af579de')
+ version('7.9.1', sha256='c8fd029d5b74afc68670f7d449d60c24f2d284c9d6a944a2d3dce6efeb6ad097')
+ version('7.9.0', sha256='17b54301897da0d4f9b91fef15cc2ec5e6c65a8e8c1c09e6e7b516c0fb82b50f')
version('7.8.0', sha256='f6de794457441f69025619be58810bca432f3e0dd773ea9b9a7977b1dc09530d')
version('7.7.0', sha256='eb7fffbcba48e16524f619d261192ead129f968c59f3581f3217b89590812ddf')
version('7.6.0', sha256='c2c6b329620d7bcb0f2fc14371f105dfb80a84e7c5adbb34620777034b15c7c9')
@@ -41,6 +44,7 @@ class Draco(CMakePackage):
variant('lapack', default=True, description='Enable LAPACK wrapper')
variant('libquo', default=True, description='Enable Quo wrapper')
variant('parmetis', default=True, description='Enable Parmetis support')
+ variant('pythontools', default=False, description='Enable support for extra python tools')
variant('qt', default=False, description='Enable Qt support')
variant('superlu_dist', default=True, description='Enable SuperLU-DIST support')
@@ -48,6 +52,7 @@ class Draco(CMakePackage):
depends_on('cmake@3.11:', when='@7.0.0:7.1.99', type='build')
depends_on('cmake@3.14:', when='@7.2.0:7.6.99', type='build')
depends_on('cmake@3.17:', when='@7.7:', type='build')
+ depends_on('cmake@3.18:', when='@7.9:', type='build')
depends_on('gsl')
depends_on('mpi@3:', type=('build', 'link', 'run'))
depends_on('numdiff', type='build')
@@ -66,6 +71,7 @@ class Draco(CMakePackage):
depends_on('qt', when='+qt',
type=('build', 'link', 'run'))
depends_on('superlu-dist@:5.99', when='@:7.6.99+superlu_dist')
+ depends_on('py-matplotlib', when='+pythontools', type=('run'))
conflicts('+cuda', when='@:7.6.99')
conflicts('+caliper', when='@:7.7.99')
@@ -86,8 +92,9 @@ class Draco(CMakePackage):
options = []
options.extend([
'-Wno-dev',
- '-DBUILD_TESTING={0}'.format('ON' if self.run_tests else 'OFF'),
- '-DUSE_CUDA={0}'.format('ON' if '+cuda' in self.spec else 'OFF')
+ self.define('BUILD_TESTING', self.run_tests),
+ '-DUSE_CUDA={0}'.format('ON' if '+cuda' in self.spec else 'OFF'),
+ '-DUSE_QT={0}'.format('ON' if '+qt' in self.spec else 'OFF')
])
return options
diff --git a/var/spack/repos/builtin/packages/dracut/package.py b/var/spack/repos/builtin/packages/dracut/package.py
index 99cc7ca2c2..b78dd96744 100644
--- a/var/spack/repos/builtin/packages/dracut/package.py
+++ b/var/spack/repos/builtin/packages/dracut/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dramsim2/package.py b/var/spack/repos/builtin/packages/dramsim2/package.py
index df2d42af43..411ae82164 100644
--- a/var/spack/repos/builtin/packages/dramsim2/package.py
+++ b/var/spack/repos/builtin/packages/dramsim2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dray/package.py b/var/spack/repos/builtin/packages/dray/package.py
index 9dbf66afd9..b426f4baa1 100644
--- a/var/spack/repos/builtin/packages/dray/package.py
+++ b/var/spack/repos/builtin/packages/dray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -33,7 +33,11 @@ class Dray(Package, CudaPackage):
maintainers = ['mclarsen', 'cyrush']
- version('develop', branch='develop', submodules='True')
+ version('develop', branch='develop', submodules='True')
+ version('0.1.6', sha256='43f39039599e3493cbbaeaf5621b611bef301ff504bed6e32c98f30bb2179e92')
+ version('0.1.5', sha256='aaf0975561a8e7910b9353e2dc30bd78abf9f01c306ec042422b7da223d3a8b8')
+ version('0.1.4', sha256='e763a3aa537b23486a4788f9d68db0a3eb545f6a2e617cd7c8a876682ca2d0a0')
+ version('0.1.3', sha256='b2f624a072463189997343b1ed911cc34c9bb1b6c7f0c3e48efeb40c05dd0d92')
version('0.1.2', sha256='46937f20124b28dc78a634e8e063a3e7a3bbfd9f424ce2680b08417010c376da')
version('0.1.1', sha256='e5daa49ee3367c087f5028dc5a08655298beb318014c6f3f65ef4a08fcbe346c')
version('0.1.0', sha256='8b341138e1069361351e0a94478608c5af479cca76e2f97d556229aed45c0169')
@@ -65,20 +69,20 @@ class Dray(Package, CudaPackage):
depends_on("apcomp~shared~openmp~mpi", when="~shared~openmp~mpi")
depends_on("apcomp+shared~openmp~mpi", when="+shared~openmp~mpi")
- depends_on("raja@0.9.0+cuda~openmp+shared", when="+cuda~openmp+shared")
- depends_on("raja@0.9.0+cuda+openmp+shared", when="+cuda+openmp+shared")
- depends_on("raja@0.9.0+cuda~openmp~shared", when="+cuda~openmp~shared")
- depends_on("raja@0.9.0+cuda+openmp~shared", when="+cuda+openmp~shared")
+ depends_on("raja+cuda~openmp+shared", when="+cuda~openmp+shared")
+ depends_on("raja+cuda+openmp+shared", when="+cuda+openmp+shared")
+ depends_on("raja+cuda~openmp~shared", when="+cuda~openmp~shared")
+ depends_on("raja+cuda+openmp~shared", when="+cuda+openmp~shared")
- depends_on("raja@0.9.0~cuda~openmp+shared", when="~cuda~openmp+shared")
- depends_on("raja@0.9.0~cuda+openmp+shared", when="~cuda+openmp+shared")
- depends_on("raja@0.9.0~cuda~openmp~shared", when="~cuda~openmp~shared")
- depends_on("raja@0.9.0~cuda+openmp~shared", when="~cuda+openmp~shared")
+ depends_on("raja~cuda~openmp+shared", when="~cuda~openmp+shared")
+ depends_on("raja~cuda+openmp+shared", when="~cuda+openmp+shared")
+ depends_on("raja~cuda~openmp~shared", when="~cuda~openmp~shared")
+ depends_on("raja~cuda+openmp~shared", when="~cuda+openmp~shared")
- depends_on("umpire@1.0.0+cuda+shared", when="+cuda+shared")
- depends_on("umpire@1.0.0+cuda~shared", when="+cuda~shared")
- depends_on("umpire@1.0.0~cuda+shared", when="~cuda+shared")
- depends_on("umpire@1.0.0~cuda~shared", when="~cuda~shared")
+ depends_on("umpire+cuda+shared", when="+cuda+shared")
+ depends_on("umpire+cuda~shared", when="+cuda~shared")
+ depends_on("umpire~cuda+shared", when="~cuda+shared")
+ depends_on("umpire~cuda~shared", when="~cuda~shared")
depends_on("mfem+shared+conduit~threadsafe", when="+shared")
depends_on("mfem~shared+conduit~threadsafe", when="~shared")
@@ -231,8 +235,12 @@ class Dray(Package, CudaPackage):
#######################
if "+test" in spec:
cfg.write(cmake_cache_entry("DRAY_ENABLE_TESTS", "ON"))
+ # we need this to control BLT tests
+ cfg.write(cmake_cache_entry("ENABLE_TESTS", "ON"))
else:
cfg.write(cmake_cache_entry("DRAY_ENABLE_TESTS", "OFF"))
+ # we need this to control BLT tests
+ cfg.write(cmake_cache_entry("ENABLE_TESTS", "OFF"))
#######################
# Utilities
@@ -251,7 +259,7 @@ class Dray(Package, CudaPackage):
cfg.write(cmake_cache_entry("ENABLE_LOGGING", "OFF"))
#######################
- # Logging
+ # Status
#######################
if "+stats" in spec:
cfg.write(cmake_cache_entry("ENABLE_STATS", "ON"))
@@ -285,34 +293,3 @@ class Dray(Package, CudaPackage):
host_cfg_fname = os.path.abspath(host_cfg_fname)
tty.info("spack generated conduit host-config file: " + host_cfg_fname)
return host_cfg_fname
-
- def cmake_args(self):
- spec = self.spec
-
- options = []
-
- if '+openmp' in spec:
- options.extend([
- '-DENABLE_OPENMP=On'])
-
- if '+cuda' in spec:
- options.extend([
- '-DENABLE_CUDA=On',
- '-DCUDA_TOOLKIT_ROOT_DIR=%s' % (spec['cuda'].prefix)])
- if 'cuda_arch' in spec.variants:
- cuda_value = spec.variants['cuda_arch'].value
- cuda_arch = cuda_value[0]
- options.append('-DCUDA_ARCH=sm_{0}'.format(cuda_arch))
- else:
- options.extend(['-DENABLE_CUDA=OFF'])
-
- options.extend(['-DRAJA_DIR=%s' % (spec['raja'].prefix)])
- options.extend(['-DMFEM_DIR=%s' % (spec['mfem'].prefix)])
- options.extend(['-DUMPIRE_DIR=%s' % (spec['umpire'].prefix)])
- options.extend(['-DCONDUIT_DIR=%s' % (spec['conduit'].prefix)])
- options.extend(['-DDRAY_ENABLE_TESTS=OFF'])
- options.extend(['-DENABLE_LOGGING=OFF'])
- options.extend(['-DENABLE_STATS=OFF'])
- options.extend(['../src'])
-
- return options
diff --git a/var/spack/repos/builtin/packages/dri2proto/package.py b/var/spack/repos/builtin/packages/dri2proto/package.py
index 66b73a7bbc..a1aa85104d 100644
--- a/var/spack/repos/builtin/packages/dri2proto/package.py
+++ b/var/spack/repos/builtin/packages/dri2proto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dri3proto/package.py b/var/spack/repos/builtin/packages/dri3proto/package.py
index e66ce72403..1d03830f98 100644
--- a/var/spack/repos/builtin/packages/dri3proto/package.py
+++ b/var/spack/repos/builtin/packages/dri3proto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/drill/package.py b/var/spack/repos/builtin/packages/drill/package.py
index 01925ec337..d2ecb83ebc 100644
--- a/var/spack/repos/builtin/packages/drill/package.py
+++ b/var/spack/repos/builtin/packages/drill/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dropwatch/package.py b/var/spack/repos/builtin/packages/dropwatch/package.py
index 1af4a50156..873797d561 100644
--- a/var/spack/repos/builtin/packages/dropwatch/package.py
+++ b/var/spack/repos/builtin/packages/dropwatch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/druid/package.py b/var/spack/repos/builtin/packages/druid/package.py
index b0416e6df4..ed9ccfcd52 100644
--- a/var/spack/repos/builtin/packages/druid/package.py
+++ b/var/spack/repos/builtin/packages/druid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ds/package.py b/var/spack/repos/builtin/packages/ds/package.py
index 1906450f4c..1ed9e4deb5 100644
--- a/var/spack/repos/builtin/packages/ds/package.py
+++ b/var/spack/repos/builtin/packages/ds/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dsdp/package.py b/var/spack/repos/builtin/packages/dsdp/package.py
index f10c9c2756..98663ada38 100644
--- a/var/spack/repos/builtin/packages/dsdp/package.py
+++ b/var/spack/repos/builtin/packages/dsdp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dsqss/ctest.patch b/var/spack/repos/builtin/packages/dsqss/ctest.patch
new file mode 100644
index 0000000000..1920d6290d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dsqss/ctest.patch
@@ -0,0 +1,24 @@
+diff -u -r -N a/test/dla/CMakeLists.txt b/test/dla/CMakeLists.txt
+--- a/test/dla/CMakeLists.txt 2020-10-23 17:48:19.000000000 +0900
++++ b/test/dla/CMakeLists.txt 2020-10-23 17:49:46.000000000 +0900
+@@ -2,7 +2,7 @@
+ configure_file(test.py ${CMAKE_CURRENT_BINARY_DIR} COPYONLY)
+ file(GLOB jsons "*.json")
+ set(BUILD_TOOL_DIR ${CMAKE_BINARY_DIR}/tool)
+-set(PYTHONPATH "${BUILD_TOOL_DIR}:${pythonpath_build}")
++set(PYTHONPATH "${BUILD_TOOL_DIR}:${pythonpath_build}:$ENV{PYTHONPATH}")
+ foreach(json ${jsons})
+ configure_file(${json} ${CMAKE_CURRENT_BINARY_DIR} COPYONLY)
+ file(RELATIVE_PATH jsonfilename ${CMAKE_CURRENT_SOURCE_DIR} ${json})
+diff -u -r -N a/test/pmwa/CMakeLists.txt b/test/pmwa/CMakeLists.txt
+--- a/test/pmwa/CMakeLists.txt 2020-10-28 14:22:18.000000000 +0900
++++ b/test/pmwa/CMakeLists.txt 2020-10-28 14:22:57.000000000 +0900
+@@ -10,7 +10,7 @@
+ file(RELATIVE_PATH jsonfilename ${CMAKE_CURRENT_SOURCE_DIR} ${json})
+
+ add_test(NAME "pmwa/${jsonfilename}"
+- COMMAND env PYTHONPATH=${pythonpath_build} ${PYTHON_EXECUTABLE} test.py ${CMAKE_BINARY_DIR}/src/pmwa ${CMAKE_CURRENT_BINARY_DIR}/${jsonfilename}
++ COMMAND env PYTHONPATH=${pythonpath_build}:$ENV{PYTHONPATH} ${PYTHON_EXECUTABLE} test.py ${CMAKE_BINARY_DIR}/src/pmwa ${CMAKE_CURRENT_BINARY_DIR}/${jsonfilename}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/
+ )
+ endforeach(json)
diff --git a/var/spack/repos/builtin/packages/dsqss/package.py b/var/spack/repos/builtin/packages/dsqss/package.py
new file mode 100644
index 0000000000..60e23b2ce2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dsqss/package.py
@@ -0,0 +1,72 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+import sys
+
+
+class Dsqss(CMakePackage):
+ """DSQSS is a program package for solving quantum many-body
+ problems defined on lattices. It is based on the quantum Monte
+ Carlo method in Feynman's path integral representation. """
+
+ homepage = "https://www.pasums.issp.u-tokyo.ac.jp/dsqss/en/"
+ url = "https://github.com/issp-center-dev/dsqss/releases/download/v2.0.3/dsqss-v2.0.3.tar.gz"
+
+ version('2.0.3', sha256='11255dd1f1317fb4ac2d6ae95535f027d627d03f5470717cd277dd9ab94496e0')
+
+ variant("mpi", default=True, description="build mpi support")
+
+ depends_on('mpi', when='+mpi')
+ depends_on('python', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-toml', type=('build', 'run'))
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pip', type='build')
+ depends_on('py-wheel', type='build')
+
+ patch('spackpip.patch')
+ patch('ctest.patch')
+
+ extends('python')
+
+ # Built-in tests are stored as JSON files.
+ # The archive contains "resource fork" files such as "._dimer_1.json".
+ # In Linux, the test system tried to test "._dimer_1.json" and failed.
+ @run_before('cmake')
+ def rm_macos(self):
+ if sys.platform != 'darwin':
+ for mfile in find('test', '._*.json', recursive=True):
+ force_remove(mfile)
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('ENABLE_MPI', 'mpi')
+ ]
+
+ return args
+
+ def test(self):
+ test01 = find(self.prefix.share, '01_spindimer')[0]
+ copy(join_path(test01, 'std.toml'), '.')
+ # prepare
+ pythonexe = self.spec['python'].command.path
+ opts = [self.spec.prefix.bin.dla_pre, 'std.toml']
+ self.run_test(pythonexe, options=opts)
+ # (mpi) run
+ opts = []
+ if self.spec.satisfies('+mpi'):
+ exe_name = self.spec['mpi'].prefix.bin.mpirun
+ opts.extend(['-n', '1'])
+ opts.append(join_path(self.prefix.bin, 'dla'))
+ else:
+ exe_name = 'dla'
+ opts.append('param.in')
+ expected = ['R ene = -3.74300000e-01 2.96344394e-03']
+ self.run_test(exe_name, options=opts)
+ self.run_test('cat', options=['sample.log'], expected=expected)
diff --git a/var/spack/repos/builtin/packages/dsqss/spackpip.patch b/var/spack/repos/builtin/packages/dsqss/spackpip.patch
new file mode 100644
index 0000000000..5e8f4d9dc3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dsqss/spackpip.patch
@@ -0,0 +1,30 @@
+--- a/tool/cmake/install.sh.in 2021-03-01 15:31:40.510128100 +0900
++++ b/tool/cmake/install.sh.in 2021-03-01 15:33:07.203367716 +0900
+@@ -1,16 +1,9 @@
+-export PYTHONPATH=@DSQSS_PYTHONPATH@
++export PYTHONPATH=$PYTHONPATH:@DSQSS_PYTHONPATH@
+
+ cd @CMAKE_CURRENT_BINARY_DIR@
+
+-if ! @PYTHON_EXECUTABLE@ -m pip --version >/dev/null 2>/dev/null ;then
+- set -e
+- wget https://bootstrap.pypa.io/get-pip.py -O get-pip.py
+- PIP_USER=0 @PYTHON_EXECUTABLE@ get-pip.py --prefix=@CMAKE_INSTALL_PREFIX@
+-fi
+
+ set -e
+-PIP_USER=0 @PYTHON_EXECUTABLE@ -m pip install -U pip --prefix=@CMAKE_INSTALL_PREFIX@
+-PIP_USER=0 @PYTHON_EXECUTABLE@ -m pip install wheel --prefix=@CMAKE_INSTALL_PREFIX@ --no-warn-script-location
+ DSQSS_VERSION=$(@PYTHON_EXECUTABLE@ setup.py --version)
+ @PYTHON_EXECUTABLE@ setup.py bdist_wheel --universal
+ mkdir -p temp
+--- a/tool/setup.py 2021-03-01 15:34:16.242136754 +0900
++++ b/tool/setup.py 2021-03-01 15:34:36.381650889 +0900
+@@ -26,7 +26,6 @@
+ license="GPLv3",
+ packages=["dsqss", 'dsqss.lattice_factory'],
+ python_requires=">=2.7",
+- install_requires=["numpy", "scipy", "toml"],
+ entry_points={
+ "console_scripts": [
+ "dla_hamgen = dsqss.std_model:main",
diff --git a/var/spack/repos/builtin/packages/dsrc/package.py b/var/spack/repos/builtin/packages/dsrc/package.py
index 5635fc4423..10235483b5 100644
--- a/var/spack/repos/builtin/packages/dsrc/package.py
+++ b/var/spack/repos/builtin/packages/dsrc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dssp/package.py b/var/spack/repos/builtin/packages/dssp/package.py
index 626464b67c..2128467714 100644
--- a/var/spack/repos/builtin/packages/dssp/package.py
+++ b/var/spack/repos/builtin/packages/dssp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,16 @@ class Dssp(AutotoolsPackage):
depends_on('m4', type='build')
depends_on('boost@1.48:')
+ # pdb data download.
+ # 1ALK.pdb - PDB (protein data bank) : https://www.rcsb.org/
+ resource(
+ name="pdb_data",
+ url="https://files.rcsb.org/download/1ALK.pdb",
+ sha256="99f4cd7ab63b35d64eacc85dc1491af5a03a1a0a89f2c9aadfb705c591b4b6c9",
+ expand=False,
+ placement='pdb'
+ )
+
def configure_args(self):
args = [
"--with-boost=%s" % self.spec['boost'].prefix]
@@ -30,3 +40,11 @@ class Dssp(AutotoolsPackage):
def edit(self):
makefile = FileFilter(join_path(self.stage.source_path, 'Makefile'))
makefile.filter('.*-Werror .*', ' -Wno-error \\')
+
+ @run_after('install')
+ def cache_test_sources(self):
+ self.cache_extra_test_sources('pdb')
+
+ def test(self):
+ pdb_path = join_path(self.install_test_root, 'pdb')
+ self.run_test('mkdssp', options=['1ALK.pdb', '1alk.dssp'], work_dir=pdb_path)
diff --git a/var/spack/repos/builtin/packages/dtcmp/package.py b/var/spack/repos/builtin/packages/dtcmp/package.py
index e9e17c06f9..cf1bbc233e 100644
--- a/var/spack/repos/builtin/packages/dtcmp/package.py
+++ b/var/spack/repos/builtin/packages/dtcmp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dtf/package.py b/var/spack/repos/builtin/packages/dtf/package.py
new file mode 100644
index 0000000000..e1c590c657
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dtf/package.py
@@ -0,0 +1,64 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Dtf(AutotoolsPackage):
+ """DTF (Data Transfer Framework) is a general I/O arbitration
+ middleware designed for multi-component applications that use
+ file-base component coupling.
+
+ DTF works for applications that use the Parallel netCDF (PnetCDF)
+ library for file I/O. It allows the user to transparently replace
+ file I/O with sending the data directly between the components.
+ """
+
+ homepage = "https://github.com/maneka07/DTF"
+ git = "https://github.com/maneka07/DTF.git"
+
+ version('master', branch='master')
+
+ variant('cxx', default=True, description='Build pnetcdf the C++ Interface')
+ variant('fortran', default=True, description='Build pnetcdf the Fortran Interface')
+
+ depends_on('mpi')
+ depends_on('m4', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('perl', type='build')
+
+ configure_directory = 'pnetcdf'
+
+ def setup_build_environment(self, env):
+ dtf_srcdir = join_path(self.stage.source_path, 'libdtf')
+ env.append_path('LD_LIBRARY_PATH', self.prefix.lib)
+ env.append_path('LD_LIBRARY_PATH', dtf_srcdir)
+
+ @run_before('autoreconf')
+ def build_dtf(self):
+ with working_dir('libdtf'):
+ make('all', 'MPICC={0}'.format(self.spec['mpi'].mpicc))
+
+ def configure_args(self):
+ dtf_srcdir = join_path(self.stage.source_path, 'libdtf')
+ args = [
+ 'CFLAGS=-I{0}'.format(dtf_srcdir),
+ 'LDFLAGS=-L{0} -ldtf'.format(dtf_srcdir)
+ ]
+ args += self.enable_or_disable('cxx')
+ args += self.enable_or_disable('fortran')
+ return args
+
+ def install(self, spec, prefix):
+ with working_dir('pnetcdf'):
+ make('install')
+ with working_dir('libdtf'):
+ install('libdtf.*', prefix.lib)
+ install('dtf.h', prefix.include)
+ install_tree('doc', prefix.doc)
+ install_tree('example', prefix.example)
+ install('COPYRIGHT', prefix)
diff --git a/var/spack/repos/builtin/packages/duperemove/package.py b/var/spack/repos/builtin/packages/duperemove/package.py
index 6a061993c5..20bee13b1f 100644
--- a/var/spack/repos/builtin/packages/duperemove/package.py
+++ b/var/spack/repos/builtin/packages/duperemove/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/dyninst/package.py b/var/spack/repos/builtin/packages/dyninst/package.py
index ecc3fbfeb6..415cff8db1 100644
--- a/var/spack/repos/builtin/packages/dyninst/package.py
+++ b/var/spack/repos/builtin/packages/dyninst/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Dyninst(CMakePackage):
maintainers = ['hainest']
version('master', branch='master')
+ version('11.0.0', tag='v11.0.0')
version('10.2.1', tag='v10.2.1')
version('10.2.0', tag='v10.2.0')
version('10.1.0', tag='v10.1.0')
@@ -40,11 +41,16 @@ class Dyninst(CMakePackage):
depends_on('boost@1.61.0:' + boost_libs, when='@10.1.0:')
depends_on('boost@1.61.0:1.69.99' + boost_libs, when='@:10.0.99')
+ depends_on('boost@1.67.0:' + boost_libs, when='@11.0.0:')
+
depends_on('libiberty+pic')
# Dyninst uses elfutils starting with 9.3.0, and used libelf
# before that.
- depends_on('elfutils', type='link', when='@9.3.0:')
+ # NB: Parallel DWARF parsing in Dyninst 10.2.0 requires a thread-
+ # safe libdw
+ depends_on('elfutils@0.178:', type='link', when='@10.2.0:')
+ depends_on('elfutils', type='link', when='@9.3.0:10.1.99')
depends_on('libelf', type='link', when='@:9.2.99')
# Dyninst uses libdw from elfutils starting with 10.0, and used
@@ -75,6 +81,9 @@ class Dyninst(CMakePackage):
conflicts('%xl')
conflicts('%xl_r')
+ # Version 11.0 requires a C++11-compliant ABI
+ conflicts('%gcc@:5.99.99', when='@11.0.0:')
+
# Versions 9.3.x used cotire, but have no knob to turn it off.
# Cotire has no real use for one-time builds and can break
# parallel builds with both static and shared libs.
diff --git a/var/spack/repos/builtin/packages/dysco/package.py b/var/spack/repos/builtin/packages/dysco/package.py
index c7d4978b24..eb66ad2857 100644
--- a/var/spack/repos/builtin/packages/dysco/package.py
+++ b/var/spack/repos/builtin/packages/dysco/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/e2fsprogs/package.py b/var/spack/repos/builtin/packages/e2fsprogs/package.py
index a189073604..f5a4b1a402 100644
--- a/var/spack/repos/builtin/packages/e2fsprogs/package.py
+++ b/var/spack/repos/builtin/packages/e2fsprogs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ea-utils/package.py b/var/spack/repos/builtin/packages/ea-utils/package.py
index 2b044dc23e..bdd1c09ee8 100644
--- a/var/spack/repos/builtin/packages/ea-utils/package.py
+++ b/var/spack/repos/builtin/packages/ea-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/eagle/package.py b/var/spack/repos/builtin/packages/eagle/package.py
index 0509f32cd4..e1cbdf37fb 100644
--- a/var/spack/repos/builtin/packages/eagle/package.py
+++ b/var/spack/repos/builtin/packages/eagle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/earlyoom/package.py b/var/spack/repos/builtin/packages/earlyoom/package.py
index 627e21ab34..d815d96de8 100644
--- a/var/spack/repos/builtin/packages/earlyoom/package.py
+++ b/var/spack/repos/builtin/packages/earlyoom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/easybuild/package.py b/var/spack/repos/builtin/packages/easybuild/package.py
index 7f9ba11fdb..11c9ce880e 100644
--- a/var/spack/repos/builtin/packages/easybuild/package.py
+++ b/var/spack/repos/builtin/packages/easybuild/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class Easybuild(PythonPackage):
"""
homepage = 'https://easybuilders.github.io/easybuild/'
- url = 'https://pypi.io/packages/source/e/easybuild/easybuild-4.0.0.tar.gz'
+ pypi = 'easybuild/easybuild-4.0.0.tar.gz'
maintainers = ['boegel']
version('4.0.0', sha256='21bcc1048525ad6219667cc97a7421b5388068c670cabba356712e474896de40')
diff --git a/var/spack/repos/builtin/packages/ebms/package.py b/var/spack/repos/builtin/packages/ebms/package.py
index 1afb5c33d6..e858fabcb3 100644
--- a/var/spack/repos/builtin/packages/ebms/package.py
+++ b/var/spack/repos/builtin/packages/ebms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,9 +22,7 @@ class Ebms(MakefilePackage):
version('develop')
- variant('mpi', default=True, description='Build with MPI support')
-
- depends_on('mpi@2:', when='+mpi')
+ depends_on('mpi@2:')
tags = ['proxy-app']
diff --git a/var/spack/repos/builtin/packages/ecbuild/package.py b/var/spack/repos/builtin/packages/ecbuild/package.py
new file mode 100644
index 0000000000..f3c26282c3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ecbuild/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Ecbuild(CMakePackage):
+ """ecBuild is the ECMWF build system. It is built on top of CMake and
+ consists of a set of macros as well as a wrapper around CMake,"""
+
+ homepage = 'https://github.com/ecmwf/ecbuild'
+ url = 'https://github.com/ecmwf/ecbuild/archive/refs/tags/3.6.1.tar.gz'
+
+ maintainers = ['skosukhin']
+
+ version('3.6.1', sha256='796ccceeb7af01938c2f74eab0724b228e9bf1978e32484aa3e227510f69ac59')
+
+ # Some of the tests (ECBUILD-415 and test_ecbuild_regex_escape) fail with
+ # cmake@2.20.0 and it is not yet clear why. For now, we simply limit the
+ # version of cmake to the latest '3.19.x':
+ depends_on('cmake@3.11:3.19', type=('build', 'run'))
+
+ # Some of the installed scripts require running Perl:
+ depends_on('perl', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/eccodes/package.py b/var/spack/repos/builtin/packages/eccodes/package.py
index c31bb14f45..01b9988f11 100644
--- a/var/spack/repos/builtin/packages/eccodes/package.py
+++ b/var/spack/repos/builtin/packages/eccodes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,9 @@ class Eccodes(CMakePackage):
maintainers = ['skosukhin']
+ version('2.21.0', sha256='da0a0bf184bb436052e3eae582defafecdb7c08cdaab7216780476e49b509755')
+ version('2.20.0', sha256='207a3d7966e75d85920569b55a19824673e8cd0b50db4c4dac2d3d52eacd7985')
+ version('2.19.1', sha256='9964bed5058e873d514bd4920951122a95963128b12f55aa199d9afbafdd5d4b')
version('2.18.0', sha256='d88943df0f246843a1a062796edbf709ef911de7269648eef864be259e9704e3')
version('2.13.0', sha256='c5ce1183b5257929fc1f1c8496239e52650707cfab24f4e0e1f1a471135b8272')
version('2.5.0', sha256='18ab44bc444168fd324d07f7dea94f89e056f5c5cd973e818c8783f952702e4e')
@@ -58,6 +61,8 @@ class Eccodes(CMakePackage):
depends_on('py-numpy', when='+python', type=('build', 'run'))
extends('python', when='+python')
+ depends_on('cmake@3.6:', type='build')
+ depends_on('cmake@3.12:', when='@2.19:', type='build')
conflicts('+openmp', when='+pthreads',
msg='Cannot enable both POSIX threads and OMP')
@@ -75,11 +80,13 @@ class Eccodes(CMakePackage):
'Fortran interface requires a Fortran compiler!')
def cmake_args(self):
- var_opt_list = [('+pthreads', 'ECCODES_THREADS'),
- ('+openmp', 'ECCODES_OMP_THREADS'),
- ('+memfs', 'MEMFS'),
- ('+python', 'PYTHON'),
- ('+fortran', 'FORTRAN')]
+ var_opt_list = [
+ ('+pthreads', 'ECCODES_THREADS'),
+ ('+openmp', 'ECCODES_OMP_THREADS'),
+ ('+memfs', 'MEMFS'),
+ ('+python',
+ 'PYTHON2' if self.spec.satisfies('@2.20.0:') else 'PYTHON'),
+ ('+fortran', 'FORTRAN')]
args = ['-DENABLE_%s=%s' % (opt, 'ON' if var in self.spec else 'OFF')
for var, opt in var_opt_list]
diff --git a/var/spack/repos/builtin/packages/ecdsautils/package.py b/var/spack/repos/builtin/packages/ecdsautils/package.py
index cbba4a4f65..7fcafd905e 100644
--- a/var/spack/repos/builtin/packages/ecdsautils/package.py
+++ b/var/spack/repos/builtin/packages/ecdsautils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ecflow/package.py b/var/spack/repos/builtin/packages/ecflow/package.py
index 14b3f2033d..bdaf77283d 100644
--- a/var/spack/repos/builtin/packages/ecflow/package.py
+++ b/var/spack/repos/builtin/packages/ecflow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/eckit/package.py b/var/spack/repos/builtin/packages/eckit/package.py
new file mode 100644
index 0000000000..929b4bb210
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eckit/package.py
@@ -0,0 +1,137 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Eckit(CMakePackage):
+ """ecKit is a cross-platform c++ toolkit that supports development of tools
+ and applications at ECMWF."""
+
+ homepage = 'https://github.com/ecmwf/eckit'
+ url = 'https://github.com/ecmwf/eckit/archive/refs/tags/1.16.0.tar.gz'
+
+ maintainers = ['skosukhin']
+
+ version('1.16.0', sha256='9e09161ea6955df693d3c9ac70131985eaf7cf24a9fa4d6263661c6814ebbaf1')
+
+ variant('tools', default=True, description='Build the command line tools')
+ variant('mpi', default=True, description='Enable MPI support')
+ variant('admin', default=True,
+ description='Build utilities for administration tools')
+ variant('sql', default=True, description='Build SQL engine')
+ variant('linalg',
+ values=any_combination_of('eigen', 'armadillo', 'mkl', 'lapack'),
+ description='List of supported linear algebra backends')
+ variant('compression',
+ values=any_combination_of('bzip2', 'snappy', 'lz4', 'aec'),
+ description='List of supported compression backends')
+ variant('xxhash', default=True,
+ description='Enable xxHash support for hashing')
+ variant('ssl', default=False,
+ description='Enable MD4 and SHA1 support with OpenSSL')
+ variant('curl', default=False,
+ description='Enable URL data transferring with cURL')
+ variant('jemalloc', default=False,
+ description='Link against jemalloc memory allocator')
+ variant('unicode', default=True,
+ description='Enable support for Unicode characters in Yaml/JSON'
+ 'parsers')
+ variant('aio', default=True, description='Enable asynchronous IO')
+
+ depends_on('cmake@3.12:', type='build')
+ depends_on('ecbuild@3.5:', type='build')
+
+ depends_on('mpi', when='+mpi')
+
+ depends_on('yacc', type='build', when='+admin')
+ depends_on('flex', type='build', when='+admin')
+ depends_on('ncurses', when='+admin')
+
+ depends_on('yacc', type='build', when='+sql')
+ depends_on('flex', type='build', when='+sql')
+
+ depends_on('eigen', when='linalg=eigen')
+ depends_on('armadillo', when='linalg=armadillo')
+ depends_on('mkl', when='linalg=mkl')
+ depends_on('lapack', when='linalg=lapack')
+
+ depends_on('bzip2', when='compression=bzip2')
+ depends_on('snappy', when='compression=snappy')
+ depends_on('lz4', when='compression=lz4')
+ depends_on('libaec', when='compression=aec')
+
+ depends_on('openssl', when='+ssl')
+
+ depends_on('curl', when='+curl')
+
+ depends_on('jemalloc', when='+jemalloc')
+
+ # The package enables LAPACK backend (together with MKL backend)
+ # when='linalg=mkl'. This leads to two identical installations when:
+ # eckit linalg=mkl
+ # eckit linalg=mkl,lapack
+ # We prevent that by introducing the following conflict:
+ conflicts('linalg=lapack', when='linalg=mkl',
+ msg='"linalg=lapack" is implied when "linalg=mkl" and '
+ 'must not be specified additionally')
+
+ def cmake_args(self):
+ args = [
+ # Some features that we want to build are experimental:
+ self.define('ENABLE_EXPERIMENTAL', True),
+ self.define_from_variant('ENABLE_BUILD_TOOLS', 'tools'),
+ # We let ecBuild find the MPI library. We could help it by setting
+ # CMAKE_C_COMPILER to mpicc but that might give CMake a wrong
+ # impression that no additional flags are needed to link to
+ # libpthread, which will lead to problems with libraries that are
+ # linked with the C++ compiler. We could additionally set
+ # CMAKE_CXX_COMPILER to mpicxx. That would solve the problem with
+ # libpthread but lead to overlinking to MPI libraries, which we
+ # currently prefer to avoid since ecBuild does the job in all known
+ # cases.
+ self.define_from_variant('ENABLE_MPI', 'mpi'),
+ self.define_from_variant('ENABLE_ECKIT_CMD', 'admin'),
+ self.define_from_variant('ENABLE_ECKIT_SQL', 'sql'),
+ self.define('ENABLE_EIGEN', 'linalg=eigen' in self.spec),
+ self.define('ENABLE_ARMADILLO', 'linalg=armadillo' in self.spec),
+ self.define('ENABLE_MKL', 'linalg=mkl' in self.spec),
+ self.define('ENABLE_BZIP2', 'compression=bzip2' in self.spec),
+ self.define('ENABLE_SNAPPY', 'compression=snappy' in self.spec),
+ self.define('ENABLE_LZ4', 'compression=lz4' in self.spec),
+ self.define('ENABLE_AEC', 'compression=aec' in self.spec),
+ self.define_from_variant('ENABLE_XXHASH', 'xxhash'),
+ self.define_from_variant('ENABLE_SSL', 'ssl'),
+ self.define_from_variant('ENABLE_CURL', 'curl'),
+ self.define_from_variant('ENABLE_JEMALLOC', 'jemalloc'),
+ self.define_from_variant('ENABLE_UNICODE', 'unicode'),
+ self.define_from_variant('ENABLE_AIO', 'aio'),
+ self.define('ENABLE_TESTS', self.run_tests),
+ # Unconditionally disable additional unit/performance tests, since
+ # they download additional data (~1.6GB):
+ self.define('ENABLE_EXTRA_TESTS', False),
+ # No reason to check for doxygen and generate the documentation
+ # since it is not installed:
+ self.define('ENABLE_DOCS', False),
+ # Disable features that are currently not needed:
+ self.define('ENABLE_CUDA', False),
+ self.define('ENABLE_VIENNACL', False),
+ # Ceph/Rados storage support requires https://github.com/ceph/ceph
+ # and will be added later:
+ self.define('ENABLE_RADOS', False),
+ # rsync support requires https://github.com/librsync/librsync and
+ # will be added later:
+ self.define('ENABLE_RSYNC', False),
+ # Disable "prototyping code that may never see the light of day":
+ self.define('ENABLE_SANDBOX', False)
+ ]
+
+ if 'linalg=mkl' not in self.spec:
+ # ENABLE_LAPACK is ignored if MKL backend is enabled
+ # (the LAPACK backend is still built though):
+ args.append(
+ self.define('ENABLE_LAPACK', 'linalg=lapack' in self.spec))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/eclipse-gcj-parser/package.py b/var/spack/repos/builtin/packages/eclipse-gcj-parser/package.py
index 13100d89a8..dcf94d99e8 100644
--- a/var/spack/repos/builtin/packages/eclipse-gcj-parser/package.py
+++ b/var/spack/repos/builtin/packages/eclipse-gcj-parser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ecos/package.py b/var/spack/repos/builtin/packages/ecos/package.py
index 7ce3427a3f..fbd1378916 100644
--- a/var/spack/repos/builtin/packages/ecos/package.py
+++ b/var/spack/repos/builtin/packages/ecos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ecp-data-vis-sdk/package.py b/var/spack/repos/builtin/packages/ecp-data-vis-sdk/package.py
new file mode 100644
index 0000000000..542c32c797
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ecp-data-vis-sdk/package.py
@@ -0,0 +1,117 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class EcpDataVisSdk(BundlePackage):
+ """ECP Data & Vis SDK"""
+
+ homepage = "https://github.com/chuckatkins/ecp-data-viz-sdk"
+
+ tags = ['ecp']
+ maintainers = ['chuckatkins']
+
+ version('1.0')
+
+ ############################################################
+ # Variants
+ ############################################################
+
+ # I/O
+ variant('adios2', default=True, description="Enable ADIOS2")
+ variant('darshan', default=True, description="Enable Darshan")
+ variant('faodel', default=False, description="Enable FAODEL")
+ variant('hdf5', default=True, description="Enable HDF5")
+ variant('pnetcdf', default=True, description="Enable PNetCDF")
+ variant('unifyfs', default=True, description="Enable UnifyFS")
+ variant('veloc', default=True, description="Enable VeloC")
+
+ # Vis
+ variant('ascent', default=False, description="Enable Ascent")
+ variant('paraview', default=False, description="Enable ParaView")
+ variant('sz', default=True, description="Enable SZ")
+ variant('vtkm', default=False, description="Enable VTK-m")
+ variant('zfp', default=True, description="Enable ZFP")
+
+ # Outstanding concretization issues
+ # variant('cinema', default=True, description="Enable Cinema")
+
+ # Outstanding build issues
+ # variant('catalyst', default=False, description="Enable Catalyst")
+ # variant('visit', default=False, description="Enable VisIt")
+
+ ############################################################
+ # This is a messy workaround until the clingo concretizer can be required.
+ # The intent is to map package variants to dependency variants:
+ # Package variants a, and b, mapping to dependency variants A and B
+ # produce the following set of dependencies:
+ # depends_on('foo+A+B', when='+a+b')
+ # depends_on('foo+A~B', when='+a~b')
+ # depends_on('foo~A+B', when='~a+b')
+ # depends_on('foo~A~B', when='~a~b')
+ # The clingo concretizer will allow that to be expressed much simpler by
+ # only considering defaults once everything else is resolved:
+ # depends_on('foo')
+ # depends_on('foo+A', when='+a')
+ # depends_on('foo+B', when='+b')
+ ############################################################
+
+ # Helper function to generate dependencies on the Cartesian product of
+ # variants. If a dictionary is passed then it provides a mapping of
+ # package variant name to dependency variant name. Otherwise assume they
+ # are the same variant name in both the package and dependency
+ def variants2deps(dep_spec, pkg_spec, variants):
+ if not type(variants) is dict:
+ variants = dict([(v, v) for v in variants])
+ n = len(variants)
+ for i in range(0, pow(2, n)):
+ state = ['+' if d == '1' else '~' for d in format(i, '0' + str(n) + 'b')]
+ [pkg_vars, dep_vars] = [''.join(v) for v in zip(
+ *[(s + pv, s + dv) for s, (pv, dv) in zip(state, variants.items())])]
+ dependency = ' '.join((dep_spec, dep_vars))
+ predicate = ' '.join((pkg_spec, pkg_vars))
+ depends_on(dependency, when=predicate)
+
+ ############################################################
+ # Dependencies
+ ############################################################
+ variants2deps('adios2+shared+mpi+fortran+python+blosc+sst+ssc+dataman',
+ '+adios2', ['hdf5', 'sz', 'zfp'])
+
+ depends_on('darshan-runtime+mpi', when='+darshan')
+ depends_on('darshan-util', when='+darshan')
+
+ variants2deps('faodel+shared+mpi network=libfabric', '+faodel', ['hdf5'])
+
+ depends_on('hdf5 +shared+mpi', when='+hdf5')
+ # +fortran breaks the concretizer... Needs new concretizer
+ # depends_on('hdf5 +shared+mpi+fortran', when='+hdf5')
+
+ depends_on('parallel-netcdf+shared+fortran', when='+pnetcdf')
+
+ variants2deps('unifyfs+fortran', '+unifyfs', ['hdf5'])
+
+ depends_on('veloc', when='+veloc')
+
+ depends_on('ascent+shared+mpi+fortran+openmp+python+vtkh+dray', when='+ascent')
+ depends_on('catalyst', when='+catalyst')
+
+ depends_on('py-cinema-lib', when='+cinema')
+ depends_on('py-cinemasci', when='+cinema')
+
+ variants2deps('paraview+shared+mpi+python3+kits', '+paraview', ['hdf5'])
+ # +adios2 is not yet enabled in the paraview package
+ # depends_on('paraview+adios2', when='+paraview +adios2')
+
+ depends_on('visit', when='+visit')
+
+ depends_on('vtk-m+shared+mpi+openmp+rendering', when='+vtkm')
+
+ # +python is currently broken in sz
+ # variants2deps('sz+shared+fortran+python+random_access', '+sz', ['hdf5'])
+ variants2deps('sz+shared+fortran+random_access', '+sz', ['hdf5'])
+
+ depends_on('zfp', when='+zfp')
diff --git a/var/spack/repos/builtin/packages/ecp-io-sdk/package.py b/var/spack/repos/builtin/packages/ecp-io-sdk/package.py
deleted file mode 100644
index 6a43b77ffa..0000000000
--- a/var/spack/repos/builtin/packages/ecp-io-sdk/package.py
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
-# Spack Project Developers. See the top-level COPYRIGHT file for details.
-#
-# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-from spack import *
-
-
-class EcpIoSdk(BundlePackage):
- """ECP I/O Services SDK"""
-
- homepage = "https://github.com/chuckatkins/ecp-data-viz-sdk"
- git = "https://github.com/chuckatkins/ecp-data-viz-sdk.git"
-
- maintainers = ['chuckatkins']
-
- version('1.0', branch='master')
-
- variant('adios2', default=True, description="Enable ADIOS2")
- variant('darshan', default=True, description="Enable Darshan")
- variant('faodel', default=False, description="Enable FAODEL")
- variant('hdf5', default=True, description="Enable HDF5")
- variant('pnetcdf', default=True, description="Enable PNetCDF")
- variant('unifyfs', default=True, description="Enable UnifyFS")
- variant('veloc', default=True, description="Enable VeloC")
-
- depends_on('adios2+shared+mpi+fortran+python+zfp+sz+blosc+hdf5+sst+ssc+dataman', when='+adios2')
- depends_on('darshan-runtime+mpi', when='+darshan')
- depends_on('darshan-util', when='+darshan')
- depends_on('faodel+shared+mpi+hdf5 network=libfabric', when='+faodel')
- depends_on('hdf5+shared+mpi+fortran', when='+hdf5')
- depends_on('parallel-netcdf+shared+fortran', when='+pnetcdf')
- depends_on('unifyfs+fortran+hdf5', when='+unifyfs')
- depends_on('veloc', when='+veloc')
diff --git a/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py b/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py
index ebd2c2e3f3..7b57a1f4a9 100644
--- a/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py
+++ b/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,6 +27,14 @@ class EcpProxyApps(BundlePackage):
variant('candle', default=False,
description='Also build CANDLE Benchmarks')
+ variant('ml', default=False,
+ description='Also build Machine Learning Suite')
+
+ # Added as part of ML Suite with 4.0
+ depends_on('minigan@1.0.0', when='+ml @4.0:')
+ depends_on('cradl@master', when='+ml @4.0:')
+ depends_on('cosmoflow-benchmark@master', when='+ml @4.0:')
+ depends_on('mlperf-deepcam@master', when='+ml @4.0:')
# Added with release 4.0
depends_on('miniamr@1.6.4', when='@4.0:')
diff --git a/var/spack/repos/builtin/packages/ecp-viz-sdk/package.py b/var/spack/repos/builtin/packages/ecp-viz-sdk/package.py
deleted file mode 100644
index 337ca17237..0000000000
--- a/var/spack/repos/builtin/packages/ecp-viz-sdk/package.py
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
-# Spack Project Developers. See the top-level COPYRIGHT file for details.
-#
-# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-from spack import *
-
-
-class EcpVizSdk(BundlePackage):
- """ECP Viz & Analysis SDK"""
-
- homepage = "https://github.com/chuckatkins/ecp-data-viz-sdk"
- git = "https://github.com/chuckatkins/ecp-data-viz-sdk.git"
-
- maintainers = ['chuckatkins']
-
- version('1.0', branch='master')
-
- variant('ascent', default=False, description="Enable Ascent")
- # variant('catalyst', default=False, description="Enable Catalyst")
- variant('paraview', default=False, description="Enable ParaView")
- variant('sz', default=False, description="Enable SZ")
- variant('vtkm', default=False, description="Enable VTK-m")
- variant('zfp', default=False, description="Enable ZFP")
-
- # Outstanding build issues
- # variant('visit', default=False, description="Enable VisIt")
-
- # Missing spack package
- # variant('cinema', default=False, description="Enable Cinema")
- # variant('rover', default=False, description="Enable ROVER")
-
- depends_on('ascent+shared+mpi+fortran+openmp+python+vtkh+dray', when='+ascent')
- depends_on('catalyst', when='+catalyst')
- depends_on('paraview+shared+mpi+python3+hdf5+kits', when='+paraview')
- depends_on('visit', when='+visit')
- depends_on('vtk-m+shared+mpi+openmp+rendering', when='+vtkm')
- depends_on('sz+shared+fortran+hdf5+python+random_access', when='+sz')
- depends_on('zfp', when='+zfp')
diff --git a/var/spack/repos/builtin/packages/ed/package.py b/var/spack/repos/builtin/packages/ed/package.py
index 21a29bd497..5fe1997ee0 100644
--- a/var/spack/repos/builtin/packages/ed/package.py
+++ b/var/spack/repos/builtin/packages/ed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/editline/package.py b/var/spack/repos/builtin/packages/editline/package.py
index 393b0fac59..39e76683d1 100644
--- a/var/spack/repos/builtin/packages/editline/package.py
+++ b/var/spack/repos/builtin/packages/editline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/editres/package.py b/var/spack/repos/builtin/packages/editres/package.py
index 90dcc1d49a..1e442a2734 100644
--- a/var/spack/repos/builtin/packages/editres/package.py
+++ b/var/spack/repos/builtin/packages/editres/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/edm4hep/package.py b/var/spack/repos/builtin/packages/edm4hep/package.py
new file mode 100644
index 0000000000..ee654e125d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/edm4hep/package.py
@@ -0,0 +1,73 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Edm4hep(CMakePackage):
+ """Event data model of Key4hep."""
+
+ homepage = "https://github.com/key4hep/EDM4hep"
+ url = "https://github.com/key4hep/EDM4hep/archive/v00-01.tar.gz"
+ git = "https://github.com/key4hep/EDM4hep.git"
+
+ maintainers = ['vvolkl']
+
+ tags = ["hep", "key4hep"]
+
+ version('master', branch='master')
+ version('0.3.1', sha256='eeec38fe7d72d2a72f07a63dca0a34ca7203727f67869c0abf6bef014b8b319b')
+ version('0.3', sha256='d0ad8a486c3ed1659ea97d47b268fe56718fdb389b5935f23ba93804e4d5fbc5')
+
+ variant('cxxstd',
+ default='17',
+ values=('17',),
+ multi=False,
+ description='Use the specified C++ standard when building.')
+
+ depends_on('cmake@3.3:', type='build')
+ depends_on('python', type='build')
+
+ depends_on('root@6.08:')
+ depends_on('podio@0.13:')
+
+ depends_on('hepmc@:2.99.99', type='test')
+ depends_on('heppdt', type='test')
+
+ def cmake_args(self):
+ args = []
+ # C++ Standard
+ args.append(self.define('CMAKE_CXX_STANDARD',
+ self.spec.variants['cxxstd'].value))
+ return args
+
+ def url_for_version(self, version):
+ """Translate version numbers to ilcsoft conventions.
+ in spack, the convention is: 0.1 (or 0.1.0) 0.1.1, 0.2, 0.2.1 ...
+ in ilcsoft, releases are dashed and padded with a leading zero
+ the patch version is omitted when 0
+ so for example v01-12-01, v01-12 ...
+ :param self: spack package class that has a url
+ :type self: class: `spack.PackageBase`
+ :param version: version
+ :type param: str
+ """
+ base_url = self.url.rsplit('/', 1)[0]
+
+ if len(version) == 1:
+ major = version[0]
+ minor, patch = 0, 0
+ elif len(version) == 2:
+ major, minor = version
+ patch = 0
+ else:
+ major, minor, patch = version
+
+ # By now the data is normalized enough to handle it easily depending
+ # on the value of the patch version
+ if patch == 0:
+ version_str = 'v%02d-%02d.tar.gz' % (major, minor)
+ else:
+ version_str = 'v%02d-%02d-%02d.tar.gz' % (major, minor, patch)
+
+ return base_url + '/' + version_str
diff --git a/var/spack/repos/builtin/packages/eem/package.py b/var/spack/repos/builtin/packages/eem/package.py
index 8e904b0c8c..ef48491beb 100644
--- a/var/spack/repos/builtin/packages/eem/package.py
+++ b/var/spack/repos/builtin/packages/eem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/efivar/package.py b/var/spack/repos/builtin/packages/efivar/package.py
index 49b68d56b9..9e91040238 100644
--- a/var/spack/repos/builtin/packages/efivar/package.py
+++ b/var/spack/repos/builtin/packages/efivar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/eigen/package.py b/var/spack/repos/builtin/packages/eigen/package.py
index d133f9f01a..4144717c5e 100644
--- a/var/spack/repos/builtin/packages/eigen/package.py
+++ b/var/spack/repos/builtin/packages/eigen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,9 @@ class Eigen(CMakePackage):
homepage = 'http://eigen.tuxfamily.org/'
url = 'https://gitlab.com/libeigen/eigen/-/archive/3.3.7/eigen-3.3.7.tar.gz'
+ maintainers = ['HaoZeke']
+ version('3.3.9', sha256='7985975b787340124786f092b3a07d594b2e9cd53bbfe5f3d9b1daee7d55f56f')
version('3.3.8', sha256='146a480b8ed1fb6ac7cd33fec9eb5e8f8f62c3683b3f850094d9d5c35a92419a')
version('3.3.7', sha256='d56fbad95abf993f8af608484729e3d87ef611dd85b3380a8bad1d5cbc373a57')
version('3.3.6', sha256='e7cd8c94d6516d1ada9893ccc7c9a400fcee99927c902f15adba940787104dba')
diff --git a/var/spack/repos/builtin/packages/eigenexa/fj_compiler.patch b/var/spack/repos/builtin/packages/eigenexa/fj_compiler.patch
new file mode 100644
index 0000000000..f5ba03aea4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eigenexa/fj_compiler.patch
@@ -0,0 +1,64 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -200,7 +200,7 @@ AC_SUBST(DEBUG)
+ ## fortran compiler
+ #
+
+-eigenexa_default_fc="mpifrtpx mpiifort mpixlf90_r sxmpif90 mpif90"
++eigenexa_default_fc="mpifrt mpifrtpx mpiifort mpixlf90_r sxmpif90 mpif90"
+
+ # check usablility
+ AC_PROG_F77($eigenexa_default_fc)
+@@ -221,7 +221,6 @@ AC_MSG_CHECKING([for actual compiler])
+
+ fc_ver_info=$(${F77} -E --version)
+ for vtok in ${fc_ver_info} ; do
+-
+ if test x"${vtok}" = x"ifort"; then
+ FC_ACT="ifort"
+ break
+@@ -230,12 +229,16 @@ for vtok in ${fc_ver_info} ; do
+ FC_ACT="gfortran"
+ break
+
++ elif test x"${vtok}" = x"(FRT)"; then
++ FC_ACT="mpifrtpx"
++ break
++
+ fi
+
+ done
+
+ if test -z "${FC_ACT}"; then
+- FC_ACT=${F77}
++ FC_ACT=`basename ${F77}`
+ fi
+
+ if test x"${FC_ACT}" = x"ifort"; then
+@@ -260,7 +263,7 @@ fi
+ ## C compiler
+ #
+
+-eigenexa_default_cc="mpifccpx mpiicc mpixlc_r sxmpic++ mpicc"
++eigenexa_default_cc="mpifcc mpifccpx mpiicc mpixlc_r sxmpic++ mpicc"
+
+ # check usablility
+ AC_PROG_CC($eigenexa_default_cc)
+@@ -423,7 +426,7 @@ fi
+ ## For Fujitsu compiler architecture-oriented options
+ if test x"${FC_ACT}" = x"mpifrtpx"; then
+ F_ARCH=""
+- F_BASE="-Kopenmp,openmp_ordered_reduction"
++ F_BASE="-Kopenmp"
+ fi
+
+
+@@ -489,7 +492,7 @@ elif test x"${FC_ACT}" = x"gfortran"; th
+ FFLAGS0=${G_BASE}" -O0"
+
+ elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FFLAGS0="-Kopenmp,openmp_ordered_reduction -Cpp"
++ FFLAGS0="-Kopenmp -Cpp"
+
+ elif test x"${FC_ACT}" = x"mpixlf90_r"; then
+ FFLAGS0="-qfixed -qsmp=omp -qthreaded -O0 -qessl -qstrict"
diff --git a/var/spack/repos/builtin/packages/eigenexa/gcc_compiler.patch b/var/spack/repos/builtin/packages/eigenexa/gcc_compiler.patch
new file mode 100644
index 0000000000..3c0e0bf983
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eigenexa/gcc_compiler.patch
@@ -0,0 +1,29 @@
+--- a/configure.ac
++++ c/configure.ac
+@@ -440,7 +440,7 @@ else
+ FFLAGS=${I_BASE}" -Ofast "${I_ARCH}
+
+ elif test x"${FC_ACT}" = x"gfortran"; then
+- FFLAGS=${G_BASE}" -O3 "${G_ARCH}
++ FFLAGS=${G_BASE}" -O3 -fopenmp "${G_ARCH}
+
+ elif test x"${FC_ACT}" = x"mpifrtpx"; then
+ FFLAGS=${F_BASE}" -Kfast,ocl,simd,swp "${F_ARCH}
+@@ -465,7 +465,7 @@ else
+ FCFLAGS=${I_BASE}" -Ofast "${I_ARCH}
+
+ elif test x"${FC_ACT}" = x"gfortran"; then
+- FCFLAGS=${G_BASE}" -O3 "${G_ARCH}
++ FCFLAGS=${G_BASE}" -O3 -fopenmp "${G_ARCH}
+
+ elif test x"${FC_ACT}" = x"mpifrtpx"; then
+ FCFLAGS=${F_BASE}" -Kfast,ocl,simd,swp "${F_ARCH}
+@@ -486,7 +486,7 @@ if test x"${FC_ACT}" = x"ifort"; then
+ FFLAGS0=${I_BASE}" -O0 "
+
+ elif test x"${FC_ACT}" = x"gfortran"; then
+- FFLAGS0=${G_BASE}" -O0"
++ FFLAGS0=${G_BASE}" -O0 -fopenmp "
+
+ elif test x"${FC_ACT}" = x"mpifrtpx"; then
+ FFLAGS0="-Kopenmp,openmp_ordered_reduction -Cpp"
diff --git a/var/spack/repos/builtin/packages/eigenexa/package.py b/var/spack/repos/builtin/packages/eigenexa/package.py
new file mode 100644
index 0000000000..265c48b35d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eigenexa/package.py
@@ -0,0 +1,69 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Eigenexa(AutotoolsPackage):
+ """EigenExa is a high-performance eigenvalue solver."""
+
+ homepage = "https://www.r-ccs.riken.jp/labs/lpnctrt/projects/eigenexa/"
+ url = "https://www.r-ccs.riken.jp/labs/lpnctrt/projects/eigenexa/EigenExa-2.6.tgz"
+
+ version(
+ "2.6", sha256="a1a4e571a8051443f28e7ea4889272993452a4babd036d2b4dd6b28154302f95"
+ )
+
+ depends_on("autoconf", type="build")
+ depends_on("automake", type="build")
+ depends_on("libtool", type="build")
+ depends_on("m4", type="build")
+ depends_on("mpi")
+ depends_on("lapack")
+ depends_on("scalapack")
+
+ patch("fj_compiler.patch", when="%fj")
+ patch("gcc_compiler.patch", when="%gcc")
+
+ parallel = False
+ force_autoreconf = True
+
+ def setup_build_environment(self, env):
+ env.set("FC", self.spec["mpi"].mpifc, force=True)
+ env.set("F77", self.spec["mpi"].mpif77, force=True)
+ env.set("CC", self.spec["mpi"].mpicc, force=True)
+ env.set(
+ "LAPACK_LIBS",
+ "{0} {1}".format(
+ self.spec["lapack"].libs.ld_flags, self.spec["scalapack"].libs.ld_flags
+ ),
+ )
+ env.set(
+ "LAPACK_PATH",
+ "{0}".format(
+ ":".join(
+ self.spec["lapack"].libs.directories
+ + self.spec["scalapack"].libs.directories
+ )
+ ),
+ )
+
+ @run_after('install')
+ def cache_test_sources(self):
+ self.cache_extra_test_sources("benchmark")
+
+ def test(self):
+ test_dir = self.test_suite.current_test_data_dir
+ exe_name = join_path(test_dir, "run-test.sh")
+ mpi_name = self.spec["mpi"].prefix.bin.mpirun
+ test_file = join_path(
+ self.install_test_root, "benchmark", "eigenexa_benchmark"
+ )
+ input_file = join_path(self.install_test_root, "benchmark", "IN")
+ opts = [exe_name, mpi_name, '-n', '1', test_file, '-f', input_file]
+ env["OMP_NUM_THREADS"] = "1"
+ self.run_test(
+ "sh", options=opts, expected="EigenExa Test Passed !", work_dir=test_dir
+ )
diff --git a/var/spack/repos/builtin/packages/eigenexa/test/result-check.sh b/var/spack/repos/builtin/packages/eigenexa/test/result-check.sh
new file mode 100644
index 0000000000..a8a406ec23
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eigenexa/test/result-check.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+grep -q "Benchmark completed" $@
+if [ $? -eq 1 ]; then
+ echo "EigenExa Test Failed !"
+ exit 1
+fi
+
+while read line;do
+ case $line in
+ *'Eigenvalue Relative Error'* )
+ tmp=$line
+ read line
+ if [[ "$line" != '|w| is too small, so it is not severe.' ]]; then
+ echo "${tmp}" >> output.txt
+ fi
+ ;;
+ *'Eigenvalue Absolute Error'* )
+ tmp=$line
+ read line
+ if [ "$line" != 'Do not mind it. Condition number is too large.' ] && \
+ [ "$line" != 'Do not mind it. Relative error is small enough' ]; then
+ echo "${tmp}" >> output.txt
+ fi
+ ;;
+ *'Residual Error Test'* | *'Orthogonality Test'* )
+ echo "${line}" >> output.txt ;;
+ esac
+done < $@
+
+grep -q "FAILED" output.txt
+if [ $? -eq 1 ]; then
+ echo "EigenExa Test Passed !"
+elif [ $? -eq 0 ]; then
+ echo "EigenExa Test Failed !"
+fi
diff --git a/var/spack/repos/builtin/packages/eigenexa/test/run-test.sh b/var/spack/repos/builtin/packages/eigenexa/test/run-test.sh
new file mode 100644
index 0000000000..931d15973c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eigenexa/test/run-test.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+$@ 2>&1 | tee run_test_results.txt
+/usr/bin/sh result-check.sh run_test_results.txt
diff --git a/var/spack/repos/builtin/packages/elasticsearch/package.py b/var/spack/repos/builtin/packages/elasticsearch/package.py
index e543b3d875..2a4adb4c3d 100644
--- a/var/spack/repos/builtin/packages/elasticsearch/package.py
+++ b/var/spack/repos/builtin/packages/elasticsearch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/elemental/package.py b/var/spack/repos/builtin/packages/elemental/package.py
index a46e31ff11..5dea8f1421 100644
--- a/var/spack/repos/builtin/packages/elemental/package.py
+++ b/var/spack/repos/builtin/packages/elemental/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -61,14 +61,14 @@ class Elemental(CMakePackage):
# Allow Elemental to build internally when using 8-byte ints
depends_on('openblas threads=openmp', when='blas=openblas +openmp_blas ~int64_blas')
- depends_on('intel-mkl', when="blas=mkl ~openmp_blas ~int64_blas")
- depends_on('intel-mkl threads=openmp', when='blas=mkl +openmp_blas ~int64_blas')
- depends_on('intel-mkl@2017.1 +openmp +ilp64', when='blas=mkl +openmp_blas +int64_blas')
+ depends_on('intel-mkl', when="blas=mkl")
+ depends_on('intel-mkl threads=openmp', when='blas=mkl +openmp_blas')
+ depends_on('intel-mkl@2017.1 +ilp64', when='blas=mkl +int64_blas')
depends_on('veclibfort', when='blas=accelerate')
- depends_on('essl ~cuda', when='blas=essl ~openmp_blas ~int64_blas')
- depends_on('essl threads=openmp', when='blas=essl +openmp_blas ~int64_blas')
+ depends_on('essl', when='blas=essl')
+ depends_on('essl threads=openmp', when='blas=essl +openmp_blas')
# Note that this forces us to use OpenBLAS until #1712 is fixed
depends_on('lapack', when='blas=openblas ~openmp_blas')
diff --git a/var/spack/repos/builtin/packages/elfutils/package.py b/var/spack/repos/builtin/packages/elfutils/package.py
index bd5295cae0..2ab092b541 100644
--- a/var/spack/repos/builtin/packages/elfutils/package.py
+++ b/var/spack/repos/builtin/packages/elfutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -74,6 +74,7 @@ class Elfutils(AutotoolsPackage, SourcewarePackage):
# elfutils with gcc, and then link it to clang-built libraries.
conflicts('%apple-clang')
conflicts('%clang')
+ conflicts('%cce')
# Elfutils uses -Wall and we don't want to fail the build over a
# stray warning.
diff --git a/var/spack/repos/builtin/packages/elk/package.py b/var/spack/repos/builtin/packages/elk/package.py
index 1367eda296..3d2aa767fd 100644
--- a/var/spack/repos/builtin/packages/elk/package.py
+++ b/var/spack/repos/builtin/packages/elk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/elmerfem/package.py b/var/spack/repos/builtin/packages/elmerfem/package.py
index 24433a58f8..1ece8bf783 100644
--- a/var/spack/repos/builtin/packages/elmerfem/package.py
+++ b/var/spack/repos/builtin/packages/elmerfem/package.py
@@ -1,10 +1,8 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
-
class Elmerfem(CMakePackage):
"""Elmer is an open source multiphysical simulation software. It
@@ -17,8 +15,10 @@ class Elmerfem(CMakePackage):
version('ice', branch='elmerice')
version('devel', branch='devel')
+ version('9.0', sha256='08c5bf261e87ff37456c1aa0372db3c83efabe4473ea3ea0b8ec66f5944d1aa0')
version('8.4', sha256='cc3ce807d76798361592cc14952cdc3db1ad8f9bac038017514033ce9badc5b3')
+ variant('gui', default=False, description='Enable GUI support.')
variant('mpi', default=True, description='Enable MPI support.')
variant('openmp', default=True, description='Enable OpenMP support.')
variant('mumps', default=False, description='Enable MUMPS support.')
@@ -28,12 +28,16 @@ class Elmerfem(CMakePackage):
variant('lua', default=False, description='Enable Lua support.')
variant('scatt2d', default=False, description='Build Scattered2DDataInterpolator solver.')
+ depends_on('qt@5:+opengl', when='+gui')
+ depends_on('qwt', when='+gui')
+ depends_on('paraview+qt', when='+gui')
depends_on('mpi')
depends_on('netcdf-fortran')
depends_on('blas')
depends_on('lapack')
depends_on('scalapack', when='+mpi')
- depends_on('mumps', when='+mumps')
+ depends_on('mumps+openmp', when='+mumps+openmp')
+ depends_on('mumps~openmp', when='+mumps~openmp')
depends_on('hypre', when='+hypre')
depends_on('trilinos~hypre~zoltan~zoltan2', when='+trilinos')
depends_on('zoltan+fortran', when='+zoltan')
@@ -47,6 +51,14 @@ class Elmerfem(CMakePackage):
args = ['-DWITH_ElmerIce=ON', '-DWITH_CONTRIB=ON']
+ if '+gui' in spec:
+ args.append('-DWITH_ELMERGUI:BOOL=TRUE')
+ args.append('-DWITH_QT5:BOOL=TRUE')
+ args.append('-DWITH_QWT:BOOL=TRUE')
+ args.append('-DWITH_PARAVIEW:BOOL=TRUE')
+ else:
+ args.append('-DWITH_ELMERGUI:BOOL=FALSE')
+
if '+mpi' in spec:
args.append('-DWITH_MPI=ON')
else:
@@ -112,6 +124,16 @@ class Elmerfem(CMakePackage):
return args
+ def patch(self):
+ if self.spec.satisfies('@8.4'):
+ # from commit f02cb33acd59 upstream
+ filter_file('FOREACH(D RANGE 1 depth)',
+ 'FOREACH(D RANGE 1 ${depth})',
+ 'fem/tests/CMakeLists.txt',
+ string=True)
+
def setup_run_environment(self, env):
env.set('ELMER_HOME', self.prefix)
env.set('ELMER_Fortran_COMPILER', self.compiler.fc)
+ if '+gui' in self.spec:
+ env.set('ELMERGUI_HOME', self.prefix.share.ElmerGUI)
diff --git a/var/spack/repos/builtin/packages/elpa/package.py b/var/spack/repos/builtin/packages/elpa/package.py
index d7c1f6fa54..6ab1dab6fa 100644
--- a/var/spack/repos/builtin/packages/elpa/package.py
+++ b/var/spack/repos/builtin/packages/elpa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,8 @@ from spack import *
class Elpa(AutotoolsPackage, CudaPackage):
"""Eigenvalue solvers for Petaflop-Applications (ELPA)"""
- homepage = 'http://elpa.mpcdf.mpg.de/'
- url = 'http://elpa.mpcdf.mpg.de/elpa-2015.11.001.tar.gz'
+ homepage = 'https://elpa.mpcdf.mpg.de/'
+ url = 'https://elpa.mpcdf.mpg.de/elpa-2015.11.001.tar.gz'
version('2020.05.001', sha256='66ff1cf332ce1c82075dc7b5587ae72511d2bcb3a45322c94af6b01996439ce5')
version('2019.11.001', sha256='10374a8f042e23c7e1094230f7e2993b6f3580908a213dbdf089792d05aff357')
@@ -22,24 +22,28 @@ class Elpa(AutotoolsPackage, CudaPackage):
version('2017.11.001', sha256='59f99c3abe2190fac0db8a301d0b9581ee134f438669dbc92551a54f6f861820')
version('2017.05.003', sha256='bccd49ce35a323bd734b17642aed8f2588fea4cc78ee8133d88554753bc3bf1b')
version('2017.05.002', sha256='568b71024c094d667b5cbb23045ad197ed5434071152ac608dae490ace5eb0aa')
+ version('2017.05.001', sha256='28f7edad60984d93da299016ad33571dc6db1cdc9fab0ceaef05dc07de2c7dfd')
version('2016.11.001.pre', sha256='69b67f0f6faaa2b3b5fd848127b632be32771636d2ad04583c5269d550956f92')
version('2016.05.004', sha256='08c59dc9da458bab856f489d779152e5506e04f0d4b8d6dcf114ca5fbbe46c58')
version('2016.05.003', sha256='c8da50c987351514e61491e14390cdea4bdbf5b09045261991876ed5b433fca4')
version('2015.11.001', sha256='c0761a92a31c08a4009c9688c85fc3fc8fde9b6ce05e514c3e1587cf045e9eba')
variant('openmp', default=False, description='Activates OpenMP support')
- variant('optflags', default=True, description='Build with optimization flags')
depends_on('mpi')
depends_on('blas')
depends_on('lapack')
depends_on('scalapack')
depends_on('libtool', type='build')
+ depends_on('python@:2', type='build', when='@:2020.05.001')
+ depends_on('python@3:', type='build', when='@2020.11.001:')
+
+ patch('python_shebang.patch', when='@:2020.05.001')
def url_for_version(self, version):
- t = 'http://elpa.mpcdf.mpg.de/html/Releases/{0}/elpa-{0}.tar.gz'
+ t = 'https://elpa.mpcdf.mpg.de/html/Releases/{0}/elpa-{0}.tar.gz'
if version < Version('2016.05.003'):
- t = 'http://elpa.mpcdf.mpg.de/elpa-{0}.tar.gz'
+ t = 'https://elpa.mpcdf.mpg.de/elpa-{0}.tar.gz'
return t.format(str(version))
# override default implementation which returns static lib
@@ -79,14 +83,32 @@ class Elpa(AutotoolsPackage, CudaPackage):
if spec.target.family == 'aarch64':
options.append('--disable-sse-assembly')
+ if '%aocc' in spec:
+ options.append('--disable-shared')
+ options.append('--enable-static')
+
# If no features are found, enable the generic ones
if not any(f in spec.target for f in simd_features):
options.append('--enable-generic')
- if '+optflags' in spec:
+ if self.compiler.name == "gcc":
+ gcc_options = []
+ gfortran_options = ['-ffree-line-length-none']
+
+ if self.compiler.version >= Version("10.0.0") \
+ and spec.version <= Version("2019.11.001"):
+ gfortran_options.append('-fallow-argument-mismatch')
+
+ space_separator = ' '
+ options.extend([
+ 'CFLAGS=' + space_separator.join(gcc_options),
+ 'FCFLAGS=' + space_separator.join(gfortran_options),
+ ])
+
+ if '%aocc' in spec:
options.extend([
- 'FCFLAGS=-O2 -ffree-line-length-none',
- 'CFLAGS=-O2'
+ 'FCFLAGS=-O3',
+ 'CFLAGS=-O3'
])
if '+cuda' in spec:
@@ -113,7 +135,8 @@ class Elpa(AutotoolsPackage, CudaPackage):
'FC={0}'.format(spec['mpi'].mpifc),
'CXX={0}'.format(spec['mpi'].mpicxx),
'LDFLAGS={0}'.format(spec['lapack'].libs.search_flags),
- 'LIBS={0}'.format(spec['lapack'].libs.link_flags),
+ 'LIBS={0} {1}'.format(
+ spec['lapack'].libs.link_flags, spec['blas'].libs.link_flags),
'SCALAPACK_LDFLAGS={0}'.format(spec['scalapack'].libs.joined())
])
diff --git a/var/spack/repos/builtin/packages/elpa/python_shebang.patch b/var/spack/repos/builtin/packages/elpa/python_shebang.patch
new file mode 100644
index 0000000000..4b9b2c9530
--- /dev/null
+++ b/var/spack/repos/builtin/packages/elpa/python_shebang.patch
@@ -0,0 +1,8 @@
+--- a/manual_cpp 2021-01-27 20:21:23.897206207 +0100
++++ b/manual_cpp 2021-01-27 20:13:08.743822289 +0100
+@@ -1,4 +1,4 @@
+-#!/usr/bin/python
++#!/usr/bin/env python
+ from __future__ import print_function
+ import os
+ import sys
diff --git a/var/spack/repos/builtin/packages/elsd/package.py b/var/spack/repos/builtin/packages/elsd/package.py
index f625b80dda..eb2f7c787f 100644
--- a/var/spack/repos/builtin/packages/elsd/package.py
+++ b/var/spack/repos/builtin/packages/elsd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/elsdc/package.py b/var/spack/repos/builtin/packages/elsdc/package.py
index c41e5ece66..13b74bb0d9 100644
--- a/var/spack/repos/builtin/packages/elsdc/package.py
+++ b/var/spack/repos/builtin/packages/elsdc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/elsi/package.py b/var/spack/repos/builtin/packages/elsi/package.py
index f800b57943..b7669415bd 100644
--- a/var/spack/repos/builtin/packages/elsi/package.py
+++ b/var/spack/repos/builtin/packages/elsi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/emacs/package.py b/var/spack/repos/builtin/packages/emacs/package.py
index 0759fd28d5..5dfadc5389 100644
--- a/var/spack/repos/builtin/packages/emacs/package.py
+++ b/var/spack/repos/builtin/packages/emacs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,11 @@ class Emacs(AutotoolsPackage, GNUMirrorPackage):
"""The Emacs programmable text editor."""
homepage = "https://www.gnu.org/software/emacs"
+ git = "git://git.savannah.gnu.org/emacs.git"
gnu_mirror_path = "emacs/emacs-24.5.tar.gz"
+ version('master', branch='master')
+ version('27.2', sha256='80ff6118fb730a6d8c704dccd6915a6c0e0a166ab1daeef9fe68afa9073ddb73')
version('27.1', sha256='ffbfa61dc951b92cf31ebe3efc86c5a9d4411a1222b8a4ae6716cfd0e2a584db')
version('26.3', sha256='09c747e048137c99ed35747b012910b704e0974dde4db6696fde7054ce387591')
version('26.2', sha256='4f99e52a38a737556932cc57479e85c305a37a8038aaceb5156625caf102b4eb')
@@ -31,6 +34,7 @@ class Emacs(AutotoolsPackage, GNUMirrorPackage):
description="Select an X toolkit (gtk, athena)"
)
variant('tls', default=False, description="Build Emacs with gnutls")
+ variant('native', default=False, description="enable native compilation of elisp")
depends_on('pkgconfig', type='build')
@@ -47,8 +51,15 @@ class Emacs(AutotoolsPackage, GNUMirrorPackage):
depends_on('gtkplus', when='+X toolkit=gtk')
depends_on('gnutls', when='+tls')
depends_on('jpeg')
+ depends_on('m4', type='build', when="@master:")
+ depends_on('autoconf', type='build', when="@master:")
+ depends_on('automake', type='build', when="@master:")
+ depends_on('libtool', type='build', when="@master:")
+ depends_on('texinfo', type='build', when="@master:")
+ depends_on('gcc@11: +strip languages=jit', when="+native")
conflicts('@:26.3', when='platform=darwin os=catalina')
+ conflicts('+native', when='@:27.99.99', msg="native compilation require @master")
@when('platform=darwin')
def setup_build_environment(self, env):
@@ -74,6 +85,9 @@ class Emacs(AutotoolsPackage, GNUMirrorPackage):
if sys.platform == 'darwin':
args.append('--without-ns')
+ if '+native' in spec:
+ args.append('--with-native-compilation')
+
if '+tls' in spec:
args.append('--with-gnutls')
else:
diff --git a/var/spack/repos/builtin/packages/ember/package.py b/var/spack/repos/builtin/packages/ember/package.py
index 3d866fdc11..1952b18191 100644
--- a/var/spack/repos/builtin/packages/ember/package.py
+++ b/var/spack/repos/builtin/packages/ember/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -61,7 +61,7 @@ class Ember(MakefilePackage):
targets = []
cc = self.spec['mpi'].mpicc
cflags = '-O3'
- if not self.spec.satisfies('%nvhpc'):
+ if not self.spec.satisfies('%nvhpc@:20.11'):
cflags = '-O3 -std=c99'
oshmem_cc = 'cc'
oshmem_c_flags = '-O3 -g'
diff --git a/var/spack/repos/builtin/packages/emboss/package.py b/var/spack/repos/builtin/packages/emboss/package.py
index 62f043694a..19ac6695ce 100644
--- a/var/spack/repos/builtin/packages/emboss/package.py
+++ b/var/spack/repos/builtin/packages/emboss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/embree/package.py b/var/spack/repos/builtin/packages/embree/package.py
index 432055aa83..d86787dcb6 100644
--- a/var/spack/repos/builtin/packages/embree/package.py
+++ b/var/spack/repos/builtin/packages/embree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/enca/package.py b/var/spack/repos/builtin/packages/enca/package.py
index 9324a22652..13e44fbe1f 100644
--- a/var/spack/repos/builtin/packages/enca/package.py
+++ b/var/spack/repos/builtin/packages/enca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/enchant/package.py b/var/spack/repos/builtin/packages/enchant/package.py
index 4592a2a671..3666a3616e 100644
--- a/var/spack/repos/builtin/packages/enchant/package.py
+++ b/var/spack/repos/builtin/packages/enchant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/energyplus/package.py b/var/spack/repos/builtin/packages/energyplus/package.py
index 13b1d5b745..397d37ea6b 100644
--- a/var/spack/repos/builtin/packages/energyplus/package.py
+++ b/var/spack/repos/builtin/packages/energyplus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/entrezdirect/package.py b/var/spack/repos/builtin/packages/entrezdirect/package.py
index 038a57035f..e75d9fc762 100644
--- a/var/spack/repos/builtin/packages/entrezdirect/package.py
+++ b/var/spack/repos/builtin/packages/entrezdirect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/entt/package.py b/var/spack/repos/builtin/packages/entt/package.py
index 9d06460a31..704ba4456f 100644
--- a/var/spack/repos/builtin/packages/entt/package.py
+++ b/var/spack/repos/builtin/packages/entt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/environment-modules/package.py b/var/spack/repos/builtin/packages/environment-modules/package.py
index c6b023c251..e3f9a4616f 100644
--- a/var/spack/repos/builtin/packages/environment-modules/package.py
+++ b/var/spack/repos/builtin/packages/environment-modules/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,12 @@ class EnvironmentModules(Package):
"""
homepage = 'https://cea-hpc.github.io/modules/'
- url = 'https://github.com/cea-hpc/modules/releases/download/v4.6.1/modules-4.6.1.tar.gz'
+ url = 'https://github.com/cea-hpc/modules/releases/download/v4.7.1/modules-4.7.1.tar.gz'
maintainers = ['xdelaruelle']
+ version('4.7.1', sha256='ee7ecd62bbbde6d51e30788a97800c39e72515b6a910839fb84041b35ba42b4d')
+ version('4.7.0', sha256='3ab0a649e23b4dd00963e4cae60e573b449194ecb4035c5ce487330b272b4d06')
version('4.6.1', sha256='3445df39abe5838b94552b53e7dbff56ada8347b9fdc6c04a72297d5b04af76f')
version('4.6.0', sha256='b42b14bb696bf1075ade1ecaefe7735dbe411db4c29031a1dae549435eafa946')
version('4.5.3', sha256='7cbd9c61e6dcd82a3f81b5ced92c3cf84ecc5489639bdfc94869256383a2c915')
diff --git a/var/spack/repos/builtin/packages/enzo/for_aarch64.patch b/var/spack/repos/builtin/packages/enzo/for_aarch64.patch
new file mode 100644
index 0000000000..6e1672bda0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/enzo/for_aarch64.patch
@@ -0,0 +1,11 @@
+--- spack-src/src/enzo/FindSuperSourceByPosition.C.bak 2019-09-19 21:35:51.000000000 +0900
++++ spack-src/src/enzo/FindSuperSourceByPosition.C 2021-02-17 11:58:28.574066786 +0900
+@@ -1,7 +1,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <math.h>
+-#include <xmmintrin.h>
++#include <sse2neon.h>
+ #include "ErrorExceptions.h"
+ #include "macros_and_parameters.h"
+ #include "typedefs.h"
diff --git a/var/spack/repos/builtin/packages/enzo/package.py b/var/spack/repos/builtin/packages/enzo/package.py
new file mode 100644
index 0000000000..6220d6e46a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/enzo/package.py
@@ -0,0 +1,67 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Enzo(MakefilePackage):
+ """The Enzo adaptive mesh-refinement simulation code."""
+
+ homepage = "https://enzo-project.org/"
+ url = "https://github.com/enzo-project/enzo-dev/archive/enzo-2.6.1.tar.gz"
+ git = "https://github.com/enzo-project/enzo-dev.git"
+
+ version('master', branch='master')
+ version('2.6.1', sha256='280270accfc1ddb60e92cc98ca538a3e5787e8cc93ed58fb5c3ab75db8c4b048')
+
+ depends_on('mpi')
+ depends_on('hdf5~mpi')
+ depends_on('sse2neon', when='target=aarch64:')
+
+ patch('for_aarch64.patch', when='target=aarch64:')
+
+ # https://github.com/enzo-project/enzo-dev/pull/158
+ patch('https://github.com/enzo-project/enzo-dev/commit/0191ff5ad9ad2c7639d44823e84cd0115e7a2970.patch', sha256='01328a5f5fe72ac5af31661deb6891ea160264b67a470d6ce91b71b001845810', when='@2.6.1 ^hdf5@1.12.0:')
+
+ def flag_handler(self, name, flags):
+ if name == 'fflags':
+ if self.spec.satisfies('%gcc@10:'):
+ if flags is None:
+ flags = []
+ flags.append('-fallow-argument-mismatch')
+
+ return (flags, None, None)
+
+ def edit(self, spec, prefix):
+ configure = Executable('./configure')
+ configure()
+
+ with working_dir('src/enzo'):
+ copy('Make.mach.linux-gnu', 'Make.mach.spack')
+ filter_file('^MACH_FILE.*',
+ 'MACH_FILE = Make.mach.spack',
+ 'Make.mach.spack')
+ filter_file('^LOCAL_HDF5_INSTALL.*',
+ 'LOCAL_HDF5_INSTALL = {0}'.format(spec['hdf5'].prefix),
+ 'Make.mach.spack')
+ filter_file('^LOCAL_GRACKLE_INSTALL.*',
+ 'LOCAL_GRACKLE_INSTALL =',
+ 'Make.mach.spack')
+ filter_file('^LOCAL_HYPRE_INSTALL.*',
+ 'LOCAL_HYPRE_INSTALL =',
+ 'Make.mach.spack')
+
+ def build(self, spec, prefix):
+ with working_dir('src/enzo'):
+ make('machine-spack')
+ make('opt-high')
+ make('show-config')
+ make()
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('doc', prefix.doc)
+ install_tree('input', prefix.input)
+ install_tree('run', prefix.run)
diff --git a/var/spack/repos/builtin/packages/eospac/cpuinfo_comp_flags_key.patch b/var/spack/repos/builtin/packages/eospac/cpuinfo_comp_flags_key.patch
new file mode 100644
index 0000000000..178fd5293f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eospac/cpuinfo_comp_flags_key.patch
@@ -0,0 +1,23 @@
+--- a/Source/config/Makefile.-linux-gnu.hashes 2019-10-12 12:16:17.000000000 -0600
++++ b/Source/config/Makefile.-linux-gnu.hashes 2020-09-25 15:14:45.990734000 -0600
+@@ -267,9 +267,9 @@
+ ifneq ($(strip $(CPUFLAGS)),)
+
+ KEYLIST = $(call keys,_F90-CPUINFO_COMP_FLAGS)
+- MYKEYS = $(addprefix $(F90)-$(_F90_MAJOR_VERSION)-,$(CPUFLAGS))
++ MYKEYS = $(addprefix $(notdir $(F90))-$(_F90_MAJOR_VERSION)-,$(CPUFLAGS))
+ SHORTCUT = $(filter $(MYKEYS),$(KEYLIST))
+- OTHER = $(subst $(F90)-$(_F90_MAJOR_VERSION)-,,$(filter-out $(SHORTCUT),$(MYKEYS)))
++ OTHER = $(subst $(notdir $(F90))-$(_F90_MAJOR_VERSION)-,,$(filter-out $(SHORTCUT),$(MYKEYS)))
+ # $(warning CPUFLAGS : "$(CPUFLAGS)")
+ # $(warning KEYLIST : $(KEYLIST))
+ # $(warning MYKEYS : $(MYKEYS))
+@@ -284,7 +284,7 @@
+
+ ifeq ($(ALT_SUBDIR_Key1),craype-mic-knl)
+ # define the default _CPUINFO_FLAGS for the craype-mic-knl
+- _CPUINFO_FLAGS += $(call get,_F90-CPUINFO_COMP_FLAGS,$(F90)-$(_F90_MAJOR_VERSION)-knl)
++ _CPUINFO_FLAGS += $(call get,_F90-CPUINFO_COMP_FLAGS,$(notdir $(F90))-$(_F90_MAJOR_VERSION)-knl)
+ else
+ # define the default _CPUINFO_FLAGS
+ _CPUINFO_FLAGS += $(call get,_F90-CPUINFO_COMP_FLAGS,$(notdir $(F90)-$(_F90_MAJOR_VERSION)-$(lastword $(_SUPPORTED_CPUINFO_FLAGS))))
diff --git a/var/spack/repos/builtin/packages/eospac/package.py b/var/spack/repos/builtin/packages/eospac/package.py
index bb0f06085f..04e2b6ee12 100644
--- a/var/spack/repos/builtin/packages/eospac/package.py
+++ b/var/spack/repos/builtin/packages/eospac/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,16 @@ class Eospac(Package):
homepage = "http://laws.lanl.gov/projects/data/eos.html"
list_url = "http://laws.lanl.gov/projects/data/eos/eospacReleases.php"
- version('6.4.1', sha256='2310c49bd7a60cad41d2cb1059c5f0a1904f0c778b164937182382df326ca003', preferred=True,
+ # An EOSPAC release labeled "beta" doesn't always imply that the
+ # release is less suitable for production. According to the
+ # current EOSPAC release procedure, even a release that only fixes
+ # known bugs in a previous stable release will appear first as a
+ # new beta.
+ version('6.4.2', sha256='13627a5c94d3a456659d1bba0f3cec157380933fbd401e13e25906166150a252',
+ url="https://laws.lanl.gov/projects/data/eos/get_file.php?package=eospac&filename=eospac_v6.4.2_e2f7906a0863932e3d65d329f789c4b90c6be58d.tgz")
+ version('6.4.2beta', sha256='635b94f1ec7558deca92a3858c92db0f4437170252bb114cbdb809b74b6ee870', preferred=True,
+ url="http://laws.lanl.gov/projects/data/eos/get_file.php?package=eospac&filename=eospac_v6.4.2beta_a62baf70708536f6fb5486e315c730fa76c1f6b5.tgz")
+ version('6.4.1', sha256='2310c49bd7a60cad41d2cb1059c5f0a1904f0c778b164937182382df326ca003',
url="http://laws.lanl.gov/projects/data/eos/get_file.php?package=eospac&filename=eospac_v6.4.1_0cc1bc21a8bb1adadbae0dd3a2135790e8119320.tgz")
version('6.4.1beta', sha256='479074a7be724760f8f1f90a8673f6197b7c5aa1ff76242ecf3790c9016e08c3',
url="http://laws.lanl.gov/projects/data/eos/get_file.php?package=eospac&filename=eospac_v6.4.1beta_b651322c74cf5729732afd5d77c66c41d677be5e.tgz")
@@ -37,6 +46,9 @@ class Eospac(Package):
# This patch allows the use of spack's compile wrapper 'flang'
patch('flang.patch', when='@:6.4.0beta.2%clang')
patch('frt.patch', when='%fj')
+ # This patch corrects EOSPAC's selection of compiler flags when
+ # compilers are specified using absolute pathnames.
+ patch('cpuinfo_comp_flags_key.patch', when='@:6.4.1,6.4.2beta')
def install(self, spec, prefix):
with working_dir('Source'):
diff --git a/var/spack/repos/builtin/packages/eq-r/package.py b/var/spack/repos/builtin/packages/eq-r/package.py
index 8270489368..6b69160124 100644
--- a/var/spack/repos/builtin/packages/eq-r/package.py
+++ b/var/spack/repos/builtin/packages/eq-r/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/er/package.py b/var/spack/repos/builtin/packages/er/package.py
index 343a08ff91..358ea66ec9 100644
--- a/var/spack/repos/builtin/packages/er/package.py
+++ b/var/spack/repos/builtin/packages/er/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,25 +10,30 @@ class Er(CMakePackage):
"""Encoding and redundancy on a file set"""
homepage = "https://github.com/ecp-veloc/er"
- url = "https://github.com/ecp-veloc/er/archive/v0.0.3.zip"
+ url = "https://github.com/ecp-veloc/er/archive/v0.0.3.tar.gz"
git = "https://github.com/ecp-veloc/er.git"
tags = ['ecp']
version('master', branch='master')
- version('0.0.3', sha256='9aa08f9fe70e42f0da27a5d90d4643b520d61f24742303bf016322823b3c4d26')
+ version('0.0.4', sha256='c456d34719bb57774adf6d7bc2fa9917ecb4a9de442091023c931a2cb83dfd37')
+ version('0.0.3', sha256='243b2b46ea274e17417ef5873c3ed7ba16dacdfdaf7053d1de5434e300de796b')
depends_on('mpi')
- depends_on('kvtree')
+ depends_on('kvtree+mpi')
+ depends_on('rankstr', when='@0.0.4:')
depends_on('redset')
depends_on('shuffile')
def cmake_args(self):
+ spec = self.spec
args = []
- args.append("-DMPI_C_COMPILER=%s" % self.spec['mpi'].mpicc)
- if self.spec.satisfies('platform=cray'):
+ args.append("-DMPI_C_COMPILER=%s" % spec['mpi'].mpicc)
+ if spec.satisfies('platform=cray'):
args.append("-DER_LINK_STATIC=ON")
- args.append("-DWITH_KVTREE_PREFIX=%s" % self.spec['kvtree'].prefix)
- args.append("-DWITH_REDSET_PREFIX=%s" % self.spec['redset'].prefix)
- args.append("-DWITH_SHUFFILE_PREFIX=%s" % self.spec['shuffile'].prefix)
+ args.append("-DWITH_KVTREE_PREFIX=%s" % spec['kvtree'].prefix)
+ args.append("-DWITH_REDSET_PREFIX=%s" % spec['redset'].prefix)
+ args.append("-DWITH_SHUFFILE_PREFIX=%s" % spec['shuffile'].prefix)
+ if spec.satisfies('@0.0.4:'):
+ args.append("-DWITH_RANKSTR_PREFIX=%s" % spec['rankstr'].prefix)
return args
diff --git a/var/spack/repos/builtin/packages/erfa/package.py b/var/spack/repos/builtin/packages/erfa/package.py
index b500089352..0a6a8b54a1 100644
--- a/var/spack/repos/builtin/packages/erfa/package.py
+++ b/var/spack/repos/builtin/packages/erfa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/erlang/package.py b/var/spack/repos/builtin/packages/erlang/package.py
index 02d097fbd3..913774b562 100644
--- a/var/spack/repos/builtin/packages/erlang/package.py
+++ b/var/spack/repos/builtin/packages/erlang/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,9 +14,12 @@ class Erlang(AutotoolsPackage):
"""
homepage = "https://erlang.org/"
- url = "https://erlang.org/download/otp_src_22.2.tar.gz"
+ url = "https://erlang.org/download/otp_src_23.3.tar.gz"
- version('23.0', sha256='42dcf3c721f4de59fe74ae7b65950c2174c46dc8d1dd4e27c0594d86f606a635')
+ version('23.3', sha256='3c888d8f46124e134b75a9ba5d845f079020b7198ed2de64411e183d07e9002a')
+ version('23.2', sha256='40e03428826c92e409e4f1510f9c0539eafb3ac49d6c2f607f4fa274d11a8928')
+ version('23.1', sha256='cb5b7246eeaac9298c51c9915386df2f784e82a3f7ff93b68453591f0b370400')
+ version('23.0', sha256='42dcf3c721f4de59fe74ae7b65950c2174c46dc8d1dd4e27c0594d86f606a635')
version('22.2', sha256='89c2480cdac566065577c82704a48e10f89cf2e6ca5ab99e1cf80027784c678f')
version('22.1', sha256='cd33a102cbac6dd1c7b1e7a9a0d82d13587771fac4e96e8fff92e403d15e32c8')
version('22.0', sha256='042e168d74055a501c75911694758a30597446accd8c82ec569552b9e9fcd272')
diff --git a/var/spack/repos/builtin/packages/ermod/package.py b/var/spack/repos/builtin/packages/ermod/package.py
index 38c2ab6963..51d5ab7c9e 100644
--- a/var/spack/repos/builtin/packages/ermod/package.py
+++ b/var/spack/repos/builtin/packages/ermod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/erne/package.py b/var/spack/repos/builtin/packages/erne/package.py
index 3a9e276851..5d5de68350 100644
--- a/var/spack/repos/builtin/packages/erne/package.py
+++ b/var/spack/repos/builtin/packages/erne/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/es-shell/package.py b/var/spack/repos/builtin/packages/es-shell/package.py
index c8f7bcc83c..c3093d30cd 100644
--- a/var/spack/repos/builtin/packages/es-shell/package.py
+++ b/var/spack/repos/builtin/packages/es-shell/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,3 +19,4 @@ class EsShell(AutotoolsPackage):
version('0.9.1', sha256='b0b41fce99b122a173a06b899a4d92e5bd3cc48b227b2736159f596a58fff4ba')
depends_on('readline')
+ depends_on('yacc')
diff --git a/var/spack/repos/builtin/packages/esmf/package.py b/var/spack/repos/builtin/packages/esmf/package.py
index 3055b4446e..d5c4724f99 100644
--- a/var/spack/repos/builtin/packages/esmf/package.py
+++ b/var/spack/repos/builtin/packages/esmf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,8 +15,10 @@ class Esmf(MakefilePackage):
and utilities for developing individual models."""
homepage = "https://www.earthsystemcog.org/projects/esmf/"
- url = "http://www.earthsystemmodeling.org/esmf_releases/public/ESMF_7_1_0r/esmf_7_1_0r_src.tar.gz"
+ url = 'https://github.com/esmf-org/esmf/archive/ESMF_8_0_1.tar.gz'
+ version('8.0.1', sha256='9172fb73f3fe95c8188d889ee72fdadb4f978b1d969e1d8e401e8d106def1d84')
+ version('8.0.0', sha256='051dca45f9803d7e415c0ea146df15ce487fb55f0fce18ca61d96d4dba0c8774')
version('7.1.0r', sha256='ae9a5edb8d40ae97a35cbd4bd00b77061f995c77c43d36334dbb95c18b00a889')
variant('mpi', default=True, description='Build with MPI support')
@@ -68,7 +70,10 @@ class Esmf(MakefilePackage):
chmod('+x', 'scripts/libs.mvapich2f90')
def url_for_version(self, version):
- return "http://www.earthsystemmodeling.org/esmf_releases/public/ESMF_{0}/esmf_{0}_src.tar.gz".format(version.underscored)
+ if version < Version('8.0.0'):
+ return "http://www.earthsystemmodeling.org/esmf_releases/public/ESMF_{0}/esmf_{0}_src.tar.gz".format(version.underscored)
+ else:
+ return "https://github.com/esmf-org/esmf/archive/ESMF_{0}.tar.gz".format(version.underscored)
def edit(self, spec, prefix):
# Installation instructions can be found at:
diff --git a/var/spack/repos/builtin/packages/espanso/package.py b/var/spack/repos/builtin/packages/espanso/package.py
index b820a14be8..0c946e23d9 100644
--- a/var/spack/repos/builtin/packages/espanso/package.py
+++ b/var/spack/repos/builtin/packages/espanso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/essl/package.py b/var/spack/repos/builtin/packages/essl/package.py
index 29ba3958e7..d0442ede00 100644
--- a/var/spack/repos/builtin/packages/essl/package.py
+++ b/var/spack/repos/builtin/packages/essl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/etcd/package.py b/var/spack/repos/builtin/packages/etcd/package.py
index fa21e6965b..e3b58cec63 100644
--- a/var/spack/repos/builtin/packages/etcd/package.py
+++ b/var/spack/repos/builtin/packages/etcd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ethminer/package.py b/var/spack/repos/builtin/packages/ethminer/package.py
index bc57f2630d..1d33f32520 100644
--- a/var/spack/repos/builtin/packages/ethminer/package.py
+++ b/var/spack/repos/builtin/packages/ethminer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,8 +28,8 @@ class Ethminer(CMakePackage):
depends_on('mesa', when='+opencl')
def cmake_args(self):
- spec = self.spec
return [
- '-DETHASHCL=%s' % ('YES' if '+opencl' in spec else 'NO'),
- '-DETHASHCUDA=%s' % ('YES' if '+cuda' in spec else 'NO'),
- '-DETHSTRATUM=%s' % ('YES' if '+stratum' in spec else 'NO')]
+ self.define_from_variant('ETHASHCL', 'opencl'),
+ self.define_from_variant('ETHASHCUDA', 'cuda'),
+ self.define_from_variant('ETHSTRATUM', 'stratum')
+ ]
diff --git a/var/spack/repos/builtin/packages/ethtool/package.py b/var/spack/repos/builtin/packages/ethtool/package.py
index bbf53f505f..3b7337ad43 100644
--- a/var/spack/repos/builtin/packages/ethtool/package.py
+++ b/var/spack/repos/builtin/packages/ethtool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/etsf-io/package.py b/var/spack/repos/builtin/packages/etsf-io/package.py
index a878894db3..e180397ce8 100644
--- a/var/spack/repos/builtin/packages/etsf-io/package.py
+++ b/var/spack/repos/builtin/packages/etsf-io/package.py
@@ -1,9 +1,7 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-
from spack import *
@@ -22,6 +20,8 @@ class EtsfIo(Package):
version('1.0.4', sha256='3140c2cde17f578a0e6b63acb27a5f6e9352257a1371a17b9c15c3d0ef078fa4')
+ variant('mpi', default=True, description='Add MPI support')
+
depends_on("netcdf-fortran")
depends_on("hdf5+mpi~cxx", when='+mpi') # required for NetCDF-4 support
diff --git a/var/spack/repos/builtin/packages/evemu/package.py b/var/spack/repos/builtin/packages/evemu/package.py
index 09041d6f94..98f203ffff 100644
--- a/var/spack/repos/builtin/packages/evemu/package.py
+++ b/var/spack/repos/builtin/packages/evemu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/everytrace-example/package.py b/var/spack/repos/builtin/packages/everytrace-example/package.py
index 6ba1271522..1d7b89d53a 100644
--- a/var/spack/repos/builtin/packages/everytrace-example/package.py
+++ b/var/spack/repos/builtin/packages/everytrace-example/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/everytrace/package.py b/var/spack/repos/builtin/packages/everytrace/package.py
index f07607fc12..9e0a3a3a1a 100644
--- a/var/spack/repos/builtin/packages/everytrace/package.py
+++ b/var/spack/repos/builtin/packages/everytrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,8 +26,7 @@ class Everytrace(CMakePackage):
depends_on('mpi', when='+mpi')
def cmake_args(self):
- spec = self.spec
return [
- '-DUSE_MPI=%s' % ('YES' if '+mpi' in spec else 'NO'),
- '-DUSE_FORTRAN=%s' % ('YES' if '+fortran' in spec else 'NO'),
- '-DUSE_CXX=%s' % ('YES' if '+cxx' in spec else 'NO')]
+ self.define_from_variant('USE_MPI', 'mpi'),
+ self.define_from_variant('USE_FORTRAN', 'fortran'),
+ self.define_from_variant('USE_CXX', 'cxx')]
diff --git a/var/spack/repos/builtin/packages/evieext/package.py b/var/spack/repos/builtin/packages/evieext/package.py
index a926727e5d..2725549ad2 100644
--- a/var/spack/repos/builtin/packages/evieext/package.py
+++ b/var/spack/repos/builtin/packages/evieext/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/evtgen/package.py b/var/spack/repos/builtin/packages/evtgen/package.py
index 641d3d5795..b827a36fd9 100644
--- a/var/spack/repos/builtin/packages/evtgen/package.py
+++ b/var/spack/repos/builtin/packages/evtgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,35 +6,68 @@
from spack import *
-class Evtgen(AutotoolsPackage):
+class Evtgen(CMakePackage):
""" EvtGen is a Monte Carlo event generator that simulates
the decays of heavy flavour particles, primarily B and D mesons. """
homepage = "https://evtgen.hepforge.org/"
- url = "http://lcgpackages.web.cern.ch/lcgpackages/tarFiles/sources/MCGeneratorsTarFiles/evtgen-R01-07-00.tar.gz"
+ url = "https://evtgen.hepforge.org/downloads?f=EvtGen-02.00.00.tar.gz"
+
+ tags = ['hep']
maintainers = ['vvolkl']
- version('02-00-00', sha256='02372308e1261b8369d10538a3aa65fe60728ab343fcb64b224dac7313deb719')
- version('01-07-00', sha256='2648f1e2be5f11568d589d2079f22f589c283a2960390bbdb8d9d7f71bc9c014', preferred=True)
+ version('02.00.00', sha256='02372308e1261b8369d10538a3aa65fe60728ab343fcb64b224dac7313deb719')
+ # switched to cmake in 02.00.00
+ version('01.07.00', sha256='2648f1e2be5f11568d589d2079f22f589c283a2960390bbdb8d9d7f71bc9c014', deprecated=True)
variant('pythia8', default=True, description='Build with pythia8')
variant('tauola', default=False, description='Build with tauola')
variant('photos', default=False, description='Build with photos')
+ variant('hepmc3', default=False, description='Link with hepmc3 (instead of hepmc)')
- patch("g2c.patch")
+ patch("g2c.patch", when='@01.07.00')
- depends_on('hepmc@:2.99.99')
+ depends_on('hepmc', when='~hepmc3')
+ depends_on('hepmc3', when='+hepmc3')
depends_on("pythia8", when="+pythia8")
- depends_on("tauola", when="+tauola")
- depends_on("photos", when="+photos")
+ depends_on("tauola~hepmc3", when="+tauola~hepmc3")
+ depends_on("photos~hepmc3", when="+photos~hepmc3")
+ depends_on("tauola+hepmc3", when="+tauola+hepmc3")
+ depends_on("photos+hepmc3", when="+photos+hepmc3")
conflicts("^pythia8+evtgen", when="+pythia8",
msg="Building pythia with evtgen bindings and "
"evtgen with pythia bindings results in a circular dependency "
"that cannot be resolved at the moment! "
"Use evtgen+pythia8^pythia8~evtgen.")
+ conflicts('+hepmc3', when='@:01.99.99',
+ msg='hepmc3 support was added in 02.00.00')
+
+ def cmake_args(self):
+ args = []
+
+ args.append(self.define_from_variant('EVTGEN_PYTHIA', 'pythia8'))
+ args.append(self.define_from_variant('EVTGEN_TAUOLA', 'tauola'))
+ args.append(self.define_from_variant('EVTGEN_PHOTOS', 'photos'))
+ args.append(self.define_from_variant('EVTGEN_HEPMC3', 'hepmc3'))
+
+ return args
+
+ # Taken from AutotoolsPackage
+ def configure(self, spec, prefix):
+ """Runs configure with the arguments specified in
+ :py:meth:`~.AutotoolsPackage.configure_args`
+ and an appropriately set prefix.
+ """
+ options = getattr(self, 'configure_flag_args', [])
+ options += ['--prefix={0}'.format(prefix)]
+ options += self.configure_args()
+
+ with working_dir(self.build_directory, create=True):
+ inspect.getmodule(self).configure(*options)
+ @when('@:01.99.99')
def configure_args(self):
args = []
@@ -48,11 +81,23 @@ class Evtgen(AutotoolsPackage):
return args
+ @when('@:01.99.99')
+ def cmake(self, spec, prefix):
+ pass
+
+ @when('@:01.99.99')
def build(self, spec, prefix):
+ self.configure(spec, prefix)
# avoid parallel compilation errors
# due to libext_shared depending on lib_shared
- make('lib_shared')
- make('all')
+ with working_dir(self.build_directory):
+ make('lib_shared')
+ make('all')
+
+ @when('@:01.99.99')
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ make('install')
def setup_run_environment(self, env):
env.set("EVTGEN", self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/exa/package.py b/var/spack/repos/builtin/packages/exa/package.py
index e6a0fe39a4..50809bc6c4 100644
--- a/var/spack/repos/builtin/packages/exa/package.py
+++ b/var/spack/repos/builtin/packages/exa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/exabayes/package.py b/var/spack/repos/builtin/packages/exabayes/package.py
index c8ef56717d..8440b7c450 100644
--- a/var/spack/repos/builtin/packages/exabayes/package.py
+++ b/var/spack/repos/builtin/packages/exabayes/package.py
@@ -1,10 +1,8 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
-
class Exabayes(AutotoolsPackage):
"""ExaBayes is a software package for Bayesian tree inference. It is
@@ -13,6 +11,7 @@ class Exabayes(AutotoolsPackage):
homepage = "https://sco.h-its.org/exelixis/web/software/exabayes/"
url = "https://sco.h-its.org/exelixis/resource/download/software/exabayes-1.5.tar.gz"
+ version('1.5.1', sha256='f75ce8d5cee4d241cadacd0f5f5612d783b9e9babff2a99c7e0c3819a94bbca9')
version('1.5', sha256='e401f1b4645e67e8879d296807131d0ab79bba81a1cd5afea14d7c3838b095a2')
variant('mpi', default=True, description='Enable MPI parallel support')
@@ -22,7 +21,7 @@ class Exabayes(AutotoolsPackage):
# ExaBayes manual states the program succesfully compiles with GCC, version
# 4.6 or greater, and Clang, version 3.2 or greater. The build fails when
# GCC 7.1.0 is used.
- conflicts('%gcc@:4.5.4, 7.1.0:')
+ conflicts('%gcc@:4.5.4, 7.1.0:', when='@:1.5.0')
conflicts('%clang@:3.1')
conflicts('^intel-mpi', when='+mpi')
conflicts('^intel-parallel-studio+mpi', when='+mpi')
diff --git a/var/spack/repos/builtin/packages/exago/package.py b/var/spack/repos/builtin/packages/exago/package.py
new file mode 100755
index 0000000000..1ffe2d7cbe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/exago/package.py
@@ -0,0 +1,89 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Exago(CMakePackage, CudaPackage):
+ """ExaGO is a package for solving large-scale power grid optimization
+ problems on parallel and distributed architectures, particularly targeted
+ for exascale machines."""
+
+ homepage = 'https://gitlab.pnnl.gov/exasgd/frameworks/exago'
+ git = 'https://gitlab.pnnl.gov/exasgd/frameworks/exago.git'
+
+ version('1.0.0', tag='v1.0.0')
+ version('0.99.2', tag='v0.99.2')
+ version('0.99.1', tag='v0.99.1')
+ version('master', branch='master')
+ version('develop', branch='develop')
+
+ # Progrmming model options
+ variant('mpi', default=True, description='Enable/Disable MPI')
+ variant('raja', default=False, description='Enable/Disable RAJA')
+
+ # Solver options
+ variant('hiop', default=False, description='Enable/Disable HiOp')
+ variant('petsc', default=True, description='Enable/Disable PETSc')
+ variant('ipopt', default=False, description='Enable/Disable IPOPT')
+
+ # Dependencides
+ depends_on('mpi', when='+mpi')
+ depends_on('blas')
+ depends_on('cuda', when='+cuda')
+ depends_on('raja', when='+raja')
+ depends_on('raja+cuda', when='+raja+cuda')
+ depends_on('umpire', when='+raja')
+
+ # Some allocator code in Umpire only works with static libs
+ depends_on('umpire+cuda~shared', when='+raja+cuda')
+
+ # For some versions of RAJA package, camp cuda variant does not get set
+ # correctly, so we must explicitly depend on it even though we don't use
+ # camp
+ depends_on('camp+cuda', when='+cuda')
+
+ depends_on('cmake@3.18:', type='build')
+
+ # HiOp dependency logic
+ depends_on('hiop+shared', when='+hiop')
+ depends_on('hiop+raja', when='+hiop+raja')
+ depends_on('hiop@0.3.99:', when='@0.99:+hiop')
+ depends_on('hiop+cuda', when='+hiop+cuda')
+ depends_on('hiop~mpi', when='+hiop~mpi')
+ depends_on('hiop+mpi', when='+hiop+mpi')
+
+ # Require PETSc < 3.15 per ExaGO issue #199
+ depends_on('petsc@3.13:3.14', when='+petsc')
+ depends_on('petsc~mpi', when='+petsc~mpi')
+ depends_on('ipopt', when='+ipopt')
+
+ flag_handler = build_system_flags
+
+ def cmake_args(self):
+ args = []
+ spec = self.spec
+
+ args.append("-DEXAGO_RUN_TESTS=ON")
+
+ args.append(self.define_from_variant('EXAGO_ENABLE_MPI', 'mpi'))
+ args.append(self.define_from_variant('EXAGO_ENABLE_RAJA', 'raja'))
+ args.append(self.define_from_variant('EXAGO_ENABLE_HIOP', 'hiop'))
+ args.append(self.define_from_variant('EXAGO_ENABLE_PETSC', 'petsc'))
+ args.append(self.define_from_variant('EXAGO_ENABLE_IPOPT', 'ipopt'))
+ args.append(self.define_from_variant('EXAGO_ENABLE_GPU', 'cuda'))
+ args.append(self.define_from_variant('EXAGO_ENABLE_CUDA', 'cuda'))
+
+ if '+cuda' in spec:
+ cuda_arch_list = spec.variants['cuda_arch'].value
+ cuda_arch = cuda_arch_list[0]
+ if cuda_arch != 'none':
+ args.append(
+ "-DCMAKE_CUDA_ARCHITECTURES={0}".format(cuda_arch))
+
+ if '+petsc' in spec:
+ args.append("-DPETSC_DIR='{0}'".format(spec['petsc'].prefix))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/examinimd/package.py b/var/spack/repos/builtin/packages/examinimd/package.py
index c8afa1c223..92c3880dcd 100644
--- a/var/spack/repos/builtin/packages/examinimd/package.py
+++ b/var/spack/repos/builtin/packages/examinimd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -56,7 +56,7 @@ class Examinimd(MakefilePackage):
targets.append('CXX = {0}'.format(self.spec['mpi'].mpicxx))
else:
targets.append('MPI=0')
- targets.append('CXX = {0}'.format('spack_cxx'))
+ targets.append('CXX = {0}'.format(spack_cxx))
return targets
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/examl/package.py b/var/spack/repos/builtin/packages/examl/package.py
index d5f115b9be..aff8e3ae4b 100644
--- a/var/spack/repos/builtin/packages/examl/package.py
+++ b/var/spack/repos/builtin/packages/examl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/exampm/package.py b/var/spack/repos/builtin/packages/exampm/package.py
index 64732c2eda..d952985077 100644
--- a/var/spack/repos/builtin/packages/exampm/package.py
+++ b/var/spack/repos/builtin/packages/exampm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/exasp2/package.py b/var/spack/repos/builtin/packages/exasp2/package.py
index f51d32a922..3211160074 100644
--- a/var/spack/repos/builtin/packages/exasp2/package.py
+++ b/var/spack/repos/builtin/packages/exasp2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/exciting/dfgather.patch b/var/spack/repos/builtin/packages/exciting/dfgather.patch
new file mode 100644
index 0000000000..1c0a847b61
--- /dev/null
+++ b/var/spack/repos/builtin/packages/exciting/dfgather.patch
@@ -0,0 +1,27 @@
+--- dfgather.F90_old 2020-09-16 17:19:18.000000000 -0600
++++ dfgather.F90 2020-09-16 17:19:21.000000000 -0600
+@@ -27,6 +27,11 @@
+ ! loop over q-points
+ Do iq = 1, nqpt
+ tq0 = tqgamma (iq)
++
++ call genfilname(basename='X0', bzsampl=bzsampl,&
++ & acont=input%xs%tddft%acont, nar= .not. input%xs%tddft%aresdf,&
++ & tord=input%xs%tddft%torddf, markfxcbse=tfxcbse, iqmt=iq, filnam=fnchi0)
++
+ ! calculate k+q and G+k+q related variables
+ Call init1offs (qvkloff(1, iq))
+ ! size of local field effects
+@@ -54,6 +59,12 @@
+ call mpi_bcast(chi0hd,3*3,MPI_DOUBLE_COMPLEX,iproc,mpi_comm_world,ierr)
+ #endif
+ if(rank.eq.0.or.(firstinnode.and. .not.input%sharedfs))then
++ if (iw == wpari) then
++ print *, 'procs=', procs
++ print *, 'rank=', rank
++ print *, 'iq=', iq, '/', nqpt
++ print *, 'fnchi0=',trim(fnchi0)
++ end if
+ Call putx0 (tq0, iq, iw, trim(fnchi0), '', chi0, chi0wg, &
+ & chi0hd)
+ endif
diff --git a/var/spack/repos/builtin/packages/exciting/for_aarch64.patch b/var/spack/repos/builtin/packages/exciting/for_aarch64.patch
new file mode 100644
index 0000000000..01e4a73939
--- /dev/null
+++ b/var/spack/repos/builtin/packages/exciting/for_aarch64.patch
@@ -0,0 +1,12 @@
+--- spack-src/src/FoX/config/config.guess.bak 2019-03-20 20:13:07.000000000 +0900
++++ spack-src/src/FoX/config/config.guess 2020-12-22 09:36:28.448022150 +0900
+@@ -832,6 +832,9 @@
+ arm*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
++ aarch64:Linux:*:*)
++ echo ${UNAME_MACHINE}-unknown-linux-gnu
++ exit ;;
+ avr32*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
diff --git a/var/spack/repos/builtin/packages/exciting/package.py b/var/spack/repos/builtin/packages/exciting/package.py
new file mode 100644
index 0000000000..c44f9aa93d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/exciting/package.py
@@ -0,0 +1,120 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Exciting(MakefilePackage):
+ """
+ exciting is a full-potential all-electron density-functional-theory package
+ implementing the families of linearized augmented planewave methods. It can
+ be applied to all kinds of materials, irrespective of the atomic species in
+ volved, and also allows for exploring the physics of core electrons. A
+ particular focus are excited states within many-body perturbation theory.
+ """
+
+ homepage = "http://exciting-code.org/"
+ url = "http://exciting.wdfiles.com/local--files/nitrogen-14/exciting.nitrogen-14.tar.gz"
+
+ version('14', sha256='a7feaffdc23881d6c0737d2f79f94d9bf073e85ea358a57196d7f7618a0a3eff')
+
+ # as-of-yet unpublished fix to version 14
+ patch('dfgather.patch', when='@14', working_dir='src/src_xs', level=0)
+ # Patch to add aarch64 in config.guess
+ patch('for_aarch64.patch', when='target=aarch64:')
+
+ variant('mpi', default=False, description='Use MPI')
+ variant('mkl', default=False, description='Use MKL')
+ variant('omp', default=True, description='Use OpenMP')
+ variant('scalapack', default=False, description='Use ScaLAPACK')
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('fftw', when='~mkl')
+ depends_on('mkl', when='+mkl')
+ depends_on('mpi', when='+mpi')
+ depends_on('scalapack', when='+scalapack')
+ conflicts('%gcc@10:', msg='exciting cannot be built with GCC 10')
+
+ for __compiler in spack.compilers.supported_compilers():
+ if __compiler != 'intel':
+ conflicts('%{0}'.format(__compiler), when='^mkl',
+ msg='MKL only works with the Intel compiler')
+
+ def edit(self, spec, prefix):
+ opts = {}
+ opts['BUILDSMP'] = 'true'
+ opts['F90_OPTS'] = '-cpp '
+ opts['F77_OPTS'] = '-cpp -O3 '
+ opts['CPP_ON_OPTS'] = '-cpp -DXS -DISO -DLIBXC'
+ opts['LIB_ARP'] = 'libarpack.a'
+ opts['F90'] = spack_fc
+ opts['F77'] = spack_f77
+ if '+omp' in spec:
+ opts['LDFLAGS'] = self.compiler.openmp_flag + ' -DUSEOMP'
+ opts['F90_OPTS'] += self.compiler.openmp_flag + ' -DUSEOMP'
+ opts['F77_OPTS'] += self.compiler.openmp_flag + ' -DUSEOMP'
+ if '%intel' in spec:
+ opts['F90_OPTS'] += ' -O3 -cpp -ip -unroll -scalar_rep '
+ opts['CPP_ON_OPTS'] += ' -DIFORT -DFFTW'
+ if '%gcc' in spec:
+ opts['F90_OPTS'] += '-O3 -march=native -ffree-line-length-0'
+ filter_file('FCFLAGS = @FCFLAGS@',
+ ' '.join(['FCFLAGS = @FCFLAGS@', '-cpp',
+ self.compiler.openmp_flag]),
+ 'src/libXC/src/Makefile.in')
+ if '+mkl' in spec:
+ if '%intel' in spec:
+ opts['LIB_LPK'] = '-mkl=parallel'
+ opts['INC_MKL'] = spec['mkl'].headers.include_flags
+ opts['LIB_MKL'] = spec['mkl'].libs.ld_flags
+ else:
+ opts['LIB_LPK'] = ' '.join([spec['lapack'].libs.ld_flags,
+ spec['blas'].libs.ld_flags,
+ self.compiler.openmp_flag])
+ if '+mpi' in spec:
+ opts['BUILDMPI'] = 'true'
+ opts['MPIF90'] = spec['mpi'].mpifc
+ opts['MPIF90_CPP_OPTS'] = self.compiler.openmp_flag
+ opts['MPIF90_CPP_OPTS'] += ' -DMPI -DMPIRHO -DMPISEC '
+ opts['MPIF90_OPTS'] = ' '.join(['$(F90_OPTS)', '$(CPP_ON_OPTS) '
+ '$(MPIF90_CPP_OPTS)'])
+ opts['MPIF90MT'] = '$(MPIF90)'
+ else:
+ opts['BUILDMPI'] = 'false'
+
+ if '+scalapack' in spec:
+ opts['LIB_SCLPK'] = spec['scalapack'].libs.ld_flags
+ opts['LIB_SCLPK'] += ' ' + self.compiler.openmp_flag
+ opts['CPP_SCLPK'] = ' -DSCAL '
+ opts['LIBS_MPI'] = '$(LIB_SCLPK)'
+ opts['MPIF90_CPP_OPTS'] += ' $(CPP_SCLPK) '
+
+ opts['USE_SYS_LAPACK'] = 'true'
+ opts['LIB_FFT'] = 'fftlib.a'
+ opts['LIB_BZINT'] = 'libbzint.a'
+ opts['LIBS'] = '$(LIB_ARP) $(LIB_LPK) $(LIB_FFT) $(LIB_BZINT)'
+ with open('build/make.inc', 'a') as inc:
+ for key in opts:
+ inc.write('{0} = {1}\n'.format(key, opts[key]))
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix)
+ install_tree('species', prefix.species)
+ install_tree('tools', prefix.tools)
+
+ def setup_run_environment(self, env):
+ env.set('WNHOME', self.prefix)
+ env.set('EXCITINGROOT', self.prefix)
+ env.set('EXCITINGBIN', self.prefix.bin)
+ env.set('EXCITINGTOOLS', self.prefix.tools)
+ env.set('EXCITINGSTM', self.prefix.tools.stm)
+ env.set('EXCITINGVISUAL', self.prefix.xml.visualizationtemplates)
+ env.set('EXCITINGCONVERT', self.prefix.xml.inputfileconverter)
+ env.set('TIMEFORMAT', ' Elapsed time = %0lR')
+ env.set('WRITEMINMAX', '1')
+ env.append_path('PYTHONPATH', self.prefix.tools.stm)
+ env.append_path('PATH', self.prefix.tools)
+ env.append_path('PATH', self.prefix)
+ env.append_path('PATH', self.prefix.tools.stm)
diff --git a/var/spack/repos/builtin/packages/exiv2/package.py b/var/spack/repos/builtin/packages/exiv2/package.py
index 53fad9cdfe..25652c7581 100644
--- a/var/spack/repos/builtin/packages/exiv2/package.py
+++ b/var/spack/repos/builtin/packages/exiv2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/exmcutils/package.py b/var/spack/repos/builtin/packages/exmcutils/package.py
index 860f0518e7..563d908bc1 100644
--- a/var/spack/repos/builtin/packages/exmcutils/package.py
+++ b/var/spack/repos/builtin/packages/exmcutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,11 @@ class Exmcutils(AutotoolsPackage):
"""ExM C-Utils: Generic C utility library for ADLB/X and Swift/T"""
homepage = 'http://swift-lang.org/Swift-T'
- url = 'http://swift-lang.github.io/swift-t-downloads/spack/exmcutils-0.5.7.tar.gz'
+ url = 'http://swift-lang.github.io/swift-t-downloads/spack/exmcutils-0.6.0.tar.gz'
git = "https://github.com/swift-lang/swift-t.git"
version('master', branch='master')
+ version('0.6.0', sha256='43812f79ae83adcacc05d4eb64bc8faa1c893994ffcdfb40a871f6fa4c9c1435')
version('0.5.7', sha256='6b84f43e8928d835dbd68c735ece6a9b7c648a1a4488ec2b1d2f3c4ceec508e8')
version('0.5.6', sha256='296ba85cc828bd816c7c4de9453f589da37f32854a58ffda3586b6f371a23abf')
diff --git a/var/spack/repos/builtin/packages/exodusii/package.py b/var/spack/repos/builtin/packages/exodusii/package.py
index 7a163dcffb..435a084d13 100644
--- a/var/spack/repos/builtin/packages/exodusii/package.py
+++ b/var/spack/repos/builtin/packages/exodusii/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,7 +20,18 @@ class Exodusii(CMakePackage):
homepage = "https://github.com/gsjaardema/seacas"
git = "https://github.com/gsjaardema/seacas.git"
+ url = "https://github.com/gsjaardema/seacas/archive/refs/tags/v2021-04-05.zip"
+ version('2021-04-05', sha256='f40d318674753287b8b28d2b4e5cca872cd772d4c7383af4a8f3eeb48fcc7ec0')
+ version('2021-04-02', sha256='811037a68eaff0daf9f34bd31b2ab1c9b8f028dfcb998ab01fbcb80d9458257c')
+ version('2021-01-20', sha256='6ff7c3f0651138f2e2305b5270108ca45f96346a739b35a126a0a260c91cbe64')
+ version('2021-01-06', sha256='69cafef17d8e624c2d9871f3a281ff3690116a6f82162fe5c1507bb4ecd6a32a')
+ version('2020-08-13', sha256='5b128a8ad9b0a69cff4fe937828d6d1702f1fe8aa80d4751e6522939afe62957')
+ version('2020-05-12', sha256='0402facf6cf23d903d878fb924b5d57e9f279dead5b92cf986953a6b91a6e81f')
+ version('2020-03-16', sha256='ed1d42c8c657931ecd45367a465cf9c00255772d9cd0811fc9baacdb67fc71fa')
+ version('2020-01-16', sha256='db69dca25595e88a40c00db0ccf2afed1ecd6008ba30bb478a4e1c5dd61998b8')
+ version('2019-12-18', sha256='88a71de836aa26fd63756cf3ffbf3978612edc5b6c61fa8de32fe9d638007774')
+ version('2019-10-14', sha256='f143d90e8a7516d25979d1416e580dea638332db723f26ae94a712dfe4052e8f')
version('2016-08-09', commit='2ffeb1b')
version('master', branch='master')
@@ -33,6 +44,8 @@ class Exodusii(CMakePackage):
depends_on('netcdf-c@4.6.1:+mpi', when='+mpi')
depends_on('netcdf-c@4.6.1:~mpi', when='~mpi')
+ depends_on('python@2.7:')
+
def cmake_args(self):
spec = self.spec
@@ -56,5 +69,12 @@ class Exodusii(CMakePackage):
'-DCMAKE_C_COMPILER={0}'.format(cc_path),
'-DCMAKE_CXX_COMPILER={0}'.format(cxx_path),
]
+ # Python #
+ # Handle v2016 separately because of older tribits
+ if spec.satisfies('@:2016-08-09'):
+ options.append('-DPYTHON_EXECUTABLE={0}'.format(
+ join_path(self.spec['python'].prefix.bin, 'python')))
+ else:
+ options.append('-DPython_ROOT={0}'.format(spec['python'].prefix))
return options
diff --git a/var/spack/repos/builtin/packages/exonerate-gff3/package.py b/var/spack/repos/builtin/packages/exonerate-gff3/package.py
index 87bc23e071..bc9ad300be 100644
--- a/var/spack/repos/builtin/packages/exonerate-gff3/package.py
+++ b/var/spack/repos/builtin/packages/exonerate-gff3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/exonerate/package.py b/var/spack/repos/builtin/packages/exonerate/package.py
index 2d4c3f7b1b..edb6936c91 100644
--- a/var/spack/repos/builtin/packages/exonerate/package.py
+++ b/var/spack/repos/builtin/packages/exonerate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/expat/package.py b/var/spack/repos/builtin/packages/expat/package.py
index f5d9475812..cf545fbde7 100644
--- a/var/spack/repos/builtin/packages/expat/package.py
+++ b/var/spack/repos/builtin/packages/expat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,12 +13,13 @@ class Expat(AutotoolsPackage):
homepage = "https://libexpat.github.io/"
url = "https://github.com/libexpat/libexpat/releases/download/R_2_2_9/expat-2.2.9.tar.bz2"
+ version('2.3.0', sha256='f122a20eada303f904d5e0513326c5b821248f2d4d2afbf5c6f1339e511c0586')
version('2.2.10', sha256='b2c160f1b60e92da69de8e12333096aeb0c3bf692d41c60794de278af72135a5')
version('2.2.9', sha256='f1063084dc4302a427dabcca499c8312b3a32a29b7d2506653ecc8f950a9a237')
- version('2.2.6', sha256='17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2')
- version('2.2.5', sha256='d9dc32efba7e74f788fcc4f212a43216fc37cf5f23f4c2339664d473353aedf6')
- version('2.2.2', sha256='4376911fcf81a23ebd821bbabc26fd933f3ac74833f74924342c29aad2c86046')
- version('2.2.0', sha256='d9e50ff2d19b3538bd2127902a89987474e1a4db8e43a66a4d1a712ab9a504ff')
+ version('2.2.6', sha256='17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2', deprecated=True)
+ version('2.2.5', sha256='d9dc32efba7e74f788fcc4f212a43216fc37cf5f23f4c2339664d473353aedf6', deprecated=True)
+ version('2.2.2', sha256='4376911fcf81a23ebd821bbabc26fd933f3ac74833f74924342c29aad2c86046', deprecated=True)
+ version('2.2.0', sha256='d9e50ff2d19b3538bd2127902a89987474e1a4db8e43a66a4d1a712ab9a504ff', deprecated=True)
# Version 2.2.2 introduced a requirement for a high quality
# entropy source. "Older" linux systems (aka CentOS 7) do not
@@ -39,7 +40,9 @@ class Expat(AutotoolsPackage):
def configure_args(self):
spec = self.spec
- args = ['--without-docbook']
+ args = ['--without-docbook',
+ '--enable-static',
+ ]
if '+libbsd' in spec and '@2.2.1:' in spec:
args.append('--with-libbsd')
return args
diff --git a/var/spack/repos/builtin/packages/expect/package.py b/var/spack/repos/builtin/packages/expect/package.py
index 71c9595101..8127f01ec9 100644
--- a/var/spack/repos/builtin/packages/expect/package.py
+++ b/var/spack/repos/builtin/packages/expect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,11 @@ class Expect(AutotoolsPackage):
telnet, ftp, passwd, fsck, rlogin, tip, etc."""
homepage = "http://expect.sourceforge.net/"
- url = "https://sourceforge.net/projects/expect/files/Expect/5.45/expect5.45.tar.gz/download"
+ url = "https://sourceforge.net/projects/expect/files/Expect/5.45.4/expect5.45.4.tar.gz/download"
- version('5.45', sha256='b28dca90428a3b30e650525cdc16255d76bb6ccd65d448be53e620d95d5cc040')
+ version('5.45.4', sha256='49a7da83b0bdd9f46d04a04deec19c7767bb9a323e40c4781f89caf760b92c34')
+ version('5.45.3', sha256='c520717b7195944a69ce1492ec82ca0ac3f3baf060804e6c5ee6d505ea512be9')
+ version('5.45', sha256='b28dca90428a3b30e650525cdc16255d76bb6ccd65d448be53e620d95d5cc040')
depends_on('tcl')
@@ -24,12 +26,10 @@ class Expect(AutotoolsPackage):
depends_on('libtool', type='build')
depends_on('m4', type='build')
- # https://github.com/spack/spack/issues/19767
- conflicts('%apple-clang@12:')
-
force_autoreconf = True
- patch('expect_detect_tcl_private_header_os_x_mountain_lion.patch', when='@5.45')
+ patch('xcode_12.patch', when='%apple-clang@12:')
+ patch('expect_detect_tcl_private_header_os_x_mountain_lion.patch', when='@5.45:5.45.0')
def configure_args(self):
spec = self.spec
diff --git a/var/spack/repos/builtin/packages/expect/xcode_12.patch b/var/spack/repos/builtin/packages/expect/xcode_12.patch
new file mode 100644
index 0000000000..f7ae9e4597
--- /dev/null
+++ b/var/spack/repos/builtin/packages/expect/xcode_12.patch
@@ -0,0 +1,282 @@
+https://core.tcl-lang.org/expect/tktview/0d5b33c00e5b4bbedb835498b0360d7115e832a0
+--- expect5.45.4/configure.in.ORIG 2020-12-05 17:26:55.000000000 +0000
++++ expect5.45.4/configure.in 2020-12-05 18:39:00.000000000 +0000
+@@ -452,7 +452,11 @@
+ # because Unixware 2.0 handles it specially and refuses to compile
+ # autoconf's automatic test that is a call with no arguments
+ AC_MSG_CHECKING([for memcpy])
+-AC_TRY_LINK(,[
++AC_TRY_LINK([
++#ifdef HAVE_STRING_H
++#include <string.h>
++#endif
++],[
+ char *s1, *s2;
+ memcpy(s1,s2,0);
+ ],
+@@ -469,7 +473,7 @@
+ AC_MSG_CHECKING([if WNOHANG requires _POSIX_SOURCE])
+ AC_TRY_RUN([
+ #include <sys/wait.h>
+-main() {
++int main() {
+ #ifndef WNOHANG
+ return 0;
+ #else
+@@ -489,7 +493,7 @@
+ AC_TRY_RUN([
+ #include <stdio.h>
+ #include <sys/wait.h>
+-main() {
++int main() {
+ #ifdef WNOHANG
+ FILE *fp = fopen("wnohang","w");
+ fprintf(fp,"%d",WNOHANG);
+@@ -536,6 +540,13 @@
+ AC_MSG_CHECKING([if signals need to be re-armed])
+ AC_TRY_RUN([
+ #include <signal.h>
++#ifdef HAVE_UNISTD_H
++#include <unistd.h>
++#endif
++#ifndef NO_SYS_WAIT_H
++#include <sys/wait.h>
++#endif
++
+ #define RETSIGTYPE $retsigtype
+
+ int signal_rearms = 0;
+@@ -553,7 +564,7 @@
+ signal_rearms++;
+ }
+
+-main()
++int main()
+ {
+ signal(SIGINT,parent_sigint_handler);
+
+@@ -567,8 +578,9 @@
+
+ wait(&status);
+ unlink("core");
+- exit(signal_rearms);
++ return signal_rearms;
+ }
++ return -1;
+ }],
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(REARM_SIG)
+@@ -714,10 +726,10 @@
+ AC_MSG_CHECKING([for struct sgttyb])
+ AC_TRY_RUN([
+ #include <sgtty.h>
+-main()
++int main()
+ {
+ struct sgttyb tmp;
+- exit(0);
++ return 0;
+ }],
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_SGTTYB)
+@@ -738,10 +750,10 @@
+ # pty_termios.c is set up to handle pty_termio.
+ AC_MSG_CHECKING([for struct termio])
+ AC_TRY_RUN([#include <termio.h>
+- main()
++ int main()
+ {
+ struct termio tmp;
+- exit(0);
++ return 0;
+ }],
+ AC_DEFINE(HAVE_TERMIO)
+ PTY_TYPE=termios
+@@ -760,10 +772,10 @@
+ # include <inttypes.h>
+ # endif
+ # include <termios.h>
+- main()
++ int main()
+ {
+ struct termios tmp;
+- exit(0);
++ return 0;
+ }],
+ AC_DEFINE(HAVE_TERMIOS)
+ PTY_TYPE=termios
+@@ -782,7 +794,7 @@
+ #include <inttypes.h>
+ #endif
+ #include <termios.h>
+-main() {
++int main() {
+ #if defined(TCGETS) || defined(TCGETA)
+ return 0;
+ #else
+@@ -797,21 +809,18 @@
+ AC_MSG_ERROR([Expect can't be cross compiled])
+ )
+
+-AC_MSG_CHECKING([if TIOCGWINSZ in termios.h])
++AC_MSG_CHECKING([if termios.h and sys/ioctl.h may both be included])
+ AC_TRY_RUN([
+ /* including termios.h on Solaris 5.6 fails unless inttypes.h included */
+ #ifdef HAVE_INTTYPES_H
+ #include <inttypes.h>
+ #endif
+ #include <termios.h>
+-main() {
+-#ifdef TIOCGWINSZ
++#include <sys/ioctl.h>
++int main() {
+ return 0;
+-#else
+- return 1;
+-#endif
+ }],
+- AC_DEFINE(HAVE_TIOCGWINSZ_IN_TERMIOS_H)
++ AC_DEFINE(HAVE_TERMIOS_AND_IOCTL_H_TOGETHER)
+ AC_MSG_RESULT(yes)
+ ,
+ AC_MSG_RESULT(no)
+@@ -823,7 +832,7 @@
+ AC_MSG_CHECKING([for Cray-style ptys])
+ SETUID=":"
+ AC_TRY_RUN([
+-main(){
++int main(){
+ #ifdef CRAY
+ return 0;
+ #else
+@@ -878,12 +887,12 @@
+ AC_TRY_RUN([
+ extern char *tzname[2];
+ extern int daylight;
+-main()
++int main()
+ {
+ int *x = &daylight;
+ char **y = tzname;
+
+- exit(0);
++ return 0;
+ }],
+ AC_DEFINE(HAVE_SV_TIMEZONE)
+ AC_MSG_RESULT(yes),
+--- expect5.45.4/tclconfig/tcl.m4.ORIG 2020-12-05 17:31:41.000000000 +0000
++++ expect5.45.4/tclconfig/tcl.m4 2020-12-05 17:32:39.000000000 +0000
+@@ -2400,7 +2400,7 @@
+ AC_TRY_COMPILE([#include <time.h>],
+ [extern long timezone;
+ timezone += 1;
+- exit (0);],
++ return 0;],
+ tcl_cv_timezone_long=yes, tcl_cv_timezone_long=no)])
+ if test $tcl_cv_timezone_long = yes ; then
+ AC_DEFINE(HAVE_TIMEZONE_VAR, 1, [Should we use the global timezone variable?])
+@@ -2412,7 +2412,7 @@
+ AC_TRY_COMPILE([#include <time.h>],
+ [extern time_t timezone;
+ timezone += 1;
+- exit (0);],
++ return 0;],
+ tcl_cv_timezone_time=yes, tcl_cv_timezone_time=no)])
+ if test $tcl_cv_timezone_time = yes ; then
+ AC_DEFINE(HAVE_TIMEZONE_VAR, 1, [Should we use the global timezone variable?])
+@@ -2452,17 +2452,17 @@
+ double value;
+ value = strtod(infString, &term);
+ if ((term != infString) && (term[-1] == 0)) {
+- exit(1);
++ return 1;
+ }
+ value = strtod(nanString, &term);
+ if ((term != nanString) && (term[-1] == 0)) {
+- exit(1);
++ return 1;
+ }
+ value = strtod(spaceString, &term);
+ if (term == (spaceString+1)) {
+- exit(1);
++ return 1;
+ }
+- exit(0);
++ return 0;
+ }], tcl_cv_strtod_buggy=ok, tcl_cv_strtod_buggy=buggy,
+ tcl_cv_strtod_buggy=buggy)])
+ if test "$tcl_cv_strtod_buggy" = buggy; then
+--- expect5.45.4/exp_tty.h.ORIG 2020-12-05 18:25:06.000000000 +0000
++++ expect5.45.4/exp_tty.h 2020-12-05 18:24:14.000000000 +0000
+@@ -19,6 +19,7 @@
+ void exp_tty_echo(int set);
+ void exp_tty_break(Tcl_Interp *interp, int fd);
+ int exp_tty_raw_noecho(Tcl_Interp *interp, exp_tty *tty_old, int *was_raw, int *was_echo);
++int exp_tty_cooked_echo(Tcl_Interp *interp, exp_tty *tty_old, int *was_raw, int *was_echo);
+ int exp_israw(void);
+ int exp_isecho(void);
+
+--- expect5.45.4/exp_chan.c.ORIG 2020-12-05 18:42:14.000000000 +0000
++++ expect5.45.4/exp_chan.c 2020-12-05 18:42:36.000000000 +0000
+@@ -35,6 +35,7 @@
+ #include "exp_prog.h"
+ #include "exp_command.h"
+ #include "exp_log.h"
++#include "exp_event.h"
+ #include "tcldbg.h" /* Dbg_StdinMode */
+
+ extern int expSetBlockModeProc _ANSI_ARGS_((int fd, int mode));
+--- expect5.45.4/exp_clib.c.ORIG 2020-12-05 18:40:52.000000000 +0000
++++ expect5.45.4/exp_clib.c 2020-12-05 18:41:18.000000000 +0000
+@@ -8,6 +8,7 @@
+ */
+
+ #include "expect_cf.h"
++#include "exp_command.h"
+ #include <stdio.h>
+ #include <setjmp.h>
+ #ifdef HAVE_INTTYPES_H
+--- expect5.45.4/exp_win.c.ORIG 2020-12-05 18:27:20.000000000 +0000
++++ expect5.45.4/exp_win.c 2020-12-05 18:33:24.000000000 +0000
+@@ -32,17 +32,13 @@
+
+ #ifdef HAVE_TERMIOS
+ # include <termios.h>
++# ifdef HAVE_TERMIOS_AND_IOCTL_H_TOGETHER
++# include <sys/ioctl.h>
++# endif
+ #else
+ # include <sys/ioctl.h>
+ #endif
+
+-/* Sigh. On AIX 2.3, termios.h exists but does not define TIOCGWINSZ */
+-/* Instead, it has to come from ioctl.h. However, As I said above, this */
+-/* can't be cavalierly included on all machines, even when it exists. */
+-#if defined(HAVE_TERMIOS) && !defined(HAVE_TIOCGWINSZ_IN_TERMIOS_H)
+-# include <sys/ioctl.h>
+-#endif
+-
+ /* SCO defines window size structure in PTEM and TIOCGWINSZ in termio.h */
+ /* Sigh... */
+ #if defined(HAVE_SYS_PTEM_H)
+--- expect5.45.4/pty_termios.c.ORIG 2020-12-05 18:43:05.000000000 +0000
++++ expect5.45.4/pty_termios.c 2020-12-05 18:45:20.000000000 +0000
+@@ -77,6 +77,10 @@
+ #include <sys/sysmacros.h>
+ #endif
+
++#ifdef HAVE_OPENPTY
++#include <util.h>
++#endif
++
+ #ifdef HAVE_PTYTRAP
+ #include <sys/ptyio.h>
+ #endif
+@@ -102,6 +106,7 @@
+ #include "exp_tty_in.h"
+ #include "exp_rename.h"
+ #include "exp_pty.h"
++#include "exp_int.h"
+
+ void expDiagLog();
+ void expDiagLogPtr();
diff --git a/var/spack/repos/builtin/packages/express/package.py b/var/spack/repos/builtin/packages/express/package.py
index d54dec85c7..4e4a5e4627 100644
--- a/var/spack/repos/builtin/packages/express/package.py
+++ b/var/spack/repos/builtin/packages/express/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/extrae/package.py b/var/spack/repos/builtin/packages/extrae/package.py
index bab7b365d8..07a7d52150 100644
--- a/var/spack/repos/builtin/packages/extrae/package.py
+++ b/var/spack/repos/builtin/packages/extrae/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -33,8 +33,11 @@ class Extrae(AutotoolsPackage):
instrument the MPI programin model, and the following parallel
programming models either alone or in conjunction with MPI :
OpenMP, CUDA, OpenCL, pthread, OmpSs"""
+
homepage = "https://tools.bsc.es/extrae"
url = "https://ftp.tools.bsc.es/extrae/extrae-3.4.1-src.tar.bz2"
+
+ version('3.8.3', sha256='c3bf27fb6f18e66200e40a0b4c35bc257766e5c1a525dc5725f561879e88bf32')
version('3.7.1', sha256='c83ddd18a380c9414d64ee5de263efc6f7bac5fe362d5b8374170c7f18360378')
version('3.4.1', sha256='77bfec16d6b5eee061fbaa879949dcef4cad28395d6a546b1ae1b9246f142725')
diff --git a/var/spack/repos/builtin/packages/exuberant-ctags/package.py b/var/spack/repos/builtin/packages/exuberant-ctags/package.py
index 421b995050..a66e7a4db5 100644
--- a/var/spack/repos/builtin/packages/exuberant-ctags/package.py
+++ b/var/spack/repos/builtin/packages/exuberant-ctags/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/eztrace/package.py b/var/spack/repos/builtin/packages/eztrace/package.py
index f73087de99..7c17cf51ac 100644
--- a/var/spack/repos/builtin/packages/eztrace/package.py
+++ b/var/spack/repos/builtin/packages/eztrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/f2c/package.py b/var/spack/repos/builtin/packages/f2c/package.py
index 7182ddb185..3764529a83 100644
--- a/var/spack/repos/builtin/packages/f2c/package.py
+++ b/var/spack/repos/builtin/packages/f2c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/f77-zmq/package.py b/var/spack/repos/builtin/packages/f77-zmq/package.py
index 955ed2ecd6..cafbcf5951 100644
--- a/var/spack/repos/builtin/packages/f77-zmq/package.py
+++ b/var/spack/repos/builtin/packages/f77-zmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/f90cache/package.py b/var/spack/repos/builtin/packages/f90cache/package.py
index 32aaff590f..dad4ec106d 100644
--- a/var/spack/repos/builtin/packages/f90cache/package.py
+++ b/var/spack/repos/builtin/packages/f90cache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fabtests/package.py b/var/spack/repos/builtin/packages/fabtests/package.py
index a9f76b5d07..84953203c2 100644
--- a/var/spack/repos/builtin/packages/fabtests/package.py
+++ b/var/spack/repos/builtin/packages/fabtests/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fairlogger/package.py b/var/spack/repos/builtin/packages/fairlogger/package.py
index 08108f557a..e2112215e2 100644
--- a/var/spack/repos/builtin/packages/fairlogger/package.py
+++ b/var/spack/repos/builtin/packages/fairlogger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
# Copyright 2020 GSI Helmholtz Centre for Heavy Ion Research GmbH,
# Darmstadt, Germany
@@ -68,8 +68,7 @@ class Fairlogger(CMakePackage):
if cxxstd != 'default':
args.append('-DCMAKE_CXX_STANDARD=%s' % cxxstd)
if self.spec.satisfies('@1.4:'):
- args.append('-DUSE_BOOST_PRETTY_FUNCTION=%s' %
- ('ON' if '+pretty' in self.spec else 'OFF'))
+ args.append(self.define_from_variant('USE_BOOST_PRETTY_FUNCTION', 'pretty'))
if self.spec.satisfies('@1.6:'):
args.append('-DUSE_EXTERNAL_FMT=ON')
if self.spec.satisfies('^boost@:1.69.99'):
diff --git a/var/spack/repos/builtin/packages/faiss/package.py b/var/spack/repos/builtin/packages/faiss/package.py
index a660693268..30b41605c2 100644
--- a/var/spack/repos/builtin/packages/faiss/package.py
+++ b/var/spack/repos/builtin/packages/faiss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fakechroot/package.py b/var/spack/repos/builtin/packages/fakechroot/package.py
index c29f4e9623..cc3cc13bea 100644
--- a/var/spack/repos/builtin/packages/fakechroot/package.py
+++ b/var/spack/repos/builtin/packages/fakechroot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fakexrandr/package.py b/var/spack/repos/builtin/packages/fakexrandr/package.py
new file mode 100644
index 0000000000..aa38531906
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fakexrandr/package.py
@@ -0,0 +1,46 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Fakexrandr(MakefilePackage):
+ """This is a tool to cheat an X11 server to believe that there are more
+ monitors than there actually are."""
+
+ homepage = "https://github.com/phillipberndt/fakexrandr"
+ git = "https://github.com/phillipberndt/fakexrandr.git"
+
+ version('master', branch='master')
+
+ depends_on('libxrandr')
+ depends_on('libxinerama')
+ depends_on('libx11')
+ depends_on('python', type=('build', 'run'))
+
+ def edit(self, spec, prefix):
+ # Installation instructions involve running `configure` script,
+ # but this script just writes a `config.h` file like below.
+ version = spec['libxrandr'].version
+ with open('config.h', 'w') as config:
+ config.write("""
+#define XRANDR_MAJOR {0}
+#define XRANDR_MINOR {1}
+#define XRANDR_PATCH {2}
+#define REAL_XRANDR_LIB "{3}"
+#define FAKEXRANDR_INSTALL_DIR "{4}"
+""".format(version[0], version[1], version[2],
+ spec['libxrandr'].libs[0], prefix.lib))
+
+ # Also need to hack Makefile
+ makefile = FileFilter('Makefile')
+ makefile.filter('PREFIX=/usr', 'PREFIX=' + prefix)
+ makefile.filter('-fPIC', self.compiler.cc_pic_flag)
+
+ # And tool used to generate skeleton
+ filter_file('gcc', spack_cc, 'make_skeleton.py')
+
+ if 'platform=darwin' in spec:
+ makefile.filter('ldconfig', '')
diff --git a/var/spack/repos/builtin/packages/falcon/package.py b/var/spack/repos/builtin/packages/falcon/package.py
index 36649dd7e6..1ee82b6df5 100644
--- a/var/spack/repos/builtin/packages/falcon/package.py
+++ b/var/spack/repos/builtin/packages/falcon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fann/package.py b/var/spack/repos/builtin/packages/fann/package.py
index b6c7c0d07c..ded2446a70 100644
--- a/var/spack/repos/builtin/packages/fann/package.py
+++ b/var/spack/repos/builtin/packages/fann/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/faodel/package.py b/var/spack/repos/builtin/packages/faodel/package.py
index 8f80576585..56e1495141 100644
--- a/var/spack/repos/builtin/packages/faodel/package.py
+++ b/var/spack/repos/builtin/packages/faodel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Faodel(CMakePackage):
maintainers = ['tkordenbrock', 'craigulmer']
+ version('master', branch='master')
version('1.1906.1', sha256='4b3caf469ae7db50e9bb8d652e4cb532d33d474279def0f8a483f69385648058')
version('1.1811.2', sha256='22feb502dad0f56fb8af492f6e2cdc53a97fd6c31f6fa3c655be0a6266c46996')
version('1.1811.1', sha256='8e95ee99b8c136ff687eb07a2481ee04560cb1526408eb22ab56cd9c60206916')
@@ -62,26 +63,19 @@ class Faodel(CMakePackage):
spec = self.spec
args = [
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'),
- '-DBUILD_TESTS:BOOL={0}'.format(
- 'ON' if '+mpi' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('BUILD_TESTS', 'mpi'),
'-DBOOST_ROOT:PATH={0}'.format(spec['boost'].prefix),
'-DGTEST_ROOT:PATH={0}'.format(spec['googletest'].prefix),
'-DBUILD_DOCS:BOOL=OFF',
- '-DFaodel_ENABLE_IOM_HDF5:BOOL={0}'.format(
- 'ON' if '+hdf5' in spec else 'OFF'),
- '-DFaodel_ENABLE_IOM_LEVELDB:BOOL={0}'.format(
- 'ON' if '+leveldb' in spec else 'OFF'),
- '-DFaodel_ENABLE_MPI_SUPPORT:BOOL={0}'.format(
- 'ON' if '+mpi' in spec else 'OFF'),
- '-DFaodel_ENABLE_TCMALLOC:BOOL={0}'.format(
- 'ON' if '+tcmalloc' in spec else 'OFF'),
+ self.define_from_variant('Faodel_ENABLE_IOM_HDF5', 'hdf5'),
+ # self.define_from_variant('Faodel_ENABLE_IOM_LEVELDB', 'leveldb'),
+ self.define_from_variant('Faodel_ENABLE_MPI_SUPPORT', 'mpi'),
+ self.define_from_variant('Faodel_ENABLE_TCMALLOC', 'tcmalloc'),
'-DFaodel_LOGGING_METHOD:STRING={0}'.format(
spec.variants['logging'].value),
'-DFaodel_NETWORK_LIBRARY:STRING={0}'.format(
spec.variants['network'].value),
- '-DFaodel_ENABLE_CEREAL:BOOL={0}'.format(
- 'ON' if '+cereal' in spec else 'OFF')
+ self.define_from_variant('Faodel_ENABLE_CEREAL', 'cereal')
]
return args
diff --git a/var/spack/repos/builtin/packages/fasd/package.py b/var/spack/repos/builtin/packages/fasd/package.py
new file mode 100644
index 0000000000..d0e0519f10
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fasd/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Fasd(MakefilePackage):
+ """Fasd (pronounced similar to "fast") is a command-line productivity
+ booster. Fasd offers quick access to files and directories for POSIX shells.
+ """
+
+ homepage = "https://github.com/clvv/fasd"
+ url = "https://github.com/clvv/fasd/archive/refs/tags/1.0.1.tar.gz"
+ git = "https://github.com/clvv/fasd.git"
+
+ version('1.0.1', sha256='88efdfbbed8df408699a14fa6c567450bf86480f5ff3dde42d0b3e1dee731f65')
+
+ def install(self, spec, prefix):
+ make('PREFIX={0}'.format(prefix), 'install')
diff --git a/var/spack/repos/builtin/packages/fast-global-file-status/package.py b/var/spack/repos/builtin/packages/fast-global-file-status/package.py
index 3400261a13..1d196b44cb 100644
--- a/var/spack/repos/builtin/packages/fast-global-file-status/package.py
+++ b/var/spack/repos/builtin/packages/fast-global-file-status/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,11 +12,16 @@ class FastGlobalFileStatus(AutotoolsPackage):
homepage = "https://github.com/LLNL/FastGlobalFileStatus"
url = 'https://github.com/LLNL/FastGlobalFileStatus/files/2271592/fastglobalfilestatus-1.1.tar.gz'
+ git = "https://github.com/LLNL/FastGlobalFileStatus.git"
+ maintainers = ['lee218llnl']
+ version('master', branch='master')
+ version('1.1.1', sha256='397de583a99e60aae8b4485d3decac6e23f50c658a6353fea149d6dd50d3ecee', url="https://github.com/LLNL/FastGlobalFileStatus/releases/download/v1.1.1/fastglobalfilestatus-1.1.1.tar.gz")
version('1.1', sha256='e6fba4a0b7f055899fa0e05d93a435c7f1f2ec1158b9a6647dc8d2bcf9c2e164')
depends_on('mrnet')
- depends_on('mount-point-attributes')
+ # we depend on mpa@master for bug fixes since mpa 1.1
+ depends_on('mount-point-attributes@master')
depends_on('mpi')
depends_on('openssl')
depends_on('elf')
diff --git a/var/spack/repos/builtin/packages/fasta/package.py b/var/spack/repos/builtin/packages/fasta/package.py
index 49ff18bede..0b1b661751 100644
--- a/var/spack/repos/builtin/packages/fasta/package.py
+++ b/var/spack/repos/builtin/packages/fasta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastdb/package.py b/var/spack/repos/builtin/packages/fastdb/package.py
index 92ea8783b9..c0e3be07cb 100644
--- a/var/spack/repos/builtin/packages/fastdb/package.py
+++ b/var/spack/repos/builtin/packages/fastdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastdfs/package.py b/var/spack/repos/builtin/packages/fastdfs/package.py
index 688308e910..4d429c80fb 100644
--- a/var/spack/repos/builtin/packages/fastdfs/package.py
+++ b/var/spack/repos/builtin/packages/fastdfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastjar/package.py b/var/spack/repos/builtin/packages/fastjar/package.py
index a0e0490020..acb4ea8615 100644
--- a/var/spack/repos/builtin/packages/fastjar/package.py
+++ b/var/spack/repos/builtin/packages/fastjar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastjet/atlas.patch b/var/spack/repos/builtin/packages/fastjet/atlas.patch
new file mode 100644
index 0000000000..66b9cc1d1f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fastjet/atlas.patch
@@ -0,0 +1,22 @@
+--- include/fastjet/GhostedAreaSpec.hh.orig 2020-06-03 13:15:12.952183980 +0200
++++ include/fastjet/GhostedAreaSpec.hh 2020-06-03 13:16:00.676275264 +0200
+@@ -232,7 +232,7 @@
+
+
+ std::vector<int> _random_checkpoint;
+- static BasicRandom<double> _random_generator;
++ thread_local static BasicRandom<double> _random_generator;
+ //mutable BasicRandom<double> _random_generator;
+
+ static LimitedWarning _warn_fj2_placement_deprecated;
+--- src/GhostedAreaSpec.cc.orig 2020-06-04 11:37:41.196758510 +0200
++++ src/GhostedAreaSpec.cc 2020-06-04 11:38:07.499240761 +0200
+@@ -37,7 +37,7 @@
+
+ FASTJET_BEGIN_NAMESPACE // defined in fastjet/internal/base.hh
+
+-BasicRandom<double> GhostedAreaSpec::_random_generator;
++thread_local BasicRandom<double> GhostedAreaSpec::_random_generator;
+ LimitedWarning GhostedAreaSpec::_warn_fj2_placement_deprecated;
+
+ /// explicit constructor
diff --git a/var/spack/repos/builtin/packages/fastjet/package.py b/var/spack/repos/builtin/packages/fastjet/package.py
index ad89e48027..5f7927163c 100644
--- a/var/spack/repos/builtin/packages/fastjet/package.py
+++ b/var/spack/repos/builtin/packages/fastjet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Fastjet(AutotoolsPackage):
homepage = "http://fastjet.fr/"
url = "http://fastjet.fr/repo/fastjet-3.3.3.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan', 'vvolkl']
version('3.3.3', sha256='30b0a0282ce5aeac9e45862314f5966f0be941ce118a83ee4805d39b827d732b')
@@ -50,6 +52,9 @@ class Fastjet(AutotoolsPackage):
variant('shared', default=True, description='Builds a shared version of the library')
variant('auto-ptr', default=False, description='Use auto_ptr')
+ variant('atlas', default=False, description='Patch to make random generator thread_local')
+
+ patch('atlas.patch', when='+atlas', level=0)
def configure_args(self):
extra_args = ["--enable-allplugins"]
diff --git a/var/spack/repos/builtin/packages/fastjson/package.py b/var/spack/repos/builtin/packages/fastjson/package.py
index e3b63242d9..d3d10d483b 100644
--- a/var/spack/repos/builtin/packages/fastjson/package.py
+++ b/var/spack/repos/builtin/packages/fastjson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastmath/package.py b/var/spack/repos/builtin/packages/fastmath/package.py
index e2c177832b..9874c2939d 100644
--- a/var/spack/repos/builtin/packages/fastmath/package.py
+++ b/var/spack/repos/builtin/packages/fastmath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastme/package.py b/var/spack/repos/builtin/packages/fastme/package.py
index 83e5169088..ecea261e65 100644
--- a/var/spack/repos/builtin/packages/fastme/package.py
+++ b/var/spack/repos/builtin/packages/fastme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastp/package.py b/var/spack/repos/builtin/packages/fastp/package.py
index 1fa7efb535..10ad8d387e 100644
--- a/var/spack/repos/builtin/packages/fastp/package.py
+++ b/var/spack/repos/builtin/packages/fastp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastphase/package.py b/var/spack/repos/builtin/packages/fastphase/package.py
index 2639cb2d6a..ebeccfc31a 100644
--- a/var/spack/repos/builtin/packages/fastphase/package.py
+++ b/var/spack/repos/builtin/packages/fastphase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastq-screen/package.py b/var/spack/repos/builtin/packages/fastq-screen/package.py
index 2b2096d343..acb3169777 100644
--- a/var/spack/repos/builtin/packages/fastq-screen/package.py
+++ b/var/spack/repos/builtin/packages/fastq-screen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastqc/package.py b/var/spack/repos/builtin/packages/fastqc/package.py
index ab217684fa..3463f5c1d1 100644
--- a/var/spack/repos/builtin/packages/fastqc/package.py
+++ b/var/spack/repos/builtin/packages/fastqc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastqvalidator/package.py b/var/spack/repos/builtin/packages/fastqvalidator/package.py
index 54d0b329bb..250795c555 100644
--- a/var/spack/repos/builtin/packages/fastqvalidator/package.py
+++ b/var/spack/repos/builtin/packages/fastqvalidator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fasttext/package.py b/var/spack/repos/builtin/packages/fasttext/package.py
index 4a86a9f18f..adf2431d54 100644
--- a/var/spack/repos/builtin/packages/fasttext/package.py
+++ b/var/spack/repos/builtin/packages/fasttext/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fasttransforms/package.py b/var/spack/repos/builtin/packages/fasttransforms/package.py
index ca33a50428..92c1aae502 100644
--- a/var/spack/repos/builtin/packages/fasttransforms/package.py
+++ b/var/spack/repos/builtin/packages/fasttransforms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Fasttransforms(MakefilePackage):
homepage = "https://github.com/MikaelSlevinsky/FastTransforms"
url = "https://github.com/MikaelSlevinsky/FastTransforms/archive/v0.3.4.tar.gz"
+ version('0.5.0', sha256='9556d0037bd5348a33f15ad6100e32053b6e22cab16a97c504f30d6c52fd0efd')
version('0.3.4', sha256='a5c8b5aedbdb40218521d061a7df65ef32ce153d4e19d232957db7e3e63c7e9b')
variant('quadmath', default=False, description="Support 128-bit floats")
diff --git a/var/spack/repos/builtin/packages/fasttree/package.py b/var/spack/repos/builtin/packages/fasttree/package.py
index 34ef2d7281..df50b485c0 100644
--- a/var/spack/repos/builtin/packages/fasttree/package.py
+++ b/var/spack/repos/builtin/packages/fasttree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fastx-toolkit/package.py b/var/spack/repos/builtin/packages/fastx-toolkit/package.py
index 8ad93ddad5..0b72098071 100644
--- a/var/spack/repos/builtin/packages/fastx-toolkit/package.py
+++ b/var/spack/repos/builtin/packages/fastx-toolkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/faust/package.py b/var/spack/repos/builtin/packages/faust/package.py
index c12a8704f6..859d06ff0e 100644
--- a/var/spack/repos/builtin/packages/faust/package.py
+++ b/var/spack/repos/builtin/packages/faust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fca/package.py b/var/spack/repos/builtin/packages/fca/package.py
index 226ae4315b..1ff48132d3 100644
--- a/var/spack/repos/builtin/packages/fca/package.py
+++ b/var/spack/repos/builtin/packages/fca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fcgi/package.py b/var/spack/repos/builtin/packages/fcgi/package.py
index 3b4036f6a3..656b148af6 100644
--- a/var/spack/repos/builtin/packages/fcgi/package.py
+++ b/var/spack/repos/builtin/packages/fcgi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fd-find/package.py b/var/spack/repos/builtin/packages/fd-find/package.py
index faf7374cb6..a8220616b1 100644
--- a/var/spack/repos/builtin/packages/fd-find/package.py
+++ b/var/spack/repos/builtin/packages/fd-find/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fdb/metkit_1.7.0.patch b/var/spack/repos/builtin/packages/fdb/metkit_1.7.0.patch
new file mode 100644
index 0000000000..8c7323295c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fdb/metkit_1.7.0.patch
@@ -0,0 +1,11 @@
+--- a/src/fdb5/tools/fdb-hammer.cc
++++ b/src/fdb5/tools/fdb-hammer.cc
+@@ -22,7 +22,7 @@
+ #include "eckit/option/SimpleOption.h"
+ #include "eckit/option/VectorOption.h"
+
+-#include "metkit/grib/GribHandle.h"
++#include "metkit/codes/GribHandle.h"
+
+ #include "fdb5/grib/GribArchiver.h"
+ #include "fdb5/io/HandleGatherer.h"
diff --git a/var/spack/repos/builtin/packages/fdb/package.py b/var/spack/repos/builtin/packages/fdb/package.py
new file mode 100644
index 0000000000..b42b01fb17
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fdb/package.py
@@ -0,0 +1,73 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Fdb(CMakePackage):
+ """FDB (Fields DataBase) is a domain-specific object store developed at
+ ECMWF for storing, indexing and retrieving GRIB data."""
+
+ homepage = 'https://github.com/ecmwf/fdb'
+ url = 'https://github.com/ecmwf/fdb/archive/refs/tags/5.7.8.tar.gz'
+
+ maintainers = ['skosukhin']
+
+ version('5.7.8', sha256='6adac23c0d1de54aafb3c663d077b85d0f804724596623b381ff15ea4a835f60')
+
+ variant('tools', default=True, description='Build the command line tools')
+ variant(
+ 'backends',
+ values=any_combination_of(
+ # FDB backend in indexed filesystem with table-of-contents with
+ # additional support for Lustre filesystem stripping control:
+ 'lustre',
+ # Backends that will be added later:
+ # FDB backend in persistent memory (NVRAM):
+ # 'pmem', # (requires https://github.com/ecmwf/pmem)
+ # FDB backend in CEPH object store (using Rados):
+ # 'rados' # (requires eckit with RADOS support)
+ ), description='List of supported backends')
+
+ depends_on('cmake@3.12:', type='build')
+ depends_on('ecbuild@3.4:', type='build')
+
+ depends_on('eckit@1.16:')
+ depends_on('eckit+admin', when='+tools')
+
+ depends_on('eccodes@2.10:')
+ depends_on('metkit@1.5:+grib')
+
+ depends_on('lustre', when='backends=lustre')
+
+ # Starting version 1.7.0, metkit installs GribHandle.h to another directory.
+ # That is accounted for only starting version 5.8.0:
+ patch('metkit_1.7.0.patch', when='@:5.7.10+tools^metkit@1.7.0:')
+
+ # Download test data before running a test:
+ patch('https://github.com/ecmwf/fdb/commit/86e06b60f9a2d76a389a5f49bedd566d4c2ad2b2.patch',
+ sha256='e2254577e6d84a61d394eddcf42f894582f5daaf58d8962c609e41be0e3471b3',
+ when='@5.7.1:5.7.10+tools')
+
+ def cmake_args(self):
+ enable_build_tools = '+tools' in self.spec
+
+ args = [
+ self.define('ENABLE_FDB_BUILD_TOOLS', enable_build_tools),
+ self.define('ENABLE_BUILD_TOOLS', enable_build_tools),
+ # We cannot disable the FDB backend in indexed filesystem with
+ # table-of-contents because some default test programs and tools
+ # cannot be built without it:
+ self.define('ENABLE_TOCFDB', True),
+ self.define('ENABLE_LUSTRE', 'backends=lustre' in self.spec),
+ self.define('ENABLE_PMEMFDB', False),
+ self.define('ENABLE_RADOSFDB', False),
+ # The tests download additional data (~10MB):
+ self.define('ENABLE_TESTS', self.run_tests),
+ # We do not need any experimental features:
+ self.define('ENABLE_EXPERIMENTAL', False),
+ self.define('ENABLE_SANDBOX', False)
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/fdupes/package.py b/var/spack/repos/builtin/packages/fdupes/package.py
index f2b7f32ef3..0d5792b824 100644
--- a/var/spack/repos/builtin/packages/fdupes/package.py
+++ b/var/spack/repos/builtin/packages/fdupes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class Fdupes(AutotoolsPackage):
variant('ncurses', default=True, description='ncurses support')
depends_on('ncurses', when='+ncurses')
+ depends_on('pcre2', when='+ncurses')
def configure_args(self):
return self.with_or_without('ncurses')
diff --git a/var/spack/repos/builtin/packages/feh/package.py b/var/spack/repos/builtin/packages/feh/package.py
index 4d82263494..eb3af510e2 100644
--- a/var/spack/repos/builtin/packages/feh/package.py
+++ b/var/spack/repos/builtin/packages/feh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fenics-basix/package.py b/var/spack/repos/builtin/packages/fenics-basix/package.py
new file mode 100644
index 0000000000..f2d97cbc74
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fenics-basix/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class FenicsBasix(CMakePackage):
+ """FEniCS element and quadrature runtime"""
+
+ homepage = "https://github.com/FEniCS/basix"
+ git = "https://github.com/FEniCS/basix.git"
+ maintainers = ["mscroggs", "chrisrichardson"]
+
+ version("main", branch="main")
+
+ depends_on("cmake@3.16:", type="build")
+ depends_on("xtensor@0.23.2:", type="build")
+ depends_on("blas")
diff --git a/var/spack/repos/builtin/packages/fenics-dolfinx/package.py b/var/spack/repos/builtin/packages/fenics-dolfinx/package.py
index 6cdc7e8f66..7607387afa 100644
--- a/var/spack/repos/builtin/packages/fenics-dolfinx/package.py
+++ b/var/spack/repos/builtin/packages/fenics-dolfinx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class FenicsDolfinx(CMakePackage):
git = "https://github.com/FEniCS/dolfinx.git"
maintainers = ["js947", "chrisrichardson"]
- version("master", branch="master")
+ version("main", branch="main")
variant("kahip", default=False, description="kahip support")
variant("parmetis", default=False, description="parmetis support")
@@ -33,8 +33,10 @@ class FenicsDolfinx(CMakePackage):
depends_on("slepc", when="+slepc")
depends_on("py-fenics-ffcx", type=("build", "run"))
+ depends_on("fenics-basix", type=("build", "run"))
+ depends_on("py-fenics-basix", type=("build", "run"))
- conflicts('%gcc@:6', msg='C++17 support required')
+ conflicts('%gcc@:8', msg='Improved C++17 support required')
root_cmakelists_dir = "cpp"
diff --git a/var/spack/repos/builtin/packages/fenics/header_fix.patch b/var/spack/repos/builtin/packages/fenics/header_fix.patch
new file mode 100644
index 0000000000..f5622d7e9d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fenics/header_fix.patch
@@ -0,0 +1,36 @@
+From 3d3916e01f22c20eb4aa80d1ed784402a17422f6 Mon Sep 17 00:00:00 2001
+Date: Thu, 10 Sep 2020 23:16:31 +0200
+Subject: [PATCH] fixed compilation errors by adding the algorithm header
+
+---
+ dolfin/geometry/IntersectionConstruction.cpp | 1 +
+ dolfin/mesh/MeshFunction.h | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/dolfin/geometry/IntersectionConstruction.cpp b/dolfin/geometry/IntersectionConstruction.cpp
+index 765dbb674..fe72ee5f6 100644
+--- a/dolfin/geometry/IntersectionConstruction.cpp
++++ b/dolfin/geometry/IntersectionConstruction.cpp
+@@ -18,6 +18,7 @@
+ // First added: 2014-02-03
+ // Last changed: 2017-12-12
+
++#include <algorithm> // fix compiling problem with min_element
+ #include <iomanip>
+ #include <dolfin/mesh/MeshEntity.h>
+ #include "predicates.h"
+diff --git a/dolfin/mesh/MeshFunction.h b/dolfin/mesh/MeshFunction.h
+index 08cbc824f..6d4a22f6e 100644
+--- a/dolfin/mesh/MeshFunction.h
++++ b/dolfin/mesh/MeshFunction.h
+@@ -26,6 +26,7 @@
+
+ #include <map>
+ #include <vector>
++#include <algorithm> // EM: fix for compile error, line 652
+
+ #include <memory>
+ #include <unordered_set>
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/fenics/package.py b/var/spack/repos/builtin/packages/fenics/package.py
index 7dbdc777a5..01a2f16019 100644
--- a/var/spack/repos/builtin/packages/fenics/package.py
+++ b/var/spack/repos/builtin/packages/fenics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,26 +10,43 @@ class Fenics(CMakePackage):
"""FEniCS is organized as a collection of interoperable components
that together form the FEniCS Project. These components include
the problem-solving environment DOLFIN, the form compiler FFC, the
- finite element tabulator FIAT, the just-in-time compiler Instant,
- the code generation interface UFC, the form language UFL and a
- range of additional components."""
+ finite element tabulator FIAT, the just-in-time compiler Instant / Dijitso,
+ the code generation interface UFC, the form language UFL and a range of
+ additional components."""
homepage = "http://fenicsproject.org/"
- url = "https://bitbucket.org/fenics-project/dolfin/downloads/dolfin-1.6.0.tar.gz"
- base_url = "https://bitbucket.org/fenics-project/{pkg}/downloads/{pkg}-{version}.tar.gz"
-
- python_components = ['ufl', 'ffc', 'fiat', 'instant']
-
+ git = "https://bitbucket.org/fenics-project/dolfin.git"
+ url = "https://bitbucket.org/fenics-project/dolfin/downloads/dolfin-2019.1.0.post0.tar.gz"
+
+ version('2019.1.0.post0', sha256='61abdcdb13684ba2a3ba4afb7ea6c7907aa0896a46439d3af7e8848483d4392f')
+ version('2018.1.0.post1', sha256='425cc49b90e0f5c2ebdd765ba9934b1ada97e2ac2710d982d6d267a5e2c5982d')
+ # Pre 2018.1.0 versions are deprecated due to expected compatibility issues
+ version('2017.2.0.post0',
+ sha256='d3c40cd8c1c882f517999c25ea4220adcd01dbb1d829406fce99b1fc40184c82',
+ deprecated=True)
+ version('2016.2.0',
+ sha256='c6760996660a476f77889e11e4a0bc117cc774be0eec777b02a7f01d9ce7f43d',
+ deprecated=True)
+ version('1.6.0',
+ sha256='67f66c39983a8c5a1ba3c0787fa9b9082778bc7227b25c7cad80dc1299e0a201',
+ deprecated=True)
+
+ dolfin_versions = ['2019.1.0', '2018.1.0', '2017.2.0', '2016.2.0', '1.6.0']
+
+ variant('python', default=True, description='Compile with Python interface')
variant('hdf5', default=True, description='Compile with HDF5')
variant('parmetis', default=True, description='Compile with ParMETIS')
variant('scotch', default=True, description='Compile with Scotch')
variant('petsc', default=True, description='Compile with PETSc')
variant('slepc', default=True, description='Compile with SLEPc')
- variant('trilinos', default=True, description='Compile with Trilinos')
+ variant('petsc4py', default=True, description='Use PETSC4py')
+ variant('slepc4py', default=True, description='Use SLEPc4py')
+ variant('trilinos', default=False, description='Compile with Trilinos')
variant('suite-sparse', default=True,
description='Compile with SuiteSparse solvers')
variant('vtk', default=False, description='Compile with VTK')
variant('qt', default=False, description='Compile with QT')
+ variant('zlib', default=False, description='Compile with ZLIB')
variant('mpi', default=True,
description='Enables the distributed memory support')
variant('openmp', default=True,
@@ -43,135 +60,105 @@ class Fenics(CMakePackage):
values=('Debug', 'Release', 'RelWithDebInfo',
'MinSizeRel', 'Developer'))
- # not part of spack list for now
- # variant('petsc4py', default=True, description='Uses PETSc4py')
- # variant('slepc4py', default=True, description='Uses SLEPc4py')
- # variant('pastix', default=True, description='Compile with Pastix')
-
- patch('petsc-3.7.patch', when='@1.6.1^petsc@3.7:')
- patch('petsc-version-detection.patch', when='@:1.6.1')
- patch('hdf5~cxx-detection.patch')
-
- extends('python')
-
+ # Conflics for PETSC4PY / SLEPC4PY
+ conflicts('+petsc4py', when='~python')
+ conflicts('+petsc4py', when='~petsc')
+ conflicts('+slepc4py', when='~python')
+ conflicts('+slepc4py', when='~slepc')
+
+ # Patches
+ # patch('petsc-3.7.patch', when='petsc@3.7:')
+ patch('petsc-version-detection.patch', when='@1.6.0')
+ patch('hdf5~cxx-detection.patch', when='@:1.6.0')
+
+ patch('header_fix.patch', when='@2019.1.0.post0')
+ patch('petsc_3_11.patch', when='@2018.1.0.post1')
+
+ # enable extension support for fenics package
+ extends('python', when='+python')
+
+ # fenics python package dependencies
+ for ver in dolfin_versions:
+ wver = '@' + ver
+ depends_on('py-fenics-fiat{0}'.format(wver), type=('build', 'run'), when=wver + '+python')
+ if(Version(ver) < Version('2018.1.0')):
+ depends_on('py-fenics-instant{0}'.format(wver), type=('build', 'run'), when=wver + '+python')
+ else:
+ depends_on('py-fenics-dijitso{0}'.format(wver), type=('build', 'run'), when=wver + '+python')
+ depends_on('py-fenics-ufl{0}'.format(wver), type=('build', 'run'), when=wver + '+python')
+ if ver in ['2019.1.0', '2017.2.0']:
+ wver = '@' + ver + '.post0'
+ depends_on('py-fenics-ffc{0}'.format(wver), type=('build', 'run'), when=wver + '+python')
+
+ # package dependencies
+ depends_on('python@3.5:', type=('build', 'run'), when='+python')
depends_on('eigen@3.2.0:')
- depends_on('boost+filesystem+program_options+system+iostreams+timer+regex+chrono')
+ depends_on('pkgconfig', type='build')
+ depends_on('zlib', when='+zlib')
+
+ for ver in dolfin_versions:
+ if Version(ver) == Version('2019.1.0'):
+ depends_on('boost+filesystem+program_options+system+iostreams+timer+regex+chrono')
+ else:
+ depends_on('boost+filesystem+program_options+system+iostreams+timer+regex+chrono@1.68.0')
depends_on('mpi', when='+mpi')
- # FIXME: next line fixes concretization with petsc
depends_on('hdf5+hl+fortran', when='+hdf5+petsc')
depends_on('hdf5+hl', when='+hdf5~petsc')
- depends_on('parmetis@4.0.2:', when='+parmetis')
depends_on('metis+real64', when='+parmetis')
+ depends_on('parmetis', when='+parmetis')
depends_on('scotch~metis', when='+scotch~mpi')
depends_on('scotch+mpi~metis', when='+scotch+mpi')
- depends_on('petsc@3.4:', when='+petsc')
- depends_on('slepc@3.4:', when='+slepc')
+ depends_on('petsc', when='+petsc')
+ depends_on('slepc', when='+slepc')
+ depends_on('py-petsc4py@3.6:', when='+petsc+python')
depends_on('trilinos', when='+trilinos')
depends_on('vtk', when='+vtk')
depends_on('suite-sparse', when='+suite-sparse')
depends_on('qt', when='+qt')
- depends_on('py-ply', type=('build', 'run'))
- depends_on('py-six', type=('build', 'run'))
- depends_on('py-numpy', type=('build', 'run'))
- depends_on('py-sympy', type=('build', 'run'))
- depends_on('swig@3.0.3:', type=('build', 'run'))
- depends_on('cmake@2.8.12:', type='build')
+ depends_on('py-pybind11@2.2.4', type=('build', 'run'))
+ depends_on('cmake@3.17.3:', type='build')
- depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools', type='build', when='+python')
+ depends_on('py-pkgconfig', type=('build', 'run'), when='+python')
depends_on('py-sphinx@1.0.1:', when='+doc', type='build')
- releases = [
- {
- 'version': '2016.1.0',
- 'sha256': '6228b4d641829a4cd32141bfcd217a1596a27d5969aa00ee64ebba2b1c0fb148',
- 'resources': {
- 'ffc': '52430ce4c7d57ce1b81eb5fb304992247c944bc6a6054c8b6f42bac81702578d',
- 'fiat': '851723126a71bc1ae2dc4ad6e9330bd9b54d52db390dcbbc1f3c759fb49c6aeb',
- 'instant': '7bf03c8a7b61fd1e432b8f3a0405410ae68892ebb1a62a9f8118e8846bbeb0c6',
- 'ufl': '8dccfe10d1251ba48a4d43a4c6c89abe076390223b500f4baf06f696294b8dd0',
- }
- },
- {
- 'version': '1.6.0',
- 'sha256': '67eaac5fece6e71da0559b4ca8423156f9e99a952f0620adae449ebebb6695d1',
- 'resources': {
- 'ffc': '382e7713fe759694e5f07506b144eeead681e169e5a34c164ef3da30eddcc1c6',
- 'fiat': '858ea3e936ad3b3558b474ffccae8a7b9dddbaafeac77e307115b23753cb1cac',
- 'instant': '2347e0229531969095911fdb1de30bd77bdd7f81521ba84d81b1b4a564fc906c',
- 'ufl': 'c75c4781e5104504f158cb42cd87aceffa9052e8e9db6e9764e6a5b6115d7f73',
- }
- },
- ]
-
- for release in releases:
- version(release['version'], release['sha256'], url=base_url.format(
- pkg='dolfin', version=release['version']))
- for rname, sha256 in release['resources'].items():
- resource(name=rname,
- url=base_url.format(pkg=rname, **release),
- sha256=sha256,
- destination='depends',
- when='@{version}'.format(**release),
- placement=rname)
-
- def cmake_is_on(self, option):
- return 'ON' if option in self.spec else 'OFF'
-
def cmake_args(self):
return [
- '-DDOLFIN_ENABLE_DOCS:BOOL={0}'.format(
- self.cmake_is_on('+doc')),
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- self.cmake_is_on('+shared')),
- '-DDOLFIN_SKIP_BUILD_TESTS:BOOL=ON',
- '-DDOLFIN_ENABLE_OPENMP:BOOL={0}'.format(
- self.cmake_is_on('+openmp')),
- '-DDOLFIN_ENABLE_CHOLMOD:BOOL={0}'.format(
- self.cmake_is_on('suite-sparse')),
- '-DDOLFIN_ENABLE_HDF5:BOOL={0}'.format(
- self.cmake_is_on('hdf5')),
- '-DDOLFIN_ENABLE_MPI:BOOL={0}'.format(
- self.cmake_is_on('mpi')),
- '-DDOLFIN_ENABLE_PARMETIS:BOOL={0}'.format(
- self.cmake_is_on('parmetis')),
- '-DDOLFIN_ENABLE_PASTIX:BOOL={0}'.format(
- self.cmake_is_on('pastix')),
- '-DDOLFIN_ENABLE_PETSC:BOOL={0}'.format(
- self.cmake_is_on('petsc')),
- '-DDOLFIN_ENABLE_PETSC4PY:BOOL={0}'.format(
- self.cmake_is_on('py-petsc4py')),
- '-DDOLFIN_ENABLE_PYTHON:BOOL={0}'.format(
- self.cmake_is_on('python')),
- '-DDOLFIN_ENABLE_QT:BOOL={0}'.format(
- self.cmake_is_on('qt')),
- '-DDOLFIN_ENABLE_SCOTCH:BOOL={0}'.format(
- self.cmake_is_on('scotch')),
- '-DDOLFIN_ENABLE_SLEPC:BOOL={0}'.format(
- self.cmake_is_on('slepc')),
- '-DDOLFIN_ENABLE_SLEPC4PY:BOOL={0}'.format(
- self.cmake_is_on('py-slepc4py')),
- '-DDOLFIN_ENABLE_SPHINX:BOOL={0}'.format(
- self.cmake_is_on('py-sphinx')),
- '-DDOLFIN_ENABLE_TRILINOS:BOOL={0}'.format(
- self.cmake_is_on('trilinos')),
- '-DDOLFIN_ENABLE_UMFPACK:BOOL={0}'.format(
- self.cmake_is_on('suite-sparse')),
- '-DDOLFIN_ENABLE_VTK:BOOL={0}'.format(
- self.cmake_is_on('vtk')),
- '-DDOLFIN_ENABLE_ZLIB:BOOL={0}'.format(
- self.cmake_is_on('zlib')),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define('DOLFIN_SKIP_BUILD_TESTS', True),
+ self.define_from_variant('DOLFIN_ENABLE_OPENMP', 'openmp'),
+ self.define_from_variant('DOLFIN_ENABLE_CHOLMOD', 'suite-sparse'),
+ self.define_from_variant('DOLFIN_ENABLE_HDF5', 'hdf5'),
+ self.define_from_variant('DOLFIN_ENABLE_MPI', 'mpi'),
+ self.define_from_variant('DOLFIN_ENABLE_PARMETIS', 'parmetis'),
+ self.define_from_variant('DOLFIN_ENABLE_PETSC', 'petsc'),
+ self.define_from_variant('DOLFIN_ENABLE_PETSC4PY', 'petsc4py'),
+ self.define_from_variant('DOLFIN_ENABLE_PYTHON', 'python'),
+ self.define_from_variant('DOLFIN_ENABLE_QT', 'qt'),
+ self.define_from_variant('DOLFIN_ENABLE_SCOTCH', 'scotch'),
+ self.define_from_variant('DOLFIN_ENABLE_SLEPC', 'slepc'),
+ self.define_from_variant('DOLFIN_ENABLE_SLEPC4PY', 'slepc4py'),
+ self.define_from_variant('DOLFIN_ENABLE_DOCS', 'doc'),
+ self.define_from_variant('DOLFIN_ENABLE_SPHINX', 'doc'),
+ self.define_from_variant('DOLFIN_ENABLE_TRILINOS', 'trilinos'),
+ self.define_from_variant('DOLFIN_ENABLE_UMFPACK', 'suite-sparse'),
+ self.define_from_variant('DOLFIN_ENABLE_VTK', 'vtk'),
+ self.define_from_variant('DOLFIN_ENABLE_ZLIB', 'zlib'),
]
- @run_after('build')
- def build_python_components(self):
- for package in self.python_components:
- with working_dir(join_path('depends', package)):
- setup_py('build')
+ # set environment for bulding python interface
+ def setup_build_environment(self, env):
+ env.set('DOLFIN_DIR', self.prefix)
+
+ def setup_run_environment(self, env):
+ env.set('DOLFIN_DIR', self.prefix)
+ # build python interface of dolfin
@run_after('install')
- def install_python_components(self):
- for package in self.python_components:
- with working_dir(join_path('depends', package)):
- setup_py('install', '--prefix={0}'.format(self.prefix))
+ def install_python_interface(self):
+ if '+python' in self.spec:
+ with working_dir('python'):
+ setup_py('install', '--single-version-externally-managed',
+ '--root=/', '--prefix={0}'.format(self.prefix))
diff --git a/var/spack/repos/builtin/packages/fenics/petsc_3_11.patch b/var/spack/repos/builtin/packages/fenics/petsc_3_11.patch
new file mode 100644
index 0000000000..98c0d94618
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fenics/petsc_3_11.patch
@@ -0,0 +1,31 @@
+diff --git a/dolfin/la/PETScOptions.h b/dolfin/la/PETScOptions.h
+index 37e5054b3..5ae24e6f5 100644
+--- a/dolfin/la/PETScOptions.h
++++ b/dolfin/la/PETScOptions.h
+@@ -22,7 +22,7 @@
+
+ #include <string>
+ #include <boost/lexical_cast.hpp>
+-#include <petscoptions.h>
++#include <petscsys.h>
+ #include <dolfin/common/SubSystemsManager.h>
+ #include <dolfin/log/log.h>
+ #include "PETScObject.h"
+diff --git a/dolfin/nls/PETScSNESSolver.cpp b/dolfin/nls/PETScSNESSolver.cpp
+index b3e1d62c5..43923ca7b 100644
+--- a/dolfin/nls/PETScSNESSolver.cpp
++++ b/dolfin/nls/PETScSNESSolver.cpp
+@@ -48,7 +48,10 @@ PETScSNESSolver::_methods
+ = { {"default", {"default SNES method", ""}},
+ {"newtonls", {"Line search method", SNESNEWTONLS}},
+ {"newtontr", {"Trust region method", SNESNEWTONTR}},
++#if PETSC_VERSION_LT(3,9,0)
++ // SNESTEST functionality removed in petsc 3.9
+ {"test", {"Tool to verify Jacobian approximation", SNESTEST}},
++#endif
+ {"ngmres", {"Nonlinear generalised minimum residual method",
+ SNESNGMRES}},
+ {"nrichardson", {"Richardson nonlinear method (Picard iteration)",
+diff --git a/petsc_3_11.patch b/petsc_3_11.patch
+new file mode 100644
+index 000000000..e69de29bb
diff --git a/var/spack/repos/builtin/packages/feq-parse/package.py b/var/spack/repos/builtin/packages/feq-parse/package.py
index ea2bcc0031..d234b82a1a 100644
--- a/var/spack/repos/builtin/packages/feq-parse/package.py
+++ b/var/spack/repos/builtin/packages/feq-parse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fermi/ksw_for_aarch64.patch b/var/spack/repos/builtin/packages/fermi/ksw_for_aarch64.patch
index 1f4c4c0b6f..2e76893ce0 100644
--- a/var/spack/repos/builtin/packages/fermi/ksw_for_aarch64.patch
+++ b/var/spack/repos/builtin/packages/fermi/ksw_for_aarch64.patch
@@ -5,7 +5,7 @@
#include <stdlib.h>
#include <stdint.h>
-#include <emmintrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#include "ksw.h"
#ifdef __GNUC__
diff --git a/var/spack/repos/builtin/packages/fermi/package.py b/var/spack/repos/builtin/packages/fermi/package.py
index bdfb1f01f9..a0d2fb29a0 100644
--- a/var/spack/repos/builtin/packages/fermi/package.py
+++ b/var/spack/repos/builtin/packages/fermi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fermikit/ksw_for_aarch64.patch b/var/spack/repos/builtin/packages/fermikit/ksw_for_aarch64.patch
index 5c835bf3df..4928430d44 100644
--- a/var/spack/repos/builtin/packages/fermikit/ksw_for_aarch64.patch
+++ b/var/spack/repos/builtin/packages/fermikit/ksw_for_aarch64.patch
@@ -5,7 +5,7 @@
#include <stdint.h>
#include <assert.h>
-#include <emmintrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#include "ksw.h"
#ifdef USE_MALLOC_WRAPPERS
@@ -16,7 +16,7 @@
#include <stdlib.h>
#include <stdint.h>
-#include <emmintrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#include "ksw.h"
#ifdef __GNUC__
@@ -27,7 +27,7 @@
#include <stdlib.h>
#include <stdint.h>
-#include <emmintrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#include "ksw.h"
#ifdef __GNUC__
@@ -38,7 +38,7 @@
#include <stdint.h>
#include <string.h>
-#include <emmintrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#include "ksw.h"
#ifdef __GNUC__
diff --git a/var/spack/repos/builtin/packages/fermikit/package.py b/var/spack/repos/builtin/packages/fermikit/package.py
index c76cb0d6a8..603ff3b321 100644
--- a/var/spack/repos/builtin/packages/fermikit/package.py
+++ b/var/spack/repos/builtin/packages/fermikit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fermisciencetools/package.py b/var/spack/repos/builtin/packages/fermisciencetools/package.py
index 81719b4fd9..a0d8bd30f9 100644
--- a/var/spack/repos/builtin/packages/fermisciencetools/package.py
+++ b/var/spack/repos/builtin/packages/fermisciencetools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ferret/package.py b/var/spack/repos/builtin/packages/ferret/package.py
index 5878403e26..f72a1bdff1 100644
--- a/var/spack/repos/builtin/packages/ferret/package.py
+++ b/var/spack/repos/builtin/packages/ferret/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ffb/package.py b/var/spack/repos/builtin/packages/ffb/package.py
index 7f55d74a6e..aedeaa0439 100644
--- a/var/spack/repos/builtin/packages/ffb/package.py
+++ b/var/spack/repos/builtin/packages/ffb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class Ffb(MakefilePackage):
homepage = "http://www.ciss.iis.u-tokyo.ac.jp/dl/index.php"
url = "file://{0}/FrontFlow_blue.8.1.tar.gz".format(os.getcwd())
+ manual_download = True
+
version('8.1', sha256='1ad008c909152b6c27668bafbad820da3e6ec3309c7e858ddb785f0a3d6e43ae')
patch('revocap_refiner.patch')
@@ -150,12 +152,14 @@ class Ffb(MakefilePackage):
cxx_fortran_flags = []
if spec.satisfies('%gcc'):
cxx_fortran_flags.append('-lgfortran')
- elif spec.satisfies('%intel'):
- cxx_fortran_flags.expand(['-lifcore', '-limf'])
+ m = FileFilter(editfile)
+ m.filter('-lifcore -limf', ' '.join(cxx_fortran_flags))
elif spec.satisfies('%fj'):
cxx_fortran_flags.append('--linkfortran')
- m = FileFilter(editfile)
- m.filter('-lifcore -limf', ' '.join(cxx_fortran_flags))
+ m = FileFilter(editfile)
+ m.filter('-lifcore -limf', ' '.join(cxx_fortran_flags))
+ elif spec.satisfies('%intel'):
+ pass
def build(self, spec, prefix):
for m in [join_path('make', 'Makeall'),
diff --git a/var/spack/repos/builtin/packages/ffmpeg/package.py b/var/spack/repos/builtin/packages/ffmpeg/package.py
index 38b3c05ea5..9589712cab 100644
--- a/var/spack/repos/builtin/packages/ffmpeg/package.py
+++ b/var/spack/repos/builtin/packages/ffmpeg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Ffmpeg(AutotoolsPackage):
maintainers = ['xjrc']
+ version('4.3.2', sha256='ab3a6d6a70358ba0a5f67f37f91f6656b7302b02e98e5b8c846c16763c99913a')
version('4.2.2', sha256='b620d187c26f76ca19e74210a0336c3b8380b97730df5cdf45f3e69e89000e5c')
version('4.1.1', sha256='0cb40e3b8acaccd0ecb38aa863f66f0c6e02406246556c2992f67bf650fab058')
version('4.1', sha256='b684fb43244a5c4caae652af9022ed5d85ce15210835bce054a33fb26033a1a5')
diff --git a/var/spack/repos/builtin/packages/ffr/package.py b/var/spack/repos/builtin/packages/ffr/package.py
index 35ac20f9f6..91eb6a2dcd 100644
--- a/var/spack/repos/builtin/packages/ffr/package.py
+++ b/var/spack/repos/builtin/packages/ffr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Ffr(MakefilePackage):
JAPAN."""
homepage = "http://www.ciss.iis.u-tokyo.ac.jp/rss21/theme/multi/fluid/fluid_softwareinfo.html"
+ manual_download = True
version('3.1.004', sha256='2b396f66bb6437366721fac987f9c6e8b830638c3e4cb5df6a08ff41633f8481', url="file://{0}/FFR_V3.1.004.zip".format(os.getcwd()))
version('3.0_000', sha256='edc69fb1fd9dbdb3f531a8f2b9533a9b3c1a28768bb4029b84a6b35c95db0b48', url="file://{0}/open_FrontFlowRed_3.0_000.tar.gz".format(os.getcwd()))
diff --git a/var/spack/repos/builtin/packages/ffsb/package.py b/var/spack/repos/builtin/packages/ffsb/package.py
index 5745ccb821..5a30509196 100644
--- a/var/spack/repos/builtin/packages/ffsb/package.py
+++ b/var/spack/repos/builtin/packages/ffsb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fftw/package.py b/var/spack/repos/builtin/packages/fftw/package.py
index f6a5e83908..583a872096 100644
--- a/var/spack/repos/builtin/packages/fftw/package.py
+++ b/var/spack/repos/builtin/packages/fftw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,6 +32,8 @@ class FftwBase(AutotoolsPackage):
msg='Long double precision is not supported in FFTW 2')
conflicts('precision=quad', when='@2.1.5',
msg='Quad precision is not supported in FFTW 2')
+ conflicts('precision=quad', when='+mpi',
+ msg='Quad precision is not supported in MPI')
@property
def libs(self):
@@ -111,9 +113,14 @@ class FftwBase(AutotoolsPackage):
# float only
float_simd_features = ['altivec', 'sse']
- # Workaround NVIDIA compiler bug when avx512 is enabled
- if spec.satisfies('%nvhpc') and 'avx512' in simd_features:
- simd_features.remove('avx512')
+ # Workaround PGI compiler bug when avx2 is enabled
+ if spec.satisfies('%pgi') and 'avx2' in simd_features:
+ simd_features.remove('avx2')
+
+ # Workaround NVIDIA/PGI compiler bug when avx512 is enabled
+ if spec.satisfies('%nvhpc') or spec.satisfies('%pgi'):
+ if 'avx512' in simd_features:
+ simd_features.remove('avx512')
# NVIDIA compiler does not support Altivec intrinsics
if spec.satisfies('%nvhpc') and 'vsx' in simd_features:
@@ -202,6 +209,7 @@ class Fftw(FftwBase):
url = "http://www.fftw.org/fftw-3.3.4.tar.gz"
list_url = "http://www.fftw.org/download.html"
+ version('3.3.9', sha256='bf2c7ce40b04ae811af714deb512510cc2c17b9ab9d6ddcf49fe4487eea7af3d')
version('3.3.8', sha256='6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303')
version('3.3.7', sha256='3b609b7feba5230e8f6dd8d245ddbefac324c5a6ae4186947670d9ac2cd25573')
version('3.3.6-pl2', sha256='a5de35c5c824a78a058ca54278c706cdf3d4abba1c56b63531c2cb05f5d57da2')
@@ -220,7 +228,8 @@ class Fftw(FftwBase):
provides('fftw-api@2', when='@2.1.5')
provides('fftw-api@3', when='@3:')
- patch('pfft-3.3.5.patch', when="@3.3.5:+pfft_patches", level=0)
+ patch('pfft-3.3.9.patch', when="@3.3.9:+pfft_patches", level=0)
+ patch('pfft-3.3.5.patch', when="@3.3.5:3.3.8+pfft_patches", level=0)
patch('pfft-3.3.4.patch', when="@3.3.4+pfft_patches", level=0)
patch('pgi-3.3.6-pl2.patch', when="@3.3.6-pl2%pgi", level=0)
patch('intel-configure.patch', when="@3:3.3.8%intel", level=0)
diff --git a/var/spack/repos/builtin/packages/fftw/pfft-3.3.9.patch b/var/spack/repos/builtin/packages/fftw/pfft-3.3.9.patch
new file mode 100644
index 0000000000..a4f0e6adc6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fftw/pfft-3.3.9.patch
@@ -0,0 +1,858 @@
+--- mpi/conf.c 2020-12-10 12:02:44.000000000 +0000
++++ mpi/conf.c 2021-04-06 09:06:12.143840994 +0000
+@@ -29,6 +29,8 @@
+ SOLVTAB(XM(transpose_pairwise_register)),
+ SOLVTAB(XM(transpose_alltoall_register)),
+ SOLVTAB(XM(transpose_recurse_register)),
++ SOLVTAB(XM(transpose_pairwise_transposed_register)),
++ SOLVTAB(XM(transpose_alltoall_transposed_register)),
+ SOLVTAB(XM(dft_rank_geq2_register)),
+ SOLVTAB(XM(dft_rank_geq2_transposed_register)),
+ SOLVTAB(XM(dft_serial_register)),
+
+--- mpi/Makefile.am 2020-12-10 12:02:44.000000000 +0000
++++ mpi/Makefile.am 2021-04-06 09:06:12.144841002 +0000
+@@ -17,6 +17,7 @@
+ CLEANFILES = fftw3-mpi.f03 fftw3l-mpi.f03
+
+ TRANSPOSE_SRC = transpose-alltoall.c transpose-pairwise.c transpose-recurse.c transpose-problem.c transpose-solve.c mpi-transpose.h
++TRANSPOSE_SRC += transpose-alltoall-transposed.c transpose-pairwise-transposed.c
+ DFT_SRC = dft-serial.c dft-rank-geq2.c dft-rank-geq2-transposed.c dft-rank1.c dft-rank1-bigvec.c dft-problem.c dft-solve.c mpi-dft.h
+ RDFT_SRC = rdft-serial.c rdft-rank-geq2.c rdft-rank-geq2-transposed.c rdft-rank1-bigvec.c rdft-problem.c rdft-solve.c mpi-rdft.h
+ RDFT2_SRC = rdft2-serial.c rdft2-rank-geq2.c rdft2-rank-geq2-transposed.c rdft2-problem.c rdft2-solve.c mpi-rdft2.h
+
+--- mpi/mpi-transpose.h 2020-12-10 12:02:44.000000000 +0000
++++ mpi/mpi-transpose.h 2021-04-06 09:06:12.144841002 +0000
+@@ -59,3 +59,5 @@
+ void XM(transpose_pairwise_register)(planner *p);
+ void XM(transpose_alltoall_register)(planner *p);
+ void XM(transpose_recurse_register)(planner *p);
++void XM(transpose_pairwise_transposed_register)(planner *p);
++void XM(transpose_alltoall_transposed_register)(planner *p);
+
+--- mpi/transpose-alltoall-transposed.c 1970-01-01 00:00:00.000000000 +0000
++++ mpi/transpose-alltoall-transposed.c 2021-04-06 09:06:12.144841002 +0000
+@@ -0,0 +1,280 @@
++/*
++ * Copyright (c) 2003, 2007-11 Matteo Frigo
++ * Copyright (c) 2003, 2007-11 Massachusetts Institute of Technology
++ * Copyright (c) 2012 Michael Pippig
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
++ *
++ */
++
++/* plans for distributed out-of-place transpose using MPI_Alltoall,
++ and which destroy the input array (also if TRANSPOSED_IN is used) */
++
++#include "mpi-transpose.h"
++#include <string.h>
++
++typedef struct {
++ solver super;
++ int copy_transposed_out; /* whether to copy the output for TRANSPOSED_OUT,
++ which makes the first transpose out-of-place
++ but costs an extra copy and requires us
++ to destroy the input */
++} S;
++
++typedef struct {
++ plan_mpi_transpose super;
++
++ plan *cld1, *cld2, *cld2rest, *cld3;
++
++ MPI_Comm comm;
++ int *send_block_sizes, *send_block_offsets;
++ int *recv_block_sizes, *recv_block_offsets;
++
++ INT rest_Ioff, rest_Ooff;
++
++ int equal_blocks;
++} P;
++
++/* transpose locally to get contiguous chunks
++ this may take two transposes if the block sizes are unequal
++ (3 subplans, two of which operate on disjoint data) */
++static void apply_pretranspose(
++ const P *ego, R *I, R *O
++ )
++{
++ plan_rdft *cld2, *cld2rest, *cld3;
++
++ cld3 = (plan_rdft *) ego->cld3;
++ if (cld3)
++ cld3->apply(ego->cld3, O, O);
++ /* else TRANSPOSED_IN is true and user wants I transposed */
++
++ cld2 = (plan_rdft *) ego->cld2;
++ cld2->apply(ego->cld2, I, O);
++ cld2rest = (plan_rdft *) ego->cld2rest;
++ if (cld2rest) {
++ cld2rest->apply(ego->cld2rest,
++ I + ego->rest_Ioff, O + ego->rest_Ooff);
++ }
++}
++
++static void apply(const plan *ego_, R *I, R *O)
++{
++ const P *ego = (const P *) ego_;
++ plan_rdft *cld1 = (plan_rdft *) ego->cld1;
++
++ if (cld1) {
++ /* transpose locally to get contiguous chunks */
++ apply_pretranspose(ego, I, O);
++
++ /* transpose chunks globally */
++ if (ego->equal_blocks)
++ MPI_Alltoall(O, ego->send_block_sizes[0], FFTW_MPI_TYPE,
++ I, ego->recv_block_sizes[0], FFTW_MPI_TYPE,
++ ego->comm);
++ else
++ MPI_Alltoallv(O, ego->send_block_sizes, ego->send_block_offsets,
++ FFTW_MPI_TYPE,
++ I, ego->recv_block_sizes, ego->recv_block_offsets,
++ FFTW_MPI_TYPE,
++ ego->comm);
++
++ /* transpose locally to get non-transposed output */
++ cld1->apply(ego->cld1, I, O);
++ } /* else TRANSPOSED_OUT is true and user wants O transposed */
++ else {
++ /* transpose locally to get contiguous chunks */
++ apply_pretranspose(ego, I, I);
++
++ /* transpose chunks globally */
++ if (ego->equal_blocks)
++ MPI_Alltoall(I, ego->send_block_sizes[0], FFTW_MPI_TYPE,
++ O, ego->recv_block_sizes[0], FFTW_MPI_TYPE,
++ ego->comm);
++ else
++ MPI_Alltoallv(I, ego->send_block_sizes, ego->send_block_offsets,
++ FFTW_MPI_TYPE,
++ O, ego->recv_block_sizes, ego->recv_block_offsets,
++ FFTW_MPI_TYPE,
++ ego->comm);
++ }
++}
++
++static int applicable(const S *ego, const problem *p_,
++ const planner *plnr)
++{
++ /* in contrast to transpose-alltoall this algorithm can not preserve the input,
++ * since we need at least one transpose before the (out-of-place) Alltoall */
++ const problem_mpi_transpose *p = (const problem_mpi_transpose *) p_;
++ return (1
++ && p->I != p->O
++ && (!NO_DESTROY_INPUTP(plnr))
++ && ((p->flags & TRANSPOSED_OUT) || !ego->copy_transposed_out)
++ && ONLY_TRANSPOSEDP(p->flags)
++ );
++}
++
++static void awake(plan *ego_, enum wakefulness wakefulness)
++{
++ P *ego = (P *) ego_;
++ X(plan_awake)(ego->cld1, wakefulness);
++ X(plan_awake)(ego->cld2, wakefulness);
++ X(plan_awake)(ego->cld2rest, wakefulness);
++ X(plan_awake)(ego->cld3, wakefulness);
++}
++
++static void destroy(plan *ego_)
++{
++ P *ego = (P *) ego_;
++ X(ifree0)(ego->send_block_sizes);
++ MPI_Comm_free(&ego->comm);
++ X(plan_destroy_internal)(ego->cld3);
++ X(plan_destroy_internal)(ego->cld2rest);
++ X(plan_destroy_internal)(ego->cld2);
++ X(plan_destroy_internal)(ego->cld1);
++}
++
++static void print(const plan *ego_, printer *p)
++{
++ const P *ego = (const P *) ego_;
++ p->print(p, "(mpi-transpose-alltoall-transposed%s%(%p%)%(%p%)%(%p%)%(%p%))",
++ ego->equal_blocks ? "/e" : "",
++ ego->cld1, ego->cld2, ego->cld2rest, ego->cld3);
++}
++
++static plan *mkplan(const solver *ego_, const problem *p_, planner *plnr)
++{
++ const S *ego = (const S *) ego_;
++ const problem_mpi_transpose *p;
++ P *pln;
++ plan *cld1 = 0, *cld2 = 0, *cld2rest = 0, *cld3 = 0;
++ INT b, bt, vn, rest_Ioff, rest_Ooff;
++ R *O;
++ int *sbs, *sbo, *rbs, *rbo;
++ int pe, my_pe, n_pes;
++ int equal_blocks = 1;
++ static const plan_adt padt = {
++ XM(transpose_solve), awake, print, destroy
++ };
++
++ if (!applicable(ego, p_, plnr))
++ return (plan *) 0;
++
++ p = (const problem_mpi_transpose *) p_;
++ vn = p->vn;
++
++ MPI_Comm_rank(p->comm, &my_pe);
++ MPI_Comm_size(p->comm, &n_pes);
++
++ bt = XM(block)(p->ny, p->tblock, my_pe);
++
++ if (p->flags & TRANSPOSED_OUT) { /* O stays transposed */
++ if (ego->copy_transposed_out) {
++ cld1 = X(mkplan_f_d)(plnr,
++ X(mkproblem_rdft_0_d)(X(mktensor_1d)
++ (bt * p->nx * vn, 1, 1),
++ p->I, O = p->O),
++ 0, 0, NO_SLOW);
++ if (XM(any_true)(!cld1, p->comm)) goto nada;
++ }
++ else /* first transpose is in-place */
++ O = p->I;
++ }
++ else { /* transpose nx x bt x vn -> bt x nx x vn */
++ cld1 = X(mkplan_f_d)(plnr,
++ X(mkproblem_rdft_0_d)(X(mktensor_3d)
++ (bt, vn, p->nx * vn,
++ p->nx, bt * vn, vn,
++ vn, 1, 1),
++ p->I, O = p->O),
++ 0, 0, NO_SLOW);
++ if (XM(any_true)(!cld1, p->comm)) goto nada;
++ }
++
++ if (XM(any_true)(!XM(mkplans_pretranspose)(p, plnr, p->I, O, my_pe,
++ &cld2, &cld2rest, &cld3,
++ &rest_Ioff, &rest_Ooff),
++ p->comm)) goto nada;
++
++
++ pln = MKPLAN_MPI_TRANSPOSE(P, &padt, apply);
++
++ pln->cld1 = cld1;
++ pln->cld2 = cld2;
++ pln->cld2rest = cld2rest;
++ pln->rest_Ioff = rest_Ioff;
++ pln->rest_Ooff = rest_Ooff;
++ pln->cld3 = cld3;
++
++ MPI_Comm_dup(p->comm, &pln->comm);
++
++ /* Compute sizes/offsets of blocks to send for all-to-all command. */
++ sbs = (int *) MALLOC(4 * n_pes * sizeof(int), PLANS);
++ sbo = sbs + n_pes;
++ rbs = sbo + n_pes;
++ rbo = rbs + n_pes;
++ b = XM(block)(p->nx, p->block, my_pe);
++ bt = XM(block)(p->ny, p->tblock, my_pe);
++ for (pe = 0; pe < n_pes; ++pe) {
++ INT db, dbt; /* destination block sizes */
++ db = XM(block)(p->nx, p->block, pe);
++ dbt = XM(block)(p->ny, p->tblock, pe);
++ if (db != p->block || dbt != p->tblock)
++ equal_blocks = 0;
++
++ /* MPI requires type "int" here; apparently it
++ has no 64-bit API? Grrr. */
++ sbs[pe] = (int) (b * dbt * vn);
++ sbo[pe] = (int) (pe * (b * p->tblock) * vn);
++ rbs[pe] = (int) (db * bt * vn);
++ rbo[pe] = (int) (pe * (p->block * bt) * vn);
++ }
++ pln->send_block_sizes = sbs;
++ pln->send_block_offsets = sbo;
++ pln->recv_block_sizes = rbs;
++ pln->recv_block_offsets = rbo;
++ pln->equal_blocks = equal_blocks;
++
++ X(ops_zero)(&pln->super.super.ops);
++ if (cld1) X(ops_add2)(&cld1->ops, &pln->super.super.ops);
++ if (cld2) X(ops_add2)(&cld2->ops, &pln->super.super.ops);
++ if (cld2rest) X(ops_add2)(&cld2rest->ops, &pln->super.super.ops);
++ if (cld3) X(ops_add2)(&cld3->ops, &pln->super.super.ops);
++ /* FIXME: should MPI operations be counted in "other" somehow? */
++
++ return &(pln->super.super);
++
++ nada:
++ X(plan_destroy_internal)(cld3);
++ X(plan_destroy_internal)(cld2rest);
++ X(plan_destroy_internal)(cld2);
++ X(plan_destroy_internal)(cld1);
++ return (plan *) 0;
++}
++
++static solver *mksolver(int copy_transposed_out)
++{
++ static const solver_adt sadt = { PROBLEM_MPI_TRANSPOSE, mkplan, 0 };
++ S *slv = MKSOLVER(S, &sadt);
++ slv->copy_transposed_out = copy_transposed_out;
++ return &(slv->super);
++}
++
++void XM(transpose_alltoall_transposed_register)(planner *p)
++{
++ int cto;
++ for (cto = 0; cto <= 1; ++cto)
++ REGISTER_SOLVER(p, mksolver(cto));
++}
+
+--- mpi/transpose-pairwise.c 2020-12-10 12:02:44.000000000 +0000
++++ mpi/transpose-pairwise.c 2021-04-06 09:08:21.295868925 +0000
+@@ -53,7 +53,6 @@
+ {
+ if (sched) {
+ int i;
+- MPI_Status status;
+
+ /* TODO: explore non-synchronous send/recv? */
+
+@@ -74,7 +73,7 @@
+ O + rbo[pe], (int) (rbs[pe]),
+ FFTW_MPI_TYPE,
+ pe, (pe * n_pes + my_pe) & 0x7fff,
+- comm, &status);
++ comm, MPI_STATUS_IGNORE);
+ }
+ }
+
+@@ -92,7 +91,7 @@
+ O + rbo[pe], (int) (rbs[pe]),
+ FFTW_MPI_TYPE,
+ pe, (pe * n_pes + my_pe) & 0x7fff,
+- comm, &status);
++ comm, MPI_STATUS_IGNORE);
+ }
+ }
+ }
+
+--- mpi/transpose-pairwise-transposed.c 1970-01-01 00:00:00.000000000 +0000
++++ mpi/transpose-pairwise-transposed.c 2021-04-06 09:06:12.145841010 +0000
+@@ -0,0 +1,510 @@
++/*
++ * Copyright (c) 2003, 2007-11 Matteo Frigo
++ * Copyright (c) 2003, 2007-11 Massachusetts Institute of Technology
++ * Copyright (c) 2012 Michael Pippig
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
++ *
++ */
++
++/* Distributed transposes using a sequence of carefully scheduled
++ pairwise exchanges. This has the advantage that it can be done
++ in-place, or out-of-place while preserving the input, using buffer
++ space proportional to the local size divided by the number of
++ processes (i.e. to the total array size divided by the number of
++ processes squared). */
++
++#include "mpi-transpose.h"
++#include <string.h>
++
++typedef struct {
++ solver super;
++ int preserve_input; /* preserve input even if DESTROY_INPUT was passed */
++} S;
++
++typedef struct {
++ plan_mpi_transpose super;
++
++ plan *cld1, *cld2, *cld2rest, *cld3;
++ INT rest_Ioff, rest_Ooff;
++
++ int n_pes, my_pe, *sched;
++ INT *send_block_sizes, *send_block_offsets;
++ INT *recv_block_sizes, *recv_block_offsets;
++ MPI_Comm comm;
++ int preserve_input;
++} P;
++
++static void transpose_chunks(int *sched, int n_pes, int my_pe,
++ INT *sbs, INT *sbo, INT *rbs, INT *rbo,
++ MPI_Comm comm,
++ R *I, R *O)
++{
++ if (sched) {
++ int i;
++
++ /* TODO: explore non-synchronous send/recv? */
++
++ if (I == O) {
++ R *buf = (R*) MALLOC(sizeof(R) * sbs[0], BUFFERS);
++
++ for (i = 0; i < n_pes; ++i) {
++ int pe = sched[i];
++ if (my_pe == pe) {
++ if (rbo[pe] != sbo[pe])
++ memmove(O + rbo[pe], O + sbo[pe],
++ sbs[pe] * sizeof(R));
++ }
++ else {
++ memcpy(buf, O + sbo[pe], sbs[pe] * sizeof(R));
++ MPI_Sendrecv(buf, (int) (sbs[pe]), FFTW_MPI_TYPE,
++ pe, (my_pe * n_pes + pe) & 0xffff,
++ O + rbo[pe], (int) (rbs[pe]),
++ FFTW_MPI_TYPE,
++ pe, (pe * n_pes + my_pe) & 0xffff,
++ comm, MPI_STATUS_IGNORE);
++ }
++ }
++
++ X(ifree)(buf);
++ }
++ else { /* I != O */
++ for (i = 0; i < n_pes; ++i) {
++ int pe = sched[i];
++ if (my_pe == pe)
++ memcpy(O + rbo[pe], I + sbo[pe], sbs[pe] * sizeof(R));
++ else
++ MPI_Sendrecv(I + sbo[pe], (int) (sbs[pe]),
++ FFTW_MPI_TYPE,
++ pe, (my_pe * n_pes + pe) & 0xffff,
++ O + rbo[pe], (int) (rbs[pe]),
++ FFTW_MPI_TYPE,
++ pe, (pe * n_pes + my_pe) & 0xffff,
++ comm, MPI_STATUS_IGNORE);
++ }
++ }
++ }
++}
++
++/* transpose locally to get contiguous chunks
++ this may take two transposes if the block sizes are unequal
++ (3 subplans, two of which operate on disjoint data) */
++static void apply_pretranspose(
++ const P *ego, R *I, R *O
++ )
++{
++ plan_rdft *cld2, *cld2rest, *cld3;
++
++ cld3 = (plan_rdft *) ego->cld3;
++ if (cld3)
++ cld3->apply(ego->cld3, O, O);
++ /* else TRANSPOSED_IN is true and user wants I transposed */
++
++ cld2 = (plan_rdft *) ego->cld2;
++ cld2->apply(ego->cld2, I, O);
++ cld2rest = (plan_rdft *) ego->cld2rest;
++ if (cld2rest) {
++ cld2rest->apply(ego->cld2rest,
++ I + ego->rest_Ioff, O + ego->rest_Ooff);
++ }
++}
++
++static void apply(const plan *ego_, R *I, R *O)
++{
++ const P *ego = (const P *) ego_;
++ plan_rdft *cld1 = (plan_rdft *) ego->cld1;
++
++ if (cld1) {
++ /* transpose locally to get contiguous chunks */
++ apply_pretranspose(ego, I, O);
++
++ if(ego->preserve_input) I = O;
++
++ /* transpose chunks globally */
++ transpose_chunks(ego->sched, ego->n_pes, ego->my_pe,
++ ego->send_block_sizes, ego->send_block_offsets,
++ ego->recv_block_sizes, ego->recv_block_offsets,
++ ego->comm, O, I);
++
++ /* transpose locally to get non-transposed output */
++ cld1->apply(ego->cld1, I, O);
++ } /* else TRANSPOSED_OUT is true and user wants O transposed */
++ else if (ego->preserve_input) {
++ /* transpose locally to get contiguous chunks */
++ apply_pretranspose(ego, I, O);
++
++ /* transpose chunks globally */
++ transpose_chunks(ego->sched, ego->n_pes, ego->my_pe,
++ ego->send_block_sizes, ego->send_block_offsets,
++ ego->recv_block_sizes, ego->recv_block_offsets,
++ ego->comm, O, O);
++ }
++ else {
++ /* transpose locally to get contiguous chunks */
++ apply_pretranspose(ego, I, I);
++
++ /* transpose chunks globally */
++ transpose_chunks(ego->sched, ego->n_pes, ego->my_pe,
++ ego->send_block_sizes, ego->send_block_offsets,
++ ego->recv_block_sizes, ego->recv_block_offsets,
++ ego->comm, I, O);
++ }
++}
++
++static int applicable(const S *ego, const problem *p_,
++ const planner *plnr)
++{
++ const problem_mpi_transpose *p = (const problem_mpi_transpose *) p_;
++ /* Note: this is *not* UGLY for out-of-place, destroy-input plans;
++ the planner often prefers transpose-pairwise to transpose-alltoall,
++ at least with LAM MPI on my machine. */
++ return (1
++ && (!ego->preserve_input || (!NO_DESTROY_INPUTP(plnr)
++ && p->I != p->O))
++ && ONLY_TRANSPOSEDP(p->flags));
++}
++
++static void awake(plan *ego_, enum wakefulness wakefulness)
++{
++ P *ego = (P *) ego_;
++ X(plan_awake)(ego->cld1, wakefulness);
++ X(plan_awake)(ego->cld2, wakefulness);
++ X(plan_awake)(ego->cld2rest, wakefulness);
++ X(plan_awake)(ego->cld3, wakefulness);
++}
++
++static void destroy(plan *ego_)
++{
++ P *ego = (P *) ego_;
++ X(ifree0)(ego->sched);
++ X(ifree0)(ego->send_block_sizes);
++ MPI_Comm_free(&ego->comm);
++ X(plan_destroy_internal)(ego->cld3);
++ X(plan_destroy_internal)(ego->cld2rest);
++ X(plan_destroy_internal)(ego->cld2);
++ X(plan_destroy_internal)(ego->cld1);
++}
++
++static void print(const plan *ego_, printer *p)
++{
++ const P *ego = (const P *) ego_;
++ p->print(p, "(mpi-transpose-pairwise-transposed%s%(%p%)%(%p%)%(%p%)%(%p%))",
++ ego->preserve_input==2 ?"/p":"",
++ ego->cld1, ego->cld2, ego->cld2rest, ego->cld3);
++}
++
++/* Given a process which_pe and a number of processes npes, fills
++ the array sched[npes] with a sequence of processes to communicate
++ with for a deadlock-free, optimum-overlap all-to-all communication.
++ (All processes must call this routine to get their own schedules.)
++ The schedule can be re-ordered arbitrarily as long as all processes
++ apply the same permutation to their schedules.
++
++ The algorithm here is based upon the one described in:
++ J. A. M. Schreuder, "Constructing timetables for sport
++ competitions," Mathematical Programming Study 13, pp. 58-67 (1980).
++ In a sport competition, you have N teams and want every team to
++ play every other team in as short a time as possible (maximum overlap
++ between games). This timetabling problem is therefore identical
++ to that of an all-to-all communications problem. In our case, there
++ is one wrinkle: as part of the schedule, the process must do
++ some data transfer with itself (local data movement), analogous
++ to a requirement that each team "play itself" in addition to other
++ teams. With this wrinkle, it turns out that an optimal timetable
++ (N parallel games) can be constructed for any N, not just for even
++ N as in the original problem described by Schreuder.
++*/
++static void fill1_comm_sched(int *sched, int which_pe, int npes)
++{
++ int pe, i, n, s = 0;
++ A(which_pe >= 0 && which_pe < npes);
++ if (npes % 2 == 0) {
++ n = npes;
++ sched[s++] = which_pe;
++ }
++ else
++ n = npes + 1;
++ for (pe = 0; pe < n - 1; ++pe) {
++ if (npes % 2 == 0) {
++ if (pe == which_pe) sched[s++] = npes - 1;
++ else if (npes - 1 == which_pe) sched[s++] = pe;
++ }
++ else if (pe == which_pe) sched[s++] = pe;
++
++ if (pe != which_pe && which_pe < n - 1) {
++ i = (pe - which_pe + (n - 1)) % (n - 1);
++ if (i < n/2)
++ sched[s++] = (pe + i) % (n - 1);
++
++ i = (which_pe - pe + (n - 1)) % (n - 1);
++ if (i < n/2)
++ sched[s++] = (pe - i + (n - 1)) % (n - 1);
++ }
++ }
++ A(s == npes);
++}
++
++/* Sort the communication schedule sched for npes so that the schedule
++ on process sortpe is ascending or descending (!ascending). This is
++ necessary to allow in-place transposes when the problem does not
++ divide equally among the processes. In this case there is one
++ process where the incoming blocks are bigger/smaller than the
++ outgoing blocks and thus have to be received in
++ descending/ascending order, respectively, to avoid overwriting data
++ before it is sent. */
++static void sort1_comm_sched(int *sched, int npes, int sortpe, int ascending)
++{
++ int *sortsched, i;
++ sortsched = (int *) MALLOC(npes * sizeof(int) * 2, OTHER);
++ fill1_comm_sched(sortsched, sortpe, npes);
++ if (ascending)
++ for (i = 0; i < npes; ++i)
++ sortsched[npes + sortsched[i]] = sched[i];
++ else
++ for (i = 0; i < npes; ++i)
++ sortsched[2*npes - 1 - sortsched[i]] = sched[i];
++ for (i = 0; i < npes; ++i)
++ sched[i] = sortsched[npes + i];
++ X(ifree)(sortsched);
++}
++
++/* make the plans to do the pre-MPI transpositions (shared with
++ transpose-alltoall-transposed) */
++int XM(mkplans_pretranspose)(const problem_mpi_transpose *p, planner *plnr,
++ R *I, R *O, int my_pe,
++ plan **cld2, plan **cld2rest, plan **cld3,
++ INT *rest_Ioff, INT *rest_Ooff)
++{
++ INT vn = p->vn;
++ INT b = XM(block)(p->nx, p->block, my_pe);
++ INT bt = p->tblock;
++ INT nyb = p->ny / bt; /* number of equal-sized blocks */
++ INT nyr = p->ny - nyb * bt; /* leftover rows after equal blocks */
++
++ *cld2 = *cld2rest = *cld3 = NULL;
++ *rest_Ioff = *rest_Ooff = 0;
++
++ if (!(p->flags & TRANSPOSED_IN) && (nyr == 0 || I != O)) {
++ INT ny = p->ny * vn;
++ bt *= vn;
++ *cld2 = X(mkplan_f_d)(plnr,
++ X(mkproblem_rdft_0_d)(X(mktensor_3d)
++ (nyb, bt, b * bt,
++ b, ny, bt,
++ bt, 1, 1),
++ I, O),
++ 0, 0, NO_SLOW);
++ if (!*cld2) goto nada;
++
++ if (nyr > 0) {
++ *rest_Ioff = nyb * bt;
++ *rest_Ooff = nyb * b * bt;
++ bt = nyr * vn;
++ *cld2rest = X(mkplan_f_d)(plnr,
++ X(mkproblem_rdft_0_d)(X(mktensor_2d)
++ (b, ny, bt,
++ bt, 1, 1),
++ I + *rest_Ioff,
++ O + *rest_Ooff),
++ 0, 0, NO_SLOW);
++ if (!*cld2rest) goto nada;
++ }
++ }
++ else {
++ *cld2 = X(mkplan_f_d)(plnr,
++ X(mkproblem_rdft_0_d)(
++ X(mktensor_4d)
++ (nyb, b * bt * vn, b * bt * vn,
++ b, vn, bt * vn,
++ bt, b * vn, vn,
++ vn, 1, 1),
++ I, O),
++ 0, 0, NO_SLOW);
++ if (!*cld2) goto nada;
++
++ *rest_Ioff = *rest_Ooff = nyb * bt * b * vn;
++ *cld2rest = X(mkplan_f_d)(plnr,
++ X(mkproblem_rdft_0_d)(
++ X(mktensor_3d)
++ (b, vn, nyr * vn,
++ nyr, b * vn, vn,
++ vn, 1, 1),
++ I + *rest_Ioff, O + *rest_Ooff),
++ 0, 0, NO_SLOW);
++ if (!*cld2rest) goto nada;
++
++ if (!(p->flags & TRANSPOSED_IN)) {
++ *cld3 = X(mkplan_f_d)(plnr,
++ X(mkproblem_rdft_0_d)(
++ X(mktensor_3d)
++ (p->ny, vn, b * vn,
++ b, p->ny * vn, vn,
++ vn, 1, 1),
++ I, I),
++ 0, 0, NO_SLOW);
++ if (!*cld3) goto nada;
++ }
++ }
++
++ return 1;
++
++nada:
++ X(plan_destroy_internal)(*cld3);
++ X(plan_destroy_internal)(*cld2rest);
++ X(plan_destroy_internal)(*cld2);
++ *cld2 = *cld2rest = *cld3 = NULL;
++ return 0;
++}
++
++static plan *mkplan(const solver *ego_, const problem *p_, planner *plnr)
++{
++ const S *ego = (const S *) ego_;
++ const problem_mpi_transpose *p;
++ P *pln;
++ plan *cld1 = 0, *cld2 = 0, *cld2rest = 0, *cld3 = 0;
++ INT b, bt, vn, rest_Ioff, rest_Ooff;
++ INT *sbs, *sbo, *rbs, *rbo;
++ int pe, my_pe, n_pes, sort_pe = -1, ascending = 1;
++ R *I, *O;
++ static const plan_adt padt = {
++ XM(transpose_solve), awake, print, destroy
++ };
++
++ UNUSED(ego);
++
++ if (!applicable(ego, p_, plnr))
++ return (plan *) 0;
++
++ p = (const problem_mpi_transpose *) p_;
++ vn = p->vn;
++ I = p->I; O = p->O;
++
++ MPI_Comm_rank(p->comm, &my_pe);
++ MPI_Comm_size(p->comm, &n_pes);
++
++ bt = XM(block)(p->ny, p->tblock, my_pe);
++
++
++ if (ego->preserve_input || NO_DESTROY_INPUTP(plnr)) I = p->O;
++
++ if (!(p->flags & TRANSPOSED_OUT)) { /* nx x bt x vn -> bt x nx x vn */
++ cld1 = X(mkplan_f_d)(plnr,
++ X(mkproblem_rdft_0_d)(X(mktensor_3d)
++ (bt, vn, p->nx * vn,
++ p->nx, bt * vn, vn,
++ vn, 1, 1),
++ I, O = p->O),
++ 0, 0, NO_SLOW);
++ if (XM(any_true)(!cld1, p->comm)) goto nada;
++
++ }
++ else {
++ if (ego->preserve_input || NO_DESTROY_INPUTP(plnr))
++ O = p->O;
++ else
++ O = p->I;
++ }
++
++ if (XM(any_true)(!XM(mkplans_pretranspose)(p, plnr, p->I, O, my_pe,
++ &cld2, &cld2rest, &cld3,
++ &rest_Ioff, &rest_Ooff),
++ p->comm)) goto nada;
++
++ pln = MKPLAN_MPI_TRANSPOSE(P, &padt, apply);
++
++ pln->cld1 = cld1;
++ pln->cld2 = cld2;
++ pln->cld2rest = cld2rest;
++ pln->rest_Ioff = rest_Ioff;
++ pln->rest_Ooff = rest_Ooff;
++ pln->cld3 = cld3;
++ pln->preserve_input = ego->preserve_input ? 2 : NO_DESTROY_INPUTP(plnr);
++
++ MPI_Comm_dup(p->comm, &pln->comm);
++
++ n_pes = (int) X(imax)(XM(num_blocks)(p->nx, p->block),
++ XM(num_blocks)(p->ny, p->tblock));
++
++ /* Compute sizes/offsets of blocks to exchange between processors */
++ sbs = (INT *) MALLOC(4 * n_pes * sizeof(INT), PLANS);
++ sbo = sbs + n_pes;
++ rbs = sbo + n_pes;
++ rbo = rbs + n_pes;
++ b = XM(block)(p->nx, p->block, my_pe);
++ bt = XM(block)(p->ny, p->tblock, my_pe);
++ for (pe = 0; pe < n_pes; ++pe) {
++ INT db, dbt; /* destination block sizes */
++ db = XM(block)(p->nx, p->block, pe);
++ dbt = XM(block)(p->ny, p->tblock, pe);
++
++ sbs[pe] = b * dbt * vn;
++ sbo[pe] = pe * (b * p->tblock) * vn;
++ rbs[pe] = db * bt * vn;
++ rbo[pe] = pe * (p->block * bt) * vn;
++
++ if (db * dbt > 0 && db * p->tblock != p->block * dbt) {
++ A(sort_pe == -1); /* only one process should need sorting */
++ sort_pe = pe;
++ ascending = db * p->tblock > p->block * dbt;
++ }
++ }
++ pln->n_pes = n_pes;
++ pln->my_pe = my_pe;
++ pln->send_block_sizes = sbs;
++ pln->send_block_offsets = sbo;
++ pln->recv_block_sizes = rbs;
++ pln->recv_block_offsets = rbo;
++
++ if (my_pe >= n_pes) {
++ pln->sched = 0; /* this process is not doing anything */
++ }
++ else {
++ pln->sched = (int *) MALLOC(n_pes * sizeof(int), PLANS);
++ fill1_comm_sched(pln->sched, my_pe, n_pes);
++ if (sort_pe >= 0)
++ sort1_comm_sched(pln->sched, n_pes, sort_pe, ascending);
++ }
++
++ X(ops_zero)(&pln->super.super.ops);
++ if (cld1) X(ops_add2)(&cld1->ops, &pln->super.super.ops);
++ if (cld2) X(ops_add2)(&cld2->ops, &pln->super.super.ops);
++ if (cld2rest) X(ops_add2)(&cld2rest->ops, &pln->super.super.ops);
++ if (cld3) X(ops_add2)(&cld3->ops, &pln->super.super.ops);
++ /* FIXME: should MPI operations be counted in "other" somehow? */
++
++ return &(pln->super.super);
++
++ nada:
++ X(plan_destroy_internal)(cld3);
++ X(plan_destroy_internal)(cld2rest);
++ X(plan_destroy_internal)(cld2);
++ X(plan_destroy_internal)(cld1);
++ return (plan *) 0;
++}
++
++static solver *mksolver(int preserve_input)
++{
++ static const solver_adt sadt = { PROBLEM_MPI_TRANSPOSE, mkplan, 0 };
++ S *slv = MKSOLVER(S, &sadt);
++ slv->preserve_input = preserve_input;
++ return &(slv->super);
++}
++
++void XM(transpose_pairwise_transposed_register)(planner *p)
++{
++ int preserve_input;
++ for (preserve_input = 0; preserve_input <= 1; ++preserve_input)
++ REGISTER_SOLVER(p, mksolver(preserve_input));
++}
diff --git a/var/spack/repos/builtin/packages/fgsl/package.py b/var/spack/repos/builtin/packages/fgsl/package.py
index 1af9b2a0fa..7f5c6c3368 100644
--- a/var/spack/repos/builtin/packages/fgsl/package.py
+++ b/var/spack/repos/builtin/packages/fgsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/figlet/package.py b/var/spack/repos/builtin/packages/figlet/package.py
index 8c6028d246..31c1f61cea 100644
--- a/var/spack/repos/builtin/packages/figlet/package.py
+++ b/var/spack/repos/builtin/packages/figlet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/figtree/package.py b/var/spack/repos/builtin/packages/figtree/package.py
index b96ccba7fa..753fbc693c 100644
--- a/var/spack/repos/builtin/packages/figtree/package.py
+++ b/var/spack/repos/builtin/packages/figtree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/file/package.py b/var/spack/repos/builtin/packages/file/package.py
index 06ccfe4c33..582c15cf62 100644
--- a/var/spack/repos/builtin/packages/file/package.py
+++ b/var/spack/repos/builtin/packages/file/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,4 +12,7 @@ class File(AutotoolsPackage):
homepage = "http://www.darwinsys.com/file/"
url = "https://astron.com/pub/file/file-5.37.tar.gz"
+ version('5.40', sha256='167321f43c148a553f68a0ea7f579821ef3b11c27b8cbe158e4df897e4a5dd57')
+ version('5.39', sha256='f05d286a76d9556243d0cb05814929c2ecf3a5ba07963f8f70bfaaa70517fad1')
+ version('5.38', sha256='593c2ffc2ab349c5aea0f55fedfe4d681737b6b62376a9b3ad1e77b2cc19fa34')
version('5.37', sha256='e9c13967f7dd339a3c241b7710ba093560b9a33013491318e88e6b8b57bae07f')
diff --git a/var/spack/repos/builtin/packages/filebench/package.py b/var/spack/repos/builtin/packages/filebench/package.py
index d328bb01ca..cf85119eef 100644
--- a/var/spack/repos/builtin/packages/filebench/package.py
+++ b/var/spack/repos/builtin/packages/filebench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/filo/package.py b/var/spack/repos/builtin/packages/filo/package.py
index aeba476c04..38c9b3b176 100644
--- a/var/spack/repos/builtin/packages/filo/package.py
+++ b/var/spack/repos/builtin/packages/filo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/filtlong/package.py b/var/spack/repos/builtin/packages/filtlong/package.py
index ab836c2588..db7320a790 100644
--- a/var/spack/repos/builtin/packages/filtlong/package.py
+++ b/var/spack/repos/builtin/packages/filtlong/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fimpute/package.py b/var/spack/repos/builtin/packages/fimpute/package.py
index 3f2bb658ea..5b2bab2a3d 100644
--- a/var/spack/repos/builtin/packages/fimpute/package.py
+++ b/var/spack/repos/builtin/packages/fimpute/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/find-circ/package.py b/var/spack/repos/builtin/packages/find-circ/package.py
index eef0f314aa..f78caddcd9 100644
--- a/var/spack/repos/builtin/packages/find-circ/package.py
+++ b/var/spack/repos/builtin/packages/find-circ/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/findbugs/package.py b/var/spack/repos/builtin/packages/findbugs/package.py
index e81b3247dd..b2cbc4664d 100644
--- a/var/spack/repos/builtin/packages/findbugs/package.py
+++ b/var/spack/repos/builtin/packages/findbugs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/findutils/nvhpc-long-width.patch b/var/spack/repos/builtin/packages/findutils/nvhpc-long-width.patch
new file mode 100644
index 0000000000..0526e80f76
--- /dev/null
+++ b/var/spack/repos/builtin/packages/findutils/nvhpc-long-width.patch
@@ -0,0 +1,17 @@
+--- a/gl/lib/regex_internal.h
++++ b/gl/lib/regex_internal.h
+@@ -36,6 +36,14 @@
+ #include <intprops.h>
+ #include <verify.h>
+
++#ifndef __LONG_WIDTH__
++#if LONG_WIDTH
++#define __LONG_WIDTH__ LONG_WIDTH
++#else
++#define __LONG_WIDTH__ __WORDSIZE
++#endif
++#endif
++
+ #if defined DEBUG && DEBUG != 0
+ # include <assert.h>
+ # define DEBUG_ASSERT(x) assert (x)
diff --git a/var/spack/repos/builtin/packages/findutils/package.py b/var/spack/repos/builtin/packages/findutils/package.py
index 33b41c53eb..8b72d63015 100644
--- a/var/spack/repos/builtin/packages/findutils/package.py
+++ b/var/spack/repos/builtin/packages/findutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,19 @@ class Findutils(AutotoolsPackage, GNUMirrorPackage):
utilities of the GNU operating system."""
homepage = "https://www.gnu.org/software/findutils/"
- gnu_mirror_path = "findutils/findutils-4.6.0.tar.gz"
+ gnu_mirror_path = "findutils/findutils-4.8.0.tar.xz"
+
+ def url_for_version(self, version):
+ # Before 4.7.0 it used tar.gz instead of tar.xz
+ if version < Version("4.7.0"):
+ self.gnu_mirror_path = "findutils/findutils-{0}.tar.gz".format(version)
+
+ return super(Findutils, self).url_for_version(version)
executables = ['^find$']
+ version('4.8.0', sha256='57127b7e97d91282c6ace556378d5455a9509898297e46e10443016ea1387164')
+ version('4.7.0', sha256='c5fefbdf9858f7e4feb86f036e1247a54c79fc2d8e4b7064d5aaa1f47dfa789a')
version('4.6.0', sha256='ded4c9f73731cd48fec3b6bdaccce896473b6d8e337e9612e16cf1431bb1169d')
version('4.4.2', sha256='434f32d171cbc0a5e72cfc5372c6fc4cb0e681f8dce566a0de5b6fccd702b62a')
version('4.4.1', sha256='77a5b85d7fe0dd9c1093e010b61f765707364ec2c89c4f432c1c616215bcc138')
@@ -36,39 +45,22 @@ class Findutils(AutotoolsPackage, GNUMirrorPackage):
version('4.1.20', sha256='8c5dd50a5ca54367fa186f6294b81ec7a365e36d670d9feac62227cb513e63ab')
version('4.1', sha256='487ecc0a6c8c90634a11158f360977e5ce0a9a6701502da6cb96a5a7ec143fac')
- depends_on('autoconf', type='build', when='@4.6.0')
- depends_on('automake', type='build', when='@4.6.0')
- depends_on('libtool', type='build', when='@4.6.0')
- depends_on('m4', type='build', when='@4.6.0')
- depends_on('texinfo', type='build', when='@4.6.0')
-
- # findutils does not build with newer versions of glibc
- patch('https://src.fedoraproject.org/rpms/findutils/raw/97ba2d7a18d1f9ae761b6ff0b4f1c4d33d7a8efc/f/findutils-4.6.0-gnulib-fflush.patch', sha256='84b916c0bf8c51b7e7b28417692f0ad3e7030d1f3c248ba77c42ede5c1c5d11e', when='@4.6.0')
- patch('https://src.fedoraproject.org/rpms/findutils/raw/97ba2d7a18d1f9ae761b6ff0b4f1c4d33d7a8efc/f/findutils-4.6.0-gnulib-makedev.patch', sha256='bd9e4e5cc280f9753ae14956c4e4aa17fe7a210f55dd6c84aa60b12d106d47a2', when='@4.6.0')
-
- patch('nvhpc.patch', when='%nvhpc')
+ # The NVIDIA compilers do not currently support some GNU builtins.
+ # Detect this case and use the fallback path.
+ patch('nvhpc.patch', when='@4.6.0 %nvhpc')
+ # Workaround bug where __LONG_WIDTH__ is not defined
+ patch('nvhpc-long-width.patch', when='@4.8.0:4.8.99 %nvhpc')
build_directory = 'spack-build'
+ # Taken from here to build 4.8.0 with apple-clang:
+ # https://github.com/Homebrew/homebrew-core/blob/master/Formula/findutils.rb
+ def setup_build_environment(self, spack_env):
+ if self.spec.satisfies('@4.8.0 %apple-clang'):
+ spack_env.set('CFLAGS', '-D__nonnull\\(params\\)=')
+
@classmethod
def determine_version(cls, exe):
output = Executable(exe)('--version', output=str, error=str)
match = re.search(r'find \(GNU findutils\)\s+(\S+)', output)
return match.group(1) if match else None
-
- @property
- def force_autoreconf(self):
- # Run autoreconf due to build system patch (gnulib-makedev)
- return self.spec.satisfies('@4.6.0')
-
- @when('@4.6.0')
- def patch(self):
- # We have to patch out gettext support, otherwise autoreconf tries to
- # call autopoint, which depends on find, which is part of findutils.
- filter_file('^AM_GNU_GETTEXT.*',
- '',
- 'configure.ac')
-
- filter_file(r'^SUBDIRS = (.*) po (.*)',
- r'SUBDIRS = \1 \2',
- 'Makefile.am')
diff --git a/var/spack/repos/builtin/packages/fio/package.py b/var/spack/repos/builtin/packages/fio/package.py
index 4fdc44fae2..59ca1729bb 100644
--- a/var/spack/repos/builtin/packages/fio/package.py
+++ b/var/spack/repos/builtin/packages/fio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,8 +14,10 @@ class Fio(AutotoolsPackage):
"""
homepage = "https://github.com/axboe/fio"
- url = "https://github.com/axboe/fio/archive/fio-2.19.tar.gz"
+ url = "https://github.com/axboe/fio/archive/fio-3.26.tar.gz"
+ version('3.26', sha256='8bd6987fd9b8c2a75d3923661566ade50b99f61fa4352148975e65577ffa4024')
+ version('3.25', sha256='d8157676bc78a50f3ac82ffc6f80ffc3bba93cbd892fc4882533159a0cdbc1e8')
version('3.19', sha256='809963b1d023dbc9ac7065557af8129aee17b6895e0e8c5ca671b0b14285f404')
version('3.16', sha256='c7731a9e831581bab7104da9ea60c9f44e594438dbe95dff26726ca0285e7b93')
version('2.19', sha256='61fb03a18703269b781aaf195cb0d7931493bbb5bfcc8eb746d5d66d04ed77f7')
diff --git a/var/spack/repos/builtin/packages/fipscheck/package.py b/var/spack/repos/builtin/packages/fipscheck/package.py
index 38678e04ff..0acaef4074 100644
--- a/var/spack/repos/builtin/packages/fipscheck/package.py
+++ b/var/spack/repos/builtin/packages/fipscheck/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fish/package.py b/var/spack/repos/builtin/packages/fish/package.py
index 385c925e9f..115149a4a0 100644
--- a/var/spack/repos/builtin/packages/fish/package.py
+++ b/var/spack/repos/builtin/packages/fish/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fixesproto/package.py b/var/spack/repos/builtin/packages/fixesproto/package.py
index b550f0bec0..1837d90fd2 100644
--- a/var/spack/repos/builtin/packages/fixesproto/package.py
+++ b/var/spack/repos/builtin/packages/fixesproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fj/package.py b/var/spack/repos/builtin/packages/fj/package.py
index 78de8c4871..ee247bc00e 100644
--- a/var/spack/repos/builtin/packages/fj/package.py
+++ b/var/spack/repos/builtin/packages/fj/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fjcontrib/package.py b/var/spack/repos/builtin/packages/fjcontrib/package.py
index c0d10ed30d..822f32d45e 100644
--- a/var/spack/repos/builtin/packages/fjcontrib/package.py
+++ b/var/spack/repos/builtin/packages/fjcontrib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Fjcontrib(AutotoolsPackage):
homepage = "https://fastjet.hepforge.org/contrib/"
url = "http://fastjet.hepforge.org/contrib/downloads/fjcontrib-1.044.tar.gz"
+ tags = ['hep']
+
version('1.044', sha256='de3f45c2c1bed6d7567483e4a774575a504de8ddc214678bac7f64e9d2e7e7a7')
version('1.043', sha256='ef0f586b19ffd12f392b7facc890a73d31fc11b9f5bb727cf3743d6eb59e9993')
version('1.042', sha256='5b052e93a371c557557fa4a293cca4b08f88ccfb6c43a4df15b2a9f38c6d8831')
diff --git a/var/spack/repos/builtin/packages/fl/package.py b/var/spack/repos/builtin/packages/fl/package.py
index 7270365413..1c303ed506 100644
--- a/var/spack/repos/builtin/packages/fl/package.py
+++ b/var/spack/repos/builtin/packages/fl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flac/package.py b/var/spack/repos/builtin/packages/flac/package.py
index 5a35abda8a..2c2aa35fa9 100644
--- a/var/spack/repos/builtin/packages/flac/package.py
+++ b/var/spack/repos/builtin/packages/flac/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Flac(AutotoolsPackage):
homepage = "https://xiph.org/flac/index.html"
url = "http://downloads.xiph.org/releases/flac/flac-1.3.2.tar.xz"
+ version('1.3.3', sha256='213e82bd716c9de6db2f98bcadbc4c24c7e2efe8c75939a1a84e28539c4e1748')
version('1.3.2', sha256='91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f')
version('1.3.1', sha256='4773c0099dba767d963fd92143263be338c48702172e8754b9bc5103efe1c56c')
version('1.3.0', sha256='fa2d64aac1f77e31dfbb270aeb08f5b32e27036a52ad15e69a77e309528010dc')
diff --git a/var/spack/repos/builtin/packages/flann/package.py b/var/spack/repos/builtin/packages/flann/package.py
index fc69246518..c50e6f22c1 100644
--- a/var/spack/repos/builtin/packages/flann/package.py
+++ b/var/spack/repos/builtin/packages/flann/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flash/package.py b/var/spack/repos/builtin/packages/flash/package.py
index 79a27b46d4..07c4bb34bd 100644
--- a/var/spack/repos/builtin/packages/flash/package.py
+++ b/var/spack/repos/builtin/packages/flash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flatbuffers/package.py b/var/spack/repos/builtin/packages/flatbuffers/package.py
index c0a0ef4ee2..35a36b35b9 100644
--- a/var/spack/repos/builtin/packages/flatbuffers/package.py
+++ b/var/spack/repos/builtin/packages/flatbuffers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,11 +21,40 @@ class Flatbuffers(CMakePackage):
variant('shared', default=True,
description='Build shared instead of static libraries')
+ variant('python', default=False,
+ description='Build with python support')
+
+ depends_on('py-setuptools', when='+python', type='build')
+ depends_on('python@3.6:', when='+python', type=('build', 'run'))
+ extends('python', when='+python')
+
+ # Fixes "Class-memaccess" compilation error in test
+ # https://github.com/google/flatbuffers/issues/5930
+ # Possibly affects earlier releases but I haven't tried to apply it.
+ patch('https://raw.githubusercontent.com/Flamefire/easybuild-easyconfigs/'
+ '72ba2a1a0d44fbd96ded9f279373ef804bdf3903/easybuild/easyconfigs/f/'
+ 'flatbuffers/flatbuffers-1.12.0_replace-usage-of-memset.patch',
+ sha256='094a98b5a7debbc2c60c2b235942c79e505ec76f9281f87c95d15e9ad8a97c52',
+ when='@1.12.0:%gcc@10:')
+ # Silences false positive "-Wstringop-overflow" on GCC 10+
+ # https://github.com/google/flatbuffers/issues/5950
+ # Possibly affects earlier releases but I haven't tried to apply it.
+ patch('https://patch-diff.githubusercontent.com/raw/google/flatbuffers/pull/'
+ '6020.patch',
+ sha256='4a9a18abc776407f3f97e02c40f349cfb24fe7ddb41df952271d894777a31c88',
+ when='@1.12.0:%gcc@10:')
+
+ @run_after('install')
+ def python_install(self):
+ if '+python' in self.spec:
+ pydir = join_path(self.stage.source_path, 'python')
+ with working_dir(pydir):
+ setup_py('install', '--prefix=' + prefix,
+ '--single-version-externally-managed', '--root=/')
def cmake_args(self):
args = []
- args.append('-DFLATBUFFERS_BUILD_SHAREDLIB={0}'.format(
- 'ON' if '+shared' in self.spec else 'OFF'))
+ args.append(self.define_from_variant('FLATBUFFERS_BUILD_SHAREDLIB', 'shared'))
args.append('-DFLATBUFFERS_BUILD_FLATLIB={0}'.format(
'ON' if '+shared' not in self.spec else 'OFF'))
if 'darwin' in self.spec.architecture:
diff --git a/var/spack/repos/builtin/packages/flatcc/package.py b/var/spack/repos/builtin/packages/flatcc/package.py
index a9d3617c9b..789b43fd55 100644
--- a/var/spack/repos/builtin/packages/flatcc/package.py
+++ b/var/spack/repos/builtin/packages/flatcc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flcl/package.py b/var/spack/repos/builtin/packages/flcl/package.py
index fcc7e673b6..a3a6ba9c98 100644
--- a/var/spack/repos/builtin/packages/flcl/package.py
+++ b/var/spack/repos/builtin/packages/flcl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,7 +23,6 @@ class Flcl(CMakePackage):
def cmake_args(self):
args = []
- args.append('-DBUILD_TESTING:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'))
+ args.append(self.define('BUILD_TESTING', self.run_tests))
return args
diff --git a/var/spack/repos/builtin/packages/flecsale/package.py b/var/spack/repos/builtin/packages/flecsale/package.py
index 2a05562752..eb8166f263 100644
--- a/var/spack/repos/builtin/packages/flecsale/package.py
+++ b/var/spack/repos/builtin/packages/flecsale/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flecsi/package.py b/var/spack/repos/builtin/packages/flecsi/package.py
index fccdd686b0..df9492e0b3 100644
--- a/var/spack/repos/builtin/packages/flecsi/package.py
+++ b/var/spack/repos/builtin/packages/flecsi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,8 +21,8 @@ class Flecsi(CMakePackage):
git = 'https://github.com/laristra/flecsi.git'
version('devel', branch='devel', submodules=False, preferred=False)
- version('1', branch='1', submodules=False, preferred=True)
- version('1.4', branch='1.4', submodules=False, preferred=False)
+ version('1', branch='1', submodules=False, preferred=False)
+ version('1.4', branch='1.4', submodules=False, preferred=True)
variant('build_type', default='Release',
values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'),
@@ -43,7 +43,7 @@ class Flecsi(CMakePackage):
description='Enable documentation')
variant('coverage', default=False,
description='Enable coverage build')
- variant('hdf5', default=False,
+ variant('hdf5', default=True,
description='Enable HDF5 Support')
variant('caliper', default=False,
description='Enable Caliper Support')
@@ -56,26 +56,28 @@ class Flecsi(CMakePackage):
variant('cinch', default=False,
description='Enable External Cinch')
- depends_on('cmake@3.12:', type='build')
+ depends_on('cmake@3.12:')
# Requires cinch > 1.0 due to cinchlog installation issue
depends_on('cinch@1.01:', type='build', when='+cinch')
depends_on('mpi', when='backend=mpi')
depends_on('mpi', when='backend=legion')
depends_on('mpi', when='backend=hpx')
- depends_on('legion@ctrl-rep+shared+mpi+hdf5 build_type=Debug', when='backend=legion +debug_backend +hdf5')
- depends_on('legion@ctrl-rep+shared+mpi build_type=Debug', when='backend=legion +debug_backend ~hdf5')
- depends_on('legion@ctrl-rep+shared+mpi+hdf5 build_type=Release', when='backend=legion ~debug_backend +hdf5')
- depends_on('legion@ctrl-rep+shared+mpi build_type=Release', when='backend=legion ~debug_backend ~hdf5')
- depends_on('hpx@1.3.0 cxxstd=14 malloc=system build_type=Debug', when='backend=hpx +debug_backend')
- depends_on('hpx@1.3.0 cxxstd=14 malloc=system build_type=Release', when='backend=hpx ~debug_backend')
- depends_on('boost@1.70.0: cxxstd=14 +program_options')
+ depends_on('legion+shared', when='backend=legion')
+ depends_on('legion+hdf5', when='backend=legion +hdf5')
+ depends_on('legion build_type=Debug', when='backend=legion +debug_backend')
+ depends_on('hpx@1.4.1 cxxstd=17 malloc=system max_cpu_count=128', when='backend=hpx')
+ depends_on('hpx build_type=Debug', when='backend=hpx +debug_backend')
+ depends_on('boost@1.70.0: cxxstd=17 +program_options')
depends_on('metis@5.1.0:')
depends_on('parmetis@4.0.3:')
- depends_on('hdf5+mpi', when='+hdf5')
- depends_on('caliper', when='+caliper')
+ depends_on('googletest@1.8.1+gmock')
+ depends_on('hdf5+hl+mpi', when='+hdf5')
+ depends_on('caliper@2.0.1~adiak', when='+caliper')
depends_on('graphviz', when='+graphviz')
depends_on('python@3.0:', when='+tutorial')
+ depends_on('doxygen', when='+doxygen')
depends_on('llvm', when='+flecstan')
+ depends_on('pfunit@3.0:3.99')
conflicts('+tutorial', when='backend=hpx')
# conflicts('+hdf5', when='backend=hpx')
@@ -102,6 +104,10 @@ class Flecsi(CMakePackage):
elif spec.variants['backend'].value == 'hpx':
options.append('-DFLECSI_RUNTIME_MODEL=hpx')
options.append('-DENABLE_MPI=ON')
+ options.append('-DHPX_IGNORE_CMAKE_BUILD_TYPE_COMPATIBILITY=ON')
+ elif spec.variants['backend'].value == 'charmpp':
+ options.append('-DFLECSI_RUNTIME_MODEL=charmpp')
+ options.append('-DENABLE_MPI=ON')
else:
options.append('-DFLECSI_RUNTIME_MODEL=serial')
options.append('-DENABLE_MPI=OFF')
diff --git a/var/spack/repos/builtin/packages/flecsph/package.py b/var/spack/repos/builtin/packages/flecsph/package.py
index d77ec4d507..bf4c7a275c 100644
--- a/var/spack/repos/builtin/packages/flecsph/package.py
+++ b/var/spack/repos/builtin/packages/flecsph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flex/package.py b/var/spack/repos/builtin/packages/flex/package.py
index 0197dab272..8f22c2821b 100644
--- a/var/spack/repos/builtin/packages/flex/package.py
+++ b/var/spack/repos/builtin/packages/flex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,22 +14,26 @@ class Flex(AutotoolsPackage):
homepage = "https://github.com/westes/flex"
url = "https://github.com/westes/flex/releases/download/v2.6.1/flex-2.6.1.tar.gz"
+ tags = ['build-tools']
+
executables = ['^flex$']
version('2.6.4', sha256='e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995')
- version('2.6.3', sha256='68b2742233e747c462f781462a2a1e299dc6207401dac8f0bbb316f48565c2aa')
+ version('2.6.3', sha256='68b2742233e747c462f781462a2a1e299dc6207401dac8f0bbb316f48565c2aa', preferred=True)
# Avoid flex '2.6.2' (major bug)
# See issue #2554; https://github.com/westes/flex/issues/113
version('2.6.1', sha256='3c43f9e658e45e8aae3cf69fa11803d60550865f023852830d557c5f0623c13b')
version('2.6.0', sha256='cde6e46064a941a3810f7bbc612a2c39cb3aa29ce7eb775089c2515d0adfa7e9')
version('2.5.39', sha256='258d3c9c38cae05932fb470db58b6a288a361c448399e6bda2694ef72a76e7cd')
+ variant('nls', default=False, description="Enable native language support")
variant('lex', default=True,
description="Provide symlinks for lex and libl")
depends_on('bison', type='build')
- depends_on('gettext@0.19:', type='build')
- depends_on('help2man', type='build')
+ depends_on('gettext@0.19:', type='build', when='+nls')
+ depends_on('gettext@0.19:', type='build', when='@:2.6.0,2.6.4')
+ depends_on('help2man', type='build', when='@:2.6.0,2.6.4')
depends_on('findutils', type='build')
depends_on('diffutils', type='build')
@@ -88,6 +92,11 @@ class Flex(AutotoolsPackage):
return url
+ def configure_args(self):
+ args = []
+ args += self.enable_or_disable('nls')
+ return args
+
@run_after('install')
def symlink_lex(self):
"""Install symlinks for lex compatibility."""
diff --git a/var/spack/repos/builtin/packages/flexi/for_aarch64.patch b/var/spack/repos/builtin/packages/flexi/for_aarch64.patch
new file mode 100644
index 0000000000..4b8efe13ad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/flexi/for_aarch64.patch
@@ -0,0 +1,9 @@
+--- spack-src/tools/userblock/generateuserblock.sh.org 2021-03-05 15:27:48.635287742 +0900
++++ spack-src/tools/userblock/generateuserblock.sh 2021-03-05 15:29:31.995593495 +0900
+@@ -108,5 +108,5 @@
+ tar cJf userblock.tar.xz userblock.txt
+
+ # Build the module
+-objcopy -I binary -O elf64-x86-64 -B i386 --redefine-sym _binary_userblock_tar_xz_start=userblock_start --redefine-sym _binary_userblock_tar_xz_end=userblock_end --redefine-sym _binary_userblock_tar_xz_size=userblock_size userblock.tar.xz userblock.o
++objcopy -I binary -O elf64-littleaarch64 -B aarch64 --redefine-sym _binary_userblock_tar_xz_start=userblock_start --redefine-sym _binary_userblock_tar_xz_end=userblock_end --redefine-sym _binary_userblock_tar_xz_size=userblock_size userblock.tar.xz userblock.o
+ rm userblock.tar.xz
diff --git a/var/spack/repos/builtin/packages/flexi/package.py b/var/spack/repos/builtin/packages/flexi/package.py
new file mode 100644
index 0000000000..d3e37abb2c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/flexi/package.py
@@ -0,0 +1,95 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Flexi(CMakePackage):
+ """Open Source High-Order Unstructured Discontinuous Galerkin Fluid
+ Dynamics Solver"""
+
+ homepage = "https://www.flexi-project.org/"
+ git = "https://github.com/flexi-framework/flexi.git"
+
+ version('master', preferred=True)
+ version('21.03.0', tag='v21.03.0')
+
+ patch('for_aarch64.patch', when='target=aarch64:')
+
+ variant('mpi', default=True, description='Enable MPI')
+ variant('2d', default=False, description='If set to True the code will run in two-dimensional mode')
+ variant('eqnsysname', default='navierstokes', values=('navierstokes', 'linearscalaradvection', 'rans_sa'), multi=False, description='Defines the equation system')
+ variant('fv', default=False, description='Enables the usage of the finite volume subcell shock capturing mechanism')
+ variant('lifting', default='br1', values=('br1', 'br2'), multi=False, description='Two different lifting methods for the parabolic part of the equation system available')
+ variant('nodetype', default='GAUSS', values=('GAUSS', 'GAUSS-LOBATTO'), multi=False, description='Space discretization basis function')
+ variant('split', default=False, description='Split form of the discontinuous Galerkin operator')
+ variant('parabolic', default=True, description=' Defines, whether the parabolic part of the chosen system should be included or not')
+ variant('testcase', default='default', values=('default', 'taylorgreenvortex', 'phill', 'channel', 'riemann2d'), multi=False, description='Defines the used test case')
+ variant('viscosity', default='constant', values=('constant', 'sutherland', 'powerlaw'), multi=False, description='Defines modeling approach for viscosity')
+ variant('eddy_viscosity', default=False, description='Enable eddy viscosity')
+
+ # Available Tools
+ variant('visu', default=True, description='Enable posti_visu')
+ variant('swapmesg', default=False, description='Enable posti_swapmesh')
+ variant('preparerecordpoints', default=False, description='Enable posti_preparerecordpoints')
+ variant('visualizerecordpoints', default=False, description='Enable posti_visualizerecordpoints')
+ variant('evaluaterecordpoints', default=False, description='Enable posti_evaluaterecordpoints')
+ variant('mergetimeaverages', default=False, description='Enable posti_mergetimeaverages')
+ variant('channel_fft', default=False, description='Enable posti_channel_fft')
+ variant('to3d', default=False, description='Enable posti_to3d')
+ variant('avg2d', default=False, description='Enable posti_avg2d')
+
+ conflicts('+to3d', when='@:21.03.0', msg='Only available in newer releases')
+ conflicts('nodetype=GAUSS', when='+split', msg='Only available for Gauss-Lobatto nodes')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('hdf5+fortran+mpi', when='+mpi')
+ depends_on('hdf5+fortran~mpi', when='~mpi')
+ depends_on('lapack')
+ depends_on('zlib')
+ depends_on('fftw', when='+channel_fft')
+
+ def flag_handler(self, name, flags):
+ if name == 'fflags':
+ if self.spec.satisfies('%gcc@10:'):
+ if flags is None:
+ flags = []
+ flags.append('-fallow-argument-mismatch')
+
+ return (flags, None, None)
+
+ def cmake_args(self):
+ args = [
+ '-DLIBS_BUILD_HDF5:BOOL=OFF',
+ self.define_from_variant('LIBS_USE_MPI', 'mpi'),
+ self.define_from_variant('FLEXI_2D', '2d'),
+ self.define_from_variant('FLEXI_EQNSYSNAME', 'eqnsysname'),
+ self.define_from_variant('FLEXI_FV', 'fv'),
+ self.define_from_variant('FLEXI_LIFTING', 'lifting'),
+ self.define_from_variant('FLEXI_NODETYPE', 'nodetype'),
+ self.define_from_variant('FLEXI_SPLIT_DG', 'split'),
+ self.define_from_variant('FLEXI_PARABOLIC', 'parabolic'),
+ self.define_from_variant('FLEXI_TESTCASE', 'testcase'),
+ self.define_from_variant('FLEXI_VISCOSITY', 'viscosity'),
+ self.define_from_variant('FLEXI_EDDYVISCOSITY', 'eddy_viscosity'),
+
+ self.define_from_variant('POSTI_VISU', 'visu'),
+ self.define_from_variant('POSTI_SWAPMESH', 'swapmesg'),
+ self.define_from_variant('POSTI_RP_VISUALIZE', 'visualizerecordpoints'),
+ self.define_from_variant('POSTI_RP_EVALUATE', 'evaluaterecordpoints'),
+ self.define_from_variant('POSTI_MERGETIMEAVERAGES', 'mergetimeaverages'),
+ self.define_from_variant('POSTI_CHANNEL_FFT', 'channel_fft'),
+ self.define_from_variant('POSTI_TO3D', 'to3d'),
+ self.define_from_variant('POSTI_AVG2D', 'avg2d'),
+ ]
+
+ if self.spec.satisfies('@:21.03.0'):
+ args.append(self.define_from_variant('POSTI_RP_PREPARERE',
+ 'preparerecordpoints'))
+ else:
+ args.append(self.define_from_variant('POSTI_RP_PREPARE',
+ 'preparerecordpoints'))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/flexiblas/package.py b/var/spack/repos/builtin/packages/flexiblas/package.py
index 37855da107..c4f6031b2f 100644
--- a/var/spack/repos/builtin/packages/flexiblas/package.py
+++ b/var/spack/repos/builtin/packages/flexiblas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Flexiblas(CMakePackage):
homepage = "https://www.mpi-magdeburg.mpg.de/projects/flexiblas"
url = "https://csc.mpi-magdeburg.mpg.de/mpcsc/software/flexiblas/flexiblas-3.0.3.tar.gz"
+ version('3.0.4', sha256='50a88f2e88994dda91b2a2621850afd9654b3b84820e737e335687a46751be5c')
version('3.0.3', sha256='926ab31cf56f0618aec34da85314f3b48b6deb661b4e9d6e6a99dc37872b5341')
# virtual dependency
diff --git a/var/spack/repos/builtin/packages/flibcpp/package.py b/var/spack/repos/builtin/packages/flibcpp/package.py
index 01658ba2ee..f0b0551c6c 100644
--- a/var/spack/repos/builtin/packages/flibcpp/package.py
+++ b/var/spack/repos/builtin/packages/flibcpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class Flibcpp(CMakePackage):
git = "https://github.com/swig-fortran/flibcpp.git"
url = "https://github.com/swig-fortran/flibcpp/archive/v0.3.1.tar.gz"
- version('master', branch='master')
+ version('0.5.2', sha256='b9b4eb6431d5b56a54c37f658df7455eafd3d204a5534903b127e0c8a1c9b827')
version('0.5.1', sha256='76db24ce7893f19ab97ea7260c39490ae1bd1e08a4cc5111ad7e70525a916993')
version('0.5.0', sha256='94204198304ba4187815431859e5958479fa651a6f06f460b099badbf50f16b2')
version('0.4.1', sha256='5c9a11af391fcfc95dd11b95338cff19ed8104df66d42b00ae54f6cde4da5bdf')
@@ -28,7 +28,7 @@ class Flibcpp(CMakePackage):
variant('fstd', default='03', values=('none', '03', '08', '15', '18'),
multi=False, description='Build with this Fortran standard')
- depends_on('swig@fortran', type='build', when="+swig")
+ depends_on('swig@4.0.2-fortran', type='build', when="+swig")
depends_on('py-sphinx', type='build', when="+doc")
@run_before('cmake')
@@ -44,6 +44,7 @@ class Flibcpp(CMakePackage):
self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
self.define_from_variant('FLIBCPP_BUILD_DOCS', 'doc'),
self.define_from_variant('FLIBCPP_FORTRAN_STD', 'fstd'),
- self.define('BUILD_TESTING', bool(self.run_tests)),
+ self.define_from_variant('FLIBCPP_USE_SWIG', 'swig'),
+ self.define('FLIBCPP_BUILD_TESTS', bool(self.run_tests)),
self.define('FLIBCPP_BUILD_EXAMPLES', bool(self.run_tests)),
]
diff --git a/var/spack/repos/builtin/packages/flink/package.py b/var/spack/repos/builtin/packages/flink/package.py
index d07391f756..84881b13d1 100644
--- a/var/spack/repos/builtin/packages/flink/package.py
+++ b/var/spack/repos/builtin/packages/flink/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flint/package.py b/var/spack/repos/builtin/packages/flint/package.py
index 11c3afbdf0..d6383b4a83 100644
--- a/var/spack/repos/builtin/packages/flint/package.py
+++ b/var/spack/repos/builtin/packages/flint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flit/package.py b/var/spack/repos/builtin/packages/flit/package.py
index fbe1d2f342..6cd035f3b4 100644
--- a/var/spack/repos/builtin/packages/flit/package.py
+++ b/var/spack/repos/builtin/packages/flit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fltk/package.py b/var/spack/repos/builtin/packages/fltk/package.py
index 90f458bbd4..99509b6308 100644
--- a/var/spack/repos/builtin/packages/fltk/package.py
+++ b/var/spack/repos/builtin/packages/fltk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -38,6 +38,12 @@ class Fltk(Package):
variant('shared', default=True,
description='Enables the build of shared libraries')
+ variant('gl', default=True,
+ description='Enables opengl support')
+
+ # variant dependencies
+ depends_on('gl', when='+gl')
+
def install(self, spec, prefix):
options = ['--prefix=%s' % prefix,
'--enable-localjpeg',
@@ -47,6 +53,9 @@ class Fltk(Package):
if '+shared' in spec:
options.append('--enable-shared')
+ if '~gl' in spec:
+ options.append('--disable-gl')
+
# FLTK needs to be built in-source
configure(*options)
make()
diff --git a/var/spack/repos/builtin/packages/flume/package.py b/var/spack/repos/builtin/packages/flume/package.py
index f672aa3b79..aa635ff8d5 100644
--- a/var/spack/repos/builtin/packages/flume/package.py
+++ b/var/spack/repos/builtin/packages/flume/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/flux-core/package.py b/var/spack/repos/builtin/packages/flux-core/package.py
index adb34f2611..05ab82b831 100644
--- a/var/spack/repos/builtin/packages/flux-core/package.py
+++ b/var/spack/repos/builtin/packages/flux-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,20 +13,18 @@ class FluxCore(AutotoolsPackage):
homepage = "https://github.com/flux-framework/flux-core"
url = "https://github.com/flux-framework/flux-core/releases/download/v0.8.0/flux-core-0.8.0.tar.gz"
git = "https://github.com/flux-framework/flux-core.git"
+ maintainers = ['SteVwonder']
version('master', branch='master')
+ version('0.23.0', sha256='918b181be4e27c32f02d5036230212cd9235dc78dc2bde249c3651d6f75866c7')
+ version('0.22.0', sha256='1dd0b737199b8a40f245e6a4e1b3b28770f0ecf2f483d284232080b8b252521f')
+ version('0.21.0', sha256='cc1b7a46d7c1c1a3e99e8861bba0dde89a97351eabd6f1b264788bd76e64c329')
+ version('0.20.0', sha256='2970b9b1c389fc4a381f9e605921ce0eb6aa9339387ea741978bcffb4bd81b6f')
version('0.19.0', sha256='f45328a37d989c308c46639a9ed771f47b11184422cf5604249919fbd320d6f5')
version('0.18.0', sha256='9784bbca94177a32dbbc99728e8925bf894f3aebaa316961d6ea85df32d59545')
version('0.17.0', sha256='3f8c6cb72982028f86a96c0098cacd3a6e9de359fa1cf077380c835a20e7b7f7')
version('0.16.0', sha256='1582f7fb4d2313127418c34de7c9ce4f5fef00622d19cedca7bed929f4709f10')
version('0.15.0', sha256='51bc2eae69501f802459fc82f191eb5e8ae0b4f7e9e77ac18543a850cc8445f5')
- version('0.11.3', sha256='91b5d7dca8fc28a77777c4e4cb8717fc3dc2c174e70611740689a71901c6de7e')
- version('0.11.2', sha256='ab8637428cd9b74b2dff4842d10e0fc4acc8213c4e51f31d32a4cbfbdf730412')
- version('0.11.1', sha256='3c8495db0f3b701f6dfe3e2a75aed794fc561e9f28284e8c02ac67693bfe890e')
- version('0.11.0', sha256='a4d8ff92e79b4ca19d556395bb8c5f8dc02fd9d5a8cc38c4a2c66867a96de5ea')
- version('0.10.0', sha256='a70cdd228077af60c9443a5c69d3da932e447dd11697f5fef9028c48dabb3041')
- version('0.9.0', sha256='7b5b4aa72704b3c4432136b9e515e0d663568e6dbfc3ecd2f91c83b65841104e')
- version('0.8.0', sha256='eb4b0fe0da191acd3823ef42d415c40aae6a0c3aef62ebb27905658d045e11cc')
# Avoid the infinite symlink issue
# This workaround is documented in PR #3543
@@ -36,37 +34,26 @@ class FluxCore(AutotoolsPackage):
variant('cuda', default=False, description='Build dependencies with support for CUDA')
depends_on("libzmq@4.0.4:")
- depends_on("czmq")
- depends_on("czmq@2.2:3.99", when="@0.1:0.6")
- depends_on("czmq@3.0.1:", when="@0.7:")
- depends_on("hwloc@1.11.1:1.99")
+ depends_on("czmq@3.0.1:")
+ depends_on("hwloc@1.11.1:1.99", when="@:0.17.0")
+ depends_on("hwloc@1.11.1:", when="@0.17.0:")
depends_on("hwloc +cuda", when='+cuda')
# Provide version hints for lua so that the concretizer succeeds when no
# explicit flux-core version is given. See issue #10000 for details
- depends_on("lua@5.1:5.2.99", type=('build', 'run', 'link'))
- depends_on("lua@5.1:5.1.99", when="@0.1.0:0.9.0")
- depends_on("lua@5.1:5.2.99", when="@0.10.0:,master")
+ depends_on("lua", type=('build', 'run', 'link'))
+ depends_on("lua@5.1:5.2.99", when="@:0.17.0")
+ depends_on("lua@5.1:5.3.99", when="@0.18.0:,master")
depends_on("lua-luaposix")
- depends_on("munge", when="@0.1.0:0.10.0")
# `link` dependency on python due to Flux's `pymod` module
- depends_on("python", type=('build', 'run', 'link'))
- depends_on("python@2.7:2.99",
- when="@0.1.0:0.11.0",
- type=('build', 'run', 'link'))
- depends_on("python@2.7:", when="@0.11.1:", type=('build', 'run', 'link'))
- depends_on("python@3.6:", when="@0.17.0:,master", type=('build', 'run', 'link'))
+ depends_on("python@3.6:", type=('build', 'run', 'link'))
depends_on("py-cffi", type=('build', 'run'))
- depends_on("py-six", type=('build', 'run'), when="@0.11.0:")
- depends_on("py-pyyaml", type=('build', 'run'), when="@0.11.0:")
- depends_on("py-jsonschema", type=('build', 'run'), when="@0.12.0:")
+ depends_on("py-six", type=('build', 'run'))
+ depends_on("py-pyyaml")
+ depends_on("py-jsonschema")
depends_on("jansson")
depends_on("pkgconfig")
- depends_on("yaml-cpp", when="@:0.11")
- depends_on("lz4", when="@0.11.0:")
-
- # versions up to 0.8.0 uses pylint to check Flux's python binding
- # later versions provide a configure flag and disable the check by default
- depends_on("py-pylint", when='@:0.8.0', type='build')
+ depends_on("yaml-cpp")
+ depends_on("lz4")
depends_on("asciidoc", type='build', when="+docs")
@@ -78,7 +65,7 @@ class FluxCore(AutotoolsPackage):
# Testing Dependencies
depends_on("mpich pmi=pmi", type="test")
depends_on("valgrind", type="test")
- depends_on("jq", type="test", when='@0.12.0:')
+ depends_on("jq", type="test")
def url_for_version(self, version):
'''
@@ -179,3 +166,20 @@ class FluxCore(AutotoolsPackage):
if '+docs' not in self.spec:
args.append('--disable-docs')
return args
+
+ def flag_handler(self, name, flags):
+ if name == 'cflags':
+ # https://github.com/flux-framework/flux-core/issues/3482
+ if self.spec.satisfies('%gcc@10:') and \
+ self.spec.satisfies('@0.23.0:0.23.99'):
+ if flags is None:
+ flags = []
+ flags.append('-Wno-error=stringop-truncation')
+
+ if self.spec.satisfies('%gcc@8:') and \
+ self.spec.satisfies('@0.23.0'):
+ if flags is None:
+ flags = []
+ flags.append('-Wno-error=maybe-uninitialized')
+
+ return (flags, None, None)
diff --git a/var/spack/repos/builtin/packages/flux-sched/package.py b/var/spack/repos/builtin/packages/flux-sched/package.py
index 99bbce3b52..b7b6f24f9f 100644
--- a/var/spack/repos/builtin/packages/flux-sched/package.py
+++ b/var/spack/repos/builtin/packages/flux-sched/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,17 +13,17 @@ class FluxSched(AutotoolsPackage):
homepage = "https://github.com/flux-framework/flux-sched"
url = "https://github.com/flux-framework/flux-sched/releases/download/v0.5.0/flux-sched-0.5.0.tar.gz"
git = "https://github.com/flux-framework/flux-sched.git"
+ maintainers = ['SteVwonder']
version('master', branch='master')
+ version('0.15.0', sha256='ff24d26997f91af415f98734b8117291f5a5001e86dac865b56b3d72980c80c8')
+ version('0.14.0', sha256='2808f42032b917823d69cd26103c9238694416e2f30c6d39c11c670927ed232a')
+ version('0.13.0', sha256='ba17fc0451239fe31a1524b6a270741873f59a5057514d2524fd3e9215c47a82')
+ version('0.12.0', sha256='b41ecaebba254abfb5a7995fd9100bd45a59d4ad0a79bdca8b3db02785d97b1d')
version('0.11.0', sha256='6a0e3c0678f85da8724e5399b02be9686311c835617f6036235ef54b489cc336')
version('0.10.0', sha256='5944927774709b5f52ddf64a0e825d9b0f24c9dea890b5504b87a8576d217cf6')
version('0.9.0', sha256='0e1eb408a937c2843bdaaed915d4d7e2ea763b98c31e7b849a96a74758d66a21')
version('0.8.0', sha256='45bc3cefb453d19c0cb289f03692fba600a39045846568d258e4b896ca19ca0d')
- version('0.7.1', sha256='a35e555a353feed6b7b814ae83d05362356f9ee33ffa75d7dfb7e2fe86c21294')
- version('0.7.0', sha256='69267a3aaacaedd9896fd90cfe17aef266cba4fb28c77f8123d95a31ce739a7b')
- version('0.6.0', sha256='3301d4c10810414228e5969b84b75fe1285abb97453070eb5a77f386d8184f8d')
- version('0.5.0', sha256='d6347f5c85c12c76364dccb39d63c007094ca9cbbbae4e8f4e98d8b1c0b07e89')
- version('0.4.0', sha256='00768a0b062aec42aa9b31d9d7006efd3a3e9cb9c24878d50487643c8af15e8a')
# Avoid the infinite symlink issue
# This workaround is documented in PR #3543
@@ -31,21 +31,18 @@ class FluxSched(AutotoolsPackage):
variant('cuda', default=False, description='Build dependencies with support for CUDA')
- depends_on("boost+graph@1.53.0,1.59.0:", when='@0.5.0:')
- depends_on("py-pyyaml", when="@0.7.0:")
- depends_on("libxml2@2.9.1:", when="@0.6.0")
- depends_on("yaml-cpp", when="@0.7.0:")
- depends_on("libuuid")
+ depends_on("boost+graph@1.53.0,1.59.0:")
+ depends_on("py-pyyaml")
+ depends_on("libxml2@2.9.1:")
+ depends_on("yaml-cpp")
+ depends_on("uuid")
depends_on("pkgconfig")
depends_on("flux-core", type=('build', 'link', 'run'))
depends_on("flux-core+cuda", when='+cuda', type=('build', 'run', 'link'))
- depends_on("flux-core@0.8.0", when='@0.4.0', type=('build', 'run', 'link'))
- depends_on("flux-core@0.9.0", when='@0.5.0', type=('build', 'run', 'link'))
- depends_on("flux-core@0.10.0", when='@0.6.0', type=('build', 'run', 'link'))
- depends_on("flux-core@0.11.0", when='@0.7.0', type=('build', 'run', 'link'))
- depends_on("flux-core@0.11.2:0.11.99", when='@0.7.1', type=('build', 'run', 'link'))
depends_on("flux-core@0.16.0:0.16.99", when='@0.8.0', type=('build', 'run', 'link'))
+ depends_on("flux-core@0.22.0", when='@0.14.0', type=('build', 'run', 'link'))
+ depends_on("flux-core@0.23.0", when='@0.15.0', type=('build', 'run', 'link'))
depends_on("flux-core@master", when='@master', type=('build', 'run', 'link'))
# Need autotools when building on master:
diff --git a/var/spack/repos/builtin/packages/fluxbox/package.py b/var/spack/repos/builtin/packages/fluxbox/package.py
index 04dc39196b..e9ef127b69 100644
--- a/var/spack/repos/builtin/packages/fluxbox/package.py
+++ b/var/spack/repos/builtin/packages/fluxbox/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fmt/package.py b/var/spack/repos/builtin/packages/fmt/package.py
index 7a8aac6ca5..47ea7e2513 100644
--- a/var/spack/repos/builtin/packages/fmt/package.py
+++ b/var/spack/repos/builtin/packages/fmt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,10 @@ class Fmt(CMakePackage):
It can be used as a safe alternative to printf or as a fast alternative
to C++ IOStreams."""
- homepage = "http://fmtlib.net/latest/index.html"
- url = "https://github.com/fmtlib/fmt/releases/download/7.1.0/fmt-7.1.0.zip"
+ homepage = "https://fmt.dev/"
+ url = "https://github.com/fmtlib/fmt/releases/download/7.1.3/fmt-7.1.3.zip"
+ version('7.1.3', sha256='5d98c504d0205f912e22449ecdea776b78ce0bb096927334f80781e720084c9f')
version('7.1.2', sha256='4d6968ab7c01e95cc76df136755703defb985105a117b83057e4fd5d53680ea7')
version('7.1.0', sha256='308af4e36ee3ab527b51014a2a5d862682c84f5d16f7a597aea34c84853cbcb0')
version('6.1.2', sha256='63650f3c39a96371f5810c4e41d6f9b0bb10305064e6faf201cbafe297ea30e8')
diff --git a/var/spack/repos/builtin/packages/foam-extend/package.py b/var/spack/repos/builtin/packages/foam-extend/package.py
index 912426a09f..e8ba4e4700 100644
--- a/var/spack/repos/builtin/packages/foam-extend/package.py
+++ b/var/spack/repos/builtin/packages/foam-extend/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/folly/package.py b/var/spack/repos/builtin/packages/folly/package.py
index c61b82024f..86e8d54332 100644
--- a/var/spack/repos/builtin/packages/folly/package.py
+++ b/var/spack/repos/builtin/packages/folly/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/font-util/package.py b/var/spack/repos/builtin/packages/font-util/package.py
index 647b0b417b..07b18b1f76 100644
--- a/var/spack/repos/builtin/packages/font-util/package.py
+++ b/var/spack/repos/builtin/packages/font-util/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,7 @@ class FontUtil(AutotoolsPackage, XorgPackage):
depends_on('mkfontdir', type='build')
font_baseurl = 'https://www.x.org/archive/individual/font/'
+ default_fonts = []
fonts = []
# name, version, sha256
fonts_resource = [
@@ -70,12 +71,19 @@ class FontUtil(AutotoolsPackage, XorgPackage):
f = f_r[0]
resource(name=f, url=font_baseurl + f + '-' + f_r[1] + '.tar.gz',
sha256=f_r[2], destination=f, when='fonts=' + f)
+
+ conflicts('fonts=font-bh-ttf', when='platform=cray')
+ conflicts('fonts=font-bh-ttf', when='arch=linux-rhel7-broadwell')
+
+ if f != 'font-bh-ttf':
+ default_fonts.append(f)
+
fonts.append(f)
variant('fonts',
description='Installs fonts',
values=fonts,
- default=','.join(fonts),
+ default=','.join(default_fonts),
multi=True)
def setup_build_environment(self, env):
diff --git a/var/spack/repos/builtin/packages/fontcacheproto/package.py b/var/spack/repos/builtin/packages/fontcacheproto/package.py
index 8397bba192..cde060b19a 100644
--- a/var/spack/repos/builtin/packages/fontcacheproto/package.py
+++ b/var/spack/repos/builtin/packages/fontcacheproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fontconfig/package.py b/var/spack/repos/builtin/packages/fontconfig/package.py
index 41324399d6..7012dce256 100644
--- a/var/spack/repos/builtin/packages/fontconfig/package.py
+++ b/var/spack/repos/builtin/packages/fontconfig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class Fontconfig(AutotoolsPackage):
homepage = "http://www.freedesktop.org/wiki/Software/fontconfig/"
url = "http://www.freedesktop.org/software/fontconfig/release/fontconfig-2.12.3.tar.gz"
+ version('2.13.93', sha256='0f302a18ee52dde0793fe38b266bf269dfe6e0c0ae140e30d72c6cca5dc08db5')
version('2.13.1', sha256='9f0d852b39d75fc655f9f53850eb32555394f36104a044bb2b2fc9e66dbbfa7f')
version('2.12.3', sha256='ffc3cbf6dd9fcd516ee42f48306a715e66698b238933d6fa7cef02ea8b3b818e')
version('2.12.1', sha256='a9f42d03949f948a3a4f762287dbc16e53a927c91a07ee64207ebd90a9e5e292')
@@ -21,7 +22,13 @@ class Fontconfig(AutotoolsPackage):
depends_on('libxml2')
depends_on('pkgconfig', type='build')
depends_on('font-util')
- depends_on('libuuid', when='@2.13.1:')
+ depends_on('uuid', when='@2.13.1:')
+
+ # Resolve known issue with tarballs 2.12.3 - 2.13.0 plus
+ # https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/10
+ @run_before('configure')
+ def _rm_offending_header(self):
+ force_remove(join_path('src', 'fcobjshash.h'))
def configure_args(self):
font_path = join_path(self.spec['font-util'].prefix, 'share', 'fonts')
diff --git a/var/spack/repos/builtin/packages/fontsproto/package.py b/var/spack/repos/builtin/packages/fontsproto/package.py
index b91524d548..0ed73a0f71 100644
--- a/var/spack/repos/builtin/packages/fontsproto/package.py
+++ b/var/spack/repos/builtin/packages/fontsproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fonttosfnt/package.py b/var/spack/repos/builtin/packages/fonttosfnt/package.py
index 5294686a4b..7fa4820978 100644
--- a/var/spack/repos/builtin/packages/fonttosfnt/package.py
+++ b/var/spack/repos/builtin/packages/fonttosfnt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,6 @@ class Fonttosfnt(AutotoolsPackage, XorgPackage):
depends_on('freetype')
depends_on('libfontenc')
- depends_on('xproto', type='build')
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/form/package.py b/var/spack/repos/builtin/packages/form/package.py
index b6e866fe70..26feb6d636 100644
--- a/var/spack/repos/builtin/packages/form/package.py
+++ b/var/spack/repos/builtin/packages/form/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Form(AutotoolsPackage):
url = "https://github.com/vermaseren/form/archive/v4.2.1.tar.gz"
version('4.2.1', sha256='6f32c7470d00e8ab6934dc352f5a78e29290146a00e5775f8cd5fef7810bbbb8')
+ version('4.1-20131025', sha256='caece2c6e605ccf32eb3612c4ed5c9257a7a62824ad219c5e46b6d00066f1ba6')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
diff --git a/var/spack/repos/builtin/packages/fortran/package.py b/var/spack/repos/builtin/packages/fortran/package.py
index 6383ff856b..c9281e15c2 100644
--- a/var/spack/repos/builtin/packages/fortran/package.py
+++ b/var/spack/repos/builtin/packages/fortran/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fortrilinos/package.py b/var/spack/repos/builtin/packages/fortrilinos/package.py
index 2039311145..e693a2cbc0 100644
--- a/var/spack/repos/builtin/packages/fortrilinos/package.py
+++ b/var/spack/repos/builtin/packages/fortrilinos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,21 +24,33 @@ class Fortrilinos(CMakePackage):
"""
homepage = "https://trilinos.github.io/ForTrilinos/"
- url = "https://github.com/trilinos/ForTrilinos/archive/v2.0.0-dev1.tar.gz"
+ url = "https://github.com/trilinos/ForTrilinos/archive/v2.0.0.tar.gz"
git = "https://github.com/trilinos/ForTrilinos.git"
maintainers = ['sethrj', 'aprokop']
- version('2.0.0-dev2', sha256='2a55c668b3fe986583658d272eab2dc076b291a5f2eb582a02602db86a32030b')
- version('2.0.0-dev1', sha256='ab664ce2d7fe75c524d7ff6b1efffa3e459ab5739a916e6ea810ae40f39ca4f4')
+ version('2.0.0', sha256='9af3b3eea9934e44d74654a5fa822de08bd0efa43e06e4a4e35a777781f542d6')
+ # Note: spack version comparison implies Version('2.0.0') <
+ # Version('2.0.0-dev1'), so this is the best workaround I could find.
+ version('2.0.dev3',
+ sha256='c20a34b374a56b050bc1db0be1d3db63fca3e59c5803af0cb851b044ac84e6b3',
+ url="https://github.com/trilinos/ForTrilinos/archive/v2.0.0-dev3.tar.gz")
+ version('2.0.dev2',
+ sha256='2a55c668b3fe986583658d272eab2dc076b291a5f2eb582a02602db86a32030b',
+ url="https://github.com/trilinos/ForTrilinos/archive/v2.0.0-dev2.tar.gz")
+ version('2.0.dev1',
+ sha256='ab664ce2d7fe75c524d7ff6b1efffa3e459ab5739a916e6ea810ae40f39ca4f4',
+ url="https://github.com/trilinos/ForTrilinos/archive/v2.0.0-dev1.tar.gz")
version('master', branch='master')
variant('hl', default=True, description='Build high-level Trilinos wrappers')
variant('shared', default=True, description='Build shared libraries')
# Trilinos version dependencies
- depends_on('trilinos@12.18.1', when='@2.0.0-dev2')
- depends_on('trilinos@12.17.1', when='@2.0.0-dev1')
+ depends_on('trilinos@13.0.0:', when='@2.0.0:')
+ depends_on('trilinos@12.18.1', when='@2.0.dev3')
+ depends_on('trilinos@12.18.1', when='@2.0.dev2')
+ depends_on('trilinos@12.17.1', when='@2.0.dev1')
# Baseline trilinos dependencies
depends_on('trilinos+teuchos gotype=long_long')
diff --git a/var/spack/repos/builtin/packages/foundationdb/package.py b/var/spack/repos/builtin/packages/foundationdb/package.py
index 507f83ba4c..3d4d4cd86a 100644
--- a/var/spack/repos/builtin/packages/foundationdb/package.py
+++ b/var/spack/repos/builtin/packages/foundationdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fox/package.py b/var/spack/repos/builtin/packages/fox/package.py
index 28e6e9b7b3..6eebce0271 100644
--- a/var/spack/repos/builtin/packages/fox/package.py
+++ b/var/spack/repos/builtin/packages/fox/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,6 +37,7 @@ class Fox(AutotoolsPackage):
depends_on('libxi')
depends_on('libxrandr')
depends_on('gl', when='+opengl')
+ depends_on('glu', when='+opengl', type='link')
def configure_args(self):
# Make the png link flags explicit or it will try to pick up libpng15
diff --git a/var/spack/repos/builtin/packages/fp16/package.py b/var/spack/repos/builtin/packages/fp16/package.py
index 7ce6c7742d..168ce71331 100644
--- a/var/spack/repos/builtin/packages/fp16/package.py
+++ b/var/spack/repos/builtin/packages/fp16/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fpc/package.py b/var/spack/repos/builtin/packages/fpc/package.py
index 5e1be34992..872fe5ab63 100644
--- a/var/spack/repos/builtin/packages/fpc/package.py
+++ b/var/spack/repos/builtin/packages/fpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fping/package.py b/var/spack/repos/builtin/packages/fping/package.py
index 59c2127dad..cf097b13a2 100644
--- a/var/spack/repos/builtin/packages/fping/package.py
+++ b/var/spack/repos/builtin/packages/fping/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fplll/package.py b/var/spack/repos/builtin/packages/fplll/package.py
new file mode 100644
index 0000000000..ed9a3dcec0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fplll/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Fplll(AutotoolsPackage):
+ """fplll contains implementations of several lattice algorithms.
+ The implementation relies on floating-point orthogonalization,
+ and LLL is central to the code, hence the name."""
+
+ homepage = "https://github.com/fplll/fplll"
+ url = "https://github.com/fplll/fplll/releases/download/5.4.0/fplll-5.4.0.tar.gz"
+
+ version('5.4.0', sha256='fe192a65a56439b098e26e3b7ee224dda7c2c73a58f36ef2cc6f9185ae8c482b')
+ version('5.3.3', sha256='5e7c46c30623795feeac19cf607583b7c82b0490ceb91498f0f712789be20ccd')
+ version('5.3.2', sha256='4d935d712d11902c60a2a5cb50b696391f4ca4a2de59b0daeca74c29024c21fe')
+ version('5.3.1', sha256='bf7e7e667173b5655cb989ec6a55c07af057d9011572f85eb53fbf93f4e2d239')
+ version('5.3.0', sha256='67a579842f5dabf9b3968b0c12af1ee808c5bfb7bc611fe4c2bba9ca00af1067')
+ version('5.2.1', sha256='e38e3f8f14d5dbf46aab66d6c12f5973d4b12b72832161ed1491e8e925de4816')
+ version('5.2.0', sha256='75e17fcaa4fc5fdddbe6eb42aca5f38c4c169a4b52756e74fbe2d1769737ac9c')
+ version('5.1.0', sha256='58175c54cc92752576a64361c73e4ea7797fc18fb703b3f22c7570a09075486f')
+ version('5.0.3', sha256='d2b11b7dcb26c30ac1aab9ff75aca9b3dd6e0b0b40c382af16017a717dfe05c2')
+
+ depends_on('gmp')
+ depends_on('mpfr')
+
+ def configure_args(self):
+ args = ['--with-gmp=' + self.spec['gmp'].prefix,
+ '--with-mpfr=' + self.spec['mpfr'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/fpocket/package.py b/var/spack/repos/builtin/packages/fpocket/package.py
index 029e150db9..f8101742bf 100644
--- a/var/spack/repos/builtin/packages/fpocket/package.py
+++ b/var/spack/repos/builtin/packages/fpocket/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fqtrim/package.py b/var/spack/repos/builtin/packages/fqtrim/package.py
index b9dfd16360..63db979103 100644
--- a/var/spack/repos/builtin/packages/fqtrim/package.py
+++ b/var/spack/repos/builtin/packages/fqtrim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fr-hit/package.py b/var/spack/repos/builtin/packages/fr-hit/package.py
index e3547a3111..1a76075776 100644
--- a/var/spack/repos/builtin/packages/fr-hit/package.py
+++ b/var/spack/repos/builtin/packages/fr-hit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fraggenescan/package.py b/var/spack/repos/builtin/packages/fraggenescan/package.py
index 8c71b9bfee..70bcd32e72 100644
--- a/var/spack/repos/builtin/packages/fraggenescan/package.py
+++ b/var/spack/repos/builtin/packages/fraggenescan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/freebayes/package.py b/var/spack/repos/builtin/packages/freebayes/package.py
index 338ca3c26c..0f35c5609e 100644
--- a/var/spack/repos/builtin/packages/freebayes/package.py
+++ b/var/spack/repos/builtin/packages/freebayes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/freeglut/package.py b/var/spack/repos/builtin/packages/freeglut/package.py
index b28808f957..aa6d8509d6 100644
--- a/var/spack/repos/builtin/packages/freeglut/package.py
+++ b/var/spack/repos/builtin/packages/freeglut/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,13 +12,29 @@ class Freeglut(CMakePackage, SourceforgePackage):
homepage = "http://freeglut.sourceforge.net/"
sourceforge_mirror_path = "freeglut/freeglut-3.2.1.tar.gz"
+
version('3.2.1', sha256='d4000e02102acaf259998c870e25214739d1f16f67f99cb35e4f46841399da68')
version('3.0.0', sha256='2a43be8515b01ea82bcfa17d29ae0d40bd128342f0930cd1f375f1ff999f76a2')
- patch('common-gcc10.patch', when="@3.2.1: %gcc@10.0:")
+
+ depends_on('pkgconfig', type='build')
depends_on('gl')
depends_on('glu')
depends_on('libx11')
depends_on('libxrandr')
depends_on('libxi')
+ depends_on('libxxf86vm')
depends_on('xrandr')
depends_on('inputproto')
+
+ patch('common-gcc10.patch', when="@3.2.1: %gcc@10.0:")
+
+ def cmake_args(self):
+ return [
+ '-DFREEGLUT_BUILD_DEMOS=OFF',
+ '-DOPENGL_gl_LIBRARY=' + self.spec['gl'].libs[0],
+ '-DOPENGL_glu_LIBRARY=' + self.spec['glu'].libs[0],
+ '-DX11_X11_LIB=' + self.spec['libx11'].libs[0],
+ '-DX11_Xrandr_LIB=' + self.spec['libxrandr'].libs[0],
+ '-DX11_Xi_LIB=' + self.spec['libxi'].libs[0],
+ '-DX11_Xxf86vm_LIB=' + self.spec['libxxf86vm'].libs[0],
+ ]
diff --git a/var/spack/repos/builtin/packages/freeimage/package.py b/var/spack/repos/builtin/packages/freeimage/package.py
index 0243d39b2d..725c7565eb 100644
--- a/var/spack/repos/builtin/packages/freeimage/package.py
+++ b/var/spack/repos/builtin/packages/freeimage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/freeipmi/package.py b/var/spack/repos/builtin/packages/freeipmi/package.py
index bcb3e502cd..4ec41832e9 100644
--- a/var/spack/repos/builtin/packages/freeipmi/package.py
+++ b/var/spack/repos/builtin/packages/freeipmi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -35,6 +35,8 @@ class Freeipmi(AutotoolsPackage):
tty.warn("Requires 'root' for bmc-watchdog.service installation to"
" /lib/systemd/system/ !")
- args = ['--prefix={0}'.format(prefix)]
+ args = ['--prefix={0}'.format(prefix),
+ "--with-systemdsystemunitdir=" +
+ self.spec['freeipmi'].prefix.lib.systemd.system]
return args
diff --git a/var/spack/repos/builtin/packages/freetype/package.py b/var/spack/repos/builtin/packages/freetype/package.py
index 04389118cc..22bec59b65 100644
--- a/var/spack/repos/builtin/packages/freetype/package.py
+++ b/var/spack/repos/builtin/packages/freetype/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Freetype(AutotoolsPackage):
homepage = "https://www.freetype.org/index.html"
url = "https://download.savannah.gnu.org/releases/freetype/freetype-2.10.1.tar.gz"
+ version('2.10.4', sha256='5eab795ebb23ac77001cfb68b7d4d50b5d6c7469247b0b01b2c953269f658dac')
version('2.10.1', sha256='3a60d391fd579440561bf0e7f31af2222bc610ad6ce4d9d7bd2165bca8669110')
version('2.10.0', sha256='955e17244e9b38adb0c98df66abb50467312e6bb70eac07e49ce6bd1a20e809a')
version('2.9.1', sha256='ec391504e55498adceb30baceebd147a6e963f636eb617424bcfc47a169898ce')
diff --git a/var/spack/repos/builtin/packages/freexl/package.py b/var/spack/repos/builtin/packages/freexl/package.py
index 20348e5581..3afd530c2b 100644
--- a/var/spack/repos/builtin/packages/freexl/package.py
+++ b/var/spack/repos/builtin/packages/freexl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fribidi/package.py b/var/spack/repos/builtin/packages/fribidi/package.py
index d356e465c3..e6486b7353 100644
--- a/var/spack/repos/builtin/packages/fribidi/package.py
+++ b/var/spack/repos/builtin/packages/fribidi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/frontier-client/frontier-client.patch b/var/spack/repos/builtin/packages/frontier-client/frontier-client.patch
new file mode 100644
index 0000000000..cf9888ed08
--- /dev/null
+++ b/var/spack/repos/builtin/packages/frontier-client/frontier-client.patch
@@ -0,0 +1,13 @@
+--- client/frontier_config.c 2020-07-28 09:20:59.456311478 +0200
++++ client/frontier_config.c 2020-07-28 09:26:49.147996572 +0200
+@@ -47,8 +47,8 @@
+
+ #define ENV_BUF_SIZE 1024
+
+-void *(*frontier_mem_alloc)(size_t size);
+-void (*frontier_mem_free)(void *ptr);
++extern void *(*frontier_mem_alloc)(size_t size);
++extern void (*frontier_mem_free)(void *ptr);
+
+ int frontier_pacparser_init(void);
+
diff --git a/var/spack/repos/builtin/packages/frontier-client/package.py b/var/spack/repos/builtin/packages/frontier-client/package.py
new file mode 100644
index 0000000000..283d176822
--- /dev/null
+++ b/var/spack/repos/builtin/packages/frontier-client/package.py
@@ -0,0 +1,38 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class FrontierClient(MakefilePackage):
+ """The Frontier distributed database caching system distributes data from
+ data sources to many client systems around the world. The name comes
+ from "N Tier" where N is any number and tiers are layers of locations
+ of distribution."""
+
+ homepage = "http://frontier.cern.ch/"
+ url = "https://github.com/fermitools/frontier/archive/v2_9_1.tar.gz"
+
+ version('2_9_1', sha256='d21370fbe142807966e3c2218ce361ea3bb573498e1b8387b801fb6641c3ed22')
+ version('2_9_0', sha256='e58dba3f177c5b74609f244101a22a5c14d42bf019013fe2dba72c09f819c62a')
+ version('2_8_21', sha256='7df9ba61c3e1778aca75c5da6e45ee4d00b5c061d3f7162208e2fbd2ec266a9e')
+ version('2_8_20', sha256='81b0f45762d96a33f156e0238631a60eef910a176644e95c6c19a36824bef7e1')
+
+ depends_on('pacparser')
+ depends_on('expat')
+
+ patch('frontier-client.patch', level=0)
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('client/Makefile')
+ makefile.filter('EXPAT_DIR}/lib', 'EXPAT_DIR}/lib64')
+
+ def build(self, spec, prefix):
+ with working_dir('client'):
+ make('-j1', 'dist', 'PACPARSER_DIR=' + self.spec['pacparser'].prefix,
+ 'EXPAT_DIR=' + self.spec['expat'].prefix)
+
+ def install(self, spec, prefix):
+ install_tree(join_path('client', 'dist'), prefix)
diff --git a/var/spack/repos/builtin/packages/frontistr/package.py b/var/spack/repos/builtin/packages/frontistr/package.py
index e59da46324..7dd5ea4925 100644
--- a/var/spack/repos/builtin/packages/frontistr/package.py
+++ b/var/spack/repos/builtin/packages/frontistr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Frontistr(CMakePackage):
git = "https://gitlab.com/FrontISTR-Commons/FrontISTR.git"
maintainers = ['hiroshi.okuda', 'kgoto', 'morita', 'inagaki', 'michioga']
+ version('5.1.1', tag='v5.1.1')
version('5.1', tag='v5.1')
version('5.0', tag='v5.0')
version('master', tag='master')
@@ -31,7 +32,7 @@ class Frontistr(CMakePackage):
# depends_on('revocap-coupler')
depends_on('metis')
depends_on('mumps')
- depends_on('trilinos')
+ depends_on('trilinos@:12.18.1')
def cmake_args(self):
define = CMakePackage.define
diff --git a/var/spack/repos/builtin/packages/fseq/package.py b/var/spack/repos/builtin/packages/fseq/package.py
index 8bbd4f176f..d5aad7fe62 100644
--- a/var/spack/repos/builtin/packages/fseq/package.py
+++ b/var/spack/repos/builtin/packages/fseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fsl/build_log.patch b/var/spack/repos/builtin/packages/fsl/build_log.patch
new file mode 100644
index 0000000000..c0553b4c35
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fsl/build_log.patch
@@ -0,0 +1,11 @@
+--- a/build 2020-06-29 10:30:36.000000000 -0500
++++ b/build 2020-11-02 12:34:25.408157699 -0600
+@@ -158,7 +158,7 @@
+ fi #full build
+
+ echo "Building projects - see build.log file for progress..."
+-./config/common/buildproj $PROJECTS > ./build.log 2>&1
++./config/common/buildproj $PROJECTS
+ finalStatus=$?
+ if [ $finalStatus -eq 0 ]; then
+ echo "Build completed successfully.";
diff --git a/var/spack/repos/builtin/packages/fsl/eddy_Makefile.patch b/var/spack/repos/builtin/packages/fsl/eddy_Makefile.patch
new file mode 100644
index 0000000000..22057bf8fd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fsl/eddy_Makefile.patch
@@ -0,0 +1,11 @@
+--- a/src/eddy/Makefile 2020-07-22 09:11:14.000000000 -0500
++++ b/src/eddy/Makefile 2020-11-10 23:31:09.898903635 -0600
+@@ -46,7 +46,7 @@
+
+ CUDACXXFLAGS=-DCOMPILE_GPU
+ CUDAOBJS=CBFKernelDefinitions.o CBFSparseDiagonalMatrix.o CBFSplineField.o LSResampler_cuda.o DiffusionGP_cuda.o PostEddyCF_cuda.o EddyGpuUtils.o EddyInternalGpuUtils.o CudaVolume.o EddyMatrixKernels.o EddyKernels.o GpuPredictorChunk.o StackResampler.o DerivativeCalculator.o
+- CUDALDFLAGS= -Xlinker -rpath $(LIB_CUDA) -L$(LIB_CUDA) -lcublas -lcudart
++ CUDALDFLAGS= -Xlinker -rpath -Xlinker $(LIB_CUDA) -L$(LIB_CUDA) -lcublas -lcudart
+ ifeq ($(fastbuild),1)
+ GENCODE_FLAGS := -gencode arch=compute_30,code=sm_30
+ endif
diff --git a/var/spack/repos/builtin/packages/fsl/fsl_sub_v5.patch b/var/spack/repos/builtin/packages/fsl/fsl_sub_v5.patch
new file mode 100644
index 0000000000..561800962a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fsl/fsl_sub_v5.patch
@@ -0,0 +1,66 @@
+--- a/src/sgeutils/fsl_sub 2017-04-24 05:19:14.000000000 -0500
++++ b/src/sgeutils/fsl_sub 2020-11-15 17:42:28.100657607 -0600
+@@ -80,7 +80,7 @@
+ # "NONE". Note that a user can unset SGE_ROOT if they don't want the
+ # cluster to be used.
+ ###########################################################################
+-METHOD=SGE
++METHOD=NONE
+ unset module
+ if [ "x$SGE_ROOT" = "x" ] ; then
+ METHOD=NONE
+@@ -141,7 +141,9 @@
+
+ usage ()
+ {
+- cat <<EOF
++ case $METHOD in
++ SGE)
++ cat <<EOF
+
+ $command V1.1 - wrapper for job control system such as SGE
+
+@@ -186,7 +188,23 @@
+ bigmem.q: This queue is like the verylong.q but has no memory limits.
+
+ EOF
++ ;;
++ NONE)
++ cat <<EOF
+
++$command V1.1 - wrapper for job control system such as SGE
++
++Usage: $command [options] <command>
++
++$command gzip *.img *.hdr
++
++ -t <filename> Specify a task file of commands to execute in parallel
++ -l <logdirname> Where to output logfiles
++ -v Verbose mode.
++
++EOF
++ ;;
++ esac
+ exit 1
+ }
+
+@@ -195,8 +213,17 @@
+ usage
+ fi
+
+-set -- `getopt T:q:a:p:M:j:t:z:N:R:Fvm:l:s: $*`
+-result=$?
++case $METHOD in
++ SGE)
++ set -- `getopt T:q:a:p:M:j:t:z:N:R:Fvm:l:s: $*`
++ result=$?
++ ;;
++ NONE)
++ set -- `getopt t:vl: $*`
++ result=$?
++ ;;
++esac
++
+ if [ $result != 0 ] ; then
+ echo "What? Your arguments make no sense!"
+ fi
diff --git a/var/spack/repos/builtin/packages/fsl/fsl_sub_v6.patch b/var/spack/repos/builtin/packages/fsl/fsl_sub_v6.patch
new file mode 100644
index 0000000000..e209ba9282
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fsl/fsl_sub_v6.patch
@@ -0,0 +1,86 @@
+--- a/src/sgeutils/fsl_sub 2020-07-25 09:36:17.000000000 -0500
++++ b/src/sgeutils/fsl_sub 2020-11-15 17:04:41.484972803 -0600
+@@ -81,7 +81,7 @@
+ # "NONE". Note that a user can unset SGE_ROOT if they don't want the
+ # cluster to be used.
+ ###########################################################################
+-METHOD=SGE
++METHOD=NONE
+ unset module
+ if [[ "x$SGE_ROOT" = "x" ]] ; then
+ METHOD=NONE
+@@ -145,7 +145,10 @@
+
+ usage ()
+ {
+- cat <<EOF
++ case "$METHOD" in
++ SGE)
++
++ cat <<EOF
+
+ $command V1.1 - wrapper for job control system such as SGE
+
+@@ -190,7 +193,24 @@
+ bigmem.q: This queue is like the verylong.q but has no memory limits.
+
+ EOF
++ ;;
++ NONE)
++
++ cat <<EOF
+
++$command V1.1 - wrapper for job control system such as SGE
++
++Usage: $command [options] <command>
++
++$command gzip *.img *.hdr
++
++ -t <filename> Specify a task file of commands to execute in parallel
++ -l <logdirname> Where to output logfiles
++ -v Verbose mode.
++
++EOF
++ ;;
++ esac
+ exit 1
+ }
+
+@@ -199,14 +219,29 @@
+ usage
+ fi
+
+-#if the newer whitespace-safe getopt format is available, use it
+-if [[ $(getopt -T >/dev/null 2>&1; echo $?) == 4 ]]; then
+- eval set -- $(getopt -s bash T:q:a:p:M:j:t:z:N:R:Fvm:l:s: "$@")
+- result=$?
+-else
+- set -- $(getopt T:q:a:p:M:j:t:z:N:R:Fvm:l:s: "$@")
+- result=$?
+-fi
++case "$METHOD" in
++ SGE)
++ #if the newer whitespace-safe getopt format is available, use it
++ if [[ $(getopt -T >/dev/null 2>&1; echo $?) == 4 ]]; then
++ eval set -- $(getopt -s bash T:q:a:p:M:j:t:z:N:R:Fvm:l:s: "$@")
++ result=$?
++ else
++ set -- $(getopt T:q:a:p:M:j:t:z:N:R:Fvm:l:s: "$@")
++ result=$?
++ fi
++ ;;
++ NONE)
++ #if the newer whitespace-safe getopt format is available, use it
++ if [[ $(getopt -T >/dev/null 2>&1; echo $?) == 4 ]]; then
++ eval set -- $(getopt -s bash t:vl: "$@")
++ result=$?
++ else
++ set -- $(getopt t:vl: "$@")
++ result=$?
++ fi
++ ;;
++esac
++
+ if [[ "$result" != 0 ]] ; then
+ echo "What? Your arguments make no sense!"
+ fi
diff --git a/var/spack/repos/builtin/packages/fsl/fslpython_install_v5.patch b/var/spack/repos/builtin/packages/fsl/fslpython_install_v5.patch
new file mode 100644
index 0000000000..7e22534251
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fsl/fslpython_install_v5.patch
@@ -0,0 +1,18 @@
+--- a/etc/fslconf/fslpython_install.sh 2017-04-07 10:29:52.000000000 -0500
++++ b/etc/fslconf/fslpython_install.sh 2020-11-12 13:34:06.665816528 -0600
+@@ -129,7 +129,7 @@
+ exit 2
+ fi
+
+-curl_opts='--fail' # Returns 22 on error
++curl_opts='--fail -L' # Returns 22 on error
+ if [ ${quiet} -eq 1 ]; then
+ curl_opts="${curl_opts} -s"
+ fi
+@@ -184,4 +184,4 @@
+ # binary into $FSLDIR/bin/
+ ln -sf "${fslpython_env_dir}/bin/python" "${fsl_dir}/bin/fslpython"
+ rm "${miniconda_install_log}"
+-drop_sudo rmdir "${miniconda_tmp}"
+\ No newline at end of file
++drop_sudo rmdir "${miniconda_tmp}"
diff --git a/var/spack/repos/builtin/packages/fsl/fslpython_install_v6.patch b/var/spack/repos/builtin/packages/fsl/fslpython_install_v6.patch
new file mode 100644
index 0000000000..93eac4cb73
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fsl/fslpython_install_v6.patch
@@ -0,0 +1,39 @@
+--- a/etc/fslconf/fslpython_install.sh 2020-07-25 09:20:04.000000000 -0500
++++ b/etc/fslconf/fslpython_install.sh 2020-11-09 20:12:59.458736979 -0600
+@@ -204,19 +204,19 @@
+ # - https://github.com/conda/conda/issues/8804
+
+ # Try to make downloads more resilient
+-"${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set remote_read_timeout_secs 240
+-"${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set remote_connect_timeout_secs 20
+-"${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set remote_max_retries 10
+-"${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set remote_backoff_factor 5
+-"${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set safety_checks warn
++"${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set remote_read_timeout_secs 240
++"${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set remote_connect_timeout_secs 20
++"${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set remote_max_retries 10
++"${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set remote_backoff_factor 5
++"${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set safety_checks warn
+
+ # Channel priority:
+ # - conda-forge (highest priority)
+ # - defaults (gets automatically added on the first call)
+ # - fsl (lowest priority)
+-"${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set channel_priority strict
+-"${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --add channels conda-forge
+-"${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --append channels https://fsl.fmrib.ox.ac.uk/fsldownloads/fslconda/channel
++"${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --set channel_priority strict
++"${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --add channels conda-forge
++"${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda" config --file "${miniconda_root_dir}"/.condarc --append channels https://fsl.fmrib.ox.ac.uk/fsldownloads/fslconda/channel
+
+
+ ##############################
+@@ -229,7 +229,7 @@
+ if [ ${quiet} -ne 1 ]; then
+ echo "Stage 2"
+ fi
+-FSLDIR=$fsl_dir "${miniconda_bin_dir}/conda" env create -v \
++FSLDIR=$fsl_dir "${miniconda_bin_dir}/python" "${miniconda_bin_dir}/conda-env" create -v \
+ -f "${script_dir}/fslpython_environment.yml" \
+ 2>> "${miniconda_install_log}" | \
+ ${script_dir}/progress.sh 133 ${quiet} 1>> "${miniconda_install_log}"
diff --git a/var/spack/repos/builtin/packages/fsl/iconv.patch b/var/spack/repos/builtin/packages/fsl/iconv.patch
new file mode 100644
index 0000000000..d62b0f8a7b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fsl/iconv.patch
@@ -0,0 +1,28 @@
+diff -ru a/src/flameo/Makefile b/src/flameo/Makefile
+--- a/src/flameo/Makefile 2018-10-02 08:46:58.000000000 -0500
++++ b/src/flameo/Makefile 2020-11-07 20:19:56.732547025 -0600
+@@ -6,9 +6,7 @@
+ USRLDFLAGS = -L${LIB_NEWMAT} -L${LIB_PROB} -L${LIB_ZLIB}
+
+ UNAME := $(shell uname)
+-ifeq (${UNAME},Darwin)
+- LIBS = -liconv
+-endif
++LIBS = -liconv
+
+ LIBS += -lutils -lnewimage -lmiscmaths -lm -lnewmat -lNewNifti -lcifti -lxml++-2.6 -lxml2 -lboost_filesystem -lboost_system -lznz -lprob -lz
+
+diff -ru a/src/melodic/Makefile b/src/melodic/Makefile
+--- a/src/melodic/Makefile 2020-03-30 08:51:19.000000000 -0500
++++ b/src/melodic/Makefile 2020-11-07 20:21:45.625518576 -0600
+@@ -11,9 +11,7 @@
+ USRLDFLAGS = -L${LIB_NEWMAT} -L${LIB_PROB} -L${LIB_GD} -L${LIB_GDC} -L${LIB_PNG} -L${LIB_ZLIB}
+
+ UNAME := $(shell uname)
+-ifeq (${UNAME},Darwin)
+- LIBS = -liconv
+-endif
++LIBS = -liconv
+
+ LIBS += -lutils -lnewimage -lmiscplot -lmiscpic -lmiscmaths -lNewNifti -lcifti -lxml++-2.6 -lxml2 -lboost_filesystem -lboost_system -lznz -lnewmat -lprob -lm -lgdc -lgd -lpng -lz
+
diff --git a/var/spack/repos/builtin/packages/fsl/package.py b/var/spack/repos/builtin/packages/fsl/package.py
index 35f4978698..95c54b877d 100644
--- a/var/spack/repos/builtin/packages/fsl/package.py
+++ b/var/spack/repos/builtin/packages/fsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,42 +8,157 @@ from spack.util.environment import EnvironmentModifications
import os
-class Fsl(Package):
+class Fsl(Package, CudaPackage):
"""FSL is a comprehensive library of analysis tools for FMRI, MRI and DTI
- brain imaging data.
+ brain imaging data."""
- Note: A manual download is required for FSL.
- Spack will search your current directory for the download file.
- Alternatively, add this file to a mirror so that Spack can find it.
- For instructions on how to set up a mirror, see
- http://spack.readthedocs.io/en/latest/mirrors.html"""
+ # NOTE: A manual download is required for FSL. Spack will search your
+ # current directory for the download file. Alternatively, add this file to
+ # a mirror so that Spack can find it. For instructions on how to set up a
+ # mirror, see http://spack.readthedocs.io/en/latest/mirrors.html
homepage = "https://fsl.fmrib.ox.ac.uk"
url = "file://{0}/fsl-5.0.10-sources.tar.gz".format(os.getcwd())
manual_download = True
- version('5.0.10', '64823172a08aad679833240ba64c8e30')
+ version('6.0.4', sha256='58b88f38e080b05d70724d57342f58e1baf56e2bd3b98506a72b4446cad5033e')
+ version('5.0.10', sha256='ca183e489320de0e502a7ba63230a7f55098917a519e8c738b005d526e700842')
depends_on('python', type=('build', 'run'))
depends_on('expat')
depends_on('libx11')
depends_on('glu')
- depends_on('zlib')
- depends_on('libpng')
- depends_on('boost')
- depends_on('sqlite')
-
- conflicts('%gcc@6:', when='@5.0.10')
+ depends_on('libiconv')
+ depends_on('openblas', when='@6:')
+ depends_on('vtk@:8')
+
+ conflicts('%gcc@:4.7,5.5:')
+ conflicts('^cuda@9.2:')
+ conflicts('cuda_arch=none', when='+cuda',
+ msg='must select a CUDA architecture')
+ conflicts('platform=darwin',
+ msg='currently only packaged for linux')
+
+ patch('build_log.patch')
+ patch('eddy_Makefile.patch', when='@6:')
+ patch('iconv.patch')
+ patch('fslpython_install_v5.patch', when='@:5')
+ patch('fslpython_install_v6.patch', when='@6:')
+
+ # These patches disable FSL's attempts to try to submit a subset of FSL
+ # computations to an SGE queue system. That auto-submit mechanism only
+ # works for SGE and requires someone to edit the fsl_sub script to
+ # accommodate their system. These patches disable the auto submission
+ # scheme and allow the fsl_sub script to behave the same on all systems,
+ # and without further modification, whether the computation is submitted to
+ # a "local" system, like a workstation, or as a batch job to a cluster
+ # queueing system, regardless of queue system type.
+ patch('fsl_sub_v5.patch', when='@:5')
+ patch('fsl_sub_v6.patch', when='@6:')
def patch(self):
# Uncomment lines in source file to allow building from source
with working_dir(join_path(self.stage.source_path, 'etc', 'fslconf')):
sourced = FileFilter('fsl.sh')
sourced.filter('#FSLCONFDIR', 'FSLCONFDIR')
- sourced.filter('#FSLMACHTYPE', 'FSLMACHTYPE')
- # Fix error in build script
- buildscript = FileFilter('build')
- buildscript.filter('mist-clean', 'mist')
+
+ if self.spec.satisfies('@6:'):
+ sourced.filter('#FSLMACHTYPE', 'FSLMACHTYPE')
+ else:
+ sourced.filter(r'#(FSLMACHTYPE).*', r'\1=linux_64-gcc4.8')
+
+ if self.spec.satisfies('@:5'):
+ with working_dir(join_path(self.stage.source_path, 'config',
+ 'common')):
+ buildproj = FileFilter('buildproj')
+ buildproj.filter(r'(^FSLMACHTYPE).*', r'\1=linux_64-gcc4.8')
+
+ # Capture the settings file
+ if self.spec.satisfies('@6:'):
+ settings_file = join_path(self.stage.source_path, 'config',
+ 'buildSettings.mk')
+ vtk_file = settings_file
+ else:
+ settings_file = join_path(self.stage.source_path, 'config',
+ 'linux_64-gcc4.8', 'systemvars.mk')
+ externals_file = join_path(self.stage.source_path, 'config',
+ 'linux_64-gcc4.8', 'externallibs.mk')
+ vtk_file = externals_file
+
+ build_settings = FileFilter(settings_file)
+ vtk_settings = FileFilter(vtk_file)
+
+ build_settings.filter(r'^CUDAVER', '#CUDAVER')
+ build_settings.filter(r'(^CC)\s*=.*', r'\1 = {0}'.format(spack_cc))
+ build_settings.filter(r'(^CXX)\s*=.*', r'\1 = {0}'.format(spack_cxx))
+ build_settings.filter(r'(^CXX11)\s*=.*', r'\1 = {0}'.format(spack_cxx))
+
+ vtk_suffix = self.spec['vtk'].version.up_to(2)
+ vtk_lib_dir = self.spec['vtk'].prefix.lib64
+ vtk_include_dir = join_path(self.spec['vtk'].prefix.include,
+ 'vtk-{0}'.format(vtk_suffix))
+
+ vtk_settings.filter(r'(^VTKDIR_INC)\s*=.*',
+ r'\1 = {0}'.format(vtk_include_dir))
+ vtk_settings.filter(r'(^VTKDIR_LIB)\s*=.*',
+ r'\1 = {0}'.format(vtk_lib_dir))
+ vtk_settings.filter(r'(^VTKSUFFIX)\s*=.*',
+ r'\1 = -{0}'.format(vtk_suffix))
+
+ if '+cuda' in self.spec:
+ cuda_arch = self.spec.variants['cuda_arch'].value
+ cuda_gencode = ' '.join(self.cuda_flags(cuda_arch))
+ cuda_installation = self.spec['cuda'].prefix
+
+ build_settings.filter(r'(^CUDA_INSTALLATION)\s*=.*',
+ r'\1 = {0}'.format(cuda_installation))
+ build_settings.filter(r'(^LIB_CUDA)\s*=.*',
+ r'\1 = {0}'.format(
+ join_path(
+ cuda_installation,
+ 'lib64')))
+ build_settings.filter(r'(^INC_CUDA)\s*=.*',
+ r'\1 = {0}'.format(
+ join_path(
+ cuda_installation,
+ 'include')))
+ build_settings.filter(r'(^NVCC11)\s*=.*',
+ r'\1 = {0}'.format(
+ join_path(
+ cuda_installation, 'bin',
+ 'nvcc')))
+ build_settings.filter(r'(^NVCC)\s*=.*',
+ r'\1 = {0}'.format(
+ join_path(
+ cuda_installation, 'bin',
+ 'nvcc')))
+ build_settings.filter(r'(^GENCODE_FLAGS)\s*=.*',
+ r'\1 = {0}'.format(cuda_gencode))
+
+ if self.spec.satisfies('@6:'):
+ build_settings.filter(r'(^EDDYBUILDPARAMETERS)\s*=.*',
+ r'\1 = "cuda=1" "cpu=1"')
+ build_settings.filter(r'(^fdt_MASTERBUILD)\s*=.*',
+ r'\1 = COMPILE_GPU=1')
+ build_settings.filter(r'(^ptx2_MASTERBUILD)\s*=.*',
+ r'\1 = COMPILE_GPU=1')
+ else:
+ with open(settings_file, 'a') as f:
+ f.write('COMPILE_GPU=1\n')
+ else:
+ build_settings.filter(r'^CUDA_INSTALLATION', '#CUDA_INSTALLATION')
+ build_settings.filter(r'^GENCODE_FLAGS', '#GENCODE_FLAGS')
+ build_settings.filter(r'^LIB_CUDA', '#LIB_CUDA')
+ build_settings.filter(r'^INC_CUDA', '#INC_CUDA')
+ build_settings.filter(r'^NVCC', '#NVCC')
+
+ if self.spec.satisfies('@6:'):
+ build_settings.filter(r'(^EDDYBUILDPARAMETERS)\s*=.*',
+ r'\1 = "cpu=1"')
+ build_settings.filter(r'(^fdt_MASTERBUILD)\s*=.*',
+ r'\1 = COMPILE_GPU=0')
+ build_settings.filter(r'(^ptx2_MASTERBUILD)\s*=.*',
+ r'\1 = COMPILE_GPU=0')
def install(self, spec, prefix):
build = Executable('./build')
@@ -51,6 +166,20 @@ class Fsl(Package):
install_tree('.', prefix)
+ @run_after('install')
+ def postinstall(self):
+ # The PYTHON related environment variables need to be unset here so
+ # the post install script does not get confused.
+ vars_to_unset = ['PYTHONPATH', 'PYTHONHOME']
+
+ with spack.util.environment.preserve_environment(*vars_to_unset):
+ for v in vars_to_unset:
+ del os.environ[v]
+
+ script = Executable(join_path(prefix, 'etc', 'fslconf',
+ 'post_install.sh'))
+ script('-f', prefix)
+
def setup_build_environment(self, env):
if not self.stage.source_path:
self.stage.fetch()
@@ -66,18 +195,9 @@ class Fsl(Package):
env.extend(EnvironmentModifications.from_sourcing_file(fslsetup))
def setup_run_environment(self, env):
- # Here, run-time environment variables are being set manually.
- # Normally these would be added to the modulefile at build-time
- # by sourcing fsl.sh, but incorrect paths were being set, pointing to
- # the staging directory rather than the install directory.
+ # Set the environment variables after copying tree
env.set('FSLDIR', self.prefix)
- env.set('FSLOUTPUTTYPE', 'NIFTI_GZ')
- env.set('FSLMULTIFILEQUIT', 'TRUE')
- env.set('FSLTCLSH', self.prefix.bin.fsltclsh)
- env.set('FSLWISH', self.prefix.bin.fslwish)
- env.set('FSLLOCKDIR', '')
- env.set('FSLMACHINELIST', '')
- env.set('FSLREMOTECALL', '')
- env.set('FSLGECUDAQ', 'cuda.q')
-
- env.prepend_path('PATH', self.prefix)
+ fslsetup = join_path(self.prefix, 'etc', 'fslconf', 'fsl.sh')
+
+ if os.path.isfile(fslsetup):
+ env.extend(EnvironmentModifications.from_sourcing_file(fslsetup))
diff --git a/var/spack/repos/builtin/packages/fslsfonts/package.py b/var/spack/repos/builtin/packages/fslsfonts/package.py
index f491b2631e..5a261b229e 100644
--- a/var/spack/repos/builtin/packages/fslsfonts/package.py
+++ b/var/spack/repos/builtin/packages/fslsfonts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,6 @@ class Fslsfonts(AutotoolsPackage, XorgPackage):
depends_on('libfs')
- depends_on('xproto@7.0.25:', type='build')
+ depends_on('xproto@7.0.25:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/fstobdf/package.py b/var/spack/repos/builtin/packages/fstobdf/package.py
index ae83adf5ca..62d4d93a70 100644
--- a/var/spack/repos/builtin/packages/fstobdf/package.py
+++ b/var/spack/repos/builtin/packages/fstobdf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,6 @@ class Fstobdf(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libfs')
- depends_on('xproto@7.0.25:', type='build')
+ depends_on('xproto@7.0.25:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/fstrack/package.py b/var/spack/repos/builtin/packages/fstrack/package.py
index d6a0f5e4de..0e76ccf63b 100644
--- a/var/spack/repos/builtin/packages/fstrack/package.py
+++ b/var/spack/repos/builtin/packages/fstrack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ftgl/package.py b/var/spack/repos/builtin/packages/ftgl/package.py
index 174050321b..29d4110ba1 100644
--- a/var/spack/repos/builtin/packages/ftgl/package.py
+++ b/var/spack/repos/builtin/packages/ftgl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ftk/package.py b/var/spack/repos/builtin/packages/ftk/package.py
new file mode 100644
index 0000000000..8d07b010de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ftk/package.py
@@ -0,0 +1,62 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Ftk(CMakePackage):
+ """FTK is a library that simplifies, scales, and delivers feature
+ tracking algorithms for scientific data."""
+
+ # Add a proper url for your package's homepage here.
+ homepage = "https://github.com/hguo/ftk"
+ url = "https://github.com/hguo/ftk/archive/0.0.5.tar.gz"
+ git = "https://github.com/hguo/ftk.git"
+
+ # Add a list of GitHub accounts to
+ # notify when the package is updated.
+ maintainers = ['hguo']
+
+ version('master', branch='master')
+ version('dev', branch='dev')
+ version('0.0.5', sha256='9d5c84a73b7761b9fc7dac62d4296df9f3052b722ec1b06518b2b8f51a8d3440')
+ version('0.0.4', sha256='1674904da8d88dbd4c7d2b6a2629883f0444e70aefc99b48d285735d394897fa')
+
+ # variants
+ variant("adios2", default=False)
+ variant("cuda", default=False)
+ variant("gmp", default=True)
+ variant("hdf5", default=False)
+ variant("mpi", default=False)
+ variant("netcdf", default=False)
+ variant("vtk", default=False)
+
+ # optional dependencies
+ depends_on('adios2', when='+adios2')
+ depends_on('cuda', when='+cuda')
+ depends_on('hdf5', when='+hdf5')
+ depends_on('gmp', when='+gmp')
+ depends_on('mpi', when='+mpi')
+ depends_on('netcdf-c', when='+netcdf')
+ depends_on('vtk', when='+vtk')
+
+ def add_cmake_option(self, args, dependency, option):
+ if dependency in self.spec:
+ args.append('-D' + option + '=ON')
+ else:
+ args.append('-D' + option + '=OFF')
+
+ def cmake_args(self):
+ args = []
+
+ self.add_cmake_option(args, '+adios2', 'FTK_USE_ADIOS2')
+ self.add_cmake_option(args, '+cuda', 'FTK_USE_CUDA')
+ self.add_cmake_option(args, '+gmp', 'FTK_USE_GMP')
+ self.add_cmake_option(args, '+hdf5', 'FTK_USE_HDF5')
+ self.add_cmake_option(args, '+mpi', 'FTK_USE_MPI')
+ self.add_cmake_option(args, '+netcdf', 'FTK_USE_NETCDF')
+ self.add_cmake_option(args, '+vtk', 'FTK_USE_VTK')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/fujitsu-fftw/package.py b/var/spack/repos/builtin/packages/fujitsu-fftw/package.py
new file mode 100644
index 0000000000..258625137e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fujitsu-fftw/package.py
@@ -0,0 +1,113 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+from spack.pkg.builtin.fftw import FftwBase
+from spack.error import SpackError
+
+
+def target_check(spec):
+ if spec.target != "a64fx":
+ error_msg = ("It can only be built on an A64FX machine.\n")
+ raise SpackError(error_msg)
+
+
+class FujitsuFftw(FftwBase):
+ """FFTW (Fujitsu Optimized version) is a comprehensive collection of
+ fast C routines for computing the Discrete Fourier Transform (DFT)
+ and various special cases thereof.
+
+ It is an open-source implementation of the Fast Fourier transform
+ algorithm. It can compute transforms of real and complex-values
+ arrays of arbitrary size and dimension.
+ Fujitsu Optimized FFTW is the optimized FFTW implementation targeted
+ for A64FX CPUs.
+
+ For single precision build, please use precision value as float.
+ Example : spack install fujitsufftw precision=float
+ """
+
+ _name = 'fujitsu-fftw'
+ homepage = "https://github.com/fujitsu/fftw3"
+ url = "https://github.com/fujitsu/fftw3/archive/sve-v1.0.0.tar.gz"
+
+ version('1.0.0', sha256='b5931e352355d8d1ffeb215922f4b96de11b8585c423fceeaffbf3d5436f6f2f')
+
+ variant('shared', default=True, description='Builds a shared version of the library')
+ variant('openmp', default=True, description="Enable OpenMP support")
+ variant('debug', default=False, description='Builds a debug version of the library')
+
+ depends_on('texinfo')
+
+ provides('fftw-api@3', when='@2:')
+
+ conflicts('precision=quad', when='%fj', msg="Fujitsu Compiler doesn't support quad precision")
+ conflicts('precision=long_double', when='%fj', msg="ARM-SVE vector instructions only works in single or double precision")
+ conflicts('%arm')
+ conflicts('%cce')
+ conflicts('%apple-clang')
+ conflicts('%clang')
+ conflicts('%gcc')
+ conflicts('%intel')
+ conflicts('%nag')
+ conflicts('%pgi')
+ conflicts('%xl')
+ conflicts('%xl_r')
+
+ def autoreconf(self, spec, prefix):
+ if spec.target != "a64fx":
+ target_check(spec)
+
+ touch = which('touch')
+ touch('ChangeLog')
+ autoreconf = which('autoreconf')
+ autoreconf('-ifv')
+
+ def configure(self, spec, prefix):
+ """Configure function"""
+ # Base options
+ options = [
+ 'CFLAGS=-Ofast',
+ 'FFLAGS=-Kfast',
+ '--enable-sve',
+ '--enable-armv8-cntvct-el0',
+ '--enable-fma',
+ '--enable-fortran',
+ '--prefix={0}'.format(prefix),
+ 'ac_cv_prog_f77_v=-###'
+ ]
+
+ if '+shared' in spec:
+ options.append('--enable-shared')
+ else:
+ options.append('--disable-shared')
+
+ if '+openmp' in spec:
+ options.append('--enable-openmp')
+ options.append('OPENMP_CFLAGS=-Kopenmp')
+ else:
+ options.append('--disable-openmp')
+
+ if '+mpi' in spec:
+ options.append('--enable-mpi')
+ else:
+ options.append('--disable-mpi')
+
+ # Double is the default precision, for all the others we need
+ # to enable the corresponding option.
+ enable_precision = {
+ 'float': ['--enable-float'],
+ 'double': None,
+ 'long_double': ['--enable-long-double'],
+ 'quad': ['--enable-quad-precision']
+ }
+
+ # Different precisions must be configured and compiled one at a time
+ configure = Executable('../configure')
+ for precision in self.selected_precisions:
+
+ opts = (enable_precision[precision] or []) + options[:]
+ with working_dir(precision, create=True):
+ configure(*opts)
diff --git a/var/spack/repos/builtin/packages/fujitsu-mpi/package.py b/var/spack/repos/builtin/packages/fujitsu-mpi/package.py
index 3a4fa40975..070036257b 100644
--- a/var/spack/repos/builtin/packages/fujitsu-mpi/package.py
+++ b/var/spack/repos/builtin/packages/fujitsu-mpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fujitsu-ssl2/package.py b/var/spack/repos/builtin/packages/fujitsu-ssl2/package.py
index 3d5d8f875f..2a10e1166d 100644
--- a/var/spack/repos/builtin/packages/fujitsu-ssl2/package.py
+++ b/var/spack/repos/builtin/packages/fujitsu-ssl2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -54,7 +54,8 @@ class FujitsuSsl2(Package):
else:
libslist.append("libfjlapack.so")
- libslist.append("libfj90rt2.a")
+ if "+parallel" in spec: # parallel
+ libslist.extend(["libfjomphk.so", "libfjomp.so"])
if spec.target == "a64fx": # Build with SVE support
if "+parallel" in spec: # parallel
@@ -72,7 +73,7 @@ class FujitsuSsl2(Package):
else:
libslist.append("libfj90fmt.a")
- libslist.extend(["libfj90f.a", "libfjsrcinfo.a", "libfj90rt.so"])
+ libslist.extend(["libfj90f.so", "libfjsrcinfo.so", "libfj90rt.so"])
libspath = find(self.prefix.lib64, libslist, recursive=False)
libs = LibraryList(libspath)
@@ -104,9 +105,12 @@ class FujitsuSsl2(Package):
libslist.append("libscalapack.a")
libslist.extend(
- ["libmpi_usempi_ignore_tkr.so", "libmpi_mpifh.so", "libfj90rt2.a"]
+ ["libmpi_usempi_ignore_tkr.so", "libmpi_mpifh.so"]
)
+ if "+parallel" in spec: # parallel
+ libslist.extend(["libfjomphk.so", "libfjomp.so"])
+
if spec.target == "a64fx": # Build with SVE support
if "+parallel" in spec: # parallel
libslist.append("libssl2mtexsve.a")
@@ -123,7 +127,7 @@ class FujitsuSsl2(Package):
else:
libslist.append("libfj90fmt.a")
- libslist.extend(["libfj90f.a", "libfjsrcinfo.a", "libfj90rt.so"])
+ libslist.extend(["libfj90f.so", "libfjsrcinfo.so", "libfj90rt.so"])
libspath = find(self.prefix.lib64, libslist, recursive=False)
libs = LibraryList(libspath)
@@ -133,9 +137,16 @@ class FujitsuSsl2(Package):
def setup_dependent_build_environment(self, env, dependent_spec):
path = self.prefix.include
env.append_flags(
- "fcc_ENV", "-lm -lrt -lpthread -lelf -lz -ldl -idirafter " + path
+ "fcc_ENV", "-idirafter " + path
)
env.append_flags(
- "FCC_ENV", "-lm -lrt -lpthread -lelf -lz -ldl -idirafter " + path
+ "FCC_ENV", "-idirafter " + path
+ )
+
+ @property
+ def headers(self):
+ path = join_path(
+ self.spec.prefix, "clang-comp"
)
- env.append_flags("FORT90C", "-lm -lrt -lpthread -lelf -lz -ldl")
+ headers = find_headers('cssl', path, recursive=True)
+ return headers
diff --git a/var/spack/repos/builtin/packages/fullock/package.py b/var/spack/repos/builtin/packages/fullock/package.py
new file mode 100644
index 0000000000..c4b283db9d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fullock/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Fullock(AutotoolsPackage):
+ """FULLOCK is a lock library provided by Yahoo! JAPAN,
+ that is very fast and runs on user level.This library
+ provides two lock type."""
+
+ homepage = "https://antpick.ax/"
+ url = "https://github.com/yahoojapan/fullock/archive/v1.0.36.tar.gz"
+
+ version('1.0.39', sha256='0089d4446e3102b5de39e3d18c1b7e5c9567deb77a4e60963e15b5c1b23a594d')
+ version('1.0.36', sha256='68d0dc9036c2c1871653b4626a594f57663973c159f083ec68647c60ddc919f7')
+ version('1.0.35', sha256='613462155271bf7b90ce745bafb47d23855e1b4813d3b6caa238efffb7c42841')
+ version('1.0.34', sha256='6f4c901e5b08f5e82365539cb9c0dbab82529175912f6203a82509a583553021')
+ version('1.0.33', sha256='31a292e50553abf71058b47277dbca37d25a772cf99c0f99c85e56dfcd11edb2')
+ version('1.0.32', sha256='57d4ca06e5b88a98745062f55ee5ce37c88a49d59d58d09c5178fa1eee4d8353')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./autogen.sh')
diff --git a/var/spack/repos/builtin/packages/funhpc/package.py b/var/spack/repos/builtin/packages/funhpc/package.py
index 18175119f8..2bf10834dd 100644
--- a/var/spack/repos/builtin/packages/funhpc/package.py
+++ b/var/spack/repos/builtin/packages/funhpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fuse-overlayfs/package.py b/var/spack/repos/builtin/packages/fuse-overlayfs/package.py
index 36b8cba193..81bed7cd1d 100644
--- a/var/spack/repos/builtin/packages/fuse-overlayfs/package.py
+++ b/var/spack/repos/builtin/packages/fuse-overlayfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,10 @@ class FuseOverlayfs(AutotoolsPackage):
homepage = "https://github.com/containers/fuse-overlayfs"
url = "https://github.com/containers/fuse-overlayfs/archive/v1.1.2.tar.gz"
+ version('1.5.0', sha256='6c81b65b71067b303aaa9871f512c2cabc23e2b793f19c6c854d01a492b5a923')
+ version('1.4.0', sha256='7e5666aef4f2047e6a5202d6438b08c2d314dba5b40e431014e7dbb8168d9018')
+ version('1.3.0', sha256='91e78a93aac7698c65083deea04952bc86af6abbb0830785ef1dd4a8707ad8bf')
+ version('1.2.0', sha256='5df218732244059057686194b0e1fef66fb822d4087db48af88e1bc29bb1afde')
version('1.1.2', sha256='1c0fa67f806c44d5c51f4bce02fdcb546137a2688a8de76d93d07b79defc9cac')
version('1.1.1', sha256='9a1c4221a82059fd9686dd8b519d432bae126c08f9d891fb722bcb51ba4933ec')
version('1.1.0', sha256='060168c2d5a8c6cc768b4542eba9953b7ff4a31f94bfb2e05b3d1051390838b1')
diff --git a/var/spack/repos/builtin/packages/fyba/package.py b/var/spack/repos/builtin/packages/fyba/package.py
index 9439140bf0..102e5c8358 100644
--- a/var/spack/repos/builtin/packages/fyba/package.py
+++ b/var/spack/repos/builtin/packages/fyba/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/fzf/package.py b/var/spack/repos/builtin/packages/fzf/package.py
index cee38abad4..cc85cf17f0 100644
--- a/var/spack/repos/builtin/packages/fzf/package.py
+++ b/var/spack/repos/builtin/packages/fzf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/g2o/package.py b/var/spack/repos/builtin/packages/g2o/package.py
new file mode 100644
index 0000000000..496e9620f2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/g2o/package.py
@@ -0,0 +1,44 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class G2o(CMakePackage):
+ """g2o is an open-source C++ framework for optimizing graph-based nonlinear
+ error functions.
+
+ g2o has been designed to be easily extensible to a wide range of problems
+ and a new problem typically can be specified in a few lines of code. The
+ current implementation provides solutions to several variants of SLAM and
+ BA."""
+
+ homepage = "https://openslam-org.github.io/g2o.html"
+ url = "https://github.com/RainerKuemmerle/g2o/archive/20200410_git.tar.gz"
+ git = "https://github.com/RainerKuemmerle/g2o.git"
+
+ version('master', branch='master')
+ version('20200410_git', sha256='b79eb1407ae7f2a9e6a002bb4b41d65402c185855db41a9ef4a6e3b42abaec4c')
+
+ depends_on('cmake@3.1:', type='build')
+ depends_on('eigen@2.91.0:', type='link')
+ depends_on('ceres-solver')
+ depends_on('freeglut')
+ depends_on('suite-sparse')
+ depends_on('qt@5:+gui+opengl')
+ depends_on('libqglviewer')
+
+ def cmake_args(self):
+ return [
+ '-DBUILD_CSPARSE=OFF',
+ '-DCSPARSE_INCLUDE_DIR=' + self.spec[
+ 'suite-sparse:cxsparse'].headers.directories[0],
+ '-DCSPARSE_LIBRARY=' + self.spec['suite-sparse:cxsparse'].libs[0],
+ '-DQGLVIEWER_INCLUDE_DIR=' + self.spec[
+ 'libqglviewer'].prefix.include.QGLViewer
+ ]
+
+ @run_after('install')
+ def darwin_fix(self):
+ if self.spec.satisfies('platform=darwin'):
+ fix_darwin_install_name(self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/g4abla/package.py b/var/spack/repos/builtin/packages/g4abla/package.py
index bed114d825..d74a7d15ed 100644
--- a/var/spack/repos/builtin/packages/g4abla/package.py
+++ b/var/spack/repos/builtin/packages/g4abla/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class G4abla(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4ABLA.3.0.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
diff --git a/var/spack/repos/builtin/packages/g4emlow/package.py b/var/spack/repos/builtin/packages/g4emlow/package.py
index e7b34000cd..5e7496892e 100644
--- a/var/spack/repos/builtin/packages/g4emlow/package.py
+++ b/var/spack/repos/builtin/packages/g4emlow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,12 @@ class G4emlow(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4EMLOW.6.50.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
+ version('7.13', sha256='374896b649be776c6c10fea80abe6cf32f9136df0b6ab7c7236d571d49fb8c69')
version('7.9.1', sha256='820c106e501c64c617df6c9e33a0f0a3822ffad059871930f74b8cc37f043ccb')
version('7.9', sha256='4abf9aa6cda91e4612676ce4d2d8a73b91184533aa66f9aad19a53a8c4dc3aff')
version('7.7', sha256='16dec6adda6477a97424d749688d73e9bd7d0b84d0137a67cf341f1960984663')
diff --git a/var/spack/repos/builtin/packages/g4ensdfstate/package.py b/var/spack/repos/builtin/packages/g4ensdfstate/package.py
index 36bc897f4b..cfbf04e79b 100644
--- a/var/spack/repos/builtin/packages/g4ensdfstate/package.py
+++ b/var/spack/repos/builtin/packages/g4ensdfstate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,12 @@ class G4ensdfstate(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4ENSDFSTATE.2.1.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
+ version('2.3', sha256='9444c5e0820791abd3ccaace105b0e47790fadce286e11149834e79c4a8e9203')
version('2.2', sha256='dd7e27ef62070734a4a709601f5b3bada6641b111eb7069344e4f99a01d6e0a6')
version('2.1', sha256='933e7f99b1c70f24694d12d517dfca36d82f4e95b084c15d86756ace2a2790d9')
diff --git a/var/spack/repos/builtin/packages/g4incl/package.py b/var/spack/repos/builtin/packages/g4incl/package.py
index e21010f411..e5fa43e715 100644
--- a/var/spack/repos/builtin/packages/g4incl/package.py
+++ b/var/spack/repos/builtin/packages/g4incl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class G4incl(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4INCL.1.0.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
@@ -31,4 +33,4 @@ class G4incl(Package):
def url_for_version(self, version):
"""Handle version string."""
- return ("http://geant4-data.web.cern.ch/geant4-data/datasets/G4INCL.%s.tar.gz" % version) \ No newline at end of file
+ return ("http://geant4-data.web.cern.ch/geant4-data/datasets/G4INCL.%s.tar.gz" % version)
diff --git a/var/spack/repos/builtin/packages/g4ndl/package.py b/var/spack/repos/builtin/packages/g4ndl/package.py
index 3eaad0f101..e2ce0bbdac 100644
--- a/var/spack/repos/builtin/packages/g4ndl/package.py
+++ b/var/spack/repos/builtin/packages/g4ndl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class G4ndl(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4NDL.4.5.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
version('4.6', sha256='9d287cf2ae0fb887a2adce801ee74fb9be21b0d166dab49bcbee9408a5145408')
diff --git a/var/spack/repos/builtin/packages/g4neutronxs/package.py b/var/spack/repos/builtin/packages/g4neutronxs/package.py
index 41acc423a6..9d33ce8ff1 100644
--- a/var/spack/repos/builtin/packages/g4neutronxs/package.py
+++ b/var/spack/repos/builtin/packages/g4neutronxs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class G4neutronxs(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4NEUTRONXS.1.4.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
diff --git a/var/spack/repos/builtin/packages/g4particlexs/package.py b/var/spack/repos/builtin/packages/g4particlexs/package.py
index e573025b64..2e42a543f1 100644
--- a/var/spack/repos/builtin/packages/g4particlexs/package.py
+++ b/var/spack/repos/builtin/packages/g4particlexs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,13 @@ class G4particlexs(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4PARTICLEXS.2.1.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
+ version('3.1.1', sha256='66c17edd6cb6967375d0497add84c2201907a25e33db782ebc26051d38f2afda')
+ version('3.1', sha256='404da84ead165e5cccc0bb795222f6270c9bf491ef4a0fd65195128b27f0e9cd')
version('2.1', sha256='094d103372bbf8780d63a11632397e72d1191dc5027f9adabaf6a43025520b41')
version('1.1', sha256='100a11c9ed961152acfadcc9b583a9f649dda4e48ab314fcd4f333412ade9d62')
@@ -32,4 +36,4 @@ class G4particlexs(Package):
def url_for_version(self, version):
"""Handle version string."""
- return ("http://geant4-data.web.cern.ch/geant4-data/datasets/G4PARTICLEXS.%s.tar.gz" % version) \ No newline at end of file
+ return ("http://geant4-data.web.cern.ch/geant4-data/datasets/G4PARTICLEXS.%s.tar.gz" % version)
diff --git a/var/spack/repos/builtin/packages/g4photonevaporation/package.py b/var/spack/repos/builtin/packages/g4photonevaporation/package.py
index 93d7f82de4..a79d111824 100644
--- a/var/spack/repos/builtin/packages/g4photonevaporation/package.py
+++ b/var/spack/repos/builtin/packages/g4photonevaporation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,12 @@ class G4photonevaporation(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4PhotonEvaporation.4.3.2.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
+ version('5.7', sha256='761e42e56ffdde3d9839f9f9d8102607c6b4c0329151ee518206f4ee9e77e7e5')
version('5.5', sha256='5995dda126c18bd7f68861efde87b4af438c329ecbe849572031ceed8f5e76d7')
version('5.3', sha256='d47ababc8cbe548065ef644e9bd88266869e75e2f9e577ebc36bc55bf7a92ec8')
version('5.2', sha256='83607f8d36827b2a7fca19c9c336caffbebf61a359d0ef7cee44a8bcf3fc2d1f')
diff --git a/var/spack/repos/builtin/packages/g4pii/package.py b/var/spack/repos/builtin/packages/g4pii/package.py
index ea91b5b9c9..dafd750018 100644
--- a/var/spack/repos/builtin/packages/g4pii/package.py
+++ b/var/spack/repos/builtin/packages/g4pii/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class G4pii(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4PII.1.3.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
diff --git a/var/spack/repos/builtin/packages/g4radioactivedecay/package.py b/var/spack/repos/builtin/packages/g4radioactivedecay/package.py
index 6f34e89cea..2e1ea3ad34 100644
--- a/var/spack/repos/builtin/packages/g4radioactivedecay/package.py
+++ b/var/spack/repos/builtin/packages/g4radioactivedecay/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,12 @@ class G4radioactivedecay(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4RadioactiveDecay.5.1.1.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
+ version('5.6', sha256='3886077c9c8e5a98783e6718e1c32567899eeb2dbb33e402d4476bc2fe4f0df1')
version('5.4', sha256='240779da7d13f5bf0db250f472298c3804513e8aca6cae301db97f5ccdcc4a61')
version('5.3', sha256='5c8992ac57ae56e66b064d3f5cdfe7c2fee76567520ad34a625bfb187119f8c1')
version('5.2', sha256='99c038d89d70281316be15c3c98a66c5d0ca01ef575127b6a094063003e2af5d')
diff --git a/var/spack/repos/builtin/packages/g4realsurface/package.py b/var/spack/repos/builtin/packages/g4realsurface/package.py
index dee32da8b9..ee86625898 100644
--- a/var/spack/repos/builtin/packages/g4realsurface/package.py
+++ b/var/spack/repos/builtin/packages/g4realsurface/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,12 @@ class G4realsurface(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/RealSurface.1.0.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
+ version('2.2', sha256='9954dee0012f5331267f783690e912e72db5bf52ea9babecd12ea22282176820')
version('2.1.1', sha256='90481ff97a7c3fa792b7a2a21c9ed80a40e6be386e581a39950c844b2dd06f50')
version('2.1', sha256='2a287adbda1c0292571edeae2082a65b7f7bd6cf2bf088432d1d6f889426dcf3')
version('1.0', sha256='3e2d2506600d2780ed903f1f2681962e208039329347c58ba1916740679020b1')
diff --git a/var/spack/repos/builtin/packages/g4saiddata/package.py b/var/spack/repos/builtin/packages/g4saiddata/package.py
index 0091d09744..6b6a8da546 100644
--- a/var/spack/repos/builtin/packages/g4saiddata/package.py
+++ b/var/spack/repos/builtin/packages/g4saiddata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class G4saiddata(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4SAIDDATA.1.1.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
diff --git a/var/spack/repos/builtin/packages/g4tendl/package.py b/var/spack/repos/builtin/packages/g4tendl/package.py
index aac083f539..9c898897c6 100644
--- a/var/spack/repos/builtin/packages/g4tendl/package.py
+++ b/var/spack/repos/builtin/packages/g4tendl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class G4tendl(Package):
homepage = "http://geant4.web.cern.ch"
url = "http://geant4-data.web.cern.ch/geant4-data/datasets/G4TENDL.1.3.tar.gz"
+ tags = ['hep']
+
maintainers = ['drbenmorgan']
# Only versions relevant to Geant4 releases built by spack are added
diff --git a/var/spack/repos/builtin/packages/gamess-ri-mp2-miniapp/package.py b/var/spack/repos/builtin/packages/gamess-ri-mp2-miniapp/package.py
index bff82af2cb..451d64e056 100644
--- a/var/spack/repos/builtin/packages/gamess-ri-mp2-miniapp/package.py
+++ b/var/spack/repos/builtin/packages/gamess-ri-mp2-miniapp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gams/package.py b/var/spack/repos/builtin/packages/gams/package.py
index e7e652f381..135a1a549b 100644
--- a/var/spack/repos/builtin/packages/gams/package.py
+++ b/var/spack/repos/builtin/packages/gams/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ganglia/package.py b/var/spack/repos/builtin/packages/ganglia/package.py
index ffccc3c14c..3a00ee424f 100644
--- a/var/spack/repos/builtin/packages/ganglia/package.py
+++ b/var/spack/repos/builtin/packages/ganglia/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gapbs/package.py b/var/spack/repos/builtin/packages/gapbs/package.py
index c992a6eed0..4314d837eb 100644
--- a/var/spack/repos/builtin/packages/gapbs/package.py
+++ b/var/spack/repos/builtin/packages/gapbs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gapcloser/package.py b/var/spack/repos/builtin/packages/gapcloser/package.py
index e8c060c260..5e7e5c6467 100644
--- a/var/spack/repos/builtin/packages/gapcloser/package.py
+++ b/var/spack/repos/builtin/packages/gapcloser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gapfiller/package.py b/var/spack/repos/builtin/packages/gapfiller/package.py
index c2fa5b025e..ffcd91ddc7 100644
--- a/var/spack/repos/builtin/packages/gapfiller/package.py
+++ b/var/spack/repos/builtin/packages/gapfiller/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gasnet/package.py b/var/spack/repos/builtin/packages/gasnet/package.py
index 8ead7c3796..d76a104a35 100644
--- a/var/spack/repos/builtin/packages/gasnet/package.py
+++ b/var/spack/repos/builtin/packages/gasnet/package.py
@@ -1,101 +1,141 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
-
-
-class Gasnet(AutotoolsPackage):
- """GASNet is a language-independent, low-level networking layer
- that provides network-independent, high-performance communication
- primitives tailored for implementing parallel global address space
- SPMD languages and libraries such as UPC, Co-Array Fortran, SHMEM,
- Cray Chapel, and Titanium.
+import os
+
+
+class Gasnet(Package):
+ """GASNet is a language-independent, networking middleware layer that
+ provides network-independent, high-performance communication primitives
+ including Remote Memory Access (RMA) and Active Messages (AM). It has been
+ used to implement parallel programming models and libraries such as UPC,
+ UPC++, Co-Array Fortran, Legion, Chapel, and many others. The interface is
+ primarily intended as a compilation target and for use by runtime library
+ writers (as opposed to end users), and the primary goals are high
+ performance, interface portability, and expressiveness.
+
+ ***NOTICE***: The GASNet library built by this Spack package is ONLY intended for
+ unit-testing purposes, and is generally UNSUITABLE FOR PRODUCTION USE.
+ The RECOMMENDED way to build GASNet is as an embedded library as configured
+ by the higher-level client runtime package (UPC++, Legion, etc), including
+ system-specific configuration.
"""
homepage = "https://gasnet.lbl.gov"
- url = "https://gasnet.lbl.gov/EX/GASNet-2020.3.0.tar.gz"
-
- version('2020.3.0', sha256='019eb2d2284856e6fabe6c8c0061c874f10e95fa0265245f227fd3497f1bb274')
- version('2019.9.0', sha256='117f5fdb16e53d0fa8a47a1e28cccab1d8020ed4f6e50163d985dc90226aaa2c')
- version('2019.6.0', sha256='839ba115bfb48083c66b4c1c27703d73063b75d2f1e0501d5eab2ad7f0f776c8')
- version('2019.3.2', sha256='9e2175047879f1e8c7c4b0a9db3c2cd20c978371cd7f209cf669d402119b6fdb')
- version('2019.3.0', sha256='97fe19bb5ab32d14a96d2dd19d0f03048f68bb20ca83abe0c00cdab40e86eba5')
- version('1.32.0', sha256='42e4774b3bbc7c142f77c41b6ce86b594f579073f46c31f47f424c7e31ee1511')
- version('1.30.0', sha256='b5d8c98c53174a98a41efb4ec9dedb62c0a9e8fa111bb6460cd4493beb80d497')
- version('1.28.2', sha256='7903fd8ebdd03bcda20a66e3fcedef2f8b384324591aa91b8370f3360f6384eb')
- version('1.28.0', sha256='a7999fbaa1f220c2eb9657279c7e7cccd1b21865d5383c9a5685cfe05a0702bc')
- version('1.24.0', sha256='76b4d897d5e2261ef83d0885c192e8ac039e32cb2464f11eb64eb3f9f2df38c0')
-
- variant('mpi', default=True, description="Support MPI")
- variant('ibv', default=False, description="Support InfiniBand")
- variant('udp', default=False, description="Support UDP")
- variant('aligned-segments', default=False,
- description="Requirement to achieve aligned VM segments")
- variant('pshm', default=True,
- description="Support inter-process shared memory support")
- variant('segment-mmap-max', default='16GB',
- description="Upper bound for mmap-based GASNet segments")
-
- conflicts('+aligned-segments', when='+pshm')
-
- depends_on('mpi', when='+mpi')
-
- def url_for_version(self, version):
- url = "https://gasnet.lbl.gov/"
- if version >= Version('2019'):
- url += "EX/GASNet-{0}.tar.gz".format(version)
- else:
- url += "download/GASNet-{0}.tar.gz".format(version)
-
- return url
-
- def configure_args(self):
- args = [
- # TODO: factor IB suport out into architecture description.
- '--enable-par',
- '--enable-mpi-compat',
- '--enable-segment-fast',
- '--disable-parsync',
- '--with-segment-mmap-max=%s '
- % (self.spec.variants['segment-mmap-max'].value),
- # for consumers with shared libs
- "CC=%s %s" % (spack_cc, self.compiler.cc_pic_flag),
- "CXX=%s %s" % (spack_cxx, self.compiler.cxx_pic_flag),
- ]
-
- if '+aligned-segments' in self.spec:
- args.append('--enable-aligned-segments')
- else:
- args.append('--disable-aligned-segments')
-
- if '+pshm' in self.spec:
- args.append('--enable-pshm')
- else:
- args.append('--disable-pshm')
-
- if '+mpi' in self.spec:
- args.extend(['--enable-mpi',
- '--disable-udp',
- '--disable-ibv',
- '--disable-seq',
- 'MPI_CC=%s %s'
- % (self.spec['mpi'].mpicc, self.compiler.cc_pic_flag)])
-
- if '+ibv' in self.spec:
- args.extend(['--enable-ibv',
- '--with-ibv-max-hcas=1',
- '--enable-pthreads',
- '--disable-udp',
- '--disable-mpi',
- '--disable-seq',
- '--disable-smp',
- '--disable-portals'])
-
- if '+udp' in self.spec:
- args.extend(['--enable-udp',
- '--disable-ibv',
- '--disable-mpi',
- '--disable-seq'])
-
- return args
+ url = "https://gasnet.lbl.gov/EX/GASNet-2021.3.0.tar.gz"
+ git = "https://bitbucket.org/berkeleylab/gasnet.git"
+
+ maintainers = ['PHHargrove', 'bonachea']
+
+ version('develop', branch='develop')
+ version('main', branch='stable')
+ version('master', branch='master')
+
+ version('2021.3.0', sha256='8a40fb3fa8bacc3922cd4d45217816fcb60100357ab97fb622a245567ea31747')
+ version('2020.10.0', sha256='ed17baf7fce90499b539857ee37b3eea961aa475cffbde77e4c607a34ece06a0')
+ version('2020.3.0', sha256='019eb2d2284856e6fabe6c8c0061c874f10e95fa0265245f227fd3497f1bb274')
+ version('2019.9.0', sha256='117f5fdb16e53d0fa8a47a1e28cccab1d8020ed4f6e50163d985dc90226aaa2c')
+ # Do NOT add older versions here.
+ # GASNet-EX releases over 2 years old are not supported.
+
+ # The optional network backends:
+ variant('conduits',
+ values=any_combination_of('smp', 'mpi', 'ibv', 'udp').with_default('smp'),
+ description="The hardware-dependent network backends to enable.\n" +
+ "(smp) = SMP conduit for single-node operation ;\n" +
+ "(ibv) = Native InfiniBand verbs conduit ;\n" +
+ "(udp) = Portable UDP conduit, for Ethernet networks ;\n" +
+ "(mpi) = Low-performance/portable MPI conduit ;\n" +
+ "For detailed recommendations, consult https://gasnet.lbl.gov")
+
+ variant('debug', default=False, description="Enable library debugging mode")
+
+ depends_on('mpi', when='conduits=mpi')
+
+ depends_on('autoconf@2.69', type='build', when='@master:')
+ depends_on('automake@1.16:', type='build', when='@master:')
+
+ def install(self, spec, prefix):
+ if spec.satisfies('@master:'):
+ bootstrapsh = Executable("./Bootstrap")
+ bootstrapsh()
+
+ # The GASNet-EX library has a highly multi-dimensional configure space,
+ # to accomodate the varying behavioral requirements of each client runtime.
+ # The library's ABI/link compatibility is strongly dependent on these
+ # client-specific build-time settings, and that variability is deliberately NOT
+ # encoded in the variants of this package. The recommended way to build/deploy
+ # GASNet is as an EMBEDDED library within the build of the client package
+ # (eg. Berkeley UPC, UPC++, Legion, etc), some of which provide build-time
+ # selection of the GASNet library sources. This spack package provides
+ # the GASNet-EX sources, for use by appropriate client packages.
+ install_tree('.', prefix + "/src")
+
+ # Library build is provided for unit-testing purposes only (see notice above)
+ if 'conduits=none' not in spec:
+ options = ["--prefix=%s" % prefix]
+
+ if '+debug' in spec:
+ options.append("--enable-debug")
+
+ if 'conduits=mpi' in spec:
+ options.append("--enable-mpi-compat")
+ else:
+ options.append("--disable-mpi-compat")
+
+ options.append("--disable-auto-conduit-detect")
+ for c in spec.variants['conduits'].value:
+ options.append("--enable-" + c)
+
+ configure(*options)
+ make()
+ make('install')
+
+ for c in spec.variants['conduits'].value:
+ testdir = join_path(self.prefix.tests, c)
+ mkdirp(testdir)
+ make('-C', c + '-conduit', 'testgasnet-par')
+ install(c + "-conduit/testgasnet", testdir)
+ make('-C', c + '-conduit', 'testtools-par')
+ install(c + "-conduit/testtools", self.prefix.tests)
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def test_install(self):
+ if 'conduits=smp' in self.spec:
+ make('-C', 'smp-conduit', 'run-tests')
+ if 'conduits=none' not in self.spec:
+ self.run_test(join_path(self.prefix.tests, 'testtools'),
+ expected=['Done.'], status=0,
+ installed=True, purpose="Running testtools")
+
+ def test(self):
+ if 'conduits=none' in self.spec:
+ spack.main.send_warning_to_tty("No conduit libraries built -- SKIPPED")
+ return
+
+ ranks = '4'
+ spawner = {
+ 'smp': ['env', 'GASNET_PSHM_NODES=' + ranks],
+ 'mpi': [join_path(self.prefix.bin, 'gasnetrun_mpi'), '-n', ranks],
+ 'ibv': [join_path(self.prefix.bin, 'gasnetrun_ibv'), '-n', ranks],
+ 'udp': [join_path(self.prefix.bin, 'amudprun'), '-spawn', 'L', '-np', ranks]
+ }
+
+ os.environ['GASNET_VERBOSEENV'] = '1' # include diagnostic info
+ if 'GASNET_SSH_SERVERS' not in os.environ:
+ os.environ['GASNET_SSH_SERVERS'] = "localhost " * 4
+
+ self.run_test(join_path(self.prefix.tests, 'testtools'),
+ expected=['Done.'], status=0,
+ installed=True, purpose="Running testtools")
+
+ for c in self.spec.variants['conduits'].value:
+ os.environ['GASNET_SUPERNODE_MAXSIZE'] = '0' if (c == 'smp') else '1'
+ test = join_path(self.prefix.tests, c, 'testgasnet')
+ self.run_test(spawner[c][0], spawner[c][1:] + [test],
+ expected=['done.'], status=0,
+ installed=(c != 'smp'),
+ purpose="Running %s-conduit/testgasnet" % c)
diff --git a/var/spack/repos/builtin/packages/gate/package.py b/var/spack/repos/builtin/packages/gate/package.py
index 741d472f80..c7e7a83a7b 100644
--- a/var/spack/repos/builtin/packages/gate/package.py
+++ b/var/spack/repos/builtin/packages/gate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,7 +37,7 @@ class Gate(CMakePackage):
values=('SGE', 'condor', 'openPBS', 'openmosix', 'slurm', 'xgrid'),
multi=False)
- depends_on('geant4~threads') # Gate needs a non-threaded geant4
+ depends_on('geant4@:10.6~threads') # Gate needs a non-threaded geant4
depends_on('root')
depends_on('itk+rtk', when='+rtk')
@@ -49,9 +49,15 @@ class Gate(CMakePackage):
args = []
if '+rtk' in self.spec:
- args.append('-DGATE_USE_RTK=ON')
+ args.extend([
+ '-DGATE_USE_ITK=ON',
+ '-DGATE_USE_RTK=ON',
+ ])
else:
- args.append('-DGATE_USE_RTK=OFF')
+ args.extend([
+ '-DGATE_USE_ITK=OFF',
+ '-DGATE_USE_RTK=OFF',
+ ])
return args
diff --git a/var/spack/repos/builtin/packages/gatepet2stir/package.py b/var/spack/repos/builtin/packages/gatepet2stir/package.py
index f13cdca589..4c956a1f3d 100644
--- a/var/spack/repos/builtin/packages/gatepet2stir/package.py
+++ b/var/spack/repos/builtin/packages/gatepet2stir/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gatetools/package.py b/var/spack/repos/builtin/packages/gatetools/package.py
new file mode 100644
index 0000000000..5d85d37a28
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gatetools/package.py
@@ -0,0 +1,36 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Gatetools(PythonPackage):
+ """Python tools for GATE, see https://github.com/OpenGATE/Gate"""
+
+ homepage = "https://github.com/OpenGATE/GateTools"
+ pypi = "gatetools/gatetools-0.9.14.tar.gz"
+
+ maintainers = ['glennpj']
+
+ version('0.9.14', sha256='78fe864bb52fd4c6aeeee90d8f6c1bc5406ce02ac6f48712379efac606b5c006')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-click', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-pydicom', type=('build', 'run'))
+ depends_on('py-tqdm', type=('build', 'run'))
+ depends_on('py-colored', type=('build', 'run'))
+ depends_on('py-itk@5.1.0:', type=('build', 'run'))
+ depends_on('py-uproot3', type=('build', 'run'))
+ depends_on('py-wget', type=('build', 'run'))
+ depends_on('gate+rtk', type='run')
+
+ # The readme.md file is not in the distribution, so fake it.
+ @run_before('build')
+ def readme(self):
+ touch('readme.md')
diff --git a/var/spack/repos/builtin/packages/gatk/package.py b/var/spack/repos/builtin/packages/gatk/package.py
index 7c61c238d9..f1a0511b70 100644
--- a/var/spack/repos/builtin/packages/gatk/package.py
+++ b/var/spack/repos/builtin/packages/gatk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -78,15 +78,15 @@ class Gatk(Package):
)
version(
"3.8-1",
- sha256="a0829534d2d0ca3ebfbd3b524a9b50427ff238e0db400d6e9e479242d98cbe5c",
+ sha256='a0829534d2d0ca3ebfbd3b524a9b50427ff238e0db400d6e9e479242d98cbe5c',
extension="tar.bz2",
- url="https://software.broadinstitute.org/gatk/download/auth?package=GATK-archive&version=3.8-1-0-gf15c1c3ef",
+ url="https://storage.googleapis.com/gatk-software/package-archive/gatk/GenomeAnalysisTK-3.8-1-0-gf15c1c3ef.tar.bz2",
)
version(
"3.8-0",
sha256="d1017b851f0cc6442b75ac88dd438e58203fa3ef1d1c38eb280071ae3803b9f1",
- extension="tar.gz",
- url="https://software.broadinstitute.org/gatk/download/auth?package=GATK",
+ extension="tar.bz2",
+ url="https://storage.googleapis.com/gatk-software/package-archive/gatk/GenomeAnalysisTK-3.8-0-ge9d806836.tar.bz2"
)
depends_on("java@8", type="run")
diff --git a/var/spack/repos/builtin/packages/gaudi/package.py b/var/spack/repos/builtin/packages/gaudi/package.py
index 2062cf647f..cecd49277d 100644
--- a/var/spack/repos/builtin/packages/gaudi/package.py
+++ b/var/spack/repos/builtin/packages/gaudi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Gaudi(CMakePackage):
git = "https://gitlab.cern.ch/gaudi/Gaudi.git"
url = "https://gitlab.cern.ch/gaudi/Gaudi/-/archive/v33r1/Gaudi-v33r1.tar.gz"
+ tags = ['hep']
+
version('master', branch='master')
version('35.0', sha256='c01b822f9592a7bf875b9997cbeb3c94dea97cb13d523c12649dbbf5d69b5fa6')
version('34.0', sha256='28fc4abb5a6b08da5a6b1300451c7e8487f918b055939877219d454abf7668ae')
@@ -46,7 +48,7 @@ class Gaudi(CMakePackage):
depends_on('cppgsl')
depends_on('fmt', when='@33.2:')
depends_on('intel-tbb')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('nlohmann-json', when="@35.0:")
depends_on('python', type=('build', 'run'))
depends_on('python@:3.7.99', when='@32.2:34.99', type=('build', 'run'))
@@ -88,13 +90,14 @@ class Gaudi(CMakePackage):
args = [
self.define_from_variant("BUILD_TESTING", "optional"),
self.define_from_variant("GAUDI_USE_AIDA", "optional"),
- self.define_from_variant("GAUDI_USE_CLHEP", "optional"),
self.define_from_variant("GAUDI_USE_CPPUNIT", "optional"),
self.define_from_variant("GAUDI_USE_HEPPDT", "optional"),
self.define_from_variant("GAUDI_USE_JEMALLOC", "optional"),
self.define_from_variant("GAUDI_USE_UNWIND", "optional"),
self.define_from_variant("GAUDI_USE_XERCESC", "optional"),
self.define_from_variant("GAUDI_USE_DOXYGEN", "docs"),
+ # needed to build core services like rndmsvc
+ self.define("GAUDI_USE_CLHEP", True),
self.define("GAUDI_USE_PYTHON_MAJOR",
str(self.spec['python'].version.up_to(1))),
# todo:
diff --git a/var/spack/repos/builtin/packages/gaussian-src/package.py b/var/spack/repos/builtin/packages/gaussian-src/package.py
index fe8f902df0..f4a28dec52 100644
--- a/var/spack/repos/builtin/packages/gaussian-src/package.py
+++ b/var/spack/repos/builtin/packages/gaussian-src/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gaussian-view/package.py b/var/spack/repos/builtin/packages/gaussian-view/package.py
index 9f5b83edc5..680ce8c51a 100644
--- a/var/spack/repos/builtin/packages/gaussian-view/package.py
+++ b/var/spack/repos/builtin/packages/gaussian-view/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -44,6 +44,15 @@ class GaussianView(Package):
conflicts('+gaussian-src', when='@:6.0.99')
+ depends_on('libx11', type=('run', 'link'))
+ depends_on('libxext', type=('run', 'link'))
+ depends_on('gl@3:', type=('run', 'link'))
+ depends_on('glu@1.3', type=('run', 'link'))
+ depends_on('libxrender', type=('run', 'link'))
+ depends_on('libsm', type=('run', 'link'))
+ depends_on('libice', type=('run', 'link'))
+ depends_on('patchelf', type='build')
+
def url_for_version(self, version):
return "file://{0}/gv{1}-linux-x86_64.tbz".format(
os.getcwd(),
@@ -52,6 +61,18 @@ class GaussianView(Package):
def install(self, spec, prefix):
install_tree('.', prefix)
+ # make sure the executable finds and uses the Spack-provided
+ # libraries, otherwise the executable may or may not run depending
+ # on what is installed on the host
+ # the $ORIGIN prefix is required for the executable to find its
+ # own bundled shared libraries
+ patchelf = which('patchelf')
+ rpath = '$ORIGIN:$ORIGIN/lib' + ':'.join(
+ self.spec[dep].libs.directories[0]
+ for dep in ['libx11', 'libxext', 'libxrender', 'libice', 'libsm',
+ 'gl', 'glu'])
+ patchelf('--set-rpath', rpath, join_path(self.prefix, 'gview.exe'))
+
@run_after('install')
def caveats(self):
perm_script = 'spack_perms_fix.sh'
diff --git a/var/spack/repos/builtin/packages/gaussian/package.py b/var/spack/repos/builtin/packages/gaussian/package.py
index 7a1f7e6821..b5c77ed811 100644
--- a/var/spack/repos/builtin/packages/gaussian/package.py
+++ b/var/spack/repos/builtin/packages/gaussian/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gawk/package.py b/var/spack/repos/builtin/packages/gawk/package.py
index d567dfdcdc..776e229cde 100644
--- a/var/spack/repos/builtin/packages/gawk/package.py
+++ b/var/spack/repos/builtin/packages/gawk/package.py
@@ -1,9 +1,8 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-from spack import *
+import re
class Gawk(AutotoolsPackage, GNUMirrorPackage):
@@ -23,6 +22,11 @@ class Gawk(AutotoolsPackage, GNUMirrorPackage):
homepage = "https://www.gnu.org/software/gawk/"
gnu_mirror_path = "gawk/gawk-4.1.4.tar.xz"
+ executables = ['^gawk$']
+
+ tags = ['build-tools']
+
+ version('5.1.0', sha256='cf5fea4ac5665fd5171af4716baab2effc76306a9572988d5ba1078f196382bd')
version('5.0.1', sha256='8e4e86f04ed789648b66f757329743a0d6dfb5294c3b91b756a474f1ce05a794')
version('4.1.4', sha256='53e184e2d0f90def9207860531802456322be091c7b48f23fdc79cda65adc266')
@@ -35,3 +39,9 @@ class Gawk(AutotoolsPackage, GNUMirrorPackage):
provides('awk')
build_directory = 'spack-build'
+
+ @classmethod
+ def determine_version(cls, exe):
+ output = Executable(exe)('--version', output=str, error=str)
+ match = re.search(r'GNU Awk\s+([\d\.]+)', output)
+ return match.group(1) if match else None
diff --git a/var/spack/repos/builtin/packages/gblocks/package.py b/var/spack/repos/builtin/packages/gblocks/package.py
index 5b41ffc215..a4639247bf 100644
--- a/var/spack/repos/builtin/packages/gblocks/package.py
+++ b/var/spack/repos/builtin/packages/gblocks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gcc/package.py b/var/spack/repos/builtin/packages/gcc/package.py
index 12c6569577..64ffdf8cf2 100644
--- a/var/spack/repos/builtin/packages/gcc/package.py
+++ b/var/spack/repos/builtin/packages/gcc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,6 +29,9 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
version('master', branch='master')
+ version('11.1.0', sha256='4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf')
+
+ version('10.3.0', sha256='64f404c1a650f27fc33da242e1f2df54952e3963a49e06e73f6940f3223ac344')
version('10.2.0', sha256='b8dd4368bb9c7f0b98188317ee0254dd8cc99d1e3a18d0ff146c855fe16c1d8c')
version('10.1.0', sha256='b6898a23844b656f1b68691c5c012036c2e694ac4b53a8918d4712ad876e7ea2')
@@ -36,6 +39,7 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
version('9.2.0', sha256='ea6ef08f121239da5695f76c9b33637a118dcf63e24164422231917fa61fb206')
version('9.1.0', sha256='79a66834e96a6050d8fe78db2c3b32fb285b230b855d0a66288235bc04b327a0')
+ version('8.5.0', sha256='d308841a511bb830a6100397b0042db24ce11f642dab6ea6ee44842e5325ed50')
version('8.4.0', sha256='e30a6e52d10e1f27ed55104ad233c30bd1e99cfb5ff98ab022dc941edd1b2dd4')
version('8.3.0', sha256='64baadfe6cc0f4947a84cb12d7f0dfaf45bb58b7e92461639596c21e02d97d2c')
version('8.2.0', sha256='196c3c04ba2613f893283977e6011b2345d1cd1af9abeac58e916b1aab3e0080')
@@ -98,6 +102,9 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
variant('bootstrap',
default=False,
description='add --enable-bootstrap flag for stage3 build')
+ variant('graphite',
+ default=False,
+ description='Enable Graphite loop optimizations (requires ISL)')
depends_on('flex', type='build', when='@master')
@@ -112,19 +119,22 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
# GCC 5.4 https://github.com/spack/spack/issues/6902#issuecomment-433072097
# GCC 7.3 https://github.com/spack/spack/issues/6902#issuecomment-433030376
# GCC 9+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86724
- depends_on('isl@0.14', when='@5.0:5.2')
- depends_on('isl@0.15', when='@5.3:5.9')
- depends_on('isl@0.15:0.18', when='@6:8.9')
- depends_on('isl@0.15:0.20', when='@9:9.9')
- depends_on('isl@0.15:', when='@10:')
+ depends_on('isl@0.14', when='@5.0:5.2 +graphite')
+ depends_on('isl@0.15', when='@5.3:5.9 +graphite')
+ depends_on('isl@0.15:0.18', when='@6:8.9 +graphite')
+ depends_on('isl@0.15:0.20', when='@9:9.9 +graphite')
+ depends_on('isl@0.15:', when='@10: +graphite')
depends_on('zlib', when='@6:')
- depends_on('zstd', when='@10:')
+ # GCC only tries to link with -lzstd but it requires
+ # -pthread too when linking against libzstd.a, so
+ # disable multithreading by default
+ depends_on('zstd~multithread', when='@10:')
depends_on('diffutils', type='build')
depends_on('iconv', when='platform=darwin')
depends_on('gnat', when='languages=ada')
- depends_on('binutils~libiberty', when='+binutils', type=('build', 'link', 'run'))
+ depends_on('binutils+gas+ld+plugins~libiberty', when='+binutils', type=('build', 'link', 'run'))
depends_on('zip', type='build', when='languages=java')
- depends_on('cuda@:10', when='+nvptx')
+ depends_on('cuda', when='+nvptx')
# The server is sometimes a bit slow to respond
timeout = {'timeout': 60}
@@ -141,7 +151,7 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
# nvptx-tools doesn't have any releases, so grabbing the last commit
resource(name='nvptx-tools',
git='https://github.com/MentorEmbedded/nvptx-tools',
- commit='5f6f343a302d620b0868edab376c00b15741e39e',
+ commit='d0524fbdc86dfca068db5a21cc78ac255b335be5',
when='+nvptx')
# TODO: integrate these libraries.
@@ -209,7 +219,7 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
conflicts('languages=objc', when='+nvptx')
conflicts('languages=obj-c++', when='+nvptx')
# NVPTX build disables bootstrap
- conflicts('+binutils', when='+nvptx')
+ conflicts('+bootstrap', when='+nvptx')
# Binutils can't build ld on macOS
conflicts('+binutils', when='platform=darwin')
@@ -219,6 +229,9 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
conflicts('~binutils', when='@7: os=rhel6',
msg='New GCC cannot use system assembler on RHEL6')
+ # GCC 11 requires GCC 4.8 or later (https://gcc.gnu.org/gcc-11/changes.html)
+ conflicts('%gcc@:4.7', when='@11:')
+
if sys.platform == 'darwin':
# Fix parallel build on APFS filesystem
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
@@ -438,6 +451,19 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
'-I{0}'.format(spec['zlib'].prefix.include),
'gcc/Makefile.in')
+ if spec.satisfies('+nvptx'):
+ # backport of 383400a6078d upstream to allow support of cuda@11:
+ filter_file('#define ASM_SPEC "%{misa=*:-m %*}"',
+ '#define ASM_SPEC "%{misa=*:-m %*; :-m sm_35}"',
+ 'gcc/config/nvptx/nvptx.h',
+ string=True)
+ filter_file('Target RejectNegative ToLower Joined '
+ 'Enum(ptx_isa) Var(ptx_isa_option) Init(PTX_ISA_SM30)',
+ 'Target RejectNegative ToLower Joined '
+ 'Enum(ptx_isa) Var(ptx_isa_option) Init(PTX_ISA_SM35)',
+ 'gcc/config/nvptx/nvptx.opt',
+ string=True)
+
# https://gcc.gnu.org/install/configure.html
def configure_args(self):
spec = self.spec
@@ -460,7 +486,10 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
options.append('--with-system-zlib')
if 'zstd' in spec:
- options.append('--with-zstd={0}'.format(spec['zstd'].prefix))
+ options.append('--with-zstd-include={0}'.format(
+ spec['zstd'].headers.directories[0]))
+ options.append('--with-zstd-lib={0}'.format(
+ spec['zstd'].libs.directories[0]))
# Enabling language "jit" requires --enable-host-shared.
if 'languages=jit' in spec:
@@ -481,6 +510,10 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
options.extend([
'--enable-bootstrap',
])
+ else:
+ options.extend([
+ '--disable-bootstrap',
+ ])
# Configure include and lib directories explicitly for these
# dependencies since the short GCC option assumes that libraries
@@ -490,6 +523,7 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
# More info at: https://gcc.gnu.org/install/configure.html
for dep_str in ('mpfr', 'gmp', 'mpc', 'isl'):
if dep_str not in spec:
+ options.append('--without-{0}'.format(dep_str))
continue
dep_spec = spec[dep_str]
diff --git a/var/spack/repos/builtin/packages/gccmakedep/package.py b/var/spack/repos/builtin/packages/gccmakedep/package.py
index 1b8614af2d..0c7a0843ed 100644
--- a/var/spack/repos/builtin/packages/gccmakedep/package.py
+++ b/var/spack/repos/builtin/packages/gccmakedep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gccxml/package.py b/var/spack/repos/builtin/packages/gccxml/package.py
index a7a885bcd3..72ea079985 100644
--- a/var/spack/repos/builtin/packages/gccxml/package.py
+++ b/var/spack/repos/builtin/packages/gccxml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gchp/for_aarch64.patch b/var/spack/repos/builtin/packages/gchp/for_aarch64.patch
new file mode 100644
index 0000000000..53af837784
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gchp/for_aarch64.patch
@@ -0,0 +1,24 @@
+diff -uprN spack-src.org/ESMA_cmake/GNU.cmake spack-src/ESMA_cmake/GNU.cmake
+--- spack-src.org/ESMA_cmake/GNU.cmake 2021-02-25 11:28:42.856054566 +0900
++++ spack-src/ESMA_cmake/GNU.cmake 2021-02-25 10:38:06.556356960 +0900
+@@ -125,7 +125,7 @@ set (GEOS_Fortran_Debug_FPE_Flags "${com
+
+ # GEOS Release
+ # ------------
+-set (GEOS_Fortran_Release_Flags "${FOPT3} -march=westmere -mtune=generic -funroll-loops ${DEBINFO}")
++set (GEOS_Fortran_Release_Flags "${FOPT3} -funroll-loops ${DEBINFO}")
+ set (GEOS_Fortran_Release_FPE_Flags "${common_Fortran_fpe_flags}")
+
+ # GEOS Vectorize
+diff -uprN spack-src.org/src/GCHP_GridComp/HEMCO_GridComp/HEMCO/CMakeLists.txt spack-src/src/GCHP_GridComp/HEMCO_GridComp/HEMCO/CMakeLists.txt
+--- spack-src.org/src/GCHP_GridComp/HEMCO_GridComp/HEMCO/CMakeLists.txt 2021-02-25 11:33:57.897033867 +0900
++++ spack-src/src/GCHP_GridComp/HEMCO_GridComp/HEMCO/CMakeLists.txt 2021-02-25 11:22:06.224802880 +0900
+@@ -64,7 +64,7 @@ set(HEMCO_Fortran_FLAGS_DEBUG_Intel
+
+ set(HEMCO_Fortran_FLAGS_GNU
+ -cpp -w -std=legacy -fautomatic -fno-align-commons -fconvert=big-endian
+- -fno-range-check -mcmodel=medium -fbacktrace -g -DLINUX_GFORTRAN
++ -fno-range-check -mcmodel=small -fbacktrace -g -DLINUX_GFORTRAN
+ -ffree-line-length-none
+ CACHE STRING "HEMCO compiler flags for all build types with GNU compilers"
+ )
diff --git a/var/spack/repos/builtin/packages/gchp/package.py b/var/spack/repos/builtin/packages/gchp/package.py
new file mode 100644
index 0000000000..7e572fcdcc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gchp/package.py
@@ -0,0 +1,61 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import shutil
+
+
+class Gchp(CMakePackage):
+ """GEOS-Chem High Performance model of atmospheric chemistry"""
+
+ homepage = "https://gchp.readthedocs.io/"
+ url = "https://github.com/geoschem/GCHP/archive/13.0.1.tar.gz"
+
+ maintainers = ['williamdowns']
+
+ version('13.0.1', git='https://github.com/geoschem/GCHP.git',
+ commit='f40a2476fda901eacf78c0972fdb6c20e5a06700', submodules=True)
+ version('13.0.0', git='https://github.com/geoschem/GCHP.git',
+ commit='1f5a5c5630c5d066ff8306cbb8b83e267ca7c265', submodules=True)
+
+ patch('for_aarch64.patch', when='target=aarch64:')
+
+ depends_on('esmf@8.0.1', when='@13.0.0:')
+ depends_on('esmf@8.0.1: -lapack -pio -pnetcdf -xerces', when='@13.0.0-rc.0')
+ depends_on('mpi@3')
+ depends_on('netcdf-fortran')
+ depends_on('cmake@3.13:')
+ depends_on('libfabric', when='+ofi')
+ depends_on('m4')
+
+ variant('omp', default=False, description="OpenMP parallelization")
+ variant('real8', default=True, description="REAL*8 precision")
+ variant('apm', default=False, description="APM Microphysics (Experimental)")
+ variant('rrtmg', default=False, description="RRTMG radiative transfer model")
+ variant('luo', default=False, description="Luo et al 2019 wet deposition scheme")
+ variant('tomas', default=False, description="TOMAS Microphysics (Experimental)")
+ variant('ofi', default=False, description="Build with Libfabric support")
+
+ def cmake_args(self):
+ args = [self.define("RUNDIR", self.prefix),
+ self.define_from_variant('OMP', 'omp'),
+ self.define_from_variant('USE_REAL8', 'real8'),
+ self.define_from_variant('APM', 'apm'),
+ self.define_from_variant('RRTMG', 'rrtmg'),
+ self.define_from_variant('LUO_WETDEP', 'luo'),
+ self.define_from_variant('TOMAS', 'tomas')]
+ return args
+
+ def install(self, spec, prefix):
+ super().install(spec, prefix)
+ # Preserve source code in prefix for two reasons:
+ # 1. Run directory creation occurs independently of code compilation,
+ # possibly multiple times depending on user needs,
+ # and requires the preservation of some of the source code structure.
+ # 2. Run configuration is relatively complex and can result in error
+ # messages that point to specific modules / lines of the source code.
+ # Including source code thus facilitates runtime debugging.
+ shutil.move(self.stage.source_path,
+ join_path(prefix, 'source_code'))
diff --git a/var/spack/repos/builtin/packages/gconf/package.py b/var/spack/repos/builtin/packages/gconf/package.py
index dc4bb5f239..5479ae80ba 100644
--- a/var/spack/repos/builtin/packages/gconf/package.py
+++ b/var/spack/repos/builtin/packages/gconf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gcta/package.py b/var/spack/repos/builtin/packages/gcta/package.py
index 1736055f88..33748d1527 100644
--- a/var/spack/repos/builtin/packages/gcta/package.py
+++ b/var/spack/repos/builtin/packages/gcta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gdal/package.py b/var/spack/repos/builtin/packages/gdal/package.py
index a6f1dfd909..d176eb87f0 100644
--- a/var/spack/repos/builtin/packages/gdal/package.py
+++ b/var/spack/repos/builtin/packages/gdal/package.py
@@ -1,8 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import os
+import sys
+
class Gdal(AutotoolsPackage):
"""GDAL (Geospatial Data Abstraction Library) is a translator library for
@@ -21,11 +24,10 @@ class Gdal(AutotoolsPackage):
maintainers = ['adamjstewart']
- import_modules = [
- 'osgeo', 'osgeo.gdal', 'osgeo.ogr', 'osgeo.osr',
- 'osgeo.gdal_array', 'osgeo.gdalconst'
- ]
-
+ version('3.3.0', sha256='190c8f4b56afc767f43836b2a5cd53cc52ee7fdc25eb78c6079c5a244e28efa7')
+ version('3.2.3', sha256='d9ec8458fe97fd02bf36379e7f63eaafce1005eeb60e329ed25bb2d2a17a796f')
+ version('3.2.2', sha256='a7e1e414e5c405af48982bf4724a3da64a05770254f2ce8affb5f58a7604ca57')
+ version('3.2.1', sha256='6c588b58fcb63ff3f288eb9f02d76791c0955ba9210d98c3abd879c770ae28ea')
version('3.2.0', sha256='b051f852600ffdf07e337a7f15673da23f9201a9dbb482bd513756a3e5a196a6')
version('3.1.4', sha256='7b82486f71c71cec61f9b237116212ce18ef6b90f068cbbf9f7de4fc50b576a8')
version('3.1.3', sha256='161cf55371a143826f1d76ce566db1f0a666496eeb4371aed78b1642f219d51d')
@@ -48,7 +50,7 @@ class Gdal(AutotoolsPackage):
version('2.3.0', sha256='6f75e49aa30de140525ccb58688667efe3a2d770576feb7fbc91023b7f552aa2')
version('2.1.2', sha256='b597f36bd29a2b4368998ddd32b28c8cdf3c8192237a81b99af83cc17d7fa374')
version('2.0.2', sha256='90f838853cc1c07e55893483faa7e923e4b4b1659c6bc9df3538366030a7e622')
- version('1.11.5', sha256='d4fdc3e987b9926545f0a514b4328cd733f2208442f8d03bde630fe1f7eff042')
+ version('1.11.5', sha256='d4fdc3e987b9926545f0a514b4328cd733f2208442f8d03bde630fe1f7eff042', deprecated=True)
variant('libtool', default=True, description='Use libtool to build the library')
variant('libz', default=True, description='Include libz support')
@@ -146,6 +148,10 @@ class Gdal(AutotoolsPackage):
depends_on('proj@:6', when='+proj @2.5:2.999')
depends_on('proj@6:', when='+proj @3:')
depends_on('perl', type=('build', 'run'), when='+perl')
+ # see gdal_version_and_min_supported_python_version
+ # in swig/python/osgeo/__init__.py
+ depends_on('python@3.6:', type=('build', 'link', 'run'), when='@3.3:+python')
+ depends_on('python@2.0:', type=('build', 'link', 'run'), when='@3.2:+python')
depends_on('python', type=('build', 'link', 'run'), when='+python')
# swig/python/setup.py
depends_on('py-setuptools', type='build', when='+python')
@@ -168,12 +174,29 @@ class Gdal(AutotoolsPackage):
conflicts('+mdb', when='~java', msg='MDB driver requires Java')
+ conflicts('+jasper', when='@3.5:', msg='JPEG2000 driver removed in GDAL 3.5')
+ conflicts('+openjpeg', when='@3.5:', msg='JPEG2000 driver removed in GDAL 3.5')
+ conflicts('+perl', when='@3.5:', msg='Perl bindings removed in GDAL 3.5')
+
+ # https://github.com/OSGeo/gdal/issues/3782
+ patch('https://github.com/OSGeo/gdal/pull/3786.patch', when='@3.3.0', level=2,
+ sha256='5e14c530289bfa1257277357baa8d485f852ea480152fb150d152c85af8d01f8')
+
executables = ['^gdal-config$']
@classmethod
def determine_version(cls, exe):
return Executable(exe)('--version', output=str, error=str).rstrip()
+ @property
+ def import_modules(self):
+ modules = ['osgeo']
+ if self.spec.satisfies('@3.3:'):
+ modules.append('osgeo_utils')
+ else:
+ modules.append('osgeo.utils')
+ return modules
+
def setup_build_environment(self, env):
# Needed to install Python bindings to GDAL installation
# prefix instead of Python installation prefix.
@@ -187,6 +210,17 @@ class Gdal(AutotoolsPackage):
classpath = os.pathsep.join(class_paths)
env.prepend_path('CLASSPATH', classpath)
+ # `spack test run gdal+python` requires these for the Python bindings
+ # to find the correct libraries
+ libs = []
+ for dep in self.spec.dependencies(deptype='link'):
+ query = self.spec[dep.name]
+ libs.extend(query.libs.directories)
+ if sys.platform == 'darwin':
+ env.prepend_path('DYLD_FALLBACK_LIBRARY_PATH', ':'.join(libs))
+ else:
+ env.prepend_path('LD_LIBRARY_PATH', ':'.join(libs))
+
def patch(self):
if '+java platform=darwin' in self.spec:
filter_file('linux', 'darwin', 'swig/java/java.opt', string=True)
@@ -216,7 +250,7 @@ class Gdal(AutotoolsPackage):
else:
args.append('--disable-driver-grib')
else:
- args.append('--without-bsb')
+ args.append('--with-bsb=no')
if '+grib' in spec:
args.append('--with-grib=yes')
@@ -474,8 +508,6 @@ class Gdal(AutotoolsPackage):
'--with-dods-root=no',
'--with-spatialite=no',
'--with-idb=no',
- # https://trac.osgeo.org/gdal/wiki/Epsilon
- '--with-epsilon=no',
'--with-webp=no',
'--with-freexl=no',
'--with-pam=no',
@@ -483,6 +515,11 @@ class Gdal(AutotoolsPackage):
'--with-rasdaman=no',
])
+ # TODO: add packages for these dependencies (only for 3.2 and older)
+ if spec.satisfies('@:3.2'):
+ # https://trac.osgeo.org/gdal/wiki/Epsilon
+ args.append('--with-epsilon=no')
+
# TODO: add packages for these dependencies (only for 3.1 and older)
if spec.satisfies('@:3.1'):
# https://trac.osgeo.org/gdal/wiki/ArcSDE
@@ -554,15 +591,19 @@ class Gdal(AutotoolsPackage):
install('*.jar', prefix)
@run_after('install')
- @on_package_attributes(run_tests=True)
- def import_module_test(self):
- if '+python' in self.spec:
- with working_dir('spack-test', create=True):
- for module in self.import_modules:
- python('-c', 'import {0}'.format(module))
-
- @run_after('install')
def darwin_fix(self):
# The shared library is not installed correctly on Darwin; fix this
if 'platform=darwin' in self.spec:
fix_darwin_install_name(self.prefix.lib)
+
+ def test(self):
+ """Attempts to import modules of the installed package."""
+
+ if '+python' in self.spec:
+ # Make sure we are importing the installed modules,
+ # not the ones in the source directory
+ for module in self.import_modules:
+ self.run_test(self.spec['python'].command.path,
+ ['-c', 'import {0}'.format(module)],
+ purpose='checking import of {0}'.format(module),
+ work_dir='spack-test')
diff --git a/var/spack/repos/builtin/packages/gdb/gdb-libintl.patch b/var/spack/repos/builtin/packages/gdb/gdb-libintl.patch
new file mode 100644
index 0000000000..5d990d6305
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gdb/gdb-libintl.patch
@@ -0,0 +1,12 @@
+diff -Naur gdbserver/Makefile.in gdbserver/Makefile.in
+--- gdbserver/Makefile.in 2020-10-24 06:23:02.000000000 +0200
++++ gdbserver/Makefile.in 2021-02-15 13:41:31.732000000 +0100
+@@ -388,7 +388,7 @@
+ $(SILENCE) rm -f $(IPA_LIB)
+ $(ECHO_CXXLD) $(CC_LD) -shared -fPIC -Wl,--soname=$(IPA_LIB) \
+ -Wl,--no-undefined $(INTERNAL_CFLAGS) $(INTERNAL_LDFLAGS) \
+- -o $(IPA_LIB) ${IPA_OBJS} -ldl -pthread
++ -o $(IPA_LIB) ${IPA_OBJS} $(INTL) -ldl -pthread
+
+ # Put the proper machine-specific files first, so M-. on a machine
+ # specific routine gets the one for the correct machine.
diff --git a/var/spack/repos/builtin/packages/gdb/package.py b/var/spack/repos/builtin/packages/gdb/package.py
index 90146da14e..db46399edf 100644
--- a/var/spack/repos/builtin/packages/gdb/package.py
+++ b/var/spack/repos/builtin/packages/gdb/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os
class Gdb(AutotoolsPackage, GNUMirrorPackage):
@@ -15,22 +16,26 @@ class Gdb(AutotoolsPackage, GNUMirrorPackage):
homepage = "https://www.gnu.org/software/gdb"
gnu_mirror_path = "gdb/gdb-7.10.tar.gz"
- version('9.2', sha256='38ef247d41ba7cc3f6f93a612a78bab9484de9accecbe3b0150a3c0391a3faf0')
- version('9.1', sha256='fcda54d4f35bc53fb24b50009a71ca98410d71ff2620942e3c829a7f5d614252')
- version('8.3.1', sha256='26ce655216cd03f4611518a7a1c31d80ec8e884c16715e9ba8b436822e51434b')
- version('8.3', sha256='b2266ec592440d0eec18ee1790f8558b3b8a2845b76cc83a872e39b501ce8a28')
- version('8.2.1', sha256='0107985f1edb8dddef6cdd68a4f4e419f5fec0f488cc204f0b7d482c0c6c9282')
- version('8.2', sha256='847e4b65e5a7b872e86019dd59659029e2b06cae962e0ef345f169dcb4b851b8')
- version('8.1', sha256='e54a2322da050e4b00785370a282b9b8f0b25861ec7cfbbce0115e253eea910e')
- version('8.0.1', sha256='52017d33cab5b6a92455a1a904046d075357abf24153470178c0aadca2d479c5')
- version('8.0', sha256='8968a19e14e176ee026f0ca777657c43456514ad41bb2bc7273e8c4219555ac9')
+ maintainers = ['robertu94']
+
+ version('10.2', sha256='b33ad58d687487a821ec8d878daab0f716be60d0936f2e3ac5cf08419ce70350')
+ version('10.1', sha256='f12f388b99e1408c01308c3f753313fafa45517740c81ab7ed0d511b13e2cf55')
+ version('9.2', sha256='38ef247d41ba7cc3f6f93a612a78bab9484de9accecbe3b0150a3c0391a3faf0')
+ version('9.1', sha256='fcda54d4f35bc53fb24b50009a71ca98410d71ff2620942e3c829a7f5d614252')
+ version('8.3.1', sha256='26ce655216cd03f4611518a7a1c31d80ec8e884c16715e9ba8b436822e51434b')
+ version('8.3', sha256='b2266ec592440d0eec18ee1790f8558b3b8a2845b76cc83a872e39b501ce8a28')
+ version('8.2.1', sha256='0107985f1edb8dddef6cdd68a4f4e419f5fec0f488cc204f0b7d482c0c6c9282')
+ version('8.2', sha256='847e4b65e5a7b872e86019dd59659029e2b06cae962e0ef345f169dcb4b851b8')
+ version('8.1', sha256='e54a2322da050e4b00785370a282b9b8f0b25861ec7cfbbce0115e253eea910e')
+ version('8.0.1', sha256='52017d33cab5b6a92455a1a904046d075357abf24153470178c0aadca2d479c5')
+ version('8.0', sha256='8968a19e14e176ee026f0ca777657c43456514ad41bb2bc7273e8c4219555ac9')
version('7.12.1', sha256='142057eacecfb929d52b561eb47a1103c7d504cec3f659dd8a5ae7bc378f7e77')
- version('7.11', sha256='9382f5534aa0754169e1e09b5f1a3b77d1fa8c59c1e57617e06af37cb29c669a')
+ version('7.11', sha256='9382f5534aa0754169e1e09b5f1a3b77d1fa8c59c1e57617e06af37cb29c669a')
version('7.10.1', sha256='ff14f8050e6484508c73cbfa63731e57901478490ca1672dc0b5e2b03f6af622')
- version('7.10', sha256='50690e6d6b7917a6544190ec9401eaafb555e3cef8981709ea9870296c383ce5')
- version('7.9.1', sha256='4994ad986726ac4128a6f1bd8020cd672e9a92aa76b80736563ef992992764ef')
- version('7.9', sha256='d282508cb7df0cb8b2cf659032ce1bede7b5725796e3ac90f3cd9d65844a65f2')
- version('7.8.2', sha256='fd9a9784ca24528aac8a4e6b8d7ae7e8cf0784e128cd67a185c986deaf6b9929')
+ version('7.10', sha256='50690e6d6b7917a6544190ec9401eaafb555e3cef8981709ea9870296c383ce5')
+ version('7.9.1', sha256='4994ad986726ac4128a6f1bd8020cd672e9a92aa76b80736563ef992992764ef')
+ version('7.9', sha256='d282508cb7df0cb8b2cf659032ce1bede7b5725796e3ac90f3cd9d65844a65f2')
+ version('7.8.2', sha256='fd9a9784ca24528aac8a4e6b8d7ae7e8cf0784e128cd67a185c986deaf6b9929')
variant('python', default=True, description='Compile with Python support')
variant('xz', default=True, description='Compile with lzma support')
@@ -41,11 +46,15 @@ class Gdb(AutotoolsPackage, GNUMirrorPackage):
variant('ld', default=False, description='Enable ld')
variant('tui', default=False, description='Enable tui')
+ # Resolves the undefined references to libintl_gettext while linking gdbserver
+ # https://www.gnu.org/software/gettext/FAQ.html#integrating_undefined
+ patch('gdb-libintl.patch', level=0, when='@10.1:')
+
# Required dependency
depends_on('texinfo', type='build')
# Optional dependencies
- depends_on('python', when='+python')
+ depends_on('python+debug', when='+python', type=('build', 'link', 'run'))
depends_on('xz', when='+xz')
depends_on('source-highlight', when='+source-highlight')
depends_on('ncurses', when='+tui')
@@ -53,7 +62,10 @@ class Gdb(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
def configure_args(self):
- args = []
+ args = [
+ '--with-system-gdbinit={0}'.format(self.prefix.etc.gdbinit)
+ ]
+
if '+python' in self.spec:
args.append('--with-python')
args.append('LDFLAGS={0}'.format(
@@ -75,3 +87,12 @@ class Gdb(AutotoolsPackage, GNUMirrorPackage):
args.append('--enable-tui')
return args
+
+ @run_after('install')
+ def gdbinit(self):
+ if '+python' in self.spec:
+ tool = self.spec['python'].command.path + '-gdb.py'
+ if os.path.exists(tool):
+ mkdir(self.prefix.etc)
+ with open(self.prefix.etc.gdbinit, 'w') as gdbinit:
+ gdbinit.write('add-auto-load-safe-path {0}\n'.format(tool))
diff --git a/var/spack/repos/builtin/packages/gdbm/package.py b/var/spack/repos/builtin/packages/gdbm/package.py
index c0d13b7ce0..b1a437b7cf 100644
--- a/var/spack/repos/builtin/packages/gdbm/package.py
+++ b/var/spack/repos/builtin/packages/gdbm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,18 +16,23 @@ class Gdbm(AutotoolsPackage, GNUMirrorPackage):
homepage = "http://www.gnu.org.ua/software/gdbm/gdbm.html"
gnu_mirror_path = "gdbm/gdbm-1.13.tar.gz"
+ version('1.19', sha256='37ed12214122b972e18a0d94995039e57748191939ef74115b1d41d8811364bc')
version('1.18.1', sha256='86e613527e5dba544e73208f42b78b7c022d4fa5a6d5498bf18c8d6f745b91dc')
version('1.14.1', sha256='cdceff00ffe014495bed3aed71c7910aa88bf29379f795abc0f46d4ee5f8bc5f')
- version('1.13', sha256='9d252cbd7d793f7b12bcceaddda98d257c14f4d1890d851c386c37207000a253')
- version('1.12', sha256='d97b2166ee867fd6ca5c022efee80702d6f30dd66af0e03ed092285c3af9bcea')
- version('1.11', sha256='8d912f44f05d0b15a4a5d96a76f852e905d051bb88022fcdfd98b43be093e3c3')
- version('1.10', sha256='23f8134c5b94bbfb06d756a6b78f074fba6e6028cf2fe01341d40b26db773441')
- version('1.9.1', sha256='6025852637772b0699f2294b5f14fd4a084bca3c8161d29d64d1f30d6d1a9aed')
- version('1.9', sha256='f85324d7de3777db167581fd5d3493d2daa3e85e195a8ae9afc05b34551b6e57')
+ version('1.13', sha256='9d252cbd7d793f7b12bcceaddda98d257c14f4d1890d851c386c37207000a253')
+ version('1.12', sha256='d97b2166ee867fd6ca5c022efee80702d6f30dd66af0e03ed092285c3af9bcea')
+ version('1.11', sha256='8d912f44f05d0b15a4a5d96a76f852e905d051bb88022fcdfd98b43be093e3c3')
+ version('1.10', sha256='23f8134c5b94bbfb06d756a6b78f074fba6e6028cf2fe01341d40b26db773441')
+ version('1.9.1', sha256='6025852637772b0699f2294b5f14fd4a084bca3c8161d29d64d1f30d6d1a9aed')
+ version('1.9', sha256='f85324d7de3777db167581fd5d3493d2daa3e85e195a8ae9afc05b34551b6e57')
depends_on("readline")
- patch('gdbm.patch', when='%gcc@10:')
- patch('gdbm.patch', when='%clang@11:')
+ patch('gdbm.patch', when='@:1.18 %gcc@10:')
+ patch('gdbm.patch', when='@:1.18 %clang@11:')
+ patch('gdbm.patch', when='@:1.18 %cce@11:')
+ patch('gdbm.patch', when='@:1.18 %aocc@2:')
+ patch('gdbm.patch', when='@:1.18 %oneapi')
+ patch('gdbm.patch', when='@:1.18 %arm@21:')
def configure_args(self):
diff --git a/var/spack/repos/builtin/packages/gdk-pixbuf/package.py b/var/spack/repos/builtin/packages/gdk-pixbuf/package.py
index 51def3b6e9..25827c9795 100644
--- a/var/spack/repos/builtin/packages/gdk-pixbuf/package.py
+++ b/var/spack/repos/builtin/packages/gdk-pixbuf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,13 +18,17 @@ class GdkPixbuf(Package):
list_url = "https://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/"
list_depth = 1
+ version('2.42.2', sha256='83c66a1cfd591d7680c144d2922c5955d38b4db336d7cd3ee109f7bcf9afef15')
version('2.40.0', sha256='1582595099537ca8ff3b99c6804350b4c058bb8ad67411bbaae024ee7cead4e6')
version('2.38.2', sha256='73fa651ec0d89d73dd3070b129ce2203a66171dfc0bd2caa3570a9c93d2d0781')
version('2.38.0', sha256='dd50973c7757bcde15de6bcd3a6d462a445efd552604ae6435a0532fbbadae47')
- version('2.31.2', sha256='9e467ed09894c802499fb2399cd9a89ed21c81700ce8f27f970a833efb1e47aa')
+ version('2.31.2', sha256='9e467ed09894c802499fb2399cd9a89ed21c81700ce8f27f970a833efb1e47aa', deprecated=True)
variant('x11', default=False, description="Enable X11 support")
+ # Man page creation was getting docbook errors, see issue #18853
+ variant('man', default=False, description="Enable man page creation")
+ depends_on('meson@0.55.3:', type='build', when='@2.42.2:')
depends_on('meson@0.46.0:', type='build', when='@2.37.92:')
depends_on('meson@0.45.0:', type='build', when='@2.37.0:')
depends_on('ninja', type='build', when='@2.37.0:')
@@ -32,8 +36,8 @@ class GdkPixbuf(Package):
depends_on('shared-mime-info', type='build', when='@2.36.8: platform=cray')
depends_on('pkgconfig', type='build')
# Building the man pages requires libxslt and the Docbook stylesheets
- depends_on('libxslt', type='build')
- depends_on('docbook-xsl', type='build')
+ depends_on('libxslt', type='build', when='+man')
+ depends_on('docbook-xsl@1.79.2:', type='build', when='+man')
depends_on('gettext')
depends_on('glib@2.38.0:')
depends_on('jpeg')
@@ -45,7 +49,7 @@ class GdkPixbuf(Package):
# Replace the docbook stylesheet URL with the one that our
# docbook-xsl package uses/recognizes.
- patch('docbook-cdn.patch')
+ patch('docbook-cdn.patch', when='+man')
def url_for_version(self, version):
url = "https://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/{0}/gdk-pixbuf-{1}.tar.xz"
@@ -68,7 +72,10 @@ class GdkPixbuf(Package):
def install(self, spec, prefix):
with working_dir('spack-build', create=True):
meson_args = std_meson_args
- meson_args += ['-Dx11={0}'.format('+x11' in spec)]
+ meson_args += [
+ '-Dx11={0}'.format('+x11' in spec),
+ '-Dman={0}'.format('+man' in spec),
+ ]
meson('..', *meson_args)
ninja('-v')
if self.run_tests:
diff --git a/var/spack/repos/builtin/packages/gdl/package.py b/var/spack/repos/builtin/packages/gdl/package.py
index 956061f4fa..5366a51ad5 100644
--- a/var/spack/repos/builtin/packages/gdl/package.py
+++ b/var/spack/repos/builtin/packages/gdl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -60,6 +60,8 @@ class Gdl(CMakePackage):
depends_on('netcdf-c')
depends_on('pslib')
depends_on('readline')
+ depends_on('libtirpc', type='link')
+ depends_on('libgeotiff', type='link')
conflicts('+python', when='~embed_python')
diff --git a/var/spack/repos/builtin/packages/gdrcopy/package.py b/var/spack/repos/builtin/packages/gdrcopy/package.py
index 88cf814e40..b71bf736db 100644
--- a/var/spack/repos/builtin/packages/gdrcopy/package.py
+++ b/var/spack/repos/builtin/packages/gdrcopy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,25 +11,24 @@ class Gdrcopy(MakefilePackage):
RDMA technology."""
homepage = "https://github.com/NVIDIA/gdrcopy"
- url = "https://github.com/NVIDIA/gdrcopy/archive/2.1.tar.gz"
+ url = "https://github.com/NVIDIA/gdrcopy/archive/v2.1.tar.gz"
git = "https://github.com/NVIDIA/gdrcopy"
version('master', branch='master')
+ version('2.2', sha256='e4be119809391b18c735346d24b3b398dd9421cbff47ef12befbae40d61da45f')
version('2.1', sha256='cecc7dcc071107f77396f5553c9109790b6d2298ae29eb2dbbdd52b2a213e4ea')
version('2.0', sha256='98320e6e980a7134ebc4eedd6cf23647104f2b3c557f2eaf0d31a02609f5f2b0')
version('1.3', sha256='f11cdfe389b685f6636b80b4a3312dc014a385ad7220179c1318c60e2e28af3a')
- def url_for_version(self, version):
- if version >= Version('2.1'):
- return super(Gdrcopy, self).url_for_version(version)
-
- url_fmt = "https://github.com/NVIDIA/gdrcopy/archive/v{0}.tar.gz"
- return url_fmt.format(version)
-
def build(self, spec, prefix):
make('lib')
def install(self, spec, prefix):
mkdir(prefix.include)
mkdir(prefix.lib64)
- make('lib_install', 'PREFIX={0}'.format(self.prefix))
+ if spec.satisfies('@2.2:'):
+ make('lib_install',
+ 'prefix={0}'.format(self.prefix))
+ else:
+ make('lib_install',
+ 'PREFIX={0}'.format(self.prefix))
diff --git a/var/spack/repos/builtin/packages/geant4-data/package.py b/var/spack/repos/builtin/packages/geant4-data/package.py
index 57a60ededd..e8a8aa0920 100644
--- a/var/spack/repos/builtin/packages/geant4-data/package.py
+++ b/var/spack/repos/builtin/packages/geant4-data/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,11 @@ class Geant4Data(BundlePackage):
maintainers = ['drbenmorgan']
+ tags = ['hep']
+
+ version('10.7.1')
+ version('10.7.0')
+ version('10.6.3')
version('10.6.2')
version('10.6.1')
version('10.6.0')
@@ -29,6 +34,20 @@ class Geant4Data(BundlePackage):
# For clarity, declare deps on a Major-Minor version basis as
# they generally don't change on the patch level
# Can move to declaring on a dataset basis if needed
+ # geant4@10.7.X
+ depends_on("g4ndl@4.6", when='@10.7.0:10.7.9999')
+ depends_on("g4emlow@7.13", when='@10.7.0:10.7.9999')
+ depends_on("g4photonevaporation@5.7", when='@10.7.0:10.7.9999')
+ depends_on("g4radioactivedecay@5.6", when='@10.7.0:10.7.9999')
+ depends_on("g4particlexs@3.1.1", when='@10.7.1:10.7.9999')
+ depends_on("g4particlexs@3.1", when='@10.7.0')
+ depends_on("g4pii@1.3", when='@10.7.0:10.7.9999')
+ depends_on("g4realsurface@2.2", when='@10.7.0:10.7.9999')
+ depends_on("g4saiddata@2.0", when='@10.7.0:10.7.9999')
+ depends_on("g4abla@3.1", when='@10.7.0:10.7.9999')
+ depends_on("g4incl@1.0", when='@10.7.0:10.7.9999')
+ depends_on("g4ensdfstate@2.3", when='@10.7.0:10.7.9999')
+
# geant4@10.6.X
depends_on("g4ndl@4.6", when='@10.6.0:10.6.9999')
depends_on("g4emlow@7.9", when='@10.6.0')
diff --git a/var/spack/repos/builtin/packages/geant4-vmc/package.py b/var/spack/repos/builtin/packages/geant4-vmc/package.py
index 8a5adc7c43..18fad7eed2 100644
--- a/var/spack/repos/builtin/packages/geant4-vmc/package.py
+++ b/var/spack/repos/builtin/packages/geant4-vmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,13 +9,16 @@ from spack import *
class Geant4Vmc(CMakePackage):
"""Geant4 VMC implements the Virtual Monte Carlo (VMC) for Geant4."""
- homepage = "http://github.com/vmc-project/geant4_vmc"
- url = "http://github.com/vmc-project/geant4_vmc/archive/v5-1-p1.tar.gz"
- git = "http://github.com/vmc-project/geant4_vmc.git"
+ homepage = "https://github.com/vmc-project/geant4_vmc"
+ url = "https://github.com/vmc-project/geant4_vmc/archive/v5-1-p1.tar.gz"
+ git = "https://github.com/vmc-project/geant4_vmc.git"
+
+ tags = ['hep']
maintainer = ['wdconinc']
version('master', branch='master')
+ version('5-3', sha256='22f58530963988380509a7741ad6b3dde21806f3862fb55c11cc27f25d3d3c2d')
version('5-2', sha256='5bd0e4a4f938048b35724f06075952ecfbc8a97ffc979630cfe2788323845b13')
version('5-1-p1', sha256='2e3e4705134ea464e993156f71d478cb7d3817f5b6026bf8d9a37d32ec97590b')
version('5-1', sha256='ede71f360397dc4d045ec0968acf23b564fa81059c94eb40942b552eea8b5e00')
diff --git a/var/spack/repos/builtin/packages/geant4/package.py b/var/spack/repos/builtin/packages/geant4/package.py
index 8f5d3c18f2..02fbe9fc1e 100644
--- a/var/spack/repos/builtin/packages/geant4/package.py
+++ b/var/spack/repos/builtin/packages/geant4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,10 +13,15 @@ class Geant4(CMakePackage):
science."""
homepage = "http://geant4.cern.ch/"
- url = "https://gitlab.cern.ch/geant4/geant4/-/archive/v10.6.0/geant4-v10.6.0.tar.gz"
+ url = "https://gitlab.cern.ch/geant4/geant4/-/archive/v10.7.1/geant4-v10.7.1.tar.gz"
+
+ tags = ['hep']
maintainers = ['drbenmorgan']
+ version('10.7.1', sha256='2aa7cb4b231081e0a35d84c707be8f35e4edc4e97aad2b233943515476955293')
+ version('10.7.0', sha256='c991a139210c7f194720c900b149405090058c00beb5a0d2fac5c40c42a262d4')
+ version('10.6.3', sha256='bf96d6d38e6a0deabb6fb6232eb00e46153134da645715d636b9b7b4490193d3')
version('10.6.2', sha256='e381e04c02aeade1ed8cdd9fdbe7dcf5d6f0f9b3837a417976b839318a005dbd')
version('10.6.1', sha256='4fd64149ae26952672a81ce5579d3806fda4bd251d486897093ac57633a42b7e')
version('10.6.0', sha256='eebe6a170546064ff81ab3b00f513ccd1d4122a026514982368d503ac55a4ee4')
@@ -43,6 +48,9 @@ class Geant4(CMakePackage):
depends_on('cmake@3.5:', type='build')
depends_on('cmake@3.8:', type='build', when='@10.6.0:')
+ depends_on('geant4-data@10.7.1', when='@10.7.1')
+ depends_on('geant4-data@10.7.0', when='@10.7.0')
+ depends_on('geant4-data@10.6.3', when='@10.6.3')
depends_on('geant4-data@10.6.2', when='@10.6.2')
depends_on('geant4-data@10.6.1', when='@10.6.1')
depends_on('geant4-data@10.6.0', when='@10.6.0')
@@ -58,17 +66,22 @@ class Geant4(CMakePackage):
depends_on('python@3:', when='+python')
extends('python', when='+python')
conflicts('+python', when='@:10.6.1',
- msg='Geant4 <= 10.6.1 cannont be built with Python bindings')
+ msg='Geant4 <= 10.6.1 cannot be built with Python bindings')
for std in _cxxstd_values:
# CLHEP version requirements to be reviewed
+ depends_on('clhep@2.4.4.0: cxxstd=' + std,
+ when='@10.7.0: cxxstd=' + std)
+
depends_on('clhep@2.3.3.0: cxxstd=' + std,
- when='@10.3.3: cxxstd=' + std)
+ when='@10.3.3:10.6.99 cxxstd=' + std)
# Spack only supports Xerces-c 3 and above, so no version req
depends_on('xerces-c netaccessor=curl cxxstd=' + std, when='cxxstd=' + std)
# Vecgeom specific versions for each Geant4 version
+ depends_on('vecgeom@1.1.8 cxxstd=' + std,
+ when='@10.7.0: +vecgeom cxxstd=' + std)
depends_on('vecgeom@1.1.5 cxxstd=' + std,
when='@10.6.0:10.6.99 +vecgeom cxxstd=' + std)
depends_on('vecgeom@1.1.0 cxxstd=' + std,
@@ -105,8 +118,7 @@ class Geant4(CMakePackage):
# Core options
options = [
- '-DGEANT4_BUILD_CXXSTD=c++{0}'.format(
- self.spec.variants['cxxstd'].value),
+ self.define_from_variant('GEANT4_BUILD_CXXSTD', 'cxxstd'),
'-DGEANT4_USE_SYSTEM_CLHEP=ON',
'-DGEANT4_USE_SYSTEM_EXPAT=ON',
'-DGEANT4_USE_SYSTEM_ZLIB=ON',
@@ -115,6 +127,11 @@ class Geant4(CMakePackage):
'-DXERCESC_ROOT_DIR={0}'.format(spec['xerces-c'].prefix)
]
+ # Don't install the package cache file as Spack will set
+ # up CMAKE_PREFIX_PATH etc for the dependencies
+ if spec.version > Version('10.5.99'):
+ options.append('-DGEANT4_INSTALL_PACKAGE_CACHE=OFF')
+
# Multithreading
options.append(self.define_from_variant('GEANT4_BUILD_MULTITHREADED',
'threads'))
diff --git a/var/spack/repos/builtin/packages/gearshifft/gearshifft-v0.4.0-cmake-variable-name.patch b/var/spack/repos/builtin/packages/gearshifft/gearshifft-v0.4.0-cmake-variable-name.patch
new file mode 100644
index 0000000000..1340096a2b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gearshifft/gearshifft-v0.4.0-cmake-variable-name.patch
@@ -0,0 +1,26 @@
+diff --git a/cmake/init_build_type.cmake b/cmake/init_build_type.cmake
+index c826f5d..131c77b 100644
+--- a/cmake/init_build_type.cmake
++++ b/cmake/init_build_type.cmake
+@@ -1,9 +1,9 @@
+ # Default build type to use if none was specified
+-if(NOT DEFINED CMAKE_DEFAULT_BUILD_TYPE)
+- set(CMAKE_DEFAULT_BUILD_TYPE "Release")
++if(NOT DEFINED GEARSHIFFT_DEFAULT_BUILD_TYPE)
++ set(GEARSHIFFT_DEFAULT_BUILD_TYPE "Release")
+ endif()
+
+-set(CMAKE_BUILD_TYPE ${CMAKE_DEFAULT_BUILD_TYPE} CACHE STRING "Build type")
++set(CMAKE_BUILD_TYPE ${GEARSHIFFT_DEFAULT_BUILD_TYPE} CACHE STRING "Build type")
+ # Set the possible values of build type for cmake-gui
+ set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
+ "Debug"
+@@ -14,6 +14,6 @@ set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
+
+ # sets default build type if none was specified
+ if(NOT CMAKE_BUILD_TYPE)
+- message(STATUS "No build type selected, default to ${CMAKE_DEFAULT_BUILD_TYPE}")
+- set(CMAKE_BUILD_TYPE ${CMAKE_DEFAULT_BUILD_TYPE} CACHE STRING "Build type" FORCE)
++ message(STATUS "No build type selected, default to ${GEARSHIFFT_DEFAULT_BUILD_TYPE}")
++ set(CMAKE_BUILD_TYPE ${GEARSHIFFT_DEFAULT_BUILD_TYPE} CACHE STRING "Build type" FORCE)
+ endif()
diff --git a/var/spack/repos/builtin/packages/gearshifft/package.py b/var/spack/repos/builtin/packages/gearshifft/package.py
index 2222db91c7..8959b5eb0a 100644
--- a/var/spack/repos/builtin/packages/gearshifft/package.py
+++ b/var/spack/repos/builtin/packages/gearshifft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,14 @@ class Gearshifft(CMakePackage):
homepage = "https://github.com/mpicbg-scicomp/gearshifft"
url = "https://github.com/mpicbg-scicomp/gearshifft/archive/v0.2.1-lw.tar.gz"
- maintainers = ['ax3l']
+ maintainers = ['zyzzyxdonta']
- version('0.2.1-lw', sha256='04ba7401615ab29a37089c0dce8580270c0c4aa1ba328c9d438d6e4f163899c5')
+ version('0.4.0', sha256='15b9e4bfa1d9b4fe4ae316f289c67b7be0774cdada5bd7310df4d0e026d9d227')
+
+ # gearshifft used the variable name `CMAKE_DEFAULT_BUILD_TYPE` which was
+ # later introduced by CMake leading to an error in newer CMake versions.
+ # This patch renames the variable to `GEARSHIFFT_DEFAULT_BUILD_TYPE`.
+ patch('gearshifft-v0.4.0-cmake-variable-name.patch', when='@0.4.0')
variant('cufft', default=True,
description='Compile gearshifft_cufft')
@@ -26,32 +31,34 @@ class Gearshifft(CMakePackage):
description='use OpenMP parallel fftw libraries')
# variant('hcfft', default=True,
# description='Not implemented yet')
+ variant('mkl', default=True,
+ description='Compile gearshifft_fftwwrappers')
+ variant('rocfft', default=True,
+ description='Compile gearshifft_rocfft')
# depends_on C++14 compiler, e.g. GCC 5.0+
depends_on('cmake@2.8.0:', type='build')
- depends_on('boost@1.56.0:')
+ depends_on('boost@1.59.0:')
depends_on('cuda@8.0:', when='+cufft')
depends_on('opencl@1.2:', when='+clfft')
depends_on('clfft@2.12.0:', when='+clfft')
depends_on('fftw@3.3.4:~mpi~openmp', when='+fftw~openmp')
depends_on('fftw@3.3.4:~mpi+openmp', when='+fftw+openmp')
+ depends_on('intel-mkl threads=openmp', when='+mkl')
+ depends_on('rocfft', when='+rocfft')
def cmake_args(self):
spec = self.spec
args = [
- '-DGEARSHIFFT_HCFFT:BOOL=OFF',
- '-DGEARSHIFFT_FFTW_PTHREADS:BOOL=ON',
- '-DGEARSHIFFT_CLFFT:BOOL=OFF'
+ self.define('GEARSHIFFT_FLOAT16_SUPPORT', False),
+ self.define('GEARSHIFFT_BACKEND_HCFFT', False),
+ self.define_from_variant('GEARSHIFFT_BACKEND_FFTW', 'fftw'),
+ self.define('GEARSHIFFT_BACKEND_FFTW_PTHREADS', '~openmp' in spec),
+ self.define_from_variant('GEARSHIFFT_BACKEND_FFTW_OPENMP', 'openmp'),
+ self.define_from_variant('GEARSHIFFT_BACKEND_CUFFT', 'cufft'),
+ self.define_from_variant('GEARSHIFFT_BACKEND_CLFFT', 'clfft'),
+ self.define_from_variant('GEARSHIFFT_BACKEND_FFTWWRAPPERS', 'mkl'),
+ self.define_from_variant('GEARSHIFFT_BACKEND_ROCFFT', 'rocfft')
]
- args.extend([
- '-DGEARSHIFFT_FFTW:BOOL={0}'.format(
- 'ON' if '+fftw' in spec else 'OFF'),
- '-DGEARSHIFFT_FFTW_OPENMP:BOOL={0}'.format(
- 'ON' if '+openmp' in spec else 'OFF'),
- '-DGEARSHIFFT_CUFFT:BOOL={0}'.format(
- 'ON' if '+cufft' in spec else 'OFF'),
- '-DGEARSHIFFT_CLFFT:BOOL={0}'.format(
- 'ON' if '+clfft' in spec else 'OFF')
- ])
return args
diff --git a/var/spack/repos/builtin/packages/gemmlowp/package.py b/var/spack/repos/builtin/packages/gemmlowp/package.py
index 67dd3d7b07..6fa31fe551 100644
--- a/var/spack/repos/builtin/packages/gemmlowp/package.py
+++ b/var/spack/repos/builtin/packages/gemmlowp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/genemark-et/package.py b/var/spack/repos/builtin/packages/genemark-et/package.py
index efa09e657e..962b557ffb 100644
--- a/var/spack/repos/builtin/packages/genemark-et/package.py
+++ b/var/spack/repos/builtin/packages/genemark-et/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,18 +18,26 @@ class GenemarkEt(Package):
http://spack.readthedocs.io/en/latest/mirrors.html"""
homepage = "http://topaz.gatech.edu/GeneMark"
+ manual_download = True
+ version('4.65', sha256='62ea2dfa1954ab25edcc118dbeaeacf15924274fb9ed47bc54716cfd15ad04fe')
version('4.46', sha256='856b0b6c7cbd12835e140ff04ecd9124376348efd65f76bfd8b8e08c1834eac0')
version('4.38', sha256='cee3bd73d331be44159eac15469560d0b07ffa2c98ac764c37219e1f3b7d3146')
depends_on('perl', type=('build', 'run'))
depends_on('perl-yaml', type=('build', 'run'))
depends_on('perl-hash-merge', type=('build', 'run'))
- depends_on('perl-logger-simple', type=('build', 'run'))
depends_on('perl-parallel-forkmanager', type=('build', 'run'))
+ depends_on('perl-logger-simple', when='@:4.46', type=('build', 'run'))
+ depends_on('perl-mce', when='@4.65:', type=('build', 'run'))
+ depends_on('perl-thread-queue', when='@4.65:', type=('build', 'run'))
+ depends_on('perl-threads', when='@4.65:', type=('build', 'run'))
def url_for_version(self, version):
- return "file://{0}/gm_et_linux_64.tar.gz".format(os.getcwd())
+ if version >= Version('4.65'):
+ return "file://{0}/gmes_linux_64.tar.gz".format(os.getcwd())
+ else:
+ return "file://{0}/gm_et_linux_64.tar.gz".format(os.getcwd())
def install(self, spec, prefix):
mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin/packages/genesis/fj_compiler.patch b/var/spack/repos/builtin/packages/genesis/fj_compiler.patch
new file mode 100644
index 0000000000..e71fc33855
--- /dev/null
+++ b/var/spack/repos/builtin/packages/genesis/fj_compiler.patch
@@ -0,0 +1,342 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -124,11 +124,7 @@ AC_PROG_F77($genesis_default_fc)
+ # check actual compiler
+ AC_MSG_CHECKING([for actual compiler])
+
+-if test x"${FC}" = x"mpifrtpx"; then
+- VER_OPT="-V"
+-else
+- VER_OPT="--version"
+-fi
++VER_OPT="--version"
+
+ fc_ver_info=$(${FC} -E ${VER_OPT})
+ for vtok in ${fc_ver_info} ; do
+@@ -158,9 +154,13 @@ for vtok in ${fc_ver_info} ; do
+ done
+
+ if test -z "${FC_ACT}"; then
+- FC_ACT=${FC}
++ FC_ACT=`basename ${FC}`
+ fi
+
++
++
++
++
+ AC_MSG_RESULT([$FC_ACT])
+
+ version_warning=yes
+@@ -256,7 +256,7 @@ for vtok in ${cc_ver_info} ; do
+ done
+
+ if test -z "${CC_ACT}"; then
+- CC_ACT=${CC}
++ CC_ACT=`basename ${CC}`
+ fi
+
+ AC_MSG_RESULT([$CC_ACT])
+@@ -322,18 +322,12 @@ if test x"${enable_openmp}" = x"yes"; th
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ OPT_OPENMP="-mp"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
+ OPT_OPENMP="-Kopenmp"
+
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
+ OPT_OPENMP="-Kopenmp"
+
+- elif test x"${FC_ACT}" = x"frt"; then
+- OPT_OPENMP="-KOMP"
+-
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- OPT_OPENMP="-KOMP"
+-
+ fi
+ fi
+
+@@ -439,7 +433,8 @@ fi
+ AC_ARG_ENABLE([parallel_IO],
+ [AS_HELP_STRING([--enable-parallel_IO], [enable parallel_IO (defalt: no)])],
+ [], [enable_parallel_IO=no])
+-if test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"mpifrtpx"; then
++if test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"mpifrtpx" -o \
++ x"${FC_ACT}" = x"frt" -o x"${FC_ACT}" = x"mpifrt"; then
+ enable_parallel_IO=no
+ fi
+ #if test x"${mainly_single}" = x"yes"; then
+@@ -742,22 +737,16 @@ else
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ FCFLAGS="-O2 -fastsse -Mipa=fast,inline -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- FCFLAGS="-m -Kvisimpact -Kocl -Kswp"
+-
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FCFLAGS="-m -Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
+- FCFLAGS_FFTE_KERNEL_FPP__PGI__SP=" -m -Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
+- FCFLAGS_FPP__PGI_NOOPT="-m -Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_PAIRLIST="-m -Kocl -Kfast,openmp,parallel,simd=2,nounroll,swp_strong,noalias=s -Nlst=t -Koptmsg=2"
+- FCFLAGS_DIHEDRAL="-m -xsp_energy_dihedrals_mod.calculate_dihedral_2 -Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS=" -m -Kocl -Kfast,openmp,parallel,simd=2,swp_strong,noalias=s -Nlst=t -Koptmsg=2"
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ FCFLAGS="-Kocl"
+
+- elif test x"${FC_ACT}" = x"frt"; then
+- FCFLAGS="-m -Am -Kfast"
+-
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- FCFLAGS="-m -Am -Kfast"
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ FCFLAGS="-Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
++ FCFLAGS_FFTE_KERNEL_FPP__PGI__SP="-Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
++ FCFLAGS_FPP__PGI_NOOPT="-Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_PAIRLIST="-Kocl -Kfast,openmp,parallel,simd=2,nounroll,swp_strong,noalias=s -Nlst=t -Koptmsg=2"
++ FCFLAGS_DIHEDRAL="-xsp_energy_dihedrals_mod.calculate_dihedral_2 -Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS="-Kocl -Kfast,openmp,parallel,simd=2,swp_strong,noalias=s -Nlst=t -Koptmsg=2"
+
+ fi
+
+@@ -776,22 +765,16 @@ else
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ FCFLAGS="-m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- FCFLAGS="-m -Kocl "
+-
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FCFLAGS=" -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS=" -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_PAIRLIST="-m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_FFTE_KERNEL_FPP__PGI__SP=" -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_FPP__PGI_NOOPT=" -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_DIHEDRAL=" -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+-
+- elif test x"${FC_ACT}" = x"frt"; then
+- FCFLAGS="-m "
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ FCFLAGS="-Kocl "
+
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- FCFLAGS="-m "
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ FCFLAGS=" -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_PAIRLIST="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_FFTE_KERNEL_FPP__PGI__SP="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_FPP__PGI_NOOPT="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_DIHEDRAL="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+
+ fi
+
+@@ -813,22 +796,16 @@ else
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ FCFLAGS="-g -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- FCFLAGS="-g -m -Kocl -Kopenmp"
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ FCFLAGS="-g -Kocl -Kopenmp"
+
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FCFLAGS=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_PAIRLIST=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_FFTE_KERNEL_FPP__PGI__SP=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_FPP__PGI_NOOPT=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_DIHEDRAL=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+-
+- elif test x"${FC_ACT}" = x"frt"; then
+- FCFLAGS="-g -m "
+-
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- FCFLAGS="-g -m "
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ FCFLAGS=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_PAIRLIST=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_FFTE_KERNEL_FPP__PGI__SP=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_FPP__PGI_NOOPT=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_DIHEDRAL=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+
+ fi
+
+@@ -850,23 +827,23 @@ else
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ FCFLAGS="-O0 -g -m64 -Msmartalloc=huge"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
+ # FCFLAGS="-O0 -g -Hs -Hu -Ha"
+ FCFLAGS="-O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FCFLAGS=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_PAIRLIST=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+- FCFLAGS_FFTE_KERNEL_FPP__PGI__SP=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+- FCFLAGS_FPP__PGI_NOOPT=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+- FCFLAGS_DIHEDRAL=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ FCFLAGS=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_PAIRLIST=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
++ FCFLAGS_FFTE_KERNEL_FPP__PGI__SP=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
++ FCFLAGS_FPP__PGI_NOOPT=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
++ FCFLAGS_DIHEDRAL=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+
+- elif test x"${FC_ACT}" = x"frt"; then
+- FCFLAGS="-O0 -g"
++ #elif test x"${FC_ACT}" = x"frt"; then
++ # FCFLAGS="-O0 -g"
+
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- FCFLAGS="-O0 -g"
++ #elif test x"${FC_ACT}" = x"mpifrt"; then
++ # FCFLAGS="-O0 -g"
+
+ fi
+ else
+@@ -930,17 +907,11 @@ else
+ elif test x"${CC_ACT}" = x"pgcc"; then
+ CFLAGS="-O3 -fastsse -Mipa=fast,inline -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+- elif test x"${CC_ACT}" = x"fccpx"; then
+- CFLAGS="-m -Kvisimpact -Kocl -Kswp"
+-
+- elif test x"${CC_ACT}" = x"mpifccpx"; then
+- CFLAGS="-m -Kvisimpact -Kocl -Kswp"
++ elif test x"${CC_ACT}" = x"fccpx" -o x"${CC_ACT}" = x"fcc"; then
++ CFLAGS="-Kocl"
+
+- elif test x"${CC_ACT}" = x"fcc"; then
+- CFLAGS="-m -Am -Kfast"
+-
+- elif test x"${CC_ACT}" = x"mpifcc"; then
+- CFLAGS="-m -Am -Kfast"
++ elif test x"${CC_ACT}" = x"mpifccpx" -o x"${CC_ACT}" = x"mpifcc"; then
++ CFLAGS="-Kocl"
+
+ fi
+
+@@ -959,17 +930,11 @@ else
+ elif test x"${CC_ACT}" = x"pgcc"; then
+ CFLAGS="-fastsse -Mipa=fast,inline -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+- elif test x"${CC_ACT}" = x"fccpx"; then
+- CFLAGS="-m -Kocl"
+-
+- elif test x"${CC_ACT}" = x"mpifccpx"; then
+- CFLAGS="-m -Kocl"
+-
+- elif test x"${CC_ACT}" = x"fcc"; then
+- CFLAGS="-m -Am -Kfast"
++ elif test x"${CC_ACT}" = x"fccpx" -o x"${CC_ACT}" = x"fcc"; then
++ CFLAGS="-Kocl"
+
+- elif test x"${CC_ACT}" = x"mpifcc"; then
+- CFLAGS="-m -Am -Kfast"
++ elif test x"${CC_ACT}" = x"mpifccpx" -o x"${CC_ACT}" = x"mpifcc"; then
++ CFLAGS="-Kocl"
+
+ fi
+
+@@ -991,17 +956,11 @@ else
+ elif test x"${CC_ACT}" = x"pgcc"; then
+ CFLAGS="-g -fastsse -Mipa=fast,inline -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+- elif test x"${CC_ACT}" = x"fccpx"; then
+- CFLAGS="-g -m -Kocl"
++ elif test x"${CC_ACT}" = x"fccpx" -o x"${CC_ACT}" = x"fcc"; then
++ CFLAGS="-g -Kocl"
+
+- elif test x"${CC_ACT}" = x"mpifccpx"; then
+- CFLAGS="-g -m -Kocl"
+-
+- elif test x"${CC_ACT}" = x"fcc"; then
+- CFLAGS="-g -m -Am -Kfast"
+-
+- elif test x"${CC_ACT}" = x"mpifcc"; then
+- CFLAGS="-g -m -Am -Kfast"
++ elif test x"${CC_ACT}" = x"mpifccpx" -o x"${CC_ACT}" = x"mpifcc"; then
++ CFLAGS="-g -Kocl"
+
+ fi
+
+@@ -1023,19 +982,13 @@ else
+ elif test x"${CC_ACT}" = x"pgcc"; then
+ CFLAGS="-O0 -g -m64 -Msmartalloc=huge"
+
+- elif test x"${CC_ACT}" = x"fccpx"; then
++ elif test x"${CC_ACT}" = x"fccpx" -o x"${CC_ACT}" = x"fcc"; then
+ # CFLAGS="-O0 -g -Hs -Hu -Ha"
+ CFLAGS="-O0 -g -Kocl"
+
+- elif test x"${CC_ACT}" = x"mpifccpx"; then
++ elif test x"${CC_ACT}" = x"mpifccpx" -o x"${CC_ACT}" = x"mpifcc"; then
+ CFLAGS="-O0 -g -Kocl"
+
+- elif test x"${CC_ACT}" = x"fcc"; then
+- CFLAGS="-O0 -g"
+-
+- elif test x"${CC_ACT}" = x"mpifcc"; then
+- CFLAGS="-O0 -g"
+-
+ fi
+
+ fi
+@@ -1056,17 +1009,11 @@ if test -z "${LDFLAGS}"; then
+ LDFLAGS=""
+ #LDFLAGS="-march=native -fuse-linker-plugin"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- LDFLAGS="-SSL2 -Kparallel -Nfjomplib"
+-
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- LDFLAGS="-SSL2BLAMP -Kparallel -Nfjomplib"
+-
+- elif test x"${FC_ACT}" = x"frt"; then
+- LDFLAGS="-KSPARC64VII,V9FMADD -SSL2"
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ LDFLAGS="-Kparallel -Kopenmp -Nlibomp"
+
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- LDFLAGS="-KSPARC64VII,V9FMADD -SSL2"
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ LDFLAGS="-Kparallel -Kopenmp -Nlibomp"
+
+ fi
+ fi
+@@ -1101,7 +1048,9 @@ AC_SUBST(PPFLAGS)
+
+ # USEKCOMP
+ AM_CONDITIONAL(USEKCOMP, test x"${FC_ACT}" = x"frtpx" -o \
+- x"${FC_ACT}" = x"mpifrtpx")
++ x"${FC_ACT}" = x"mpifrtpx" -o \
++ x"${FC_ACT}" = x"frt" -o \
++ x"${FC_ACT}" = x"mpifrt")
+
+ # KCOMP preprocess macro
+ AC_ARG_ENABLE([pktimer],
+@@ -1130,7 +1079,8 @@ AC_ARG_WITH([fj_timer_2],
+ [use FJ-timer in main loop (default: not use)])],
+ [], [with_fj_timer_2=no])
+
+-if test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"mpifrtpx"; then
++if test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"mpifrtpx" -o \
++ x"${FC_ACT}" = x"frt" -o x"${FC_ACT}" = x"mpifrt"; then
+ AC_DEFINE(KCOMP, 1, [defined if K-computer compiler is used.])
+ DEFINED_VARIABLES+=" -DKCOMP"
+
+@@ -1148,7 +1098,7 @@ if test x"${FC_ACT}" = x"frtpx" -o x"${F
+ mainly_pktimer=no
+ if test x"${enable_pktimer}" = x"yes"; then
+
+- if test x"${FC_ACT}" = x"mpifrtpx"; then
++ if test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
+ AC_DEFINE(PKTIMER, 1, [defined if PKTIMER is used.])
+ DEFINED_VARIABLES+=" -DPKTIMER"
+ mainly_pktimer=yes
diff --git a/var/spack/repos/builtin/packages/genesis/fj_compiler_1.5.1.patch b/var/spack/repos/builtin/packages/genesis/fj_compiler_1.5.1.patch
new file mode 100644
index 0000000000..0bdbd4f58e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/genesis/fj_compiler_1.5.1.patch
@@ -0,0 +1,286 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -90,11 +90,7 @@ AC_PROG_F77($genesis_default_fc)
+ # check actual compiler
+ AC_MSG_CHECKING([for actual compiler])
+
+-if test x"${FC}" = x"mpifrtpx"; then
+- VER_OPT="-V"
+-else
+- VER_OPT="--version"
+-fi
++VER_OPT="--version"
+
+ fc_ver_info=$(${FC} -E ${VER_OPT})
+ for vtok in ${fc_ver_info} ; do
+@@ -124,7 +120,7 @@ for vtok in ${fc_ver_info} ; do
+ done
+
+ if test -z "${FC_ACT}"; then
+- FC_ACT=${FC}
++ FC_ACT=`basename ${FC}`
+ fi
+
+ AC_MSG_RESULT([$FC_ACT])
+@@ -228,7 +224,7 @@ for vtok in ${cc_ver_info} ; do
+ done
+
+ if test -z "${CC_ACT}"; then
+- CC_ACT=${CC}
++ CC_ACT=`basename ${CC}`
+ fi
+
+ AC_MSG_RESULT([$CC_ACT])
+@@ -294,18 +290,12 @@ if test x"${enable_openmp}" = x"yes"; th
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ OPT_OPENMP="-mp"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
+ OPT_OPENMP="-Kopenmp"
+
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
+ OPT_OPENMP="-Kopenmp"
+
+- elif test x"${FC_ACT}" = x"frt"; then
+- OPT_OPENMP="-KOMP"
+-
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- OPT_OPENMP="-KOMP"
+-
+ fi
+ fi
+
+@@ -411,7 +401,8 @@ fi
+ AC_ARG_ENABLE([parallel_IO],
+ [AS_HELP_STRING([--enable-parallel_IO], [enable parallel_IO (defalt: yes(intel)/no(fujitsu))])],
+ [], [enable_parallel_IO=yes])
+-if test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"mpifrtpx"; then
++if test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"mpifrtpx" -o \
++ x"${FC_ACT}" = x"frt" -o x"${FC_ACT}" = x"mpifrt"; then
+ enable_parallel_IO=no
+ fi
+ if test x"${enable_single}" = x"yes"; then
+@@ -639,19 +630,13 @@ else
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ FCFLAGS="-O2 -fastsse -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge -Mbackslash"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- FCFLAGS="-m -Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_NONBOND="-m -O3 -Kocl -Kfsimple,noreduction,fp_contract,fp_relaxed,fz,ilfunc,mfunc,omitfp,simd_packed_promotion,openmp,parallel,simd=2 -Nlst=t -Koptmsg=2"
+-
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FCFLAGS="-m -Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_NONBOND="-m -O3 -Kocl -Kfsimple,noreduction,fp_contract,fp_relaxed,fz,ilfunc,mfunc,omitfp,simd_packed_promotion,openmp,parallel,simd=2 -Nlst=t -Koptmsg=2"
+-
+- elif test x"${FC_ACT}" = x"frt"; then
+- FCFLAGS="-m -Am -Kfast"
+-
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- FCFLAGS="-m -Am -Kfast"
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ FCFLAGS="-Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_NONBOND="-O3 -Kocl -Kfsimple,noreduction,fp_contract,fp_relaxed,fz,ilfunc,mfunc,omitfp,simd_packed_promotion,openmp,parallel,simd=2 -Nlst=t -Koptmsg=2"
++
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ FCFLAGS="-Kocl -Kfast,openmp,parallel,simd=2,noalias -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_NONBOND="-O3 -Kocl -Kfsimple,noreduction,fp_contract,fp_relaxed,fz,ilfunc,mfunc,omitfp,simd_packed_promotion,openmp,parallel,simd=2 -Nlst=t -Koptmsg=2"
+
+ fi
+
+@@ -670,20 +655,14 @@ else
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ FCFLAGS="-m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge -Mbackslash"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- FCFLAGS="-m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_NONBOND="-m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+-
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ FCFLAGS="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_NONBOND="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FCFLAGS="-m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_NONBOND="-m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+
+- elif test x"${FC_ACT}" = x"frt"; then
+- FCFLAGS="-m "
+-
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- FCFLAGS="-m "
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ FCFLAGS="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_NONBOND="-Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+
+ fi
+
+@@ -705,19 +684,13 @@ else
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ FCFLAGS="-g -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge -Mbackslash"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- FCFLAGS="-g -m -Kocl -Kopenmp"
+- FCFLAGS_KERNELS_NONBOND=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+-
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FCFLAGS=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_NONBOND=" -g -m -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+-
+- elif test x"${FC_ACT}" = x"frt"; then
+- FCFLAGS="-g -m "
+-
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- FCFLAGS="-g -m "
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ FCFLAGS="-g -Kocl -Kopenmp"
++ FCFLAGS_KERNELS_NONBOND=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ FCFLAGS=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_NONBOND=" -g -Kocl -Kopenmp -Nlst=t -Koptmsg=2"
+
+ fi
+
+@@ -739,18 +712,12 @@ else
+ elif test x"${FC_ACT}" = x"pgf90"; then
+ FCFLAGS="-O0 -g -m64 -Msmartalloc=huge"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- FCFLAGS=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+- FCFLAGS_KERNELS_NONBOND=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+-
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- FCFLAGS_KERNELS_NONBOND=" -O0 -g -m -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ FCFLAGS=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
++ FCFLAGS_KERNELS_NONBOND=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+
+- elif test x"${FC_ACT}" = x"frt"; then
+- FCFLAGS="-O0 -g"
+-
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- FCFLAGS="-O0 -g"
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ FCFLAGS_KERNELS_NONBOND=" -O0 -g -Kocl -Kopenmp -Hs -Hu -Ha -Nlst=t -Koptmsg=2"
+
+ fi
+ else
+@@ -804,16 +771,16 @@ else
+ CFLAGS="-O3 -fastsse -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+ elif test x"${CC_ACT}" = x"fccpx"; then
+- CFLAGS="-m -Kvisimpact -Kocl -Kswp"
++ CFLAGS="-Kvisimpact -Kocl -Kswp"
+
+ elif test x"${CC_ACT}" = x"mpifccpx"; then
+- CFLAGS="-m -Kvisimpact -Kocl -Kswp"
++ CFLAGS="-Kvisimpact -Kocl -Kswp"
+
+ elif test x"${CC_ACT}" = x"fcc"; then
+- CFLAGS="-m -Am -Kfast"
++ CFLAGS="-Am -Kfast"
+
+ elif test x"${CC_ACT}" = x"mpifcc"; then
+- CFLAGS="-m -Am -Kfast"
++ CFLAGS="-Am -Kfast"
+
+ fi
+
+@@ -833,16 +800,16 @@ else
+ CFLAGS="-fastsse -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+ elif test x"${CC_ACT}" = x"fccpx"; then
+- CFLAGS="-m -Kocl"
++ CFLAGS=" -Kocl"
+
+ elif test x"${CC_ACT}" = x"mpifccpx"; then
+- CFLAGS="-m -Kocl"
++ CFLAGS=" -Kocl"
+
+ elif test x"${CC_ACT}" = x"fcc"; then
+- CFLAGS="-m -Am -Kfast"
++ CFLAGS=" -Am -Kfast"
+
+ elif test x"${CC_ACT}" = x"mpifcc"; then
+- CFLAGS="-m -Am -Kfast"
++ CFLAGS=" -Am -Kfast"
+
+ fi
+
+@@ -865,16 +832,16 @@ else
+ CFLAGS="-g -fastsse -m64 -Mflushz -pc 64 -mcmodel=medium -Msmartalloc=huge"
+
+ elif test x"${CC_ACT}" = x"fccpx"; then
+- CFLAGS="-g -m -Kocl"
++ CFLAGS="-g -Kocl"
+
+ elif test x"${CC_ACT}" = x"mpifccpx"; then
+- CFLAGS="-g -m -Kocl"
++ CFLAGS="-g -Kocl"
+
+ elif test x"${CC_ACT}" = x"fcc"; then
+- CFLAGS="-g -m -Am -Kfast"
++ CFLAGS="-g -Am -Kfast"
+
+ elif test x"${CC_ACT}" = x"mpifcc"; then
+- CFLAGS="-g -m -Am -Kfast"
++ CFLAGS="-g -Am -Kfast"
+
+ fi
+
+@@ -928,17 +895,11 @@ if test -z "${LDFLAGS}"; then
+ LDFLAGS=""
+ #LDFLAGS="-march=native -fuse-linker-plugin"
+
+- elif test x"${FC_ACT}" = x"frtpx"; then
+- LDFLAGS="-SSL2 -Kparallel -Nfjomplib"
+-
+- elif test x"${FC_ACT}" = x"mpifrtpx"; then
+- LDFLAGS="-SSL2BLAMP -Kparallel -Nfjomplib"
+-
+- elif test x"${FC_ACT}" = x"frt"; then
+- LDFLAGS="-KSPARC64VII,V9FMADD -SSL2"
++ elif test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"frt"; then
++ LDFLAGS="-Kparallel -Nfjomplib -Nlibomp"
+
+- elif test x"${FC_ACT}" = x"mpifrt"; then
+- LDFLAGS="-KSPARC64VII,V9FMADD -SSL2"
++ elif test x"${FC_ACT}" = x"mpifrtpx" -o x"${FC_ACT}" = x"mpifrt"; then
++ LDFLAGS="-Kparallel -Nfjomplib -Nlibomp"
+
+ fi
+ fi
+@@ -973,10 +934,13 @@ AC_SUBST(PPFLAGS)
+
+ # USEKCOMP
+ AM_CONDITIONAL(USEKCOMP, test x"${FC_ACT}" = x"frtpx" -o \
+- x"${FC_ACT}" = x"mpifrtpx")
++ x"${FC_ACT}" = x"mpifrtpx" -o \
++ x"${FC_ACT}" = x"frt" -o \
++ x"${FC_ACT}" = x"mpifrt")
+
+ # KCOMP preprocess macro
+-if test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"mpifrtpx"; then
++if test x"${FC_ACT}" = x"frtpx" -o x"${FC_ACT}" = x"mpifrtpx" -o \
++ x"${FC_ACT}" = x"frt" -o x"${FC_ACT}" = x"mpifrt"; then
+ AC_DEFINE(KCOMP, 1, [defined if K-computer compiler is used.])
+ DEFINED_VARIABLES+=" -DKCOMP"
+ fi
+@@ -1049,13 +1013,13 @@ if test x"${IS_RICC}" == x"yes"; then
+ if test -n "${RICC_FCFLAGS}"; then
+ FCFLAGS=${RICC_FCFLAGS}
+ else
+- FCFLAGS="-pc -m -omp"
++ FCFLAGS="-pc -omp"
+ fi
+
+ if test -n "${RICC_CFLAGS}"; then
+ CFLAGS=${RICC_CFLAGS}
+ else
+- CFLAGS="-pc -m -omp"
++ CFLAGS="-pc -omp"
+ fi
+
+ if test -n "${RICC_PPFLAGS}"; then
diff --git a/var/spack/repos/builtin/packages/genesis/package.py b/var/spack/repos/builtin/packages/genesis/package.py
new file mode 100644
index 0000000000..3711fa4e9f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/genesis/package.py
@@ -0,0 +1,112 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Genesis(AutotoolsPackage, CudaPackage):
+ """GENESIS is a Molecular dynamics and modeling software
+ for bimolecular systems such as proteins, lipids, glycans,
+ and their complexes.
+ """
+
+ homepage = "https://www.r-ccs.riken.jp/labs/cbrt/"
+ url = "https://www.r-ccs.riken.jp/labs/cbrt/wp-content/uploads/2020/09/genesis-1.5.1.tar.bz2"
+ git = "https://github.com/genesis-release-r-ccs/genesis-2.0.git"
+
+ version("master", branch="master")
+ version(
+ "1.5.1",
+ sha256="62a453a573c36779484b4ffed2dfa56ea03dfe1308d631b33ef03f733259b3ac",
+ url="https://www.r-ccs.riken.jp/labs/cbrt/wp-content/uploads/2020/09/genesis-1.5.1.tar.bz2",
+ )
+
+ resource(
+ when="@1.5.1",
+ name="user_guide",
+ url="https://www.r-ccs.riken.jp/labs/cbrt/wp-content/uploads/2019/10/GENESIS-1.4.0.pdf",
+ sha256="da2c3f8bfa1e93adb992d3cfce09fb45d8d447a94f9a4f884ac834ea7279b9c7",
+ expand=False,
+ placement="doc",
+ )
+
+ variant("openmp", default=True, description="Enable OpenMP.")
+ variant("single", default=False, description="Enable single precision.")
+ variant("hmdisk", default=False, description="Enable huge molecule on hard disk.")
+
+ conflicts("%apple-clang", when="+openmp")
+
+ depends_on("autoconf", type="build", when="@1.5.1 %fj")
+ depends_on("autoconf", type="build", when="@master")
+ depends_on("automake", type="build", when="@1.5.1 %fj")
+ depends_on("automake", type="build", when="@master")
+ depends_on("libtool", type="build", when="@1.5.1 %fj")
+ depends_on("libtool", type="build", when="@master")
+ depends_on("m4", type="build", when="@1.5.1 %fj")
+ depends_on("m4", type="build", when="@master")
+
+ depends_on("mpi", type=("build", "run"))
+ depends_on("lapack")
+ depends_on("python@2.6.9:2.8.0", type=("build", "run"), when="@master")
+
+ patch("fj_compiler.patch", when="@master %fj")
+ patch("fj_compiler_1.5.1.patch", when="@1.5.1 %fj")
+
+ parallel = False
+
+ @property
+ def force_autoreconf(self):
+ # Run autoreconf due to build system patch
+ return self.spec.satisfies("@1.5.1 %fj")
+
+ def configure_args(self):
+ spec = self.spec
+ options = []
+ options.extend(self.enable_or_disable("openmp"))
+ options.extend(self.enable_or_disable("single"))
+ options.extend(self.enable_or_disable("hmdisk"))
+ if "+cuda" in spec:
+ options.append("--enable-gpu")
+ options.append("--with-cuda=%s" % spec["cuda"].prefix)
+ else:
+ options.append("--disable-gpu")
+ if spec.target == "a64fx" and self.spec.satisfies("@master %fj"):
+ options.append("--host=Fugaku")
+ return options
+
+ def setup_build_environment(self, env):
+ env.set("FC", self.spec["mpi"].mpifc, force=True)
+ env.set("F77", self.spec["mpi"].mpif77, force=True)
+ env.set("CC", self.spec["mpi"].mpicc, force=True)
+ env.set("CXX", self.spec["mpi"].mpicxx, force=True)
+ env.set("LAPACK_LIBS", self.spec["lapack"].libs.ld_flags)
+ if "+cuda" in self.spec:
+ cuda_arch = self.spec.variants["cuda_arch"].value
+ cuda_gencode = " ".join(self.cuda_flags(cuda_arch))
+ env.set("NVCCFLAGS", cuda_gencode)
+
+ def install(self, spec, prefix):
+ make("install")
+ install_tree("doc", prefix.share.doc)
+
+ @run_after("install")
+ def cache_test_sources(self):
+ if self.spec.satisfies("@master"):
+ self.cache_extra_test_sources(["tests"])
+
+ def test(self):
+ if self.spec.satisfies("@master"):
+ exe_name = self.spec["python"].command.path
+ test_name = join_path(
+ self.install_test_root, "tests", "regression_test", "test.py"
+ )
+ bin_name = join_path(self.prefix.bin, "spdyn")
+ opts = [
+ test_name,
+ self.spec["mpi"].prefix.bin.mpirun + " -np 8 " + bin_name,
+ ]
+ env["OMP_NUM_THREADS"] = "1"
+ self.run_test(exe_name, options=opts, expected="Passed 53 / 53")
diff --git a/var/spack/repos/builtin/packages/genfit/package.py b/var/spack/repos/builtin/packages/genfit/package.py
new file mode 100644
index 0000000000..d14dce719d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/genfit/package.py
@@ -0,0 +1,40 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Genfit(CMakePackage):
+ """GenFit is an experiment-independent framework for track reconstruction in
+ particle and nuclear physics"""
+
+ homepage = "https://github.com/GenFit/GenFit"
+ url = "https://github.com/GenFit/GenFit/archive/02-00-00.tar.gz"
+ git = "https://github.com/GenFit/GenFit.git"
+
+ maintainers = ['mirguest']
+
+ tags = ["hep"]
+
+ version('master', branch='master')
+ version('02-00-00', sha256='0bfd5dd152ad0573daa4153a731945824e0ce266f844988b6a8bebafb7f2dacc')
+ # Untagged version from 2017-06-23 known to work with root@6.16.00
+ version('b496504a', sha256='e1582b35782118ade08498adc03f3fda01979ff8bed61e0520edae46d7bfe477')
+
+ depends_on('root')
+ depends_on('root@:6.16.00', when='@b496504a')
+ depends_on('eigen')
+
+ def cmake_args(self):
+ args = []
+ # normally, as a cmake package root should be
+ # automatically picked up after 'depends_on'
+ # as it is added to CMAKE_PREFIX_PATH
+ # but genfit cooks its own root cmake config
+ # so this workaround is needed for now.
+ root_prefix = self.spec["root"].prefix
+ args.append('-DROOT_DIR=%s' % root_prefix)
+
+ return args
diff --git a/var/spack/repos/builtin/packages/gengetopt/package.py b/var/spack/repos/builtin/packages/gengetopt/package.py
index 44389fa38a..4404ba26f2 100644
--- a/var/spack/repos/builtin/packages/gengetopt/package.py
+++ b/var/spack/repos/builtin/packages/gengetopt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,6 +25,8 @@ class Gengetopt(AutotoolsPackage):
version('2.21', sha256='355a32310b2fee5e7289d6d6e89eddd13275a7c85a243dc5dd293a6cb5bb047e')
version('2.20', sha256='4c8b3b42cecff579f5f9de5ccad47e0849e0245e325a04ff5985c248141af1a4')
+ depends_on('texinfo', type='build')
+
parallel = False
def url_for_version(self, version):
diff --git a/var/spack/repos/builtin/packages/genie/genie_disable_gopt_with_compiler_check.patch b/var/spack/repos/builtin/packages/genie/genie_disable_gopt_with_compiler_check.patch
new file mode 100644
index 0000000000..a6816045c3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/genie/genie_disable_gopt_with_compiler_check.patch
@@ -0,0 +1,26 @@
+--- src/make/Make.include 2021-03-18 23:20:01.810289245 +0000
++++ src/make/Make.include.new 2021-03-18 23:26:49.319249916 +0000
+@@ -267,21 +267,8 @@
+ # COMPILER OPTIONS
+ #-------------------------------------------------------------------
+
+-ifeq ($(GOPT_WITH_COMPILER),$(filter $(GOPT_WITH_COMPILER),clang clang++))
+- # --clang
+- CXX = clang++
+- CC = clang
+- LD = clang++
+-else
+- ifeq ($(GOPT_WITH_COMPILER),$(filter $(GOPT_WITH_COMPILER),gcc g++))
+- # -- gcc
+- CXX = g++
+- CC = gcc
+- LD = g++
+- else
+- $(error GOPT_WITH_COMPILER not set correctly!)
+- endif
+-endif
++LD=$(CXX)
++
+ #check if we're using clang (complicated because g++ is sometimes a clang alias...)
+ APPLE_CLANG := $(shell $(CXX) -v 2>&1 | sed -n "s/.*clang//p" | cut -d . -f 1)
+ ifneq ($(APPLE_CLANG),) \ No newline at end of file
diff --git a/var/spack/repos/builtin/packages/genie/package.py b/var/spack/repos/builtin/packages/genie/package.py
new file mode 100644
index 0000000000..34b07a4a1e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/genie/package.py
@@ -0,0 +1,168 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+import os
+
+from spack.directives import depends_on, patch, variant, version
+from spack.package import Package
+from spack.util.executable import Executable
+from spack.version import Version
+
+
+class Genie(Package): # Genie doesn"t use Autotools
+ """Genie is a neutrino Monte Carlo Generator."""
+
+ homepage = "https://www.genie-mc.org"
+ url = "https://github.com/GENIE-MC/Generator/archive/R-3_00_06.tar.gz"
+ git = "https://github.com/GENIE-MC/Generator.git"
+
+ tags = ["neutrino", "hep"]
+
+ maintainers = [
+ # maintainer of this recipe, not affliated with the GENIE collaboration
+ "davehadley",
+ ]
+
+ version("master", branch="master")
+ version("3.0.6", sha256="ab56ea85d0c1d09029254365bfe75a1427effa717389753b9e0c1b6c2eaa5eaf")
+ version("3.0.4", sha256="53f034618fef9f7f0e17d1c4ed72743e4bba590e824b795177a1a8a8486c861e")
+ version("3.0.2", sha256="34d6c37017b2387c781aea7bc727a0aac0ef45d6b3f3982cc6f3fc82493f65c3")
+ version("3.0.0", sha256="3953c7d9f1f832dd32dfbc0b9260be59431206c204aec6ab0aa68c01176f2ae6")
+ version("2.12.10", sha256="c8762db3dcc490f80f8a61268f5b964d4d35b80134b622e89fe2307a836f2a0b")
+ version("2.12.8", sha256="7ca169a8d9eda7267d28b76b2f3110552852f8eeae263a03cd5139caacebb4ea")
+ version("2.12.6", sha256="3b450c609875459798ec98e12cf671cc971cbb13345af6d75bd6278d422f3309")
+ version("2.12.4", sha256="19a4a1633b0847a9f16a44e0c74b9c224ca3bb93975aecf108603c22e807517b")
+ version("2.12.2", sha256="cbdc45a739878940dadcaaed575b5cad6b5e7035f29605045b1ca557e6faa6d1")
+ version("2.12.0", sha256="d2b01c80f38d269cb0296b3f2932798ef3f1d51bd130e81274fbfeeb381fac6b")
+ version("2.11.2", sha256="0f4c25d8ceb7513553671643c9cdac5aa98c40fc8594a5ecb25c077c6b36166e")
+ version("2.11.0", sha256="1ebe0eb65d797595413632f1cec1cb2621cb8e8d0384a2843799724a79b1d80c")
+ version("2.10.10", sha256="1dfaadcf1bbaf6e164b612f410c4399301e63497ad6a4891706b1787ac11a7a1")
+ version("2.10.8", sha256="4f6f5af2062e7c505b76e70547ac2ae304a9790c3e9b9592818d8aebeebc8398")
+ version("2.10.6", sha256="d00b4288c886f81459fb2967e539f30315d4385f82d1d3f4330298d313f9a176")
+ version("2.10.4", sha256="df909bf7e1a789ca01794995687da2af803769f0823273a4a3a31678d6d5b0f1")
+ version("2.10.2", sha256="6abe4e0cdb5e8f5beddf0ccdbebc94c175a9f72592b1cbbffe01b88ee3972bf9")
+ version("2.10.0", sha256="17bda900c996b6f4f10a7f6a3be94e56c3b8dcdeb2ef8865ca7f20c5fe725291")
+ version("2.9.0", sha256="8229beb73f65f5af86a77bf141acfbe4a8b68cba9d797aae083a929906f6f2a2")
+ version("2.8.6", sha256="310dc8e0d17a65e6b9773e398250703a3a6f94ceafe94f599ae0f7b3fecf7e6c")
+
+ depends_on("root+pythia6")
+ depends_on("pythia6")
+ depends_on("lhapdf", when="@3:")
+ depends_on("lhapdf5", when="@:2")
+ depends_on("log4cpp")
+ depends_on("libxml2")
+ depends_on("gsl")
+
+ # GENIE does not actually require cmake, but root does.
+ # Spack's concretizer fails with "unsatisfiable constraint" if we don't add this.
+ depends_on("cmake@3:")
+
+ # GENIE Makefile's think that the spack compiler is invalid.
+ # Disables this check.
+ patch("genie_disable_gopt_with_compiler_check.patch", level=0, when="@2.11:")
+
+ # Flags for GENIE"s optional but disabled by default features
+ variant("atmo", default=False,
+ description="Enable GENIE Atmospheric neutrino event generation app")
+ variant("fnal", default=False,
+ description="Enables FNAL experiment-specific event generation app")
+ variant("nucleondecay", default=False,
+ description="Enable GENIE Nucleon decay event generation app")
+ variant("masterclass", default=False,
+ description="Enable GENIE neutrino masterclass app")
+ variant("t2k", default=False, description="Enable T2K-specific generation app")
+ variant("vleextension", default=False,
+ description="Enable GENIE very low energy (1 MeV - 100 MeV) extension")
+
+ phases = ["configure", "build", "install"]
+
+ def url_for_version(self, version):
+ url = "https://github.com/GENIE-MC/Generator/archive/R-{0}.tar.gz"
+ if version >= Version(3):
+ return url.format("{0}_{1:02d}_{2:02d}".format(*version))
+ else:
+ return url.format(version.underscored)
+
+ def setup_build_environment(self, env):
+ env.set("GENIE", self.stage.source_path)
+ return super(Genie, self).setup_build_environment(env)
+
+ def setup_run_environment(self, env):
+ env.set("GENIE", self.prefix)
+ return super(Genie, self).setup_run_environment(env)
+
+ def configure(self, spec, prefix):
+ configure = Executable("./configure")
+ args = self._configure_args(spec, prefix)
+ configure(*args)
+
+ def build(self, spec, prefix):
+ # parallel build is not supported on GENIE 2
+ self._make(parallel=spec.satisfies("@3:"))
+
+ def install(self, spec, prefix):
+ # GENIE make install does not support parallel jobs
+ self._make("install", parallel=False)
+ # GENIE requires these files to be present at runtime, but doesn"t install them
+ # so we must install them ourselves
+ # install_tree function is injected into scope by spack build_environment.py
+ install_tree("config", os.sep.join((prefix, "config")))
+ install_tree("data", os.sep.join((prefix, "data")))
+
+ def _configure_args(self, spec, prefix):
+ args = [
+ "--prefix=" + prefix,
+ "--with-compiler=" + os.environ["CC"],
+ "--with-libxml2-inc={0}{1}libxml2".format(
+ spec["libxml2"].prefix.include, os.sep
+ ),
+ "--with-libxml2-lib=" + spec["libxml2"].prefix.lib,
+ "--with-log4cpp-inc=" + spec["log4cpp"].prefix.include,
+ "--with-log4cpp-lib=" + spec["log4cpp"].prefix.lib,
+ "--with-pythia6-lib=" + spec["pythia6"].prefix.lib,
+ ]
+ if self.spec.satisfies("@:2"):
+ args += [
+ "--enable-lhapdf",
+ "--with-lhapdf-inc=" + spec["lhapdf5"].prefix.include,
+ "--with-lhapdf-lib=" + spec["lhapdf5"].prefix.lib,
+ # must be enabled or some GENIE 2 versions fail to link
+ # this option was removed in GENIE 3
+ "--enable-rwght",
+ ]
+ else:
+ args += [
+ "--enable-lhapdf6",
+ "--with-lhapdf6-inc=" + spec["lhapdf"].prefix.include,
+ "--with-lhapdf6-lib=" + spec["lhapdf"].prefix.lib,
+ ]
+ if "+vleextension" in self.spec:
+ args += ["--enable-vle-extension"]
+ if "+t2k" in self.spec:
+ args += ["--enable-t2k"]
+ if "+fnal" in self.spec:
+ args += ["--enable-fnal"]
+ if "+atmo" in self.spec:
+ args += ["--enable-atmo"]
+ if "+nucleondecay" in self.spec:
+ args += ["--enable-nucleon-decay"]
+ if "+masterclass" in self.spec:
+ args += ["--enable-masterclass"]
+ return args
+
+ def _make(self, *args, **kwargs):
+ parallel = kwargs.get("parallel", False)
+ args = list(self._make_args) + list(args)
+ # make function is injected into scope by spack build_environment.py
+ make(*args, parallel=parallel)
+
+ @property
+ def _make_args(self):
+ return [
+ "CC=c++",
+ "CXX=c++",
+ "LD=c++",
+ ]
diff --git a/var/spack/repos/builtin/packages/genomefinisher/package.py b/var/spack/repos/builtin/packages/genomefinisher/package.py
index efaec44d12..97aa966b5c 100644
--- a/var/spack/repos/builtin/packages/genomefinisher/package.py
+++ b/var/spack/repos/builtin/packages/genomefinisher/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/genometools/package.py b/var/spack/repos/builtin/packages/genometools/package.py
index 91ddd7a9ea..e595cf9bed 100644
--- a/var/spack/repos/builtin/packages/genometools/package.py
+++ b/var/spack/repos/builtin/packages/genometools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/genomeworks/package.py b/var/spack/repos/builtin/packages/genomeworks/package.py
index fce2e91d81..ba2a5922f9 100644
--- a/var/spack/repos/builtin/packages/genomeworks/package.py
+++ b/var/spack/repos/builtin/packages/genomeworks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/genrich/package.py b/var/spack/repos/builtin/packages/genrich/package.py
index a703259968..140bb59235 100644
--- a/var/spack/repos/builtin/packages/genrich/package.py
+++ b/var/spack/repos/builtin/packages/genrich/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/geode/package.py b/var/spack/repos/builtin/packages/geode/package.py
index 33581a1a87..4c40465dce 100644
--- a/var/spack/repos/builtin/packages/geode/package.py
+++ b/var/spack/repos/builtin/packages/geode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/geoip-api-c/package.py b/var/spack/repos/builtin/packages/geoip-api-c/package.py
index 9b0c355592..453aebd759 100644
--- a/var/spack/repos/builtin/packages/geoip-api-c/package.py
+++ b/var/spack/repos/builtin/packages/geoip-api-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/geoip/package.py b/var/spack/repos/builtin/packages/geoip/package.py
index 1ef5660870..6137720348 100644
--- a/var/spack/repos/builtin/packages/geoip/package.py
+++ b/var/spack/repos/builtin/packages/geoip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/geopm/package.py b/var/spack/repos/builtin/packages/geopm/package.py
index 95888343b9..ca0d2e8c0f 100644
--- a/var/spack/repos/builtin/packages/geopm/package.py
+++ b/var/spack/repos/builtin/packages/geopm/package.py
@@ -1,8 +1,7 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
from spack import *
@@ -58,11 +57,11 @@ class Geopm(AutotoolsPackage):
depends_on('doxygen', type='build', when='+doc')
depends_on('numactl', when="@:1.0.0-rc2")
depends_on('mpi', when='+mpi')
- depends_on('hwloc@1.11.9', when='@:0.5.1+hwloc')
+ depends_on('hwloc@1.11.9', when='@:0.5.1')
depends_on('json-c', when='@:0.9.9')
depends_on('py-cycler@0.10.0:', when="@1.0.0:", type=('build', 'run'))
depends_on('py-pandas@0.22.0:', type=('build', 'run'))
- depends_on('py-tables@3.4.3:3.5.2', when="@1.0.0:", type=('build', 'run'))
+ depends_on('py-tables@3.4.3:', when="@1.0.0:", type=('build', 'run'))
depends_on('py-cffi@1.6.0:', when="@1.1.0:", type=('build', 'run'))
depends_on('py-pyyaml@5.1.0:', when="@1.1.0:", type=('build', 'run'))
depends_on('py-mock@3.0.0:', when="@1.1.0:", type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/geos/geos_python3_config.patch b/var/spack/repos/builtin/packages/geos/geos_python3_config.patch
new file mode 100644
index 0000000000..303c49d6cd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/geos/geos_python3_config.patch
@@ -0,0 +1,67 @@
+diff -Naur spack-src/configure spack-src.patched/configure
+--- spack-src/configure 2020-03-10 13:55:53.000000000 -0400
++++ spack-src.patched/configure 2021-05-06 11:33:59.062284048 -0400
+@@ -19263,10 +19263,11 @@
+
+
+ # Check for Python library path
++ PYTHON_MAJOR=`echo $PYTHON_VERSION | sed "s,\..*$,,"`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Python library path" >&5
+ $as_echo_n "checking for Python library path... " >&6; }
+ for i in "$base_python_path/lib/python$PYTHON_VERSION/config/" "$base_python_path/lib/python$PYTHON_VERSION/" "$base_python_path/lib/python/config/" "$base_python_path/lib/python/" "$base_python_path/" "$base_python_path/libs/" ; do
+- python_path=`find $i -name libpython$PYTHON_VERSION.* -print 2> /dev/null | sed "1q"`
++ python_path=`find $i -name libpython$PYTHON_MAJOR.* -print 2> /dev/null | sed "1q"`
+ if test -n "$python_path" ; then
+ break
+ fi
+@@ -19277,7 +19278,7 @@
+ if test -z "$python_path" ; then
+ as_fn_error $? "cannot find Python library path" "$LINENO" 5
+ fi
+- PYTHON_LDFLAGS="-L$python_path -lpython$PYTHON_VERSION"
++ PYTHON_LDFLAGS="-L$python_path -lpython$PYTHON_MAJOR"
+
+ #
+ python_site=`echo $base_python_path | sed "s/config/site-packages/"`
+@@ -19290,7 +19291,7 @@
+ $as_echo_n "checking python extra libraries... " >&6; }
+ PYTHON_EXTRA_LIBS=`$PYTHON -c "import distutils.sysconfig; \
+ conf = distutils.sysconfig.get_config_var; \
+- print (conf('LOCALMODLIBS') or '')+' '+(conf('LIBS') or '')"
++ print((conf('LOCALMODLIBS') or '')+' '+(conf('LIBS') or ''))"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON_EXTRA_LIBS" >&5
+ $as_echo "$PYTHON_EXTRA_LIBS" >&6; }`
+
+diff -Naur spack-src/macros/ac_python_devel.m4 spack-src.patched/macros/ac_python_devel.m4
+--- spack-src/macros/ac_python_devel.m4 2017-09-06 09:48:30.000000000 -0400
++++ spack-src.patched/macros/ac_python_devel.m4 2021-05-06 11:32:59.545478100 -0400
+@@ -43,9 +43,10 @@
+ AC_SUBST([PYTHON_CPPFLAGS],[-I$python_path])
+
+ # Check for Python library path
++ PYTHON_MAJOR=`echo $PYTHON_VERSION | sed "s,\..*$,,"`
+ AC_MSG_CHECKING([for Python library path])
+ for i in "$base_python_path/lib/python$PYTHON_VERSION/config/" "$base_python_path/lib/python$PYTHON_VERSION/" "$base_python_path/lib/python/config/" "$base_python_path/lib/python/" "$base_python_path/" "$base_python_path/libs/" ; do
+- python_path=`find $i -name libpython$PYTHON_VERSION.* -print 2> /dev/null | sed "1q"`
++ python_path=`find $i -name libpython$PYTHON_MAJOR.* -print 2> /dev/null | sed "1q"`
+ if test -n "$python_path" ; then
+ break
+ fi
+@@ -55,7 +56,7 @@
+ if test -z "$python_path" ; then
+ AC_MSG_ERROR([cannot find Python library path])
+ fi
+- AC_SUBST([PYTHON_LDFLAGS],["-L$python_path -lpython$PYTHON_VERSION"])
++ AC_SUBST([PYTHON_LDFLAGS],["-L$python_path -lpython$PYTHON_MAJOR"])
+ #
+ python_site=`echo $base_python_path | sed "s/config/site-packages/"`
+ AC_SUBST([PYTHON_SITE_PKG],[$python_site])
+@@ -65,7 +66,7 @@
+ AC_MSG_CHECKING(python extra libraries)
+ PYTHON_EXTRA_LIBS=`$PYTHON -c "import distutils.sysconfig; \
+ conf = distutils.sysconfig.get_config_var; \
+- print (conf('LOCALMODLIBS') or '')+' '+(conf('LIBS') or '')"
++ print((conf('LOCALMODLIBS') or '')+' '+(conf('LIBS') or ''))"
+ AC_MSG_RESULT($PYTHON_EXTRA_LIBS)`
+ AC_SUBST(PYTHON_EXTRA_LIBS)
+ ])
diff --git a/var/spack/repos/builtin/packages/geos/package.py b/var/spack/repos/builtin/packages/geos/package.py
index d34a88be9c..a01b8c65d8 100644
--- a/var/spack/repos/builtin/packages/geos/package.py
+++ b/var/spack/repos/builtin/packages/geos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -46,9 +46,16 @@ class Geos(AutotoolsPackage):
extends('ruby', when='+ruby')
extends('python', when='+python')
+ # SWIG bindings dropped in 3.9, so no python/ruby bindings
+ conflicts('+python', when='@3.9:', msg='SWIG bindings dropped in 3.9')
+ conflicts('+ruby', when='@3.9:', msg='SWIG bindings dropped in 3.9')
+
# Python 3 is supposedly supported, but I couldn't get it to work
# https://trac.osgeo.org/geos/ticket/774
depends_on('python@:2', when='@:3.5')
+ # This patch should fix above issue.
+ # Only tested on 3.8.1, but patch at least applies on 3.5
+ patch('geos_python3_config.patch', when='+python @3.5:3.8.99')
depends_on('swig', type='build', when='+ruby')
depends_on('swig', type='build', when='+python')
diff --git a/var/spack/repos/builtin/packages/gettext/package.py b/var/spack/repos/builtin/packages/gettext/package.py
index 84db1bd9be..8cb7c04b19 100644
--- a/var/spack/repos/builtin/packages/gettext/package.py
+++ b/var/spack/repos/builtin/packages/gettext/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -73,10 +73,8 @@ class Gettext(AutotoolsPackage, GNUMirrorPackage):
config_args.append('--disable-curses')
if '+libxml2' in spec:
- config_args.append('CPPFLAGS=-I{0}/include'.format(
+ config_args.append('--with-libxml2-prefix={0}'.format(
spec['libxml2'].prefix))
- config_args.append('LDFLAGS=-L{0} -Wl,-rpath,{0}'.format(
- spec['libxml2'].libs.directories[0]))
else:
config_args.append('--with-included-libxml')
diff --git a/var/spack/repos/builtin/packages/gflags/package.py b/var/spack/repos/builtin/packages/gflags/package.py
index 200cc489fa..ea4fc4dfa0 100644
--- a/var/spack/repos/builtin/packages/gflags/package.py
+++ b/var/spack/repos/builtin/packages/gflags/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ghost/package.py b/var/spack/repos/builtin/packages/ghost/package.py
index a02e070115..3011d70583 100644
--- a/var/spack/repos/builtin/packages/ghost/package.py
+++ b/var/spack/repos/builtin/packages/ghost/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,7 +32,7 @@ class Ghost(CMakePackage, CudaPackage):
# ###################### Dependencies ##########################
# Everything should be compiled position independent (-fpic)
- depends_on('cmake@3.5:')
+ depends_on('cmake@3.5:', type='build')
depends_on('hwloc')
depends_on('blas')
depends_on('mpi', when='+mpi')
@@ -44,16 +44,11 @@ class Ghost(CMakePackage, CudaPackage):
# note: we require the cblas_include_dir property from the blas
# provider, this is implemented at least for intel-mkl and
# netlib-lapack
- args = ['-DGHOST_ENABLE_MPI:BOOL=%s'
- % ('ON' if '+mpi' in spec else 'OFF'),
- '-DGHOST_USE_CUDA:BOOL=%s'
- % ('ON' if '+cuda' in spec else 'OFF'),
- '-DGHOST_USE_SCOTCH:BOOL=%s'
- % ('ON' if '+scotch' in spec else 'OFF'),
- '-DGHOST_USE_ZOLTAN:BOOL=%s'
- % ('ON' if '+zoltan' in spec else 'OFF'),
- '-DBUILD_SHARED_LIBS:BOOL=%s'
- % ('ON' if '+shared' in spec else 'OFF'),
+ args = [self.define_from_variant('GHOST_ENABLE_MPI', 'mpi'),
+ self.define_from_variant('GHOST_USE_CUDA', 'cuda'),
+ self.define_from_variant('GHOST_USE_SCOTCH', 'scotch'),
+ self.define_from_variant('GHOST_USE_ZOLTAN', 'zoltan'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
'-DCBLAS_INCLUDE_DIR:STRING=%s'
% format(spec['blas'].headers.directories[0]),
'-DBLAS_LIBRARIES=%s'
diff --git a/var/spack/repos/builtin/packages/ghostscript-fonts/package.py b/var/spack/repos/builtin/packages/ghostscript-fonts/package.py
index 62fadcd4c7..8a4d776272 100644
--- a/var/spack/repos/builtin/packages/ghostscript-fonts/package.py
+++ b/var/spack/repos/builtin/packages/ghostscript-fonts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ghostscript/package.py b/var/spack/repos/builtin/packages/ghostscript/package.py
index 4d6851a891..2cdd2e94d3 100644
--- a/var/spack/repos/builtin/packages/ghostscript/package.py
+++ b/var/spack/repos/builtin/packages/ghostscript/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,12 +16,17 @@ class Ghostscript(AutotoolsPackage):
executables = [r'^gs$']
+ version('9.54.0', sha256='0646bb97f6f4d10a763f4919c54fa28b4fbdd3dff8e7de3410431c81762cade0')
+ version('9.53.3', sha256='6eaf422f26a81854a230b80fd18aaef7e8d94d661485bd2e97e695b9dce7bf7f')
version('9.50', sha256='0f53e89fd647815828fc5171613e860e8535b68f7afbc91bf89aee886769ce89')
version('9.27', sha256='9760e8bdd07a08dbd445188a6557cb70e60ccb6a5601f7dbfba0d225e28ce285')
version('9.26', sha256='831fc019bd477f7cc2d481dc5395ebfa4a593a95eb2fe1eb231a97e450d7540d')
version('9.21', sha256='02bceadbc4dddeb6f2eec9c8b1623d945d355ca11b8b4df035332b217d58ce85')
version('9.18', sha256='5fc93079749a250be5404c465943850e3ed5ffbc0d5c07e10c7c5ee8afbbdb1b')
+ # https://www.ghostscript.com/ocr.html
+ variant('tesseract', default=False, description='Use the Tesseract library for OCR')
+
depends_on('pkgconfig', type='build')
depends_on('krb5', type='link')
@@ -34,7 +39,18 @@ class Ghostscript(AutotoolsPackage):
depends_on('libxext')
depends_on('gtkplus')
- patch('nogoto.patch', when='%fj')
+ # https://www.ghostscript.com/doc/9.53.0/News.htm
+ conflicts('+tesseract', when='@:9.52', msg='Tesseract OCR engine added in 9.53.0')
+
+ # https://trac.macports.org/ticket/62832
+ conflicts('+tesseract', when='platform=darwin', msg='Tesseract does not build correctly on macOS')
+
+ patch('nogoto.patch', when='%fj@:4.1.0')
+
+ # Related bug report: https://bugs.ghostscript.com/show_bug.cgi?id=702985
+ patch("https://github.com/ArtifexSoftware/ghostpdl/commit/41ef9a0bc36b9db7115fbe9623f989bfb47bbade.patch",
+ when='@:9.53.3^freetype@2.10.3:',
+ sha256="49c353106d97c40b3b2c78f72ce34e3eef66e6b04861c313f87bad11ab4189e6")
def url_for_version(self, version):
baseurl = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs{0}/ghostscript-{1}.tar.gz"
@@ -62,12 +78,17 @@ class Ghostscript(AutotoolsPackage):
string=True)
def configure_args(self):
- return [
+ args = [
'--disable-compile-inits',
'--enable-dynamic',
'--with-system-libtiff',
]
+ if self.spec.satisfies('@9.53:'):
+ args.extend(self.with_or_without('tesseract'))
+
+ return args
+
def build(self, spec, prefix):
make()
make('so')
diff --git a/var/spack/repos/builtin/packages/giflib/package.py b/var/spack/repos/builtin/packages/giflib/package.py
index 69a1b0dc8d..1b97ad975c 100644
--- a/var/spack/repos/builtin/packages/giflib/package.py
+++ b/var/spack/repos/builtin/packages/giflib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,16 +6,36 @@
from spack import *
-class Giflib(AutotoolsPackage, SourceforgePackage):
+class Giflib(MakefilePackage, SourceforgePackage):
"""The GIFLIB project maintains the giflib service library, which has
been pulling images out of GIFs since 1989."""
homepage = "http://giflib.sourceforge.net/"
- sourceforge_mirror_path = "giflib/giflib-5.1.4.tar.bz2"
+ sourceforge_mirror_path = "giflib/giflib-5.1.4.tar.gz"
- version('5.1.4', sha256='df27ec3ff24671f80b29e6ab1c4971059c14ac3db95406884fc26574631ba8d5')
+ version('5.2.1', sha256='31da5562f44c5f15d63340a09a4fd62b48c45620cd302f77a6d9acf0077879bd')
+ version('5.2.0', sha256='dc7257487c767137602d86c17098ec97065a718ff568a61cfcf1a9466f197b1f')
+ version('5.1.4', sha256='df27ec3ff24671f80b29e6ab1c4971059c14ac3db95406884fc26574631ba8d5', extension='tar.bz2')
+
+ depends_on('automake', type='build', when='@:5.2.0')
+ depends_on('autoconf', type='build', when='@:5.2.0')
+ depends_on('m4', type='build', when='@:5.2.0')
+ depends_on('libtool', type='build', when='@:5.2.0')
patch('bsd-head.patch')
+ @property
+ def install_targets(self):
+ targets = ['install']
+ if self.spec.satisfies('@5.2.0:'):
+ targets.append('PREFIX={0}'.format(self.spec.prefix))
+
+ return targets
+
def check(self):
make('check', parallel=False)
+
+ def edit(self, spec, prefix):
+ if spec.satisfies('@:5.2.0'):
+ configure = Executable('./configure')
+ configure('--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/ginac/package.py b/var/spack/repos/builtin/packages/ginac/package.py
index 71c0c1a2ee..051c66b419 100644
--- a/var/spack/repos/builtin/packages/ginac/package.py
+++ b/var/spack/repos/builtin/packages/ginac/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ginkgo/package.py b/var/spack/repos/builtin/packages/ginkgo/package.py
index 0e48e555fe..8cdbca4ff8 100644
--- a/var/spack/repos/builtin/packages/ginkgo/package.py
+++ b/var/spack/repos/builtin/packages/ginkgo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
import sys
-class Ginkgo(CMakePackage, CudaPackage):
+class Ginkgo(CMakePackage, CudaPackage, ROCmPackage):
"""High-performance linear algebra library for manycore systems,
with a focus on sparse solution of linear systems."""
@@ -28,29 +28,36 @@ class Ginkgo(CMakePackage, CudaPackage):
variant('full_optimizations', default=False, description='Compile with all optimizations')
variant('openmp', default=sys.platform != 'darwin', description='Build with OpenMP')
variant('develtools', default=False, description='Compile with develtools enabled')
+ variant('hwloc', default=False, description='Enable HWLOC support')
variant('build_type', default='Release',
description='The build type to build',
values=('Debug', 'Release'))
- variant('hip', default=False, description='Compile Ginkgo with HIP support')
depends_on('cmake@3.9:', type='build')
depends_on('cuda@9:', when='+cuda')
- depends_on('hip', when='+hip')
- depends_on('hipsparse', type="link", when='+hip')
- depends_on('hipblas', type="link", when='+hip')
- depends_on('rocrand', type="link", when='@develop+hip')
- depends_on('rocthrust', type="build", when='+hip')
+ depends_on('rocthrust', type="build", when='+rocm')
+ depends_on('hipsparse', type="link", when='+rocm')
+ depends_on('hipblas', type="link", when='+rocm')
+ depends_on('rocrand', type="link", when='+rocm')
+ depends_on('hwloc@2.1:', type="link", when='+hwloc')
- # Somehow, these dependencies not propagated by the HIP stack?
- depends_on('rocm-device-libs', type="link", when='+hip')
- depends_on('comgr', type="link", when='+hip')
+ depends_on('googletest', type="test")
+ depends_on('numactl', type="test", when="+hwloc")
conflicts('%gcc@:5.2.9')
- conflicts("+hip", when="@:1.1.1")
- # The HIP packages from spack doen't seem to work well with CUDA
- # backend for now, so disable HIP with CUDA backend.
- conflicts("+cuda", when="+hip")
+ conflicts("+rocm", when="@:1.1.1")
+ conflicts("+cuda", when="+rocm")
+
+ # ROCm 4.1.0 breaks platform settings which breaks Ginkgo's HIP support.
+ conflicts("^hip@4.1.0:", when="@:1.3.0")
+ conflicts("^hip@4.1.0:", when="@master")
+ conflicts("^hipblas@4.1.0:", when="@:1.3.0")
+ conflicts("^hipblas@4.1.0:", when="@master")
+ conflicts("^hipsparse@4.1.0:", when="@:1.3.0")
+ conflicts("^hipsparse@4.1.0:", when="@master")
+ conflicts("^rocthrust@4.1.0:", when="@:1.3.0")
+ conflicts("^rocthrust@4.1.0:", when="@master")
def cmake_args(self):
# Check that the have the correct C++ standard is available
@@ -66,23 +73,35 @@ class Ginkgo(CMakePackage, CudaPackage):
InstallError('Ginkgo requires a C++14-compliant C++ compiler')
spec = self.spec
+ from_variant = self.define_from_variant
args = [
- '-DGINKGO_BUILD_CUDA=%s' % ('ON' if '+cuda' in spec else 'OFF'),
- '-DGINKGO_BUILD_OMP=%s' % ('ON' if '+openmp' in spec else 'OFF'),
- '-DBUILD_SHARED_LIBS=%s' % ('ON' if '+shared' in spec else 'OFF'),
- '-DGINKGO_JACOBI_FULL_OPTIMIZATIONS=%s' % (
- 'ON' if '+full_optimizations' in spec else 'OFF'),
- '-DGINKGO_DEVEL_TOOLS=%s' % (
- 'ON' if '+develtools' in spec else 'OFF'),
- '-DGINKGO_BUILD_HIP=%s' % ('ON' if '+hip' in spec else 'OFF'),
+ from_variant('GINKGO_BUILD_CUDA', 'cuda'),
+ from_variant('GINKGO_BUILD_HIP', 'rocm'),
+ from_variant('GINKGO_BUILD_OMP', 'openmp'),
+ from_variant('BUILD_SHARED_LIBS', 'shared'),
+ from_variant('GINKGO_JACOBI_FULL_OPTIMIZATIONS', 'full_optimizations'),
+ from_variant('GINKGO_BUILD_HWLOC', 'hwloc'),
+ from_variant('GINKGO_DEVEL_TOOLS', 'develtools'),
# As we are not exposing benchmarks, examples, tests nor doc
# as part of the installation, disable building them altogether.
'-DGINKGO_BUILD_BENCHMARKS=OFF',
'-DGINKGO_BUILD_DOC=OFF',
'-DGINKGO_BUILD_EXAMPLES=OFF',
- '-DGINKGO_BUILD_TESTS=OFF'
+ self.define('GINKGO_BUILD_TESTS', self.run_tests),
+ # Let spack handle the RPATH
+ '-DGINKGO_INSTALL_RPATH=OFF'
]
- if '+hip' in spec:
+
+ if self.run_tests:
+ args.append('-DGINKGO_USE_EXTERNAL_GTEST=ON')
+
+ if '+cuda' in spec:
+ archs = spec.variants['cuda_arch'].value
+ if archs != 'none':
+ arch_str = ";".join(archs)
+ args.append('-DGINKGO_CUDA_ARCHITECTURES={0}'.format(arch_str))
+
+ if '+rocm' in spec:
args.append('-DHIP_PATH={0}'. format(spec['hip'].prefix))
args.append('-DHIP_CLANG_PATH={0}/bin'.
format(spec['llvm-amdgpu'].prefix))
@@ -92,11 +111,43 @@ class Ginkgo(CMakePackage, CudaPackage):
format(spec['hipsparse'].prefix))
args.append('-DHIPBLAS_PATH={0}'.
format(spec['hipblas'].prefix))
+ args.append('-DHIPRAND_PATH={0}/hiprand'.
+ format(spec['rocrand'].prefix))
+ args.append('-DROCRAND_PATH={0}/rocrand'.
+ format(spec['rocrand'].prefix))
+ archs = self.spec.variants['amdgpu_target'].value
+ if archs != 'none':
+ arch_str = ";".join(archs)
+ args.append(
+ '-DGINKGO_HIP_AMDGPU={0}'.format(arch_str)
+ )
return args
@run_after('install')
- @on_package_attributes(run_tests=True)
- def test_install(self):
- """Perform smoke tests on the installed package."""
+ def setup_build_tests(self):
+ """Build and install the smoke tests."""
+ # For now only develop and next releases support this scheme.
+ if not self.spec.satisfies('@develop') and not self.spec.satisfies('@1.4.0:'):
+ return
with working_dir(self.build_directory):
make("test_install")
+ smoke_test_path = join_path(self.build_directory, 'test_install')
+ with working_dir(smoke_test_path):
+ make("install")
+
+ def test(self):
+ """Run the smoke tests."""
+ # For now only develop and next releases support this scheme.
+ if not self.spec.satisfies('@develop') and not self.spec.satisfies('@1.4.0:'):
+ print("SKIPPED: smoke tests not supported with this Ginkgo version.")
+ return
+ files = [('test_install', [r'REFERENCE',
+ r'correctly detected and is complete']),
+ ('test_install_cuda', [r'CUDA',
+ r'correctly detected and is complete']),
+ ('test_install_hip', [r'HIP',
+ r'correctly detected and is complete'])]
+ smoke_test_path = join_path(self.prefix, 'smoke_tests')
+ for f, expected in files:
+ self.run_test(f, [], expected, skip_missing=True, installed=True,
+ work_dir=smoke_test_path)
diff --git a/var/spack/repos/builtin/packages/giraph/package.py b/var/spack/repos/builtin/packages/giraph/package.py
index 52e7e80499..3ee58094ab 100644
--- a/var/spack/repos/builtin/packages/giraph/package.py
+++ b/var/spack/repos/builtin/packages/giraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/git-fat-git/package.py b/var/spack/repos/builtin/packages/git-fat-git/package.py
index 2c089190f6..8c725409f1 100644
--- a/var/spack/repos/builtin/packages/git-fat-git/package.py
+++ b/var/spack/repos/builtin/packages/git-fat-git/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/git-imerge/package.py b/var/spack/repos/builtin/packages/git-imerge/package.py
index 4e5bb20b3b..35a6719f90 100644
--- a/var/spack/repos/builtin/packages/git-imerge/package.py
+++ b/var/spack/repos/builtin/packages/git-imerge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/git-lfs/package.py b/var/spack/repos/builtin/packages/git-lfs/package.py
index 2c72007f41..598813c65d 100644
--- a/var/spack/repos/builtin/packages/git-lfs/package.py
+++ b/var/spack/repos/builtin/packages/git-lfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/git/package.py b/var/spack/repos/builtin/packages/git/package.py
index d356b5f8ae..bf6bc61080 100644
--- a/var/spack/repos/builtin/packages/git/package.py
+++ b/var/spack/repos/builtin/packages/git/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,6 +28,26 @@ class Git(AutotoolsPackage):
# You can find the source here: https://mirrors.edge.kernel.org/pub/software/scm/git/sha256sums.asc
releases = [
{
+ 'version': '2.31.1',
+ 'sha256': '46d37c229e9d786510e0c53b60065704ce92d5aedc16f2c5111e3ed35093bfa7',
+ 'sha256_manpages': 'd330498aaaea6928b0abbbbb896f6f605efd8d35f23cbbb2de38c87a737d4543'
+ },
+ {
+ 'version': '2.31.0',
+ 'sha256': 'bc6168777883562569144d536e8a855b12d25d46870d95188a3064260d7784ee',
+ 'sha256_manpages': 'a51b760c36be19113756839a9110b328a09abfff0d57f1c93ddac3974ccbc238'
+ },
+ {
+ 'version': '2.30.1',
+ 'sha256': '23a3e53f0d2dd3e62a8147b24a1a91d6ffe95b92123ef4dbae04e9a6205e71c0',
+ 'sha256_manpages': 'db323e1b242e9d0337363b1e538c8b879e4c46eedbf94d3bee9e65dab6d49138'
+ },
+ {
+ 'version': '2.30.0',
+ 'sha256': 'd24c4fa2a658318c2e66e25ab67cc30038a35696d2d39e6b12ceccf024de1e5e',
+ 'sha256_manpages': 'e23035ae232c9a5eda57db258bc3b7f1c1060cfd66920f92c7d388b6439773a6'
+ },
+ {
'version': '2.29.0',
'sha256': 'fa08dc8424ef80c0f9bf307877f9e2e49f1a6049e873530d6747c2be770742ff',
'sha256_manpages': '8f3bf70ddb515674ce2e19572920a39b1be96af12032b77f1dd57898981fb151'
@@ -53,6 +73,16 @@ class Git(AutotoolsPackage):
'sha256_manpages': '22b2380842ef75e9006c0358de250ead449e1376d7e5138070b9a3073ef61d44'
},
{
+ 'version': '2.23.0',
+ 'sha256': 'e3396c90888111a01bf607346db09b0fbf49a95bc83faf9506b61195936f0cfe',
+ 'sha256_manpages': 'a5b0998f95c2290386d191d34780d145ea67e527fac98541e0350749bf76be75'
+ },
+ {
+ 'version': '2.22.0',
+ 'sha256': 'a4b7e4365bee43caa12a38d646d2c93743d755d1cea5eab448ffb40906c9da0b',
+ 'sha256_manpages': 'f6a5750dfc4a0aa5ec0c0cc495d4995d1f36ed47591c3941be9756c1c3a1aa0a'
+ },
+ {
'version': '2.21.0',
'sha256': '85eca51c7404da75e353eba587f87fea9481ba41e162206a6f70ad8118147bee',
'sha256_manpages': '14c76ebb4e31f9e55cf5338a04fd3a13bced0323cd51794ccf45fc74bd0c1080'
@@ -192,20 +222,28 @@ class Git(AutotoolsPackage):
release['version']),
sha256=release['sha256_manpages'],
placement='git-manpages',
- when='@{0}'.format(release['version']))
+ when='@{0} +man'.format(release['version']))
variant('tcltk', default=False,
description='Gitk: provide Tcl/Tk in the run environment')
+ variant('svn', default=False,
+ description='Provide SVN Perl dependency in run environment')
+ variant('perl', default=True,
+ description='Do not use Perl scripts or libraries at all')
+ variant('nls', default=True,
+ description='Enable native language support')
+ variant('man', default=True,
+ description='Install manual pages')
depends_on('curl')
depends_on('expat')
- depends_on('gettext')
+ depends_on('gettext', when='+nls')
depends_on('iconv')
depends_on('libidn2')
depends_on('openssl')
depends_on('pcre', when='@:2.13')
depends_on('pcre2', when='@2.14:')
- depends_on('perl')
+ depends_on('perl', when='+perl')
depends_on('zlib')
depends_on('openssh', type='run')
@@ -214,6 +252,9 @@ class Git(AutotoolsPackage):
depends_on('libtool', type='build')
depends_on('m4', type='build')
depends_on('tk', type=('build', 'link'), when='+tcltk')
+ depends_on('perl-alien-svn', type='run', when='+svn')
+
+ conflicts('+svn', when='~perl')
@classmethod
def determine_version(cls, exe):
@@ -249,12 +290,16 @@ class Git(AutotoolsPackage):
# The test avoids failures when git is an external package.
# In that case the node in the DAG gets truncated and git DOES NOT
# have a gettext dependency.
- if 'gettext' in self.spec:
- env.append_flags('EXTLIBS', '-L{0} -lintl'.format(
- self.spec['gettext'].prefix.lib))
+ if '+nls' in self.spec:
+ if 'intl' in self.spec['gettext'].libs.names:
+ env.append_flags('EXTLIBS', '-L{0} -lintl'.format(
+ self.spec['gettext'].prefix.lib))
env.append_flags('CFLAGS', '-I{0}'.format(
self.spec['gettext'].prefix.include))
+ if '~perl' in self.spec:
+ env.append_flags('NO_PERL', '1')
+
def configure_args(self):
spec = self.spec
@@ -263,10 +308,12 @@ class Git(AutotoolsPackage):
'--with-expat={0}'.format(spec['expat'].prefix),
'--with-iconv={0}'.format(spec['iconv'].prefix),
'--with-openssl={0}'.format(spec['openssl'].prefix),
- '--with-perl={0}'.format(spec['perl'].command.path),
'--with-zlib={0}'.format(spec['zlib'].prefix),
]
+ if '+perl' in self.spec:
+ configure_args.append('--with-perl={0}'.format(spec['perl'].command.path))
+
if '^pcre' in self.spec:
configure_args.append('--with-libpcre={0}'.format(
spec['pcre'].prefix))
@@ -290,15 +337,41 @@ class Git(AutotoolsPackage):
def check(self):
make('test')
+ def build(self, spec, prefix):
+ args = []
+ if '~nls' in self.spec:
+ args.append('NO_GETTEXT=1')
+ make(*args)
+
+ def install(self, spec, prefix):
+ args = ["install"]
+ if '~nls' in self.spec:
+ args.append('NO_GETTEXT=1')
+ make(*args)
+
@run_after('install')
def install_completions(self):
install_tree('contrib/completion', self.prefix.share)
@run_after('install')
def install_manpages(self):
+ if '~man' in self.spec:
+ return
+
prefix = self.prefix
with working_dir('git-manpages'):
install_tree('man1', prefix.share.man.man1)
install_tree('man5', prefix.share.man.man5)
install_tree('man7', prefix.share.man.man7)
+
+ def setup_run_environment(self, env):
+ # Setup run environment if using SVN extension
+ # Libs from perl-alien-svn and apr-util are required in
+ # LD_LIBRARY_PATH
+ # TODO: extend to other platforms
+ if "+svn platform=linux" in self.spec:
+ perl_svn = self.spec['perl-alien-svn']
+ env.prepend_path('LD_LIBRARY_PATH', join_path(
+ perl_svn.prefix, 'lib', 'perl5', 'x86_64-linux-thread-multi',
+ 'Alien', 'SVN'))
diff --git a/var/spack/repos/builtin/packages/gitconddb/package.py b/var/spack/repos/builtin/packages/gitconddb/package.py
index e2808e91c0..1c4139ff77 100644
--- a/var/spack/repos/builtin/packages/gitconddb/package.py
+++ b/var/spack/repos/builtin/packages/gitconddb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gl2ps/package.py b/var/spack/repos/builtin/packages/gl2ps/package.py
index eed6ef3119..b6267af616 100644
--- a/var/spack/repos/builtin/packages/gl2ps/package.py
+++ b/var/spack/repos/builtin/packages/gl2ps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -50,8 +50,8 @@ class Gl2ps(CMakePackage):
def cmake_args(self):
options = [
- '-DENABLE_PNG={0}'.format(self.variant_to_bool('+png')),
- '-DENABLE_ZLIB={0}'.format(self.variant_to_bool('+zlib')),
+ self.define_from_variant('ENABLE_PNG', 'png'),
+ self.define_from_variant('ENABLE_ZLIB', 'zlib'),
]
if '~doc' in self.spec:
# Make sure we don't look.
diff --git a/var/spack/repos/builtin/packages/glew/package.py b/var/spack/repos/builtin/packages/glew/package.py
index 22364b69a5..b0f6334365 100644
--- a/var/spack/repos/builtin/packages/glew/package.py
+++ b/var/spack/repos/builtin/packages/glew/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/glfmultiples/package.py b/var/spack/repos/builtin/packages/glfmultiples/package.py
index d5423a6bd5..d7d17aa629 100644
--- a/var/spack/repos/builtin/packages/glfmultiples/package.py
+++ b/var/spack/repos/builtin/packages/glfmultiples/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/glfw/package.py b/var/spack/repos/builtin/packages/glfw/package.py
index 168fff8b0e..45d3da1180 100644
--- a/var/spack/repos/builtin/packages/glfw/package.py
+++ b/var/spack/repos/builtin/packages/glfw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,14 +26,19 @@ class Glfw(CMakePackage):
version('3.0.4', sha256='a4e7c57db2086803de4fc853bd472ff8b6d2639b9aa16e6ac6b19ffb53958caf')
version('3.0.3', sha256='7a182047ba6b1fdcda778b79aac249bb2328b6d141188cb5df29560715d01693')
- depends_on('libxrandr')
- depends_on('libxinerama')
- depends_on('libxcursor')
- depends_on('libxdamage')
- depends_on('libxft')
- depends_on('libxi')
- depends_on('libxmu')
- depends_on('freetype')
- depends_on('fontconfig')
- depends_on('doxygen', type='build')
- depends_on('pkgconfig', type='build')
+ variant("doc", default=False, description="Build documentation")
+
+ # dependencies
+ depends_on('doxygen', type='build', when="+doc")
+
+ # linux only dependencies
+ depends_on('libxrandr', when='platform=linux')
+ depends_on('libxinerama', when='platform=linux')
+ depends_on('libxcursor', when='platform=linux')
+ depends_on('libxdamage', when='platform=linux')
+ depends_on('libxft', when='platform=linux')
+ depends_on('libxi', when='platform=linux')
+ depends_on('libxmu', when='platform=linux')
+ depends_on('freetype', when='platform=linux')
+ depends_on('fontconfig', when='platform=linux')
+ depends_on('pkgconfig', type='build', when='platform=linux')
diff --git a/var/spack/repos/builtin/packages/glib-networking/package.py b/var/spack/repos/builtin/packages/glib-networking/package.py
index 357571a8d7..5c96f1bc45 100644
--- a/var/spack/repos/builtin/packages/glib-networking/package.py
+++ b/var/spack/repos/builtin/packages/glib-networking/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/glib/package.py b/var/spack/repos/builtin/packages/glib/package.py
index e6051296d0..0953c9076d 100644
--- a/var/spack/repos/builtin/packages/glib/package.py
+++ b/var/spack/repos/builtin/packages/glib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,12 @@ class Glib(Package):
homepage = "https://developer.gnome.org/glib/"
url = "https://ftp.gnome.org/pub/gnome/sources/glib/2.53/glib-2.53.1.tar.xz"
+ maintainers = ['michaelkuhn']
+
+ version('2.68.2', sha256='ecc7798a9cc034eabdfd7f246e6dd461cdbf1175fcc2e9867cc7da7b7309e0fb')
+ version('2.66.8', sha256='97bc87dd91365589af5cbbfea2574833aea7a1b71840fd365ecd2852c76b9c8b')
+ version('2.66.7', sha256='09f158769f6f26b31074e15b1ac80ec39b13b53102dfae66cfe826fb2cc65502')
+ version('2.66.6', sha256='80fff9c63d2725834328071c42003c311f77f91caf2285195c587c62f5638329')
version('2.66.2', sha256='ec390bed4e8dd0f89e918f385e8d4cfd7470b1ef7c1ce93ec5c4fc6e3c6a17c4')
version('2.64.6', sha256='c36ee07a70164c71f046016fe6aaacd6368333c42590bc0cba47c344ffb853f1')
version('2.64.5', sha256='9cbd5bd2715ead1c28d53c46f7b7b6ff6166f5887b772c1a9e3bf2910cfecc11')
@@ -31,17 +37,17 @@ class Glib(Package):
version('2.62.6', sha256='104fa26fbefae8024ff898330c671ec23ad075c1c0bce45c325c6d5657d58b9c')
version('2.60.7', sha256='8b12c0af569afd3b71200556ad751bad4cf4bf7bc4b5f880638459a42ca86310')
version('2.58.3', sha256='8f43c31767e88a25da72b52a40f3301fefc49a665b56dc10ee7cc9565cbe7481')
- version('2.56.4', sha256='27f703d125efb07f8a743666b580df0b4095c59fc8750e8890132c91d437504c')
- version('2.56.3', sha256='a9a4c5b4c81b6c75bc140bdf5e32120ef3ce841b7413214ecf5f987acec74cb2')
- version('2.56.2', sha256='d64abd16813501c956c4e123ae79f47f1b58de573df9fdd3b0795f1e2c1aa789')
- version('2.56.1', sha256='40ef3f44f2c651c7a31aedee44259809b6f03d3d20be44545cd7d177221c0b8d')
- version('2.56.0', sha256='ecef6e17e97b8d9150d0e8a4b3edee1ac37331213b8a2a87a083deea408a0fc7')
- version('2.55.1', sha256='0cbb3d31c9d181bbcc97cba3d9dbe3250f75e2da25e5f7c8bf5a993fe54baf6a')
- version('2.53.1', sha256='c8740f1d1a138086eede889b596a511fddda180646ab2f1d98aed4fdb6be7f72')
- version('2.49.7', sha256='0fd13406ca31d6f654c3be620e0adaaa4f9fb788e164e265e33edf4b21e64ef6')
- version('2.49.4', sha256='9e914f9d7ebb88f99f234a7633368a7c1133ea21b5cac9db2a33bc25f7a0e0d1')
- version('2.48.1', sha256='74411bff489cb2a3527bac743a51018841a56a4d896cc1e0d0d54f8166a14612')
- version('2.42.1', sha256='8f3f0865280e45b8ce840e176ef83bcfd511148918cc8d39df2ee89b67dcf89a')
+ version('2.56.4', sha256='27f703d125efb07f8a743666b580df0b4095c59fc8750e8890132c91d437504c', deprecated=True)
+ version('2.56.3', sha256='a9a4c5b4c81b6c75bc140bdf5e32120ef3ce841b7413214ecf5f987acec74cb2', deprecated=True)
+ version('2.56.2', sha256='d64abd16813501c956c4e123ae79f47f1b58de573df9fdd3b0795f1e2c1aa789', deprecated=True)
+ version('2.56.1', sha256='40ef3f44f2c651c7a31aedee44259809b6f03d3d20be44545cd7d177221c0b8d', deprecated=True)
+ version('2.56.0', sha256='ecef6e17e97b8d9150d0e8a4b3edee1ac37331213b8a2a87a083deea408a0fc7', deprecated=True)
+ version('2.55.1', sha256='0cbb3d31c9d181bbcc97cba3d9dbe3250f75e2da25e5f7c8bf5a993fe54baf6a', deprecated=True)
+ version('2.53.1', sha256='c8740f1d1a138086eede889b596a511fddda180646ab2f1d98aed4fdb6be7f72', deprecated=True)
+ version('2.49.7', sha256='0fd13406ca31d6f654c3be620e0adaaa4f9fb788e164e265e33edf4b21e64ef6', deprecated=True)
+ version('2.49.4', sha256='9e914f9d7ebb88f99f234a7633368a7c1133ea21b5cac9db2a33bc25f7a0e0d1', deprecated=True)
+ version('2.48.1', sha256='74411bff489cb2a3527bac743a51018841a56a4d896cc1e0d0d54f8166a14612', deprecated=True)
+ version('2.42.1', sha256='8f3f0865280e45b8ce840e176ef83bcfd511148918cc8d39df2ee89b67dcf89a', deprecated=True)
variant('libmount', default=False, description='Build with libmount support')
variant(
@@ -60,6 +66,7 @@ class Glib(Package):
depends_on('perl', type=('build', 'run'))
depends_on('python', type=('build', 'run'), when='@2.53.4:')
depends_on('pcre+utf', when='@2.48:')
+ depends_on('uuid', when='+libmount')
depends_on('util-linux', when='+libmount')
depends_on('iconv')
diff --git a/var/spack/repos/builtin/packages/glibmm/package.py b/var/spack/repos/builtin/packages/glibmm/package.py
index 71b9388532..e9a00245f9 100644
--- a/var/spack/repos/builtin/packages/glibmm/package.py
+++ b/var/spack/repos/builtin/packages/glibmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/glimmer/package.py b/var/spack/repos/builtin/packages/glimmer/package.py
index ee8bdbb658..cdad32628a 100644
--- a/var/spack/repos/builtin/packages/glimmer/package.py
+++ b/var/spack/repos/builtin/packages/glimmer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/glm/package.py b/var/spack/repos/builtin/packages/glm/package.py
index faa3d6e294..d54816fc50 100644
--- a/var/spack/repos/builtin/packages/glm/package.py
+++ b/var/spack/repos/builtin/packages/glm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,27 @@ class Glm(CMakePackage):
"""
homepage = "https://github.com/g-truc/glm"
- url = "https://github.com/g-truc/glm/archive/0.9.7.1.tar.gz"
+ url = "https://github.com/g-truc/glm/archive/0.9.9.8.tar.gz"
+ version('0.9.9.8', sha256='7d508ab72cb5d43227a3711420f06ff99b0a0cb63ee2f93631b162bfe1fe9592')
version('0.9.7.1', sha256='285a0dc8f762b4e523c8710fbd97accaace0c61f45bc8be2bdb0deed07b0e6f3')
depends_on('cmake@2.6:', type='build')
+ depends_on('cmake@3.2:', type='build', when='@0.9.9.0:')
+
+ # CMake install target was removed in version 0.9.9.6
+ @when('@0.9.9.6:')
+ def cmake(self, spec, prefix):
+ pass
+
+ @when('@0.9.9.6:')
+ def build(self, spec, prefix):
+ pass
+
+ @when('@0.9.9.6:')
+ def install(self, spec, prefix):
+ mkdirp(prefix.include.glm)
+ ignore_cmakelists = lambda p: p.endswith('CMakeLists.txt')
+ install_tree('glm', prefix.include.glm, ignore=ignore_cmakelists)
+ mkdirp(prefix.lib64.cmake)
+ install_tree('cmake', prefix.lib64.cmake)
diff --git a/var/spack/repos/builtin/packages/global/package.py b/var/spack/repos/builtin/packages/global/package.py
index 5ad3d72520..e4b6b6476a 100644
--- a/var/spack/repos/builtin/packages/global/package.py
+++ b/var/spack/repos/builtin/packages/global/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/globalarrays/package.py b/var/spack/repos/builtin/packages/globalarrays/package.py
index 918163191f..94a4205fec 100644
--- a/var/spack/repos/builtin/packages/globalarrays/package.py
+++ b/var/spack/repos/builtin/packages/globalarrays/package.py
@@ -1,21 +1,25 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-from spack import *
+import os.path
class Globalarrays(AutotoolsPackage):
"""Global Arrays (GA) is a Partitioned Global Address Space (PGAS)
- programming model. It provides primitives for one-sided communication
- (Get, Put, Accumulate) and Atomic Operations (read increment).
- It supports blocking and non-blocking primtives, and supports location
- consistency."""
+ programming model.
+
+ It provides primitives for one-sided communication (Get, Put, Accumulate)
+ and Atomic Operations (read increment). It supports blocking and
+ non-blocking primtives, and supports location consistency.
+ """
homepage = "http://hpc.pnl.gov/globalarrays/"
url = "https://github.com/GlobalArrays/ga/releases/download/v5.7/ga-5.7.tar.gz"
+ version('5.8', sha256='64df7d1ea4053d24d84ca361e67a6f51c7b17ed7d626cb18a9fbc759f4a078ac')
+ version('5.7.2', sha256='8cd0fcfd85bc7f9c168c831616f66f1e8b9b2ca31dc7dd93cc55b27cc7fe7069')
+ version('5.7.1', sha256='aa4c6038d792cabf1766e264320da58a555da81a3a36be32b7c4d3e71c08ffa9')
version('5.7', sha256='3ed1ab47adfda7bceb7beca12fc05a2e1631732f0e55bbaf9036dad4e3da4774')
version('5.6.5', sha256='17a7111dfe67d44cf0888c7b79abd48bf4968874f26b3f16cce9fd04e2c72bb9')
version('5.6.4', sha256='3daf742053502755c0b581041a56f8f7086af05980c7146d194b0fd6526ee14f')
@@ -24,39 +28,38 @@ class Globalarrays(AutotoolsPackage):
version('5.6.1', sha256='b324deed49f930f55203e1d18294ce07dd02680b9ac0728ebc54f94a12557ebc')
version('5.6', sha256='a228dfbae9a6cfaae34694d7e56f589ac758e959b58f4bc49e6ef44058096767')
- variant('int64', default=False, description='Compile with 64 bit indices support')
- variant('blas', default=False, description='Enable BLAS')
- variant('lapack', default=False, description='Enable LAPACK')
variant('scalapack', default=False, description='Enable SCALAPACK')
variant('armci', values=('mpi-ts', 'mpi-pr', 'mpi3', 'openib', 'ofi'),
default='mpi-ts', description='ARMCI runtime')
depends_on('mpi')
- depends_on('blas', when='+blas')
- depends_on('lapack', when='+lapack')
+ depends_on('blas')
+ depends_on('lapack')
+
depends_on('scalapack', when='+scalapack')
- conflicts('+lapack', when='~blas')
- conflicts('+scalapack', when='~blas')
- conflicts('+scalapack', when='~lapack')
+ # See release https://github.com/GlobalArrays/ga/releases/tag/v5.7.1
+ conflicts('%gcc@10:', when='@5.7')
+ conflicts('%gcc@10:', when='@:5.6.5')
- def configure_args(self):
- args = ['--with-mpi']
+ @property
+ def build_directory(self):
+ return os.path.join(str(self.stage.source_path), '..', 'spack-build')
- if '+blas' in self.spec:
- if '+int64' in self.spec:
- args.append('--with-blas8')
- else:
- args.append('--with-blas')
+ def configure_args(self):
+ blas_flags = self.spec['blas'].libs.ld_flags
+ lapack_libs = self.spec['lapack'].libs.ld_flags
- if '+lapack' in self.spec:
- args.append('--with-lapack')
+ args = [
+ '--enable-shared',
+ '--with-mpi',
+ '--with-blas={0}'.format(blas_flags),
+ '--with-lapack={0}'.format(lapack_libs),
+ ]
if '+scalapack' in self.spec:
- if '+int64' in self.spec:
- args.append('--with-scalapack8')
- else:
- args.append('--with-scalapack')
+ scalapack_libs = self.spec['scalapack'].libs.ld_flags
+ args.append('--with-scalapack={0}'.format(scalapack_libs))
args.append('--with-' + self.spec.variants['armci'].value)
diff --git a/var/spack/repos/builtin/packages/glog/package.py b/var/spack/repos/builtin/packages/glog/package.py
index ded74be364..7f8645b3cf 100644
--- a/var/spack/repos/builtin/packages/glog/package.py
+++ b/var/spack/repos/builtin/packages/glog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,11 +14,11 @@ class Glog(Package):
version('0.4.0', sha256='f28359aeba12f30d73d9e4711ef356dc842886968112162bc73002645139c39c')
version('0.3.5', sha256='7580e408a2c0b5a89ca214739978ce6ff480b5e7d8d7698a2aa92fadc484d1e0')
- version('0.3.4', sha256='ce99d58dce74458f7656a68935d7a0c048fa7b4626566a71b7f4e545920ceb10')
- version('0.3.3', sha256='544e178644bd9b454768c2c91716c3b8365cc5d47adfbdbaecd8cf3fa17adfcb')
+ version('0.3.4', sha256='ce99d58dce74458f7656a68935d7a0c048fa7b4626566a71b7f4e545920ceb10', deprecated=True)
+ version('0.3.3', sha256='544e178644bd9b454768c2c91716c3b8365cc5d47adfbdbaecd8cf3fa17adfcb', deprecated=True)
depends_on('gflags')
- depends_on('cmake', when="@0.3.5:")
+ depends_on('cmake', when="@0.3.5:", type='build')
def install(self, spec, prefix):
configure('--prefix=%s' % prefix)
diff --git a/var/spack/repos/builtin/packages/gloo/package.py b/var/spack/repos/builtin/packages/gloo/package.py
index af8ec7824f..511d254e11 100644
--- a/var/spack/repos/builtin/packages/gloo/package.py
+++ b/var/spack/repos/builtin/packages/gloo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/glpk/package.py b/var/spack/repos/builtin/packages/glpk/package.py
index 14f47357bf..24b74535ab 100644
--- a/var/spack/repos/builtin/packages/glpk/package.py
+++ b/var/spack/repos/builtin/packages/glpk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/glproto/package.py b/var/spack/repos/builtin/packages/glproto/package.py
index 59259d7e5f..f72d467797 100644
--- a/var/spack/repos/builtin/packages/glproto/package.py
+++ b/var/spack/repos/builtin/packages/glproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/glusterfs/package.py b/var/spack/repos/builtin/packages/glusterfs/package.py
index 95c482da2f..846e3870b1 100644
--- a/var/spack/repos/builtin/packages/glusterfs/package.py
+++ b/var/spack/repos/builtin/packages/glusterfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,7 +31,7 @@ class Glusterfs(AutotoolsPackage):
depends_on('bison', type='build')
depends_on('rpcsvc-proto')
depends_on('acl')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('libtirpc')
depends_on('userspace-rcu')
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/glvis/package.py b/var/spack/repos/builtin/packages/glvis/package.py
index ec4ecf8836..16e25b847e 100644
--- a/var/spack/repos/builtin/packages/glvis/package.py
+++ b/var/spack/repos/builtin/packages/glvis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gmake/package.py b/var/spack/repos/builtin/packages/gmake/package.py
index 58f1ebe5a7..1daae4263d 100644
--- a/var/spack/repos/builtin/packages/gmake/package.py
+++ b/var/spack/repos/builtin/packages/gmake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Gmake(AutotoolsPackage, GNUMirrorPackage):
homepage = "https://www.gnu.org/software/make/"
gnu_mirror_path = "make/make-4.2.1.tar.gz"
+ version('4.3', sha256='e05fdde47c5f7ca45cb697e973894ff4f5d79e13b750ed57d7b66d8defc78e19')
version('4.2.1', sha256='e40b8f018c1da64edd1cc9a6fce5fa63b2e707e404e20cad91fbae337c98a5b7')
version('4.0', sha256='fc42139fb0d4b4291929788ebaf77e2a4de7eaca95e31f3634ef7d4932051f69')
@@ -29,6 +30,8 @@ class Gmake(AutotoolsPackage, GNUMirrorPackage):
patch('https://src.fedoraproject.org/rpms/make/raw/519a7c5bcbead22e6ea2d2c2341d981ef9e25c0d/f/make-4.2.1-glob-fix-2.patch', level=1, sha256='fe5b60d091c33f169740df8cb718bf4259f84528b42435194ffe0dd5b79cd125', when='@4.2.1')
patch('https://src.fedoraproject.org/rpms/make/raw/519a7c5bcbead22e6ea2d2c2341d981ef9e25c0d/f/make-4.2.1-glob-fix-3.patch', level=1, sha256='ca60bd9c1a1b35bc0dc58b6a4a19d5c2651f7a94a4b22b2c5ea001a1ca7a8a7f', when='@:4.2.1')
+ tags = ['build-tools']
+
executables = ['^g?make$']
@classmethod
diff --git a/var/spack/repos/builtin/packages/gmap-gsnap/package.py b/var/spack/repos/builtin/packages/gmap-gsnap/package.py
index 03d1edcd23..595ce0bb72 100644
--- a/var/spack/repos/builtin/packages/gmap-gsnap/package.py
+++ b/var/spack/repos/builtin/packages/gmap-gsnap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class GmapGsnap(AutotoolsPackage):
homepage = "http://research-pub.gene.com/gmap/"
url = "http://research-pub.gene.com/gmap/src/gmap-gsnap-2017-06-16.tar.gz"
+ version('2021-03-08', sha256='00de0e945b86bcbda50df94c68a61957f3783e232cce466fcd5f8d3a55398aa2')
version('2020-06-01', sha256='7917f9f78570943f419445e371f2cc948c6741e73c3cbb063391756f4479d365')
version('2019-05-12', sha256='3dc1b6ee4f6c049c07bcf4a5aba30eb2d732997241cdcad818dab571719f8008')
version('2019-02-15', sha256='7e82b9867a1e561b4816fb2f2fb916294077c384c6a88bb94cce39bfe71ab3ac')
diff --git a/var/spack/repos/builtin/packages/gmime/package.py b/var/spack/repos/builtin/packages/gmime/package.py
index 8455a67822..9666158dc1 100644
--- a/var/spack/repos/builtin/packages/gmime/package.py
+++ b/var/spack/repos/builtin/packages/gmime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gmodel/package.py b/var/spack/repos/builtin/packages/gmodel/package.py
index 0af31f92e7..2f00de9fc2 100644
--- a/var/spack/repos/builtin/packages/gmodel/package.py
+++ b/var/spack/repos/builtin/packages/gmodel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gmp/package.py b/var/spack/repos/builtin/packages/gmp/package.py
index 8c24853950..062f98965e 100644
--- a/var/spack/repos/builtin/packages/gmp/package.py
+++ b/var/spack/repos/builtin/packages/gmp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Gmp(AutotoolsPackage, GNUMirrorPackage):
homepage = "https://gmplib.org"
gnu_mirror_path = "gmp/gmp-6.1.2.tar.bz2"
+ version('6.2.1', sha256='eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c')
version('6.1.2', sha256='5275bb04f4863a13516b2f39392ac5e272f5e1bb8057b18aec1c9b79d73d8fb2')
version('6.1.1', sha256='a8109865f2893f1373b0a8ed5ff7429de8db696fc451b1036bd7bdf95bbeffd6')
version('6.1.0', sha256='498449a994efeba527885c10405993427995d3f86b8768d8cdf8d9dd7c6b73e8')
diff --git a/var/spack/repos/builtin/packages/gmsh/package.py b/var/spack/repos/builtin/packages/gmsh/package.py
index 522a315f29..ea168d5091 100644
--- a/var/spack/repos/builtin/packages/gmsh/package.py
+++ b/var/spack/repos/builtin/packages/gmsh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,9 +16,17 @@ class Gmsh(CMakePackage):
files using Gmsh's own scripting language.
"""
- homepage = 'http://gmsh.info'
- url = 'http://gmsh.info/src/gmsh-4.4.1-source.tgz'
-
+ homepage = 'https://gmsh.info'
+ url = 'https://gmsh.info/src/gmsh-4.4.1-source.tgz'
+ git = 'https://gitlab.onelab.info/gmsh/gmsh.git'
+
+ version('master', branch='master')
+ version('4.8.4', sha256='760dbdc072eaa3c82d066c5ba3b06eacdd3304eb2a97373fe4ada9509f0b6ace')
+ version('4.7.1', sha256='c984c295116c757ed165d77149bd5fdd1068cbd7835e9bcd077358b503891c6a')
+ version('4.7.0', sha256='e27f32f92b374ba2a746a9d9c496401c13f66ac6e3e70753e16fa4012d14320e')
+ version('4.6.0', sha256='0f2c55e50fb6c478ebc8977f6341c223754cbf3493b7b0d683b4395ae9f2ad1c')
+ version('4.5.6', sha256='46eaeb0cdee5822fdaa4b15f92d8d160a8cc90c4565593cfa705de90df2a463f')
+ version('4.5.5', sha256='899d3cded664124fa387da57b6f170f47a7e712c7744aa3562779897e2b9e251')
version('4.5.4', sha256='ccf8c74f43cbe3c371abe79862025d41642b3538a0148f018949494e3b3e2ecd')
version('4.4.1', sha256='853c6438fc4e4b765206e66a514b09182c56377bb4b73f1d0d26eda7eb8af0dc')
version('4.2.2', sha256='e9ee9f5c606bbec5f2adbb8c3d6023c4e2577f487fa4e4ecfcfc94a241cc8dcc')
@@ -27,132 +35,130 @@ class Gmsh(CMakePackage):
version('3.0.1', sha256='830b5400d9f1aeca79c3745c5c9fdaa2900cdb2fa319b664a5d26f7e615c749f')
version('2.16.0', sha256='e829eaf32ea02350a385202cc749341f2a3217c464719384b18f653edd028eea')
version('2.15.0', sha256='992a4b580454105f719f5bc05441d3d392ab0b4b80d4ea07b61ca3bdc974070a')
- version('2.12.0', sha256='7fbd2ec8071e79725266e72744d21e902d4fe6fa9e7c52340ad5f4be5c159d09')
- version('develop', branch='master', git='https://gitlab.onelab.info/gmsh/gmsh.git')
+ variant('external', default=False,
+ description='Use system versions of contrib libraries, when possible')
variant('shared', default=True, description='Enables the build of shared libraries')
- variant('mpi', default=True, description='Builds MPI support for parser and solver')
+ variant('mpi', default=False, description='Builds MPI support for parser and solver')
variant('openmp', default=False, description='Enable OpenMP support')
- variant('fltk', default=False, description='Enables the build of the FLTK GUI')
+ variant('fltk', default=True, description='Enables the build of the FLTK GUI')
variant('hdf5', default=False, description='Enables HDF5 support')
+ variant('gmp', default=True, description='Enable GMP for Kbipack (advanced)')
+ variant('cairo', default=False, description='Enable Cairo to render fonts (experimental)')
variant('compression', default=True, description='Enables IO compression through zlib')
- variant('netgen', default=False, description='Build with Netgen')
+ variant('med', default=True, description='Build with MED(HDF5)')
+ variant('mmg', default=True, description='Build with Mmg3d')
+ variant('netgen', default=True, description='Build with Netgen (built-in)')
variant('opencascade', default=False, description='Build with OpenCASCADE')
variant('oce', default=False, description='Build with OCE')
variant('petsc', default=False, description='Build with PETSc')
variant('slepc', default=False, description='Build with SLEPc (only when PETSc is enabled)')
- variant('tetgen', default=False, description='Build with Tetgen')
- variant('metis', default=False, description='Build with Metis')
+ variant('tetgen', default=False, description='Build with Tetgen (built-in)')
+ variant('metis', default=True, description='Build with Metis (built-in)')
variant('privateapi', default=False, description='Enable the private API')
-
- depends_on('blas')
- depends_on('lapack')
+ variant('alglib', default=True, description='Build with Alglib (built-in or 3rd party)')
+ variant('eigen', default=False, description='Build with Eigen (built-in or 3rd party)')
+ variant('voropp', default=True, description='Build with voro++ (built-in or 3rd party')
+ variant('cgns', default=True, description='Build with CGNS')
+
+ # https://gmsh.info/doc/texinfo/gmsh.html#Compiling-the-source-code
+ # We make changes to the GMSH default, such as external blas.
+ depends_on('blas', when='~eigen')
+ depends_on('lapack', when='~eigen')
+ depends_on('eigen@3:', when='+eigen+external')
+ depends_on('alglib', when='+alglib+external')
+ depends_on('voropp', when='+voropp+external')
depends_on('cmake@2.8:', type='build')
- depends_on('gmp')
- depends_on('mpi', when='+mpi')
+ depends_on('gmp', when='+gmp')
+ depends_on('mpi', when='+mpi')
# Assumes OpenGL with GLU is already provided by the system:
- depends_on('fltk', when='+fltk')
- depends_on('hdf5', when='+hdf5')
- depends_on('netgen', when='+netgen')
+ depends_on('fltk+gl', when='+fltk')
+ depends_on('cairo', when='+cairo')
+ depends_on('hdf5', when='+hdf5')
+ depends_on('hdf5', when='+med')
+ depends_on('med', when='+med')
+ depends_on('mmg', when='+mmg')
depends_on('opencascade', when='+opencascade')
- depends_on('oce', when='+oce')
+ depends_on('oce', when='+oce')
+ depends_on('freetype', when='+oce')
+ depends_on('freetype', when='+opencascade')
depends_on('petsc+mpi', when='+petsc+mpi')
- depends_on('petsc', when='+petsc~mpi')
- depends_on('slepc', when='+slepc+petsc')
- depends_on('tetgen', when='+tetgen')
- depends_on('zlib', when='+compression')
- depends_on('metis', when='+metis')
+ depends_on('petsc', when='+petsc~mpi')
+ depends_on('slepc', when='+slepc+petsc')
+ depends_on('zlib', when='+compression')
+ depends_on('metis', when='+metis+external')
+ depends_on('cgns', when='+cgns')
+ # Gmsh's high quality vector PostScript, PDF and SVG output is produced by GL2PS.
+ depends_on('gl2ps')
conflicts('+slepc', when='~petsc')
conflicts('+oce', when='+opencascade')
+ conflicts('+metis', when='+external',
+ msg="External Metis cannot build with GMSH")
def cmake_args(self):
spec = self.spec
- prefix = self.prefix
- options = []
+ options = [
+ self.define_from_variant('ENABLE_ALGLIB', 'alglib'),
+ self.define_from_variant('ENABLE_CAIRO', 'cairo'),
+ self.define_from_variant('ENABLE_CGNS', 'cgns'),
+ self.define_from_variant('ENABLE_EIGEN', 'eigen'),
+ self.define_from_variant('ENABLE_FLTK', 'fltk'),
+ self.define_from_variant('ENABLE_GMP', 'gmp'),
+ self.define_from_variant('ENABLE_MED', 'med'),
+ self.define_from_variant('ENABLE_METIS', 'metis'),
+ self.define_from_variant('ENABLE_MMG', 'mmg'),
+ self.define_from_variant('ENABLE_MPI', 'mpi'),
+ self.define_from_variant('ENABLE_NETGEN', 'netgen'),
+ self.define_from_variant('ENABLE_OPENMP', 'openmp'),
+ self.define_from_variant('ENABLE_PETSC', 'petsc'),
+ self.define_from_variant('ENABLE_PRIVATE_API', 'privateapi'),
+ self.define_from_variant('ENABLE_SLEPC', 'slepc'),
+ self.define_from_variant('ENABLE_VOROPP', 'voropp'),
+ ]
+
+ # Use system versions of contrib libraries, when possible:
+ if '+external' in spec:
+ options.append(self.define('ENABLE_SYSTEM_CONTRIB', True))
# Make sure native file dialogs are used
- options.extend(['-DENABLE_NATIVE_FILE_CHOOSER=ON'])
+ options.append('-DENABLE_NATIVE_FILE_CHOOSER=ON')
- options.append('-DCMAKE_INSTALL_NAME_DIR:PATH=%s/lib' % prefix)
+ options.append('-DCMAKE_INSTALL_NAME_DIR:PATH=%s' % self.prefix.lib)
# Prevent GMsh from using its own strange directory structure on OSX
options.append('-DENABLE_OS_SPECIFIC_INSTALL=OFF')
# Make sure GMSH picks up correct BlasLapack by providing linker flags
- blas_lapack = spec['lapack'].libs + spec['blas'].libs
- options.append(
- '-DBLAS_LAPACK_LIBRARIES={0}'.format(blas_lapack.ld_flags))
-
- # Gmsh does not have an option to compile against external metis.
- # Its own Metis, however, fails to build.
- # However, Metis is needed for the Hxt library.
- if '+metis' in spec:
- options.append('-DENABLE_METIS=ON')
- else:
- options.append('-DENABLE_METIS=OFF')
-
- if '+fltk' in spec:
- options.append('-DENABLE_FLTK=ON')
- else:
- options.append('-DENABLE_FLTK=OFF')
+ if '~eigen' in spec:
+ options.append('-DENABLE_BLAS_LAPACK=ON')
+ blas_lapack = spec['lapack'].libs + spec['blas'].libs
+ options.append(
+ '-DBLAS_LAPACK_LIBRARIES={0}'.format(blas_lapack.ld_flags))
if '+oce' in spec:
- env['CASROOT'] = self.spec['oce'].prefix
options.append('-DENABLE_OCC=ON')
elif '+opencascade' in spec:
- env['CASROOT'] = self.spec['opencascade'].prefix
options.append('-DENABLE_OCC=ON')
else:
options.append('-DENABLE_OCC=OFF')
- if '+petsc' in spec:
- env['PETSC_DIR'] = self.spec['petsc'].prefix
- options.append('-DENABLE_PETSC=ON')
- else:
- options.append('-DENABLE_PETSC=OFF')
-
- if '+tetgen' in spec:
- env['TETGEN_DIR'] = self.spec['tetgen'].prefix
- options.append('-DENABLE_TETGEN=ON')
- else:
- options.append('-DENABLE_TETGEN=OFF')
-
- if '+netgen' in spec:
- env['NETGEN_DIR'] = self.spec['netgen'].prefix
- options.append('-DENABLE_NETGEN=ON')
- else:
- options.append('-DENABLE_NETGEN=OFF')
+ if '@:3.0.6' in spec:
+ options.append(self.define_from_variant('ENABLE_TETGEN', 'tetgen'))
- if '+slepc' in spec:
- env['SLEPC_DIR'] = self.spec['slepc'].prefix
- options.append('-DENABLE_SLEPC=ON')
- else:
- options.append('-DENABLE_SLEPC=OFF')
+ if '@:4.6' in spec:
+ options.append(self.define_from_variant('ENABLE_MMG3D', 'mmg'))
if '+shared' in spec:
# Builds dynamic executable and installs shared library
- options.extend(['-DENABLE_BUILD_SHARED:BOOL=ON',
- '-DENABLE_BUILD_DYNAMIC:BOOL=ON'])
+ options.append(self.define('ENABLE_BUILD_SHARED', True))
+ options.append(self.define('ENABLE_BUILD_DYNAMIC', True))
else:
# Builds and installs static library
- options.append('-DENABLE_BUILD_LIB:BOOL=ON')
-
- if '+openmp' in spec:
- options.append('-DENABLE_OPENMP=ON')
- else:
- options.append('-DENABLE_OPENMP=OFF')
-
- if '+mpi' in spec:
- options.append('-DENABLE_MPI:BOOL=ON')
+ options.append(self.define('ENABLE_BUILD_LIB', True))
if '+compression' in spec:
- options.append('-DENABLE_COMPRESSED_IO:BOOL=ON')
-
- if '+privateapi' in spec:
- options.append('-DENABLE_PRIVATE_API=ON')
- else:
- options.append('-DENABLE_PRIVATE_API=OFF')
+ options.append(self.define('ENABLE_COMPRESSED_IO', True))
return options
diff --git a/var/spack/repos/builtin/packages/gmt/package.py b/var/spack/repos/builtin/packages/gmt/package.py
index 92932c8852..853a20ed1e 100644
--- a/var/spack/repos/builtin/packages/gmt/package.py
+++ b/var/spack/repos/builtin/packages/gmt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,7 +25,7 @@ class Gmt(Package):
version('6.0.0', sha256='7a733e670f01d99f8fc0da51a4337320d764c06a68746621f83ccf2e3453bcb7')
version('5.4.4', sha256='b593dfb101e6507c467619f3d2190a9f78b09d49fe2c27799750b8c4c0cd2da0')
version('4.5.9', sha256='9b13be96ccf4bbd38c14359c05dfa7eeeb4b5f06d6f4be9c33d6c3ea276afc86',
- url='ftp://ftp.soest.hawaii.edu/gmt/legacy/gmt-4.5.9.tar.bz2')
+ url='ftp://ftp.soest.hawaii.edu/gmt/legacy/gmt-4.5.9.tar.bz2', deprecated=True)
variant('ghostscript', default=False, description='Ability to convert PostScript plots to PDF and rasters')
variant('gdal', default=False, description='Ability to read and write numerous grid and image formats')
diff --git a/var/spack/repos/builtin/packages/gmtsar/package.py b/var/spack/repos/builtin/packages/gmtsar/package.py
index 1a299a0c89..8d40f18d93 100644
--- a/var/spack/repos/builtin/packages/gmtsar/package.py
+++ b/var/spack/repos/builtin/packages/gmtsar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gnat/package.py b/var/spack/repos/builtin/packages/gnat/package.py
index 58a93932d1..8ead0c6cd6 100644
--- a/var/spack/repos/builtin/packages/gnat/package.py
+++ b/var/spack/repos/builtin/packages/gnat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gnome-common/package.py b/var/spack/repos/builtin/packages/gnome-common/package.py
index 1132f6c858..f5af99e039 100644
--- a/var/spack/repos/builtin/packages/gnome-common/package.py
+++ b/var/spack/repos/builtin/packages/gnome-common/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gnupg/package.py b/var/spack/repos/builtin/packages/gnupg/package.py
index d97aa10569..2a602d8eff 100644
--- a/var/spack/repos/builtin/packages/gnupg/package.py
+++ b/var/spack/repos/builtin/packages/gnupg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,16 @@ class Gnupg(AutotoolsPackage):
homepage = "https://gnupg.org/index.html"
url = "https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.19.tar.bz2"
+ maintainers = ['alalazo']
+
+ version('2.3.1', sha256='c498db346a9b9a4b399e514c8f56dfc0a888ce8f327f10376ff984452cd154ec')
+ version('2.2.27', sha256='34e60009014ea16402069136e0a5f63d9b65f90096244975db5cea74b3d02399')
+ version('2.2.25', sha256='c55307b247af4b6f44d2916a25ffd1fb64ce2e509c3c3d028dbe7fbf309dc30a')
+ version('2.2.24', sha256='9090b400faae34f08469d78000cfec1cee5b9c553ce11347cc96ef16eab98c46')
+ version('2.2.23', sha256='10b55e49d78b3e49f1edb58d7541ecbdad92ddaeeb885b6f486ed23d1cd1da5c')
+ version('2.2.22', sha256='7c1370565e1910b9d8c4e0fb57b9de34aa062ec7bb91abad5803d791f38d855b')
+ version('2.2.21', sha256='61e83278fb5fa7336658a8b73ab26f379d41275bb1c7c6e694dd9f9a6e8e76ec')
+ version('2.2.20', sha256='04a7c9d48b74c399168ee8270e548588ddbe52218c337703d7f06373d326ca30')
version('2.2.19', sha256='242554c0e06f3a83c420b052f750b65ead711cc3fddddb5e7274fcdbb4e9dec0')
version('2.2.17', sha256='afa262868e39b651a2db4c071fba90415154243e83a830ca00516f9a807fd514')
version('2.2.15', sha256='cb8ce298d7b36558ffc48aec961b14c830ff1783eef7a623411188b5e0f5d454')
@@ -19,8 +29,13 @@ class Gnupg(AutotoolsPackage):
version('2.1.21', sha256='7aead8a8ba75b69866f583b6c747d91414d523bfdfbe9a8e0fe026b16ba427dd')
depends_on('npth@1.2:')
+
depends_on('libgpg-error@1.24:')
+ depends_on('libgpg-error@1.41:', when='@2.3:')
+
depends_on('libgcrypt@1.7.0:')
+ depends_on('libgcrypt@1.9.1:', when='@2.3:')
+
depends_on('libksba@1.3.4:')
depends_on('libassuan@2.4:', when='@:2.2.3')
depends_on('libassuan@2.5:', when='@2.2.15:')
@@ -28,6 +43,11 @@ class Gnupg(AutotoolsPackage):
depends_on('iconv')
depends_on('zlib')
+ @run_after('install')
+ def add_gpg2_symlink(self):
+ if self.spec.satisfies("@2.0:2.999"):
+ symlink('gpg', self.prefix.bin.gpg2)
+
def configure_args(self):
args = [
'--disable-bzip2',
diff --git a/var/spack/repos/builtin/packages/gnuplot/package.py b/var/spack/repos/builtin/packages/gnuplot/package.py
index 0f1689b6cf..72e94ea7a0 100644
--- a/var/spack/repos/builtin/packages/gnuplot/package.py
+++ b/var/spack/repos/builtin/packages/gnuplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gnuradio/package.py b/var/spack/repos/builtin/packages/gnuradio/package.py
index dca705ef6c..8c02cb9f81 100644
--- a/var/spack/repos/builtin/packages/gnuradio/package.py
+++ b/var/spack/repos/builtin/packages/gnuradio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,9 @@ class Gnuradio(CMakePackage):
maintainers = ['aweits']
version('3.8.2.0', sha256='ddda12b55e3e1d925eefb24afb9d604bca7c9bbe0a431707aa48a2eed53eec2f')
+
+ variant('gui', default=False, description='Build with gui support')
+
depends_on('cmake@3.5.1:', type='build')
depends_on('volk')
depends_on('python@3.6.5:', type=('build', 'run'))
@@ -34,7 +37,16 @@ class Gnuradio(CMakePackage):
depends_on('gsl@1.10:')
depends_on('gmp')
depends_on('fftw')
- depends_on('libzmq')
+ depends_on('cppzmq')
+
+ depends_on('cairo+X+ft+fc+pdf+gobject', when='+gui')
+ depends_on('hicolor-icon-theme', type=('build', 'run'), when='+gui')
+ depends_on('adwaita-icon-theme', type=('build', 'run'), when='+gui')
+ depends_on('gsettings-desktop-schemas', type=('build', 'run'), when='+gui')
+ depends_on('py-pygobject', type=('build', 'run'), when='+gui')
+ depends_on('py-pyqt5', type=('build', 'run'), when='+gui')
+ depends_on('qwt', when='+gui')
+
extends('python')
def cmake_args(self):
@@ -43,3 +55,15 @@ class Gnuradio(CMakePackage):
self.spec['python'].command.path))
args.append('-DENABLE_INTERNAL_VOLK=OFF')
return args
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_dependent_run_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_build_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
+
+ def setup_run_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/gnutls/package.py b/var/spack/repos/builtin/packages/gnutls/package.py
index 875a2c52bd..dc5cc819c9 100644
--- a/var/spack/repos/builtin/packages/gnutls/package.py
+++ b/var/spack/repos/builtin/packages/gnutls/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class Gnutls(AutotoolsPackage):
homepage = "http://www.gnutls.org"
url = "https://www.gnupg.org/ftp/gcrypt/gnutls/v3.5/gnutls-3.5.19.tar.xz"
+ version('3.6.15', sha256='0ea8c3283de8d8335d7ae338ef27c53a916f15f382753b174c18b45ffd481558')
version('3.6.14', sha256='5630751adec7025b8ef955af4d141d00d252a985769f51b4059e5affa3d39d63')
version('3.6.8', sha256='aa81944e5635de981171772857e72be231a7e0f559ae0292d2737de475383e83')
version('3.6.7.1', sha256='881b26409ecd8ea4c514fd3fbdb6fae5fab422ca7b71116260e263940a4bbbad')
diff --git a/var/spack/repos/builtin/packages/go-bootstrap/package.py b/var/spack/repos/builtin/packages/go-bootstrap/package.py
index 2d53d30176..672a50b04d 100644
--- a/var/spack/repos/builtin/packages/go-bootstrap/package.py
+++ b/var/spack/repos/builtin/packages/go-bootstrap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/go-md2man/package.py b/var/spack/repos/builtin/packages/go-md2man/package.py
index e7c5e95016..ad78971508 100644
--- a/var/spack/repos/builtin/packages/go-md2man/package.py
+++ b/var/spack/repos/builtin/packages/go-md2man/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/go/package.py b/var/spack/repos/builtin/packages/go/package.py
index f3735c20f6..54b086790e 100644
--- a/var/spack/repos/builtin/packages/go/package.py
+++ b/var/spack/repos/builtin/packages/go/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -38,9 +38,22 @@ class Go(Package):
extendable = True
executables = ['^go$']
+ version('1.16.4', sha256='ae4f6b6e2a1677d31817984655a762074b5356da50fb58722b99104870d43503')
+ version('1.16.3', sha256='b298d29de9236ca47a023e382313bcc2d2eed31dfa706b60a04103ce83a71a25')
+ version('1.16.2', sha256='37ca14287a23cb8ba2ac3f5c3dd8adbc1f7a54b9701a57824bf19a0b271f83ea')
+ version('1.16', sha256='7688063d55656105898f323d90a79a39c378d86fe89ae192eb3b7fc46347c95a')
+ version('1.15.12', sha256='1c6911937df4a277fa74e7b7efc3d08594498c4c4adc0b6c4ae3566137528091')
+ version('1.15.11', sha256='f25b2441d4c76cf63cde94d59bab237cc33e8a2a139040d904c8630f46d061e5')
+ version('1.15.8', sha256='540c0ab7781084d124991321ed1458e479982de94454a98afab6acadf38497c2')
+ version('1.15.7', sha256='8631b3aafd8ecb9244ec2ffb8a2a8b4983cf4ad15572b9801f7c5b167c1a2abc')
+ version('1.15.6', sha256='890bba73c5e2b19ffb1180e385ea225059eb008eb91b694875dd86ea48675817')
+ version('1.15.5', sha256='c1076b90cf94b73ebed62a81d802cd84d43d02dea8c07abdc922c57a071c84f1')
version('1.15.2', sha256='28bf9d0bcde251011caae230a4a05d917b172ea203f2a62f2c2f9533589d4b4d')
version('1.15.1', sha256='d3743752a421881b5cc007c76b4b68becc3ad053e61275567edab1c99e154d30')
version('1.15', sha256='69438f7ed4f532154ffaf878f3dfd83747e7a00b70b3556eddabf7aaee28ac3a')
+ version('1.14.14', sha256='6204bf32f58fae0853f47f1bd0c51d9e0ac11f1ffb406bed07a0a8b016c8a76f')
+ version('1.14.13', sha256='ba1d244c6b5c0ed04aa0d7856d06aceb89ed31b895de6ff783efb1cc8ab6b177')
+ version('1.14.12', sha256='b34f4b7ad799eab4c1a52bdef253602ce957125a512f5a1b28dce43c6841b971')
version('1.14.9', sha256='c687c848cc09bcabf2b5e534c3fc4259abebbfc9014dd05a1a2dc6106f404554')
version('1.14.8', sha256='d9a613fb55f508cf84e753456a7c6a113c8265839d5b7fe060da335c93d6e36a')
version('1.14.6', sha256='73fc9d781815d411928eccb92bf20d5b4264797be69410eac854babe44c94c09')
@@ -171,19 +184,18 @@ class Go(Package):
tty.warn('GOROOT is set, this is not recommended')
# Set to include paths of dependencies
- path_components = []
+ path_components = [dependent_spec.prefix]
for d in dependent_spec.traverse():
if d.package.extends(self.spec):
path_components.append(d.prefix)
- return path_components
+ return ':'.join(path_components)
def setup_dependent_build_environment(self, env, dependent_spec):
# This *MUST* be first, this is where new code is installed
- env.set('GOPATH', ':'.join(self.generate_path_components(
- dependent_spec)))
+ env.prepend_path('GOPATH', self.generate_path_components(
+ dependent_spec))
def setup_dependent_run_environment(self, env, dependent_spec):
# Allow packages to find this when using module files
- env.prepend_path('GOPATH', ':'.join(
- [dependent_spec.prefix] + self.generate_path_components(
- dependent_spec)))
+ env.prepend_path('GOPATH', self.generate_path_components(
+ dependent_spec))
diff --git a/var/spack/repos/builtin/packages/gobject-introspection/package.py b/var/spack/repos/builtin/packages/gobject-introspection/package.py
index 54bb3c0844..98d0774b57 100644
--- a/var/spack/repos/builtin/packages/gobject-introspection/package.py
+++ b/var/spack/repos/builtin/packages/gobject-introspection/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,7 +23,7 @@ class GobjectIntrospection(Package):
# version 1.48.0 build fails with glib 2.49.4
depends_on("glib@2.48.1", when="@1.48.0")
depends_on("python")
- depends_on("cairo")
+ depends_on("cairo+gobject")
depends_on("bison", type="build")
depends_on("flex", type="build")
depends_on("pkgconfig", type="build")
@@ -53,6 +53,14 @@ class GobjectIntrospection(Package):
# inserted into the scripts as they're generated.
patch("sbang.patch")
+ # Drop deprecated xml.etree.ElementTree.Element.getchildren() which leads
+ # to compilation issues with Python 3.9.
+ # https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/325
+ patch('https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/'
+ '1f9284228092b2a7200e8a78bc0ea6702231c6db.patch',
+ sha256='7700828b638c85255c87fcc317ea7e9572ff443f65c86648796528885e5b4cea',
+ when='@:1.63.1')
+
def url_for_version(self, version):
url = 'http://ftp.gnome.org/pub/gnome/sources/gobject-introspection/{0}/gobject-introspection-{1}.tar.xz'
return url.format(version.up_to(2), version)
diff --git a/var/spack/repos/builtin/packages/goblin-hmc-sim/package.py b/var/spack/repos/builtin/packages/goblin-hmc-sim/package.py
index 8b5e9ab9bd..fb2a5ba03d 100644
--- a/var/spack/repos/builtin/packages/goblin-hmc-sim/package.py
+++ b/var/spack/repos/builtin/packages/goblin-hmc-sim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/googletest/package.py b/var/spack/repos/builtin/packages/googletest/package.py
index 1480339e93..7690ec0170 100644
--- a/var/spack/repos/builtin/packages/googletest/package.py
+++ b/var/spack/repos/builtin/packages/googletest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -40,8 +40,7 @@ class Googletest(CMakePackage):
options.append('-Dgtest_disable_pthreads={0}'.format(
'OFF' if '+pthreads' in spec else 'ON'))
- options.append('-DBUILD_SHARED_LIBS={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'))
+ options.append(self.define_from_variant('BUILD_SHARED_LIBS', 'shared'))
return options
@when('@:1.7.0')
diff --git a/var/spack/repos/builtin/packages/gosam-contrib/package.py b/var/spack/repos/builtin/packages/gosam-contrib/package.py
index ad45f5b03e..7eeb275b41 100644
--- a/var/spack/repos/builtin/packages/gosam-contrib/package.py
+++ b/var/spack/repos/builtin/packages/gosam-contrib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class GosamContrib(AutotoolsPackage):
homepage = "https://gosam.hepforge.org"
url = "https://gosam.hepforge.org/downloads/?f=gosam-contrib-2.0.tar.gz"
+ tags = ['hep']
+
version('2.0', sha256='c05beceea74324eb51c1049773095e2cb0c09c8c909093ee913d8b0da659048d')
version('1.0', sha256='a29d4232d9190710246abc2ed97fdcd8790ce83580f56a360f3456b0377c40ec')
diff --git a/var/spack/repos/builtin/packages/gotcha/package.py b/var/spack/repos/builtin/packages/gotcha/package.py
index 7c78f6c300..99ff2fa656 100644
--- a/var/spack/repos/builtin/packages/gotcha/package.py
+++ b/var/spack/repos/builtin/packages/gotcha/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,12 +21,11 @@ class Gotcha(CMakePackage):
variant('test', default=False, description='Build tests for Gotcha')
patch(
- 'https://github.com/LLNL/GOTCHA/commit/e82b4a1ecb634075d8f5334b796c888c86da0427.patch',
+ 'https://github.com/LLNL/GOTCHA/commit/e82b4a1ecb634075d8f5334b796c888c86da0427.patch',
sha256='9f7814fd3c3362c156bc617c755e7e50c2f9125ed4540e36f60e4d93884f1ce6',
when='@0.0.2:1.0.2')
def configure_args(self):
- spec = self.spec
return [
- '-DGOTCHA_ENABLE_TESTS=%s' % ('ON' if '+test' in spec else 'OFF')
+ self.define_from_variant('GOTCHA_ENABLE_TESTS', 'test')
]
diff --git a/var/spack/repos/builtin/packages/gource/package.py b/var/spack/repos/builtin/packages/gource/package.py
index f4455e1853..0bdfd800be 100644
--- a/var/spack/repos/builtin/packages/gource/package.py
+++ b/var/spack/repos/builtin/packages/gource/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gpdb/package.py b/var/spack/repos/builtin/packages/gpdb/package.py
index 98683b271c..9e25e3240e 100644
--- a/var/spack/repos/builtin/packages/gpdb/package.py
+++ b/var/spack/repos/builtin/packages/gpdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gperf/package.py b/var/spack/repos/builtin/packages/gperf/package.py
index 96d15d1f2e..21b52448bc 100644
--- a/var/spack/repos/builtin/packages/gperf/package.py
+++ b/var/spack/repos/builtin/packages/gperf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gperftools/package.py b/var/spack/repos/builtin/packages/gperftools/package.py
index dfc0a9503d..908ef57fe3 100644
--- a/var/spack/repos/builtin/packages/gperftools/package.py
+++ b/var/spack/repos/builtin/packages/gperftools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Gperftools(AutotoolsPackage):
homepage = "https://github.com/gperftools/gperftools"
url = "https://github.com/gperftools/gperftools/releases/download/gperftools-2.7/gperftools-2.7.tar.gz"
+ version('2.8.1', sha256='12f07a8ba447f12a3ae15e6e3a6ad74de35163b787c0c7b76288d7395f2f74e0')
version('2.7', sha256='1ee8c8699a0eff6b6a203e59b43330536b22bbcbe6448f54c7091e5efb0763c9')
version('2.4', sha256='982a37226eb42f40714e26b8076815d5ea677a422fb52ff8bfca3704d9c30a2d')
version('2.3', sha256='093452ad45d639093c144b4ec732a3417e8ee1f3744f2b0f8d45c996223385ce')
diff --git a/var/spack/repos/builtin/packages/gpgme/package.py b/var/spack/repos/builtin/packages/gpgme/package.py
index 1ea0086c6f..7d0695cc28 100644
--- a/var/spack/repos/builtin/packages/gpgme/package.py
+++ b/var/spack/repos/builtin/packages/gpgme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gpi-2/package.py b/var/spack/repos/builtin/packages/gpi-2/package.py
index 299fba0a1a..b004318ac3 100644
--- a/var/spack/repos/builtin/packages/gpi-2/package.py
+++ b/var/spack/repos/builtin/packages/gpi-2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gplates/package.py b/var/spack/repos/builtin/packages/gplates/package.py
index 150134f11b..b7e03e95ce 100644
--- a/var/spack/repos/builtin/packages/gplates/package.py
+++ b/var/spack/repos/builtin/packages/gplates/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gprolog/package.py b/var/spack/repos/builtin/packages/gprolog/package.py
index 49aabd195a..e4aadade78 100644
--- a/var/spack/repos/builtin/packages/gprolog/package.py
+++ b/var/spack/repos/builtin/packages/gprolog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gpu-burn/Makefile.patch b/var/spack/repos/builtin/packages/gpu-burn/Makefile.patch
deleted file mode 100644
index 67df81bd06..0000000000
--- a/var/spack/repos/builtin/packages/gpu-burn/Makefile.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/Makefile 2018-12-08 05:36:48.000000000 -0600
-+++ b/Makefile 2019-10-04 13:08:37.095337704 -0500
-@@ -1,12 +1,6 @@
--CUDAPATH=/usr/local/cuda
--
--# Have this point to an old enough gcc (for nvcc)
--GCCPATH=/usr
--
- NVCC=nvcc
--CCPATH=${GCCPATH}/bin
-
- drv:
-- PATH=${PATH}:.:${CCPATH}:${PATH} ${NVCC} -I${CUDAPATH}/include -arch=compute_30 -ptx compare.cu -o compare.ptx
-- g++ -O3 -Wno-unused-result -I${CUDAPATH}/include -c gpu_burn-drv.cpp
-- g++ -o gpu_burn gpu_burn-drv.o -O3 -lcuda -L${CUDAPATH}/lib64 -L${CUDAPATH}/lib -Wl,-rpath=${CUDAPATH}/lib64 -Wl,-rpath=${CUDAPATH}/lib -lcublas -lcudart -o gpu_burn
-+ ${NVCC} -arch=compute_30 -ptx compare.cu -o compare.ptx
-+ $(CXX) -O3 -Wno-unused-result -c gpu_burn-drv.cpp
-+ $(CXX) -o gpu_burn gpu_burn-drv.o -O3 -lcuda -lcublas -lcudart -o gpu_burn
diff --git a/var/spack/repos/builtin/packages/gpu-burn/package.py b/var/spack/repos/builtin/packages/gpu-burn/package.py
index 2d367ad3fe..15d2dd5b8f 100644
--- a/var/spack/repos/builtin/packages/gpu-burn/package.py
+++ b/var/spack/repos/builtin/packages/gpu-burn/package.py
@@ -1,23 +1,20 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
-
class GpuBurn(MakefilePackage, CudaPackage):
- """Multi-GPU CUDA stress test. Note that the file pointed to by COMPARE_PTX
- needs to be copied or linked to the current working directory before
- running gpu_burn."""
+ """Multi-GPU CUDA stress test."""
homepage = "http://wili.cc/blog/gpu-burn.html"
url = "http://wili.cc/blog/entries/gpu-burn/gpu_burn-1.0.tar.gz"
+ git = "https://github.com/wilicc/gpu-burn"
+ version('master', branch='master')
+ version('1.1', sha256='9876dbf7ab17b3072e9bc657034ab39bdedb219478f57c4e93314c78ae2d6376')
version('1.0', sha256='d55994f0bee8dabf021966dbe574ef52be1e43386faeee91318dd4ebb36aa74a')
- patch('Makefile.patch')
-
# This package uses CudaPackage to pick up the cuda_arch variant. A side
# effect is that it also picks up the cuda variant, but cuda is required
# for gpu-burn so is not really a variant.
@@ -26,31 +23,27 @@ class GpuBurn(MakefilePackage, CudaPackage):
conflicts('~cuda', msg='gpu-burn requires cuda')
conflicts('cuda_arch=none', msg='must select a CUDA architecture')
- cuda_arch_values = CudaPackage.cuda_arch_values
- variant(
- 'cuda_arch',
- description='CUDA architecture',
- default='none',
- values=('none',) + cuda_arch_values,
- multi=False
- )
-
def edit(self, spec, prefix):
# update cuda architecture if necessary
if '+cuda' in self.spec:
cuda_arch = self.spec.variants['cuda_arch'].value
- archflag = '-arch=compute_{0}'.format(cuda_arch)
- filter_file('-arch=compute_30', archflag,
- 'Makefile', string=True)
+ archflag = " ".join(CudaPackage.cuda_flags(cuda_arch))
+ with open('Makefile', 'w') as fh:
+ fh.write('drv:\n')
+ fh.write('\tnvcc {0} -fatbin '
+ 'compare.cu -o compare.ptx\n'.format(archflag))
+ fh.write('\tg++ -O3 -c gpu_burn-drv.cpp\n')
+ fh.write('\tg++ -o gpu_burn gpu_burn-drv.o -O3 -lcuda '
+ '-lcublas -lcudart -o gpu_burn\n')
+
+ filter_file('compare.ptx',
+ join_path(prefix.share,
+ 'compare.ptx'),
+ 'gpu_burn-drv.cpp',
+ string=True)
def install(self, spec, prefix):
mkdir(prefix.bin)
mkdir(prefix.share)
install('gpu_burn', prefix.bin)
install('compare.ptx', prefix.share)
-
- # The gpu_burn program looks for the compare.ptx file in the current
- # working directory. Create an environment variable that can be pointed to
- # so that it can be copied or linked.
- def setup_run_environment(self, env):
- env.set('COMPARE_PTX', join_path(self.prefix.share, 'compare.ptx'))
diff --git a/var/spack/repos/builtin/packages/gqrx/package.py b/var/spack/repos/builtin/packages/gqrx/package.py
index 540bdd5eba..e731178651 100644
--- a/var/spack/repos/builtin/packages/gqrx/package.py
+++ b/var/spack/repos/builtin/packages/gqrx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gr-osmosdr/package.py b/var/spack/repos/builtin/packages/gr-osmosdr/package.py
index f8f7a2fe3c..b087728abc 100644
--- a/var/spack/repos/builtin/packages/gr-osmosdr/package.py
+++ b/var/spack/repos/builtin/packages/gr-osmosdr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/grabix/package.py b/var/spack/repos/builtin/packages/grabix/package.py
new file mode 100644
index 0000000000..0a5dda47ac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/grabix/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Grabix(MakefilePackage):
+ """Grabix leverages the fantastic BGZF library in samtools to provide
+ random access into text files that have been compressed with bgzip.
+ grabix creates it's own index (.gbi) of the bgzipped file. Once indexed,
+ one can extract arbitrary lines from the file with the grab command.
+ Or choose random lines with the, well, random command.
+ """
+
+ homepage = "https://github.com/arq5x/grabix"
+ url = "https://github.com/arq5x/grabix/archive/v0.1.7.tar.gz"
+
+ maintainers = ['robqiao']
+
+ version('0.1.7', sha256='d90735c55c0985a4d751858d7ce9e36ad534fff4103257e8e981e34d5c915b28')
+
+ conflicts('%gcc@7:', msg='grabix cannot be compiled with newer versions of GCC')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('LICENSE', prefix)
+ install('simrep.chr1.bed', prefix)
+ install('grabix', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/grace/package.py b/var/spack/repos/builtin/packages/grace/package.py
new file mode 100644
index 0000000000..598ae1f923
--- /dev/null
+++ b/var/spack/repos/builtin/packages/grace/package.py
@@ -0,0 +1,54 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Grace(AutotoolsPackage):
+ """Grace is a WYSIWYG 2D plotting tool for the X Window System and M*tif."""
+
+ homepage = "http://plasma-gate.weizmann.ac.il/Grace"
+ # The main site (ftp://plasma-gate.weizmann.ac.il/pub/grace/)
+ # is currently unavailable so we use one of the mirrors instead.
+ url = "ftp://ftp.fu-berlin.de/unix/graphics/grace/src/grace5/grace-5.1.25.tar.gz"
+
+ maintainers = ['RemiLacroix-IDRIS']
+
+ version('5.1.25', sha256='751ab9917ed0f6232073c193aba74046037e185d73b77bab0f5af3e3ff1da2ac')
+
+ depends_on('libx11')
+ depends_on('libxext')
+ depends_on('libxmu')
+ depends_on('libxp')
+ depends_on('libxt')
+ depends_on('libice')
+ depends_on('libsm')
+ depends_on('motif')
+ depends_on('jpeg')
+ depends_on('libpng')
+ depends_on('fftw@2:2.999')
+ depends_on('netcdf-c')
+
+ def patch(self):
+ # Spack's FFTW2 has prefixed headers so patch the code accordingly.
+ # We are not patching "ac-tools/aclocal.m4" since it is not needed
+ # currently and would require to run "autoreconf".
+ filter_file('<fftw.h>', '<dfftw.h>',
+ 'configure', 'src/fourier.c')
+
+ def configure_args(self):
+ args = []
+ args.append('--with-fftw')
+ # Spack's FFTW2 has prefixed libraries
+ args.append('--with-fftw-library=-ldfftw')
+ for driver in ['jpeg', 'png']:
+ args.append('--enable-{0}drv'.format(driver))
+ args.append('--enable-netcdf')
+ return args
+
+ def setup_run_environment(self, env):
+ # Grace installs a subfolder in the prefix directory
+ # so we account for that...
+ env.prepend_path('PATH', self.prefix.grace.bin)
diff --git a/var/spack/repos/builtin/packages/grackle/package.py b/var/spack/repos/builtin/packages/grackle/package.py
index f0647393ad..e232b2e7fe 100644
--- a/var/spack/repos/builtin/packages/grackle/package.py
+++ b/var/spack/repos/builtin/packages/grackle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gradle/package.py b/var/spack/repos/builtin/packages/gradle/package.py
index 2c4354ebad..cc73a46935 100644
--- a/var/spack/repos/builtin/packages/gradle/package.py
+++ b/var/spack/repos/builtin/packages/gradle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,44 @@ class Gradle(Package):
homepage = "https://gradle.org"
url = "https://services.gradle.org/distributions/gradle-3.4-all.zip"
- version('4.8.1', sha256='ce1645ff129d11aad62dab70d63426fdce6cfd646fa309dc5dc5255dd03c7c11')
+ version('6.7.1', sha256='22449f5231796abd892c98b2a07c9ceebe4688d192cd2d6763f8e3bf8acbedeb')
+ version('6.7', sha256='0080de8491f0918e4f529a6db6820fa0b9e818ee2386117f4394f95feb1d5583')
+ version('6.6.1', sha256='11657af6356b7587bfb37287b5992e94a9686d5c8a0a1b60b87b9928a2decde5')
+ version('6.6', sha256='83fa7c3e5ab84c3c5c4a04fb16947338209efa9aab1f6bf09a5d0e3d2ed87742')
+ version('6.5.1', sha256='143a28f54f1ae93ef4f72d862dbc3c438050d81bb45b4601eb7076e998362920')
+ version('6.5', sha256='c9910513d0eed63cd8f5c7fec4cb4a05731144770104a0871234a4edc3ba3cef')
+ version('6.4.1', sha256='3fd824892df8ad5847be6e4fb7d3600068437de172939fd657cc280a1a629f63')
+ version('6.4', sha256='d08f7e24d061910382c2fda9915e6ed42dd1480ae2e99211f92c70190cb697e0')
+ version('6.3', sha256='0f316a67b971b7b571dac7215dcf2591a30994b3450e0629925ffcfe2c68cc5c')
+ version('6.2.2', sha256='838fa0e3373a9c8d953eff972449edc6be5fa12b26509ac3387727de85138cc0')
+ version('6.2.1', sha256='49fad5c94e76bc587c1a1138f045daee81476a82b288c7ab8c7cd6b14bf2b1c7')
+ version('6.2', sha256='f016e66d88c2f9adb5b6e7dff43a363b8c2632f18b4ad6f365f49da34dd57db8')
+ version('6.1.1', sha256='10065868c78f1207afb3a92176f99a37d753a513dff453abb6b5cceda4058cda')
+ version('6.1', sha256='634f972af958e3c753aeb42d7a688fab6820b527a0aef9eed03d7f3f6f9c7c06')
+ version('6.0.1', sha256='6f6cfdbb12a577c3845522a1c7fbfe1295ea05d87edabedd4e23fd2bf02b88b1')
+ version('6.0', sha256='a1eb4439c0a85bc7e64a22658d862e43b7d0ddfbf69a7abf6256e0b7514295df')
+ version('5.6.4', sha256='abc10bcedb58806e8654210f96031db541bcd2d6fc3161e81cb0572d6a15e821')
+ version('5.6.3', sha256='342f8e75a8879fa9192163fa8d932b9f6383ea00c1918a478f0f51e11e004b60')
+ version('5.6.2', sha256='027fdd265d277bae65a0d349b6b8da02135b0b8e14ba891e26281fa877fe37a2')
+ version('5.6.1', sha256='f6ea7f48e2823ca7ff8481044b892b24112f5c2c3547d4f423fb9e684c39f710')
+ version('5.6', sha256='33214524e686838c88a88e14e8b30e2323589cc9698186bc8e0594758b132b31')
+ version('5.5.1', sha256='6c4276f97c9059ef4dfb06cc7325c43ed9b933ab04f032e9d9372e8589cb6faf')
+ version('5.5', sha256='302b7df46730ce75c582542c056c9bf5cac2b94fbf2cc656d0e37e41e8a5d371')
+ version('5.4.1', sha256='14cd15fc8cc8705bd69dcfa3c8fefb27eb7027f5de4b47a8b279218f76895a91')
+ version('5.4', sha256='f177768e7a032727e4338c8fd047f8f263e5bd283f67a7766c1ba4182c8455a6')
+ version('5.3.1', sha256='b018a7308cb43633662363d100c14a3c41c66fd4e32b59e1dfc644d6fd2109f6')
+ version('5.3', sha256='f4d820c2a9685710eba5b92f10e0e4fb20e0d6c0dd1f46971e658160f25e7147')
+ version('5.2.1', sha256='9dc729f6dbfbbc4df1692665d301e028976dacac296a126f16148941a9cf012e')
+ version('5.2', sha256='55db797adf2705bb782655f012af7cc7724b14382881f60fb3f3eb4b645c02d6')
+ version('5.1.1', sha256='53b71812f18cdb2777e9f1b2a0f2038683907c90bdc406bc64d8b400e1fb2c3b')
+ version('5.1', sha256='7b8a8b9cce0406733d2d3fab3874386c530657c73c3f4e9a3837d081e26060d8')
+ version('5.0', sha256='17847c8e12b2bcfce26a79f425f082c31d4ded822f99a66127eee2d96bf18216')
+ version('4.10.3', sha256='336b6898b491f6334502d8074a6b8c2d73ed83b92123106bd4bf837f04111043')
+ version('4.10.2', sha256='b7aedd369a26b177147bcb715f8b1fc4fe32b0a6ade0d7fd8ee5ed0c6f731f2c')
+ version('4.10.1', sha256='36bf7ff499223d5139f005822130ccca784c91591b514677fd376eed966c907e')
+ version('4.10', sha256='fc049dcbcb245d5892bebae143bd515a78f6a5a93cec99d489b312dc0ce4aad9')
+ version('4.9', sha256='39e2d5803bbd5eaf6c8efe07067b0e5a00235e8c71318642b2ed262920b27721')
+ version('4.8.1', sha256='ce1645ff129d11aad62dab70d63426fdce6cfd646fa309dc5dc5255dd03c7c11')
version('3.4', sha256='37c2fdce55411e4c89b896c292cae1f8f437862c8433c8a74cfc3805d7670c0a')
version('3.3', sha256='71a787faed83c4ef21e8464cc8452b941b5fcd575043aa29d39d15d879be89f7')
version('3.2.1', sha256='0209696f1723f607c475109cf3ed8b51c8a91bb0cda05af0d4bd980bdefe75cd')
diff --git a/var/spack/repos/builtin/packages/grads/package.py b/var/spack/repos/builtin/packages/grads/package.py
index 889ad5c7e3..57d19b93ed 100644
--- a/var/spack/repos/builtin/packages/grads/package.py
+++ b/var/spack/repos/builtin/packages/grads/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/grafana/package.py b/var/spack/repos/builtin/packages/grafana/package.py
index c323b94252..e9450226ab 100644
--- a/var/spack/repos/builtin/packages/grafana/package.py
+++ b/var/spack/repos/builtin/packages/grafana/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/grandr/package.py b/var/spack/repos/builtin/packages/grandr/package.py
index 85339772fa..0fc32b55f3 100644
--- a/var/spack/repos/builtin/packages/grandr/package.py
+++ b/var/spack/repos/builtin/packages/grandr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/graph500/package.py b/var/spack/repos/builtin/packages/graph500/package.py
index 8e650673af..c423bb722d 100644
--- a/var/spack/repos/builtin/packages/graph500/package.py
+++ b/var/spack/repos/builtin/packages/graph500/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/graphblast/package.py b/var/spack/repos/builtin/packages/graphblast/package.py
index 59ef3d3cb3..105a8905aa 100644
--- a/var/spack/repos/builtin/packages/graphblast/package.py
+++ b/var/spack/repos/builtin/packages/graphblast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/graphicsmagick/package.py b/var/spack/repos/builtin/packages/graphicsmagick/package.py
index 5e32b05e14..92aeca800a 100644
--- a/var/spack/repos/builtin/packages/graphicsmagick/package.py
+++ b/var/spack/repos/builtin/packages/graphicsmagick/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/graphite2/package.py b/var/spack/repos/builtin/packages/graphite2/package.py
index 544f3a53d3..ad6e50a437 100644
--- a/var/spack/repos/builtin/packages/graphite2/package.py
+++ b/var/spack/repos/builtin/packages/graphite2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,4 +17,6 @@ class Graphite2(CMakePackage):
version('1.3.13', sha256='dd63e169b0d3cf954b397c122551ab9343e0696fb2045e1b326db0202d875f06')
+ depends_on('python@3.6:', type='test')
+
patch('regparm.patch')
diff --git a/var/spack/repos/builtin/packages/graphlib/package.py b/var/spack/repos/builtin/packages/graphlib/package.py
index 1452616c4d..bd09fd1901 100644
--- a/var/spack/repos/builtin/packages/graphlib/package.py
+++ b/var/spack/repos/builtin/packages/graphlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,7 @@ class Graphlib(CMakePackage):
"""Library to create, manipulate, and export graphs Graphlib."""
homepage = "https://github.com/LLNL/graphlib"
url = "https://github.com/LLNL/graphlib/archive/v2.0.0.tar.gz"
+ maintainers = ['lee218llnl']
version('2.0.0', sha256='4f4aa1193167c41c8491dec3cf22b1e52a8f0842faab88b7945972f02d2adbcd')
version('3.0.0', sha256='c3d889f7bc25b9662426605e52f14cd16f9c05b034738a343890707f5f5681f1')
diff --git a/var/spack/repos/builtin/packages/graphmap/package.py b/var/spack/repos/builtin/packages/graphmap/package.py
index aad93c8125..de38f963a7 100644
--- a/var/spack/repos/builtin/packages/graphmap/package.py
+++ b/var/spack/repos/builtin/packages/graphmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/graphviz/package.py b/var/spack/repos/builtin/packages/graphviz/package.py
index 7d2dbfec87..4df14a8134 100644
--- a/var/spack/repos/builtin/packages/graphviz/package.py
+++ b/var/spack/repos/builtin/packages/graphviz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,18 +18,12 @@ class Graphviz(AutotoolsPackage):
homepage = 'http://www.graphviz.org'
git = 'https://gitlab.com/graphviz/graphviz.git'
+ url = 'https://gitlab.com/graphviz/graphviz/-/archive/2.46.0/graphviz-2.46.0.tar.bz2'
- # This commit hash is tag='stable_release_2.44.1'
- version('2.44.1', commit='771bc4dbff3e6f358fa75cdc7774a413ccacad51')
- # This commit hash is tag='stable_release_2.42.2'
- version('2.42.2', commit='da4c2ec6f24ca1b6d1752c6b5bc4389e55682147')
- # This commit hash is tag='stable_release_2.40.1'
- version('2.40.1', commit='67cd2e5121379a38e0801cc05cce5033f8a2a609')
-
- conflicts('%gcc@:5.9',
- when='@2.40.1+qt ^qt@5:',
- msg='graphviz-2.40.1 needs gcc-6 or greater to compile with QT5 '
- 'suppport')
+ version('2.46.0', sha256='1b11684fd5488940b45bf4624393140da6032abafae08f33dc3e986cffd55d71')
+ version('2.44.1', sha256='0f8f3fbeaddd474e0a270dc9bb0e247a1ae4284ae35125af4adceffae5c7ae9b')
+ version('2.42.4', sha256='a1ca0c4273d96bbf32fbfcbb784c8da2e38da13e7d2bbf9b24fe94ae45e79c4c')
+ version('2.38.0', sha256='c1b1e326b5d1f45b0ce91edd7acc68e80ff6be6b470008766e4d466aafc9801f')
# Language bindings
language_bindings = ['java']
@@ -45,6 +39,8 @@ class Graphviz(AutotoolsPackage):
'bindings'.format(lang))
# Feature variants
+ variant('doc', default=False,
+ description='Build and install graphviz documentation')
variant('expat', default=False,
description='Build with Expat support (enables HTML-like labels)')
variant('gts', default=False,
@@ -76,7 +72,7 @@ class Graphviz(AutotoolsPackage):
patch('https://raw.githubusercontent.com/easybuilders/easybuild-easyconfigs/master/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1_icc_vmalloc.patch',
sha256='813e6529e79161a18b0f24a969b7de22f8417b2e942239e658b5402884541bc2',
when='@:2.40%intel')
- patch('ps2pdf.patch')
+ patch('ps2pdf.patch', when='@:2.45')
patch('implicit.patch', level=0, when='@:2.44.0')
if not MACOS_VERSION:
@@ -92,6 +88,9 @@ class Graphviz(AutotoolsPackage):
depends_on('swig', when=('+' + lang))
# Feature dependencies
+ depends_on('zlib')
+ depends_on('groff', type='build', when='+doc')
+ depends_on('ghostscript', type='build', when='+doc')
depends_on('expat', when='+expat')
depends_on('libgd', when='+libgd')
depends_on('fontconfig', when='+libgd')
@@ -106,21 +105,24 @@ class Graphviz(AutotoolsPackage):
depends_on('libpng', when='+pangocairo')
depends_on('pango', when='+pangocairo')
depends_on('poppler+glib', when='+poppler')
- depends_on('zlib')
depends_on('qt', when='+qt')
depends_on('libx11', when="+x")
- # Build dependencies
- depends_on('pkgconfig', type='build')
- # The following are needed when building from git
+ # Build dependencies (graphviz binaries don't include configure file)
depends_on('automake', type='build')
depends_on('autoconf', type='build')
depends_on('bison', type='build')
depends_on('flex', type='build')
depends_on('libtool', type='build')
- # required to build docs
- depends_on('groff', type='build')
- depends_on('ghostscript', type='build')
+ depends_on('pkgconfig', type='build')
+
+ conflicts('~doc',
+ when='@:2.45',
+ msg='graphviz always builds documentation below version 2.46')
+ conflicts('%gcc@:5.9',
+ when='@2.40.1+qt ^qt@5:',
+ msg='graphviz-2.40.1 needs gcc-6 or greater to compile with QT5 '
+ 'suppport')
parallel = False
@@ -170,4 +172,8 @@ class Graphviz(AutotoolsPackage):
args.append('--{0}-gtk'.format(
"with" if "+gtkplus" in spec else "without"))
+ if spec.version >= Version('2.46'):
+ args.append('--{0}-man-pdfs'.format(
+ 'enable' if '+doc' in spec else 'disable'))
+
return args
diff --git a/var/spack/repos/builtin/packages/grass/package.py b/var/spack/repos/builtin/packages/grass/package.py
index 6435239432..17325d2b5c 100644
--- a/var/spack/repos/builtin/packages/grass/package.py
+++ b/var/spack/repos/builtin/packages/grass/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/graylog2-server/package.py b/var/spack/repos/builtin/packages/graylog2-server/package.py
index b34fd87a1b..dfbf8de499 100644
--- a/var/spack/repos/builtin/packages/graylog2-server/package.py
+++ b/var/spack/repos/builtin/packages/graylog2-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/grep/package.py b/var/spack/repos/builtin/packages/grep/package.py
index 7d4bded3f8..50e48df7e1 100644
--- a/var/spack/repos/builtin/packages/grep/package.py
+++ b/var/spack/repos/builtin/packages/grep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/grib-api/package.py b/var/spack/repos/builtin/packages/grib-api/package.py
index 6c4a15116a..24091ab908 100644
--- a/var/spack/repos/builtin/packages/grib-api/package.py
+++ b/var/spack/repos/builtin/packages/grib-api/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gridlab-d/package.py b/var/spack/repos/builtin/packages/gridlab-d/package.py
index d7942d2d21..1f18ae81e4 100644
--- a/var/spack/repos/builtin/packages/gridlab-d/package.py
+++ b/var/spack/repos/builtin/packages/gridlab-d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -50,6 +50,7 @@ class GridlabD(AutotoolsPackage):
args.append('CFLAGS=-g -O0 -w')
args.append('CXXFLAGS=-g -O0 -w -std=c++14')
args.append('LDFLAGS=-g -O0 -w')
+ args.append('--with-xerces=' + self.spec['xerces-c'].prefix)
return args
diff --git a/var/spack/repos/builtin/packages/grnboost/package.py b/var/spack/repos/builtin/packages/grnboost/package.py
index 600c65ed40..35a802bf40 100644
--- a/var/spack/repos/builtin/packages/grnboost/package.py
+++ b/var/spack/repos/builtin/packages/grnboost/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/groff/BuildFoundries.patch b/var/spack/repos/builtin/packages/groff/BuildFoundries.patch
new file mode 100644
index 0000000000..3cc7497bf1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/groff/BuildFoundries.patch
@@ -0,0 +1,11 @@
+--- a/font/devpdf/Makefile.sub 2014-11-04 02:38:35.427521472 -0600
++++ b/font/devpdf/Makefile.sub 2021-02-08 14:28:51.194111775 -0600
+@@ -95,7 +95,7 @@
+ chmod +x util/BuildFoundries
+ echo "# foundry ps name psfile" > $(top_builddir)/font/devpdf/download
+ PATH="$(top_builddir)/src/utils/afmtodit:$(GROFF_PATH_SEPARATOR)$(PATH)" \
+- util/BuildFoundries $(top_builddir)/font/devpdf \
++ $(PERL) util/BuildFoundries $(top_builddir)/font/devpdf \
+ '$(top_srcdir)/font/devps : $(top_builddir)/font/devps' \
+ >> $(top_builddir)/font/devpdf/download
+
diff --git a/var/spack/repos/builtin/packages/groff/package.py b/var/spack/repos/builtin/packages/groff/package.py
index f67f1c901b..63c8bf1c4f 100644
--- a/var/spack/repos/builtin/packages/groff/package.py
+++ b/var/spack/repos/builtin/packages/groff/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import re
class Groff(AutotoolsPackage, GNUMirrorPackage):
@@ -35,6 +36,19 @@ class Groff(AutotoolsPackage, GNUMirrorPackage):
# patch('gropdf.patch')
parallel = False
+ # The perl interpreter line in scripts might be too long as it has
+ # not been transformed yet. Call scripts with spack perl explicitly.
+ patch('BuildFoundries.patch')
+ patch('pdfmom.patch')
+
+ executables = ['^groff$']
+
+ @classmethod
+ def determine_version(cls, exe):
+ output = Executable(exe)('--version', output=str, error=str)
+ match = re.search(r'GNU groff version\s+(\S+)', output)
+ return match.group(1) if match else None
+
def configure_args(self):
args = [
"--without-x"
diff --git a/var/spack/repos/builtin/packages/groff/pdfmom.patch b/var/spack/repos/builtin/packages/groff/pdfmom.patch
new file mode 100644
index 0000000000..b9b90674a5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/groff/pdfmom.patch
@@ -0,0 +1,11 @@
+--- a/contrib/mom/Makefile.sub 2014-11-04 02:38:35.502520534 -0600
++++ b/contrib/mom/Makefile.sub 2021-02-08 14:51:57.131553432 -0600
+@@ -41,7 +41,7 @@
+ GROFF_COMMAND_PREFIX= \
+ GROFF_BIN_PATH="$(GROFF_BIN_PATH)" \
+ PDFMOM_BIN_PATH="$(top_builddir)/src/devices/gropdf" \
+- $(PDFMOMBIN) $(FFLAG) $(TFLAG) $(KFLAG)
++ $(PERL) $(PDFMOMBIN) $(FFLAG) $(TFLAG) $(KFLAG)
+
+ MAN7=\
+ groff_mom.n
diff --git a/var/spack/repos/builtin/packages/gromacs/package.py b/var/spack/repos/builtin/packages/gromacs/package.py
index 73f4ffd871..30c2acd61e 100644
--- a/var/spack/repos/builtin/packages/gromacs/package.py
+++ b/var/spack/repos/builtin/packages/gromacs/package.py
@@ -1,7 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import os
+
+
class Gromacs(CMakePackage):
"""GROMACS (GROningen MAchine for Chemical Simulations) is a molecular
dynamics package primarily designed for simulations of proteins, lipids
@@ -21,6 +25,10 @@ class Gromacs(CMakePackage):
maintainers = ['junghans', 'marvinbernhardt']
version('master', branch='master')
+ version('2021.2', sha256='d940d865ea91e78318043e71f229ce80d32b0dc578d64ee5aa2b1a4be801aadb')
+ version('2021.1', sha256='bc1d0a75c134e1fb003202262fe10d3d32c59bbb40d714bc3e5015c71effe1e5')
+ version('2021', sha256='efa78ab8409b0f5bf0fbca174fb8fbcf012815326b5c71a9d7c385cde9a8f87b')
+ version('2020.5', sha256='7b6aff647f7c8ee1bf12204d02cef7c55f44402a73195bd5f42cf11850616478')
version('2020.4', sha256='5519690321b5500c7951aaf53ff624042c3edd1a5f5d6dd1f2d802a3ecdbf4e6')
version('2020.3', sha256='903183691132db14e55b011305db4b6f4901cc4912d2c56c131edfef18cc92a9')
version('2020.2', sha256='7465e4cd616359d84489d919ec9e4b1aaf51f0a4296e693c249e83411b7bd2f3')
@@ -47,9 +55,10 @@ class Gromacs(CMakePackage):
version('5.1.5', sha256='c25266abf07690ecad16ed3996899b1d489cbb1ef733a1befb3b5c75c91a703e')
version('5.1.4', sha256='0f3793d8f1f0be747cf9ebb0b588fb2b2b5dc5acc32c3046a7bee2d2c03437bc')
version('5.1.2', sha256='39d6f1d7ae8ba38cea6089da40676bfa4049a49903d21551abc030992a58f304')
+ version('4.6.7', sha256='6afb1837e363192043de34b188ca3cf83db6bd189601f2001a1fc5b0b2a214d9')
version('4.5.5', sha256='e0605e4810b0d552a8761fef5540c545beeaf85893f4a6e21df9905a33f871ba')
- variant('mpi', default=True, description='Activate MPI support')
+ variant('mpi', default=True, description='Activate MPI support (disable for Thread-MPI support)')
variant('shared', default=True,
description='Enables the build of shared libraries')
variant(
@@ -58,6 +67,7 @@ class Gromacs(CMakePackage):
variant('plumed', default=False, description='Enable PLUMED support')
variant('cuda', default=False, description='Enable CUDA support')
variant('opencl', default=False, description='Enable OpenCL support')
+ variant('sycl', default=False, description='Enable SYCL support')
variant('nosuffix', default=False, description='Disable default suffixes')
variant('build_type', default='RelWithDebInfo',
description='The build type to build',
@@ -66,14 +76,22 @@ class Gromacs(CMakePackage):
variant('mdrun_only', default=False,
description='Enables the build of a cut-down version'
' of libgromacs and/or the mdrun program')
+ conflicts('+mdrun_only', when='@2021:',
+ msg='mdrun-only build option was removed for GROMACS 2021.')
variant('openmp', default=True,
description='Enables OpenMP at configure time')
- variant('double_precision', default=False,
- description='GMX_RELAXED_DOUBLE_PRECISION for Fujitsu PRIMEHPC')
+ variant('relaxed_double_precision', default=False,
+ description='GMX_RELAXED_DOUBLE_PRECISION, use only for Fujitsu PRIMEHPC')
+ conflicts('+relaxed_double_precision', when='@2021:',
+ msg='GMX_RELAXED_DOUBLE_PRECISION option removed for GROMACS 2021.')
variant('hwloc', default=True,
description='Use the hwloc portable hardware locality library')
variant('lapack', default=False,
description='Enables an external LAPACK library')
+ variant('blas', default=False,
+ description='Enables an external BLAS library')
+ variant('cycle_subcounters', default=False,
+ description='Enables cycle subcounters')
depends_on('mpi', when='+mpi')
# define matching plumed versions
@@ -90,16 +108,27 @@ class Gromacs(CMakePackage):
depends_on('fftw-api@3')
depends_on('cmake@2.8.8:3.99.99', type='build')
depends_on('cmake@3.4.3:3.99.99', type='build', when='@2018:')
- depends_on('cmake@3.13.0:3.99.99', type='build', when='@master')
- depends_on('cmake@3.13.0:3.99.99', type='build', when='%fj')
+ depends_on('cmake@3.9.6:3.99.99', type='build', when='@2020')
+ depends_on('cmake@3.13.0:3.99.99', type='build', when='@2021:')
+ depends_on('cmake@3.16.0:3.99.99', type='build', when='@master')
+ depends_on('cmake@3.16.0:3.99.99', type='build', when='%fj')
depends_on('cuda', when='+cuda')
+ depends_on('sycl', when='+sycl')
depends_on('lapack', when='+lapack')
+ depends_on('blas', when='+blas')
- # TODO: openmpi constraint; remove when concretizer is fixed
- depends_on('hwloc@:1.999', when='+hwloc')
+ depends_on('hwloc@1:1.999', when='+hwloc@2016:2018.999')
+ depends_on('hwloc', when='+hwloc@2019:')
patch('gmxDetectCpu-cmake-3.14.patch', when='@2018:2019.3^cmake@3.14.0:')
- patch('gmxDetectSimd-cmake-3.14.patch', when='@:2017.99^cmake@3.14.0:')
+ patch('gmxDetectSimd-cmake-3.14.patch', when='@5.0:2017.99^cmake@3.14.0:')
+
+ filter_compiler_wrappers(
+ '*.cmake',
+ relative_root=os.path.join('share', 'cmake', 'gromacs_mpi'))
+ filter_compiler_wrappers(
+ '*.cmake',
+ relative_root=os.path.join('share', 'cmake', 'gromacs'))
def patch(self):
if '+plumed' in self.spec:
@@ -109,15 +138,69 @@ class Gromacs(CMakePackage):
# Disable obsolete workaround
filter_file('ifdef __PGI', 'if 0', 'src/gromacs/fileio/xdrf.h')
+ if '+cuda' in self.spec:
+ # Upstream supports building of last two major versions of Gromacs.
+ # Older versions of Gromacs need to be patched to build with more recent
+ # versions of CUDA library.
+
+ # Hardware version 3.0 is supported up to CUDA 10.2 (Gromacs 4.6-2020.3
+ # needs to be patched, 2020.4 is handling it correctly)
+
+ if self.spec.satisfies('@4.6:2020.3^cuda@11:'):
+ filter_file(r'-gencode;arch=compute_30,code=sm_30;?', '',
+ 'cmake/gmxManageNvccConfig.cmake')
+ filter_file(r'-gencode;arch=compute_30,code=compute_30;?', '',
+ 'cmake/gmxManageNvccConfig.cmake')
+
+ # Hardware version 2.0 is supported up to CUDA 8 (Gromacs 4.6-2016.3
+ # needs to be patched, 2016.4 is handling it correctly, removed in 2019)
+
+ if self.spec.satisfies('@4.6:2016.3^cuda@9:'):
+ filter_file(r'-gencode;arch=compute_20,code=sm_20;?', '',
+ 'cmake/gmxManageNvccConfig.cmake')
+ filter_file(r'-gencode;arch=compute_20,code=compute_20;?', '',
+ 'cmake/gmxManageNvccConfig.cmake')
+
+ if self.spec.satisfies('@4.6:5.0.999^cuda@9:'):
+ filter_file(r'-gencode;arch=compute_20,code=sm_21;?', '',
+ 'cmake/gmxManageNvccConfig.cmake')
+
def cmake_args(self):
options = []
- if self.spec.satisfies('@2020:'):
- options.append('-DGMX_INSTALL_LEGACY_API=ON')
-
if '+mpi' in self.spec:
options.append('-DGMX_MPI:BOOL=ON')
+ if self.version < Version('2020'):
+ # Ensures gmxapi builds properly
+ options.extend([
+ '-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % self.spec['mpi'].mpicxx,
+ '-DCMAKE_Fortran_COMPILER=%s' % self.spec['mpi'].mpifc,
+ ])
+ elif self.version == Version('2021'):
+ # Work around https://gitlab.com/gromacs/gromacs/-/issues/3896
+ # Ensures gmxapi builds properly
+ options.extend([
+ '-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % self.spec['mpi'].mpicxx,
+ ])
+ else:
+ options.extend([
+ '-DCMAKE_C_COMPILER=%s' % spack_cc,
+ '-DCMAKE_CXX_COMPILER=%s' % spack_cxx,
+ '-DMPI_C_COMPILER=%s' % self.spec['mpi'].mpicc,
+ '-DMPI_CXX_COMPILER=%s' % self.spec['mpi'].mpicxx
+ ])
+ else:
+ options.extend([
+ '-DCMAKE_C_COMPILER=%s' % spack_cc,
+ '-DCMAKE_CXX_COMPILER=%s' % spack_cxx,
+ '-DGMX_MPI:BOOL=OFF',
+ '-DGMX_THREAD_MPI:BOOL=ON'])
+
+ if self.spec.satisfies('@2020:'):
+ options.append('-DGMX_INSTALL_LEGACY_API=ON')
if '+double' in self.spec:
options.append('-DGMX_DOUBLE:BOOL=ON')
@@ -127,16 +210,27 @@ class Gromacs(CMakePackage):
if '~shared' in self.spec:
options.append('-DBUILD_SHARED_LIBS:BOOL=OFF')
+ options.append('-DGMXAPI:BOOL=OFF')
if '+hwloc' in self.spec:
options.append('-DGMX_HWLOC:BOOL=ON')
else:
options.append('-DGMX_HWLOC:BOOL=OFF')
- if '+cuda' in self.spec or '+opencl' in self.spec:
- options.append('-DGMX_GPU:BOOL=ON')
+ if self.version >= Version('2021'):
+ if '+cuda' in self.spec:
+ options.append('-DGMX_GPU:STRING=CUDA')
+ elif '+opencl' in self.spec:
+ options.append('-DGMX_GPU:STRING=OpenCL')
+ elif '+sycl' in self.spec:
+ options.append('-DGMX_GPU:STRING=SYCL')
+ else:
+ options.append('-DGMX_GPU:STRING=OFF')
else:
- options.append('-DGMX_GPU:BOOL=OFF')
+ if '+cuda' in self.spec or '+opencl' in self.spec:
+ options.append('-DGMX_GPU:BOOL=ON')
+ else:
+ options.append('-DGMX_GPU:BOOL=OFF')
if '+cuda' in self.spec:
options.append('-DCUDA_TOOLKIT_ROOT_DIR:STRING=' +
@@ -148,11 +242,19 @@ class Gromacs(CMakePackage):
if '+lapack' in self.spec:
options.append('-DGMX_EXTERNAL_LAPACK:BOOL=ON')
if self.spec['lapack'].libs:
- options.append('-DLAPACK_LIBRARIES={0}'.format(
+ options.append('-DGMX_LAPACK_USER={0}'.format(
self.spec['lapack'].libs.joined(';')))
else:
options.append('-DGMX_EXTERNAL_LAPACK:BOOL=OFF')
+ if '+blas' in self.spec:
+ options.append('-DGMX_EXTERNAL_BLAS:BOOL=ON')
+ if self.spec['blas'].libs:
+ options.append('-DGMX_BLAS_USER={0}'.format(
+ self.spec['blas'].libs.joined(';')))
+ else:
+ options.append('-DGMX_EXTERNAL_BLAS:BOOL=OFF')
+
# Activate SIMD based on properties of the target
target = self.spec.target
if target >= 'zen2':
@@ -166,7 +268,10 @@ class Gromacs(CMakePackage):
options.append('-DGMX_SIMD=AVX_128_FMA')
elif 'vsx' in target:
# IBM Power 7 and beyond
- options.append('-DGMX_SIMD=IBM_VSX')
+ if self.spec.satisfies('%nvhpc'):
+ options.append('-DGMX_SIMD=None')
+ else:
+ options.append('-DGMX_SIMD=IBM_VSX')
elif target.family == 'aarch64':
# ARMv8
if self.spec.satisfies('%nvhpc'):
@@ -176,8 +281,8 @@ class Gromacs(CMakePackage):
elif target == 'mic_knl':
# Intel KNL
options.append('-DGMX_SIMD=AVX_512_KNL')
- elif target.vendor == 'GenuineIntel':
- # Other Intel architectures
+ else:
+ # Other architectures
simd_features = [
('sse2', 'SSE2'),
('sse4_1', 'SSE4.1'),
@@ -192,13 +297,16 @@ class Gromacs(CMakePackage):
('avx512', 'AVX_512') in simd_features):
simd_features.remove(('avx512', 'AVX_512'))
+ feature_set = False
for feature, flag in reversed(simd_features):
if feature in target:
options.append('-DGMX_SIMD:STRING={0}'.format(flag))
+ feature_set = True
break
- else:
- # Fall back to this for unknown microarchitectures
- options.append('-DGMX_SIMD:STRING=None')
+
+ # Fall back
+ if not feature_set:
+ options.append('-DGMX_SIMD:STRING=None')
# Use the 'rtdscp' assembly instruction only on
# appropriate architectures
@@ -206,20 +314,22 @@ class Gromacs(CMakePackage):
'GMX_USE_RDTSCP', str(target.family) in ('x86_64', 'x86')
))
- if '+mdrun_only' in self.spec:
- options.append('-DGMX_BUILD_MDRUN_ONLY:BOOL=ON')
- else:
- options.append('-DGMX_BUILD_MDRUN_ONLY:BOOL=OFF')
+ if self.spec.satisfies('@:2020'):
+ options.append(
+ self.define_from_variant('GMX_BUILD_MDRUN_ONLY', 'mdrun_only'))
- if '~openmp' in self.spec:
- options.append('-DGMX_OPENMP:BOOL=OFF')
- else:
- options.append('-DGMX_OPENMP:BOOL=ON')
+ options.append(self.define_from_variant('GMX_OPENMP', 'openmp'))
+
+ if self.spec.satisfies('@:2020'):
+ options.append(
+ self.define_from_variant(
+ 'GMX_RELAXED_DOUBLE_PRECISION',
+ 'relaxed_double_precision'))
- if '+double_precision' in self.spec:
- options.append('-DGMX_RELAXED_DOUBLE_PRECISION:BOOL=ON')
+ if '+cycle_subcounters' in self.spec:
+ options.append('-DGMX_CYCLE_SUBCOUNTERS:BOOL=ON')
else:
- options.append('-DGMX_RELAXED_DOUBLE_PRECISION:BOOL=OFF')
+ options.append('-DGMX_CYCLE_SUBCOUNTERS:BOOL=OFF')
if '^mkl' in self.spec:
# fftw-api@3 is provided by intel-mkl or intel-parllel-studio
@@ -234,5 +344,13 @@ class Gromacs(CMakePackage):
else:
# we rely on the fftw-api@3
options.append('-DGMX_FFT_LIBRARY=fftw3')
+ if '^amdfftw' in self.spec:
+ options.append('-DGMX_FFT_LIBRARY=fftw3')
+ options.append(
+ '-DFFTWF_INCLUDE_DIRS={0}'.
+ format(self.spec['amdfftw'].headers.directories[0])
+ )
+ options.append('-DFFTWF_LIBRARIES={0}'.
+ format(self.spec['amdfftw'].libs.joined(';')))
return options
diff --git a/var/spack/repos/builtin/packages/grpc/package.py b/var/spack/repos/builtin/packages/grpc/package.py
index 010cffb6f3..5ac5575c8f 100644
--- a/var/spack/repos/builtin/packages/grpc/package.py
+++ b/var/spack/repos/builtin/packages/grpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gsettings-desktop-schemas/package.py b/var/spack/repos/builtin/packages/gsettings-desktop-schemas/package.py
index 908aa73d57..cfbb4abb65 100644
--- a/var/spack/repos/builtin/packages/gsettings-desktop-schemas/package.py
+++ b/var/spack/repos/builtin/packages/gsettings-desktop-schemas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,3 +20,15 @@ class GsettingsDesktopSchemas(MesonPackage):
depends_on('glib')
depends_on('gobject-introspection', type='build')
depends_on('gettext', type='build')
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_dependent_run_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_build_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
+
+ def setup_run_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/gsl/package.py b/var/spack/repos/builtin/packages/gsl/package.py
index fb81843c64..b12e7fa3b6 100644
--- a/var/spack/repos/builtin/packages/gsl/package.py
+++ b/var/spack/repos/builtin/packages/gsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class Gsl(AutotoolsPackage, GNUMirrorPackage):
homepage = "http://www.gnu.org/software/gsl"
gnu_mirror_path = "gsl/gsl-2.3.tar.gz"
+ version('2.6', sha256='b782339fc7a38fe17689cb39966c4d821236c28018b6593ddb6fd59ee40786a8')
version('2.5', sha256='0460ad7c2542caaddc6729762952d345374784100223995eb14d614861f2258d')
version('2.4', sha256='4d46d07b946e7b31c19bbf33dda6204d7bedc2f5462a1bae1d4013426cd1ce9b')
version('2.3', sha256='562500b789cd599b3a4f88547a7a3280538ab2ff4939504c8b4ac4ca25feadfb')
@@ -28,9 +29,10 @@ class Gsl(AutotoolsPackage, GNUMirrorPackage):
variant('external-cblas', default=False, description='Build against external blas')
# from https://dev.gentoo.org/~mgorny/dist/gsl-2.3-cblas.patch.bz2
- patch('gsl-2.3-cblas.patch', when="+external-cblas")
+ patch('gsl-2.3-cblas.patch', when="@2.3:2.5.99+external-cblas")
+
+ conflicts('+external-cblas', when="@:2.2.99")
- conflicts('+external-cblas', when="@:2.2.9999")
depends_on('m4', type='build', when='+external-cblas')
depends_on('autoconf', type='build', when='+external-cblas')
depends_on('automake', type='build', when='+external-cblas')
diff --git a/var/spack/repos/builtin/packages/gslib/package.py b/var/spack/repos/builtin/packages/gslib/package.py
index 37827a8c1f..bd0649aa33 100644
--- a/var/spack/repos/builtin/packages/gslib/package.py
+++ b/var/spack/repos/builtin/packages/gslib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gtk-doc/build.patch b/var/spack/repos/builtin/packages/gtk-doc/build.patch
new file mode 100644
index 0000000000..eff4dfed5a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gtk-doc/build.patch
@@ -0,0 +1,25 @@
+diff -ru gtk-doc-GTK_DOC_1_32.orig/m4/gtkdoc_jh_check_xml_catalog.m4 gtk-doc-GTK_DOC_1_32.new/m4/gtkdoc_jh_check_xml_catalog.m4
+--- gtk-doc-GTK_DOC_1_32.orig/m4/gtkdoc_jh_check_xml_catalog.m4 2021-03-17 08:00:49.717688000 -0700
++++ gtk-doc-GTK_DOC_1_32.new/m4/gtkdoc_jh_check_xml_catalog.m4 2021-03-17 08:01:30.600655000 -0700
+@@ -6,7 +6,7 @@
+ AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl
+ AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog])
+ if $jh_found_xmlcatalog && \
+- AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then
++ AC_RUN_LOG([$XMLCATALOG --noout "" "$1" >&2]); then
+ AC_MSG_RESULT([found])
+ ifelse([$3],,,[$3])
+ else
+diff -ru gtk-doc-GTK_DOC_1_32.orig/m4/gtkdoc_jh_path_xml_catalog.m4 gtk-doc-GTK_DOC_1_32.new/m4/gtkdoc_jh_path_xml_catalog.m4
+--- gtk-doc-GTK_DOC_1_32.orig/m4/gtkdoc_jh_path_xml_catalog.m4 2021-03-17 08:00:49.720681000 -0700
++++ gtk-doc-GTK_DOC_1_32.new/m4/gtkdoc_jh_path_xml_catalog.m4 2021-03-17 08:09:44.424666000 -0700
+@@ -37,6 +37,9 @@
+ break
+ fi
+ done
++ if test -n "$XML_CATALOG_FILES"; then
++ jh_found_xmlcatalog=true
++ fi
+ IFS="$jh_xml_catalog_saved_ifs"
+ fi
+ if $jh_found_xmlcatalog; then
diff --git a/var/spack/repos/builtin/packages/gtk-doc/package.py b/var/spack/repos/builtin/packages/gtk-doc/package.py
index 82706d9fdc..686a6783b2 100644
--- a/var/spack/repos/builtin/packages/gtk-doc/package.py
+++ b/var/spack/repos/builtin/packages/gtk-doc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,9 +32,12 @@ class GtkDoc(AutotoolsPackage):
depends_on('py-pygments', type=('build', 'run'))
depends_on('libxslt')
depends_on('libxml2')
- depends_on('docbook-xsl')
+ depends_on('docbook-xsl@1.78.1')
+ depends_on('docbook-xml@4.3')
# depends_on('dblatex', when='+pdf')
+ patch('build.patch')
+
def url_for_version(self, version):
"""Handle gnome's version-based custom URLs."""
url = 'https://gitlab.gnome.org/GNOME/gtk-doc/-/archive/GTK_DOC_{0}/gtk-doc-GTK_DOC_{0}.tar.gz'
diff --git a/var/spack/repos/builtin/packages/gtkmm/package.py b/var/spack/repos/builtin/packages/gtkmm/package.py
index 12a149e7ab..f3c10dd86c 100644
--- a/var/spack/repos/builtin/packages/gtkmm/package.py
+++ b/var/spack/repos/builtin/packages/gtkmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gtkorvo-atl/package.py b/var/spack/repos/builtin/packages/gtkorvo-atl/package.py
index 80dc12e34b..c46c23532e 100644
--- a/var/spack/repos/builtin/packages/gtkorvo-atl/package.py
+++ b/var/spack/repos/builtin/packages/gtkorvo-atl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py b/var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py
index 19a57f122b..56bcd1f845 100644
--- a/var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py
+++ b/var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gtkorvo-dill/package.py b/var/spack/repos/builtin/packages/gtkorvo-dill/package.py
index b708666d4f..79c65e0443 100644
--- a/var/spack/repos/builtin/packages/gtkorvo-dill/package.py
+++ b/var/spack/repos/builtin/packages/gtkorvo-dill/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gtkorvo-enet/package.py b/var/spack/repos/builtin/packages/gtkorvo-enet/package.py
index 7b86f292c7..5a359a6ecb 100644
--- a/var/spack/repos/builtin/packages/gtkorvo-enet/package.py
+++ b/var/spack/repos/builtin/packages/gtkorvo-enet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gtkplus/package.py b/var/spack/repos/builtin/packages/gtkplus/package.py
index 608bcec294..eb6b6de671 100644
--- a/var/spack/repos/builtin/packages/gtkplus/package.py
+++ b/var/spack/repos/builtin/packages/gtkplus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,42 +6,53 @@
from spack import *
-class Gtkplus(AutotoolsPackage):
- """The GTK+ 2 package contains libraries used for creating graphical user
+class Gtkplus(MesonPackage):
+ """The GTK+ package contains libraries used for creating graphical user
interfaces for applications."""
- homepage = "http://www.gtk.org"
- url = "http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-2.24.31.tar.xz"
- version('3.20.10', sha256='e81da1af1c5c1fee87ba439770e17272fa5c06e64572939814da406859e56b70')
- version('2.24.32', sha256='b6c8a93ddda5eabe3bfee1eb39636c9a03d2a56c7b62828b359bf197943c582e')
- version('2.24.31', sha256='68c1922732c7efc08df4656a5366dcc3afdc8791513400dac276009b40954658')
- version('2.24.25', sha256='38af1020cb8ff3d10dda2c8807f11e92af9d2fa4045de61c62eedb7fbc7ea5b3')
+
+ homepage = "https://www.gtk.org/"
+ url = "https://download.gnome.org/sources/gtk+/3.24/gtk+-3.24.26.tar.xz"
+
+ version('3.24.26', sha256='2cc1b2dc5cad15d25b6abd115c55ffd8331e8d4677745dd3ce6db725b4fff1e9')
+ version('3.20.10', sha256='e81da1af1c5c1fee87ba439770e17272fa5c06e64572939814da406859e56b70', deprecated=True)
+ version('2.24.32', sha256='b6c8a93ddda5eabe3bfee1eb39636c9a03d2a56c7b62828b359bf197943c582e', deprecated=True)
+ version('2.24.31', sha256='68c1922732c7efc08df4656a5366dcc3afdc8791513400dac276009b40954658', deprecated=True)
+ version('2.24.25', sha256='38af1020cb8ff3d10dda2c8807f11e92af9d2fa4045de61c62eedb7fbc7ea5b3', deprecated=True)
variant('cups', default='False', description='enable cups support')
+ # See meson.build for version requirements
+ depends_on('meson@0.48.0:', when='@3.24:', type='build')
+ depends_on('ninja', when='@3.24:', type='build')
+ # Needed to build man pages:
+ # depends_on('docbook-xml', when='@3.24:', type='build')
+ # depends_on('docbook-xsl', when='@3.24:', type='build')
+ # depends_on('libxslt', when='@3.24:', type='build')
depends_on('pkgconfig', type='build')
-
- depends_on('atk')
- depends_on('gdk-pixbuf')
- depends_on('glib')
+ depends_on('glib@2.57.2:')
+ depends_on('pango@1.41.0:+X')
+ depends_on('fribidi@0.19.7:')
+ depends_on('atk@2.35.1:')
+ depends_on('at-spi2-atk@2.15.1:', when='@3:')
+ depends_on('cairo@1.14.0:+X+pdf+gobject')
+ depends_on('gdk-pixbuf@2.30.0:')
+ depends_on('gobject-introspection@1.39.0:')
depends_on('shared-mime-info')
- # Hardcode X11 support (former +X variant),
- # see #6940 for rationale:
- depends_on('pango+X')
- depends_on('cairo+X+pdf+gobject')
- depends_on('gobject-introspection')
+ depends_on('libxkbcommon')
+ depends_on('librsvg')
+ depends_on('xrandr')
depends_on('libepoxy', when='@3:')
depends_on('libxi', when='@3:')
depends_on('inputproto', when='@3:')
depends_on('fixesproto', when='@3:')
- depends_on('at-spi2-atk', when='@3:')
depends_on('gettext', when='@3:')
depends_on('cups', when='+cups')
patch('no-demos.patch', when='@2:2.99')
def url_for_version(self, version):
- url = 'http://ftp.gnome.org/pub/gnome/sources/gtk+'
- return url + '/%s/gtk+-%s.tar.xz' % (version.up_to(2), version)
+ url = 'https://download.gnome.org/sources/gtk+/{0}/gtk+-{1}.tar.xz'
+ return url.format(version.up_to(2), version)
def patch(self):
# remove disable deprecated flag.
@@ -62,15 +73,47 @@ class Gtkplus(AutotoolsPackage):
env.prepend_path("GI_TYPELIB_PATH",
join_path(self.prefix.lib, 'girepository-1.0'))
+ def meson_args(self):
+ args = std_meson_args
+
+ if self.spec.satisfies('platform=darwin'):
+ args.extend([
+ '-Dx11_backend=false',
+ '-Dquartz_backend=true',
+ ])
+
+ args.extend([
+ '-Dgtk_doc=false',
+ '-Dman=false',
+ '-Dintrospection=true',
+ '-Dwayland_backend=false',
+ ])
+
+ return args
+
def configure_args(self):
- args = []
- # disable building of gtk-doc files following #9771
- args.append('--disable-gtk-doc-html')
true = which('true')
- args.append('GTKDOC_CHECK={0}'.format(true))
- args.append('GTKDOC_CHECK_PATH={0}'.format(true))
- args.append('GTKDOC_MKPDF={0}'.format(true))
- args.append('GTKDOC_REBASE={0}'.format(true))
+ args = [
+ '--prefix={0}'.format(self.prefix),
+ # disable building of gtk-doc files following #9771
+ '--disable-gtk-doc-html',
+ 'GTKDOC_CHECK={0}'.format(true),
+ 'GTKDOC_CHECK_PATH={0}'.format(true),
+ 'GTKDOC_MKPDF={0}'.format(true),
+ 'GTKDOC_REBASE={0}'.format(true),
+ ]
if '~cups' in self.spec:
args.append('--disable-cups')
return args
+
+ @when('@:3.20.10')
+ def meson(self, spec, prefix):
+ configure(*self.configure_args)
+
+ @when('@:3.20.10')
+ def build(self, spec, prefix):
+ make()
+
+ @when('@:3.20.10')
+ def install(self, spec, prefix):
+ make('install')
diff --git a/var/spack/repos/builtin/packages/gtksourceview/package.py b/var/spack/repos/builtin/packages/gtksourceview/package.py
index ed6737133a..4e07fd4b65 100644
--- a/var/spack/repos/builtin/packages/gtksourceview/package.py
+++ b/var/spack/repos/builtin/packages/gtksourceview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gts/package.py b/var/spack/repos/builtin/packages/gts/package.py
index 13698ec27a..2848e2f8fe 100644
--- a/var/spack/repos/builtin/packages/gts/package.py
+++ b/var/spack/repos/builtin/packages/gts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/guacamole-client/package.py b/var/spack/repos/builtin/packages/guacamole-client/package.py
index 0db64509a7..f977ad609c 100644
--- a/var/spack/repos/builtin/packages/guacamole-client/package.py
+++ b/var/spack/repos/builtin/packages/guacamole-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/guacamole-server/package.py b/var/spack/repos/builtin/packages/guacamole-server/package.py
index ea08a63639..2e1ab0b628 100644
--- a/var/spack/repos/builtin/packages/guacamole-server/package.py
+++ b/var/spack/repos/builtin/packages/guacamole-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/guidance/package.py b/var/spack/repos/builtin/packages/guidance/package.py
index e0015b7f32..7661740a3e 100644
--- a/var/spack/repos/builtin/packages/guidance/package.py
+++ b/var/spack/repos/builtin/packages/guidance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/guile/package.py b/var/spack/repos/builtin/packages/guile/package.py
index 47bfa38125..440fa367f0 100644
--- a/var/spack/repos/builtin/packages/guile/package.py
+++ b/var/spack/repos/builtin/packages/guile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gunrock/package.py b/var/spack/repos/builtin/packages/gunrock/package.py
index ae7d4215d4..81b237a78d 100644
--- a/var/spack/repos/builtin/packages/gunrock/package.py
+++ b/var/spack/repos/builtin/packages/gunrock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -60,23 +60,17 @@ See "spack info gunrock"')
def cmake_args(self):
spec = self.spec
- args = []
- args.extend([
- '-DGUNROCK_BUILD_LIB={0}'.format(
- 'ON' if '+lib' in spec else 'OFF'),
- '-DGUNROCK_BUILD_SHARED_LIBS={0}'.format(
- 'ON' if '+shared_libs' in spec else 'OFF'),
- '-DGUNROCK_BUILD_TESTS={0}'.format(
- 'ON' if '+tests' in spec else 'OFF'),
- '-DGUNROCK_MGPU_TESTS={0}'.format(
- 'ON' if '+mgpu_tests' in spec else 'OFF'),
- '-DCUDA_VERBOSE_PTXAS={0}'.format(
- 'ON' if '+cuda_verbose_ptxas' in spec else 'OFF'),
- '-DGUNROCK_GOOGLE_TESTS={0}'.format(
- 'ON' if '+google_tests' in spec else 'OFF'),
- '-DGUNROCK_CODE_COVERAGE={0}'.format(
- 'ON' if '+code_coverage' in spec else 'OFF'),
- ])
+ from_variant = self.define_from_variant
+
+ args = [
+ from_variant('GUNROCK_BUILD_LIB', 'lib'),
+ from_variant('GUNROCK_BUILD_SHARED_LIBS', 'shared_libs'),
+ from_variant('GUNROCK_BUILD_TESTS', 'tests'),
+ from_variant('GUNROCK_MGPU_TESTS', 'mgpu_tests'),
+ from_variant('CUDA_VERBOSE_PTXAS', 'cuda_verbose_ptxas'),
+ from_variant('GUNROCK_GOOGLE_TESTS', 'google_tests'),
+ from_variant('GUNROCK_CODE_COVERAGE', 'code_coverage'),
+ ]
# turn off auto detect, which undoes custom cuda arch options
args.append('-DCUDA_AUTODETECT_GENCODE=OFF')
diff --git a/var/spack/repos/builtin/packages/gurobi/package.py b/var/spack/repos/builtin/packages/gurobi/package.py
index 4922d23678..0f88acd00d 100644
--- a/var/spack/repos/builtin/packages/gurobi/package.py
+++ b/var/spack/repos/builtin/packages/gurobi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/gzip/package.py b/var/spack/repos/builtin/packages/gzip/package.py
index 81295fab7a..6056dbbf65 100644
--- a/var/spack/repos/builtin/packages/gzip/package.py
+++ b/var/spack/repos/builtin/packages/gzip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/h2database/package.py b/var/spack/repos/builtin/packages/h2database/package.py
index a4c4dcceec..edce327719 100644
--- a/var/spack/repos/builtin/packages/h2database/package.py
+++ b/var/spack/repos/builtin/packages/h2database/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/h5cpp/package.py b/var/spack/repos/builtin/packages/h5cpp/package.py
index 373aa1303d..15c97ea3ba 100644
--- a/var/spack/repos/builtin/packages/h5cpp/package.py
+++ b/var/spack/repos/builtin/packages/h5cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,8 @@ class H5cpp(CMakePackage):
maintainers = ['eschnett']
version('master', branch='master')
- version('1.10.4-5', sha256='42d0ca1aaff1ead8998a26d892a51c12b1b89023382f191dc438bd0fa4513455')
+ version('1.10.4-6', sha256='4fbc8e777dc78a37ec2fe8c7b6a47114080ffe587f083e83a2046b5e794aef93')
+ version('1.10.4-5', sha256='661ccc4d76e081afc73df71ef11d027837d92dd1089185f3650afcaec9d418ec')
variant('mpi', default=True, description='Include MPI support')
@@ -26,4 +27,9 @@ class H5cpp(CMakePackage):
depends_on('mpi', when='+mpi')
def cmake_args(self):
- return ['-DH5CPP_BUILD_TESTS=OFF']
+ return [
+ '-DHDF5_INCLUDE_DIRS=%s' %
+ self.spec['hdf5'].headers.directories[0],
+ '-DHDF5_LIBRARIES=%s' % self.spec['hdf5'].libs.directories[0],
+ '-DH5CPP_BUILD_TESTS=OFF',
+ ]
diff --git a/var/spack/repos/builtin/packages/h5hut/package.py b/var/spack/repos/builtin/packages/h5hut/package.py
index 09497c6d68..6d6e61ccd2 100644
--- a/var/spack/repos/builtin/packages/h5hut/package.py
+++ b/var/spack/repos/builtin/packages/h5hut/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/h5part/package.py b/var/spack/repos/builtin/packages/h5part/package.py
index 74246a6ea9..efe13eb707 100644
--- a/var/spack/repos/builtin/packages/h5part/package.py
+++ b/var/spack/repos/builtin/packages/h5part/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/h5utils/package.py b/var/spack/repos/builtin/packages/h5utils/package.py
index 78fd397311..2f8231c1d2 100644
--- a/var/spack/repos/builtin/packages/h5utils/package.py
+++ b/var/spack/repos/builtin/packages/h5utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/h5z-zfp/package.py b/var/spack/repos/builtin/packages/h5z-zfp/package.py
index f36f48d5b7..1e6477d241 100644
--- a/var/spack/repos/builtin/packages/h5z-zfp/package.py
+++ b/var/spack/repos/builtin/packages/h5z-zfp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hacckernels/package.py b/var/spack/repos/builtin/packages/hacckernels/package.py
index 9322819802..5820ba5eca 100644
--- a/var/spack/repos/builtin/packages/hacckernels/package.py
+++ b/var/spack/repos/builtin/packages/hacckernels/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hackrf-host/package.py b/var/spack/repos/builtin/packages/hackrf-host/package.py
index 572e3b91b0..15c15a9ae6 100644
--- a/var/spack/repos/builtin/packages/hackrf-host/package.py
+++ b/var/spack/repos/builtin/packages/hackrf-host/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hadoop/package.py b/var/spack/repos/builtin/packages/hadoop/package.py
index 26acecfc89..ad4ff12ee4 100644
--- a/var/spack/repos/builtin/packages/hadoop/package.py
+++ b/var/spack/repos/builtin/packages/hadoop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,8 +15,11 @@ class Hadoop(Package):
homepage = "http://hadoop.apache.org/"
url = "https://www.apache.org/dist/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz"
+ version('3.3.0', sha256='ea1a0f0afcdfb9b6b9d261cdce5a99023d7e8f72d26409e87f69bda65c663688')
+ version('3.2.2', sha256='97e73b46c3972cd3c40c2295bd9488843c24e8503c36e7c57f6e6ecc4e12b8c3')
version('3.2.1', sha256='f66a3a4115b8f16c1077d1a198a06854dbef0e4233291712ed08d0a10629ed37')
version('3.1.3', sha256='1e8b7ca4e3911f8ec999595f71921390e9ad7a27255fbd36af1f3a1628b67e2b')
+ version('2.10.1', sha256='273d5fa1d479d0bb96759b16cf4cbd6ba3e7f863a0778cbae55ab83417e961f0')
version('2.10.0', sha256='131750c258368be4baff5d4a83b4de2cd119bda3774ed26d1d233b6fdf33f07f')
version('2.9.2', sha256='3d2023c46b1156c1b102461ad08cbc17c8cc53004eae95dab40a1f659839f28a')
version('2.8.5', sha256='f9c726df693ce2daa4107886f603270d66e7257f77a92c9886502d6cd4a884a4')
diff --git a/var/spack/repos/builtin/packages/hal/package.py b/var/spack/repos/builtin/packages/hal/package.py
index 752feab1d8..839537afd1 100644
--- a/var/spack/repos/builtin/packages/hal/package.py
+++ b/var/spack/repos/builtin/packages/hal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/halc/package.py b/var/spack/repos/builtin/packages/halc/package.py
index e9b4ffc0aa..3f4a4bae4d 100644
--- a/var/spack/repos/builtin/packages/halc/package.py
+++ b/var/spack/repos/builtin/packages/halc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/half/package.py b/var/spack/repos/builtin/packages/half/package.py
index 5a3daf1c4f..88c02f1d9f 100644
--- a/var/spack/repos/builtin/packages/half/package.py
+++ b/var/spack/repos/builtin/packages/half/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hama/package.py b/var/spack/repos/builtin/packages/hama/package.py
index 6883155f7f..bc3c4a9c2a 100644
--- a/var/spack/repos/builtin/packages/hama/package.py
+++ b/var/spack/repos/builtin/packages/hama/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hapcut2/package.py b/var/spack/repos/builtin/packages/hapcut2/package.py
index a4581647cd..f53e9b8917 100644
--- a/var/spack/repos/builtin/packages/hapcut2/package.py
+++ b/var/spack/repos/builtin/packages/hapcut2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hapdip/package.py b/var/spack/repos/builtin/packages/hapdip/package.py
index 7e1446a0c9..dc90ac59a6 100644
--- a/var/spack/repos/builtin/packages/hapdip/package.py
+++ b/var/spack/repos/builtin/packages/hapdip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/haploview/package.py b/var/spack/repos/builtin/packages/haploview/package.py
index 298ecf6edb..c10e6beafb 100644
--- a/var/spack/repos/builtin/packages/haploview/package.py
+++ b/var/spack/repos/builtin/packages/haploview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/haproxy/package.py b/var/spack/repos/builtin/packages/haproxy/package.py
index 2b8d46c315..48e726b927 100644
--- a/var/spack/repos/builtin/packages/haproxy/package.py
+++ b/var/spack/repos/builtin/packages/haproxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hardlink/package.py b/var/spack/repos/builtin/packages/hardlink/package.py
index 10287f28cb..3d63bd6c3f 100644
--- a/var/spack/repos/builtin/packages/hardlink/package.py
+++ b/var/spack/repos/builtin/packages/hardlink/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/harfbuzz/package.py b/var/spack/repos/builtin/packages/harfbuzz/package.py
index 2a303bc97e..dd8307cc3f 100644
--- a/var/spack/repos/builtin/packages/harfbuzz/package.py
+++ b/var/spack/repos/builtin/packages/harfbuzz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,7 +25,7 @@ class Harfbuzz(AutotoolsPackage):
depends_on("glib")
depends_on("icu4c")
depends_on("freetype")
- depends_on("cairo")
+ depends_on("cairo+pdf+ft")
depends_on("zlib")
depends_on("graphite2", when='+graphite2')
@@ -40,12 +40,21 @@ class Harfbuzz(AutotoolsPackage):
return url.format(version)
+ # Function borrowed from superlu
+ def flag_handler(self, name, flags):
+ flags = list(flags)
+ if name == 'cxxflags':
+ flags.append(self.compiler.cxx11_flag)
+ if name == 'cflags':
+ if '%pgi' not in self.spec and self.spec.satisfies('%gcc@:5.1'):
+ flags.append('-std=gnu99')
+ return (None, None, flags)
+
def configure_args(self):
args = []
# disable building of gtk-doc files following #9771
args.append('--disable-gtk-doc-html')
true = which('true')
- args.append('CXXFLAGS={0}'.format(self.compiler.cxx11_flag))
args.append('GTKDOC_CHECK={0}'.format(true))
args.append('GTKDOC_CHECK_PATH={0}'.format(true))
args.append('GTKDOC_MKPDF={0}'.format(true))
diff --git a/var/spack/repos/builtin/packages/harminv/package.py b/var/spack/repos/builtin/packages/harminv/package.py
index 7aab4053ab..17f7a3cee9 100644
--- a/var/spack/repos/builtin/packages/harminv/package.py
+++ b/var/spack/repos/builtin/packages/harminv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hashcat/package.py b/var/spack/repos/builtin/packages/hashcat/package.py
index 782cc52c00..6231666107 100644
--- a/var/spack/repos/builtin/packages/hashcat/package.py
+++ b/var/spack/repos/builtin/packages/hashcat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/haveged/package.py b/var/spack/repos/builtin/packages/haveged/package.py
new file mode 100644
index 0000000000..f8180f84b6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/haveged/package.py
@@ -0,0 +1,15 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Haveged(AutotoolsPackage):
+ """A Linux entropy source using the HAVEGE algorithm."""
+
+ homepage = "https://github.com/jirka-h/haveged"
+ url = "https://github.com/jirka-h/haveged/archive/v1.9.13/haveged-1.9.13.tar.gz"
+
+ version('1.9.13', sha256='d17bd22fa1745daca5ac72e014ed3b0fe5720da4c115953124b1bf2a0aa2b04b')
diff --git a/var/spack/repos/builtin/packages/hazelcast/package.py b/var/spack/repos/builtin/packages/hazelcast/package.py
index 95354be40c..1c450b7bb0 100644
--- a/var/spack/repos/builtin/packages/hazelcast/package.py
+++ b/var/spack/repos/builtin/packages/hazelcast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hbase/package.py b/var/spack/repos/builtin/packages/hbase/package.py
index 1e87f8a297..4e1b5c91b9 100644
--- a/var/spack/repos/builtin/packages/hbase/package.py
+++ b/var/spack/repos/builtin/packages/hbase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hbm-dramsim2/package.py b/var/spack/repos/builtin/packages/hbm-dramsim2/package.py
index 6ecd8de514..75c7f4ab01 100644
--- a/var/spack/repos/builtin/packages/hbm-dramsim2/package.py
+++ b/var/spack/repos/builtin/packages/hbm-dramsim2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hc/package.py b/var/spack/repos/builtin/packages/hc/package.py
index ac7de94062..d197167bbe 100644
--- a/var/spack/repos/builtin/packages/hc/package.py
+++ b/var/spack/repos/builtin/packages/hc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hcol/package.py b/var/spack/repos/builtin/packages/hcol/package.py
index 70278eba93..56a1e25a23 100644
--- a/var/spack/repos/builtin/packages/hcol/package.py
+++ b/var/spack/repos/builtin/packages/hcol/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hcoll/package.py b/var/spack/repos/builtin/packages/hcoll/package.py
index cdcfd4be16..4b05e741c6 100644
--- a/var/spack/repos/builtin/packages/hcoll/package.py
+++ b/var/spack/repos/builtin/packages/hcoll/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hdf-eos2/hdf-eos2.nondarwin-no-single_module.patch b/var/spack/repos/builtin/packages/hdf-eos2/hdf-eos2.nondarwin-no-single_module.patch
new file mode 100644
index 0000000000..35a1736802
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf-eos2/hdf-eos2.nondarwin-no-single_module.patch
@@ -0,0 +1,27 @@
+# This patch removes the default(?) setting of passing -single_module
+# flag to the loader. From what I can gather, only the Darwin loader
+# supports that, so this patch allows building on non-Darwin systems
+diff -Naur spack-src/src/Makefile.am spack-src.patched/src/Makefile.am
+--- spack-src/src/Makefile.am 2008-02-19 13:43:18.000000000 -0500
++++ spack-src.patched/src/Makefile.am 2020-12-02 11:11:52.780822127 -0500
+@@ -6,7 +6,7 @@
+ INCLUDES=-I$(top_srcdir)/include/
+
+ # Set LDFLAGS to alow the HDF-EOS library to use extern variables from HDF4
+-LDFLAGS=-Wl,-single_module
++#LDFLAGS=-Wl,-single_module
+
+ # Build HDF-EOS2
+ lib_LTLIBRARIES=libhdfeos.la
+diff -Naur spack-src/src/Makefile.in spack-src.patched/src/Makefile.in
+--- spack-src/src/Makefile.in 2009-05-19 12:12:34.000000000 -0400
++++ spack-src.patched/src/Makefile.in 2020-12-02 11:12:06.686234377 -0500
+@@ -126,7 +126,7 @@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+
+ # Set LDFLAGS to alow the HDF-EOS library to use extern variables from HDF4
+-LDFLAGS = -Wl,-single_module
++#LDFLAGS = -Wl,-single_module
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
diff --git a/var/spack/repos/builtin/packages/hdf-eos2/package.py b/var/spack/repos/builtin/packages/hdf-eos2/package.py
new file mode 100644
index 0000000000..4c7e060dc4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf-eos2/package.py
@@ -0,0 +1,99 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import sys
+
+
+class HdfEos2(AutotoolsPackage):
+ """HDF-EOS (Hierarchical Data Format - Earth Observing System) is a
+ self-describing file format based upon HDF for standard data products
+ that are derived from EOS missions. HDF-EOS2 is based upon HDF4.
+ """
+
+ homepage = "https://hdfeos.org"
+ # The download URLs are messing, and include sha256 checksum.
+ # This is just a template. See version_list and url_for_version below
+ # Template for url_for_version. 0 is sha256 checksum, 1 is filename
+ url = "https://git.earthdata.nasa.gov/rest/git-lfs/storage/DAS/hdfeos/{0}?response-content-disposition=attachment%3B%20filename%3D%22{1}%22%3B%20filename*%3Dutf-8%27%27{1}"
+
+ # Crazy URL scheme, differing with each version, and including the
+ # sha256 checksum in the URL. Yuck
+ # The data in version_list is used to generate versions and urls
+ # In basename expansions, 0 is raw version,
+ # 1 is for version with dots => underscores
+ version_list = [
+ {'version': '2.20v1.00',
+ 'sha256': 'cb0f900d2732ab01e51284d6c9e90d0e852d61bba9bce3b43af0430ab5414903',
+ 'basename': 'HDF-EOS{0}.tar.Z'},
+ {'version': '2.19b',
+ 'sha256': 'a69993508dbf5fa6120bac3c906ab26f1ad277348dfc2c891305023cfdf5dc9d',
+ 'basename': 'hdfeos{1}.zip'}
+ ]
+
+ for vrec in version_list:
+ ver = vrec['version']
+ sha256 = vrec['sha256']
+ version(ver, sha256=sha256)
+
+ variant('shared', default=True,
+ description='Build shared libraries (can be used with +static)')
+ variant('static', default=True,
+ description='Build static libraries (can be used with +shared)')
+
+ conflicts('~static', when='~shared',
+ msg='At least one of +static or +shared must be set')
+
+ # Build dependencies
+ depends_on('hdf')
+
+ # The standard Makefile.am, etc. add a --single_module flag to LDFLAGS
+ # to pass to the linker.
+ # That appears to be only recognized by the Darwin linker, remove it
+ # if we are not running on darwin/
+ if sys.platform != "darwin":
+ patch('hdf-eos2.nondarwin-no-single_module.patch')
+
+ def url_for_version(self, version):
+ vrec = [x for x in self.version_list
+ if x['version'] == version.dotted.string]
+ if vrec:
+ fname = vrec[0]['basename'].format(version.dotted,
+ version.underscored)
+ sha256 = vrec[0]['sha256']
+ myurl = self.url.format(sha256, fname)
+ return myurl
+ else:
+ sys.exit('ERROR: cannot generate URL for version {0};'
+ 'version/checksum not found in version_list'.format(
+ version))
+
+ def configure_args(self):
+ extra_args = []
+
+ # Package really wants h4cc to be used
+ extra_args.append('CC={0}/bin/h4cc -Df2cFortran'.format(
+ self.spec['hdf'].prefix))
+
+ # We always build PIC code
+ extra_args.append('--with-pic')
+
+ # Set shared/static appropriately
+ extra_args.extend(self.enable_or_disable('shared'))
+ extra_args.extend(self.enable_or_disable('static'))
+
+ # Provide config args for dependencies
+ extra_args.append('--with-hdf4={0}'.format(self.spec['hdf'].prefix))
+ if 'jpeg' in self.spec:
+ extra_args.append('--with-jpeg={0}'.format(
+ self.spec['jpeg'].prefix))
+ if 'libszip' in self.spec:
+ extra_args.append('--with-szlib={0}'.format(
+ self.spec['libszip'].prefix))
+ if 'zlib' in self.spec:
+ extra_args.append('--with-zlib={0}'.format(
+ self.spec['zlib'].prefix))
+
+ return extra_args
diff --git a/var/spack/repos/builtin/packages/hdf-eos5/hdf-eos5.nondarwin-no-single_module.patch b/var/spack/repos/builtin/packages/hdf-eos5/hdf-eos5.nondarwin-no-single_module.patch
new file mode 100644
index 0000000000..a86c85dfe6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf-eos5/hdf-eos5.nondarwin-no-single_module.patch
@@ -0,0 +1,28 @@
+# This patch removes the default(?) setting of passing -single_module
+# flag to the loader. From what I can gather, only the Darwin loader
+# supports that, so this patch allows building on non-Darwin systems
+
+diff -Naur spack-src/src/Makefile.am spack-src.patched/src/Makefile.am
+--- spack-src/src/Makefile.am 2007-03-29 12:59:47.000000000 -0400
++++ spack-src.patched/src/Makefile.am 2020-12-04 11:25:50.789164073 -0500
+@@ -10,7 +10,7 @@
+
+ # Set LDFLAGS to allow the HDF-EOS library to use extern variables from
+ # HDF5
+-LDFLAGS=-Wl,-single_module
++#LDFLAGS=-Wl,-single_module
+
+ # Build HDF-EOS5
+ lib_LTLIBRARIES=libhe5_hdfeos.la
+diff -Naur spack-src/src/Makefile.in spack-src.patched/src/Makefile.in
+--- spack-src/src/Makefile.in 2010-08-30 11:47:05.000000000 -0400
++++ spack-src.patched/src/Makefile.in 2020-12-04 11:26:00.201443245 -0500
+@@ -126,7 +126,7 @@
+
+ # Set LDFLAGS to allow the HDF-EOS library to use extern variables from
+ # HDF5
+-LDFLAGS = -Wl,-single_module
++#LDFLAGS = -Wl,-single_module
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
diff --git a/var/spack/repos/builtin/packages/hdf-eos5/package.py b/var/spack/repos/builtin/packages/hdf-eos5/package.py
new file mode 100644
index 0000000000..18fb5f288a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf-eos5/package.py
@@ -0,0 +1,99 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import sys
+
+
+class HdfEos5(AutotoolsPackage):
+ """HDF-EOS (Hierarchical Data Format - Earth Observing System) is a
+ self-describing file format based upon HDF for standard data products
+ that are derived from EOS missions. HDF-EOS5 is based upon HDF5.
+ """
+
+ homepage = "https://hdfeos.org"
+ # The download URLs are messing, and include sha256 checksum.
+ # This is just a template. See version_list and url_for_version below
+ # Template for url_for_version. 0 is sha256 checksum, 1 is filename
+ url = "https://git.earthdata.nasa.gov/rest/git-lfs/storage/DAS/hdfeos5/{0}?response-content-disposition=attachment%3B%20filename%3D%22{1}%22%3B%20filename*%3Dutf-8%27%27{1}"
+
+ # Crazy URL scheme, differing with each version, and including the
+ # sha256 checksum in the URL. Yuck
+ # The data in version_list is used to generate versions and urls
+ # In basename expansions, 0 is raw version,
+ # 1 is for version with dots => underscores
+ version_list = [
+ {'version': '5.1.16',
+ 'sha256': '7054de24b90b6d9533329ef8dc89912c5227c83fb447792103279364e13dd452',
+ 'basename': 'HDF-EOS{0}.tar.Z'},
+ {'version': '5.1.15',
+ 'sha256': 'fbf4d085f9bf6ffad259aee1e9f60cf060e7e99c447894ad8955df02de83c92c',
+ 'basename': 'hdfeos{1}.zip'}
+ ]
+
+ for vrec in version_list:
+ ver = vrec['version']
+ sha256 = vrec['sha256']
+ version(ver, sha256=sha256)
+
+ variant('shared', default=True,
+ description='Build shared libraries (can be used with +static)')
+ variant('static', default=True,
+ description='Build shared libraries (can be used with +shared)')
+
+ conflicts('~static', when='~shared',
+ msg='At least one of +static or +shared must be set')
+
+ # Build dependencies
+ depends_on('hdf5+hl')
+
+ # The standard Makefile.am, etc. add a --single_module flag to LDFLAGS
+ # to pass to the linker.
+ # That appears to be only recognized by the Darwin linker, remove it
+ # if we are not running on darwin/
+ if sys.platform != "darwin":
+ patch('hdf-eos5.nondarwin-no-single_module.patch')
+
+ def url_for_version(self, version):
+ vrec = [x for x in self.version_list
+ if x['version'] == version.dotted.string]
+ if vrec:
+ fname = vrec[0]['basename'].format(version.dotted,
+ version.underscored)
+ sha256 = vrec[0]['sha256']
+ myurl = self.url.format(sha256, fname)
+ return myurl
+ else:
+ sys.exit('ERROR: cannot generate URL for version {0};'
+ 'version/checksum not found in version_list'.format(
+ version))
+
+ def configure_args(self):
+ extra_args = []
+
+ # Package really wants h5cc to be used
+ if self.spec['mpi']:
+ extra_args.append('CC={0}/bin/h5pcc -Df2cFortran'.format(
+ self.spec['hdf5'].prefix))
+ else:
+ extra_args.append('CC={0}/bin/h5cc -Df2cFortran'.format(
+ self.spec['hdf5'].prefix))
+
+ # We always build PIC code
+ extra_args.append('--with-pic')
+ # We always enable installation of include directories
+ extra_args.append('--enable-install-include')
+
+ # Set shared/static appropriately
+ extra_args.extend(self.enable_or_disable('shared'))
+ extra_args.extend(self.enable_or_disable('static'))
+
+ # Provide config args for dependencies
+ extra_args.append('--with-hdf5={0}'.format(self.spec['hdf5'].prefix))
+ if self.spec['zlib']:
+ extra_args.append('--with-zlib={0}'.format(
+ self.spec['zlib'].prefix))
+
+ return extra_args
diff --git a/var/spack/repos/builtin/packages/hdf/package.py b/var/spack/repos/builtin/packages/hdf/package.py
index 76c2205f27..d12aa812fd 100644
--- a/var/spack/repos/builtin/packages/hdf/package.py
+++ b/var/spack/repos/builtin/packages/hdf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -144,6 +144,14 @@ class Hdf(AutotoolsPackage):
# We should not specify '--disable-hdf4-xdr' due to a bug in the
# configure script.
config_args.append('LIBS=%s' % self.spec['rpc'].libs.link_flags)
+
+ # https://github.com/Parallel-NetCDF/PnetCDF/issues/61
+ if self.spec.satisfies('%gcc@10:'):
+ config_args.extend([
+ 'FFLAGS=-fallow-argument-mismatch',
+ 'FCFLAGS=-fallow-argument-mismatch']
+ )
+
return config_args
# Otherwise, we randomly get:
diff --git a/var/spack/repos/builtin/packages/hdf5-blosc/package.py b/var/spack/repos/builtin/packages/hdf5-blosc/package.py
index 2a535f5e69..694528213b 100644
--- a/var/spack/repos/builtin/packages/hdf5-blosc/package.py
+++ b/var/spack/repos/builtin/packages/hdf5-blosc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hdf5/hdf5_1.8_gcc10.patch b/var/spack/repos/builtin/packages/hdf5/hdf5_1.8_gcc10.patch
new file mode 100644
index 0000000000..0de8c33c09
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf5/hdf5_1.8_gcc10.patch
@@ -0,0 +1,12 @@
+diff -Naur hdf5.orig/fortran/test/tH5T_F03.f90 hdf5/fortran/test/tH5T_F03.f90
+--- hdf5.orig/fortran/test/tH5T_F03.f90 2021-01-19 13:23:11.298000000 +0100
++++ hdf5/fortran/test/tH5T_F03.f90 2021-01-19 13:19:17.637000000 +0100
+@@ -1541,7 +1541,7 @@
+ INTEGER :: A, B, C, D
+ INTEGER :: Aw, Bw, Cw, Dw
+ INTEGER :: i, j
+- INTEGER, PARAMETER :: hex = Z'00000003'
++ INTEGER, PARAMETER :: hex = INT(Z'00000003')
+ TYPE(C_PTR) :: f_ptr
+ INTEGER :: error ! Error flag
+ !
diff --git a/var/spack/repos/builtin/packages/hdf5/nag.mpi.libtool.patch b/var/spack/repos/builtin/packages/hdf5/nag.mpi.libtool.patch
new file mode 100644
index 0000000000..a6fcb1e9a9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf5/nag.mpi.libtool.patch
@@ -0,0 +1,62 @@
+--- a/bin/ltmain.sh
++++ b/bin/ltmain.sh
+@@ -8881,7 +8881,8 @@ func_mode_link ()
+ xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+ # On Darwin other compilers
+- case $CC in
++ func_cc_basename $CC
++ case $func_cc_basename_result in
+ nagfor*)
+ verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
+ ;;
+--- a/configure
++++ b/configure
+@@ -12817,6 +12817,15 @@ func_cc_basename ()
+ compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+ distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+ \-*) ;;
++ mpicc | *[\\/]mpicc | \
++ mpic++ | *[\\/]mpic++ | mpicxx | *[\\/]mpicxx | mpiCC | *[\\/]mpiCC | \
++ mpif77 | *[\\/]mpif77 | mpif90 | *[\\/]mpif90 | mpifort | *[\\/]mpifort )
++ # OpenMPI or MPICH wrapper
++ mpi_cc_temp=
++ mpi_show=`$cc_temp -show 2>/dev/null`
++ test $? -eq 0 && mpi_cc_temp=`$ECHO "$mpi_show" | cut -d' ' -f1`
++ test -z $mpi_cc_temp >/dev/null 2>&1 || cc_temp=$mpi_cc_temp
++ break;;
+ *) break;;
+ esac
+ done
+@@ -33230,6 +33239,15 @@ func_cc_basename ()
+ compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+ distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+ \-*) ;;
++ mpicc | *[\\/]mpicc | \
++ mpic++ | *[\\/]mpic++ | mpicxx | *[\\/]mpicxx | mpiCC | *[\\/]mpiCC | \
++ mpif77 | *[\\/]mpif77 | mpif90 | *[\\/]mpif90 | mpifort | *[\\/]mpifort )
++ # OpenMPI or MPICH wrapper
++ mpi_cc_temp=
++ mpi_show=`$cc_temp -show 2>/dev/null`
++ test $? -eq 0 && mpi_cc_temp=`$ECHO "$mpi_show" | cut -d' ' -f1`
++ test -z $mpi_cc_temp >/dev/null 2>&1 || cc_temp=$mpi_cc_temp
++ break;;
+ *) break;;
+ esac
+ done
+@@ -36300,6 +36318,15 @@ func_cc_basename ()
+ compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+ distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+ \-*) ;;
++ mpicc | *[\\/]mpicc | \
++ mpic++ | *[\\/]mpic++ | mpicxx | *[\\/]mpicxx | mpiCC | *[\\/]mpiCC | \
++ mpif77 | *[\\/]mpif77 | mpif90 | *[\\/]mpif90 | mpifort | *[\\/]mpifort )
++ # OpenMPI or MPICH wrapper
++ mpi_cc_temp=
++ mpi_show=`$cc_temp -show 2>/dev/null`
++ test $? -eq 0 && mpi_cc_temp=`$ECHO "$mpi_show" | cut -d' ' -f1`
++ test -z $mpi_cc_temp >/dev/null 2>&1 || cc_temp=$mpi_cc_temp
++ break;;
+ *) break;;
+ esac
+ done
diff --git a/var/spack/repos/builtin/packages/hdf5/package.py b/var/spack/repos/builtin/packages/hdf5/package.py
index abad1666bb..c6d86126e9 100644
--- a/var/spack/repos/builtin/packages/hdf5/package.py
+++ b/var/spack/repos/builtin/packages/hdf5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,6 +6,8 @@
import shutil
import sys
+from spack.util.environment import is_system_path
+
class Hdf5(AutotoolsPackage):
"""HDF5 is a data model, library, and file format for storing and managing
@@ -22,6 +24,11 @@ class Hdf5(AutotoolsPackage):
test_requires_compiler = True
+ # We rely on the *.la files to be removed and, therefore, do not try to make
+ # sure that they are correct. The following is a precaution against someone
+ # blindly changing the value to True, either here or in the baseclass.
+ install_libtool_archives = False
+
version('develop', branch='develop')
version('1.12.0', sha256='a62dcb276658cb78e6795dd29bf926ed7a9bc4edf6e77025cd2c689a8f97c17a')
@@ -39,6 +46,7 @@ class Hdf5(AutotoolsPackage):
version('1.10.0-patch1', sha256='6e78cfe32a10e6e0629393cdfddf6cfa536571efdaf85f08e35326e1b4e9eff0')
version('1.10.0', sha256='81f6201aba5c30dced5dcd62f5d5477a2790fd5850e02ac514ca8bf3e2bb375a')
+ version('1.8.22', sha256='8406d96d9355ef8961d2739fb8fd5474ad4cdf52f3cfac657733defd9709bfaa')
version('1.8.21', sha256='87d8c82eba5cf766d97cd06c054f4639c1049c4adeaa3a79f77f8bd374f80f37')
version('1.8.19', sha256='a4335849f19fae88c264fd0df046bc321a78c536b2548fc508627a790564dc38')
version('1.8.18', sha256='cdb195ad8d9e6782acf24b2488061289f615628c2ccda8457b0a0c3fb7a8a063')
@@ -133,6 +141,16 @@ class Hdf5(AutotoolsPackage):
patch('h5public-skip-mpicxx.patch', when='@:1.8.21,1.10.0:1.10.5+mpi~cxx',
sha256='b61e2f058964ad85be6ee5ecea10080bf79e73f83ff88d1fa4b602d00209da9c')
+ # Fixes BOZ literal constant error when compiled with GCC 10.
+ # The issue is described here: https://github.com/spack/spack/issues/18625
+ patch('hdf5_1.8_gcc10.patch', when='@:1.8.21',
+ sha256='0e20187cda3980a4fdff410da92358b63de7ebef2df1d7a425371af78e50f666')
+
+ # Libtool fails to recognize NAG compiler behind the MPI wrappers and apply
+ # correct linker flags enabling shared libraries. # We support only versions
+ # based on Libtool 2.4.6.
+ patch('nag.mpi.libtool.patch', when='@1.8.18:%nag+fortran+mpi+shared')
+
# The argument 'buf_size' of the C function 'h5fget_file_image_c' is
# declared as intent(in) though it is modified by the invocation. As a
# result, aggressive compilers such as Fujitsu's may do a wrong
@@ -155,6 +173,22 @@ class Hdf5(AutotoolsPackage):
url = "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-{0}/hdf5-{1}/src/hdf5-{1}.tar.gz"
return url.format(version.up_to(2), version)
+ def flag_handler(self, name, flags):
+ if '+pic' in self.spec:
+ if name == "cflags":
+ flags.append(self.compiler.cc_pic_flag)
+ elif name == "cxxflags":
+ flags.append(self.compiler.cxx_pic_flag)
+ elif name == "fflags":
+ flags.append(self.compiler.fc_pic_flag)
+
+ # Quiet warnings/errors about implicit declaration of functions in C99
+ if name == "cflags":
+ if "clang" in self.compiler.cc or "gcc" in self.compiler.cc:
+ flags.append("-Wno-implicit-function-declaration")
+
+ return (None, None, flags)
+
@when('@develop')
def autoreconf(self, spec, prefix):
autogen = Executable('./autogen.sh')
@@ -229,40 +263,34 @@ class Hdf5(AutotoolsPackage):
msg = 'cannot build a Fortran variant without a Fortran compiler'
raise RuntimeError(msg)
+ def with_or_without_szip(self, activated):
+ return '--{0}-szlib'.format('with' if activated else 'without')
+
def configure_args(self):
# Always enable this option. This does not actually enable any
# features: it only *allows* the user to specify certain
# combinations of other arguments. Enabling it just skips a
# sanity check in configure, so this doesn't merit a variant.
- extra_args = ['--enable-unsupported']
- extra_args += ['--enable-symbols=yes']
+ extra_args = ['--enable-unsupported',
+ '--enable-symbols=yes']
+
+ # Do not specify the prefix of zlib if it is in a system directory
+ # (see https://github.com/spack/spack/pull/21900).
+ zlib_prefix = self.spec['zlib'].prefix
+ extra_args.append('--with-zlib={0}'.format(
+ 'yes' if is_system_path(zlib_prefix) else zlib_prefix))
+
extra_args += self.enable_or_disable('threadsafe')
extra_args += self.enable_or_disable('cxx')
extra_args += self.enable_or_disable('hl')
extra_args += self.enable_or_disable('fortran')
extra_args += self.enable_or_disable('java')
+ extra_args += self.with_or_without('szip')
api = self.spec.variants['api'].value
if api != 'none':
extra_args.append('--with-default-api-version=' + api)
- if '+szip' in self.spec:
- szip_spec = self.spec['szip']
- # The configure script of HDF5 accepts a comma-separated tuple of
- # two paths: the first one points to the directory with include
- # files, the second one points to the directory with library files.
- # If the second path is not specified, the configure script assumes
- # that it equals to prefix/lib. However, the correct directory
- # might be prefix/lib64. It is not a problem when the building is
- # done with Spack's compiler wrapper but it makes the Libtool
- # files (*.la) invalid, which makes it problematic to use the
- # installed library outside of Spack environment.
- extra_args.append('--with-szlib=%s,%s' %
- (szip_spec.headers.directories[0],
- szip_spec.libs.directories[0]))
- else:
- extra_args.append('--without-szlib')
-
if self.spec.satisfies('@1.10:'):
if '+debug' in self.spec:
extra_args.append('--enable-build-mode=debug')
@@ -286,12 +314,9 @@ class Hdf5(AutotoolsPackage):
extra_args.append('--disable-shared')
extra_args.append('--enable-static-exec')
- if '+pic' in self.spec:
- extra_args.extend([
- 'CFLAGS=' + self.compiler.cc_pic_flag,
- 'CXXFLAGS=' + self.compiler.cxx_pic_flag,
- 'FCFLAGS=' + self.compiler.fc_pic_flag,
- ])
+ # Fujitsu Compiler does not add Fortran runtime in rpath.
+ if '+fortran %fj' in self.spec:
+ extra_args.append('LDFLAGS=-lfj90i -lfj90f -lfjsrcinfo -lelf')
if '+mpi' in self.spec:
# The HDF5 configure script warns if cxx and mpi are enabled
@@ -308,8 +333,6 @@ class Hdf5(AutotoolsPackage):
if '+fortran' in self.spec:
extra_args.append('FC=%s' % self.spec['mpi'].mpifc)
- extra_args.append('--with-zlib=%s' % self.spec['zlib'].prefix)
-
return extra_args
@run_after('configure')
@@ -324,6 +347,15 @@ class Hdf5(AutotoolsPackage):
arg for arg in m.group(1).split(' ') if arg != '-l'),
'libtool')
+ @run_after('configure')
+ def patch_libtool(self):
+ """AOCC support for HDF5"""
+ if '%aocc' in self.spec:
+ filter_file(
+ r'\$wl-soname \$wl\$soname',
+ r'-fuse-ld=ld -Wl,-soname,\$soname',
+ 'libtool', string=True)
+
@run_after('install')
@on_package_attributes(run_tests=True)
def check_install(self):
diff --git a/var/spack/repos/builtin/packages/hdfview/package.py b/var/spack/repos/builtin/packages/hdfview/package.py
index fd21cb9dca..b329610347 100644
--- a/var/spack/repos/builtin/packages/hdfview/package.py
+++ b/var/spack/repos/builtin/packages/hdfview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/healpix-cxx/package.py b/var/spack/repos/builtin/packages/healpix-cxx/package.py
index da3f1119d2..6c6925c69b 100644
--- a/var/spack/repos/builtin/packages/healpix-cxx/package.py
+++ b/var/spack/repos/builtin/packages/healpix-cxx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/heaptrack/package.py b/var/spack/repos/builtin/packages/heaptrack/package.py
index bdb6a90b76..211ea52f4c 100644
--- a/var/spack/repos/builtin/packages/heaptrack/package.py
+++ b/var/spack/repos/builtin/packages/heaptrack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,7 @@ class Heaptrack(CMakePackage):
version('1.1.0', sha256='bd247ac67d1ecf023ec7e2a2888764bfc03e2f8b24876928ca6aa0cdb3a07309')
depends_on('boost@1.41:')
- depends_on('cmake@2.8.9:')
+ depends_on('cmake@2.8.9:', type='build')
depends_on('elfutils')
depends_on('libunwind')
depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/heffte/package.py b/var/spack/repos/builtin/packages/heffte/package.py
index 7262fac7a2..a90b7d3c1c 100644
--- a/var/spack/repos/builtin/packages/heffte/package.py
+++ b/var/spack/repos/builtin/packages/heffte/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/helics/package.py b/var/spack/repos/builtin/packages/helics/package.py
index 757809caac..4f564d1256 100644
--- a/var/spack/repos/builtin/packages/helics/package.py
+++ b/var/spack/repos/builtin/packages/helics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ class Helics(CMakePackage):
version('develop', branch='develop', submodules=True)
version('master', branch='master', submodules=True)
+ version('2.7.0', sha256='ad005c0948ef4284417d429112772d0b63ebfbc62c9093c02ac10f4a333d70f4')
version('2.6.1', sha256='4b9a733a568ae8e6492f93abcd43f1aa9c53b233edcbeb0ab188dcc0d73ac928')
version('2.6.0', sha256='450cbfc0c37b77ea051d3edc12bbc0f7cf4c1a17091ae10df5214b6176eebb42')
version('2.5.2', sha256='81928f7e30233a07ae2bfe6c5489fdd958364c0549b2a3e6fdc6163d4b390311')
@@ -71,38 +72,30 @@ class Helics(CMakePackage):
def cmake_args(self):
spec = self.spec
+ from_variant = self.define_from_variant
args = [
'-DHELICS_BUILD_EXAMPLES=OFF',
'-DHELICS_BUILD_TESTS=OFF',
]
# HELICS core type CMake options
- args.append('-DENABLE_ZMQ_CORE={0}'.format(
- 'ON' if '+zmq' in spec else 'OFF'))
- args.append('-DENABLE_TCP_CORE={0}'.format(
- 'ON' if '+tcp' in spec else 'OFF'))
- args.append('-DENABLE_UDP_CORE={0}'.format(
- 'ON' if '+udp' in spec else 'OFF'))
- args.append('-DENABLE_IPC_CORE={0}'.format(
- 'ON' if '+ipc' in spec else 'OFF'))
- args.append('-DENABLE_INPROC_CORE={0}'.format(
- 'ON' if '+inproc' in spec else 'OFF'))
- args.append('-DENABLE_MPI_CORE={0}'.format(
- 'ON' if '+mpi' in spec else 'OFF'))
+ args.append(from_variant('ENABLE_ZMQ_CORE', 'zmq'))
+ args.append(from_variant('ENABLE_TCP_CORE', 'tcp'))
+ args.append(from_variant('ENABLE_UDP_CORE', 'udp'))
+ args.append(from_variant('ENABLE_IPC_CORE', 'ipc'))
+ args.append(from_variant('ENABLE_INPROC_CORE', 'inproc'))
+ args.append(from_variant('ENABLE_MPI_CORE', 'mpi'))
# HELICS shared library options
args.append('-DHELICS_DISABLE_C_SHARED_LIB={0}'.format(
'OFF' if '+c_shared' in spec else 'ON'))
- args.append('-DHELICS_BUILD_CXX_SHARED_LIB={0}'.format(
- 'ON' if '+cxx_shared' in spec else 'OFF'))
+ args.append(from_variant('HELICS_BUILD_CXX_SHARED_LIB', 'cxx_shared'))
# HELICS executable app options
- args.append('-DHELICS_BUILD_APP_EXECUTABLES={0}'.format(
- 'ON' if '+apps' in spec else 'OFF'))
+ args.append(from_variant('HELICS_BUILD_APP_EXECUTABLES', 'apps'))
args.append('-DHELICS_DISABLE_WEBSERVER={0}'.format(
'OFF' if '+webserver' in spec else 'ON'))
- args.append('-DHELICS_BUILD_BENCHMARKS={0}'.format(
- 'ON' if '+benchmarks' in spec else 'OFF'))
+ args.append(from_variant('HELICS_BUILD_BENCHMARKS', 'benchmarks'))
# Extra HELICS library dependencies
args.append('-DHELICS_DISABLE_BOOST={0}'.format(
@@ -111,12 +104,10 @@ class Helics(CMakePackage):
'OFF' if '+asio' in spec else 'ON'))
# SWIG
- args.append('-DHELICS_ENABLE_SWIG={0}'.format(
- 'ON' if '+swig' in spec else 'OFF'))
+ args.append(from_variant('HELICS_ENABLE_SWIG', 'swig'))
# Python
- args.append('-DBUILD_PYTHON_INTERFACE={0}'.format(
- 'ON' if '+python' in spec else 'OFF'))
+ args.append(from_variant('BUILD_PYTHON_INTERFACE', 'python'))
return args
diff --git a/var/spack/repos/builtin/packages/help2man/package.py b/var/spack/repos/builtin/packages/help2man/package.py
index 5ec6a24f95..8f07a29f75 100644
--- a/var/spack/repos/builtin/packages/help2man/package.py
+++ b/var/spack/repos/builtin/packages/help2man/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,9 @@ class Help2man(AutotoolsPackage, GNUMirrorPackage):
homepage = "https://www.gnu.org/software/help2man/"
gnu_mirror_path = "help2man/help2man-1.47.11.tar.xz"
+ version('1.47.16', sha256='3ef8580c5b86e32ca092ce8de43df204f5e6f714b0cd32bc6237e6cd0f34a8f4')
version('1.47.11', sha256='5985b257f86304c8791842c0c807a37541d0d6807ee973000cf8a3fe6ad47b88')
version('1.47.8', sha256='528f6a81ad34cbc76aa7dce5a82f8b3d2078ef065271ab81fda033842018a8dc')
version('1.47.4', sha256='d4ecf697d13f14dd1a78c5995f06459bff706fd1ce593d1c02d81667c0207753')
- depends_on('gettext', type='build')
depends_on('perl', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/henson/package.py b/var/spack/repos/builtin/packages/henson/package.py
index 4e6bb04755..358e223b45 100644
--- a/var/spack/repos/builtin/packages/henson/package.py
+++ b/var/spack/repos/builtin/packages/henson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hepmc/package.py b/var/spack/repos/builtin/packages/hepmc/package.py
index eb47504343..bd52994dfb 100644
--- a/var/spack/repos/builtin/packages/hepmc/package.py
+++ b/var/spack/repos/builtin/packages/hepmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,9 +8,12 @@ class Hepmc(CMakePackage):
"""The HepMC package is an object oriented, C++ event record for
High Energy Physics Monte Carlo generators and simulation."""
- homepage = "http://hepmc.web.cern.ch/hepmc/"
- url = "http://hepmc.web.cern.ch/hepmc/releases/hepmc2.06.09.tgz"
+ homepage = "https://hepmc.web.cern.ch/hepmc/"
+ url = "https://hepmc.web.cern.ch/hepmc/releases/hepmc2.06.11.tgz"
+ tags = ['hep']
+
+ version('2.06.11', sha256='86b66ea0278f803cde5774de8bd187dd42c870367f1cbf6cdaec8dc7cf6afc10')
version('2.06.10', sha256='5adedd9e3f7447e1e5fc01b72f745ab87da2c1611df89208bb3d7c6ea94c11a4')
version('2.06.09', sha256='e0f8fddd38472c5615210894444686ac5d72df3be682f7d151b562b236d9b422')
version('2.06.08', sha256='8be6c1793e0a045f07ddb88bb64b46de7e66a52e75fb72b3f82f9a3e3ba8a8ce')
@@ -35,5 +38,5 @@ class Hepmc(CMakePackage):
if version <= Version("2.06.08"):
url = "http://lcgapp.cern.ch/project/simu/HepMC/download/HepMC-{0}.tar.gz"
else:
- url = "http://hepmc.web.cern.ch/hepmc/releases/hepmc{0}.tgz"
+ url = "https://hepmc.web.cern.ch/hepmc/releases/hepmc{0}.tgz"
return url.format(version)
diff --git a/var/spack/repos/builtin/packages/hepmc3/package.py b/var/spack/repos/builtin/packages/hepmc3/package.py
index 361d3826f5..54996b5ca3 100644
--- a/var/spack/repos/builtin/packages/hepmc3/package.py
+++ b/var/spack/repos/builtin/packages/hepmc3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,8 +14,11 @@ class Hepmc3(CMakePackage):
url = "https://gitlab.cern.ch/hepmc/HepMC3/-/archive/3.2.1/HepMC3-3.2.1.tar.gz"
git = "https://gitlab.cern.ch/hepmc/HepMC3.git"
+ tags = ['hep']
+
maintainers = ['vvolkl']
+ version('3.2.3', sha256='8caadacc2c969883cd1f994b622795fc885fb4b15dad8c8ae64bcbdbf0cbd47d')
version('3.2.2', sha256='0e8cb4f78f804e38f7d29875db66f65e4c77896749d723548cc70fb7965e2d41')
version('3.2.1', sha256='6e4e4bb5708af105d4bf74efc2745e6efe704e942d46a8042f7dcae37a4739fe')
version('3.2.0', sha256='f132387763d170f25a7cc9f0bd586b83373c09acf0c3daa5504063ba460f89fc')
diff --git a/var/spack/repos/builtin/packages/hepmcanalysis/package.py b/var/spack/repos/builtin/packages/hepmcanalysis/package.py
index 5f48eced86..500a3437f1 100644
--- a/var/spack/repos/builtin/packages/hepmcanalysis/package.py
+++ b/var/spack/repos/builtin/packages/hepmcanalysis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Hepmcanalysis(MakefilePackage):
version('3.4.13', sha256='be9937c6de493a5671258919493b0caa0cecca77853a2075f5cecce1071e0029')
+ tags = ['hep']
+
depends_on('hepmc')
depends_on('fastjet')
depends_on('root')
diff --git a/var/spack/repos/builtin/packages/heppdt/package.py b/var/spack/repos/builtin/packages/heppdt/package.py
index d4d393b7aa..7951e819e6 100644
--- a/var/spack/repos/builtin/packages/heppdt/package.py
+++ b/var/spack/repos/builtin/packages/heppdt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Heppdt(AutotoolsPackage):
homepage = "https://cdcvs.fnal.gov/redmine/projects/heppdt/wiki"
url = "https://lcgpackages.web.cern.ch/lcgpackages/tarFiles/sources/HepPDT-2.06.01.tar.gz"
+ tags = ['hep']
+
version('3.04.01', sha256='2c1c39eb91295d3ded69e0d3f1a38b1cb55bc3f0cde37b725ffd5d722f63c0f6')
version('3.04.00', sha256='c5f0eefa19dbbae99f2b6a2ab1ad8fd5d5f844fbbbf96e62f0ddb68cc6a7d5f3')
version('3.03.02', sha256='409d940badbec672c139cb8972c88847b3f9a2476a336f4f7ee6924f8d08426c')
diff --git a/var/spack/repos/builtin/packages/heputils/package.py b/var/spack/repos/builtin/packages/heputils/package.py
index e856d7b5d0..6c839066bd 100644
--- a/var/spack/repos/builtin/packages/heputils/package.py
+++ b/var/spack/repos/builtin/packages/heputils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Heputils(MakefilePackage):
homepage = "https://bitbucket.org/andybuckley/heputils/src/default/"
url = "https://bitbucket.org/andybuckley/heputils/get/heputils-1.3.2.tar.gz"
+ tags = ['hep']
+
version('1.3.2', sha256='be43586979ab1a81a55348d795c2f63a5da19fc6367d5f66f354217c76c809c0')
version('1.3.1', sha256='7f33ef44364a3d3a39cc65005fb6aa9dfd06bd1b18b41151c0e5e3d28d6ba15b')
version('1.3.0', sha256='1ec9d9d71d409ce6b2e668e4927b1090ddf2ee9acf25457f767925cf89b24852')
diff --git a/var/spack/repos/builtin/packages/hercules/package.py b/var/spack/repos/builtin/packages/hercules/package.py
index 6754581999..fa70625625 100644
--- a/var/spack/repos/builtin/packages/hercules/package.py
+++ b/var/spack/repos/builtin/packages/hercules/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/herwig3/package.py b/var/spack/repos/builtin/packages/herwig3/package.py
index 6f529c10bf..cc8cafb5ac 100644
--- a/var/spack/repos/builtin/packages/herwig3/package.py
+++ b/var/spack/repos/builtin/packages/herwig3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Herwig3(AutotoolsPackage):
homepage = "https://herwig.hepforge.org"
url = "https://herwig.hepforge.org/downloads/Herwig-7.2.1.tar.bz2"
+ tags = ['hep']
+
version('7.2.1', sha256='d4fff32f21c5c08a4b2e563c476b079859c2c8e3b78d853a8a60da96d5eea686')
depends_on('autoconf', type='build')
diff --git a/var/spack/repos/builtin/packages/herwigpp/package.py b/var/spack/repos/builtin/packages/herwigpp/package.py
index c3cdf7791d..d6d4988393 100644
--- a/var/spack/repos/builtin/packages/herwigpp/package.py
+++ b/var/spack/repos/builtin/packages/herwigpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Herwigpp(AutotoolsPackage):
homepage = "https://herwig.hepforge.org/"
url = "http://lcgpackages.web.cern.ch/lcgpackages/tarFiles/sources/MCGeneratorsTarFiles/Herwig++-2.7.1.tar.bz2"
+ tags = ['hep']
+
version('2.7.1', '80a189376bb65f5ec4e64f42e76c00ea9102d8224010563a424fc11e619a6ad6')
patch('herwig++-2.7.1.patch', when='@2.7.1', level=0)
diff --git a/var/spack/repos/builtin/packages/hevea/package.py b/var/spack/repos/builtin/packages/hevea/package.py
new file mode 100644
index 0000000000..cc15269458
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hevea/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Hevea(MakefilePackage):
+ """Hevea a fast Latex to HTML translator"""
+
+ homepage = "http://hevea.inria.fr/"
+ url = "https://github.com/maranget/hevea/archive/v2.35.tar.gz"
+ git = "https://github.com/maranget/hevea.git"
+
+ maintainers = ['scemama', 'cessenat']
+
+ version('develop', branch='master')
+ version('2.35', sha256='78f834cc7a8112ec59d0b8acdfbed0c8ac7dbb85f964d0be1f4eed04f25cdf54')
+ version('2.34', sha256='f505a2a5bafdc2ea389ec521876844e6fdcb5c1b656396b7e8421c1631469ea2')
+ version('2.33', sha256='122f9023f9cfe8b41dd8965b7d9669df21bf41e419bcf5e9de5314f428380d0f')
+ version('2.32', sha256='f0c12ee3936364a3aa26da384e3d2ad2344be0091f04f9531f04ecb1dca98aca')
+
+ # Dependency demands ocamlbuild
+ depends_on('ocaml')
+ depends_on('ocamlbuild')
+
+ def edit(self, spec, prefix):
+ env['PREFIX'] = self.spec.prefix
diff --git a/var/spack/repos/builtin/packages/hibench/package.py b/var/spack/repos/builtin/packages/hibench/package.py
index d32dac6eac..a4f0bfd1c4 100644
--- a/var/spack/repos/builtin/packages/hibench/package.py
+++ b/var/spack/repos/builtin/packages/hibench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hic-pro/package.py b/var/spack/repos/builtin/packages/hic-pro/package.py
index 2d6bdf63a8..6ddc63d00a 100644
--- a/var/spack/repos/builtin/packages/hic-pro/package.py
+++ b/var/spack/repos/builtin/packages/hic-pro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hicolor-icon-theme/package.py b/var/spack/repos/builtin/packages/hicolor-icon-theme/package.py
new file mode 100644
index 0000000000..7e898d5bdb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hicolor-icon-theme/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class HicolorIconTheme(AutotoolsPackage):
+ """icon-theme contains the standard also references the default
+ icon theme called hicolor."""
+
+ homepage = "https://www.freedesktop.org/wiki/Software/icon-theme/"
+ url = "http://icon-theme.freedesktop.org/releases/hicolor-icon-theme-0.17.tar.xz"
+
+ version('0.17', sha256='317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d588a9d8')
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_dependent_run_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_build_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
+
+ def setup_run_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/highfive/package.py b/var/spack/repos/builtin/packages/highfive/package.py
index ed43ea26e3..0818bdbaa4 100644
--- a/var/spack/repos/builtin/packages/highfive/package.py
+++ b/var/spack/repos/builtin/packages/highfive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/highwayhash/package.py b/var/spack/repos/builtin/packages/highwayhash/package.py
index 77c3e1414d..7673280221 100644
--- a/var/spack/repos/builtin/packages/highwayhash/package.py
+++ b/var/spack/repos/builtin/packages/highwayhash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hiop/package.py b/var/spack/repos/builtin/packages/hiop/package.py
index f0603381dd..4751805e93 100644
--- a/var/spack/repos/builtin/packages/hiop/package.py
+++ b/var/spack/repos/builtin/packages/hiop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
from spack import *
-class Hiop(CMakePackage):
+class Hiop(CMakePackage, CudaPackage):
"""HiOp is an optimization solver for solving certain mathematical
optimization problems expressed as nonlinear programming problems.
HiOp is a lightweight HPC solver that leverages application's existing
@@ -14,20 +14,58 @@ class Hiop(CMakePackage):
specialized linear algebra kernels."""
homepage = "https://github.com/LLNL/hiop"
- git = "https://github.com/LLNL/hiop.git"
+ git = "https://github.com/LLNL/hiop.git"
+ # Most recent tagged snapshot is the preferred version when profiling.
+ version('0.4.1', tag='v0.4.1')
+ version('0.4', tag='v0.4')
+ version('0.3.99.3', tag='v0.3.99.3')
+ version('0.3.99.2', tag='v0.3.99.2')
+ version('0.3.99.1', tag='v0.3.99.1')
+ version('0.3.99.0', tag='v0.3.99.0')
+ version('0.3', tag='v0.3')
+ version('0.2', tag='v0.2')
version('0.1', tag='v0.1')
- variant('mpi', default=True,
- description='Enable/Disable MPI')
+ # Development branches
+ version('master', branch='master')
+ version('develop', branch='develop')
- variant('deepchecking', default=True,
- description='Ultra safety checks - \
- used for increased robustness and self-diagnostics')
+ variant(
+ 'jsrun',
+ default=False,
+ description='Enable/Disable jsrun command for testing')
+ variant(
+ 'shared',
+ default=False,
+ description='Enable/Disable shared libraries')
+ variant('mpi', default=True, description='Enable/Disable MPI')
+ variant('raja', default=False, description='Enable/Disable RAJA')
+ variant('kron', default=False, description='Enable/Disable Kron reduction')
+ variant(
+ 'sparse',
+ default=False,
+ description='Enable/Disable Sparse linear algebra')
+ variant('deepchecking', default=False,
+ description='Ultra safety checks - '
+ 'used for increased robustness and self-diagnostics')
- depends_on('mpi', when='+mpi')
depends_on('lapack')
depends_on('blas')
+ depends_on('cmake@3.18:', type='build')
+
+ depends_on('mpi', when='+mpi')
+
+ depends_on('magma', when='+cuda')
+ depends_on('magma@2.5.4', when='@0.3.99.1:+cuda')
+
+ depends_on('raja', when='+raja')
+ depends_on('umpire', when='+raja')
+
+ depends_on('suite-sparse', when='+kron')
+
+ depends_on('coinhsl', when='+sparse')
+ depends_on('metis', when='+sparse')
flag_handler = build_system_flags
@@ -35,16 +73,6 @@ class Hiop(CMakePackage):
args = []
spec = self.spec
- if '+mpi' in spec:
- args.append("-DWITH_MPI=ON")
- else:
- args.append("-DWITH_MPI=OFF")
-
- if '+deepchecking' in spec:
- args.append("-DDEEP_CHECKING=ON")
- else:
- args.append("-DDEEP_CHECKING=OFF")
-
lapack_blas_libs = (
spec['lapack'].libs + spec['blas'].libs).joined(';')
args.extend([
@@ -52,4 +80,50 @@ class Hiop(CMakePackage):
'-DLAPACK_LIBRARIES={0}'.format(lapack_blas_libs)
])
+ args.append(self.define_from_variant('HIOP_BUILD_SHARED', 'shared'))
+ args.append(self.define_from_variant('HIOP_USE_MPI', 'mpi'))
+ args.append(self.define_from_variant('HIOP_DEEPCHECKS', 'deepchecking'))
+ args.append(self.define_from_variant('HIOP_USE_GPU', 'cuda'))
+ args.append(self.define_from_variant('HIOP_USE_CUDA', 'cuda'))
+ args.append(self.define_from_variant('HIOP_USE_MAGMA', 'cuda'))
+ args.append(self.define_from_variant('HIOP_USE_RAJA', 'raja'))
+ args.append(self.define_from_variant('HIOP_USE_UMPIRE', 'raja'))
+ args.append(self.define_from_variant('HIOP_WITH_KRON_REDUCTION', 'kron'))
+ args.append(self.define_from_variant('HIOP_SPARSE', 'sparse'))
+ args.append(self.define_from_variant('HIOP_USE_COINHSL', 'sparse'))
+ args.append(self.define_from_variant('HIOP_TEST_WITH_BSUB', 'jsrun'))
+
+ if '+mpi' in spec:
+ args.append('-DMPI_HOME={0}'.format(spec['mpi'].prefix))
+ args.append('-DMPI_C_COMPILER={0}'.format(spec['mpi'].mpicc))
+ args.append('-DMPI_CXX_COMPILER={0}'.format(spec['mpi'].mpicxx))
+ args.append('-DMPI_Fortran_COMPILER={0}'.format(spec['mpi'].mpifc))
+
+ # HIP flags are a part of the buildsystem, but full support is not
+ # yet ready for public release
+ args.append("-DHIOP_USE_HIP=OFF")
+
+ if '+cuda' in spec:
+ cuda_arch_list = spec.variants['cuda_arch'].value
+ cuda_arch = cuda_arch_list[0]
+ if cuda_arch != 'none':
+ args.append("-DHIOP_NVCC_ARCH=sm_{0}".format(cuda_arch))
+ args.append("-DCMAKE_CUDA_ARCHITECTURES={0}".format(cuda_arch))
+ if '+magma' in spec:
+ args.append(
+ "-DHIOP_MAGMA_DIR={0}".format(spec['magma'].prefix))
+
+ if '+kron' in spec:
+ args.append(
+ "-DHIOP_UMFPACK_DIR={0}".format(spec['suite-sparse'].prefix))
+
+ # Unconditionally disable strumpack, even when +sparse. This may be
+ # used in place of COINHSL for sparse interface, however this is not
+ # fully supported in spack at the moment.
+ args.append("-DHIOP_USE_STRUMPACK=OFF")
+
+ if '+sparse' in spec:
+ args.append(
+ "-DHIOP_COINHSL_DIR={0}".format(spec['coinhsl'].prefix))
+
return args
diff --git a/var/spack/repos/builtin/packages/hip-rocclr/package.py b/var/spack/repos/builtin/packages/hip-rocclr/package.py
index 41e330b40b..deb9f743ed 100644
--- a/var/spack/repos/builtin/packages/hip-rocclr/package.py
+++ b/var/spack/repos/builtin/packages/hip-rocclr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class HipRocclr(CMakePackage):
runtimes to work on Windows as well as on Linux without much effort."""
homepage = "https://github.com/ROCm-Developer-Tools/ROCclr"
+ git = "https://github.com/ROCm-Developer-Tools/ROCclr.git"
maintainers = ['srekolam', 'arjun-raj-kuppala']
@@ -24,16 +25,24 @@ class HipRocclr(CMakePackage):
url = "https://github.com/ROCm-Developer-Tools/ROCclr/archive/rocm-{0}.tar.gz"
return url.format(version)
+ version('master', branch='main')
+
+ version('4.2.0', sha256='c57525af32c59becf56fd83cdd61f5320a95024d9baa7fb729a01e7a9fcdfd78')
+ version('4.1.0', sha256='9eb1d88cfc9474979aaf29b99bcf9d3769a0f7f1f8f10660941aabf83d9eeb0c')
+ version('4.0.0', sha256='8db502d0f607834e3b882f939d33e8abe2f9b55ddafaf1b0c2cd29a0425ed76a')
+ version('3.10.0', sha256='d1ac02840c2dcb3d5fa3008fe9e313767ebe6d1dcf978a924341834ec96ebfe2')
version('3.9.0', sha256='d248958672ae35ab7f9fbd83827ccf352e2756dfa7819f6b614ace2e1a9a064e')
version('3.8.0', sha256='10d8aa6f5af7b51813015da603c4e75edc863c3530793f6ed9769ca345c08ed6')
version('3.7.0', sha256='a49f464bb2eab6317e87e3cc249aba3b2517a34fbdfe50175f0437f69a219adc')
version('3.5.0', sha256='87c1ee9f02b8aa487b628c543f058198767c474cec3d21700596a73c028959e1')
depends_on('cmake@3:', type='build')
- depends_on('mesa~llvm@18.3: swr=none', type='link')
- depends_on('libelf', type='link', when="@3.7.0:")
+ depends_on('mesa18~llvm@18.3: swr=none', type='link')
+ depends_on('libelf', type='link', when="@3.7.0:3.8.0")
depends_on('numactl', type='link', when="@3.7.0:")
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
@@ -65,6 +74,7 @@ class HipRocclr(CMakePackage):
destination='',
placement='opencl-on-vdi',
when='@3.8.0')
+
resource(name='opencl-on-vdi',
url='https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-3.9.0.tar.gz',
sha256='286ff64304905384ce524cd8794c28aee216befd6c9267d4187a12e5a21e2daf',
@@ -73,6 +83,42 @@ class HipRocclr(CMakePackage):
placement='opencl-on-vdi',
when='@3.9.0')
+ resource(name='opencl-on-vdi',
+ url='https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-3.10.0.tar.gz',
+ sha256='3aa9dc5a5f570320b04b35ee129ce9ff21062d2770df934c6c307913f975e93d',
+ expand=True,
+ destination='',
+ placement='opencl-on-vdi',
+ when='@3.10.0')
+
+ resource(name='opencl-on-vdi',
+ url='https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-4.0.0.tar.gz',
+ sha256='d43ea5898c6b9e730b5efabe8367cc136a9260afeac5d0fe85b481d625dd7df1',
+ expand=True,
+ destination='',
+ placement='opencl-on-vdi',
+ when='@4.0.0')
+
+ resource(name='opencl-on-vdi',
+ url='https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-4.1.0.tar.gz',
+ sha256='0729e6c2adf1e3cf649dc6e679f9cb936f4f423f4954ad9852857c0a53ef799c',
+ expand=True,
+ destination='',
+ placement='opencl-on-vdi',
+ when='@4.1.0')
+ resource(name='opencl-on-vdi',
+ url='https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-4.2.0.tar.gz',
+ sha256='18133451948a83055ca5ebfb5ba1bd536ed0bcb611df98829f1251a98a38f730',
+ expand=True,
+ destination='',
+ placement='opencl-on-vdi',
+ when='@4.2.0')
+ resource(name='opencl-on-vdi',
+ git='https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime.git',
+ destination='',
+ placement='opencl-on-vdi',
+ when='@master')
+
@run_after('install')
def deploy_missing_files(self):
if '@3.5.0' in self.spec:
diff --git a/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo-and-remove-compiler-rt-linkage-for-host.4.2.0.patch b/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo-and-remove-compiler-rt-linkage-for-host.4.2.0.patch
new file mode 100644
index 0000000000..87f64923dd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo-and-remove-compiler-rt-linkage-for-host.4.2.0.patch
@@ -0,0 +1,47 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f97fb83..a059c42 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -72,7 +72,17 @@ list(GET VERSION_LIST 0 HIP_VERSION_MAJOR)
+ list(GET VERSION_LIST 1 HIP_VERSION_MINOR)
+ set(HIP_VERSION_GITDATE 0)
+
+-find_package(Git)
++# only look for git when we have a git repo
++if (IS_DIRECTORY "${PROJECT_SOURCE_DIR}/.git")
++ find_package(Git)
++endif()
++
++# FIXME: Two different version strings used.
++
++set(HIP_PACKAGING_VERSION_PATCH "0")
++set(HIP_VERSION_GITDATE "0")
++set(HIP_VERSION_PATCH "0")
++
+
+ # FIXME: Two different version strings used.
+ if(GIT_FOUND)
+@@ -118,9 +128,6 @@ if(GIT_FOUND)
+ else()
+ set(HIP_PACKAGING_VERSION_PATCH ${HIP_VERSION_GITDATE}.${HIP_VERSION_GITCOUNT}-${HIP_VERSION_GITHASH})
+ endif()
+-else()
+- # FIXME: Some parts depend on this being set.
+- set(HIP_PACKAGING_VERSION_PATCH "0")
+ endif()
+
+ ## Debian package specific variables
+diff --git a/hip-config.cmake.in b/hip-config.cmake.in
+index cbb4ffe..94e2ec1 100644
+--- a/hip-config.cmake.in
++++ b/hip-config.cmake.in
+@@ -265,9 +265,6 @@ if(HIP_COMPILER STREQUAL "clang")
+ endif()
+
+ # Add support for __fp16 and _Float16, explicitly link with compiler-rt
+- set_property(TARGET hip::host APPEND PROPERTY
+- INTERFACE_LINK_LIBRARIES "-L\"${HIP_CLANG_INCLUDE_PATH}/../lib/linux\" -lclang_rt.builtins-x86_64"
+- )
+ set_property(TARGET hip::device APPEND PROPERTY
+ INTERFACE_LINK_LIBRARIES "-L\"${HIP_CLANG_INCLUDE_PATH}/../lib/linux\" -lclang_rt.builtins-x86_64"
+ )
diff --git a/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.3.10.0.patch b/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.3.10.0.patch
new file mode 100644
index 0000000000..d7f1a8dff3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.3.10.0.patch
@@ -0,0 +1,56 @@
+From 3a05d9ee5af2d318d27ee4b8e81542e2c81b9d5a Mon Sep 17 00:00:00 2001
+From: Harmen Stoppels <harmenstoppels@gmail.com>
+Date: Mon, 11 Jan 2021 16:38:14 +0100
+Subject: [PATCH] Improve compilation without git repo
+
+---
+ CMakeLists.txt | 17 +++++++++--------
+ 1 file changed, 9 insertions(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7831bb4d..c0c7a536 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -42,9 +42,17 @@ string(REPLACE "." ";" VERSION_LIST ${HIP_BASE_VERSION})
+ list(GET VERSION_LIST 0 HIP_VERSION_MAJOR)
+ list(GET VERSION_LIST 1 HIP_VERSION_MINOR)
+
+-find_package(Git)
++# only look for git when we have a git repo
++if (IS_DIRECTORY "${PROJECT_SOURCE_DIR}/.git")
++ find_package(Git)
++endif()
+
+ # FIXME: Two different version strings used.
++
++set(HIP_PACKAGING_VERSION_PATCH "0")
++set(HIP_VERSION_GITDATE "0")
++set(HIP_VERSION_PATCH "0")
++
+ if(GIT_FOUND)
+ # get date information based on UTC
+ # use the last two digits of year + week number + day in the week as HIP_VERSION_GITDATE
+@@ -88,9 +96,6 @@ if(GIT_FOUND)
+ else()
+ set(HIP_PACKAGING_VERSION_PATCH ${HIP_VERSION_GITDATE}.${HIP_VERSION_GITCOUNT}-${HIP_VERSION_GITHASH})
+ endif()
+-else()
+- # FIXME: Some parts depend on this being set.
+- set(HIP_PACKAGING_VERSION_PATCH "0")
+ endif()
+
+ ## Debian package specific variables
+@@ -488,10 +493,6 @@ endif()
+ # Generate .hipVersion
+ file(WRITE "${PROJECT_BINARY_DIR}/.hipVersion" ${_versionInfo})
+
+-if(NOT DEFINED HIP_VERSION_GITDATE)
+- set(HIP_VERSION_GITDATE 0)
+-endif()
+-
+ # Build doxygen documentation
+ find_program(DOXYGEN_EXE doxygen)
+ if(DOXYGEN_EXE)
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.3.7.0.patch b/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.3.7.0.patch
new file mode 100644
index 0000000000..2bb5074df2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.3.7.0.patch
@@ -0,0 +1,56 @@
+From db2a538d9beaef9092dff19c36ed8a2e291bc69a Mon Sep 17 00:00:00 2001
+From: Harmen Stoppels <harmenstoppels@gmail.com>
+Date: Mon, 11 Jan 2021 16:38:14 +0100
+Subject: [PATCH 1/2] Improve compilation without git repo
+
+---
+ CMakeLists.txt | 17 +++++++++--------
+ 1 file changed, 9 insertions(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7f5bdad9..ca0e7ed4 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -44,9 +44,17 @@ string(REPLACE "." ";" VERSION_LIST ${HIP_BASE_VERSION})
+ list(GET VERSION_LIST 0 HIP_VERSION_MAJOR)
+ list(GET VERSION_LIST 1 HIP_VERSION_MINOR)
+
+-find_package(Git)
++# only look for git when we have a git repo
++if (IS_DIRECTORY "${PROJECT_SOURCE_DIR}/.git")
++ find_package(Git)
++endif()
+
+ # FIXME: Two different version strings used.
++
++set(HIP_PACKAGING_VERSION_PATCH "0")
++set(HIP_VERSION_GITDATE "0")
++set(HIP_VERSION_PATCH "0")
++
+ if(GIT_FOUND)
+ # get date information based on UTC
+ # use the last two digits of year + week number + day in the week as HIP_VERSION_GITDATE
+@@ -90,9 +98,6 @@ if(GIT_FOUND)
+ else()
+ set(HIP_PACKAGING_VERSION_PATCH ${HIP_VERSION_GITDATE}.${HIP_VERSION_GITCOUNT}-${HIP_VERSION_GITHASH})
+ endif()
+-else()
+- # FIXME: Some parts depend on this being set.
+- set(HIP_PACKAGING_VERSION_PATCH "0")
+ endif()
+
+ add_to_config(_versionInfo HIP_VERSION_MAJOR)
+@@ -447,10 +452,6 @@ endif()
+ # Generate .hipVersion
+ file(WRITE "${PROJECT_BINARY_DIR}/.hipVersion" ${_versionInfo})
+
+-if(NOT DEFINED HIP_VERSION_GITDATE)
+- set(HIP_VERSION_GITDATE 0)
+-endif()
+-
+ # Generate hip_version.h
+ set(_versionInfoHeader
+ "// Auto-generated by cmake\n
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.4.1.0.patch b/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.4.1.0.patch
new file mode 100644
index 0000000000..f5b59e5b6f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hip/0003-Improve-compilation-without-git-repo.4.1.0.patch
@@ -0,0 +1,44 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 483f8c9..8ddf76e 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -52,7 +52,16 @@ string(REPLACE "." ";" VERSION_LIST ${HIP_BASE_VERSION})
+ list(GET VERSION_LIST 0 HIP_VERSION_MAJOR)
+ list(GET VERSION_LIST 1 HIP_VERSION_MINOR)
+
+-find_package(Git)
++# only look for git when we have a git repo
++if (IS_DIRECTORY "${PROJECT_SOURCE_DIR}/.git")
++ find_package(Git)
++endif()
++
++# FIXME: Two different version strings used.
++
++set(HIP_PACKAGING_VERSION_PATCH "0")
++set(HIP_VERSION_GITDATE "0")
++set(HIP_VERSION_PATCH "0")
+
+ # FIXME: Two different version strings used.
+ if(GIT_FOUND)
+@@ -98,9 +107,6 @@ if(GIT_FOUND)
+ else()
+ set(HIP_PACKAGING_VERSION_PATCH ${HIP_VERSION_GITDATE}.${HIP_VERSION_GITCOUNT}-${HIP_VERSION_GITHASH})
+ endif()
+-else()
+- # FIXME: Some parts depend on this being set.
+- set(HIP_PACKAGING_VERSION_PATCH "0")
+ endif()
+
+ ## Debian package specific variables
+@@ -295,10 +301,6 @@ file(WRITE "${PROJECT_BINARY_DIR}/.hipInfo" ${_buildInfo})
+ # Generate .hipVersion
+ file(WRITE "${PROJECT_BINARY_DIR}/.hipVersion" ${_versionInfo})
+
+-if(NOT DEFINED HIP_VERSION_GITDATE)
+- set(HIP_VERSION_GITDATE 0)
+-endif()
+-
+ # Build doxygen documentation
+ find_program(DOXYGEN_EXE doxygen)
+ if(DOXYGEN_EXE)
+
diff --git a/var/spack/repos/builtin/packages/hip/0004-Drop-clang-rt-builtins-linking-on-hip-host.3.10.0.patch b/var/spack/repos/builtin/packages/hip/0004-Drop-clang-rt-builtins-linking-on-hip-host.3.10.0.patch
new file mode 100644
index 0000000000..a930858378
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hip/0004-Drop-clang-rt-builtins-linking-on-hip-host.3.10.0.patch
@@ -0,0 +1,32 @@
+From 8b266132ee180ff8cc17b394ba64850f207a3dab Mon Sep 17 00:00:00 2001
+From: Harmen Stoppels <harmenstoppels@gmail.com>
+Date: Tue, 12 Jan 2021 12:26:44 +0100
+Subject: [PATCH] Drop clang rt builtins linking on hip::host
+
+Ref this comment
+https://github.com/ROCm-Developer-Tools/HIP/pull/2217#discussion_r555402581:
+
+> Yea, this should only be linked on hip::device as I believe its needed
+> for __fp16 support on the GPU. If users need this on the host-side,
+> then they should explicitly add it.
+---
+ hip-config.cmake.in | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/hip-config.cmake.in b/hip-config.cmake.in
+index 6dfbd527..0ac1b659 100644
+--- a/hip-config.cmake.in
++++ b/hip-config.cmake.in
+@@ -206,9 +206,6 @@ if(HIP_COMPILER STREQUAL "clang")
+ endif()
+
+ # Add support for __fp16 and _Float16, explicitly link with compiler-rt
+- set_property(TARGET hip::host APPEND PROPERTY
+- INTERFACE_LINK_LIBRARIES -L${HIP_CLANG_INCLUDE_PATH}/../lib/linux -lclang_rt.builtins-x86_64
+- )
+ set_property(TARGET hip::device APPEND PROPERTY
+ INTERFACE_LINK_LIBRARIES -L${HIP_CLANG_INCLUDE_PATH}/../lib/linux -lclang_rt.builtins-x86_64
+ )
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/hip/0004-Drop-clang-rt-builtins-linking-on-hip-host.3.7.0.patch b/var/spack/repos/builtin/packages/hip/0004-Drop-clang-rt-builtins-linking-on-hip-host.3.7.0.patch
new file mode 100644
index 0000000000..936b333277
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hip/0004-Drop-clang-rt-builtins-linking-on-hip-host.3.7.0.patch
@@ -0,0 +1,35 @@
+From 053bb794c57424fc47d53d8914bca1dc8d776a34 Mon Sep 17 00:00:00 2001
+From: Harmen Stoppels <harmenstoppels@gmail.com>
+Date: Tue, 12 Jan 2021 12:26:44 +0100
+Subject: [PATCH 2/2] Drop clang rt builtins linking on hip::host
+
+Ref this comment
+https://github.com/ROCm-Developer-Tools/HIP/pull/2217#discussion_r555402581:
+
+> Yea, this should only be linked on hip::device as I believe its needed
+> for __fp16 support on the GPU. If users need this on the host-side,
+> then they should explicitly add it.
+---
+ hip-config.cmake.in | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/hip-config.cmake.in b/hip-config.cmake.in
+index ba340134..4daff392 100644
+--- a/hip-config.cmake.in
++++ b/hip-config.cmake.in
+@@ -204,12 +204,6 @@ if(HIP_COMPILER STREQUAL "clang")
+ endif()
+
+ # Add support for __fp16 and _Float16, explicitly link with compiler-rt
+- set_property(TARGET hip::host APPEND PROPERTY
+- INTERFACE_COMPILE_OPTIONS -L${HIP_CLANG_INCLUDE_PATH}/../lib/linux -lclang_rt.builtins-x86_64
+- )
+- set_property(TARGET hip::host APPEND PROPERTY
+- INTERFACE_LINK_LIBRARIES -L${HIP_CLANG_INCLUDE_PATH}/../lib/linux -lclang_rt.builtins-x86_64
+- )
+ set_property(TARGET hip::device APPEND PROPERTY
+ INTERFACE_COMPILE_OPTIONS -L${HIP_CLANG_INCLUDE_PATH}/../lib/linux -lclang_rt.builtins-x86_64
+ )
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/hip/package.py b/var/spack/repos/builtin/packages/hip/package.py
index d983244a0e..7d2b2699e9 100644
--- a/var/spack/repos/builtin/packages/hip/package.py
+++ b/var/spack/repos/builtin/packages/hip/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack.util.prefix import Prefix
+from spack.hooks.sbang import filter_shebang
import os
@@ -13,10 +14,15 @@ class Hip(CMakePackage):
single source code."""
homepage = "https://github.com/ROCm-Developer-Tools/HIP"
- url = "https://github.com/ROCm-Developer-Tools/HIP/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCm-Developer-Tools/HIP.git"
+ url = "https://github.com/ROCm-Developer-Tools/HIP/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='ecb929e0fc2eaaf7bbd16a1446a876a15baf72419c723734f456ee62e70b4c24')
+ version('4.1.0', sha256='e21c10b62868ece7aa3c8413ec0921245612d16d86d81fe61797bf9a64bc37eb')
+ version('4.0.0', sha256='d7b78d96cec67c55b74ea3811ce861b16d300410bc687d0629e82392e8d7c857')
+ version('3.10.0', sha256='0082c402f890391023acdfd546760f41cb276dffc0ffeddc325999fd2331d4e8')
version('3.9.0', sha256='25ad58691456de7fd9e985629d0ed775ba36a2a0e0b21c086bd96ba2fb0f7ed1')
version('3.8.0', sha256='6450baffe9606b358a4473d5f3e57477ca67cff5843a84ee644bcf685e75d839')
version('3.7.0', sha256='757b392c3beb29beea27640832fbad86681dbd585284c19a4c2053891673babd')
@@ -24,10 +30,11 @@ class Hip(CMakePackage):
depends_on('cmake@3:', type='build')
depends_on('perl@5.10:', type=('build', 'run'))
- depends_on('mesa~llvm@18.3:')
+ depends_on('mesa18~llvm@18.3:')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
- depends_on('hip-rocclr@' + ver, type='build', when='@' + ver)
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type=('build', 'run'), when='@' + ver)
depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
depends_on('comgr@' + ver, type=('build', 'link', 'run'), when='@' + ver)
@@ -35,7 +42,8 @@ class Hip(CMakePackage):
depends_on('rocm-device-libs@' + ver, type=('build', 'link', 'run'), when='@' + ver)
depends_on('rocminfo@' + ver, type=('build', 'run'), when='@' + ver)
- # Notice: most likely this will only be a hard dependency on 3.7.0
+ # hipcc likes to add `-lnuma` by default :(
+ # ref https://github.com/ROCm-Developer-Tools/HIP/pull/2202
depends_on('numactl', when='@3.7.0:')
# Note: the ROCm ecosystem expects `lib/` and `bin/` folders with symlinks
@@ -47,62 +55,115 @@ class Hip(CMakePackage):
patch('0001-Make-it-possible-to-specify-the-package-folder-of-ro.patch', when='@3.5.0:')
# See https://github.com/ROCm-Developer-Tools/HIP/pull/2141
- patch('0002-Fix-detection-of-HIP_CLANG_ROOT.patch', when='@3.5.0:')
-
- def get_rocm_prefix_info(self):
- # External packages in Spack do not currently contain dependency
- # information. External installations of hip therefore must compute
- # necessary paths to other rocm components by relative paths. This
- # assumes all components are installed under a single umbrella
- # directory. Manual edits to `fallback_path` may be necessary if this
- # assumption does not hold.
+ patch('0002-Fix-detection-of-HIP_CLANG_ROOT.patch', when='@:3.9.0')
+
+ # See https://github.com/ROCm-Developer-Tools/HIP/pull/2218
+ patch('0003-Improve-compilation-without-git-repo.3.7.0.patch', when='@3.7.0:3.9.0')
+ patch('0003-Improve-compilation-without-git-repo.3.10.0.patch', when='@3.10.0:4.0.0')
+ patch('0003-Improve-compilation-without-git-repo.4.1.0.patch', when='@4.1.0')
+ patch('0003-Improve-compilation-without-git-repo-and-remove-compiler-rt-linkage-for-host.4.2.0.patch', when='@4.2.0')
+ # See https://github.com/ROCm-Developer-Tools/HIP/pull/2219
+ patch('0004-Drop-clang-rt-builtins-linking-on-hip-host.3.7.0.patch', when='@3.7.0:3.9.0')
+ patch('0004-Drop-clang-rt-builtins-linking-on-hip-host.3.10.0.patch', when='@3.10.0:4.1.0')
+
+ def get_paths(self):
if self.spec.external:
- # typically, self.spec.prefix is /opt/rocm/hip, so fallback_path
- # will be /opt/rocm. The rocminfo executable is usually
- # found at /opt/rocm/bin/rocminfo.
- fallback_prefix = Prefix(os.path.dirname(self.spec.prefix))
- if not os.path.isdir(fallback_prefix):
+ # For external packages we only assume the `hip` prefix is known,
+ # because spack does not set prefixes of dependencies of externals.
+ # We assume self.spec.prefix is /opt/rocm-x.y.z/hip and rocm has a
+ # default installation with everything installed under
+ # /opt/rocm-x.y.z
+ rocm_prefix = Prefix(os.path.dirname(self.spec.prefix))
+
+ if not os.path.isdir(rocm_prefix):
msg = "Could not determine prefix for other rocm components\n"
msg += "Either report a bug at github.com/spack/spack or "
- msg += "manually edit fallback_prefix in the package file as "
+ msg += "manually edit rocm_prefix in the package file as "
msg += "a workaround."
raise RuntimeError(msg)
- return {
- 'rocm-path': fallback_prefix,
- 'llvm-amdgpu': fallback_prefix.llvm,
- 'hsa-rocr-dev': fallback_prefix.hsa,
- 'rocminfo': fallback_prefix.bin,
- 'rocm-device-libs': fallback_prefix,
- 'device_lib_path': fallback_prefix
+ paths = {
+ 'rocm-path': rocm_prefix,
+ 'llvm-amdgpu': rocm_prefix.llvm,
+ 'hsa-rocr-dev': rocm_prefix.hsa,
+ 'rocminfo': rocm_prefix,
+ 'rocm-device-libs': rocm_prefix,
}
else:
- mydict = dict((name, self.spec[name].prefix)
- for name in ('llvm-amdgpu', 'hsa-rocr-dev',
- 'rocminfo', 'rocm-device-libs'))
- mydict['rocm-path'] = self.spec.prefix
- device_lib_path = mydict['rocm-device-libs'].amdgcn.bitcode
- mydict['device_lib_path'] = device_lib_path
- return mydict
+ paths = {
+ 'rocm-path': self.spec.prefix,
+ 'llvm-amdgpu': self.spec['llvm-amdgpu'].prefix,
+ 'hsa-rocr-dev': self.spec['hsa-rocr-dev'].prefix,
+ 'rocminfo': self.spec['rocminfo'].prefix,
+ 'rocm-device-libs': self.spec['rocm-device-libs'].prefix,
+ }
- def set_variables(self, env):
- # Indirection for dependency paths because hip may be an external in
- # Spack. See block comment on get_rocm_prefix_info .
+ # `device_lib_path` is the path to the bitcode directory
+ if '@:3.8.0' in self.spec:
+ paths['device_lib_path'] = paths['rocm-device-libs'].lib
+ else:
+ paths['device_lib_path'] = paths['rocm-device-libs'].amdgcn.bitcode
+
+ return paths
- # NOTE: DO NOT PUT LOGIC LIKE self.spec[name] in this function!!!!!
- # It DOES NOT WORK FOR EXTERNAL PACKAGES!!!! See get_rocm_prefix_info
- rocm_prefixes = self.get_rocm_prefix_info()
+ def set_variables(self, env):
+ # Note: do not use self.spec[name] here, since not all dependencies
+ # have defined prefixes when hip is marked as external.
+ paths = self.get_paths()
+
+ # Used in hipcc, but only useful when hip is external, since only then
+ # there is a common prefix /opt/rocm-x.y.z.
+ env.set('ROCM_PATH', paths['rocm-path'])
+
+ # hipcc recognizes HIP_PLATFORM == hcc and HIP_COMPILER == clang, even
+ # though below we specified HIP_PLATFORM=rocclr and HIP_COMPILER=clang
+ # in the CMake args.
+ if self.spec.satisfies('@:4.0.0'):
+ env.set('HIP_PLATFORM', 'hcc')
+ else:
+ env.set('HIP_PLATFORM', 'amd')
- env.set('ROCM_PATH', rocm_prefixes['rocm-path'])
env.set('HIP_COMPILER', 'clang')
- env.set('HIP_PLATFORM', 'hcc')
- env.set('HIP_CLANG_PATH', rocm_prefixes['llvm-amdgpu'].bin)
- env.set('HSA_PATH', rocm_prefixes['hsa-rocr-dev'])
- env.set('ROCMINFO_PATH', rocm_prefixes['rocminfo'])
- env.set('DEVICE_LIB_PATH', rocm_prefixes['device_lib_path'])
- env.set('HIP_PATH', rocm_prefixes['rocm-path'])
- env.set('HIPCC_COMPILE_FLAGS_APPEND',
- '--rocm-path={0}'.format(rocm_prefixes['device_lib_path']))
+
+ # bin directory where clang++ resides
+ env.set('HIP_CLANG_PATH', paths['llvm-amdgpu'].bin)
+
+ # Path to hsa-rocr-dev prefix used by hipcc.
+ env.set('HSA_PATH', paths['hsa-rocr-dev'])
+
+ # This is a variable that does not exist in hipcc but was introduced
+ # in a patch of ours since 3.5.0 to locate rocm_agent_enumerator:
+ # https://github.com/ROCm-Developer-Tools/HIP/pull/2138
+ env.set('ROCMINFO_PATH', paths['rocminfo'])
+
+ # This one is used in hipcc to run `hipcc --hip-device-lib-path=...`
+ env.set('DEVICE_LIB_PATH', paths['device_lib_path'])
+
+ # And this is used in clang whenever the --hip-device-lib-path is not
+ # used (e.g. when clang is invoked directly)
+ env.set('HIP_DEVICE_LIB_PATH', paths['device_lib_path'])
+
+ # Just the prefix of hip (used in hipcc)
+ env.set('HIP_PATH', paths['rocm-path'])
+
+ # Used in comgr and seems necessary when using the JIT compiler, e.g.
+ # hiprtcCreateProgram:
+ # https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/blob/rocm-4.0.0/lib/comgr/src/comgr-env.cpp
+ env.set('LLVM_PATH', paths['llvm-amdgpu'])
+
+ # Finally we have to set --rocm-path=<prefix> ourselves, which is not
+ # the same as --hip-device-lib-path (set by hipcc). It's used to set
+ # default bin, include and lib folders in clang. If it's not set it is
+ # infered from the clang install dir (and they try to find
+ # /opt/rocm again...). If this path is set, there is no strict checking
+ # and parsing of the <prefix>/bin/.hipVersion file. Let's just set this
+ # to the hip prefix directory for non-external builds so that the
+ # bin/.hipVersion file can still be parsed.
+ # See also https://github.com/ROCm-Developer-Tools/HIP/issues/2223
+ if '@3.8.0:' in self.spec:
+ env.append_path('HIPCC_COMPILE_FLAGS_APPEND',
+ '--rocm-path={0}'.format(paths['rocm-path']),
+ separator=' ')
def setup_run_environment(self, env):
self.set_variables(env)
@@ -127,30 +188,31 @@ class Hip(CMakePackage):
'INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"',
'hip-config.cmake.in', string=True)
- def flag_handler(self, name, flags):
- if name == 'cxxflags' and '@3.7.0:' in self.spec:
- incl = self.spec['hip-rocclr'].prefix.include
- flags.append('-I {0}/compiler/lib/include'.format(incl))
- flags.append('-I {0}/elf'.format(incl))
-
- return (flags, None, None)
-
- @run_before('install')
- def filter_sbang(self):
perl = self.spec['perl'].command
kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
with working_dir('bin'):
match = '^#!/usr/bin/perl'
substitute = "#!{perl}".format(perl=perl)
- files = [
- 'hipify-perl', 'hipcc', 'extractkernel',
- 'hipconfig', 'hipify-cmakefile'
- ]
+
+ if self.spec.satisfies('@:4.0.0'):
+ files = [
+ 'hipify-perl', 'hipcc', 'extractkernel',
+ 'hipconfig', 'hipify-cmakefile'
+ ]
+ else:
+ files = [
+ 'hipify-perl', 'hipcc', 'roc-obj-extract',
+ 'hipconfig', 'hipify-cmakefile',
+ 'roc-obj-ls', 'hipvars.pm'
+ ]
+
filter_file(match, substitute, *files, **kwargs)
- @run_before('install')
- def filter_numactl(self):
+ # This guy is used during the cmake phase, so we have to fix the
+ # shebang already here in case it is too long.
+ filter_shebang('hipconfig')
+
if '@3.7.0:' in self.spec:
numactl = self.spec['numactl'].prefix.lib
kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
@@ -160,13 +222,29 @@ class Hip(CMakePackage):
substitute = " -L{numactl} -lnuma".format(numactl=numactl)
filter_file(match, substitute, 'hipcc', **kwargs)
+ def flag_handler(self, name, flags):
+ if name == 'cxxflags' and '@3.7.0:' in self.spec:
+ incl = self.spec['hip-rocclr'].prefix.include
+ flags.append('-I {0}/compiler/lib/include'.format(incl))
+ flags.append('-I {0}/elf'.format(incl))
+
+ return (flags, None, None)
+
def cmake_args(self):
args = [
- '-DHIP_COMPILER=clang',
- '-DHIP_PLATFORM=rocclr',
- '-DHSA_PATH={0}'.format(self.spec['hsa-rocr-dev'].prefix),
- '-DHIP_RUNTIME=ROCclr',
- '-DLIBROCclr_STATIC_DIR={0}/lib'.format
- (self.spec['hip-rocclr'].prefix)
+ self.define('HIP_COMPILER', 'clang'),
+ self.define('HSA_PATH', self.spec['hsa-rocr-dev'].prefix)
]
+ if self.spec.satisfies('@:4.0.0'):
+ args.append(self.define('HIP_RUNTIME', 'ROCclr'))
+ args.append(self.define('HIP_PLATFORM', 'rocclr'))
+ else:
+ args.append(self.define('HIP_RUNTIME', 'rocclr'))
+ args.append(self.define('HIP_PLATFORM', 'amd'))
+
+ # LIBROCclr_STATIC_DIR is unused from 3.6.0 and above
+ if '@3.5.0' in self.spec:
+ args.append(self.define('LIBROCclr_STATIC_DIR',
+ self.spec['hip-rocclr'].prefix.lib))
+
return args
diff --git a/var/spack/repos/builtin/packages/hipblas/package.py b/var/spack/repos/builtin/packages/hipblas/package.py
index 6262681ea3..3e255ec2d0 100644
--- a/var/spack/repos/builtin/packages/hipblas/package.py
+++ b/var/spack/repos/builtin/packages/hipblas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,12 @@ class Hipblas(CMakePackage):
homepage = "https://github.com/ROCmSoftwarePlatform/hipBLAS"
git = "https://github.com/ROCmSoftwarePlatform/hipBLAS.git"
- url = "https://github.com/ROCmSoftwarePlatform/hipBLAS/archive/rocm-3.8.0.tar.gz"
+ url = "https://github.com/ROCmSoftwarePlatform/hipBLAS/archive/rocm-4.2.0.tar.gz"
+ version('4.2.0', sha256='c7ce7f69c7596b5a54e666fb1373ef41d1f896dd29260a691e2eadfa863e2b1a')
+ version('4.1.0', sha256='876efe80a4109ad53d290d2921b3fb425b4cb857b32920819f10dcd4deee4ef8')
+ version('4.0.0', sha256='6cc03af891b36cce8266d32ba8dfcf7fdfcc18afa7a6cc058fbe28bcf8528d94')
+ version('3.10.0', sha256='45cb5e3b37f0845bd9e0d09912df4fa0ce88dd508ec9448241ae6600d3c4b1e8')
version('3.9.0', sha256='82ddd57fd905a5d4060665349ec017ff757a7c121cb9310574be3c3630b3545f')
version('3.8.0', sha256='33cb82e8b2658ae2096f39e41492ba8b6852ac37c26a730612b8642d9d29abe3')
version('3.7.0', sha256='9840a493ab4838c86696ceb33ce07c34b5f59f62db4f88cb3af62b69d84f8729')
@@ -21,9 +25,10 @@ class Hipblas(CMakePackage):
maintainers = ['srekolam', 'arjun-raj-kuppala']
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, when='@' + ver)
- depends_on('rocsolver@' + ver, type='build', when='@' + ver)
+ depends_on('rocsolver@' + ver, when='@' + ver)
depends_on('rocblas@' + ver, type='link', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
@@ -33,6 +38,15 @@ class Hipblas(CMakePackage):
'-DBUILD_CLIENTS_SAMPLES=OFF',
'-DBUILD_CLIENTS_TESTS=OFF'
]
+
+ # hipblas actually prefers CUDA over AMD GPUs when you have it
+ # installed...
+ if self.spec.satisfies('@:3.9.0'):
+ args.append('-DTRY_CUDA=OFF')
+
+ else:
+ args.append('-DUSE_CUDA=OFF')
+
return args
def setup_build_environment(self, env):
diff --git a/var/spack/repos/builtin/packages/hipcub/package.py b/var/spack/repos/builtin/packages/hipcub/package.py
index 4b7e9b55fb..e94fc9ba94 100644
--- a/var/spack/repos/builtin/packages/hipcub/package.py
+++ b/var/spack/repos/builtin/packages/hipcub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,15 @@ class Hipcub(CMakePackage):
""" Radeon Open Compute Parallel Primitives Library"""
homepage = "https://github.com/ROCmSoftwarePlatform/hipCUB"
- url = "https://github.com/ROCmSoftwarePlatform/hipCUB/archive/rocm-3.5.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/hipCUB.git"
+ url = "https://github.com/ROCmSoftwarePlatform/hipCUB/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='56b50e185b7cdf4615d2f56d3a4e86fe76f885e9ad04845f3d0671afcb315c69')
+ version('4.1.0', sha256='6d33cc371b9a5ac9c0ab9853bac736f6cea0d2192f4dc9e6d8175d207ee4b4f2')
+ version('4.0.0', sha256='656bd6ec547810fd74bcebba41453e6e729f3fdb7346f5564ab71fc0346c3fb5')
+ version('3.10.0', sha256='759da5c6ef0cc1e4ecf2083659e78b8bbaa015f0bb360177674e0feb3032c5be')
version('3.9.0', sha256='c46995f9f18733ec18e370c21d7c0d6ac719e8e9d3254c6303a20ba90831e12e')
version('3.8.0', sha256='11d7d97268aeb953c34a80125c4577e27cb57cb6095606533105cecf2bd2ec9c')
version('3.7.0', sha256='a2438632ea1606e83a8c0e1a8777aa5fdca66d77d90862642eb0ec2314b4978d')
@@ -23,12 +28,16 @@ class Hipcub(CMakePackage):
depends_on('cmake@3:', type='build')
depends_on('numactl', type='link', when='@3.7.0:')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
depends_on('rocprim@' + ver, type='build', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
diff --git a/var/spack/repos/builtin/packages/hipfft/package.py b/var/spack/repos/builtin/packages/hipfft/package.py
new file mode 100644
index 0000000000..f5da6e596f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hipfft/package.py
@@ -0,0 +1,41 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Hipfft(CMakePackage):
+ """hipFFT is an FFT marshalling library. Currently, hipFFT supports
+ either rocFFT or cuFFT as backends.hipFFT exports an interface that
+ does not require the client to change, regardless of the chosen backend.
+ It sits between the application and the backend FFT library, marshalling
+ inputs into the backend and results back to the application."""
+
+ homepage = "https://github.com/ROCmSoftwarePlatform/hipFFT"
+ git = "https://github.com/ROCmSoftwarePlatform/hipFFT.git"
+ url = "https://github.com/ROCmSoftwarePlatform/hipfft/archive/rocm-4.1.0.tar.gz"
+
+ maintainers = ['arjun-raj-kuppala', 'srekolam']
+
+ version('master', branch='master')
+
+ version('4.2.0', sha256='74253b0d92feff55ebb39b3fe4a22a6454160a60bdad37384aa5340fd8843f8a')
+ version('4.1.0', sha256='885ffd4813f2c271150f1b8b386f0af775b38fc82b96ce6fd94eb4ba0c0180be')
+
+ depends_on('cmake@3:', type='build')
+
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
+ depends_on('hip@' + ver, when='@' + ver)
+ depends_on('hip-rocclr@' + ver, when='@' + ver)
+ depends_on('rocfft@' + ver, when='@' + ver)
+
+ def setup_build_environment(self, env):
+ env.set('CXX', self.spec['hip'].hipcc)
+
+ def cmake_args(self):
+ args = ['-DBUILD_CLIENTS_SAMPLES=OFF']
+ return args
diff --git a/var/spack/repos/builtin/packages/hipfort/package.py b/var/spack/repos/builtin/packages/hipfort/package.py
index 5e10c1ac54..c1cbae5209 100644
--- a/var/spack/repos/builtin/packages/hipfort/package.py
+++ b/var/spack/repos/builtin/packages/hipfort/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,17 +10,23 @@ class Hipfort(CMakePackage):
""" Radeon Open Compute Parallel Primitives Library"""
homepage = "https://github.com/ROCmSoftwarePlatform/hipfort"
- url = "https://github.com/ROCmSoftwarePlatform/hipfort/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/hipfort.git"
+ url = "https://github.com/ROCmSoftwarePlatform/hipfort/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='b411cb32bf87927eba4c5573b412c56d75d15165e2f1c8ac5ac18e624ed3a4b4')
+ version('4.1.0', sha256='2d335ae068d0cbb480575de7d3ea4868362af32cb195f911ee1aeced499f3974')
+ version('4.0.0', sha256='a497645c33e0eff39abd5344756de63424733cde2837b7376c924b44ed5ae9c9')
+ version('3.10.0', sha256='44173522d9eb2a18ec1cea2d9b00b237fe70501f0849bd6be3decbb73389487a')
version('3.9.0', sha256='a3c4e125a9b56820446a65bd76b8caa196fddb0e0723eb513f0bcde9abd6a0c0')
version('3.8.0', sha256='0132e9949f758dd8b8a462d133b3316101440cd503aa6c53bea9e34e61bbb3cc')
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
depends_on('cmake@3:', type='build')
- for ver in ['3.8.0', '3.9.0']:
+
+ for ver in ['3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0', '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
def setup_build_environment(self, env):
diff --git a/var/spack/repos/builtin/packages/hipify-clang/package.py b/var/spack/repos/builtin/packages/hipify-clang/package.py
index 0e0280c1e9..129fe1e26b 100644
--- a/var/spack/repos/builtin/packages/hipify-clang/package.py
+++ b/var/spack/repos/builtin/packages/hipify-clang/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,16 @@ class HipifyClang(CMakePackage):
sources into HIP sources"""
homepage = "https://github.com/ROCm-Developer-Tools/HIPIFY"
- url = "https://github.com/ROCm-Developer-Tools/HIPIFY/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/ROCm-Developer-Tools/HIPIFY.git"
+ url = "https://github.com/ROCm-Developer-Tools/HIPIFY/archive/rocm-4.1.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='master')
+ version('4.2.0', sha256='afdc82ae00e14e8e742be6cd47d8fb120d18fc52fe96cba8d8ac4c56176a432e')
+ version('4.1.0', sha256='ec9cc410167b6ab31706742f3d7a77dbd29eb548e7371134b3aace8597665475')
+ version('4.0.0', sha256='9d3906d606fca2bcb58f5f2a70cc4b9e298ca0e12a84ee5f18e42b7df97b38a4')
+ version('3.10.0', sha256='7ebba22ed70100150bedddffa08a84f91b546347662862487b6703a1edce2623')
version('3.9.0', sha256='07adb98e91ddd7420d873806866d53eaf77527fac57799e846823522191ba89a')
version('3.8.0', sha256='095b876a750a0dc1ae669102ba53d668f65062b823f8be745411db86a2db7916')
version('3.7.0', sha256='dd58c8b88d4b7877f2521b02954de79d570fa36fc751a17d33e56436ee02571e')
@@ -23,5 +29,6 @@ class HipifyClang(CMakePackage):
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
depends_on('cmake@3.5:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('llvm-amdgpu@' + ver, when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/hipsparse/package.py b/var/spack/repos/builtin/packages/hipsparse/package.py
index c330adbbab..3cf43884ad 100644
--- a/var/spack/repos/builtin/packages/hipsparse/package.py
+++ b/var/spack/repos/builtin/packages/hipsparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,14 @@ class Hipsparse(CMakePackage):
homepage = "https://github.com/ROCmSoftwarePlatform/hipSPARSE"
git = "https://github.com/ROCmSoftwarePlatform/hipSPARSE.git"
- url = "https://github.com/ROCmSoftwarePlatform/hipSPARSE/archive/rocm-3.8.0.tar.gz"
+ url = "https://github.com/ROCmSoftwarePlatform/hipSPARSE/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='cdedf3766c10200d3ebabe86cbb9c0fe6504e4b3317dccca289327d7c189bb3f')
+ version('4.1.0', sha256='66710c390489922f0bd1ac38fd8c32fcfb5b7760b92c2d282f7d1abf214742ee')
+ version('4.0.0', sha256='fc3736b2ea203209021616b2ffbcdd664781d692b07b8e8bb7f78b42dabbd5e5')
+ version('3.10.0', sha256='7fd863ebf6eed09325c23ba06d9008b2f2c1345283d1a331e329e1a512b602f7')
version('3.9.0', sha256='ab0ea3dd9b68a126291ed5a35e50fc85d0aeb35fe862f5d9e544435e4262c435')
version('3.8.0', sha256='8874c100e9ba54587a6057c2a0e555a0903254a16e9e01c2385bae1b027f83b5')
version('3.7.0', sha256='a2f02d8fc6ad9a561f06dacde54ecafd30563c5c95f93819a5694e5b650dad7f')
@@ -24,15 +28,19 @@ class Hipsparse(CMakePackage):
depends_on('cmake@3:', type='build')
depends_on('git', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
- depends_on('rocsparse@' + ver, type='build', when='@' + ver)
+ depends_on('rocsparse@' + ver, type='link', when='@' + ver)
depends_on('hip@' + ver, when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
- for ver in ['3.8.0', '3.9.0']:
+
+ for ver in ['3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0', '4.2.0']:
depends_on('rocprim@' + ver, type='link', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
patch('e79985dccde22d826aceb3badfc643a3227979d2.patch', when='@3.5.0')
patch('530047af4a0f437dafc02f76b3a17e3b1536c7ec.patch', when='@3.5.0')
diff --git a/var/spack/repos/builtin/packages/hipsycl/package.py b/var/spack/repos/builtin/packages/hipsycl/package.py
index 02c59bc791..63e0593661 100644
--- a/var/spack/repos/builtin/packages/hipsycl/package.py
+++ b/var/spack/repos/builtin/packages/hipsycl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,10 @@ class Hipsycl(CMakePackage):
version("stable", branch="stable", submodules=True)
version(
+ "0.9.1",
+ commit="fe8465cd5399a932f7221343c07c9942b0fe644c",
+ submodules=True)
+ version(
"0.8.0",
commit="2daf8407e49dd32ebd1c266e8e944e390d28b22a",
submodules=True,
@@ -35,7 +39,8 @@ class Hipsycl(CMakePackage):
)
depends_on("cmake@3.5:", type="build")
- depends_on("boost +filesystem")
+ depends_on("boost +filesystem", when="@:0.8.99")
+ depends_on("boost@1.67.0:1.69.0 +filesystem +fiber +context cxxstd=17", when='@0.9.1:')
depends_on("python@3:")
depends_on("llvm@8: +clang", when="~cuda")
depends_on("llvm@9: +clang", when="+cuda")
@@ -46,9 +51,14 @@ class Hipsycl(CMakePackage):
conflicts(
"%gcc@:4.9999",
+ when='@:0.9.0',
msg="hipSYCL needs proper C++14 support to be built, %gcc is too old",
)
conflicts(
+ "%gcc@:8.9999",
+ when='@0.9.1:',
+ msg="hipSYCL needs proper C++17 support to be built, %gcc is too old")
+ conflicts(
"^llvm build_type=Debug",
when="+cuda",
msg="LLVM debug builds don't work with hipSYCL CUDA backend; for "
diff --git a/var/spack/repos/builtin/packages/hiredis/package.py b/var/spack/repos/builtin/packages/hiredis/package.py
index 74e4552b2c..2457a36c67 100644
--- a/var/spack/repos/builtin/packages/hiredis/package.py
+++ b/var/spack/repos/builtin/packages/hiredis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hisat2/package.py b/var/spack/repos/builtin/packages/hisat2/package.py
index 834013d666..ec0af3d74d 100644
--- a/var/spack/repos/builtin/packages/hisat2/package.py
+++ b/var/spack/repos/builtin/packages/hisat2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hisea/package.py b/var/spack/repos/builtin/packages/hisea/package.py
index c78fe166a0..ad858936e8 100644
--- a/var/spack/repos/builtin/packages/hisea/package.py
+++ b/var/spack/repos/builtin/packages/hisea/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hive/package.py b/var/spack/repos/builtin/packages/hive/package.py
index a32e08a80c..014047cdb6 100644
--- a/var/spack/repos/builtin/packages/hive/package.py
+++ b/var/spack/repos/builtin/packages/hive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hivex/package.py b/var/spack/repos/builtin/packages/hivex/package.py
new file mode 100644
index 0000000000..83f733f34f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hivex/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Hivex(AutotoolsPackage):
+ """Windows Registry "hive" extraction library."""
+
+ homepage = "https://libguestfs.org"
+ url = "https://libguestfs.org/download/hivex/hivex-1.3.17.tar.gz"
+
+ version('1.3.19', sha256='5102cc5149767229dbfb436ae7b47dd85b90e0215445e42c2809cbe32e54f762')
+ version('1.3.18', sha256='8a1e788fd9ea9b6e8a99705ebd0ff8a65b1bdee28e319c89c4a965430d0a7445')
+ version('1.3.17', sha256='13cb4b87ab72d74d9e83e56ae0f77152312f33ee772dc84fdd86b2cb9e8c52db')
+
+ depends_on('perl')
diff --git a/var/spack/repos/builtin/packages/hmmer/package.py b/var/spack/repos/builtin/packages/hmmer/package.py
index 9e808a7eb5..63bd6f2f67 100644
--- a/var/spack/repos/builtin/packages/hmmer/package.py
+++ b/var/spack/repos/builtin/packages/hmmer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,8 @@ class Hmmer(Package):
homepage = 'http://www.hmmer.org'
url = 'http://eddylab.org/software/hmmer/hmmer-3.3.tar.gz'
- version('3.3', sha256='0186bf40af67032666014971ed8ddc3cf2834bebc2be5b3bc0304a93e763736c')
+ version('3.3.2', sha256='92fee9b5efe37a5276352d3502775e7c46e9f7a0ee45a331eacb2a0cac713c69')
+ version('3.3', sha256='0186bf40af67032666014971ed8ddc3cf2834bebc2be5b3bc0304a93e763736c')
version('3.2.1', sha256='a56129f9d786ec25265774519fc4e736bbc16e4076946dcbd7f2c16efc8e2b9c')
version('3.1b2', sha256='dd16edf4385c1df072c9e2f58c16ee1872d855a018a2ee6894205277017b5536')
version('3.0', sha256='6977e6473fcb554b1d5a86dc9edffffa53918c1bd88d7fd20d7499f1ba719e83')
diff --git a/var/spack/repos/builtin/packages/homer/package.py b/var/spack/repos/builtin/packages/homer/package.py
index 2f5fffdcce..8000558e31 100644
--- a/var/spack/repos/builtin/packages/homer/package.py
+++ b/var/spack/repos/builtin/packages/homer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hoomd-blue/package.py b/var/spack/repos/builtin/packages/hoomd-blue/package.py
index 34d180e5cf..1d6a01b4cd 100644
--- a/var/spack/repos/builtin/packages/hoomd-blue/package.py
+++ b/var/spack/repos/builtin/packages/hoomd-blue/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hotspot/package.py b/var/spack/repos/builtin/packages/hotspot/package.py
index 99a79d771e..053bb0702f 100644
--- a/var/spack/repos/builtin/packages/hotspot/package.py
+++ b/var/spack/repos/builtin/packages/hotspot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hpcc/package.py b/var/spack/repos/builtin/packages/hpcc/package.py
index b8888513db..9069ce9036 100644
--- a/var/spack/repos/builtin/packages/hpcc/package.py
+++ b/var/spack/repos/builtin/packages/hpcc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hpccg/package.py b/var/spack/repos/builtin/packages/hpccg/package.py
index a93c585266..d93f79bbcd 100644
--- a/var/spack/repos/builtin/packages/hpccg/package.py
+++ b/var/spack/repos/builtin/packages/hpccg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hpcg/package.py b/var/spack/repos/builtin/packages/hpcg/package.py
index 4de150cda2..ff03bbf722 100644
--- a/var/spack/repos/builtin/packages/hpcg/package.py
+++ b/var/spack/repos/builtin/packages/hpcg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,7 @@ class Hpcg(AutotoolsPackage):
variant('openmp', default=True, description='Enable OpenMP support')
patch('https://github.com/hpcg-benchmark/hpcg/commit/e9e0b7e6cae23e1f30dd983c2ce2d3bd34d56f75.patch', sha256='23b9de83042eb7a8207fdddcfa79ae2cc1a17e8e623e2224c7751d7c328ee482', when='%gcc@9:')
+ patch('https://github.com/hpcg-benchmark/hpcg/commit/e9e0b7e6cae23e1f30dd983c2ce2d3bd34d56f75.patch', sha256='23b9de83042eb7a8207fdddcfa79ae2cc1a17e8e623e2224c7751d7c328ee482', when='%aocc')
depends_on('mpi@1.1:')
@@ -30,8 +31,9 @@ class Hpcg(AutotoolsPackage):
build_targets = ['arch={0}'.format(arch)]
def configure(self, spec, prefix):
- CXXFLAGS = '-O3 -ffast-math '
- CXXFLAGS += '-ftree-vectorize -ftree-vectorizer-verbose=0 '
+ CXXFLAGS = '-O3 -ffast-math -ftree-vectorize '
+ if '%aocc' not in self.spec:
+ CXXFLAGS += ' -ftree-vectorizer-verbose=0 '
if '+openmp' in self.spec:
CXXFLAGS += self.compiler.openmp_flag
config = [
diff --git a/var/spack/repos/builtin/packages/hpctoolkit/gcc10-enum.patch b/var/spack/repos/builtin/packages/hpctoolkit/gcc10-enum.patch
new file mode 100644
index 0000000000..c2ae786c3e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hpctoolkit/gcc10-enum.patch
@@ -0,0 +1,15 @@
+See: https://github.com/HPCToolkit/hpctoolkit/issues/309
+
+diff --git a/src/tool/hpcrun/gpu/gpu-metrics.h b/src/tool/hpcrun/gpu/gpu-metrics.h
+index ea0958156..fa3bceab1 100644
+--- a/src/tool/hpcrun/gpu/gpu-metrics.h
++++ b/src/tool/hpcrun/gpu/gpu-metrics.h
+@@ -61,7 +61,7 @@
+ //*****************************************************************************
+
+
+-enum {
++typedef enum {
+ GPU_INST_STALL_ANY = 0
+ } gpu_inst_stall_all_t;
+
diff --git a/var/spack/repos/builtin/packages/hpctoolkit/package.py b/var/spack/repos/builtin/packages/hpctoolkit/package.py
index 44b85d4e11..83289b4f46 100644
--- a/var/spack/repos/builtin/packages/hpctoolkit/package.py
+++ b/var/spack/repos/builtin/packages/hpctoolkit/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+from spack.util.environment import SetEnv
class Hpctoolkit(AutotoolsPackage):
@@ -20,6 +21,7 @@ class Hpctoolkit(AutotoolsPackage):
version('develop', branch='develop')
version('master', branch='master')
+ version('2021.03.01', commit='68a051044c952f0f4dac459d9941875c700039e7')
version('2020.08.03', commit='d9d13c705d81e5de38e624254cf0875cce6add9a')
version('2020.07.21', commit='4e56c780cffc53875aca67d6472a2fb3678970eb')
version('2020.06.12', commit='ac6ae1156e77d35596fea743ed8ae768f7222f19')
@@ -55,27 +57,32 @@ class Hpctoolkit(AutotoolsPackage):
variant('cuda', default=False,
description='Support CUDA on NVIDIA GPUs (2020.03.01 or later).')
+ variant('rocm', default=False,
+ description='Support ROCM on AMD GPUs, requires ROCM as '
+ 'external packages (2021.03.01 or later).')
+
boost_libs = (
'+atomic +chrono +date_time +filesystem +system +thread +timer'
' +graph +regex +shared +multithreaded visibility=global'
)
- depends_on('binutils+libiberty~nls', type='link', when='@2020.04.00:')
- depends_on('binutils@:2.33.1+libiberty~nls', type='link', when='@:2020.03.99')
+ depends_on('binutils +libiberty', type='link', when='@2021.00:')
+ depends_on('binutils +libiberty~nls', type='link', when='@2020.04:2020.99')
+ depends_on('binutils@:2.33.1 +libiberty~nls', type='link', when='@:2020.03.99')
depends_on('boost' + boost_libs)
depends_on('bzip2+shared', type='link')
- depends_on('dyninst@9.3.2:')
+ depends_on('dyninst@10.2.0:', when='@2021.00:')
+ depends_on('dyninst@9.3.2:', when='@:2020.99')
depends_on('elfutils+bzip2+xz~nls', type='link')
depends_on('gotcha@1.0.3:')
depends_on('intel-tbb+shared')
depends_on('libdwarf')
- depends_on('libmonitor+hpctoolkit')
- depends_on('libunwind@1.4: +xz+pic', when='@2020.09.00:')
- depends_on('libunwind@1.4: +xz', when='@:2020.08.99')
+ depends_on('libmonitor+hpctoolkit~dlopen', when='@2021.00:')
+ depends_on('libmonitor+hpctoolkit+dlopen', when='@:2020.99')
+ depends_on('libunwind@1.4: +xz+pic')
depends_on('mbedtls+pic')
depends_on('xerces-c transcoder=iconv')
- depends_on('xz+pic', type='link', when='@2020.09.00:')
- depends_on('xz', type='link', when='@:2020.08.99')
+ depends_on('xz+pic', type='link')
depends_on('zlib+shared')
depends_on('cuda', when='+cuda')
@@ -84,15 +91,31 @@ class Hpctoolkit(AutotoolsPackage):
depends_on('libpfm4', when='~papi')
depends_on('mpi', when='+mpi')
+ depends_on('hip', when='+rocm')
+ depends_on('rocm-dbgapi', when='+rocm')
+ depends_on('roctracer-dev', when='+rocm')
+
conflicts('%gcc@:4.7.99', when='^dyninst@10.0.0:',
msg='hpctoolkit requires gnu gcc 4.8.x or later')
- conflicts('%gcc@:4.99.99', when='@2020.03.01:',
+ conflicts('%gcc@:4.99.99', when='@2020.03:2020.99',
msg='hpctoolkit requires gnu gcc 5.x or later')
- conflicts('+cuda', when='@2018.0.0:2019.99.99',
+ conflicts('%gcc@:6.99.99', when='@2021.00:',
+ msg='hpctoolkit requires gnu gcc 7.x or later')
+
+ conflicts('+cuda', when='@:2019.99.99',
msg='cuda requires 2020.03.01 or later')
+ conflicts('+rocm', when='@:2020.99.99',
+ msg='rocm requires 2021.03.01 or later')
+
+ conflicts('^binutils@2.35:2.35.1',
+ msg='avoid binutils 2.35 and 2.35.1 (spews errors)')
+
+ # Fix the build for old revs with gcc 10.x.
+ patch('gcc10-enum.patch', when='@2020.01.01:2020.08.99 %gcc@10.0:')
+
flag_handler = AutotoolsPackage.build_system_flags
def configure_args(self):
@@ -126,6 +149,13 @@ class Hpctoolkit(AutotoolsPackage):
else:
args.append('--with-perfmon=%s' % spec['libpfm4'].prefix)
+ if spec.satisfies('+rocm'):
+ args.extend([
+ '--with-rocm-hip=%s' % spec['hip'].prefix,
+ '--with-rocm-dbgapi=%s' % spec['rocm-dbgapi'].prefix,
+ '--with-rocm-tracer=%s' % spec['roctracer-dev'].prefix,
+ ])
+
# MPI options for hpcprof-mpi.
if '+cray' in spec:
args.extend([
@@ -139,3 +169,18 @@ class Hpctoolkit(AutotoolsPackage):
args.append('--enable-all-static')
return args
+
+ # Remove setenv of ROCM, HIP, etc from the module file. Loading
+ # the hpctoolkit module is not relevant to building a GPU app and
+ # some variables (HIP_PATH) intefere with building the app.
+ def setup_run_environment(self, env):
+ keeplist = []
+ for elt in env.env_modifications:
+ if not (isinstance(elt, SetEnv)
+ and (elt.name.find('ROCM') >= 0
+ or elt.name.find('HIP') >= 0
+ or elt.name.find('CUDA') >= 0)):
+ keeplist.append(elt)
+
+ env.clear()
+ env.env_modifications = keeplist
diff --git a/var/spack/repos/builtin/packages/hpcviewer/package.py b/var/spack/repos/builtin/packages/hpcviewer/package.py
index 0de66bbf83..360d7fb202 100644
--- a/var/spack/repos/builtin/packages/hpcviewer/package.py
+++ b/var/spack/repos/builtin/packages/hpcviewer/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os.path
import platform
@@ -28,7 +29,7 @@ def trace_url(ver, mach):
class Hpcviewer(Package):
"""Binary distribution of hpcviewer and hpctraceviewer for the Rice
- HPCToolkit (Linux x86_64, ppc64 and ppc64le). Note: hpctoolkit
+ HPCToolkit (Linux x86_64, ppc64le and aarch64). Note: hpctoolkit
databases are platform independent, so you don't need to install
hpctoolkit to run the viewers and it's common to run hpcrun and
hpcviewer on different machines."""
@@ -37,6 +38,14 @@ class Hpcviewer(Package):
maintainers = ['mwkrentel']
viewer_sha = {
+ ('2021.03', 'aarch64'): '1b1f7f51a319a159aa96dee21b2cd77ee23b01df263ea122980fa1567e4dab8d',
+ ('2021.03', 'ppc64le'): '8fc4683a9e61263ac78fe35391930b0cdc8e84dd50f8d41dcd0c6d8072b02937',
+ ('2021.03', 'x86_64'): '40b4453fe662b896a853d869486b481ded0d29abdf5e50aab2d8f3bdf8940b04',
+ ('2021.01', 'aarch64'): 'fe797a1c97943f7509c36a570198291e674cd4a793c1d6538a2761d66542dc52',
+ ('2021.01', 'ppc64le'): 'ba4035de2ae208280c3744000ea08d2d7f8c31bd7095f722e442ddc289648063',
+ ('2021.01', 'x86_64'): '99eba4e1c613203c4658f2874d0e79e1620db7a22ac7dcb810801886ba9f8a79',
+ ('2020.12', 'ppc64le'): 'ce0d741aa8849621c03183dbf11a0dc1f6d296e3de80e25976a7f2a2750899c4',
+ ('2020.12', 'x86_64'): '29c5e1427893f0652e863fd6d54a8585077662597e5073532ec9f3b116626498',
('2020.07', 'x86_64'): '19951662626c7c9817c4a75269c85810352dc48ae9a62dfb6ce4a5b502de2118',
('2020.07', 'ppc64'): '3f5d9358ef8ff9ba4f6dcaa4d7132f41ba55f0c132d9fd1e2f6da18341648a4e',
('2020.07', 'ppc64le'): 'e236a8578dc247279d1021aa35bac47e2d4864b906efcef76c0610ee0086b353',
@@ -109,16 +118,20 @@ class Hpcviewer(Package):
}
for key in viewer_sha.keys():
- if key in trace_sha and key[1] == platform.machine():
+ if key[1] == platform.machine():
version(key[0], url=viewer_url(*key), sha256=viewer_sha[key])
- resource(name='hpctraceviewer', url=trace_url(*key),
- sha256=trace_sha[key], placement='TRACE',
- when='@{0}'.format(key[0]))
+ # Current versions include the viewer and trace viewer in
+ # one tar file. Before 2020.07, the trace viewer was a
+ # separate tar file (resource).
+ if key in trace_sha:
+ resource(name='hpctraceviewer', url=trace_url(*key),
+ sha256=trace_sha[key], placement='TRACE',
+ when='@{0}'.format(key[0]))
- depends_on('java@8', type=('build', 'run'))
+ depends_on('java@11:', type=('build', 'run'), when='@2021.0:')
+ depends_on('java@8', type=('build', 'run'), when='@:2020.99')
- conflicts('target=aarch64:', msg='hpcviewer is not available on arm')
conflicts('platform=darwin', msg='hpcviewer requires a manual install on MacOS, see homepage')
# Both hpcviewer and trace viewer have an install script.
@@ -128,10 +141,16 @@ class Hpcviewer(Package):
prefix
]
- inst = Executable(join_path('.', 'install'))
- inst(*args)
-
- cd('TRACE')
+ # Sometimes the script is install.sh, sometimes install.
+ inst_path = join_path('.', 'install.sh')
+ if not os.path.exists(inst_path):
+ inst_path = join_path('.', 'install')
- inst = Executable(join_path('.', 'install'))
+ inst = Executable(inst_path)
inst(*args)
+
+ # Older versions used a separate resource for the traceviewer.
+ if os.path.isdir('TRACE'):
+ cd('TRACE')
+ inst = Executable(inst_path)
+ inst(*args)
diff --git a/var/spack/repos/builtin/packages/hpgmg/package.py b/var/spack/repos/builtin/packages/hpgmg/package.py
index f5567ba2c9..baa2fba510 100644
--- a/var/spack/repos/builtin/packages/hpgmg/package.py
+++ b/var/spack/repos/builtin/packages/hpgmg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hping/package.py b/var/spack/repos/builtin/packages/hping/package.py
index bc70bbaa66..0959090e9f 100644
--- a/var/spack/repos/builtin/packages/hping/package.py
+++ b/var/spack/repos/builtin/packages/hping/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hpl/package.py b/var/spack/repos/builtin/packages/hpl/package.py
index 834f05349d..001236181a 100644
--- a/var/spack/repos/builtin/packages/hpl/package.py
+++ b/var/spack/repos/builtin/packages/hpl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -112,6 +112,7 @@ class Hpl(AutotoolsPackage):
config = ['CFLAGS=-O3']
if (self.spec.satisfies('^intel-mkl') or
+ self.spec.satisfies('^intel-oneapi-mkl') or
self.spec.satisfies('^intel-parallel-studio+mkl')):
config.append('LDFLAGS={0}'.format(
self.spec['blas'].libs.ld_flags))
diff --git a/var/spack/repos/builtin/packages/hpx/package.py b/var/spack/repos/builtin/packages/hpx/package.py
index 80f29a2a81..e703d80a62 100644
--- a/var/spack/repos/builtin/packages/hpx/package.py
+++ b/var/spack/repos/builtin/packages/hpx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class Hpx(CMakePackage, CudaPackage):
version('master', git='https://github.com/STEllAR-GROUP/hpx.git', branch='master')
version('stable', git='https://github.com/STEllAR-GROUP/hpx.git', tag='stable')
+ version('1.6.0', sha256='4ab715613c1e1808edc93451781cc9bc98feec4e422ccd4322858a680f6d9017')
version('1.5.1', sha256='b2f9358ce2a9446b9d8fb1998c30913e7199b007aa82e46d0aa05c763331c635')
version('1.5.0', sha256='de2901d8ae017592c513e0af9cf58de295abc9802e55ece00424cbd8a3801920')
version('1.4.1', sha256='965dabe44d17480e326d92da4eec56722d98b33943c53d2b0f8f4655cb208023')
@@ -26,6 +27,9 @@ class Hpx(CMakePackage, CudaPackage):
version('1.2.0', sha256='20942314bd90064d9775f63b0e58a8ea146af5260a4c84d0854f9f968077c170')
version('1.1.0', sha256='1f28bbe58d8f0da600d60c3a74a644d75ac777b20a018a5c1c6030a470e8a1c9')
+ generator = 'Ninja'
+ depends_on('ninja', type='build')
+
variant('cxxstd',
default='17',
values=('11', '14', '17'),
@@ -166,4 +170,8 @@ class Hpx(CMakePackage, CudaPackage):
self.define('OTF2_ROOT', spec['otf2'].prefix),
]
+ # it seems like there was a bug in the default version of APEX in 1.5.x
+ if spec.satisfies("@1.5"):
+ args += [self.define('HPX_WITH_APEX_TAG', "v2.3.0")]
+
return args
diff --git a/var/spack/repos/builtin/packages/hpx5/package.py b/var/spack/repos/builtin/packages/hpx5/package.py
index 78dbf25ec7..bd09957cfc 100644
--- a/var/spack/repos/builtin/packages/hpx5/package.py
+++ b/var/spack/repos/builtin/packages/hpx5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hsa-rocr-dev/package.py b/var/spack/repos/builtin/packages/hsa-rocr-dev/package.py
index b43627e09f..9b82354dc1 100644
--- a/var/spack/repos/builtin/packages/hsa-rocr-dev/package.py
+++ b/var/spack/repos/builtin/packages/hsa-rocr-dev/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,22 +14,33 @@ class HsaRocrDev(CMakePackage):
Linux HSA Runtime for Boltzmann (ROCm) platforms."""
homepage = "https://github.com/RadeonOpenCompute/ROCR-Runtime"
- url = "https://github.com/RadeonOpenCompute/ROCR-Runtime/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/ROCR-Runtime.git"
+ url = "https://github.com/RadeonOpenCompute/ROCR-Runtime/archive/rocm-4.1.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='master')
+ version('4.2.0', sha256='fa0e7bcd64e97cbff7c39c9e87c84a49d2184dc977b341794770805ec3f896cc')
+ version('4.1.0', sha256='c223a5f7ccac280520abb6ea49fdd36fa9468718098a9d984be6ef839ccbc6db')
+ version('4.0.0', sha256='e84c48e80ea38698a5bd5da3940048ad3cab3696d10a53132acad07ca357f17c')
+ version('3.10.0', sha256='58866d8acdb6cc45227f2412098e37c65908b20ed3dd54901dfb515c15ad5f71')
version('3.9.0', sha256='d722fb61f62037894957856f2c2d17231c4622bdf75db372321ee30206dceeb6')
version('3.8.0', sha256='1dfad4d89d6c099e15073ed38e083bcf6cc463470dcc8a1e1b9e22060c060c72')
version('3.7.0', sha256='0071d14431f73ce74574e61d0786f2b7cf34b14ea898a1f54b6e1b06b2d468c0')
version('3.5.0', sha256='52c12eec3e3404c0749c70f156229786ee0c3e6d3c979aed9bbaea500fa1f3b8')
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
+ variant('shared', default=True, description='Build shared or static library')
+ variant('image', default=True, description='build with or without image support')
depends_on('cmake@3:', type="build")
depends_on('libelf@0.8:', type='link')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('hsakmt-roct@' + ver, type=('link', 'run'), when='@' + ver)
- for ver in ['3.7.0', '3.8.0', '3.9.0']:
+ depends_on('rocm-device-libs@' + ver, type=('build', 'link'), when='@' + ver)
+
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '4.0.0', '4.1.0', '4.2.0', 'master']:
depends_on('llvm-amdgpu@' + ver, type=('link', 'run'), when='@' + ver)
# Both 3.5.0 and 3.7.0 force INSTALL_RPATH in different ways
@@ -42,7 +53,13 @@ class HsaRocrDev(CMakePackage):
libelf_include = self.spec['libelf'].prefix.include.libelf
args = ['-DLIBELF_INCLUDE_DIRS=%s' % libelf_include]
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared')
+
if '@3.7.0:' in self.spec:
- args.append('-DIMAGE_SUPPORT=OFF')
+ self.define_from_variant('IMAGE_SUPPORT', 'image')
+
+ if '@4.2.0:' in self.spec:
+ bitcode_dir = self.spec['rocm-device-libs'].prefix.amdgcn.bitcode
+ args.append('-DBITCODE_DIR={0}'.format(bitcode_dir))
return args
diff --git a/var/spack/repos/builtin/packages/hsakmt-roct/package.py b/var/spack/repos/builtin/packages/hsakmt-roct/package.py
index 2b000f8c10..a46e9f767e 100644
--- a/var/spack/repos/builtin/packages/hsakmt-roct/package.py
+++ b/var/spack/repos/builtin/packages/hsakmt-roct/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,16 +13,23 @@ class HsakmtRoct(CMakePackage):
with the ROCk driver."""
homepage = "https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface"
- url = "https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface.git"
+ url = "https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='master')
+ version('4.2.0', sha256='cc325d4b9a96062f2ad0515fce724a8c64ba56a7d7f1ac4a0753941b8599c52e')
+ version('4.1.0', sha256='8443ed5907a7ba9ad4003a49d90ff7b8886e1b2a5e90f14e4035765a7f64d7ca')
+ version('4.0.0', sha256='a6960fffc8388731ee18953faae12d1449c582e3b3594418845a544455895f42')
+ version('3.10.0', sha256='a3d629247a763cc36f5d48e9122cee8498574af628e14e3c38686c05f66e3e06')
version('3.9.0', sha256='e1bb8b010855736d8a97957222f648532d42646ec2964776a9a1455dc81104a3')
version('3.8.0', sha256='cd5440f31f592737b5d05448704bd01f91f73cfcab8a7829922e81332575cfe8')
version('3.7.0', sha256='b357fe7f425996c49f41748923ded1a140933de7564a70a828ed6ded6d896458')
version('3.5.0', sha256='d9f458c16cb62c3c611328fd2f2ba3615da81e45f3b526e45ff43ab4a67ee4aa')
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
+ variant('shared', default=True, description='Build shared or static library')
depends_on('cmake@3:', type='build')
depends_on('numactl')
@@ -35,7 +42,6 @@ class HsakmtRoct(CMakePackage):
return ['install']
def cmake_args(self):
- args = [
- '-DBUILD_SHARED_LIBS="on"',
+ return [
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared')
]
- return args
diff --git a/var/spack/repos/builtin/packages/hsakmt/package.py b/var/spack/repos/builtin/packages/hsakmt/package.py
index 07a1afdb32..e941ba3d2a 100644
--- a/var/spack/repos/builtin/packages/hsakmt/package.py
+++ b/var/spack/repos/builtin/packages/hsakmt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hsf-cmaketools/package.py b/var/spack/repos/builtin/packages/hsf-cmaketools/package.py
index 7805351509..fb66f82ce4 100644
--- a/var/spack/repos/builtin/packages/hsf-cmaketools/package.py
+++ b/var/spack/repos/builtin/packages/hsf-cmaketools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hssp/package.py b/var/spack/repos/builtin/packages/hssp/package.py
index 073cbedea6..30ba0cd92a 100644
--- a/var/spack/repos/builtin/packages/hssp/package.py
+++ b/var/spack/repos/builtin/packages/hssp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,16 +18,16 @@ class Hssp(AutotoolsPackage):
homepage = "https://github.com/cmbi/hssp"
url = "https://github.com/cmbi/hssp/archive/3.0.10.tar.gz"
- version('3.0.10', sha256='b475d6fa62098df0e54c8dbdaa0b32de93bf5a393335f73f9b5a7e95f3090d2a')
- version('3.0.9', sha256='42a9a93c48d22478212dcaf6ceb3feb64443e4cb2e8cccdd402b47a595d16658')
- version('3.0.8', sha256='45e316ff2c700f09971027f9e813cf3139d36ab5951d337948fafab53e00d821')
- version('3.0.7', sha256='eb6c3276eeb1261c55568ebfae301033904fe619d84b380313dbf137a2b06cd1')
- version('3.0.6', sha256='b868e0077270361276c1c256e2f137ad95f7e84deeb61ae267f7559ebaab7d59')
- version('3.0.5', sha256='fded09f08cfb12e578e4823295dc0d0aaeff6559d5e099df23c5bcc911597ccd')
- version('3.0.4', sha256='fe786c3a75dafe93bb6a97c2840c3edb0d0e81446874082dc053e136dd3b7f68')
- version('3.0.3', sha256='c4826ed74a74e3238f45104cb21ca4ad9e5b49498891e991a3a3a7a3b9bdbe1d')
- version('3.0.2', sha256='edb43dc7407a5e91d68d27b732887c6e70a1988e8ddbba03d430713c40c40139')
- version('3.0.1', sha256='8f56bc51d7b5f035442c189dd7096f0dd25528303722507365f5e746d5ad9a73')
+ version('3.0.10', sha256='9b2cba9c498e65fd48730f0fc86ca2b480bf12903a2c131521023f3a161fe870')
+ version('3.0.9', sha256='2f67743ffd233ed9c4cd298e8fc65a332b863052945fb62bd61d7f1776274da9')
+ version('3.0.8', sha256='56c926d2e43a3dd6324de558dde868751355f385d1b60fd85586a0a2c2bc82e0')
+ version('3.0.7', sha256='3f1c09eb2cdc679119375a9ee552f853bcd1e959f030cb67ca6bd33809e6cdf2')
+ version('3.0.6', sha256='8d3bc75bd9513dd0800a630049969639758692e42a28028651543320cce70d5f')
+ version('3.0.5', sha256='8ca1de53e8add9e7af18a9f565bbcfa388f4d6ddcd2b7a1eae668c836ec0d09c')
+ version('3.0.4', sha256='67a39d325ce9c17a416a26172fd5ae28878be3557cd611d7cbb9bcaf09507e76')
+ version('3.0.3', sha256='42fc2b293fc60407ae097cc8021fd7cf0044092aa366c11ee99015beec83beea')
+ version('3.0.2', sha256='76b4275c8cde120509d7920609fca983f2b04249a649d0aa802c69fd09e5f8cf')
+ version('3.0.1', sha256='62a703d15bdfec82fdbd2a4275e1973b6a1ac6ccd4dbec75036f16faacaa9dce')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
diff --git a/var/spack/repos/builtin/packages/hstr/package.py b/var/spack/repos/builtin/packages/hstr/package.py
index 367d9d8d0b..f4f4bc399f 100644
--- a/var/spack/repos/builtin/packages/hstr/package.py
+++ b/var/spack/repos/builtin/packages/hstr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/htop/package.py b/var/spack/repos/builtin/packages/htop/package.py
index e0d9960467..dd6ff29663 100644
--- a/var/spack/repos/builtin/packages/htop/package.py
+++ b/var/spack/repos/builtin/packages/htop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/htslib/package.py b/var/spack/repos/builtin/packages/htslib/package.py
index 95c38d4a23..2afcb76744 100644
--- a/var/spack/repos/builtin/packages/htslib/package.py
+++ b/var/spack/repos/builtin/packages/htslib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Htslib(AutotoolsPackage):
homepage = "https://github.com/samtools/htslib"
url = "https://github.com/samtools/htslib/releases/download/1.10.2/htslib-1.10.2.tar.bz2"
+ version('1.12', sha256='2280141b46e953ba4ae01b98335a84f8e6ccbdb6d5cdbab7f70ee4f7e3b6f4ca')
version('1.10.2', sha256='e3b543de2f71723830a1e0472cf5489ec27d0fbeb46b1103e14a11b7177d1939')
version('1.9', sha256='e04b877057e8b3b8425d957f057b42f0e8509173621d3eccaedd0da607d9929a')
version('1.8', sha256='c0ef1eec954a98cc708e9f99f6037db85db45670b52b6ab37abcc89b6c057ca1')
diff --git a/var/spack/repos/builtin/packages/http-get/package.py b/var/spack/repos/builtin/packages/http-get/package.py
index aa05b9f355..897f6f5fc1 100644
--- a/var/spack/repos/builtin/packages/http-get/package.py
+++ b/var/spack/repos/builtin/packages/http-get/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,15 +12,15 @@ class HttpGet(MakefilePackage):
It does not do gopher, ftp, file, news, or any other type of URL,
only HTTP. It can be configured to do HTTPS fetches as well."""
- homepage = "http://www.acme.com/software/http_get/"
- url = "http://www.acme.com/software/http_get/http_get_23May2018.tar.gz"
+ homepage = "https://www.acme.com/software/http_get/"
+ url = "https://www.acme.com/software/http_get/http_get_23May2018.tar.gz"
- version('2018-05-23', sha256='7d46ce25e53b6d3e27a99c1853c3054a046cc97d5e30a713a7ec986cfe7c4fe0')
+ version('2018-05-23', sha256='f04e9d911fbc0cdb7c4ebe91dae1cc951ea14b657f48309c3952dcc938bb2e0d')
def url_for_version(self, version):
ver = datetime.datetime.strptime(str(version), '%Y-%m-%d').date()
verstr = datetime.datetime.strftime(ver, '%d%b%Y')
- return "http://www.acme.com/software/http_get/http_get_{0}.tar.gz".format(verstr)
+ return "https://www.acme.com/software/http_get/http_get_{0}.tar.gz".format(verstr)
def edit(self, spec, prefix):
makefile = FileFilter("Makefile")
diff --git a/var/spack/repos/builtin/packages/http-load/package.py b/var/spack/repos/builtin/packages/http-load/package.py
index 4b2f61d18d..3be6189dde 100644
--- a/var/spack/repos/builtin/packages/http-load/package.py
+++ b/var/spack/repos/builtin/packages/http-load/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,15 @@ import datetime
class HttpLoad(MakefilePackage):
"""http_load - multiprocessing http test client"""
- homepage = "http://www.acme.com/software/http_load/"
- url = "http://www.acme.com/software/http_load/http_load-09Mar2016.tar.gz"
+ homepage = "https://www.acme.com/software/http_load/"
+ url = "https://www.acme.com/software/http_load/http_load-09Mar2016.tar.gz"
- version('2016-03-09', sha256='a2bf118d88f6acd2a082cbf275d141538149caaa0a4ce1bcc66680668e781306')
+ version('2016-03-09', sha256='5a7b00688680e3fca8726dc836fd3f94f403fde831c71d73d9a1537f215b4587')
def url_for_version(self, version):
ver = datetime.datetime.strptime(str(version), '%Y-%m-%d').date()
verstr = datetime.datetime.strftime(ver, '%d%b%Y')
- return "http://www.acme.com/software/http_load/http_load-{0}.tar.gz".format(verstr)
+ return "https://www.acme.com/software/http_load/http_load-{0}.tar.gz".format(verstr)
def edit(self, spec, prefix):
makefile = FileFilter("Makefile")
diff --git a/var/spack/repos/builtin/packages/http-parser/package.py b/var/spack/repos/builtin/packages/http-parser/package.py
index 552b7d2cbb..503a99bdbf 100644
--- a/var/spack/repos/builtin/packages/http-parser/package.py
+++ b/var/spack/repos/builtin/packages/http-parser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/http-ping/package.py b/var/spack/repos/builtin/packages/http-ping/package.py
index 7cf731e019..c7e21361bb 100644
--- a/var/spack/repos/builtin/packages/http-ping/package.py
+++ b/var/spack/repos/builtin/packages/http-ping/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,15 +11,15 @@ class HttpPing(MakefilePackage):
"""http_ping is like the regular ping command, except that it sends
HTTP requests instead of ICMP echo requests."""
- homepage = "http://www.acme.com/software/http_ping/"
- url = "http://www.acme.com/software/http_ping/http_ping_09Mar2016.tar.gz"
+ homepage = "https://www.acme.com/software/http_ping/"
+ url = "https://www.acme.com/software/http_ping/http_ping_09Mar2016.tar.gz"
- version('2016-03-09', sha256='6bdc570c776a760d2c08f7d18e00b0edd74cf603400929c66c512801b6bb5871')
+ version('2016-03-09', sha256='f8b95773aaed09839a44a1927f979a62752d57aace79da3846bfb73e6c9805e9')
def url_for_version(self, version):
ver = datetime.datetime.strptime(str(version), '%Y-%m-%d').date()
verstr = datetime.datetime.strftime(ver, '%d%b%Y')
- return "http://www.acme.com/software/http_ping/http_ping_{0}.tar.gz".format(verstr)
+ return "https://www.acme.com/software/http_ping/http_ping_{0}.tar.gz".format(verstr)
def edit(self, spec, prefix):
makefile = FileFilter("Makefile")
diff --git a/var/spack/repos/builtin/packages/http-post/package.py b/var/spack/repos/builtin/packages/http-post/package.py
index bb9c0f2593..8f03a1db96 100644
--- a/var/spack/repos/builtin/packages/http-post/package.py
+++ b/var/spack/repos/builtin/packages/http-post/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,15 +12,15 @@ class HttpPost(MakefilePackage):
to stdout. It does not do gopher, ftp, file, news, or any other type of
URL, only HTTP. It can be configured to do HTTPS POSTs as well."""
- homepage = "http://www.acme.com/software/http_post/"
- url = "http://www.acme.com/software/http_post/http_post_18May2018.tar.gz"
+ homepage = "https://www.acme.com/software/http_post/"
+ url = "https://www.acme.com/software/http_post/http_post_18May2018.tar.gz"
- version('2018-05-18', sha256='981c62bcc5cd12b8531f887b3e3779a63a7b7f370062575cded412865a20ea2c')
+ version('2018-05-18', sha256='6607faa91aea410efb9b86ae0b1b64541b55318831cf6bb3fdee5d68f8adab31')
def url_for_version(self, version):
ver = datetime.datetime.strptime(str(version), '%Y-%m-%d').date()
verstr = datetime.datetime.strftime(ver, '%d%b%Y')
- return "http://www.acme.com/software/http_post/http_post_{0}.tar.gz".format(verstr)
+ return "https://www.acme.com/software/http_post/http_post_{0}.tar.gz".format(verstr)
def edit(self, spec, prefix):
makefile = FileFilter("Makefile")
diff --git a/var/spack/repos/builtin/packages/httpd/package.py b/var/spack/repos/builtin/packages/httpd/package.py
index ed212c34af..5b5a2e28f3 100644
--- a/var/spack/repos/builtin/packages/httpd/package.py
+++ b/var/spack/repos/builtin/packages/httpd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/httperf/package.py b/var/spack/repos/builtin/packages/httperf/package.py
index 4c33f98ed0..caf6c1c0df 100644
--- a/var/spack/repos/builtin/packages/httperf/package.py
+++ b/var/spack/repos/builtin/packages/httperf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/httpie/package.py b/var/spack/repos/builtin/packages/httpie/package.py
index 53b95337b5..1e50477b46 100644
--- a/var/spack/repos/builtin/packages/httpie/package.py
+++ b/var/spack/repos/builtin/packages/httpie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class Httpie(PythonPackage):
"""Modern command line HTTP client."""
homepage = "https://httpie.org/"
- url = "https://pypi.io/packages/source/h/httpie/httpie-0.9.8.tar.gz"
+ pypi = "httpie/httpie-0.9.8.tar.gz"
version('0.9.9', sha256='f1202e6fa60367e2265284a53f35bfa5917119592c2ab08277efc7fffd744fcb')
version('0.9.8', sha256='515870b15231530f56fe2164190581748e8799b66ef0fe36ec9da3396f0df6e1')
diff --git a/var/spack/repos/builtin/packages/httping/package.py b/var/spack/repos/builtin/packages/httping/package.py
index 7eed1c958a..cd93ef81e6 100644
--- a/var/spack/repos/builtin/packages/httping/package.py
+++ b/var/spack/repos/builtin/packages/httping/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/httpress/package.py b/var/spack/repos/builtin/packages/httpress/package.py
index b4a9dab270..a5198dfa10 100644
--- a/var/spack/repos/builtin/packages/httpress/package.py
+++ b/var/spack/repos/builtin/packages/httpress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hub/package.py b/var/spack/repos/builtin/packages/hub/package.py
index 7b342b234d..a71bb5eb69 100644
--- a/var/spack/repos/builtin/packages/hub/package.py
+++ b/var/spack/repos/builtin/packages/hub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hudi/package.py b/var/spack/repos/builtin/packages/hudi/package.py
index 9147829b06..5accbae1f1 100644
--- a/var/spack/repos/builtin/packages/hudi/package.py
+++ b/var/spack/repos/builtin/packages/hudi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hugo/package.py b/var/spack/repos/builtin/packages/hugo/package.py
index fe9df5c110..537a180c0f 100644
--- a/var/spack/repos/builtin/packages/hugo/package.py
+++ b/var/spack/repos/builtin/packages/hugo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hunspell/package.py b/var/spack/repos/builtin/packages/hunspell/package.py
index 8eedf43539..bd9060f5e8 100644
--- a/var/spack/repos/builtin/packages/hunspell/package.py
+++ b/var/spack/repos/builtin/packages/hunspell/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hw-probe/package.py b/var/spack/repos/builtin/packages/hw-probe/package.py
new file mode 100644
index 0000000000..3b82850f18
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hw-probe/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class HwProbe(MakefilePackage):
+ """Hardware Probe Tool (hw-probe)."""
+
+ homepage = "https://github.com/linuxhw/hw-probe"
+ url = "https://github.com/linuxhw/hw-probe/archive/1.5.tar.gz"
+
+ version('1.5', sha256='8bb7d6ff272c1412e26fcfd86e9df5c3e34e1584552404b930c281b8498b25ea')
+ version('1.4', sha256='90f3ea83bf641348b209e4a2a910f65d836ae7828c0be0f660236ea413bc46bb')
+ version('1.3', sha256='820ada4f16cb827e0990eb918e75423845fef54a863fdd88aa5bd23127354229')
+
+ def install(self, spec, prefix):
+ make('install', 'prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/hwdata/package.py b/var/spack/repos/builtin/packages/hwdata/package.py
new file mode 100644
index 0000000000..c699189a40
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hwdata/package.py
@@ -0,0 +1,16 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Hwdata(AutotoolsPackage):
+ """Hardware identification and configuration data."""
+
+ homepage = "https://github.com/vcrhonek/hwdata"
+ url = "https://github.com/vcrhonek/hwdata/archive/v0.337.tar.gz"
+
+ version('0.345', sha256='fafcc97421ba766e08a2714ccc3eebb0daabc99e67d53c2d682721dd01ccf7a7')
+ version('0.340', sha256='e3a0ef18af6795a362345a2c2c7177be351cb27b4cc0ed9278b7409759258802')
diff --git a/var/spack/repos/builtin/packages/hwloc/0001-Try-linking-to-libtinfo.patch b/var/spack/repos/builtin/packages/hwloc/0001-Try-linking-to-libtinfo.patch
new file mode 100644
index 0000000000..59fb856118
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hwloc/0001-Try-linking-to-libtinfo.patch
@@ -0,0 +1,25 @@
+From 0847b85eb65f7648f9104ae1e69e0c657d836031 Mon Sep 17 00:00:00 2001
+From: Harmen Stoppels <harmenstoppels@gmail.com>
+Date: Mon, 5 Apr 2021 12:51:38 +0200
+Subject: [PATCH] Try linking to libtinfo
+
+---
+ configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index b775477..fb89d30 100755
+--- a/configure
++++ b/configure
+@@ -16811,7 +16811,7 @@ done
+ chosen_curses=""
+ for curses in ncurses curses
+ do
+- for lib in "" -ltermcap -l${curses}w -l$curses
++ for lib in "" -l${curses}w -l$curses -ltinfo -ltermcap
+ do
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking termcap support using $curses and $lib" >&5
+ $as_echo_n "checking termcap support using $curses and $lib... " >&6; }
+--
+2.31.1
+
diff --git a/var/spack/repos/builtin/packages/hwloc/package.py b/var/spack/repos/builtin/packages/hwloc/package.py
index 4edabfbf4a..35abfd97c3 100644
--- a/var/spack/repos/builtin/packages/hwloc/package.py
+++ b/var/spack/repos/builtin/packages/hwloc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -30,11 +30,16 @@ class Hwloc(AutotoolsPackage):
maintainers = ['bgoglin']
version('master', branch='master')
+ version('2.4.1', sha256='4267fe1193a8989f3ab7563a7499e047e77e33fed8f4dec16822a7aebcf78459')
+ version('2.4.0', sha256='30404065dc1d6872b0181269d0bb2424fbbc6e3b0a80491aa373109554006544')
+ version('2.3.0', sha256='155480620c98b43ddf9ca66a6c318b363ca24acb5ff0683af9d25d9324f59836')
version('2.2.0', sha256='2defba03ddd91761b858cbbdc2e3a6e27b44e94696dbfa21380191328485a433')
version('2.1.0', sha256='1fb8cc1438de548e16ec3bb9e4b2abb9f7ce5656f71c0906583819fcfa8c2031')
version('2.0.2', sha256='27dcfe42e3fb3422b72ce48b48bf601c0a3e46e850ee72d9bdd17b5863b6e42c')
version('2.0.1', sha256='f1156df22fc2365a31a3dc5f752c53aad49e34a5e22d75ed231cd97eaa437f9d')
version('2.0.0', sha256='a0d425a0fc7c7e3f2c92a272ffaffbd913005556b4443e1887d2e1718d902887')
+ version('1.11.13', sha256='a8f781ae4d347708a07d95e7549039887f151ed7f92263238527dfb0a3709b9d')
+ version('1.11.12', sha256='f1d49433e605dd653a77e1478a78cee095787d554a94afe40d1376bca6708ca5')
version('1.11.11', sha256='74329da3be1b25de8e98a712adb28b14e561889244bf3a8138afe91ab18e0b3a')
version('1.11.10', sha256='0a2530b739d9ebf60c4c1e86adb5451a20d9e78f7798cf78d0147cc6df328aac')
version('1.11.9', sha256='85b978995b67db0b1a12dd1a73b09ef3d39f8e3cb09f8b9c60cf04633acce46c')
@@ -85,6 +90,19 @@ class Hwloc(AutotoolsPackage):
depends_on('libxml2', when='+libxml2')
depends_on('cairo', when='+cairo')
depends_on('numactl', when='@:1.11.11 platform=linux')
+ depends_on('ncurses')
+
+ # Before 2.2 hwloc does not consider linking to libtinfo
+ # to detect ncurses, which is considered a bug.
+ # For older versions this can be fixed by depending on
+ # ncurses~termlib, but this could lead to insatisfiable
+ # constraints (e.g. llvm explicitly depends on ncurses+termlib)
+ # Therefore we patch the latest 1.x configure script to make
+ # it consider libtinfo too.
+ # see https://github.com/open-mpi/hwloc/pull/417
+ patch('0001-Try-linking-to-libtinfo.patch', when='@1.11.13')
+ depends_on('ncurses ~termlib', when='@2.0:2.2')
+ depends_on('ncurses ~termlib', when='@1.0:1.11.12')
# When mpi=openmpi, this introduces an unresolvable dependency.
# See https://github.com/spack/spack/issues/15836 for details
diff --git a/var/spack/repos/builtin/packages/hybpiper/package.py b/var/spack/repos/builtin/packages/hybpiper/package.py
index 5f436c7487..81883a397d 100644
--- a/var/spack/repos/builtin/packages/hybpiper/package.py
+++ b/var/spack/repos/builtin/packages/hybpiper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hybrid-lambda/package.py b/var/spack/repos/builtin/packages/hybrid-lambda/package.py
new file mode 100644
index 0000000000..a9228497b9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hybrid-lambda/package.py
@@ -0,0 +1,39 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class HybridLambda(AutotoolsPackage):
+ """Hybrid-Lambda is a software package that can simulate gene trees
+ within a rooted species network or a rooted species tree under the
+ coalescent process.
+
+ The main feature of this program is that users can
+ choose to use the standard Kingman coalescent process, which produces
+ bifurcating genealogies, or two other Lambda coalescent processes,
+ which produce multifurcating genealogies. The other feature is that
+ hybrid sim uses extended Newick formatted strings to make it easier to
+ represent hybridization events between species."""
+
+ homepage = "https://github.com/hybridLambda/hybrid-Lambda"
+ git = "https://github.com/hybridLambda/hybrid-Lambda.git"
+
+ version('develop', submodules=True)
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('boost')
+ depends_on('cppunit', type='test')
+
+ build_directory = 'src'
+
+ @run_after('configure')
+ def change_install_option_in_makefile(self):
+ with working_dir('src'):
+ filter_file(r'INSTALL = /bin/install -c',
+ 'INSTALL = /bin/install -C', 'Makefile')
diff --git a/var/spack/repos/builtin/packages/hybridsim/package.py b/var/spack/repos/builtin/packages/hybridsim/package.py
index 089181ca0b..503a98637f 100644
--- a/var/spack/repos/builtin/packages/hybridsim/package.py
+++ b/var/spack/repos/builtin/packages/hybridsim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hydra/package.py b/var/spack/repos/builtin/packages/hydra/package.py
index c5afe90b3e..9c50295110 100644
--- a/var/spack/repos/builtin/packages/hydra/package.py
+++ b/var/spack/repos/builtin/packages/hydra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hydrogen/package.py b/var/spack/repos/builtin/packages/hydrogen/package.py
index 082d8316d7..849a76f8e8 100644
--- a/var/spack/repos/builtin/packages/hydrogen/package.py
+++ b/var/spack/repos/builtin/packages/hydrogen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ import os
from spack import *
-class Hydrogen(CMakePackage, CudaPackage):
+class Hydrogen(CMakePackage, CudaPackage, ROCmPackage):
"""Hydrogen: Distributed-memory dense and sparse-direct linear algebra
and optimization library. Based on the Elemental library."""
@@ -18,6 +18,7 @@ class Hydrogen(CMakePackage, CudaPackage):
maintainers = ['bvanessen']
version('develop', branch='hydrogen')
+ version('1.5.1', sha256='447da564278f98366906d561d9c8bc4d31678c56d761679c2ff3e59ee7a2895c')
version('1.5.0', sha256='03dd487fb23b9fdbc715554a8ea48c3196a1021502e61b0172ef3fdfbee75180')
version('1.4.0', sha256='c13374ff4a6c4d1076e47ba8c8d91a7082588b9958d1ed89cffb12f1d2e1452e')
version('1.3.4', sha256='7979f6656f698f0bbad6798b39d4b569835b3013ff548d98089fce7c283c6741')
@@ -53,8 +54,6 @@ class Hydrogen(CMakePackage, CudaPackage):
variant('mpfr', default=False,
description='Support GNU MPFR\'s'
'arbitrary-precision floating-point arithmetic')
- variant('cuda', default=False,
- description='Builds with support for GPUs via CUDA and cuDNN')
variant('test', default=False,
description='Builds test suite')
variant('al', default=False,
@@ -65,10 +64,13 @@ class Hydrogen(CMakePackage, CudaPackage):
description='Builds with support for FP16 precision data types')
conflicts('~openmp', when='+omp_taskloops')
+ conflicts('+cuda', when='+rocm', msg='CUDA and ROCm support are mutually exclusive')
depends_on('cmake@3.17.0:', type='build')
depends_on('mpi')
depends_on('hwloc@1.11:')
+ depends_on('hwloc +cuda +nvml', when='+cuda')
+ depends_on('hwloc@2.3.0:', when='+rocm')
# Note that #1712 forces us to enumerate the different blas variants
depends_on('openblas', when='blas=openblas')
@@ -83,7 +85,6 @@ class Hydrogen(CMakePackage, CudaPackage):
conflicts('blas=accelerate +openmp_blas')
depends_on('essl', when='blas=essl')
- depends_on('essl -cuda', when='blas=essl -openmp_blas')
depends_on('essl +ilp64', when='blas=essl +int64_blas')
depends_on('essl threads=openmp', when='blas=essl +openmp_blas')
depends_on('netlib-lapack +external-blas', when='blas=essl')
@@ -91,10 +92,20 @@ class Hydrogen(CMakePackage, CudaPackage):
# Specify the correct version of Aluminum
depends_on('aluminum@:0.3.99', when='@:1.3.99 +al')
depends_on('aluminum@0.4:0.4.99', when='@1.4:1.4.99 +al')
- depends_on('aluminum@0.5:', when='@:1.0,1.5.0: +al')
+ depends_on('aluminum@0.6.0:0.6.99', when='@1.5.0:1.5.1 +al')
+ depends_on('aluminum@0.7.0:', when='@:1.0,1.5.2: +al')
# Add Aluminum variants
depends_on('aluminum +cuda +nccl +ht +cuda_rma', when='+al +cuda')
+ depends_on('aluminum +rocm +rccl +ht', when='+al +rocm')
+
+ for arch in CudaPackage.cuda_arch_values:
+ depends_on('aluminum cuda_arch=%s' % arch, when='+al +cuda cuda_arch=%s' % arch)
+
+ # variants +rocm and amdgpu_targets are not automatically passed to
+ # dependencies, so do it manually.
+ for val in ROCmPackage.amdgpu_targets:
+ depends_on('aluminum amdgpu_target=%s' % val, when='+al +rocm amdgpu_target=%s' % val)
# Note that this forces us to use OpenBLAS until #1712 is fixed
depends_on('lapack', when='blas=openblas ~openmp_blas')
@@ -106,6 +117,7 @@ class Hydrogen(CMakePackage, CudaPackage):
depends_on('cuda', when='+cuda')
depends_on('cub', when='^cuda@:10.99')
+ depends_on('hipcub', when='+rocm')
depends_on('half', when='+half')
depends_on('llvm-openmp', when='%apple-clang +openmp')
@@ -126,7 +138,10 @@ class Hydrogen(CMakePackage, CudaPackage):
def cmake_args(self):
spec = self.spec
+ enable_gpu_fp16 = ('+cuda' in spec and '+half' in spec)
+
args = [
+ '-DCMAKE_CXX_STANDARD=14',
'-DCMAKE_INSTALL_MESSAGE:STRING=LAZY',
'-DBUILD_SHARED_LIBS:BOOL=%s' % ('+shared' in spec),
'-DHydrogen_ENABLE_OPENMP:BOOL=%s' % ('+openmp' in spec),
@@ -136,12 +151,30 @@ class Hydrogen(CMakePackage, CudaPackage):
'-DHydrogen_ENABLE_MPC:BOOL=%s' % ('+mpfr' in spec),
'-DHydrogen_GENERAL_LAPACK_FALLBACK=ON',
'-DHydrogen_ENABLE_ALUMINUM=%s' % ('+al' in spec),
- '-DHydrogen_ENABLE_CUB=%s' % ('+cuda' in spec),
+ '-DHydrogen_ENABLE_CUB=%s' % ('+cuda' in spec or '+rocm' in spec),
'-DHydrogen_ENABLE_CUDA=%s' % ('+cuda' in spec),
+ '-DHydrogen_ENABLE_ROCM=%s' % ('+rocm' in spec),
'-DHydrogen_ENABLE_TESTING=%s' % ('+test' in spec),
'-DHydrogen_ENABLE_HALF=%s' % ('+half' in spec),
+ '-DHydrogen_ENABLE_GPU_FP16=%s' % enable_gpu_fp16,
]
+ if '+cuda' in spec:
+ args.append('-DCMAKE_CUDA_STANDARD=14')
+
+ if '+rocm' in spec:
+ args.extend([
+ '-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix),
+ '-DHIP_CXX_COMPILER={0}'.format(self.spec['hip'].hipcc)])
+ archs = self.spec.variants['amdgpu_target'].value
+ if archs != 'none':
+ arch_str = ",".join(archs)
+ cxxflags_str = " ".join(self.spec.compiler_flags['cxxflags'])
+ args.append(
+ '-DHIP_HIPCC_FLAGS=--amdgpu-target={0}'
+ ' -g -fsized-deallocation -fPIC {1}'.format(arch_str, cxxflags_str)
+ )
+
# Add support for OS X to find OpenMP (LLVM installed via brew)
if self.spec.satisfies('%clang +openmp platform=darwin'):
clang = self.compiler.cc
diff --git a/var/spack/repos/builtin/packages/hyperscan/package.py b/var/spack/repos/builtin/packages/hyperscan/package.py
index 1fd057c7c6..874ce10fdc 100644
--- a/var/spack/repos/builtin/packages/hyperscan/package.py
+++ b/var/spack/repos/builtin/packages/hyperscan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/hyphen/package.py b/var/spack/repos/builtin/packages/hyphen/package.py
new file mode 100644
index 0000000000..60550fd181
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hyphen/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Hyphen(AutotoolsPackage):
+ """A library of text hyphenation."""
+
+ homepage = "https://hunspell.github.io"
+ url = "https://downloads.sourceforge.net/hunspell/hyphen-2.8.8.tar.gz"
+ git = "https://github.com/hunspell/hyphen.git"
+
+ version('master', branch='master')
+ version('2.8.8', sha256='304636d4eccd81a14b6914d07b84c79ebb815288c76fe027b9ebff6ff24d5705')
+
+ depends_on('m4', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
diff --git a/var/spack/repos/builtin/packages/hyphy/package.py b/var/spack/repos/builtin/packages/hyphy/package.py
index 851c795b83..00647dc5de 100644
--- a/var/spack/repos/builtin/packages/hyphy/package.py
+++ b/var/spack/repos/builtin/packages/hyphy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class Hyphy(CMakePackage):
version('2.3.14', sha256='9e6c817cb649986e3fe944bcaf88be3533e7e62968b9a486c719e951e5ed1cf6')
- depends_on('cmake@3.0:')
+ depends_on('cmake@3.0:', type='build')
depends_on('curl')
conflicts('%gcc@:4.8')
diff --git a/var/spack/repos/builtin/packages/hypre/package.py b/var/spack/repos/builtin/packages/hypre/package.py
index da2b8a03ee..43213507c4 100644
--- a/var/spack/repos/builtin/packages/hypre/package.py
+++ b/var/spack/repos/builtin/packages/hypre/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ import os
import sys
-class Hypre(Package):
+class Hypre(Package, CudaPackage):
"""Hypre is a library of high performance preconditioners that
features parallel multigrid methods for both structured and
unstructured grid problems."""
@@ -19,6 +19,8 @@ class Hypre(Package):
maintainers = ['ulrikeyang', 'osborn9', 'balay']
+ test_requires_compiler = True
+
version('develop', branch='master')
version('2.20.0', sha256='5be77b28ddf945c92cde4b52a272d16fb5e9a7dc05e714fc5765948cba802c01')
version('2.19.0', sha256='466b19d8a86c69989a237f6f03f20d35c0c63a818776d2cd071b0a084cffeba5')
@@ -58,6 +60,7 @@ class Hypre(Package):
variant('openmp', default=False, description='Enable OpenMP support')
variant('debug', default=False,
description='Build debug instead of optimized version')
+ variant('unified-memory', default=False, description='Use unified memory')
# Patch to add ppc64le in config.guess
patch('ibm-ppc64le.patch', when='@:2.11.1')
@@ -76,6 +79,9 @@ class Hypre(Package):
depends_on("lapack")
depends_on('superlu-dist', when='+superlu-dist+mpi')
+ conflicts('+cuda', when='+int64')
+ conflicts('+unified-memory', when='~cuda')
+
# Patch to build shared libraries on Darwin does not apply to
# versions before 2.13.0
conflicts("+shared@:2.12.99 platform=darwin")
@@ -98,7 +104,8 @@ class Hypre(Package):
return url.format(version)
- def install(self, spec, prefix):
+ def _configure_args(self):
+ spec = self.spec
# Note: --with-(lapack|blas)_libs= needs space separated list of names
lapack = spec['lapack'].libs
blas = spec['blas'].libs
@@ -160,6 +167,43 @@ class Hypre(Package):
else:
configure_args.append("--disable-debug")
+ if '+cuda' in self.spec:
+ configure_args.extend([
+ '--with-cuda',
+ '--enable-curand',
+ '--enable-cub'
+ ])
+ else:
+ configure_args.extend([
+ '--without-cuda',
+ '--disable-curand',
+ '--disable-cub'
+ ])
+
+ if '+unified-memory' in self.spec:
+ configure_args.append('--enable-unified-memory')
+
+ return configure_args
+
+ def setup_build_environment(self, env):
+ if '+mpi' in self.spec:
+ env.set('CC', self.spec['mpi'].mpicc)
+ env.set('CXX', self.spec['mpi'].mpicxx)
+ env.set('F77', self.spec['mpi'].mpif77)
+
+ if '+cuda' in self.spec:
+ env.set('CUDA_HOME', self.spec['cuda'].prefix)
+ env.set('CUDA_PATH', self.spec['cuda'].prefix)
+ cuda_arch = self.spec.variants['cuda_arch'].value
+ if cuda_arch:
+ arch_sorted = list(sorted(cuda_arch, reverse=True))
+ env.set('HYPRE_CUDA_SM', arch_sorted[0])
+ # In CUDA builds hypre currently doesn't handle flags correctly
+ env.append_flags(
+ 'CXXFLAGS', '-O2' if '~debug' in self.spec else '-g')
+
+ def install(self, spec, prefix):
+ configure_args = self._configure_args()
# Hypre's source is staged under ./src so we'll have to manually
# cd into it.
with working_dir("src"):
@@ -176,6 +220,27 @@ class Hypre(Package):
'-rhsone')
make("install")
+ @run_after('install')
+ def cache_test_sources(self):
+ srcs = ['src/examples']
+ self.cache_extra_test_sources(srcs)
+
+ def test(self):
+ """Perform smoke test on installed HYPRE package."""
+
+ if '+mpi' in self.spec:
+ examples_dir = join_path(self.install_test_root, 'src/examples')
+ with working_dir(examples_dir, create=False):
+ make("HYPRE_DIR=" + self.prefix, "bigint")
+
+ reason = "test: ensuring HYPRE examples run"
+ self.run_test('./ex5big', [], [], installed=True,
+ purpose=reason, skip_missing=True, work_dir='.')
+ self.run_test('./ex15big', [], [], installed=True,
+ purpose=reason, skip_missing=True, work_dir='.')
+
+ make("distclean")
+
@property
def headers(self):
"""Export the main hypre header, HYPRE.h; all other headers can be found
diff --git a/var/spack/repos/builtin/packages/i3/package.py b/var/spack/repos/builtin/packages/i3/package.py
index af598a051a..fbf4c3ed90 100644
--- a/var/spack/repos/builtin/packages/i3/package.py
+++ b/var/spack/repos/builtin/packages/i3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ibm-databroker/package.py b/var/spack/repos/builtin/packages/ibm-databroker/package.py
index b060ff98ad..d5c0faf134 100644
--- a/var/spack/repos/builtin/packages/ibm-databroker/package.py
+++ b/var/spack/repos/builtin/packages/ibm-databroker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ibm-java/package.py b/var/spack/repos/builtin/packages/ibm-java/package.py
index c0a59942e6..4b3dc2ae9b 100644
--- a/var/spack/repos/builtin/packages/ibm-java/package.py
+++ b/var/spack/repos/builtin/packages/ibm-java/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,8 @@ class IbmJava(Package):
# not be available for download.
version_list = [
+ ('8.0.6.20', 'ppc64', '88748d1502a35845b18d514dd76835f0f47270c6ffbd81f67f611e32d042b288'),
+ ('8.0.6.20', 'ppc64le', '4a7ac4712548d7630f2471a067406c94c3846fff75a0afc660682129dcf80e5b'),
('8.0.6.11', 'ppc64', '6fd17a6b9a34bb66e0db37f6402dc1b7612d54084c94b859f4a42f445fd174d4'),
('8.0.6.11', 'ppc64le', 'd69ff7519e32e89db88a9a4d4d88d1881524073ac940f35d3860db2c6647be2e'),
('8.0.6.10', 'ppc64', 'ff5151ead88f891624eefe33d80d56c325ca0aa4b93bd96c135cad326993eda2'),
diff --git a/var/spack/repos/builtin/packages/ibmisc/package.py b/var/spack/repos/builtin/packages/ibmisc/package.py
index eabafb0a7e..7fe8019a57 100644
--- a/var/spack/repos/builtin/packages/ibmisc/package.py
+++ b/var/spack/repos/builtin/packages/ibmisc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -50,12 +50,12 @@ class Ibmisc(CMakePackage):
depends_on('doxygen', type='build')
def cmake_args(self):
- spec = self.spec
return [
- '-DUSE_EVERYTRACE=%s' % ('YES' if '+everytrace' in spec else 'NO'),
- '-DUSE_PROJ4=%s' % ('YES' if '+proj' in spec else 'NO'),
- '-DUSE_BLITZ=%s' % ('YES' if '+blitz' in spec else 'NO'),
- '-DUSE_NETCDF=%s' % ('YES' if '+netcdf' in spec else 'NO'),
- '-DUSE_BOOST=%s' % ('YES' if '+boost' in spec else 'NO'),
- '-DUSE_UDUNITS2=%s' % ('YES' if '+udunits2' in spec else 'NO'),
- '-DUSE_GTEST=%s' % ('YES' if '+googletest' in spec else 'NO')]
+ self.define_from_variant('USE_EVERYTRACE', 'everytrace'),
+ self.define_from_variant('USE_PROJ4', 'proj'),
+ self.define_from_variant('USE_BLITZ', 'blitz'),
+ self.define_from_variant('USE_NETCDF', 'netcdf'),
+ self.define_from_variant('USE_BOOST', 'boost'),
+ self.define_from_variant('USE_UDUNITS2', 'udunits2'),
+ self.define_from_variant('USE_GTEST', 'googletest'),
+ ]
diff --git a/var/spack/repos/builtin/packages/icarus/package.py b/var/spack/repos/builtin/packages/icarus/package.py
index 16e9c80d0e..749164d882 100644
--- a/var/spack/repos/builtin/packages/icarus/package.py
+++ b/var/spack/repos/builtin/packages/icarus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/iceauth/package.py b/var/spack/repos/builtin/packages/iceauth/package.py
index 28497c8d9e..18f1c5ad24 100644
--- a/var/spack/repos/builtin/packages/iceauth/package.py
+++ b/var/spack/repos/builtin/packages/iceauth/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Iceauth(AutotoolsPackage, XorgPackage):
depends_on('libice')
- depends_on('xproto@7.0.22:', type='build')
+ depends_on('xproto@7.0.22:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/icedtea/package.py b/var/spack/repos/builtin/packages/icedtea/package.py
index 9274251016..01b919e6f9 100644
--- a/var/spack/repos/builtin/packages/icedtea/package.py
+++ b/var/spack/repos/builtin/packages/icedtea/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/icet/package.py b/var/spack/repos/builtin/packages/icet/package.py
index 458777d3a3..95afb15c95 100644
--- a/var/spack/repos/builtin/packages/icet/package.py
+++ b/var/spack/repos/builtin/packages/icet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ico/package.py b/var/spack/repos/builtin/packages/ico/package.py
index b2c5f991b8..b9ba9c5075 100644
--- a/var/spack/repos/builtin/packages/ico/package.py
+++ b/var/spack/repos/builtin/packages/ico/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Ico(AutotoolsPackage, XorgPackage):
depends_on('libx11@0.99.1:')
- depends_on('xproto@7.0.22:', type='build')
+ depends_on('xproto@7.0.22:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/icu4c/package.py b/var/spack/repos/builtin/packages/icu4c/package.py
index 0663ae6edf..17ddf29cc1 100644
--- a/var/spack/repos/builtin/packages/icu4c/package.py
+++ b/var/spack/repos/builtin/packages/icu4c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/id3lib/package.py b/var/spack/repos/builtin/packages/id3lib/package.py
index 2825b15152..ac9a4a705b 100644
--- a/var/spack/repos/builtin/packages/id3lib/package.py
+++ b/var/spack/repos/builtin/packages/id3lib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/idba/package.py b/var/spack/repos/builtin/packages/idba/package.py
index 5e4f6780dd..9db9050ba4 100644
--- a/var/spack/repos/builtin/packages/idba/package.py
+++ b/var/spack/repos/builtin/packages/idba/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/idl/package.py b/var/spack/repos/builtin/packages/idl/package.py
index 21804ed11a..964824ab96 100644
--- a/var/spack/repos/builtin/packages/idl/package.py
+++ b/var/spack/repos/builtin/packages/idl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/iegenlib/package.py b/var/spack/repos/builtin/packages/iegenlib/package.py
index ee198fd588..b9920ec874 100644
--- a/var/spack/repos/builtin/packages/iegenlib/package.py
+++ b/var/spack/repos/builtin/packages/iegenlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ignite/package.py b/var/spack/repos/builtin/packages/ignite/package.py
index a5250fc7ef..d181f9e370 100644
--- a/var/spack/repos/builtin/packages/ignite/package.py
+++ b/var/spack/repos/builtin/packages/ignite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/igprof/igprof-5.9.16.patch b/var/spack/repos/builtin/packages/igprof/igprof-5.9.16.patch
new file mode 100644
index 0000000000..d82310c9d3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/igprof/igprof-5.9.16.patch
@@ -0,0 +1,131 @@
+--- src/analyse.cc.orig 2016-07-11 14:17:56.000000001 +0200
++++ src/analyse.cc 2016-07-11 14:20:55.000000001 +0200
+@@ -4374,8 +4374,8 @@
+ else
+ puts(",");
+
+- printf("[%d, %d, %d, %"PRId64", %"PRId64", %"PRId64", %"PRId64", "
+- "%"PRId64", %"PRId64", %"PRId64", ",
++ printf("[%d, %d, %d, %" PRId64 ", %" PRId64 ", %" PRId64 ", %" PRId64 ", "
++ "%" PRId64 ", %" PRId64 ", %" PRId64 ", ",
+ mainRow.rank(), symbolIndex, fileIndex,
+ mainRow.SELF, mainRow.CUM, mainRow.KIDS,
+ mainRow.SELF_ALL[1], mainRow.CUM_ALL[1],
+@@ -4445,7 +4445,7 @@
+ first = false;
+ else
+ puts(",");
+- printf("[%d, %d, %"PRId64", %"PRId64", %"PRId64", ",
++ printf("[%d, %d, %" PRId64 ", %" PRId64 ", %" PRId64 ", ",
+ mainRow.rank(), row.rank(),
+ row.SELF_COUNTS, row.SELF_CALLS, row.SELF_PATHS);
+
+@@ -4472,7 +4472,7 @@
+ first = false;
+ else
+ puts(",");
+- printf("[%d, %d, %"PRId64", %"PRId64", %"PRId64", ",
++ printf("[%d, %d, %" PRId64 ", %" PRId64 ", %" PRId64 ", ",
+ mainRow.rank(), row.rank(),
+ row.SELF_COUNTS, row.SELF_CALLS, row.SELF_PATHS);
+
+--- src/buffer.cc.orig 2017-05-31 11:53:55.891358442 +0200
++++ src/buffer.cc 2017-05-31 11:55:03.519291624 +0200
+@@ -62,12 +62,11 @@
+ MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
+ if (data != MAP_FAILED)
+ return data;
+- else
+- {
+- igprof_debug("failed to allocate memory for profile buffer: %s (%d)\n",
+- strerror(errno), errno);
+- igprof_abort();
+- }
++
++ igprof_debug("failed to allocate memory for profile buffer: %s (%d)\n",
++ strerror(errno), errno);
++ igprof_abort();
++ __builtin_unreachable();
+ }
+
+ void
+
+--- src/profile-perf.cc.orig 2018-07-11 15:11:31.000000001 +0200
++++ src/profile-perf.cc 2018-07-11 15:13:07.000000001 +0200
+@@ -98,7 +98,7 @@
+
+ struct sigaction sa;
+ sigemptyset(&sa.sa_mask);
+- sa.sa_handler = (sighandler_t) &profileSignalHandler;
++ sa.sa_sigaction = &profileSignalHandler;
+ sa.sa_flags = SA_RESTART | SA_SIGINFO;
+ sigaction(s_signal, &sa, 0);
+ }
+@@ -252,13 +252,13 @@
+ struct sigaction sa;
+ if (signum == s_signal
+ && act
+- && act->sa_handler != (sighandler_t) &profileSignalHandler)
++ && act->sa_sigaction != &profileSignalHandler)
+ {
+ igprof_debug("sigaction(): prevented profiling signal"
+ " %d from being overridden in thread 0x%lx\n",
+ s_signal, (unsigned long) pthread_self());
+ sigemptyset(&sa.sa_mask);
+- sa.sa_handler = (sighandler_t) &profileSignalHandler;
++ sa.sa_sigaction = &profileSignalHandler;
+ sa.sa_flags = SA_RESTART | SA_SIGINFO;
+ act = &sa;
+ }
+
+--- src/profile-energy.cc.orig 2018-07-11 15:14:32.000000001 +0200
++++ src/profile-energy.cc 2018-07-11 15:16:56.000000001 +0200
+@@ -268,7 +268,7 @@
+
+ struct sigaction sa;
+ sigemptyset(&sa.sa_mask);
+- sa.sa_handler = (sighandler_t) &profileSignalHandler;
++ sa.sa_sigaction = &profileSignalHandler;
+ sa.sa_flags = SA_RESTART | SA_SIGINFO;
+ sigaction(s_signal, &sa, 0);
+ }
+@@ -415,13 +415,13 @@
+ struct sigaction sa;
+ if (signum == s_signal
+ && act
+- && act->sa_handler != (sighandler_t) &profileSignalHandler)
++ && act->sa_sigaction != &profileSignalHandler)
+ {
+ igprof_debug("sigaction(): prevented profiling signal"
+ " %d from being overridden in thread 0x%lx\n",
+ s_signal, (unsigned long) pthread_self());
+ sigemptyset(&sa.sa_mask);
+- sa.sa_handler = (sighandler_t) &profileSignalHandler;
++ sa.sa_sigaction = &profileSignalHandler;
+ sa.sa_flags = SA_RESTART | SA_SIGINFO;
+ act = &sa;
+ }
+
+--- src/profile.cc.orig 2018-07-13 12:03:48.000000001 +0200
++++ src/profile.cc 2018-07-11 15:08:49.000000001 +0200
+@@ -577,7 +577,7 @@
+ igprof_debug("profiler options: %s\n", options);
+
+ // Report override function use.
+- if (igprof_abort != &abort)
++ if ((void (*)())igprof_abort != (void (*)()) &abort)
+ igprof_debug("abort() from system %p, app had %p\n",
+ __extension__ (void *) igprof_abort,
+ __extension__ (void *) &abort);
+
+--- CMakeLists.txt.orig 2015-10-12 18:36:10.000000000 +0200
++++ CMakeLists.txt 2021-03-31 10:06:59.776974100 +0200
+@@ -80,7 +80,7 @@
+ SET(CMAKE_C_FLAGS "${CMAKE_ANSI_FLAGS} ${CMAKE_C_FLAGS}")
+ SET(CMAKE_REQUIRED_FLAGS ${CMAKE_ANSI_FLAGS})
+ IF(CMAKE_COMPILER_IS_GNUCC)
+- ADD_DEFINITIONS(-ansi -pedantic -W -Wall -Wno-long-long -Werror)
++ ADD_DEFINITIONS(-ansi -pedantic -W -Wall -Wno-long-long)
+ ENDIF()
+
+ IF(UNIX)
diff --git a/var/spack/repos/builtin/packages/igprof/package.py b/var/spack/repos/builtin/packages/igprof/package.py
new file mode 100644
index 0000000000..560ea32e74
--- /dev/null
+++ b/var/spack/repos/builtin/packages/igprof/package.py
@@ -0,0 +1,34 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Igprof(CMakePackage):
+ """IgProf (the Ignominous Profiler) is a simple nice tool for measuring and
+ analysing application memory and performance characteristics.
+
+ IgProf requires no changes to the application or the build process. It
+ currently works on Linux (ia32, x86_64)."""
+
+ homepage = "https://igprof.org/"
+ url = "https://github.com/igprof/igprof/archive/v5.9.16.tar.gz"
+
+ version('5.9.16', sha256='cc977466b310f47bbc2967a0bb6ecd49d7437089598346e3f1d8aaf9a7555d96')
+
+ depends_on('libunwind')
+
+ # Three patches in one: C++11 compatibility (src/analyse.cc),
+ # libunwind "compatibility" (remove -Werror in CMakeLists.txt) -
+ # see also https://github.com/spack/spack/pull/21537,
+ # and gcc 8.x compatibility (the rest of the changes).
+ # Adopted from LCGCMake https://gitlab.cern.ch/sft/lcgcmake
+ patch('igprof-5.9.16.patch', when='@5.9.16', level=0)
+
+ def build_system_flags(pkg, name, flags):
+ if name == 'cxxflags':
+ flags.extend(('-Wno-unused-variable', '-Wno-error=unused-result'))
+
+ return (None, None, flags)
diff --git a/var/spack/repos/builtin/packages/igraph/package.py b/var/spack/repos/builtin/packages/igraph/package.py
index 57021a3e13..13a31cc773 100644
--- a/var/spack/repos/builtin/packages/igraph/package.py
+++ b/var/spack/repos/builtin/packages/igraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/igv/package.py b/var/spack/repos/builtin/packages/igv/package.py
index 990b5e1962..164502876a 100644
--- a/var/spack/repos/builtin/packages/igv/package.py
+++ b/var/spack/repos/builtin/packages/igv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/igvtools/package.py b/var/spack/repos/builtin/packages/igvtools/package.py
index 98fb863f9e..2006b7f63d 100644
--- a/var/spack/repos/builtin/packages/igvtools/package.py
+++ b/var/spack/repos/builtin/packages/igvtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ike-scan/package.py b/var/spack/repos/builtin/packages/ike-scan/package.py
new file mode 100644
index 0000000000..ec7eaaadb2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ike-scan/package.py
@@ -0,0 +1,15 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class IkeScan(AutotoolsPackage):
+ """Discover and fingerprint IKE hosts (IPsec VPN Servers)."""
+
+ homepage = "https://github.com/royhills/ike-scan"
+ url = "https://github.com/royhills/ike-scan/releases/download/1.9/ike-scan-1.9.tar.gz"
+
+ version('1.9', sha256='05d15c7172034935d1e46b01dacf1101a293ae0d06c0e14025a4507656f1a7b6')
diff --git a/var/spack/repos/builtin/packages/ilmbase/package.py b/var/spack/repos/builtin/packages/ilmbase/package.py
index 7aa9ff8337..940bdb41ef 100644
--- a/var/spack/repos/builtin/packages/ilmbase/package.py
+++ b/var/spack/repos/builtin/packages/ilmbase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ima-evm-utils/package.py b/var/spack/repos/builtin/packages/ima-evm-utils/package.py
new file mode 100644
index 0000000000..fa1499348e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ima-evm-utils/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ImaEvmUtils(AutotoolsPackage):
+ """IMA/EVM control utilities."""
+
+ homepage = "https://linux-ima.sourceforge.net"
+ url = "https://sourceforge.net/projects/linux-ima/files/ima-evm-utils/ima-evm-utils-1.3.2.tar.gz"
+
+ version('1.3.2', sha256='c2b206e7f9fbe62a938b7ae59e31906fefae4d5351fe01db739bd8346b75d4a7')
+ version('1.3.1', sha256='5304271f31a3601a2af5984942d9bd6c7532597c5a97250c9a4524074fc39925')
+ version('1.3', sha256='62e90e8dc6b131a4f34a356114cdcb5bef844f110abbdd5d8b53c449aecc609f')
+ version('1.2.1', sha256='ad8471b58c4df29abd51c80d74b1501cfe3289b60d32d1b318618a8fd26c0c0a')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
diff --git a/var/spack/repos/builtin/packages/imagemagick/package.py b/var/spack/repos/builtin/packages/imagemagick/package.py
index 63543ca552..1d22842fbd 100644
--- a/var/spack/repos/builtin/packages/imagemagick/package.py
+++ b/var/spack/repos/builtin/packages/imagemagick/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,7 @@ class Imagemagick(AutotoolsPackage):
depends_on('jpeg')
depends_on('pango')
depends_on('libtool', type='build')
+ depends_on('libtool', when='@7.0.8:', type=('build', 'link'))
depends_on('libpng')
depends_on('freetype')
depends_on('fontconfig')
@@ -28,6 +29,7 @@ class Imagemagick(AutotoolsPackage):
depends_on('ghostscript')
depends_on('ghostscript-fonts')
depends_on('libsm')
+ depends_on('pkgconfig', type='build')
def configure_args(self):
spec = self.spec
@@ -35,3 +37,7 @@ class Imagemagick(AutotoolsPackage):
return [
'--with-gs-font-dir={0}'.format(gs_font_dir)
]
+
+ @property
+ def libs(self):
+ return find_libraries('libMagick*', root=self.prefix, recursive=True)
diff --git a/var/spack/repos/builtin/packages/imake/package.py b/var/spack/repos/builtin/packages/imake/package.py
index 9157a9951a..3370240caa 100644
--- a/var/spack/repos/builtin/packages/imake/package.py
+++ b/var/spack/repos/builtin/packages/imake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,5 +14,12 @@ class Imake(AutotoolsPackage, XorgPackage):
version('1.0.7', sha256='6bda266a07eb33445d513f1e3c82a61e4822ccb94d420643d58e1be5f881e5cb')
- depends_on('xproto', type='build')
+ depends_on('xproto')
+ depends_on('xorg-cf-files', type='run')
depends_on('pkgconfig', type='build')
+
+ def configure_args(self):
+ args = []
+ cfgdir = self.spec['xorg-cf-files'].prefix.lib.X11.config
+ args.append('--with-config-dir={0}'.format(cfgdir))
+ return args
diff --git a/var/spack/repos/builtin/packages/imlib2/package.py b/var/spack/repos/builtin/packages/imlib2/package.py
index b039c0676f..8d7f7ac943 100644
--- a/var/spack/repos/builtin/packages/imlib2/package.py
+++ b/var/spack/repos/builtin/packages/imlib2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/imp/package.py b/var/spack/repos/builtin/packages/imp/package.py
index fc9dd37990..517d3bc3c6 100644
--- a/var/spack/repos/builtin/packages/imp/package.py
+++ b/var/spack/repos/builtin/packages/imp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/impute2/package.py b/var/spack/repos/builtin/packages/impute2/package.py
index f4e040e67d..a70766be17 100644
--- a/var/spack/repos/builtin/packages/impute2/package.py
+++ b/var/spack/repos/builtin/packages/impute2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/infernal/package.py b/var/spack/repos/builtin/packages/infernal/package.py
index d855013ec1..2f70d25a6a 100644
--- a/var/spack/repos/builtin/packages/infernal/package.py
+++ b/var/spack/repos/builtin/packages/infernal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/influxdb/package.py b/var/spack/repos/builtin/packages/influxdb/package.py
index 9416ca2ac6..f4968ccd5a 100644
--- a/var/spack/repos/builtin/packages/influxdb/package.py
+++ b/var/spack/repos/builtin/packages/influxdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/iniparser/package.py b/var/spack/repos/builtin/packages/iniparser/package.py
index 18beca3072..935813dad8 100644
--- a/var/spack/repos/builtin/packages/iniparser/package.py
+++ b/var/spack/repos/builtin/packages/iniparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/inputproto/package.py b/var/spack/repos/builtin/packages/inputproto/package.py
index b429a12350..a2c3d57785 100644
--- a/var/spack/repos/builtin/packages/inputproto/package.py
+++ b/var/spack/repos/builtin/packages/inputproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/intel-daal/package.py b/var/spack/repos/builtin/packages/intel-daal/package.py
index 67eccff1fa..4d19772259 100644
--- a/var/spack/repos/builtin/packages/intel-daal/package.py
+++ b/var/spack/repos/builtin/packages/intel-daal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/intel-gpu-tools/package.py b/var/spack/repos/builtin/packages/intel-gpu-tools/package.py
index 0102c42caa..93087761d1 100644
--- a/var/spack/repos/builtin/packages/intel-gpu-tools/package.py
+++ b/var/spack/repos/builtin/packages/intel-gpu-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/intel-ipp/package.py b/var/spack/repos/builtin/packages/intel-ipp/package.py
index 8201779bce..7472bc2e7f 100644
--- a/var/spack/repos/builtin/packages/intel-ipp/package.py
+++ b/var/spack/repos/builtin/packages/intel-ipp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/intel-llvm/package.py b/var/spack/repos/builtin/packages/intel-llvm/package.py
index 0be87d4a03..f14094eba4 100644
--- a/var/spack/repos/builtin/packages/intel-llvm/package.py
+++ b/var/spack/repos/builtin/packages/intel-llvm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/intel-mkl/package.py b/var/spack/repos/builtin/packages/intel-mkl/package.py
index 51a508a67a..5e89f1a91b 100644
--- a/var/spack/repos/builtin/packages/intel-mkl/package.py
+++ b/var/spack/repos/builtin/packages/intel-mkl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class IntelMkl(IntelPackage):
homepage = "https://software.intel.com/en-us/intel-mkl"
+ version('2020.4.304', sha256='2314d46536974dbd08f2a4e4f9e9a155dc7e79e2798c74e7ddfaad00a5917ea5',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16917/l_mkl_2020.4.304.tgz')
version('2020.3.279', sha256='2b8e434ecc9462491130ba25a053927fd1a2eca05e12acb5936b08c486857a04',
url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16903/l_mkl_2020.3.279.tgz')
version('2020.2.254', sha256='ed00a267af362a6c14212bd259ab1673d64337e077263033edeef8ac72c10223',
diff --git a/var/spack/repos/builtin/packages/intel-mpi-benchmarks/add_const.patch b/var/spack/repos/builtin/packages/intel-mpi-benchmarks/add_const.patch
new file mode 100644
index 0000000000..6b807f2c9d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/intel-mpi-benchmarks/add_const.patch
@@ -0,0 +1,13 @@
+diff --git a/src_cpp/args_parser.h b/src_cpp/args_parser.h
+index 0a6c748..cfd6a89 100644
+--- a/src_cpp/args_parser.h
++++ b/src_cpp/args_parser.h
+@@ -216,7 +216,7 @@ class args_parser {
+ protected:
+ std::set<flag_t> flags;
+ std::string current_group;
+- std::map<std::string, std::vector<smart_ptr<option> > > expected_args;
++ std::map<const std::string, std::vector<smart_ptr<option> > > expected_args;
+ std::vector<std::string> unknown_args;
+ option *prev_option;
+ error_t last_error;
diff --git a/var/spack/repos/builtin/packages/intel-mpi-benchmarks/package.py b/var/spack/repos/builtin/packages/intel-mpi-benchmarks/package.py
index 32ef76d2d9..f93b04d343 100644
--- a/var/spack/repos/builtin/packages/intel-mpi-benchmarks/package.py
+++ b/var/spack/repos/builtin/packages/intel-mpi-benchmarks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,6 +27,11 @@ class IntelMpiBenchmarks(MakefilePackage):
depends_on('mpi')
+ # https://github.com/intel/mpi-benchmarks/pull/19
+ patch('add_const.patch', when='@:2019.6')
+ # https://github.com/intel/mpi-benchmarks/pull/20
+ patch('reorder_benchmark_macros.patch', when='@:2019.6')
+
variant(
'benchmark', default='all',
values=('mpi1', 'ext', 'io', 'nbc',
diff --git a/var/spack/repos/builtin/packages/intel-mpi-benchmarks/reorder_benchmark_macros.patch b/var/spack/repos/builtin/packages/intel-mpi-benchmarks/reorder_benchmark_macros.patch
new file mode 100644
index 0000000000..2d77bce886
--- /dev/null
+++ b/var/spack/repos/builtin/packages/intel-mpi-benchmarks/reorder_benchmark_macros.patch
@@ -0,0 +1,108 @@
+diff --git a/src_cpp/EXT/EXT_benchmark.cpp b/src_cpp/EXT/EXT_benchmark.cpp
+index b5179ca..62abd64 100644
+--- a/src_cpp/EXT/EXT_benchmark.cpp
++++ b/src_cpp/EXT/EXT_benchmark.cpp
+@@ -70,9 +70,10 @@ extern "C" {
+
+ using namespace std;
+
+-#define BENCHMARK(BMRK_FN, BMRK_NAME) template class OriginalBenchmark<BenchmarkSuite<BS_EXT>, BMRK_FN>; \
+-DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_EXT>, BMRK_FN>), BMRK_NAME) \
++#define BENCHMARK(BMRK_FN, BMRK_NAME) \
+ template<> smart_ptr<Bmark_descr> OriginalBenchmark<BenchmarkSuite<BS_EXT>, BMRK_FN>::descr = NULL; \
++DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_EXT>, BMRK_FN>), BMRK_NAME) \
++template class OriginalBenchmark<BenchmarkSuite<BS_EXT>, BMRK_FN>; \
+ template<> bool OriginalBenchmark<BenchmarkSuite<BS_EXT>, BMRK_FN>::init_description()
+
+ BENCHMARK(IMB_window, Window)
+diff --git a/src_cpp/IO/IO_benchmark.cpp b/src_cpp/IO/IO_benchmark.cpp
+index 6a99612..27f9771 100644
+--- a/src_cpp/IO/IO_benchmark.cpp
++++ b/src_cpp/IO/IO_benchmark.cpp
+@@ -70,9 +70,10 @@ extern "C" {
+
+ using namespace std;
+
+-#define BENCHMARK(BMRK_FN, BMRK_NAME) template class OriginalBenchmark<BenchmarkSuite<BS_IO>, BMRK_FN>; \
+-DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_IO>, BMRK_FN>), BMRK_NAME) \
++#define BENCHMARK(BMRK_FN, BMRK_NAME) \
+ template<> smart_ptr<Bmark_descr> OriginalBenchmark<BenchmarkSuite<BS_IO>, BMRK_FN>::descr = NULL; \
++DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_IO>, BMRK_FN>), BMRK_NAME) \
++template class OriginalBenchmark<BenchmarkSuite<BS_IO>, BMRK_FN>; \
+ template<> bool OriginalBenchmark<BenchmarkSuite<BS_IO>, BMRK_FN>::init_description()
+
+ BENCHMARK(IMB_write_indv, S_Write_Indv)
+diff --git a/src_cpp/MPI1/MPI1_benchmark.cpp b/src_cpp/MPI1/MPI1_benchmark.cpp
+index 9f7da65..57a6ceb 100644
+--- a/src_cpp/MPI1/MPI1_benchmark.cpp
++++ b/src_cpp/MPI1/MPI1_benchmark.cpp
+@@ -70,10 +70,11 @@ extern "C" {
+
+ using namespace std;
+
+-#define BENCHMARK(BMRK_FN, BMRK_NAME) template class OriginalBenchmark<BenchmarkSuite<BS_MPI1>, BMRK_FN>; \
+-DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_MPI1>, BMRK_FN>), BMRK_NAME) \
++#define BENCHMARK(BMRK_FN, BMRK_NAME) \
+ template<> smart_ptr<Bmark_descr> OriginalBenchmark<BenchmarkSuite<BS_MPI1>, BMRK_FN>::descr = NULL; \
+-template<> bool OriginalBenchmark<BenchmarkSuite<BS_MPI1>, BMRK_FN>::init_description()
++DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_MPI1>, BMRK_FN>), BMRK_NAME) \
++template class OriginalBenchmark<BenchmarkSuite<BS_MPI1>, BMRK_FN>; \
++template<> bool OriginalBenchmark<BenchmarkSuite<BS_MPI1>, BMRK_FN>::init_description()
+
+
+ BENCHMARK(IMB_pingpong, PingPong)
+diff --git a/src_cpp/MT/MT_benchmark.cpp b/src_cpp/MT/MT_benchmark.cpp
+index 2378fbd..9041364 100644
+--- a/src_cpp/MT/MT_benchmark.cpp
++++ b/src_cpp/MT/MT_benchmark.cpp
+@@ -73,12 +73,14 @@ goods and services.
+ return OLDNAME(repeat, skip, in, out, count, type, comm, rank, size, idata, odata); \
+ }
+
+-#define DECLARE_INHERITED_BENCHMARKMT2(BS, FUNC, NAME) template class BenchmarkMT<BS, FUNC>; \
++#define DECLARE_INHERITED_BENCHMARKMT2(BS, FUNC, NAME) \
+ DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME3(BenchmarkMT<BS, FUNC>), NAME) \
++ template class BenchmarkMT<BS, FUNC>; \
+ template <> void BenchmarkMT<BS, FUNC >::init_flags()
+
+-#define DECLARE_INHERITED_BENCHMARKMT(BS, FUNC, NAME) template class BenchmarkMT<BS, FUNC>; \
++#define DECLARE_INHERITED_BENCHMARKMT(BS, FUNC, NAME) \
+ DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME2(BenchmarkMT<BS, FUNC>), NAME) \
++ template class BenchmarkMT<BS, FUNC>; \
+ template <> void BenchmarkMT<BS, FUNC >::init_flags()
+
+
+diff --git a/src_cpp/NBC/NBC_benchmark.cpp b/src_cpp/NBC/NBC_benchmark.cpp
+index 94548fd..fa9101d 100644
+--- a/src_cpp/NBC/NBC_benchmark.cpp
++++ b/src_cpp/NBC/NBC_benchmark.cpp
+@@ -70,9 +70,10 @@ extern "C" {
+
+ using namespace std;
+
+-#define BENCHMARK(BMRK_FN, BMRK_NAME) template class OriginalBenchmark<BenchmarkSuite<BS_NBC>, BMRK_FN>; \
+-DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_NBC>, BMRK_FN>), BMRK_NAME) \
++#define BENCHMARK(BMRK_FN, BMRK_NAME) \
+ template<> smart_ptr<Bmark_descr> OriginalBenchmark<BenchmarkSuite<BS_NBC>, BMRK_FN>::descr = NULL; \
++DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_NBC>, BMRK_FN>), BMRK_NAME) \
++template class OriginalBenchmark<BenchmarkSuite<BS_NBC>, BMRK_FN>; \
+ template<> bool OriginalBenchmark<BenchmarkSuite<BS_NBC>, BMRK_FN>::init_description()
+
+ BENCHMARK(IMB_ibcast, Ibcast)
+diff --git a/src_cpp/RMA/RMA_benchmark.cpp b/src_cpp/RMA/RMA_benchmark.cpp
+index b33553a..1ed4ce9 100644
+--- a/src_cpp/RMA/RMA_benchmark.cpp
++++ b/src_cpp/RMA/RMA_benchmark.cpp
+@@ -70,9 +70,10 @@ extern "C" {
+
+ using namespace std;
+
+-#define BENCHMARK(BMRK_FN, BMRK_NAME) template class OriginalBenchmark<BenchmarkSuite<BS_RMA>, BMRK_FN>; \
+-DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_RMA>, BMRK_FN>), BMRK_NAME) \
++#define BENCHMARK(BMRK_FN, BMRK_NAME) \
+ template<> smart_ptr<Bmark_descr> OriginalBenchmark<BenchmarkSuite<BS_RMA>, BMRK_FN>::descr = NULL; \
++DECLARE_INHERITED_TEMPLATE(GLUE_TYPENAME(OriginalBenchmark<BenchmarkSuite<BS_RMA>, BMRK_FN>), BMRK_NAME) \
++template class OriginalBenchmark<BenchmarkSuite<BS_RMA>, BMRK_FN>; \
+ template<> bool OriginalBenchmark<BenchmarkSuite<BS_RMA>, BMRK_FN>::init_description()
+
+
diff --git a/var/spack/repos/builtin/packages/intel-mpi/package.py b/var/spack/repos/builtin/packages/intel-mpi/package.py
index 532b7ab864..d5b2c51d7e 100644
--- a/var/spack/repos/builtin/packages/intel-mpi/package.py
+++ b/var/spack/repos/builtin/packages/intel-mpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,12 @@ class IntelMpi(IntelPackage):
homepage = "https://software.intel.com/en-us/intel-mpi-library"
+ version('2019.10.317', sha256='28e1b615e63d2170a99feedc75e3b0c5a7e1a07dcdaf0a4181831b07817a5346',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/17534/l_mpi_2019.10.317.tgz')
+ version('2019.9.304', sha256='618a5dc2de54306645e6428c5eb7d267b54b11b5a83dfbcad7d0f9e0d90bb2e7',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/17263/l_mpi_2019.9.304.tgz')
version('2019.8.254', sha256='fa163b4b79bd1b7509980c3e7ad81b354fc281a92f9cf2469bf4d323899567c0',
- url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16814/l_mpi_2019.8.254.tgz')
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16814/l_mpi_2019.8.254.tgz')
version('2019.7.217', sha256='90383b0023f84ac003a55d8bb29dbcf0c639f43a25a2d8d8698a16e770ac9c07',
url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16546/l_mpi_2019.7.217.tgz')
version('2019.6.166', sha256='119be69f1117c93a9e5e9b8b4643918e55d2a55a78ad9567f77d16cdaf18cd6e',
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-ccl/package.py b/var/spack/repos/builtin/packages/intel-oneapi-ccl/package.py
index 5cc55f6c2f..3f4717bc5c 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-ccl/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-ccl/package.py
@@ -1,27 +1,32 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from sys import platform
from spack import *
-releases = {
- '2021.1.1': {'irc_id': '17391', 'build': '54'}}
-
class IntelOneapiCcl(IntelOneApiLibraryPackage):
"""Intel oneAPI CCL."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/oneccl.html'
- version('2021.1.1', sha256='de732df57a03763a286106c8b885fd60e83d17906936a8897a384b874e773f49', expand=False)
-
- def __init__(self, spec):
- self.component_info(dir_name='ccl',
- components='intel.oneapi.lin.ccl.devel',
- releases=releases,
- url_name='oneapi_ccl')
- super(IntelOneapiCcl, self).__init__(spec)
+ depends_on('intel-oneapi-mpi')
+
+ if platform == 'linux':
+ version('2021.2.0',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17731/l_oneapi_ccl_p_2021.2.0.269_offline.sh',
+ sha256='18b7875030243295b75471e235e91e5f7b4fc15caf18c07d941a6d47fba378d7',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17391/l_oneapi_ccl_p_2021.1.1.54_offline.sh',
+ sha256='de732df57a03763a286106c8b885fd60e83d17906936a8897a384b874e773f49',
+ expand=False)
+
+ @property
+ def component_dir(self):
+ return 'ccl'
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-compilers/package.py b/var/spack/repos/builtin/packages/intel-oneapi-compilers/package.py
index 6a90e10621..6e7221fea9 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-compilers/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-compilers/package.py
@@ -1,86 +1,91 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import glob
+from os import path
import subprocess
+from sys import platform
from spack import *
-releases = {'2021.1':
- {'irc_id': '17427', 'build': '2684'}}
-
-
class IntelOneapiCompilers(IntelOneApiPackage):
- """Intel oneAPI compilers.
-
- Contains icc, icpc, icx, icpx, dpcpp, ifort, ifx.
-
- """
-
- maintainers = ['rscohn2']
+ """Intel OneAPI compilers
- homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/dpc-compiler.html'
+ Provides Classic and Beta compilers for: Fortran, C, C++"""
+ maintainers = ['rscohn2', 'danvev']
- version('2021.1', sha256='666b1002de3eab4b6f3770c42bcf708743ac74efeba4c05b0834095ef27a11b9', expand=False)
+ homepage = "https://software.intel.com/content/www/us/en/develop/tools/oneapi.html"
depends_on('patchelf', type='build')
- def __init__(self, spec):
- self.component_info(
- dir_name='compiler',
- components=('intel.oneapi.lin.dpcpp-cpp-compiler-pro'
- ':intel.oneapi.lin.ifort-compiler'),
- releases=releases,
- url_name='HPCKit')
- super(IntelOneapiCompilers, self).__init__(spec)
-
- def _join_prefix(self, path):
- return join_path(self.prefix, 'compiler', 'latest', 'linux', path)
+ if platform == 'linux':
+ version('2021.2.0',
+ sha256='5d01cbff1a574c3775510cd97ffddd27fdf56d06a6b0c89a826fb23da4336d59',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17749/l_dpcpp-cpp-compiler_p_2021.2.0.118_offline.sh',
+ expand=False)
+ resource(name='fortran-installer',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17756/l_fortran-compiler_p_2021.2.0.136_offline.sh',
+ sha256='a62e04a80f6d2f05e67cd5acb03fa58857ee22c6bd581ec0651c0ccd5bdec5a1',
+ expand=False,
+ placement='fortran-installer',
+ when='@2021.2.0')
+ version('2021.1.2',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17513/l_dpcpp-cpp-compiler_p_2021.1.2.63_offline.sh',
+ sha256='68d6cb638091990e578e358131c859f3bbbbfbf975c581fd0b4b4d36476d6f0a',
+ expand=False)
+ resource(name='fortran-installer',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17508/l_fortran-compiler_p_2021.1.2.62_offline.sh',
+ sha256='29345145268d08a59fa7eb6e58c7522768466dd98f6d9754540d1a0803596829',
+ expand=False,
+ placement='fortran-installer',
+ when='@2021.1.2')
+
+ @property
+ def component_dir(self):
+ return 'compiler'
def _ld_library_path(self):
dirs = ['lib',
- 'lib/x64',
- 'lib/emu',
- 'lib/oclfpga/host/linux64/lib',
- 'lib/oclfpga/linux64/lib',
- 'compiler/lib/intel64_lin',
- 'compiler/lib']
+ join_path('lib', 'x64'),
+ join_path('lib', 'emu'),
+ join_path('lib', 'oclfpga', 'host', 'linux64', 'lib'),
+ join_path('lib', 'oclfpga', 'linux64', 'lib'),
+ join_path('compiler', 'lib', 'intel64_lin'),
+ join_path('compiler', 'lib')]
for dir in dirs:
- yield self._join_prefix(dir)
+ yield join_path(self.component_path, 'linux', dir)
def install(self, spec, prefix):
- # For quick turnaround debugging, comment out line below and
- # use the copy instead
+ # install cpp
+ # Copy instead of install to speed up debugging
+ # subprocess.run(f'cp -r /opt/intel/oneapi/compiler {prefix}', shell=True)
super(IntelOneapiCompilers, self).install(spec, prefix)
- # Copy installed compiler instead of running the installer
- # from shutil import copytree
- # copytree('/opt/intel/oneapi/compiler', join_path(prefix, 'compiler'),
- # symlinks=True)
+ # install fortran
+ super(IntelOneapiCompilers, self).install(
+ spec,
+ prefix,
+ installer_path=glob.glob(join_path('fortran-installer', '*'))[0])
+
+ # Some installers have a bug and do not return an error code when failing
+ if not path.isfile(join_path(self.component_path, 'linux',
+ 'bin', 'intel64', 'ifort')):
+ raise RuntimeError('install failed')
+
+ # set rpath so 'spack compiler add' can check version strings
+ # without setting LD_LIBRARY_PATH
rpath = ':'.join(self._ld_library_path())
- patch_dirs = ['compiler/lib/intel64_lin',
- 'compiler/lib/intel64',
+ patch_dirs = [join_path('compiler', 'lib', 'intel64_lin'),
+ join_path('compiler', 'lib', 'intel64'),
'bin']
for pd in patch_dirs:
- for file in glob.glob(self._join_prefix(join_path(pd, '*'))):
+ patchables = glob.glob(join_path(self.component_path, 'linux', pd, '*'))
+ patchables.append(join_path(self.component_path,
+ 'linux', 'lib', 'icx-lto.so'))
+ for file in patchables:
# Try to patch all files, patchelf will do nothing if
# file should not be patched
subprocess.call(['patchelf', '--set-rpath', rpath, file])
-
- def setup_run_environment(self, env):
- env.prepend_path('PATH', self._join_prefix('bin'))
- env.prepend_path('CPATH', self._join_prefix('include'))
- env.prepend_path('LIBRARY_PATH', self._join_prefix('lib'))
- for dir in self._ld_library_path():
- env.prepend_path('LD_LIBRARY_PATH', dir)
- env.set('CC', self._join_prefix('bin/icx'))
- env.set('CXX', self._join_prefix('bin/icpx'))
- env.set('FC', self._join_prefix('bin/ifx'))
- # Set these so that MPI wrappers will pick up these compilers
- # when this module is loaded.
- env.set('I_MPI_CC', 'icx')
- env.set('I_MPI_CXX', 'icpx')
- env.set('I_MPI_FC', 'ifx')
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-dal/package.py b/var/spack/repos/builtin/packages/intel-oneapi-dal/package.py
index 501efd6a2b..991a01825b 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-dal/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-dal/package.py
@@ -1,27 +1,35 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
+from sys import platform
-releases = {
- '2021.1.1': {'irc_id': '17443', 'build': '79'}}
+from spack import *
class IntelOneapiDal(IntelOneApiLibraryPackage):
"""Intel oneAPI DAL."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onedal.html'
- version('2021.1.1', sha256='6e0e24bba462e80f0fba5a46e95cf0cca6cf17948a7753f8e396ddedd637544e', expand=False)
+ if platform == 'linux':
+ version('2021.2.0',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17747/l_daal_oneapi_p_2021.2.0.358_offline.sh',
+ sha256='cbf4e64dbd21c10179f2d1d7e8b8b0f12eeffe6921602df33276cd0ebd1f8e34',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17443/l_daal_oneapi_p_2021.1.1.79_offline.sh',
+ sha256='6e0e24bba462e80f0fba5a46e95cf0cca6cf17948a7753f8e396ddedd637544e',
+ expand=False)
+
+ depends_on('intel-oneapi-tbb')
+
+ provides('daal')
- def __init__(self, spec):
- self.component_info(dir_name='dal',
- components='intel.oneapi.lin.dal.devel',
- releases=releases,
- url_name='daal_oneapi')
- super(IntelOneapiDal, self).__init__(spec)
+ @property
+ def component_dir(self):
+ return 'dal'
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-dnn/package.py b/var/spack/repos/builtin/packages/intel-oneapi-dnn/package.py
index 2a226bf2d2..4808303083 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-dnn/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-dnn/package.py
@@ -1,27 +1,43 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
+from sys import platform
-releases = {
- '2021.1.1': {'irc_id': '17385', 'build': '55'}}
+from spack import *
class IntelOneapiDnn(IntelOneApiLibraryPackage):
"""Intel oneAPI DNN."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onednn.html'
- version('2021.1.1', sha256='24002c57bb8931a74057a471a5859d275516c331fd8420bee4cae90989e77dc3', expand=False)
-
- def __init__(self, spec):
- self.component_info(dir_name='dnn',
- components='intel.oneapi.lin.dnnl.devel',
- releases=releases,
- url_name='onednn')
- super(IntelOneapiDnn, self).__init__(spec)
+ if platform == 'linux':
+ version('2021.2.0',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17751/l_onednn_p_2021.2.0.228_offline.sh',
+ sha256='62121a3355298211a124ff4e71c42fc172bf1061019be6c6120830a1a502aa88',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17385/l_onednn_p_2021.1.1.55_offline.sh',
+ sha256='24002c57bb8931a74057a471a5859d275516c331fd8420bee4cae90989e77dc3',
+ expand=False)
+
+ depends_on('intel-oneapi-tbb')
+
+ @property
+ def component_dir(self):
+ return 'dnnl'
+
+ @property
+ def headers(self):
+ include_path = join_path(self.component_path, 'cpu_dpcpp_gpu_dpcpp', 'include')
+ return find_headers('dnnl', include_path)
+
+ @property
+ def libs(self):
+ lib_path = join_path(self.component_path, 'cpu_dpcpp_gpu_dpcpp', 'lib')
+ return find_libraries(['libdnnl', 'libmkldnn'], root=lib_path, shared=True)
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-ipp/package.py b/var/spack/repos/builtin/packages/intel-oneapi-ipp/package.py
index 96a63addb6..5bdc8b17d6 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-ipp/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-ipp/package.py
@@ -1,29 +1,34 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from sys import platform
from spack import *
-releases = {
- '2021.1.1': {'irc_id': '17436', 'build': '47'}}
-
class IntelOneapiIpp(IntelOneApiLibraryPackage):
"""Intel oneAPI IPP."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/ipp.html'
- version('2021.1.1', sha256='2656a3a7f1f9f1438cbdf98fd472a213c452754ef9476dd65190a7d46618ba86', expand=False)
+ if platform == 'linux':
+ version('2021.2.0',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17758/l_ipp_oneapi_p_2021.2.0.233_offline.sh',
+ sha256='ccdfc81f77203822d80151b40ce9e8fd82bb2de85a9b132ceed12d24d3f3ff52',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17436/l_ipp_oneapi_p_2021.1.1.47_offline.sh',
+ sha256='2656a3a7f1f9f1438cbdf98fd472a213c452754ef9476dd65190a7d46618ba86',
+ expand=False)
+
+ depends_on('intel-oneapi-tbb')
provides('ipp')
- def __init__(self, spec):
- self.component_info(dir_name='ipp',
- components='intel.oneapi.lin.ipp.devel',
- releases=releases,
- url_name='ipp_oneapi')
- super(IntelOneapiIpp, self).__init__(spec)
+ @property
+ def component_dir(self):
+ return 'ipp'
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-ippcp/package.py b/var/spack/repos/builtin/packages/intel-oneapi-ippcp/package.py
index 7b07d8ff17..006b9cefbe 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-ippcp/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-ippcp/package.py
@@ -1,27 +1,31 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
+from sys import platform
-releases = {
- '2021.1.1': {'irc_id': '17415', 'build': '54'}}
+from spack import *
class IntelOneapiIppcp(IntelOneApiLibraryPackage):
"""Intel oneAPI IPP Crypto."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/ipp.html'
- version('2021.1.1', sha256='c0967afae22c7a223ec42542bcc702121064cd3d8f680eff36169c94f964a936', expand=False)
-
- def __init__(self, spec):
- self.component_info(dir_name='ippcp',
- components='intel.oneapi.lin.ippcp.devel',
- releases=releases,
- url_name='ippcp_oneapi')
- super(IntelOneapiIppcp, self).__init__(spec)
+ if platform == 'linux':
+ version('2021.2.0',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17684/l_ippcp_oneapi_p_2021.2.0.231_offline.sh',
+ sha256='64cd5924b42f924b6a8128a8bf8e686f5dc52b98f586ffac6c2e2f1585e3aba9',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17415/l_ippcp_oneapi_p_2021.1.1.54_offline.sh',
+ sha256='c0967afae22c7a223ec42542bcc702121064cd3d8f680eff36169c94f964a936',
+ expand=False)
+
+ @property
+ def component_dir(self):
+ return 'ippcp'
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-mkl/package.py b/var/spack/repos/builtin/packages/intel-oneapi-mkl/package.py
index 2b9ce4f3fe..5bc2629e02 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-mkl/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-mkl/package.py
@@ -1,23 +1,32 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
+from sys import platform
-releases = {
- '2021.1.1': {'irc_id': '17402', 'build': '52'}}
+from spack import *
class IntelOneapiMkl(IntelOneApiLibraryPackage):
"""Intel oneAPI MKL."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html'
- version('2021.1.1', sha256='818b6bd9a6c116f4578cda3151da0612ec9c3ce8b2c8a64730d625ce5b13cc0c', expand=False)
+ if platform == 'linux':
+ version('2021.2.0',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17757/l_onemkl_p_2021.2.0.296_offline.sh',
+ sha256='816e9df26ff331d6c0751b86ed5f7d243f9f172e76f14e83b32bf4d1d619dbae',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17402/l_onemkl_p_2021.1.1.52_offline.sh',
+ sha256='818b6bd9a6c116f4578cda3151da0612ec9c3ce8b2c8a64730d625ce5b13cc0c',
+ expand=False)
+
+ depends_on('intel-oneapi-tbb')
provides('fftw-api@3')
provides('scalapack')
@@ -25,31 +34,14 @@ class IntelOneapiMkl(IntelOneApiLibraryPackage):
provides('lapack')
provides('blas')
- def __init__(self, spec):
- self.component_info(dir_name='mkl',
- components='intel.oneapi.lin.mkl.devel',
- releases=releases,
- url_name='onemkl')
- super(IntelOneapiMkl, self).__init__(spec)
-
- def _join_prefix(self, path):
- return join_path(self.prefix, 'mkl', 'latest', path)
-
- def _ld_library_path(self):
- dirs = ['lib/intel64']
- for dir in dirs:
- yield self._join_prefix(dir)
-
- def _library_path(self):
- dirs = ['lib/intel64']
- for dir in dirs:
- yield self._join_prefix(dir)
-
- def setup_run_environment(self, env):
- env.prepend_path('PATH', self._join_prefix('bin/intel64'))
- env.prepend_path('CPATH', self._join_prefix('include'))
- for dir in self._library_path():
- env.prepend_path('LIBRARY_PATH', dir)
- for dir in self._ld_library_path():
- env.prepend_path('LD_LIBRARY_PATH', dir)
- env.set('MKLROOT', join_path(self.prefix, 'mkl', 'latest'))
+ @property
+ def component_dir(self):
+ return 'mkl'
+
+ @property
+ def libs(self):
+ lib_path = join_path(self.component_path, 'lib', 'intel64')
+ mkl_libs = ['libmkl_intel_lp64', 'libmkl_sequential', 'libmkl_core']
+ libs = find_libraries(mkl_libs, root=lib_path, shared=True, recursive=False)
+ libs += find_system_libraries(['libpthread', 'libm', 'libdl'], shared=True)
+ return libs
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-mpi/package.py b/var/spack/repos/builtin/packages/intel-oneapi-mpi/package.py
index 78a2080951..68166d1525 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-mpi/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-mpi/package.py
@@ -1,39 +1,43 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import subprocess
+from sys import platform
-from spack import *
-releases = {
- '2021.1.1': {'irc_id': '17397', 'build': '76'}}
+from spack import *
class IntelOneapiMpi(IntelOneApiLibraryPackage):
"""Intel oneAPI MPI."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/mpi-library.html'
- version('2021.1.1', sha256='8b7693a156c6fc6269637bef586a8fd3ea6610cac2aae4e7f48c1fbb601625fe', expand=False)
+ if platform == 'linux':
+ version('2021.2.0',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17729/l_mpi_oneapi_p_2021.2.0.215_offline.sh',
+ sha256='d0d4cdd11edaff2e7285e38f537defccff38e37a3067c02f4af43a3629ad4aa3',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17397/l_mpi_oneapi_p_2021.1.1.76_offline.sh',
+ sha256='8b7693a156c6fc6269637bef586a8fd3ea6610cac2aae4e7f48c1fbb601625fe',
+ expand=False)
provides('mpi@:3')
depends_on('patchelf', type='build')
- def __init__(self, spec):
- self.component_info(dir_name='mpi',
- components='intel.oneapi.lin.mpi.devel',
- releases=releases,
- url_name='mpi_oneapi')
- super(IntelOneapiMpi, self).__init__(spec)
+ @property
+ def component_dir(self):
+ return 'mpi'
def setup_dependent_package(self, module, dep_spec):
- dir = join_path(self.prefix, 'mpi', 'latest', 'bin')
+ dir = join_path(self.component_path, 'bin')
self.spec.mpicc = join_path(dir, 'mpicc')
self.spec.mpicxx = join_path(dir, 'mpicxx')
self.spec.mpif77 = join_path(dir, 'mpif77')
@@ -46,52 +50,30 @@ class IntelOneapiMpi(IntelOneApiLibraryPackage):
env.set('MPICH_F90', spack_fc)
env.set('MPICH_FC', spack_fc)
+ # Set compiler wrappers for dependent build stage
+ dir = join_path(self.component_path, 'bin')
+ env.set('MPICC', join_path(dir, 'mpicc'))
+ env.set('MPICXX', join_path(dir, 'mpicxx'))
+ env.set('MPIF77', join_path(dir, 'mpif77'))
+ env.set('MPIF90', join_path(dir, 'mpif90'))
+ env.set('MPIFC', join_path(dir, 'mpifc'))
+
@property
def libs(self):
libs = []
- for dir in ['lib/release_mt', 'lib', 'libfabric/lib']:
- lib_path = '{0}/{1}/latest/{2}'.format(self.prefix, self._dir_name,
- dir)
- ldir = find_libraries('*', root=lib_path, shared=True,
- recursive=False)
+ for dir in [join_path('lib', 'release_mt'),
+ 'lib',
+ join_path('libfabric', 'lib')]:
+ lib_path = join_path(self.component_path, dir)
+ ldir = find_libraries('*', root=lib_path, shared=True, recursive=False)
libs += ldir
return libs
- def _join_prefix(self, path):
- return join_path(self.prefix, 'mpi', 'latest', path)
-
- def _ld_library_path(self):
- dirs = ['lib',
- 'lib/release',
- 'libfabric/lib']
- for dir in dirs:
- yield self._join_prefix(dir)
-
- def _library_path(self):
- dirs = ['lib',
- 'lib/release',
- 'libfabric/lib']
- for dir in dirs:
- yield self._join_prefix(dir)
-
def install(self, spec, prefix):
super(IntelOneapiMpi, self).install(spec, prefix)
# need to patch libmpi.so so it can always find libfabric
- libfabric_rpath = self._join_prefix('libfabric/lib')
+ libfabric_rpath = join_path(self.component_path, 'libfabric', 'lib')
for lib_version in ['debug', 'release', 'release_mt', 'debug_mt']:
- file = self._join_prefix('lib/' + lib_version + '/libmpi.so')
+ file = join_path(self.component_path, 'lib', lib_version, 'libmpi.so')
subprocess.call(['patchelf', '--set-rpath', libfabric_rpath, file])
-
- def setup_run_environment(self, env):
- env.prepend_path('PATH', self._join_prefix('bin'))
- env.prepend_path('CPATH', self._join_prefix('include'))
- for dir in self._library_path():
- env.prepend_path('LIBRARY_PATH', dir)
- for dir in self._ld_library_path():
- env.prepend_path('LD_LIBRARY_PATH', dir)
- # so wrappers know where MPI lives
- mpi_root = join_path(prefix, 'mpi', 'latest')
- env.set('I_MPI_ROOT', mpi_root)
- # set this so that wrappers can find libfabric providers
- env.set('FI_PROVIDER_PATH', self._join_prefix('libfabric/lib/prov'))
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-tbb/package.py b/var/spack/repos/builtin/packages/intel-oneapi-tbb/package.py
index d4c9f03d61..726b3d57b1 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-tbb/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-tbb/package.py
@@ -1,49 +1,33 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
+from sys import platform
-releases = {
- '2021.1.1': {'irc_id': '17378', 'build': '119'}}
+from spack import *
class IntelOneapiTbb(IntelOneApiLibraryPackage):
"""Intel oneAPI TBB."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onetbb.html'
- version('2021.1.1', sha256='535290e3910a9d906a730b24af212afa231523cf13a668d480bade5f2a01b53b', expand=False)
+ if platform == 'linux':
+ version('2021.2.0',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17759/l_tbb_oneapi_p_2021.2.0.357_offline.sh',
+ sha256='c1c3623c5bef547b30eac009e7a444611bf714c758d7472c114e9be9d5700eba',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17378/l_tbb_oneapi_p_2021.1.1.119_offline.sh',
+ sha256='535290e3910a9d906a730b24af212afa231523cf13a668d480bade5f2a01b53b',
+ expand=False)
provides('tbb')
- def __init__(self, spec):
- self.component_info(dir_name='tbb',
- components='intel.oneapi.lin.tbb.devel',
- releases=releases,
- url_name='tbb_oneapi')
- super(IntelOneapiTbb, self).__init__(spec)
-
- def _join_prefix(self, path):
- return join_path(self.prefix, 'tbb', 'latest', path)
-
- def _ld_library_path(self):
- dirs = ['lib/intel64/gcc4.8']
- for dir in dirs:
- yield self._join_prefix(dir)
-
- def _library_path(self):
- dirs = ['lib/intel64/gcc4.8']
- for dir in dirs:
- yield self._join_prefix(dir)
-
- def setup_run_environment(self, env):
- for dir in self._library_path():
- env.prepend_path('LIBRARY_PATH', dir)
- for dir in self._ld_library_path():
- env.prepend_path('LD_LIBRARY_PATH', dir)
- env.set('TBBROOT', join_path(self.prefix, 'tbb', 'latest'))
+ @property
+ def component_dir(self):
+ return 'tbb'
diff --git a/var/spack/repos/builtin/packages/intel-oneapi-vpl/package.py b/var/spack/repos/builtin/packages/intel-oneapi-vpl/package.py
index ad07518055..b27088016a 100644
--- a/var/spack/repos/builtin/packages/intel-oneapi-vpl/package.py
+++ b/var/spack/repos/builtin/packages/intel-oneapi-vpl/package.py
@@ -1,27 +1,30 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from sys import platform
from spack import *
-releases = {
- '2021.1.1': {'irc_id': '17418', 'build': '66'}}
-
class IntelOneapiVpl(IntelOneApiLibraryPackage):
"""Intel oneAPI VPL."""
- maintainers = ['rscohn2']
+ maintainers = ['rscohn2', 'danvev']
homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onevpl.html'
- version('2021.1.1', sha256='0fec42545b30b7bb2e4e33deb12ab27a02900f5703153d9601673a8ce43082ed', expand=False)
-
- def __init__(self, spec):
- self.component_info(dir_name='vpl',
- components='intel.oneapi.lin.vpl.devel',
- releases=releases,
- url_name='oneVPL')
- super(IntelOneapiVpl, self).__init__(spec)
+ if platform == 'linux':
+ version('2021.2.2',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17733/l_oneVPL_p_2021.2.2.212_offline.sh',
+ sha256='21106ba5cde22f3e31fd55280fbccf263508fa054030f12d5dff4a5379ef3bb7',
+ expand=False)
+ version('2021.1.1',
+ url='https://registrationcenter-download.intel.com/akdlm/irc_nas/17418/l_oneVPL_p_2021.1.1.66_offline.sh',
+ sha256='0fec42545b30b7bb2e4e33deb12ab27a02900f5703153d9601673a8ce43082ed',
+ expand=False)
+
+ @property
+ def component_dir(self):
+ return 'vpl'
diff --git a/var/spack/repos/builtin/packages/intel-parallel-studio/package.py b/var/spack/repos/builtin/packages/intel-parallel-studio/package.py
index a30d2eba19..9a1c68ba6a 100644
--- a/var/spack/repos/builtin/packages/intel-parallel-studio/package.py
+++ b/var/spack/repos/builtin/packages/intel-parallel-studio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,8 @@ class IntelParallelStudio(IntelPackage):
homepage = "https://software.intel.com/en-us/intel-parallel-studio-xe"
+ maintainers = ['rscohn2', 'danvev']
+
# As of 2016, the product comes in three "editions" that vary by scope.
#
# In Spack, select the edition via the version number in the spec, e.g.:
@@ -20,6 +22,7 @@ class IntelParallelStudio(IntelPackage):
# in the 'intel' package.
# Cluster Edition (top tier; all components included)
+ version('cluster.2020.4', sha256='f36e49da97b6ce24d2d464d73d7ff49d71cff20e1698c20e607919819602a9f5', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/17113/parallel_studio_xe_2020_update4_cluster_edition.tgz')
version('cluster.2020.2', sha256='4795c44374e8988b91da20ac8f13022d7d773461def4a26ca210a8694f69f133', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16744/parallel_studio_xe_2020_update2_cluster_edition.tgz')
version('cluster.2020.1', sha256='fd11d8de72b2bd60474f8bce7b463e4cbb2255969b9eaf24f689575aa2a2abab', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16526/parallel_studio_xe_2020_update1_cluster_edition.tgz')
version('cluster.2020.0', sha256='573b1d20707d68ce85b70934cfad15b5ad9cc14124a261c17ddd7717ba842c64', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16225/parallel_studio_xe_2020_cluster_edition.tgz')
@@ -60,6 +63,7 @@ class IntelParallelStudio(IntelPackage):
# NB: Pre-2018 download packages for Professional are the same as for
# Cluster; differences manifest only in the tokens present in the license
# file delivered as part of the purchase.
+ version('professional.2020.4', sha256='f9679a40c63575191385837f4f1bdafbcfd3736f09ac51d0761248b9ca9cc9e6', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/17114/parallel_studio_xe_2020_update4_professional_edition.tgz')
version('professional.2020.2', sha256='96f9bca551a43e09d9648e8cba357739a759423adb671d1aa5973b7a930370c5', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16756/parallel_studio_xe_2020_update2_professional_edition.tgz')
version('professional.2020.1', sha256='5b547be92ecf50cb338b3038a565f5609135b27aa98a8b7964879eb2331eb29a', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16527/parallel_studio_xe_2020_update1_professional_edition.tgz')
version('professional.2020.0', sha256='e88cad18d28da50ed9cb87b12adccf13efd91bf94731dc33290481306c6f15ac', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16226/parallel_studio_xe_2020_professional_edition.tgz')
@@ -96,6 +100,7 @@ class IntelParallelStudio(IntelPackage):
version('professional.2015.1', sha256='84fdf48d1de20e1d580ba5d419a5bc1c55d217a4f5dc1807190ecffe0229a62b', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/4992/parallel_studio_xe_2015_update1.tgz')
# Composer Edition (basic tier; excluded: MPI/..., Advisor/Inspector/Vtune)
+ version('composer.2020.4', sha256='ac1efeff608a8c3a416e6dfe20364061e8abf62d35fbaacdffe3fc9676fc1aa3', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16759/parallel_studio_xe_2020_update2_composer_edition.tgz')
version('composer.2020.2', sha256='42af16e9a91226978bb401d9f17b628bc279aa8cb104d4a38ba0808234a79bdd', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16759/parallel_studio_xe_2020_update2_composer_edition.tgz')
version('composer.2020.1', sha256='26c7e7da87b8a83adfd408b2a354d872be97736abed837364c1bf10f4469b01e', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16530/parallel_studio_xe_2020_update1_composer_edition.tgz')
version('composer.2020.0', sha256='9168045466139b8e280f50f0606b9930ffc720bbc60bc76f5576829ac15757ae', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16229/parallel_studio_xe_2020_composer_edition.tgz')
diff --git a/var/spack/repos/builtin/packages/intel-pin/package.py b/var/spack/repos/builtin/packages/intel-pin/package.py
index f9cf6ea111..f3fa547455 100644
--- a/var/spack/repos/builtin/packages/intel-pin/package.py
+++ b/var/spack/repos/builtin/packages/intel-pin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/intel-tbb/macos-arm64.patch b/var/spack/repos/builtin/packages/intel-tbb/macos-arm64.patch
new file mode 100644
index 0000000000..7169abed38
--- /dev/null
+++ b/var/spack/repos/builtin/packages/intel-tbb/macos-arm64.patch
@@ -0,0 +1,32 @@
+From 86f6dcdc17a8f5ef2382faaef860cfa5243984fe Mon Sep 17 00:00:00 2001
+From: Yining Karl Li <betajippity@gmail.com>
+Date: Fri, 3 Jul 2020 06:23:18 -0700
+Subject: [PATCH] Add detection of arm64 architecture for macos builds
+
+This commit adds detection of arm64 for macos builds on arm64 hardware.
+The only change necessary is an additional case in the code where
+macos.inc queries and detects the system architecture.
+---
+ build/macos.inc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/build/macos.inc b/build/macos.inc
+index dde93216f5e7a9337dd83757df1ec734241d044e..2bdcde7e3042390b871fc601a930b3648ccaa124 100644
+--- a/build/macos.inc
++++ b/build/macos.inc
+@@ -36,11 +36,15 @@ ifndef arch
+ export arch:=ppc32
+ endif
+ else
++ ifeq ($(shell /usr/sbin/sysctl -n hw.machine),arm64)
++ export arch:=arm64
++ else
+ ifeq ($(shell /usr/sbin/sysctl -n hw.optional.x86_64 2>/dev/null),1)
+ export arch:=intel64
+ else
+ export arch:=ia32
+ endif
++ endif
+ endif
+ endif
+
diff --git a/var/spack/repos/builtin/packages/intel-tbb/package.py b/var/spack/repos/builtin/packages/intel-tbb/package.py
index 857e190eba..8ef66abafa 100644
--- a/var/spack/repos/builtin/packages/intel-tbb/package.py
+++ b/var/spack/repos/builtin/packages/intel-tbb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,7 +23,8 @@ class IntelTbb(Package):
# Note: when adding new versions, please check and update the
# patches, filters and url_for_version() below as needed.
- version('2020.3', sha256='ebc4f6aa47972daed1f7bf71d100ae5bf6931c2e3144cf299c8cc7d041dca2f3')
+ version('2020.3', sha256='ebc4f6aa47972daed1f7bf71d100ae5bf6931c2e3144cf299c8cc7d041dca2f3',
+ preferred=True)
version('2020.2', sha256='4804320e1e6cbe3a5421997b52199e3c1a3829b2ecb6489641da4b8e32faf500')
version('2020.1', sha256='7c96a150ed22bc3c6628bc3fef9ed475c00887b26d37bca61518d76a56510971')
version('2020.0', sha256='57714f2d2cf33935db33cee93af57eb3ecd5a7bef40c1fb7ca4a41d79684b118')
@@ -103,15 +104,21 @@ class IntelTbb(Package):
patch("gcc_generic-pedantic-4.4.patch", level=1, when='@:2019.0')
# Patch cmakeConfig.cmake.in to find the libraries where we install them.
- patch("tbb_cmakeConfig-2019.5.patch", level=0, when='@2019.5:')
+ patch("tbb_cmakeConfig-2019.5.patch", level=0, when='@2019.5:2021.0')
patch("tbb_cmakeConfig.patch", level=0, when='@2017.7:2019.4')
# Restore the debug targets.
- patch("makefile-debug.patch", when="@2020:")
+ patch("makefile-debug.patch", when="@2020:2021.0")
# Some very old systems don't support transactional memory.
patch("disable-tm.patch", when='~tm')
+ # Add support for building on arm64 macOS,
+ # also included in hombrew and already available upstream:
+ # https://github.com/oneapi-src/oneTBB/pull/258
+ # https://github.com/oneapi-src/oneTBB/commit/86f6dcdc17a8f5ef2382faaef860cfa5243984fe.patch?full_index=1
+ patch("macos-arm64.patch", when="@:2021.0")
+
# Version and tar file names:
# 2020.0 --> v2020.0.tar.gz starting with 2020
# 2017.1 --> 2017_U1.tar.gz starting with 2017
diff --git a/var/spack/repos/builtin/packages/intel-xed/1201-segv.patch b/var/spack/repos/builtin/packages/intel-xed/1201-segv.patch
new file mode 100644
index 0000000000..a1ff15d5c9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/intel-xed/1201-segv.patch
@@ -0,0 +1,18 @@
+Fix segfault due to uninitialized data when trying to decode some cases
+of data that aren't a valid instruction.
+
+https://github.com/intelxed/xed/commit/5c54699f78ba1e3ce7e0cc6dead0088a8dd09c56
+
+
+diff --git a/src/dec/xed-decoded-init.c b/src/dec/xed-decoded-init.c
+index b0d4db1..fc226d2 100644
+--- a/src/dec/xed-decoded-init.c
++++ b/src/dec/xed-decoded-init.c
+@@ -46,6 +46,7 @@ xed_decoded_inst_zero_keep_mode_from_operands(
+ xed_operand_values_init_keep_mode(p, operands);
+ p->_decoded_length = 0;
+ p->_inst = 0;
++ p->u.user_data = 0;
+ }
+
+ XED_DLL_EXPORT void
diff --git a/var/spack/repos/builtin/packages/intel-xed/package.py b/var/spack/repos/builtin/packages/intel-xed/package.py
index 94addcbdf9..06ee2791e6 100644
--- a/var/spack/repos/builtin/packages/intel-xed/package.py
+++ b/var/spack/repos/builtin/packages/intel-xed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,38 +13,36 @@ class IntelXed(Package):
homepage = "https://intelxed.github.io/"
git = "https://github.com/intelxed/xed.git"
+ maintainers = ['mwkrentel']
- # The version name and git commit hashes for the main xed repo and
- # the mbuild resource. Xed doesn't have official releases, only
- # git commits.
-
- version_list = [('2019.03.01',
- 'b7231de4c808db821d64f4018d15412640c34113',
- '176544e1fb54b6bfb40f596111368981d287e951'),
- ('2018.02.14',
- '44d06033b69aef2c20ab01bfb518c52cd71bb537',
- 'bb9123152a330c7fa1ff1a502950dc199c83e177')]
-
- version('develop', branch='master')
- resource(name='mbuild',
- git='https://github.com/intelxed/mbuild.git',
- branch='master', placement='mbuild',
- when='@develop')
-
- for (vers, xed_hash, mbuild_hash) in version_list:
- version(vers, commit=xed_hash)
- resource(name='mbuild',
- git='https://github.com/intelxed/mbuild.git',
- commit=mbuild_hash,
- when='@{0}'.format(vers))
+ mbuild_git = 'https://github.com/intelxed/mbuild.git'
+
+ # Current versions now have actual releases and tags.
+ version('master', branch='master')
+ version('12.0.1', tag='12.0.1')
+ version('11.2.0', tag='11.2.0')
+
+ # The old 2019.03.01 version (before there were tags).
+ version('10.2019.03', commit='b7231de4c808db821d64f4018d15412640c34113')
+
+ resource(name='mbuild', placement='mbuild', git=mbuild_git,
+ branch='master', when='@master')
+
+ resource(name='mbuild', placement='mbuild', git=mbuild_git,
+ commit='3e8eb33aada4153c21c4261b35e5f51f6e2019e8', when='@:999')
variant('debug', default=False, description='Enable debug symbols')
+ variant('pic', default=False,
+ description='Compile with position independent code.')
+
+ # The current mfile uses python3 by name.
+ depends_on('python@3.4:', type='build')
- # python module 'platform.linux_distribution' was removed in python 3.8
- depends_on('python@2.7:3.7', type='build')
+ patch('1201-segv.patch', when='@12.0.1')
conflicts('target=ppc64:', msg='intel-xed only runs on x86')
conflicts('target=ppc64le:', msg='intel-xed only runs on x86')
+ conflicts('target=aarch64:', msg='intel-xed only runs on x86')
mycflags = []
@@ -52,6 +50,10 @@ class IntelXed(Package):
def flag_handler(self, name, flags):
if name == 'cflags':
self.mycflags = flags
+
+ if '+pic' in self.spec:
+ flags.append(self.compiler.cc_pic_flag)
+
return (flags, None, None)
def install(self, spec, prefix):
@@ -93,9 +95,15 @@ class IntelXed(Package):
install(join_path('obj', 'lib*.so'), prefix.lib)
- # Install the xed program
- install(join_path('obj', 'examples', 'xed'), prefix.bin)
-
- # Install header files.
- install(join_path('include', 'public', 'xed', '*.h'), prefix.include)
- install(join_path('obj', '*.h'), prefix.include)
+ # Starting with 11.x, the install files are moved or copied into
+ # subdirs of obj/wkit.
+ if spec.satisfies('@11.0:'):
+ wkit = join_path('obj', 'wkit')
+ install(join_path(wkit, 'bin', 'xed'), prefix.bin)
+ install(join_path(wkit, 'include', 'xed', '*.h'), prefix.include)
+ else:
+ # Old 2019.03.01 paths.
+ install(join_path('obj', 'examples', 'xed'), prefix.bin)
+ install(join_path('include', 'public', 'xed', '*.h'),
+ prefix.include)
+ install(join_path('obj', '*.h'), prefix.include)
diff --git a/var/spack/repos/builtin/packages/intel/package.py b/var/spack/repos/builtin/packages/intel/package.py
index ee7249fb06..bd118c1b38 100644
--- a/var/spack/repos/builtin/packages/intel/package.py
+++ b/var/spack/repos/builtin/packages/intel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,11 @@ class Intel(IntelPackage):
homepage = "https://software.intel.com/en-us/intel-parallel-studio-xe"
+ maintainers = ['rscohn2', 'danvev']
+
# Same as in ../intel-parallel-studio/package.py, Composer Edition,
# but the version numbering in Spack differs.
+ version('20.0.4', sha256='ac1efeff608a8c3a416e6dfe20364061e8abf62d35fbaacdffe3fc9676fc1aa3', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/17117/parallel_studio_xe_2020_update4_composer_edition.tgz')
version('20.0.2', sha256='42af16e9a91226978bb401d9f17b628bc279aa8cb104d4a38ba0808234a79bdd', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16759/parallel_studio_xe_2020_update2_composer_edition.tgz')
version('20.0.1', sha256='26c7e7da87b8a83adfd408b2a354d872be97736abed837364c1bf10f4469b01e', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16530/parallel_studio_xe_2020_update1_composer_edition.tgz')
version('20.0.0', sha256='9168045466139b8e280f50f0606b9930ffc720bbc60bc76f5576829ac15757ae', url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16229/parallel_studio_xe_2020_composer_edition.tgz')
diff --git a/var/spack/repos/builtin/packages/interproscan/package.py b/var/spack/repos/builtin/packages/interproscan/package.py
index 6b8d9b6b68..38a8e947bc 100644
--- a/var/spack/repos/builtin/packages/interproscan/package.py
+++ b/var/spack/repos/builtin/packages/interproscan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/intltool/package.py b/var/spack/repos/builtin/packages/intltool/package.py
index 8225d465c5..6aabec8f17 100644
--- a/var/spack/repos/builtin/packages/intltool/package.py
+++ b/var/spack/repos/builtin/packages/intltool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ioapi/package.py b/var/spack/repos/builtin/packages/ioapi/package.py
index 268512e5f2..5f2755f38b 100644
--- a/var/spack/repos/builtin/packages/ioapi/package.py
+++ b/var/spack/repos/builtin/packages/ioapi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class Ioapi(MakefilePackage):
homepage = "https://www.cmascenter.org/ioapi/"
url = "https://www.cmascenter.org/ioapi/download/ioapi-3.2.tar.gz"
- version('3.2', sha256='56771ff0053d47f2445e00ff369bca7bfc484325a2816b2c648744e523134fe9')
+ version('3.2', sha256='0a3cbf236ffbd9fb5f6509e35308c3353f1f53096efe0c51b84883d2da86924b')
depends_on('netcdf-c@4:')
depends_on('netcdf-fortran@4:')
depends_on('sed', type='build')
diff --git a/var/spack/repos/builtin/packages/ior/package.py b/var/spack/repos/builtin/packages/ior/package.py
index d4acdfa481..cbccc6e0f2 100644
--- a/var/spack/repos/builtin/packages/ior/package.py
+++ b/var/spack/repos/builtin/packages/ior/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,8 +14,9 @@ class Ior(AutotoolsPackage):
url = "https://github.com/hpc/ior/archive/3.2.1.tar.gz"
version('develop', git='https://github.com/hpc/ior.git', branch='master')
+ version('3.3.0', sha256='701f2167f81ef963e227d4c036c4a947a98b5642b7c14c87c8ae657849891528', preferred=True)
version('3.3.0rc1', sha256='0e42ebf5b5adae60625bf97989c8e2519d41ea2e3d18561d7d5b945625317aa5')
- version('3.2.1', sha256='ebcf2495aecb357370a91a2d5852cfd83bba72765e586bcfaf15fb79ca46d00e', preferred=True)
+ version('3.2.1', sha256='ebcf2495aecb357370a91a2d5852cfd83bba72765e586bcfaf15fb79ca46d00e')
version('3.2.0', sha256='91a766fb9c34b5780705d0997b71b236a1120da46652763ba11d9a8c44251852')
version('3.0.1', sha256='0cbefbcdb02fb13ba364e102f9e7cc2dcf761698533dac25de446a3a3e81390d')
diff --git a/var/spack/repos/builtin/packages/iozone/package.py b/var/spack/repos/builtin/packages/iozone/package.py
index b2a7d55286..a11fef0265 100644
--- a/var/spack/repos/builtin/packages/iozone/package.py
+++ b/var/spack/repos/builtin/packages/iozone/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os
class Iozone(MakefilePackage):
@@ -14,6 +15,7 @@ class Iozone(MakefilePackage):
homepage = "http://www.iozone.org/"
url = "http://www.iozone.org/src/current/iozone3_465.tar"
+ version('3_491', sha256='2cc4842d382e46a585d1df9ae1e255695480dcc0fc05c3b1cb32ef3493d0ec9a')
version('3_465', sha256='2e3d72916e7d7340a7c505fc0c3d28553fcc5ff2daf41d811368e55bd4e6a293')
# TODO: Add support for other architectures as necessary
@@ -22,6 +24,11 @@ class Iozone(MakefilePackage):
build_directory = 'src/current'
def edit(self, spec, prefix):
+ for dirpath, dirnames, filenames in os.walk(self.stage.source_path):
+ for filename in filenames:
+ path = os.path.join(dirpath, filename)
+ os.chmod(path, 0o644)
+
with working_dir(self.build_directory):
filter_file(r'^CC\t= cc',
r'CC\t= {0}'.format(spack_cc),
diff --git a/var/spack/repos/builtin/packages/ipcalc/package.py b/var/spack/repos/builtin/packages/ipcalc/package.py
index 672bd5e5f8..a49acdc036 100644
--- a/var/spack/repos/builtin/packages/ipcalc/package.py
+++ b/var/spack/repos/builtin/packages/ipcalc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/iperf2/package.py b/var/spack/repos/builtin/packages/iperf2/package.py
index 6c3369a93a..4da386b5c3 100644
--- a/var/spack/repos/builtin/packages/iperf2/package.py
+++ b/var/spack/repos/builtin/packages/iperf2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/iperf3/package.py b/var/spack/repos/builtin/packages/iperf3/package.py
index 9fbae17e2e..6b0da32f05 100644
--- a/var/spack/repos/builtin/packages/iperf3/package.py
+++ b/var/spack/repos/builtin/packages/iperf3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ipopt/package.py b/var/spack/repos/builtin/packages/ipopt/package.py
index 54b9ef9f49..c98c490185 100644
--- a/var/spack/repos/builtin/packages/ipopt/package.py
+++ b/var/spack/repos/builtin/packages/ipopt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -30,14 +30,19 @@ class Ipopt(AutotoolsPackage):
description="Build with METIS partitioning support")
variant('debug', default=False,
description="Build debug instead of optimized version")
+ variant('mumps', default=True,
+ description='Build with support for linear solver MUMPS')
depends_on("blas")
depends_on("lapack")
depends_on("pkgconfig", type='build')
- depends_on("mumps+double~mpi")
+ depends_on("mumps+double~mpi", when='+mumps')
depends_on('coinhsl', when='+coinhsl')
depends_on('metis@4.0:', when='+metis')
+ # Must have at least one linear solver available!
+ conflicts('~mumps', when='~coinhsl')
+
patch('ipopt_ppc_build.patch', when='arch=ppc64le')
flag_handler = build_system_flags
@@ -51,20 +56,12 @@ class Ipopt(AutotoolsPackage):
# Dependency directories
blas_dir = spec['blas'].prefix
lapack_dir = spec['lapack'].prefix
- mumps_dir = spec['mumps'].prefix
-
- # Add directory with fake MPI headers in sequential MUMPS
- # install to header search path
- mumps_flags = "-ldmumps -lmumps_common -lpord -lmpiseq"
- mumps_libcmd = "-L%s " % mumps_dir.lib + mumps_flags
blas_lib = spec['blas'].libs.ld_flags
lapack_lib = spec['lapack'].libs.ld_flags
args = [
"--prefix=%s" % self.prefix,
- "--with-mumps-incdir=%s" % mumps_dir.include,
- "--with-mumps-lib=%s" % mumps_libcmd,
"--enable-shared",
"coin_skip_warn_cxxflags=yes",
"--with-blas-incdir=%s" % blas_dir.include,
@@ -73,6 +70,16 @@ class Ipopt(AutotoolsPackage):
"--with-lapack-lib=%s" % lapack_lib
]
+ if '+mumps' in spec:
+ # Add directory with fake MPI headers in sequential MUMPS
+ # install to header search path
+ mumps_dir = spec['mumps'].prefix
+ mumps_flags = "-ldmumps -lmumps_common -lpord -lmpiseq"
+ mumps_libcmd = "-L%s " % mumps_dir.lib + mumps_flags
+ args.extend([
+ "--with-mumps-incdir=%s" % mumps_dir.include,
+ "--with-mumps-lib=%s" % mumps_libcmd])
+
if 'coinhsl' in spec:
args.extend([
'--with-hsl-lib=%s' % spec['coinhsl'].libs.ld_flags,
diff --git a/var/spack/repos/builtin/packages/iproute2/package.py b/var/spack/repos/builtin/packages/iproute2/package.py
index 426ba5c1bc..48495ddabf 100644
--- a/var/spack/repos/builtin/packages/iproute2/package.py
+++ b/var/spack/repos/builtin/packages/iproute2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/iptraf-ng/package.py b/var/spack/repos/builtin/packages/iptraf-ng/package.py
new file mode 100644
index 0000000000..cedd08f354
--- /dev/null
+++ b/var/spack/repos/builtin/packages/iptraf-ng/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class IptrafNg(MakefilePackage):
+ """A console-based network monitoring utility."""
+
+ homepage = "https://github.com/iptraf-ng/iptraf-ng"
+ url = "https://github.com/iptraf-ng/iptraf-ng/archive/v1.2.0.tar.gz"
+
+ version('1.2.1', sha256='9f5cef584065420dea1ba32c86126aede1fa9bd25b0f8362b0f9fd9754f00870')
+ version('1.2.0', sha256='9725115e501d083674d50a7686029d3a08f920abd35c9a2d4a28b5ddb782417f')
+ version('1.1.4', sha256='16b9b05bf5d3725d86409b901696639ad46944d02de6def87b1ceae5310dd35c')
+
+ depends_on('ncurses')
+
+ def install(self, spec, prefix):
+ make('install', 'prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/iq-tree/package.py b/var/spack/repos/builtin/packages/iq-tree/package.py
index 010ccdcae0..c682ca345f 100644
--- a/var/spack/repos/builtin/packages/iq-tree/package.py
+++ b/var/spack/repos/builtin/packages/iq-tree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,10 +15,10 @@ class IqTree(CMakePackage):
url = "https://github.com/Cibiv/IQ-TREE/archive/v1.6.12.tar.gz"
version('2.0.6', tag='v2.0.6', submodules=True)
- version('1.6.12', sha256='9614092de7a157de82c9cc402b19cc8bfa0cb0ffc93b91817875c2b4bb46a284')
+ version('1.6.12', sha256='9614092de7a157de82c9cc402b19cc8bfa0cb0ffc93b91817875c2b4bb46a284')
variant('openmp', default=True, description='Enable OpenMP support.')
- variant('mpi', default=False, description='Enable MPI support.')
+ variant('mpi', default=False, description='Enable MPI support.')
variant('lsd2', default=True, description='Axctivate Least Squares Dating.')
maintainers = ['ilbiondo']
diff --git a/var/spack/repos/builtin/packages/isaac-server/package.py b/var/spack/repos/builtin/packages/isaac-server/package.py
index da78398d1e..8b9f43c516 100644
--- a/var/spack/repos/builtin/packages/isaac-server/package.py
+++ b/var/spack/repos/builtin/packages/isaac-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,8 @@ class IsaacServer(CMakePackage):
version('develop', branch='dev')
version('master', branch='master')
+ version('1.5.2', sha256='9cedd72bea06f387b697b17a0db076e50fb3b85b74f21d3a6d99ed0d664a9ef2')
+ version('1.5.1', sha256='f62d53aa6e1c28e51437dbf3d1ac0daa2f98d28660f09feaabcc953ff01b076e')
version('1.5.0', sha256='4d5a150dfe064289d760da368102172f84e9e8851a177c8125a56e151db58dce')
version('1.4.0', sha256='6cbd4cc54a22de5e5a3427e44141db6e7b80b33fe7a0c707390a113655bf344e')
version('1.3.3', sha256='92a972d05d315ad66546671c047b7edf8ed0e05d64d2b8d77ababb5bb9b93d8e')
@@ -29,7 +31,8 @@ class IsaacServer(CMakePackage):
depends_on('cmake@3.3:', type='build')
depends_on('jpeg', type='link')
- depends_on('jansson@:2.9', type='link')
+ depends_on('jansson@:2.9', type='link', when='@:1.5.1')
+ depends_on('jansson', type='link')
depends_on('boost@1.56.0:', type='link')
depends_on('libwebsockets@2.1.1:', type='link')
# depends_on('gstreamer@1.0', when='+gstreamer')
diff --git a/var/spack/repos/builtin/packages/isaac/package.py b/var/spack/repos/builtin/packages/isaac/package.py
index ddc62f3482..26fdc4ddc0 100644
--- a/var/spack/repos/builtin/packages/isaac/package.py
+++ b/var/spack/repos/builtin/packages/isaac/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,8 @@ class Isaac(CMakePackage):
version('develop', branch='dev')
version('master', branch='master')
+ version('1.5.2', sha256='9cedd72bea06f387b697b17a0db076e50fb3b85b74f21d3a6d99ed0d664a9ef2')
+ version('1.5.1', sha256='f62d53aa6e1c28e51437dbf3d1ac0daa2f98d28660f09feaabcc953ff01b076e')
version('1.5.0', sha256='4d5a150dfe064289d760da368102172f84e9e8851a177c8125a56e151db58dce')
version('1.4.0', sha256='6cbd4cc54a22de5e5a3427e44141db6e7b80b33fe7a0c707390a113655bf344e')
version('1.3.3', sha256='92a972d05d315ad66546671c047b7edf8ed0e05d64d2b8d77ababb5bb9b93d8e')
diff --git a/var/spack/repos/builtin/packages/isc-dhcp/package.py b/var/spack/repos/builtin/packages/isc-dhcp/package.py
index 9a5ab76455..bbe8d36352 100644
--- a/var/spack/repos/builtin/packages/isc-dhcp/package.py
+++ b/var/spack/repos/builtin/packages/isc-dhcp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/isescan/package.py b/var/spack/repos/builtin/packages/isescan/package.py
index 1d4b607046..44394d284e 100644
--- a/var/spack/repos/builtin/packages/isescan/package.py
+++ b/var/spack/repos/builtin/packages/isescan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/isl/package.py b/var/spack/repos/builtin/packages/isl/package.py
index 826f2c1969..6ccc856f83 100644
--- a/var/spack/repos/builtin/packages/isl/package.py
+++ b/var/spack/repos/builtin/packages/isl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/iso-codes/package.py b/var/spack/repos/builtin/packages/iso-codes/package.py
index 8023866c04..61389f6f3d 100644
--- a/var/spack/repos/builtin/packages/iso-codes/package.py
+++ b/var/spack/repos/builtin/packages/iso-codes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ispc/package.py b/var/spack/repos/builtin/packages/ispc/package.py
index 4532e45243..f07690df4c 100644
--- a/var/spack/repos/builtin/packages/ispc/package.py
+++ b/var/spack/repos/builtin/packages/ispc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,6 +9,7 @@
from spack import *
+import re
class Ispc(CMakePackage):
@@ -18,8 +19,12 @@ class Ispc(CMakePackage):
homepage = "https://ispc.github.io"
url = "https://github.com/ispc/ispc/tarball/v1.14.1"
+ git = "https://github.com/ispc/ispc"
maintainers = ['aumuell']
+ executables = ['^ispc$']
+
+ version('master', branch='master')
version('1.14.1', sha256='ca12f26dafbc4ef9605487d03a2156331c1351a4ffefc9bab4d896a466880794')
version('1.14.0', sha256='1ed72542f56738c632bb02fb0dd56ad8aec3e2487839ebbc0def8334f305a4c7')
version('1.13.0', sha256='aca595508b51dd1ff065c406a3fd7c93822320c510077dd4d97a2b98a23f097a')
@@ -34,6 +39,7 @@ class Ispc(CMakePackage):
depends_on('llvm@10:10.999', when='@1.13:1.13.999')
patch('don-t-assume-that-ncurses-zlib-are-system-libraries.patch',
+ when='@1.14:1.14.999',
sha256='d3ccf547d3ba59779fd375e10417a436318f2200d160febb9f830a26f0daefdc')
patch('fix-linking-against-llvm-10.patch', when='@1.13:1.13.999',
@@ -47,3 +53,10 @@ class Ispc(CMakePackage):
args.append('-DISPC_INCLUDE_TESTS=OFF')
args.append('-DISPC_INCLUDE_UTILS=OFF')
return args
+
+ @classmethod
+ def determine_version(cls, exe):
+ output = Executable(exe)('--version', output=str, error=str)
+ match = re.search(r'^Intel.*[iI][sS][pP][cC]\),\s+(\S+)\s+\(build.*\)',
+ output)
+ return match.group(1) if match else None
diff --git a/var/spack/repos/builtin/packages/istio/package.py b/var/spack/repos/builtin/packages/istio/package.py
index 6a3aad6111..9cf8ce6d99 100644
--- a/var/spack/repos/builtin/packages/istio/package.py
+++ b/var/spack/repos/builtin/packages/istio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/itensor/package.py b/var/spack/repos/builtin/packages/itensor/package.py
new file mode 100644
index 0000000000..8f6157a11b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/itensor/package.py
@@ -0,0 +1,132 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class Itensor(MakefilePackage):
+ """ITensor -Intelligent Tensor- is a library for
+ implementing tensor network calculations."""
+
+ homepage = "https://itensor.org/index.html"
+ url = "https://github.com/ITensor/ITensor/archive/v3.1.6.tar.gz"
+
+ version('3.1.6', sha256='1c42cd39c45124063d9812b851b4d99735caff7ac2da971b4287c2018d4cf32a')
+ version('3.1.5', sha256='a0661efdda3bfc4fab1796243d4b438b0f17adce08b6bb21a2aaae9766b6a1ec')
+ version('3.1.4', sha256='bdcfa786f5165b6f5d1a40a80e7ecca2e59e2ee7050fd60f42ef4a4a55a793c5')
+ version('3.1.3', sha256='ff6b04f9c642c6795acd3485f44619282a2dde7a49a4e0dee89b47b69dc3853e')
+ version('3.1.2', sha256='3e0f032c211e11be1b5a4adf4a581698a949d03b35c0e9b2e3d9f4bab6dd7967')
+ version('3.1.1', sha256='3c12d288e50522b5bd152f956a48ec187486cfeb4ccb1ea9a05d3f0bf3bf8059')
+ version('3.1.0', sha256='b887cb9c7fc06f60d9d6834380b643adea8d165d574ab1859883f399725b9db9')
+ version('3.0.1', sha256='5e2ac3a5b62fb3e34f1e520e6da911b56659507fb4143118d4a602a5866bc912')
+ version('3.0.0', sha256='1d249a3a6442188a9f7829b32238c1025457c2930566d134a785994b1f7c54a9')
+ version('2.1.1', sha256='b91a67af66ed0fa7678494f3895b5d5ae7f1dc1026540689f9625f515cb7791c')
+
+ variant('openmp', default=False, description='Enable OpenMP support.')
+ variant('hdf5', default=False, description='Build rockstar with HDF5 support.')
+
+ depends_on('lapack')
+ depends_on('hdf5+hl', when='+hdf5')
+
+ conflicts('^openblas threads=none', when='+openmp')
+ conflicts('^openblas threads=pthreads', when='+openmp')
+
+ def getcopts(self, spec):
+ copts = []
+ copts.append(self.compiler.cxx17_flag)
+ copts.append(self.compiler.cc_pic_flag)
+
+ if spec.satisfies('%gcc'):
+ if not spec.satisfies('arch=aarch64:'):
+ copts.append('-m64')
+ copts.append('-fconcepts')
+ if spec.satisfies('%clang') or spec.satisfies('%fj'):
+ copts.append('-Wno-gcc-compat')
+ return ' ' + ' '.join(copts)
+
+ def edit(self, spec, prefix):
+ # 0.copy options.mk
+ mf = 'options.mk'
+ copy('options.mk.sample', mf)
+
+ # 1.CCCOM
+ ccopts = 'CCCOM={0}{1}'.format(spack_cxx, self.getcopts(spec))
+ filter_file(r'^CCCOM.+', ccopts, mf)
+
+ # 2.BLAS/LAPACK
+ # Set default values
+ vpla = 'PLATFORM=lapack'
+ vlib = 'BLAS_LAPACK_LIBFLAGS='
+ vlib += spec['lapack'].libs.ld_flags
+ vinc = 'BLAS_LAPACK_INCLUDEFLAGS=-I'
+ vinc += spec['lapack'].prefix.include
+ ltype = spec['lapack'].name
+ # lapack specific
+ if ltype == 'openblas':
+ vpla = 'PLATFORM=openblas'
+ if spec.satisfies('%gcc'):
+ vinc += ' -fpermissive'
+ vinc += ' -DHAVE_LAPACK_CONFIG_H'
+ vinc += ' -DLAPACK_COMPLEX_STRUCTURE'
+ filter_file('#PLATFORM=lapack', vinc, mf, String=True)
+ elif ltype == 'intel-mkl':
+ vpla = 'PLATFORM=mkl'
+ filter_file('#PLATFORM=lapack', vinc, mf, String=True)
+
+ filter_file(r'^PLATFORM.+', vpla, mf)
+ filter_file(r'^BLAS_LAPACK_LIBFLAGS.+', vlib, mf)
+
+ # 3.HDF5
+ if '+hdf5' in spec:
+ hdf5p = 'HDF5_PREFIX={0}'.format(spec["hdf5"].prefix.lib)
+ filter_file('^#HDF5.+', hdf5p, mf)
+
+ # 4.openmp
+ if '+openmp' in spec:
+ filter_file('#ITENSOR_USE_OMP', 'ITENSOR_USE_OMP', mf)
+ filter_file('-fopenmp', self.compiler.openmp_flag, mf)
+
+ # 5.prefix
+ filter_file(
+ r'^PREFIX.+',
+ 'PREFIX={0}'.format(os.getcwd()),
+ mf
+ )
+
+ def install(self, spec, prefix):
+ # 0.backup options.mk
+ mf = 'options.mk'
+ copy(mf, 'options.mk.build')
+
+ # 1.CCCOM
+ ccopts = 'CCCOM={0}'.format(self.compiler.cxx)
+ ccopts += ' ' + ' '.join(spec.compiler_flags['cxxflags'])
+ if spec.satisfies('%fj'):
+ ccopts += ' ' + env["FCC_ENV"]
+ ccopts += self.getcopts(spec)
+ filter_file(r'^CCCOM.+', ccopts, mf)
+
+ # 2.LDFLAGS
+ vlib = 'BLAS_LAPACK_LIBFLAGS={0} '.format(' '.join(
+ spec.compiler_flags['ldflags'] + spec.compiler_flags['ldlibs']))
+ filter_file(r'^BLAS_LAPACK_LIBFLAGS=', vlib, mf)
+
+ # 3.prefix
+ filter_file(
+ r'^PREFIX.+',
+ 'PREFIX={0}'.format(prefix),
+ mf
+ )
+
+ # tutorial/project_template/Makefile
+ mf2 = join_path('tutorial', 'project_template', 'Makefile')
+ filter_file(
+ r'^LIBRARY_DIR.+',
+ 'LIBRARY_DIR={0}'.format(prefix),
+ mf2
+ )
+
+ install_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/itk/package.py b/var/spack/repos/builtin/packages/itk/package.py
index ef0f129318..759eea82da 100644
--- a/var/spack/repos/builtin/packages/itk/package.py
+++ b/var/spack/repos/builtin/packages/itk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,6 +24,7 @@ class Itk(CMakePackage):
maintainers = ['glennpj']
+ version('5.1.2', sha256='f1e5a78e11125348f68f655c6b89b617c3a8b2c09f710081f621054811a70c98')
version('5.1.1', sha256='39e2a63840054361b728878a35b21bbe38374682ffb4b5c4f8f8f7514dedb58e')
variant('review', default=False, description='enable modules under review')
diff --git a/var/spack/repos/builtin/packages/itstool/package.py b/var/spack/repos/builtin/packages/itstool/package.py
index afc48e73d7..8b2c848616 100644
--- a/var/spack/repos/builtin/packages/itstool/package.py
+++ b/var/spack/repos/builtin/packages/itstool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/itsx/package.py b/var/spack/repos/builtin/packages/itsx/package.py
index 08339c72a7..e451935f5b 100644
--- a/var/spack/repos/builtin/packages/itsx/package.py
+++ b/var/spack/repos/builtin/packages/itsx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/iwyu/package.py b/var/spack/repos/builtin/packages/iwyu/package.py
index eb4ceaa4c4..e7876ee0b0 100644
--- a/var/spack/repos/builtin/packages/iwyu/package.py
+++ b/var/spack/repos/builtin/packages/iwyu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jackcess/package.py b/var/spack/repos/builtin/packages/jackcess/package.py
index 8d626cebe7..4261feaf75 100644
--- a/var/spack/repos/builtin/packages/jackcess/package.py
+++ b/var/spack/repos/builtin/packages/jackcess/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jafka/package.py b/var/spack/repos/builtin/packages/jafka/package.py
index ab39d87b92..0c8b06dd66 100644
--- a/var/spack/repos/builtin/packages/jafka/package.py
+++ b/var/spack/repos/builtin/packages/jafka/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jags/package.py b/var/spack/repos/builtin/packages/jags/package.py
index f816176827..0b10cfe735 100644
--- a/var/spack/repos/builtin/packages/jags/package.py
+++ b/var/spack/repos/builtin/packages/jags/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jali/package.py b/var/spack/repos/builtin/packages/jali/package.py
index ef1f9f0a52..f007048c51 100644
--- a/var/spack/repos/builtin/packages/jali/package.py
+++ b/var/spack/repos/builtin/packages/jali/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jansi-native/package.py b/var/spack/repos/builtin/packages/jansi-native/package.py
index 54fa0953b4..46165631e5 100644
--- a/var/spack/repos/builtin/packages/jansi-native/package.py
+++ b/var/spack/repos/builtin/packages/jansi-native/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jansi/package.py b/var/spack/repos/builtin/packages/jansi/package.py
index 8ecfee60d8..af1ee08988 100644
--- a/var/spack/repos/builtin/packages/jansi/package.py
+++ b/var/spack/repos/builtin/packages/jansi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jansson/package.py b/var/spack/repos/builtin/packages/jansson/package.py
index 43982b42cc..b781d68dbe 100644
--- a/var/spack/repos/builtin/packages/jansson/package.py
+++ b/var/spack/repos/builtin/packages/jansson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,5 @@ class Jansson(CMakePackage):
def cmake_args(self):
return [
- '-DJANSSON_BUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in self.spec else 'OFF'),
+ self.define_from_variant('JANSSON_BUILD_SHARED_LIBS', 'shared'),
]
diff --git a/var/spack/repos/builtin/packages/jasper/package.py b/var/spack/repos/builtin/packages/jasper/package.py
index 9599aec8f4..854745d27f 100644
--- a/var/spack/repos/builtin/packages/jasper/package.py
+++ b/var/spack/repos/builtin/packages/jasper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jbigkit/package.py b/var/spack/repos/builtin/packages/jbigkit/package.py
index c5e4e26242..f282c3001e 100644
--- a/var/spack/repos/builtin/packages/jbigkit/package.py
+++ b/var/spack/repos/builtin/packages/jbigkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jblob/package.py b/var/spack/repos/builtin/packages/jblob/package.py
index 1aa1738230..71a783c29f 100644
--- a/var/spack/repos/builtin/packages/jblob/package.py
+++ b/var/spack/repos/builtin/packages/jblob/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jchronoss/package.py b/var/spack/repos/builtin/packages/jchronoss/package.py
index d8ec01083e..c91d18f27d 100644
--- a/var/spack/repos/builtin/packages/jchronoss/package.py
+++ b/var/spack/repos/builtin/packages/jchronoss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jdk/package.py b/var/spack/repos/builtin/packages/jdk/package.py
index 9e05754416..218fe048e1 100644
--- a/var/spack/repos/builtin/packages/jdk/package.py
+++ b/var/spack/repos/builtin/packages/jdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jellyfish/package.py b/var/spack/repos/builtin/packages/jellyfish/package.py
index 1d5b7febc1..2889bfd2ad 100644
--- a/var/spack/repos/builtin/packages/jellyfish/package.py
+++ b/var/spack/repos/builtin/packages/jellyfish/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jemalloc/package.py b/var/spack/repos/builtin/packages/jemalloc/package.py
index 85ae590699..5fd06489d7 100644
--- a/var/spack/repos/builtin/packages/jemalloc/package.py
+++ b/var/spack/repos/builtin/packages/jemalloc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jetty-project/package.py b/var/spack/repos/builtin/packages/jetty-project/package.py
index 24beb52295..0e32927c29 100644
--- a/var/spack/repos/builtin/packages/jetty-project/package.py
+++ b/var/spack/repos/builtin/packages/jetty-project/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jhpcn-df/package.py b/var/spack/repos/builtin/packages/jhpcn-df/package.py
index 3bb3132844..09ed64922e 100644
--- a/var/spack/repos/builtin/packages/jhpcn-df/package.py
+++ b/var/spack/repos/builtin/packages/jhpcn-df/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jimtcl/package.py b/var/spack/repos/builtin/packages/jimtcl/package.py
index 4f4ec3e6b9..93f59dd13c 100644
--- a/var/spack/repos/builtin/packages/jimtcl/package.py
+++ b/var/spack/repos/builtin/packages/jimtcl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jline3/package.py b/var/spack/repos/builtin/packages/jline3/package.py
index f767f482e8..2d2a06e13e 100644
--- a/var/spack/repos/builtin/packages/jline3/package.py
+++ b/var/spack/repos/builtin/packages/jline3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jmol/package.py b/var/spack/repos/builtin/packages/jmol/package.py
index 9da452f396..25b02645d1 100644
--- a/var/spack/repos/builtin/packages/jmol/package.py
+++ b/var/spack/repos/builtin/packages/jmol/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jose/package.py b/var/spack/repos/builtin/packages/jose/package.py
index b33946e35e..b487c07b47 100644
--- a/var/spack/repos/builtin/packages/jose/package.py
+++ b/var/spack/repos/builtin/packages/jose/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jpegoptim/package.py b/var/spack/repos/builtin/packages/jpegoptim/package.py
index 2e323cf02b..3fd61b943d 100644
--- a/var/spack/repos/builtin/packages/jpegoptim/package.py
+++ b/var/spack/repos/builtin/packages/jpegoptim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jq/package.py b/var/spack/repos/builtin/packages/jq/package.py
index 9f67ce5bbe..a90508ffb6 100644
--- a/var/spack/repos/builtin/packages/jq/package.py
+++ b/var/spack/repos/builtin/packages/jq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/json-c/package.py b/var/spack/repos/builtin/packages/json-c/package.py
index 3ed27a3c4b..1f5c6706a9 100644
--- a/var/spack/repos/builtin/packages/json-c/package.py
+++ b/var/spack/repos/builtin/packages/json-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,17 +6,19 @@
from spack import *
-class JsonC(AutotoolsPackage):
+class JsonC(CMakePackage):
"""A JSON implementation in C."""
homepage = "https://github.com/json-c/json-c/wiki"
- url = "https://s3.amazonaws.com/json-c_releases/releases/json-c-0.12.1.tar.gz"
+ url = "https://s3.amazonaws.com/json-c_releases/releases/json-c-0.15.tar.gz"
+ version('0.15', sha256='b8d80a1ddb718b3ba7492916237bbf86609e9709fb007e7f7d4322f02341a4c6')
+ version('0.14', sha256='b377de08c9b23ca3b37d9a9828107dff1de5ce208ff4ebb35005a794f30c6870')
version('0.13.1', sha256='b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873')
version('0.12.1', sha256='2a136451a7932d80b7d197b10441e26e39428d67b1443ec43bbba824705e1123')
version('0.12', sha256='000c01b2b3f82dcb4261751eb71f1b084404fb7d6a282f06074d3c17078b9f3f')
version('0.11', sha256='28dfc65145dc0d4df1dfe7701ac173c4e5f9347176c8983edbfac9149494448c')
- depends_on('autoconf', type='build')
+ depends_on('autoconf', when='@:0.13.1', type='build')
parallel = False
@@ -26,3 +28,22 @@ class JsonC(AutotoolsPackage):
'-Wextra -Wno-error=implicit-fallthrough '
'-Wno-error=unused-but-set-variable',
'Makefile.in')
+
+ @when('@:0.13.1')
+ def cmake(self, spec, prefix):
+ configure_args = ['--prefix=' + prefix]
+ configure(*configure_args)
+
+ @when('@:0.13.1')
+ def build(self, spec, prefix):
+ make()
+
+ @when('@:0.13.1')
+ def install(self, spec, prefix):
+ make('install')
+
+ @when('%cce@11.0.3:')
+ def patch(self):
+ filter_file('-Werror',
+ '',
+ 'CMakeLists.txt')
diff --git a/var/spack/repos/builtin/packages/json-cwx/package.py b/var/spack/repos/builtin/packages/json-cwx/package.py
index 50b10cb4d0..bae73b1ac6 100644
--- a/var/spack/repos/builtin/packages/json-cwx/package.py
+++ b/var/spack/repos/builtin/packages/json-cwx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/json-fortran/package.py b/var/spack/repos/builtin/packages/json-fortran/package.py
index 2311bee898..52530d00b2 100644
--- a/var/spack/repos/builtin/packages/json-fortran/package.py
+++ b/var/spack/repos/builtin/packages/json-fortran/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/json-glib/package.py b/var/spack/repos/builtin/packages/json-glib/package.py
index 1a04cfe97b..44d1c9b5e6 100644
--- a/var/spack/repos/builtin/packages/json-glib/package.py
+++ b/var/spack/repos/builtin/packages/json-glib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jsoncpp/package.py b/var/spack/repos/builtin/packages/jsoncpp/package.py
index 2593c9ae0f..067ff7a687 100644
--- a/var/spack/repos/builtin/packages/jsoncpp/package.py
+++ b/var/spack/repos/builtin/packages/jsoncpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Jsoncpp(CMakePackage):
homepage = "https://github.com/open-source-parsers/jsoncpp"
url = "https://github.com/open-source-parsers/jsoncpp/archive/1.7.3.tar.gz"
+ version('1.9.4', sha256='e34a628a8142643b976c7233ef381457efad79468c67cb1ae0b83a33d7493999')
version('1.9.2', sha256='77a402fb577b2e0e5d0bdc1cf9c65278915cdb25171e3452c68b6da8a561f8f0')
version('1.9.1', sha256='c7b40f5605dd972108f503f031b20186f5e5bca2b65cd4b8bd6c3e4ba8126697')
version('1.9.0', sha256='bdd3ba9ed1f110b3eb57474d9094e90ab239b93b4803b4f9b1722c281e85a4ac')
diff --git a/var/spack/repos/builtin/packages/jstorm/package.py b/var/spack/repos/builtin/packages/jstorm/package.py
index 0bc0be3d62..1e1c59cb37 100644
--- a/var/spack/repos/builtin/packages/jstorm/package.py
+++ b/var/spack/repos/builtin/packages/jstorm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/jube/package.py b/var/spack/repos/builtin/packages/jube/package.py
index edbd6fc151..58325965df 100644
--- a/var/spack/repos/builtin/packages/jube/package.py
+++ b/var/spack/repos/builtin/packages/jube/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/judy/package.py b/var/spack/repos/builtin/packages/judy/package.py
index 0c714c5b01..7e772353c5 100644
--- a/var/spack/repos/builtin/packages/judy/package.py
+++ b/var/spack/repos/builtin/packages/judy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/julea/package.py b/var/spack/repos/builtin/packages/julea/package.py
index 7559b0edfd..351b8af99d 100644
--- a/var/spack/repos/builtin/packages/julea/package.py
+++ b/var/spack/repos/builtin/packages/julea/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/julia/package.py b/var/spack/repos/builtin/packages/julia/package.py
index 8c6a6aaf90..883f12d4d8 100644
--- a/var/spack/repos/builtin/packages/julia/package.py
+++ b/var/spack/repos/builtin/packages/julia/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,10 @@ class Julia(Package):
maintainers = ['glennpj']
version('master', branch='master')
+ version('1.6.1', sha256='71d8e40611361370654e8934c407b2dec04944cf3917c5ecb6482d6b85ed767f')
+ version('1.6.0', sha256='1b05f42c9368bc2349c47363b7ddc175a2da3cd162d52b6e24c4f5d4d6e1232c')
+ version('1.5.4', sha256='26a5f7d53a05c5f69a2877c3b489646807e0c0b29141ba90cd359aa1d37bf77b')
+ version('1.5.3', sha256='fb69337ca037576758547c7eed9ae8f153a9c052318327b6b7f1917408c14d91')
version('1.5.2', sha256='850aed3fe39057488ec633f29af705f5ada87e3058fd65e48ad26f91b713a19a')
version('1.5.1', sha256='1d0debfccfc7cd07047aa862dd2b1a96f7438932da1f5feff6c1033a63f9b1d4')
version('1.5.0', sha256='4a6ffadc8dd04ca0b7fdef6ae203d0af38185e57b78f7c0b972c4707354a6d1b')
diff --git a/var/spack/repos/builtin/packages/junit4/package.py b/var/spack/repos/builtin/packages/junit4/package.py
index d0a46b4495..d36de770f1 100644
--- a/var/spack/repos/builtin/packages/junit4/package.py
+++ b/var/spack/repos/builtin/packages/junit4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/k8/package.py b/var/spack/repos/builtin/packages/k8/package.py
index d536e6e369..3db51d5e79 100644
--- a/var/spack/repos/builtin/packages/k8/package.py
+++ b/var/spack/repos/builtin/packages/k8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kafka/package.py b/var/spack/repos/builtin/packages/kafka/package.py
index d37fd21276..87ea79fd4b 100644
--- a/var/spack/repos/builtin/packages/kafka/package.py
+++ b/var/spack/repos/builtin/packages/kafka/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kahip/package.py b/var/spack/repos/builtin/packages/kahip/package.py
index 3a31455c75..42b59db501 100644
--- a/var/spack/repos/builtin/packages/kahip/package.py
+++ b/var/spack/repos/builtin/packages/kahip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kaiju/package.py b/var/spack/repos/builtin/packages/kaiju/package.py
index 784fcffee9..53a00f0ba7 100644
--- a/var/spack/repos/builtin/packages/kaiju/package.py
+++ b/var/spack/repos/builtin/packages/kaiju/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kaks-calculator/package.py b/var/spack/repos/builtin/packages/kaks-calculator/package.py
index 58edd8e249..dc42d44998 100644
--- a/var/spack/repos/builtin/packages/kaks-calculator/package.py
+++ b/var/spack/repos/builtin/packages/kaks-calculator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kaldi/package.py b/var/spack/repos/builtin/packages/kaldi/package.py
index e4e0fbeb7b..c98df6aa19 100644
--- a/var/spack/repos/builtin/packages/kaldi/package.py
+++ b/var/spack/repos/builtin/packages/kaldi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kallisto/package.py b/var/spack/repos/builtin/packages/kallisto/package.py
index 25e5fcb9a0..e307decfa4 100644
--- a/var/spack/repos/builtin/packages/kallisto/package.py
+++ b/var/spack/repos/builtin/packages/kallisto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/karma/package.py b/var/spack/repos/builtin/packages/karma/package.py
index f875f6d64f..5486a0d3fc 100644
--- a/var/spack/repos/builtin/packages/karma/package.py
+++ b/var/spack/repos/builtin/packages/karma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kassiopeia/package.py b/var/spack/repos/builtin/packages/kassiopeia/package.py
index 90d085acb8..20656a951e 100644
--- a/var/spack/repos/builtin/packages/kassiopeia/package.py
+++ b/var/spack/repos/builtin/packages/kassiopeia/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Kassiopeia(CMakePackage):
url = "https://github.com/KATRIN-Experiment/Kassiopeia/archive/v3.6.1.tar.gz"
git = "https://github.com/KATRIN-Experiment/Kassiopeia.git"
+ tags = ['hep']
+
maintainers = ['wdconinc']
version('3.7.5', sha256='8f28d08c7ef51e64221e0a4705f3cee3a5d738b8cdde5ce9fa58a3a0dd14ae05')
diff --git a/var/spack/repos/builtin/packages/kbd/package.py b/var/spack/repos/builtin/packages/kbd/package.py
index c1a1667d9a..88d74b8366 100644
--- a/var/spack/repos/builtin/packages/kbd/package.py
+++ b/var/spack/repos/builtin/packages/kbd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kbproto/package.py b/var/spack/repos/builtin/packages/kbproto/package.py
index 2d2dbf63bc..948f308b81 100644
--- a/var/spack/repos/builtin/packages/kbproto/package.py
+++ b/var/spack/repos/builtin/packages/kbproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kcov/package.py b/var/spack/repos/builtin/packages/kcov/package.py
index 5e7bf48bd5..f426c0ec87 100644
--- a/var/spack/repos/builtin/packages/kcov/package.py
+++ b/var/spack/repos/builtin/packages/kcov/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,8 @@ class Kcov(CMakePackage):
depends_on('cmake@2.8.4:', type='build')
depends_on('zlib')
depends_on('curl')
+ depends_on('elfutils', when='platform=linux')
+ depends_on('binutils +libiberty', when='platform=linux', type='link')
def cmake_args(self):
# Necessary at least on macOS, fixes linking error to LLDB
diff --git a/var/spack/repos/builtin/packages/kdiff3/package.py b/var/spack/repos/builtin/packages/kdiff3/package.py
index 483a0ffac9..0813bd4f19 100644
--- a/var/spack/repos/builtin/packages/kdiff3/package.py
+++ b/var/spack/repos/builtin/packages/kdiff3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kea/package.py b/var/spack/repos/builtin/packages/kea/package.py
index acb6516f39..9ed7eaa2d5 100644
--- a/var/spack/repos/builtin/packages/kea/package.py
+++ b/var/spack/repos/builtin/packages/kea/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kealib/package.py b/var/spack/repos/builtin/packages/kealib/package.py
index 3e050a213c..11cfee8516 100644
--- a/var/spack/repos/builtin/packages/kealib/package.py
+++ b/var/spack/repos/builtin/packages/kealib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/keepalived/package.py b/var/spack/repos/builtin/packages/keepalived/package.py
index 2b1e9f7b07..1097d54ce2 100644
--- a/var/spack/repos/builtin/packages/keepalived/package.py
+++ b/var/spack/repos/builtin/packages/keepalived/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,3 +26,8 @@ class Keepalived(AutotoolsPackage):
version('2.0.11', sha256='a298b0c02a20959cfc365b62c14f45abd50d5e0595b2869f5bce10ec2392fa48')
depends_on('openssl')
+
+ def configure_args(self):
+ args = ["--with-systemdsystemunitdir=" +
+ self.spec['keepalived'].prefix.lib.systemd.system]
+ return args
diff --git a/var/spack/repos/builtin/packages/keepassxc/package.py b/var/spack/repos/builtin/packages/keepassxc/package.py
new file mode 100644
index 0000000000..933fc044c2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/keepassxc/package.py
@@ -0,0 +1,78 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Keepassxc(CMakePackage):
+ """KeePassXC - Cross-Platform Password Manager, modern, secure, and open-source."""
+
+ homepage = "https://keepassxc.org"
+ url = "https://github.com/keepassxreboot/keepassxc/releases/download/2.6.4/keepassxc-2.6.4-src.tar.xz"
+ git = "https://github.com/keepassxreboot/keepassxc.git"
+
+ maintainers = ['cessenat']
+
+ version('master', branch='master')
+ version('2.6.4', sha256='e536e2a71c90fcf264eb831fb1a8b518ee1b03829828f862eeea748d3310f82b')
+
+ variant('build_type', default='Release',
+ description='The build type for the installation (only Debug or'
+ ' ( Documentation indicates Release).',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'))
+ variant('autotype', default=False,
+ description='enable auto-type')
+
+ # https://github.com/keepassxreboot/keepassxc/wiki/Building-KeePassXC
+ # https://github.com/keepassxreboot/keepassxc/wiki/Set-up-Build-Environment-on-Linux
+ depends_on('cmake@3.1:', type='build')
+
+ # It installs the last gcc instead of using one that is >= 4.7
+ conflicts('%gcc@:4.7', when='%gcc',
+ msg="Older than 4.7 GCC compilers are not supported")
+ conflicts('%clang@:3.0', when='%clang',
+ msg="Older than 3.0 clang compilers are not supported")
+
+ # The following libraries are required:
+ depends_on('qt+dbus~framework@5.2:')
+ depends_on('libgcrypt@1.6:', type='link')
+ depends_on('zlib', type='link')
+ depends_on('libmicrohttpd', type='link')
+ depends_on('libsodium@1.0.12:', type='link')
+ depends_on('readline')
+ # Modified argon2 on CentOS to have a standard library directory
+ depends_on('argon2', type=('link', 'build'))
+ # Had to add libqrencode
+ depends_on('libqrencode', type=('link', 'build'))
+ # Has anyone done gem i bundler and gem i asciidoctor ? https://asciidoctor.org/
+ depends_on('ruby-asciidoctor@2.0:', type=('build'))
+ # sudo apt install libxi-dev libxtst-dev libqt5x11extras5-dev libyubikey-dev \
+ # libykpers-1-dev libquazip5-dev libreadline-dev
+ # These are required to build Auto-Type, Yubikey and browser integration support.
+ depends_on('libxi', type='link', when='+autotype')
+ depends_on('libxtst', type='link', when='+autotype')
+
+ def cmake_args(self):
+ spec = self.spec
+ args = [
+ '-DKEEPASSXC_BUILD_TYPE=Release',
+ '-DCMAKE_INSTALL_DATADIR=%s' % join_path(spec.prefix, 'share'),
+ ]
+ if '+autotype' in spec:
+ args.append('-DWITH_XC_ALL=ON')
+ else:
+ args.append('-DWITH_XC_ALL=OFF')
+
+ if spec.satisfies('platform=darwin'):
+ args.append('-DCMAKE_OSX_ARCHITECTURES=x86_64')
+
+ return args
+
+ @when('platform=darwin')
+ def make(self, spec, prefix):
+ make('package')
+
+ def edit(self, spec, prefix):
+ env['DESTDIR'] = spec.prefix
diff --git a/var/spack/repos/builtin/packages/kentutils/package.py b/var/spack/repos/builtin/packages/kentutils/package.py
index f0b4ee8322..29a99a1200 100644
--- a/var/spack/repos/builtin/packages/kentutils/package.py
+++ b/var/spack/repos/builtin/packages/kentutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/keyutils/package.py b/var/spack/repos/builtin/packages/keyutils/package.py
index 29c588d7c5..2d62065f77 100644
--- a/var/spack/repos/builtin/packages/keyutils/package.py
+++ b/var/spack/repos/builtin/packages/keyutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kibana/package.py b/var/spack/repos/builtin/packages/kibana/package.py
index f0e6f53988..22fbe0a4dc 100644
--- a/var/spack/repos/builtin/packages/kibana/package.py
+++ b/var/spack/repos/builtin/packages/kibana/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kicad/package.py b/var/spack/repos/builtin/packages/kicad/package.py
new file mode 100644
index 0000000000..92652cc9b5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kicad/package.py
@@ -0,0 +1,84 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Kicad(CMakePackage):
+ """KiCad is an open source software suite for Electronic Design
+ Automation (EDA). The programs handle Schematic Capture, and PCB
+ Layout with Gerber output."""
+
+ homepage = 'https://kicad.org'
+ url = 'https://gitlab.com/kicad/code/kicad/-/archive/5.1.8/kicad-5.1.8.tar.gz'
+ maintainers = ['aweits']
+
+ version('5.1.9', sha256='841be864b9dc5c761193c3ee9cbdbed6729952d7b38451aa8e1977bdfdb6081b')
+ version('5.1.8', sha256='bf24f8ef427b4a989479b8e4af0b8ae5c54766755f12748e2e88a922c5344ca4')
+
+ depends_on('wxwidgets')
+ depends_on('python@3:', type=('build', 'run'))
+ # py-wxpython needs work
+ # depends_on('py-wxpython', type=('build', 'run'))
+ depends_on('glew')
+ depends_on('gl')
+ depends_on('glm')
+ depends_on('boost@1.56:')
+ depends_on('oce+X11')
+ depends_on('swig', type='build')
+ depends_on('curl')
+ depends_on('pkgconfig')
+ depends_on('git', type=('build', 'run'))
+ depends_on('ngspice')
+ depends_on('hicolor-icon-theme', type=('build', 'run'))
+ depends_on('adwaita-icon-theme', type=('build', 'run'))
+ depends_on('gsettings-desktop-schemas', type=('build', 'run'))
+
+ extends('python')
+
+ resource_list = [
+ # version, resource, sha256sum
+ ('5.1.8', 'footprints', '8937b5ba0f67844ffaca40632bebe9c2f4f17fba446137434aa72363c55d7dd9'),
+ ('5.1.8', 'packages3D', '81e64939e922742431284bb19d1ec274d6dc10fd238e5583ead21dc08876c221'),
+ ('5.1.8', 'symbols', '98cedcca4d7ad6e3be96ec5a41f8f9b3414eae276bac1efdfd3f8871f0f8bc7e'),
+ ('5.1.8', 'templates', 'd64ca82854e9780413447a3fa82a528b264d39f57d467fddfc78f919e7ed15c5'),
+ ('5.1.9', 'footprints', 'a86fbe00fccd6da2d29687ec0c56a9c3cb6b9748ee8fd35c1625839168f28edc'),
+ ('5.1.9', 'packages3D', '35a4888dabd2dedb0d49c3e84b0eebc97b306200510e818dad90d4bb1c9e3296'),
+ ('5.1.9', 'symbols', '6741a7b01f14f1f5aae3155a554816516cf02ce7790074ba8462dee8091f8c2f'),
+ ('5.1.9', 'templates', 'bacf93567f8efe87314762448bb69698c8ed387058c13868c051c91740014aac'),
+ ]
+
+ for ver, lib, checksum in resource_list:
+ resource(when='@{0}'.format(ver),
+ name=lib,
+ url='https://gitlab.com/kicad/libraries/kicad-{0}/-/archive/{1}/kicad-{0}-{1}.tar.bz2'.format(lib, ver),
+ sha256=checksum,
+ destination='',
+ )
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_dependent_run_environment(self, env, dependent_spec):
+ env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
+
+ def setup_build_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
+
+ def setup_run_environment(self, env):
+ env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
+
+ def cmake_args(self):
+ args = []
+ args.append('-DKICAD_SCRIPTING_PYTHON3=ON')
+ args.append('-DKICAD_SCRIPTING_WXPYTHON=OFF')
+ return args
+
+ @run_after('install')
+ def install_libraries(self):
+ for ver, lib, checksum in self.resource_list:
+ if self.spec.version == Version(ver):
+ with working_dir('kicad-{0}-{1}'.format(lib, ver)):
+ args = std_cmake_args
+ cmake(*args)
+ make('install')
diff --git a/var/spack/repos/builtin/packages/kim-api/package.py b/var/spack/repos/builtin/packages/kim-api/package.py
index 7d4af51437..4d437a9c47 100644
--- a/var/spack/repos/builtin/packages/kim-api/package.py
+++ b/var/spack/repos/builtin/packages/kim-api/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,12 +24,13 @@ class KimApi(CMakePackage):
"""
extendable = True
homepage = "https://openkim.org/"
- url = "https://s3.openkim.org/kim-api/kim-api-2.1.3.txz"
+ url = "https://s3.openkim.org/kim-api/kim-api-2.2.1.txz"
git = "https://github.com/openkim/kim-api.git"
maintainers = ['ellio167']
version('develop', branch='devel')
+ version('2.2.1', sha256="1d5a12928f7e885ebe74759222091e48a7e46f77e98d9147e26638c955efbc8e")
version('2.1.3', sha256="88a5416006c65a2940d82fad49de0885aead05bfa8b59f87d287db5516b9c467")
version('2.1.2', sha256="16c7dd362cf95288b6288e1a76caf8baef652eb2cf8af500a5eb4767ba2fe80c")
version('2.1.1', sha256="25c4e83c6caa83a1c4ad480b430f1926fb44813b64f548fdaedc45e310b5f6b9")
@@ -38,3 +39,9 @@ class KimApi(CMakePackage):
# The Fujitsu compiler requires the '--linkfortran'
# option to combine C++ and Fortran programs.
patch('fujitsu_add_link_flags.patch', when='%fj')
+
+ def patch(self):
+ # Remove flags not recognized by the NVIDIA compiler
+ if self.spec.satisfies('%nvhpc'):
+ filter_file('-std=gnu', '',
+ 'examples/simulators/simulator-model-example/CMakeLists.txt')
diff --git a/var/spack/repos/builtin/packages/kinesis/package.py b/var/spack/repos/builtin/packages/kinesis/package.py
index 1a0def0340..a9ea2c9b92 100644
--- a/var/spack/repos/builtin/packages/kinesis/package.py
+++ b/var/spack/repos/builtin/packages/kinesis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kitty/package.py b/var/spack/repos/builtin/packages/kitty/package.py
index 49fb0013cc..cc347541ae 100644
--- a/var/spack/repos/builtin/packages/kitty/package.py
+++ b/var/spack/repos/builtin/packages/kitty/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kmergenie/package.py b/var/spack/repos/builtin/packages/kmergenie/package.py
index 0c7c5150c5..0579254780 100644
--- a/var/spack/repos/builtin/packages/kmergenie/package.py
+++ b/var/spack/repos/builtin/packages/kmergenie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kmod/package.py b/var/spack/repos/builtin/packages/kmod/package.py
index 0ee203e7a2..d455b302b5 100644
--- a/var/spack/repos/builtin/packages/kmod/package.py
+++ b/var/spack/repos/builtin/packages/kmod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,3 +28,9 @@ class Kmod(AutotoolsPackage):
def autoreconf(self, spec, prefix):
bash = which("bash")
bash('autogen.sh')
+
+ def configure_args(self):
+ args = ["--with-bashcompletiondir=" +
+ join_path(self.spec['kmod'].prefix, 'share',
+ 'bash-completion', 'completions')]
+ return args
diff --git a/var/spack/repos/builtin/packages/knem/package.py b/var/spack/repos/builtin/packages/knem/package.py
index def620ab4f..757119017b 100644
--- a/var/spack/repos/builtin/packages/knem/package.py
+++ b/var/spack/repos/builtin/packages/knem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,10 @@ class Knem(AutotoolsPackage):
variant('hwloc', default=True,
description='Enable hwloc in the user-space tools')
+ patch('https://gitlab.inria.fr/knem/knem/-/commit/5c8cb902d6040df58cdc4e4e4c10d1f1426c3525.patch',
+ sha256='78885a02d6f031a793db6a7190549f8d64c8606b353051d65f8e3f802b801902',
+ when='@1.1.4')
+
depends_on('hwloc', when='+hwloc')
depends_on('pkgconfig', type='build', when='+hwloc')
depends_on('autoconf', type='build', when='@master')
diff --git a/var/spack/repos/builtin/packages/kokkos-kernels-legacy/package.py b/var/spack/repos/builtin/packages/kokkos-kernels-legacy/package.py
index 8507f90bf4..bad52ee83e 100644
--- a/var/spack/repos/builtin/packages/kokkos-kernels-legacy/package.py
+++ b/var/spack/repos/builtin/packages/kokkos-kernels-legacy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,9 @@ class KokkosKernelsLegacy(MakefilePackage):
homepage = "https://github.com/kokkos/kokkos-kernels"
url = "https://github.com/kokkos/kokkos-kernels/archive/2.7.00.tar.gz"
- version('2.7.00', sha256='adf4af44eadbdfbeb9ec69dd5fae4e2852bd1fbe4a69213efd199e49f4098254')
- version('2.6.00', sha256='14ebf806f66b9ca73949a478b8d959be7fa1165a640935760a724d7cc0a66335')
- version('2.5.00', sha256='2c2289da3a41dafd97726e90507debafbb9f5e49ca5b0f5c8d1e044a5796f000')
+ version('2.7.00', sha256='adf4af44eadbdfbeb9ec69dd5fae4e2852bd1fbe4a69213efd199e49f4098254', deprecated=True)
+ version('2.6.00', sha256='14ebf806f66b9ca73949a478b8d959be7fa1165a640935760a724d7cc0a66335', deprecated=True)
+ version('2.5.00', sha256='2c2289da3a41dafd97726e90507debafbb9f5e49ca5b0f5c8d1e044a5796f000', deprecated=True)
# make sure kokkos kernels version matches kokkos
depends_on('kokkos-legacy@2.5.00', when='@2.5.00')
diff --git a/var/spack/repos/builtin/packages/kokkos-kernels/package.py b/var/spack/repos/builtin/packages/kokkos-kernels/package.py
index 839a74b474..fd8546910f 100644
--- a/var/spack/repos/builtin/packages/kokkos-kernels/package.py
+++ b/var/spack/repos/builtin/packages/kokkos-kernels/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,6 +28,7 @@ class KokkosKernels(CMakePackage, CudaPackage):
'serial': (False, "enable Serial backend (default)"),
'cuda': (False, "enable Cuda backend"),
'openmp': (False, "enable OpenMP backend"),
+ 'pthread': (False, "enable Pthread backend"),
}
for backend in backends:
diff --git a/var/spack/repos/builtin/packages/kokkos-legacy/package.py b/var/spack/repos/builtin/packages/kokkos-legacy/package.py
index 4b569967a6..87780d1b23 100644
--- a/var/spack/repos/builtin/packages/kokkos-legacy/package.py
+++ b/var/spack/repos/builtin/packages/kokkos-legacy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,19 +14,19 @@ class KokkosLegacy(Package):
url = "https://github.com/kokkos/kokkos/archive/2.03.00.tar.gz"
git = "https://github.com/kokkos/kokkos.git"
- version('2.9.00', sha256='e0621197791ed3a381b4f02c78fa529f3cff3abb74d52157b4add17e8aa04bc4')
- version('2.8.00', sha256='1c72661f2d770517bff98837001b42b9c677d1df29f7493a1d7c008549aff630')
- version('2.7.24', sha256='a308a80ea1488f4c18884b828ce7ae9f5210b9a6b2f61b208d875084d8da8cb0')
- version('2.7.00', sha256='01595996e612ef7410aa42fa265a23101cfe1b6993fa9810ca844db5c89ad765')
- version('2.5.00', sha256='ea232594bf746abb99ae2aafaeef5d07adc089968010a62a88aaa892106d9476')
- version('2.04.11', sha256='f2680aee0169f6cbbec38410f9c80bf8a160435f6a07769c1e9112da8b9349a0')
- version('2.04.04', sha256='5bac8ddc2fac9bc6e01dd40f92ca6cbbb346a25deca5be2fec71acf712d0d0c7')
- version('2.04.00', sha256='b04658d368986df207662a7a37c1ad974c321447bc2c2b5b696d7e9ee4481f34')
- version('2.03.13', sha256='002748bdd0319d5ab82606cf92dc210fc1c05d0607a2e1d5538f60512b029056')
- version('2.03.05', sha256='b18ddaa1496130ff3f675ea9ddbc6df9cdf378d53edf96df89e70ff189e10e1d')
- version('2.03.00', sha256='722bea558d8986efee765ac912febb3c1ce289a8e9bdfef77cd0145df0ea8a3d')
- version('2.02.15', sha256='6b4a7f189f0341f378f950f3c798f520d2e473b13435b137ff3b666e799a076d')
- version('2.02.07', sha256='7b4ac81021d6868f4eb8e2a1cb92ba76bad9c3f197403b8b1eac0f11c983247c')
+ version('2.9.00', sha256='e0621197791ed3a381b4f02c78fa529f3cff3abb74d52157b4add17e8aa04bc4', deprecated=True)
+ version('2.8.00', sha256='1c72661f2d770517bff98837001b42b9c677d1df29f7493a1d7c008549aff630', deprecated=True)
+ version('2.7.24', sha256='a308a80ea1488f4c18884b828ce7ae9f5210b9a6b2f61b208d875084d8da8cb0', deprecated=True)
+ version('2.7.00', sha256='01595996e612ef7410aa42fa265a23101cfe1b6993fa9810ca844db5c89ad765', deprecated=True)
+ version('2.5.00', sha256='ea232594bf746abb99ae2aafaeef5d07adc089968010a62a88aaa892106d9476', deprecated=True)
+ version('2.04.11', sha256='f2680aee0169f6cbbec38410f9c80bf8a160435f6a07769c1e9112da8b9349a0', deprecated=True)
+ version('2.04.04', sha256='5bac8ddc2fac9bc6e01dd40f92ca6cbbb346a25deca5be2fec71acf712d0d0c7', deprecated=True)
+ version('2.04.00', sha256='b04658d368986df207662a7a37c1ad974c321447bc2c2b5b696d7e9ee4481f34', deprecated=True)
+ version('2.03.13', sha256='002748bdd0319d5ab82606cf92dc210fc1c05d0607a2e1d5538f60512b029056', deprecated=True)
+ version('2.03.05', sha256='b18ddaa1496130ff3f675ea9ddbc6df9cdf378d53edf96df89e70ff189e10e1d', deprecated=True)
+ version('2.03.00', sha256='722bea558d8986efee765ac912febb3c1ce289a8e9bdfef77cd0145df0ea8a3d', deprecated=True)
+ version('2.02.15', sha256='6b4a7f189f0341f378f950f3c798f520d2e473b13435b137ff3b666e799a076d', deprecated=True)
+ version('2.02.07', sha256='7b4ac81021d6868f4eb8e2a1cb92ba76bad9c3f197403b8b1eac0f11c983247c', deprecated=True)
variant('debug', default=False, description="Build debug version of Kokkos")
diff --git a/var/spack/repos/builtin/packages/kokkos-nvcc-wrapper/package.py b/var/spack/repos/builtin/packages/kokkos-nvcc-wrapper/package.py
index 729825489a..c496455899 100644
--- a/var/spack/repos/builtin/packages/kokkos-nvcc-wrapper/package.py
+++ b/var/spack/repos/builtin/packages/kokkos-nvcc-wrapper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class KokkosNvccWrapper(Package):
# We no longer maintain this as a separate repo
# Download the Kokkos repo and install from there
homepage = "https://github.com/kokkos/kokkos"
- git = "git@github.com:kokkos/kokkos.git"
+ git = "https://github.com/kokkos/kokkos.git"
url = "https://github.com/kokkos/kokkos/archive/3.1.01.tar.gz"
version('3.2.00', sha256='05e1b4dd1ef383ca56fe577913e1ff31614764e65de6d6f2a163b2bddb60b3e9')
diff --git a/var/spack/repos/builtin/packages/kokkos/package.py b/var/spack/repos/builtin/packages/kokkos/package.py
index b3fdca7821..29bb682a7c 100644
--- a/var/spack/repos/builtin/packages/kokkos/package.py
+++ b/var/spack/repos/builtin/packages/kokkos/package.py
@@ -1,22 +1,27 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os.path
-class Kokkos(CMakePackage, CudaPackage):
+class Kokkos(CMakePackage, CudaPackage, ROCmPackage):
"""Kokkos implements a programming model in C++ for writing performance
portable applications targeting all major HPC platforms."""
homepage = "https://github.com/kokkos/kokkos"
git = "https://github.com/kokkos/kokkos.git"
- url = "https://github.com/kokkos/kokkos/archive/3.1.01.tar.gz"
+ url = "https://github.com/kokkos/kokkos/archive/3.4.00.tar.gz"
- maintainers = ['jjwilke']
+ test_requires_compiler = True
+
+ maintainers = ['jjwilke', 'jciesko']
- version('develop', branch='develop')
version('master', branch='master')
+ version('develop', branch='develop')
+ version('3.4.00', sha256='2e4438f9e4767442d8a55e65d000cc9cde92277d415ab4913a96cd3ad901d317')
+ version('3.3.01', sha256='4919b00bb7b6eb80f6c335a32f98ebe262229d82e72d3bae6dd91aaf3d234c37')
version('3.2.00', sha256='05e1b4dd1ef383ca56fe577913e1ff31614764e65de6d6f2a163b2bddb60b3e9')
version('3.1.01', sha256='ff5024ebe8570887d00246e2793667e0d796b08c77a8227fe271127d36eec9dd')
version('3.1.00', sha256="b935c9b780e7330bcb80809992caa2b66fd387e3a1c261c955d622dae857d878")
@@ -29,9 +34,11 @@ class Kokkos(CMakePackage, CudaPackage):
'openmp': [False, 'Whether to build OpenMP backend'],
'pthread': [False, 'Whether to build Pthread backend'],
'serial': [True, 'Whether to build serial backend'],
- 'hip': [False, 'Whether to build HIP backend'],
+ 'rocm': [False, 'Whether to build HIP backend'],
+ 'sycl': [False, 'Whether to build the SYCL backend'],
}
- conflicts("+hip", when="@:3.0")
+ conflicts("+rocm", when="@:3.0")
+ conflicts("+sycl", when="@:3.3")
tpls_variants = {
'hpx': [False, 'Whether to enable the HPX library'],
@@ -66,22 +73,14 @@ class Kokkos(CMakePackage, CudaPackage):
'Whether HPX supports asynchronous dispath'],
'profiling': [True,
'Create bindings for profiling tools'],
+ 'tuning': [False,
+ 'Create bindings for tuning tools'],
'profiling_load_print': [False,
'Print which profiling tools got loaded'],
'qthread': [False, 'Eenable the QTHREAD library'],
'tests': [False, 'Build for tests'],
}
- amd_gpu_arches = (
- 'fiji',
- 'gfx901',
- 'vega900',
- 'vega906',
- )
- variant("amd_gpu_arch", default='none', values=('none',) + amd_gpu_arches,
- description="AMD GPU architecture")
- conflicts("+hip", when="amd_gpu_arch=none")
-
spack_micro_arch_map = {
"graviton": "",
"graviton2": "",
@@ -148,10 +147,25 @@ class Kokkos(CMakePackage, CudaPackage):
"70": 'volta70',
"72": 'volta72',
"75": 'turing75',
+ "80": 'ampere80',
}
cuda_arches = spack_cuda_arch_map.values()
conflicts("+cuda", when="cuda_arch=none")
+ amdgpu_arch_map = {
+ 'gfx900': 'vega900',
+ 'gfx906': 'vega906',
+ 'gfx908': 'vega908'
+ }
+ amd_support_conflict_msg = (
+ '{0} is not supported; '
+ 'Kokkos supports the following AMD GPU targets: '
+ + ', '.join(amdgpu_arch_map.keys()))
+ for arch in ROCmPackage.amdgpu_targets:
+ if arch not in amdgpu_arch_map:
+ conflicts('+rocm', when='amdgpu_target={0}'.format(arch),
+ msg=amd_support_conflict_msg.format(arch))
+
devices_values = list(devices_variants.keys())
for dev in devices_variants:
dflt, desc = devices_variants[dev]
@@ -178,7 +192,7 @@ class Kokkos(CMakePackage, CudaPackage):
depends_on("kokkos-nvcc-wrapper@master", when="@master+wrapper")
conflicts("+wrapper", when="~cuda")
- variant("std", default="11", values=["11", "14", "17", "20"], multi=False)
+ variant("std", default="14", values=["11", "14", "17", "20"], multi=False)
variant("pic", default=False, description="Build position independent code")
# nvcc does not currently work with C++17 or C++20
@@ -188,8 +202,10 @@ class Kokkos(CMakePackage, CudaPackage):
variant('shared', default=True, description='Build shared libraries')
def append_args(self, cmake_prefix, cmake_options, spack_options):
- for opt in cmake_options:
- enablestr = "+%s" % opt
+ variant_to_cmake_option = {'rocm': 'hip'}
+ for variant_name in cmake_options:
+ enablestr = "+%s" % variant_name
+ opt = variant_to_cmake_option.get(variant_name, variant_name)
optuc = opt.upper()
optname = "Kokkos_%s_%s" % (cmake_prefix, optuc)
option = None
@@ -211,6 +227,11 @@ class Kokkos(CMakePackage, CudaPackage):
def cmake_args(self):
spec = self.spec
+
+ if spec.satisfies('~wrapper+cuda') and not spec.satisfies('%clang'):
+ raise InstallError("Kokkos requires +wrapper when using +cuda"
+ "without clang")
+
options = []
isdiy = "+diy" in spec
@@ -227,14 +248,22 @@ class Kokkos(CMakePackage, CudaPackage):
if not cuda_arch == "none":
kokkos_arch_name = self.spack_cuda_arch_map[cuda_arch]
spack_microarches.append(kokkos_arch_name)
+
kokkos_microarch_name = self.spack_micro_arch_map[spec.target.name]
if kokkos_microarch_name:
spack_microarches.append(kokkos_microarch_name)
- for arch in self.amd_gpu_arches:
- keyval = "amd_gpu_arch=%s" % arch
- if keyval in spec:
- spack_microarches.append(arch)
+ if "+rocm" in spec:
+ for amdgpu_target in spec.variants['amdgpu_target'].value:
+ if amdgpu_target != "none":
+ if amdgpu_target in self.amdgpu_arch_map:
+ spack_microarches.append(
+ self.amdgpu_arch_map[amdgpu_target])
+ else:
+ # Note that conflict declarations should prevent
+ # choosing an unsupported AMD GPU target
+ raise SpackError("Unsupported target: {0}".format(
+ amdgpu_target))
for arch in spack_microarches:
options.append("-DKokkos_ARCH_%s=ON" % arch.upper())
@@ -248,13 +277,12 @@ class Kokkos(CMakePackage, CudaPackage):
if var in self.spec:
options.append("-D%s_DIR=%s" % (tpl, spec[tpl].prefix))
- # we do not need the compiler wrapper from Spack
- # set the compiler explicitly (may be Spack wrapper or nvcc-wrapper)
- try:
+ if '+rocm' in self.spec:
+ options.append('-DCMAKE_CXX_COMPILER=%s' %
+ self.spec['hip'].hipcc)
+ elif '+wrapper' in self.spec:
options.append("-DCMAKE_CXX_COMPILER=%s" %
self.spec["kokkos-nvcc-wrapper"].kokkos_cxx)
- except Exception:
- options.append("-DCMAKE_CXX_COMPILER=%s" % spack_cxx)
# Set the C++ standard to use
options.append("-DKokkos_CXX_STANDARD=%s" %
@@ -263,3 +291,48 @@ class Kokkos(CMakePackage, CudaPackage):
options.append('-DBUILD_SHARED_LIBS=%s' % ('+shared' in self.spec))
return options
+
+ test_script_relative_path = "scripts/spack_test"
+
+ @run_after('install')
+ def setup_build_tests(self):
+ # Skip if unsupported version
+ cmake_source_path = join_path(self.stage.source_path,
+ self.test_script_relative_path)
+ if not os.path.exists(cmake_source_path):
+ return
+ """Copy test."""
+ cmake_out_path = join_path(self.test_script_relative_path, 'out')
+ cmake_args = [cmake_source_path,
+ "-DSPACK_PACKAGE_SOURCE_DIR:PATH={0}".
+ format(self.stage.source_path),
+ "-DSPACK_PACKAGE_TEST_ROOT_DIR:PATH={0}".
+ format(join_path(self.install_test_root, cmake_out_path)),
+ "-DSPACK_PACKAGE_INSTALL_DIR:PATH={0}".format(self.prefix)]
+ cmake(*cmake_args)
+ self.cache_extra_test_sources(cmake_out_path)
+
+ def build_tests(self):
+ """Build test."""
+ cmake_path = join_path(self.install_test_root,
+ self.test_script_relative_path, 'out')
+ cmake_args = [cmake_path, '-DEXECUTABLE_OUTPUT_PATH=' + cmake_path]
+ cmake(*cmake_args)
+ make()
+
+ def run_tests(self):
+ """Run test."""
+ reason = 'Checking ability to execute.'
+ run_path = join_path(self.install_test_root,
+ self.test_script_relative_path, 'out')
+ self.run_test('make', [run_path, 'test'], [], installed=False, purpose=reason)
+
+ def test(self):
+ # Skip if unsupported version
+ cmake_path = join_path(self.install_test_root,
+ self.test_script_relative_path, 'out')
+ if not os.path.exists(cmake_path):
+ print('Skipping smoke tests: {0} is missing'.format(cmake_path))
+ return
+ self.build_tests()
+ self.run_tests()
diff --git a/var/spack/repos/builtin/packages/kraken/package.py b/var/spack/repos/builtin/packages/kraken/package.py
index e798e540cd..9c78563b19 100644
--- a/var/spack/repos/builtin/packages/kraken/package.py
+++ b/var/spack/repos/builtin/packages/kraken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kraken2/package.py b/var/spack/repos/builtin/packages/kraken2/package.py
index e970752ad2..95463042aa 100644
--- a/var/spack/repos/builtin/packages/kraken2/package.py
+++ b/var/spack/repos/builtin/packages/kraken2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,10 +13,11 @@ class Kraken2(Package):
sequences, usually obtained through metagenomic studies."""
homepage = "https://ccb.jhu.edu/software/kraken2/"
- url = "https://github.com/DerrickWood/kraken2/archive/v2.0.8-beta.tar.gz"
+ url = "https://github.com/DerrickWood/kraken2/archive/v2.1.1.tar.gz"
maintainers = ['rberg2']
+ version('2.1.1', sha256='8f3e928cdb32b9e8e6f55b44703d1557b2a5fc3f30f63e8d16e465e19a81dee4')
version('2.0.8-beta', sha256='f2a91fc57a40b3e87df8ac2ea7c0ff1060cc9295c95de417ee53249ee3f7ad8e')
version('2.0.7-beta', sha256='baa160f5aef73327e1a79e6d1c54b64b2fcdaee0be31b456f7bc411d1897a744')
version('2.0.6-beta', sha256='d77db6251179c4d7e16bc9b5e5e9043d25acf81f3e32ad6eadfba829a31e1d09')
diff --git a/var/spack/repos/builtin/packages/krb5/mit-krb5-1.17-static-libs.patch b/var/spack/repos/builtin/packages/krb5/mit-krb5-1.17-static-libs.patch
new file mode 100644
index 0000000000..cdf0a097b4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/krb5/mit-krb5-1.17-static-libs.patch
@@ -0,0 +1,15 @@
+--- src/lib/crypto/builtin/aes/Makefile.in.orig 2019-06-27 14:51:51.305688932 +0200
++++ src/lib/crypto/builtin/aes/Makefile.in 2019-06-27 14:52:46.428203235 +0200
+@@ -34,10 +34,10 @@
+
+ all-unix: all-libobjs # aes-gen
+
+-iaesx64@SHOBJEXT@: $(srcdir)/iaesx64.s
++iaesx64.$(OBJEXT) iaesx64@SHOBJEXT@: $(srcdir)/iaesx64.s
+ $(YASM) $(AESNI_FLAGS) -o $@ $(srcdir)/iaesx64.s
+
+-iaesx86@SHOBJEXT@: $(srcdir)/iaesx86.s
++iaesx86.$(OBJEXT) iaesx86@SHOBJEXT@: $(srcdir)/iaesx86.s
+ $(YASM) $(AESNI_FLAGS) -o $@ $(srcdir)/iaesx86.s
+
+ includes: depend
diff --git a/var/spack/repos/builtin/packages/krb5/package.py b/var/spack/repos/builtin/packages/krb5/package.py
index bdc99e1059..a082c8b728 100644
--- a/var/spack/repos/builtin/packages/krb5/package.py
+++ b/var/spack/repos/builtin/packages/krb5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,12 @@ class Krb5(AutotoolsPackage):
depends_on('bison', type='build')
depends_on('openssl')
+ variant(
+ 'shared', default=True,
+ description='install shared libraries if True, static if false'
+ )
+ patch('mit-krb5-1.17-static-libs.patch', level=0)
+
configure_directory = 'src'
build_directory = 'src'
@@ -51,4 +57,12 @@ class Krb5(AutotoolsPackage):
string=True)
def configure_args(self):
- return ['--without-system-verto']
+ args = ['--without-system-verto']
+
+ if '~shared' in self.spec:
+ args.append('--enable-static')
+ args.append('--disable-shared')
+ else:
+ args.append('--disable-static')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/krims/package.py b/var/spack/repos/builtin/packages/krims/package.py
index 8b0048b810..770c9b5f71 100644
--- a/var/spack/repos/builtin/packages/krims/package.py
+++ b/var/spack/repos/builtin/packages/krims/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kripke/package.py b/var/spack/repos/builtin/packages/kripke/package.py
index 86a347c66a..15a95bbc73 100644
--- a/var/spack/repos/builtin/packages/kripke/package.py
+++ b/var/spack/repos/builtin/packages/kripke/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kubernetes/package.py b/var/spack/repos/builtin/packages/kubernetes/package.py
index 5af5f6e67d..adada4d0f4 100644
--- a/var/spack/repos/builtin/packages/kubernetes/package.py
+++ b/var/spack/repos/builtin/packages/kubernetes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kvasir-mpl/package.py b/var/spack/repos/builtin/packages/kvasir-mpl/package.py
index 7d0b23fd8b..36cf4ef7e1 100644
--- a/var/spack/repos/builtin/packages/kvasir-mpl/package.py
+++ b/var/spack/repos/builtin/packages/kvasir-mpl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/kvtree/package.py b/var/spack/repos/builtin/packages/kvtree/package.py
index 40e57ed0ee..98b025ecb8 100644
--- a/var/spack/repos/builtin/packages/kvtree/package.py
+++ b/var/spack/repos/builtin/packages/kvtree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,17 +11,31 @@ class Kvtree(CMakePackage):
hashes."""
homepage = "https://github.com/ecp-veloc/KVTree"
- url = "https://github.com/ecp-veloc/KVTree/archive/v1.0.2.zip"
+ url = "https://github.com/ecp-veloc/KVTree/archive/v1.1.1.tar.gz"
git = "https://github.com/ecp-veloc/kvtree.git"
tags = ['ecp']
version('master', branch='master')
- version('1.0.2', sha256='6b54f4658e5ebab747c0c2472b1505ac1905eefc8a0b2a97d8776f800ee737a3')
+ version('1.1.1', sha256='4776bd55a559b7f9bb594454ae6b14ebff0087c93c3d59ac7d1ab27df4aa4d74')
+ version('1.1.0', sha256='3e6c003e7b8094d7c2d1529a973d68a68f953ffa63dcde5f4c7c7e81ddf06564')
+ version('1.0.3', sha256='c742cdb1241ef4cb13767019204d5350a3c4383384bed9fb66680b93ff44b0d4')
+ version('1.0.2', sha256='56fb5b747758c24a907a8380e8748d296900d94de9547bc15f6b427ac4ae2ec4')
variant('mpi', default=True, description="Build with MPI message packing")
depends_on('mpi', when='+mpi')
+ variant('file_lock', default='FLOCK',
+ values=('FLOCK', 'FNCTL', 'NONE'),
+ multi=False,
+ description='File locking style for KVTree.')
+
+ def flag_handler(self, name, flags):
+ if self.spec.satisfies('%cce'):
+ if name == 'ldflags':
+ flags.append('-Wl,-z,muldefs')
+ return (flags, None, None)
+
def cmake_args(self):
args = []
if self.spec.satisfies('+mpi'):
@@ -29,6 +43,10 @@ class Kvtree(CMakePackage):
args.append("-DMPI_C_COMPILER=%s" % self.spec['mpi'].mpicc)
else:
args.append("-DMPI=OFF")
+
+ args.append('-DKVTREE_FILE_LOCK={0}'.format(
+ self.spec.variants['file_lock'].value.upper()))
+
if self.spec.satisfies('platform=cray'):
args.append("-DKVTREE_LINK_STATIC=ON")
return args
diff --git a/var/spack/repos/builtin/packages/kylin/package.py b/var/spack/repos/builtin/packages/kylin/package.py
index 40223e845c..0b3f9c5f5b 100644
--- a/var/spack/repos/builtin/packages/kylin/package.py
+++ b/var/spack/repos/builtin/packages/kylin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ladot/package.py b/var/spack/repos/builtin/packages/ladot/package.py
index b3c2922a91..aa0c761d02 100644
--- a/var/spack/repos/builtin/packages/ladot/package.py
+++ b/var/spack/repos/builtin/packages/ladot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/laghos/package.py b/var/spack/repos/builtin/packages/laghos/package.py
index e5a828dbe8..03dd7ca4ab 100644
--- a/var/spack/repos/builtin/packages/laghos/package.py
+++ b/var/spack/repos/builtin/packages/laghos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lame/package.py b/var/spack/repos/builtin/packages/lame/package.py
index 772fb4c01b..0c51f4c75b 100644
--- a/var/spack/repos/builtin/packages/lame/package.py
+++ b/var/spack/repos/builtin/packages/lame/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lammps/package.py b/var/spack/repos/builtin/packages/lammps/package.py
index 5f96f150c7..3aeb584bf6 100644
--- a/var/spack/repos/builtin/packages/lammps/package.py
+++ b/var/spack/repos/builtin/packages/lammps/package.py
@@ -1,8 +1,7 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
from spack import *
import datetime as dt
@@ -21,6 +20,8 @@ class Lammps(CMakePackage, CudaPackage):
tags = ['ecp', 'ecp-apps']
version('master', branch='master')
+ version('20210310', sha256='25708378dbeccf794bc5045aceb84380bf4a3ca03fc8e5d150a26ca88d371474')
+ version('20201029', sha256='759705e16c1fedd6aa6e07d028cc0c78d73c76b76736668420946a74050c3726')
version('20200721', sha256='845bfeddb7b667799a1a5dbc166b397d714c3d2720316604a979d3465b4190a9')
version('20200630', sha256='413cbfabcc1541a339c7a4ab5693fbeb768f46bb1250640ba94686c6e90922fc')
version('20200505', sha256='c49d77fd602d28ebd8cf10f7359b9fc4d14668c72039028ed7792453d416de73')
@@ -60,11 +61,19 @@ class Lammps(CMakePackage, CudaPackage):
supported_packages = ['asphere', 'body', 'class2', 'colloid', 'compress',
'coreshell', 'dipole', 'granular', 'kspace',
'kokkos', 'latte', 'manybody', 'mc', 'meam', 'misc',
- 'molecule', 'mpiio', 'peri', 'poems', 'python',
- 'qeq', 'replica', 'rigid', 'shock', 'snap', 'spin',
- 'srd', 'user-atc', 'user-h5md', 'user-lb',
- 'user-meamc', 'user-misc', 'user-netcdf', 'user-omp',
- 'user-reaxc', 'voronoi']
+ 'mliap', 'molecule', 'mpiio', 'opt', 'peri', 'poems',
+ 'python', 'qeq', 'replica', 'rigid', 'shock', 'snap',
+ 'spin', 'srd', 'user-atc', 'user-adios',
+ 'user-awpmd', 'user-bocs', 'user-cgsdk',
+ 'user-colvars', 'user-diffraction', 'user-dpd',
+ 'user-drude', 'user-eff', 'user-fep', 'user-h5md',
+ 'user-lb', 'user-manifold', 'user-meamc',
+ 'user-mesodpd', 'user-mesont', 'user-mgpt',
+ 'user-misc', 'user-mofff', 'user-netcdf', 'user-omp',
+ 'user-phonon', 'user-plumed', 'user-ptm', 'user-qtb',
+ 'user-reaction', 'user-reaxc', 'user-sdpd',
+ 'user-smd', 'user-smtbq', 'user-sph', 'user-tally',
+ 'user-uef', 'user-yaff', 'voronoi']
for pkg in supported_packages:
variant(pkg, default=False,
@@ -79,6 +88,8 @@ class Lammps(CMakePackage, CudaPackage):
description='Build with png support')
variant('ffmpeg', default=True,
description='Build with ffmpeg support')
+ variant('kim', default=True,
+ description='Build with KIM support')
variant('openmp', default=True, description='Build with OpenMP')
variant('opencl', default=False, description='Build with OpenCL')
variant('exceptions', default=False,
@@ -95,7 +106,6 @@ class Lammps(CMakePackage, CudaPackage):
depends_on('blas', when='+user-atc')
depends_on('lapack', when='+user-atc')
depends_on('opencl', when='+opencl')
-
depends_on('latte@1.0.1', when='@:20180222+latte')
depends_on('latte@1.1.1:', when='@20180316:20180628+latte')
depends_on('latte@1.2.1:', when='@20180629:20200505+latte')
@@ -107,10 +117,14 @@ class Lammps(CMakePackage, CudaPackage):
depends_on('mpi', when='+user-h5md')
depends_on('hdf5', when='+user-h5md')
depends_on('jpeg', when='+jpeg')
+ depends_on('kim-api', when='+kim')
depends_on('libpng', when='+png')
depends_on('ffmpeg', when='+ffmpeg')
depends_on('kokkos+deprecated_code+shared@3.0', when='@20200303+kokkos')
depends_on('kokkos+shared@3.1:', when='@20200505:+kokkos')
+ depends_on('adios2', when='+user-adios')
+ depends_on('plumed', when='+user-plumed')
+ depends_on('eigen@3:', when='+user-smd')
conflicts('+cuda', when='+opencl')
conflicts('+body', when='+poems@:20180628')
@@ -123,11 +137,28 @@ class Lammps(CMakePackage, CudaPackage):
conflicts('+user-misc', when='~manybody')
conflicts('%gcc@9:', when='@:20200303+openmp')
conflicts('+kokkos', when='@:20200227')
- conflicts('+meam', when='@20181212:')
- conflicts('+user-meamc', when='@:20181212')
+ conflicts(
+ '+meam', when='@20181212:',
+ msg='+meam was removed after @20181212, use +user-meamc instead')
+ conflicts(
+ '+user-meamc', when='@:20181212',
+ msg='+user-meamc only added @20181212, use +meam instead')
+ conflicts(
+ '+user-reaction', when='@:20200303',
+ msg='+user-reaction only supported for version 20200505 and later')
+ conflicts('+mliap', when='~snap')
+ conflicts(
+ '+user-adios +mpi', when='^adios2~mpi',
+ msg='With +user-adios, mpi setting for adios2 and lammps must be the same')
+ conflicts(
+ '+user-adios ~mpi', when='^adios2+mpi',
+ msg='With +user-adios, mpi setting for adios2 and lammps must be the same')
patch("lib.patch", when="@20170901")
patch("660.patch", when="@20170922")
+ patch("https://github.com/lammps/lammps/commit/562300996285fdec4ef74542383276898555af06.patch",
+ sha256="7e1610dad4d8203b45ca6dc2c1f97d02a40f98a5e9778f51a3dbcc30ea1dc717",
+ when="@20200721 +cuda")
root_cmakelists_dir = 'cmake'
@@ -141,15 +172,12 @@ class Lammps(CMakePackage, CudaPackage):
pkg_prefix = 'PKG'
args = [
- '-DBUILD_SHARED_LIBS={0}'.format(
- 'ON' if '+lib' in spec else 'OFF'),
- '-DLAMMPS_EXCEPTIONS={0}'.format(
- 'ON' if '+exceptions' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'lib'),
+ self.define_from_variant('LAMMPS_EXCEPTIONS', 'exceptions'),
'-D{0}_MPI={1}'.format(
mpi_prefix,
'ON' if '+mpi' in spec else 'OFF'),
- '-DBUILD_OMP={0}'.format(
- 'ON' if '+openmp' in spec else 'OFF'),
+ self.define_from_variant('BUILD_OMP', 'openmp'),
]
if spec.satisfies('+cuda'):
args.append('-DPKG_GPU=ON')
@@ -157,8 +185,7 @@ class Lammps(CMakePackage, CudaPackage):
cuda_arch = spec.variants['cuda_arch'].value
if cuda_arch != 'none':
args.append('-DGPU_ARCH=sm_{0}'.format(cuda_arch[0]))
- args.append('-DCUDA_MPS_SUPPORT={0}'.format(
- 'ON' if '+cuda_mps' in spec else 'OFF'))
+ args.append(self.define_from_variant('CUDA_MPS_SUPPORT', 'cuda_mps'))
elif spec.satisfies('+opencl'):
args.append('-DPKG_GPU=ON')
args.append('-DGPU_API=opencl')
@@ -168,12 +195,9 @@ class Lammps(CMakePackage, CudaPackage):
if spec.satisfies('@20180629:+lib'):
args.append('-DBUILD_LIB=ON')
- args.append('-DWITH_JPEG={0}'.format(
- 'ON' if '+jpeg' in spec else 'OFF'))
- args.append('-DWITH_PNG={0}'.format(
- 'ON' if '+png' in spec else 'OFF'))
- args.append('-DWITH_FFMPEG={0}'.format(
- 'ON' if '+ffmpeg' in spec else 'OFF'))
+ args.append(self.define_from_variant('WITH_JPEG', 'jpeg'))
+ args.append(self.define_from_variant('WITH_PNG', 'png'))
+ args.append(self.define_from_variant('WITH_FFMPEG', 'ffmpeg'))
for pkg in self.supported_packages:
opt = '-D{0}_{1}'.format(pkg_prefix, pkg.upper())
@@ -181,13 +205,33 @@ class Lammps(CMakePackage, CudaPackage):
args.append('{0}=ON'.format(opt))
else:
args.append('{0}=OFF'.format(opt))
+ if '+kim' in spec:
+ args.append('-DPKG_KIM=ON')
if '+kspace' in spec:
if '^fftw' in spec:
args.append('-DFFT=FFTW3')
if '^mkl' in spec:
args.append('-DFFT=MKL')
+ if '^amdfftw' in spec:
+ fftw_prefix = spec['amdfftw'].prefix
+ args.append('-DFFTW_HOME={0}'.format(fftw_prefix))
+ args.append('-DFFTW_INCLUDE_DIRS={0}'
+ .format(fftw_prefix.include))
+ args.append('-DFFTW_LIBRARY_DIRS={0}'.format(fftw_prefix.lib))
if '+kokkos' in spec:
args.append('-DEXTERNAL_KOKKOS=ON')
+ if '+user-adios' in spec:
+ args.append('-DADIOS2_DIR={0}'.format(self.spec['adios2'].prefix))
+ if '+user-plumed' in spec:
+ args.append('-DDOWNLOAD_PLUMED=no')
+ if '+shared' in self.spec['plumed']:
+ args.append('-DPLUMED_MODE=shared')
+ else:
+ args.append('-DPLUMED_MODE=static')
+ if '+user-smd' in spec:
+ args.append('-DDOWNLOAD_EIGEN3=no')
+ args.append('-DEIGEN3_INCLUDE_DIR={0}'.format(
+ self.spec['eigen'].prefix.include))
return args
diff --git a/var/spack/repos/builtin/packages/lapackpp/package.py b/var/spack/repos/builtin/packages/lapackpp/package.py
index ebb3316b37..155ee379ab 100644
--- a/var/spack/repos/builtin/packages/lapackpp/package.py
+++ b/var/spack/repos/builtin/packages/lapackpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,6 +6,16 @@
from spack import *
import os
+# Each LAPACK++ version requires a specific BLAS++ version
+_versions = [
+ # LAPACK++, BLAS++
+ ['master', 'master'],
+ ['2020.10.00', '2020.10.00'],
+ ['2020.10.01', '2020.10.01'],
+ ['2020.10.02', '2020.10.02'],
+ ['2021.04.00', '2021.04.01:'], # or later
+]
+
class Lapackpp(CMakePackage):
"""LAPACK++: C++ API for the LAPACK Linear Algebra Package. Developed
@@ -18,16 +28,17 @@ class Lapackpp(CMakePackage):
maintainers = ['teonnik', 'Sely85', 'G-Ragghianti', 'mgates3']
version('master', branch='master')
+ version('2021.04.00', sha256='67abd8de9757dba86eb5d154cdb91f176b6c8b2b7d8e2a669ba0c221c4bb60ed')
version('2020.10.02', sha256='8dde9b95d75b494c4f8b893d68034e95b7a7541981359acb97b6c1c4a9c45cd9')
version('2020.10.01', sha256='ecd659730b4c3cfb8d2595f9bbb6af65d96b79397db654f17fe045bdfea841c0')
version('2020.10.00', sha256='5f6ab3bd3794711818a3a50198efd29571520bf455e13ffa8ba50fa8376d7d1a')
variant('shared', default=True, description='Build shared library')
- # Needs to compile against a matching blaspp version
- depends_on('blaspp')
- for ver in ['master', '2020.10.02', '2020.10.01', '2020.10.00']:
- depends_on('blaspp@' + ver, when='@' + ver)
+ # Match each LAPACK++ version to a specific BLAS++ version
+ for (lpp_ver, bpp_ver) in _versions:
+ depends_on('blaspp@' + bpp_ver, when='@' + lpp_ver)
+
depends_on('blas')
depends_on('lapack')
@@ -42,6 +53,7 @@ class Lapackpp(CMakePackage):
def check(self):
# If the tester fails to build, ensure that the check() fails.
if os.path.isfile(join_path(self.build_directory, 'test', 'tester')):
- make('check')
+ with working_dir(self.build_directory):
+ make('check')
else:
raise Exception('The tester was not built!')
diff --git a/var/spack/repos/builtin/packages/last/package.py b/var/spack/repos/builtin/packages/last/package.py
index 9e6d1c49c3..10c37ec04c 100644
--- a/var/spack/repos/builtin/packages/last/package.py
+++ b/var/spack/repos/builtin/packages/last/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lastz/package.py b/var/spack/repos/builtin/packages/lastz/package.py
index 4b0431b2e9..be28c289b6 100644
--- a/var/spack/repos/builtin/packages/lastz/package.py
+++ b/var/spack/repos/builtin/packages/lastz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/laszip/package.py b/var/spack/repos/builtin/packages/laszip/package.py
index 57f349a2e1..e0484c6089 100644
--- a/var/spack/repos/builtin/packages/laszip/package.py
+++ b/var/spack/repos/builtin/packages/laszip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/latte/package.py b/var/spack/repos/builtin/packages/latte/package.py
index d67f98397e..6bda084045 100644
--- a/var/spack/repos/builtin/packages/latte/package.py
+++ b/var/spack/repos/builtin/packages/latte/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/launchmon/package.py b/var/spack/repos/builtin/packages/launchmon/package.py
index 3115e63b55..19342d47a4 100644
--- a/var/spack/repos/builtin/packages/launchmon/package.py
+++ b/var/spack/repos/builtin/packages/launchmon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Launchmon(AutotoolsPackage):
homepage = "https://github.com/LLNL/LaunchMON"
url = "https://github.com/LLNL/LaunchMON/releases/download/v1.0.2/launchmon-v1.0.2.tar.gz"
git = "https://github.com/llnl/launchmon.git"
+ maintainers = ['lee218llnl']
version('master', branch='master')
version('1.0.2', sha256='1d301ccccfe0873efcd66da87ed5e4d7bafc560b00aee396d8a9365f53b3a33a')
diff --git a/var/spack/repos/builtin/packages/lazyten/package.py b/var/spack/repos/builtin/packages/lazyten/package.py
index b9a7b6cfa1..00e6a0be39 100644
--- a/var/spack/repos/builtin/packages/lazyten/package.py
+++ b/var/spack/repos/builtin/packages/lazyten/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lbann/package.py b/var/spack/repos/builtin/packages/lbann/package.py
index 11c4ed2f1a..bffd23f21b 100644
--- a/var/spack/repos/builtin/packages/lbann/package.py
+++ b/var/spack/repos/builtin/packages/lbann/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,11 @@ import os
from spack import *
-class Lbann(CMakePackage, CudaPackage):
+class Lbann(CMakePackage, CudaPackage, ROCmPackage):
"""LBANN: Livermore Big Artificial Neural Network Toolkit. A distributed
memory, HPC-optimized, model and data parallel training toolkit for deep
- neural networks."""
+ neural networks.
+ """
homepage = "http://software.llnl.gov/lbann/"
url = "https://github.com/LLNL/lbann/archive/v0.91.tar.gz"
@@ -33,31 +34,71 @@ class Lbann(CMakePackage, CudaPackage):
version('0.92', sha256='9187c5bcbc562c2828fe619d53884ab80afb1bcd627a817edb935b80affe7b84')
version('0.91', sha256='b69f470829f434f266119a33695592f74802cff4b76b37022db00ab32de322f5')
- variant('opencv', default=True, description='Builds with support for image processing routines with OpenCV')
- variant('seq_init', default=False, description='Force serial initialization of weight matrices.')
- variant('dtype', default='float',
- description='Type for floating point representation of weights',
- values=('float', 'double'))
+ variant('al', default=True, description='Builds with support for Aluminum Library')
variant('build_type', default='Release',
description='The build type to build',
values=('Debug', 'Release'))
- variant('al', default=True, description='Builds with support for Aluminum Library')
variant('conduit', default=True,
description='Builds with support for Conduit Library '
'(note that for v0.99 conduit is required)')
- variant('half', default=False,
- description='Builds with support for FP16 precision data types')
- variant('dihydrogen', default=False,
+ variant('deterministic', default=False,
+ description='Builds with support for deterministic execution')
+ variant('dihydrogen', default=True,
description='Builds with support for DiHydrogen Tensor Library')
variant('distconv', default=False,
description='Builds with support for spatial, filter, or channel '
'distributed convolutions')
-
- variant('vtune', default=False, description='Builds with support for Intel VTune')
variant('docs', default=False, description='Builds with support for building documentation')
+ variant('dtype', default='float',
+ description='Type for floating point representation of weights',
+ values=('float', 'double'))
variant('extras', default=False, description='Add python modules for LBANN related tools')
-
+ variant('fft', default=False, description='Support for FFT operations')
+ variant('half', default=False,
+ description='Builds with support for FP16 precision data types')
+ variant('hwloc', default=True, description='Add support for topology aware algorithms')
+ variant('nvprof', default=False, description='Build with region annotations for NVPROF')
+ variant('numpy', default=False,
+ description='Builds with support for processing NumPy data files')
+ variant('vision', default=False,
+ description='Builds with support for image processing data with OpenCV')
+ variant('vtune', default=False, description='Builds with support for Intel VTune')
+ variant('onednn', default=False, description='Support for OneDNN')
+ variant('nvshmem', default=False, description='Support for NVSHMEM')
+ variant('python', default=True, description='Support for Python extensions (e.g. Data Reader)')
+ variant('pfe', default=True, description='Python Frontend for generating and launching models')
+ variant('boost', default=False, description='Enable callbacks that use Boost libraries')
+
+ # LBANN benefits from high performance linkers, but passing these in as command
+ # line options forces the linker flags to unnecessarily propagate to all
+ # dependent packages. Don't include gold or lld as dependencies
+ variant('gold', default=False, description='Use gold high performance linker')
+ variant("lld", default=False, description="Use lld high performance linker")
+ # Don't expose this a dependency until Spack can find the external properly
+ # depends_on('binutils+gold', type='build', when='+gold')
+
+ # Variant Conflicts
conflicts('@:0.90,0.99:', when='~conduit')
+ conflicts('@0.90:0.101.99', when='+fft')
+ conflicts('@:0.90,0.101.99:', when='~dihydrogen')
+ conflicts('~cuda', when='+nvprof')
+ conflicts('~hwloc', when='+al')
+ conflicts('~cuda', when='+nvshmem')
+ conflicts('+cuda', when='+rocm', msg='CUDA and ROCm support are mutually exclusive')
+ conflicts('+extras', when='~pfe', msg='Python extras require the Python front end support')
+
+ conflicts('~vision', when='@0.91:0.101')
+ conflicts('~numpy', when='@0.91:0.101')
+ conflicts('~python', when='@0.91:0.101')
+ conflicts('~pfe', when='@0.91:0.101')
+
+ for comp in spack.compilers.supported_compilers():
+ if comp != 'clang':
+ conflicts('+lld', when='%' + comp)
+
+ conflicts("+lld", when="+gold")
+ conflicts('+gold', when='platform=darwin', msg="gold does not work on Darwin")
+ conflicts('+lld', when='platform=darwin', msg="lld does not work on Darwin")
depends_on('cmake@3.17.0:', type='build')
@@ -74,6 +115,8 @@ class Lbann(CMakePackage, CudaPackage):
depends_on('hydrogen +cuda', when='+cuda')
depends_on('hydrogen ~half', when='~half')
depends_on('hydrogen +half', when='+half')
+ depends_on('hydrogen ~rocm', when='~rocm')
+ depends_on('hydrogen +rocm', when='+rocm')
depends_on('hydrogen build_type=Debug', when='build_type=Debug')
# Older versions depended on Elemental not Hydrogen
@@ -84,64 +127,95 @@ class Lbann(CMakePackage, CudaPackage):
# Specify the correct version of Aluminum
depends_on('aluminum@:0.3.99', when='@0.95:0.100 +al')
depends_on('aluminum@0.4:0.4.99', when='@0.101:0.101.99 +al')
- depends_on('aluminum@0.5:', when='@:0.90,0.102: +al')
+ depends_on('aluminum@0.5.0:', when='@:0.90,0.102: +al')
# Add Aluminum variants
depends_on('aluminum +cuda +nccl +ht +cuda_rma', when='+al +cuda')
+ depends_on('aluminum +rocm +rccl +ht', when='+al +rocm')
+ depends_on('dihydrogen@0.2.0:', when='@:0.90,0.102:')
depends_on('dihydrogen +openmp', when='+dihydrogen')
depends_on('dihydrogen ~cuda', when='+dihydrogen ~cuda')
depends_on('dihydrogen +cuda', when='+dihydrogen +cuda')
depends_on('dihydrogen ~al', when='+dihydrogen ~al')
depends_on('dihydrogen +al', when='+dihydrogen +al')
- depends_on('dihydrogen +legacy +cuda', when='+distconv')
+ depends_on('dihydrogen +distconv +cuda', when='+distconv')
depends_on('dihydrogen ~half', when='+dihydrogen ~half')
depends_on('dihydrogen +half', when='+dihydrogen +half')
+ depends_on('dihydrogen ~nvshmem', when='+dihydrogen ~nvshmem')
+ depends_on('dihydrogen +nvshmem', when='+dihydrogen +nvshmem')
+ depends_on('dihydrogen ~rocm', when='+dihydrogen ~rocm')
+ depends_on('dihydrogen +rocm', when='+dihydrogen +rocm')
depends_on('dihydrogen@0.1', when='@0.101:0.101.99 +dihydrogen')
depends_on('dihydrogen@:0.0,0.2:', when='@:0.90,0.102: +dihydrogen')
conflicts('~dihydrogen', when='+distconv')
+ for arch in CudaPackage.cuda_arch_values:
+ depends_on('hydrogen cuda_arch=%s' % arch, when='+cuda cuda_arch=%s' % arch)
+ depends_on('aluminum cuda_arch=%s' % arch, when='+al +cuda cuda_arch=%s' % arch)
+ depends_on('dihydrogen cuda_arch=%s' % arch, when='+dihydrogen +cuda cuda_arch=%s' % arch)
+ depends_on('nccl cuda_arch=%s' % arch, when='+cuda cuda_arch=%s' % arch)
+
+ # variants +rocm and amdgpu_targets are not automatically passed to
+ # dependencies, so do it manually.
+ for val in ROCmPackage.amdgpu_targets:
+ depends_on('hydrogen amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
+ depends_on('aluminum amdgpu_target=%s' % val, when='+al amdgpu_target=%s' % val)
+ depends_on('dihydrogen amdgpu_target=%s' % val, when='+dihydrogen amdgpu_target=%s' % val)
+
depends_on('cudnn', when='@0.90:0.100.99 +cuda')
depends_on('cudnn@8.0.2:', when='@:0.90,0.101: +cuda')
depends_on('cub', when='@0.94:0.98.2 +cuda ^cuda@:10.99')
+ depends_on('hipcub', when='+rocm')
depends_on('mpi')
- depends_on('hwloc@1.11:', when='@:0.90,0.102:')
- depends_on('hwloc@1.11:1.11.99', when='@0.95:0.101.99')
+ depends_on('hwloc@1.11:', when='@:0.90,0.102: +hwloc')
+ depends_on('hwloc@1.11:1.11.99', when='@0.95:0.101.99 +hwloc')
+ depends_on('hwloc +cuda +nvml', when='+cuda')
+ depends_on('hwloc@2.3.0:', when='+rocm')
depends_on('half', when='+half')
+ depends_on('fftw@3.3: +openmp', when='+fft')
+
# LBANN wraps OpenCV calls in OpenMP parallel loops, build without OpenMP
# Additionally disable video related options, they incorrectly link in a
# bad OpenMP library when building with clang or Intel compilers
- depends_on('opencv@4.1.0: build_type=RelWithDebInfo +core +highgui +imgproc +jpeg '
- '+png +tiff +zlib +fast-math ~calib3d ~cuda ~dnn ~eigen'
- '~features2d ~flann ~gtk ~ipp ~ipp_iw ~jasper ~java ~lapack ~ml'
- '~openmp ~opencl ~opencl_svm ~openclamdblas ~openclamdfft'
- '~pthreads_pf ~python ~qt +shared ~stitching ~superres ~ts'
- '~video ~videostab ~videoio ~vtk', when='+opencv')
+ depends_on('opencv@4.1.0: build_type=RelWithDebInfo +core +highgui '
+ '+imgcodecs +imgproc +jpeg +png +tiff +fast-math ~cuda',
+ when='+vision')
- # Note that for Power systems we want the environment to add +powerpc +vsx
- depends_on('opencv@4.1.0: +powerpc +vsx', when='+opencv arch=ppc64le:')
+ # Note that for Power systems we want the environment to add +powerpc
+ depends_on('opencv@4.1.0: +powerpc', when='+vision arch=ppc64le:')
- depends_on('cnpy')
+ depends_on('cnpy', when='+numpy')
depends_on('nccl', when='@0.94:0.98.2 +cuda')
depends_on('conduit@0.4.0: +hdf5~hdf5_compat', when='@0.94:0.99 +conduit')
- depends_on('conduit@0.4.0: +hdf5~hdf5_compat', when='@:0.90,0.99:')
-
- depends_on('python@3:3.7.9 +shared', type=('build', 'run'), when='@:0.90,0.99:')
- extends("python")
- depends_on('py-setuptools', type='build')
- depends_on('py-argparse', type='run', when='@:0.90,0.99: ^python@:2.6')
- depends_on('py-configparser', type='run', when='@:0.90,0.99: +extras')
- depends_on('py-graphviz@0.10.1:', type='run', when='@:0.90,0.99: +extras')
- depends_on('py-matplotlib@3.0.0:', type='run', when='@:0.90,0.99: +extras')
- depends_on('py-numpy@1.16.0:', type=('build', 'run'), when='@:0.90,0.99: +extras')
- depends_on('py-onnx@1.3.0:', type='run', when='@:0.90,0.99: +extras')
- depends_on('py-pandas@0.24.1:', type='run', when='@:0.90,0.99: +extras')
- depends_on('py-texttable@1.4.0:', type='run', when='@:0.90,0.99: +extras')
- depends_on('py-pytest', type='test', when='@:0.90,0.99:')
- depends_on('py-protobuf+cpp@3.10.0', type=('build', 'run'), when='@:0.90,0.99:')
+ depends_on('conduit@0.5.0:0.6.99 +hdf5~hdf5_compat', when='@0.100:0.101 +conduit')
+ depends_on('conduit@0.6.0: +hdf5~hdf5_compat', when='@:0.90,0.99:')
+
+ # LBANN can use Python in two modes 1) as part of an extensible framework
+ # and 2) to drive the front end model creation and launch
+
+ # Core library support for Python Data Reader and extensible interface
+ depends_on('python@3: +shared', type=('run'), when='@:0.90,0.99: +python')
+ extends("python", when='+python')
+
+ # Python front end and possible extra packages
+ depends_on('python@3: +shared', type=('build', 'run'), when='@:0.90,0.99: +pfe')
+ extends("python", when='+pfe')
+ depends_on('py-setuptools', type='build', when='+pfe')
+ depends_on('py-argparse', type='run', when='@:0.90,0.99: +pfe ^python@:2.6')
+ depends_on('py-configparser', type='run', when='@:0.90,0.99: +pfe +extras')
+ depends_on('py-graphviz@0.10.1:', type='run', when='@:0.90,0.99: +pfe +extras')
+ depends_on('py-matplotlib@3.0.0:', type='run', when='@:0.90,0.99: +pfe +extras')
+ depends_on('py-numpy@1.16.0:', type=('build', 'run'), when='@:0.90,0.99: +pfe +extras')
+ depends_on('py-onnx@1.3.0:', type='run', when='@:0.90,0.99: +pfe +extras')
+ depends_on('py-pandas@0.24.1:', type='run', when='@:0.90,0.99: +pfe +extras')
+ depends_on('py-texttable@1.4.0:', type='run', when='@:0.90,0.99: +pfe +extras')
+ depends_on('py-pytest', type='test', when='@:0.90,0.99: +pfe')
+ depends_on('py-protobuf+cpp@3.10.0', type=('build', 'run'), when='@:0.90,0.99: +pfe')
+
depends_on('protobuf+shared@3.10.0', when='@:0.90,0.99:')
depends_on('py-breathe', type='build', when='+docs')
@@ -149,11 +223,16 @@ class Lbann(CMakePackage, CudaPackage):
depends_on('py-m2r', type='build', when='+docs')
depends_on('cereal')
- depends_on('catch2', type='test')
+ depends_on('catch2', type=('build', 'test'))
depends_on('clara')
depends_on('llvm-openmp', when='%apple-clang')
+ depends_on('onednn cpu_runtime=omp gpu_runtime=none', when='+onednn')
+ depends_on('nvshmem', when='+nvshmem')
+
+ depends_on('zstr')
+
generator = 'Ninja'
depends_on('ninja', type='build')
@@ -162,13 +241,31 @@ class Lbann(CMakePackage, CudaPackage):
spec = self.spec
# Environment variables
cppflags = []
- cppflags.append('-DLBANN_SET_EL_RNG -ldl')
-
- return [
+ cppflags.append('-DLBANN_SET_EL_RNG')
+ args = []
+ args.extend([
'-DCMAKE_CXX_FLAGS=%s' % ' '.join(cppflags),
'-DLBANN_VERSION=spack',
- '-DCNPY_DIR={0}'.format(spec['cnpy'].prefix),
- ]
+ ])
+
+ if '+numpy' in spec:
+ args.append(
+ '-DCNPY_DIR={0}'.format(spec['cnpy'].prefix),
+ )
+
+ # Use lld high performance linker
+ if '+lld' in spec:
+ args.extend([
+ '-DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld',
+ '-DCMAKE_SHARED_LINKER_FLAGS=-fuse-ld=lld'])
+
+ # Use gold high performance linker
+ if '+gold' in spec:
+ args.extend([
+ '-DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=gold',
+ '-DCMAKE_SHARED_LINKER_FLAGS=-fuse-ld=gold'])
+
+ return args
def setup_build_environment(self, env):
if self.spec.satisfies('%apple-clang'):
@@ -183,26 +280,39 @@ class Lbann(CMakePackage, CudaPackage):
# Get any recent versions or non-numeric version
# Note that develop > numeric and non-develop < numeric
+
@when('@:0.90,0.94:')
def cmake_args(self):
spec = self.spec
args = self.common_config_args
args.extend([
- '-DLBANN_WITH_TOPO_AWARE:BOOL=%s' % ('+cuda +nccl' in spec),
+ '-DCMAKE_CXX_STANDARD=17',
+ '-DLBANN_WITH_CNPY=%s' % ('+numpy' in spec),
+ '-DLBANN_DETERMINISTIC:BOOL=%s' % ('+deterministic' in spec),
+ '-DLBANN_WITH_HWLOC=%s' % ('+hwloc' in spec),
'-DLBANN_WITH_ALUMINUM:BOOL=%s' % ('+al' in spec),
+ '-DLBANN_WITH_BOOST:BOOL=%s' % ('+boost' in spec),
'-DLBANN_WITH_CONDUIT:BOOL=%s' % ('+conduit' in spec),
- '-DLBANN_WITH_CUDA:BOOL=%s' % ('+cuda' in spec),
- '-DLBANN_WITH_CUDNN:BOOL=%s' % ('+cuda' in spec),
- '-DLBANN_WITH_SOFTMAX_CUDA:BOOL=%s' % ('+cuda' in spec),
- '-DLBANN_SEQUENTIAL_INITIALIZATION:BOOL=%s' %
- ('+seq_init' in spec),
+ '-DLBANN_WITH_NVSHMEM:BOOL=%s' % ('+nvshmem' in spec),
+ '-DLBANN_WITH_FFT:BOOL=%s' % ('+fft' in spec),
+ '-DLBANN_WITH_ONEDNN:BOOL=%s' % ('+onednn' in spec),
+ '-DLBANN_WITH_EMBEDDED_PYTHON:BOOL=%s' % ('+python' in spec),
+ '-DLBANN_WITH_PYTHON_FRONTEND:BOOL=%s' % ('+pfe' in spec),
'-DLBANN_WITH_TBINF=OFF',
+ '-DLBANN_WITH_UNIT_TESTING:BOOL=%s' % (self.run_tests),
+ '-DLBANN_WITH_VISION:BOOL=%s' % ('+vision' in spec),
'-DLBANN_WITH_VTUNE:BOOL=%s' % ('+vtune' in spec),
'-DLBANN_DATATYPE={0}'.format(spec.variants['dtype'].value),
- '-DLBANN_VERBOSE=0',
'-DCEREAL_DIR={0}'.format(spec['cereal'].prefix),
# protobuf is included by py-protobuf+cpp
- '-DProtobuf_DIR={0}'.format(spec['protobuf'].prefix)])
+ '-DProtobuf_DIR={0}'.format(spec['protobuf'].prefix),
+ '-Dprotobuf_MODULE_COMPATIBLE=ON'])
+
+ if '+cuda' in spec:
+ if spec.satisfies('^cuda@11.0:'):
+ args.append('-DCMAKE_CUDA_STANDARD=17')
+ else:
+ args.append('-DCMAKE_CUDA_STANDARD=14')
if spec.satisfies('@:0.90') or spec.satisfies('@0.95:'):
args.append(
@@ -224,9 +334,7 @@ class Lbann(CMakePackage, CudaPackage):
args.append('-DAluminum_DIR={0}'.format(spec['aluminum'].prefix))
if '+conduit' in spec:
- args.extend([
- '-DLBANN_CONDUIT_DIR={0}'.format(spec['conduit'].prefix),
- '-DConduit_DIR={0}'.format(spec['conduit'].prefix)])
+ args.append('-DConduit_DIR={0}'.format(spec['conduit'].prefix))
# Add support for OpenMP with external (Brew) clang
if spec.satisfies('%clang platform=darwin'):
@@ -239,7 +347,7 @@ class Lbann(CMakePackage, CudaPackage):
'-DOpenMP_libomp_LIBRARY={0}/lib/libomp.dylib'.format(
clang_root)])
- if '+opencv' in spec:
+ if '+vision' in spec:
args.append('-DOpenCV_DIR:STRING={0}'.format(
spec['opencv'].prefix))
@@ -258,6 +366,8 @@ class Lbann(CMakePackage, CudaPackage):
args.append(
'-DNCCL_DIR={0}'.format(
spec['nccl'].prefix))
+ args.append(
+ '-DLBANN_WITH_NVPROF:BOOL=%s' % ('+nvprof' in spec))
if spec.satisfies('@:0.90') or spec.satisfies('@0.100:'):
args.append(
@@ -267,6 +377,20 @@ class Lbann(CMakePackage, CudaPackage):
args.append(
'-DLBANN_WITH_DISTCONV:BOOL=%s' % ('+distconv' in spec))
+ if '+rocm' in spec:
+ args.extend([
+ '-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix),
+ '-DHIP_CXX_COMPILER={0}'.format(self.spec['hip'].hipcc)])
+ archs = self.spec.variants['amdgpu_target'].value
+ if archs != 'none':
+ arch_str = ",".join(archs)
+ cxxflags_str = " ".join(self.spec.compiler_flags['cxxflags'])
+ args.append(
+ '-DHIP_HIPCC_FLAGS=--amdgpu-target={0}'
+ ' -g -fsized-deallocation -fPIC -std=c++17 {1}'.format(
+ arch_str, cxxflags_str)
+ )
+
return args
@when('@0.91:0.93')
@@ -283,7 +407,6 @@ class Lbann(CMakePackage, CudaPackage):
'-DElemental_DIR={0}'.format(spec['elemental'].prefix),
'-DELEMENTAL_MATH_LIBS={0}'.format(
spec['elemental'].libs),
- '-DSEQ_INIT:BOOL=%s' % ('+seq_init' in spec),
'-DVERBOSE=0',
'-DLBANN_HOME=.'])
@@ -292,7 +415,7 @@ class Lbann(CMakePackage, CudaPackage):
elif spec.variants['dtype'].value == 'double':
args.append('-DDATATYPE=8')
- if '+opencv' in spec:
+ if '+vision' in spec:
args.append('-DOpenCV_DIR:STRING={0}'.format(
spec['opencv'].prefix))
diff --git a/var/spack/repos/builtin/packages/lbxproxy/package.py b/var/spack/repos/builtin/packages/lbxproxy/package.py
index 94cf8afb36..51f7038e39 100644
--- a/var/spack/repos/builtin/packages/lbxproxy/package.py
+++ b/var/spack/repos/builtin/packages/lbxproxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,8 +26,8 @@ class Lbxproxy(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libice')
- depends_on('xtrans', type='build')
- depends_on('xproxymanagementprotocol', type='build')
- depends_on('bigreqsproto', type='build')
+ depends_on('xtrans')
+ depends_on('xproxymanagementprotocol')
+ depends_on('bigreqsproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/lbzip2/package.py b/var/spack/repos/builtin/packages/lbzip2/package.py
index 3a4f7577f4..818bc7828a 100644
--- a/var/spack/repos/builtin/packages/lbzip2/package.py
+++ b/var/spack/repos/builtin/packages/lbzip2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lcals/package.py b/var/spack/repos/builtin/packages/lcals/package.py
index e5a39b5a05..89eab5b2ed 100644
--- a/var/spack/repos/builtin/packages/lcals/package.py
+++ b/var/spack/repos/builtin/packages/lcals/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lcio/package.py b/var/spack/repos/builtin/packages/lcio/package.py
index e48bce82be..8410506aa9 100644
--- a/var/spack/repos/builtin/packages/lcio/package.py
+++ b/var/spack/repos/builtin/packages/lcio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,9 +14,14 @@ class Lcio(CMakePackage):
git = "https://github.com/iLCSoft/LCIO.git"
url = "https://github.com/iLCSoft/LCIO/archive/v02-13-03.tar.gz"
+ tags = ['hep']
+
maintainers = ['gaede', 'vvolkl']
version('master', branch='master')
+ version('2.16.1', sha256='992a649f864785e62fe12d7a638b2696c91f9535881de33f22b3cceabcdcdbaf')
+ version('2.16', sha256='aff7707750d821f31cbae3d7529fd8e22457f48d759e834ec01aa9389b5dbf1a')
+ version('2.15.4', sha256='720c8130762d445df44d2c245da01c0a1ca807d7ed62362cebf7b3a99f9a37d7')
version('2.15.3', sha256='a00f9e1e8fc98151e88e603bbfca8088ded21ae3daca5c91869628a19af0cefb')
version('2.15.2', sha256='9886c6f5c275c1c51bde978e4f5514bb4ea9588239f1d3ee95a76ef4b686e69d')
version('2.15.1', sha256='32921feb162408357d00a81cdd489c374b3ed8ab6f442d798b22835de7243d32')
@@ -40,6 +45,9 @@ class Lcio(CMakePackage):
variant("examples", default=False,
description="Turn on to build LCIO examples")
+ depends_on('sio@0.0.2:', when='@2.14:')
+ depends_on('sio@0.1:', when='@2.16:')
+
depends_on('root@6.04:', when="+rootdict")
depends_on('openjdk', when="+jar")
# build error with +termlib, to be investigated
diff --git a/var/spack/repos/builtin/packages/lcms/package.py b/var/spack/repos/builtin/packages/lcms/package.py
index 2ad9137a2c..00c7ac190f 100644
--- a/var/spack/repos/builtin/packages/lcms/package.py
+++ b/var/spack/repos/builtin/packages/lcms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lcov/package.py b/var/spack/repos/builtin/packages/lcov/package.py
index b1449926c0..ed83daec0a 100644
--- a/var/spack/repos/builtin/packages/lcov/package.py
+++ b/var/spack/repos/builtin/packages/lcov/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ldak/package.py b/var/spack/repos/builtin/packages/ldak/package.py
index 6114f3bc90..12a5e64739 100644
--- a/var/spack/repos/builtin/packages/ldak/package.py
+++ b/var/spack/repos/builtin/packages/ldak/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class Ldak(Package):
homepage = "http://dougspeed.com/ldak/"
url = "http://dougspeed.com/wp-content/uploads/source.zip"
- version('5.1', sha256='9a3fe2fafc7b68cc57a17748a64db66f76b13acbd5e9a538ede20a46447fcf4a')
+ version('5.1', sha256='ae3eb8c2ef31af210e138336fd6edcd0e3a26ea9bae89fd6c0c6ea33e3a1517e')
variant('mkl', default=False, description='Use MKL')
@@ -21,6 +21,11 @@ class Ldak(Package):
depends_on('lapack')
depends_on('mkl', when='+mkl')
+ for t in ['aarch64', 'arm', 'ppc', 'ppc64', 'ppc64le',
+ 'ppcle', 'sparc', 'sparc64', 'x86']:
+ conflicts('target={0}:'.format(t),
+ msg='libspot is available linux x86_64 only')
+
def setup_build_environment(self, env):
env.append_flags('LDLIBS', '-lm')
env.append_flags('LDLIBS', '-lz')
@@ -32,11 +37,8 @@ class Ldak(Package):
env.append_flags('LDLIBS', 'libqsopt.linux.a')
def install(self, spec, prefix):
- if '+mkl' in spec:
- make('ldak')
- mkdirp(prefix.bin)
- install('ldak', prefix.bin)
- else:
- make('ldak_slow')
- mkdirp(prefix.bin)
- install('ldak_slow', prefix.bin.ldak)
+ if self.spec.satisfies('~mkl'):
+ filter_file('#define MKL.*', '#define MKL 0', 'ldak.c')
+ make('ldak')
+ mkdirp(prefix.bin)
+ install('ldak', prefix.bin.ldak)
diff --git a/var/spack/repos/builtin/packages/ldc-bootstrap/package.py b/var/spack/repos/builtin/packages/ldc-bootstrap/package.py
index 681d3d1811..5ae15f3b4e 100644
--- a/var/spack/repos/builtin/packages/ldc-bootstrap/package.py
+++ b/var/spack/repos/builtin/packages/ldc-bootstrap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ldc/package.py b/var/spack/repos/builtin/packages/ldc/package.py
index 0fc8025108..b1944ecce2 100644
--- a/var/spack/repos/builtin/packages/ldc/package.py
+++ b/var/spack/repos/builtin/packages/ldc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/legion/README.md b/var/spack/repos/builtin/packages/legion/README.md
new file mode 100644
index 0000000000..f8cac2e5d4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/legion/README.md
@@ -0,0 +1,153 @@
+# Legion Spack Package Notes
+
+The Legion Spack package follows the underlying approach used in Legion's CMake-based build infrastructure. If you are not familiar with using Spack, we encourage you to start with the **[Spack 101 Tutorial](https://spack-tutorial.readthedocs.io/en/latest/)**. For more background on Legion please visit the project [website](https://legion.stanford.edu). There you can find information on getting started, tutorials, and supporting documentation.
+
+## Versions
+
+We strongly recommend the majority of users start with the latest **stable** branch of Legion. This will guarantee the most regularly tested and debugged version of the code. We also strive to have quarterly tagged release throughout the calendar year starting March (e.g., legion-YY.MM.0 where MM starts at *'03'* and runs through *'12'* for any calendar year). These versioned downloads are captured via the [Legion GitHub page](https://github.com/StanfordLegion/legion) and captured in the Spack package for individual use via the naming convention above. The details for each release are captured in the CHANGES.txt file at the top-level of the repository.
+
+## Spack Usage and Details
+
+**NOTE: This version of the Legion *spackage* no longer depends upon an external GASNet spackage. Instead, as supported and preferred by the GASNet developers, Legion internalizes the GASNet configuration and build process tailored to Legion's needs. At present this approach should minimize both building and configuration issues that have occurred in the past.**
+
+With a working installation of Spack following variants can be used to download, configure, and build legion. As of its latest release Legion uses features from C++11 and can be build using either GCC or Clang (and likely any other compilers with full C++11 support). For example,
+
+ spack install legion %clang@10.0
+
+will build and install Legion using version 10.0 of the clang compiler. Additional compiler flags (beyond those automatically enabled by the underlying Legion CMake configuration) may be specified by using the `cppflags` option to Spack:
+
+ spack install legion %clang@10.0 cppflags=-Wall
+
+You can find more details about customizing the compiler with Spack [here](https://spack-tutorial.readthedocs.io/en/latest/tutorial_basics.html#customizing-compilers).
+
+There are a number of configuration parameters (variants) for Legion that can be specified on the command line. To see a complete listing of these variants you can use the following command:
+
+ spack info legion
+
+The default build and install of Legion is suitable for laptop/desktop development needs. Additional variants will need to be specified to build for distributed memory systems, GPU support, and other features (e.g., debugging, profiling, etc.). A full list of the currently supported variants is provided below.
+
+These variants may then be used on the Spack command line to customize the build of Legion you would like to install. For boolean-based variants the `+`, `-`, or `~` *sigils* can be used. In this case, the `+` specifies a `True` value and either `-` or `~` can be used for the `False` setting (two values for `False` are provided to avoid conflicts with shell command line parameters. For example,
+
+ spack install legion@stable~cuda+hdf5%clang10.0
+
+will build/install the stable version of Legion without CUDA and with HDF5 support; using Clang 10.0 as the compiler. See below for more examples of the various package options.
+
+## Overview of Legion's Spack Variants
+
+
+This section provides an overview of the variants that are available for builds and installations of Legion and the underlying Realm runtime libraries. These variants range from important configuration parameters for many users, to more involved and low-level details more likely to be leveraged when debugging correctness and performance issues. For these last set of use cases we encourage users to visit the Legion [Debugging](https://legion.stanford.edu/debugging/) and [Profiling](https://legion.stanford.edu/profiling/) pages.
+
+Note that any variants with a default of `on` or `off` are boolean values and may be configured on the Spack command line using the `+`, or `-` (or `~`) sigils.
+
+Finally, to build the highest performing installation of Legion requires an appropriate configuration and installation of GASNet-Ex (while we have support for an MPI transport layer it is still in testing and evaluation for achieving the best possible performance). See the following section for details on the steps needed to build a high-performance install of Legion using Spack.
+
+### Debugging & Internal Runtime Configurations
+
+* **`build_type`**: This variant exposes the CMake build type setting. Following directly from CMake these available values for this variant are [`Debug`, `RelWithDebInfo`, and `Release`]. `default=RelWithDebInfo`
+
+* **`bounds_checks`**: This variant supports `on` or `off` values and enables, or disables bounds checking within the runtime's data accessors. This is helpful for debugging but does have the potential to degrade performance (therefore it is disabled in the default build). `default=off`
+
+* **`privilege_checks`**: This variant enables the runtime checking of data privileges in Legion's data accessors. This can helpful in debugging applications. `default=off`
+
+* **`spy`**: This variant enables applications to produce detailed logging information for debugging with the [Legion Spy](https://legion.stanford.edu/debugging/#legion-spy) tool. `default=off`
+
+* **`max_dims`**: This variant provides an integral value for the maximum number of dimensions in a logical region that are supported by the build/install. `default=3` *Note: Currently supported values range from 1 to 9.*
+
+* **`max_fields`**: This variant provides an integral value for the maximum number of fields that may be stored within a logical region. `default=512` *Note: Internally this requires a value that is a power-of-two -- if a non power-of-two value is provided the next largest power-of-two will be used.*
+
+* **`output_level`**: This variant enables the (dynamic) debugging level for the runtime. It can be one of the following values: [`spew`, `debug`, `info`, `print`, `warning`, `error`, `fatal`, or `none`]. `default=warning`
+
+* **`papi`**: This variant enables PAPI performance measurements. `default=off`
+
+* **`redop_complex`** This variant enables support for the reduction of complex types. `default=off` Note: will be enabled when `+bindings` is set.
+
+* **`shared_libs`**: Build shared libraries for Legion and Realm. `default=off`
+
+* **`enable_tls`**: This variant supports `on` or `off` and enables thread-local-storage of the Legion runtime context. `default=off`
+
+### Bindings & Interoperability
+
+* **`bindings`**: This variant supports `on` or `off` and will build the language bindings for Legion. In addition to the required C++ interface, this currently includes C, Python, and Fortran. `default=off` Note you can use `+python` or `+fortran` to select a subset of these bindings.
+
+* **`python`**: This variant enables Python support in terms of both bindings and runtime support (where instance(s) of the Python interpreter must be available.) `default=off`
+
+* **`fortran`**: This variant supports `on` or `off` and enables building of Fortran language bindings for Legion. `default=off`
+
+[//]: <> (TOOD: More details here on Kokkos interop?)
+
+* **`kokkos`**: Enable support for interoperability with [Kokkos](https://github.com/kokkos) use in Legion tasks. `default=off`
+
+[//]: <> (TOOD: More details here on OpenMP interop?)
+
+* **`openmp`**: This variant enables OpenMP support within Legion tasks (and within the Realm runtime). Please note that the full OpenMP feature set (e.g. OpenMP 5.0) is not fully supported when enabling this feature. `default=off`
+
+* **`libdl`**: Enable support for dynamic object loading (via "libdl"). `default=on`
+
+### Processor Architecture Support (e.g., GPUs)
+
+* **`cuda`**: This variant supports `on` or `off` and enables CUDA support within Legion. `default=off`
+
+* **`cuda_arch`**: This variant specifics the specific CUDA architecture to support within the Legion build/installation. Currently this variant must be one of [`60`, `70`, `75`, or `80`]. Where `60` is the Pascal architecture, `70` is for Volta, `75` is for Turing, and `80` is for `Volta`. `default=70`
+
+* **`cuda_hijack`**: This variant supports `on` or `off` and determines if the build enables performance enhancements by "*hijacking* entry points into CUDA's runtime API; thus, it obviously implies `+cuda`.This is a performance enhancement and not necessary but suggested for production use cases on NVIDIA-based systems. `default=off`
+
+### External Library Support
+
+* **`hdf5`**: This variant supports `on` or `off` and enables building of HDF5 support within the runtime. `default=off`
+
+* **`hwloc`**: Build using "libhwloc" support for numa-aware topology support within Realm (Legion's low-level runtime layer). `default=off`
+
+* **`zlib`**: This variant enables support for zlib. `default=on`
+
+### Distributed Memory/Network Transport/Interconnect Support
+
+* **`network`**: This variant specifies what network transport layer Legion/Realm should use for moving data across the distributed memories of a system. The options are currently: [`gasnet`, `mpi`, or `none`]. The most tested and reliable interface for distributed memory systems is `gasnet`. Via this package GASNet will be automatically configured and built. If you want to use a pre-installed version of GASNet you can use the `gasnet_root` variant; this will disable the automatic/internal installation of GASNet. We strongly encourage the use of the automatic configuration and build mechanism as it is tailored to Legion's use cases. If you would like to read more about please visit their [web page](https://gasnet.lbl.gov). Note that the `mpi` transport layer is new and still being tuned and debugged. Finally, if you want to run on a single system (e.g., a desktop or laptop) for development activities you may drop this parameter or specify `network=none`. `default=none`
+
+* **`conduit`** requires `(network=gasnet)` **only**: This variant selects the GASNet conduit to use and must be provided when `network=gasnet`. The current choices are: [`aries`, `ibv`, `mpi`, `ucx`, `udp`, or `none`]: defaults to `none`.
+ * **aries**: Aries for Cray XC series (see [documentation](https://gasnet.lbl.gov/dist-ex/aries-conduit/README)).
+ * **ibv**: OpenIB/OpenFabrics Verbs for InfiniBand (see [documentation](https://gasnet.lbl.gov/dist-ex/ibv-conduit/README)).
+ * **mpi**: Portable conduit, works on any network with MPI 1.1 or newer (see [documentation](https://gasnet.lbl.gov/dist-ex/mpi-conduit/README)).
+ * **ucx**: *(NOTE: EXPERIMENTAL)* Unified Communication X framework (see [documentation](https://gasnet.lbl.gov/dist-ex/ucx-conduit/README)).
+ * **udp**: Portable conduit, works on any network with a TCP/IP stack (see [documentation](https://gasnet.lbl.gov/dist-ex/udp-conduit/README)).
+
+* **`gasnet_root`**: This variant points the package at a pre-installed version of GASNet for use when building Legion. This skips the default behavior of embedding the GASNet build within that of Legion. It requires that `conduit` be set to match that used by the installed version of GASNet (*note that incorrectly setting `conduit` could result in failures that are not caught by the Spack package as failures will only occur during the build of Legion*). `default=/usr/local`
+
+## Examples
+
+This section highlights a few common configurations/installations for various common installations of Legion.
+
+### Laptop/Desktop Development
+
+The default configuration will build a version of Legion without network support that is often helpful in laptop or desktop installs for development using Legion. The first example is the most straightforward and enables a CPU-only configuration of Legion:
+
+`$ spack install legion@stable`
+
+Given that many uses cases for laptop/desktop development involve debugging Legion you might want to consider enabling [Legion Spy](https://legion.stanford.edu/debugging/#legion-spy), bounds and privilege checks, and optionally enable debugging level output diagnostics:
+
+`$ spack install legion@stable +spy +bounds_checks +privilege_checks [output=debug]`
+
+Note that by specifying `+spy` the package will also install the Legion profiler. Both will be available in the corresponding `bin` directory created by Spack's install mechanisms.
+
+#### Adding GPU Support
+
+To enable support for NVIDIA GPUs with Legion you can add the `+cuda` variant to the examples provided above. In addition, you can also use the `cuda_arch` flag to enable specific GPU architectures. For example, the follow command line installs the stable version of Legion with CUDA support for NVIDIA's Volta architecture:
+
+`$ spack install legion@stable +cuda cuda_arch=70`
+
+If you wanted to program tasks using Kokkos support for GPUs you can simply add the `+kokkos` option to the previous command line:
+
+`$ spack install legion@stable +cuda cuda_arch=70 +kokkos`
+
+this will enable Kokkos interoperability in Legion and also build and configure a version of Kokkos with cuda and Volta GPU support.
+
+#### Networking/Distributed Memory Support
+
+In order to add modify the above configuration to support a distributed memory architecture you need to add a `network` target. For example, to build a version of Legion that uses GASNet for the data transport layer you would specify:
+
+`$ spack install legion@stable +cuda cuda_arch=70 +kokkos network=gasnet`
+
+Without the addition of a specific GASNet *conduit* this command will use the UDP conduit. To change this to support a Infniband-based cluster you would add:
+
+`$ spack install legion@stable +cuda cuda_arch=70 +kokkos network=gasnet conduit=ibv`
+
+For a pre-existing installation of GASNet you can point the package at the root directory of the installation (also often know as the installation *prefix*). For example, to point the package at a version installed under `/opt/local` (*i.e., the include files are stored under `/opt/local/include` and libraries are in `/opt/local/lib`*) you would add `gasnet_root=/opt/local` to the command line.
diff --git a/var/spack/repos/builtin/packages/legion/package.py b/var/spack/repos/builtin/packages/legion/package.py
index f98e48e187..612855fbeb 100644
--- a/var/spack/repos/builtin/packages/legion/package.py
+++ b/var/spack/repos/builtin/packages/legion/package.py
@@ -1,10 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
from spack import *
+import os
class Legion(CMakePackage):
@@ -19,77 +19,315 @@ class Legion(CMakePackage):
interface provides explicit programmer controlled placement of data in
the memory hierarchy and assignment of tasks to processors in a way
that is orthogonal to correctness, thereby enabling easy porting and
- tuning of Legion applications to new architectures.
- """
+ tuning of Legion applications to new architectures."""
+
homepage = "http://legion.stanford.edu/"
- url = "https://github.com/StanfordLegion/legion/tarball/legion-17.02.0"
- git = "https://github.com/StanfordLegion/legion.git"
+ git = "https://github.com/StanfordLegion/legion.git"
+
+ maintainers = ['pmccormick', 'streichler']
+ version('21.03.0', tag='legion-21.03.0')
+ version('stable', branch='stable')
version('master', branch='master')
- version('ctrl-rep', branch='control_replication')
- version('20.03.0', sha256='ae5feedb5ed9f357b56424b9d73cea4f224a61e291e022556f796d1ff24d1244')
- version('19.12.0', sha256='ea517638de7256723bb9c119796d4d9d4ef662c52d0151ad24af5288e5a72e7d')
- version('19.09.1', sha256='c507133fb9dce16b7fcccd7eb2933d13cce96ecf835da60a27c0f66840cabf51')
- version('19.09.0', sha256='a01c3e3c6698cafb64b77a66341cc06d039faed4fa31b764159f021b94ce13e8')
- version('19.06.0', sha256='31cd97e9264c510ab83b1f9e8e1e6bf72021a0c6ee4a028966fce08736e39fbf')
- version('19.04.0', sha256='279bbc8dcdab4c75be570318989a9fc9821178143e9db9c3f62e58bf9070b5ac')
- version('18.12.0', sha256='71f2c409722975c0ad92f2caffcc9eaa9260f7035e2b55b731d819eb6a94016c')
- version('18.09.0', sha256='58c5a3072d2b5086225982563c23524692ca5758cbfda8d0f0a4f00ef17b3b8d')
- version('18.05.0', sha256='4c3cef548b3a459827e4c36b5963c06b6fcf0a4ca1800fbb0f73e6ba3b1cced4')
- version('18.02.0', sha256='e08aeef98003593391a56f11a99d9d65af49647fe87a2a5e8837c8682a337a60')
- version('17.10.0', sha256='af4f1e9215e57c4aac4805ae2bf53defe13eeaf192576bf5a702978f43171b1e')
- version('17.08.0', sha256='20aabdb0fabb1e32aa713cd5fa406525093f8dad33fca5d23046408d42d3c7b3')
- version('17.02.0', sha256='423d8699729b0e7fef663740e239aa722cca544f6bda8c9f782eaba4274bf60a')
-
- variant('mpi', default=True,
- description='Build on top of mpi conduit for mpi inoperability')
- variant('ibv', default=False,
- description='Build on top of ibv conduit for InfiniBand support')
- variant('shared', default=True, description='Build shared libraries')
- variant('hdf5', default=True, description='Enable HDF5 support')
+ version('cr', branch='control_replication')
+
+ depends_on("cmake@3.16:", type='build')
+ # TODO: Need to spec version of MPI v3 for use of the low-level MPI transport
+ # layer. At present the MPI layer is still experimental and we discourge its
+ # use for general (not legion development) use cases.
+ depends_on('mpi', when='network=mpi')
+ depends_on('mpi', when='network=gasnet') # MPI is required to build gasnet (needs mpicc).
+ depends_on('ucx', when='conduit=ucx')
+ depends_on('mpi', when='conduit=mpi')
+ depends_on('cuda@10.0:11.9', when='+cuda_unsupported_compiler')
+ depends_on('cuda@10.0:11.9', when='+cuda')
+ depends_on('hdf5', when='+hdf5')
+ depends_on('hwloc', when='+hwloc')
+
+ # cuda-centric
+ # reminder for arch numbers to names: 60=pascal, 70=volta, 75=turing, 80=ampere
+ # TODO: we could use a map here to clean up and use naming vs. numbers.
+ cuda_arch_list = ('60', '70', '75', '80')
+ for nvarch in cuda_arch_list:
+ depends_on('kokkos@3.3.01+cuda+cuda_lambda+wrapper cuda_arch={0}'.format(nvarch),
+ when='%gcc+kokkos+cuda cuda_arch={0}'.format(nvarch))
+ depends_on("kokkos@3.3.01+cuda+cuda_lambda~wrapper cuda_arch={0}".format(nvarch),
+ when="%clang+kokkos+cuda cuda_arch={0}".format(nvarch))
+
+ depends_on('kokkos@3.3.01~cuda', when='+kokkos~cuda')
+ depends_on("kokkos@3.3.01~cuda+openmp", when='kokkos+openmp')
+
+ depends_on('python@3', when='+python')
+ depends_on('papi', when='+papi')
+ depends_on('zlib', when='+zlib')
+
+ # TODO: Need a AMD/HIP variant to match support landing in 21.03.0.
+
+ # Network transport layer: the underlying data transport API should be used for
+ # distributed data movement. For Legion, gasnet is the currently the most
+ # mature. We have many users that default to using no network layer for
+ # day-to-day development thus we default to 'none'. MPI support is new and
+ # should be considered as a beta release.
+ variant('network', default='none',
+ values=('gasnet', 'mpi', 'none'),
+ description="The network communications/transport layer to use.",
+ multi=False)
+
+ # We default to automatically embedding a gasnet build. To override this
+ # point the package a pre-installed version of GASNet-Ex via the gasnet_root
+ # variant.
+ #
+ # make sure we have a valid directory provided for gasnet_root...
+ def validate_gasnet_root(value):
+ if value == 'none':
+ return True
+
+ if not os.path.isdir(value):
+ print("gasnet_root:", value, "-- no such directory.")
+ return False
+ else:
+ return True
+
+ variant('gasnet_root',
+ default='none',
+ values=validate_gasnet_root,
+ description="Path to a pre-installed version of GASNet (prefix directory).",
+ multi=False)
+ conflicts('gasnet_root', when="network=mpi")
+
+ variant('conduit', default='none',
+ values=('aries', 'ibv', 'udp', 'mpi', 'ucx', 'none'),
+ description="The gasnet conduit(s) to enable.",
+ multi=False)
+
+ conflicts('conduit=none', when='network=gasnet',
+ msg="a conduit must be selected when 'network=gasnet'")
+
+ gasnet_conduits = ('aries', 'ibv', 'udp', 'mpi', 'ucx')
+ for c in gasnet_conduits:
+ conflict_str = 'conduit=%s' % c
+ conflicts(conflict_str, when='network=mpi',
+ msg="conduit attribute requires 'network=gasnet'.")
+ conflicts(conflict_str, when='network=none',
+ msg="conduit attribute requires 'network=gasnet'.")
+
+ variant('gasnet_debug', default=False,
+ description="Build gasnet with debugging enabled.")
+ conflicts('+gasnet_debug', when='network=mpi')
+ conflicts('+gasnet_debug', when='network=none')
+
+ variant('shared', default=False,
+ description="Build shared libraries.")
+
+ variant('bounds_checks', default=False,
+ description="Enable bounds checking in Legion accessors.")
+
+ variant('privilege_checks', default=False,
+ description="Enable runtime privildge checks in Legion accessors.")
+
+ variant('enable_tls', default=False,
+ description="Enable thread-local-storage of the Legion context.")
+
+ variant('output_level', default='warning',
+ # Note: these values are dependent upon those used in the cmake config.
+ values=("spew", "debug", "info", "print", "warning", "error", "fatal",
+ "none"),
+ description="Set the compile-time logging level.",
+ multi=False)
+
variant('spy', default=False,
- description='Enable detailed logging for Legion Spy')
- variant('build_type', default='Release',
- values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'),
- description='The build type to build', multi=False)
+ description="Enable detailed logging for Legion Spy debugging.")
+
+ # note: we will be dependent upon spack's latest-and-greatest cuda version...
+ variant('cuda', default=False,
+ description="Enable CUDA support.")
+ variant('cuda_hijack', default=False,
+ description="Hijack application calls into the CUDA runtime (+cuda).")
+ variant('cuda_arch', default='70',
+ values=cuda_arch_list,
+ description="GPU/CUDA architecture to build for.",
+ multi=False)
+ variant('cuda_unsupported_compiler', default=False,
+ description="Disable nvcc version check (--allow-unsupported-compiler).")
+ conflicts('+cuda_hijack', when='~cuda')
+
+ variant('fortran', default=False,
+ description="Enable Fortran bindings.")
+
+ variant('hdf5', default=False,
+ description="Enable support for HDF5.")
+
+ variant('hwloc', default=False,
+ description="Use hwloc for topology awareness.")
+
+ variant('kokkos', default=False,
+ description="Enable support for interoperability with Kokkos.")
+
+ variant('bindings', default=False,
+ description="Build runtime language bindings (excl. Fortran).")
+
+ variant('libdl', default=True,
+ description="Enable support for dynamic object/library loading.")
+
+ variant('openmp', default=False,
+ description="Enable support for OpenMP within Legion tasks.")
+
+ variant('papi', default=False,
+ description="Enable PAPI performance measurements.")
+
+ variant('python', default=False,
+ description="Enable Python support.")
- depends_on("cmake@3.1:", type='build')
- depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB'", when='~mpi')
- depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB' +mpi", when='+mpi')
- depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB' +ibv", when='+ibv')
- depends_on("hdf5", when='+hdf5')
+ variant('zlib', default=True,
+ description="Enable zlib support.")
+
+ variant('redop_complex', default=False,
+ description="Use reduction operators for complex types.")
+
+ variant('max_dims', values=int, default=3,
+ description="Set max number of dimensions for logical regions.")
+ variant('max_fields', values=int, default=512,
+ description="Maximum number of fields allowed in a logical region.")
+
+ variant('native', default=False,
+ description="Enable native/host processor optimizaton target.")
def cmake_args(self):
- cmake_cxx_flags = [
- '-DPRIVILEGE_CHECKS',
- '-DBOUNDS_CHECKS',
- '-DENABLE_LEGION_TLS']
-
- options = [
- '-DLegion_USE_GASNet=ON',
- '-DLEGION_USE_CUDA=OFF',
- '-DLEGION_USE_OPENMP=OFF',
- '-DLegion_BUILD_EXAMPLES=ON',
- '-DBUILD_SHARED_LIBS=%s' % ('+shared' in self.spec)]
-
- if self.spec.variants['build_type'].value == 'Debug':
+ spec = self.spec
+ cmake_cxx_flags = []
+ options = []
+
+ if 'network=gasnet' in spec:
+ options.append('-DLegion_NETWORKS=gasnetex')
+ if spec.variants['gasnet_root'].value != 'none':
+ gasnet_dir = spec.variants['gasnet_root'].value
+ options.append('-DGASNet_ROOT_DIR=%s' % gasnet_dir)
+ else:
+ options.append('-DLegion_EMBED_GASNet=ON')
+
+ gasnet_conduit = spec.variants['conduit'].value
+ options.append('-DGASNet_CONDUIT=%s' % gasnet_conduit)
+
+ if '+gasnet_debug' in spec:
+ options.append('-DLegion_EMBED_GASNet_CONFIGURE_ARGS=--enable-debug')
+ elif 'network=mpi' in spec:
+ options.append('-DLegion_NETWORKS=mpi')
+ if spec.variants['gasnet_root'].value != 'none':
+ raise InstallError("'gasnet_root' is only valid when 'network=gasnet'.")
+ else:
+ if spec.variants['gasnet_root'].value != 'none':
+ raise InstallError("'gasnet_root' is only valid when 'network=gasnet'.")
+ options.append('-DLegion_EMBED_GASNet=OFF')
+
+ if '+shared' in spec:
+ options.append('-DBUILD_SHARED_LIBS=ON')
+ else:
+ options.append('-DBUILD_SHARED_LIBS=OFF')
+
+ if '+bounds_checks' in spec:
+ # default is off.
+ options.append('-DLegion_BOUNDS_CHECKS=ON')
+ if '+privilege_checks' in spec:
+ # default is off.
+ options.append('-DLegion_PRIVILEGE_CHECKS=ON')
+ if '+enable_tls' in spec:
+ # default is off.
+ options.append('-DLegion_ENABLE_TLS=ON')
+ if 'output_level' in spec:
+ level = str.upper(spec.variants['output_level'].value)
+ options.append('-DLegion_OUTPUT_LEVEL=%s' % level)
+ if '+spy' in spec:
+ # default is off.
+ options.append('-DLegion_SPY=ON')
+
+ if '+cuda' in spec:
+ cuda_arch = spec.variants['cuda_arch'].value
+ options.append('-DLegion_USE_CUDA=ON')
+ options.append('-DLegion_GPU_REDUCTIONS=ON')
+ options.append('-DLegion_CUDA_ARCH=%s' % cuda_arch)
+ if '+cuda_hijack' in spec:
+ options.append('-DLegion_HIJACK_CUDART=ON')
+ else:
+ options.append('-DLegion_HIJACK_CUDART=OFF')
+
+ if '+cuda_unsupported_compiler' in spec:
+ options.append('-DCUDA_NVCC_FLAGS:STRING=--allow-unsupported-compiler')
+
+ if '+fortran' in spec:
+ # default is off.
+ options.append('-DLegion_USE_Fortran=ON')
+
+ if '+hdf5' in spec:
+ # default is off.
+ options.append('-DLegion_USE_HDF5=ON')
+
+ if '+hwloc' in spec:
+ # default is off.
+ options.append('-DLegion_USE_HWLOC=ON')
+
+ if '+kokkos' in spec:
+ # default is off.
+ options.append('-DLegion_USE_Kokkos=ON')
+ os.environ['KOKKOS_CXX_COMPILER'] = spec['kokkos'].kokkos_cxx
+
+ if '+libdl' in spec:
+ # default is on.
+ options.append('-DLegion_USE_LIBDL=ON')
+ else:
+ options.append('-DLegion_USE_LIBDL=OFF')
+
+ if '+openmp' in spec:
+ # default is off.
+ options.append('-DLegion_USE_OpenMP=ON')
+
+ if '+papi' in spec:
+ # default is off.
+ options.append('-DLegion_USE_PAPI=ON')
+
+ if '+python' in spec:
+ # default is off.
+ options.append('-DLegion_USE_Python=ON')
+
+ if '+zlib' in spec:
+ # default is on.
+ options.append('-DLegion_USE_ZLIB=ON')
+ else:
+ options.append('-DLegion_USE_ZLIB=OFF')
+
+ if '+redop_complex' in spec:
+ # default is off.
+ options.append('-DLegion_REDOP_COMPLEX=ON')
+
+ if '+bindings' in spec:
+ # default is off.
+ options.append('-DLegion_BUILD_BINDINGS=ON')
+ options.append('-DLegion_REDOP_COMPLEX=ON') # required for bindings
+ options.append('-DLegion_USE_Fortran=ON')
+
+ if spec.variants['build_type'].value == 'Debug':
cmake_cxx_flags.extend([
'-DDEBUG_REALM',
'-DDEBUG_LEGION',
'-ggdb',
])
- options.append('-DCMAKE_CXX_FLAGS=%s' % (" ".join(cmake_cxx_flags)))
+ maxdims = int(spec.variants['max_dims'].value)
+ # TODO: sanity check if maxdims < 0 || > 9???
+ options.append('-DLegion_MAX_DIM=%d' % maxdims)
- if '+mpi' in self.spec:
- options.append('-DGASNet_CONDUIT=mpi')
+ maxfields = int(spec.variants['max_fields'].value)
+ if (maxfields <= 0):
+ maxfields = 512
+ # make sure maxfields is a power of two. if not,
+ # find the next largest power of two and use that...
+ if (maxfields & (maxfields - 1) != 0):
+ while maxfields & maxfields - 1:
+ maxfields = maxfields & maxfields - 1
+ maxfields = maxfields << 1
+ options.append('-DLegion_MAX_FIELDS=%d' % maxfields)
- if '+hdf5' in self.spec:
- options.append('-DLegion_USE_HDF5=ON')
- else:
- options.append('-DLegion_USE_HDF5=OFF')
-
- if '+spy' in self.spec:
- options.append('-DLegion_SPY=ON')
+ if '+native' in spec:
+ # default is off.
+ options.append('-DBUILD_MARCH:STRING=native')
return options
diff --git a/var/spack/repos/builtin/packages/lemon/package.py b/var/spack/repos/builtin/packages/lemon/package.py
index c87e60e677..500372aed7 100644
--- a/var/spack/repos/builtin/packages/lemon/package.py
+++ b/var/spack/repos/builtin/packages/lemon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/leptonica/package.py b/var/spack/repos/builtin/packages/leptonica/package.py
index 21e7b5583f..d3990b0543 100644
--- a/var/spack/repos/builtin/packages/leptonica/package.py
+++ b/var/spack/repos/builtin/packages/leptonica/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/less/package.py b/var/spack/repos/builtin/packages/less/package.py
index 2ed378ca06..e6ef02d6fe 100644
--- a/var/spack/repos/builtin/packages/less/package.py
+++ b/var/spack/repos/builtin/packages/less/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lesstif/package.py b/var/spack/repos/builtin/packages/lesstif/package.py
index ac82c996d2..676c54f910 100644
--- a/var/spack/repos/builtin/packages/lesstif/package.py
+++ b/var/spack/repos/builtin/packages/lesstif/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/leveldb/package.py b/var/spack/repos/builtin/packages/leveldb/package.py
index f4d5e57981..adc200e847 100644
--- a/var/spack/repos/builtin/packages/leveldb/package.py
+++ b/var/spack/repos/builtin/packages/leveldb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Leveldb(CMakePackage):
git = "https://github.com/google/leveldb.git"
version('master', branch='master')
+ version('1.23', sha256='9a37f8a6174f09bd622bc723b55881dc541cd50747cbd08831c2a82d620f6d76')
version('1.22', sha256='55423cac9e3306f4a9502c738a001e4a339d1a38ffbee7572d4a07d5d63949b2')
version('1.20', sha256='f5abe8b5b209c2f36560b75f32ce61412f39a2922f7045ae764a2c23335b6664')
version('1.18', sha256='4aa1a7479bc567b95a59ac6fb79eba49f61884d6fd400f20b7af147d54c5cee5')
@@ -64,6 +65,11 @@ class Leveldb(CMakePackage):
else:
args.append('-DBUILD_SHARED_LIBS=OFF')
+ # The tarball is missing the benchmark and test submodules
+ if self.spec.satisfies('@1.23:'):
+ args.append('-DLEVELDB_BUILD_BENCHMARKS=OFF')
+ args.append('-DLEVELDB_BUILD_TESTS=OFF')
+
return args
@run_after('install')
diff --git a/var/spack/repos/builtin/packages/lftp/package.py b/var/spack/repos/builtin/packages/lftp/package.py
index b67b79bd5b..559be74da7 100644
--- a/var/spack/repos/builtin/packages/lftp/package.py
+++ b/var/spack/repos/builtin/packages/lftp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lhapdf/package.py b/var/spack/repos/builtin/packages/lhapdf/package.py
index 932bb81279..f413b1379a 100644
--- a/var/spack/repos/builtin/packages/lhapdf/package.py
+++ b/var/spack/repos/builtin/packages/lhapdf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Lhapdf(AutotoolsPackage):
homepage = "https://lhapdf.hepforge.org/"
url = "https://lhapdf.hepforge.org/downloads/?f=LHAPDF-6.2.3.tar.gz"
+ tags = ['hep']
+
version('6.3.0', sha256='ed4d8772b7e6be26d1a7682a13c87338d67821847aa1640d78d67d2cef8b9b5d')
version('6.2.3', sha256='d6e63addc56c57b6286dc43ffc56d901516f4779a93a0f1547e14b32cfd82dd1')
@@ -24,15 +26,9 @@ class Lhapdf(AutotoolsPackage):
depends_on('python', type=('build', 'run'))
depends_on('py-cython', type='build')
depends_on('py-setuptools', type='build')
- depends_on('boost', type='build')
- depends_on('yaml-cpp', type='build', when='@:6.1.5')
extends('python')
def configure_args(self):
- args = ['--with-boost=' + self.spec['boost'].prefix,
- 'FCFLAGS=-O3', 'CFLAGS=-O3', 'CXXFLAGS=-O3']
-
- if self.spec.satisfies('@:6.1.5'):
- args.append('--with-yaml-cpp=' + self.spec['yaml-cpp'].prefix)
+ args = ['FCFLAGS=-O3', 'CFLAGS=-O3', 'CXXFLAGS=-O3']
return args
diff --git a/var/spack/repos/builtin/packages/lhapdf5/package.py b/var/spack/repos/builtin/packages/lhapdf5/package.py
index 6506f9da76..7e5879a434 100644
--- a/var/spack/repos/builtin/packages/lhapdf5/package.py
+++ b/var/spack/repos/builtin/packages/lhapdf5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libabigail/package.py b/var/spack/repos/builtin/packages/libabigail/package.py
new file mode 100644
index 0000000000..48ea8664bd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libabigail/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libabigail(AutotoolsPackage):
+ """The ABI Generic Analysis and Instrumentation Library"""
+
+ homepage = "https://sourceware.org/libabigail"
+ url = "https://mirrors.kernel.org/sourceware/libabigail/libabigail-1.8.tar.gz"
+
+ version('1.8', sha256='1cbf260b894ccafc61b2673ba30c020c3f67dbba9dfa88dca3935dff661d665c')
+
+ variant('docs', default=False, description='build documentation')
+
+ depends_on('elfutils', type=('build', 'link'))
+ depends_on('libdwarf')
+ depends_on('libxml2')
+
+ # Libabigail won't generate it's bin without Python
+ depends_on('python@3.8:')
+
+ # Documentation dependencies
+ depends_on('doxygen', type="build", when="+docs")
+ depends_on('py-sphinx', type='build', when="+docs")
diff --git a/var/spack/repos/builtin/packages/libaec/package.py b/var/spack/repos/builtin/packages/libaec/package.py
index 3ea9833b62..c80c40acdf 100644
--- a/var/spack/repos/builtin/packages/libaec/package.py
+++ b/var/spack/repos/builtin/packages/libaec/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libaio/package.py b/var/spack/repos/builtin/packages/libaio/package.py
index ca857f2f16..ceb6f8cb02 100644
--- a/var/spack/repos/builtin/packages/libaio/package.py
+++ b/var/spack/repos/builtin/packages/libaio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libao/package.py b/var/spack/repos/builtin/packages/libao/package.py
new file mode 100644
index 0000000000..4d8ed4a1cc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libao/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libao(AutotoolsPackage):
+ """A Cross-platform Audio Library."""
+
+ homepage = "https://github.com/xiph/libao/"
+ url = "https://github.com/xiph/libao/archive/1.2.2.tar.gz"
+
+ version('1.2.2', sha256='df8a6d0e238feeccb26a783e778716fb41a801536fe7b6fce068e313c0e2bf4d')
+ version('1.2.0', sha256='5ec2d15ee39f218e93a87f5cc8508aaebf5c8b544f42488dcb2b504d97392c99')
+ version('1.1.0', sha256='69edc39fa2759133edfcdee0ec47559067a1a8e7cd718db0eb3c82ca4254aa6b')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('perl')
diff --git a/var/spack/repos/builtin/packages/libapplewm/package.py b/var/spack/repos/builtin/packages/libapplewm/package.py
index b795fafe05..0a730cddb4 100644
--- a/var/spack/repos/builtin/packages/libapplewm/package.py
+++ b/var/spack/repos/builtin/packages/libapplewm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,8 +19,8 @@ class Libapplewm(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xextproto', type='build')
- depends_on('applewmproto@1.4:', type='build')
+ depends_on('xextproto')
+ depends_on('applewmproto@1.4:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libapreq2/package.py b/var/spack/repos/builtin/packages/libapreq2/package.py
new file mode 100644
index 0000000000..f8ffde6ab2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libapreq2/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libapreq2(AutotoolsPackage):
+ """httpd-apreq is subproject of the Apache HTTP Server Project
+ whose committers develop and maintain the libapreq C library
+ and its language bindings for Perl (contributions for additional
+ language bindings are most welcome)."""
+
+ homepage = "https://github.com/gitpan/libapreq2"
+ url = "https://github.com/gitpan/libapreq2/archive/gitpan_version/2.13.tar.gz"
+
+ version('2.13', sha256='477ce8207e89869e1e4520286697a56d4bd6af348899849ecef43c88bf0872d1')
+ version('2.12', sha256='75cc1daa60e781270178c8f9fbe9c68231a7bc96bcc5c7a970cfce75d784b568')
+ version('2.08', sha256='9f491588957415ebe0decdf6758fcb5c0d3eaf05a573bdd51de499ae111ffc53')
+
+ depends_on('apr')
+ depends_on('apr-util')
+ depends_on('httpd')
+ depends_on('perl', type='build')
diff --git a/var/spack/repos/builtin/packages/libarchive/package.py b/var/spack/repos/builtin/packages/libarchive/package.py
index 1e0a09c959..726e46a88c 100644
--- a/var/spack/repos/builtin/packages/libarchive/package.py
+++ b/var/spack/repos/builtin/packages/libarchive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Libarchive(AutotoolsPackage):
homepage = "http://www.libarchive.org"
url = "http://www.libarchive.org/downloads/libarchive-3.1.2.tar.gz"
+ version('3.5.1', sha256='9015d109ec00bb9ae1a384b172bf2fc1dff41e2c66e5a9eeddf933af9db37f5a')
version('3.4.1', sha256='fcf87f3ad8db2e4f74f32526dee62dd1fb9894782b0a503a89c9d7a70a235191')
version('3.3.2', sha256='ed2dbd6954792b2c054ccf8ec4b330a54b85904a80cef477a1c74643ddafa0ce')
version('3.2.1', sha256='72ee1a4e3fd534525f13a0ba1aa7b05b203d186e0c6072a8a4738649d0b3cfd2')
diff --git a/var/spack/repos/builtin/packages/libasr/package.py b/var/spack/repos/builtin/packages/libasr/package.py
new file mode 100644
index 0000000000..2877b58c42
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libasr/package.py
@@ -0,0 +1,16 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libasr(AutotoolsPackage):
+ """libasr is a free, simple and portable asynchronous resolver library."""
+
+ homepage = "https://github.com/OpenSMTPD/libasr"
+ url = "https://github.com/OpenSMTPD/libasr/releases/download/1.0.4/libasr-1.0.4.tar.gz"
+
+ version('1.0.4', sha256='19fb6bed10d15c9775c8d008cd1130155917ae4e801c729fe85e6d88a545dab4')
+ version('1.0.3', sha256='9cd88e0172e6d426438875e09229d1d473d56db546d02b630f9dd14db226d68d')
diff --git a/var/spack/repos/builtin/packages/libassuan/package.py b/var/spack/repos/builtin/packages/libassuan/package.py
index e8ccc861c5..4baf3ffa01 100644
--- a/var/spack/repos/builtin/packages/libassuan/package.py
+++ b/var/spack/repos/builtin/packages/libassuan/package.py
@@ -1,18 +1,21 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
-
class Libassuan(AutotoolsPackage):
"""Libassuan is a small library implementing the so-called Assuan
- protocol."""
+ protocol.
+ """
homepage = "https://gnupg.org/software/libassuan/index.html"
url = "https://gnupg.org/ftp/gcrypt/libassuan/libassuan-2.4.5.tar.bz2"
+ maintainers = ['alalazo']
+
+ version('2.5.5', sha256='8e8c2fcc982f9ca67dcbb1d95e2dc746b1739a4668bc20b3a3c5be632edb34e4')
+ version('2.5.4', sha256='c080ee96b3bd519edd696cfcebdecf19a3952189178db9887be713ccbcb5fbf0')
version('2.5.3', sha256='91bcb0403866b4e7c4bc1cc52ed4c364a9b5414b3994f718c70303f7f765e702')
version('2.4.5', sha256='fbfea5d1dbcdee34f2597b0afb3d8bb4eda96c924a1e01b01c2acde68b81625f')
version('2.4.3', sha256='22843a3bdb256f59be49842abf24da76700354293a066d82ade8134bb5aa2b71')
@@ -21,5 +24,7 @@ class Libassuan(AutotoolsPackage):
def configure_args(self):
return [
+ '--enable-static',
+ '--enable-shared',
'--with-libgpg-error-prefix=' + self.spec['libgpg-error'].prefix
]
diff --git a/var/spack/repos/builtin/packages/libatasmart/package.py b/var/spack/repos/builtin/packages/libatasmart/package.py
index ae7d2ccb0c..b5dfdf1d59 100644
--- a/var/spack/repos/builtin/packages/libatasmart/package.py
+++ b/var/spack/repos/builtin/packages/libatasmart/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libatomic-ops/package.py b/var/spack/repos/builtin/packages/libatomic-ops/package.py
index 9bcfe2d754..47bb378b6e 100644
--- a/var/spack/repos/builtin/packages/libatomic-ops/package.py
+++ b/var/spack/repos/builtin/packages/libatomic-ops/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libbacktrace/package.py b/var/spack/repos/builtin/packages/libbacktrace/package.py
index 64e5832114..cf10357278 100644
--- a/var/spack/repos/builtin/packages/libbacktrace/package.py
+++ b/var/spack/repos/builtin/packages/libbacktrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libbeagle/package.py b/var/spack/repos/builtin/packages/libbeagle/package.py
index 871dc5d2c6..50b0fd4f34 100644
--- a/var/spack/repos/builtin/packages/libbeagle/package.py
+++ b/var/spack/repos/builtin/packages/libbeagle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libbeato/package.py b/var/spack/repos/builtin/packages/libbeato/package.py
index 2f59240a09..eaae48cf6c 100644
--- a/var/spack/repos/builtin/packages/libbeato/package.py
+++ b/var/spack/repos/builtin/packages/libbeato/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libbinio/package.py b/var/spack/repos/builtin/packages/libbinio/package.py
index 75c846fdbf..550de16abb 100644
--- a/var/spack/repos/builtin/packages/libbinio/package.py
+++ b/var/spack/repos/builtin/packages/libbinio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libblastrampoline/package.py b/var/spack/repos/builtin/packages/libblastrampoline/package.py
new file mode 100644
index 0000000000..5559be02fc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libblastrampoline/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libblastrampoline(MakefilePackage):
+ """Using PLT trampolines to provide a BLAS and LAPACK demuxing library."""
+
+ homepage = "https://github.com/staticfloat/libblastrampoline"
+ git = "https://github.com/staticfloat/libblastrampoline.git"
+
+ version('3.0.4', commit='23de7a09bf354fe6f655c457bab5bf47fdd2486d')
+ version('3.0.3', commit='7b502b7bb5d4663df4a928d0f605924cd1a35c1a')
+ version('3.0.2', commit='5882fdf6395afb1ed01a8a10db94b7b3cbd39e16')
+ version('3.0.1', commit='e132e645db28bec024be9410467a6c7a2d0937ae')
+ version('3.0.0', commit='7bb259a69e5bad0adb55171b2bee164a30ce2e91')
+ version('2.2.0', commit='45f4a20ffdba5d368db66d71885312f5f73c2dc7')
+
+ build_directory = 'src'
+
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ make('prefix={0}'.format(prefix), 'install')
diff --git a/var/spack/repos/builtin/packages/libbsd/package.py b/var/spack/repos/builtin/packages/libbsd/package.py
index 3df5860347..5c834d3388 100644
--- a/var/spack/repos/builtin/packages/libbsd/package.py
+++ b/var/spack/repos/builtin/packages/libbsd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,10 @@ class Libbsd(AutotoolsPackage):
"https://mirrors.dotsrc.org/pub/mirrors/exherbo/libbsd-0.9.1.tar.xz"
]
+ version('0.11.3', sha256='ff95cf8184151dacae4247832f8d4ea8800fa127dbd15033ecfe839f285b42a1')
+ version('0.11.2', sha256='9a7fbe60924d40ce4322a00b6f70be07b3704479b2bca1210dd1564924930ff5')
+ version('0.11.1', sha256='0d018e78f85d7d724740a28408f0bf346b7bbe5dc1c7256fb21e640e2a3d5205')
+ version('0.11.0', sha256='9043e24f5898eae6e0ce97bea4f2d15197e90f6e9b91d0c6a8d10fb1405fd562')
version('0.10.0', sha256='34b8adc726883d0e85b3118fa13605e179a62b31ba51f676136ecb2d0bc1a887')
version('0.9.1', sha256='56d835742327d69faccd16955a60b6dcf30684a8da518c4eca0ac713b9e0a7a4')
version('0.9.0', sha256='8a469afd1bab340992cf99e1e6b7ae4f4c54882d663d8a2c5ea52250617afb01')
@@ -26,12 +30,14 @@ class Libbsd(AutotoolsPackage):
version('0.8.6', sha256='467fbf9df1f49af11f7f686691057c8c0a7613ae5a870577bef9155de39f9687')
patch('cdefs.h.patch', when='@0.8.6 %gcc@:4')
- patch('local-elf.h.patch', when='%intel')
+ patch('local-elf.h.patch', when='@:0.10 %intel')
patch('nvhpc.patch', when='%nvhpc')
# https://gitlab.freedesktop.org/libbsd/libbsd/issues/1
conflicts('platform=darwin')
+ depends_on('libmd', when='@0.11:')
+
def patch(self):
# Remove flags not recognized by the NVIDIA compiler
if self.spec.satisfies('%pgi') or self.spec.satisfies('%nvhpc'):
diff --git a/var/spack/repos/builtin/packages/libbson/package.py b/var/spack/repos/builtin/packages/libbson/package.py
index ad33b5a769..730b8637f7 100644
--- a/var/spack/repos/builtin/packages/libbson/package.py
+++ b/var/spack/repos/builtin/packages/libbson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Libbson(Package):
maintainers = ['michaelkuhn']
+ version('1.17.5', sha256='4b15b7e73a8b0621493e4368dc2de8a74af381823ae8f391da3d75d227ba16be')
version('1.17.0', sha256='90aa23a3f92be0a076fe0b903b68276a7973d4e472929943069f503d5ab50cb9')
version('1.16.2', sha256='0a722180e5b5c86c415b9256d753b2d5552901dc5d95c9f022072c3cd336887e')
version('1.9.5', sha256='6bb51b863a4641d6d7729e4b55df8f4389ed534c34eb3a1cda906a53df11072c')
diff --git a/var/spack/repos/builtin/packages/libbytesize/package.py b/var/spack/repos/builtin/packages/libbytesize/package.py
index e4fcdb986a..1a45465a88 100644
--- a/var/spack/repos/builtin/packages/libbytesize/package.py
+++ b/var/spack/repos/builtin/packages/libbytesize/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libc/package.py b/var/spack/repos/builtin/packages/libc/package.py
index e328c40ea1..8ee0c11f39 100644
--- a/var/spack/repos/builtin/packages/libc/package.py
+++ b/var/spack/repos/builtin/packages/libc/package.py
@@ -1,9 +1,9 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
+from llnl.util.filesystem import LibraryList
class Libc(Package):
@@ -20,3 +20,7 @@ class Libc(Package):
provides('iconv', when='+iconv')
provides('rpc', when='+rpc')
+
+ @property
+ def libs(self):
+ return LibraryList([])
diff --git a/var/spack/repos/builtin/packages/libcanberra/package.py b/var/spack/repos/builtin/packages/libcanberra/package.py
index 0d54ba178d..f0775855f0 100644
--- a/var/spack/repos/builtin/packages/libcanberra/package.py
+++ b/var/spack/repos/builtin/packages/libcanberra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcap-ng/package.py b/var/spack/repos/builtin/packages/libcap-ng/package.py
index e5dc1ca1d5..d1e6182c92 100644
--- a/var/spack/repos/builtin/packages/libcap-ng/package.py
+++ b/var/spack/repos/builtin/packages/libcap-ng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,4 +21,25 @@ class LibcapNg(AutotoolsPackage):
depends_on('libtool', type='build')
depends_on('m4', type='build')
depends_on('attr', type='build')
- depends_on('python', type=('build', 'run'))
+ depends_on('swig', type='build')
+ depends_on('python@2.7:', type=('build', 'link', 'run'), when='+python')
+
+ variant('python', default=True, description='Enable python')
+
+ extends('python', when='+python')
+
+ def setup_build_environment(self, env):
+ if self.spec.satisfies('+python'):
+ env.set('PYTHON', self.spec['python'].command.path)
+
+ def configure_args(self):
+ args = []
+ spec = self.spec
+ if spec.satisfies('+python'):
+ if spec.satisfies('^python@3:'):
+ args.extend(['--without-python', '--with-python3'])
+ else:
+ args.extend(['--with-python', '--without-python3'])
+ else:
+ args.extend(['--without-python', '--without-python3'])
+ return args
diff --git a/var/spack/repos/builtin/packages/libcap/package.py b/var/spack/repos/builtin/packages/libcap/package.py
index 443cb0682b..33a0b4093d 100644
--- a/var/spack/repos/builtin/packages/libcap/package.py
+++ b/var/spack/repos/builtin/packages/libcap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcatalyst/package.py b/var/spack/repos/builtin/packages/libcatalyst/package.py
new file mode 100644
index 0000000000..10207d40c1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libcatalyst/package.py
@@ -0,0 +1,40 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libcatalyst(CMakePackage):
+ """Catalyst is an API specification developed for simulations (and other
+ scientific data producers) to analyze and visualize data in situ."""
+
+ homepage = 'https://gitlab.kitware.com/paraview/catalyst'
+ url = "https://gitlab.kitware.com/paraview/catalyst/-/archive/{0}/catalyst-{0}.tar.bz2"
+
+ maintainers = ['mathstuf']
+
+ # master as of 2021-05-12
+ version('8456ccd6015142b5a7705f79471361d4f5644fa7', sha256='5a01f12b271d9d9e9b89f31d45a5f4b8426904483639d38754893adfd3547bab')
+
+ variant('mpi', default=False, description='Enable MPI support')
+ variant('python3', default=False, description='Enable Python3 support')
+
+ depends_on('mpi', when='+mpi')
+
+ # TODO: catalyst doesn't support an external conduit
+ # depends_on('conduit')
+
+ def url_for_version(self, version):
+ _urlfmt = self.url
+ return _urlfmt.format(version)
+
+ def cmake_args(self):
+ """Populate cmake arguments for libcatalyst."""
+ args = [
+ '-DCATALYST_BUILD_TESTING=OFF',
+ self.define_from_variant('CATALYST_USE_MPI', 'mpi')
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/libceed/package.py b/var/spack/repos/builtin/packages/libceed/package.py
index c4f3cbd2b5..b73fa98c4d 100644
--- a/var/spack/repos/builtin/packages/libceed/package.py
+++ b/var/spack/repos/builtin/packages/libceed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcerf/package.py b/var/spack/repos/builtin/packages/libcerf/package.py
index a5c00dabaf..58170ad5ba 100644
--- a/var/spack/repos/builtin/packages/libcerf/package.py
+++ b/var/spack/repos/builtin/packages/libcerf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcgroup/package.py b/var/spack/repos/builtin/packages/libcgroup/package.py
index 797e10d7a4..95d8b2e2fb 100644
--- a/var/spack/repos/builtin/packages/libcgroup/package.py
+++ b/var/spack/repos/builtin/packages/libcgroup/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcint/package.py b/var/spack/repos/builtin/packages/libcint/package.py
index 9696947cdb..946fe97c1d 100644
--- a/var/spack/repos/builtin/packages/libcint/package.py
+++ b/var/spack/repos/builtin/packages/libcint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcircle/CrayPE_configure-ac.patch b/var/spack/repos/builtin/packages/libcircle/CrayPE_configure-ac.patch
new file mode 100644
index 0000000000..40a89f80ba
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libcircle/CrayPE_configure-ac.patch
@@ -0,0 +1,17 @@
+diff --git a/configure.ac b/configure.ac_new
+index 49fcc1c..f0d3d2a 100644
+--- a/configure.ac
++++ b/configure.ac_new
+@@ -59,9 +59,9 @@ AC_SUBST([LIBCIRCLE_SO_VERSION], [3:1:1])
+ AC_SUBST([LIBCIRCLE_API_VERSION], [0.3.0])
+
+ # Check for MPI
+-LX_FIND_MPI
+-test "x$have_C_mpi" = xyes || \
+- AC_MSG_ERROR([You should check to see if MPI is setup properly.])
++#LX_FIND_MPI
++#test "x$have_C_mpi" = xyes || \
++# AC_MSG_ERROR([You should check to see if MPI is setup properly.])
+ AM_CONDITIONAL(HAVE_MPI, [test "x$have_C_mpi" = xyes])
+
+ echo
diff --git a/var/spack/repos/builtin/packages/libcircle/package.py b/var/spack/repos/builtin/packages/libcircle/package.py
index 749483678c..019e2a68aa 100644
--- a/var/spack/repos/builtin/packages/libcircle/package.py
+++ b/var/spack/repos/builtin/packages/libcircle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,15 @@ class Libcircle(AutotoolsPackage):
depends_on('mpi')
depends_on('pkgconfig', type='build')
+ depends_on('libpciaccess', type='link')
+ depends_on('autoconf', when='%cce')
+ depends_on('automake', when='%cce')
+
+ patch('CrayPE_configure-ac.patch', when='%cce')
+
+ @property
+ def force_autoreconf(self):
+ return self.spec.satisfies('%cce')
@when('@master')
def autoreconf(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/libconfig/package.py b/var/spack/repos/builtin/packages/libconfig/package.py
index abed039400..613fe0ac70 100644
--- a/var/spack/repos/builtin/packages/libconfig/package.py
+++ b/var/spack/repos/builtin/packages/libconfig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,3 +22,4 @@ class Libconfig(AutotoolsPackage):
depends_on('autoconf', type=('build'))
depends_on('automake', type=('build'))
depends_on('libtool', type=('build'))
+ depends_on('texinfo', type='build')
diff --git a/var/spack/repos/builtin/packages/libconfuse/package.py b/var/spack/repos/builtin/packages/libconfuse/package.py
index eedbaec83a..37ce54150d 100644
--- a/var/spack/repos/builtin/packages/libconfuse/package.py
+++ b/var/spack/repos/builtin/packages/libconfuse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,3 +19,9 @@ class Libconfuse(AutotoolsPackage):
depends_on('autoconf', type='build')
depends_on('automake', type='build')
depends_on('libtool', type='build')
+ depends_on('gettext', type='build')
+ depends_on('flex', type='build')
+
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./autogen.sh')
diff --git a/var/spack/repos/builtin/packages/libcroco/package.py b/var/spack/repos/builtin/packages/libcroco/package.py
index 254d7973b7..788ae665e2 100644
--- a/var/spack/repos/builtin/packages/libcroco/package.py
+++ b/var/spack/repos/builtin/packages/libcroco/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,15 @@ class Libcroco(AutotoolsPackage):
homepage = "https://developer.gnome.org/libcroco"
url = "http://ftp.gnome.org/pub/gnome/sources/libcroco/0.6/libcroco-0.6.12.tar.xz"
+ version('0.6.13', sha256='767ec234ae7aa684695b3a735548224888132e063f92db585759b422570621d4')
version('0.6.12', sha256='ddc4b5546c9fb4280a5017e2707fbd4839034ed1aba5b7d4372212f34f84f860')
depends_on('glib')
depends_on('libxml2')
+ depends_on('gtk-doc', type='build')
depends_on('pkgconfig', type='build')
+
+ def configure_args(self):
+ # macOS ld does not support this flag
+ # https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/libcroco.rb
+ return ['--disable-Bsymbolic']
diff --git a/var/spack/repos/builtin/packages/libctl/package.py b/var/spack/repos/builtin/packages/libctl/package.py
index 8ed0bf9c56..24c4183cdd 100644
--- a/var/spack/repos/builtin/packages/libctl/package.py
+++ b/var/spack/repos/builtin/packages/libctl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcudf/package.py b/var/spack/repos/builtin/packages/libcudf/package.py
index a25d8e0d32..2fa60e36df 100644
--- a/var/spack/repos/builtin/packages/libcudf/package.py
+++ b/var/spack/repos/builtin/packages/libcudf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcuml/package.py b/var/spack/repos/builtin/packages/libcuml/package.py
index 1645896546..4a1ce60689 100644
--- a/var/spack/repos/builtin/packages/libcuml/package.py
+++ b/var/spack/repos/builtin/packages/libcuml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcumlprims/package.py b/var/spack/repos/builtin/packages/libcumlprims/package.py
index 2373c0e8d9..07bb1e6348 100644
--- a/var/spack/repos/builtin/packages/libcumlprims/package.py
+++ b/var/spack/repos/builtin/packages/libcumlprims/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libcxxwrap-julia/package.py b/var/spack/repos/builtin/packages/libcxxwrap-julia/package.py
new file mode 100644
index 0000000000..ee4caebe13
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libcxxwrap-julia/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class LibcxxwrapJulia(CMakePackage):
+ """This is the C++ library component of the CxxWrap.jl package, distributed as a
+regular CMake library for use in other C++ projects."""
+
+ homepage = "https://github.com/JuliaInterop/libcxxwrap-julia"
+ url = "https://github.com/JuliaInterop/libcxxwrap-julia/archive/refs/tags/v0.8.3.tar.gz"
+ git = "https://github.com/JuliaInterop/libcxxwrap-julia.git"
+
+ maintainers = ['eloop']
+
+ version('master', branch='master')
+ version('0.8.3', sha256='b0421d11bdee5ce8af4922de6dfe3b0e5d69b07bb52894e3a22a477bbd27ee9e')
+ version('0.8.2', sha256='f8b171def3d61904ba8f9a9052a405c25afbfb9a3c5af3dd30bc36a0184ed539')
+
+ depends_on('julia')
diff --git a/var/spack/repos/builtin/packages/libcyaml/package.py b/var/spack/repos/builtin/packages/libcyaml/package.py
new file mode 100644
index 0000000000..dbb0f784cd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libcyaml/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libcyaml(MakefilePackage):
+ """LibCYAML is a C library for reading and writing structured YAML
+ documents. It is written in ISO C11 and licensed under the ISC licence."""
+
+ homepage = "https://github.com/tlsa/libcyaml"
+ url = "https://github.com/tlsa/libcyaml/archive/v1.1.0.tar.gz"
+
+ version('1.1.0', sha256='37a00ed8ec206b60a712acfd44196bef063b8f02e376d8e86f61a7007a81daea')
+
+ depends_on('libyaml')
+
+ def build(self, spec, prefix):
+ make('VARIANT=release')
+
+ def install(self, spec, prefix):
+ make('install', 'VARIANT=release', 'PREFIX={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/libdaemon/package.py b/var/spack/repos/builtin/packages/libdaemon/package.py
index 667037cb8b..6b1ca538af 100644
--- a/var/spack/repos/builtin/packages/libdaemon/package.py
+++ b/var/spack/repos/builtin/packages/libdaemon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libdap4/package.py b/var/spack/repos/builtin/packages/libdap4/package.py
index f93c16cbbd..3df9aa245f 100644
--- a/var/spack/repos/builtin/packages/libdap4/package.py
+++ b/var/spack/repos/builtin/packages/libdap4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -30,7 +30,7 @@ class Libdap4(AutotoolsPackage):
depends_on('flex')
depends_on('curl')
depends_on('libxml2')
- depends_on('libuuid')
+ depends_on('uuid')
def configure_args(self):
# libxml2 exports ./include/libxml2/ instead of ./include/, which we
diff --git a/var/spack/repos/builtin/packages/libdatrie/package.py b/var/spack/repos/builtin/packages/libdatrie/package.py
index 35258168cc..57b3c95f7b 100644
--- a/var/spack/repos/builtin/packages/libdatrie/package.py
+++ b/var/spack/repos/builtin/packages/libdatrie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libdeflate/package.py b/var/spack/repos/builtin/packages/libdeflate/package.py
new file mode 100644
index 0000000000..1af7e00630
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libdeflate/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libdeflate(MakefilePackage):
+ """Heavily optimized library for DEFLATE/zlib/gzip compression and decompression"""
+
+ homepage = "https://github.com/ebiggers/libdeflate"
+ url = "https://github.com/ebiggers/libdeflate/archive/v1.7.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('1.7', sha256='a5e6a0a9ab69f40f0f59332106532ca76918977a974e7004977a9498e3f11350')
+
+ depends_on('zlib')
+ depends_on('gzip')
+
+ def patch(self):
+ filter_file(r'\/usr\/local', self.prefix, 'Makefile')
diff --git a/var/spack/repos/builtin/packages/libdivsufsort/package.py b/var/spack/repos/builtin/packages/libdivsufsort/package.py
index 0dfdb9ea3f..5ad75d948c 100644
--- a/var/spack/repos/builtin/packages/libdivsufsort/package.py
+++ b/var/spack/repos/builtin/packages/libdivsufsort/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,3 +14,7 @@ class Libdivsufsort(CMakePackage):
url = "https://github.com/y-256/libdivsufsort/archive/2.0.1.tar.gz"
version('2.0.1', sha256='9164cb6044dcb6e430555721e3318d5a8f38871c2da9fd9256665746a69351e0')
+
+ def cmake_args(self):
+ args = ['-DBUILD_DIVSUFSORT64=ON']
+ return args
diff --git a/var/spack/repos/builtin/packages/libdmx/package.py b/var/spack/repos/builtin/packages/libdmx/package.py
index 852f313dd3..0a16e2238e 100644
--- a/var/spack/repos/builtin/packages/libdmx/package.py
+++ b/var/spack/repos/builtin/packages/libdmx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class Libdmx(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xextproto', type='build')
- depends_on('dmxproto@2.2.99.1:', type='build')
+ depends_on('xextproto')
+ depends_on('dmxproto@2.2.99.1:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libdrm/package.py b/var/spack/repos/builtin/packages/libdrm/package.py
index adc2964678..c798a457ca 100644
--- a/var/spack/repos/builtin/packages/libdrm/package.py
+++ b/var/spack/repos/builtin/packages/libdrm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libdwarf/package.py b/var/spack/repos/builtin/packages/libdwarf/package.py
index fa37f4e638..71e4787c95 100644
--- a/var/spack/repos/builtin/packages/libdwarf/package.py
+++ b/var/spack/repos/builtin/packages/libdwarf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libeatmydata/package.py b/var/spack/repos/builtin/packages/libeatmydata/package.py
index c339d8b85f..2b3f03cba5 100644
--- a/var/spack/repos/builtin/packages/libeatmydata/package.py
+++ b/var/spack/repos/builtin/packages/libeatmydata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libecpint/package.py b/var/spack/repos/builtin/packages/libecpint/package.py
new file mode 100644
index 0000000000..72598bc015
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libecpint/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libecpint(CMakePackage):
+ """A C++ library for the efficient evaluation of integrals over effective core
+ potentials.
+ """
+
+ homepage = "https://github.com/robashaw/libecpint"
+ url = "https://github.com/robashaw/libecpint/archive/v1.0.4.tar.gz"
+ git = "https://github.com/robashaw/libecpint"
+
+ version('master', branch='master')
+ version('1.0.5', sha256='3ad5ff342b1bc870f5992c296e8bd8aa590c21a9b14333958c601f8916d6f532')
+ version('1.0.4', sha256='fad9d1ac98f8dcd40f7bee69aef653bfa3079f016e43277cbd554e06890aa186')
+ version('1.0.3', sha256='13c3f7d1cf35355e37a903196d5cace60f6a72ae041e8b3502dfabdd19dde17a')
+ version('1.0.2', sha256='2fb73af4d30a40bdd9df9e04b1f762c38ab7ed3a39c11509f3f87250fe0b5778')
+ version('1.0.1', sha256='245b89fe8cb0a92cbbb79c811b48cb15fcfc937389df89387466f1bf76a096bf')
+ version('1.0.0', sha256='47d741cc48a543ef9c85483cb2d5cd1c9f6677fa7e9920886d083b3c25232379')
+
+ depends_on('pugixml')
+ depends_on('googletest')
+
+ def cmake_args(self):
+ args = ['-DBUILD_SHARED_LIBS=ON']
+ return args
diff --git a/var/spack/repos/builtin/packages/libedit/package.py b/var/spack/repos/builtin/packages/libedit/package.py
index fd4bf49de4..5d7cc871ca 100644
--- a/var/spack/repos/builtin/packages/libedit/package.py
+++ b/var/spack/repos/builtin/packages/libedit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class Libedit(AutotoolsPackage):
homepage = "http://thrysoee.dk/editline/"
url = "http://thrysoee.dk/editline/libedit-20170329-3.1.tar.gz"
+ version('3.1-20210216', sha256='2283f741d2aab935c8c52c04b57bf952d02c2c02e651172f8ac811f77b1fc77a')
version('3.1-20191231', sha256='dbb82cb7e116a5f8025d35ef5b4f7d4a3cdd0a3909a146a39112095a2d229071')
version('3.1-20170329', sha256='91f2d90fbd2a048ff6dad7131d9a39e690fd8a8fd982a353f1333dd4017dd4be')
version('3.1-20160903', sha256='0ccbd2e7d46097f136fcb1aaa0d5bc24e23bb73f57d25bee5a852a683eaa7567')
diff --git a/var/spack/repos/builtin/packages/libelf/package.py b/var/spack/repos/builtin/packages/libelf/package.py
index 2f59c61dfa..a2378a6865 100644
--- a/var/spack/repos/builtin/packages/libelf/package.py
+++ b/var/spack/repos/builtin/packages/libelf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libemos/package.py b/var/spack/repos/builtin/packages/libemos/package.py
index 89779b32f6..0c7a53d3a2 100644
--- a/var/spack/repos/builtin/packages/libemos/package.py
+++ b/var/spack/repos/builtin/packages/libemos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libepoxy/package.py b/var/spack/repos/builtin/packages/libepoxy/package.py
index 9fdfd06750..bd771d6313 100644
--- a/var/spack/repos/builtin/packages/libepoxy/package.py
+++ b/var/spack/repos/builtin/packages/libepoxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libestr/package.py b/var/spack/repos/builtin/packages/libestr/package.py
index 2621163b7a..dc4b5a2dfa 100644
--- a/var/spack/repos/builtin/packages/libestr/package.py
+++ b/var/spack/repos/builtin/packages/libestr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libev/package.py b/var/spack/repos/builtin/packages/libev/package.py
index 3cefa8f5ba..85454e43f4 100644
--- a/var/spack/repos/builtin/packages/libev/package.py
+++ b/var/spack/repos/builtin/packages/libev/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libevdev/package.py b/var/spack/repos/builtin/packages/libevdev/package.py
index 6992389c2f..530f9aeaeb 100644
--- a/var/spack/repos/builtin/packages/libevdev/package.py
+++ b/var/spack/repos/builtin/packages/libevdev/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libevent/package.py b/var/spack/repos/builtin/packages/libevent/package.py
index 07a873fc2f..a16e528acb 100644
--- a/var/spack/repos/builtin/packages/libevent/package.py
+++ b/var/spack/repos/builtin/packages/libevent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,9 @@ class Libevent(AutotoolsPackage):
url = "https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz"
list_url = "http://libevent.org/old-releases.html"
+ version('2.1.12', sha256='92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb')
+ version('2.1.11', sha256='a65bac6202ea8c5609fd5c7e480e6d25de467ea1917c08290c521752f147283d')
+ version('2.1.10', sha256='e864af41a336bb11dab1a23f32993afe963c1f69618bd9292b89ecf6904845b0')
version('2.1.8', sha256='965cc5a8bb46ce4199a47e9b2c9e1cae3b137e8356ffdad6d94d3b9069b71dc2')
version('2.0.22', sha256='71c2c49f0adadacfdbe6332a372c38cf9c8b7895bb73dabeaa53cdcc1d4e1fa3')
version('2.0.21', sha256='22a530a8a5ba1cb9c080cba033206b17dacd21437762155c6d30ee6469f574f5')
@@ -54,3 +57,15 @@ class Libevent(AutotoolsPackage):
configure_args.append('--disable-openssl')
return configure_args
+
+ def patch(self):
+ if self.spec.satisfies('%nvhpc'):
+ # Remove incompatible compiler flags
+ filter_file(' -Wmissing-declarations', '', 'configure')
+ filter_file(' -Wbad-function-cast', '', 'configure')
+ filter_file(' -Wno-unused-parameter', '', 'configure')
+ filter_file(' -Wmissing-field-initializers', '', 'configure')
+ filter_file(' -Waddress', '', 'configure')
+ filter_file(' -Wnormalized=id', '', 'configure')
+ filter_file(' -Woverride-init', '', 'configure')
+ filter_file(' -Wlogical-op', '', 'configure')
diff --git a/var/spack/repos/builtin/packages/libevpath/package.py b/var/spack/repos/builtin/packages/libevpath/package.py
index b9ab5129a4..21b935c2f2 100644
--- a/var/spack/repos/builtin/packages/libevpath/package.py
+++ b/var/spack/repos/builtin/packages/libevpath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libexif/package.py b/var/spack/repos/builtin/packages/libexif/package.py
index 5156ee4196..47bea9f5a1 100644
--- a/var/spack/repos/builtin/packages/libexif/package.py
+++ b/var/spack/repos/builtin/packages/libexif/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libfabric/package.py b/var/spack/repos/builtin/packages/libfabric/package.py
index 7bb1e0fce5..d878b380f9 100644
--- a/var/spack/repos/builtin/packages/libfabric/package.py
+++ b/var/spack/repos/builtin/packages/libfabric/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,10 @@ class Libfabric(AutotoolsPackage):
git = "https://github.com/ofiwg/libfabric.git"
version('master', branch='master')
+ version('1.12.1', sha256='db3c8e0a495e6e9da6a7436adab905468aedfbd4579ee3da5232a5c111ba642c')
+ version('1.12.0', sha256='ca98785fe25e68a26c61e272be64a1efeea37e61b0dcebd34ccfd381bda7d9cc')
+ version('1.11.2', sha256='ff2ba821b55a54855d327e6f6fb8a14312c9c9ca7c873525b6a246d8f974d7da')
+ version('1.11.1', sha256='a72a7dac6322bed09ef1af33bcade3024ca5847a1e9c8fa369da6ab879111fe7')
version('1.11.0', sha256='9938abf628e7ea8dcf60a94a4b62d499fbc0dbc6733478b6db2e6a373c80d58f')
version('1.10.1', sha256='889fa8c99eed1ff2a5fd6faf6d5222f2cf38476b24f3b764f2cbb5900fee8284')
version('1.10.0', sha256='c1ef6e9cd6dafec3f003d2f78f0f3a25f055a7a791e98b5a0db1e4c5036e40f6')
diff --git a/var/spack/repos/builtin/packages/libfastcommon/package.py b/var/spack/repos/builtin/packages/libfastcommon/package.py
index fbd3518b58..0b2d4f5c7d 100644
--- a/var/spack/repos/builtin/packages/libfastcommon/package.py
+++ b/var/spack/repos/builtin/packages/libfastcommon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libfastjson/package.py b/var/spack/repos/builtin/packages/libfastjson/package.py
index aa2cadfdc3..b5c1ba3176 100644
--- a/var/spack/repos/builtin/packages/libfastjson/package.py
+++ b/var/spack/repos/builtin/packages/libfastjson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libffi/package.py b/var/spack/repos/builtin/packages/libffi/package.py
index e1c79588ad..ad6a0a8104 100644
--- a/var/spack/repos/builtin/packages/libffi/package.py
+++ b/var/spack/repos/builtin/packages/libffi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,4 +32,9 @@ class Libffi(AutotoolsPackage, SourcewarePackage):
# Spack adds its own target flags, so tell libffi not to
# second-guess us
args.append('--without-gcc-arch')
+ # At the moment, build scripts accept 'aarch64-apple-darwin'
+ # but not 'arm64-apple-darwin'.
+ # See: https://github.com/libffi/libffi/issues/571
+ if self.spec.satisfies('platform=darwin target=aarch64:'):
+ args.append('--build=aarch64-apple-darwin')
return args
diff --git a/var/spack/repos/builtin/packages/libffs/package.py b/var/spack/repos/builtin/packages/libffs/package.py
index 8c7637a7a5..7d1e0d1c6c 100644
--- a/var/spack/repos/builtin/packages/libffs/package.py
+++ b/var/spack/repos/builtin/packages/libffs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libfive/package.py b/var/spack/repos/builtin/packages/libfive/package.py
index e2a9b65d13..8fe0da08c4 100644
--- a/var/spack/repos/builtin/packages/libfive/package.py
+++ b/var/spack/repos/builtin/packages/libfive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libflame/package.py b/var/spack/repos/builtin/packages/libflame/package.py
index c205e54dcf..65a307156d 100644
--- a/var/spack/repos/builtin/packages/libflame/package.py
+++ b/var/spack/repos/builtin/packages/libflame/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -127,3 +127,5 @@ class Libflame(LibflameBase):
provides('flame@5.2', when='@5.2.0')
provides('flame@5.1', when='@5.1.0')
+
+ depends_on('python', type='build')
diff --git a/var/spack/repos/builtin/packages/libfontenc/package.py b/var/spack/repos/builtin/packages/libfontenc/package.py
index b99b708721..907dee3dbb 100644
--- a/var/spack/repos/builtin/packages/libfontenc/package.py
+++ b/var/spack/repos/builtin/packages/libfontenc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,6 @@ class Libfontenc(AutotoolsPackage, XorgPackage):
depends_on('zlib')
- depends_on('xproto', type='build')
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libfs/package.py b/var/spack/repos/builtin/packages/libfs/package.py
index bfbedabc2a..460058d90d 100644
--- a/var/spack/repos/builtin/packages/libfs/package.py
+++ b/var/spack/repos/builtin/packages/libfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,8 @@ class Libfs(AutotoolsPackage, XorgPackage):
version('1.0.7', sha256='91bf1c5ce4115b7dbf4e314fdbee54052708e8f7b6a2ec6e82c309bcbe40ef3d')
- depends_on('xproto@7.0.17:', type='build')
- depends_on('fontsproto', type='build')
- depends_on('xtrans', type='build')
+ depends_on('xproto@7.0.17:')
+ depends_on('fontsproto')
+ depends_on('xtrans')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libfuse/0001-Do-not-run-install-script.patch b/var/spack/repos/builtin/packages/libfuse/0001-Do-not-run-install-script.patch
new file mode 100644
index 0000000000..4e33e83a23
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libfuse/0001-Do-not-run-install-script.patch
@@ -0,0 +1,27 @@
+From daf0c12d13791978bd7eab2ef44c432802fbcc95 Mon Sep 17 00:00:00 2001
+From: Harmen Stoppels <harmenstoppels@gmail.com>
+Date: Wed, 24 Mar 2021 17:29:10 +0100
+Subject: [PATCH] Do not run install script by default
+
+---
+ util/meson.build | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/util/meson.build b/util/meson.build
+index 577668f..ef0bc81 100644
+--- a/util/meson.build
++++ b/util/meson.build
+@@ -20,10 +20,4 @@ if udevrulesdir == ''
+ udevrulesdir = join_paths(udev.get_pkgconfig_variable('udevdir'), 'rules.d')
+ endif
+
+-meson.add_install_script('install_helper.sh',
+- join_paths(get_option('prefix'), get_option('sysconfdir')),
+- join_paths(get_option('prefix'), get_option('bindir')),
+- udevrulesdir,
+- '@0@'.format(get_option('useroot')))
+-
+
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/libfuse/package.py b/var/spack/repos/builtin/packages/libfuse/package.py
index 444fe11a5f..8df03c5366 100644
--- a/var/spack/repos/builtin/packages/libfuse/package.py
+++ b/var/spack/repos/builtin/packages/libfuse/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import re
class Libfuse(MesonPackage):
@@ -11,8 +12,75 @@ class Libfuse(MesonPackage):
Userspace) interface"""
homepage = "https://github.com/libfuse/libfuse"
- url = "https://github.com/libfuse/libfuse/archive/fuse-3.9.3.tar.gz"
+ url = "https://github.com/libfuse/libfuse/releases/download/fuse-2.9.9/fuse-2.9.9.tar.gz"
- version('3.9.4', sha256='9e076ae757a09cac9ce1beb50b3361ae83a831e5abc0f1bf5cdf771cd1320338')
- version('3.9.3', sha256='0f8f7ad9cc6667c6751efa425dd0a665dcc9d75f0b7fc0cb5b85141a514110e9')
- version('3.9.2', sha256='b4409255cbda6f6975ca330f5b04cb335b823a95ddd8c812c3d224ec53478fc0')
+ version('3.10.3', sha256='c32527782cef620df58b162aa29901d1fb13253b029375d5860a2253a810344e')
+ version('3.10.2', sha256='a16f93cc083264afd0d2958a0dc88f24c6c5d40a9f3842c645b1909e13edb75f')
+ version('3.10.1', sha256='d8954e7b4c022c651aa80db3bb4a161437dd285cd5f1a23d0e25f055dcebe00d')
+ version('3.10.0', sha256='52bbb52035f7eeaa54d139e21805d357f848f6e02ac956831d04988165a92c7b')
+ version('3.9.4', sha256='9e076ae757a09cac9ce1beb50b3361ae83a831e5abc0f1bf5cdf771cd1320338')
+ version('3.9.3', sha256='0f8f7ad9cc6667c6751efa425dd0a665dcc9d75f0b7fc0cb5b85141a514110e9')
+ version('3.9.2', sha256='b4409255cbda6f6975ca330f5b04cb335b823a95ddd8c812c3d224ec53478fc0')
+ version('2.9.9', sha256='d0e69d5d608cc22ff4843791ad097f554dd32540ddc9bed7638cc6fea7c1b4b5')
+
+ def url_for_version(self, version):
+ if version < Version("3.0.0"):
+ return "https://github.com/libfuse/libfuse/releases/download/fuse-{0}/fuse-{1}.tar.gz".format(version, version)
+ return "https://github.com/libfuse/libfuse/archive/refs/tags/fuse-{0}.tar.gz".format(version)
+
+ variant('useroot', default=False, description="Use root privileges to make fusermount a setuid binary after installation")
+ variant('system_install', default=False, description=(
+ "Do not run the post-install script "
+ "which typically sets up udev rules and "
+ "and init script in /etc/init.d"))
+
+ conflicts("+useroot", when='~system_install', msg="useroot requires system_install")
+
+ # Drops the install script which does system configuration
+ patch('0001-Do-not-run-install-script.patch', when='@3: ~system_install')
+ patch('https://src.fedoraproject.org/rpms/fuse3/raw/0519b7bf17c4dd1b31ee704d49f8ed94aa5ba6ab/f/fuse3-gcc11.patch', sha256='3ad6719d2393b46615b5787e71778917a7a6aaa189ba3c3e0fc16d110a8414ec', when='@3: %gcc@11:')
+
+ executables = ['^fusermount3?$']
+
+ @classmethod
+ def determine_version(cls, exe):
+ output = Executable(exe)('--version', output=str, error=str)
+ match = re.search(r'^fusermount.*version: (\S+)', output)
+ return match.group(1) if match else None
+
+ def meson_args(self):
+ args = []
+
+ if '+useroot' in self.spec:
+ args.append('-Duseroot=true')
+ else:
+ args.append('-Duseroot=false')
+
+ return args
+
+ # Before libfuse 3.x this was an autotools package
+ @when('@:2')
+ def meson(self, spec, prefix):
+ args = [
+ "--prefix={0}".format(prefix),
+ "MOUNT_FUSE_PATH={0}".format(self.prefix.sbin),
+ "UDEV_RULES_PATH={0}".format(self.prefix.etc),
+ "INIT_D_PATH={0}".format(self.prefix.etc),
+ ]
+
+ if 'default_library=shared' in self.spec:
+ args.extend(['--enable-shared', '--disable-static'])
+ elif 'default_library=static' in self.spec:
+ args.extend(['--disable-shared', '--enable-static'])
+ else:
+ args.extend(['--enable-shared', '--enable-static'])
+
+ configure(*args)
+
+ @when('@:2')
+ def build(self, spec, prefix):
+ make()
+
+ @when('@:2')
+ def install(self, spec, prefix):
+ make("install")
diff --git a/var/spack/repos/builtin/packages/libfyaml/package.py b/var/spack/repos/builtin/packages/libfyaml/package.py
new file mode 100644
index 0000000000..f2ddae06a7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libfyaml/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libfyaml(AutotoolsPackage):
+ """Fully feature complete YAML parser and emitter, supporting the latest
+ YAML spec and passing the full YAML testsuite."""
+
+ homepage = "https://github.com/pantoniou/libfyaml"
+ url = "https://github.com/pantoniou/libfyaml/releases/download/v0.5.7/libfyaml-0.5.7.tar.gz"
+
+ version('0.5.7', sha256='3221f31bb3feba97e544a82d0d5e4711ff0e4101cca63923dc5a1a001c187590')
+
+ depends_on('m4', type='build')
diff --git a/var/spack/repos/builtin/packages/libgcrypt/package.py b/var/spack/repos/builtin/packages/libgcrypt/package.py
index bc566fad52..a0faa4e087 100644
--- a/var/spack/repos/builtin/packages/libgcrypt/package.py
+++ b/var/spack/repos/builtin/packages/libgcrypt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,13 @@ class Libgcrypt(AutotoolsPackage):
homepage = "https://gnupg.org/software/libgcrypt/index.html"
url = "https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.5.tar.bz2"
+ maintainers = ['alalazo']
+
+ version('1.9.3', sha256='97ebe4f94e2f7e35b752194ce15a0f3c66324e0ff6af26659bbfb5ff2ec328fd')
+ version('1.9.2', sha256='b2c10d091513b271e47177274607b1ffba3d95b188bbfa8797f948aec9053c5a')
+ version('1.9.1', sha256='c5a67a8b9b2bd370fb415ed1ee31c7172e5683076493cf4a3678a0fbdf0265d9')
+ version('1.8.7', sha256='03b70f028299561b7034b8966d7dd77ef16ed139c43440925fe8782561974748')
+ version('1.8.6', sha256='0cba2700617b99fc33864a0c16b1fa7fdf9781d9ed3509f5d767178e5fd7b975')
version('1.8.5', sha256='3b4a2a94cb637eff5bdebbcaf46f4d95c4f25206f459809339cdada0eb577ac3')
version('1.8.4', sha256='f638143a0672628fde0cad745e9b14deb85dffb175709cacc1f4fe24b93f2227')
version('1.8.1', sha256='7a2875f8b1ae0301732e878c0cca2c9664ff09ef71408f085c50e332656a78b3')
diff --git a/var/spack/repos/builtin/packages/libgd/package.py b/var/spack/repos/builtin/packages/libgd/package.py
index 697ccd22a4..4b3abd632f 100644
--- a/var/spack/repos/builtin/packages/libgd/package.py
+++ b/var/spack/repos/builtin/packages/libgd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libgeotiff/package.py b/var/spack/repos/builtin/packages/libgeotiff/package.py
index 0551050da4..372bb3950c 100644
--- a/var/spack/repos/builtin/packages/libgeotiff/package.py
+++ b/var/spack/repos/builtin/packages/libgeotiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libgff/package.py b/var/spack/repos/builtin/packages/libgff/package.py
new file mode 100644
index 0000000000..1070d9833e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libgff/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libgff(CMakePackage):
+ """Lightweight GTF/GFF Parser, exposes a C++ interface without drawing in
+ a heavyweight dependency."""
+
+ homepage = "https://github.com/COMBINE-lab/libgff/"
+ url = "https://github.com/COMBINE-lab/libgff/archive/v2.0.0.tar.gz"
+
+ # notify when the package is updated.
+ maintainers = ['ajxander12']
+
+ version('2.0.0', sha256='7656b19459a7ca7d2fd0fcec4f2e0fd0deec1b4f39c703a114e8f4c22d82a99c')
diff --git a/var/spack/repos/builtin/packages/libgit2/package.py b/var/spack/repos/builtin/packages/libgit2/package.py
index dd5d55fb6f..ab25b74f80 100644
--- a/var/spack/repos/builtin/packages/libgit2/package.py
+++ b/var/spack/repos/builtin/packages/libgit2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,7 @@ class Libgit2(CMakePackage):
maintainers = ["AndrewGaspar"]
+ version('1.1.0', sha256='41a6d5d740fd608674c7db8685685f45535323e73e784062cf000a633d420d1e')
version('1.0.1', sha256='1775427a6098f441ddbaa5bd4e9b8a043c7401e450ed761e69a415530fea81d2')
version('1.0.0', sha256='6a1fa16a7f6335ce8b2630fbdbb5e57c4027929ebc56fcd1ac55edb141b409b4')
version('0.99.0', sha256='174024310c1563097a6613a0d3f7539d11a9a86517cd67ce533849065de08a11')
@@ -95,6 +96,6 @@ class Libgit2(CMakePackage):
# Control tests
args.append(
- '-DBUILD_CLAR={0}'.format('ON' if self.run_tests else 'OFF'))
+ self.define('BUILD_CLAR', self.run_tests))
return args
diff --git a/var/spack/repos/builtin/packages/libgpg-error/package.py b/var/spack/repos/builtin/packages/libgpg-error/package.py
index c4978751ff..2083e2e61e 100644
--- a/var/spack/repos/builtin/packages/libgpg-error/package.py
+++ b/var/spack/repos/builtin/packages/libgpg-error/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,22 +12,24 @@ class LibgpgError(AutotoolsPackage):
homepage = "https://www.gnupg.org/related_software/libgpg-error/index.en.html"
url = "https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.37.tar.bz2"
+ maintainers = ['alalazo']
+
+ version('1.42', sha256='fc07e70f6c615f8c4f590a8e37a9b8dd2e2ca1e9408f8e60459c67452b925e23')
+ version('1.41', sha256='64b078b45ac3c3003d7e352a5e05318880a5778c42331ce1ef33d1a0d9922742')
+ version('1.40', sha256='e6b0392e852a8ad069242265c513c946b492b00816f3967a97d297886939623a')
version('1.37', sha256='b32d6ff72a73cf79797f7f2d039e95e9c6f92f0c1450215410840ab62aea9763')
version('1.36', sha256='babd98437208c163175c29453f8681094bcaf92968a15cafb1a276076b33c97c')
version('1.27', sha256='4f93aac6fecb7da2b92871bb9ee33032be6a87b174f54abf8ddf0911a22d29d2')
version('1.21', sha256='b7dbdb3cad63a740e9f0c632a1da32d4afdb694ec86c8625c98ea0691713b84d')
version('1.18', sha256='9ff1d6e61d4cef7c1d0607ceef6d40dc33f3da7a3094170c3718c00153d80810')
- depends_on('awk', type=('build'))
+ depends_on('awk', type='build')
# Patch for using gawk@5, c.f. https://dev.gnupg.org/T4459
patch('awk-5.patch', when='@1.36^gawk@5:')
def configure_args(self):
- args = ['--enable-static']
-
- if self.run_tests:
- args.append('--enable-tests')
- else:
- args.append('--disable-tests')
-
- return args
+ return [
+ '--enable-static',
+ '--enable-shared',
+ '--enable-tests' if self.run_tests else '--disable-tests'
+ ]
diff --git a/var/spack/repos/builtin/packages/libgpuarray/package.py b/var/spack/repos/builtin/packages/libgpuarray/package.py
index 84b0ad541e..012209e502 100644
--- a/var/spack/repos/builtin/packages/libgpuarray/package.py
+++ b/var/spack/repos/builtin/packages/libgpuarray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libgridxc/package.py b/var/spack/repos/builtin/packages/libgridxc/package.py
index 96c7918d95..432cd29d6f 100644
--- a/var/spack/repos/builtin/packages/libgridxc/package.py
+++ b/var/spack/repos/builtin/packages/libgridxc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libgssglue/package.py b/var/spack/repos/builtin/packages/libgssglue/package.py
index d9f28a35e4..c41f6019d0 100644
--- a/var/spack/repos/builtin/packages/libgssglue/package.py
+++ b/var/spack/repos/builtin/packages/libgssglue/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libgtextutils/package.py b/var/spack/repos/builtin/packages/libgtextutils/package.py
index 4c9820f5d2..e92db134a5 100644
--- a/var/spack/repos/builtin/packages/libgtextutils/package.py
+++ b/var/spack/repos/builtin/packages/libgtextutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libharu/package.py b/var/spack/repos/builtin/packages/libharu/package.py
index dc308bb06f..7a61b516b5 100644
--- a/var/spack/repos/builtin/packages/libharu/package.py
+++ b/var/spack/repos/builtin/packages/libharu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libhbaapi/package.py b/var/spack/repos/builtin/packages/libhbaapi/package.py
index acdda6b9c8..4998403ef2 100644
--- a/var/spack/repos/builtin/packages/libhbaapi/package.py
+++ b/var/spack/repos/builtin/packages/libhbaapi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libhio/package.py b/var/spack/repos/builtin/packages/libhio/package.py
index f04dc7c660..e00b99c8a4 100644
--- a/var/spack/repos/builtin/packages/libhio/package.py
+++ b/var/spack/repos/builtin/packages/libhio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,6 +24,7 @@ class Libhio(AutotoolsPackage):
# needed by current and future consumers of libhio
#
version('master', branch='master')
+ version('1.4.1.5', sha256='af5cb2a799a8470ed95847c3b07ea3ad61f8f7d5a2b79c52a46ca784846e8962')
version('1.4.1.4', sha256='6998a424cff97be9a207032b3addd19f292d8ebda72043be92a8f942ae3b4da1')
version('1.4.1.3', sha256='b6ad2354f1bc597e7e55fc989ff50944835d64149f4925c2f45df950919e4d08')
version('1.4.1.2', sha256='87a0f9b72b7aa69485c40d9bd36f02af653b70e8eed3eb0b50eaeb02ff0a9049')
diff --git a/var/spack/repos/builtin/packages/libhugetlbfs/package.py b/var/spack/repos/builtin/packages/libhugetlbfs/package.py
index 9a9ac380aa..bc133c1215 100644
--- a/var/spack/repos/builtin/packages/libhugetlbfs/package.py
+++ b/var/spack/repos/builtin/packages/libhugetlbfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libiberty/package.py b/var/spack/repos/builtin/packages/libiberty/package.py
index 2168223477..e22451d3a8 100644
--- a/var/spack/repos/builtin/packages/libiberty/package.py
+++ b/var/spack/repos/builtin/packages/libiberty/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libibumad/package.py b/var/spack/repos/builtin/packages/libibumad/package.py
index e401073519..73a0e16d0f 100644
--- a/var/spack/repos/builtin/packages/libibumad/package.py
+++ b/var/spack/repos/builtin/packages/libibumad/package.py
@@ -1,5 +1,5 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libical/package.py b/var/spack/repos/builtin/packages/libical/package.py
index 6116b0b649..9d841a6061 100644
--- a/var/spack/repos/builtin/packages/libical/package.py
+++ b/var/spack/repos/builtin/packages/libical/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libice/package.py b/var/spack/repos/builtin/packages/libice/package.py
index 32aa445dd3..bb210343bf 100644
--- a/var/spack/repos/builtin/packages/libice/package.py
+++ b/var/spack/repos/builtin/packages/libice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,12 @@ class Libice(AutotoolsPackage, XorgPackage):
version('1.0.9', sha256='7812a824a66dd654c830d21982749b3b563d9c2dfe0b88b203cefc14a891edc0')
- depends_on('xproto', type='build')
- depends_on('xtrans', type='build')
+ depends_on('xproto')
+ depends_on('xtrans')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
+
+ @property
+ def libs(self):
+ return find_libraries('libICE', self.prefix,
+ shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/libiconv/package.py b/var/spack/repos/builtin/packages/libiconv/package.py
index 9331dfb399..8343d6e68c 100644
--- a/var/spack/repos/builtin/packages/libiconv/package.py
+++ b/var/spack/repos/builtin/packages/libiconv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libid3tag/package.py b/var/spack/repos/builtin/packages/libid3tag/package.py
index 6a9880b00c..67d02284c0 100644
--- a/var/spack/repos/builtin/packages/libid3tag/package.py
+++ b/var/spack/repos/builtin/packages/libid3tag/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libidl/package.py b/var/spack/repos/builtin/packages/libidl/package.py
index facc1f74de..eaa108c7d7 100644
--- a/var/spack/repos/builtin/packages/libidl/package.py
+++ b/var/spack/repos/builtin/packages/libidl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libidn2/package.py b/var/spack/repos/builtin/packages/libidn2/package.py
index 74048d04ac..240174719b 100644
--- a/var/spack/repos/builtin/packages/libidn2/package.py
+++ b/var/spack/repos/builtin/packages/libidn2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,13 +6,14 @@
from spack import *
-class Libidn2(AutotoolsPackage):
+class Libidn2(AutotoolsPackage, GNUMirrorPackage):
"""Libidn2 is a free software implementation of IDNA2008, Punycode and
TR46. Its purpose is to encode and decode internationalized domain
names."""
homepage = "https://gitlab.com/libidn/libidn2"
- url = "https://ftp.gnu.org/gnu/libidn/libidn2-2.0.5.tar.gz"
+ # URL must remain http:// so Spack can bootstrap curl
+ gnu_mirror_path = "libidn/libidn2-2.0.5.tar.gz"
version('2.3.0', sha256='e1cb1db3d2e249a6a3eb6f0946777c2e892d5c5dc7bd91c74394fc3a01cab8b5')
version('2.1.1a', sha256='57666bcf6ecf54230d7bac95c392379561954b57a673903aed4d3336b3048b72')
diff --git a/var/spack/repos/builtin/packages/libimagequant/package.py b/var/spack/repos/builtin/packages/libimagequant/package.py
index 1e8f7752e3..3f992a266a 100644
--- a/var/spack/repos/builtin/packages/libimagequant/package.py
+++ b/var/spack/repos/builtin/packages/libimagequant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libimobiledevice/package.py b/var/spack/repos/builtin/packages/libimobiledevice/package.py
index 6eac7ec688..ab348b63d0 100644
--- a/var/spack/repos/builtin/packages/libimobiledevice/package.py
+++ b/var/spack/repos/builtin/packages/libimobiledevice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libint/package.py b/var/spack/repos/builtin/packages/libint/package.py
index a3b39495f9..4d733635d7 100644
--- a/var/spack/repos/builtin/packages/libint/package.py
+++ b/var/spack/repos/builtin/packages/libint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libisal/package.py b/var/spack/repos/builtin/packages/libisal/package.py
index abcbba46e7..abf16a306c 100644
--- a/var/spack/repos/builtin/packages/libisal/package.py
+++ b/var/spack/repos/builtin/packages/libisal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libiscsi/package.py b/var/spack/repos/builtin/packages/libiscsi/package.py
index 621cc875d6..ea33018c76 100644
--- a/var/spack/repos/builtin/packages/libiscsi/package.py
+++ b/var/spack/repos/builtin/packages/libiscsi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libjpeg-turbo/package.py b/var/spack/repos/builtin/packages/libjpeg-turbo/package.py
index 4b81a01ef6..9f0eb2c3f7 100644
--- a/var/spack/repos/builtin/packages/libjpeg-turbo/package.py
+++ b/var/spack/repos/builtin/packages/libjpeg-turbo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,13 +17,15 @@ class LibjpegTurbo(Package):
homepage = "https://libjpeg-turbo.org/"
url = "https://github.com/libjpeg-turbo/libjpeg-turbo/archive/2.0.3.tar.gz"
+ version('2.0.6', sha256='005aee2fcdca252cee42271f7f90574dda64ca6505d9f8b86ae61abc2b426371')
+ version('2.0.5', sha256='b3090cd37b5a8b3e4dbd30a1311b3989a894e5d3c668f14cbc6739d77c9402b7')
version('2.0.4', sha256='7777c3c19762940cff42b3ba4d7cd5c52d1671b39a79532050c85efb99079064')
version('2.0.3', sha256='a69598bf079463b34d45ca7268462a18b6507fdaa62bb1dfd212f02041499b5d')
version('2.0.2', sha256='b45255bd476c19c7c6b198c07c0487e8b8536373b82f2b38346b32b4fa7bb942')
version('1.5.90', sha256='cb948ade92561d8626fd7866a4a7ba3b952f9759ea3dd642927bc687470f60b7')
- version('1.5.3', sha256='1a17020f859cb12711175a67eab5c71fc1904e04b587046218e36106e07eabde')
- version('1.5.0', sha256='232280e1c9c3e6a1de95fe99be2f7f9c0362ee08f3e3e48d50ee83b9a2ed955b')
- version('1.3.1', sha256='5008aeeac303ea9159a0ec3ccff295434f4e63b05aed4a684c9964d497304524')
+ version('1.5.3', sha256='1a17020f859cb12711175a67eab5c71fc1904e04b587046218e36106e07eabde', deprecated=True)
+ version('1.5.0', sha256='232280e1c9c3e6a1de95fe99be2f7f9c0362ee08f3e3e48d50ee83b9a2ed955b', deprecated=True)
+ version('1.3.1', sha256='5008aeeac303ea9159a0ec3ccff295434f4e63b05aed4a684c9964d497304524', deprecated=True)
provides('jpeg')
diff --git a/var/spack/repos/builtin/packages/libjpeg/package.py b/var/spack/repos/builtin/packages/libjpeg/package.py
index a4d52cca26..b24ab503b5 100644
--- a/var/spack/repos/builtin/packages/libjpeg/package.py
+++ b/var/spack/repos/builtin/packages/libjpeg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,9 @@ class Libjpeg(AutotoolsPackage):
alongside various utilities for handling JPEG data."""
homepage = "http://www.ijg.org"
- url = "http://www.ijg.org/files/jpegsrc.v9c.tar.gz"
+ url = "http://www.ijg.org/files/jpegsrc.v9d.tar.gz"
+ version('9d', sha256='6c434a3be59f8f62425b2e3c077e785c9ce30ee5874ea1c270e843f273ba71ee')
version('9c', sha256='650250979303a649e21f87b5ccd02672af1ea6954b911342ea491f351ceb7122')
version('9b', sha256='240fd398da741669bf3c90366f58452ea59041cacc741a489b99f2f6a0bad052')
version('9a', sha256='3a753ea48d917945dd54a2d97de388aa06ca2eb1066cbfdc6652036349fe05a7')
diff --git a/var/spack/repos/builtin/packages/libjson/package.py b/var/spack/repos/builtin/packages/libjson/package.py
index 7fe27bac95..b9888b06b7 100644
--- a/var/spack/repos/builtin/packages/libjson/package.py
+++ b/var/spack/repos/builtin/packages/libjson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,5 +20,8 @@ class Libjson(MakefilePackage):
version('0.5', sha256='d19e149118c01c4a1f4cd16be3ce54bfc97a7210b6f0d76a3f8ef75bf70e8acd')
version('0.4', sha256='9b3ebbeb1940dbd8664524d27e66d991fedc00cca9f403f9aa9c2f28104ca81b')
+ def edit(self, spec, prefix):
+ filter_file('-o root -g root', '', 'Makefile')
+
def install(self, spec, prefix):
make('install', 'PREFIX={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/libjwt/package.py b/var/spack/repos/builtin/packages/libjwt/package.py
index c37fbb0b19..4e7aca5efb 100644
--- a/var/spack/repos/builtin/packages/libjwt/package.py
+++ b/var/spack/repos/builtin/packages/libjwt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,4 +21,6 @@ class Libjwt(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
+ # Needs openssl at runtime to ensure we can generate keys
+ depends_on('openssl', type=('build', 'run'))
depends_on('jansson')
diff --git a/var/spack/repos/builtin/packages/libkcapi/package.py b/var/spack/repos/builtin/packages/libkcapi/package.py
index c806091073..cb8c112724 100644
--- a/var/spack/repos/builtin/packages/libkcapi/package.py
+++ b/var/spack/repos/builtin/packages/libkcapi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libkml/package.py b/var/spack/repos/builtin/packages/libkml/package.py
index c3e7d7619b..a00d50b510 100644
--- a/var/spack/repos/builtin/packages/libkml/package.py
+++ b/var/spack/repos/builtin/packages/libkml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libksba/package.py b/var/spack/repos/builtin/packages/libksba/package.py
index e153c23d5d..728b93798e 100644
--- a/var/spack/repos/builtin/packages/libksba/package.py
+++ b/var/spack/repos/builtin/packages/libksba/package.py
@@ -1,18 +1,21 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
-
class Libksba(AutotoolsPackage):
"""Libksba is a library to make the tasks of working with X.509
- certificates, CMS data and related objects more easy. """
+ certificates, CMS data and related objects easier.
+ """
homepage = "https://gnupg.org/software/libksba/index.html"
url = "https://gnupg.org/ftp/gcrypt/libksba/libksba-1.3.5.tar.bz2"
+ maintainers = ['alalazo']
+
+ version('1.5.1', sha256='b0f4c65e4e447d9a2349f6b8c0e77a28be9531e4548ba02c545d1f46dc7bf921')
+ version('1.5.0', sha256='ae4af129216b2d7fdea0b5bf2a788cd458a79c983bb09a43f4d525cc87aba0ba')
version('1.4.0', sha256='bfe6a8e91ff0f54d8a329514db406667000cb207238eded49b599761bfca41b6')
version('1.3.5', sha256='41444fd7a6ff73a79ad9728f985e71c9ba8cd3e5e53358e70d5f066d35c1a340')
@@ -22,5 +25,7 @@ class Libksba(AutotoolsPackage):
def configure_args(self):
return [
+ '--enable-static',
+ '--enable-shared',
'--with-libgpg-error-prefix=' + self.spec['libgpg-error'].prefix
]
diff --git a/var/spack/repos/builtin/packages/liblas/package.py b/var/spack/repos/builtin/packages/liblas/package.py
index efdd0b542f..f45f771ca4 100644
--- a/var/spack/repos/builtin/packages/liblas/package.py
+++ b/var/spack/repos/builtin/packages/liblas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/liblbfgs/package.py b/var/spack/repos/builtin/packages/liblbfgs/package.py
new file mode 100644
index 0000000000..fa6b0703ba
--- /dev/null
+++ b/var/spack/repos/builtin/packages/liblbfgs/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Liblbfgs(AutotoolsPackage):
+ """libLBFGS is a C port of the implementation of Limited-memory
+ Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) method written by Jorge Nocedal.
+
+ The L-BFGS method solves the unconstrainted minimization problem:
+ minimize F(x), x = (x1, x2, ..., xN),
+ only if the objective function F(x) and its gradient G(x) are computable."""
+
+ homepage = "http://www.chokkan.org/software/liblbfgs/"
+ url = "https://github.com/downloads/chokkan/liblbfgs/liblbfgs-1.10.tar.gz"
+ git = "https://github.com/chokkan/liblbfgs.git"
+
+ maintainers = ['RemiLacroix-IDRIS']
+
+ version('master', branch='master')
+ version('1.10', sha256='4158ab7402b573e5c69d5f6b03c973047a91e16ca5737d3347e3af9c906868cf')
+
+ depends_on('autoconf', type='build', when='@master')
+ depends_on('automake', type='build', when='@master')
+ depends_on('libtool', type='build', when='@master')
+ depends_on('m4', type='build', when='@master')
diff --git a/var/spack/repos/builtin/packages/liblbxutil/package.py b/var/spack/repos/builtin/packages/liblbxutil/package.py
index 0ab82308c2..12ad6f5964 100644
--- a/var/spack/repos/builtin/packages/liblbxutil/package.py
+++ b/var/spack/repos/builtin/packages/liblbxutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,8 +14,8 @@ class Liblbxutil(AutotoolsPackage, XorgPackage):
version('1.1.0', sha256='285c1bc688cc71ec089e9284f2566d1780cc5d90816e9997890af8689f386951')
- depends_on('xextproto@7.0.99.1:', type='build')
- depends_on('xproto', type='build')
+ depends_on('xextproto@7.0.99.1:')
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
depends_on('zlib', type='link')
diff --git a/var/spack/repos/builtin/packages/liblockfile/package.py b/var/spack/repos/builtin/packages/liblockfile/package.py
index 500b3c80eb..26089a8b57 100644
--- a/var/spack/repos/builtin/packages/liblockfile/package.py
+++ b/var/spack/repos/builtin/packages/liblockfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/liblognorm/package.py b/var/spack/repos/builtin/packages/liblognorm/package.py
new file mode 100644
index 0000000000..5013a0ebef
--- /dev/null
+++ b/var/spack/repos/builtin/packages/liblognorm/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Liblognorm(AutotoolsPackage):
+ """Liblognorm is a fast-samples based normalization library."""
+
+ homepage = "https://www.liblognorm.com/"
+ url = "https://github.com/rsyslog/liblognorm/archive/v2.0.6.tar.gz"
+
+ version('2.0.6', sha256='594ea3318ef419cb7f21cf81c513db35a838b32207999a11a82b709da9ff9a2b')
+ version('2.0.5', sha256='dd779b6992de37995555e1d54caf0716a694765efc65480eed2c713105ab46fe')
+ version('2.0.4', sha256='af4d7d8ce11fb99514169f288163f87cb9ade1cb79595656d96b51b2482c493d')
+ version('2.0.3', sha256='fac2a6a5adbeb63d06a63ab2e398b3fac8625d0ea69db68f1d81196897a9d687')
+ version('2.0.2', sha256='bdd08e9837e8fcca5029ec12c9fb9f16593313f9d743625bab062250e0daa5d8')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('libestr')
+ depends_on('libfastjson')
diff --git a/var/spack/repos/builtin/packages/liblouis/package.py b/var/spack/repos/builtin/packages/liblouis/package.py
new file mode 100644
index 0000000000..90e81a02c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/liblouis/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Liblouis(AutotoolsPackage):
+ """Liblouis is an open-source braille translator and back-translator
+ named in honor of Louis Braille."""
+
+ homepage = "http://liblouis.org/"
+ url = "https://github.com/liblouis/liblouis/releases/download/v3.15.0/liblouis-3.15.0.tar.gz"
+
+ version('3.17.0', sha256='78c71476467850935d145010c8fcb26b513df1843505b3eb4c41888541a0113d')
+ version('3.15.0', sha256='3a381b132b140747e5fcd47354da6cf43959da2167f8bc598430bbac51224467')
+ version('3.14.0', sha256='f5b25f8059dd76595aeb419b1522dda78f281a75a7c56dceaaa443f8c437306a')
+ version('3.13.0', sha256='2803b89a2bff9f02032125fa7b7d0a204a60d8d14f232242344b5f09535e9a01')
+ version('3.12.0', sha256='87d9bad6d75916270bad14bb22fa5f487c7edee4774878c04bef82833bc9467d')
+ version('3.11.0', sha256='b802aba0bff49636907ca748225e21c56ecf3f3ebc143d582430036d4d9f6259')
diff --git a/var/spack/repos/builtin/packages/libluv/package.py b/var/spack/repos/builtin/packages/libluv/package.py
index 191f1da480..6a214ab604 100644
--- a/var/spack/repos/builtin/packages/libluv/package.py
+++ b/var/spack/repos/builtin/packages/libluv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmacaroons/package.py b/var/spack/repos/builtin/packages/libmacaroons/package.py
new file mode 100644
index 0000000000..c024b72b94
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmacaroons/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libmacaroons(AutotoolsPackage):
+ """"This library provides an implementation of macaroons[1], which
+ are flexible authorization tokens that work great in distributed
+ systems."""
+
+ homepage = "https://github.com/rescrv/libmacaroons/"
+ url = "https://github.com/rescrv/libmacaroons/archive/releases/0.3.0.tar.gz"
+
+ version('0.3.0', sha256='e1db403c01b0407a276a84b2aaf54515faebe1a5c1a31ec10857a1917161d109')
+ version('0.2.0', sha256='fa2146d89a4e844703896ece778f0c42b2b0ee3d09dea350ff34fd6873e72018')
+ version('0.1.0', sha256='0aa413d8a793f004874695466f93eed9c8e721524765704fe410694583928007')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('libsodium')
diff --git a/var/spack/repos/builtin/packages/libmad/package.py b/var/spack/repos/builtin/packages/libmad/package.py
index 2af11c4f94..cd9273509f 100644
--- a/var/spack/repos/builtin/packages/libmad/package.py
+++ b/var/spack/repos/builtin/packages/libmad/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmatheval/package.py b/var/spack/repos/builtin/packages/libmatheval/package.py
index b50c4906f7..a58dad199a 100644
--- a/var/spack/repos/builtin/packages/libmatheval/package.py
+++ b/var/spack/repos/builtin/packages/libmatheval/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmaus2/package.py b/var/spack/repos/builtin/packages/libmaus2/package.py
new file mode 100644
index 0000000000..7748d0ce01
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmaus2/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libmaus2(AutotoolsPackage):
+ """libmaus2 is a collection of data structures and algorithmse."""
+
+ homepage = "https://gitlab.com/german.tischler/libmaus2"
+ url = "https://gitlab.com/german.tischler/libmaus2/-/archive/2.0.767-release-20201123131410/libmaus2-2.0.767-release-20201123131410.tar.gz"
+
+ version('2.0.767', sha256='40cec9bef2fb61d8df0a35cdf76c59a1d8389686d393805138c364d0c029f03c',
+ url='https://gitlab.com/german.tischler/libmaus2/-/archive/2.0.767-release-20201123131410/libmaus2-2.0.767-release-20201123131410.tar.gz')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ conflicts('%gcc@:7.9', msg="libmaus2 uses std::filesystem. std::filesystem requires greater than or equal to GCC 8.")
+
+ def setup_build_environment(self, env):
+ if self.spec.satisfies('%gcc@8.0:8.9') or self.spec.satisfies('%fj'):
+ env.append_flags('LDFLAGS', "-lstdc++fs")
diff --git a/var/spack/repos/builtin/packages/libmaxminddb/package.py b/var/spack/repos/builtin/packages/libmaxminddb/package.py
index db1590444a..93afe22ce3 100644
--- a/var/spack/repos/builtin/packages/libmaxminddb/package.py
+++ b/var/spack/repos/builtin/packages/libmaxminddb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmbim/package.py b/var/spack/repos/builtin/packages/libmbim/package.py
new file mode 100644
index 0000000000..ff77ca3d1e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmbim/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libmbim(AutotoolsPackage):
+ """Libmbim is a glib-based library for talking to WWAN modems and
+ devices which speak the Mobile Interface Broadband Model (MBIM)
+ protocol."""
+
+ homepage = "https://github.com/linux-mobile-broadband/libmbim/"
+ url = "https://github.com/linux-mobile-broadband/libmbim/archive/1.20.4.tar.gz"
+
+ version('1.20.4', sha256='edb56afb862a7756dc097086d8fa791c93332f6f1daf27759eff6ddc99a0f50d')
+ version('1.18.0', sha256='47003bfdf78bf32009a1d917f30c063079fa5bd4afc739d6d8ec356070b270df')
+ version('1.16.2', sha256='06b7a9e8430c6ab213d96c71a71469aefc86deb52cffd5e4f75121d9a79545e2')
+ version('1.16.0', sha256='d123426678f415c2ac4544534ed8a9ff54d133c2ba8c982ce667b793e54f8e99')
+ version('1.14.4', sha256='4b2e8723ea50b2e1d22695850c40abb9f7bcb713ea3b9f91f2c350aaa6ae8d1c')
+ version('1.14.2', sha256='bf161c4f78327f8422fd6a820e7e5571d99b719af45429e581bfd6a1585fe4a8')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('glib@:2.62.0')
+
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./autogen.sh')
diff --git a/var/spack/repos/builtin/packages/libmcrypt/package.py b/var/spack/repos/builtin/packages/libmcrypt/package.py
new file mode 100644
index 0000000000..75daf5c23d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmcrypt/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libmcrypt(AutotoolsPackage):
+ """Libmcrypt is a thread-safe library providing a uniform
+ interface to access several block and stream encryption
+ algorithms."""
+
+ homepage = "https://sourceforge.net/projects/mcrypt/files/Libmcrypt/"
+ url = "https://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz"
+
+ version('2.5.8', sha256='e4eb6c074bbab168ac47b947c195ff8cef9d51a211cdd18ca9c9ef34d27a373e')
diff --git a/var/spack/repos/builtin/packages/libmd/package.py b/var/spack/repos/builtin/packages/libmd/package.py
new file mode 100644
index 0000000000..97054e03d1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmd/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libmd(AutotoolsPackage):
+ """This library provides message digest functions found on BSD systems
+ either on their libc (NetBSD, OpenBSD) or libmd (FreeBSD, DragonflyBSD,
+ macOS, Solaris) libraries and lacking on others like GNU systems."""
+
+ homepage = "https://www.hadrons.org/software/libmd/"
+ url = "https://archive.hadrons.org/software/libmd/libmd-1.0.3.tar.xz"
+
+ maintainers = ['haampie']
+
+ version('1.0.3', sha256='5a02097f95cc250a3f1001865e4dbba5f1d15554120f95693c0541923c52af4a')
+ version('1.0.2', sha256='dc66b8278f82e7e1bf774fbd4bc83a0348e8f27afa185b2c2779cfcb3da25013')
+ version('1.0.1', sha256='e14eeb931cf85330f95ff822262d3033125488dfb2f867441e36e2d2c4a34c71')
+ version('1.0.0', sha256='f21aea69f6411cb4307cda1f6378c7ed07830202b5f4cb9e64f681fdaf2d64c7')
diff --git a/var/spack/repos/builtin/packages/libmesh/package.py b/var/spack/repos/builtin/packages/libmesh/package.py
index a828b3c87a..9b6778aa6d 100644
--- a/var/spack/repos/builtin/packages/libmesh/package.py
+++ b/var/spack/repos/builtin/packages/libmesh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmetalink/package.py b/var/spack/repos/builtin/packages/libmetalink/package.py
index 14c8ea8a11..ef2b897c0f 100644
--- a/var/spack/repos/builtin/packages/libmetalink/package.py
+++ b/var/spack/repos/builtin/packages/libmetalink/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmicrodns/package.py b/var/spack/repos/builtin/packages/libmicrodns/package.py
new file mode 100644
index 0000000000..4da7753340
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmicrodns/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libmicrodns(MesonPackage):
+ """Minimal mDNS resolver (and announcer) cross-platform library."""
+
+ homepage = "https://github.com/videolabs/libmicrodns/"
+ url = "https://github.com/videolabs/libmicrodns/releases/download/0.2.0/microdns-0.2.0.tar.xz"
+
+ version('0.2.0', sha256='2da28e7dda4861d76f797f92ac3e6c3e048333b95f9e4fc3a6548ad8afd8c446')
+ version('0.1.2', sha256='666c4b9d86b5b3c37357bb78453c7e8b72cd65ade22d0a7963bfbefe51509b5c')
+ version('0.1.1', sha256='498c81fd07718f449267a207948536cbb527610942d91999488eaea6de301c52')
diff --git a/var/spack/repos/builtin/packages/libmicrohttpd/package.py b/var/spack/repos/builtin/packages/libmicrohttpd/package.py
index 7f6daade04..152afe0e6f 100644
--- a/var/spack/repos/builtin/packages/libmicrohttpd/package.py
+++ b/var/spack/repos/builtin/packages/libmicrohttpd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmmtf-cpp/package.py b/var/spack/repos/builtin/packages/libmmtf-cpp/package.py
index 3b2f58882f..85e03ed35d 100644
--- a/var/spack/repos/builtin/packages/libmmtf-cpp/package.py
+++ b/var/spack/repos/builtin/packages/libmmtf-cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmng/package.py b/var/spack/repos/builtin/packages/libmng/package.py
index fd11340a63..47b447ad93 100644
--- a/var/spack/repos/builtin/packages/libmng/package.py
+++ b/var/spack/repos/builtin/packages/libmng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmnl/package.py b/var/spack/repos/builtin/packages/libmnl/package.py
index 44b5321800..a19e593160 100644
--- a/var/spack/repos/builtin/packages/libmnl/package.py
+++ b/var/spack/repos/builtin/packages/libmnl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmo-unpack/package.py b/var/spack/repos/builtin/packages/libmo-unpack/package.py
index a188f95652..8e174465a5 100644
--- a/var/spack/repos/builtin/packages/libmo-unpack/package.py
+++ b/var/spack/repos/builtin/packages/libmo-unpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmodbus/package.py b/var/spack/repos/builtin/packages/libmodbus/package.py
index bb58528993..de3b732960 100644
--- a/var/spack/repos/builtin/packages/libmodbus/package.py
+++ b/var/spack/repos/builtin/packages/libmodbus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libmonitor/add-monitor-comm-rank-notification.patch b/var/spack/repos/builtin/packages/libmonitor/add-monitor-comm-rank-notification.patch
new file mode 100644
index 0000000000..52a7d338ad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmonitor/add-monitor-comm-rank-notification.patch
@@ -0,0 +1,77 @@
+--- libmonitor/src/callback.c 2021-04-14 16:48:48.829169067 -0500
++++ libmonitor.fixes1/src/callback.c 2021-04-14 16:54:27.034918247 -0500
+@@ -179,3 +179,10 @@
+ MONITOR_DEBUG1("(default callback)\n");
+ return 0;
+ }
++
++void __attribute__ ((weak))
++monitor_mpi_post_comm_rank(void)
++{
++ MONITOR_DEBUG1("(default callback)\n");
++}
++
+--- libmonitor/src/monitor.h 2021-04-14 16:48:48.829169067 -0500
++++ libmonitor.fixes1/src/monitor.h 2021-04-14 16:55:21.539716667 -0500
+@@ -78,6 +78,7 @@
+ extern void monitor_init_mpi(int *argc, char ***argv);
+ extern void monitor_fini_mpi(void);
+ extern void monitor_mpi_post_fini(void);
++extern void monitor_mpi_post_comm_rank(void);
+
+ /*
+ * Monitor support functions.
+--- libmonitor/src/mpi_comm_c.c 2021-04-14 16:48:48.853168977 -0500
++++ libmonitor.fixes1/src/mpi_comm_c.c 2021-04-14 16:56:42.468417362 -0500
+@@ -35,6 +35,7 @@
+ ret = (*real_mpi_comm_size)(comm, &size);
+ ret = (*real_mpi_comm_rank)(comm, rank);
+ monitor_set_mpi_size_rank(size, *rank);
++ monitor_mpi_post_comm_rank();
+
+ return (ret);
+ }
+--- libmonitor/src/mpi_comm_f0.c 2021-04-14 16:48:48.853168977 -0500
++++ libmonitor.fixes1/src/mpi_comm_f0.c 2021-04-14 17:04:22.915714717 -0500
+@@ -34,4 +34,5 @@
+ (*real_mpi_comm_size)(comm, &size, ierror);
+ (*real_mpi_comm_rank)(comm, rank, ierror);
+ monitor_set_mpi_size_rank(size, *rank);
++ monitor_mpi_post_comm_rank();
+ }
+--- libmonitor/src/mpi_comm_f1.c 2021-04-14 16:48:48.853168977 -0500
++++ libmonitor.fixes1/src/mpi_comm_f1.c 2021-04-14 17:04:28.016695854 -0500
+@@ -34,4 +34,5 @@
+ (*real_mpi_comm_size)(comm, &size, ierror);
+ (*real_mpi_comm_rank)(comm, rank, ierror);
+ monitor_set_mpi_size_rank(size, *rank);
++ monitor_mpi_post_comm_rank();
+ }
+--- libmonitor/src/mpi_comm_f2.c 2021-04-14 16:48:48.853168977 -0500
++++ libmonitor.fixes1/src/mpi_comm_f2.c 2021-04-14 17:04:35.276669009 -0500
+@@ -34,4 +34,5 @@
+ (*real_mpi_comm_size)(comm, &size, ierror);
+ (*real_mpi_comm_rank)(comm, rank, ierror);
+ monitor_set_mpi_size_rank(size, *rank);
++ monitor_mpi_post_comm_rank();
+ }
+--- libmonitor/src/pmpi.c 2021-04-14 16:48:48.853168977 -0500
++++ libmonitor.fixes1/src/pmpi.c 2021-04-15 16:54:08.532018684 -0500
+@@ -297,6 +297,7 @@
+ ret = (*real_pmpi_comm_size)(comm, &size);
+ ret = (*real_pmpi_comm_rank)(comm, rank);
+ monitor_set_mpi_size_rank(size, *rank);
++ monitor_mpi_post_comm_rank();
+
+ return (ret);
+ }
+@@ -308,7 +309,8 @@
+ MONITOR_GET_REAL_NAME_WRAP(rank_var, rank_fcn); \
+ (*size_var)(comm, &size, ierror); \
+ (*rank_var)(comm, rank, ierror); \
+- monitor_set_mpi_size_rank(size, *rank);
++ monitor_set_mpi_size_rank(size, *rank); \
++ monitor_mpi_post_comm_rank();
+
+ /*
+ * In Fortran, MPI_Comm is always int.
diff --git a/var/spack/repos/builtin/packages/libmonitor/libmonitorkrell-0000.patch b/var/spack/repos/builtin/packages/libmonitor/libmonitorkrell-0000.patch
deleted file mode 100644
index 3a90106850..0000000000
--- a/var/spack/repos/builtin/packages/libmonitor/libmonitorkrell-0000.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- libmonitor-20130218/configure 2013-02-17 23:08:32.000000000 -0800
-+++ libmonitor-20130218-fixes/configure 2013-02-18 10:34:05.237918411 -0800
-@@ -3600,13 +3600,13 @@
- CFLAGS=$ac_save_CFLAGS
- elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
-- CFLAGS="-g -O2"
-+ CFLAGS="-g -O0"
- else
- CFLAGS="-g"
- fi
- else
- if test "$GCC" = yes; then
-- CFLAGS="-O2"
-+ CFLAGS="-O0"
- else
- CFLAGS=
- fi
diff --git a/var/spack/repos/builtin/packages/libmonitor/package.py b/var/spack/repos/builtin/packages/libmonitor/package.py
index e396d0c80b..bdfeef48b7 100644
--- a/var/spack/repos/builtin/packages/libmonitor/package.py
+++ b/var/spack/repos/builtin/packages/libmonitor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,8 @@ class Libmonitor(AutotoolsPackage):
maintainers = ['mwkrentel']
version('master', branch='master')
+ version('2021.04.27', commit='a2d1b6be23410ef1ad2c9d0006672453803243c2')
+ version('2020.10.15', commit='36e5cb7ebeadfff01476b79ff04f6ec772ba831d')
version('2019.05.31', commit='c9767087d52e58a719aa7f149136b101e499db44')
version('2018.07.18', commit='d28cc1d3c08c02013a68a022a57a6ac73db88166')
version('2013.02.18', commit='4f2311e413fd90583263d6f20453bbe552ccfef3')
@@ -24,13 +26,18 @@ class Libmonitor(AutotoolsPackage):
variant('hpctoolkit', default=False,
description='Configure for HPCToolkit')
- # Configure for Krell and OpenSpeedshop.
- variant('krellpatch', default=False,
- description="Build with openspeedshop based patch.")
+ # Configure for OpenSpeedshop and Survey.
+ # Configure for adding MPI Post Comm Rank support
+ variant('commrank', default=False,
+ description="Build with MPI Post Comm Rank support patch.")
- patch('libmonitorkrell-0000.patch', when='@2013.02.18+krellpatch')
- patch('libmonitorkrell-0001.patch', when='@2013.02.18+krellpatch')
- patch('libmonitorkrell-0002.patch', when='@2013.02.18+krellpatch')
+ variant('dlopen', default=True,
+ description='Override dlopen and dlclose')
+
+ patch('libmonitorkrell-0001.patch', when='@2013.02.18+commrank')
+ patch('libmonitorkrell-0002.patch', when='@2013.02.18+commrank')
+
+ patch('add-monitor-comm-rank-notification.patch', when='@2020.10.15+commrank')
signals = 'SIGBUS, SIGSEGV, SIGPROF, 36, 37, 38'
@@ -55,4 +62,9 @@ class Libmonitor(AutotoolsPackage):
if '+hpctoolkit' in self.spec:
args.append('--enable-client-signals=%s' % self.signals)
+ if '+dlopen' in self.spec:
+ args.append('--enable-dlfcn')
+ else:
+ args.append('--disable-dlfcn')
+
return args
diff --git a/var/spack/repos/builtin/packages/libmpdclient/package.py b/var/spack/repos/builtin/packages/libmpdclient/package.py
new file mode 100644
index 0000000000..e211f83abb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmpdclient/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libmpdclient(MesonPackage):
+ """Libmpdclient is a C library which implements the Music Player
+ Daemon protocol."""
+
+ homepage = "https://www.musicpd.org/"
+ url = "https://github.com/MusicPlayerDaemon/libmpdclient/archive/v2.19.tar.gz"
+
+ version('2.19', sha256='12b566b75c3b6789ff8fc94698497d1f3fbaf0cbf9fa6c3a1e3906ef0d2bcbbb')
+ version('2.18', sha256='9b97d00022f2053c06d87bff40b319dfab930ee2b5fa9b8dec208a2911ca3efc')
+ version('2.17', sha256='06eb4b67c63f64d647e97257ff5f8506bf9c2a26b314bf5d0dd5944995b59fc9')
+ version('2.16', sha256='6651898489b69d2f2f8e94f0ed6ddcc0dd2cdbcf99b02131b790551922558d6c')
+ version('2.15', sha256='dd3d36801e397bf43719a291289ff610af71859c08f3196a506e4b1af43c290c')
diff --git a/var/spack/repos/builtin/packages/libnbc/package.py b/var/spack/repos/builtin/packages/libnbc/package.py
index b3c4795206..35450a6fff 100644
--- a/var/spack/repos/builtin/packages/libnbc/package.py
+++ b/var/spack/repos/builtin/packages/libnbc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libndp/package.py b/var/spack/repos/builtin/packages/libndp/package.py
new file mode 100644
index 0000000000..d0eb3dd71e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libndp/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libndp(AutotoolsPackage):
+ """Libndp - Library for Neighbor Discovery Protocol"""
+
+ homepage = "http://www.libndp.org/"
+ url = "https://github.com/jpirko/libndp/archive/v1.7.tar.gz"
+
+ version('1.7', sha256='44be73630ee785ed9f571f9aaaeba0e1d375fa337fd841270034c813b5b0e6fd')
+ version('1.6', sha256='565d6c4167f83ec697c762ea002f23e8f0b00828d0749b1ce928f068543e5aad')
+ version('1.5', sha256='42c0a8938d4302c72a42e2d954deef7e4903bb3974da6804a929a3cd0b5b6aa7')
+ version('1.4', sha256='b9b23d14e9b2d87745810d9d0e956e9fb45f44e794b1629492850c5a8fbbb083')
+ version('1.3', sha256='e933dc1b9ce85089de8ba0f6ba4c3ec47eba0e9a404e14c1789a6fa9e23793f6')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
diff --git a/var/spack/repos/builtin/packages/libnet/package.py b/var/spack/repos/builtin/packages/libnet/package.py
index 7d042b3101..4e26343dcb 100644
--- a/var/spack/repos/builtin/packages/libnet/package.py
+++ b/var/spack/repos/builtin/packages/libnet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libnetfilter-conntrack/package.py b/var/spack/repos/builtin/packages/libnetfilter-conntrack/package.py
index 3f6097cbd6..31865d1df1 100644
--- a/var/spack/repos/builtin/packages/libnetfilter-conntrack/package.py
+++ b/var/spack/repos/builtin/packages/libnetfilter-conntrack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libnetfilter-cthelper/package.py b/var/spack/repos/builtin/packages/libnetfilter-cthelper/package.py
new file mode 100644
index 0000000000..a733696112
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libnetfilter-cthelper/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class LibnetfilterCthelper(AutotoolsPackage):
+ """Libnetfilter-cthelper library for user space helpers / ALGs"""
+
+ homepage = "https://github.com/vyos/libnetfilter-cthelper/"
+ url = "https://github.com/vyos/libnetfilter-cthelper/archive/VyOS_1.2-2019Q4.tar.gz"
+
+ version('1.2-2019Q4', sha256='15a7b13999d1428d75e720c8116318cd51bec1d365852ae1778d3c85b93a9777')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('libmnl')
diff --git a/var/spack/repos/builtin/packages/libnetfilter-cttimeout/package.py b/var/spack/repos/builtin/packages/libnetfilter-cttimeout/package.py
new file mode 100644
index 0000000000..4a8ca158e3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libnetfilter-cttimeout/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class LibnetfilterCttimeout(AutotoolsPackage):
+ """Conntrack timeout policy library."""
+
+ homepage = "https://github.com/vyos/libnetfilter-cttimeout/"
+ url = "https://github.com/vyos/libnetfilter-cttimeout/archive/VyOS_1.2-2019Q4.tar.gz"
+
+ version('1.2-2019Q4', sha256='71cebdf07a578901b160a54199062a4b4cd445e14742e2c7badc0900d8ae56b6')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('libmnl')
diff --git a/var/spack/repos/builtin/packages/libnetfilter-queue/package.py b/var/spack/repos/builtin/packages/libnetfilter-queue/package.py
new file mode 100644
index 0000000000..2f28ec8a46
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libnetfilter-queue/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class LibnetfilterQueue(AutotoolsPackage):
+ """Libnetfilter-queue libnetfilter queue library."""
+
+ homepage = "https://github.com/vyos/libnetfilter-queue/"
+ url = "https://github.com/vyos/libnetfilter-queue/archive/VyOS_1.2-2019Q4.tar.gz"
+
+ version('1.2-2019Q4', sha256='73b87e600b492cf9e3aa8fb6e9855e1ccc523a7bc466c1fd1a0e6ffa424d746e')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('libnfnetlink')
+ depends_on('libmnl')
diff --git a/var/spack/repos/builtin/packages/libnetworkit/package.py b/var/spack/repos/builtin/packages/libnetworkit/package.py
index de624a27f1..1b9d3c1f40 100644
--- a/var/spack/repos/builtin/packages/libnetworkit/package.py
+++ b/var/spack/repos/builtin/packages/libnetworkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,8 @@ class Libnetworkit(CMakePackage):
maintainers = ['fabratu']
+ version('8.1', sha256='0a22eb839606b9fabfa68c7add12c4de5eee735c6f8bb34420e5916ce5d7f829')
+ version('8.0', sha256='cdf9571043edbe76c447622ed33efe9cba2880f887ca231d98f6d3c22027e20e')
version('7.1', sha256='60026c3be581ae9d5c919c861605082fcb9c8205758b3ddfcde2408153ae166e')
version('7.0', sha256='4faf16c5fae3e14d3c1b6f30e25c6e093dcf6a3dbf021235f3161ac2a527f682')
version('6.1', sha256='22c953ea1054c356663b31c77114c2f0c8fec17e0e707aeec23026241beab9b2')
@@ -40,7 +42,6 @@ class Libnetworkit(CMakePackage):
tlx_libs = spec['libtlx'].prefix
args = ['-DNETWORKIT_EXT_TLX=%s' % tlx_libs,
- '-DNETWORKIT_STATIC=%s' %
- ('ON' if '+static' in spec else 'OFF')]
+ self.define_from_variant('NETWORKIT_STATIC', 'static')]
return args
diff --git a/var/spack/repos/builtin/packages/libnfnetlink/package.py b/var/spack/repos/builtin/packages/libnfnetlink/package.py
index d46de4dace..9ff50c0c09 100644
--- a/var/spack/repos/builtin/packages/libnfnetlink/package.py
+++ b/var/spack/repos/builtin/packages/libnfnetlink/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libnfs/package.py b/var/spack/repos/builtin/packages/libnfs/package.py
new file mode 100644
index 0000000000..20edf14cb4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libnfs/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libnfs(CMakePackage):
+ """LIBNFS is a client library for accessing NFS shares over a network."""
+
+ homepage = "https://sites.google.com/site/libnfstarballs/"
+ url = "https://github.com/sahlberg/libnfs/archive/libnfs-4.0.0.tar.gz"
+
+ version('4.0.0', sha256='6ee77e9fe220e2d3e3b1f53cfea04fb319828cc7dbb97dd9df09e46e901d797d')
+ version('3.0.0', sha256='445d92c5fc55e4a5b115e358e60486cf8f87ee50e0103d46a02e7fb4618566a5')
+ version('2.0.0', sha256='7ea6cd8fa6c461d01091e584d424d28e137d23ff4b65b95d01a3fd0ef95d120e')
+ version('1.11.0', sha256='fc2e45df14d8714ccd07dc2bbe919e45a2e36318bae7f045cbbb883a7854640f')
+ version('1.10.0', sha256='7f6c62a05c7e0f0749f2b13f178a4ed7aaf17bd09e65a10bb147bfe9807da272')
diff --git a/var/spack/repos/builtin/packages/libnfsidmap/package.py b/var/spack/repos/builtin/packages/libnfsidmap/package.py
new file mode 100644
index 0000000000..fa53aaa60f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libnfsidmap/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libnfsidmap(AutotoolsPackage):
+ """Library to help mapping id's, mainly for NFSv4."""
+
+ homepage = "https://github.com/Distrotech/libnfsidmap/"
+ url = "https://github.com/Distrotech/libnfsidmap/archive/libnfsidmap-0-27-rc2.tar.gz"
+
+ version('0-26', sha256='8c6d62285b528d673fcb8908fbe230ae82287b292d90925d014c6f367e8425ef')
+ version('0-25', sha256='dbf844a2aa820d7275eca55c2e392d12453ab4020d37d532ea6beac47efc4725')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./autogen.sh')
diff --git a/var/spack/repos/builtin/packages/libnftnl/package.py b/var/spack/repos/builtin/packages/libnftnl/package.py
index ae95c760fd..ed72bbbd78 100644
--- a/var/spack/repos/builtin/packages/libnftnl/package.py
+++ b/var/spack/repos/builtin/packages/libnftnl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libnl/package.py b/var/spack/repos/builtin/packages/libnl/package.py
index 4a2c1daa73..880fe24dc9 100644
--- a/var/spack/repos/builtin/packages/libnl/package.py
+++ b/var/spack/repos/builtin/packages/libnl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libnotify/package.py b/var/spack/repos/builtin/packages/libnotify/package.py
index 6407fd6406..b11f9dbac9 100644
--- a/var/spack/repos/builtin/packages/libnotify/package.py
+++ b/var/spack/repos/builtin/packages/libnotify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libnova/package.py b/var/spack/repos/builtin/packages/libnova/package.py
index 179c7aa9d1..61ea276cca 100644
--- a/var/spack/repos/builtin/packages/libnova/package.py
+++ b/var/spack/repos/builtin/packages/libnova/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libnrm/package.py b/var/spack/repos/builtin/packages/libnrm/package.py
index 27c3c8e34e..13a9e1dc65 100644
--- a/var/spack/repos/builtin/packages/libnrm/package.py
+++ b/var/spack/repos/builtin/packages/libnrm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libnsl/package.py b/var/spack/repos/builtin/packages/libnsl/package.py
index 8be6d48f71..733ffd5af9 100644
--- a/var/spack/repos/builtin/packages/libnsl/package.py
+++ b/var/spack/repos/builtin/packages/libnsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,12 @@ class Libnsl(AutotoolsPackage):
in a IPv6 ready version."""
homepage = "https://github.com/thkukuk/libnsl"
- url = "https://github.com/thkukuk/libnsl/archive/v1.2.0.tar.gz"
+ url = "https://github.com/thkukuk/libnsl/archive/v1.3.0.tar.gz"
+ version('1.3.0', sha256='8e88017f01dd428f50386186b0cd82ad06c9b2a47f9c5ea6b3023fc6e08a6b0f')
version('1.2.0', sha256='a5a28ef17c4ca23a005a729257c959620b09f8c7f99d0edbfe2eb6b06bafd3f8')
+ version('1.1.0', sha256='f9f0b2e2412aae1d33d40277809d7af1b867f1cb1b7319ad4d0cfa59a75e193a',
+ url='https://github.com/thkukuk/libnsl/archive/1.1.0.tar.gz')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
diff --git a/var/spack/repos/builtin/packages/libogg/package.py b/var/spack/repos/builtin/packages/libogg/package.py
index 71d0d90c98..d19ea2907f 100644
--- a/var/spack/repos/builtin/packages/libogg/package.py
+++ b/var/spack/repos/builtin/packages/libogg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,4 +13,5 @@ class Libogg(AutotoolsPackage):
homepage = "https://www.xiph.org/ogg/"
url = "http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz"
+ version('1.3.4', sha256='fe5670640bd49e828d64d2879c31cb4dde9758681bb664f9bdbf159a01b0c76e')
version('1.3.2', sha256='e19ee34711d7af328cb26287f4137e70630e7261b17cbe3cd41011d73a654692')
diff --git a/var/spack/repos/builtin/packages/liboldx/package.py b/var/spack/repos/builtin/packages/liboldx/package.py
index bab3d9513b..318047e448 100644
--- a/var/spack/repos/builtin/packages/liboldx/package.py
+++ b/var/spack/repos/builtin/packages/liboldx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libopts/package.py b/var/spack/repos/builtin/packages/libopts/package.py
index 76ca316a96..cceb9b1bc0 100644
--- a/var/spack/repos/builtin/packages/libopts/package.py
+++ b/var/spack/repos/builtin/packages/libopts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libp11/package.py b/var/spack/repos/builtin/packages/libp11/package.py
index 66947f8b06..0886aa1e7a 100644
--- a/var/spack/repos/builtin/packages/libp11/package.py
+++ b/var/spack/repos/builtin/packages/libp11/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libpam/package.py b/var/spack/repos/builtin/packages/libpam/package.py
index a4e131f7a7..4081bff4c4 100644
--- a/var/spack/repos/builtin/packages/libpam/package.py
+++ b/var/spack/repos/builtin/packages/libpam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libpaper/package.py b/var/spack/repos/builtin/packages/libpaper/package.py
index ac474b7036..56e81ccbf8 100644
--- a/var/spack/repos/builtin/packages/libpaper/package.py
+++ b/var/spack/repos/builtin/packages/libpaper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libpcap/package.py b/var/spack/repos/builtin/packages/libpcap/package.py
index 6c7614b901..ee1c5aae15 100644
--- a/var/spack/repos/builtin/packages/libpcap/package.py
+++ b/var/spack/repos/builtin/packages/libpcap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,9 @@ class Libpcap(AutotoolsPackage):
list_url = "http://www.tcpdump.org/release/"
url = "http://www.tcpdump.org/release/libpcap-1.8.1.tar.gz"
- version('1.8.1', sha256='673dbc69fdc3f5a86fb5759ab19899039a8e5e6c631749e48dcd9c6f0c83541e')
+ version('1.10.0', sha256='8d12b42623eeefee872f123bd0dc85d535b00df4d42e865f993c40f7bfc92b1e')
+ version('1.9.1', sha256='635237637c5b619bcceba91900666b64d56ecb7be63f298f601ec786ce087094')
+ version('1.8.1', sha256='673dbc69fdc3f5a86fb5759ab19899039a8e5e6c631749e48dcd9c6f0c83541e')
depends_on('flex', type='build')
depends_on('bison', type='build')
diff --git a/var/spack/repos/builtin/packages/libpciaccess/package.py b/var/spack/repos/builtin/packages/libpciaccess/package.py
index c82dedf55e..319da38371 100644
--- a/var/spack/repos/builtin/packages/libpciaccess/package.py
+++ b/var/spack/repos/builtin/packages/libpciaccess/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -34,7 +34,7 @@ class Libpciaccess(AutotoolsPackage, XorgPackage):
def configure_args(self):
config_args = []
- if (self.spec.satisfies('%nvhpc') and
+ if (self.spec.satisfies('%nvhpc@:20.11') and
(self.spec.target.family == 'aarch64' or
self.spec.target.family == 'ppc64le')):
config_args.append('--disable-strict-compilation')
diff --git a/var/spack/repos/builtin/packages/libpeas/package.py b/var/spack/repos/builtin/packages/libpeas/package.py
index ef96d9d91f..a2c89a740e 100644
--- a/var/spack/repos/builtin/packages/libpeas/package.py
+++ b/var/spack/repos/builtin/packages/libpeas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,7 +37,7 @@ class Libpeas(AutotoolsPackage):
depends_on('pango')
depends_on('gnome-common')
depends_on('py-pygobject@3:', type='build')
- depends_on('python@3:', type='build')
+ depends_on('python@3:3.7.9', type='build')
def url_for_version(self, version):
url = 'https://download.gnome.org/sources/libpeas/'
@@ -86,7 +86,7 @@ class Libpeas(AutotoolsPackage):
def autoreconf(self, spec, prefix):
autoreconf_args = ['-ivf']
- aclocal_pkg_list = ['pkg-config',
+ aclocal_pkg_list = ['pkgconfig',
'gettext',
'intltool',
'glib',
diff --git a/var/spack/repos/builtin/packages/libpfm4/package.py b/var/spack/repos/builtin/packages/libpfm4/package.py
index 7b13007056..7f845e9b89 100644
--- a/var/spack/repos/builtin/packages/libpfm4/package.py
+++ b/var/spack/repos/builtin/packages/libpfm4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libpipeline/package.py b/var/spack/repos/builtin/packages/libpipeline/package.py
index e5314da745..4f04bac81e 100644
--- a/var/spack/repos/builtin/packages/libpipeline/package.py
+++ b/var/spack/repos/builtin/packages/libpipeline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libplist/package.py b/var/spack/repos/builtin/packages/libplist/package.py
index 8b102b66fd..c0b4714304 100644
--- a/var/spack/repos/builtin/packages/libplist/package.py
+++ b/var/spack/repos/builtin/packages/libplist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libpmemobj-cpp/package.py b/var/spack/repos/builtin/packages/libpmemobj-cpp/package.py
index 60ee417714..53906cb2ce 100644
--- a/var/spack/repos/builtin/packages/libpmemobj-cpp/package.py
+++ b/var/spack/repos/builtin/packages/libpmemobj-cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,17 +10,27 @@ class LibpmemobjCpp(CMakePackage):
"""C++ bindings for libpmemobj (https://github.com/pmem/pmdk)"""
homepage = "https://github.com/pmem/libpmemobj-cpp"
- url = "https://github.com/pmem/libpmemobj-cpp/archive/1.6.tar.gz"
+ url = "https://github.com/pmem/libpmemobj-cpp/archive/1.12.tar.gz"
git = "https://github.com/pmem/libpmemobj-cpp.git"
- version('develop', branch='master')
- version('1.6', sha256='791bf86c6b9401451e3d20f19cb8799d312b9d58659cb93aa532cd724db554ae')
- version('1.5.1', sha256='0448bac4697f6563789e5bf22b8556288ae67ab916608bc45d0a3baa24c67985')
- version('1.5', sha256='6254aa2fb77977f8b91998eb866216d2af22f4ccbffdfc7932df1dff151da61e')
+ version('develop', branch='master')
+ version('1.12', sha256='5a7e082a862affbd87ff174b790be7db77f7d85d4c583acc34011f1104bc54a9')
+ version('1.11', sha256='2818f3ce23c861222d2765c377e6d4ccf8a2e2f66e4d23e4e2c35f4246f4a403')
+ version('1.10', sha256='bba31d9a1c21b38c20cbe2d2b152effef7e2debfa89a87e0c32de616c31d9191')
+ version('1.9', sha256='0284c20e7f642f16b3d49d576a6540bcf68330962ac273e11b07158b6e769689')
+ version('1.8', sha256='dcf60be1140a90f10b8eeb763d53e3dfcdf5a5b345e10f78d469356642527b32')
+ version('1.7', sha256='53af87a648ff28a74d6856ce2125ca4acdb0c4b78062df1cba18d50d35e3eada')
+ version('1.6', sha256='791bf86c6b9401451e3d20f19cb8799d312b9d58659cb93aa532cd724db554ae')
+ version('1.5.1', sha256='0448bac4697f6563789e5bf22b8556288ae67ab916608bc45d0a3baa24c67985')
+ version('1.5', sha256='6254aa2fb77977f8b91998eb866216d2af22f4ccbffdfc7932df1dff151da61e')
# libpmemobj only supports 'Debug' and 'Release'
variant('build_type', default='Release',
description='CMake build type',
values=('Debug', 'Release'))
- depends_on('pmdk')
+ depends_on('pmdk@master', when='@develop')
+ depends_on('pmdk@1.9:', when='@1.12:')
+ depends_on('pmdk@1.8:', when='@1.9:')
+ depends_on('pmdk@1.7:', when='@1.8:')
+ depends_on('pmdk@1.4:', when='@1.5:')
diff --git a/var/spack/repos/builtin/packages/libpng/package.py b/var/spack/repos/builtin/packages/libpng/package.py
index 3514ff5a36..c9b7c60168 100644
--- a/var/spack/repos/builtin/packages/libpng/package.py
+++ b/var/spack/repos/builtin/packages/libpng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libproxy/package.py b/var/spack/repos/builtin/packages/libproxy/package.py
index 171ed8c28e..b55e24ca95 100644
--- a/var/spack/repos/builtin/packages/libproxy/package.py
+++ b/var/spack/repos/builtin/packages/libproxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,12 @@ class Libproxy(CMakePackage):
homepage = "http://libproxy.github.io/libproxy/"
url = "https://github.com/libproxy/libproxy/archive/0.4.15.tar.gz"
+ version('0.4.17', sha256='88c624711412665515e2800a7e564aabb5b3ee781b9820eca9168035b0de60a9')
+ version('0.4.16', sha256='9e7959d6ae1d6c817f0ac1e253105ce8d99f55d7821c1b6eaef32bf6879c6f0a')
version('0.4.15', sha256='18f58b0a0043b6881774187427ead158d310127fc46a1c668ad6d207fb28b4e0')
version('0.4.14', sha256='6220a6cab837a8996116a0568324cadfd09a07ec16b930d2a330e16d5c2e1eb6')
- version('0.4.13', sha256='d610bc0ef81a18ba418d759c5f4f87bf7102229a9153fb397d7d490987330ffd')
+ version('0.4.13', sha256='d610bc0ef81a18ba418d759c5f4f87bf7102229a9153fb397d7d490987330ffd')
+
+ depends_on('zlib')
+ depends_on('python', type=('build', 'run'), when='@0.4.16:')
+ depends_on('python@:3.6.99', type=('build', 'run'), when='@:0.4.15')
diff --git a/var/spack/repos/builtin/packages/libpsl/package.py b/var/spack/repos/builtin/packages/libpsl/package.py
index 8deec5bd41..0af73be05c 100644
--- a/var/spack/repos/builtin/packages/libpsl/package.py
+++ b/var/spack/repos/builtin/packages/libpsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libpthread-stubs/package.py b/var/spack/repos/builtin/packages/libpthread-stubs/package.py
index 528372f24a..5da23b3f07 100644
--- a/var/spack/repos/builtin/packages/libpthread-stubs/package.py
+++ b/var/spack/repos/builtin/packages/libpthread-stubs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libpulsar/package.py b/var/spack/repos/builtin/packages/libpulsar/package.py
new file mode 100644
index 0000000000..e4972caf00
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libpulsar/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libpulsar(CMakePackage):
+ """libpulsar is a C/C++ client library implementation of the Apache Pulsar
+ protocol."""
+
+ homepage = "https://github.com/apache/pulsar"
+ url = "https://github.com/apache/pulsar/archive/v2.7.0.tar.gz"
+
+ maintainers = ['aahmed-se']
+
+ version('2.7.0',
+ sha256='5bf8e5115075e12c848a9e4474cd47067c3200f7ff13c45f624f7383287e8e5e')
+
+ depends_on('zstd')
+ depends_on('boost')
+ depends_on('protobuf')
+ depends_on('pkgconfig')
+ depends_on('openssl')
+ depends_on('cmake @3.14:', type='build')
+ depends_on('curl', type=('build', 'link'))
+
+ root_cmakelists_dir = 'pulsar-client-cpp'
+
+ def cmake_args(self):
+ args = ["-DBUILD_PYTHON_WRAPPER=OFF", "-DBUILD_TESTS=OFF"]
+ return args
diff --git a/var/spack/repos/builtin/packages/libqglviewer/package.py b/var/spack/repos/builtin/packages/libqglviewer/package.py
new file mode 100644
index 0000000000..eb1e021589
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libqglviewer/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Libqglviewer(QMakePackage):
+ """libQGLViewer is a C++ library based on Qt that eases the creation of
+ OpenGL 3D viewers."""
+
+ homepage = "http://libqglviewer.com/"
+ url = "http://libqglviewer.com/src/libQGLViewer-2.7.2.tar.gz"
+ git = "https://github.com/GillesDebunne/libQGLViewer.git"
+
+ version('2.7.2', sha256='e2d2799dec5cff74548e951556a1fa06a11d9bcde2ce6593f9c27a17543b7c08')
+
+ # http://libqglviewer.com/installUnix.html
+
+ depends_on('qt+gui+opengl')
+ depends_on('freeglut', when='^qt@:3.0')
+ depends_on('glu', type='link')
+
+ build_directory = 'QGLViewer'
+
+ def patch(self):
+ # Build dylib instead of Framework on macOS
+ if self.spec.satisfies('platform=darwin'):
+ filter_file('!staticlib: CONFIG *= lib_bundle', '',
+ join_path('QGLViewer', 'QGLViewer.pro'), string=True)
+
+ def qmake_args(self):
+ return ['PREFIX=' + self.prefix]
+
+ @run_after('install')
+ def darwin_fix(self):
+ if self.spec.satisfies('platform=darwin'):
+ fix_darwin_install_name(self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/libqrencode/package.py b/var/spack/repos/builtin/packages/libqrencode/package.py
new file mode 100644
index 0000000000..6658ed0d12
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libqrencode/package.py
@@ -0,0 +1,44 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Libqrencode(AutotoolsPackage):
+ """libqrencode - a fast and compact QR Code encoding library."""
+
+ homepage = "https://fukuchi.org/works/qrencode/"
+ url = "https://github.com/fukuchi/libqrencode/archive/v4.1.1.tar.gz"
+ git = "https://github.com/fukuchi/libqrencode.git"
+
+ maintainers = ['cessenat']
+
+ version('master', branch='master')
+ version('4.1.1', sha256='5385bc1b8c2f20f3b91d258bf8ccc8cf62023935df2d2676b5b67049f31a049c')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ # We assume a reasonably recent libtool is necessary
+ depends_on('libtool@2.4.2:', type='build')
+ depends_on('m4', type='build')
+ depends_on('pkgconfig', type='build')
+ # https://fukuchi.org/works/qrencode/ requires libpng-dev
+ depends_on('libpng@1.2.0:', type='link')
+
+ def autoreconf(self, spec, prefix):
+ # We had to call for autoreconf as well:
+ # https://stackoverflow.com/questions/3096989/libtool-version-mismatch-error
+ # There appears $LIBTOOLIZE --force --automake --copy is not necessary
+ args = [
+ 'autoreconf --force --install',
+ ]
+ with open('autogen.sh', 'a') as fh:
+ fh.write('\n'.join(args))
+ # https://fukuchi.org/works/qrencode/
+ # If there is no "configure" script in the source code directory,
+ # run "autogen.sh" at first to generate it - this is mandatory if
+ # you downloaded the source from GitHub
+ Executable('./autogen.sh')()
diff --git a/var/spack/repos/builtin/packages/libquo/package.py b/var/spack/repos/builtin/packages/libquo/package.py
index 808eb4e0fe..488c79b0ba 100644
--- a/var/spack/repos/builtin/packages/libquo/package.py
+++ b/var/spack/repos/builtin/packages/libquo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,6 @@ from spack import *
class Libquo(AutotoolsPackage):
-
"""QUO (as in "status quo") is a runtime library that aids in accommodating
thread-level heterogeneity in dynamic, phased MPI+X applications comprising
single- and multi-threaded libraries."""
@@ -16,7 +15,9 @@ class Libquo(AutotoolsPackage):
url = "http://lanl.github.io/libquo/dists/libquo-1.3.1.tar.gz"
git = "https://github.com/lanl/libquo.git"
- version('develop', branch='master')
+ maintainers = ['samuelkgutierrez']
+
+ version('master', branch='master')
version('1.3.1', sha256='407f7c61cc80aa934cf6086f3516a31dee3b803047713c297102452c3d7d6ed1')
version('1.3', sha256='61b0beff15eae4be94b5d3cbcbf7bf757659604465709ed01827cbba45efcf90')
version('1.2.9', sha256='0a64bea8f52f9eecd89e4ab82fde1c5bd271f3866c612da0ce7f38049409429b')
@@ -34,7 +35,11 @@ class Libquo(AutotoolsPackage):
bash('./autogen')
def configure_args(self):
- return [
+ config_args = [
'CC={0}'.format(self.spec['mpi'].mpicc),
'FC={0}'.format(self.spec['mpi'].mpifc)
]
+ if '%pgi' in self.spec:
+ config_args.append('CFLAGS={0}'.format(self.compiler.cc_pic_flag))
+ config_args.append('FCFLAGS={0}'.format(self.compiler.fc_pic_flag))
+ return config_args
diff --git a/var/spack/repos/builtin/packages/librdkafka/package.py b/var/spack/repos/builtin/packages/librdkafka/package.py
index a3157e08d2..e8858dbb68 100644
--- a/var/spack/repos/builtin/packages/librdkafka/package.py
+++ b/var/spack/repos/builtin/packages/librdkafka/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/librelp/package.py b/var/spack/repos/builtin/packages/librelp/package.py
index b22ca5e0f3..ca2d668ae7 100644
--- a/var/spack/repos/builtin/packages/librelp/package.py
+++ b/var/spack/repos/builtin/packages/librelp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,5 +22,6 @@ class Librelp(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
+ depends_on('valgrind', type='test')
depends_on('openssl')
depends_on('gnutls@2.0.0:')
diff --git a/var/spack/repos/builtin/packages/libristra/package.py b/var/spack/repos/builtin/packages/libristra/package.py
new file mode 100644
index 0000000000..8dfd3942f5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libristra/package.py
@@ -0,0 +1,42 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Libristra(CMakePackage):
+ """ The ristra library is a set of support utilities for
+ ristra codes, including simple mathematical operations, physical
+ units, and input parsing
+ """
+ homepage = 'https://github.com/laristra/libristra'
+ url = 'https://github.com/laristra/libristra/archive/master.zip'
+ git = 'https://github.com/laristra/libristra.git'
+
+ version('master', branch='master', submodules=False, preferred=True)
+ version('1.0.0', commit='33235fe0334ca7f1f99b386a90932d9f8e1e71de')
+
+ variant('build_type', default='Release', values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'),
+ description='The build type to build', multi=False)
+ variant('paraview', default=False, description='Enable ParaView')
+ variant('shared_lua', default=False, description='Build with shared lua')
+
+ depends_on('cmake@3.12:')
+ depends_on('mpi')
+ depends_on('boost@1.70.0: cxxstd=17 +program_options')
+ depends_on('lua@5.3.5~shared', when='~shared_lua')
+ depends_on('lua@5.3.5+shared', when='+shared_lua')
+ # TODO: might want to move paraview out of libristra
+ depends_on('paraview', when='+paraview')
+ # We explicitly depend on gtest and can no longer rely on others for it
+ depends_on('googletest@1.8.1+gmock')
+
+ def cmake_args(self):
+ options = ['-DENABLE_LUA=ON']
+
+ options.append(self.define('ENABLE_UNIT_TESTS', self.run_tests))
+
+ return options
diff --git a/var/spack/repos/builtin/packages/librmm/package.py b/var/spack/repos/builtin/packages/librmm/package.py
index 69604ac0cb..943a2d97ae 100644
--- a/var/spack/repos/builtin/packages/librmm/package.py
+++ b/var/spack/repos/builtin/packages/librmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/librom/package.py b/var/spack/repos/builtin/packages/librom/package.py
index e71e6cf9c6..de73ebf0c2 100644
--- a/var/spack/repos/builtin/packages/librom/package.py
+++ b/var/spack/repos/builtin/packages/librom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/librsb/package.py b/var/spack/repos/builtin/packages/librsb/package.py
index 58f74af62f..c3e8664998 100644
--- a/var/spack/repos/builtin/packages/librsb/package.py
+++ b/var/spack/repos/builtin/packages/librsb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/librsvg/package.py b/var/spack/repos/builtin/packages/librsvg/package.py
index 32dfc79d30..edf246d52c 100644
--- a/var/spack/repos/builtin/packages/librsvg/package.py
+++ b/var/spack/repos/builtin/packages/librsvg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,12 +12,15 @@ class Librsvg(AutotoolsPackage):
homepage = "https://wiki.gnome.org/Projects/LibRsvg"
url = "https://download.gnome.org/sources/librsvg/2.44/librsvg-2.44.14.tar.xz"
+ version('2.51.0', sha256='89d32e38445025e1b1d9af3dd9d3aeb9f6fce527aeecbecf38b369b34c80c038')
+ version('2.50.2', sha256='6211f271ce4cd44a7318190d36712e9cea384a933d3e3570004edeb210a056d3')
version('2.50.0', sha256='b3fadba240f09b9c9898ab20cb7311467243e607cf8f928b7c5f842474ee3df4')
version('2.44.14', sha256='6a85a7868639cdd4aa064245cc8e9d864dad8b8e9a4a8031bb09a4796bc4e303')
depends_on("gobject-introspection", type='build')
depends_on("pkgconfig", type='build')
depends_on("rust", type='build')
+ depends_on('gtk-doc', type='build')
depends_on("cairo+gobject")
depends_on("gdk-pixbuf")
depends_on("glib")
diff --git a/var/spack/repos/builtin/packages/librtlsdr/package.py b/var/spack/repos/builtin/packages/librtlsdr/package.py
index 43a0b10d47..563ffa7be1 100644
--- a/var/spack/repos/builtin/packages/librtlsdr/package.py
+++ b/var/spack/repos/builtin/packages/librtlsdr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libsakura/cmakelists.patch b/var/spack/repos/builtin/packages/libsakura/cmakelists.patch
new file mode 100644
index 0000000000..458b4435da
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libsakura/cmakelists.patch
@@ -0,0 +1,38 @@
+diff -ur a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt 2016-09-15 02:39:32.000000000 -0600
++++ b/CMakeLists.txt 2021-03-10 10:00:28.227544744 -0700
+@@ -46,10 +46,7 @@
+
+ message(STATUS "CMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}")
+
+-
+-find_path(GTEST_INCLUDE_DIRS gtest/gtest.h PATHS ${PROJECT_SOURCE_DIR}/gtest/include)
+-set(GTEST_LIBRARIES ${PROJECT_BINARY_DIR}/bingtest/libgtest.a)
+-set(GTEST_MAIN_LIBRARIES ${PROJECT_BINARY_DIR}/bingtest/libgtest_main.a)
++list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake-modules")
+
+ # sakura root directory
+ set(SAKURA_ROOT_DIR ${PROJECT_SOURCE_DIR})
+@@ -57,5 +54,3 @@
+ #set(CMAKE_BUILD_TYPE Release)
+
+ add_subdirectory(src bin)
+-add_subdirectory(gtest bingtest)
+-add_subdirectory(test bintest)
+diff -ur a/src/CMakeLists.txt b/src/CMakeLists.txt
+--- a/src/CMakeLists.txt 2016-09-15 02:39:32.000000000 -0600
++++ spack-src/src/CMakeLists.txt 2021-03-10 09:56:22.399794093 -0700
+@@ -25,12 +25,10 @@
+
+ project(libsakura)
+
+-set(CMAKE_MODULE_PATH ../cmake-modules CACHE STRING "List of directories to search for CMake modules")
+-
+ find_package(Threads)
+ find_package(Eigen3 3.2.0 REQUIRED)
+ find_package(Log4Cxx)
+-find_package(FFTW3 3.3.2 REQUIRED)
++find_package(FFTW3 3.3.2 MODULE REQUIRED)
+ include(SetArchFlags)
+
+ set(CMAKE_INSTALL_PREFIX /usr/local)
diff --git a/var/spack/repos/builtin/packages/libsakura/package.py b/var/spack/repos/builtin/packages/libsakura/package.py
new file mode 100644
index 0000000000..20bf879a0d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libsakura/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from spack import *
+
+
+class Libsakura(CMakePackage):
+ """High-performance, thread-safe library compatible with C and C++
+ that is optimized for data analysis of astronomy and astrophysics.
+ """
+
+ homepage = "https://alma-intweb.mtk.nao.ac.jp/~sakura/api/html/index.html"
+ url = "https://alma-dl.mtk.nao.ac.jp/ftp/sakura/releases/src/libsakura-4.0.2065/libsakura-4.0.2065.tar.gz"
+
+ maintainers = ['mpokorny']
+
+ version('4.0.2065', sha256='3fde3713b1ca539f0b2397ec72a0086a3138ef63f89dce4be51ee60585df995f')
+ version('3.0.2025', sha256='381a49d57cbc88dea15e08f7ed64ba57481d25bce8e5f68938dd4b6a30589c16')
+
+ depends_on('cmake@2.8:', type='build')
+
+ depends_on('eigen@3.2:')
+ depends_on('fftw@3.3.2: precision=float', when='@:3.99')
+ depends_on('fftw@3.3.2: precision=double', when='@4.0.0:')
+ depends_on('log4cxx')
+
+ patch('cmakelists.patch')
+
+ def cmake_args(self):
+ args = ['-DSIMD_ARCH=native', '-DBUILD_DOC:BOOL=OFF']
+ return args
diff --git a/var/spack/repos/builtin/packages/libsamplerate/package.py b/var/spack/repos/builtin/packages/libsamplerate/package.py
index fcab8be9d3..c77ddb1ad3 100644
--- a/var/spack/repos/builtin/packages/libsamplerate/package.py
+++ b/var/spack/repos/builtin/packages/libsamplerate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libseccomp/package.py b/var/spack/repos/builtin/packages/libseccomp/package.py
index e1c1374964..6362cc9cce 100644
--- a/var/spack/repos/builtin/packages/libseccomp/package.py
+++ b/var/spack/repos/builtin/packages/libseccomp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libsecret/package.py b/var/spack/repos/builtin/packages/libsecret/package.py
index 6302b9c69d..20843a25f5 100644
--- a/var/spack/repos/builtin/packages/libsecret/package.py
+++ b/var/spack/repos/builtin/packages/libsecret/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,7 +21,7 @@ class Libsecret(AutotoolsPackage):
version('0.18.8', sha256='3bfa889d260e0dbabcf5b9967f2aae12edcd2ddc9adc365de7a5cc840c311d15')
variant('gcrypt', default=True, description='Build with libgcrypt')
- variant('gobj', default=True, description='Build with gobject-introspection')
+ variant('gobj', default=False, description='Build with gobject-introspection')
# Optional Vala support is not implemented yet
# variant('vala', default=False, descript='Build with Vala support')
diff --git a/var/spack/repos/builtin/packages/libsharp/package.py b/var/spack/repos/builtin/packages/libsharp/package.py
index aa7e5184b6..cacf6ad879 100644
--- a/var/spack/repos/builtin/packages/libsharp/package.py
+++ b/var/spack/repos/builtin/packages/libsharp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libshm/package.py b/var/spack/repos/builtin/packages/libshm/package.py
index 9938493cc4..6e5a1f0bf6 100644
--- a/var/spack/repos/builtin/packages/libshm/package.py
+++ b/var/spack/repos/builtin/packages/libshm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libsigcpp/package.py b/var/spack/repos/builtin/packages/libsigcpp/package.py
index bb62980d73..45060441a4 100644
--- a/var/spack/repos/builtin/packages/libsigcpp/package.py
+++ b/var/spack/repos/builtin/packages/libsigcpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libsigsegv/package.py b/var/spack/repos/builtin/packages/libsigsegv/package.py
index 119778f018..bee12e25b9 100644
--- a/var/spack/repos/builtin/packages/libsigsegv/package.py
+++ b/var/spack/repos/builtin/packages/libsigsegv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,8 +8,9 @@ class Libsigsegv(AutotoolsPackage, GNUMirrorPackage):
"""GNU libsigsegv is a library for handling page faults in user mode."""
homepage = "https://www.gnu.org/software/libsigsegv/"
- gnu_mirror_path = "libsigsegv/libsigsegv-2.12.tar.gz"
+ gnu_mirror_path = "libsigsegv/libsigsegv-2.13.tar.gz"
+ version('2.13', sha256='be78ee4176b05f7c75ff03298d84874db90f4b6c9d5503f0da1226b3a3c48119')
version('2.12', sha256='3ae1af359eebaa4ffc5896a1aee3568c052c99879316a1ab57f8fe1789c390b6')
version('2.11', sha256='dd7c2eb2ef6c47189406d562c1dc0f96f2fc808036834d596075d58377e37a18')
version('2.10', sha256='8460a4a3dd4954c3d96d7a4f5dd5bc4d9b76f5754196aa245287553b26d2199a')
diff --git a/var/spack/repos/builtin/packages/libsm/package.py b/var/spack/repos/builtin/packages/libsm/package.py
index 922018ae3e..aec4fe364e 100644
--- a/var/spack/repos/builtin/packages/libsm/package.py
+++ b/var/spack/repos/builtin/packages/libsm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,10 +16,14 @@ class Libsm(AutotoolsPackage, XorgPackage):
version('1.2.2', sha256='14bb7c669ce2b8ff712fbdbf48120e3742a77edcd5e025d6b3325ed30cf120f4')
depends_on('libice@1.0.5:')
- depends_on('libuuid')
+ depends_on('uuid')
- depends_on('xproto', type='build')
- depends_on('xtrans', type='build')
+ depends_on('xproto')
+ depends_on('xtrans')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
- depends_on('libuuid')
+
+ @property
+ def libs(self):
+ return find_libraries('libSM', self.prefix,
+ shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/libsndfile/package.py b/var/spack/repos/builtin/packages/libsndfile/package.py
index 4c5c294d48..7044bf83b9 100644
--- a/var/spack/repos/builtin/packages/libsndfile/package.py
+++ b/var/spack/repos/builtin/packages/libsndfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libsodium/package.py b/var/spack/repos/builtin/packages/libsodium/package.py
index b2f44c0153..714822fd55 100644
--- a/var/spack/repos/builtin/packages/libsodium/package.py
+++ b/var/spack/repos/builtin/packages/libsodium/package.py
@@ -1,9 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import llnl.util.tty as tty
+import os
class Libsodium(AutotoolsPackage):
@@ -26,8 +28,19 @@ class Libsodium(AutotoolsPackage):
def url_for_version(self, version):
url = 'https://download.libsodium.org/libsodium/releases/'
- if version < Version('1.0.4'):
+ if version < Version('1.0.16'):
url += 'old/unsupported/'
- elif version < Version('1.0.16'):
+ elif version < Version('1.0.17'):
url += 'old/'
return url + 'libsodium-{0}.tar.gz'.format(version)
+
+ def patch(self):
+ # Necessary on ppc64le / aarch64, because Spack tries to execute these scripts
+ # to check if they work (see lib/spack/spack/build_systems/autotools.py).
+ try:
+ os.chmod("build-aux/config.guess", 0o755)
+ os.chmod("build-aux/config.sub", 0o755)
+ except OSError:
+ # Old versions of libsodium don't have these files.
+ tty.debug("Couldn't chmod config.guess or config.sub: file not found")
+ pass
diff --git a/var/spack/repos/builtin/packages/libspatialindex/package.py b/var/spack/repos/builtin/packages/libspatialindex/package.py
index 8ffd6d4cf5..cc2ff83297 100644
--- a/var/spack/repos/builtin/packages/libspatialindex/package.py
+++ b/var/spack/repos/builtin/packages/libspatialindex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libspatialite/package.py b/var/spack/repos/builtin/packages/libspatialite/package.py
index 2eb9b9df2f..4a26515272 100644
--- a/var/spack/repos/builtin/packages/libspatialite/package.py
+++ b/var/spack/repos/builtin/packages/libspatialite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,17 +13,19 @@ class Libspatialite(AutotoolsPackage):
homepage = "http://www.gaia-gis.it"
url = "http://www.gaia-gis.it/gaia-sins/libspatialite-sources/libspatialite-4.3.0a.tar.gz"
+ manual_download = True
+ version('5.0.0', preferred=True, sha256='7b7fd70243f5a0b175696d87c46dde0ace030eacc27f39241c24bac5dfac6dac')
# Must download manually from:
# https://www.gaia-gis.it/fossil/libspatialite/info/c7f67038bf06d98d
# For instructions on the file:// below..
# https://github.com/spack/spack/issues/2489
version('5.0.0.2.c7f67038bf',
- sha256='f8100f71b769c7db066c6f938af6b00e920e4b90ac14c00a4f3ed7171565caab',
- url="file://%s/SpatiaLite-c7f67038bf.tar.gz" % os.getcwd())
+ sha256='f8100f71b769c7db066c6f938af6b00e920e4b90ac14c00a4f3ed7171565caab',
+ url="file://%s/SpatiaLite-c7f67038bf.tar.gz" % os.getcwd())
version('5.0.0-beta0', sha256='caacf5378a5cfab9b8e98bb361e2b592e714e21f5c152b795df80d0ab1da1c42')
- version('4.3.0a', preferred=True,
+ version('4.3.0a',
sha256='88900030a4762904a7880273f292e5e8ca6b15b7c6c3fb88ffa9e67ee8a5a499')
version('3.0.1', sha256='4983d6584069fd5ff0cfcccccee1015088dab2db177c0dc7050ce8306b68f8e6')
@@ -37,3 +39,4 @@ class Libspatialite(AutotoolsPackage):
depends_on('freexl')
depends_on('iconv')
depends_on('libxml2')
+ depends_on('minizip', when='@5.0.0:')
diff --git a/var/spack/repos/builtin/packages/libspiro/package.py b/var/spack/repos/builtin/packages/libspiro/package.py
index ae8ac30841..51af137d8b 100644
--- a/var/spack/repos/builtin/packages/libspiro/package.py
+++ b/var/spack/repos/builtin/packages/libspiro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libsplash/package.py b/var/spack/repos/builtin/packages/libsplash/package.py
index c45deeae40..1d7026a664 100644
--- a/var/spack/repos/builtin/packages/libsplash/package.py
+++ b/var/spack/repos/builtin/packages/libsplash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -45,10 +45,8 @@ class Libsplash(CMakePackage):
if spec.satisfies('@1.7.0:'):
args += [
- '-DSplash_USE_MPI:BOOL={0}'.format(
- 'ON' if '+mpi' in spec else 'OFF'),
- '-DSplash_USE_PARALLEL:BOOL={0}'.format(
- 'ON' if '+mpi' in spec else 'OFF')
+ self.define_from_variant('Splash_USE_MPI', 'mpi'),
+ self.define_from_variant('Splash_USE_PARALLEL', 'mpi')
]
return args
diff --git a/var/spack/repos/builtin/packages/libssh/package.py b/var/spack/repos/builtin/packages/libssh/package.py
index 693b69ec00..02bad9790e 100644
--- a/var/spack/repos/builtin/packages/libssh/package.py
+++ b/var/spack/repos/builtin/packages/libssh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,5 @@ class Libssh(CMakePackage):
return url.format(version.up_to(2), version)
def cmake_args(self):
- args = ['-DWITH_GSSAPI=%s' %
- ('ON' if '+gssapi' in self.spec else 'OFF')]
+ args = [self.define_from_variant('WITH_GSSAPI', 'gssapi')]
return args
diff --git a/var/spack/repos/builtin/packages/libssh2/package.py b/var/spack/repos/builtin/packages/libssh2/package.py
index cb3bcab1c3..7b9beb7b14 100644
--- a/var/spack/repos/builtin/packages/libssh2/package.py
+++ b/var/spack/repos/builtin/packages/libssh2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,9 +25,7 @@ class Libssh2(CMakePackage):
depends_on('xz')
def cmake_args(self):
- spec = self.spec
- return [
- '-DBUILD_SHARED_LIBS=%s' % ('YES' if '+shared' in spec else 'NO')]
+ return [self.define_from_variant('BUILD_SHARED_LIBS', 'shared')]
@run_after('install')
def darwin_fix(self):
diff --git a/var/spack/repos/builtin/packages/libsvm/package.py b/var/spack/repos/builtin/packages/libsvm/package.py
index 12b07053bf..2988a29424 100644
--- a/var/spack/repos/builtin/packages/libsvm/package.py
+++ b/var/spack/repos/builtin/packages/libsvm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libszip/package.py b/var/spack/repos/builtin/packages/libszip/package.py
index b72e2ba276..aef676c4a7 100644
--- a/var/spack/repos/builtin/packages/libszip/package.py
+++ b/var/spack/repos/builtin/packages/libszip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libtar/package.py b/var/spack/repos/builtin/packages/libtar/package.py
index 0d0b719ba8..ed9b6db45f 100644
--- a/var/spack/repos/builtin/packages/libtar/package.py
+++ b/var/spack/repos/builtin/packages/libtar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libtasn1/package.py b/var/spack/repos/builtin/packages/libtasn1/package.py
index 97324b8394..3cb4f2f16b 100644
--- a/var/spack/repos/builtin/packages/libtasn1/package.py
+++ b/var/spack/repos/builtin/packages/libtasn1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libtermkey/package.py b/var/spack/repos/builtin/packages/libtermkey/package.py
index 90617e7014..e5713fde62 100644
--- a/var/spack/repos/builtin/packages/libtermkey/package.py
+++ b/var/spack/repos/builtin/packages/libtermkey/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libthai/package.py b/var/spack/repos/builtin/packages/libthai/package.py
new file mode 100644
index 0000000000..90d6775289
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libthai/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libthai(AutotoolsPackage):
+ """LibThai is a set of Thai language support routines aimed to ease
+ developers' tasks to incorporate Thai language support in their
+ applications. It includes important Thai-specific functions e.g.
+ word breaking, input and output methods as well as basic character
+ and string supports."""
+
+ homepage = "http://linux.thai.net"
+ url = "https://github.com/tlwg/libthai/releases/download/v0.1.28/libthai-0.1.28.tar.xz"
+
+ version('0.1.28', sha256='ffe0a17b4b5aa11b153c15986800eca19f6c93a4025ffa5cf2cab2dcdf1ae911')
+ version('0.1.27', sha256='1659fa1b7b1d6562102d7feb8c8c3fd94bb2dc5761ed7dbaae4f300e1c03eff6')
+
+ depends_on('libdatrie')
+ depends_on('doxygen@1.8.8:', type='build')
diff --git a/var/spack/repos/builtin/packages/libtheora/exit-prior-to-running-configure.patch b/var/spack/repos/builtin/packages/libtheora/exit-prior-to-running-configure.patch
new file mode 100644
index 0000000000..99992c39c2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libtheora/exit-prior-to-running-configure.patch
@@ -0,0 +1,23 @@
+From 0060fd48c12a59a080974ca3754bf0eab9ab6d35 Mon Sep 17 00:00:00 2001
+From: Howard Pritchard <howardp@lanl.gov>
+Date: Tue, 24 Nov 2020 15:14:41 -0700
+Subject: [PATCH] exit prior to running configure
+
+Signed-off-by: Howard Pritchard <howardp@lanl.gov>
+
+diff --git a/autogen.sh b/autogen.sh
+index bbca69dc..4de1e783 100755
+--- a/autogen.sh
++++ b/autogen.sh
+@@ -112,6 +112,8 @@ if test -z "$*"; then
+ echo "to pass any to it, please specify them on the $0 command line."
+ fi
+
++exit 0
++
+ echo "Generating configuration files for $package, please wait...."
+
+ echo " $ACLOCAL $ACLOCAL_FLAGS"
+--
+2.18.2
+
diff --git a/var/spack/repos/builtin/packages/libtheora/fix_encoding.patch b/var/spack/repos/builtin/packages/libtheora/fix_encoding.patch
new file mode 100644
index 0000000000..d0f2127cd7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libtheora/fix_encoding.patch
@@ -0,0 +1,12 @@
+diff --git a/doc/spec/spec.tex b/doc/spec/spec.tex
+index 2206e10..34a0724 100644
+--- a/doc/spec/spec.tex
++++ b/doc/spec/spec.tex
+@@ -14,6 +14,7 @@
+ \usepackage{float}
+ \usepackage[pdfpagemode=None,pdfstartview=FitH,pdfview=FitH,colorlinks=true]%
+ {hyperref}
++\usepackage{utf8x}[inputenc]
+
+ \newtheorem{theorem}{Theorem}[section]
+ \newcommand{\idx}[1]{{\ensuremath{\mathit{#1}}}}
diff --git a/var/spack/repos/builtin/packages/libtheora/package.py b/var/spack/repos/builtin/packages/libtheora/package.py
index 9a1b3554f3..c67e6531b9 100644
--- a/var/spack/repos/builtin/packages/libtheora/package.py
+++ b/var/spack/repos/builtin/packages/libtheora/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,12 @@ class Libtheora(AutotoolsPackage):
depends_on('m4', type='build')
depends_on('doxygen', type='build')
depends_on('libogg')
+ depends_on('libpng')
+
+ patch('exit-prior-to-running-configure.patch', when='@1.1.1')
+ patch('fix_encoding.patch', when='@1.1:')
+ patch('https://gitlab.xiph.org/xiph/theora/-/commit/7288b539c52e99168488dc3a343845c9365617c8.patch',
+ sha256='2e4f891f6880386d9391f3e4eaf4a23493de4eea532f9b5cb8a04b5f7cd09301', when='^libpng@1.6:')
def autoreconf(self, spec, prefix):
sh = which('sh')
diff --git a/var/spack/repos/builtin/packages/libtiff/package.py b/var/spack/repos/builtin/packages/libtiff/package.py
index f650ef31f9..5cc0c4df16 100644
--- a/var/spack/repos/builtin/packages/libtiff/package.py
+++ b/var/spack/repos/builtin/packages/libtiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,6 @@ class Libtiff(AutotoolsPackage):
def patch(self):
# Remove flags not recognized by the NVIDIA compiler
- if self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%nvhpc@:20.11'):
filter_file('vl_cv_prog_cc_warnings="-Wall -W"',
'vl_cv_prog_cc_warnings="-Wall"', 'configure')
diff --git a/var/spack/repos/builtin/packages/libtirpc/package.py b/var/spack/repos/builtin/packages/libtirpc/package.py
index 4b6647a50f..94b4667594 100644
--- a/var/spack/repos/builtin/packages/libtirpc/package.py
+++ b/var/spack/repos/builtin/packages/libtirpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class Libtirpc(AutotoolsPackage):
"""
homepage = "https://sourceforge.net/projects/libtirpc/"
- url = "https://sourceforge.net/projects/libtirpc/files/libtirpc/1.1.4/libtirpc-1.1.4.tar.bz2/download"
+ url = "https://sourceforge.net/projects/libtirpc/files/libtirpc/1.1.4/libtirpc-1.1.4.tar.bz2/download"
version('1.2.6', sha256='4278e9a5181d5af9cd7885322fdecebc444f9a3da87c526e7d47f7a12a37d1cc')
version('1.1.4', sha256='2ca529f02292e10c158562295a1ffd95d2ce8af97820e3534fe1b0e3aec7561d')
@@ -23,3 +23,13 @@ class Libtirpc(AutotoolsPackage):
# FIXME: build error on macOS
# auth_none.c:81:9: error: unknown type name 'mutex_t'
conflicts('platform=darwin', msg='Does not build on macOS')
+
+ @property
+ def headers(self):
+ hdrs = find_all_headers(self.prefix.include)
+ # libtirpc puts headers under include/tirpc, but some codes (e.g. hdf)
+ # do not expect a tirpc component. Since some might, we return
+ # both prefix.include.tirpc and prefix.include as header paths
+ if hdrs:
+ hdrs.directories = [self.prefix.include.tirpc, self.prefix.include]
+ return hdrs or None
diff --git a/var/spack/repos/builtin/packages/libtlx/package.py b/var/spack/repos/builtin/packages/libtlx/package.py
index 71c11d7cd4..d4ecc35674 100644
--- a/var/spack/repos/builtin/packages/libtlx/package.py
+++ b/var/spack/repos/builtin/packages/libtlx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libtomlc99/package.py b/var/spack/repos/builtin/packages/libtomlc99/package.py
index dde282be28..4152e35030 100644
--- a/var/spack/repos/builtin/packages/libtomlc99/package.py
+++ b/var/spack/repos/builtin/packages/libtomlc99/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Libtomlc99(Package):
# Since there is no official versioning, yet, just use the date and prefix
# with '0.' to make switching to proper versioning easier later.
+ version('0.2020.12.23', commit='e97a56633e54297990158ab56a7e50a089cddf7d')
version('0.2019.06.24', commit='b701a09579200b1bd87081d1e6a284a89b5576c8')
# Unfortunately, upstream Makefile does not build shared libaries, so use
# local changes for now.
diff --git a/var/spack/repos/builtin/packages/libtommath/package.py b/var/spack/repos/builtin/packages/libtommath/package.py
index 9886022bfb..f3e6e748e0 100644
--- a/var/spack/repos/builtin/packages/libtommath/package.py
+++ b/var/spack/repos/builtin/packages/libtommath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libtool/package.py b/var/spack/repos/builtin/packages/libtool/package.py
index 783123e27e..bce8c932c7 100644
--- a/var/spack/repos/builtin/packages/libtool/package.py
+++ b/var/spack/repos/builtin/packages/libtool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -30,6 +30,8 @@ class Libtool(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
+ tags = ['build-tools']
+
executables = ['^g?libtool(ize)?$']
@classmethod
@@ -53,7 +55,7 @@ class Libtool(AutotoolsPackage, GNUMirrorPackage):
def patch(self):
# Remove flags not recognized by the NVIDIA compiler
- if self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%nvhpc@:20.11'):
filter_file('-fno-builtin', '-Mnobuiltin', 'configure')
filter_file('-fno-builtin', '-Mnobuiltin', 'libltdl/configure')
diff --git a/var/spack/repos/builtin/packages/libtorrent/package.py b/var/spack/repos/builtin/packages/libtorrent/package.py
new file mode 100644
index 0000000000..469ff834cc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libtorrent/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libtorrent(AutotoolsPackage):
+ """LibTorrent is a BitTorrent library written in C++,
+ with a focus on high performance and good code."""
+
+ homepage = "https://github.com/rakshasa/libtorrent"
+ url = "https://github.com/rakshasa/libtorrent/archive/v0.13.8.tar.gz"
+
+ version('0.13.8', sha256='0f6c2e7ffd3a1723ab47fdac785ec40f85c0a5b5a42c1d002272205b988be722')
+
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./autogen.sh')
diff --git a/var/spack/repos/builtin/packages/libtree/package.py b/var/spack/repos/builtin/packages/libtree/package.py
index e44a4a8661..46a1bef5ff 100644
--- a/var/spack/repos/builtin/packages/libtree/package.py
+++ b/var/spack/repos/builtin/packages/libtree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Libtree(CMakePackage):
maintainers = ['haampie']
+ version('1.2.1', sha256='26791c0f418b93d502879db0e1fd2fd3081b885ad87326611d992a5f8977a9b0')
version('1.2.0', sha256='3e74655f22b1dcc19e8a1b9e7796b8ad44bc37f29e9a99134119e8521e28be97')
version('1.1.4', sha256='38648f67c8fa72c3a4a3af2bb254b5fd6989c0f1362387ab298176db5cbbcc4e')
version('1.1.3', sha256='4c681d7b67ef3d62f95450fb7eb84e33ff10a3b9db1f7e195b965b2c3c58226b')
diff --git a/var/spack/repos/builtin/packages/libuecc/package.py b/var/spack/repos/builtin/packages/libuecc/package.py
index b0ad96b003..59c9cd2d63 100644
--- a/var/spack/repos/builtin/packages/libuecc/package.py
+++ b/var/spack/repos/builtin/packages/libuecc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libunistring/package.py b/var/spack/repos/builtin/packages/libunistring/package.py
index 9812fb32cb..7b17a43910 100644
--- a/var/spack/repos/builtin/packages/libunistring/package.py
+++ b/var/spack/repos/builtin/packages/libunistring/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libunwind/package.py b/var/spack/repos/builtin/packages/libunwind/package.py
index 69f34f7504..96070c71e3 100644
--- a/var/spack/repos/builtin/packages/libunwind/package.py
+++ b/var/spack/repos/builtin/packages/libunwind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,10 +17,8 @@ class Libunwind(AutotoolsPackage):
version('master', branch='master')
version('1.5-head', branch='v1.5-stable')
- version('1.5-rc1', sha256='3e0cbc6dee326592097ef06e97cf76ef597987eddd0df8bea49b0594e587627a')
- version('1.4-head', branch='v1.4-stable')
- version('1.4.0', sha256='df59c931bd4d7ebfd83ee481c943edf015138089b8e50abed8d9c57ba9338435', preferred=True)
- version('1.4-rc1', sha256='1928459139f048f9b4aca4bb5010540cb7718d44220835a2980b85429007fa9f')
+ version('1.5.0', sha256='90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017')
+ version('1.4.0', sha256='df59c931bd4d7ebfd83ee481c943edf015138089b8e50abed8d9c57ba9338435')
version('1.3.1', sha256='43997a3939b6ccdf2f669b50fdb8a4d3205374728c2923ddc2354c65260214f8')
version('1.2.1', sha256='3f3ecb90e28cbe53fba7a4a27ccce7aad188d3210bb1964a923a731a27a75acb')
version('1.1', sha256='9dfe0fcae2a866de9d3942c66995e4b460230446887dbdab302d41a8aee8d09a')
@@ -37,10 +35,10 @@ class Libunwind(AutotoolsPackage):
# The libunwind releases contain the autotools generated files,
# but the git repo snapshots do not.
- depends_on('autoconf', type='build', when='@master,1.4-head,1.5-head')
- depends_on('automake', type='build', when='@master,1.4-head,1.5-head')
- depends_on('libtool', type='build', when='@master,1.4-head,1.5-head')
- depends_on('m4', type='build', when='@master,1.4-head,1.5-head')
+ depends_on('autoconf', type='build', when='@master,1.5-head')
+ depends_on('automake', type='build', when='@master,1.5-head')
+ depends_on('libtool', type='build', when='@master,1.5-head')
+ depends_on('m4', type='build', when='@master,1.5-head')
depends_on('xz', type='link', when='+xz')
depends_on('zlib', type='link', when='+zlib')
diff --git a/var/spack/repos/builtin/packages/libusb/package.py b/var/spack/repos/builtin/packages/libusb/package.py
index e3e9099d00..1740d0f6d9 100644
--- a/var/spack/repos/builtin/packages/libusb/package.py
+++ b/var/spack/repos/builtin/packages/libusb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libusbmuxd/package.py b/var/spack/repos/builtin/packages/libusbmuxd/package.py
index 999636b785..48f64d0cf6 100644
--- a/var/spack/repos/builtin/packages/libusbmuxd/package.py
+++ b/var/spack/repos/builtin/packages/libusbmuxd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libuser/package.py b/var/spack/repos/builtin/packages/libuser/package.py
index b97f5e2ba6..17f16a3e8d 100644
--- a/var/spack/repos/builtin/packages/libuser/package.py
+++ b/var/spack/repos/builtin/packages/libuser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libuuid/package.py b/var/spack/repos/builtin/packages/libuuid/package.py
index fc4ca59efa..6e6f36845f 100644
--- a/var/spack/repos/builtin/packages/libuuid/package.py
+++ b/var/spack/repos/builtin/packages/libuuid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,3 +13,5 @@ class Libuuid(AutotoolsPackage, SourceforgePackage):
sourceforge_mirror_path = "libuuid/libuuid-1.0.3.tar.gz"
version('1.0.3', sha256='46af3275291091009ad7f1b899de3d0cea0252737550e7919d17237997db5644')
+
+ provides('uuid')
diff --git a/var/spack/repos/builtin/packages/libuv/package.py b/var/spack/repos/builtin/packages/libuv/package.py
index 7129acf5a6..a510de1be5 100644
--- a/var/spack/repos/builtin/packages/libuv/package.py
+++ b/var/spack/repos/builtin/packages/libuv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,6 +7,7 @@ class Libuv(AutotoolsPackage):
homepage = "http://libuv.org"
url = "https://github.com/libuv/libuv/archive/v1.9.0.tar.gz"
+ version('1.41.0', sha256='6cfeb5f4bab271462b4a2cc77d4ecec847fdbdc26b72019c27ae21509e6f94fa')
version('1.40.0', sha256='70fe1c9ba4f2c509e8166c0ca2351000237da573bb6c82092339207a9715ba6b')
version('1.39.0', sha256='dc7b21f1bb7ef19f4b42c5ea058afabe51132d165da18812b70fb319659ba629')
version('1.38.1', sha256='2177fca2426ac60c20f654323656e843dac4f568d46674544b78f416697bd32c')
@@ -17,6 +18,7 @@ class Libuv(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('autoconf', type='build')
depends_on('libtool', type='build')
+ depends_on('m4', type='build')
# Tries to build an Objective-C file with GCC's C frontend
# https://github.com/libuv/libuv/issues/2805
diff --git a/var/spack/repos/builtin/packages/libvdwxc/package.py b/var/spack/repos/builtin/packages/libvdwxc/package.py
index 2e0934ab2f..731e5d45f3 100644
--- a/var/spack/repos/builtin/packages/libvdwxc/package.py
+++ b/var/spack/repos/builtin/packages/libvdwxc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libverto/package.py b/var/spack/repos/builtin/packages/libverto/package.py
index 7efdb156c9..871e68f8e4 100644
--- a/var/spack/repos/builtin/packages/libverto/package.py
+++ b/var/spack/repos/builtin/packages/libverto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libvips/package.py b/var/spack/repos/builtin/packages/libvips/package.py
index 89371208ab..fd6b8ca8ed 100644
--- a/var/spack/repos/builtin/packages/libvips/package.py
+++ b/var/spack/repos/builtin/packages/libvips/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,8 +15,9 @@ class Libvips(AutotoolsPackage):
url = "https://github.com/libvips/libvips/releases/download/v8.9.0/vips-8.9.0.tar.gz"
git = "https://github.com/libvips/libvips.git"
- version('8.9.1', sha256='45633798877839005016c9d3494e98dee065f5cb9e20f4552d3b315b8e8bce91', preferred=True)
- version('8.9.0', sha256='97334a5e70aff343d2587f23cb8068fc846a58cd937c89a446142ccf00ea0349')
+ version('8.10.5', sha256='a4eef2f5334ab6dbf133cd3c6d6394d5bdb3e76d5ea4d578b02e1bc3d9e1cfd8')
+ version('8.9.1', sha256='45633798877839005016c9d3494e98dee065f5cb9e20f4552d3b315b8e8bce91')
+ version('8.9.0', sha256='97334a5e70aff343d2587f23cb8068fc846a58cd937c89a446142ccf00ea0349')
variant('fftw', default=True,
description='Uses FFTW3 for fourier transforms.')
diff --git a/var/spack/repos/builtin/packages/libvorbis/package.py b/var/spack/repos/builtin/packages/libvorbis/package.py
index 372a93efef..f855be40dc 100644
--- a/var/spack/repos/builtin/packages/libvorbis/package.py
+++ b/var/spack/repos/builtin/packages/libvorbis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Libvorbis(AutotoolsPackage):
homepage = "https://xiph.org/vorbis/"
url = "http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.5.tar.gz"
+ version('1.3.7', sha256='0e982409a9c3fc82ee06e08205b1355e5c6aa4c36bca58146ef399621b0ce5ab')
version('1.3.5', sha256='6efbcecdd3e5dfbf090341b485da9d176eb250d893e3eb378c428a2db38301ce')
depends_on('libogg')
diff --git a/var/spack/repos/builtin/packages/libvori/package.py b/var/spack/repos/builtin/packages/libvori/package.py
new file mode 100644
index 0000000000..1498bb961a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libvori/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libvori(CMakePackage):
+ """Support for Voronoi Integration and lossless BQB compression"""
+
+ homepage = "https://brehm-research.de/voronoi.php"
+ url = "https://www.cp2k.org/static/downloads/libvori-201217.tar.gz"
+
+ maintainers = ['dev-zero']
+
+ version('210412', sha256='331886aea9d093d8c44b95a07fab13d47f101b1f94a0640d7d670eb722bf90ac')
+ version('201229', sha256='da0afb292c94f8de2aaebfd0b692d15ffd86083cb8a48478b07ca93823decc06')
+ version('201224', sha256='16f6c49eaa17ea23868925dbaae2eca71bdacbe50418c97d6c55e05728038f31')
+ version('201217', sha256='6ad456ed6ca5d28cadcc0d90eabe8fff5caa77b99f12764323de5e3ae21cddf5')
diff --git a/var/spack/repos/builtin/packages/libvterm/package.py b/var/spack/repos/builtin/packages/libvterm/package.py
index 6697ceeeb7..c5e261b70c 100644
--- a/var/spack/repos/builtin/packages/libvterm/package.py
+++ b/var/spack/repos/builtin/packages/libvterm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libwebp/package.py b/var/spack/repos/builtin/packages/libwebp/package.py
index fd8dee8e9e..7efbba954b 100644
--- a/var/spack/repos/builtin/packages/libwebp/package.py
+++ b/var/spack/repos/builtin/packages/libwebp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libwebsockets/package.py b/var/spack/repos/builtin/packages/libwebsockets/package.py
index a00f841a7c..32d6206492 100644
--- a/var/spack/repos/builtin/packages/libwebsockets/package.py
+++ b/var/spack/repos/builtin/packages/libwebsockets/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libwhich/package.py b/var/spack/repos/builtin/packages/libwhich/package.py
new file mode 100644
index 0000000000..44efd471c2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libwhich/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Libwhich(Package):
+ """
+ Libwhich: the functionality of which for libraries.
+ """
+
+ homepage = "https://github.com/vtjnash/libwhich"
+ url = "https://github.com/vtjnash/libwhich/archive/refs/tags/v1.1.0.tar.gz"
+ git = "https://github.com/vtjnash/libwhich.git"
+
+ maintainers = ['dmageeLANL']
+
+ version('master', branch='master')
+ version('1.1.0', sha256='f1c30bf7396859ad437a5db74e9e328fb4b4e1379457121e28a3524b1e3a0b3f')
+ version('1.0.0', sha256='61d5d643d4cbd4b340b9b48922e1b4fd2a35729b7cfdcc7283aab82a6f742a6c')
+
+ def install(self, spec, prefix):
+ make()
+ mkdir(prefix.bin)
+ install('libwhich', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/libwindowswm/package.py b/var/spack/repos/builtin/packages/libwindowswm/package.py
index 4c5d32d247..fd7e7dca5b 100644
--- a/var/spack/repos/builtin/packages/libwindowswm/package.py
+++ b/var/spack/repos/builtin/packages/libwindowswm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,7 +22,7 @@ class Libwindowswm(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xextproto', type='build')
- depends_on('windowswmproto', type='build')
+ depends_on('xextproto')
+ depends_on('windowswmproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libx11/package.py b/var/spack/repos/builtin/packages/libx11/package.py
index fa41e10d74..1a731e40c7 100644
--- a/var/spack/repos/builtin/packages/libx11/package.py
+++ b/var/spack/repos/builtin/packages/libx11/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,17 +12,19 @@ class Libx11(AutotoolsPackage, XorgPackage):
homepage = "https://www.x.org/"
xorg_mirror_path = "lib/libX11-1.6.7.tar.gz"
+ version('1.7.0', sha256='c48ec61785ec68fc6a9a6aca0a9578393414fe2562e3cc9cca30234345c7b6ac')
version('1.6.7', sha256='f62ab88c2a87b55e1dc338726a55bb6ed8048084fe6a3294a7ae324ca45159d1')
version('1.6.5', sha256='3abce972ba62620611fab5b404dafb852da3da54e7c287831c30863011d28fb3')
version('1.6.3', sha256='0b03b9d22f4c9e59b4ba498f294e297f013cae27050dfa0f3496640200db5376')
depends_on('libxcb@1.1.92:')
- depends_on('xproto@7.0.17:', type='build')
- depends_on('xextproto', type=('build', 'link'))
- depends_on('xtrans', type='build')
- depends_on('kbproto', type=('build', 'link'))
- depends_on('inputproto', type='build')
+ depends_on('xproto@7.0.25:', when='@1.7.0:')
+ depends_on('xproto@7.0.17:')
+ depends_on('xextproto')
+ depends_on('xtrans')
+ depends_on('kbproto')
+ depends_on('inputproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
depends_on('perl', type='build')
@@ -31,7 +33,7 @@ class Libx11(AutotoolsPackage, XorgPackage):
config_args = []
# -Werror flags are not properly interpreted by the NVIDIA compiler
- if self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%nvhpc@:20.11'):
config_args.append('--disable-selective-werror')
return config_args
diff --git a/var/spack/repos/builtin/packages/libxau/package.py b/var/spack/repos/builtin/packages/libxau/package.py
index f94b92841d..2ba1258626 100644
--- a/var/spack/repos/builtin/packages/libxau/package.py
+++ b/var/spack/repos/builtin/packages/libxau/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,6 @@ class Libxau(AutotoolsPackage, XorgPackage):
version('1.0.8', sha256='c343b4ef66d66a6b3e0e27aa46b37ad5cab0f11a5c565eafb4a1c7590bc71d7b')
- depends_on('xproto', type=('build', 'link'))
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxaw/package.py b/var/spack/repos/builtin/packages/libxaw/package.py
index efd5120ef0..bff3ecd704 100644
--- a/var/spack/repos/builtin/packages/libxaw/package.py
+++ b/var/spack/repos/builtin/packages/libxaw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,7 +22,7 @@ class Libxaw(AutotoolsPackage, XorgPackage):
depends_on('libxmu')
depends_on('libxpm')
- depends_on('xproto', type='build')
- depends_on('xextproto', type='build')
+ depends_on('xproto')
+ depends_on('xextproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxaw3d/package.py b/var/spack/repos/builtin/packages/libxaw3d/package.py
index 78f94d3423..2b04a50164 100644
--- a/var/spack/repos/builtin/packages/libxaw3d/package.py
+++ b/var/spack/repos/builtin/packages/libxaw3d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libxc/package.py b/var/spack/repos/builtin/packages/libxc/package.py
index f054bfa72c..6340e6e1a5 100644
--- a/var/spack/repos/builtin/packages/libxc/package.py
+++ b/var/spack/repos/builtin/packages/libxc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,9 @@ class Libxc(AutotoolsPackage, CudaPackage):
homepage = "https://tddft.org/programs/libxc/"
url = "https://www.tddft.org/programs/libxc/down.php?file=2.2.2/libxc-2.2.2.tar.gz"
+ version('5.1.3', sha256='0350defdd6c1b165e4cf19995f590eee6e0b9db95a6b221d28cecec40f4e85cd')
+ version('5.1.2', sha256='180d52b5552921d1fac8a10869dd30708c0fb41dc202a3bbee0e36f43872718a')
+ version('5.1.0', sha256='f67b6e518372871d9eed6e5dba77c3ab5ea030c229ba7a7d44bcf51f3258373f')
version('5.0.0', sha256='1cdc57930f7b57da4eb9b2c55a50ba1c2c385936ddaf5582fee830994461a892')
version('4.3.4', sha256='a8ee37ddc5079339854bd313272856c9d41a27802472ee9ae44b58ee9a298337')
version('4.3.2', sha256='bc159aea2537521998c7fb1199789e1be71e04c4b7758d58282622e347603a6f')
@@ -26,6 +29,8 @@ class Libxc(AutotoolsPackage, CudaPackage):
conflicts('+shared +cuda', msg='Only ~shared supported with +cuda')
conflicts('+cuda', when='@:4', msg='CUDA support only in libxc 5.0.0 and above')
+ depends_on('perl', type='build')
+
patch('0001-Bugfix-avoid-implicit-pointer-cast-to-make-libxc-com.patch', when='@5.0.0')
patch('0002-Mark-xc_erfcx-a-GPU_FUNCTION.patch', when='@5.0.0')
@@ -76,6 +81,9 @@ class Libxc(AutotoolsPackage, CudaPackage):
if '%intel' in self.spec and which('xiar'):
env.set('AR', 'xiar')
+ if '%aocc' in self.spec:
+ env.append_flags('FCFLAGS', '-fPIC')
+
if '+cuda' in self.spec:
nvcc = self.spec['cuda'].prefix.bin.nvcc
env.set('CCLD', '{0} -ccbin {1}'.format(nvcc, spack_cc))
@@ -96,6 +104,15 @@ class Libxc(AutotoolsPackage, CudaPackage):
return args
+ @run_after('configure')
+ def patch_libtool(self):
+ """AOCC support for LIBXC"""
+ if '%aocc' in self.spec:
+ filter_file(
+ r'\$wl-soname \$wl\$soname',
+ r'-fuse-ld=ld -Wl,-soname,\$soname',
+ 'libtool', string=True)
+
def check(self):
# libxc provides a testsuite, but many tests fail
# http://www.tddft.org/pipermail/libxc/2013-February/000032.html
diff --git a/var/spack/repos/builtin/packages/libxcb/package.py b/var/spack/repos/builtin/packages/libxcb/package.py
index a384b13acb..e6fbaf5b99 100644
--- a/var/spack/repos/builtin/packages/libxcb/package.py
+++ b/var/spack/repos/builtin/packages/libxcb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,9 @@ class Libxcb(AutotoolsPackage):
extensibility."""
homepage = "https://xcb.freedesktop.org/"
- url = "https://xcb.freedesktop.org/dist/libxcb-1.13.tar.gz"
+ url = "https://xorg.freedesktop.org/archive/individual/lib/libxcb-1.14.tar.xz"
+ version('1.14', sha256='a55ed6db98d43469801262d81dc2572ed124edc3db31059d4e9916eb9f844c34')
version('1.13', sha256='0bb3cfd46dbd90066bf4d7de3cad73ec1024c7325a4a0cbf5f4a0d4fa91155fb')
version('1.12', sha256='092f147149d8a6410647a848378aaae749304d5b73e028ccb8306aa8a9e26f06')
version('1.11.1', sha256='660312d5e64d0a5800262488042c1707a0261fa01a759bad265b1b75dd4844dd')
@@ -25,10 +26,11 @@ class Libxcb(AutotoolsPackage):
depends_on('libxdmcp')
# libxcb 1.X requires xcb-proto >= 1.X
- depends_on('xcb-proto', type='build')
- depends_on('xcb-proto@1.13:', when='@1.13:1.13.999', type='build')
- depends_on('xcb-proto@1.12:', when='@1.12:1.12.999', type='build')
- depends_on('xcb-proto@1.11:', when='@1.11:1.11.999', type='build')
+ depends_on('xcb-proto')
+ depends_on('xcb-proto@1.14:', when='@1.14:1.14.999')
+ depends_on('xcb-proto@1.13:', when='@1.13:1.13.999')
+ depends_on('xcb-proto@1.12:', when='@1.12:1.12.999')
+ depends_on('xcb-proto@1.11:', when='@1.11:1.11.999')
# TODO: uncomment once build deps can be resolved separately
# See #7646, #4145, #4063, and #2548 for details
@@ -39,11 +41,19 @@ class Libxcb(AutotoolsPackage):
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
+ def url_for_version(self, version):
+ if version >= Version('1.14'):
+ url = 'https://xorg.freedesktop.org/archive/individual/lib/libxcb-{0}.tar.xz'
+ else:
+ url = 'https://xcb.freedesktop.org/dist/libxcb-{0}.tar.gz'
+
+ return url.format(version)
+
def configure_args(self):
config_args = []
# -Werror flags are not properly interpreted by the NVIDIA compiler
- if self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%nvhpc@:20.11'):
config_args.append('--disable-selective-werror')
return config_args
diff --git a/var/spack/repos/builtin/packages/libxcomposite/package.py b/var/spack/repos/builtin/packages/libxcomposite/package.py
index f1c2301b49..6d479f7f42 100644
--- a/var/spack/repos/builtin/packages/libxcomposite/package.py
+++ b/var/spack/repos/builtin/packages/libxcomposite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ class Libxcomposite(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxfixes')
- depends_on('fixesproto@0.4:', type='build')
- depends_on('compositeproto@0.4:', type='build')
+ depends_on('fixesproto@0.4:')
+ depends_on('compositeproto@0.4:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxcrypt/package.py b/var/spack/repos/builtin/packages/libxcrypt/package.py
index 68094a3772..1554d0789b 100644
--- a/var/spack/repos/builtin/packages/libxcrypt/package.py
+++ b/var/spack/repos/builtin/packages/libxcrypt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libxcursor/package.py b/var/spack/repos/builtin/packages/libxcursor/package.py
index 4022033f1d..3011992790 100644
--- a/var/spack/repos/builtin/packages/libxcursor/package.py
+++ b/var/spack/repos/builtin/packages/libxcursor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Libxcursor(AutotoolsPackage, XorgPackage):
depends_on('libxfixes')
depends_on('libx11')
- depends_on('fixesproto', type='build')
+ depends_on('fixesproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxdamage/package.py b/var/spack/repos/builtin/packages/libxdamage/package.py
index 6e14c62707..1122135d23 100644
--- a/var/spack/repos/builtin/packages/libxdamage/package.py
+++ b/var/spack/repos/builtin/packages/libxdamage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,8 @@ class Libxdamage(AutotoolsPackage, XorgPackage):
depends_on('libxfixes')
depends_on('libx11')
- depends_on('damageproto@1.1:', type='build')
- depends_on('fixesproto', type='build')
- depends_on('xextproto', type='build')
+ depends_on('damageproto@1.1:')
+ depends_on('fixesproto')
+ depends_on('xextproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxdmcp/package.py b/var/spack/repos/builtin/packages/libxdmcp/package.py
index a6d81dc34f..0a7ba3b7cb 100644
--- a/var/spack/repos/builtin/packages/libxdmcp/package.py
+++ b/var/spack/repos/builtin/packages/libxdmcp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class Libxdmcp(AutotoolsPackage, XorgPackage):
version('1.1.2', sha256='6f7c7e491a23035a26284d247779174dedc67e34e93cc3548b648ffdb6fc57c0')
- depends_on('xproto', type='build')
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
depends_on('libbsd', when='platform=linux')
diff --git a/var/spack/repos/builtin/packages/libxevie/package.py b/var/spack/repos/builtin/packages/libxevie/package.py
index a9781f4848..062728c14d 100644
--- a/var/spack/repos/builtin/packages/libxevie/package.py
+++ b/var/spack/repos/builtin/packages/libxevie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,8 @@ class Libxevie(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xproto', type='build')
- depends_on('xextproto', type='build')
- depends_on('evieext', type='build')
+ depends_on('xproto')
+ depends_on('xextproto')
+ depends_on('evieext')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxext/package.py b/var/spack/repos/builtin/packages/libxext/package.py
index bd615f0fa7..4fbcf089d0 100644
--- a/var/spack/repos/builtin/packages/libxext/package.py
+++ b/var/spack/repos/builtin/packages/libxext/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,12 @@ class Libxext(AutotoolsPackage, XorgPackage):
depends_on('libx11@1.6:')
- depends_on('xproto@7.0.13:', type='build')
- depends_on('xextproto@7.1.99:', type='build')
+ depends_on('xproto@7.0.13:')
+ depends_on('xextproto@7.1.99:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
+
+ @property
+ def libs(self):
+ return find_libraries('libXext', self.prefix,
+ shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/libxfixes/package.py b/var/spack/repos/builtin/packages/libxfixes/package.py
index 3a3d92a9e8..d8f072dab8 100644
--- a/var/spack/repos/builtin/packages/libxfixes/package.py
+++ b/var/spack/repos/builtin/packages/libxfixes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,8 @@ class Libxfixes(AutotoolsPackage, XorgPackage):
depends_on('libx11@1.6:')
- depends_on('xproto', type='build')
- depends_on('fixesproto@5.0:', type='build')
- depends_on('xextproto', type='build')
+ depends_on('xproto')
+ depends_on('fixesproto@5.0:')
+ depends_on('xextproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxfont/package.py b/var/spack/repos/builtin/packages/libxfont/package.py
index ebaf8a3570..03c2cc8469 100644
--- a/var/spack/repos/builtin/packages/libxfont/package.py
+++ b/var/spack/repos/builtin/packages/libxfont/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,8 +22,8 @@ class Libxfont(AutotoolsPackage, XorgPackage):
depends_on('libfontenc')
depends_on('freetype')
- depends_on('xtrans', type='build')
- depends_on('xproto', type='build')
- depends_on('fontsproto@2.1.3:', type='build')
+ depends_on('xtrans')
+ depends_on('xproto')
+ depends_on('fontsproto@2.1.3:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxfont2/package.py b/var/spack/repos/builtin/packages/libxfont2/package.py
index 2cd8d5c3de..21576da4a9 100644
--- a/var/spack/repos/builtin/packages/libxfont2/package.py
+++ b/var/spack/repos/builtin/packages/libxfont2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,8 +22,8 @@ class Libxfont2(AutotoolsPackage, XorgPackage):
depends_on('libfontenc')
depends_on('freetype')
- depends_on('xtrans', type='build')
- depends_on('xproto', type='build')
- depends_on('fontsproto@2.1.3:', type='build')
+ depends_on('xtrans')
+ depends_on('xproto')
+ depends_on('fontsproto@2.1.3:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxfontcache/package.py b/var/spack/repos/builtin/packages/libxfontcache/package.py
index 6ee00368ec..beb884129e 100644
--- a/var/spack/repos/builtin/packages/libxfontcache/package.py
+++ b/var/spack/repos/builtin/packages/libxfontcache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ class Libxfontcache(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xextproto', type='build')
- depends_on('fontcacheproto', type='build')
+ depends_on('xextproto')
+ depends_on('fontcacheproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxft/package.py b/var/spack/repos/builtin/packages/libxft/package.py
index 9cbb296856..e231d8b458 100644
--- a/var/spack/repos/builtin/packages/libxft/package.py
+++ b/var/spack/repos/builtin/packages/libxft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libxi/package.py b/var/spack/repos/builtin/packages/libxi/package.py
index 7464deff73..782c67c2ac 100644
--- a/var/spack/repos/builtin/packages/libxi/package.py
+++ b/var/spack/repos/builtin/packages/libxi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,10 +18,12 @@ class Libxi(AutotoolsPackage, XorgPackage):
depends_on('libx11@1.6:')
depends_on('libxext@1.0.99.1:')
depends_on('libxfixes@5:')
-
- # transient build dependency (from libxfixes), i.e. shouldn't be needed?
- depends_on('fixesproto@5.0:', type='build')
-
- depends_on('xproto@7.0.13:', type='build')
- depends_on('xextproto@7.0.3:', type='build')
- depends_on('inputproto@2.2.99.1:', type='build')
+ depends_on('fixesproto@5.0:')
+ depends_on('xproto@7.0.13:')
+ depends_on('xextproto@7.0.3:')
+ depends_on('inputproto@2.2.99.1:')
+
+ @property
+ def libs(self):
+ return find_libraries(
+ 'libXi', self.prefix, shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/libxinerama/package.py b/var/spack/repos/builtin/packages/libxinerama/package.py
index 3855fb97de..e6c6fb04ca 100644
--- a/var/spack/repos/builtin/packages/libxinerama/package.py
+++ b/var/spack/repos/builtin/packages/libxinerama/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,12 @@ class Libxinerama(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xextproto', type='build')
- depends_on('xineramaproto@1.1.99.1:', type='build')
+ depends_on('xextproto')
+ depends_on('xineramaproto@1.1.99.1:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
+
+ @property
+ def libs(self):
+ return find_libraries('libXinerama', self.prefix,
+ shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/libxkbcommon/package.py b/var/spack/repos/builtin/packages/libxkbcommon/package.py
index 71e7a2b6ea..b32e9fdfe8 100644
--- a/var/spack/repos/builtin/packages/libxkbcommon/package.py
+++ b/var/spack/repos/builtin/packages/libxkbcommon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libxkbfile/package.py b/var/spack/repos/builtin/packages/libxkbfile/package.py
index 504709f808..5e75d3ddad 100644
--- a/var/spack/repos/builtin/packages/libxkbfile/package.py
+++ b/var/spack/repos/builtin/packages/libxkbfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,6 @@ class Libxkbfile(AutotoolsPackage, XorgPackage):
depends_on('libx11')
- depends_on('kbproto', type='build')
+ depends_on('kbproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxkbui/package.py b/var/spack/repos/builtin/packages/libxkbui/package.py
index 8b969b9d35..a903ff1bfb 100644
--- a/var/spack/repos/builtin/packages/libxkbui/package.py
+++ b/var/spack/repos/builtin/packages/libxkbui/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libxml2/package.py b/var/spack/repos/builtin/packages/libxml2/package.py
index 9cbc8a6817..781c4a9d3e 100644
--- a/var/spack/repos/builtin/packages/libxml2/package.py
+++ b/var/spack/repos/builtin/packages/libxml2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -48,7 +48,7 @@ class Libxml2(AutotoolsPackage):
def headers(self):
include_dir = self.spec.prefix.include.libxml2
hl = find_all_headers(include_dir)
- hl.directories = include_dir
+ hl.directories = [include_dir, self.spec.prefix.include]
return hl
def configure_args(self):
diff --git a/var/spack/repos/builtin/packages/libxmu/package.py b/var/spack/repos/builtin/packages/libxmu/package.py
index d53732752e..040086074b 100644
--- a/var/spack/repos/builtin/packages/libxmu/package.py
+++ b/var/spack/repos/builtin/packages/libxmu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,6 @@ class Libxmu(AutotoolsPackage, XorgPackage):
depends_on('libxext')
depends_on('libx11')
- depends_on('xextproto', type='build')
+ depends_on('xextproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxp/package.py b/var/spack/repos/builtin/packages/libxp/package.py
index d8c41790de..2e842670c6 100644
--- a/var/spack/repos/builtin/packages/libxp/package.py
+++ b/var/spack/repos/builtin/packages/libxp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class Libxp(AutotoolsPackage, XorgPackage):
depends_on('libxext')
depends_on('libxau')
- depends_on('xextproto', type='build')
- depends_on('printproto', type='build')
+ depends_on('xextproto')
+ depends_on('printproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxpm/package.py b/var/spack/repos/builtin/packages/libxpm/package.py
index 48a78dfe1c..c0d71ca910 100644
--- a/var/spack/repos/builtin/packages/libxpm/package.py
+++ b/var/spack/repos/builtin/packages/libxpm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,7 +22,7 @@ class Libxpm(AutotoolsPackage, XorgPackage):
depends_on('gettext')
depends_on('libx11')
- depends_on('xproto', type='build')
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxpresent/package.py b/var/spack/repos/builtin/packages/libxpresent/package.py
index 1db0ccac41..898d545075 100644
--- a/var/spack/repos/builtin/packages/libxpresent/package.py
+++ b/var/spack/repos/builtin/packages/libxpresent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,10 +20,10 @@ class Libxpresent(AutotoolsPackage, XorgPackage):
depends_on('libxfixes', type='link')
depends_on('libxrandr', type='link')
- depends_on('xproto', type='link')
- depends_on('presentproto@1.0:', type='link')
- depends_on('xextproto', type='link')
- depends_on('fixesproto', type='link')
- depends_on('randrproto', type='link')
+ depends_on('xproto')
+ depends_on('presentproto@1.0:')
+ depends_on('xextproto')
+ depends_on('fixesproto')
+ depends_on('randrproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxprintapputil/package.py b/var/spack/repos/builtin/packages/libxprintapputil/package.py
index da2e116640..5b60bbf607 100644
--- a/var/spack/repos/builtin/packages/libxprintapputil/package.py
+++ b/var/spack/repos/builtin/packages/libxprintapputil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Libxprintapputil(AutotoolsPackage, XorgPackage):
depends_on('libxprintutil')
depends_on('libxau')
- depends_on('printproto', type='build')
+ depends_on('printproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxprintutil/package.py b/var/spack/repos/builtin/packages/libxprintutil/package.py
index bb39a3b8bb..19cbabe9ba 100644
--- a/var/spack/repos/builtin/packages/libxprintutil/package.py
+++ b/var/spack/repos/builtin/packages/libxprintutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Libxprintutil(AutotoolsPackage, XorgPackage):
depends_on('libxt')
depends_on('libxau')
- depends_on('printproto', type='build')
+ depends_on('printproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxrandr/package.py b/var/spack/repos/builtin/packages/libxrandr/package.py
index 405da4bbd0..d3a78aa498 100644
--- a/var/spack/repos/builtin/packages/libxrandr/package.py
+++ b/var/spack/repos/builtin/packages/libxrandr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,8 +18,13 @@ class Libxrandr(AutotoolsPackage, XorgPackage):
depends_on('libxext')
depends_on('libxrender')
- depends_on('randrproto@1.5:', type='build')
- depends_on('xextproto', type='build')
- depends_on('renderproto', type='build')
+ depends_on('randrproto@1.5:')
+ depends_on('xextproto')
+ depends_on('renderproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
+
+ @property
+ def libs(self):
+ return find_libraries(
+ 'libXrandr', self.prefix, shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/libxrender/package.py b/var/spack/repos/builtin/packages/libxrender/package.py
index c1dcd0b472..c991c8d9ca 100644
--- a/var/spack/repos/builtin/packages/libxrender/package.py
+++ b/var/spack/repos/builtin/packages/libxrender/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,11 @@ class Libxrender(AutotoolsPackage, XorgPackage):
depends_on('libx11@1.6:')
- depends_on('renderproto@0.9:', type=('build', 'link'))
+ depends_on('renderproto@0.9:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
+
+ @property
+ def libs(self):
+ return find_libraries('libXrender', self.prefix,
+ shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/libxres/package.py b/var/spack/repos/builtin/packages/libxres/package.py
index a1a16b87a4..c6c4d94f4e 100644
--- a/var/spack/repos/builtin/packages/libxres/package.py
+++ b/var/spack/repos/builtin/packages/libxres/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ class Libxres(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xextproto', type='build')
- depends_on('resourceproto@1.0:', type='build')
+ depends_on('xextproto')
+ depends_on('resourceproto@1.0:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxscrnsaver/package.py b/var/spack/repos/builtin/packages/libxscrnsaver/package.py
index 077e74e9a7..e7c6edfb17 100644
--- a/var/spack/repos/builtin/packages/libxscrnsaver/package.py
+++ b/var/spack/repos/builtin/packages/libxscrnsaver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ class Libxscrnsaver(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xextproto', type='build')
+ depends_on('xextproto')
depends_on('scrnsaverproto@1.2:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxshmfence/package.py b/var/spack/repos/builtin/packages/libxshmfence/package.py
index f3cd1658b5..9445b31160 100644
--- a/var/spack/repos/builtin/packages/libxshmfence/package.py
+++ b/var/spack/repos/builtin/packages/libxshmfence/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Libxshmfence(AutotoolsPackage, XorgPackage):
version('1.3', sha256='b884300d26a14961a076fbebc762a39831cb75f92bed5ccf9836345b459220c7')
version('1.2', sha256='d21b2d1fd78c1efbe1f2c16dae1cb23f8fd231dcf891465b8debe636a9054b0c')
- depends_on('xproto', type='build')
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxslt/package.py b/var/spack/repos/builtin/packages/libxslt/package.py
index 5da6272d83..c42240f303 100644
--- a/var/spack/repos/builtin/packages/libxslt/package.py
+++ b/var/spack/repos/builtin/packages/libxslt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libxsmm/package.py b/var/spack/repos/builtin/packages/libxsmm/package.py
index b6296648a6..7648f0f5c5 100644
--- a/var/spack/repos/builtin/packages/libxsmm/package.py
+++ b/var/spack/repos/builtin/packages/libxsmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,8 @@ class Libxsmm(MakefilePackage):
url = 'https://github.com/hfp/libxsmm/archive/1.16.1.tar.gz'
git = 'https://github.com/hfp/libxsmm.git'
+ maintainers = ['hfp']
+
version('master', branch='master')
version('1.16.1', sha256='93dc7a3ec40401988729ddb2c6ea2294911261f7e6cd979cf061b5c3691d729d')
version('1.16', sha256='4f4f2ad97815413af80821d2e306eb6f00541941ad412662da05c02361a20e07')
@@ -82,7 +84,7 @@ class Libxsmm(MakefilePackage):
]
# JIT (AVX and later) makes MNK, M, N, or K spec. superfluous
-# make_args += ['MNK=1 4 5 6 8 9 13 16 17 22 23 24 26 32']
+ # make_args += ['MNK=1 4 5 6 8 9 13 16 17 22 23 24 26 32']
# include call trace as the build is already de-optimized
if '+debug' in spec:
diff --git a/var/spack/repos/builtin/packages/libxstream/package.py b/var/spack/repos/builtin/packages/libxstream/package.py
index af28a10736..bab3b057ec 100644
--- a/var/spack/repos/builtin/packages/libxstream/package.py
+++ b/var/spack/repos/builtin/packages/libxstream/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libxt/package.py b/var/spack/repos/builtin/packages/libxt/package.py
index 7554224e53..9a5fb28ed1 100644
--- a/var/spack/repos/builtin/packages/libxt/package.py
+++ b/var/spack/repos/builtin/packages/libxt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,8 +18,8 @@ class Libxt(AutotoolsPackage, XorgPackage):
depends_on('libice')
depends_on('libx11')
- depends_on('xproto', type='build')
- depends_on('kbproto', type='build')
+ depends_on('xproto')
+ depends_on('kbproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxtrap/package.py b/var/spack/repos/builtin/packages/libxtrap/package.py
index d729ab5826..18212be696 100644
--- a/var/spack/repos/builtin/packages/libxtrap/package.py
+++ b/var/spack/repos/builtin/packages/libxtrap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,7 +27,7 @@ class Libxtrap(AutotoolsPackage, XorgPackage):
depends_on('libxt')
depends_on('libxext')
- depends_on('trapproto', type='build')
- depends_on('xextproto', type='build')
+ depends_on('trapproto')
+ depends_on('xextproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxtst/package.py b/var/spack/repos/builtin/packages/libxtst/package.py
index 447c111b54..3073e99819 100644
--- a/var/spack/repos/builtin/packages/libxtst/package.py
+++ b/var/spack/repos/builtin/packages/libxtst/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,9 +27,9 @@ class Libxtst(AutotoolsPackage, XorgPackage):
depends_on('libxext@1.0.99.4:')
depends_on('libxi')
- depends_on('recordproto@1.13.99.1:', type='build')
- depends_on('xextproto@7.0.99.3:', type='build')
- depends_on('inputproto', type='build')
- depends_on('fixesproto', type='build')
+ depends_on('recordproto@1.13.99.1:')
+ depends_on('xextproto@7.0.99.3:')
+ depends_on('inputproto')
+ depends_on('fixesproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxv/package.py b/var/spack/repos/builtin/packages/libxv/package.py
index fc948f63f1..68810c66c6 100644
--- a/var/spack/repos/builtin/packages/libxv/package.py
+++ b/var/spack/repos/builtin/packages/libxv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class Libxv(AutotoolsPackage, XorgPackage):
depends_on('libx11@1.6:')
depends_on('libxext')
- depends_on('xextproto', type='build')
+ depends_on('xextproto')
depends_on('videoproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxvmc/package.py b/var/spack/repos/builtin/packages/libxvmc/package.py
index 51be35577e..bc43c0d55e 100644
--- a/var/spack/repos/builtin/packages/libxvmc/package.py
+++ b/var/spack/repos/builtin/packages/libxvmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class Libxvmc(AutotoolsPackage, XorgPackage):
depends_on('libxext')
depends_on('libxv')
- depends_on('xextproto', type='build')
- depends_on('videoproto', type='build')
+ depends_on('xextproto')
+ depends_on('videoproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxxf86dga/package.py b/var/spack/repos/builtin/packages/libxxf86dga/package.py
index 74c1ec3c5c..b352d8bfdd 100644
--- a/var/spack/repos/builtin/packages/libxxf86dga/package.py
+++ b/var/spack/repos/builtin/packages/libxxf86dga/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,8 @@ class Libxxf86dga(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xproto', type='build')
- depends_on('xextproto', type='build')
- depends_on('xf86dgaproto@2.0.99.2:', type='build')
+ depends_on('xproto')
+ depends_on('xextproto')
+ depends_on('xf86dgaproto@2.0.99.2:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxxf86misc/package.py b/var/spack/repos/builtin/packages/libxxf86misc/package.py
index 59f263e497..07348169f8 100644
--- a/var/spack/repos/builtin/packages/libxxf86misc/package.py
+++ b/var/spack/repos/builtin/packages/libxxf86misc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,8 @@ class Libxxf86misc(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxext')
- depends_on('xproto', type='build')
- depends_on('xextproto', type='build')
- depends_on('xf86miscproto', type='build')
+ depends_on('xproto')
+ depends_on('xextproto')
+ depends_on('xf86miscproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/libxxf86vm/package.py b/var/spack/repos/builtin/packages/libxxf86vm/package.py
index 338fb7b0b3..5ed1816f96 100644
--- a/var/spack/repos/builtin/packages/libxxf86vm/package.py
+++ b/var/spack/repos/builtin/packages/libxxf86vm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,13 @@ class Libxxf86vm(AutotoolsPackage, XorgPackage):
depends_on('libx11@1.6:')
depends_on('libxext')
- depends_on('xproto', type='build')
- depends_on('xextproto', type='build')
- depends_on('xf86vidmodeproto@2.2.99.1:', type='build')
+ depends_on('xproto')
+ depends_on('xextproto')
+ depends_on('xf86vidmodeproto@2.2.99.1:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
+
+ @property
+ def libs(self):
+ return find_libraries(
+ 'libXxf86vm', self.prefix, shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/libyaml/package.py b/var/spack/repos/builtin/packages/libyaml/package.py
index 26686dbd52..e7f95a2fe5 100644
--- a/var/spack/repos/builtin/packages/libyaml/package.py
+++ b/var/spack/repos/builtin/packages/libyaml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Libyaml(AutotoolsPackage):
git = "https://github.com/yaml/libyaml.git"
version('master', branch='master')
+ version('0.2.5', sha256='c642ae9b75fee120b2d96c712538bd2cf283228d2337df2cf2988e3c02678ef4')
version('0.2.4', sha256='d80aeda8747b7c26fbbfd87ab687786e58394a8435ae3970e79cb97882e30557')
version('0.2.3', sha256='08bbb80284d77092e68a6f69f1e480e8ed93e215c47b2ca29290e3bd5a191108')
version('0.2.2', sha256='4a9100ab61047fd9bd395bcef3ce5403365cafd55c1e0d0299cde14958e47be9')
diff --git a/var/spack/repos/builtin/packages/libyogrt/package.py b/var/spack/repos/builtin/packages/libyogrt/package.py
index c3612026db..38138aee3a 100644
--- a/var/spack/repos/builtin/packages/libyogrt/package.py
+++ b/var/spack/repos/builtin/packages/libyogrt/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os
class Libyogrt(AutotoolsPackage):
@@ -33,12 +34,15 @@ class Libyogrt(AutotoolsPackage):
variant('scheduler', default='system',
description="Select scheduler integration",
- values=['system', 'slurm'], multi=False)
+ values=['system', 'slurm', 'lsf'], multi=False)
+ depends_on('slurm', when='scheduler=slurm')
+ depends_on('lsf', when='scheduler=lsf')
+
+ conflicts('scheduler=lsf', when='@:1.22')
+
variant('static', default='False',
description="build static library")
- depends_on('slurm', when='scheduler=slurm')
-
def url_for_version(self, version):
if version < Version(1.21):
return "https://github.com/LLNL/libyogrt/archive/%s.tar.gz" % version
@@ -49,10 +53,37 @@ class Libyogrt(AutotoolsPackage):
args = []
sched = self.spec.variants['scheduler'].value
- if sched != "system":
+ if sched == "lsf":
+ # The LSF library depends on a couple of other libraries,
+ # and running the build inside of spack does not find
+ # them, and the user has to add them when they want
+ # to use -lyogrt. If we explicitly tell it what libraries
+ # to use, the user does not need to specify them
+ args.append('--with-lsf')
+ args.append('LIBS=-llsf -lrt -lnsl')
+ elif sched != "system":
args.append('--with-%s=%s' % (sched, self.spec[sched].prefix))
if '+static' in self.spec:
args.append('--enable-static=yes')
return args
+
+ @run_after('install')
+ def create_yogrt_conf(self):
+ etcpath = os.path.join(prefix, "etc")
+
+ # create subdirectory to hold yogrt.conf file
+ if not os.path.isdir(etcpath):
+ mode = 0o755
+ os.mkdir(etcpath, mode)
+
+ # if no scheduler is specified, create yogrt conf file
+ # with backend=none
+ sched = self.spec.variants['scheduler'].value
+ if sched == "system":
+ sched = "none"
+
+ # create conf file to inform libyogrt about job scheduler
+ with open(os.path.join(etcpath, "yogrt.conf"), "w+") as f:
+ f.write("backend=%s\n" % sched)
diff --git a/var/spack/repos/builtin/packages/libzip/package.py b/var/spack/repos/builtin/packages/libzip/package.py
index b218d18e59..b842acd82a 100644
--- a/var/spack/repos/builtin/packages/libzip/package.py
+++ b/var/spack/repos/builtin/packages/libzip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/libzmq/package.py b/var/spack/repos/builtin/packages/libzmq/package.py
index 6dce35c18a..b69cb7610f 100644
--- a/var/spack/repos/builtin/packages/libzmq/package.py
+++ b/var/spack/repos/builtin/packages/libzmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,8 @@ class Libzmq(AutotoolsPackage):
url = "https://github.com/zeromq/libzmq/releases/download/v4.3.2/zeromq-4.3.2.tar.gz"
git = "https://github.com/zeromq/libzmq.git"
- version('develop', branch='master')
+ version('master', branch='master')
+ version('4.3.3', sha256='9d9285db37ae942ed0780c016da87060497877af45094ff9e1a1ca736e3875a2')
version('4.3.2', sha256='ebd7b5c830d6428956b67a0454a7f8cbed1de74b3b01e5c33c5378e22740f763')
version('4.3.1', sha256='bcbabe1e2c7d0eec4ed612e10b94b112dd5f06fcefa994a0c79a45d835cd21eb')
version('4.3.0', sha256='8e9c3af6dc5a8540b356697081303be392ade3f014615028b3c896d0148397fd')
@@ -29,6 +30,9 @@ class Libzmq(AutotoolsPackage):
variant("libsodium", default=True,
description="Build with message encryption support via libsodium")
+ variant("drafts", default=False,
+ description="Build and install draft classes and methods")
+
depends_on("libsodium", when='+libsodium')
depends_on("libsodium@:1.0.3", when='+libsodium@:4.1.2')
@@ -37,6 +41,9 @@ class Libzmq(AutotoolsPackage):
depends_on('libtool', type='build', when='@develop')
depends_on('pkgconfig', type='build')
+ depends_on('libbsd', type='link', when='@4.3.3: platform=linux')
+ depends_on('libbsd', type='link', when='@4.3.3: platform=cray')
+
conflicts('%gcc@8:', when='@:4.2.2')
def url_for_version(self, version):
@@ -53,6 +60,9 @@ class Libzmq(AutotoolsPackage):
def configure_args(self):
config_args = []
+
+ config_args.extend(self.enable_or_disable("drafts"))
+
if '+libsodium' in self.spec:
config_args.append('--with-libsodium')
if 'clang' in self.compiler.cc:
diff --git a/var/spack/repos/builtin/packages/liggghts/package.py b/var/spack/repos/builtin/packages/liggghts/package.py
index 54fab4a056..cfd8bfd3ed 100644
--- a/var/spack/repos/builtin/packages/liggghts/package.py
+++ b/var/spack/repos/builtin/packages/liggghts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,7 +27,7 @@ class Liggghts(MakefilePackage):
variant('profile', default=False,
description='Generate profiling code')
- depends_on('vtk')
+ depends_on('vtk@6.1.0:8.2.0')
depends_on('mpi', when='+mpi')
depends_on('jpeg', when='+jpeg')
depends_on('zlib', when="+gzip")
diff --git a/var/spack/repos/builtin/packages/lighttpd/package.py b/var/spack/repos/builtin/packages/lighttpd/package.py
index 3231a80f86..efbd1c9aa3 100644
--- a/var/spack/repos/builtin/packages/lighttpd/package.py
+++ b/var/spack/repos/builtin/packages/lighttpd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ligra/package.py b/var/spack/repos/builtin/packages/ligra/package.py
index 8df4bbabae..3bfa849b5f 100644
--- a/var/spack/repos/builtin/packages/ligra/package.py
+++ b/var/spack/repos/builtin/packages/ligra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/likwid/package.py b/var/spack/repos/builtin/packages/likwid/package.py
index 625dce7a5d..1f3037c038 100644
--- a/var/spack/repos/builtin/packages/likwid/package.py
+++ b/var/spack/repos/builtin/packages/likwid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,11 +16,13 @@ class Likwid(Package):
See https://github.com/RRZE-HPC/likwid/wiki/TutorialLikwidPerf#feature-limitations
for information."""
- homepage = "https://github.com/RRZE-HPC/likwid"
+ homepage = "https://hpc.fau.de/research/tools/likwid/"
url = "https://github.com/RRZE-HPC/likwid/archive/v5.0.0.tar.gz"
git = "https://github.com/RRZE-HPC/likwid.git"
maintainers = ['TomTheBear']
+ version('5.1.1', sha256='faec7c62987967232f476a6ff0ee85af686fd24b5a360126896b7f435d1f943f')
+ version('5.1.0', sha256='5a180702a1656c6315b861a85031ab4cb090424aec42cbbb326b849e29f55571')
version('5.0.2', sha256='0a1c8984e4b43ea8b99d09456ef05035eb934594af1669432117585c638a2da4')
version('5.0.1', sha256='3757b0cb66e8af0116f9288c7f90543acbd8e2af8f72f77aef447ca2b3e76453')
version('5.0.0', sha256='26623f5a1a5fec19d798f0114774a5293d1c93a148538b9591a13e50930fa41e')
@@ -34,14 +36,17 @@ class Likwid(Package):
patch('https://github.com/RRZE-HPC/likwid/commit/d2d0ef333b5e0997d7c80fc6ac1a473b5e47d084.patch', sha256='636cbf40669261fdb36379d67253be2b731cfa7b6d610d232767d72fbdf08bc0', when='@4.3.4')
patch('https://github.com/RRZE-HPC/likwid/files/5341379/likwid-lua5.1.patch.txt', sha256='bc56253c1e3436b5ba7bf4c5533d0391206900c8663c008f771a16376975e416', when='@5.0.2^lua@5.1')
variant('fortran', default=True, description='with fortran interface')
+ variant('cuda', default=False, description='with Nvidia GPU profiling support')
# NOTE: There is no way to use an externally provided hwloc with Likwid.
# The reason is that the internal hwloc is patched to contain extra
# functionality and functions are prefixed with "likwid_".
+ # Note: extra functionality was included in upstream hwloc
depends_on('lua', when='@:4')
depends_on('lua@5.2:', when='@5:5.0.1')
depends_on('lua', when='@5.0.2:')
+ depends_on('cuda', when='@5: +cuda')
# TODO: check
# depends_on('gnuplot', type='run')
@@ -55,6 +60,13 @@ class Likwid(Package):
filter_file('^#!/usr/bin/perl -w', '#!/usr/bin/env perl', *files)
filter_file('^#!/usr/bin/perl', '#!/usr/bin/env perl', *files)
+ def setup_run_environment(self, env):
+ if "+cuda" in self.spec:
+ libs = find_libraries('libcupti', root=self.spec['cuda'].prefix,
+ shared=True, recursive=True)
+ for lib in libs.directories:
+ env.append_path('LD_LIBRARY_PATH', lib)
+
@run_before('install')
def filter_sbang(self):
# Filter sbang before install so Spack's sbang hook can fix it up
@@ -106,15 +118,35 @@ class Likwid(Package):
'FORTRAN_INTERFACE = true',
'config.mk')
if self.compiler.name == 'gcc':
- filter_file('ifort', 'gfortran',
- join_path('make', 'include_GCC.mk'))
- filter_file('-module', '-I', join_path('make',
- 'include_GCC.mk'))
+ makepath = join_path('make', 'include_GCC.mk')
+ filter_file('ifort', 'gfortran', makepath)
+ filter_file('-module', '-I', makepath)
else:
filter_file('^FORTRAN_INTERFACE .*',
'FORTRAN_INTERFACE = false',
'config.mk')
+ if "+cuda" in self.spec:
+ filter_file('^NVIDIA_INTERFACE.*',
+ 'NVIDIA_INTERFACE = true',
+ 'config.mk')
+ filter_file('^BUILDAPPDAEMON.*',
+ 'BUILDAPPDAEMON = true',
+ 'config.mk')
+ cudainc = spec['cuda'].prefix.include
+ filter_file('^CUDAINCLUDE.*',
+ 'CUDAINCLUDE = {0}'.format(cudainc),
+ 'config.mk')
+ cuptihead = HeaderList(find(spec['cuda'].prefix, 'cupti.h',
+ recursive=True))
+ filter_file('^CUPTIINCLUDE.*',
+ 'CUPTIINCLUDE = {0}'.format(cuptihead.directories[0]),
+ 'config.mk')
+ else:
+ filter_file('^NVIDIA_INTERFACE.*',
+ 'NVIDIA_INTERFACE = false',
+ 'config.mk')
+
if spec.satisfies('^lua'):
filter_file('^#LUA_INCLUDE_DIR.*',
'LUA_INCLUDE_DIR = {0}'.format(
diff --git a/var/spack/repos/builtin/packages/linkphase3/package.py b/var/spack/repos/builtin/packages/linkphase3/package.py
index 417518bc18..3a62d468bf 100644
--- a/var/spack/repos/builtin/packages/linkphase3/package.py
+++ b/var/spack/repos/builtin/packages/linkphase3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/linktest/package.py b/var/spack/repos/builtin/packages/linktest/package.py
new file mode 100644
index 0000000000..654ebe50b4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/linktest/package.py
@@ -0,0 +1,36 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Linktest(MakefilePackage):
+ """Performance tool to generate communication matrix using
+ parallel ping-pong benchmark"""
+
+ homepage = "https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/LinkTest/_node.html"
+ url = "http://apps.fz-juelich.de/jsc/linktest/download.php?version=1.2p1"
+
+ maintainers = ['pramodk']
+
+ version('1.2p1', sha256='981b96da1d5bf214507b8e219a36e8d0183d8bd5c10539b26f660b2c83e5269d', extension='tar.gz')
+
+ depends_on('mpi')
+ depends_on('sionlib')
+
+ def edit(self, spec, prefix):
+ with working_dir('src'):
+ makefile = FileFilter('Makefile')
+ makefile.filter('= gcc', '= cc')
+ makefile.filter('mpicc', spec['mpi'].mpicc)
+ makefile.filter('#SIONLIB_INST=.*',
+ 'SIONLIB_INST=%s' % spec['sionlib'].prefix)
+
+ def build(self, spec, prefix):
+ with working_dir('src'):
+ make()
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('src/mpilinktest', prefix.bin)
+ install('src/pingponganalysis', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/linsys-v/package.py b/var/spack/repos/builtin/packages/linsys-v/package.py
index 545a2a8bec..7dac25e893 100644
--- a/var/spack/repos/builtin/packages/linsys-v/package.py
+++ b/var/spack/repos/builtin/packages/linsys-v/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/linux-headers/package.py b/var/spack/repos/builtin/packages/linux-headers/package.py
index 8e33f63471..770a48e18f 100644
--- a/var/spack/repos/builtin/packages/linux-headers/package.py
+++ b/var/spack/repos/builtin/packages/linux-headers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/linux-pam/package.py b/var/spack/repos/builtin/packages/linux-pam/package.py
index 0dff1e0654..45887e65e5 100644
--- a/var/spack/repos/builtin/packages/linux-pam/package.py
+++ b/var/spack/repos/builtin/packages/linux-pam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lis/package.py b/var/spack/repos/builtin/packages/lis/package.py
new file mode 100644
index 0000000000..c339abf1f0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lis/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Lis(AutotoolsPackage):
+ """Lis (Library of Iterative Solvers for linear systems,
+ pronounced [lis]) is a parallel software library for
+ solving discretized linear equations and eigenvalue
+ problems that arise in the numerical solution of partial
+ differential equations using iterative methods."""
+
+ homepage = "https://www.ssisc.org/lis/index.en.html"
+ url = "https://www.ssisc.org/lis/dl/lis-2.0.27.zip"
+
+ version('2.0.27', sha256='85f32f4abbc94d1b40b22c10b915170271b19822b6aa6939b1cb295f6e455237')
+
+ variant('mpi', default=False, description='Build with MPI library')
+ variant('omp', default=False, description='Build with openMP library')
+ variant('f90', default=False, description='enable FORTRAN 90 compatible interfaces')
+
+ depends_on('mpi', when='+mpi')
+
+ def configure_args(self):
+ config_args = []
+ config_args.extend(self.enable_or_disable('mpi'))
+ config_args.extend(self.enable_or_disable('omp'))
+ config_args.extend(self.enable_or_disable('f90'))
+
+ if self.spec.satisfies('%fj'):
+ config_args.append('CLIBS=-lm')
+ config_args.append('FCLDFLAGS=-mlcmain=main')
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/listres/package.py b/var/spack/repos/builtin/packages/listres/package.py
index 98b2ab4f1b..c27c30509d 100644
--- a/var/spack/repos/builtin/packages/listres/package.py
+++ b/var/spack/repos/builtin/packages/listres/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Listres(AutotoolsPackage, XorgPackage):
depends_on('libxt')
depends_on('libxmu')
- depends_on('xproto', type='build')
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/lizard/package.py b/var/spack/repos/builtin/packages/lizard/package.py
index d0b165e750..35052f8d61 100644
--- a/var/spack/repos/builtin/packages/lizard/package.py
+++ b/var/spack/repos/builtin/packages/lizard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lksctp-tools/package.py b/var/spack/repos/builtin/packages/lksctp-tools/package.py
index ca168aa320..e32b9395fa 100644
--- a/var/spack/repos/builtin/packages/lksctp-tools/package.py
+++ b/var/spack/repos/builtin/packages/lksctp-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/llvm-amdgpu/fix-ncurses-3.9.0.patch b/var/spack/repos/builtin/packages/llvm-amdgpu/fix-ncurses-3.9.0.patch
new file mode 100644
index 0000000000..24be1ecf31
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm-amdgpu/fix-ncurses-3.9.0.patch
@@ -0,0 +1,25 @@
+Adapt the fix-system-zlib-ncurses.patch for version 3.9.0.
+
+--- llvm-project-rocm-3.9.0/llvm/cmake/config-ix.cmake.orig 2020-11-20 21:41:10.498772540 -0600
++++ llvm-project-rocm-3.9.0/llvm/cmake/config-ix.cmake 2020-11-20 22:27:57.242391054 -0600
+@@ -126,15 +126,11 @@
+ endif()
+ if(LLVM_ENABLE_TERMINFO)
+ set(HAVE_TERMINFO 0)
+- foreach(library terminfo tinfo curses ncurses ncursesw)
+- string(TOUPPER ${library} library_suffix)
+- check_library_exists(${library} setupterm "" HAVE_TERMINFO_${library_suffix})
+- if(HAVE_TERMINFO_${library_suffix})
+- set(HAVE_TERMINFO 1)
+- set(TERMINFO_LIBS "${library}")
+- break()
+- endif()
+- endforeach()
++ find_library(FIND_TERMINFO NAMES terminfo tinfo curses ncurses ncursesw)
++ if(FIND_TERMINFO)
++ set(HAVE_TERMINFO 1)
++ set(TERMINFO_LIBS "${FIND_TERMINFO}")
++ endif()
+ else()
+ set(HAVE_TERMINFO 0)
+ endif()
diff --git a/var/spack/repos/builtin/packages/llvm-amdgpu/fix-spack-detection-4.2.0.patch b/var/spack/repos/builtin/packages/llvm-amdgpu/fix-spack-detection-4.2.0.patch
new file mode 100644
index 0000000000..2cedd4f073
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm-amdgpu/fix-spack-detection-4.2.0.patch
@@ -0,0 +1,94 @@
+diff --git a/clang/lib/Driver/ToolChains/AMDGPU.cpp b/clang/lib/Driver/ToolChains/AMDGPU.cpp
+--- a/clang/lib/Driver/ToolChains/AMDGPU.cpp
++++ b/clang/lib/Driver/ToolChains/AMDGPU.cpp
+@@ -58,19 +58,16 @@
+ llvm::sys::path::append(PackagePath, SubDirs[0]);
+ return PackagePath;
+ }
+- if (SubDirs.size() == 0) {
+- unsigned DiagID = D.getDiags().getCustomDiagID(
+- DiagnosticsEngine::Error,
+- "Expecting SPACK package %0 at %1 but not found");
+- D.Diag(DiagID) << Prefix << Cand.Path;
++ if (SubDirs.size() == 0 && Verbose) {
++ llvm::errs() << "SPACK package " << Prefix << " not found at " << Cand.Path
++ << '\n';
+ return {};
+ }
+
+- assert(SubDirs.size() > 1);
+- unsigned DiagID = D.getDiags().getCustomDiagID(
+- DiagnosticsEngine::Error,
+- "Expecting one SPACK package %0 at %1 but found more");
+- D.Diag(DiagID) << Prefix << Cand.Path;
++ if (SubDirs.size() > 1 && Verbose) {
++ llvm::errs() << "Cannot use SPACK package " << Prefix << " at " << Cand.Path
++ << " due to multiple installations for the same version\n";
++ }
+ return {};
+ }
+
+@@ -305,6 +302,7 @@
+ const Driver &D, const llvm::Triple &HostTriple,
+ const llvm::opt::ArgList &Args, bool DetectHIPRuntime, bool DetectDeviceLib)
+ : D(D) {
++ Verbose = Args.hasArg(options::OPT_v);
+ RocmPathArg = Args.getLastArgValue(clang::driver::options::OPT_rocm_path_EQ);
+ PrintROCmSearchDirs =
+ Args.hasArg(clang::driver::options::OPT_print_rocm_search_dirs);
+diff --git a/clang/lib/Driver/ToolChains/ROCm.h b/clang/lib/Driver/ToolChains/ROCm.h
+--- a/clang/lib/Driver/ToolChains/ROCm.h
++++ b/clang/lib/Driver/ToolChains/ROCm.h
+@@ -110,6 +110,7 @@
+ // Cache ROCm installation search paths.
+ SmallVector<Candidate, 4> ROCmSearchDirs;
+ bool PrintROCmSearchDirs;
++ bool Verbose;
+
+ bool allGenericLibsValid() const {
+ return !OCML.empty() && !OCKL.empty() && !OpenCL.empty() && !HIP.empty() &&
+diff --git a/clang/test/Driver/rocm-detect.hip b/clang/test/Driver/rocm-detect.hip
+--- a/clang/test/Driver/rocm-detect.hip
++++ b/clang/test/Driver/rocm-detect.hip
+@@ -61,12 +61,15 @@
+ // RUN: %s 2>&1 | FileCheck -check-prefixes=SPACK-SET %s
+
+ // Test invalid SPACK ROCm installation missing hip and rocm-device-libs packages.
++// The message about SPACK is emitted only if -v is specified.
+
+ // RUN: rm -rf %T/rocm-spack/hip-*
+ // RUN: rm -rf %T/rocm-spack/rocm-device-libs-*
+ // RUN: %T/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/bin/clang -### -v \
+ // RUN: -target x86_64-linux-gnu --cuda-gpu-arch=gfx900 %s 2>&1 \
+ // RUN: | FileCheck -check-prefixes=SPACK-MISS %s
++// RUN: %T/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/bin/clang --version 2>&1 \
++// RUN: | FileCheck -check-prefixes=SPACK-MISS-SILENT %s
+
+ // GFX902-DEFAULTLIBS: error: cannot find ROCm device library for gfx902. Provide its path via --rocm-path or --rocm-device-lib-path, or pass -nogpulib to build without ROCm device library
+
+@@ -90,8 +93,8 @@
+ // SPACK-SAME: "-internal-isystem" "[[DIR]]/hip-4.0.0-5f63slrursbrvfe2txrrjkynbsywsob5/include"
+
+ // SPACK-MULT: InstalledDir: [[DIR:.*]]/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/bin
+-// SPACK-MULT-DAG: Expecting one SPACK package hip-4.0.0 at [[DIR]] but found more
+-// SPACK-MULT-DAG: Expecting one SPACK package rocm-device-libs-4.0.0 at [[DIR]] but found more
++// SPACK-MULT-DAG: Cannot use SPACK package hip-4.0.0 at [[DIR]] due to multiple installations for the same version
++// SPACK-MULT-DAG: Cannot use SPACK package rocm-device-libs-4.0.0 at [[DIR]] due to multiple installations for the same version
+ // SPACK-MULT-NOT: Found HIP installation: [[DIR]]/hip-4.0.0-5f63slrursbrvfe2txrrjkynbsywsob5, version 4.0.20214-a2917cd
+ // SPACK-MULT-NOT: "-mlink-builtin-bitcode" "[[DIR]]/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/hip.bc"
+ // SPACK-MULT-NOT: "-internal-isystem" "[[DIR]]/hip-4.0.0-5f63slrursbrvfe2txrrjkynbsywsob5/include"
+@@ -103,8 +106,12 @@
+ // SPACK-SET-SAME: "-internal-isystem" "[[DIR]]/hip-4.0.0-abcd/include"
+
+ // SPACK-MISS: InstalledDir: [[DIR:.*]]/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/bin
+-// SPACK-MISS-DAG: Expecting SPACK package hip-4.0.0 at [[DIR]] but not found
+-// SPACK-MISS-DAG: Expecting SPACK package rocm-device-libs-4.0.0 at [[DIR]] but not found
++// SPACK-MISS-DAG: SPACK package hip-4.0.0 not found at [[DIR]]
++// SPACK-MISS-DAG: SPACK package rocm-device-libs-4.0.0 not found at [[DIR]]
+ // SPACK-MISS-NOT: Found HIP installation: [[DIR]]/hip-4.0.0-5f63slrursbrvfe2txrrjkynbsywsob5, version 4.0.20214-a2917cd
+ // SPACK-MISS-NOT: "-mlink-builtin-bitcode" "[[DIR]]/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/hip.bc"
+ // SPACK-MISS-NOT: "-internal-isystem" "[[DIR]]/hip-4.0.0-5f63slrursbrvfe2txrrjkynbsywsob5/include"
++
++// SPACK-MISS-SILENT-NOT: SPACK package hip-{{.*}} not found at
++// SPACK-MISS-SILENT-NOT: SPACK package rocm-device-libs-{{.*}} not found at
++// SPACK-MISS-SILENT-NOT: Found HIP installation
diff --git a/var/spack/repos/builtin/packages/llvm-amdgpu/package.py b/var/spack/repos/builtin/packages/llvm-amdgpu/package.py
index 8e616dffb4..24cf89297b 100644
--- a/var/spack/repos/builtin/packages/llvm-amdgpu/package.py
+++ b/var/spack/repos/builtin/packages/llvm-amdgpu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,16 @@ class LlvmAmdgpu(CMakePackage):
optimizers, and run-time environments."""
homepage = "https://github.com/RadeonOpenCompute/llvm-project"
- url = "https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/llvm-project.git"
+ url = "https://github.com/RadeonOpenCompute/llvm-project/archive/rocm-4.1.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='amd-stg-open')
+ version('4.2.0', sha256='751eca1d18595b565cfafa01c3cb43efb9107874865a60c80d6760ba83edb661')
+ version('4.1.0', sha256='244e38d824fa7dfa8d0edf3c036b3c84e9c17a16791828e4b745a8d31eb374ae')
+ version('4.0.0', sha256='aa1f80f429fded465e86bcfaef72255da1af1c5c52d58a4c979bc2f6c2da5a69')
+ version('3.10.0', sha256='8262aff88c1ff6c4deb4da5a4f8cda1bf90668950e2b911f93f73edaee53b370')
version('3.9.0', sha256='1ff14b56d10c2c44d36c3c412b190d3d8cd1bb12cfc7cd58af004c16fd9987d1')
version('3.8.0', sha256='93a28464a4d0c1c9f4ba55e473e5d1cde4c5c0e6d087ec8a0a3aef1f5f5208e8')
version('3.7.0', sha256='3e2542ce54b91b5c841f33d542143e0e43eae95e8785731405af29f08ace725b')
@@ -23,27 +29,60 @@ class LlvmAmdgpu(CMakePackage):
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
- depends_on('cmake@3:', type='build')
+ variant('openmp', default=True, description='Enable OpenMP')
+
+ depends_on('cmake@3.4.3:', type='build', when='@:3.8.99')
+ depends_on('cmake@3.13.4:', type='build', when='@3.9.0:')
depends_on('python', type='build')
depends_on('z3', type='link')
depends_on('zlib', type='link')
depends_on('ncurses+termlib', type='link')
+ # openmp dependencies
+ depends_on("perl-data-dumper", type=("build"), when='+openmp')
+ depends_on("hwloc", when='+openmp')
+ depends_on('libelf', type='link', when='+openmp')
# Will likely only be fixed in LLVM 12 upstream
patch('fix-system-zlib-ncurses.patch', when='@3.5.0:3.8.0')
+ patch('fix-ncurses-3.9.0.patch', when='@3.9.0:4.0.0')
+
+ # This is already fixed in upstream but not in 4.2.0 rocm release
+ patch('fix-spack-detection-4.2.0.patch', when='@4.2.0')
+
+ conflicts('^cmake@3.19.0')
root_cmakelists_dir = 'llvm'
install_targets = ['clang-tidy', 'install']
def cmake_args(self):
+ llvm_projects = [
+ 'clang',
+ 'lld',
+ 'clang-tools-extra',
+ 'compiler-rt'
+ ]
+
+ if '+openmp' in self.spec:
+ llvm_projects.append('openmp')
+
args = [
- '-DLLVM_ENABLE_PROJECTS=clang;lld;clang-tools-extra;compiler-rt',
+ '-DLLVM_ENABLE_PROJECTS={0}'.format(';'.join(llvm_projects)),
'-DLLVM_ENABLE_ASSERTIONS=1'
]
if self.compiler.name == "gcc":
- gcc_prefix = ancestor(self.compiler.cc, 2)
+ compiler = Executable(self.compiler.cc)
+ gcc_output = compiler('-print-search-dirs', output=str, error=str)
+
+ gcc_prefix = ""
+ for line in gcc_output.splitlines():
+ if line.startswith("install:"):
+ # Get path and strip any whitespace
+ # (causes oddity with ancestor)
+ gcc_prefix = line.split(":")[1].strip()
+ gcc_prefix = ancestor(gcc_prefix, 4)
+ break
args.append("-DGCC_INSTALL_PREFIX=" + gcc_prefix)
return args
diff --git a/var/spack/repos/builtin/packages/llvm-doe/constexpr_longdouble_9.0.patch b/var/spack/repos/builtin/packages/llvm-doe/constexpr_longdouble_9.0.patch
new file mode 100644
index 0000000000..bbc5ab7385
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm-doe/constexpr_longdouble_9.0.patch
@@ -0,0 +1,12 @@
+-- a/libcxx/include/thread
++++ b/libcxx/include/thread
+@@ -370,7 +370,7 @@ sleep_for(const chrono::duration<_Rep, _Period>& __d)
+ using namespace chrono;
+ if (__d > duration<_Rep, _Period>::zero())
+ {
+-#if defined(_LIBCPP_COMPILER_GCC) && (__powerpc__ || __POWERPC__)
++#if ! (defined(_LIBCPP_COMPILER_GCC) && (__powerpc__ || __POWERPC__))
+ // GCC's long double const folding is incomplete for IBM128 long doubles.
+ _LIBCPP_CONSTEXPR duration<long double> _Max = nanoseconds::max();
+ #else
+
diff --git a/var/spack/repos/builtin/packages/llvm-doe/lldb_external_ncurses-10.patch b/var/spack/repos/builtin/packages/llvm-doe/lldb_external_ncurses-10.patch
new file mode 100644
index 0000000000..34ed0e3cd2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm-doe/lldb_external_ncurses-10.patch
@@ -0,0 +1,31 @@
+diff --git a/lldb/include/lldb/Host/Config.h.cmake b/lldb/include/lldb/Host/Config.h.cmake
+--- a/lldb/include/lldb/Host/Config.h.cmake
++++ b/lldb/include/lldb/Host/Config.h.cmake
+@@ -38,6 +38,8 @@
+
+ #cmakedefine01 LLDB_ENABLE_CURSES
+
++#cmakedefine01 CURSES_HAVE_NCURSES_CURSES_H
++
+ #cmakedefine01 LLDB_ENABLE_LIBEDIT
+
+ #cmakedefine01 LLDB_ENABLE_LIBXML2
+diff --git a/lldb/source/Core/IOHandlerCursesGUI.cpp b/lldb/source/Core/IOHandlerCursesGUI.cpp
+--- a/lldb/source/Core/IOHandlerCursesGUI.cpp
++++ b/lldb/source/Core/IOHandlerCursesGUI.cpp
+@@ -10,9 +10,14 @@
+ #include "lldb/Host/Config.h"
+
+ #if LLDB_ENABLE_CURSES
++#if CURSES_HAVE_NCURSES_CURSES_H
++#include <ncurses/curses.h>
++#include <ncurses/panel.h>
++#else
+ #include <curses.h>
+ #include <panel.h>
+ #endif
++#endif
+
+ #if defined(__APPLE__)
+ #include <deque>
+
diff --git a/var/spack/repos/builtin/packages/llvm-doe/llvm_python_path.patch b/var/spack/repos/builtin/packages/llvm-doe/llvm_python_path.patch
new file mode 100644
index 0000000000..9f821cc365
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm-doe/llvm_python_path.patch
@@ -0,0 +1,14 @@
+diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake
+index dab55707338..6f4c6791141 100644
+--- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake
++++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake
+@@ -612,6 +612,9 @@ macro(add_custom_libcxx name prefix)
+ CMAKE_OBJDUMP
+ CMAKE_STRIP
+ CMAKE_SYSROOT
++ PYTHON_EXECUTABLE
++ Python3_EXECUTABLE
++ Python2_EXECUTABLE
+ CMAKE_SYSTEM_NAME)
+ foreach(variable ${PASSTHROUGH_VARIABLES})
+ get_property(is_value_set CACHE ${variable} PROPERTY VALUE SET)
diff --git a/var/spack/repos/builtin/packages/llvm-doe/package.py b/var/spack/repos/builtin/packages/llvm-doe/package.py
new file mode 100644
index 0000000000..23523616a2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm-doe/package.py
@@ -0,0 +1,561 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import os.path
+import re
+import sys
+
+import llnl.util.tty as tty
+import spack.util.executable
+
+
+class LlvmDoe(CMakePackage, CudaPackage):
+ """This package provides a collection of the experimental LLVM projects done
+ by the US DOE research and development teams.
+ """
+
+ homepage = "https://github.com/llvm-doe-org"
+ url = "https://github.com/llvm-doe-org/llvm-project/archive/llvmorg-10.0.0.zip"
+ git = "https://github.com/llvm-doe-org/llvm-project"
+ maintainers = ['shintaro-iwasaki']
+
+ version('doe', branch='doe', preferred=True)
+ version('upstream', branch='llvm.org/main')
+ version('bolt', branch='bolt/main')
+ version('clacc', branch='clacc/master')
+ version('pragma-clang-loop', branch='sollve/pragma-clang-loop')
+ version('pragma-omp-tile', branch='sollve/pragma-omp-tile')
+
+ # NOTE: The debug version of LLVM is an order of magnitude larger than
+ # the release version, and may take up 20-30 GB of space. If you want
+ # to save space, build with `build_type=Release`.
+
+ variant(
+ "clang",
+ default=True,
+ description="Build the LLVM C/C++/Objective-C compiler frontend",
+ )
+ variant(
+ "flang",
+ default=False,
+ description="Build the LLVM Fortran compiler frontend",
+ )
+ variant(
+ "omp_debug",
+ default=False,
+ description="Include debugging code in OpenMP runtime libraries",
+ )
+ variant("lldb", default=False, description="Build the LLVM debugger")
+ variant("lld", default=True, description="Build the LLVM linker")
+ variant("mlir", default=False, description="Build with MLIR support")
+ variant(
+ "internal_unwind",
+ default=True,
+ description="Build the libcxxabi libunwind",
+ )
+ variant(
+ "polly",
+ default=True,
+ description="Build the LLVM polyhedral optimization plugin, "
+ "only builds for 3.7.0+",
+ )
+ variant(
+ "libcxx",
+ default=True,
+ description="Build the LLVM C++ standard library",
+ )
+ variant(
+ "compiler-rt",
+ default=True,
+ description="Build LLVM compiler runtime, including sanitizers",
+ )
+ variant(
+ "gold",
+ default=(sys.platform != "darwin"),
+ description="Add support for LTO with the gold linker plugin",
+ )
+ variant(
+ "split_dwarf",
+ default=False,
+ description="Build with split dwarf information",
+ )
+ variant(
+ "shared_libs",
+ default=False,
+ description="Build all components as shared libraries, faster, "
+ "less memory to build, less stable",
+ )
+ variant(
+ "llvm_dylib",
+ default=False,
+ description="Build LLVM shared library, containing all "
+ "components in a single shared library",
+ )
+ variant(
+ "all_targets",
+ default=False,
+ description="Build all supported targets, default targets "
+ "<current arch>,NVPTX,AMDGPU,CppBackend",
+ )
+ variant(
+ "build_type",
+ default="Release",
+ description="CMake build type",
+ values=("Debug", "Release", "RelWithDebInfo", "MinSizeRel"),
+ )
+ variant(
+ "omp_tsan",
+ default=False,
+ description="Build with OpenMP capable thread sanitizer",
+ )
+ variant(
+ "argobots",
+ default=False,
+ description="Build BOLT/OpenMP with Argobots. Effective when @bolt",
+ )
+ variant('code_signing', default=False,
+ description="Enable code-signing on macOS")
+ variant("python", default=False, description="Install python bindings")
+
+ extends("python", when="+python")
+
+ # Build dependency
+ depends_on("cmake@3.4.3:", type="build")
+ depends_on("python", when="~python", type="build")
+ depends_on("pkgconfig", type="build")
+
+ # Universal dependency
+ depends_on("python", when="+python")
+ depends_on("z3")
+
+ # openmp dependencies
+ depends_on("perl-data-dumper", type=("build"))
+ depends_on("hwloc")
+ depends_on("libelf", when="+cuda") # libomptarget
+ depends_on("libffi", when="+cuda") # libomptarget
+
+ # ncurses dependency
+ depends_on("ncurses+termlib")
+
+ # lldb dependencies
+ depends_on("swig", when="+lldb")
+ depends_on("libedit", when="+lldb")
+ depends_on("py-six", when="+lldb +python")
+
+ # gold support, required for some features
+ depends_on("binutils+gold", when="+gold")
+
+ conflicts("+llvm_dylib", when="+shared_libs")
+ conflicts("+lldb", when="~clang")
+ conflicts("+libcxx", when="~clang")
+ conflicts("+internal_unwind", when="~clang")
+ conflicts("+compiler-rt", when="~clang")
+
+ conflicts("%gcc@:5.0.999")
+
+ # cuda_arch value must be specified
+ conflicts("cuda_arch=none", when="+cuda", msg="A value for cuda_arch must be specified.")
+
+ conflicts("+mlir")
+
+ conflicts("+flang", when="~clang")
+
+ # code signing is only necessary on macOS",
+ conflicts('+code_signing', when='platform=linux')
+ conflicts('+code_signing', when='platform=cray')
+
+ conflicts(
+ '+code_signing',
+ when='~lldb platform=darwin',
+ msg="code signing is only necessary for building the "
+ "in-tree debug server on macOS. Turning this variant "
+ "off enables a build of llvm with lldb that uses the "
+ "system debug server",
+ )
+
+ # LLVM bug https://bugs.llvm.org/show_bug.cgi?id=48234
+ # CMake bug: https://gitlab.kitware.com/cmake/cmake/-/issues/21469
+ # Fixed in upstream versions of both
+ conflicts('^cmake@3.19.0', when='@:11.0.0')
+
+ # Backport from llvm master + additional fix
+ # see https://bugs.llvm.org/show_bug.cgi?id=39696
+ # for a bug report about this problem in llvm master.
+ patch("constexpr_longdouble_9.0.patch", when="@9:10.0.0+libcxx")
+
+ # https://github.com/spack/spack/issues/19625,
+ # merged in llvm-11.0.0_rc2
+ patch("lldb_external_ncurses-10.patch", when="@10.0.0:10.99+lldb")
+
+ # https://github.com/spack/spack/issues/19908
+ # merged in llvm main prior to 12.0.0
+ patch("llvm_python_path.patch", when="@11.0.0")
+
+ # The functions and attributes below implement external package
+ # detection for LLVM. See:
+ #
+ # https://spack.readthedocs.io/en/latest/packaging_guide.html#making-a-package-discoverable-with-spack-external-find
+ executables = ['clang', 'flang', 'ld.lld', 'lldb']
+
+ @classmethod
+ def filter_detected_exes(cls, prefix, exes_in_prefix):
+ result = []
+ for exe in exes_in_prefix:
+ # Executables like lldb-vscode-X are daemon listening
+ # on some port and would hang Spack during detection.
+ # clang-cl and clang-cpp are dev tools that we don't
+ # need to test
+ if any(x in exe for x in ('vscode', 'cpp', '-cl', '-gpu')):
+ continue
+ result.append(exe)
+ return result
+
+ @classmethod
+ def determine_version(cls, exe):
+ version_regex = re.compile(
+ # Normal clang compiler versions are left as-is
+ r'clang version ([^ )\n]+)-svn[~.\w\d-]*|'
+ # Don't include hyphenated patch numbers in the version
+ # (see https://github.com/spack/spack/pull/14365 for details)
+ r'clang version ([^ )\n]+?)-[~.\w\d-]*|'
+ r'clang version ([^ )\n]+)|'
+ # LLDB
+ r'lldb version ([^ )\n]+)|'
+ # LLD
+ r'LLD ([^ )\n]+) \(compatible with GNU linkers\)'
+ )
+ try:
+ compiler = Executable(exe)
+ output = compiler('--version', output=str, error=str)
+ if 'Apple' in output:
+ return None
+ match = version_regex.search(output)
+ if match:
+ return match.group(match.lastindex)
+ except spack.util.executable.ProcessError:
+ pass
+ except Exception as e:
+ tty.debug(e)
+
+ return None
+
+ @classmethod
+ def determine_variants(cls, exes, version_str):
+ variants, compilers = ['+clang'], {}
+ lld_found, lldb_found = False, False
+ for exe in exes:
+ if 'clang++' in exe:
+ compilers['cxx'] = exe
+ elif 'clang' in exe:
+ compilers['c'] = exe
+ elif 'flang' in exe:
+ variants.append('+flang')
+ compilers['fc'] = exe
+ compilers['f77'] = exe
+ elif 'ld.lld' in exe:
+ lld_found = True
+ compilers['ld'] = exe
+ elif 'lldb' in exe:
+ lldb_found = True
+ compilers['lldb'] = exe
+
+ variants.append('+lld' if lld_found else '~lld')
+ variants.append('+lldb' if lldb_found else '~lldb')
+
+ return ''.join(variants), {'compilers': compilers}
+
+ @classmethod
+ def validate_detected_spec(cls, spec, extra_attributes):
+ # For LLVM 'compilers' is a mandatory attribute
+ msg = ('the extra attribute "compilers" must be set for '
+ 'the detected spec "{0}"'.format(spec))
+ assert 'compilers' in extra_attributes, msg
+ compilers = extra_attributes['compilers']
+ for key in ('c', 'cxx'):
+ msg = '{0} compiler not found for {1}'
+ assert key in compilers, msg.format(key, spec)
+
+ @property
+ def cc(self):
+ msg = "cannot retrieve C compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('c', None)
+ result = None
+ if '+clang' in self.spec:
+ result = os.path.join(self.spec.prefix.bin, 'clang')
+ return result
+
+ @property
+ def cxx(self):
+ msg = "cannot retrieve C++ compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('cxx', None)
+ result = None
+ if '+clang' in self.spec:
+ result = os.path.join(self.spec.prefix.bin, 'clang++')
+ return result
+
+ @property
+ def fc(self):
+ msg = "cannot retrieve Fortran compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('fc', None)
+ result = None
+ if '+flang' in self.spec:
+ result = os.path.join(self.spec.prefix.bin, 'flang')
+ return result
+
+ @property
+ def f77(self):
+ msg = "cannot retrieve Fortran 77 compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('f77', None)
+ result = None
+ if '+flang' in self.spec:
+ result = os.path.join(self.spec.prefix.bin, 'flang')
+ return result
+
+ @run_before('cmake')
+ def codesign_check(self):
+ if self.spec.satisfies("+code_signing"):
+ codesign = which('codesign')
+ mkdir('tmp')
+ llvm_check_file = join_path('tmp', 'llvm_check')
+ copy('/usr/bin/false', llvm_check_file)
+ try:
+ codesign('-f', '-s', 'lldb_codesign', '--dryrun',
+ llvm_check_file)
+
+ except ProcessError:
+ # Newer LLVM versions have a simple script that sets up
+ # automatically when run with sudo priviliges
+ setup = Executable("./lldb/scripts/macos-setup-codesign.sh")
+ try:
+ setup()
+ except Exception:
+ raise RuntimeError(
+ 'spack was unable to either find or set up'
+ 'code-signing on your system. Please refer to'
+ 'https://lldb.llvm.org/resources/build.html#'
+ 'code-signing-on-macos for details on how to'
+ 'create this identity.'
+ )
+
+ def setup_build_environment(self, env):
+ env.append_flags("CXXFLAGS", self.compiler.cxx11_flag)
+
+ def setup_run_environment(self, env):
+ if "+clang" in self.spec:
+ env.set("CC", join_path(self.spec.prefix.bin, "clang"))
+ env.set("CXX", join_path(self.spec.prefix.bin, "clang++"))
+ if "+flang" in self.spec:
+ env.set("FC", join_path(self.spec.prefix.bin, "flang"))
+ env.set("F77", join_path(self.spec.prefix.bin, "flang"))
+
+ root_cmakelists_dir = "llvm"
+
+ def cmake_args(self):
+ spec = self.spec
+ python = spec['python']
+ cmake_args = [
+ "-DLLVM_REQUIRES_RTTI:BOOL=ON",
+ "-DLLVM_ENABLE_RTTI:BOOL=ON",
+ "-DLLVM_ENABLE_EH:BOOL=ON",
+ "-DCLANG_DEFAULT_OPENMP_RUNTIME:STRING=libomp",
+ "-DPYTHON_EXECUTABLE:PATH={0}".format(python.command.path),
+ "-DLIBOMP_USE_HWLOC:BOOL=ON",
+ "-DLIBOMP_HWLOC_INSTALL_DIR={0}".format(spec["hwloc"].prefix),
+ ]
+
+ if python.version >= Version("3.0.0"):
+ cmake_args.append("-DPython3_EXECUTABLE={0}".format(
+ python.command.path))
+ else:
+ cmake_args.append("-DPython2_EXECUTABLE={0}".format(
+ python.command.path))
+
+ projects = []
+
+ if "+cuda" in spec:
+ cmake_args.extend(
+ [
+ "-DCUDA_TOOLKIT_ROOT_DIR:PATH=" + spec["cuda"].prefix,
+ "-DLIBOMPTARGET_NVPTX_COMPUTE_CAPABILITIES={0}".format(
+ ",".join(spec.variants["cuda_arch"].value)
+ ),
+ "-DCLANG_OPENMP_NVPTX_DEFAULT_ARCH=sm_{0}".format(
+ spec.variants["cuda_arch"].value[-1]
+ ),
+ ]
+ )
+ else:
+ # still build libomptarget but disable cuda
+ cmake_args.extend(
+ [
+ "-DCUDA_TOOLKIT_ROOT_DIR:PATH=IGNORE",
+ "-DCUDA_SDK_ROOT_DIR:PATH=IGNORE",
+ "-DCUDA_NVCC_EXECUTABLE:FILEPATH=IGNORE",
+ "-DLIBOMPTARGET_DEP_CUDA_DRIVER_LIBRARIES:STRING=IGNORE",
+ ]
+ )
+
+ if "+omp_debug" in spec:
+ cmake_args.append("-DLIBOMPTARGET_ENABLE_DEBUG:Bool=ON")
+
+ if "+python" in spec and "+lldb" in spec:
+ cmake_args.append("-DLLDB_USE_SYSTEM_SIX:Bool=TRUE")
+
+ if "+lldb" in spec and spec.satisfies("@10.0.0:,doe"):
+ cmake_args.append("-DLLDB_ENABLE_PYTHON:Bool={0}".format(
+ 'ON' if '+python' in spec else 'OFF'))
+ if "+lldb" in spec and spec.satisfies("@:9.9.9"):
+ cmake_args.append("-DLLDB_DISABLE_PYTHON:Bool={0}".format(
+ 'ON' if '~python' in spec else 'OFF'))
+
+ if "+gold" in spec:
+ cmake_args.append(
+ "-DLLVM_BINUTILS_INCDIR=" + spec["binutils"].prefix.include
+ )
+
+ if "+clang" in spec:
+ projects.append("clang")
+ projects.append("clang-tools-extra")
+ projects.append("openmp")
+ if "+flang" in spec:
+ projects.append("flang")
+ if "+lldb" in spec:
+ projects.append("lldb")
+ if "+lld" in spec:
+ projects.append("lld")
+ if "+compiler-rt" in spec:
+ projects.append("compiler-rt")
+ if "+libcxx" in spec:
+ projects.append("libcxx")
+ projects.append("libcxxabi")
+ cmake_args.append("-DCLANG_DEFAULT_CXX_STDLIB=libc++")
+ if "+mlir" in spec:
+ projects.append("mlir")
+ if "+internal_unwind" in spec:
+ projects.append("libunwind")
+ if "+polly" in spec:
+ projects.append("polly")
+ cmake_args.append("-DLINK_POLLY_INTO_TOOLS:Bool=ON")
+
+ if "+shared_libs" in spec:
+ cmake_args.append("-DBUILD_SHARED_LIBS:Bool=ON")
+ if "+llvm_dylib" in spec:
+ cmake_args.append("-DLLVM_BUILD_LLVM_DYLIB:Bool=ON")
+ if "+omp_debug" in spec:
+ cmake_args.append("-DLIBOMPTARGET_ENABLE_DEBUG:Bool=ON")
+
+ if "+split_dwarf" in spec:
+ cmake_args.append("-DLLVM_USE_SPLIT_DWARF:Bool=ON")
+
+ if "+all_targets" not in spec: # all is default on cmake
+
+ targets = ["NVPTX", "AMDGPU"]
+ if spec.target.family == "x86" or spec.target.family == "x86_64":
+ targets.append("X86")
+ elif spec.target.family == "arm":
+ targets.append("ARM")
+ elif spec.target.family == "aarch64":
+ targets.append("AArch64")
+ elif (
+ spec.target.family == "sparc"
+ or spec.target.family == "sparc64"
+ ):
+ targets.append("Sparc")
+ elif (
+ spec.target.family == "ppc64"
+ or spec.target.family == "ppc64le"
+ or spec.target.family == "ppc"
+ or spec.target.family == "ppcle"
+ ):
+ targets.append("PowerPC")
+
+ cmake_args.append(
+ "-DLLVM_TARGETS_TO_BUILD:STRING=" + ";".join(targets)
+ )
+
+ if "+omp_tsan" in spec:
+ cmake_args.append("-DLIBOMP_TSAN_SUPPORT=ON")
+
+ if spec.satisfies("@bolt"):
+ projects.remove("openmp")
+ projects.append("bolt")
+ cmake_args.append("-DLIBOMP_USE_BOLT_DEFAULT=ON")
+ if "+argobots" in spec and spec.satisfies("@bolt"):
+ cmake_args.append("-DLIBOMP_USE_ARGOBOTS=ON")
+
+ if self.compiler.name == "gcc":
+ gcc_prefix = ancestor(self.compiler.cc, 2)
+ cmake_args.append("-DGCC_INSTALL_PREFIX=" + gcc_prefix)
+
+ if spec.satisfies("platform=cray") or spec.satisfies("platform=linux"):
+ cmake_args.append("-DCMAKE_BUILD_WITH_INSTALL_RPATH=1")
+
+ if self.spec.satisfies("~code_signing platform=darwin"):
+ cmake_args.append('-DLLDB_USE_SYSTEM_DEBUGSERVER=ON')
+
+ # Semicolon seperated list of projects to enable
+ cmake_args.append(
+ "-DLLVM_ENABLE_PROJECTS:STRING={0}".format(";".join(projects))
+ )
+
+ return cmake_args
+
+ @run_before("build")
+ def pre_install(self):
+ with working_dir(self.build_directory):
+ # When building shared libraries these need to be installed first
+ make("install-LLVMTableGen")
+ make("install-LLVMDemangle")
+ make("install-LLVMSupport")
+
+ @run_after("install")
+ def post_install(self):
+ spec = self.spec
+
+ # unnecessary if we get bootstrap builds in here
+ if "+cuda" in self.spec:
+ ompdir = "build-bootstrapped-omp"
+ # rebuild libomptarget to get bytecode runtime library files
+ with working_dir(ompdir, create=True):
+ cmake_args = [
+ self.stage.source_path + "/openmp",
+ "-DCMAKE_C_COMPILER:PATH={0}".format(
+ spec.prefix.bin + "/clang"
+ ),
+ "-DCMAKE_CXX_COMPILER:PATH={0}".format(
+ spec.prefix.bin + "/clang++"
+ ),
+ "-DCMAKE_INSTALL_PREFIX:PATH={0}".format(spec.prefix),
+ ]
+ cmake_args.extend(self.cmake_args())
+ cmake_args.append(
+ "-DLIBOMPTARGET_NVPTX_ENABLE_BCLIB:BOOL=TRUE"
+ )
+
+ # work around bad libelf detection in libomptarget
+ cmake_args.append(
+ "-DLIBOMPTARGET_DEP_LIBELF_INCLUDE_DIR:String={0}".format(
+ spec["libelf"].prefix.include
+ )
+ )
+
+ cmake(*cmake_args)
+ make()
+ make("install")
+ if "+python" in self.spec:
+ install_tree("llvm/bindings/python", site_packages_dir)
+
+ if "+clang" in self.spec:
+ install_tree("clang/bindings/python", site_packages_dir)
+
+ with working_dir(self.build_directory):
+ install_tree("bin", join_path(self.prefix, "libexec", "llvm"))
diff --git a/var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py b/var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py
index 4a87fba258..ce1024f825 100644
--- a/var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py
+++ b/var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -38,7 +38,7 @@ class LlvmOpenmpOmpt(CMakePackage):
depends_on('llvm', when='~standalone')
depends_on('ninja@1.5:', type='build')
depends_on('perl@5.22.0:', type='build')
- depends_on('libelf', when='+libomptarget')
+ depends_on('elf', when='+libomptarget')
depends_on('libffi', when='+libomptarget')
generator = 'Ninja'
diff --git a/var/spack/repos/builtin/packages/llvm-openmp/package.py b/var/spack/repos/builtin/packages/llvm-openmp/package.py
index 831a32f745..d7534ff453 100755
--- a/var/spack/repos/builtin/packages/llvm-openmp/package.py
+++ b/var/spack/repos/builtin/packages/llvm-openmp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/llvm/llvm7_intel.patch b/var/spack/repos/builtin/packages/llvm/llvm7_intel.patch
new file mode 100644
index 0000000000..710545a619
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm/llvm7_intel.patch
@@ -0,0 +1,50 @@
+diff --git a/llvm/include/llvm/ADT/StringExtras.h b/llvm/include/llvm/ADT/StringExtras.h
+index 71b0e7527cb..3304a378f37 100644
+--- a/llvm/include/llvm/ADT/StringExtras.h
++++ b/llvm/include/llvm/ADT/StringExtras.h
+@@ -369,7 +369,7 @@ inline size_t join_items_size(const A1 &A, Args &&... Items) {
+ template <typename IteratorT>
+ inline std::string join(IteratorT Begin, IteratorT End, StringRef Separator) {
+ using tag = typename std::iterator_traits<IteratorT>::iterator_category;
+- return detail::join_impl(Begin, End, Separator, tag());
++ return llvm::detail::join_impl(Begin, End, Separator, tag());
+ }
+
+ /// Joins the strings in the range [R.begin(), R.end()), adding Separator
+diff --git a/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h b/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
+index 25b2efd33c9..40144d96044 100644
+--- a/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
++++ b/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
+@@ -186,8 +186,9 @@ public:
+ /// topological sort) and it's class is the same regardless of block type.
+ struct BlockNode {
+ using IndexType = uint32_t;
++ using IndexTypeLimits = std::numeric_limits<IndexType>;
+
+- IndexType Index = std::numeric_limits<uint32_t>::max();
++ IndexType Index = IndexTypeLimits::max();
+
+ BlockNode() = default;
+ BlockNode(IndexType Index) : Index(Index) {}
+diff --git a/llvm/lib/ExecutionEngine/Orc/Core.cpp b/llvm/lib/ExecutionEngine/Orc/Core.cpp
+index 4325d57f73d..96e1e1d5503 100644
+--- a/llvm/lib/ExecutionEngine/Orc/Core.cpp
++++ b/llvm/lib/ExecutionEngine/Orc/Core.cpp
+@@ -1423,7 +1423,7 @@ VSO::lookupImpl(std::shared_ptr<AsynchronousSymbolQuery> &Q,
+ if (SymI->second.getAddress() != 0) {
+ Q->resolve(Name, SymI->second);
+ if (Q->isFullyResolved())
+- ActionFlags |= NotifyFullyResolved;
++ ActionFlags = static_cast<LookupImplActionFlags>(ActionFlags | NotifyFullyResolved);
+ }
+
+ // If the symbol is lazy, get the MaterialiaztionUnit for it.
+@@ -1456,7 +1456,7 @@ VSO::lookupImpl(std::shared_ptr<AsynchronousSymbolQuery> &Q,
+ // continue.
+ Q->notifySymbolReady();
+ if (Q->isFullyReady())
+- ActionFlags |= NotifyFullyReady;
++ ActionFlags = static_cast<LookupImplActionFlags>(ActionFlags | NotifyFullyReady);
+ continue;
+ }
+
diff --git a/var/spack/repos/builtin/packages/llvm/llvm_python_path.patch b/var/spack/repos/builtin/packages/llvm/llvm_python_path.patch
new file mode 100644
index 0000000000..9f821cc365
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm/llvm_python_path.patch
@@ -0,0 +1,14 @@
+diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake
+index dab55707338..6f4c6791141 100644
+--- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake
++++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake
+@@ -612,6 +612,9 @@ macro(add_custom_libcxx name prefix)
+ CMAKE_OBJDUMP
+ CMAKE_STRIP
+ CMAKE_SYSROOT
++ PYTHON_EXECUTABLE
++ Python3_EXECUTABLE
++ Python2_EXECUTABLE
+ CMAKE_SYSTEM_NAME)
+ foreach(variable ${PASSTHROUGH_VARIABLES})
+ get_property(is_value_set CACHE ${variable} PROPERTY VALUE SET)
diff --git a/var/spack/repos/builtin/packages/llvm/package.py b/var/spack/repos/builtin/packages/llvm/package.py
index 84c2c88499..d7adbddd72 100644
--- a/var/spack/repos/builtin/packages/llvm/package.py
+++ b/var/spack/repos/builtin/packages/llvm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,6 +28,8 @@ class Llvm(CMakePackage, CudaPackage):
# fmt: off
version('main', branch='main')
+ version('12.0.0', sha256='8e6c99e482bb16a450165176c2d881804976a2d770e0445af4375e78a1fbf19c')
+ version('11.1.0', sha256='53a0719f3f4b0388013cfffd7b10c7d5682eece1929a9553c722348d1f866e79')
version('11.0.1', sha256='9c7ad8e8ec77c5bde8eb4afa105a318fd1ded7dff3747d14f012758719d7171b')
version('11.0.0', sha256='8ad4ddbafac4f2c8f2ea523c2c4196f940e8e16f9e635210537582a48622a5d5')
version('10.0.1', sha256='c7ccb735c37b4ec470f66a6c35fbae4f029c0f88038f6977180b1a8ddc255637')
@@ -65,6 +67,12 @@ class Llvm(CMakePackage, CudaPackage):
description="Build the LLVM C/C++/Objective-C compiler frontend",
)
variant(
+ "flang",
+ default=False,
+ description="Build the LLVM Fortran compiler frontend "
+ "(experimental - parser only, needs GCC)",
+ )
+ variant(
"omp_debug",
default=False,
description="Include debugging code in OpenMP runtime libraries",
@@ -142,6 +150,7 @@ class Llvm(CMakePackage, CudaPackage):
depends_on("cmake@3.4.3:", type="build")
depends_on("python@2.7:2.8", when="@:4.999 ~python", type="build")
depends_on("python", when="@5: ~python", type="build")
+ depends_on("pkgconfig", type="build")
# Universal dependency
depends_on("python@2.7:2.8", when="@:4.999+python")
@@ -163,7 +172,7 @@ class Llvm(CMakePackage, CudaPackage):
depends_on("py-six", when="@5.0.0: +lldb +python")
# gold support, required for some features
- depends_on("binutils+gold", when="+gold")
+ depends_on("binutils+gold+ld+plugins", when="+gold")
# polly plugin
depends_on("gmp", when="@:3.6.999 +polly")
@@ -174,6 +183,9 @@ class Llvm(CMakePackage, CudaPackage):
conflicts("+libcxx", when="~clang")
conflicts("+internal_unwind", when="~clang")
conflicts("+compiler-rt", when="~clang")
+ conflicts("+flang", when="~clang")
+ # Introduced in version 11 as a part of LLVM and not a separate package.
+ conflicts("+flang", when="@:10.999")
# LLVM 4 and 5 does not build with GCC 8
conflicts("%gcc@8:", when="@:5")
@@ -201,6 +213,11 @@ class Llvm(CMakePackage, CudaPackage):
"system debug server",
)
+ # LLVM bug https://bugs.llvm.org/show_bug.cgi?id=48234
+ # CMake bug: https://gitlab.kitware.com/cmake/cmake/-/issues/21469
+ # Fixed in upstream versions of both
+ conflicts('^cmake@3.19.0', when='@6.0.0:11.0.0')
+
# Github issue #4986
patch("llvm_gcc7.patch", when="@4.0.0:4.0.1+lldb %gcc@7.0:")
# Backport from llvm master + additional fix
@@ -218,14 +235,21 @@ class Llvm(CMakePackage, CudaPackage):
patch("thread-p9.patch", when="@develop+libcxx")
# https://github.com/spack/spack/issues/19625,
- # merged in llvm-11.0.0_rc2
- patch("lldb_external_ncurses-10.patch", when="@10.0.0:10.99+lldb")
+ # merged in llvm-11.0.0_rc2, but not found in 11.0.1
+ patch("lldb_external_ncurses-10.patch", when="@10.0.0:11.0.1+lldb")
+
+ # https://github.com/spack/spack/issues/19908
+ # merged in llvm main prior to 12.0.0
+ patch("llvm_python_path.patch", when="@11.0.0")
+
+ # Workaround for issue https://github.com/spack/spack/issues/18197
+ patch('llvm7_intel.patch', when='@7 %intel@18.0.2,19.0.4')
# The functions and attributes below implement external package
# detection for LLVM. See:
#
# https://spack.readthedocs.io/en/latest/packaging_guide.html#making-a-package-discoverable-with-spack-external-find
- executables = ['clang', 'ld.lld', 'lldb']
+ executables = ['clang', 'flang', 'ld.lld', 'lldb']
@classmethod
def filter_detected_exes(cls, prefix, exes_in_prefix):
@@ -244,11 +268,11 @@ class Llvm(CMakePackage, CudaPackage):
def determine_version(cls, exe):
version_regex = re.compile(
# Normal clang compiler versions are left as-is
- r'clang version ([^ )]+)-svn[~.\w\d-]*|'
+ r'clang version ([^ )\n]+)-svn[~.\w\d-]*|'
# Don't include hyphenated patch numbers in the version
# (see https://github.com/spack/spack/pull/14365 for details)
- r'clang version ([^ )]+?)-[~.\w\d-]*|'
- r'clang version ([^ )]+)|'
+ r'clang version ([^ )\n]+?)-[~.\w\d-]*|'
+ r'clang version ([^ )\n]+)|'
# LLDB
r'lldb version ([^ )\n]+)|'
# LLD
@@ -278,6 +302,10 @@ class Llvm(CMakePackage, CudaPackage):
compilers['cxx'] = exe
elif 'clang' in exe:
compilers['c'] = exe
+ elif 'flang' in exe:
+ variants.append('+flang')
+ compilers['fc'] = exe
+ compilers['f77'] = exe
elif 'ld.lld' in exe:
lld_found = True
compilers['ld'] = exe
@@ -323,6 +351,28 @@ class Llvm(CMakePackage, CudaPackage):
result = os.path.join(self.spec.prefix.bin, 'clang++')
return result
+ @property
+ def fc(self):
+ msg = "cannot retrieve Fortran compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('fc', None)
+ result = None
+ if '+flang' in self.spec:
+ result = os.path.join(self.spec.prefix.bin, 'flang')
+ return result
+
+ @property
+ def f77(self):
+ msg = "cannot retrieve Fortran 77 compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers'].get('f77', None)
+ result = None
+ if '+flang' in self.spec:
+ result = os.path.join(self.spec.prefix.bin, 'flang')
+ return result
+
@run_before('cmake')
def codesign_check(self):
if self.spec.satisfies("+code_signing"):
@@ -349,28 +399,45 @@ class Llvm(CMakePackage, CudaPackage):
'create this identity.'
)
- def setup_build_environment(self, env):
- env.append_flags("CXXFLAGS", self.compiler.cxx11_flag)
+ def flag_handler(self, name, flags):
+ if name == 'cxxflags':
+ flags.append(self.compiler.cxx11_flag)
+ return(None, flags, None)
+ elif name == 'ldflags' and self.spec.satisfies('%intel'):
+ flags.append('-shared-intel')
+ return(None, flags, None)
+ return(flags, None, None)
def setup_run_environment(self, env):
if "+clang" in self.spec:
env.set("CC", join_path(self.spec.prefix.bin, "clang"))
env.set("CXX", join_path(self.spec.prefix.bin, "clang++"))
+ if "+flang" in self.spec:
+ env.set("FC", join_path(self.spec.prefix.bin, "flang"))
+ env.set("F77", join_path(self.spec.prefix.bin, "flang"))
root_cmakelists_dir = "llvm"
def cmake_args(self):
spec = self.spec
+ python = spec['python']
cmake_args = [
"-DLLVM_REQUIRES_RTTI:BOOL=ON",
"-DLLVM_ENABLE_RTTI:BOOL=ON",
"-DLLVM_ENABLE_EH:BOOL=ON",
"-DCLANG_DEFAULT_OPENMP_RUNTIME:STRING=libomp",
- "-DPYTHON_EXECUTABLE:PATH={0}".format(spec["python"].command.path),
+ "-DPYTHON_EXECUTABLE:PATH={0}".format(python.command.path),
"-DLIBOMP_USE_HWLOC:BOOL=ON",
"-DLIBOMP_HWLOC_INSTALL_DIR={0}".format(spec["hwloc"].prefix),
]
+ if python.version >= Version("3.0.0"):
+ cmake_args.append("-DPython3_EXECUTABLE={0}".format(
+ python.command.path))
+ else:
+ cmake_args.append("-DPython2_EXECUTABLE={0}".format(
+ python.command.path))
+
projects = []
if "+cuda" in spec:
@@ -418,6 +485,8 @@ class Llvm(CMakePackage, CudaPackage):
projects.append("clang")
projects.append("clang-tools-extra")
projects.append("openmp")
+ if "+flang" in spec:
+ projects.append("flang")
if "+lldb" in spec:
projects.append("lldb")
if "+lld" in spec:
@@ -481,7 +550,16 @@ class Llvm(CMakePackage, CudaPackage):
cmake_args.append("-DLIBOMP_TSAN_SUPPORT=ON")
if self.compiler.name == "gcc":
- gcc_prefix = ancestor(self.compiler.cc, 2)
+ compiler = Executable(self.compiler.cc)
+ gcc_output = compiler('-print-search-dirs', output=str, error=str)
+
+ for line in gcc_output.splitlines():
+ if line.startswith("install:"):
+ # Get path and strip any whitespace
+ # (causes oddity with ancestor)
+ gcc_prefix = line.split(":")[1].strip()
+ gcc_prefix = ancestor(gcc_prefix, 4)
+ break
cmake_args.append("-DGCC_INSTALL_PREFIX=" + gcc_prefix)
if spec.satisfies("@4.0.0:"):
diff --git a/var/spack/repos/builtin/packages/lm-sensors/package.py b/var/spack/repos/builtin/packages/lm-sensors/package.py
index ac9ad2c236..29fb18ca9c 100644
--- a/var/spack/repos/builtin/packages/lm-sensors/package.py
+++ b/var/spack/repos/builtin/packages/lm-sensors/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lmbench/package.py b/var/spack/repos/builtin/packages/lmbench/package.py
index e0b5fe3620..b951a75112 100644
--- a/var/spack/repos/builtin/packages/lmbench/package.py
+++ b/var/spack/repos/builtin/packages/lmbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lmdb/package.py b/var/spack/repos/builtin/packages/lmdb/package.py
index 9b45303766..6a5bb9d02a 100644
--- a/var/spack/repos/builtin/packages/lmdb/package.py
+++ b/var/spack/repos/builtin/packages/lmdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Lmdb(MakefilePackage):
homepage = "https://lmdb.tech/"
url = "https://github.com/LMDB/lmdb/archive/LMDB_0.9.21.tar.gz"
+ version('0.9.29', sha256='22054926b426c66d8f2bc22071365df6e35f3aacf19ad943bc6167d4cae3bebb')
version('0.9.24', sha256='44602436c52c29d4f301f55f6fd8115f945469b868348e3cddaf91ab2473ea26')
version('0.9.22', sha256='f3927859882eb608868c8c31586bb7eb84562a40a6bf5cc3e13b6b564641ea28')
version('0.9.21', sha256='1187b635a4cc415bb6972bba346121f81edd996e99b8f0816151d4090f90b559')
@@ -23,6 +24,10 @@ class Lmdb(MakefilePackage):
build_directory = 'libraries/liblmdb'
@property
+ def build_targets(self):
+ return ['CC={0}'.format(spack_cc)]
+
+ @property
def install_targets(self):
return ['prefix={0}'.format(self.prefix), 'install']
diff --git a/var/spack/repos/builtin/packages/lmod/package.py b/var/spack/repos/builtin/packages/lmod/package.py
index f211405179..95577471d4 100644
--- a/var/spack/repos/builtin/packages/lmod/package.py
+++ b/var/spack/repos/builtin/packages/lmod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lndir/package.py b/var/spack/repos/builtin/packages/lndir/package.py
index 1c310c172c..0e8891b04e 100644
--- a/var/spack/repos/builtin/packages/lndir/package.py
+++ b/var/spack/repos/builtin/packages/lndir/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,5 +15,5 @@ class Lndir(AutotoolsPackage, XorgPackage):
version('1.0.3', sha256='95b2d26fb3cbe702f828146c7a4c7c48001d2da52b062580227b7b68180be902')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/log4c/package.py b/var/spack/repos/builtin/packages/log4c/package.py
index afc9da054a..fd21871b38 100644
--- a/var/spack/repos/builtin/packages/log4c/package.py
+++ b/var/spack/repos/builtin/packages/log4c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/log4cplus/package.py b/var/spack/repos/builtin/packages/log4cplus/package.py
index 12e766aa7c..1be0c2ac4f 100644
--- a/var/spack/repos/builtin/packages/log4cplus/package.py
+++ b/var/spack/repos/builtin/packages/log4cplus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/log4cpp/package.py b/var/spack/repos/builtin/packages/log4cpp/package.py
index e99fb23e48..78cf8b8a8a 100644
--- a/var/spack/repos/builtin/packages/log4cpp/package.py
+++ b/var/spack/repos/builtin/packages/log4cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/log4cxx/package.py b/var/spack/repos/builtin/packages/log4cxx/package.py
index 090376fe9d..c05cdc15d2 100644
--- a/var/spack/repos/builtin/packages/log4cxx/package.py
+++ b/var/spack/repos/builtin/packages/log4cxx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/logrotate/package.py b/var/spack/repos/builtin/packages/logrotate/package.py
index 0416a5f8a5..77b71c3f92 100644
--- a/var/spack/repos/builtin/packages/logrotate/package.py
+++ b/var/spack/repos/builtin/packages/logrotate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/logstash/package.py b/var/spack/repos/builtin/packages/logstash/package.py
index a348f42f8f..8da75e9e91 100644
--- a/var/spack/repos/builtin/packages/logstash/package.py
+++ b/var/spack/repos/builtin/packages/logstash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/loki/package.py b/var/spack/repos/builtin/packages/loki/package.py
index 7c16974345..5052d9a7d9 100644
--- a/var/spack/repos/builtin/packages/loki/package.py
+++ b/var/spack/repos/builtin/packages/loki/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/looptools/package.py b/var/spack/repos/builtin/packages/looptools/package.py
index b3cc941f06..95c633da60 100644
--- a/var/spack/repos/builtin/packages/looptools/package.py
+++ b/var/spack/repos/builtin/packages/looptools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lordec/package.py b/var/spack/repos/builtin/packages/lordec/package.py
index e222aff6f6..40596ef398 100644
--- a/var/spack/repos/builtin/packages/lordec/package.py
+++ b/var/spack/repos/builtin/packages/lordec/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lp-solve/package.py b/var/spack/repos/builtin/packages/lp-solve/package.py
new file mode 100644
index 0000000000..5358eccebe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lp-solve/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class LpSolve(Package):
+ """lp_solve is a Mixed Integer Linear Programming (MILP) solver."""
+
+ homepage = "https://sourceforge.net/projects/lpsolve/"
+ url = "https://sourceforge.net/projects/lpsolve/files/lpsolve/5.5.2.11/lp_solve_5.5.2.11_source.tar.gz"
+
+ version('5.5.2.11', sha256='6d4abff5cc6aaa933ae8e6c17a226df0fc0b671c438f69715d41d09fe81f902f')
+
+ def install(self, spec, prefix):
+ with working_dir('lpsolve55'):
+ mkdir(prefix.lib)
+ sh = which('sh')
+ sh('-x', 'ccc')
+ install_tree('bin/ux64', prefix.lib)
+ with working_dir('lp_solve'):
+ mkdir(prefix.bin)
+ sh = which('sh')
+ sh('-x', 'ccc')
+ install_tree('bin/ux64', prefix.bin)
+
+ mkdirp(prefix.include.lpsolve)
+ headers = find('.', '*.h', recursive=False)
+ for header in headers:
+ install(header, prefix.include.lpsolve)
diff --git a/var/spack/repos/builtin/packages/lrslib/package.py b/var/spack/repos/builtin/packages/lrslib/package.py
index a1ec47d3df..33bcb3fbdf 100644
--- a/var/spack/repos/builtin/packages/lrslib/package.py
+++ b/var/spack/repos/builtin/packages/lrslib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lrzip/package.py b/var/spack/repos/builtin/packages/lrzip/package.py
index d264d6da48..dff9a501f9 100644
--- a/var/spack/repos/builtin/packages/lrzip/package.py
+++ b/var/spack/repos/builtin/packages/lrzip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lsf/package.py b/var/spack/repos/builtin/packages/lsf/package.py
index 9f007fa237..eb236f4140 100644
--- a/var/spack/repos/builtin/packages/lsf/package.py
+++ b/var/spack/repos/builtin/packages/lsf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lshw/package.py b/var/spack/repos/builtin/packages/lshw/package.py
index 99c5d30767..a813292d1f 100644
--- a/var/spack/repos/builtin/packages/lshw/package.py
+++ b/var/spack/repos/builtin/packages/lshw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lsof/package.py b/var/spack/repos/builtin/packages/lsof/package.py
index d66a45a5ea..e7ff32c7d9 100644
--- a/var/spack/repos/builtin/packages/lsof/package.py
+++ b/var/spack/repos/builtin/packages/lsof/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lsscsi/package.py b/var/spack/repos/builtin/packages/lsscsi/package.py
index cfd51d454f..6505d76401 100644
--- a/var/spack/repos/builtin/packages/lsscsi/package.py
+++ b/var/spack/repos/builtin/packages/lsscsi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ltp/package.py b/var/spack/repos/builtin/packages/ltp/package.py
index ff02c7dd80..5c0dc9e43c 100644
--- a/var/spack/repos/builtin/packages/ltp/package.py
+++ b/var/spack/repos/builtin/packages/ltp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ltr-retriever/package.py b/var/spack/repos/builtin/packages/ltr-retriever/package.py
index 2cc7f0a231..885ca02336 100644
--- a/var/spack/repos/builtin/packages/ltr-retriever/package.py
+++ b/var/spack/repos/builtin/packages/ltr-retriever/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ltrace/package.py b/var/spack/repos/builtin/packages/ltrace/package.py
index 9e0b72804f..3b269d3350 100644
--- a/var/spack/repos/builtin/packages/ltrace/package.py
+++ b/var/spack/repos/builtin/packages/ltrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lua-bitlib/package.py b/var/spack/repos/builtin/packages/lua-bitlib/package.py
index dec5e59f58..a856252c15 100644
--- a/var/spack/repos/builtin/packages/lua-bitlib/package.py
+++ b/var/spack/repos/builtin/packages/lua-bitlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lua-lpeg/package.py b/var/spack/repos/builtin/packages/lua-lpeg/package.py
index caf9f05ac3..0f58195ca4 100644
--- a/var/spack/repos/builtin/packages/lua-lpeg/package.py
+++ b/var/spack/repos/builtin/packages/lua-lpeg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lua-luafilesystem/package.py b/var/spack/repos/builtin/packages/lua-luafilesystem/package.py
index 7e526d6e7c..c4282416e6 100644
--- a/var/spack/repos/builtin/packages/lua-luafilesystem/package.py
+++ b/var/spack/repos/builtin/packages/lua-luafilesystem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lua-luajit/package.py b/var/spack/repos/builtin/packages/lua-luajit/package.py
index 61d77c5662..d5a44325cc 100644
--- a/var/spack/repos/builtin/packages/lua-luajit/package.py
+++ b/var/spack/repos/builtin/packages/lua-luajit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lua-luaposix/package.py b/var/spack/repos/builtin/packages/lua-luaposix/package.py
index f5290eae1c..87b1dd3702 100644
--- a/var/spack/repos/builtin/packages/lua-luaposix/package.py
+++ b/var/spack/repos/builtin/packages/lua-luaposix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lua-mpack/package.py b/var/spack/repos/builtin/packages/lua-mpack/package.py
index c03b6418ba..4b8ec544a9 100644
--- a/var/spack/repos/builtin/packages/lua-mpack/package.py
+++ b/var/spack/repos/builtin/packages/lua-mpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lua/package.py b/var/spack/repos/builtin/packages/lua/package.py
index f752fbee32..db80713789 100644
--- a/var/spack/repos/builtin/packages/lua/package.py
+++ b/var/spack/repos/builtin/packages/lua/package.py
@@ -1,8 +1,9 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from llnl.util.filesystem import join_path
from spack import *
import os
@@ -27,6 +28,7 @@ class Lua(Package):
version('5.1.4', sha256='b038e225eaf2a5b57c9bcc35cd13aa8c6c8288ef493d52970c9545074098af3a')
version('5.1.3', sha256='6b5df2edaa5e02bf1a2d85e1442b2e329493b30b0c0780f77199d24f087d296d')
+ variant("pcfile", default=False, description="Add patch for lua.pc generation")
variant('shared', default=True,
description='Builds a shared version of the library')
@@ -37,6 +39,12 @@ class Lua(Package):
# luarocks needs unzip for some packages (e.g. lua-luaposix)
depends_on('unzip', type='run')
+ patch(
+ "http://lua.2524044.n2.nabble.com/attachment/7666421/0/pkg-config.patch",
+ sha256="208316c2564bdd5343fa522f3b230d84bd164058957059838df7df56876cb4ae",
+ when="+pcfile"
+ )
+
resource(
name="luarocks",
url="https://keplerproject.github.io/luarocks/releases/"
@@ -166,6 +174,12 @@ class Lua(Package):
os.path.join(self.spec.prefix, self.lua_lib_dir, '?.so'),
separator=';')
+ @run_after('install')
+ def link_pkg_config(self):
+ if "+pcfile" in self.spec:
+ symlink(join_path(self.prefix.lib, 'pkgconfig', 'lua5.3.pc'),
+ join_path(self.prefix.lib, 'pkgconfig', 'lua.pc'))
+
@property
def lua_lib_dir(self):
return os.path.join('lib', 'lua', str(self.version.up_to(2)))
diff --git a/var/spack/repos/builtin/packages/lucene/package.py b/var/spack/repos/builtin/packages/lucene/package.py
index 692a681337..c730fd19ec 100644
--- a/var/spack/repos/builtin/packages/lucene/package.py
+++ b/var/spack/repos/builtin/packages/lucene/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/luit/package.py b/var/spack/repos/builtin/packages/luit/package.py
index 232111e4bf..a3c6c3b751 100644
--- a/var/spack/repos/builtin/packages/luit/package.py
+++ b/var/spack/repos/builtin/packages/luit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lulesh/package.py b/var/spack/repos/builtin/packages/lulesh/package.py
index 26772b6bcb..e52daa0f59 100644
--- a/var/spack/repos/builtin/packages/lulesh/package.py
+++ b/var/spack/repos/builtin/packages/lulesh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lumpy-sv/package.py b/var/spack/repos/builtin/packages/lumpy-sv/package.py
index ded7a89e2c..876241d77a 100644
--- a/var/spack/repos/builtin/packages/lumpy-sv/package.py
+++ b/var/spack/repos/builtin/packages/lumpy-sv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lustre/package.py b/var/spack/repos/builtin/packages/lustre/package.py
index fa7cb18704..d6e4530dfc 100644
--- a/var/spack/repos/builtin/packages/lustre/package.py
+++ b/var/spack/repos/builtin/packages/lustre/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lvarray/package.py b/var/spack/repos/builtin/packages/lvarray/package.py
index 366b562cc6..906b44cdef 100644
--- a/var/spack/repos/builtin/packages/lvarray/package.py
+++ b/var/spack/repos/builtin/packages/lvarray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lvm2/package.py b/var/spack/repos/builtin/packages/lvm2/package.py
index 23142fce26..64d1f43f4b 100644
--- a/var/spack/repos/builtin/packages/lvm2/package.py
+++ b/var/spack/repos/builtin/packages/lvm2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lwgrp/package.py b/var/spack/repos/builtin/packages/lwgrp/package.py
index df13c4674a..f949e37bfd 100644
--- a/var/spack/repos/builtin/packages/lwgrp/package.py
+++ b/var/spack/repos/builtin/packages/lwgrp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lwm2/package.py b/var/spack/repos/builtin/packages/lwm2/package.py
index 023c2ef771..1f3df1f457 100644
--- a/var/spack/repos/builtin/packages/lwm2/package.py
+++ b/var/spack/repos/builtin/packages/lwm2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lxc/package.py b/var/spack/repos/builtin/packages/lxc/package.py
index 0555b6b642..62f40a85db 100644
--- a/var/spack/repos/builtin/packages/lxc/package.py
+++ b/var/spack/repos/builtin/packages/lxc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,3 +31,9 @@ class Lxc(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
+
+ def configure_args(self):
+ args = ["bashcompdir=" +
+ join_path(self.spec['lxc'].prefix, 'share',
+ 'bash-completion', 'completions')]
+ return args
diff --git a/var/spack/repos/builtin/packages/lynx/package.py b/var/spack/repos/builtin/packages/lynx/package.py
index 66c6f5408e..0028037124 100644
--- a/var/spack/repos/builtin/packages/lynx/package.py
+++ b/var/spack/repos/builtin/packages/lynx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lz4/package.py b/var/spack/repos/builtin/packages/lz4/package.py
index 181117e0e2..35c33e5720 100644
--- a/var/spack/repos/builtin/packages/lz4/package.py
+++ b/var/spack/repos/builtin/packages/lz4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Lz4(MakefilePackage):
homepage = "http://lz4.github.io/lz4/"
url = "https://github.com/lz4/lz4/archive/v1.9.2.tar.gz"
+ version('1.9.3', sha256='030644df4611007ff7dc962d981f390361e6c97a34e5cbc393ddfbe019ffe2c1')
version('1.9.2', sha256='658ba6191fa44c92280d4aa2c271b0f4fbc0e34d249578dd05e50e76d0e5efcc')
version('1.9.0', sha256='f8b6d5662fa534bd61227d313535721ae41a68c9d84058b7b7d86e143572dcfb')
version('1.8.3', sha256='33af5936ac06536805f9745e0b6d61da606a1f8b4cc5c04dd3cbaca3b9b4fc43')
@@ -25,6 +26,9 @@ class Lz4(MakefilePackage):
depends_on('valgrind', type='test')
+ variant('libs', default='shared,static', values=('shared', 'static'),
+ multi=True, description='Build shared libs, static libs or both')
+
def url_for_version(self, version):
url = "https://github.com/lz4/lz4/archive"
@@ -46,11 +50,14 @@ class Lz4(MakefilePackage):
make(parallel=par)
def install(self, spec, prefix):
- make('install', 'PREFIX={0}'.format(prefix))
+ make('install',
+ 'PREFIX={0}'.format(prefix),
+ 'BUILD_SHARED={0}'.format('yes' if 'libs=shared' in self.spec else 'no'),
+ 'BUILD_STATIC={0}'.format('yes' if 'libs=static' in self.spec else 'no'))
def patch(self):
# Remove flags not recognized by the NVIDIA compiler
- if self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%nvhpc@:20.11'):
filter_file('-fvisibility=hidden', '', 'Makefile')
filter_file('-fvisibility=hidden', '', 'lib/Makefile')
filter_file('-pedantic', '', 'Makefile')
diff --git a/var/spack/repos/builtin/packages/lzma/package.py b/var/spack/repos/builtin/packages/lzma/package.py
index 1bea0dcb1b..41fac117b3 100644
--- a/var/spack/repos/builtin/packages/lzma/package.py
+++ b/var/spack/repos/builtin/packages/lzma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/lzo/package.py b/var/spack/repos/builtin/packages/lzo/package.py
index f5c12c6159..855a85d05a 100644
--- a/var/spack/repos/builtin/packages/lzo/package.py
+++ b/var/spack/repos/builtin/packages/lzo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,8 +19,10 @@ class Lzo(AutotoolsPackage):
version('2.06', sha256='ff79e6f836d62d3f86ef6ce893ed65d07e638ef4d3cb952963471b4234d43e73')
version('2.05', sha256='449f98186d76ba252cd17ff1241ca2a96b7f62e0d3e4766f88730dab0ea5f333')
+ variant('libs', default='shared,static', values=('shared', 'static'),
+ multi=True, description='Build shared libs, static libs or both')
+
def configure_args(self):
- return [
- '--disable-dependency-tracking',
- '--enable-shared'
- ]
+ args = ['--disable-dependency-tracking']
+ args += self.enable_or_disable('libs')
+ return args
diff --git a/var/spack/repos/builtin/packages/lzop/package.py b/var/spack/repos/builtin/packages/lzop/package.py
index 9a7096e01b..144fa4b967 100644
--- a/var/spack/repos/builtin/packages/lzop/package.py
+++ b/var/spack/repos/builtin/packages/lzop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/m4/oneapi.patch b/var/spack/repos/builtin/packages/m4/oneapi.patch
new file mode 100644
index 0000000000..d659c1e75c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/m4/oneapi.patch
@@ -0,0 +1,18 @@
+--- a/lib/xalloc-oversized.h 2020-08-07 11:04:56.154698639 -0700
++++ b/lib/xalloc-oversized.h 2020-08-07 11:06:11.667997389 -0700
+@@ -46,13 +46,13 @@
+ positive and N must be nonnegative. This is a macro, not a
+ function, so that it works correctly even when SIZE_MAX < N. */
+
+-#if 7 <= __GNUC__ || __has_builtin (__builtin_add_overflow_p)
++#if ((7 <= __GNUC__ || __has_builtin (__builtin_add_overflow_p)) && !defined __INTEL_LLVM_COMPILER)
+ # define xalloc_oversized(n, s) \
+ __builtin_mul_overflow_p (n, s, (__xalloc_count_type) 1)
+ #elif ((5 <= __GNUC__ \
+ || (__has_builtin (__builtin_mul_overflow) \
+ && __has_builtin (__builtin_constant_p))) \
+- && !__STRICT_ANSI__)
++ && !__STRICT_ANSI__ && !defined __INTEL_LLVM_COMPILER)
+ # define xalloc_oversized(n, s) \
+ (__builtin_constant_p (n) && __builtin_constant_p (s) \
+ ? __xalloc_oversized (n, s) \
diff --git a/var/spack/repos/builtin/packages/m4/package.py b/var/spack/repos/builtin/packages/m4/package.py
index b0d037b3f2..38af7fc587 100644
--- a/var/spack/repos/builtin/packages/m4/package.py
+++ b/var/spack/repos/builtin/packages/m4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,11 +18,13 @@ class M4(AutotoolsPackage, GNUMirrorPackage):
patch('gnulib-pgi.patch', when='@1.4.18')
patch('pgi.patch', when='@1.4.17')
patch('nvhpc.patch', when='%nvhpc')
+ patch('oneapi.patch', when='%oneapi')
# from: https://github.com/Homebrew/homebrew-core/blob/master/Formula/m4.rb
# Patch credit to Jeremy Huddleston Sequoia <jeremyhu@apple.com>
patch('secure_snprintf.patch', when='os = highsierra')
patch('secure_snprintf.patch', when='os = mojave')
patch('secure_snprintf.patch', when='os = catalina')
+ patch('secure_snprintf.patch', when='os = bigsur')
# https://bugzilla.redhat.com/show_bug.cgi?id=1573342
patch('https://src.fedoraproject.org/rpms/m4/raw/5d147168d4b93f38a4833f5dd1d650ad88af5a8a/f/m4-1.4.18-glibc-change-work-around.patch', sha256='fc9b61654a3ba1a8d6cd78ce087e7c96366c290bc8d2c299f09828d793b853c8', when='@1.4.18')
@@ -33,6 +35,8 @@ class M4(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
+ tags = ['build-tools']
+
executables = ['^g?m4$']
@classmethod
@@ -45,6 +49,15 @@ class M4(AutotoolsPackage, GNUMirrorPackage):
match = re.search(r'GNU M4\)?\s+(\S+)', output)
return match.group(1) if match else None
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ # Inform autom4te if it wasn't built correctly (some external
+ # installations such as homebrew). See
+ # https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/autom4te-Invocation.html
+ env.set('M4', self.prefix.bin.m4)
+
+ def setup_run_environment(self, env):
+ env.set('M4', self.prefix.bin.m4)
+
def configure_args(self):
spec = self.spec
args = ['--enable-c++']
diff --git a/var/spack/repos/builtin/packages/macsio/package.py b/var/spack/repos/builtin/packages/macsio/package.py
index 46dccab4be..427af43feb 100644
--- a/var/spack/repos/builtin/packages/macsio/package.py
+++ b/var/spack/repos/builtin/packages/macsio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -41,6 +41,8 @@ class Macsio(CMakePackage):
depends_on('silo', when="+pdb")
depends_on('typhonio', when="+typhonio")
depends_on('scr', when="+scr")
+ # macsio@1.1 has bug with ~mpi configuration
+ conflicts('~mpi', when='@1.1')
# Ref: https://github.com/LLNL/MACSio/commit/51b8c40cd9813adec5dd4dd6cee948bb9ddb7ee1
patch('cast.patch', when='@1.1')
diff --git a/var/spack/repos/builtin/packages/mad-numdiff/package.py b/var/spack/repos/builtin/packages/mad-numdiff/package.py
index 3eedcd3707..d4130aec17 100644
--- a/var/spack/repos/builtin/packages/mad-numdiff/package.py
+++ b/var/spack/repos/builtin/packages/mad-numdiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/madgraph5amc/package.py b/var/spack/repos/builtin/packages/madgraph5amc/package.py
index d0f29eb6c0..99512892ff 100644
--- a/var/spack/repos/builtin/packages/madgraph5amc/package.py
+++ b/var/spack/repos/builtin/packages/madgraph5amc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,8 @@ class Madgraph5amc(Package):
homepage = "https://launchpad.net/mg5amcnlo"
url = "https://launchpad.net/mg5amcnlo/2.0/2.7.x/+download/MG5_aMC_v2.7.3.tar.gz"
+ tags = ['hep']
+
version('2.8.1', sha256='acda34414beba201e529b8c03f87f4893fb3f99ed2956a131d60a387e76c5b8c',
url="https://launchpad.net/mg5amcnlo/2.0/2.8.x/+download/MG5_aMC_v2.8.1.tar.gz")
version('2.8.0', sha256='e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855',
@@ -26,7 +28,7 @@ class Madgraph5amc(Package):
version('2.7.3.py2', sha256='0b665356f4d9359e6e382e0f408dc11db594734567c6b2f0ec0e0697f2dbe099',
url="https://launchpad.net/mg5amcnlo/2.0/2.7.x/+download/MG5_aMC_v2.7.3.tar.gz")
- variant('atlas', default=False, description='Apply changes requested by ' +
+ variant('atlas', default=False, description='Apply changes requested by ' +
"the ATLAS experimenent on LHC")
variant('ninja', default=False, description='Use external installation' +
" of Ninja")
diff --git a/var/spack/repos/builtin/packages/mafft/package.py b/var/spack/repos/builtin/packages/mafft/package.py
index 4c8e061925..a348ea207b 100644
--- a/var/spack/repos/builtin/packages/mafft/package.py
+++ b/var/spack/repos/builtin/packages/mafft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Mafft(Package):
homepage = "http://mafft.cbrc.jp/alignment/software/index.html"
url = "http://mafft.cbrc.jp/alignment/software/mafft-7.221-with-extensions-src.tgz"
+ version('7.475', sha256='bb6973ae089ea18cfbd3861a5b9d2c8b7e1543a1fdc78ac2d7cd8dbe3443f319')
version('7.453', sha256='8b2f0d6249c575f80cd51278ab45dd149b8ac9b159adac20fd1ddc7a6722af11')
version('7.407', sha256='1840b51a0b93f40b4d6076af996ee46396428d8dbaf7ba1d847abff9cb1463e5')
version('7.221', sha256='0bc78111966d9b00ddfa14fa217fa5bb0c593a558674a13f02dca7bcd51f7fcf')
@@ -23,3 +24,6 @@ class Mafft(Package):
with working_dir('core'):
make('PREFIX=%s' % prefix)
make('PREFIX=%s' % prefix, 'install')
+ with working_dir('extensions'):
+ make('PREFIX=%s' % prefix)
+ make('PREFIX=%s' % prefix, 'install')
diff --git a/var/spack/repos/builtin/packages/magics/package.py b/var/spack/repos/builtin/packages/magics/package.py
index 902ac0db13..88abf9c187 100644
--- a/var/spack/repos/builtin/packages/magics/package.py
+++ b/var/spack/repos/builtin/packages/magics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/magma/cmake-W.patch b/var/spack/repos/builtin/packages/magma/cmake-W.patch
new file mode 100644
index 0000000000..5917967632
--- /dev/null
+++ b/var/spack/repos/builtin/packages/magma/cmake-W.patch
@@ -0,0 +1,12 @@
+diff -ru magma-2.5.0-orig/CMakeLists.txt magma-2.5.0/CMakeLists.txt
+--- magma-2.5.0-orig/CMakeLists.txt 2019-01-02 11:18:39.000000000 -0800
++++ magma-2.5.0/CMakeLists.txt 2019-04-03 15:58:01.871234891 -0700
+@@ -363,8 +363,6 @@
+ else()
+ # Primarily for gcc / nvcc:
+ # Ignore unused static functions in headers.
+- set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wno-unused-function" )
+- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-unused-function" )
+ endif()
+
+ if (CMAKE_HOST_APPLE)
diff --git a/var/spack/repos/builtin/packages/magma/package.py b/var/spack/repos/builtin/packages/magma/package.py
index 6ba69c51c1..8d09bbc316 100644
--- a/var/spack/repos/builtin/packages/magma/package.py
+++ b/var/spack/repos/builtin/packages/magma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,8 @@ class Magma(CMakePackage, CudaPackage):
url = "http://icl.cs.utk.edu/projectsfiles/magma/downloads/magma-2.2.0.tar.gz"
maintainers = ['stomov', 'luszczek']
+ test_requires_compiler = True
+
version('2.5.4', sha256='7734fb417ae0c367b418dea15096aef2e278a423e527c615aab47f0683683b67')
version('2.5.3', sha256='c602d269a9f9a3df28f6a4f593be819abb12ed3fa413bba1ff8183de721c5ef6')
version('2.5.2', sha256='065feb85558f9dd6f4cc4db36ac633a3f787827fc832d0b578a049a43a195620')
@@ -52,6 +54,7 @@ class Magma(CMakePackage, CudaPackage):
patch('magma-2.3.0-gcc-4.8.patch', when='@2.3.0%gcc@:4.8')
patch('magma-2.5.0.patch', when='@2.5.0')
patch('magma-2.5.0-cmake.patch', when='@2.5.0')
+ patch('cmake-W.patch', when='@2.5.0:%nvhpc')
def cmake_args(self):
spec = self.spec
@@ -71,6 +74,9 @@ class Magma(CMakePackage, CudaPackage):
options += ['-DBUILD_SHARED_LIBS=%s' %
('ON' if ('+shared' in spec) else 'OFF')]
+ if spec.satisfies('%cce'):
+ options += ['-DCUDA_NVCC_FLAGS=-allow-unsupported-compiler']
+
if '+fortran' in spec:
options.extend([
'-DUSE_FORTRAN=yes'
@@ -80,6 +86,9 @@ class Magma(CMakePackage, CudaPackage):
'-DCMAKE_Fortran_COMPILER=%s' % self.compiler.f77
])
+ if spec.satisfies('%cce'):
+ options.append('-DCMAKE_Fortran_FLAGS=-ef')
+
if spec.satisfies('^cuda'):
cuda_arch = self.spec.variants['cuda_arch'].value
if '@:2.2.0' in spec:
@@ -102,3 +111,32 @@ class Magma(CMakePackage, CudaPackage):
install('control/magma_threadsetting.h', self.prefix.include)
install('control/pthread_barrier.h', self.prefix.include)
install('control/magma_internal.h', self.prefix.include)
+
+ test_src_dir = 'example'
+
+ @run_after('install')
+ def cache_test_sources(self):
+ """Copy the example source files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources([self.test_src_dir])
+
+ def test(self):
+ test_dir = join_path(self.install_test_root, self.test_src_dir)
+ with working_dir(test_dir, create=False):
+ magma_dir = 'MAGMADIR={0}'.format(self.prefix)
+ cuda_dir = 'CUDADIR={0}'.format(self.spec['cuda'].prefix)
+ blas_dir = 'OPENBLASDIR={0}'.format(self.spec['blas'].prefix)
+ make(magma_dir, cuda_dir, blas_dir, 'c')
+ self.run_test('./example_sparse',
+ purpose='MAGMA smoke test - sparse solver')
+ self.run_test('./example_sparse_operator',
+ purpose='MAGMA smoke test - sparse operator')
+ self.run_test('./example_v1',
+ purpose='MAGMA smoke test - legacy v1 interface')
+ self.run_test('./example_v2',
+ purpose='MAGMA smoke test - v2 interface')
+ if '+fortran' in self.spec:
+ make(magma_dir, cuda_dir, blas_dir, 'fortran')
+ self.run_test('./example_f',
+ purpose='MAGMA smoke test - Fortran interface')
+ make('clean')
diff --git a/var/spack/repos/builtin/packages/mahout/package.py b/var/spack/repos/builtin/packages/mahout/package.py
index 62e63a2657..614f966598 100644
--- a/var/spack/repos/builtin/packages/mahout/package.py
+++ b/var/spack/repos/builtin/packages/mahout/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/makedepend/package.py b/var/spack/repos/builtin/packages/makedepend/package.py
index 96cca305d2..cae4d4938a 100644
--- a/var/spack/repos/builtin/packages/makedepend/package.py
+++ b/var/spack/repos/builtin/packages/makedepend/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,5 +14,5 @@ class Makedepend(AutotoolsPackage, XorgPackage):
version('1.0.5', sha256='503903d41fb5badb73cb70d7b3740c8b30fe1cc68c504d3b6a85e6644c4e5004')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/maker/package.py b/var/spack/repos/builtin/packages/maker/package.py
index c481697041..80be916570 100644
--- a/var/spack/repos/builtin/packages/maker/package.py
+++ b/var/spack/repos/builtin/packages/maker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,8 +31,10 @@ class Maker(Package):
http://spack.readthedocs.io/en/latest/mirrors.html"""
homepage = "http://www.yandell-lab.org/software/maker.html"
+ manual_download = True
- version('2.31.10', sha256='d3979af9710d61754a3b53f6682d0e2052c6c3f36be6f2df2286d2587406f07d')
+ version('3.01.03', sha256='d3979af9710d61754a3b53f6682d0e2052c6c3f36be6f2df2286d2587406f07d')
+ version('2.31.10', sha256='d3979af9710d61754a3b53f6682d0e2052c6c3f36be6f2df2286d2587406f07d')
def url_for_version(self, version):
return "file://{0}/maker-{1}.tgz".format(os.getcwd(), version)
diff --git a/var/spack/repos/builtin/packages/mallocmc/package.py b/var/spack/repos/builtin/packages/mallocmc/package.py
index 2dd30bea6b..1e76220039 100644
--- a/var/spack/repos/builtin/packages/mallocmc/package.py
+++ b/var/spack/repos/builtin/packages/mallocmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/maloc/package.py b/var/spack/repos/builtin/packages/maloc/package.py
index 058ce3f0c8..21d4053ed9 100644
--- a/var/spack/repos/builtin/packages/maloc/package.py
+++ b/var/spack/repos/builtin/packages/maloc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/man-db/package.py b/var/spack/repos/builtin/packages/man-db/package.py
index 18007cc9cd..e5ecc8fc86 100644
--- a/var/spack/repos/builtin/packages/man-db/package.py
+++ b/var/spack/repos/builtin/packages/man-db/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/manta/for_aarch64.patch b/var/spack/repos/builtin/packages/manta/for_aarch64.patch
new file mode 100644
index 0000000000..86364108e6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/manta/for_aarch64.patch
@@ -0,0 +1,11 @@
+--- spack-src/src/cmake/boost.cmake.bak 2019-06-29 07:04:47.000000000 +0900
++++ spack-src/src/cmake/boost.cmake 2021-03-30 11:36:39.000000000 +0900
+@@ -168,6 +168,8 @@
+ message (FATAL_ERROR "Failed to unpack boost library ${THIS_BOOST_VERSION}")
+ endif ()
+ execute_process(
++ COMMAND "sed" -i "s/-m64//g" ${BOOST_BUILD_DIR}/boost_1_58_0/tools/build/src/tools/gcc.jam)
++ execute_process(
+ COMMAND ${CMAKE_COMMAND} -E touch "${BOOST_BUILD_DIR}/boost_unpack_complete")
+ endif ()
+
diff --git a/var/spack/repos/builtin/packages/manta/package.py b/var/spack/repos/builtin/packages/manta/package.py
index edc2c47a23..7dfcc39722 100644
--- a/var/spack/repos/builtin/packages/manta/package.py
+++ b/var/spack/repos/builtin/packages/manta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,3 +22,5 @@ class Manta(CMakePackage):
depends_on('cmake@2.8.12:', type='build')
depends_on('python@2.7.0:2.7.999', type=('build', 'run'))
depends_on('zlib')
+
+ patch('for_aarch64.patch', when='target=aarch64:')
diff --git a/var/spack/repos/builtin/packages/mapnik/package.py b/var/spack/repos/builtin/packages/mapnik/package.py
index 880bd3bc13..5918e6620e 100644
--- a/var/spack/repos/builtin/packages/mapnik/package.py
+++ b/var/spack/repos/builtin/packages/mapnik/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -36,8 +36,6 @@ class Mapnik(AutotoolsPackage):
depends_on('sqlite+rtree', type=('build', 'link', 'run'))
depends_on('libwebp')
- conflicts('%gcc@9.0.0:')
-
def setup_build_environment(self, env):
spec = self.spec
env.set('GDAL_DATA', spec['gdal'].prefix.share.gdal)
diff --git a/var/spack/repos/builtin/packages/mapserver/package.py b/var/spack/repos/builtin/packages/mapserver/package.py
index e4b7eda157..c9045f8cf5 100644
--- a/var/spack/repos/builtin/packages/mapserver/package.py
+++ b/var/spack/repos/builtin/packages/mapserver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mapsplice2/Makefile.patch b/var/spack/repos/builtin/packages/mapsplice2/Makefile.patch
new file mode 100644
index 0000000000..01c0279c3a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mapsplice2/Makefile.patch
@@ -0,0 +1,53 @@
+--- a/Makefile
++++ b/Makefile
+@@ -1,4 +1,4 @@
+-all: FilterFusionAlignmentsByFilteredFusions filterremappedfusion FilterFusionAlignmentsByFilteredFusions MPSSam2fq collectstats SetUnmappedBitFlag sam2fq recover_fusion_alignments_order SepSamUnmapped swap_dRanger_and_MPS_matched comp_fusiondb_offset sepdRangerfusion sepMPSfusion generate_fusiongene_convert_coordinate_trim generate_fusiongene_convert_coordinate_trim_dRanger junc2bed SeparateNormalFromFusionJunc search_fusion_gene AddFusionStrandConsistent gtf2genetab FilterFusionByNormalPaired load_fusion_chrom_seq_std matchfusion2normal filteroriginalfusion Convert2FusionAlignment generate_combined_sequence DNA2StdRegion search_unmapped_reads reads2unmappedsam junc_db_fusion bsb4 mapsplice_multi_thread bowtie check_reads_format alignmenthandler_multi parseCluster cluster junc_db filterjuncbyROCarguNonCanonical filter_1hits newsam2junc fusionsam2junc_filteranchor_newfmt read_chromo_size find_mate_sam_fq alignmenthandler SepSam RemovePairNo check_index_consistency samtools
++all: FilterFusionAlignmentsByFilteredFusions filterremappedfusion FilterFusionAlignmentsByFilteredFusions MPSSam2fq collectstats SetUnmappedBitFlag sam2fq recover_fusion_alignments_order SepSamUnmapped swap_dRanger_and_MPS_matched comp_fusiondb_offset sepdRangerfusion sepMPSfusion generate_fusiongene_convert_coordinate_trim generate_fusiongene_convert_coordinate_trim_dRanger junc2bed SeparateNormalFromFusionJunc search_fusion_gene AddFusionStrandConsistent gtf2genetab FilterFusionByNormalPaired load_fusion_chrom_seq_std matchfusion2normal filteroriginalfusion Convert2FusionAlignment generate_combined_sequence DNA2StdRegion search_unmapped_reads reads2unmappedsam junc_db_fusion bsb4 mapsplice_multi_thread check_reads_format alignmenthandler_multi parseCluster cluster junc_db filterjuncbyROCarguNonCanonical filter_1hits newsam2junc fusionsam2junc_filteranchor_newfmt read_chromo_size find_mate_sam_fq alignmenthandler SepSam RemovePairNo check_index_consistency
+
+ OPTFLAGS = -O3
+
+@@ -75,24 +75,24 @@ gtf2genetab:
+ bsb4:
+ g++ $(CFLAGS) -o bin/bsb4 src/bsb4/bsb4.cpp $(ERRLOG)
+
+-samtools:
+- cd ./samtools-0.1.9;make
++#samtools:
++# cd ./samtools-0.1.9;make
+
+- cp ./samtools-0.1.9/samtools ./bin/
++# cp ./samtools-0.1.9/samtools ./bin/
+
+ mapsplice_multi_thread:
+ cd ./src/MapSplice;make
+
+ cp ./src/MapSplice/bowtie ./bin/mapsplice_multi_thread
+
+-bowtie:
+- cd ./src/bowtie; make
++#bowtie:
++# cd ./src/bowtie; make
+
+- cp ./src/bowtie/bowtie ./bin/bowtie
++# cp ./src/bowtie/bowtie ./bin/bowtie
+
+- cp ./src/bowtie/bowtie-build ./bin/bowtie-build
++# cp ./src/bowtie/bowtie-build ./bin/bowtie-build
+
+- cp ./src/bowtie/bowtie-inspect ./bin/bowtie-inspect
++# cp ./src/bowtie/bowtie-inspect ./bin/bowtie-inspect
+
+ reads2unmappedsam:
+ g++ $(CFLAGS) -o bin/reads2unmappedsam src/reads2unmappedsam/reads2unmappedsam.cpp $(ERRLOG)
+@@ -167,7 +167,7 @@ RemovePairNo:
+ g++ $(CFLAGS) -o bin/RemovePairNo src/RemovePairNo/remove_pair_no.cpp $(ERRLOG)
+
+ clean:
+- cd ./samtools-0.1.9 ; make clean-recur
++# cd ./samtools-0.1.9 ; make clean-recur
+ cd ./src/MapSplice ; make clean
+- cd ./src/bowtie ; make clean
+- rm -f bin/FilterFusionAlignmentsByFilteredFusions bin/filterremappedfusion bin/MPSSam2fq bin/comp_fusiondb_offset bin/SeparateNormalFromFusionJunc bin/collectstats bin/SetUnmappedBitFlag bin/sam2fq bin/recover_fusion_alignments_order bin/SepSamUnmapped bin/swap_dRanger_and_MPS_matched bin/sepdRangerfusion bin/sepMPSfusion bin/generate_fusiongene_convert_coordinate_trim_dRanger bin/generate_fusiongene_convert_coordinate_trim bin/junc2bed bin/search_fusion_gene bin/AddFusionStrandConsistent bin/gtf2genetab bin/FilterFusionByNormalPaired bin/load_fusion_chrom_seq_std bin/matchfusion2normal bin/filteroriginalfusion bin/DNA2StdRegion bin/generate_combined_sequence bin/Convert2FusionAlignment bin/search_unmapped_reads bin/reads2unmappedsam bin/junc_db_fusion bin/bsb4 bin/fusionsam2junc_filteranchor_newfmt bin/mapsplice_multi_thread bin/bowtie-build bin/bowtie bin/bowtie-inspect bin/check_reads_format bin/samtools bin/alignment_handler_multi bin/parseCluster bin/cluster bin/junc_db bin/filterjuncbyROCarguNonCanonical bin/filter_1hits bin/newsam2junc bin/read_chromo_size bin/find_mate_sam_fq bin/alignment_handler bin/SepSam bin/RemovePairNo bin/check_index_consistency log
+\ No newline at end of file
++# cd ./src/bowtie ; make clean
++ rm -f bin/FilterFusionAlignmentsByFilteredFusions bin/filterremappedfusion bin/MPSSam2fq bin/comp_fusiondb_offset bin/SeparateNormalFromFusionJunc bin/collectstats bin/SetUnmappedBitFlag bin/sam2fq bin/recover_fusion_alignments_order bin/SepSamUnmapped bin/swap_dRanger_and_MPS_matched bin/sepdRangerfusion bin/sepMPSfusion bin/generate_fusiongene_convert_coordinate_trim_dRanger bin/generate_fusiongene_convert_coordinate_trim bin/junc2bed bin/search_fusion_gene bin/AddFusionStrandConsistent bin/gtf2genetab bin/FilterFusionByNormalPaired bin/load_fusion_chrom_seq_std bin/matchfusion2normal bin/filteroriginalfusion bin/DNA2StdRegion bin/generate_combined_sequence bin/Convert2FusionAlignment bin/search_unmapped_reads bin/reads2unmappedsam bin/junc_db_fusion bin/bsb4 bin/fusionsam2junc_filteranchor_newfmt bin/mapsplice_multi_thread bin/check_reads_format bin/alignment_handler_multi bin/parseCluster bin/cluster bin/junc_db bin/filterjuncbyROCarguNonCanonical bin/filter_1hits bin/newsam2junc bin/read_chromo_size bin/find_mate_sam_fq bin/alignment_handler bin/SepSam bin/RemovePairNo bin/check_index_consistency log
diff --git a/var/spack/repos/builtin/packages/mapsplice2/mapsplice_ebwt.patch b/var/spack/repos/builtin/packages/mapsplice2/mapsplice_ebwt.patch
new file mode 100644
index 0000000000..bd1a8be0cc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mapsplice2/mapsplice_ebwt.patch
@@ -0,0 +1,20 @@
+--- a/src/MapSplice/ebwt.h
++++ b/src/MapSplice/ebwt.h
+@@ -430,7 +430,7 @@ public:
+ vector<uint32_t>& plens,
+ uint32_t sztot,
+ const RefReadInParams& refparams,
+- uint32_t seed,
++ uint32_t seed = 0,
+ int32_t __overrideOffRate = -1,
+ int32_t __overrideIsaRate = -1,
+ bool verbose = false,
+@@ -3942,7 +3942,7 @@ void Ebwt<TStr>::joinToDisk(
+ TStr& ret,
+ ostream& out1,
+ ostream& out2,
+- uint32_t seed = 0)
++ uint32_t seed /* = 0 */ )
+ {
+ RandomSource rand; // reproducible given same seed
+ rand.init(seed);
diff --git a/var/spack/repos/builtin/packages/mapsplice2/package.py b/var/spack/repos/builtin/packages/mapsplice2/package.py
new file mode 100644
index 0000000000..491194813b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mapsplice2/package.py
@@ -0,0 +1,54 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Mapsplice2(MakefilePackage):
+ """MapSplice is a software for mapping RNA-seq data to reference genome
+ for splice junction discovery that depends only on reference genome,
+ and not on any further annotations."""
+
+ homepage = "http://www.netlab.uky.edu/p/bioinfo/MapSplice2"
+ url = "http://protocols.netlab.uky.edu/~zeng/MapSplice-v2.2.1.zip"
+
+ version(
+ "2.2.1",
+ sha256="4f3c1cb49ba0abcfc952de5946ee0b56db28c51f4f4d4f5abca66b4461ca7d05",
+ )
+
+ patch("Makefile.patch")
+ patch("mapsplice_ebwt.patch")
+
+ depends_on("bowtie")
+ depends_on("ncurses", type="link")
+ depends_on("samtools", type="link")
+ depends_on("python", type="run")
+
+ def edit(self, spec, prefix):
+ for iscan in find(
+ "src",
+ [
+ "SamRec.*",
+ "AlignmentHandler.cpp",
+ "JunctionHandler.cpp",
+ "FusionSamRec.*",
+ ],
+ recursive=True,
+ ):
+ m = FileFilter(iscan)
+ m.filter(r"iscanonical", "iscanonical2")
+
+ for makefile in find(".", "[Mm]akefile", recursive=True):
+ m = FileFilter(makefile)
+ m.filter("g++", "{0}".format(spack_cxx), string=True)
+ m.filter(r"CC =.*", "CC = {0}".format(spack_cc))
+ m.filter(r"CPP =.*", "CPP = {0}".format(spack_cxx))
+ m.filter(r"CXX =.*", "CXX = {0}".format(spack_cxx))
+
+ def install(self, spec, prefix):
+ install("mapsplice.py", prefix)
+ install_tree("bin", prefix.bin)
diff --git a/var/spack/repos/builtin/packages/maq/package.py b/var/spack/repos/builtin/packages/maq/package.py
index 2fda250658..7f50f679ad 100644
--- a/var/spack/repos/builtin/packages/maq/package.py
+++ b/var/spack/repos/builtin/packages/maq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/margo/package.py b/var/spack/repos/builtin/packages/margo/package.py
index d43d29841f..27e43c261f 100644
--- a/var/spack/repos/builtin/packages/margo/package.py
+++ b/var/spack/repos/builtin/packages/margo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,43 +7,50 @@ from spack import *
class Margo(AutotoolsPackage):
- """Argobots bindings to the Mercury RPC API"""
-
- homepage = "https://xgitlab.cels.anl.gov/sds/margo"
- url = "https://xgitlab.cels.anl.gov/sds/margo/-/archive/v0.4.3/margo-v0.4.3.tar.gz"
- git = "https://xgitlab.cels.anl.gov/sds/margo.git"
-
- maintainers = ['fbudin69500', 'chuckatkins', 'carns']
-
- version('develop', branch='master')
- version('0.4.3', sha256='61a634d6983bee2ffa06e1e2da4c541cb8f56ddd9dd9f8e04e8044fb38657475')
-
- variant('shared', default=True,
- description='Build shared libraries instead of static libraries')
-
- depends_on('autoconf', type='build')
- depends_on('automake', type='build')
- depends_on('libtool', type='build')
- depends_on('m4', type='build')
- depends_on('pkgconfig', type='build')
-
- depends_on('mercury')
+ """A library that provides Argobots bindings to the Mercury RPC
+ implementation. This name will be deprecated soon; please use the
+ mochi-margo package instead."""
+
+ homepage = 'https://github.com/mochi-hpc/mochi-margo'
+ git = 'https://github.com/mochi-hpc/mochi-margo.git'
+ url = 'https://github.com/mochi-hpc/mochi-margo/archive/v0.9.tar.gz'
+
+ maintainers = ['carns', 'mdorier', 'fbudin69500', 'chuckatkins']
+
+ version('master', branch='master', deprecated=True)
+ version('0.9.1', sha256='3fe933f2d758ef23d582bc776e4f8cfae9bf9d0849b8b1f9d73ee024e218f2bc', deprecated=True)
+ version('0.9', sha256='a24376f66450cc8fd7a43043e189f8efce5a931585e53c1e2e41894a3e99b517', deprecated=True)
+ version('0.7', sha256='492d1afe2e7984fa638614a5d34486d2ff761f5599b5984efd5ae3f55cafde54', deprecated=True)
+ version('0.7.2', sha256='0ca796abdb82084813a5de033d92364910b5ad1a0df135534d6b1c36ef627859', deprecated=True)
+ version('0.7.1', sha256='eebbe02c47ed4c65ef1d4f23ffdc6a8aa2e2348ca6c51bfc3c4dfbf78fbfc30b', deprecated=True)
+ version('0.6', sha256='56feb718da2b155d7277a7b10b669516ebffaa034f811f3665ceed7ad0f19d1b', deprecated=True)
+ version('0.6.4', sha256='5ba1c72ee05aa9738d3dc4d6d01bd59790284c6c77b909c5d7756fe7049d6177', deprecated=True)
+ version('0.6.3', sha256='5f373cd554edd15cead58bd5d30093bd88d45039d06ff7738eb18b3674287c76', deprecated=True)
+ version('0.6.2', sha256='c6a6909439e1d3ba1a1693d8da66057eb7e4ec4b239c04bc7f19fc487c4c58da', deprecated=True)
+ version('0.6.1', sha256='80d8d15d0917b5522c31dc2d83136de2313d50ca05c71c5e5ad83c483a3214b7', deprecated=True)
+ version('0.5', sha256='d3b768b8300bc2cb87964e74c39b4e8eb9822d8a2e56fc93dc475ddcb1a868e3', deprecated=True)
+ version('0.5.2', sha256='73be3acaf012a85a91ac62824c93f5ee1ea0ffe4c25779ece19723f4baf9547d', deprecated=True)
+ version('0.5.1', sha256='6fdf58e189538e22341c8361ab069fc80fe5460a6869882359b295a890febad7', deprecated=True)
+ version('0.4.7', sha256='596d83b11fb2bd9950fd99c9ab12c14915ab2cda233084ae40ecae1e6c584333', deprecated=True)
+ version('0.4.6', sha256='b27447a2050ae61091bae3ff6b4d23a56153947f18847face9f98facbdb4e329', deprecated=True)
+ version('0.4.5', sha256='b0d02f73edf180f2393f54c5a980620b8d6dcd42b90efdea6866861824fa49cf', deprecated=True)
+ version('0.4.4', sha256='2e2e6e2a8a7d7385e2fe204c113cb149f30847f0b1f48ec8dd708a74280bd89e', deprecated=True)
+ version('0.4.3', sha256='61a634d6983bee2ffa06e1e2da4c541cb8f56ddd9dd9f8e04e8044fb38657475', deprecated=True)
+ version('0.4.2', sha256='91085e28f50e373b9616e1ae5c3c8d40a19a7d3776259592d8f361766890bcaa', deprecated=True)
+
+ depends_on('json-c', when='@0.9:')
+ depends_on('autoconf@2.65:', type=("build"))
+ depends_on('m4', type=('build'))
+ depends_on('automake', type=("build"))
+ depends_on('libtool', type=("build"))
+ depends_on('pkgconfig', type=("build"))
depends_on('argobots@1.0:')
+ # "breadcrumb" support not available in mercury-1.0
+ depends_on('mercury@1.0.0:', type=("build", "link", "run"), when='@:0.5.1')
+ depends_on('mercury@2.0.0:', type=("build", "link", "run"), when='@0.5.2:')
- build_directory = 'spack-build'
-
- def configure_args(self):
- spec = self.spec
- args = []
-
- if '+shared' in spec:
- args.append('--enable-shared')
- args.append('--disable-static')
- else:
- args.append('--enable-static')
- args.append('--disable-shared')
-
- return args
+ # dependencies for develop version
+ depends_on('mercury@master', type=("build", "link", "run"), when='@develop')
def autoreconf(self, spec, prefix):
sh = which('sh')
diff --git a/var/spack/repos/builtin/packages/mariadb-c-client/package.py b/var/spack/repos/builtin/packages/mariadb-c-client/package.py
index 1abd01301e..4c3a4b1b4a 100644
--- a/var/spack/repos/builtin/packages/mariadb-c-client/package.py
+++ b/var/spack/repos/builtin/packages/mariadb-c-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,7 @@ class MariadbCClient(CMakePackage):
list_url = "https://downloads.mariadb.com/Connectors/c/"
list_depth = 1
+ version('3.1.13', sha256='0271a5edfd64b13bca5937267474e4747d832ec62e169fc2589d2ead63746875')
version('3.1.9', sha256='108d99bf2add434dcb3bd9526ba1d89a2b9a943b62dcd9d0a41fcbef8ffbf2c7')
version('3.1.6', sha256='d266bb67df83c088c4fb05392713d2504c67be620894cedaf758a9561c116720')
version('3.1.5', sha256='a9de5fedd1a7805c86e23be49b9ceb79a86b090ad560d51495d7ba5952a9d9d5')
@@ -57,6 +58,10 @@ class MariadbCClient(CMakePackage):
depends_on('openssl')
depends_on('zlib')
+ # patch needed for cmake-3.20
+ patch('https://github.com/mariadb-corporation/mariadb-connector-c/commit/242cab8c.patch',
+ sha256='bcfa0a73a34654495f5dea3cecdcb7de911c7c2446240aeaa674a4b2ab46f58c', when='@:3.1.12')
+
def url_for_version(self, version):
url = "https://downloads.mariadb.com/Connectors/c/connector-c-{0}/mariadb-connector-c-{1}-src.tar.gz"
return url.format(version.up_to(3), version)
@@ -64,3 +69,9 @@ class MariadbCClient(CMakePackage):
def cmake_args(self):
args = ['-DWITH_EXTERNAL_ZLIB=ON', '-DWITH_MYSQLCOMPAT=ON']
return args
+
+ @property
+ def libs(self):
+ return find_libraries(
+ ['libmariadb'], root=self.prefix, recursive=True, shared=True
+ )
diff --git a/var/spack/repos/builtin/packages/mariadb/package.py b/var/spack/repos/builtin/packages/mariadb/package.py
index a16919192a..8ffac00eb1 100644
--- a/var/spack/repos/builtin/packages/mariadb/package.py
+++ b/var/spack/repos/builtin/packages/mariadb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -56,6 +56,12 @@ class Mariadb(CMakePackage):
conflicts('%gcc@9.1.0:', when='@:5.5')
+ # patch needed for cmake-3.20
+ patch('https://github.com/mariadb-corporation/mariadb-connector-c/commit/242cab8c.patch',
+ sha256='bcfa0a73a34654495f5dea3cecdcb7de911c7c2446240aeaa674a4b2ab46f58c',
+ working_dir='libmariadb',
+ when='@10.2.8:')
+
def cmake_args(self):
args = []
diff --git a/var/spack/repos/builtin/packages/mark/package.py b/var/spack/repos/builtin/packages/mark/package.py
index fa51131add..a5fba15522 100644
--- a/var/spack/repos/builtin/packages/mark/package.py
+++ b/var/spack/repos/builtin/packages/mark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class Mark(Package):
http://spack.readthedocs.io/en/latest/mirrors.html"""
homepage = "http://www.phidot.org/software/mark/index.html"
+ manual_download = True
version('1.0', sha256='5422c9444d5fa6b3b22f4a9f2ce41af2072a1a7283f6f9099dc02cc5282696bc',
expand=False)
diff --git a/var/spack/repos/builtin/packages/masa/package.py b/var/spack/repos/builtin/packages/masa/package.py
index 06bcefb4d3..dee05e96ef 100644
--- a/var/spack/repos/builtin/packages/masa/package.py
+++ b/var/spack/repos/builtin/packages/masa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/masurca/package.py b/var/spack/repos/builtin/packages/masurca/package.py
index 1e0f74e3bb..673aed6259 100644
--- a/var/spack/repos/builtin/packages/masurca/package.py
+++ b/var/spack/repos/builtin/packages/masurca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Masurca(Package):
homepage = "http://www.genome.umd.edu/masurca.html"
url = "https://github.com/alekseyzimin/masurca/releases/download/v3.3.1/MaSuRCA-3.3.1.tar.gz"
+ version('4.0.1', sha256='68628acaf3681d09288b48a35fec7909b347b84494fb26c84051942256299870')
version('3.3.1', sha256='587d0ee2c6b9fbd3436ca2a9001e19f251b677757fe5e88e7f94a0664231e020')
version('3.2.9', sha256='795ad4bd42e15cf3ef2e5329aa7e4f2cdeb7e186ce2e350a45127e319db2904b')
@@ -30,7 +31,12 @@ class Masurca(Package):
m = join_path('global-1', makefile)
filter_file('-minline-all-stringops', '', m)
+ def setup_build_environment(self, env):
+ if '@4:' in self.spec:
+ env.set('DEST', self.prefix)
+
def install(self, spec, prefix):
installer = Executable('./install.sh')
installer()
- install_tree('.', prefix)
+ if '@:4' in self.spec:
+ install_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/mathematica/package.py b/var/spack/repos/builtin/packages/mathematica/package.py
index c775fc8b0d..245cca8ac2 100644
--- a/var/spack/repos/builtin/packages/mathematica/package.py
+++ b/var/spack/repos/builtin/packages/mathematica/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ class Mathematica(Package):
homepage = "https://www.wolfram.com/mathematica/"
url = 'file://{0}/Mathematica_12.0.0_LINUX.sh'.format(os.getcwd())
+ manual_download = True
version('12.1.1',
sha256='ad47b886be4a9864d70f523f792615a051d4ebc987d9a0f654b645b4eb43b30a',
diff --git a/var/spack/repos/builtin/packages/matio/package.py b/var/spack/repos/builtin/packages/matio/package.py
index 5107058d58..1ee705ceff 100644
--- a/var/spack/repos/builtin/packages/matio/package.py
+++ b/var/spack/repos/builtin/packages/matio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -49,7 +49,7 @@ class Matio(AutotoolsPackage):
return args
def patch(self):
- if self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%nvhpc@:20.11'):
# workaround anonymous version tag linker error for the NVIDIA
# compilers
filter_file('${wl}-version-script '
diff --git a/var/spack/repos/builtin/packages/matlab/package.py b/var/spack/repos/builtin/packages/matlab/package.py
index aa7ebbc343..1c032f363f 100644
--- a/var/spack/repos/builtin/packages/matlab/package.py
+++ b/var/spack/repos/builtin/packages/matlab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/maven/package.py b/var/spack/repos/builtin/packages/maven/package.py
index 0cc83948cd..6dc324af3a 100644
--- a/var/spack/repos/builtin/packages/maven/package.py
+++ b/var/spack/repos/builtin/packages/maven/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/maverick/package.py b/var/spack/repos/builtin/packages/maverick/package.py
index 60909c551b..fa14f9bda5 100644
--- a/var/spack/repos/builtin/packages/maverick/package.py
+++ b/var/spack/repos/builtin/packages/maverick/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mawk/package.py b/var/spack/repos/builtin/packages/mawk/package.py
index 89c8f9e3ac..1a8da55db5 100644
--- a/var/spack/repos/builtin/packages/mawk/package.py
+++ b/var/spack/repos/builtin/packages/mawk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mbdyn/package.py b/var/spack/repos/builtin/packages/mbdyn/package.py
index ccaf44a262..6130d08869 100644
--- a/var/spack/repos/builtin/packages/mbdyn/package.py
+++ b/var/spack/repos/builtin/packages/mbdyn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mbedtls/package.py b/var/spack/repos/builtin/packages/mbedtls/package.py
index 0d79e25af4..f5617ac359 100644
--- a/var/spack/repos/builtin/packages/mbedtls/package.py
+++ b/var/spack/repos/builtin/packages/mbedtls/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class Mbedtls(CMakePackage):
url = "https://github.com/ARMmbed/mbedtls/archive/mbedtls-2.2.1.tar.gz"
maintainers = ['mwkrentel']
+ version('2.16.9', sha256='b7ca99ee10551b5b13242b7effebefd2a5cc38c287e5f5be1267d51ee45effe3')
version('2.16.7', sha256='4786b7d1676f5e4d248f3a7f2d28446876d64962634f060ff21b92c690cfbe86')
version('2.16.1', sha256='daf0d40f3016c34eb42d1e4b3b52be047e976d566aba8668977723c829af72f3')
version('2.7.10', sha256='42b19b30b86a798bdb69c5da2f8bbd7d72ffede9a35b888ab986a29480f9dc3e')
diff --git a/var/spack/repos/builtin/packages/mc/package.py b/var/spack/repos/builtin/packages/mc/package.py
index 611a104e11..b9cf4a664b 100644
--- a/var/spack/repos/builtin/packages/mc/package.py
+++ b/var/spack/repos/builtin/packages/mc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mcl/package.py b/var/spack/repos/builtin/packages/mcl/package.py
index 9b60faadce..457abaf364 100644
--- a/var/spack/repos/builtin/packages/mcl/package.py
+++ b/var/spack/repos/builtin/packages/mcl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,3 +15,8 @@ class Mcl(AutotoolsPackage):
url = "https://www.micans.org/mcl/src/mcl-14-137.tar.gz"
version('14-137', sha256='b5786897a8a8ca119eb355a5630806a4da72ea84243dba85b19a86f14757b497')
+
+ @when('%gcc@10:')
+ def patch(self):
+ filter_file('^dim', 'extern dim', 'src/impala/iface.h')
+ filter_file('^double', 'extern double', 'src/impala/iface.h')
diff --git a/var/spack/repos/builtin/packages/mcpp/package.py b/var/spack/repos/builtin/packages/mcpp/package.py
index a658480812..79e08ce462 100644
--- a/var/spack/repos/builtin/packages/mcpp/package.py
+++ b/var/spack/repos/builtin/packages/mcpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class Mcpp(AutotoolsPackage, SourceforgePackage):
homepage = "https://sourceforge.net/projects/mcpp/"
sourceforge_mirror_path = "mcpp/mcpp/V.2.7.2/mcpp-2.7.2.tar.gz"
- version('2.7.2', sha256='3b9b4421888519876c4fc68ade324a3bbd81ceeb7092ecdbbc2055099fcb8864')
+ version('2.7.2', sha256='3b9b4421888519876c4fc68ade324a3bbd81ceeb7092ecdbbc2055099fcb8864')
def configure_args(self):
config_args = ['--enable-mcpplib', '--disable-static']
diff --git a/var/spack/repos/builtin/packages/mcutils/package.py b/var/spack/repos/builtin/packages/mcutils/package.py
index 3065f70fe0..a43425bb87 100644
--- a/var/spack/repos/builtin/packages/mcutils/package.py
+++ b/var/spack/repos/builtin/packages/mcutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,23 +10,26 @@ class Mcutils(MakefilePackage):
"""A collection of routines for classification and manipulation of
particle physics simulated HepMC event records."""
- homepage = "https://bitbucket.org/andybuckley/mcutils"
- url = "https://bitbucket.org/andybuckley/mcutils/get/mcutils-1.3.4.tar.gz"
-
- version('1.3.4', sha256='0bf9795cc248871ab2b663d2eef647311eacaea4982997950096de68747e65a3')
- version('1.3.3', sha256='bfb2f0e0e6de358928436f309f3f1b084d3d652073c440f262de878332116ecb')
- version('1.3.2', sha256='e17d417e8d4f8d17a6879ea18dcd2cd76e161d37eae08b84893504d1b08f9708')
- version('1.3.1', sha256='081263ee6844fccedad780e6a2fbaf1ad0073a6706bc4b34109050b72c2c4b27')
- version('1.3.0', sha256='20a89ce536547dc8f56e7779a3ec8cfe9987edb1646009ecfc682ff1ddf0277b')
- version('1.2.1', sha256='004325be41925d97e711ffe4311d9c8aa8e88873541bcc1a385d2e1ce1d17a96')
- version('1.2.0', sha256='f9589d45bff06d8c8742d35d78d1ed570a0d181fd7ee5d6f97ab9e48f0ee32f4')
- version('1.1.2', sha256='5a5781caf2d81c21f4b040a1d31975c354526bcf7c8c9067543f7303c8155844')
- version('1.1.1', sha256='3e5c47d2264886613fc9423b020cf50dc7031a02b752da3a84f794c36ba7443a')
- version('1.1.0', sha256='96fc2586430032ed4b378edb02150c5c9db405e1767dbf847ffe9ac043daf6e9')
- version('1.0.3', sha256='b5bec5a4b2146b6987b351d632119c3b4c449c2ee53ae0ddc8cb1d3672907df5')
- version('1.0.2', sha256='74e2c381f5f3719888b15a2e00075051bb2b84b3d73633d429818a77de66ca7c')
- version('1.0.1', sha256='bb884a4cfb56b5139c08df0be554466e504e9c46096a858f904d659894a62131')
- version('1.0.0', sha256='d08dea19fb42b1846e0a7134e2347648b037bf82b2d75086d018734bc2996b06')
+ homepage = "https://gitlab.com/hepcedar/mcutils"
+ git = "https://gitlab.com/hepcedar/mcutils.git"
+
+ tags = ['hep']
+
+ version('1.3.5', tag='mcutils-1.3.5')
+ version('1.3.4', tag='mcutils-1.3.4')
+ version('1.3.3', tag='mcutils-1.3.3')
+ version('1.3.2', tag='mcutils-1.3.2')
+ version('1.3.1', tag='mcutils-1.3.1')
+ version('1.3.1', tag='mcutils-1.3.0')
+ version('1.2.1', tag='mcutils-1.2.1')
+ version('1.2.0', tag='mcutils-1.2.0')
+ version('1.1.2', tag='mcutils-1.1.2')
+ version('1.1.1', tag='mcutils-1.1.1')
+ version('1.1.0', tag='mcutils-1.1.0')
+ version('1.0.3', tag='mcutils-1.0.3')
+ version('1.0.2', tag='mcutils-1.0.2')
+ version('1.0.1', tag='mcutils-1.0.1')
+ version('1.0.0', tag='mcutils-1.0.0')
depends_on('heputils', when='@1.1.0:')
diff --git a/var/spack/repos/builtin/packages/mdsplus/package.py b/var/spack/repos/builtin/packages/mdsplus/package.py
new file mode 100644
index 0000000000..c7a8a7af01
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mdsplus/package.py
@@ -0,0 +1,55 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Mdsplus(AutotoolsPackage):
+ """A set of software tools for data acquisition and storage and a
+ methodology for management of complex scientific data."""
+ homepage = "https://mdsplus.org"
+ git = "https://github.com/MDSplus/mdsplus.git"
+
+ maintainers = ['wmvanvliet']
+
+ parallel = False
+
+ version('stable_release-7-96-17', tag='stable_release-7-96-17',
+ submodules=True)
+
+ variant('java', default=True,
+ description='Build java libraries and applications')
+ variant('python', default=True,
+ description='Install python module')
+
+ # Autotools needed for building
+ depends_on('autoconf', type='build')
+ depends_on('autoconf-archive', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('pkgconfig', type='build')
+
+ # Libs needed for building and linking
+ depends_on('libxml2')
+ depends_on('readline')
+
+ # GUI bindings
+ depends_on('motif')
+
+ # Language bindings
+ depends_on('java', type=('build', 'run'), when='+java')
+
+ def configure_args(self):
+ return self.enable_or_disable('java')
+
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./bootstrap')
+
+ def setup_run_environment(self, env):
+ env.set('MDSPLUS_DIR', self.prefix)
+ if '+python' in self.spec:
+ env.prepend_path('PYTHONPATH', '{0}/python'.format(self.prefix))
diff --git a/var/spack/repos/builtin/packages/mdtest/package.py b/var/spack/repos/builtin/packages/mdtest/package.py
index 6e18ef3b41..6144715614 100644
--- a/var/spack/repos/builtin/packages/mdtest/package.py
+++ b/var/spack/repos/builtin/packages/mdtest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/med/package.py b/var/spack/repos/builtin/packages/med/package.py
index c4be8dfbea..453af1b6cf 100644
--- a/var/spack/repos/builtin/packages/med/package.py
+++ b/var/spack/repos/builtin/packages/med/package.py
@@ -1,9 +1,8 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
from spack import *
@@ -11,28 +10,43 @@ class Med(CMakePackage):
"""The MED file format is a specialization of the HDF5 standard."""
homepage = "http://docs.salome-platform.org/latest/dev/MEDCoupling/med-file.html"
- url = "http://files.salome-platform.org/Salome/other/med-3.2.0.tar.gz"
+ url = "https://files.salome-platform.org/Salome/other/med-3.2.0.tar.gz"
maintainers = ['likask']
- version('4.0.0', sha256='a474e90b5882ce69c5e9f66f6359c53b8b73eb448c5f631fa96e8cd2c14df004')
+ # 4.1.0 does not compile in static mode
+ version('4.1.0', sha256='847db5d6fbc9ce6924cb4aea86362812c9a5ef6b9684377e4dd6879627651fce')
+ version('4.0.0', sha256='a474e90b5882ce69c5e9f66f6359c53b8b73eb448c5f631fa96e8cd2c14df004', preferred=True)
version('3.2.0', sha256='d52e9a1bdd10f31aa154c34a5799b48d4266dc6b4a5ee05a9ceda525f2c6c138')
variant('api23', default=True, description='Enable API2.3')
+ variant('mpi', default=True, description='Enable MPI')
+ variant('shared', default=False,
+ description='Builds a shared version of the library')
+ variant('fortran', default=False, description='Enable Fortran support')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('hdf5@:1.8.22+mpi', when='@3.2.0+mpi')
+ depends_on('hdf5@1.10.2:1.10.7+mpi', when='@4.0.0:+mpi')
+ depends_on('hdf5@:1.8.22~mpi', when='@3.2.0~mpi')
+ depends_on('hdf5@1.10.2:1.10.7~mpi', when='@4.0.0:~mpi')
- depends_on('mpi')
- depends_on('hdf5@:1.8.19+mpi', when='@3.2.0')
- depends_on('hdf5@:1.10.2+mpi', when='@4.0.0')
+ conflicts("@4.1.0", when="~shared", msg="Link error when static")
# C++11 requires a space between literal and identifier
patch('add_space.patch', when='@3.2.0')
- # FIXME This is minimal installation.
-
def cmake_args(self):
spec = self.spec
- options = []
+ options = [
+ self.define('HDF5_ROOT_DIR', spec['hdf5'].prefix),
+ self.define('MEDFILE_BUILD_TESTS', self.run_tests),
+ self.define('MEDFILE_BUILD_PYTHON', False),
+ self.define('MEDFILE_INSTALL_DOC', False),
+ ]
+ if '~fortran' in spec:
+ options.append('-DCMAKE_Fortran_COMPILER=')
if '+api23' in spec:
options.extend([
@@ -40,18 +54,19 @@ class Med(CMakePackage):
'-DCMAKE_C_FLAGS:STRING=-DMED_API_23=1',
'-DMED_API_23=1'])
- options.extend([
- '-DMEDFILE_USE_MPI=YES'
- '-DMEDFILE_BUILD_TESTS={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
- '-DMEDFILE_BUILD_PYTHON=OFF',
- '-DMEDFILE_INSTALL_DOC=OFF',
- '-DMEDFILE_BUILD_SHARED_LIBS=OFF',
- '-DMEDFILE_BUILD_STATIC_LIBS=ON',
- '-DCMAKE_Fortran_COMPILER='])
-
- options.extend([
- '-DHDF5_ROOT_DIR=%s' % spec['hdf5'].prefix,
- '-DMPI_ROOT_DIR=%s' % spec['mpi'].prefix])
+ if '+shared' in spec:
+ options.extend([
+ '-DMEDFILE_BUILD_SHARED_LIBS=ON',
+ '-DMEDFILE_BUILD_STATIC_LIBS=OFF',
+ ])
+ else:
+ options.extend([
+ '-DMEDFILE_BUILD_SHARED_LIBS=OFF',
+ '-DMEDFILE_BUILD_STATIC_LIBS=ON',
+ ])
+
+ if '+mpi' in spec:
+ options.extend(['-DMEDFILE_USE_MPI=YES',
+ '-DMPI_ROOT_DIR=%s' % spec['mpi'].prefix])
return options
diff --git a/var/spack/repos/builtin/packages/meep/package.py b/var/spack/repos/builtin/packages/meep/package.py
index a5ffb30290..d7bfb0df83 100644
--- a/var/spack/repos/builtin/packages/meep/package.py
+++ b/var/spack/repos/builtin/packages/meep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mefit/package.py b/var/spack/repos/builtin/packages/mefit/package.py
index bd24a324cf..745b548195 100644
--- a/var/spack/repos/builtin/packages/mefit/package.py
+++ b/var/spack/repos/builtin/packages/mefit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/megadock/package.py b/var/spack/repos/builtin/packages/megadock/package.py
index f8131784c6..77ee965150 100644
--- a/var/spack/repos/builtin/packages/megadock/package.py
+++ b/var/spack/repos/builtin/packages/megadock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/megahit/package.py b/var/spack/repos/builtin/packages/megahit/package.py
index 863a684505..f28d96bdb9 100644
--- a/var/spack/repos/builtin/packages/megahit/package.py
+++ b/var/spack/repos/builtin/packages/megahit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/memaxes/package.py b/var/spack/repos/builtin/packages/memaxes/package.py
index f7f1da41a1..6dba723555 100644
--- a/var/spack/repos/builtin/packages/memaxes/package.py
+++ b/var/spack/repos/builtin/packages/memaxes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/memcached/package.py b/var/spack/repos/builtin/packages/memcached/package.py
index e082c6b04c..bd192869a0 100644
--- a/var/spack/repos/builtin/packages/memcached/package.py
+++ b/var/spack/repos/builtin/packages/memcached/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/meme/package.py b/var/spack/repos/builtin/packages/meme/package.py
index 8dcd186973..78e21ca595 100644
--- a/var/spack/repos/builtin/packages/meme/package.py
+++ b/var/spack/repos/builtin/packages/meme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Meme(AutotoolsPackage):
homepage = "http://meme-suite.org"
url = "http://meme-suite.org/meme-software/5.1.1/meme-5.1.1.tar.gz"
+ version('5.3.0', sha256='b2ddec9db972fcf77b29c7deb62df8b1dd8a6638c13c1aa06a5d563c4a7ff756')
+ version('5.2.0', sha256='0cbf8c2172e9b6c07855b8aeec457f4825f0b132f8cbb11192880e2f6033f54f')
version('5.1.1', sha256='38d73d256d431ad4eb7da2c817ce56ff2b4e26c39387ff0d6ada088938b38eb5')
version('4.12.0', sha256='49ff80f842b59d328588acfcd1d15bf94c55fed661d22b0f95f37430cc363a06')
version('4.11.4', sha256='3e869ff57e327a9c8615dbef784e3f1095f7f7a0120cecd55efe10c3f2ee8eb3')
diff --git a/var/spack/repos/builtin/packages/memkind/package.py b/var/spack/repos/builtin/packages/memkind/package.py
index 37175646c6..485cca76da 100644
--- a/var/spack/repos/builtin/packages/memkind/package.py
+++ b/var/spack/repos/builtin/packages/memkind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,10 @@ class Memkind(AutotoolsPackage):
homepage = "https://github.com/memkind/memkind"
url = "https://github.com/memkind/memkind/archive/v1.7.0.tar.gz"
+ version('1.10.1', sha256='c203615d964a0bb151756ad8a5c9565391ee77d79c1f8b59d2ea8ff87989b294')
+ version('1.10.0', sha256='0399a1d6a179d065cdbc59bb687fcd00d09dfbb1789334acfdf7431a48707d26')
+ version('1.9.0', sha256='491f21c8d09904ad23700c755b9134fbed08bf227506c2fde135429688158b84')
+ version('1.8.0', sha256='8b57c5afa8afa6793e4662322e37620bbb11f119cd8d29654ec00945bbe13a17')
version('1.7.0', sha256='5048eaaa1bc484203c685a019f3f428ab6c9b1cf94ef6d264e299bc0127ec572')
depends_on('autoconf', type='build')
diff --git a/var/spack/repos/builtin/packages/memsurfer/package.py b/var/spack/repos/builtin/packages/memsurfer/package.py
index c7850d58a5..c204f3a168 100644
--- a/var/spack/repos/builtin/packages/memsurfer/package.py
+++ b/var/spack/repos/builtin/packages/memsurfer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/memtester/package.py b/var/spack/repos/builtin/packages/memtester/package.py
index 7821d1b15d..c30d7a4fee 100644
--- a/var/spack/repos/builtin/packages/memtester/package.py
+++ b/var/spack/repos/builtin/packages/memtester/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/meraculous/package.py b/var/spack/repos/builtin/packages/meraculous/package.py
index df4e7109b5..b446214738 100644
--- a/var/spack/repos/builtin/packages/meraculous/package.py
+++ b/var/spack/repos/builtin/packages/meraculous/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mercurial/package.py b/var/spack/repos/builtin/packages/mercurial/package.py
index 620ef19bdb..eb03fccd30 100644
--- a/var/spack/repos/builtin/packages/mercurial/package.py
+++ b/var/spack/repos/builtin/packages/mercurial/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,13 +13,10 @@ class Mercurial(PythonPackage):
homepage = "https://www.mercurial-scm.org"
url = "https://www.mercurial-scm.org/release/mercurial-5.3.tar.gz"
- import_modules = [
- 'hgext', 'hgext3rd', 'mercurial', 'hgext.convert', 'hgext.fsmonitor',
- 'hgext.highlight', 'hgext.largefiles', 'hgext.zeroconf',
- 'hgext.fsmonitor.pywatchman', 'mercurial.hgweb',
- 'mercurial.httpclient', 'mercurial.pure'
- ]
-
+ version('5.8', sha256='fc5d6a8f6478d88ef83cdd0ab6d86ad68ee722bbdf4964e6a0b47c3c6ba5309f')
+ version('5.7.1', sha256='cb5139144ccb2ef648f36963c8606d47dea1cb0e22aa2c055d6f860ce3fde7b0')
+ version('5.7', sha256='609c3e7c9276dd75b03b713eccc10f5e0553001f35ae21600bcea1509699c601')
+ version('5.6.1', sha256='e55c254f4904c45226a106780e57f4279aee03368f6ff6a981d5d2a38243ffad')
version('5.3', sha256='e57ff61d6b67695149dd451922b40aa455ab02e01711806a131a1e95c544f9b9')
version('5.1.2', sha256='15af0b090b23649e0e53621a88dde97b55a734d7cb08b77d3df284db70d44e2e')
version('5.1.1', sha256='35fc8ba5e0379c1b3affa2757e83fb0509e8ac314cbd9f1fd133cf265d16e49f')
diff --git a/var/spack/repos/builtin/packages/mercury/package.py b/var/spack/repos/builtin/packages/mercury/package.py
index 239d911d15..3b348aeaeb 100644
--- a/var/spack/repos/builtin/packages/mercury/package.py
+++ b/var/spack/repos/builtin/packages/mercury/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Mercury(CMakePackage):
maintainers = ['soumagne']
version('master', branch='master', submodules=True)
+ version('2.0.1', sha256='335946d9620ac669643ffd9861a5fb3ee486834bab674b7779eaac9d6662e3fa')
version('2.0.0', sha256='9e80923712e25df56014309df70660e828dbeabbe5fcc82ee024bcc86e7eb6b7')
version('1.0.1', sha256='02febd56c401ef7afa250caf28d012b37dee842bfde7ee16fcd2f741b9cf25b3')
version('1.0.0', sha256='fb0e44d13f4652f53e21040435f91d452bc2b629b6e98dcf5292cd0bece899d4')
@@ -39,6 +40,8 @@ class Mercury(CMakePackage):
description='Enable udreg on supported Cray platforms')
variant('debug', default=False,
description='Enable Mercury to print debug output')
+ variant('checksum', default=True,
+ description='Checksum verify all request/response messages')
depends_on('cmake@2.8.12.2:', type='build')
# depends_on('cci', when='+cci') # TODO: add CCI package
@@ -56,6 +59,12 @@ class Mercury(CMakePackage):
# See https://github.com/mercury-hpc/mercury/issues/299
patch('fix-cmake-3.15-check_symbol_exists.patch', when='@1.0.0:1.0.1')
+ def flag_handler(self, name, flags):
+ if self.spec.satisfies('%cce'):
+ if name == 'ldflags':
+ flags.append('-Wl,-z,muldefs')
+ return (None, None, flags)
+
def cmake_args(self):
"""Populate cmake arguments for Mercury."""
spec = self.spec
@@ -67,7 +76,7 @@ class Mercury(CMakePackage):
'-DBUILD_TESTING:BOOL=%s' % str(self.run_tests),
'-DMERCURY_ENABLE_PARALLEL_TESTING:BOOL=%s' % str(parallel_tests),
'-DMERCURY_USE_BOOST_PP:BOOL=ON',
- '-DMERCURY_USE_CHECKSUMS:BOOL=ON',
+ '-DMERCURY_USE_CHECKSUMS:BOOL=%s' % variant_bool('+checksum'),
'-DMERCURY_USE_SYSTEM_MCHECKSUM:BOOL=OFF',
'-DMERCURY_USE_XDR:BOOL=OFF',
'-DNA_USE_BMI:BOOL=%s' % variant_bool('+bmi'),
diff --git a/var/spack/repos/builtin/packages/mesa-demos/package.py b/var/spack/repos/builtin/packages/mesa-demos/package.py
index b6824b5602..f5de75dabe 100644
--- a/var/spack/repos/builtin/packages/mesa-demos/package.py
+++ b/var/spack/repos/builtin/packages/mesa-demos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mesa-glu/package.py b/var/spack/repos/builtin/packages/mesa-glu/package.py
index bd3c90b020..9cf5bd0e66 100644
--- a/var/spack/repos/builtin/packages/mesa-glu/package.py
+++ b/var/spack/repos/builtin/packages/mesa-glu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mesa/package.py b/var/spack/repos/builtin/packages/mesa/package.py
index e2da830f72..52077d5463 100644
--- a/var/spack/repos/builtin/packages/mesa/package.py
+++ b/var/spack/repos/builtin/packages/mesa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,17 +19,22 @@ class Mesa(MesonPackage):
url = "https://archive.mesa3d.org/mesa-20.2.1.tar.xz"
version('master', tag='master')
+ version('21.0.3', sha256='565c6f4bd2d5747b919454fc1d439963024fc78ca56fd05158c3b2cde2f6912b')
+ version('21.0.0', sha256='e6204e98e6a8d77cf9dc5d34f99dd8e3ef7144f3601c808ca0dd26ba522e0d84')
+ version('20.3.4', sha256='dc21a987ec1ff45b278fe4b1419b1719f1968debbb80221480e44180849b4084')
version('20.2.1', sha256='d1a46d9a3f291bc0e0374600bdcb59844fa3eafaa50398e472a36fc65fd0244a')
depends_on('meson@0.52:', type='build')
depends_on('pkgconfig', type='build')
- depends_on('binutils', when=(sys.platform != 'darwin'), type='build')
depends_on('bison', type='build')
+ depends_on('cmake', type='build')
depends_on('flex', type='build')
depends_on('gettext', type='build')
depends_on('python@3:', type='build')
depends_on('py-mako@0.8.0:', type='build')
+ depends_on('expat')
+ depends_on('zlib@1.2.3:')
# Internal options
variant('llvm', default=True, description="Enable LLVM.")
@@ -70,7 +75,33 @@ class Mesa(MesonPackage):
depends_on('libxext', when='+glx')
depends_on('libxt', when='+glx')
depends_on('xrandr', when='+glx')
- depends_on('glproto@1.4.14:', when='+glx', type='build')
+ depends_on('glproto@1.4.14:', when='+glx')
+
+ # version specific issue
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96130
+ conflicts('%gcc@10.1.0', msg='GCC 10.1.0 has a bug')
+
+ # Require at least 1 front-end
+ # TODO: Add egl to this conflict once made available
+ conflicts('~osmesa ~glx')
+
+ # Require at least 1 back-end
+ # TODO: Add vulkan to this conflict once made available
+ conflicts('~opengl ~opengles')
+
+ # OpenGL ES requires OpenGL
+ conflicts('~opengl +opengles')
+
+ # requires native to be added to llvm_modules when using gallium swrast
+ patch('https://cgit.freedesktop.org/mesa/mesa/patch/meson.build?id=054dd668a69acc70d47c73abe4646e96a1f23577', sha256='36096a178070e40217945e12d542dfe80016cb897284a01114d616656c577d73', when='@21.0.0:21.0.3')
+
+ # 'auto' needed when shared llvm is built
+ @when('^llvm~shared_libs')
+ def patch(self):
+ filter_file(
+ r"_llvm_method = 'auto'",
+ "_llvm_method = 'config-tool'",
+ "meson.build")
def meson_args(self):
spec = self.spec
@@ -95,11 +126,17 @@ class Mesa(MesonPackage):
args.append('-Dlibunwind=disabled')
num_frontends = 0
+
+ if spec.satisfies('@:20.3'):
+ osmesa_enable, osmesa_disable = ('gallium', 'none')
+ else:
+ osmesa_enable, osmesa_disable = ('true', 'false')
+
if '+osmesa' in spec:
num_frontends += 1
- args.append('-Dosmesa=gallium')
+ args.append('-Dosmesa={0}'.format(osmesa_enable))
else:
- args.append('-Dosmesa=none')
+ args.append('-Dosmesa={0}'.format(osmesa_disable))
if '+glx' in spec:
num_frontends += 1
@@ -187,7 +224,6 @@ class Mesa(MesonPackage):
if libs_to_seek:
return find_libraries(list(libs_to_seek),
root=self.spec.prefix,
- shared='+shared' in self.spec,
recursive=True)
return LibraryList()
@@ -195,19 +231,16 @@ class Mesa(MesonPackage):
def osmesa_libs(self):
return find_libraries('libOSMesa',
root=self.spec.prefix,
- shared='+shared' in self.spec,
recursive=True)
@property
def glx_libs(self):
return find_libraries('libGL',
root=self.spec.prefix,
- shared='+shared' in self.spec,
recursive=True)
@property
def gl_libs(self):
return find_libraries('libGL',
root=self.spec.prefix,
- shared='+shared' in self.spec,
recursive=True)
diff --git a/var/spack/repos/builtin/packages/mesa18/package.py b/var/spack/repos/builtin/packages/mesa18/package.py
index 10d4275c6c..84b1423787 100644
--- a/var/spack/repos/builtin/packages/mesa18/package.py
+++ b/var/spack/repos/builtin/packages/mesa18/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class Mesa18(AutotoolsPackage):
- a system for rendering interactive 3D graphics."""
homepage = "http://www.mesa3d.org"
- maintainers = ['v-dobrev', 'chuckatkins']
+ maintainers = ['v-dobrev', 'chuckatkins', 'ChristianTackeGSI']
# Note that we always want to build from the git repo instead of a
# tarball since the tarball has pre-generated files for certain versions
@@ -21,14 +21,14 @@ class Mesa18(AutotoolsPackage):
# whatever version of LLVM you're using.
git = "https://gitlab.freedesktop.org/mesa/mesa.git"
- version('18.3.6', tag='mesa-18.3.6', preferred=True)
+ version('18.3.6', tag='mesa-18.3.6')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
depends_on('pkgconfig', type='build')
- depends_on('binutils', when=(sys.platform != 'darwin'), type='build')
+ depends_on('binutils+plugins', when=(sys.platform != 'darwin'), type='build')
depends_on('bison', type='build')
depends_on('flex', type='build')
depends_on('gettext', type='build')
@@ -52,22 +52,12 @@ class Mesa18(AutotoolsPackage):
is_linux = sys.platform.startswith('linux')
variant('glx', default=is_linux, description="Enable the GLX frontend.")
- # TODO: effectively deal with EGL. The implications of this have not been
- # worked through yet
- # variant('egl', default=False, description="Enable the EGL frontend.")
-
- # TODO: Effectively deal with hardware drivers
- # The implication of this is enabling DRI, among other things, and
- # needing to check which llvm targets were built (ptx or amdgpu, etc.)
-
- # Back ends
- variant('opengl', default=True, description="Enable full OpenGL support.")
+ # Additional backends
variant('opengles', default=False, description="Enable OpenGL ES support.")
# Provides
- provides('gl@4.5', when='+opengl')
+ provides('gl@4.5')
provides('glx@1.4', when='+glx')
- # provides('egl@1.5', when='+egl')
provides('osmesa', when='+osmesa')
# Variant dependencies
@@ -75,7 +65,10 @@ class Mesa18(AutotoolsPackage):
depends_on('libx11', when='+glx')
depends_on('libxcb', when='+glx')
depends_on('libxext', when='+glx')
- depends_on('glproto@1.4.14:', when='+glx', type='build')
+ depends_on('glproto@1.4.14:', when='+glx')
+
+ # Require at least 1 front-end
+ conflicts('~osmesa ~glx')
# Prevent an unnecessary xcb-dri dependency
patch('autotools-x11-nodri.patch')
@@ -103,7 +96,12 @@ class Mesa18(AutotoolsPackage):
'--disable-xa',
'--disable-xvmc',
'--disable-osmesa',
- '--with-vulkan-drivers=']
+ '--with-vulkan-drivers=',
+ '--disable-egl',
+ '--disable-gbm',
+ '--disable-dri',
+ '--enable-opengl']
+
args_platforms = []
args_gallium_drivers = ['swrast']
args_dri_drivers = []
@@ -120,26 +118,11 @@ class Mesa18(AutotoolsPackage):
if '+glx' in spec:
num_frontends += 1
- if '+egl' in spec:
- args.append('--enable-glx=dri')
- else:
- args.append('--enable-glx=gallium-xlib')
+ args.append('--enable-glx=gallium-xlib')
args_platforms.append('x11')
else:
args.append('--disable-glx')
- if '+egl' in spec:
- num_frontends += 1
- args.extend(['--enable-egl', '--enable-gbm', '--enable-dri'])
- args_platforms.append('surfaceless')
- else:
- args.extend(['--disable-egl', '--disable-gbm', '--disable-dri'])
-
- if '+opengl' in spec:
- args.append('--enable-opengl')
- else:
- args.append('--disable-opengl')
-
if '+opengles' in spec:
args.extend(['--enable-gles1', '--enable-gles2'])
else:
@@ -193,8 +176,7 @@ class Mesa18(AutotoolsPackage):
if '+glx' in spec:
libs_to_seek.add('libGL')
- if '+opengl' in spec:
- libs_to_seek.add('libGL')
+ libs_to_seek.add('libGL')
if '+opengles' in spec:
libs_to_seek.add('libGLES')
@@ -203,7 +185,7 @@ class Mesa18(AutotoolsPackage):
if libs_to_seek:
return find_libraries(list(libs_to_seek),
root=self.spec.prefix,
- shared='+shared' in self.spec,
+ shared=True,
recursive=True)
return LibraryList()
@@ -211,19 +193,19 @@ class Mesa18(AutotoolsPackage):
def osmesa_libs(self):
return find_libraries('libOSMesa',
root=self.spec.prefix,
- shared='+shared' in self.spec,
+ shared=True,
recursive=True)
@property
def glx_libs(self):
return find_libraries('libGL',
root=self.spec.prefix,
- shared='+shared' in self.spec,
+ shared=True,
recursive=True)
@property
def gl_libs(self):
return find_libraries('libGL',
root=self.spec.prefix,
- shared='+shared' in self.spec,
+ shared=True,
recursive=True)
diff --git a/var/spack/repos/builtin/packages/meshkit/package.py b/var/spack/repos/builtin/packages/meshkit/package.py
index a103db11c9..ea3dec2ace 100644
--- a/var/spack/repos/builtin/packages/meshkit/package.py
+++ b/var/spack/repos/builtin/packages/meshkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/meson/package.py b/var/spack/repos/builtin/packages/meson/package.py
index e60101d5bc..ea6dcf19cb 100644
--- a/var/spack/repos/builtin/packages/meson/package.py
+++ b/var/spack/repos/builtin/packages/meson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,11 @@ class Meson(PythonPackage):
maintainers = ['michaelkuhn']
+ version('0.58.0', sha256='991b882bfe4d37acc23c064a29ca209458764a580d52f044f3d50055a132bed4')
+ version('0.57.2', sha256='cd3773625253df4fd1c380faf03ffae3d02198d6301e7c8bc7bba6c66af66096')
+ version('0.57.1', sha256='0c043c9b5350e9087cd4f6becf6c0d10b1d618ca3f919e0dcca2cdf342360d5d')
+ version('0.57.0', sha256='fd26a27c1a509240c668ebd29d280649d9239cf8684ead51d5cb499d1e1188bd')
+ version('0.56.2', sha256='aaae961c3413033789248ffe6762589e80b6cf487c334d0b808e31a32c48f35f')
version('0.56.0', sha256='a9ca7adf66dc69fbb7e583f7c7aef16b9fe56ec2874a3d58747e69a3affdf300')
version('0.55.3', sha256='2b276df50c5b13ccdbfb14d3333141e9e7985aca31b60400b3f3e0be2ee6897e')
version('0.55.2', sha256='56244896e56c2b619f819d047b6de412ecc5250975ee8717f1e329113d178e06')
@@ -32,6 +37,7 @@ class Meson(PythonPackage):
version('0.41.2', sha256='2daf448d3f2479d60e30617451f09bf02d26304dd1bd12ee1de936a53e42c7a4')
version('0.41.1', sha256='a48901f02ffeb9ff5cf5361d71b1fca202f9cd72998043ad011fc5de0294cf8b')
+ depends_on('python@3.6:', when='@0.57.0:', type=('build', 'run'))
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
depends_on('ninja', type='run')
@@ -41,7 +47,8 @@ class Meson(PythonPackage):
# are not reverted.
patch('rpath-0.49.patch', when='@0.49:0.53')
patch('rpath-0.54.patch', when='@0.54:0.55')
- patch('rpath-0.56.patch', when='@0.56')
+ patch('rpath-0.56.patch', when='@0.56:0.57')
+ patch('rpath-0.58.patch', when='@0.58:')
executables = ['^meson$']
diff --git a/var/spack/repos/builtin/packages/meson/rpath-0.58.patch b/var/spack/repos/builtin/packages/meson/rpath-0.58.patch
new file mode 100644
index 0000000000..9e35933ed9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/meson/rpath-0.58.patch
@@ -0,0 +1,12 @@
+--- a/mesonbuild/scripts/depfixer.py 2021-05-11 21:50:38.800645669 +0200
++++ b/mesonbuild/scripts/depfixer.py 2021-05-11 21:51:44.503883473 +0200
+@@ -479,6 +479,9 @@
+
+ def fix_rpath(fname: str, rpath_dirs_to_remove: T.Set[bytes], new_rpath: T.Union[str, bytes], final_path: str, install_name_mappings: T.Dict[str, str], verbose: bool = True) -> None:
+ global INSTALL_NAME_TOOL
++ # Do not strip rpath when run from within Spack
++ if 'SPACK_RPATH_DIRS' in os.environ:
++ return
+ # Static libraries, import libraries, debug information, headers, etc
+ # never have rpaths
+ # DLLs and EXE currently do not need runtime path fixing
diff --git a/var/spack/repos/builtin/packages/mesquite/package.py b/var/spack/repos/builtin/packages/mesquite/package.py
index d5f3516652..7d4843aee1 100644
--- a/var/spack/repos/builtin/packages/mesquite/package.py
+++ b/var/spack/repos/builtin/packages/mesquite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/metabat/package.py b/var/spack/repos/builtin/packages/metabat/package.py
index fa5a424396..8e7c675947 100644
--- a/var/spack/repos/builtin/packages/metabat/package.py
+++ b/var/spack/repos/builtin/packages/metabat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/metall/package.py b/var/spack/repos/builtin/packages/metall/package.py
index e3aee3ed98..d42b6fe13c 100644
--- a/var/spack/repos/builtin/packages/metall/package.py
+++ b/var/spack/repos/builtin/packages/metall/package.py
@@ -1,11 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
class Metall(CMakePackage):
- """An allocator for persistent memory"""
+ """A Persistent Memory Allocator For Data-Centric Analytics"""
homepage = "https://github.com/LLNL/metall"
git = "https://github.com/LLNL/metall.git"
@@ -16,16 +16,39 @@ class Metall(CMakePackage):
version('master', branch='master')
version('develop', branch='develop')
- version('0.7', sha256='17430758a0d2821d1220b03c2635f44739400bad1ffe308fd3da6e38ae875ced')
- version('0.6', sha256='123234c7214b666ed51db255c3e2acf98c2cd91bdf1cd0a254bdb893c2148afa')
- version('0.5', sha256='7d710dc3d5270c799d3506566e5c3c45b94d6f87fb5e05bbaecdca04e42f2966')
- version('0.4', sha256='6309dab9cffba3bfc957f23e5a287de00966237baafea759866b2961d8db34ea')
- version('0.3', sha256='abecdd245eae69088e001cc0c641e8f560b554a726a515eebd7b7f7fb43361e5')
- version('0.2', sha256='35cdf3505d2f8d0282a0d5c60b69a0ec5ec6d77ac3facce7549eb874df27be1d')
+ version('0.13', sha256='959d37d0a7e7e5b4d5e6c0334aaaeef1b463e855fa8e807042f662c993ed60b1')
+ version('0.12', sha256='b757b354b355e866bd6d42da53b0160442f3b7f663a19ba113da1ffc1a76176e')
+ version('0.11', sha256='7cfa6a7eaaeb7fd11ecfbe43a172a36c8cde200601d6cd3b309d7a0acf752f3c')
+ version('0.10', sha256='58b4b5507d4db5baca315b1bed2b728981755d755b91ef63bd0b6dfaf320f46b')
+ version('0.9', sha256='2d7bd9ea2f1e04136050f210884445a9e3dcb96c992cf42ff9ea4b392f85f927')
+ depends_on('cmake@3.10:', type='build')
depends_on('boost@1.64:', type=('build', 'link'))
+ # googletest is required only for test
+ # 'make test' is executed if '--run-tests' or '--test=root' is specified
+ depends_on('googletest', type=('test'))
def cmake_args(self):
- args = []
- args.append('-DINSTALL_HEADER_ONLY=ON')
- return args
+ if self.run_tests:
+ args = ['-DBUILD_TEST=ON', '-DSKIP_DOWNLOAD_GTEST=ON']
+ return args
+ else:
+ args = ['-DINSTALL_HEADER_ONLY=ON']
+ return args
+
+ # Set environmental variables for the build step
+ # setup_environment() was replaced by setup_build_environment()?
+ # (https://github.com/spack/spack/pull/11115)
+ # This page has not been updated?
+ # https://spack-tutorial.readthedocs.io/en/latest/tutorial_advanced_packaging.html
+ def setup_build_environment(self, env):
+ # Configure the directories for test
+ if self.run_tests:
+ env.set(
+ 'METALL_TEST_DIR',
+ join_path(self.build_directory, 'build_test')
+ )
+
+ # 'spack load metall' sets METALL_ROOT environmental variable
+ def setup_run_environment(self, env):
+ env.set('METALL_ROOT', self.prefix)
diff --git a/var/spack/repos/builtin/packages/metaphysicl/package.py b/var/spack/repos/builtin/packages/metaphysicl/package.py
index e281f40fe5..4adabea075 100644
--- a/var/spack/repos/builtin/packages/metaphysicl/package.py
+++ b/var/spack/repos/builtin/packages/metaphysicl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/metis/package.py b/var/spack/repos/builtin/packages/metis/package.py
index 37d8ef06be..9a44823f9f 100644
--- a/var/spack/repos/builtin/packages/metis/package.py
+++ b/var/spack/repos/builtin/packages/metis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,19 +16,12 @@ class Metis(Package):
multilevel recursive-bisection, multilevel k-way, and multi-constraint
partitioning schemes."""
- #
- # The original metis website: http://glaros.dtc.umn.edu/gkhome/metis/metis/overview
- # is down sometimes. This is a github mirror that provides metis 5.1.0
- #
-
- homepage = "https://github.com/scivision/METIS/"
- url = "https://github.com/scivision/METIS/raw/master/metis-5.1.0.tar.gz"
+ homepage = "http://glaros.dtc.umn.edu/gkhome/metis/metis/overview"
+ url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz"
+ list_url = "http://glaros.dtc.umn.edu/gkhome/fsroot/sw/metis/OLD"
version('5.1.0', sha256='76faebe03f6c963127dbb73c13eab58c9a3faeae48779f049066a21c087c5db2')
- # For v4.0.3, use the original metis website since this version is not
- # mirrored at the above github location.
- version('4.0.3', url='http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-4.0.3.tar.gz',
- sha256='5efa35de80703c1b2c4d0de080fafbcf4e0d363a21149a1ad2f96e0144841a55')
+ version('4.0.3', sha256='5efa35de80703c1b2c4d0de080fafbcf4e0d363a21149a1ad2f96e0144841a55')
variant('shared', default=True, description='Enables the build of shared libraries.')
variant('gdb', default=False, description='Enables gdb support (version 5+).')
diff --git a/var/spack/repos/builtin/packages/metkit/package.py b/var/spack/repos/builtin/packages/metkit/package.py
new file mode 100644
index 0000000000..e0324d6079
--- /dev/null
+++ b/var/spack/repos/builtin/packages/metkit/package.py
@@ -0,0 +1,51 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Metkit(CMakePackage):
+ """Toolkit for manipulating and describing meteorological objects,
+ implementing the MARS language and associated processing and semantics."""
+
+ homepage = 'https://github.com/ecmwf/metkit'
+ url = 'https://github.com/ecmwf/metkit/archive/refs/tags/1.7.0.tar.gz'
+
+ maintainers = ['skosukhin']
+
+ version('1.7.0', sha256='8c34f6d8ea5381bd1bcfb22462349d03e1592e67d8137e76b3cecf134a9d338c')
+
+ variant('tools', default=True, description='Build the command line tools')
+ variant('grib', default=True, description='Enable support for GRIB format')
+ variant('odb', default=False, description='Enable support for ODB data')
+
+ depends_on('cmake@3.12:', type='build')
+ depends_on('ecbuild@3.4:', type='build')
+
+ depends_on('eckit@1.16:')
+
+ depends_on('eccodes@2.5:', when='+grib')
+
+ depends_on('odc', when='+odb')
+
+ conflicts('+tools', when='~grib~odb',
+ msg='None of the command line tools is built when both '
+ 'GRIB format and ODB data support are disabled')
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('ENABLE_BUILD_TOOLS', 'tools'),
+ self.define_from_variant('ENABLE_GRIB', 'grib'),
+ self.define_from_variant('ENABLE_ODC', 'odb'),
+ # The tests download additional data (~4KB):
+ self.define('ENABLE_TESTS', self.run_tests),
+ # The library does not really implement support for BUFR format:
+ self.define('ENABLE_BUFR', False),
+ # The library does not really implement support for NetCDF format:
+ self.define('ENABLE_NETCDF', False),
+ # We do not need any experimental features:
+ self.define('ENABLE_EXPERIMENTAL', False)
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/mfem/package.py b/var/spack/repos/builtin/packages/mfem/package.py
index c7f7e7e4d9..d9e88be3d0 100644
--- a/var/spack/repos/builtin/packages/mfem/package.py
+++ b/var/spack/repos/builtin/packages/mfem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,8 @@ class Mfem(Package):
maintainers = ['v-dobrev', 'tzanio', 'acfisher',
'goxberry', 'markcmiller86']
+ test_requires_compiler = True
+
# Recommended mfem builds to test when updating this file: see the shell
# script 'test_builds.sh' in the same directory as this file.
@@ -47,45 +49,45 @@ class Mfem(Package):
version('4.2.0',
'4352a225b55948d2e73a5ee88cece0e88bdbe7ba6726a23d68b2736d3221a86d',
- url='https://bit.ly/mfem-4-2', extension='.tar.gz',
+ url='https://bit.ly/mfem-4-2', extension='tar.gz',
preferred=True)
version('4.1.0',
'4c83fdcf083f8e2f5b37200a755db843cdb858811e25a8486ad36b2cbec0e11d',
- url='https://bit.ly/mfem-4-1', extension='.tar.gz')
+ url='https://bit.ly/mfem-4-1', extension='tar.gz')
# Tagged development version used by xSDK
version('4.0.1-xsdk', commit='c55c80d17b82d80de04b849dd526e17044f8c99a')
version('4.0.0',
'df5bdac798ea84a263979f6fbf79de9013e1c55562f95f98644c3edcacfbc727',
- url='https://bit.ly/mfem-4-0', extension='.tar.gz')
+ url='https://bit.ly/mfem-4-0', extension='tar.gz')
# Tagged development version used by the laghos package:
version('3.4.1-laghos-v2.0', tag='laghos-v2.0')
version('3.4.0',
sha256='4e73e4fe0482636de3c5dc983cd395839a83cb16f6f509bd88b053e8b3858e05',
- url='https://bit.ly/mfem-3-4', extension='.tar.gz')
+ url='https://bit.ly/mfem-3-4', extension='tar.gz')
version('3.3.2',
sha256='b70fa3c5080b9ec514fc05f4a04ff74322b99ac4ecd6d99c229f0ed5188fc0ce',
- url='https://goo.gl/Kd7Jk8', extension='.tar.gz')
+ url='https://goo.gl/Kd7Jk8', extension='tar.gz')
# Tagged development version used by the laghos package:
version('3.3.1-laghos-v1.0', tag='laghos-v1.0')
version('3.3',
sha256='b17bd452593aada93dc0fee748fcfbbf4f04ce3e7d77fdd0341cc9103bcacd0b',
- url='http://goo.gl/Vrpsns', extension='.tar.gz')
+ url='http://goo.gl/Vrpsns', extension='tar.gz')
version('3.2',
sha256='2938c3deed4ec4f7fd5b5f5cfe656845282e86e2dcd477d292390058b7b94340',
- url='http://goo.gl/Y9T75B', extension='.tar.gz')
+ url='http://goo.gl/Y9T75B', extension='tar.gz')
version('3.1',
sha256='841ea5cf58de6fae4de0f553b0e01ebaab9cd9c67fa821e8a715666ecf18fc57',
- url='http://goo.gl/xrScXn', extension='.tar.gz')
+ url='http://goo.gl/xrScXn', extension='tar.gz')
variant('static', default=True,
description='Build static library')
@@ -105,6 +107,7 @@ class Mfem(Package):
variant('raja', default=False, description='Enable RAJA backend')
variant('libceed', default=False, description='Enable libCEED backend')
variant('umpire', default=False, description='Enable Umpire support')
+ variant('amgx', default=False, description='Enable NVIDIA AmgX solver support')
variant('threadsafe', default=False,
description=('Enable thread safe features.'
@@ -174,6 +177,8 @@ class Mfem(Package):
conflicts('+raja', when='mfem@:3.99.99')
conflicts('+libceed', when='mfem@:4.0.99')
conflicts('+umpire', when='mfem@:4.0.99')
+ conflicts('+amgx', when='mfem@:4.1.99')
+ conflicts('+amgx', when='~cuda')
conflicts('+superlu-dist', when='~mpi')
conflicts('+strumpack', when='~mpi')
@@ -246,6 +251,13 @@ class Mfem(Package):
depends_on('umpire@2.0.0:', when='+umpire')
depends_on('umpire+cuda', when='+umpire+cuda')
+ depends_on('amgx', when='+amgx')
+ # MPI is enabled by default
+ depends_on('amgx~mpi', when='+amgx~mpi')
+ for sm_ in CudaPackage.cuda_arch_values:
+ depends_on('amgx cuda_arch={0}'.format(sm_),
+ when='+amgx cuda_arch=sm_{0}'.format(sm_))
+
patch('mfem_ppc_build.patch', when='@3.2:3.3.0 arch=ppc64le')
patch('mfem-3.4.patch', when='@3.4.0')
patch('mfem-3.3-3.4-petsc-3.9.patch',
@@ -363,6 +375,7 @@ class Mfem(Package):
'MFEM_USE_CUDA=%s' % yes_no('+cuda'),
'MFEM_USE_OCCA=%s' % yes_no('+occa'),
'MFEM_USE_RAJA=%s' % yes_no('+raja'),
+ 'MFEM_USE_AMGX=%s' % yes_no('+amgx'),
'MFEM_USE_CEED=%s' % yes_no('+libceed'),
'MFEM_USE_UMPIRE=%s' % yes_no('+umpire')]
@@ -569,6 +582,15 @@ class Mfem(Package):
ld_flags_from_dirs([spec['raja'].prefix.lib],
['RAJA'])]
+ if '+amgx' in spec:
+ amgx = spec['amgx']
+ if '+shared' in amgx:
+ options += ['AMGX_OPT=-I%s' % amgx.prefix.include,
+ 'AMGX_LIB=%s' %
+ ld_flags_from_library_list(amgx.libs)]
+ else:
+ options += ['AMGX_DIR=%s' % amgx.prefix]
+
if '+libceed' in spec:
options += ['CEED_OPT=-I%s' % spec['libceed'].prefix.include,
'CEED_LIB=%s' %
@@ -677,6 +699,35 @@ class Mfem(Package):
if install_em:
install_tree('data', join_path(prefix_share, 'data'))
+ examples_src_dir = 'examples'
+ examples_data_dir = 'data'
+
+ @run_after('install')
+ def cache_test_sources(self):
+ """Copy the example source files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources([self.examples_src_dir,
+ self.examples_data_dir])
+
+ def test(self):
+ test_dir = join_path(self.install_test_root, self.examples_src_dir)
+ with working_dir(test_dir, create=False):
+ # MFEM has many examples to serve as a suitable smoke check. ex10
+ # was chosen arbitrarily among the examples that work both with
+ # MPI and without it
+ test_exe = 'ex10p' if ('+mpi' in self.spec) else 'ex10'
+ make('CONFIG_MK={0}/share/mfem/config.mk'.format(self.prefix),
+ test_exe, parallel=False)
+ self.run_test('./{0}'.format(test_exe),
+ ['--mesh', '../{0}/beam-quad.mesh'.format(
+ self.examples_data_dir)],
+ [], installed=True, purpose='Smoke test for mfem',
+ skip_missing=False, work_dir='.')
+ make('clean')
+
+ # this patch is only needed for mfem 4.1, where a few
+ # released files include byte order marks
+ @when('@4.1.0')
def patch(self):
# Remove the byte order mark since it messes with some compilers
filter_file(u'\uFEFF', '', 'fem/gslib.hpp')
@@ -700,6 +751,8 @@ class Mfem(Package):
sun_comps += ',nvecparallel,nvecmpiplusx'
else:
sun_comps += ',nvecparhyp,nvecparallel'
+ if '+cuda' in self.spec:
+ sun_comps += ',nveccuda'
return sun_comps
@property
diff --git a/var/spack/repos/builtin/packages/mg/package.py b/var/spack/repos/builtin/packages/mg/package.py
index b2059c5182..a550de0040 100644
--- a/var/spack/repos/builtin/packages/mg/package.py
+++ b/var/spack/repos/builtin/packages/mg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mgis/package.py b/var/spack/repos/builtin/packages/mgis/package.py
index c03680a7d6..79633592dd 100644
--- a/var/spack/repos/builtin/packages/mgis/package.py
+++ b/var/spack/repos/builtin/packages/mgis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,16 +18,18 @@ class Mgis(CMakePackage):
"""
homepage = "https://thelfer.github.io/mgis/web/index.html"
- url = "https://github.com/thelfer/MFrontGenericInterfaceSupport/archive/MFrontGenericInterfaceSupport-1.1.tar.gz"
+ url = "https://github.com/thelfer/MFrontGenericInterfaceSupport/archive/MFrontGenericInterfaceSupport-1.2.tar.gz"
git = "https://github.com/thelfer/MFrontGenericInterfaceSupport.git"
maintainers = ['thelfer']
# development branches
version("master", branch="master")
+ version("rliv-1.2", branch="rliv-1.2")
version("rliv-1.1", branch="rliv-1.1")
version("rliv-1.0", branch="rliv-1.0")
# released version
+ version('1.2', sha256='ed82ab91cbe17c00ef36578dbfcb4d1817d4c956619b7cccbea3e3f1a3b31940')
version('1.1', sha256='06593d7a052678deaee87ef60b2213db7545c5be9823f261d3388b3978a0b7a5')
version('1.0.1', sha256='6102621455bc5d9b1591cd33e93b2e15a9572d2ce59ca6dfa30ba57ae1265c08')
version('1.0', sha256='279c98da00fa6855edf29c2b8f8bad6e7732298dc62ef67d028d6bbeaac043b3')
@@ -44,9 +46,11 @@ class Mgis(CMakePackage):
values=('Debug', 'Release'))
# dependencies
+ depends_on('tfel@3.4.0', when="@1.2")
depends_on('tfel@3.3.0', when="@1.1")
depends_on('tfel@3.2.1', when="@1.0.1")
depends_on('tfel@3.2.0', when="@1.0")
+ depends_on('tfel@rliv-3.4', when="@rliv-1.2")
depends_on('tfel@rliv-3.3', when="@rliv-1.1")
depends_on('tfel@rliv-3.2', when="@rliv-1.0")
depends_on('tfel@master', when="@master")
@@ -57,6 +61,8 @@ class Mgis(CMakePackage):
args = []
+ args.append("-DUSE_EXTERNAL_COMPILER_FLAGS=ON")
+
for i in ['c', 'fortran', 'python']:
if '+' + i in self.spec:
args.append("-Denable-{0}-bindings=ON".format(i))
diff --git a/var/spack/repos/builtin/packages/microbiomeutil/package.py b/var/spack/repos/builtin/packages/microbiomeutil/package.py
index bcae7ad991..3735be53e7 100644
--- a/var/spack/repos/builtin/packages/microbiomeutil/package.py
+++ b/var/spack/repos/builtin/packages/microbiomeutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/migraphx/0001-Adding-nlohmann-json-include-directory.patch b/var/spack/repos/builtin/packages/migraphx/0001-Adding-nlohmann-json-include-directory.patch
new file mode 100644
index 0000000000..4554ca9f3b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/migraphx/0001-Adding-nlohmann-json-include-directory.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index eff5ab4..aca4441 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -197,6 +197,8 @@ add_subdirectory(doc)
+ add_subdirectory(test)
+ add_subdirectory(tools)
+
++target_include_directories(migraphx PUBLIC "${NLOHMANN_JSON_INCLUDE}")
++
+ set(DEST_DIR ${CMAKE_BINARY_DIR})
+ file(GLOB backend_files ${CMAKE_SOURCE_DIR}/src/py/backend/*.py)
+ file(MAKE_DIRECTORY ${DEST_DIR}/lib/onnx_migraphx)
diff --git a/var/spack/repos/builtin/packages/migraphx/package.py b/var/spack/repos/builtin/packages/migraphx/package.py
index 90b438dbf0..fbbc17cc05 100644
--- a/var/spack/repos/builtin/packages/migraphx/package.py
+++ b/var/spack/repos/builtin/packages/migraphx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,31 +10,44 @@ class Migraphx(CMakePackage):
""" AMD's graph optimization engine."""
homepage = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX"
- url = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/archive/rocm-3.5.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX.git"
+ url = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
- def url_for_version(self, version):
- url = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/archive/{0}.tar.gz"
- if version > Version('3.5'):
- return url.format(version)
- else:
- return url.format('rocm-' + version)
-
+ version('4.2.0', sha256='93f22f6c641dde5d7fb8abcbd99621b3c81e332e125a6f3a258d5e4cf2055f55')
+ version('4.1.0', sha256='f9b1d2e25cdbaf5d0bfb07d4c8ccef0abaa291757c4bce296c3b5b9488174045')
+ version('4.0.0', sha256='b8b845249626e9169353dbfa2530db468972a7569b248c8118ff19e029a12e55')
+ version('3.10.0', sha256='eda22b9af286afb7806e6b5d5ebb0d612dce87c9bad64ba5176fda1c2ed9c9b7')
+ version('3.9.0', sha256='7649689e06522302c07b39abb88bdcc3d4de18a7559d4f6a9e238e92b2074032')
version('3.8.0', sha256='08fa991349a2b95364b0a69be7960580c3e3fde2fda0f0c67bc41429ea2d67a0')
version('3.7.0', sha256='697c3c7babaa025eaabec630dbd8a87d10dc4fe35fafa3b0d3463aaf1fc46399')
version('3.5.0', sha256='5766f3b262468c500be5051a056811a8edfa741734a5c08c4ecb0337b7906377')
+ def url_for_version(self, version):
+ url = "https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/archive/"
+ if version <= Version('3.5.0'):
+ url += "{0}.tar.gz".format(version)
+ else:
+ url += "rocm-{0}.tar.gz".format(version)
+
+ return url
+
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
+ patch('0001-Adding-nlohmann-json-include-directory.patch', when='@3.9.0:')
+
depends_on('cmake@3:', type='build')
depends_on('protobuf', type='link')
depends_on('blaze', type='build')
depends_on('nlohmann-json', type='link')
- depends_on('py-pybind11', type='build')
depends_on('msgpack-c', type='link')
depends_on('half@1.12.0', type='link')
- for ver in ['3.5.0', '3.7.0', '3.8.0']:
+ depends_on('py-pybind11', type='build', when='@:4.0.0')
+ depends_on('py-pybind11@2.6:', type='build', when='@4.1.0:')
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
@@ -46,4 +59,8 @@ class Migraphx(CMakePackage):
'-DCMAKE_CXX_COMPILER={0}/bin/clang++'
.format(self.spec['llvm-amdgpu'].prefix)
]
+ if '@3.9.0:' in self.spec:
+ args.append('-DNLOHMANN_JSON_INCLUDE={0}'.format(
+ self.spec['nlohmann-json'].prefix.include))
+
return args
diff --git a/var/spack/repos/builtin/packages/migrate/package.py b/var/spack/repos/builtin/packages/migrate/package.py
index 61602546a1..340229905a 100644
--- a/var/spack/repos/builtin/packages/migrate/package.py
+++ b/var/spack/repos/builtin/packages/migrate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mii/package.py b/var/spack/repos/builtin/packages/mii/package.py
index 15e9dad660..1ac66410c8 100644
--- a/var/spack/repos/builtin/packages/mii/package.py
+++ b/var/spack/repos/builtin/packages/mii/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,10 +16,9 @@ class Mii(MakefilePackage):
on the homepage for more information."""
homepage = "https://github.com/codeandkey/mii"
- url = "https://github.com/codeandkey/mii/archive/1.0.2.tar.gz"
+ url = "https://github.com/codeandkey/mii/archive/v1.0.4.tar.gz"
- version('1.0.3', sha256='9b5a0e4e0961cf848677ed61b4f6c03e6a443f8592ed668d1afea302314b47a8')
- version('1.0.2', sha256='1c2c86ec37779ecd3821c30ce5b6dd19be4ec1813da41832d49ff3dcf615e22d')
+ version('1.0.4', sha256='3c4e7e6e8c21969da8dade05fecab35be61f2bb82d75eeaf19db8cc97f8058b5')
def setup_build_environment(self, env):
env.set('PREFIX', self.prefix)
diff --git a/var/spack/repos/builtin/packages/minc-toolkit/package.py b/var/spack/repos/builtin/packages/minc-toolkit/package.py
new file mode 100644
index 0000000000..bce163e2eb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minc-toolkit/package.py
@@ -0,0 +1,35 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class MincToolkit(CMakePackage):
+ """Bundles multiple MINC-related packages"""
+
+ homepage = "https://github.com/BIC-MNI/minc-toolkit-v2"
+ git = "https://github.com/BIC-MNI/minc-toolkit-v2.git"
+
+ version('1.9.18.1', commit="38597c464b6e93eda680ab4a9e903366d53d7737",
+ submodules=True)
+
+ variant('visualisation', default=False,
+ description="Build visual tools (Display, register, etc.)")
+
+ depends_on('perl')
+ depends_on('flex', type='build')
+ depends_on('bison', type='build')
+ depends_on('zlib', type='link')
+ depends_on('freeglut', when="+visualisation")
+
+ def cmake_args(self):
+ return [self.define_from_variant('MT_BUILD_VISUAL_TOOLS', 'visualisation'),
+ # newer ANTs packaged separately
+ "-DMT_BUILD_ANTS=OFF",
+ # build error; should package newer c3d separately
+ "-DMT_BUILD_C3D=OFF",
+ # should be packaged separately with newer ITK
+ "-DMT_BUILD_ELASTIX=OFF"
+ ]
diff --git a/var/spack/repos/builtin/packages/minced/package.py b/var/spack/repos/builtin/packages/minced/package.py
index 06f1ff457f..7f62ba46c8 100644
--- a/var/spack/repos/builtin/packages/minced/package.py
+++ b/var/spack/repos/builtin/packages/minced/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mindthegap/package.py b/var/spack/repos/builtin/packages/mindthegap/package.py
index d3e847a129..b577464ea0 100644
--- a/var/spack/repos/builtin/packages/mindthegap/package.py
+++ b/var/spack/repos/builtin/packages/mindthegap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/miniaero/package.py b/var/spack/repos/builtin/packages/miniaero/package.py
index 3588e87d28..3985f03d7d 100644
--- a/var/spack/repos/builtin/packages/miniaero/package.py
+++ b/var/spack/repos/builtin/packages/miniaero/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/miniamr/package.py b/var/spack/repos/builtin/packages/miniamr/package.py
index 262c7cb856..03d144a932 100644
--- a/var/spack/repos/builtin/packages/miniamr/package.py
+++ b/var/spack/repos/builtin/packages/miniamr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,8 @@ class Miniamr(MakefilePackage):
tags = ['proxy-app', 'ecp-proxy-app']
version('master', branch='master')
+ version('1.6.6', sha256='a7f79fae49e433ef8350cbd34cbf57c486089cf7ac0d1f1f3b23c820d3e5bb9f')
+ version('1.6.5', sha256='c70f0f648c73ea4497817ceee158334eeb901fc5c32cf804deef3226cd9cf26a')
version('1.6.4', sha256='807d50608b69fb1a61924718964be96c0a2f9fa2e37fdc027bc3f0f116544732')
version('1.4.4', sha256='b83f438ff351481b4310c46ddf63b9fffc7f29f916a5717377e72919a5b788b6')
version('1.4.3', sha256='4c3fbc1662ae3e139669fb3844134486a7488a0b6e085c3b24bebcc8d12d3ac6')
@@ -26,20 +28,14 @@ class Miniamr(MakefilePackage):
version('1.4.1', sha256='dd8e8d9fd0768cb4f2c5d7fe6989dfa6bb95a8461f04deaccdbb50b0dd51e97a')
version('1.4.0', sha256='f0b959c90416288c5ab51ed86b6ba49bc8a319006c2a74a070c94133267edc6f')
- variant('mpi', default=True, description='Build with MPI support')
-
- depends_on('mpi', when="+mpi")
+ depends_on('mpi')
@property
def build_targets(self):
targets = []
- if '+mpi' in self.spec:
- targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
- targets.append('LD={0}'.format(self.spec['mpi'].mpicc))
- targets.append('LDLIBS=-lm')
- else:
- targets.append('CC={0}'.format(self.compiler.cc))
- targets.append('LD={0}'.format(self.compiler.cc))
+ targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+ targets.append('LD={0}'.format(self.spec['mpi'].mpicc))
+ targets.append('LDLIBS=-lm')
targets.append('--directory=ref')
return targets
diff --git a/var/spack/repos/builtin/packages/miniapp-ascent/package.py b/var/spack/repos/builtin/packages/miniapp-ascent/package.py
new file mode 100644
index 0000000000..7a73151ec8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/miniapp-ascent/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class MiniappAscent(Package):
+ """Pantheon/E4S/Ascent in-situ miniapp example workflow"""
+
+ homepage = "https://github.com/cinemascienceworkflows/2021-04_Miniapp-Ascent"
+ git = "https://github.com/cinemascienceworkflows/2021-04_Miniapp-Ascent.git"
+ url = "https://github.com/cinemascienceworkflows/2021-04_Miniapp-Ascent/archive/refs/heads/master.zip"
+
+ version('master',
+ branch='master')
+
+ depends_on("ascent", type=('run'))
+
+ def install(self, spec, prefix):
+ install_tree(self.stage.source_path, prefix)
diff --git a/var/spack/repos/builtin/packages/miniasm/package.py b/var/spack/repos/builtin/packages/miniasm/package.py
index 3ab3832b7e..c8ede61a8f 100644
--- a/var/spack/repos/builtin/packages/miniasm/package.py
+++ b/var/spack/repos/builtin/packages/miniasm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/miniconda2/package.py b/var/spack/repos/builtin/packages/miniconda2/package.py
index 1173011a0e..d7e5621b51 100644
--- a/var/spack/repos/builtin/packages/miniconda2/package.py
+++ b/var/spack/repos/builtin/packages/miniconda2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/miniconda3/package.py b/var/spack/repos/builtin/packages/miniconda3/package.py
index b3bda3dfaa..c776637a2c 100644
--- a/var/spack/repos/builtin/packages/miniconda3/package.py
+++ b/var/spack/repos/builtin/packages/miniconda3/package.py
@@ -1,26 +1,46 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
from os.path import split
+import platform
+
+
+_versions = {
+ '4.9.2': {
+ 'Linux-ppc64le': ('2b111dab4b72a34c969188aa7a91eca927a034b14a87f725fa8d295955364e71', 'https://repo.anaconda.com/miniconda/Miniconda3-py38_4.9.2-Linux-ppc64le.sh'),
+ 'Linux-x86_64': ('1314b90489f154602fd794accfc90446111514a5a72fe1f71ab83e07de9504a7', 'https://repo.anaconda.com/miniconda/Miniconda3-py38_4.9.2-Linux-x86_64.sh')},
+ '4.8.2': {
+ 'Linux-x86_64': ('5bbb193fd201ebe25f4aeb3c58ba83feced6a25982ef4afa86d5506c3656c142', 'https://repo.anaconda.com/miniconda/Miniconda3-py38_4.8.2-Linux-x86_64.sh')},
+ '4.7.12.1': {
+ 'Linux-x86_64': ('bfe34e1fa28d6d75a7ad05fd02fa5472275673d5f5621b77380898dee1be15d2', 'https://repo.continuum.io/miniconda/Miniconda3-4.7.12.1-Linux-x86_64.sh')},
+ '4.6.14': {
+ 'Linux-x86_64': ('0d6b23895a91294a4924bd685a3a1f48e35a17970a073cd2f684ffe2c31fc4be', 'https://repo.continuum.io/miniconda/Miniconda3-4.6.14-Linux-x86_64.sh')},
+ '4.5.11': {
+ 'Linux-x86_64': ('ea4594241e13a2671c5b158b3b813f0794fe58d514795fbf72a1aad24db918cf', 'https://repo.continuum.io/miniconda/Miniconda3-4.5.11-Linux-x86_64.sh')},
+ '4.5.4': {
+ 'Linux-x86_64': ('80ecc86f8c2f131c5170e43df489514f80e3971dd105c075935470bbf2476dea', 'https://repo.continuum.io/miniconda/Miniconda3-4.5.4-Linux-x86_64.sh')},
+ '4.3.30': {
+ 'Linux-x86_64': ('66c822dfe76636b4cc2ae5604816e0e723aa01620f50087f06410ecf5bfdf38c', 'https://repo.continuum.io/miniconda/Miniconda3-4.3.30-Linux-x86_64.sh')},
+ '4.3.14': {
+ 'Linux-x86_64': ('902f31a46b4a05477a9862485be5f84af761a444f8813345ff8dad8f6d3bccb2', 'https://repo.continuum.io/miniconda/Miniconda3-4.3.14-Linux-x86_64.sh')},
+ '4.3.11': {
+ 'Linux-x86_64': ('b9fe70ce7b6fa8df05abfb56995959b897d0365299f5046063bc236843474fb8', 'https://repo.continuum.io/miniconda/Miniconda3-4.3.11-Linux-x86_64.sh')},
+}
class Miniconda3(Package):
"""The minimalist bootstrap toolset for conda and Python3."""
homepage = "https://conda.io/miniconda.html"
- url = "https://repo.continuum.io/miniconda/Miniconda3-4.6.14-Linux-x86_64.sh"
-
- version('4.8.2', sha256='5bbb193fd201ebe25f4aeb3c58ba83feced6a25982ef4afa86d5506c3656c142', url='https://repo.anaconda.com/miniconda/Miniconda3-py38_4.8.2-Linux-x86_64.sh', expand=False)
- version('4.7.12.1', sha256='bfe34e1fa28d6d75a7ad05fd02fa5472275673d5f5621b77380898dee1be15d2', expand=False)
- version('4.6.14', sha256='0d6b23895a91294a4924bd685a3a1f48e35a17970a073cd2f684ffe2c31fc4be', expand=False)
- version('4.5.11', sha256='ea4594241e13a2671c5b158b3b813f0794fe58d514795fbf72a1aad24db918cf', expand=False)
- version('4.5.4', sha256='80ecc86f8c2f131c5170e43df489514f80e3971dd105c075935470bbf2476dea', expand=False)
- version('4.3.30', sha256='66c822dfe76636b4cc2ae5604816e0e723aa01620f50087f06410ecf5bfdf38c', expand=False)
- version('4.3.14', sha256='902f31a46b4a05477a9862485be5f84af761a444f8813345ff8dad8f6d3bccb2', expand=False)
- version('4.3.11', sha256='b9fe70ce7b6fa8df05abfb56995959b897d0365299f5046063bc236843474fb8', expand=False)
+
+ for ver, packages in _versions.items():
+ key = "{0}-{1}".format(platform.system(), platform.machine())
+ pkg = packages.get(key)
+ if pkg:
+ version(ver, sha256=pkg[0], url=pkg[1], expand=False)
def install(self, spec, prefix):
# peel the name of the script out of the pathname of the
diff --git a/var/spack/repos/builtin/packages/minife/package.py b/var/spack/repos/builtin/packages/minife/package.py
index 034b9f9569..0a20a6b91c 100644
--- a/var/spack/repos/builtin/packages/minife/package.py
+++ b/var/spack/repos/builtin/packages/minife/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/miniforge3/package.py b/var/spack/repos/builtin/packages/miniforge3/package.py
index 621db7b034..94152c2d8c 100644
--- a/var/spack/repos/builtin/packages/miniforge3/package.py
+++ b/var/spack/repos/builtin/packages/miniforge3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minigan/package.py b/var/spack/repos/builtin/packages/minigan/package.py
index 5d3b553bcf..cba2ad3652 100644
--- a/var/spack/repos/builtin/packages/minigan/package.py
+++ b/var/spack/repos/builtin/packages/minigan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minighost/package.py b/var/spack/repos/builtin/packages/minighost/package.py
index b1903f7e62..65393d3148 100644
--- a/var/spack/repos/builtin/packages/minighost/package.py
+++ b/var/spack/repos/builtin/packages/minighost/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minigmg/package.py b/var/spack/repos/builtin/packages/minigmg/package.py
index ee519b2210..a6f9107fcb 100644
--- a/var/spack/repos/builtin/packages/minigmg/package.py
+++ b/var/spack/repos/builtin/packages/minigmg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minimap2/package.py b/var/spack/repos/builtin/packages/minimap2/package.py
index 4c8e2a1c4c..388371d17d 100644
--- a/var/spack/repos/builtin/packages/minimap2/package.py
+++ b/var/spack/repos/builtin/packages/minimap2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class Minimap2(PythonPackage):
url = "https://github.com/lh3/minimap2/releases/download/v2.2/minimap2-2.2.tar.bz2"
version('2.14', sha256='9088b785bb0c33488ca3a27c8994648ce21a8be54cb117f5ecee26343facd03b')
- version('2.10', sha256='52b36f726ec00bfca4a2ffc23036d1a2b5f96f0aae5a92fd826be6680c481c20')
+ version('2.10', sha256='52b36f726ec00bfca4a2ffc23036d1a2b5f96f0aae5a92fd826be6680c481c20')
version('2.2', sha256='7e8683aa74c4454a8cfe3821f405c4439082e24c152b4b834fdb56a117ecaed9')
conflicts('target=aarch64:', when='@:2.10')
diff --git a/var/spack/repos/builtin/packages/minimd/package.py b/var/spack/repos/builtin/packages/minimd/package.py
index ceac240146..0f71b46b78 100644
--- a/var/spack/repos/builtin/packages/minimd/package.py
+++ b/var/spack/repos/builtin/packages/minimd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minio/package.py b/var/spack/repos/builtin/packages/minio/package.py
index 4485f650e7..90275e9b24 100644
--- a/var/spack/repos/builtin/packages/minio/package.py
+++ b/var/spack/repos/builtin/packages/minio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/miniqmc/package.py b/var/spack/repos/builtin/packages/miniqmc/package.py
index 4ac543c4dd..86b68b5fdd 100644
--- a/var/spack/repos/builtin/packages/miniqmc/package.py
+++ b/var/spack/repos/builtin/packages/miniqmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minisign/package.py b/var/spack/repos/builtin/packages/minisign/package.py
index 7bb02eb453..eabc481236 100644
--- a/var/spack/repos/builtin/packages/minisign/package.py
+++ b/var/spack/repos/builtin/packages/minisign/package.py
@@ -1,8 +1,7 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
from spack import *
@@ -12,6 +11,16 @@ class Minisign(CMakePackage):
homepage = "https://jedisct1.github.io/minisign/"
url = "https://github.com/jedisct1/minisign/archive/0.7.tar.gz"
+ maintainers = ['alalazo']
+
+ version('0.9', sha256='caa4b3dd314e065c6f387b2713f7603673e39a8a0b1a76f96ef6c9a5b845da0f')
+ version('0.8', sha256='130eb5246076bc7ec42f13495a601382e566bb6733430d40a68de5e43a7f1082')
version('0.7', sha256='0c9f25ae647b6ba38cf7e6aea1da4e8fb20e1bc64ef0c679da737a38c8ad43ef')
+ variant('static', default=True,
+ description='builds a static version of the executable')
+
depends_on('libsodium')
+
+ def cmake_args(self):
+ return [self.define_from_variant('STATIC_LIBSODIUM', 'static')]
diff --git a/var/spack/repos/builtin/packages/minismac2d/package.py b/var/spack/repos/builtin/packages/minismac2d/package.py
index 5e89156278..b0c70a16d8 100644
--- a/var/spack/repos/builtin/packages/minismac2d/package.py
+++ b/var/spack/repos/builtin/packages/minismac2d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minitri/package.py b/var/spack/repos/builtin/packages/minitri/package.py
index ec7aff1530..0cb0e95f4f 100644
--- a/var/spack/repos/builtin/packages/minitri/package.py
+++ b/var/spack/repos/builtin/packages/minitri/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minivite/package.py b/var/spack/repos/builtin/packages/minivite/package.py
index 6fb46e80c4..fa355fedf0 100644
--- a/var/spack/repos/builtin/packages/minivite/package.py
+++ b/var/spack/repos/builtin/packages/minivite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minixyce/package.py b/var/spack/repos/builtin/packages/minixyce/package.py
index 17d4a4b032..6514ee3a57 100644
--- a/var/spack/repos/builtin/packages/minixyce/package.py
+++ b/var/spack/repos/builtin/packages/minixyce/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/minizip/implicit.patch b/var/spack/repos/builtin/packages/minizip/implicit.patch
new file mode 100644
index 0000000000..86df7d46f0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minizip/implicit.patch
@@ -0,0 +1,10 @@
+--- a/contrib/minizip/miniunz.c 2010-07-18 11:04:24.000000000 -0500
++++ b/contrib/minizip/miniunz.c 2020-12-25 21:39:19.000000000 -0600
+@@ -45,6 +45,7 @@
+ #include <time.h>
+ #include <errno.h>
+ #include <fcntl.h>
++#include <sys/stat.h>
+
+ #ifdef _WIN32
+ # include <direct.h>
diff --git a/var/spack/repos/builtin/packages/minizip/package.py b/var/spack/repos/builtin/packages/minizip/package.py
index 0bf524da48..2871582295 100644
--- a/var/spack/repos/builtin/packages/minizip/package.py
+++ b/var/spack/repos/builtin/packages/minizip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,14 @@ class Minizip(AutotoolsPackage):
depends_on('m4', type='build')
depends_on('zlib')
+ # error: implicit declaration of function 'mkdir' is invalid in C99
+ patch('implicit.patch', when='%apple-clang@12:')
+ patch('implicit.patch', when='%gcc@7.3.0:')
+
+ # statically link to libz.a
+ # https://github.com/Homebrew/homebrew-core/blob/master/Formula/minizip.rb
+ patch('static.patch', when='%apple-clang@12:')
+
# build minizip and miniunz
@run_before('autoreconf')
def build_minizip_binary(self):
diff --git a/var/spack/repos/builtin/packages/minizip/static.patch b/var/spack/repos/builtin/packages/minizip/static.patch
new file mode 100644
index 0000000000..3030a08e64
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minizip/static.patch
@@ -0,0 +1,26 @@
+--- a/contrib/minizip/Makefile.am 2012-03-26 22:17:41.000000000 -0500
++++ b/contrib/minizip/Makefile.am 2020-12-26 12:48:31.000000000 -0600
+@@ -8,7 +8,7 @@
+ zlib_top_builddir = $(top_builddir)/../..
+
+ AM_CPPFLAGS = -I$(zlib_top_srcdir)
+-AM_LDFLAGS = -L$(zlib_top_builddir)
++AM_LDFLAGS = $(zlib_top_builddir)/libz.a
+
+ if WIN32
+ iowin32_src = iowin32.c
+@@ -22,7 +22,7 @@
+ zip.c \
+ ${iowin32_src}
+
+-libminizip_la_LDFLAGS = $(AM_LDFLAGS) -version-info 1:0:0 -lz
++libminizip_la_LDFLAGS = $(AM_LDFLAGS) -version-info 1:0:0
+
+ minizip_includedir = $(includedir)/minizip
+ minizip_include_HEADERS = \
+@@ -42,4 +42,4 @@
+ miniunzip_LDADD = libminizip.la
+
+ minizip_SOURCES = minizip.c
+-minizip_LDADD = libminizip.la -lz
++minizip_LDADD = libminizip.la
diff --git a/var/spack/repos/builtin/packages/minuit/package.py b/var/spack/repos/builtin/packages/minuit/package.py
index d385fe5f7d..21f5280b6a 100644
--- a/var/spack/repos/builtin/packages/minuit/package.py
+++ b/var/spack/repos/builtin/packages/minuit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/miopen-hip/0001-Add-rocm-path-and-rocm-device-lib-path-flags.patch b/var/spack/repos/builtin/packages/miopen-hip/0001-Add-rocm-path-and-rocm-device-lib-path-flags.patch
new file mode 100644
index 0000000000..b98304529f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/miopen-hip/0001-Add-rocm-path-and-rocm-device-lib-path-flags.patch
@@ -0,0 +1,14 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 985f59f..515e7e0 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -184,7 +184,8 @@ string(REGEX REPLACE --cuda-gpu-arch=[a-z0-9]+ "" HIP_COMPILER_FLAGS "${HIP_COMP
+ message(STATUS "Hip compiler flags: ${HIP_COMPILER_FLAGS}")
+
+ add_definitions("-DHIP_COMPILER_FLAGS=${HIP_COMPILER_FLAGS}")
+-
++add_definitions("--rocm-path=${HIP_PREFIX_PATH}")
++add_definitions("--rocm-device-lib-path=${DEVICELIBS_PREFIX_PATH}")
+
+
+ # HIP
diff --git a/var/spack/repos/builtin/packages/miopen-hip/package.py b/var/spack/repos/builtin/packages/miopen-hip/package.py
index 30577f58e5..94ac9ee9b8 100644
--- a/var/spack/repos/builtin/packages/miopen-hip/package.py
+++ b/var/spack/repos/builtin/packages/miopen-hip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,16 @@ class MiopenHip(CMakePackage):
"""AMD's library for high performance machine learning primitives."""
homepage = "https://github.com/ROCmSoftwarePlatform/MIOpen"
- url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/MIOpen.git"
+ url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='8ab02e784c8b3471159794766ed6303c333b33c69dc5186c0930e56504373b7c')
+ version('4.1.0', sha256='068b1bc33f90fe21d3aab5697d2b3b7b930e613c54d6c5ee820768579b2b41ee')
+ version('4.0.0', sha256='84c6c17be9c1a9cd0d3a2af283433f64b07a4b9941349f498e40fed82fb205a6')
+ version('3.10.0', sha256='926e43c5583cf70d6b247f9fe45971b8b1cc9668f9c8490c142c7e8b6e268f1a')
+ version('3.9.0', sha256='f57d75a220c1094395cc1dccab2185c759d779751ddbb5369a6f041ec77b2156')
version('3.8.0', sha256='612b30d4a967bf18c7fa7aa3ef12ed558314ed04cee2775b842bf6a96cd7276f')
version('3.7.0', sha256='f6a6ddd8d39bb76b7f7d91e68ade3b45e0201181145658c43b967065a354b103')
version('3.5.0', sha256='aa362e69c4dce7f5751f0ee04c745735ea5454c8101050e9b92cc60fa3c0fb82')
@@ -22,12 +28,17 @@ class MiopenHip(CMakePackage):
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
depends_on('cmake@3:', type='build')
- depends_on('boost@1.58.0', type='link')
+ depends_on('boost@1.67.0:1.73.0', type='link')
depends_on('pkgconfig', type='build')
depends_on('bzip2', type='link')
depends_on('sqlite', type='link')
depends_on('half', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0']:
+ depends_on('zlib', type='link', when='@3.9.0:')
+
+ patch('0001-Add-rocm-path-and-rocm-device-lib-path-flags.patch', when='@3.9.0:')
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='link', when='@' + ver)
@@ -36,11 +47,21 @@ class MiopenHip(CMakePackage):
depends_on('rocblas@' + ver, type='link', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='link', when='@' + ver)
+ def setup_build_environment(self, env):
+ if '@3.9.0:' in self.spec:
+ lib_dir = self.spec['zlib'].libs.directories[0]
+ env.prepend_path('LIBRARY_PATH', lib_dir)
+
def cmake_args(self):
+ hip_prefix_dir = self.spec['hip'].prefix
+ devicelibs_prefix_dir = self.spec['rocm-device-libs'].prefix
args = [
'-DMIOPEN_BACKEND=HIP',
'-DCMAKE_CXX_COMPILER={0}/bin/clang++'
.format(self.spec['llvm-amdgpu'].prefix),
- '-DBoost_USE_STATIC_LIBS=Off'
+ '-DBoost_USE_STATIC_LIBS=Off',
+ '-DHIP_PREFIX_PATH={0}'.format(hip_prefix_dir),
+ '-DDEVICELIBS_PREFIX_PATH={0}/amdgcn/bitcode'
+ .format(devicelibs_prefix_dir)
]
return args
diff --git a/var/spack/repos/builtin/packages/miopen-opencl/package.py b/var/spack/repos/builtin/packages/miopen-opencl/package.py
index d9a4c755af..981d14bd56 100644
--- a/var/spack/repos/builtin/packages/miopen-opencl/package.py
+++ b/var/spack/repos/builtin/packages/miopen-opencl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,15 @@ class MiopenOpencl(CMakePackage):
"""AMD's library for high performance machine learning primitives."""
homepage = "https://github.com/ROCmSoftwarePlatform/MIOpen"
- url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/MIOpen.git"
+ url = "https://github.com/ROCmSoftwarePlatform/MIOpen/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='8ab02e784c8b3471159794766ed6303c333b33c69dc5186c0930e56504373b7c')
+ version('4.1.0', sha256='068b1bc33f90fe21d3aab5697d2b3b7b930e613c54d6c5ee820768579b2b41ee')
+ version('4.0.0', sha256='84c6c17be9c1a9cd0d3a2af283433f64b07a4b9941349f498e40fed82fb205a6')
+ version('3.10.0', sha256='926e43c5583cf70d6b247f9fe45971b8b1cc9668f9c8490c142c7e8b6e268f1a')
version('3.9.0', sha256='f57d75a220c1094395cc1dccab2185c759d779751ddbb5369a6f041ec77b2156')
version('3.8.0', sha256='612b30d4a967bf18c7fa7aa3ef12ed558314ed04cee2775b842bf6a96cd7276f')
version('3.7.0', sha256='f6a6ddd8d39bb76b7f7d91e68ade3b45e0201181145658c43b967065a354b103')
@@ -23,13 +28,15 @@ class MiopenOpencl(CMakePackage):
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
depends_on('cmake@3:', type='build')
- depends_on('boost@1.58.0', type='link')
+ depends_on('boost@1.67.0:1.73.0', type='link')
depends_on('pkgconfig', type='build')
depends_on('bzip2', type='link')
depends_on('sqlite', type='link')
depends_on('half', type='build')
+
depends_on('miopengemm@1.1.6', type='link', when='@3.5.0')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='link', when='@' + ver)
@@ -37,8 +44,11 @@ class MiopenOpencl(CMakePackage):
depends_on('rocm-opencl@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='link', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
- for ver in ['3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('miopengemm@' + ver, type='link', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
def cmake_args(self):
args = [
diff --git a/var/spack/repos/builtin/packages/miopengemm/package.py b/var/spack/repos/builtin/packages/miopengemm/package.py
index 44f94738cb..9e74fb6eab 100644
--- a/var/spack/repos/builtin/packages/miopengemm/package.py
+++ b/var/spack/repos/builtin/packages/miopengemm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,8 @@ class Miopengemm(CMakePackage):
and kernel generator"""
homepage = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM"
- url = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM.git"
+ url = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
@@ -21,6 +22,10 @@ class Miopengemm(CMakePackage):
url = "https://github.com/ROCmSoftwarePlatform/MIOpenGEMM/archive/rocm-{0}.tar.gz"
return url.format(version)
+ version('4.2.0', sha256='a11fa063248ed339fe897ab4c5d338b7279035fa37fcbe0909e2c4c352aaefb1')
+ version('4.1.0', sha256='389328eb4a16565853691bd5b01a0eab978d99e3217329236ddc63a38b8dd4eb')
+ version('4.0.0', sha256='366d03facb1ec5f6f4894aa88859df1d7fea00fee0cbac5173d7577e9a8ba799')
+ version('3.10.0', sha256='66d844a17729ab25c1c2a243667d9714eb89fd51e42bfc014e2faf54a8642064')
version('3.9.0', sha256='8e1273c35d50e9fd92e303d9bcbdd42ddbfda20844b3248428e16b54928f6dc2')
version('3.8.0', sha256='d76f5b4b3b9d1e3589a92f667f39eab5b5ab54ec3c4e04d412035be3ec623547')
version('3.7.0', sha256='392b280ca564b120f6b24ec1fe8782cba08a8a5fb52938e8bc3dc887d3fd08fa')
@@ -31,6 +36,8 @@ class Miopengemm(CMakePackage):
depends_on('cmake@3:', type='build')
depends_on('rocm-cmake@3.5.0', type='build', when='@1.1.6')
depends_on('rocm-opencl@3.5.0', type='build', when='@1.1.6')
- for ver in ['3.7.0', '3.8.0', '3.9.0']:
+
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('rocm-opencl@' + ver, type='build', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/mira/package.py b/var/spack/repos/builtin/packages/mira/package.py
index beee0a4906..4caf029858 100644
--- a/var/spack/repos/builtin/packages/mira/package.py
+++ b/var/spack/repos/builtin/packages/mira/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/miranda/package.py b/var/spack/repos/builtin/packages/miranda/package.py
index 7f17619f4b..99aac453e9 100644
--- a/var/spack/repos/builtin/packages/miranda/package.py
+++ b/var/spack/repos/builtin/packages/miranda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mirdeep2/package.py b/var/spack/repos/builtin/packages/mirdeep2/package.py
index b2c4cd60eb..8420e84c76 100644
--- a/var/spack/repos/builtin/packages/mirdeep2/package.py
+++ b/var/spack/repos/builtin/packages/mirdeep2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mitofates/package.py b/var/spack/repos/builtin/packages/mitofates/package.py
index 0fb356637e..78b88b9397 100644
--- a/var/spack/repos/builtin/packages/mitofates/package.py
+++ b/var/spack/repos/builtin/packages/mitofates/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mitos/package.py b/var/spack/repos/builtin/packages/mitos/package.py
index 080b6cd742..7ac17d906e 100644
--- a/var/spack/repos/builtin/packages/mitos/package.py
+++ b/var/spack/repos/builtin/packages/mitos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mivisionx/package.py b/var/spack/repos/builtin/packages/mivisionx/package.py
index 64f1d13a23..586a92be71 100644
--- a/var/spack/repos/builtin/packages/mivisionx/package.py
+++ b/var/spack/repos/builtin/packages/mivisionx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,8 @@ class Mivisionx(CMakePackage):
applications bundled into a single toolkit."""
homepage = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX"
- url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX.git"
+ url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/archive/rocm-4.1.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
@@ -23,6 +24,10 @@ class Mivisionx(CMakePackage):
url = "https://github.com/GPUOpen-ProfessionalCompute-Libraries/MIVisionX/archive/rocm-{0}.tar.gz"
return url.format(version)
+ version('4.1.0', sha256='0b431a49807682b9a81adac6a64160a0712ddaa3963e0f05595c93b92be777ea')
+ version('4.0.0', sha256='e09d4890b729740ded056b3974daea84c8eb1fc93714c52bf89f853c2eef1fb5')
+ version('3.10.0', sha256='8a67fae77a05ef60a501e64a572a7bd2ccb9243518b1414112ccd1d1f78d08c8')
+ version('3.9.0', sha256='892812cc6e6977ed8cd4b69c63f4c17be43b83c78eeafd9549236c17f6eaa2af')
version('3.8.0', sha256='4e177a9b5dcae671d6ea9f0686cf5f73fcd1e3feb3c50425c8c6d43ac5d77feb')
version('3.7.0', sha256='3ce13c6449739c653139fc121411d94eaa9d764d3d339c4c78fab4b8aa199965')
version('1.7', sha256='ff77142fd4d4a93136fd0ac17348861f10e8f5d5f656fa9dacee08d8fcd2b1d8')
@@ -38,12 +43,13 @@ class Mivisionx(CMakePackage):
depends_on('ffmpeg@4.1.1', type='build')
depends_on('protobuf@3.5.0', type='build')
- depends_on('opencv@3.4.6', type='build')
+ depends_on('opencv@3.4.6 +calib3d+core+features2d+highgui+imgcodecs+imgproc+video+videoio+videostab+flann', type='build')
depends_on('rocm-opencl@3.5.0', type='build', when='@1.7')
depends_on('rocm-cmake@3.5.0', type='build', when='@1.7')
depends_on('miopen-opencl@3.5.0', type=('build', 'run', 'link'), when='@1.7')
depends_on('miopengemm@1.1.6', type=('build', 'run', 'link'), when='@1.7')
- for ver in ['3.7.0', '3.8.0']:
+ depends_on('openssl', type=('build', 'link'), when='@4.0.0:4.1.0')
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0']:
depends_on('rocm-opencl@' + ver, type='build', when='@' + ver)
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('miopengemm@' + ver, type=('build', 'run', 'link'), when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/mixcr/package.py b/var/spack/repos/builtin/packages/mixcr/package.py
index 1b0e781b45..5990f5e063 100644
--- a/var/spack/repos/builtin/packages/mixcr/package.py
+++ b/var/spack/repos/builtin/packages/mixcr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mkfontdir/package.py b/var/spack/repos/builtin/packages/mkfontdir/package.py
index ae9885002e..a6f8e9aaff 100644
--- a/var/spack/repos/builtin/packages/mkfontdir/package.py
+++ b/var/spack/repos/builtin/packages/mkfontdir/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mkfontscale/package.py b/var/spack/repos/builtin/packages/mkfontscale/package.py
index d3ba5e0861..aaae9efe69 100644
--- a/var/spack/repos/builtin/packages/mkfontscale/package.py
+++ b/var/spack/repos/builtin/packages/mkfontscale/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Mkfontscale(AutotoolsPackage, XorgPackage):
depends_on('libfontenc')
depends_on('freetype')
- depends_on('xproto@7.0.25:', type='build')
+ depends_on('xproto@7.0.25:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/mlhka/package.py b/var/spack/repos/builtin/packages/mlhka/package.py
index 32d259139c..9e3f16b02e 100644
--- a/var/spack/repos/builtin/packages/mlhka/package.py
+++ b/var/spack/repos/builtin/packages/mlhka/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mlocate/package.py b/var/spack/repos/builtin/packages/mlocate/package.py
index c33850fb31..ac0335fa11 100644
--- a/var/spack/repos/builtin/packages/mlocate/package.py
+++ b/var/spack/repos/builtin/packages/mlocate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mlperf-deepcam/package.py b/var/spack/repos/builtin/packages/mlperf-deepcam/package.py
index 55c74fda45..4c9cf34e5b 100644
--- a/var/spack/repos/builtin/packages/mlperf-deepcam/package.py
+++ b/var/spack/repos/builtin/packages/mlperf-deepcam/package.py
@@ -1,13 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-
from spack import *
-class MlperfDeepcam(Package):
+class MlperfDeepcam(Package, CudaPackage):
"""PyTorch implementation for the climate segmentation benchmark,
based on the Exascale Deep Learning for Climate Analytics"""
diff --git a/var/spack/repos/builtin/packages/mmg/package.py b/var/spack/repos/builtin/packages/mmg/package.py
index b48f969bc8..a420975bb3 100644
--- a/var/spack/repos/builtin/packages/mmg/package.py
+++ b/var/spack/repos/builtin/packages/mmg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mmv/better-diagnostics-for-directories-584850.diff b/var/spack/repos/builtin/packages/mmv/better-diagnostics-for-directories-584850.diff
new file mode 100644
index 0000000000..57044a7405
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mmv/better-diagnostics-for-directories-584850.diff
@@ -0,0 +1,22 @@
+Description: Provide better diagnostic for directories
+ Provides better diagnostic when renaming directories. Based on patch
+ by Ulrich Eckhardt <doomster@knuut.de>.
+Debian-Bug: 584850
+Author: Axel Beckert <abe@debian.org>
+
+Index: mmv/mmv.c
+===================================================================
+--- mmv.orig/mmv.c 2012-09-16 20:03:04.269626454 +0200
++++ mmv/mmv.c 2012-09-16 20:06:18.220733497 +0200
+@@ -1215,7 +1215,11 @@
+ getstat(pathbuf, ffrom);
+ if ((ffrom->fi_stflags & FI_ISDIR) ? !dirs : !fils)
+ #endif
++ {
++ if (verbose)
++ printf("ignoring directory %s\n", ffrom->fi_name);
+ return(0);
++ }
+
+ if (needslash) {
+ strcpy(pathend + *pk, SLASHSTR);
diff --git a/var/spack/repos/builtin/packages/mmv/format-security.diff b/var/spack/repos/builtin/packages/mmv/format-security.diff
new file mode 100644
index 0000000000..3b813f1acd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mmv/format-security.diff
@@ -0,0 +1,17 @@
+Description: Fixes build failure with -Werror=format-security
+ ("format not a string literal and no format arguments")
+Author: Axel Beckert <abe@debian.org>
+
+Index: mmv/mmv.c
+===================================================================
+--- mmv.orig/mmv.c 2012-09-16 18:51:28.000000000 +0200
++++ mmv/mmv.c 2012-09-16 18:59:20.600733584 +0200
+@@ -2828,7 +2828,7 @@
+ static FILE *tty = NULL;
+ int c, r;
+
+- fprintf(stderr, m);
++ fprintf(stderr, "%s", m);
+ if (tty == NULL && (tty = fopen(TTY, "r")) == NULL) {
+ fprintf(stderr, "Can not open %s to get reply.\n", TTY);
+ if (failact == -1)
diff --git a/var/spack/repos/builtin/packages/mmv/man-page-examples.diff b/var/spack/repos/builtin/packages/mmv/man-page-examples.diff
new file mode 100644
index 0000000000..706f88af57
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mmv/man-page-examples.diff
@@ -0,0 +1,54 @@
+Description: Add examples section to man page
+ This patch adds several examples of common mmv usage to the man page
+Debian-Bug: 380327
+Author: Axel Beckert <abe@debian.org>
+Last-Update: 2012-12-29
+
+Index: mmv/mmv.1
+===================================================================
+--- mmv.orig/mmv.1 2012-12-29 02:20:59.510075480 +0100
++++ mmv/mmv.1 2012-12-29 02:39:33.591699513 +0100
+@@ -35,6 +35,43 @@
+ .B mmvpatch
+ [\fBexecutable\fP]
+ \}
++.SH "EXAMPLES"
++Rename all
++.I *.jpeg
++files in the current directory to
++\fI*.jpg\fR:
++
++.in +3
++mmv '*.jpeg' '#1.jpg'
++.in -3
++
++Replace the first occurrence of
++.I abc
++with
++.I xyz
++in all files in the current directory:
++
++.in +3
++mmv '*abc*' '#1xyz#2'
++.in -3
++
++Rename files ending in \fI.html.en\fR, \fI.html.de\fR, etc. to ending
++in \fI.en.html\fR, \fI.de.html\fR, etc. in the current directory:
++
++.in +3
++mmv '*.html.??' '#1.#2#3.html'
++.in -3
++
++Rename music files from
++.I <track no.> - <interpreter> - <song title>.ogg
++to
++.I <interpreter> - <track no.> - <song title>.ogg
++in the current directory:
++
++.in +3
++mmv '* - * - *.ogg' '#2 - #1 - #3.ogg'
++.in -3
++
+ .SH "DESCRIPTION"
+ .I Mmv
+ moves (or copies,
diff --git a/var/spack/repos/builtin/packages/mmv/man-page-fixes.diff b/var/spack/repos/builtin/packages/mmv/man-page-fixes.diff
new file mode 100644
index 0000000000..55696ba80c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mmv/man-page-fixes.diff
@@ -0,0 +1,361 @@
+Description: Man page fixes as of mmv 1.01b-15
+ This patch contains the man-page fixes as of mmv 1.01b-15 when it has
+ been converted to the source format "3.0 (quilt)"
+Author: Multiple Authors. See changelog for details.
+Reviewed-By: Axel Beckert <abe@debian.org>
+Last-Update: 2012-12-29
+
+--- mmv-1.01b.orig/mmv.1
++++ mmv-1.01b/mmv.1
+@@ -2,7 +2,7 @@
+ .\" To print the MS-DOS version, use option -rO2.
+ .\" Under System V, take out the '.\" ' from the next line.
+ .\" .nr O 1
+-.TH MMV 1 "November 20, 1989 (v1.0)"
++.TH MMV 1 "November 20, 2001 (v1.0lfs)"
+ .ie !'\nO'2' \{\
+ .SH NAME
+ mmv \- move/copy/append/link multiple files by wildcard patterns
+@@ -21,13 +21,14 @@ mmv \- move/copy/append multiple files b
+ \}
+ .SH SYNOPSIS
+ .B mmv
+-.if '\nO'2' [\fB-m\fP|\fBx\fP|\fBr\fP|\fBc\fP|\fBo\fP|\fBa\fP|\fBz\fP]
+-.if '\nO'0' [\fB-m\fP|\fBx\fP|\fBr\fP|\fBc\fP|\fBo\fP|\fBa\fP|\fBl\fP|\fBs\fP]
+-.if '\nO'1' [\fB-m\fP|\fBx\fP|\fBr\fP|\fBc\fP|\fBo\fP|\fBa\fP|\fBl\fP]
+-[\fB-h\fP]
+-[\fB-d\fP|\fBp\fP]
+-[\fB-g\fP|\fBt\fP]
+-[\fB-v\fP|\fBn\fP]
++.if '\nO'2' [\fB\-m\fP|\fBx\fP|\fBr\fP|\fBc\fP|\fBo\fP|\fBa\fP|\fBz\fP]
++.if '\nO'0' [\fB\-m\fP|\fBx\fP|\fBr\fP|\fBc\fP|\fBo\fP|\fBa\fP|\fBl\fP|\fBs\fP]
++.if '\nO'1' [\fB\-m\fP|\fBx\fP|\fBr\fP|\fBc\fP|\fBo\fP|\fBa\fP|\fBl\fP]
++[\fB\-h\fP]
++[\fB\-d\fP|\fBp\fP]
++[\fB\-g\fP|\fBt\fP]
++[\fB\-v\fP|\fBn\fP]
++[\fB\-\-\fP]
+ [\fBfrom to\fP]
+ .if '\nO'2' \{\
+ .br
+@@ -56,6 +57,9 @@ from the entire set of actions specified
+ and gives the user the choice of either
+ proceeding by avoiding the offending parts
+ or aborting.
++.I mmv
++does support large files (LFS) but it does *NOT* support
++sparse files (i.e. it explodes them).
+
+ .ce
+ The Task Options
+@@ -71,7 +75,7 @@ If none of these are specified,
+ .ie '\nO'2' \{\
+ a default (patchable by
+ .IR mmvpatch ,
+-and initially -x)
++and initially \-x)
+ determines the task.
+ \}
+ .el \{\
+@@ -81,18 +85,18 @@ was invoked (argv[0]):
+
+ command name default task
+
+- mmv -x
++ mmv \-x
+ .br
+- mcp -c
++ mcp \-c
+ .br
+- mad -a
++ mad \-a
+ .br
+- mln -l
++ mln \-l
+ \}
+ .PP
+ The task option choices are:
+ .TP
+--m :
++\-m :
+ move source file to target name.
+ Both must be on the same device.
+ Will not move directories.
+@@ -102,8 +106,8 @@ moves the link without checking if the l
+ directory is different than the old.
+ \}
+ .TP
+--x :
+-same as -m, except cross-device moves are done
++\-x :
++same as \-m, except cross-device moves are done
+ by copying, then deleting source.
+ When copying, sets the
+ .ie !'\nO'2' permission bits
+@@ -111,7 +115,7 @@ When copying, sets the
+ and file modification time
+ of the target file to that of the source file.
+ .TP
+--r :
++\-r :
+ rename source file or directory to target name.
+ The target name must not include a path:
+ the file remains in the same directory in all cases.
+@@ -119,7 +123,7 @@ This option is the only way of renaming
+ .IR mmv .
+ .if '\nO'2' It is only available under DOS version 3.0 or higher.
+ .TP
+--c :
++\-c :
+ copy source file to target name.
+ Sets the file modification time and
+ .ie !'\nO'2' permission bits
+@@ -128,7 +132,7 @@ of the target file to that of the source
+ regardless of whether the target file already exists.
+ Chains and cycles (to be explained below) are not allowed.
+ .TP
+--o :
++\-o :
+ overwrite target name with source file.
+ .ie '\nO'2' \{\
+ If target file exists, its attributes are left unchanged.
+@@ -146,38 +150,38 @@ and the execute permission bits copied f
+ In either case, the file modification time is set to the current time.
+ \}
+ .TP
+--a :
++\-a :
+ append contents of source file to target name.
+ Target file modification time is set to the current time.
+ If target file does not exist,
+ it is created with
+ .ie '\nO'2' attributes
+ .el permission bits
+-set as under -o.
+-Unlike all other options, -a allows multiple source files to have the
+-same target name, e.g. "mmv -a
++set as under \-o.
++Unlike all other options, \-a allows multiple source files to have the
++same target name, e.g. "mmv \-a
+ .ie '\nO'2' *.c
+ .el \\*.c
+ big" will append all ".c" files to "big".
+-Chains and cycles are also allowed, so "mmv -a f f" will double up "f".
++Chains and cycles are also allowed, so "mmv \-a f f" will double up "f".
+ .ie '\nO'2' \{\
+ .TP
+--z :
+-same as -a, but if the target file exists, and its last character is a ^Z,
++\-z :
++same as \-a, but if the target file exists, and its last character is a ^Z,
+ and the source file is not empty,
+ this ^Z is truncated before doing the append.
+ \}
+ .el \{\
+ .TP
+--l :
++\-l :
+ link target name to source file.
+ Both must be on the same device,
+ and the source must not be a directory.
+ Chains and cycles are not allowed.
+ .if '\nO'0' \{\
+ .TP
+--s :
+-same as -l, but use symbolic links instead of hard links.
++\-s :
++same as \-l, but use symbolic links instead of hard links.
+ For the resulting link to aim back at the source,
+ either the source name must begin with a '/',
+ or the target must reside in either the current or the source directory.
+@@ -190,7 +194,7 @@ and the source can be a directory.
+ Only one of these option may be given,
+ and it applies to all matching files.
+ Remaining options need not be given separately,
+-i.e. "mmv -mk" is allowed.
++i.e. "mmv \-mk" is allowed.
+
+ .ce
+ Multiple Pattern Pairs
+@@ -232,7 +236,7 @@ a b
+ a c
+ .in -3
+
+-would give the error message "a -> c : no match" because file "a"
++would give the error message "a \-> c : no match" because file "a"
+ (even if it exists)
+ was already matched by the first pattern pair.
+
+@@ -255,10 +259,10 @@ matching any single character,
+ and matching any one of a set of characters.
+ .PP
+ Between the '[' and ']', a range from character 'a' through character 'z'
+-is specified with "a-z".
++is specified with "a\-z".
+ The set of matching characters can be negated by inserting
+ a '^' after the '['.
+-Thus, "[^b-e2-5_]"
++Thus, "[^b\-e2\-5_]"
+ will match any character but 'b' through 'e', '2' through '5', and '_'.
+ .if '\nO'2' \{\
+ .PP
+@@ -305,13 +309,13 @@ However, the '~' is not treated as a wil
+ in the sense that it is not assigned a wildcard index (see below).
+ \}
+ .PP
+-Since matching a directory under a task option other than -r or -s
++Since matching a directory under a task option other than \-r or \-s
+ would result in an error,
+-tasks other than -r and -s
++tasks other than \-r and \-s
+ match directories only against completely explicit
+ .I from
+ patterns (i.e. not containing wildcards).
+-Under -r and -s, this applies only to "." and "..".
++Under \-r and \-s, this applies only to "." and "..".
+ .PP
+ .ie '\nO'2' \{\
+ Hidden and system files are also only matched
+@@ -324,7 +328,7 @@ Files beginning with '.' are only matche
+ .I from
+ patterns that begin with an explicit '.'.
+ \}
+-However, if -h is specified, they are matched normally.
++However, if \-h is specified, they are matched normally.
+ .if !'\nO'2' \{\
+ .PP
+ Warning: since the shell normally expands wildcards
+@@ -332,8 +336,9 @@ before passing the command-line argument
+ .IR mmv ,
+ it is usually necessary to enclose the command-line
+ .I from
+-pattern
+-in quotes.
++and
++.I to
++patterns in quotes.
+ \}
+
+ .ce
+@@ -363,7 +368,7 @@ pattern is "abc*.*" and the
+ pattern is "xyz#2.#1",
+ then "abc.txt" is targeted to "xyztxt.".
+ (The first '*' matched "", and the second matched "txt".)
+-Similarly, for the pattern pair ";*.[clp]" -> "#1#3\*(SL#2",
++Similarly, for the pattern pair ";*.[clp]" \-> "#1#3\*(SL#2",
+ "foo1\*(SLfoo2\*(SLprog.c" is targeted to "foo1\*(SLfoo2\*(SLc\*(SLprog".
+ Note that there is no '\*(SL' following the "#1" in the
+ .I to
+@@ -397,7 +402,7 @@ expands the '~' in the exact same manner
+ does not expand it at all).
+ \}
+ .PP
+-For all task options other than -r, if the target name is a directory,
++For all task options other than \-r, if the target name is a directory,
+ the real target name is formed by appending
+ a '\*(SL' followed by the last component
+ of the source file name.
+@@ -434,7 +439,7 @@ a b
+ .br
+ b c
+
+-specifies the chain "a" -> "b" -> "c".
++specifies the chain "a" \-> "b" \-> "c".
+ A cycle is a chain where the last target name
+ refers back to the first source file,
+ e.g. "mmv a a".
+@@ -461,9 +466,9 @@ Furthermore,
+ .I mmv
+ checks if any of its actions will result
+ in the destruction of existing files.
+-If the -d (delete) option is specified,
++If the \-d (delete) option is specified,
+ all file deletions or overwrites are done silently.
+-Under -p (protect), all deletions or overwrites
++Under \-p (protect), all deletions or overwrites
+ (except those specified with "(*)" on the standard input, see below)
+ are treated as errors.
+ And if neither option is specified,
+@@ -487,16 +492,16 @@ Once all errors are detected,
+ queries the user whether he wishes
+ to continue by avoiding the erroneous actions or to abort altogether.
+ This and all other queries may be avoided by specifying either the
+--g (go) or -t (terminate) option.
++\-g (go) or \-t (terminate) option.
+ The former will resolve all difficulties by avoiding the erroneous actions;
+ the latter will abort
+ .I mmv
+ if any errors are detected.
+ Specifying either of them defaults
+ .I mmv
+-to -p, unless -d is specified
++to \-p, unless \-d is specified
+ (see above).
+-Thus, -g and -t are most useful when running
++Thus, \-g and \-t are most useful when running
+ .I mmv
+ in the background or in
+ a shell script,
+@@ -508,28 +513,28 @@ Reports
+ Once the actions to be performed are determined,
+ .I mmv
+ performs them silently,
+-unless either the -v (verbose) or -n (no-execute) option is specified.
++unless either the \-v (verbose) or \-n (no-execute) option is specified.
+ The former causes
+ .I mmv
+ to report each performed action
+ on the standard output as
+
+-a -> b : done.
++a \-> b : done.
+
+ Here, "a" and "b" would be replaced by the source and target names,
+ respectively.
+ If the action deletes the old target,
+ a "(*)" is inserted after the the target name.
+-Also, the "->" symbol is modified when a cycle has to be broken:
++Also, the "\->" symbol is modified when a cycle has to be broken:
+ the '>' is changed to a '^' on the action prior to which the old target
+ is renamed to a temporary,
+-and the '-' is changed to a '=' on the action where the temporary is used.
++and the '\-' is changed to a '=' on the action where the temporary is used.
+ .PP
+-Under -n, none of the actions are performed,
++Under \-n, none of the actions are performed,
+ but messages like the above are printed on the standard output
+ with the ": done." omitted.
+ .PP
+-The output generated by -n can (after editing, if desired)
++The output generated by \-n can (after editing, if desired)
+ be fed back to
+ .I mmv
+ on the standard input
+@@ -545,9 +550,9 @@ To facilitate this,
+ ignores lines on the standard input that look
+ like its own error and "done" messages,
+ as well as all lines beginning with white space,
+-and will accept pattern pairs with or without the intervening "->"
+-(or "-^", "=>", or "=^").
+-Lines with "(*)" after the target pattern have the effect of enabling -d
++and will accept pattern pairs with or without the intervening "\->"
++(or "\-^", "=>", or "=^").
++Lines with "(*)" after the target pattern have the effect of enabling \-d
+ for the files matching this pattern only,
+ so that such deletions are done silently.
+ When feeding
+@@ -596,11 +601,11 @@ on a copy of
+ .I mmv
+ named as follows:
+
+- -x, -m, -r mmv.exe
++ \-x, \-m, \-r mmv.exe
+ .br
+- -c, -o mcp.exe
++ \-c, \-o mcp.exe
+ .br
+- -a, -z mad.exe
++ \-a, \-z mad.exe
+ .PP
+ .I Mmvpatch
+ also determines the best way to uniquely identify directories.
diff --git a/var/spack/repos/builtin/packages/mmv/man-page-warning-149873.diff b/var/spack/repos/builtin/packages/mmv/man-page-warning-149873.diff
new file mode 100644
index 0000000000..4f4815e310
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mmv/man-page-warning-149873.diff
@@ -0,0 +1,45 @@
+Description: Add warnings about #149873 to man page
+ This patch adds warnings about issues with spaces in patterns and
+ files when patterns are read from STDIN to the man page
+Debian-Bug: 149873
+Author: Axel Beckert <abe@debian.org>
+Last-Update: 2012-12-29
+
+Index: mmv/mmv.1
+===================================================================
+--- mmv.orig/mmv.1 2012-12-29 02:44:07.591288928 +0100
++++ mmv/mmv.1 2012-12-29 02:56:01.425012596 +0100
+@@ -234,7 +234,7 @@
+ i.e. "mmv \-mk" is allowed.
+
+ .ce
+-Multiple Pattern Pairs
++Multiple Pattern Pairs / Reading Patterns from STDIN
+ .PP
+ Multiple
+ .I from
+@@ -277,6 +277,11 @@
+ (even if it exists)
+ was already matched by the first pattern pair.
+
++\fBWARNING:\fR This operation mode does \fBnot\fR work if the patterns
++itself contain \fBspaces\fR. See
++.I http://bugs.debian.org/149873
++for details.
++
+ .ce
+ The \fIFrom\fP Pattern
+ .PP
+@@ -592,6 +597,12 @@
+ Lines with "(*)" after the target pattern have the effect of enabling \-d
+ for the files matching this pattern only,
+ so that such deletions are done silently.
++
++\fBWARNING:\fR This means that \fBunexpected things\fR may happen if
++\fBfiles\fR matched by the patterns contain \fBspaces\fR. See
++.I http://bugs.debian.org/149873
++for details.
++
+ When feeding
+ .I mmv
+ its own output,
diff --git a/var/spack/repos/builtin/packages/mmv/package.py b/var/spack/repos/builtin/packages/mmv/package.py
new file mode 100644
index 0000000000..ade641a1aa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mmv/package.py
@@ -0,0 +1,44 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import os
+from spack import *
+
+
+class Mmv(MakefilePackage):
+ """Move/Copy/Append/Link multiple files mmv is a program to
+ move/copy/append/link multiple files according to a set of wildcard
+ patterns. This multiple action is performed safely, i.e. without any
+ unexpected deletion of files due to collisions of target names with
+ existing filenames or with other target names. """
+
+ homepage = "https://packages.debian.org/source/buster/mmv"
+ url = "http://deb.debian.org/debian/pool/main/m/mmv/mmv_1.01b.orig.tar.gz"
+
+ version('1.01b', sha256='0399c027ea1e51fd607266c1e33573866d4db89f64a74be8b4a1d2d1ff1fdeef')
+
+ patch('better-diagnostics-for-directories-584850.diff')
+ patch('format-security.diff')
+ patch('man-page-examples.diff')
+ patch('man-page-fixes.diff')
+ patch('man-page-warning-149873.diff')
+ patch('patches-as-of-mmv-1.01b-15.diff')
+ patch('utime.diff')
+
+ def build(self, spec, prefix):
+ cc = Executable(self.compiler.cc)
+ cc('-DIS_SYSV', '-DHAS_DIRENT', '-DHAS_RENAME', '-O2', '-o', 'mmv', 'mmv.c')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('mmv', prefix.bin)
+ os.symlink(join_path(prefix.bin, 'mmv'), 'mad')
+ os.symlink(join_path(prefix.bin, 'mmv'), 'mcp')
+ os.symlink(join_path(prefix.bin, 'mmv'), 'mln')
+ mkdirp(prefix.man1)
+ install('mmv.1', prefix.man1)
+ os.symlink(join_path(prefix.man1, 'mmv.1'), 'mad.1')
+ os.symlink(join_path(prefix.man1, 'mmv.1'), 'mcp.1')
+ os.symlink(join_path(prefix.man1, 'mmv.1'), 'mln.1')
diff --git a/var/spack/repos/builtin/packages/mmv/patches-as-of-mmv-1.01b-15.diff b/var/spack/repos/builtin/packages/mmv/patches-as-of-mmv-1.01b-15.diff
new file mode 100644
index 0000000000..1c186b2cc2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mmv/patches-as-of-mmv-1.01b-15.diff
@@ -0,0 +1,368 @@
+Description: Patches as of mmv 1.01b-15
+ This patch contains the functional patches as of mmv 1.01b-15 when it
+ has been converted to the source format "3.0 (quilt)"
+Author: Multiple Authors. See changelog for details.
+Reviewed-By: Axel Beckert <abe@debian.org>
+Last-Update: 2012-12-29
+
+--- mmv-1.01b.orig/mmv.c
++++ mmv-1.01b/mmv.c
+@@ -62,7 +62,8 @@ static char USAGE[] =
+ %s [-m|x%s|c|o|a|z] [-h] [-d|p] [-g|t] [-v|n] [from to]\n\
+ \n\
+ Use #N in the ``to'' pattern to get the string matched\n\
+-by the N'th ``from'' pattern wildcard.\n";
++by the N'th ``from'' pattern wildcard.\n\
++Use -- as the end of options.\n";
+
+ #define OTHEROPT (_osmajor < 3 ? "" : "|r")
+
+@@ -75,7 +76,9 @@ Use #[l|u]N in the ``to'' pattern to get
+ string matched by the N'th ``from'' pattern wildcard.\n\
+ \n\
+ A ``from'' pattern containing wildcards should be quoted when given\n\
+-on the command line.\n";
++on the command line. Also you may need to quote ``to'' pattern.\n\
++\n\
++Use -- as the end of options.\n";
+
+ #ifdef IS_SYSV
+ #define OTHEROPT ""
+@@ -85,6 +88,7 @@ on the command line.\n";
+
+ #endif
+
++#include <unistd.h>
+ #include <stdio.h>
+ #include <ctype.h>
+
+@@ -120,14 +124,12 @@ extern unsigned _stklen = 10000;
+ #else
+ /* for various flavors of UN*X */
+
++#include <libgen.h>
++#include <stdlib.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <sys/file.h>
+
+-extern char *getenv();
+-extern long lseek();
+-extern char *malloc();
+-
+ #ifdef HAS_DIRENT
+ #include <dirent.h>
+ typedef struct dirent DIRENTRY;
+@@ -390,7 +392,7 @@ static int movealias(/* REP *first, REP
+ static int snap(/* REP *first, REP *p */);
+ static void showdone(/* REP *fin */);
+ static void breakout(/* */);
+-static int breakrep(/* */);
++static void breakrep(int);
+ static void breakstat(/* */);
+ static void quit(/* */);
+ static int copymove(/* REP *p */);
+@@ -436,9 +438,11 @@ static CHUNK *freechunks = NULL;
+ static SLICER slicer[2] = {{NULL, NULL, 0}, {NULL, NULL, 0}};
+
+ static int badreps = 0, paterr = 0, direrr, failed = 0, gotsig = 0, repbad;
+-static FILE *outfile = stdout;
++static FILE *outfile;
+
++#ifdef IS_MSDOS
+ static char IDF[] = "$$mmvdid.";
++#endif
+ static char TEMP[] = "$$mmvtmp.";
+ static char TOOLONG[] = "(too long)";
+ static char EMPTY[] = "(empty)";
+@@ -456,12 +460,12 @@ char pathbuf[MAXPATH];
+ char fullrep[MAXPATH + 1];
+ static char *(start[MAXWILD]);
+ static int len[MAXWILD];
+-static char hasdot[MAXWILD];
+ static REP mistake;
+ #define MISTAKE (&mistake)
+
+ #ifdef IS_MSDOS
+
++static char hasdot[MAXWILD];
+ static int olddevflag, curdisk, maxdisk;
+ static struct {
+ char ph_banner[30];
+@@ -497,6 +501,8 @@ int main(argc, argv)
+ {
+ char *frompat, *topat;
+
++ outfile = stdout;
++
+ init();
+ procargs(argc, argv, &frompat, &topat);
+ domatch(frompat, topat);
+@@ -560,7 +566,7 @@ static void procargs(argc, argv, pfrompa
+ char **pfrompat, **ptopat;
+ {
+ char *p, c;
+- char *cmdname = argv[0];
++ char *cmdname = basename(argv[0]);
+
+ #ifdef IS_MSDOS
+ #define CMDNAME (patch.ph_name)
+@@ -575,6 +581,11 @@ static void procargs(argc, argv, pfrompa
+ for (argc--, argv++; argc > 0 && **argv == '-'; argc--, argv++)
+ for (p = *argv + 1; *p != '\0'; p++) {
+ c = mylower(*p);
++ if (c == '-') {
++ argc--;
++ argv++;
++ goto endargs;
++ }
+ if (c == 'v' && !noex)
+ verbose = 1;
+ else if (c == 'n' && !verbose)
+@@ -618,7 +629,8 @@ static void procargs(argc, argv, pfrompa
+ }
+ }
+
+- if (op == DFLT)
++endargs:
++ if (op == DFLT) {
+ if (strcmp(cmdname, MOVENAME) == 0)
+ op = XMOVE;
+ else if (strcmp(cmdname, COPYNAME) == 0)
+@@ -629,6 +641,8 @@ static void procargs(argc, argv, pfrompa
+ op = HARDLINK;
+ else
+ op = DFLTOP;
++ }
++
+ if (
+ op & DIRMOVE &&
+ #ifdef IS_MSDOS
+@@ -775,7 +789,7 @@ static void matchpat()
+ static int parsepat()
+ {
+ char *p, *lastname, c;
+- int totwilds, instage, x, havedot;
++ int totwilds, instage, x;
+ static char TRAILESC[] = "%s -> %s : trailing %c is superfluous.\n";
+
+ lastname = from;
+@@ -999,20 +1013,16 @@ static int parsepat()
+ printf(TRAILESC, from, to, ESC);
+ return(-1);
+ }
++#ifdef IS_MSDOS
+ default:
+ if (
+-#ifdef IS_MSDOS
+ c <= ' ' || c >= 127 ||
+ strchr(":/\\*?[]=+;,\"|<>", c) != NULL
+-#else
+- c & 0x80
+-#endif
+ ) {
+ printf("%s -> %s : illegal character '%c' (0x%02X).\n",
+ from, to, c, c);
+ return(-1);
+ }
+-#ifdef IS_MSDOS
+ if (isupper(c))
+ *p = c + ('a' - 'A');
+ #endif
+@@ -1042,7 +1052,7 @@ static int dostage(lastend, pathend, sta
+ DIRINFO *di;
+ HANDLE *h, *hto;
+ int prelen, litlen, nfils, i, k, flags, try;
+- FILEINFO **pf, *fdel;
++ FILEINFO **pf, *fdel = NULL;
+ char *nto, *firstesc;
+ REP *p;
+ int wantdirs, ret = 1, laststage = (stage + 1 == nstages);
+@@ -1172,11 +1182,12 @@ static int trymatch(ffrom, pat)
+ if (*p == '.' || (!matchall && ffrom->fi_attrib & (FA_HIDDEN | FA_SYSTEM)))
+ return(strcmp(pat, p) == 0);
+ #else
+- if (*p == '.')
++ if (*p == '.') {
+ if (p[1] == '\0' || (p[1] == '.' && p[2] == '\0'))
+ return(strcmp(pat, p) == 0);
+ else if (!matchall && *pat != '.')
+ return(0);
++ }
+ #endif
+ return(-1);
+ }
+@@ -1312,7 +1323,7 @@ static int checkto(hfrom, f, phto, pnto,
+ {
+ char tpath[MAXPATH + 1];
+ char *pathend;
+- FILEINFO *fdel;
++ FILEINFO *fdel = NULL;
+ int hlen, tlen;
+
+ if (op & DIRMOVE) {
+@@ -1405,7 +1416,9 @@ static char *getpath(tpath)
+ static int badname(s)
+ char *s;
+ {
++#ifdef IS_MSDOS
+ char *ext;
++#endif
+
+ return (
+ #ifdef IS_MSDOS
+@@ -1715,20 +1728,19 @@ static HANDLE *checkdir(p, pathend, whic
+ struct stat dstat;
+ DIRID d;
+ DEVID v;
+- DIRINFO **newdirs, *di;
+- int nfils;
+- FILEINFO **fils;
++ DIRINFO *di = NULL;
+ char *myp, *lastslash = NULL;
+ int sticky;
+ HANDLE *h;
+
+- if (hsearch(p, which, &h))
++ if (hsearch(p, which, &h)) {
+ if (h->h_di == NULL) {
+ direrr = h->h_err;
+ return(NULL);
+ }
+ else
+ return(h);
++ }
+
+ if (*p == '\0')
+ myp = ".";
+@@ -1899,7 +1911,10 @@ static int match(pat, s, start1, len1)
+ char *pat, *s, **start1;
+ int *len1;
+ {
+- char c, *olds;
++ char c;
++#ifdef IS_MSDOS
++ char *olds;
++#endif
+
+ *start1 = 0;
+ for(;;)
+@@ -2376,9 +2391,9 @@ static void goonordie()
+ static void doreps()
+ {
+ char *fstart;
+- int k, printaliased = 0, alias;
++ int k, printaliased = 0, alias = 0;
+ REP *first, *p;
+- long aliaslen;
++ long aliaslen = 0l;
+
+ #ifdef IS_MSDOS
+ ctrlbrk(breakrep);
+@@ -2396,11 +2411,12 @@ static void doreps()
+ }
+ strcpy(fullrep, p->r_hto->h_name);
+ strcat(fullrep, p->r_nto);
+- if (!noex && (p->r_flags & R_ISCYCLE))
++ if (!noex && (p->r_flags & R_ISCYCLE)) {
+ if (op & APPEND)
+ aliaslen = appendalias(first, p, &printaliased);
+ else
+ alias = movealias(first, p, &printaliased);
++ }
+ strcpy(pathbuf, p->r_hfrom->h_name);
+ fstart = pathbuf + strlen(pathbuf);
+ if ((p->r_flags & R_ISALIASED) && !(op & APPEND))
+@@ -2459,7 +2475,7 @@ static long appendalias(first, p, pprint
+ REP *first, *p;
+ int *pprintaliased;
+ {
+- long ret;
++ long ret = 0l;
+
+ #ifdef IS_MSDOS
+ int fd;
+@@ -2578,10 +2594,10 @@ static void breakout()
+ }
+
+
+-static int breakrep()
++static void breakrep(int signum)
+ {
+ gotsig = 1;
+- return(1);
++ return;
+ }
+
+
+@@ -2624,11 +2640,12 @@ static int copymove(p)
+
+ static int copy(ff, len)
+ FILEINFO *ff;
+- long len;
++ off_t len;
+ {
+- char buf[BUFSIZE], c;
++ char buf[BUFSIZE];
+ int f, t, k, mode, perm;
+ #ifdef IS_MSDOS
++ char c;
+ struct ftime tim;
+ #else
+ #ifdef IS_SYSV
+@@ -2672,7 +2689,7 @@ static int copy(ff, len)
+ return(-1);
+ }
+ if (op & APPEND)
+- lseek(t, 0L, 2);
++ lseek(t, (off_t)0, SEEK_END);
+ #ifdef IS_MSDOS
+ if (op & ZAPPEND && filelength(t) != 0) {
+ if (lseek(t, -1L, 1) == -1L || read(t, &c, 1) != 1) {
+@@ -2684,10 +2701,10 @@ static int copy(ff, len)
+ lseek(t, -1L, 1);
+ }
+ #endif
+- if ((op & APPEND) && len != -1L) {
++ if ((op & APPEND) && len != (off_t)-1) {
+ while (
+ len != 0 &&
+- (k = read(f, buf, len > BUFSIZE ? BUFSIZE : (unsigned)len)) > 0 &&
++ (k = read(f, buf, (len > BUFSIZE) ? BUFSIZE : (size_t)len)) > 0 &&
+ write(t, buf, k) == k
+ )
+ len -= k;
+@@ -2711,7 +2728,9 @@ static int copy(ff, len)
+ tim.modtime = fstat.st_mtime,
+ #else
+ tim[0].tv_sec = fstat.st_atime,
++ tim[0].tv_usec = 0,
+ tim[1].tv_sec = fstat.st_mtime,
++ tim[1].tv_usec = 0,
+ #endif
+ utimes(fullrep, tim)
+ )
+Index: mmv/Makefile
+===================================================================
+--- mmv.orig/Makefile 2012-09-16 18:24:31.375886230 +0200
++++ mmv/Makefile 2012-09-16 18:24:46.260122528 +0200
+@@ -1,16 +1,16 @@
+ # Possible defines in CONF:
+ # IS_MSDOS IS_SYSV IS_V7 IS_BSD HAS_DIRENT HAS_RENAME MV_DIR
+
+-CC =gcc -traditional
++CC =gcc
+ LD =$(CC)
+ CONF =-DIS_SYSV -DHAS_DIRENT -DHAS_RENAME
+-CFLAGS =-O2 -m486 $(CONF)
++CFLAGS =-O2 $(CONF)
+ LDFLAGS =-s -N
+
+ #IBIN =$(LOCAL)$(ARCH)/bin
+ #IMAN =$(LOCAL)$(ANY)/man
+ IBIN=$(DESTDIR)/usr/bin/
+-IMAN=$(DESTDIR)/usr/man/
++IMAN=$(DESTDIR)/usr/share/man/
+
+ mmv: mmv.o
+
diff --git a/var/spack/repos/builtin/packages/mmv/utime.diff b/var/spack/repos/builtin/packages/mmv/utime.diff
new file mode 100644
index 0000000000..1fcf49b8db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mmv/utime.diff
@@ -0,0 +1,21 @@
+--- mmv-1.01b.orig/mmv.c
++++ mmv-1.01b/mmv.c
+@@ -123,6 +123,7 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <sys/file.h>
++#include <utime.h>
+
+ extern char *getenv();
+ extern long lseek();
+@@ -192,10 +193,6 @@
+ #ifdef IS_SYSV
+
+ /* for System V and Version 7*/
+-struct utimbuf {
+- time_t actime;
+- time_t modtime;
+-};
+ #define utimes(f, t) utime((f), &(t))
+
+ #ifndef HAS_RENAME
diff --git a/var/spack/repos/builtin/packages/moab/package.py b/var/spack/repos/builtin/packages/moab/package.py
index 6ca3c70ba1..118b822d32 100644
--- a/var/spack/repos/builtin/packages/moab/package.py
+++ b/var/spack/repos/builtin/packages/moab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,10 +20,13 @@ class Moab(AutotoolsPackage):
git = "https://bitbucket.org/fathomteam/moab.git"
url = "http://ftp.mcs.anl.gov/pub/fathom/moab-5.0.0.tar.gz"
+ maintainers = ['vijaysm', 'iulian787']
+
version('develop', branch='develop')
version('master', branch='master')
- # Version 5.0.2 disappeared from FTP server. Instead set temporary version
- # of MoAB to 5.0.2 set to current head of the master branch.
+ version('5.2.1', sha256='60d31762be3f0e5c89416c764e844ec88dac294169b59a5ead3c316b50f85c29')
+ version('5.2.0', sha256='805ed3546deff39e076be4d1f68aba1cf0dda8c34ce43e1fc179d1aff57c5d5d')
+ version('5.1.0', sha256='0371fc25d2594589e95700739f01614f097b6157fb6023ed8995e582726ca658')
version('5.0.2', commit='01d05b1805236ef44da36f67eb2701095f2e33c7')
version('5.0.1', commit='6cc12bd4ae3fa7c9ad81c595e4d38fa84f0884be')
version('5.0.0', sha256='df5d5eb8c0d0dbb046de2e60aa611f276cbf007c9226c44a24ed19c570244e64')
diff --git a/var/spack/repos/builtin/packages/mochi-margo/package.py b/var/spack/repos/builtin/packages/mochi-margo/package.py
new file mode 100644
index 0000000000..9022f6e186
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mochi-margo/package.py
@@ -0,0 +1,56 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class MochiMargo(AutotoolsPackage):
+ """A library that provides Argobots bindings to the Mercury RPC
+ implementation."""
+
+ homepage = 'https://github.com/mochi-hpc/mochi-margo'
+ git = 'https://github.com/mochi-hpc/mochi-margo.git'
+ url = 'https://github.com/mochi-hpc/mochi-margo/archive/v0.9.tar.gz'
+
+ maintainers = ['carns', 'mdorier', 'fbudin69500', 'chuckatkins']
+
+ version('main', branch='main')
+ version('0.9.4', sha256='4292e083c8375ab07bc6dd0b3b1ea2ce9c9dd864c27ac7f07c6913dcccecc746')
+ version('0.9.3', sha256='1331423d4864349c3a9ec52b2114122659da310d5270fa1aea652e8ee48a0b3a')
+ version('0.9.2', sha256='de88cd725c8ff3ec63412f3f5ed22ad1a56cb367c31b842c816ce40cba777f7c')
+ version('0.9.1', sha256='3fe933f2d758ef23d582bc776e4f8cfae9bf9d0849b8b1f9d73ee024e218f2bc')
+ version('0.9', sha256='a24376f66450cc8fd7a43043e189f8efce5a931585e53c1e2e41894a3e99b517')
+ version('0.7', sha256='492d1afe2e7984fa638614a5d34486d2ff761f5599b5984efd5ae3f55cafde54')
+ version('0.7.2', sha256='0ca796abdb82084813a5de033d92364910b5ad1a0df135534d6b1c36ef627859')
+ version('0.7.1', sha256='eebbe02c47ed4c65ef1d4f23ffdc6a8aa2e2348ca6c51bfc3c4dfbf78fbfc30b')
+ version('0.6', sha256='56feb718da2b155d7277a7b10b669516ebffaa034f811f3665ceed7ad0f19d1b')
+ version('0.6.4', sha256='5ba1c72ee05aa9738d3dc4d6d01bd59790284c6c77b909c5d7756fe7049d6177')
+ version('0.6.3', sha256='5f373cd554edd15cead58bd5d30093bd88d45039d06ff7738eb18b3674287c76')
+ version('0.6.2', sha256='c6a6909439e1d3ba1a1693d8da66057eb7e4ec4b239c04bc7f19fc487c4c58da')
+ version('0.6.1', sha256='80d8d15d0917b5522c31dc2d83136de2313d50ca05c71c5e5ad83c483a3214b7')
+ version('0.5', sha256='d3b768b8300bc2cb87964e74c39b4e8eb9822d8a2e56fc93dc475ddcb1a868e3')
+ version('0.5.2', sha256='73be3acaf012a85a91ac62824c93f5ee1ea0ffe4c25779ece19723f4baf9547d')
+ version('0.5.1', sha256='6fdf58e189538e22341c8361ab069fc80fe5460a6869882359b295a890febad7')
+ version('0.4.7', sha256='596d83b11fb2bd9950fd99c9ab12c14915ab2cda233084ae40ecae1e6c584333')
+ version('0.4.6', sha256='b27447a2050ae61091bae3ff6b4d23a56153947f18847face9f98facbdb4e329')
+ version('0.4.5', sha256='b0d02f73edf180f2393f54c5a980620b8d6dcd42b90efdea6866861824fa49cf')
+ version('0.4.4', sha256='2e2e6e2a8a7d7385e2fe204c113cb149f30847f0b1f48ec8dd708a74280bd89e')
+ version('0.4.3', sha256='61a634d6983bee2ffa06e1e2da4c541cb8f56ddd9dd9f8e04e8044fb38657475')
+ version('0.4.2', sha256='91085e28f50e373b9616e1ae5c3c8d40a19a7d3776259592d8f361766890bcaa')
+
+ depends_on('json-c', when='@0.9:')
+ depends_on('autoconf@2.65:', type=("build"))
+ depends_on('m4', type=('build'))
+ depends_on('automake', type=("build"))
+ depends_on('libtool', type=("build"))
+ depends_on('pkgconfig', type=("build"))
+ depends_on('argobots@1.0:')
+ # "breadcrumb" support not available in mercury-1.0
+ depends_on('mercury@1.0.0:', type=("build", "link", "run"), when='@:0.5.1')
+ depends_on('mercury@2.0.0:', type=("build", "link", "run"), when='@0.5.2:')
+
+ def autoreconf(self, spec, prefix):
+ sh = which('sh')
+ sh('./prepare.sh')
diff --git a/var/spack/repos/builtin/packages/model-traits/package.py b/var/spack/repos/builtin/packages/model-traits/package.py
new file mode 100644
index 0000000000..980d6f5b8d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/model-traits/package.py
@@ -0,0 +1,56 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ModelTraits(CMakePackage):
+ """ Model setup and querying in C++. """
+
+ homepage = "https://github.com/jacobmerson/model-traits/"
+ url = "https://github.com/jacobmerson/model-traits/archive/refs/tags/v0.1.0.tar.gz"
+ git = "https://github.com/jacobmerson/model-traits.git"
+
+ maintainers = ['jacobmerson']
+
+ version('0.1.1', sha256='75af53b4f576071570fdcfa7a4ce150b935cf21368da41d16d8377c5b3b93713')
+ version('0.1.0', sha256='ff7c1c5be6977f1d3dc592e8b6c5bff5a8b7ea80d0f059d85c02300bdb8faf2c')
+ version('main', branch='main')
+
+ variant('yaml', default=True, description='build the Yaml IO backend')
+ variant('simmetrix', default=False, description='build the Simmetrix backend')
+ variant('pumi', default=False, description='build the pumi examples')
+
+ depends_on('yaml-cpp@0.6.3:', when='+yaml')
+ depends_on('catch2@3.0.0-preview3:', type='test')
+ depends_on('pumi', when='+pumi')
+ depends_on('simmetrix-simmodsuite', when='+simmetrix')
+ depends_on('fmt@7.1.3')
+ depends_on('cmake@3.14.0:', type='build')
+ depends_on('mpi', when='+simmetrix')
+ depends_on('mpi', when='+pumi')
+
+ def cmake_args(self):
+ args = [self.define('BUILD_TESTING', self.run_tests)]
+ if self.spec.satisfies('@:0.1.1'):
+ args.extend([self.define('BUILD_EXTERNAL', False),
+ self.define_from_variant('ENABLE_SCOREC', 'pumi'),
+ self.define_from_variant('ENABLE_SIMMETRIX', 'simmetrix'),
+ self.define_from_variant('ENABLE_YAML', 'yaml')])
+ else:
+ args.extend([self.define('MODEL_TRAITS_BUILD_EXTERNAL', False),
+ self.define_from_variant('MODEL_TRAITS_ENABLE_SCOREC', 'pumi'),
+ self.define_from_variant('MODEL_TRAITS_ENABLE_SIMMETRIX',
+ 'simmetrix'),
+ self.define_from_variant('MODEL_TRAITS_ENABLE_YAML', 'yaml')])
+ if "+simmetrix" in self.spec:
+ args.append(self.define('SIM_MPI', self.spec['mpi'].name +
+ self.spec['mpi'].version.string))
+ args.append(self.define('SKIP_SIMMETRIX_VERSION_CHECK', True))
+ if '+pumi' in self.spec or "+simmetrix" in self.spec:
+ args.extend([self.define("CMAKE_CXX_COMPILER", self.spec['mpi'].mpicxx),
+ self.define("CMAKE_C_COMPILER", self.spec['mpi'].mpicc),
+ self.define("CMAKE_Fortran_COMPILER", self.spec['mpi'].mpif77)])
+ return args
diff --git a/var/spack/repos/builtin/packages/modern-wheel/package.py b/var/spack/repos/builtin/packages/modern-wheel/package.py
index 9fae68cd0d..d56f0d9b24 100644
--- a/var/spack/repos/builtin/packages/modern-wheel/package.py
+++ b/var/spack/repos/builtin/packages/modern-wheel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -40,10 +40,7 @@ class ModernWheel(CMakePackage):
patch('add_virtual_destructor.patch')
def cmake_args(self):
- spec = self.spec
return [
- '-DBUILD_UNIT_TEST:BOOL={0}'.format(
- 'ON' if '+test' in spec else 'OFF'),
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('BUILD_UNIT_TEST', 'test'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
]
diff --git a/var/spack/repos/builtin/packages/modylas/package.py b/var/spack/repos/builtin/packages/modylas/package.py
index ada4bc7fed..026bf42f6e 100644
--- a/var/spack/repos/builtin/packages/modylas/package.py
+++ b/var/spack/repos/builtin/packages/modylas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class Modylas(AutotoolsPackage):
homepage = "https://www.modylas.org"
url = "file://{0}/MODYLAS_1.0.4.tar.gz".format(os.getcwd())
+ manual_download = True
version('1.0.4', 'e0b5cccf8e363c1182eced37aa31b06b1c5b1526da7d449a6142424ac4ea6311')
diff --git a/var/spack/repos/builtin/packages/mofem-cephas/package.py b/var/spack/repos/builtin/packages/mofem-cephas/package.py
index 24e8815084..be19e838a2 100644
--- a/var/spack/repos/builtin/packages/mofem-cephas/package.py
+++ b/var/spack/repos/builtin/packages/mofem-cephas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -69,8 +69,7 @@ class MofemCephas(CMakePackage):
'-DBOOST_DIR=%s' % spec['boost'].prefix])
# build tests
- options.append('-DMOFEM_BUILD_TESTS={0}'.format(
- 'ON' if self.run_tests else 'OFF'))
+ options.append(self.define('MOFEM_BUILD_TESTS', self.run_tests))
# variant packages
if '+adol-c' in spec:
@@ -87,6 +86,5 @@ class MofemCephas(CMakePackage):
# copy users modules, i.e. stand alone vs linked users modules
options.append(
- '-DSTAND_ALLONE_USERS_MODULES=%s' %
- ('YES' if '+copy_user_modules' in spec else 'NO'))
+ self.define_from_variant('STAND_ALLONE_USERS_MODULES', 'copy_user_modules'))
return options
diff --git a/var/spack/repos/builtin/packages/mofem-fracture-module/package.py b/var/spack/repos/builtin/packages/mofem-fracture-module/package.py
index 784bb9931c..5c77a31f4e 100644
--- a/var/spack/repos/builtin/packages/mofem-fracture-module/package.py
+++ b/var/spack/repos/builtin/packages/mofem-fracture-module/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -54,18 +54,17 @@ class MofemFractureModule(CMakePackage):
def cmake_args(self):
spec = self.spec
- source = self.stage.source_path
-
- options = []
# obligatory options
- options.extend([
- '-DWITH_SPACK=YES',
- '-DEXTERNAL_MODULES_BUILD=YES',
- '-DUM_INSTALL_BREFIX=%s' % spec['mofem-users-modules'].prefix,
- '-DEXTERNAL_MODULE_SOURCE_DIRS=%s' % source,
- '-DSTAND_ALLONE_USERS_MODULES=%s' %
- ('YES' if '+copy_user_modules' in spec else 'NO')])
+ options = [
+ self.define('WITH_SPACK', True),
+ self.define('EXTERNAL_MODULES_BUILD', True),
+ self.define('UM_INSTALL_BREFIX',
+ spec['mofem-users-modules'].prefix),
+ self.define('EXTERNAL_MODULE_SOURCE_DIRS', self.stage.source_path),
+ self.define_from_variant('STAND_ALLONE_USERS_MODULES',
+ 'copy_user_modules')
+ ]
# Set module version
if self.spec.version == Version('develop'):
@@ -80,8 +79,7 @@ class MofemFractureModule(CMakePackage):
'-DFM_VERSION_BUILD=%s' % self.spec.version[2]])
# build tests
- options.append('-DMOFEM_UM_BUILD_TESTS={0}'.format(
- 'ON' if self.run_tests else 'OFF'))
+ options.append(self.define('MOFEM_UM_BUILD_TESTS', self.run_tests))
return options
diff --git a/var/spack/repos/builtin/packages/mofem-minimal-surface-equation/package.py b/var/spack/repos/builtin/packages/mofem-minimal-surface-equation/package.py
index 58e0342080..659f1134da 100644
--- a/var/spack/repos/builtin/packages/mofem-minimal-surface-equation/package.py
+++ b/var/spack/repos/builtin/packages/mofem-minimal-surface-equation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -45,6 +45,7 @@ class MofemMinimalSurfaceEquation(CMakePackage):
def cmake_args(self):
spec = self.spec
+ from_variant = self.define_from_variant
source = self.stage.source_path
options = []
@@ -55,12 +56,10 @@ class MofemMinimalSurfaceEquation(CMakePackage):
'-DEXTERNAL_MODULES_BUILD=YES',
'-DUM_INSTALL_BREFIX=%s' % spec['mofem-users-modules'].prefix,
'-DEXTERNAL_MODULE_SOURCE_DIRS=%s' % source,
- '-DSTAND_ALLONE_USERS_MODULES=%s' %
- ('YES' if '+copy_user_modules' in spec else 'NO')])
+ from_variant('STAND_ALLONE_USERS_MODULES', 'copy_user_modules')])
# build tests
- options.append('-DMOFEM_UM_BUILD_TESTS={0}'.format(
- 'ON' if self.run_tests else 'OFF'))
+ options.append(self.define('MOFEM_UM_BUILD_TESTS', self.run_tests))
return options
diff --git a/var/spack/repos/builtin/packages/mofem-users-modules/package.py b/var/spack/repos/builtin/packages/mofem-users-modules/package.py
index f0acc98d94..b65299b50c 100644
--- a/var/spack/repos/builtin/packages/mofem-users-modules/package.py
+++ b/var/spack/repos/builtin/packages/mofem-users-modules/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -46,6 +46,7 @@ class MofemUsersModules(CMakePackage):
def cmake_args(self):
spec = self.spec
+ from_variant = self.define_from_variant
options = []
@@ -53,12 +54,10 @@ class MofemUsersModules(CMakePackage):
options.extend([
'-DMOFEM_DIR=%s' % spec['mofem-cephas'].prefix.users_module,
'-DWITH_SPACK=YES',
- '-DSTAND_ALLONE_USERS_MODULES=%s' %
- ('YES' if '+copy_user_modules' in spec else 'NO')])
+ from_variant('STAND_ALLONE_USERS_MODULES', 'copy_user_modules')])
# build tests
- options.append('-DMOFEM_UM_BUILD_TESTS={0}'.format(
- 'ON' if self.run_tests else 'OFF'))
+ options.append(self.define('MOFEM_UM_BUILD_TESTS', self.run_tests))
return options
diff --git a/var/spack/repos/builtin/packages/mokutil/package.py b/var/spack/repos/builtin/packages/mokutil/package.py
index 6b7c4571f3..cc1722da72 100644
--- a/var/spack/repos/builtin/packages/mokutil/package.py
+++ b/var/spack/repos/builtin/packages/mokutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/molcas/package.py b/var/spack/repos/builtin/packages/molcas/package.py
index bbe92073ad..f90559b826 100644
--- a/var/spack/repos/builtin/packages/molcas/package.py
+++ b/var/spack/repos/builtin/packages/molcas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/molden/for_aarch64.patch b/var/spack/repos/builtin/packages/molden/for_aarch64.patch
new file mode 100644
index 0000000000..8b2c6a8911
--- /dev/null
+++ b/var/spack/repos/builtin/packages/molden/for_aarch64.patch
@@ -0,0 +1,8 @@
+--- spack-src/src/xwin.c.bak 2020-09-18 19:13:33.000000000 +0900
++++ spack-src/src/xwin.c 2020-12-23 16:06:13.764560722 +0900
+@@ -1,4 +1,4 @@
+-#ifndef DARWIN
++#if 0
+ __asm__(".symver memcpy,memcpy@GLIBC_2.2.5");
+ __asm__(".symver memmove,memmove@GLIBC_2.2.5");
+ __asm__(".symver log,log@GLIBC_2.2.5");
diff --git a/var/spack/repos/builtin/packages/molden/package.py b/var/spack/repos/builtin/packages/molden/package.py
index e70bcb5632..3c8f79d953 100644
--- a/var/spack/repos/builtin/packages/molden/package.py
+++ b/var/spack/repos/builtin/packages/molden/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,12 @@ class Molden(MakefilePackage):
Ab Initio packages"""
homepage = "https://www3.cmbi.umcn.nl/molden/"
- url = "ftp://ftp.cmbi.ru.nl/pub/molgraph/molden/molden6.5.tar.gz"
+ url = "ftp://ftp.cmbi.umcn.nl/pub/molgraph/molden/molden6.5.tar.gz"
maintainers = ['dev-zero']
+ version('6.7', sha256='ebd73e8d95271eb82a1464a7eab28a042662483bbff6e6dcc7db0d1c9b2e4432')
+ version('6.6', sha256='2a2a7a116a336b607b50e8135bc2cca764c50e4a6896013ee3c6f582b741ee72')
version('6.5', sha256='192631a0996b2bfa9f6b0769f83da38a9e4f83b1db9358982b23d6a594b4e8d4')
depends_on('libx11')
@@ -24,6 +26,9 @@ class Molden(MakefilePackage):
depends_on('makedepend', type='build')
parallel = False # building in parallel is broken
+ build_targets = ['clean', 'all']
+
+ patch('for_aarch64.patch', when='target=aarch64:')
def edit(self, spec, prefix):
makefile = FileFilter('makefile')
@@ -53,5 +58,9 @@ class Molden(MakefilePackage):
makefile.filter(r'CFLAGS = (.*)', r'CFLAGS = {0} \1'.format(cflags))
makefile.filter(r'FFLAGS = (.*)', r'FFLAGS = {0} \1'.format(fflags))
+ if spec.target.family == 'aarch64':
+ makefile.filter(r'AFLAG=*', r'AFLAG=')
+ makefile.filter(r'rm -f src/', r'rm -f ')
+
def install(self, spec, prefix):
install_tree('bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/mongo-c-driver/package.py b/var/spack/repos/builtin/packages/mongo-c-driver/package.py
index a399cef77d..58f0a2cb94 100644
--- a/var/spack/repos/builtin/packages/mongo-c-driver/package.py
+++ b/var/spack/repos/builtin/packages/mongo-c-driver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class MongoCDriver(Package):
maintainers = ['michaelkuhn']
+ version('1.17.5', sha256='4b15b7e73a8b0621493e4368dc2de8a74af381823ae8f391da3d75d227ba16be')
version('1.17.0', sha256='90aa23a3f92be0a076fe0b903b68276a7973d4e472929943069f503d5ab50cb9')
version('1.16.2', sha256='0a722180e5b5c86c415b9256d753b2d5552901dc5d95c9f022072c3cd336887e')
version('1.9.5', sha256='4a4bd0b0375450250a3da50c050b84b9ba8950ce32e16555714e75ebae0b8019')
diff --git a/var/spack/repos/builtin/packages/mongo-cxx-driver/package.py b/var/spack/repos/builtin/packages/mongo-cxx-driver/package.py
index 7184995b5b..240152ca4a 100644
--- a/var/spack/repos/builtin/packages/mongo-cxx-driver/package.py
+++ b/var/spack/repos/builtin/packages/mongo-cxx-driver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mongodb-async-driver/package.py b/var/spack/repos/builtin/packages/mongodb-async-driver/package.py
index a2f6923b27..08ded87114 100644
--- a/var/spack/repos/builtin/packages/mongodb-async-driver/package.py
+++ b/var/spack/repos/builtin/packages/mongodb-async-driver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mono/package.py b/var/spack/repos/builtin/packages/mono/package.py
index 8b4e36b2b6..80ab3c3db8 100644
--- a/var/spack/repos/builtin/packages/mono/package.py
+++ b/var/spack/repos/builtin/packages/mono/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/montage/package.py b/var/spack/repos/builtin/packages/montage/package.py
index e663fb418c..08c8253ae6 100644
--- a/var/spack/repos/builtin/packages/montage/package.py
+++ b/var/spack/repos/builtin/packages/montage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/moosefs/package.py b/var/spack/repos/builtin/packages/moosefs/package.py
index c74de5a723..e2eab22f02 100644
--- a/var/spack/repos/builtin/packages/moosefs/package.py
+++ b/var/spack/repos/builtin/packages/moosefs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,3 +22,8 @@ class Moosefs(AutotoolsPackage):
version('3.0.105', sha256='12a5bb265d774da8fc6f051c51de08105ddeaa162b2d972d491caa542e01164f')
version('3.0.104', sha256='b3209ecd8366038ba898c4642dd6fdf2fa5d50a37345f01ed209e078700db5bb')
version('3.0.103', sha256='c5f1f6f78c2b7d8d6563000deed704ead3deac77279cb13f9f16d7ee56ee7ff7')
+
+ def configure_args(self):
+ args = ["--with-systemdsystemunitdir=" +
+ self.spec['moosefs'].prefix.lib.systemd.system]
+ return args
diff --git a/var/spack/repos/builtin/packages/moreutils/package.py b/var/spack/repos/builtin/packages/moreutils/package.py
index 96e081c92a..04131a213e 100644
--- a/var/spack/repos/builtin/packages/moreutils/package.py
+++ b/var/spack/repos/builtin/packages/moreutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,11 +16,13 @@ class Moreutils(MakefilePackage):
maintainers = ['matthiasdiener']
+ version('0.65', sha256='ba0cfaa1ff6ead2b15c62a67292de66a366f9b815a09697b54677f7e15f5a2b2')
version('0.63', sha256='01f0b331e07e62c70d58c2dabbb68f5c4ddae4ee6f2d8f070fd1e316108af72c')
depends_on('perl', type='build')
depends_on('docbook-xsl', type='build')
depends_on('libxml2', type='build')
+ depends_on('libxslt', type='build')
def edit(self, spec, prefix):
isutf8_makefile = FileFilter('is_utf8/Makefile')
diff --git a/var/spack/repos/builtin/packages/mosh/package.py b/var/spack/repos/builtin/packages/mosh/package.py
index f741279159..33d4cb435c 100644
--- a/var/spack/repos/builtin/packages/mosh/package.py
+++ b/var/spack/repos/builtin/packages/mosh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mothur/package.py b/var/spack/repos/builtin/packages/mothur/package.py
index 4e25a4dd3e..24e22dfa1b 100644
--- a/var/spack/repos/builtin/packages/mothur/package.py
+++ b/var/spack/repos/builtin/packages/mothur/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/motif/package.py b/var/spack/repos/builtin/packages/motif/package.py
index c64d35fc43..8491244146 100644
--- a/var/spack/repos/builtin/packages/motif/package.py
+++ b/var/spack/repos/builtin/packages/motif/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/motioncor2/package.py b/var/spack/repos/builtin/packages/motioncor2/package.py
index 8ef8a5719f..a689bbb102 100644
--- a/var/spack/repos/builtin/packages/motioncor2/package.py
+++ b/var/spack/repos/builtin/packages/motioncor2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mount-point-attributes/package.py b/var/spack/repos/builtin/packages/mount-point-attributes/package.py
index 3ab6808c3e..18696e1f01 100644
--- a/var/spack/repos/builtin/packages/mount-point-attributes/package.py
+++ b/var/spack/repos/builtin/packages/mount-point-attributes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,11 @@ class MountPointAttributes(AutotoolsPackage):
homepage = "https://github.com/LLNL/MountPointAttributes"
url = 'https://github.com/LLNL/MountPointAttributes/files/2270601/mountpointattr-1.1.tar.gz'
+ git = "https://github.com/LLNL/MountPointAttributes.git"
+ maintainers = ['lee218llnl']
+ version('master', branch='master')
+ version('1.1.1', sha256='397de583a99e60aae8b4485d3decac6e23f50c658a6353fea149d6dd50d3ecee', url="https://github.com/LLNL/MountPointAttributes/releases/download/v1.1.1/mountpointattr-1.1.1.tar.gz")
version('1.1', sha256='bff84c75c47b74ea09b6cff949dd699b185ddba0463cb1ff39ab138003c96e02')
depends_on('autoconf', type='build')
diff --git a/var/spack/repos/builtin/packages/mozjs/package.py b/var/spack/repos/builtin/packages/mozjs/package.py
index 4ba1faaa6a..3558609374 100644
--- a/var/spack/repos/builtin/packages/mozjs/package.py
+++ b/var/spack/repos/builtin/packages/mozjs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,8 @@ class Mozjs(AutotoolsPackage):
depends_on('perl@5.6:', type='build')
depends_on('pkgconfig', type='build')
depends_on('python@2.7.3:2.8', type='build')
+ depends_on('zip', type='build')
+ depends_on('unzip', type='build')
depends_on('nspr', when='@:27')
depends_on('libffi@3.0.9:')
depends_on('readline', when='@17.0.0:')
@@ -34,7 +36,7 @@ class Mozjs(AutotoolsPackage):
patch('perl-bug.patch')
# Note: According to https://github.com/apache/couchdb-pkg/tree/master/js/rpm/SOURCES
# There is some patch for mozjs@1.8.5 to fix compile issue.
- # Patches required to fix the issue:https://bugzilla.mozilla.org/show_bug.cgi?id=638056
+ # Patches required to fix the issue:https://bugzilla.mozilla.org/show_bug.cgi?id=638056
patch('Bug-638056-Avoid-The-cacheFlush-support-is-missing-o.patch',
sha256='b1c869a65f5ebc10741d4631cc2e1e166c6ed53035cfa56bede55a4c19b7b118', when='@1.8.5')
patch('fix-811665.patch',
diff --git a/var/spack/repos/builtin/packages/mpark-variant/icpc.patch b/var/spack/repos/builtin/packages/mpark-variant/icpc.patch
new file mode 100644
index 0000000000..a155f2fa59
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpark-variant/icpc.patch
@@ -0,0 +1,33 @@
+From 2d933fe544bd5841e9016ab7e8066521ebe33f30 Mon Sep 17 00:00:00 2001
+From: sbolding <sbolding@lanl.gov>
+Date: Mon, 29 Mar 2021 19:13:28 -0600
+Subject: [PATCH] Apply patch for icpc
+
+icpc in some way utilizes the preprocessor of the associated "developer
+tools" used by the compiler. This leads to, in some cases, a
+preprocessor claiming support for `__tuple_element_packs`, even though
+icpc (as of version 21.1) can't actually parse such code. Just use the
+MPARK_TUPLE_ELEMENT_PACK impl with __icc until icpc supports it.
+
+Fixes #77
+---
+ include/mpark/config.hpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/mpark/config.hpp b/include/mpark/config.hpp
+index f85ffb55c..128fa9235 100644
+--- a/include/mpark/config.hpp
++++ b/include/mpark/config.hpp
+@@ -50,7 +50,7 @@
+ #define MPARK_BUILTIN_UNREACHABLE
+ #endif
+
+-#if __has_builtin(__type_pack_element)
++#if __has_builtin(__type_pack_element) && !(defined(__ICC))
+ #define MPARK_TYPE_PACK_ELEMENT
+ #endif
+
+--
+2.24.3 (Apple Git-128)
+
+
diff --git a/var/spack/repos/builtin/packages/mpark-variant/package.py b/var/spack/repos/builtin/packages/mpark-variant/package.py
index 67fd8249de..b18b54e635 100644
--- a/var/spack/repos/builtin/packages/mpark-variant/package.py
+++ b/var/spack/repos/builtin/packages/mpark-variant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,9 @@ from spack import *
class MparkVariant(CMakePackage):
"""C++17 `std::variant` for C++11/14/17"""
- homepage = "https://mpark.github.io/variant"
- url = "https://github.com/mpark/variant/archive/v1.3.0.tar.gz"
+ homepage = "https://github.com/mpark/variant"
+ url = "https://github.com/mpark/variant/archive/v1.4.0.tar.gz"
+ git = "https://github.com/mpark/variant.git"
maintainers = ['ax3l']
version('1.4.0', sha256='8f6b28ab3640b5d76d5b6664dda7257a4405ce59179220431b8fd196c79b2ecb')
@@ -18,6 +19,10 @@ class MparkVariant(CMakePackage):
# Ref.: https://github.com/mpark/variant/pull/73
patch('nvcc.patch', when='@:1.4.0')
+ # Ref.: https://github.com/mpark/variant/issues/60
+ patch('version.patch', when='@1.4.0')
+ # Ref.: https://github.com/mpark/variant/pull/78
+ patch('icpc.patch', when='@:1.4.0')
cxx11_msg = 'MPark.Variant needs a C++11-capable compiler. ' \
'See https://github.com/mpark/variant#requirements'
diff --git a/var/spack/repos/builtin/packages/mpark-variant/version.patch b/var/spack/repos/builtin/packages/mpark-variant/version.patch
new file mode 100644
index 0000000000..56db93c87e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpark-variant/version.patch
@@ -0,0 +1,11 @@
+--- ./CMakeLists.txt 2021-02-21 17:27:04.709115800 -0700
++++ ./CMakeLists.txt.new 2021-02-21 17:27:35.589115800 -0700
+@@ -7,7 +7,7 @@
+
+ cmake_minimum_required(VERSION 3.6.3)
+
+-project(MPark.Variant VERSION 1.3.0 LANGUAGES CXX)
++project(MPark.Variant VERSION 1.4.0 LANGUAGES CXX)
+
+ # Option.
+ set(MPARK_VARIANT_INCLUDE_TESTS "" CACHE STRING
diff --git a/var/spack/repos/builtin/packages/mpas-model/makefile.patch b/var/spack/repos/builtin/packages/mpas-model/makefile.patch
new file mode 100644
index 0000000000..a03f40f397
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpas-model/makefile.patch
@@ -0,0 +1,13 @@
+--- spack-src/Makefile.org 2021-01-06 10:11:15.852202444 +0900
++++ spack-src/Makefile 2021-01-06 10:35:16.191769328 +0900
+@@ -459,8 +459,10 @@
+ # Keep open the possibility of shared libraries in future with, e.g., .so suffix
+ #
+ ifneq ($(wildcard $(PIO_LIB)/libpio\.*), )
++ifneq ($(wildcard $(PIO_LIB)/libpio\.*),$(PIO_LIB)/libpio.settings)
+ LIBS += -lpio
+ endif
++endif
+ ifneq ($(wildcard $(PIO_LIB)/libpiof\.*), )
+ LIBS += -lpiof
+ endif
diff --git a/var/spack/repos/builtin/packages/mpas-model/package.py b/var/spack/repos/builtin/packages/mpas-model/package.py
new file mode 100644
index 0000000000..1a14b800f0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpas-model/package.py
@@ -0,0 +1,94 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class MpasModel(MakefilePackage):
+ """The Model for Prediction Across Scales (MPAS) is a collaborative
+ project for developing atmosphere, ocean and other earth-system
+ simulation components for use in climate, regional climate and weather
+ studies."""
+
+ homepage = "https://mpas-dev.github.io/"
+ url = "https://github.com/MPAS-Dev/MPAS-Model/archive/v7.0.tar.gz"
+
+ version('7.0', sha256='f898ce257e66cff9e29320458870570e55721d16cb000de7f2cc27de7fdef14f')
+ version('6.3', sha256='e7f1d9ebfeb6ada37d42a286aaedb2e69335cbc857049dc5c5544bb51e7a8db8')
+ version('6.2', sha256='2a81825a62a468bf5c56ef9d9677aa2eb88acf78d4f996cb49a7db98b94a6b16')
+
+ depends_on('mpi')
+ depends_on('parallelio')
+
+ patch('makefile.patch', when='@7.0')
+
+ parallel = False
+
+ resource(when='@6.2:6.3',
+ name='MPAS-Data',
+ git='https://github.com/MPAS-Dev/MPAS-Data.git',
+ commit='33561790de8b43087ab850be833f51a4e605f1bb')
+ resource(when='@7.0',
+ name='MPAS-Data',
+ git='https://github.com/MPAS-Dev/MPAS-Data.git',
+ tag='v7.0')
+
+ def target(self, model, action):
+ spec = self.spec
+ satisfies = spec.satisfies
+ fflags = [self.compiler.openmp_flag]
+ cppflags = ['-D_MPI']
+ if satisfies('%gcc'):
+ fflags.extend([
+ '-ffree-line-length-none',
+ '-fconvert=big-endian',
+ '-ffree-form',
+ '-fdefault-real-8',
+ '-fdefault-double-8',
+ ])
+ cppflags.append('-DUNDERSCORE')
+ elif satisfies('%fj'):
+ fflags.extend([
+ '-Free',
+ '-Fwide',
+ '-CcdRR8',
+ ])
+ cppflags.append('-DUNDERSCORE')
+ targets = [
+ 'FC_PARALLEL={0}'.format(spec['mpi'].mpifc),
+ 'CC_PARALLEL={0}'.format(spec['mpi'].mpicc),
+ 'CXX_PARALLEL={0}'.format(spec['mpi'].mpicxx),
+ 'FC_SERIAL={0}'.format(spack_fc),
+ 'CC_SERIAL={0}'.format(spack_cc),
+ 'CXX_SERIAL={0}'.format(spack_cxx),
+ 'CFLAGS_OMP={0}'.format(self.compiler.openmp_flag),
+ 'FFLAGS_OMP={0}'.format(' '.join(fflags)),
+ 'CPPFLAGS={0}'.format(' '.join(cppflags)),
+ 'PIO={0}'.format(spec['parallelio'].prefix),
+ 'NETCDF={0}'.format(spec['netcdf-c'].prefix),
+ 'NETCDFF={0}'.format(spec['netcdf-fortran'].prefix)
+ ]
+ if satisfies('^parallelio+pnetcdf'):
+ targets.append(
+ 'PNETCDF={0}'.format(spec['parallel-netcdf'].prefix)
+ )
+ targets.extend([
+ 'USE_PIO2=true', 'CPP_FLAGS=-D_MPI', 'OPENMP=true',
+ 'CORE={0}'.format(model), action
+ ])
+ return targets
+
+ def build(self, spec, prefix):
+ copy_tree(join_path('MPAS-Data', 'atmosphere'),
+ join_path('src', 'core_atmosphere', 'physics'))
+ make(*self.target('init_atmosphere', 'all'))
+ mkdir('bin')
+ copy('init_atmosphere_model', 'bin')
+ make(*self.target('init_atmosphere', 'clean'))
+ make(*self.target('atmosphere', 'all'))
+ copy('atmosphere_model', 'bin')
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/mpc/package.py b/var/spack/repos/builtin/packages/mpc/package.py
index adca4e3fcf..f5f84033f5 100644
--- a/var/spack/repos/builtin/packages/mpc/package.py
+++ b/var/spack/repos/builtin/packages/mpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpdecimal/package.py b/var/spack/repos/builtin/packages/mpdecimal/package.py
index a8ae10d5ff..2f0cbafbbd 100644
--- a/var/spack/repos/builtin/packages/mpdecimal/package.py
+++ b/var/spack/repos/builtin/packages/mpdecimal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpe2/package.py b/var/spack/repos/builtin/packages/mpe2/package.py
index 236b2550cc..88a477b644 100644
--- a/var/spack/repos/builtin/packages/mpe2/package.py
+++ b/var/spack/repos/builtin/packages/mpe2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpest/package.py b/var/spack/repos/builtin/packages/mpest/package.py
index 17787761fb..17df8ca3be 100644
--- a/var/spack/repos/builtin/packages/mpest/package.py
+++ b/var/spack/repos/builtin/packages/mpest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpfi/package.py b/var/spack/repos/builtin/packages/mpfi/package.py
new file mode 100644
index 0000000000..c87e0006b4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpfi/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Mpfi(AutotoolsPackage):
+ """Library for arbitrary precision interval arithmetic based on MPFR"""
+
+ # Notice: no simple way to deduct URL from version
+ homepage = "https://perso.ens-lyon.fr/nathalie.revol/software.html"
+
+ version('1.5.4', url='https://gforge.inria.fr/frs/download.php/file/38111/mpfi-1.5.4.tgz',
+ sha256='3b3938595d720af17973deaf727cfc0dd41c8b16c20adc103a970f4a43ae3a56')
+ version('1.5.3', url='https://gforge.inria.fr/frs/download.php/file/37331/mpfi-1.5.3.tar.bz2',
+ sha256='2383d457b208c6cd3cf2e66b69c4ce47477b2a0db31fbec0cd4b1ebaa247192f')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('texinfo', type='build')
+ depends_on('gmp', type=('build', 'link'))
+ depends_on('mpfr', type=('build', 'link'))
+
+ def configure_args(self):
+ args = ['--with-gmp=' + self.spec['gmp'].prefix,
+ '--with-mpfr=' + self.spec['mpfr'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/mpfr/package.py b/var/spack/repos/builtin/packages/mpfr/package.py
index fa97da76ed..b14913c01f 100644
--- a/var/spack/repos/builtin/packages/mpfr/package.py
+++ b/var/spack/repos/builtin/packages/mpfr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Mpfr(AutotoolsPackage, GNUMirrorPackage):
homepage = "https://www.mpfr.org/"
gnu_mirror_path = "mpfr/mpfr-4.0.2.tar.bz2"
+ version('4.1.0', sha256='feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926')
version('4.0.2', sha256='c05e3f02d09e0e9019384cdd58e0f19c64e6db1fd6f5ecf77b4b1c61ca253acc')
version('4.0.1', sha256='a4d97610ba8579d380b384b225187c250ef88cfe1d5e7226b89519374209b86b')
version('4.0.0', sha256='6aa31fbf3bd1f9f95bcfa241590a9d11cb0f874e2bb93b99c9e2de8eaea6d5fd')
@@ -31,6 +32,7 @@ class Mpfr(AutotoolsPackage, GNUMirrorPackage):
depends_on('libtool', type='build')
depends_on('m4', type='build')
depends_on('autoconf-archive', when='@4.0.2:', type='build')
+ depends_on('texinfo', when='@4.1.0', type='build')
force_autoreconf = True
diff --git a/var/spack/repos/builtin/packages/mpi-bash/package.py b/var/spack/repos/builtin/packages/mpi-bash/package.py
index 0a3d9eb30a..e221beac84 100644
--- a/var/spack/repos/builtin/packages/mpi-bash/package.py
+++ b/var/spack/repos/builtin/packages/mpi-bash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpi/package.py b/var/spack/repos/builtin/packages/mpi/package.py
index 731a5ac731..c82af559b5 100644
--- a/var/spack/repos/builtin/packages/mpi/package.py
+++ b/var/spack/repos/builtin/packages/mpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpich/package.py b/var/spack/repos/builtin/packages/mpich/package.py
index d44d8a5a2d..4d6e9699e7 100644
--- a/var/spack/repos/builtin/packages/mpich/package.py
+++ b/var/spack/repos/builtin/packages/mpich/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,6 +24,8 @@ class Mpich(AutotoolsPackage):
executables = ['^mpichversion$']
version('develop', submodules=True)
+ version('3.4.1', sha256='8836939804ef6d492bcee7d54abafd6477d2beca247157d92688654d13779727')
+ version('3.4', sha256='ce5e238f0c3c13ab94a64936060cff9964225e3af99df1ea11b130f20036c24b')
version('3.3.2', sha256='4bfaf8837a54771d3e4922c84071ef80ffebddbb6971a006038d91ee7ef959b9')
version('3.3.1', sha256='fe551ef29c8eea8978f679484441ed8bb1d943f6ad25b63c235d4b9243d551e5')
version('3.3', sha256='329ee02fe6c3d101b6b30a7b6fb97ddf6e82b28844306771fa9dd8845108fa0b')
@@ -51,15 +53,16 @@ class Mpich(AutotoolsPackage):
)
variant(
'device',
- default='ch3',
+ default='ch4',
description='''Abstract Device Interface (ADI)
-implementation. The ch4 device is currently in experimental state''',
+implementation. The ch4 device is in experimental state for versions
+before 3.4.''',
values=('ch3', 'ch4'),
multi=False
)
variant(
'netmod',
- default='tcp',
+ default='ofi',
description='''Network module. Only single netmod builds are
supported. For ch3 device configurations, this presumes the
ch3:nemesis communication channel. ch3:sock is not supported by this
@@ -87,9 +90,10 @@ spack package at this time.''',
# Fix using an external hwloc
# See https://github.com/pmodels/mpich/issues/4038
# and https://github.com/pmodels/mpich/pull/3540
+ # landed in v3.4b1 v3.4a3
patch('https://github.com/pmodels/mpich/commit/8a851b317ee57366cd15f4f28842063d8eff4483.patch',
sha256='eb982de3366d48cbc55eb5e0df43373a45d9f51df208abf0835a72dc6c0b4774',
- when='@3.3 +hwloc')
+ when='@3.3:3.3.99 +hwloc')
# fix MPI_Barrier segmentation fault
# see https://lists.mpich.org/pipermail/discuss/2016-May/004764.html
@@ -159,10 +163,10 @@ spack package at this time.''',
depends_on("autoconf@2.67:", when='@develop', type=("build"))
# building with "+hwloc' also requires regenerating autotools files
- depends_on('automake@1.15:', when='@3.3 +hwloc', type="build")
- depends_on('libtool@2.4.4:', when='@3.3 +hwloc', type="build")
- depends_on("m4", when="@3.3 +hwloc", type="build"),
- depends_on("autoconf@2.67:", when='@3.3 +hwloc', type="build")
+ depends_on('automake@1.15:', when='@3.3:3.3.99 +hwloc', type="build")
+ depends_on('libtool@2.4.4:', when='@3.3:3.3.99 +hwloc', type="build")
+ depends_on("m4", when="@3.3:3.3.99 +hwloc", type="build"),
+ depends_on("autoconf@2.67:", when='@3.3:3.3.99 +hwloc', type="build")
# MPICH's Yaksa submodule requires python to configure
depends_on("python@3.0:", when="@develop", type="build")
@@ -183,6 +187,20 @@ spack package at this time.''',
conflicts('+pci', when='@:3.2~hydra')
conflicts('+libxml2', when='@:3.2~hydra')
+ # see https://github.com/pmodels/mpich/pull/5031
+ conflicts('%clang@:7', when='@3.4:')
+
+ @run_after('configure')
+ def patch_cce(self):
+ # Configure misinterprets output from the cce compiler
+ # Patching configure instead should be possible, but a first
+ # implementation failed in obscure ways that were not worth
+ # tracking down when this worked
+ if self.spec.satisfies('%cce'):
+ filter_file('-L -L', '', 'config.lt', string=True)
+ filter_file('-L -L', '', 'libtool', string=True)
+ filter_file('-L -L', '', 'config.status', string=True)
+
@classmethod
def determine_version(cls, exe):
output = Executable(exe)(output=str, error=str)
@@ -267,12 +285,9 @@ spack package at this time.''',
elif re.search(r'--with-pmix', output):
variants += ' pmi=pmix'
- match = re.search(r'MPICH Device:\s+(\S+)', output)
+ match = re.search(r'MPICH Device:\s+(ch3|ch4)', output)
if match:
- if match.group(1) == 'ch3:nemesis':
- variants += ' device=ch3'
- else:
- variants += ' device=' + match.group(1)
+ variants += ' device=' + match.group(1)
match = re.search(r'--with-device=ch.\S+(ucx|ofi|mxm|tcp)', output)
if match:
@@ -296,6 +311,8 @@ spack package at this time.''',
# Same fix but for macOS - avoids issue #17934
if self.spec.satisfies('%apple-clang@11:'):
env.set('FFLAGS', '-fallow-argument-mismatch')
+ if self.spec.satisfies('%clang@11:'):
+ env.set('FFLAGS', '-fallow-argument-mismatch')
def setup_run_environment(self, env):
# Because MPI implementations provide compilers, they have to add to
@@ -304,6 +321,10 @@ spack package at this time.''',
# Cray MPIs always have cray in the module name, e.g. "cray-mpich"
external_modules = self.spec.external_modules
if external_modules and 'cray' in external_modules[0]:
+ # This is intended to support external MPICH instances registered
+ # by Spack on Cray machines prior to a879c87; users defining an
+ # external MPICH entry for Cray should generally refer to the
+ # "cray-mpich" package
env.set('MPICC', spack_cc)
env.set('MPICXX', spack_cxx)
env.set('MPIF77', spack_fc)
@@ -351,7 +372,7 @@ spack package at this time.''',
"""Not needed usually, configure should be already there"""
# If configure exists nothing needs to be done
if (os.path.exists(self.configure_abs_path) and
- not spec.satisfies('@3.3 +hwloc')):
+ not spec.satisfies('@3.3:3.3.99 +hwloc')):
return
# Else bootstrap with autotools
bash = which('bash')
diff --git a/var/spack/repos/builtin/packages/mpifileutils/package.py b/var/spack/repos/builtin/packages/mpifileutils/package.py
index e06f36ec54..6385f9270e 100644
--- a/var/spack/repos/builtin/packages/mpifileutils/package.py
+++ b/var/spack/repos/builtin/packages/mpifileutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,7 @@ class Mpifileutils(Package):
git = "https://github.com/hpc/mpifileutils.git"
version('develop', branch='master')
+ version('0.11', sha256='f5dc1b39077b3c04f79b2c335c4fd80306f8c57ecfbcacbb82cf532caf02b5fd')
version('0.10.1', sha256='4c8409ef4140f6f557d0e93f0c1267baf5d893c203b29fb7a33d9bc3c5a5d25c')
version('0.10', sha256='5a71a9acd9841c3c258fc0eaea942f18abcb40098714cc90462b57696c07e3c5')
version('0.9.1', sha256='15a22450f86b15e7dc4730950b880fda3ef6f59ac82af0b268674d272aa61c69')
@@ -38,7 +39,17 @@ class Mpifileutils(Package):
depends_on('dtcmp@1.0.3', when='@:0.7')
depends_on('dtcmp@1.1.0:', when='@0.8:')
+ # fixes were added to libarchive somewhere between 3.1.2 and 3.5.0
+ # which helps with file names that start with "._", bumping to newer
+ # libarchive, but in a way that does not disrupt older mpiFileUtils installs
depends_on('libarchive')
+ depends_on('libarchive@3.5.1:', when='@0.11:')
+
+ depends_on('bzip2')
+
+ depends_on('libcap')
+
+ depends_on('openssl')
depends_on('cmake@3.1:', when='@0.9:', type='build')
diff --git a/var/spack/repos/builtin/packages/mpilander/package.py b/var/spack/repos/builtin/packages/mpilander/package.py
index 9b72915180..ce154f1251 100644
--- a/var/spack/repos/builtin/packages/mpilander/package.py
+++ b/var/spack/repos/builtin/packages/mpilander/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,10 +37,8 @@ class Mpilander(CMakePackage):
def cmake_args(self):
args = [
# tests and examples
- '-DBUILD_TESTING:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
- '-DBUILD_EXAMPLES:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
+ self.define('BUILD_TESTING', self.run_tests),
+ self.define('BUILD_EXAMPLES', self.run_tests),
]
return args
diff --git a/var/spack/repos/builtin/packages/mpileaks/package.py b/var/spack/repos/builtin/packages/mpileaks/package.py
index e30a1d62fb..18018d226e 100644
--- a/var/spack/repos/builtin/packages/mpileaks/package.py
+++ b/var/spack/repos/builtin/packages/mpileaks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpip/package.py b/var/spack/repos/builtin/packages/mpip/package.py
index a9336086c2..e705bda43d 100644
--- a/var/spack/repos/builtin/packages/mpip/package.py
+++ b/var/spack/repos/builtin/packages/mpip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpir/package.py b/var/spack/repos/builtin/packages/mpir/package.py
index b2ec566f49..5f6a54d402 100644
--- a/var/spack/repos/builtin/packages/mpir/package.py
+++ b/var/spack/repos/builtin/packages/mpir/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpix-launch-swift/package.py b/var/spack/repos/builtin/packages/mpix-launch-swift/package.py
index 801d298110..f5ee161777 100644
--- a/var/spack/repos/builtin/packages/mpix-launch-swift/package.py
+++ b/var/spack/repos/builtin/packages/mpix-launch-swift/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mpt/package.py b/var/spack/repos/builtin/packages/mpt/package.py
index b9634248c6..847edc0c38 100644
--- a/var/spack/repos/builtin/packages/mpt/package.py
+++ b/var/spack/repos/builtin/packages/mpt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mptensor/package.py b/var/spack/repos/builtin/packages/mptensor/package.py
new file mode 100644
index 0000000000..6106682279
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mptensor/package.py
@@ -0,0 +1,96 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Mptensor(CMakePackage):
+ """mptensor is parallel C++ libarary for tensor calculations.
+ It provides similar interfaces as Numpy and Scipy in Python."""
+
+ homepage = "https://github.com/smorita/mptensor"
+ url = "https://github.com/smorita/mptensor/archive/v0.3.0.tar.gz"
+
+ version('0.3.0', sha256='819395a91551bddb77958615042fcb935a4b67ee37f912b9a2ca5b49c71befae')
+
+ variant('mpi', default=False, description='Build with MPI library')
+ variant("doc", default=False, description="build documentation with Doxygen")
+
+ depends_on('cmake@3.6:', type='build')
+ depends_on('mpi', when="+mpi")
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('scalapack', when="+mpi")
+ depends_on('doxygen@:1.8.11', type="build", when="+doc")
+
+ test_requires_compiler = True
+
+ def cmake_args(self):
+ spec = self.spec
+ options = []
+
+ if "+mpi" in spec:
+ options.extend([
+ '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
+ '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
+ '-DSCALAPACK_LIBRARIES=%s' % spec['scalapack'].libs,
+ ])
+ else:
+ options.extend([
+ '-DCMAKE_C_COMPILER=%s' % spack_cc,
+ '-DCMAKE_CXX_COMPILER=%s' % spack_cxx,
+ '-DCMAKE_Fortran_COMPILER=%s' % spack_fc,
+ ])
+
+ blas = spec['blas'].libs
+ lapack = spec['lapack'].libs
+ options.extend([
+ '-DLAPACK_LIBRARIES=%s' % ';'.join(lapack),
+ '-DBLAS_LIBRARIES=%s' % ';'.join(blas),
+ self.define_from_variant('ENABLE_MPI', 'mpi'),
+ self.define_from_variant('BUILD_DOC', 'doc')
+ ])
+
+ return options
+
+ @run_after("install")
+ def setup_build_tests(self):
+ """Copy the build test files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources('.')
+
+ def test(self):
+ if "+mpi" not in self.spec:
+ print("Test of mptensor only runs with +mpi option.")
+ else:
+ with working_dir(join_path(self.install_test_root, "tests"), create=False):
+ make("clean")
+ makefile = FileFilter("Makefile")
+ makefile.filter("g++", "{0}".format(spack_cxx), string=True)
+
+ with working_dir(join_path(self.install_test_root), create=False):
+ makefile = FileFilter("Makefile.option")
+ makefile.filter("CXX =.*", "CXX ={0}".format(self.spec["mpi"].mpicxx))
+ makefile.filter(
+ "CXXFLAGS =.*", "CXXFLAGS ={0}".format(self.compiler.cxx11_flag)
+ )
+
+ math_libs = (
+ self.spec["scalapack"].libs
+ + self.spec["lapack"].libs
+ + self.spec["blas"].libs
+ )
+
+ with working_dir(join_path(self.install_test_root, "tests"), create=False):
+ make("LDFLAGS={0}".format(math_libs.ld_flags))
+
+ mpirun = self.spec["mpi"].prefix.bin.mpirun
+ mpiexec = Executable(mpirun)
+ mpiexec("-n", "1", "tensor_test.out")
+
+ # Test of mptensor has checker
+ # and checker is abort when check detect any errors.
+ print("Test of mptensor PASSED !")
diff --git a/var/spack/repos/builtin/packages/mrbayes/package.py b/var/spack/repos/builtin/packages/mrbayes/package.py
index bfc485eb31..c12c0df65a 100644
--- a/var/spack/repos/builtin/packages/mrbayes/package.py
+++ b/var/spack/repos/builtin/packages/mrbayes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mrbench/package.py b/var/spack/repos/builtin/packages/mrbench/package.py
index 168dea6b7f..673ae0c2ce 100644
--- a/var/spack/repos/builtin/packages/mrbench/package.py
+++ b/var/spack/repos/builtin/packages/mrbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mrchem/package.py b/var/spack/repos/builtin/packages/mrchem/package.py
index e6281df881..440cb6e94d 100644
--- a/var/spack/repos/builtin/packages/mrchem/package.py
+++ b/var/spack/repos/builtin/packages/mrchem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mrcpp/package.py b/var/spack/repos/builtin/packages/mrcpp/package.py
index f7f6d5e3d8..f4ee4ef494 100644
--- a/var/spack/repos/builtin/packages/mrcpp/package.py
+++ b/var/spack/repos/builtin/packages/mrcpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mrnet/package.py b/var/spack/repos/builtin/packages/mrnet/package.py
index f18286118e..64de446e50 100644
--- a/var/spack/repos/builtin/packages/mrnet/package.py
+++ b/var/spack/repos/builtin/packages/mrnet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mrtrix3/package.py b/var/spack/repos/builtin/packages/mrtrix3/package.py
index 4cb03770d6..34b6bf33f9 100644
--- a/var/spack/repos/builtin/packages/mrtrix3/package.py
+++ b/var/spack/repos/builtin/packages/mrtrix3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mscgen/package.py b/var/spack/repos/builtin/packages/mscgen/package.py
index a39bdc0e3c..c663e029bc 100644
--- a/var/spack/repos/builtin/packages/mscgen/package.py
+++ b/var/spack/repos/builtin/packages/mscgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/msgpack-c/package.py b/var/spack/repos/builtin/packages/msgpack-c/package.py
index d7bc4708d1..ca90981c40 100644
--- a/var/spack/repos/builtin/packages/msgpack-c/package.py
+++ b/var/spack/repos/builtin/packages/msgpack-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,7 +22,6 @@ class MsgpackC(CMakePackage):
args = [
"-DCMAKE_CXX_FLAGS=-Wno-implicit-fallthrough",
"-DCMAKE_C_FLAGS=-Wno-implicit-fallthrough",
- '-DMSGPACK_BUILD_TESTS:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF')
+ self.define('MSGPACK_BUILD_TESTS', self.run_tests)
]
return args
diff --git a/var/spack/repos/builtin/packages/mshadow/package.py b/var/spack/repos/builtin/packages/mshadow/package.py
index 235ed182fa..8b9ce4e277 100644
--- a/var/spack/repos/builtin/packages/mshadow/package.py
+++ b/var/spack/repos/builtin/packages/mshadow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/msmc/package.py b/var/spack/repos/builtin/packages/msmc/package.py
index eec3682753..205bed71ee 100644
--- a/var/spack/repos/builtin/packages/msmc/package.py
+++ b/var/spack/repos/builtin/packages/msmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/msmc2/package.py b/var/spack/repos/builtin/packages/msmc2/package.py
index efd0bec341..e5d8b0397a 100644
--- a/var/spack/repos/builtin/packages/msmc2/package.py
+++ b/var/spack/repos/builtin/packages/msmc2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mstk/package.py b/var/spack/repos/builtin/packages/mstk/package.py
index bb56729bd6..ac8bf2d2af 100644
--- a/var/spack/repos/builtin/packages/mstk/package.py
+++ b/var/spack/repos/builtin/packages/mstk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,11 +23,12 @@ class Mstk(CMakePackage):
homepage = "https://github.com/MeshToolkit/MSTK"
git = "https://github.com/MeshToolkit/MSTK"
- url = "https://github.com/MeshToolkit/MSTK/archive/3.3.1.tar.gz"
+ url = "https://github.com/MeshToolkit/MSTK/archive/3.3.6.tar.gz"
maintainers = ['raovgarimella', 'julienloiseau']
version('master', branch='master')
+ version('3.3.6', sha256='30041ee6f32d754e5d9b46db8f62609bb66d2686f8e6e16ad254f552849cb0f1')
version('3.3.5', sha256='64c976e12d1393aafd086ef941b176add6cfb963f463c33259596e7ef641cdd8')
version('3.3.4', sha256='bd34d31fc1fc468147a51e8d837d6bf9902ca8d38c7c0615e7f20968d4659da2')
version('3.3.3', sha256='54ea7929c9046915472f38367c83f75af634a6989ce0b89aad17fb9f4a25023e')
diff --git a/var/spack/repos/builtin/packages/mt-metis/package.py b/var/spack/repos/builtin/packages/mt-metis/package.py
index 805c86836c..1ed6ed421a 100644
--- a/var/spack/repos/builtin/packages/mt-metis/package.py
+++ b/var/spack/repos/builtin/packages/mt-metis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/multitail/package.py b/var/spack/repos/builtin/packages/multitail/package.py
index 78fbdcfd33..c270ced021 100644
--- a/var/spack/repos/builtin/packages/multitail/package.py
+++ b/var/spack/repos/builtin/packages/multitail/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/multitime/package.py b/var/spack/repos/builtin/packages/multitime/package.py
index 00510c5cbc..51399a0bc8 100644
--- a/var/spack/repos/builtin/packages/multitime/package.py
+++ b/var/spack/repos/builtin/packages/multitime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/multiverso/package.py b/var/spack/repos/builtin/packages/multiverso/package.py
index 35535eff51..e4941c256f 100644
--- a/var/spack/repos/builtin/packages/multiverso/package.py
+++ b/var/spack/repos/builtin/packages/multiverso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mumax/package.py b/var/spack/repos/builtin/packages/mumax/package.py
index e221ece6bc..74dbc63497 100644
--- a/var/spack/repos/builtin/packages/mumax/package.py
+++ b/var/spack/repos/builtin/packages/mumax/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,7 +29,7 @@ class Mumax(MakefilePackage, CudaPackage):
description='Use gnuplot for graphs')
depends_on('cuda')
- depends_on('go', type='build')
+ depends_on('go@:1.15', type='build')
depends_on('gnuplot', type='run', when='+gnuplot')
conflicts('~cuda', msg='mumax requires cuda')
diff --git a/var/spack/repos/builtin/packages/mummer/package.py b/var/spack/repos/builtin/packages/mummer/package.py
index e1edf39b8e..cfcdd7f927 100644
--- a/var/spack/repos/builtin/packages/mummer/package.py
+++ b/var/spack/repos/builtin/packages/mummer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mummer4/package.py b/var/spack/repos/builtin/packages/mummer4/package.py
index 2ba974dca9..b62701d2c5 100644
--- a/var/spack/repos/builtin/packages/mummer4/package.py
+++ b/var/spack/repos/builtin/packages/mummer4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Mummer4(AutotoolsPackage):
homepage = "https://github.com/mummer4/mummer"
url = "https://github.com/mummer4/mummer/releases/download/v4.0.0beta2/mummer-4.0.0beta2.tar.gz"
+ version('4.0.0rc1', sha256='85006adb2d6539c2f738c3e3bb14b58bb6f62cd6c6ca5ede884a87ae76e07d1d')
version('4.0.0beta2', sha256='cece76e418bf9c294f348972e5b23a0230beeba7fd7d042d5584ce075ccd1b93')
conflicts('%gcc@:4.7')
diff --git a/var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.2.patch b/var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.2.patch
new file mode 100644
index 0000000000..70acfe6d08
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.2.patch
@@ -0,0 +1,29 @@
+# This patchfile modifies src/Makefile to allow for extra libraries to be
+# added to lib[cdsz]mumps.so (e.g,. libmumps_common.so and possible libmpiseq.so)
+#
+# It also adds flags to produce PIC code
+
+diff -Naur spack-src/src/Makefile spack-src.patched/src/Makefile
+--- spack-src/src/Makefile 2019-04-18 05:55:07.000000000 -0400
++++ spack-src.patched/src/Makefile 2020-10-31 15:19:49.927297524 -0400
+@@ -182,7 +182,7 @@
+ $(RANLIB) $@
+
+ $(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT): $(OBJS_MOD) $(OBJS_OTHER)
+- $(AR)$@ $?
++ $(AR)$@ $? $(EXTRA_LIBS4MUMPS)
+ $(RANLIB) $@
+
+ # Dependencies between modules:
+@@ -378,9 +378,9 @@
+
+ .SUFFIXES: .c .F .o
+ .F.o:
+- $(FC) $(OPTF) $(INCS) $(IORDERINGSF) $(ORDERINGSF) -I. -I../include -c $*.F $(OUTF)$*.o
++ $(FC) $(OPTF) $(FC_PIC_FLAG) $(INCS) $(IORDERINGSF) $(ORDERINGSF) -I. -I../include -c $*.F $(OUTF)$*.o
+ .c.o:
+- $(CC) $(OPTC) $(INCS) -I../include $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c $(OUTC)$*.o
++ $(CC) $(OPTC) $(CC_PIC_FLAG) $(INCS) -I../include $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c $(OUTC)$*.o
+
+ $(ARITH)mumps_c.o: mumps_c.c
+ $(CC) $(OPTC) $(INCS) $(CDEFS) -DMUMPS_ARITH=MUMPS_ARITH_$(ARITH) \
diff --git a/var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.3.patch b/var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.3.patch
new file mode 100644
index 0000000000..eb88806723
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mumps/mumps.src-makefile.5.3.patch
@@ -0,0 +1,24 @@
+diff -Naur spack-src/src/Makefile spack-src.patched/src/Makefile
+--- spack-src/src/Makefile 2020-06-15 05:57:25.000000000 -0400
++++ spack-src.patched/src/Makefile 2021-01-08 14:43:28.655026604 -0500
+@@ -193,7 +193,7 @@
+ $(RANLIB) $@
+
+ $(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT): $(OBJS_MOD) $(OBJS_OTHER)
+- $(AR)$@ $?
++ $(AR)$@ $? $(EXTRA_LIBS4MUMPS)
+ $(RANLIB) $@
+
+ # Dependencies between modules:
+@@ -405,9 +405,9 @@
+
+ .SUFFIXES: .c .F .o
+ .F.o:
+- $(FC) $(OPTF) -I. -I../include $(INCS) $(IORDERINGSF) $(ORDERINGSF) -c $*.F $(OUTF)$*.o
++ $(FC) $(OPTF) $(FC_PIC_FLAG) -I. -I../include $(INCS) $(IORDERINGSF) $(ORDERINGSF) -c $*.F $(OUTF)$*.o
+ .c.o:
+- $(CC) $(OPTC) -I../include $(INCS) $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c $(OUTC)$*.o
++ $(CC) $(OPTC) $(CC_PIC_FLAG) -I../include $(INCS) $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c $(OUTC)$*.o
+
+ $(ARITH)mumps_c.o: mumps_c.c
+ $(CC) $(OPTC) -I../include $(INCS) $(CDEFS) -DMUMPS_ARITH=MUMPS_ARITH_$(ARITH) \
diff --git a/var/spack/repos/builtin/packages/mumps/package.py b/var/spack/repos/builtin/packages/mumps/package.py
index 51fe2a9f06..9b9346785e 100644
--- a/var/spack/repos/builtin/packages/mumps/package.py
+++ b/var/spack/repos/builtin/packages/mumps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,15 +11,18 @@ class Mumps(Package):
"""MUMPS: a MUltifrontal Massively Parallel sparse direct Solver"""
homepage = "http://mumps.enseeiht.fr"
- url = "http://mumps.enseeiht.fr/MUMPS_5.0.1.tar.gz"
+ url = "http://mumps.enseeiht.fr/MUMPS_5.3.5.tar.gz"
+ version('5.4.0', sha256='c613414683e462da7c152c131cebf34f937e79b30571424060dd673368bbf627')
+ version('5.3.5', sha256='e5d665fdb7043043f0799ae3dbe3b37e5b200d1ab7a6f7b2a4e463fd89507fa4')
version('5.3.3', sha256='27e7749ac05006bf8e81a457c865402bb72a42bf3bc673da49de1020f0f32011')
version('5.2.0', sha256='41f2c7cb20d69599fb47e2ad6f628f3798c429f49e72e757e70722680f70853f')
version('5.1.2', sha256='eb345cda145da9aea01b851d17e54e7eef08e16bfa148100ac1f7f046cd42ae9')
version('5.1.1', sha256='a2a1f89c470f2b66e9982953cbd047d429a002fab9975400cef7190d01084a06')
version('5.0.2', sha256='77292b204942640256097a3da482c2abcd1e0d5a74ecd1d4bab0f5ef6e60fe45')
# Alternate location if main server is down.
- # version('5.0.1', sha256='50355b2e67873e2239b4998a46f2bbf83f70cdad6517730ab287ae3aae9340a0', url='http://pkgs.fedoraproject.org/repo/pkgs/MUMPS/MUMPS_5.0.1.tar.gz/md5/b477573fdcc87babe861f62316833db0/MUMPS_5.0.1.tar.gz')
+ # version('5.0.1', sha256='50355b2e67873e2239b4998a46f2bbf83f70cdad6517730ab287ae3aae9340a0',
+ # url='http://pkgs.fedoraproject.org/repo/pkgs/MUMPS/MUMPS_5.0.1.tar.gz/md5/b477573fdcc87babe861f62316833db0/MUMPS_5.0.1.tar.gz')
version('5.0.1', sha256='50355b2e67873e2239b4998a46f2bbf83f70cdad6517730ab287ae3aae9340a0')
variant('mpi', default=True,
@@ -41,6 +44,11 @@ class Mumps(Package):
variant('int64', default=False,
description='Use int64_t/integer*8 as default index type')
variant('shared', default=True, description='Build shared libraries')
+ variant('openmp', default=True,
+ description='Compile MUMPS with OpenMP support')
+ variant('blr_mt', default=False,
+ description='Allow BLAS calls in OpenMP regions ' +
+ '(warning: might not be supported by all multithread BLAS)')
depends_on('scotch + esmumps', when='~ptscotch+scotch')
depends_on('scotch + esmumps ~ metis + mpi', when='+ptscotch')
@@ -53,13 +61,21 @@ class Mumps(Package):
patch('examples.patch', when='@5.1.1%clang^spectrum-mpi')
patch('gfortran8.patch', when='@5.1.2')
+ # The following patches src/Makefile to fix some dependency
+ # issues in lib[cdsz]mumps.so
+ patch('mumps.src-makefile.5.2.patch', when='@5.2.0 +shared')
+ patch('mumps.src-makefile.5.3.patch', when='@5.3.0: +shared')
+
+ conflicts('+parmetis', when='~mpi',
+ msg="You cannot use the parmetis variant without mpi")
+ conflicts('+parmetis', when='~metis',
+ msg="You cannot use the parmetis variant without metis")
+ conflicts('+ptscotch', when='~mpi',
+ msg="You cannot use the ptscotch variant without mpi")
+ conflicts('+blr_mt', when='~openmp',
+ msg="You cannot use the blr_mt variant without openmp")
def write_makefile_inc(self):
- if ('+parmetis' in self.spec or '+ptscotch' in self.spec) and (
- '+mpi' not in self.spec):
- raise RuntimeError(
- 'You cannot use the variants parmetis or ptscotch without mpi')
-
# The makefile variables LIBBLAS, LSCOTCH, LMETIS, and SCALAP are only
# used to link the examples, so if building '+shared' there is no need
# to explicitly link with the respective libraries because we make sure
@@ -74,6 +90,10 @@ class Mumps(Package):
lapack_blas.ld_flags if not shared else '']
orderings = ['-Dpord']
+ # All of the lib[cdsz]mumps.* libs depend on mumps_common
+ extra_libs4mumps = ['-L$(topdir)/lib', '-lmumps_common']
+ # and mumps_common depends on pord
+ extra_libs4mumps += ['-L$(topdir)/PORD/lib', '-lpord']
if '+ptscotch' in self.spec or '+scotch' in self.spec:
makefile_conf.extend([
@@ -86,7 +106,7 @@ class Mumps(Package):
if '+ptscotch' in self.spec:
orderings.append('-Dptscotch')
- if '+parmetis' in self.spec and '+metis' in self.spec:
+ if '+parmetis' in self.spec:
makefile_conf.extend([
"IMETIS = -I%s" % self.spec['parmetis'].prefix.include,
("LMETIS = -L%s -l%s -L%s -l%s" % (
@@ -126,42 +146,63 @@ class Mumps(Package):
# when building shared libs need -fPIC, otherwise
# /usr/bin/ld: graph.o: relocation R_X86_64_32 against `.rodata.str1.1'
# can not be used when making a shared object; recompile with -fPIC
- cpic = self.compiler.cc_pic_flag if '+shared' in self.spec else ''
- fpic = self.compiler.fc_pic_flag if '+shared' in self.spec else ''
+ cpic = self.compiler.cc_pic_flag if shared else ''
+ fpic = self.compiler.fc_pic_flag if shared else ''
# TODO: test this part, it needs a full blas, scalapack and
# partitionning environment with 64bit integers
+ # The mumps.src-makefile.patch wants us to set these PIC variables
+ makefile_conf.append('FC_PIC_FLAG={0}'.format(fpic))
+ makefile_conf.append('CC_PIC_FLAG={0}'.format(cpic))
+
opt_level = '3' if using_xl else ''
+ optc = ['-O{0}'.format(opt_level)]
+ optf = ['-O{0}'.format(opt_level)]
+ optl = ['-O{0}'.format(opt_level)]
+
+ if shared:
+ optc.append(cpic)
+ optf.append(fpic)
+ optl.append(cpic)
+
+ if not using_xlf:
+ optf.append('-DALLOW_NON_INIT')
+
if '+int64' in self.spec:
- if using_xlf:
- makefile_conf.append('OPTF = -O%s' % opt_level)
- else:
+ if not using_xlf:
# the fortran compilation flags most probably are
# working only for intel and gnu compilers this is
# perhaps something the compiler should provide
- makefile_conf.extend([
- 'OPTF = %s -O -DALLOW_NON_INIT %s' % (
- fpic,
- '-fdefault-integer-8' if using_gcc
- else '-i8'), # noqa
- ])
+ optf.append('-fdefault-integer-8' if using_gcc else '-i8')
- makefile_conf.extend([
- 'OPTL = %s -O%s' % (cpic, opt_level),
- 'OPTC = %s -O%s -DINTSIZE64' % (cpic, opt_level)
- ])
+ optc.append('-DINTSIZE64')
else:
if using_xlf:
- makefile_conf.append('OPTF = -O%s -qfixed' % opt_level)
- else:
- makefile_conf.append('OPTF = %s -O%s -DALLOW_NON_INIT' % (
- fpic, opt_level))
-
- makefile_conf.extend([
- 'OPTL = %s -O%s' % (cpic, opt_level),
- 'OPTC = %s -O%s' % (cpic, opt_level)
- ])
+ optf.append('-qfixed')
+
+ # As of version 5.2.0, MUMPS is able to take advantage
+ # of the GEMMT BLAS extension. MKL is currently the only
+ # known BLAS implementation supported.
+ if '@5.2.0: ^mkl' in self.spec:
+ optf.append('-DGEMMT_AVAILABLE')
+
+ if '+openmp' in self.spec:
+ optc.append(self.compiler.openmp_flag)
+ optf.append(self.compiler.openmp_flag)
+ optl.append(self.compiler.openmp_flag)
+
+ # Using BLR_MT might not be supported by all multithreaded BLAS
+ # (MKL is known to work) but it is not something we can easily
+ # check so we trust that the user knows what he/she is doing.
+ if '+blr_mt' in self.spec:
+ optf.append('-DBLR_MT')
+
+ makefile_conf.extend([
+ 'OPTC = {0}'.format(' '.join(optc)),
+ 'OPTF = {0}'.format(' '.join(optf)),
+ 'OPTL = {0}'.format(' '.join(optl))
+ ])
if '+mpi' in self.spec:
scalapack = self.spec['scalapack'].libs if not shared \
@@ -178,6 +219,8 @@ class Mumps(Package):
"FC = {0}".format(spack_fc),
"FL = {0}".format(spack_fc),
"MUMPS_TYPE = seq"])
+ # For sequential MUMPS, we need to link to a fake MPI lib
+ extra_libs4mumps += ['-L$(topdir)/libseq', '-lmpiseq']
# TODO: change the value to the correct one according to the
# compiler possible values are -DAdd_, -DAdd__ and/or -DUPPER
@@ -228,8 +271,8 @@ class Mumps(Package):
makefile_conf.extend([
'LIBEXT=.so',
'AR=link_cmd() { $(FL) -%s -Wl,-soname '
- '-Wl,%s/$(notdir $@) -o "$$@" %s; }; link_cmd ' %
- (build_shared_flag, prefix.lib, inject_libs),
+ '-Wl,$(notdir $@) -o "$$@" %s; }; link_cmd ' %
+ (build_shared_flag, inject_libs),
'RANLIB=ls'
])
# When building libpord, read AR from Makefile.inc instead of
@@ -247,6 +290,10 @@ class Mumps(Package):
'RANLIB = ranlib'
])
+ # The mumps.src-makefile.patch wants EXTRA_LIBS4MUMPS defined
+ makefile_conf.extend([
+ 'EXTRA_LIBS4MUMPS = {0}'.format(' '.join(extra_libs4mumps))
+ ])
makefile_inc_template = join_path(
os.path.dirname(self.module.__file__), 'Makefile.inc')
with open(makefile_inc_template, "r") as fh:
@@ -257,6 +304,15 @@ class Mumps(Package):
makefile_inc = '\n'.join(makefile_conf)
fh.write(makefile_inc)
+ def flag_handler(self, name, flags):
+ if name == 'fflags':
+ if self.spec.satisfies('%gcc@10:'):
+ if flags is None:
+ flags = []
+ flags.append('-fallow-argument-mismatch')
+
+ return (flags, None, None)
+
def install(self, spec, prefix):
self.write_makefile_inc()
@@ -268,7 +324,10 @@ class Mumps(Package):
['d', '+double'], ['z', '+complex+double']]
for ltr, v in letters_variants:
if v in spec:
- make(ltr + 'examples')
+ if self.spec.satisfies('@5.4:'):
+ make(ltr)
+ else:
+ make(ltr + 'examples')
install_tree('lib', prefix.lib)
install_tree('include', prefix.include)
diff --git a/var/spack/repos/builtin/packages/munge/package.py b/var/spack/repos/builtin/packages/munge/package.py
index 2b47716aa2..096c4ea860 100644
--- a/var/spack/repos/builtin/packages/munge/package.py
+++ b/var/spack/repos/builtin/packages/munge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/muparser/package.py b/var/spack/repos/builtin/packages/muparser/package.py
index 3f0018e9d1..9458328022 100644
--- a/var/spack/repos/builtin/packages/muparser/package.py
+++ b/var/spack/repos/builtin/packages/muparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/muscle/package.py b/var/spack/repos/builtin/packages/muscle/package.py
index 0f5d5f5097..b5bb536109 100644
--- a/var/spack/repos/builtin/packages/muscle/package.py
+++ b/var/spack/repos/builtin/packages/muscle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/muse/package.py b/var/spack/repos/builtin/packages/muse/package.py
index 4f1831416e..e9410ba938 100644
--- a/var/spack/repos/builtin/packages/muse/package.py
+++ b/var/spack/repos/builtin/packages/muse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/musl/package.py b/var/spack/repos/builtin/packages/musl/package.py
index 05ec4eb5ff..c120e57214 100644
--- a/var/spack/repos/builtin/packages/musl/package.py
+++ b/var/spack/repos/builtin/packages/musl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/muster/package.py b/var/spack/repos/builtin/packages/muster/package.py
index 42c369f8d8..54d74b19c2 100644
--- a/var/spack/repos/builtin/packages/muster/package.py
+++ b/var/spack/repos/builtin/packages/muster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mutationpp/package.py b/var/spack/repos/builtin/packages/mutationpp/package.py
index 94abb0fbc4..0435156c7a 100644
--- a/var/spack/repos/builtin/packages/mutationpp/package.py
+++ b/var/spack/repos/builtin/packages/mutationpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mvapich2-gdr/package.py b/var/spack/repos/builtin/packages/mvapich2-gdr/package.py
index 45f834fac1..c58490d825 100755
--- a/var/spack/repos/builtin/packages/mvapich2-gdr/package.py
+++ b/var/spack/repos/builtin/packages/mvapich2-gdr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,10 +17,11 @@ class Mvapich2Gdr(AutotoolsPackage):
"""
homepage = 'http://mvapich.cse.ohio-state.edu'
- url = 'http://mvapich.cse.ohio-state.edu/download/mvapich/spack-mirror/mvapich2-gdr/mvapich2-gdr-2.3.4.tar.gz'
+ url = 'http://mvapich.cse.ohio-state.edu/download/mvapich/spack-mirror/mvapich2-gdr/mvapich2-gdr-2.3.5.tar.gz'
- maintainers = ['nithintsk', 'harisubramoni']
+ maintainers = ['apreifsteck', 'nithintsk', 'harisubramoni']
+ version('2.3.5', sha256='bcfe8197875405af0ddbf6462e585efc21668108bec9b481fe53616ad36a98b4')
version('2.3.4', sha256='ed78101e6bb807e979213006ee5f20ff466369b01f96b6d1cf0c471baf7e35aa')
version('2.3.3', sha256='9b7b5dd235dbf85099fba3b6f1ccb49bb755923efed66ddc335921f44cb1b8a8')
@@ -71,12 +72,29 @@ class Mvapich2Gdr(AutotoolsPackage):
default=False
)
+ variant(
+ 'cuda',
+ description='Enable/Disable support for cuda',
+ default=True
+ )
+
+ variant(
+ 'rocm',
+ description='Enable/Disable support for ROCM',
+ default=False
+ )
+ conflicts('+rocm', when='@:2.3.4', msg='MVAPICH2-GDR only supports ROCm in version >= 2.3.5')
+ conflicts('+cuda +rocm', msg='MVAPICH2-GDR can only be built with either CUDA or ROCm')
+ conflicts('~cuda ~rocm', msg='MVAPICH2-GDR must be built with either CUDA or ROCm')
+
depends_on('bison@3.4.2', type='build')
depends_on('libpciaccess@0.13.5', when=(sys.platform != 'darwin'))
depends_on('libxml2@2.9.10')
- depends_on('cuda@9.2.88:10.2.89')
+ depends_on('cuda@9.2.88:11.1.1', when='+cuda')
depends_on('pmix@3.1.3', when='pmi_version=pmix')
+ depends_on('hip@3.9.0', when='+rocm')
+
filter_compiler_wrappers(
'mpicc', 'mpicxx', 'mpif77', 'mpif90', 'mpifort', relative_root='bin'
)
@@ -108,6 +126,14 @@ class Mvapich2Gdr(AutotoolsPackage):
if '+openacc' in spec:
opts.append('--enable-openacc')
+ if '+cuda' in spec:
+ opts.append('--enable-cuda')
+ opts.append('--with-cuda={0}'.format(spec['cuda'].prefix))
+
+ if '+rocm' in spec:
+ opts.append('--enable-hip=basic')
+ opts.append('--enable-rocm')
+
# See: http://slurm.schedmd.com/mpi_guide.html#mvapich2
if 'process_managers=slurm' in spec:
opts.append('--with-pm=slurm')
@@ -124,12 +150,6 @@ class Mvapich2Gdr(AutotoolsPackage):
'--with-pm=hydra',
'--with-pbs=/opt/pbs'
])
- if '~mcast' in spec:
- opts.append('--disable-mcast')
- if '+core_direct' in spec:
- opts.append('--with-core-direct')
- if '+openacc' in spec:
- opts.append('--enable-openacc')
elif 'process_managers=jsrun' in spec:
opts.append([
@@ -184,8 +204,7 @@ class Mvapich2Gdr(AutotoolsPackage):
]
def configure_args(self):
- args = ['--enable-cuda',
- '--disable-hybrid',
+ args = ['--disable-hybrid',
'--with-ch3-rank-bits=32',
'--disable-gl',
'--without-hydra-ckpointlib',
diff --git a/var/spack/repos/builtin/packages/mvapich2/package.py b/var/spack/repos/builtin/packages/mvapich2/package.py
index 3031082ee7..9c5ea4f429 100644
--- a/var/spack/repos/builtin/packages/mvapich2/package.py
+++ b/var/spack/repos/builtin/packages/mvapich2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,15 +13,17 @@ class Mvapich2(AutotoolsPackage):
networks (InfiniBand, Omni-Path, Ethernet/iWARP, and RoCE) and computing
platforms (x86 (Intel and AMD), ARM and OpenPOWER)"""
- homepage = "http://mvapich.cse.ohio-state.edu/"
- url = "http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-2.3.4.tar.gz"
+ homepage = "http://mvapich.cse.ohio-state.edu/userguide/userguide_spack/"
+ url = "http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-2.3.6.tar.gz"
list_url = "http://mvapich.cse.ohio-state.edu/downloads/"
- maintainers = ['nithintsk', 'harisubramoni']
+ maintainers = ['natshineman', 'harisubramoni']
executables = ['^mpiname$']
# Prefer the latest stable release
+ version('2.3.6', sha256='b3a62f2a05407191b856485f99da05f5e769d6381cd63e2fcb83ee98fc46a249')
+ version('2.3.5', sha256='f9f467fec5fc981a89a7beee0374347b10c683023c76880f92a1a0ad4b961a8c')
version('2.3.4', sha256='7226a45c7c98333c8e5d2888119cce186199b430c13b7b1dca1769909e68ea7a')
version('2.3.3', sha256='41d3261be57e5bc8aabf4e32981543c015c5443ff032a26f18205985e18c2b73')
version('2.3.2', sha256='30cc0d7bcaa075d204692f76bca4d65a539e0f661c7460ffa9f835d6249e1ebf')
@@ -83,7 +85,12 @@ class Mvapich2(AutotoolsPackage):
variant(
'fabrics',
- description='The fabric enabled for this build',
+ description='Select the fabric to be enabled for this build.'
+ 'If you have verbs (either from OFED or MOFED), PSM or PSM2 '
+ 'installed on the system already, you may need to setup external '
+ 'packages in the package.yaml file for rdma-core, psm or opa-psm2. '
+ 'This is recommended to avoid unexpected runtime failures. For '
+ 'more info, visit the homepage url.',
default='mrail',
values=(
'psm', 'psm2', 'sock', 'nemesisib', 'nemesis', 'mrail',
diff --git a/var/spack/repos/builtin/packages/mvapich2x/package.py b/var/spack/repos/builtin/packages/mvapich2x/package.py
index 01f82c057d..87084bbc95 100755
--- a/var/spack/repos/builtin/packages/mvapich2x/package.py
+++ b/var/spack/repos/builtin/packages/mvapich2x/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mxm/package.py b/var/spack/repos/builtin/packages/mxm/package.py
index ba8c0dfa1c..8fd002c45b 100644
--- a/var/spack/repos/builtin/packages/mxm/package.py
+++ b/var/spack/repos/builtin/packages/mxm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mxml/package.py b/var/spack/repos/builtin/packages/mxml/package.py
index 4fa90802a6..9a494928f3 100644
--- a/var/spack/repos/builtin/packages/mxml/package.py
+++ b/var/spack/repos/builtin/packages/mxml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/mxnet/cmake_cuda_flags.patch b/var/spack/repos/builtin/packages/mxnet/cmake_cuda_flags.patch
new file mode 100644
index 0000000000..8019f7d423
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mxnet/cmake_cuda_flags.patch
@@ -0,0 +1,14 @@
+https://github.com/apache/incubator-mxnet/pull/17645
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 437d01668..1049a53b2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -662,7 +662,7 @@ add_subdirectory("3rdparty/mshadow")
+
+ set(MXNET_INSTALL_TARGETS mxnet)
+ if(UNIX)
+- string(APPEND CMAKE_CUDA_FLAGS "${CUDA_ARCH_FLAGS_SPACES}")
++ string(APPEND CMAKE_CUDA_FLAGS " ${CUDA_ARCH_FLAGS_SPACES}")
+ # Create dummy file since we want an empty shared library before linking
+ set(DUMMY_SOURCE ${CMAKE_BINARY_DIR}/dummy.c)
+ file(WRITE ${DUMMY_SOURCE} "")
diff --git a/var/spack/repos/builtin/packages/mxnet/makefile.opencv.patch b/var/spack/repos/builtin/packages/mxnet/makefile.opencv.patch
deleted file mode 100644
index 45e04ea626..0000000000
--- a/var/spack/repos/builtin/packages/mxnet/makefile.opencv.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-commit 638527ffaa35ffb0bf88a32910b809df09432406
-Author: Toyohisa Kameyama <kameyama@riken.jp>
-Date: Mon May 18 11:58:00 2020 +0900
-
- Makefile bug fix for opencv4.
-
-diff --git a/Makefile b/Makefile
-index 51930c782..7f5d4da39 100644
---- a/Makefile
-+++ b/Makefile
-@@ -165,7 +165,23 @@ endif
- ifeq ($(USE_OPENCV), 1)
- CFLAGS += -DMXNET_USE_OPENCV=1
- ifneq ($(filter-out NONE, $(USE_OPENCV_INC_PATH)),)
-- CFLAGS += -I$(USE_OPENCV_INC_PATH)/include
-+ ifneq ($(wildcard $(USE_OPENCV_INC_PATH)/include/opencv4/opencv2/opencv*),)
-+ opencv_inc = -I$(USE_OPENCV_INC_PATH)/include/opencv4
-+ endif
-+ ifneq ($(wildcard $(USE_OPENCV_INC_PATH)/include/opencv2/opencv*),)
-+ opencv_inc = -I$(USE_OPENCV_INC_PATH)/include
-+ endif
-+ ifneq ($(wildcard $(USE_OPENCV_INC_PATH)/opencv4/opencv2/opencv*),)
-+ opencv_inc = -I$(USE_OPENCV_INC_PATH)/opencv4
-+ endif
-+ ifneq ($(wildcard $(USE_OPENCV_INC_PATH)/opencv2/opencv*),)
-+ opencv_inc = -I$(USE_OPENCV_INC_PATH)
-+ endif
-+ ifneq ($(filter-out NONE, $(opencv_inc)),)
-+ CFLAGS += $(opencv_inc)
-+ else
-+$(error Cannot determine OpenCV include path)
-+ endif
- ifeq ($(filter-out NONE, $(USE_OPENCV_LIB_PATH)),)
- $(error Please add the path of OpenCV shared library path into `USE_OPENCV_LIB_PATH`, when `USE_OPENCV_INC_PATH` is not NONE)
- endif
diff --git a/var/spack/repos/builtin/packages/mxnet/makefile.patch b/var/spack/repos/builtin/packages/mxnet/makefile.patch
deleted file mode 100644
index ceebe21447..0000000000
--- a/var/spack/repos/builtin/packages/mxnet/makefile.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From 22b64127d7acc9c255b007e120e2a721f4e136d2 Mon Sep 17 00:00:00 2001
-From: Jianwen WEI <weijianwen@gmail.com>
-Date: Fri, 18 Aug 2017 23:32:16 +0800
-Subject: [PATCH] Enable customize CUB MSHADOW PSLITE CUDA paths.
-
----
- Makefile | 26 +++++++++++++++++++++-----
- 1 file changed, 21 insertions(+), 5 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index c71cb13..a53d072 100644
---- a/Makefile
-+++ b/Makefile
-@@ -14,6 +14,19 @@ ifndef DMLC_CORE
- DMLC_CORE = $(ROOTDIR)/dmlc-core
- endif
-
-+ifndef MSHADOW_PATH
-+ MSHADOW_PATH = $(ROOTDIR)/mshadow
-+endif
-+ifneq ("$(wildcard $(MSHADOW_PATH)/include/mshadow/base.h)","")
-+MSHADOW_INC = $(MSHADOW_PATH)/include
-+else
-+MSHADOW_INC = $(MSHADOW_PATH)
-+endif
-+
-+ifndef PS_PATH
-+ PS_PATH = $(ROOTDIR)/ps-lite
-+endif
-+
- ifndef NNVM_PATH
- NNVM_PATH = $(ROOTDIR)/nnvm
- endif
-@@ -32,7 +45,7 @@ ifeq ($(USE_MKL2017), 1)
- export USE_MKLML = $(lastword $(RETURN_STRING))
- endif
-
--include mshadow/make/mshadow.mk
-+include $(MSHADOW_PATH)/make/mshadow.mk
- include $(DMLC_CORE)/make/dmlc.mk
-
- # all tge possible warning tread
-@@ -49,7 +62,7 @@ ifeq ($(DEBUG), 1)
- else
- CFLAGS += -O3 -DNDEBUG=1
- endif
--CFLAGS += -I$(ROOTDIR)/mshadow/ -I$(ROOTDIR)/dmlc-core/include -fPIC -I$(NNVM_PATH)/include -Iinclude $(MSHADOW_CFLAGS)
-+CFLAGS += -I$(MSHADOW_INC) -I$(DMLC_CORE)/include -fPIC -I$(NNVM_PATH)/include -Iinclude $(MSHADOW_CFLAGS)
- LDFLAGS = -pthread $(MSHADOW_LDFLAGS) $(DMLC_LDFLAGS)
- ifeq ($(DEBUG), 1)
- NVCCFLAGS = -std=c++11 -Xcompiler -D_FORCE_INLINES -g -G -O0 -ccbin $(CXX) $(MSHADOW_NVCCFLAGS)
-@@ -125,8 +138,11 @@ ifneq ($(USE_CUDA_PATH), NONE)
- NVCC=$(USE_CUDA_PATH)/bin/nvcc
- endif
-
-+ifndef CUB_INCLUDE
-+ CUB_PATH = $(ROOTDIR)/cub
-+endif
-+
- # ps-lite
--PS_PATH=$(ROOTDIR)/ps-lite
- DEPS_PATH=$(shell pwd)/deps
- include $(PS_PATH)/make/ps.mk
- ifeq ($(USE_DIST_KVSTORE), 1)
-@@ -181,11 +197,11 @@ else
- endif
-
- # all dep
--LIB_DEP += $(DMLC_CORE)/libdmlc.a $(NNVM_PATH)/lib/libnnvm.a
-+LIB_DEP += $(DMLC_CORE)/lib/libdmlc.a $(NNVM_PATH)/lib/libnnvm.a
- ALL_DEP = $(OBJ) $(EXTRA_OBJ) $(PLUGIN_OBJ) $(LIB_DEP)
-
- ifeq ($(USE_CUDA), 1)
-- CFLAGS += -I$(ROOTDIR)/cub
-+ CFLAGS += -I$(CUB_INCLUDE) -I$(USE_CUDA_PATH)/include -I$(CUDNN_PATH)/include
- ALL_DEP += $(CUOBJ) $(EXTRA_CUOBJ) $(PLUGIN_CUOBJ)
- LDFLAGS += -lcuda -lcufft
- SCALA_PKG_PROFILE := $(SCALA_PKG_PROFILE)-gpu
---
-1.8.3.1
-
diff --git a/var/spack/repos/builtin/packages/mxnet/openblas-1.6.0.patch b/var/spack/repos/builtin/packages/mxnet/openblas-1.6.0.patch
new file mode 100644
index 0000000000..157b857c81
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mxnet/openblas-1.6.0.patch
@@ -0,0 +1,14 @@
+https://github.com/apache/incubator-mxnet/pull/19174
+--- a/CMakeLists.txt 2020-01-30 17:45:22.000000000 -0600
++++ b/CMakeLists.txt 2021-02-03 11:11:30.000000000 -0600
+@@ -446,7 +446,9 @@
+ if(USE_LAPACK)
+ message("USE_LAPACK is ON")
+ add_definitions(-DMXNET_USE_LAPACK=1)
+- if (NOT MSVC)
++ # BLAS=open case is handled in ChooseBlas.cmake
++ if(NOT MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Distribution"
++ AND NOT BLAS STREQUAL "Open" AND NOT BLAS STREQUAL "open")
+ list(APPEND mxnet_LINKER_LIBS lapack)
+ endif()
+ endif()
diff --git a/var/spack/repos/builtin/packages/mxnet/openblas-1.7.0.patch b/var/spack/repos/builtin/packages/mxnet/openblas-1.7.0.patch
new file mode 100644
index 0000000000..e143671a08
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mxnet/openblas-1.7.0.patch
@@ -0,0 +1,16 @@
+https://github.com/apache/incubator-mxnet/pull/19174
+--- a/CMakeLists.txt 2020-07-16 00:32:00.000000000 -0500
++++ b/CMakeLists.txt 2021-02-02 15:30:13.000000000 -0600
+@@ -446,9 +446,9 @@
+ if(USE_LAPACK)
+ message("USE_LAPACK is ON")
+ add_definitions(-DMXNET_USE_LAPACK=1)
+- # In the CMAKE_BUILD_TYPE="Distribution" case, we link against Blas libraries
+- # that already provide lapack symbols. Thus -llapack would be wrong.
+- if (NOT MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Distribution")
++ # BLAS=open case is handled in ChooseBlas.cmake
++ if(NOT MSVC AND NOT CMAKE_BUILD_TYPE STREQUAL "Distribution"
++ AND NOT BLAS STREQUAL "Open" AND NOT BLAS STREQUAL "open")
+ list(APPEND mxnet_LINKER_LIBS lapack)
+ endif()
+ endif()
diff --git a/var/spack/repos/builtin/packages/mxnet/package.py b/var/spack/repos/builtin/packages/mxnet/package.py
index 8ef5035c07..72cf4ec3ac 100644
--- a/var/spack/repos/builtin/packages/mxnet/package.py
+++ b/var/spack/repos/builtin/packages/mxnet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,120 +6,149 @@
from spack import *
-class Mxnet(MakefilePackage):
+class Mxnet(CMakePackage, CudaPackage):
"""MXNet is a deep learning framework
designed for both efficiency and flexibility."""
- homepage = "http://mxnet.io"
- url = "https://github.com/apache/incubator-mxnet/releases/download/1.3.0/apache-mxnet-src-1.3.0-incubating.tar.gz"
+ homepage = "https://mxnet.apache.org"
+ url = "https://archive.apache.org/dist/incubator/mxnet/1.7.0/apache-mxnet-src-1.7.0-incubating.tar.gz"
+ list_url = "https://mxnet.apache.org/get_started/download"
+ git = "https://github.com/apache/incubator-mxnet.git"
maintainers = ['adamjstewart']
-
+ import_modules = [
+ 'mxnet', 'mxnet.numpy_extension', 'mxnet.optimizer', 'mxnet.module',
+ 'mxnet.io', 'mxnet.cython', 'mxnet.ndarray', 'mxnet.gluon',
+ 'mxnet.symbol', 'mxnet._cy3', 'mxnet.contrib', 'mxnet.numpy',
+ 'mxnet._ffi', 'mxnet.image', 'mxnet.kvstore', 'mxnet.notebook',
+ 'mxnet._ctypes', 'mxnet.rnn', 'mxnet.ndarray.numpy_extension',
+ 'mxnet.ndarray.numpy', 'mxnet.gluon.nn', 'mxnet.gluon.model_zoo',
+ 'mxnet.gluon.contrib', 'mxnet.gluon.data', 'mxnet.gluon.rnn',
+ 'mxnet.gluon.model_zoo.vision', 'mxnet.gluon.contrib.nn',
+ 'mxnet.gluon.contrib.estimator', 'mxnet.gluon.contrib.cnn',
+ 'mxnet.gluon.contrib.data', 'mxnet.gluon.contrib.rnn',
+ 'mxnet.gluon.data.vision', 'mxnet.symbol.numpy_extension',
+ 'mxnet.symbol.numpy', 'mxnet.contrib.onnx',
+ 'mxnet.contrib.svrg_optimization', 'mxnet.contrib.amp',
+ 'mxnet.contrib.text', 'mxnet.contrib.onnx.mx2onnx',
+ 'mxnet.contrib.onnx.onnx2mx', 'mxnet.contrib.amp.lists',
+ 'mxnet._ffi._cy3', 'mxnet._ffi._ctypes'
+ ]
+
+ version('master', branch='master', submodules=True)
+ version('1.master', branch='v1.x', submodules=True)
+ version('1.8.0', sha256='95aff985895aba409c08d5514510ae38b88490cfb6281ab3a5ff0f5826c8db54')
+ version('1.7.0', sha256='1d20c9be7d16ccb4e830e9ee3406796efaf96b0d93414d676337b64bc59ced18')
version('1.6.0', sha256='01eb06069c90f33469c7354946261b0a94824bbaf819fd5d5a7318e8ee596def')
- version('1.3.0', sha256='c00d6fbb2947144ce36c835308e603f002c1eb90a9f4c5a62f4d398154eed4d2')
-
- variant('cuda', default=False, description='Enable CUDA support')
+ version('1.3.0', sha256='c00d6fbb2947144ce36c835308e603f002c1eb90a9f4c5a62f4d398154eed4d2', deprecated=True)
+
+ variant('build_type', default='Distribution',
+ description='CMake build type',
+ values=('Distribution', 'Debug', 'Release',
+ 'RelWithDebInfo', 'MinSizeRel'))
+ variant('cuda', default=True, description='Enable CUDA support')
+ variant('cudnn', default=True, description='Build with cudnn support')
+ variant('nccl', default=False, description='Use NVidia NCCL with CUDA')
variant('opencv', default=True, description='Enable OpenCV support')
variant('openmp', default=False, description='Enable OpenMP support')
- variant('profiler', default=False, description='Enable Profiler (for verification and debug only).')
+ variant('lapack', default=True, description='Build with lapack support')
+ variant('mkldnn', default=False, description='Build with MKL-DNN support')
variant('python', default=True, description='Install python bindings')
- depends_on('dmlc-core@20170508')
- depends_on('dmlc-core+openmp', when='+openmp')
- depends_on('dmlc-core~openmp', when='~openmp')
- depends_on('mshadow@20170721')
- depends_on('ps-lite@20170328')
- depends_on('nnvm~shared@20170418')
+ depends_on('cmake@3.13:', type='build')
+ depends_on('ninja', type='build')
+ depends_on('pkgconfig', when='@1.6.0', type='build')
depends_on('blas')
- depends_on('cudnn', when='+cuda')
- depends_on('cudnn', when='+cuda')
- depends_on('cub', when='+cuda')
- depends_on('opencv+core+imgproc+highgui+jpeg+png+tiff~eigen~ipp@3.0:3.4.99', when='@1.3.0 +opencv')
- depends_on('opencv+core+imgproc+highgui+jpeg+png+tiff~eigen~ipp@3.0:', when='+opencv')
-
- # python extensions
- depends_on('python@2.7:', type=('build', 'run'), when='+python')
- depends_on('py-setuptools', type='build', when='+python')
- depends_on('py-numpy@:1.15.0', type=('build', 'run'), when='@1.3.0 +python')
- depends_on('py-numpy@1.16:', type=('build', 'run'), when='@1.6.0 +python')
+ depends_on('cuda@:10.2.999', when='@:1.8.0')
+ depends_on('cuda@:11.3', when='@2.0.0:')
+ depends_on('cudnn', when='+cudnn')
+ depends_on('nccl', when='+nccl')
+ depends_on('opencv+core+highgui+imgproc+imgcodecs', when='+opencv')
+ depends_on('lapack', when='+lapack')
+ depends_on('onednn', when='+mkldnn')
+
+ # python/setup.py
extends('python', when='+python')
-
- patch('makefile.patch', when='@0.10:0.11')
- patch('makefile.opencv.patch', when='@1.6.0')
+ depends_on('python@2.7:2.8,3.4:', when='@:1.8.0+python', type=('build', 'run'))
+ depends_on('python@3.6:', when='@2.0.0:+python', type=('build', 'run'))
+ depends_on('py-contextvars', when='@2.0.0:+python ^python@3.6.0:3.6.999', type=('build', 'run'))
+ depends_on('py-setuptools', when='+python', type='build')
+ depends_on('py-cython', when='+python', type='build')
+ depends_on('py-numpy@1.17:', when='@2.0.0:+python', type=('build', 'run'))
+ depends_on('py-numpy@1.16.1:1.999', when='@1.6:1.8.0+python', type=('build', 'run'))
+ depends_on('py-numpy@1.8.2:1.15.0', when='@1.3.0+python', type=('build', 'run'))
+ depends_on('py-requests@2.20.0:2.999', when='@1.6:+python', type=('build', 'run'))
+ depends_on('py-requests@2.18.4:2.18.999', when='@1.3.0+python', type=('build', 'run'))
+ depends_on('py-graphviz@0.8.1:0.8.999', when='+python', type=('build', 'run'))
+
+ conflicts('+cudnn', when='~cuda')
+ conflicts('+nccl', when='~cuda')
+
+ patch('openblas-1.7.0.patch', when='@1.7.0:1.master')
+ patch('openblas-1.6.0.patch', when='@1.6.0')
+ patch('cmake_cuda_flags.patch', when='@1.6:1.7')
patch('parallell_shuffle.patch', when='@1.6.0')
- def build(self, spec, prefix):
- # copy template configuration file
- copy('make/config.mk', 'config.mk')
+ # python/setup.py assumes libs can be found in build directory
+ build_directory = 'build'
+ generator = 'Ninja'
- # remove compiler overrides
- filter_file('export CC = gcc', '', 'config.mk', string=True)
- filter_file('export CXX = g++', '', 'config.mk', string=True)
+ def setup_run_environment(self, env):
+ env.set('MXNET_LIBRARY_PATH', self.spec['mxnet'].libs[0])
- # add blas prefix to include paths
- filter_file(
- '-I$(NNVM_PATH)/include',
- '-I$(NNVM_PATH)/include -I%s/include' % spec['blas'].prefix,
- 'Makefile', string=True
- )
-
- # mxnet comes with its own version of nnvm and dmlc.
- # building it will fail if we use the spack paths
+ if self.spec.satisfies('+nccl ^nccl@2.1:'):
+ env.set('NCCL_LAUNCH_MODE', 'PARALLEL')
+ def cmake_args(self):
+ # https://mxnet.apache.org/get_started/build_from_source
args = [
- 'CC=%s' % self.compiler.cc,
- 'CXX=%s' % self.compiler.cxx,
- 'MSHADOW_PATH=%s' % spec['mshadow'].prefix,
- 'PS_PATH=%s' % spec['ps-lite'].prefix,
- 'USE_OPENMP=%s' % ('1' if '+openmp' in spec else '0'),
- 'USE_CUDA=%s' % ('1' if '+cuda' in spec else '0'),
- 'USE_CUDNN=%s' % ('1' if '+cuda' in spec else '0'),
- 'USE_OPENCV=%s' % ('1' if '+opencv' in spec else '0'),
- 'USE_PROFILER=%s' % ('1' if '+profiler' in spec else '0'),
+ self.define_from_variant('USE_CUDA', 'cuda'),
+ self.define_from_variant('USE_CUDNN', 'cudnn'),
+ self.define_from_variant('USE_OPENCV', 'opencv'),
+ self.define_from_variant('USE_OPENMP', 'openmp'),
+ self.define_from_variant('USE_LAPACK', 'lapack'),
]
-
- if '+opencv' in spec:
- if spec.satisfies('@1.3.0'):
- filter_file(
- '$(shell pkg-config --cflags opencv)',
- spec['opencv'].headers.include_flags,
- 'Makefile', string=True
- )
- filter_file(
- '$(filter-out -lopencv_ts, '
- '$(shell pkg-config --libs opencv))',
- spec['opencv'].libs.link_flags,
- 'Makefile', string=True
- )
- else:
- args.extend(
- ['USE_OPENCV_INC_PATH=' +
- spec['opencv'].headers.directories[0],
- 'USE_OPENCV_LIB_PATH=' +
- spec['opencv'].libs.directories[0]]
- )
-
- if 'openblas' in spec:
- args.extend(['USE_BLAS=openblas'])
- elif 'atlas' in spec or 'cblas' in spec:
- args.extend(['USE_BLAS=atlas'])
- else:
- args.extend(['USE_BLAS=blas'])
-
- if '+cuda' in spec:
- args.extend(['USE_CUDA_PATH=%s' % spec['cuda'].prefix,
- 'CUDNN_PATH=%s' % spec['cudnn'].prefix,
- 'CUB_INCLUDE=%s' % spec['cub'].prefix.include])
-
- make(*args)
-
- def install(self, spec, prefix):
- # mxnet is just a shared library -- no need to install a bin tree
-
- install_tree('include', prefix.include)
- install_tree('lib', prefix.lib)
-
- # install python bindings
- if '+python' in spec:
- python = which('python')
- python('python/setup.py', 'install', '--prefix={0}'.format(prefix))
+ if self.spec.satisfies('@:1.8.0'):
+ args.append(self.define_from_variant('USE_MKLDNN', 'mkldnn'))
+ if self.spec.satisfies('@2.0.0:'):
+ args.append(self.define_from_variant('USE_ONEDNN', 'mkldnn'))
+ args.append(self.define('USE_CUTENSOR', False))
+
+ if '+cuda' in self.spec:
+ if 'cuda_arch=none' not in self.spec:
+ cuda_arch = ';'.join('{0:.1f}'.format(float(i) / 10.0) for i
+ in self.spec.variants['cuda_arch'].value)
+ args.append(self.define('MXNET_CUDA_ARCH', cuda_arch))
+
+ args.append(self.define_from_variant('USE_NCCL', 'nccl'))
+
+ # Workaround for bug in GCC 8+ and CUDA 10 on PowerPC
+ args.append(self.define(
+ 'CMAKE_CUDA_FLAGS', self.compiler.cxx11_flag))
+
+ return args
+
+ @run_after('build')
+ def build_python(self):
+ if '+python' in self.spec:
+ with working_dir('python'):
+ setup_py('build')
+
+ @run_after('install')
+ def install_python(self):
+ if '+python' in self.spec:
+ with working_dir('python'):
+ setup_py('install', '--prefix={0}'.format(self.prefix),
+ '--single-version-externally-managed', '--root=/')
+
+ def test(self):
+ """Attempts to import modules of the installed package."""
+
+ if '+python' in self.spec:
+ # Make sure we are importing the installed modules,
+ # not the ones in the source directory
+ for module in self.import_modules:
+ self.run_test(self.spec['python'].command.path,
+ ['-c', 'import {0}'.format(module)],
+ purpose='checking import of {0}'.format(module),
+ work_dir='spack-test')
diff --git a/var/spack/repos/builtin/packages/mysql/package.py b/var/spack/repos/builtin/packages/mysql/package.py
index c84c311b56..a324a5b157 100644
--- a/var/spack/repos/builtin/packages/mysql/package.py
+++ b/var/spack/repos/builtin/packages/mysql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -81,7 +81,7 @@ class Mysql(CMakePackage):
# 8.0.19+
depends_on('boost@1.70.0 cxxstd=98', type='build', when='@8.0.19: cxxstd=98')
depends_on('boost@1.70.0 cxxstd=11', type='build', when='@8.0.19: cxxstd=11')
- depends_on('boost@1.70.0 cxxstd=11', type='build', when='@8.0.19: cxxstd=14')
+ depends_on('boost@1.70.0 cxxstd=14', type='build', when='@8.0.19: cxxstd=14')
depends_on('boost@1.70.0 cxxstd=17', type='build', when='@8.0.19: cxxstd=17')
# 8.0.16--8.0.18
depends_on('boost@1.69.0 cxxstd=98', type='build', when='@8.0.16:8.0.18 cxxstd=98')
@@ -117,6 +117,7 @@ class Mysql(CMakePackage):
depends_on('perl', type=['build', 'test'], when='@:7.99.99')
depends_on('bison@2.1:', type='build')
depends_on('m4', type='build', when='@develop platform=solaris')
+ depends_on('cyrus-sasl', when='@:5.7.999')
patch('fix-no-server-5.5.patch', level=1, when='@5.5.0:5.5.999')
diff --git a/var/spack/repos/builtin/packages/mysqlpp/package.py b/var/spack/repos/builtin/packages/mysqlpp/package.py
new file mode 100644
index 0000000000..8547cc11de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mysqlpp/package.py
@@ -0,0 +1,35 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Mysqlpp(AutotoolsPackage):
+ """MySQL++ is a C++ wrapper for MySQL and MariaDB C APIs. It is built on
+ the same principles as the Standard C++ Library to make dealing with the
+ database as easy as dealing with std containers. MySQL++ also provides
+ facilities that let you avoid the most repetitive sorts of SQL within your
+ own code, providing native C++ interfaces for these common tasks."""
+
+ homepage = "https://tangentsoft.com/mysqlpp/home"
+ url = "https://tangentsoft.com/mysqlpp/releases/mysql++-3.2.5.tar.gz"
+
+ version('3.2.5', sha256='839cfbf71d50a04057970b8c31f4609901f5d3936eaa86dab3ede4905c4db7a8')
+
+ depends_on('mysql-client')
+
+ def configure_args(self):
+ if '^mariadb-c-client' in self.spec:
+ args = [
+ '--with-mysql-include={0}'.format(
+ self.spec['mysql-client'].prefix.include.mariadb),
+ '--with-mysql-lib={0}'.format(
+ self.spec['mysql-client'].prefix.lib.mariadb),
+ ]
+ else:
+ args = [
+ '--with-mysql={0}'.format(self.spec['mysql-client'].prefix),
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/n2p2/interface-makefile.patch b/var/spack/repos/builtin/packages/n2p2/interface-makefile.patch
new file mode 100644
index 0000000000..f987c9cb54
--- /dev/null
+++ b/var/spack/repos/builtin/packages/n2p2/interface-makefile.patch
@@ -0,0 +1,18 @@
+--- a/src/interface/makefile
++++ b/src/interface/makefile
+@@ -45,10 +45,11 @@ lammps-nnp:
+ tar -xzf $(LAMMPS_VERSION).tar.gz && mv lammps-$(LAMMPS_VERSION) lammps-nnp
+ ln -s $(PROJECT_DIR)/../../ lammps-nnp/lib/nnp
+ cp -r ./LAMMPS/src/USER-NNP lammps-nnp/src/
+- sed -i "s/^CC .*$$/CC = $(PROJECT_MPICC)/" lammps-nnp/src/MAKE/Makefile.mpi
+- sed -i "s/^CCFLAGS .*$$/CCFLAGS = $(PROJECT_CFLAGS) $(PROJECT_CFLAGS_MPI)/" lammps-nnp/src/MAKE/Makefile.mpi
+- sed -i "s/^LINK .*$$/LINK = $(PROJECT_MPICC)/" lammps-nnp/src/MAKE/Makefile.mpi
+- sed -i "s/^LINKFLAGS .*$$/LINKFLAGS = $(PROJECT_CFLAGS) $(PROJECT_CFLAGS_MPI)/" lammps-nnp/src/MAKE/Makefile.mpi
++ sed -i "s/final(/final2(/g" lammps-nnp/src/hashlittle.cpp
++ sed -i "s|^CC .*$$|CC = $(PROJECT_MPICC)|" lammps-nnp/src/MAKE/Makefile.mpi
++ sed -i "s|^CCFLAGS .*$$|CCFLAGS = $(PROJECT_CFLAGS) $(PROJECT_CFLAGS_MPI)|" lammps-nnp/src/MAKE/Makefile.mpi
++ sed -i "s|^LINK .*$$|LINK = $(PROJECT_MPICC)|" lammps-nnp/src/MAKE/Makefile.mpi
++ sed -i "s|^LINKFLAGS .*$$|LINKFLAGS = $(PROJECT_CFLAGS) $(PROJECT_CFLAGS_MPI)|" lammps-nnp/src/MAKE/Makefile.mpi
+ if [ "$(MODE)" = "test" ]; then \
+ sed -i "/^CCFLAGS =/ s/$$/ $(PROJECT_DEBUG) $(PROJECT_TEST)/" lammps-nnp/src/MAKE/Makefile.mpi; \
+ sed -i "/^LINKFLAGS =/ s/$$/ $(PROJECT_DEBUG) $(PROJECT_TEST)/" lammps-nnp/src/MAKE/Makefile.mpi; \
diff --git a/var/spack/repos/builtin/packages/n2p2/interface-makefile211.patch b/var/spack/repos/builtin/packages/n2p2/interface-makefile211.patch
new file mode 100644
index 0000000000..e4317b3c12
--- /dev/null
+++ b/var/spack/repos/builtin/packages/n2p2/interface-makefile211.patch
@@ -0,0 +1,17 @@
+--- a/src/interface/makefile
++++ b/src/interface/makefile
+@@ -46,10 +46,10 @@ lammps-nnp:
+ tar -xzf $(LAMMPS_VERSION).tar.gz && mv lammps-$(LAMMPS_VERSION) lammps-nnp
+ ln -s $(PROJECT_DIR)/../../ lammps-nnp/lib/nnp
+ cp -r ./LAMMPS/src/USER-NNP lammps-nnp/src/
+- @sed -i.bak "s/^CC .*$$/CC = $(PROJECT_MPICC)/" lammps-nnp/src/MAKE/Makefile.mpi
+- @sed -i.bak "s/^CCFLAGS .*$$/CCFLAGS = $(PROJECT_CFLAGS) $(PROJECT_CFLAGS_MPI)/" lammps-nnp/src/MAKE/Makefile.mpi
+- @sed -i.bak "s/^LINK .*$$/LINK = $(PROJECT_MPICC)/" lammps-nnp/src/MAKE/Makefile.mpi
+- @sed -i.bak "s/^LINKFLAGS .*$$/LINKFLAGS = $(PROJECT_CFLAGS) $(PROJECT_CFLAGS_MPI)/" lammps-nnp/src/MAKE/Makefile.mpi
++ @sed -i.bak "s|^CC .*$$|CC = $(PROJECT_MPICC)|" lammps-nnp/src/MAKE/Makefile.mpi
++ @sed -i.bak "s|^CCFLAGS .*$$|CCFLAGS = $(PROJECT_CFLAGS) $(PROJECT_CFLAGS_MPI)|" lammps-nnp/src/MAKE/Makefile.mpi
++ @sed -i.bak "s|^LINK .*$$|LINK = $(PROJECT_MPICC)|" lammps-nnp/src/MAKE/Makefile.mpi
++ @sed -i.bak "s|^LINKFLAGS .*$$|LINKFLAGS = $(PROJECT_CFLAGS) $(PROJECT_CFLAGS_MPI)|" lammps-nnp/src/MAKE/Makefile.mpi
+ if [ "$(MODE)" = "test" ]; then \
+ sed -i.bak "/^CCFLAGS =/ s/$$/ $(LAMMPS_DEBUG) $(PROJECT_TEST)/" lammps-nnp/src/MAKE/Makefile.mpi; \
+ sed -i.bak "/^LINKFLAGS =/ s/$$/ $(LAMMPS_DEBUG) $(PROJECT_TEST)/" lammps-nnp/src/MAKE/Makefile.mpi; \
diff --git a/var/spack/repos/builtin/packages/n2p2/libnnp-makefile.patch b/var/spack/repos/builtin/packages/n2p2/libnnp-makefile.patch
new file mode 100644
index 0000000000..0405845a34
--- /dev/null
+++ b/var/spack/repos/builtin/packages/n2p2/libnnp-makefile.patch
@@ -0,0 +1,30 @@
+--- a/src/libnnp/makefile
++++ b/src/libnnp/makefile
+@@ -72,11 +72,11 @@ headers: version
+
+ version:
+ @$(eval GIT_VERSION = $(shell git describe --tags --always))
+- @sed -i.bak -E "s/(NNP_GIT_VERSION) .*/\1 \"$(GIT_VERSION)\"/" version.h
++ @sed -i.bak -E "s|(NNP_GIT_VERSION) .*|\1 \"$(GIT_VERSION)\"|" version.h
+ @$(eval GIT_REV = $(shell git rev-parse HEAD))
+- @sed -i.bak -E "s/(NNP_GIT_REV) .*/\1 \"$(GIT_REV)\"/" version.h
++ @sed -i.bak -E "s|(NNP_GIT_REV) .*|\1 \"$(GIT_REV)\"|" version.h
+ @$(eval GIT_BRANCH = $(shell git rev-parse --abbrev-ref HEAD))
+- @sed -i.bak -E "s/(NNP_GIT_BRANCH) .*/\1 \"$(GIT_BRANCH)\"/" version.h
++ @sed -i.bak -E "s|(NNP_GIT_BRANCH) .*|\1 \"$(GIT_BRANCH)\"|" version.h
+ @rm version.h.bak
+
+ $(LIB).so: CFLAGS+= -fPIC
+@@ -97,9 +97,9 @@ clean: clean-version clean-headers
+ $(RM) $(PROJECT_LIB)/$(LIB).so $(PROJECT_LIB)/$(LIB).a
+
+ clean-version:
+- @sed -i.bak -E "s/(NNP_GIT_VERSION) .*/\1 \"\"/" version.h
+- @sed -i.bak -E "s/(NNP_GIT_REV) .*/\1 \"\"/" version.h
+- @sed -i.bak -E "s/(NNP_GIT_BRANCH) .*/\1 \"\"/" version.h
++ @sed -i.bak -E "s|(NNP_GIT_VERSION) .*|\1 \"\"|" version.h
++ @sed -i.bak -E "s|(NNP_GIT_REV) .*|\1 \"\"|" version.h
++ @sed -i.bak -E "s|(NNP_GIT_BRANCH) .*|\1 \"\"|" version.h
+ @rm version.h.bak
+
+ clean-headers:
diff --git a/var/spack/repos/builtin/packages/n2p2/nnp_test.h.patch b/var/spack/repos/builtin/packages/n2p2/nnp_test.h.patch
new file mode 100644
index 0000000000..d5296ba1e4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/n2p2/nnp_test.h.patch
@@ -0,0 +1,10 @@
+--- a/test/cpp/nnp_test.h
++++ b/test/cpp/nnp_test.h
+@@ -7,6 +7,7 @@
+ #include <boost/process.hpp>
+ #include <boost/filesystem.hpp>
+ #include <iostream>
++#include <boost/asio.hpp>
+ #include "fileHelpers.h"
+
+ namespace bdata = boost::unit_test::data;
diff --git a/var/spack/repos/builtin/packages/n2p2/package.py b/var/spack/repos/builtin/packages/n2p2/package.py
new file mode 100644
index 0000000000..0d8ffda8e4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/n2p2/package.py
@@ -0,0 +1,138 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class N2p2(MakefilePackage):
+ """N2p2 (The neural network potential package) provides ready-to-use
+ software for high-dimensional neural network potentials
+ in computational physics and chemistry."""
+
+ homepage = "https://github.com/CompPhysVienna/n2p2"
+ url = "https://github.com/CompPhysVienna/n2p2/archive/v2.1.0.tar.gz"
+
+ version(
+ "2.1.1",
+ sha256="90fbc0756132984d0d7e6d92d2f53358c120e75f148910d90c027158163251b9",
+ )
+ version(
+ "2.1.0",
+ sha256="283c00e9a5b964f4c84a70c5f1cef7167e9b881080b50a221da08799e5ede400",
+ )
+
+ variant("doc", default=False, description="build documentation with Doxygen")
+
+ patch("interface-makefile.patch", when="@2.1.0")
+ patch("interface-makefile211.patch", when="@2.1.1")
+ patch("libnnp-makefile.patch")
+ patch("nnp_test.h.patch")
+
+ depends_on("mpi")
+ depends_on("blas")
+ depends_on("gsl", type=("build", "run", "link"))
+ depends_on("eigen", type=("build", "run", "link"))
+ depends_on("doxygen", type="build", when="+doc")
+ depends_on("texlive", type="build", when="+doc")
+ depends_on("py-cython", type=("build", "run"))
+ depends_on("py-breathe", type="build", when="+doc")
+ depends_on("py-sphinx", type="build", when="+doc")
+ depends_on("py-sphinx-rtd-theme", type="build", when="+doc")
+
+ depends_on("boost", type="link")
+ depends_on("lcov", type=("build", "run"))
+ depends_on("py-pytest", type=("build", "run"))
+ depends_on("py-pytest-cov", type="run")
+ depends_on("py-coverage@4.5.4", type="run")
+ depends_on("py-packaging", type="run")
+ depends_on("python", type=("build", "run"))
+
+ test_requires_compiler = True
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter(join_path("src", "makefile.gnu"))
+ blas_libs = self.spec["blas"].libs
+ makefile.filter("PROJECT_CC=.*", "PROJECT_CC={0}".format(spack_cxx))
+ makefile.filter(
+ "PROJECT_MPICC=.*", "PROJECT_MPICC={0}".format(self.spec["mpi"].mpicxx)
+ )
+ makefile.filter(
+ "PROJECT_CFLAGS=.*", "PROJECT_CFLAGS={0}".format(self.compiler.cxx11_flag)
+ )
+ makefile.filter(
+ "PROJECT_LDFLAGS_BLAS.*",
+ "PROJECT_LDFLAGS_BLAS={0} -lgsl -lgslcblas".format(blas_libs.ld_flags),
+ )
+
+ def build(self, spec, prefix):
+ with working_dir("src"):
+ make()
+ make("lammps-nnp")
+ make("pynnp")
+ if "+doc" in self.spec:
+ make("doc")
+
+ def install(self, spec, prefix):
+ install_tree("bin", prefix.bin)
+ if "+doc" in self.spec:
+ install_tree("doc", prefix.doc)
+ install_tree("examples", prefix.examples)
+ install_tree("include", prefix.include)
+ install_tree("lib", prefix.lib)
+ install_tree("tools", prefix.tools)
+
+ @run_after("install")
+ def setup_build_tests(self):
+ """Copy the build test files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources(".")
+
+ def test(self):
+ with working_dir(join_path(self.install_test_root, "test"), create=False):
+ make("clean")
+
+ with working_dir(join_path(self.install_test_root, "src"), create=False):
+ make("clean")
+ make(
+ "MODE=test",
+ "PROJECT_GSL={0}".format(self.spec["gsl"].prefix.include),
+ "PROJECT_EIGEN={0}".format(self.spec["eigen"].prefix.include.eigen3),
+ )
+ make(
+ "MODE=test",
+ "lammps-nnp",
+ "PROJECT_GSL={0}".format(self.spec["gsl"].prefix.include),
+ "PROJECT_EIGEN={0}".format(self.spec["eigen"].prefix.include.eigen3),
+ )
+ make("pynnp", "MODE=test")
+
+ with working_dir(join_path(self.install_test_root, "test"), create=False):
+ if self.spec.satisfies("%fj"):
+ f = FileFilter(join_path("cpp", "nnp_test.h"))
+ f.filter(
+ "(example.co",
+ '("{0} -n 1 " + example.co'.format(
+ self.spec["mpi"].prefix.bin.mpirun
+ ),
+ string=True,
+ )
+
+ f = FileFilter(join_path("cpp", "makefile"))
+ f.filter(
+ "log_level=.*", "log_level=$(LOG_LEVEL) 2>&1 | tee -a ../output_cpp.txt"
+ )
+
+ f = FileFilter(join_path("python", "makefile"))
+ f.filter("term\\s-v.*", "term -v | tee -a ../output_python.txt")
+
+ make("cpp", parallel=False)
+ make("python", parallel=False)
+
+ test_dir = self.test_suite.current_test_data_dir
+ expected_file = join_path(
+ test_dir, "expected-result-{0}.txt".format(self.version)
+ )
+ check_n2p2 = Executable(join_path(test_dir, "result-check.sh"))
+ check_n2p2("./output_cpp.txt", "./output_python.txt", expected_file)
diff --git a/var/spack/repos/builtin/packages/n2p2/test/expected-result-2.1.0.txt b/var/spack/repos/builtin/packages/n2p2/test/expected-result-2.1.0.txt
new file mode 100644
index 0000000000..8fabaf2abd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/n2p2/test/expected-result-2.1.0.txt
@@ -0,0 +1,271 @@
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+test_Atom.py::Test___cinit__::test_skeleton_initialization PASSED [ 0%]
+test_Atom.py::Test___cinit__::test_empty_initialization PASSED [ 0%]
+test_Atom.py::Test_hasNeighborList::test_correct_type PASSED [ 1%]
+test_Atom.py::Test_hasNeighborList::test_set_and_get PASSED [ 1%]
+test_Atom.py::Test_hasSymmetryFunctions::test_correct_type PASSED [ 1%]
+test_Atom.py::Test_hasSymmetryFunctions::test_set_and_get PASSED [ 2%]
+test_Atom.py::Test_hasSymmetryFunctionDerivatives::test_correct_type PASSED [ 2%]
+test_Atom.py::Test_hasSymmetryFunctionDerivatives::test_set_and_get PASSED [ 3%]
+test_Atom.py::Test_index::test_correct_type PASSED [ 3%]
+test_Atom.py::Test_index::test_set_and_get PASSED [ 3%]
+test_Atom.py::Test_indexStructure::test_correct_type PASSED [ 4%]
+test_Atom.py::Test_indexStructure::test_set_and_get PASSED [ 4%]
+test_Atom.py::Test_tag::test_correct_type PASSED [ 5%]
+test_Atom.py::Test_tag::test_set_and_get PASSED [ 5%]
+test_Atom.py::Test_element::test_correct_type PASSED [ 5%]
+test_Atom.py::Test_element::test_set_and_get PASSED [ 6%]
+test_Atom.py::Test_numNeighbors::test_correct_type PASSED [ 6%]
+test_Atom.py::Test_numNeighbors::test_set_and_get PASSED [ 7%]
+test_Atom.py::Test_numNeighborsUnique::test_correct_type PASSED [ 7%]
+test_Atom.py::Test_numNeighborsUnique::test_set_and_get PASSED [ 7%]
+test_Atom.py::Test_numSymmetryFunctions::test_correct_type PASSED [ 8%]
+test_Atom.py::Test_numSymmetryFunctions::test_set_and_get PASSED [ 8%]
+test_Atom.py::Test_energy::test_correct_type PASSED [ 9%]
+test_Atom.py::Test_energy::test_set_and_get PASSED [ 9%]
+test_Atom.py::Test_charge::test_correct_type PASSED [ 9%]
+test_Atom.py::Test_charge::test_set_and_get PASSED [ 10%]
+test_Atom.py::Test_r::test_correct_type PASSED [ 10%]
+test_Atom.py::Test_r::test_set_and_get PASSED [ 10%]
+test_Atom.py::Test_f::test_correct_type PASSED [ 11%]
+test_Atom.py::Test_f::test_set_and_get PASSED [ 11%]
+test_Atom.py::Test_fRef::test_correct_type PASSED [ 12%]
+test_Atom.py::Test_fRef::test_set_and_get PASSED [ 12%]
+test_Atom.py::Test_neighborsUnique::test_correct_type PASSED [ 12%]
+test_Atom.py::Test_numNeighborsPerElement::test_correct_type PASSED [ 13%]
+test_Atom.py::Test_G::test_correct_type PASSED [ 13%]
+test_Atom.py::Test_dEdG::test_correct_type PASSED [ 14%]
+test_Atom.py::Test_dGdr::test_correct_type PASSED [ 14%]
+test_Atom.py::Test_neighbors::test_correct_type PASSED [ 14%]
+test_Atom.py::Test_info::test_return_list PASSED [ 15%]
+test_CutoffFunction.py::Test___cinit__::test_skeleton_initialization PASSED [ 15%]
+test_CutoffFunction.py::Test___cinit__::test_empty_initialization PASSED [ 16%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[0] PASSED [ 16%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[1] PASSED [ 16%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[2] PASSED [ 17%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[3] PASSED [ 17%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[4] PASSED [ 18%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[5] PASSED [ 18%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[6] PASSED [ 18%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[7] PASSED [ 19%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[8] PASSED [ 19%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_unknown_type PASSED [ 20%]
+test_CutoffFunction.py::Test_setCutoffRadius::test_set_float_value PASSED [ 20%]
+test_CutoffFunction.py::Test_setCutoffRadius::test_set_wrong_argument PASSED [ 20%]
+test_CutoffFunction.py::Test_setCutoffParameter::test_set_float_value PASSED [ 21%]
+test_CutoffFunction.py::Test_setCutoffParameter::test_set_wrong_float_value PASSED [ 21%]
+test_CutoffFunction.py::Test_setCutoffParameter::test_set_wrong_argument PASSED [ 21%]
+test_CutoffFunction.py::Test_f::test_boundaries[0] PASSED [ 22%]
+test_CutoffFunction.py::Test_f::test_boundaries[1] PASSED [ 22%]
+test_CutoffFunction.py::Test_f::test_boundaries[2] PASSED [ 23%]
+test_CutoffFunction.py::Test_f::test_boundaries[3] PASSED [ 23%]
+test_CutoffFunction.py::Test_f::test_boundaries[4] PASSED [ 23%]
+test_CutoffFunction.py::Test_f::test_boundaries[5] PASSED [ 24%]
+test_CutoffFunction.py::Test_f::test_boundaries[6] PASSED [ 24%]
+test_CutoffFunction.py::Test_f::test_boundaries[7] PASSED [ 25%]
+test_CutoffFunction.py::Test_f::test_boundaries[8] PASSED [ 25%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[0-1.0] PASSED [ 25%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[1-0.1464466094067261] PASSED [ 26%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[2-0.00768915371206977] PASSED [ 26%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[3-0.01740635089776903] PASSED [ 27%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[4-0.27645304662956416] PASSED [ 27%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[5-0.1562499999999999] PASSED [ 27%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[6-0.10351562500000003] PASSED [ 28%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[7-0.07055664062499914] PASSED [ 28%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[8-0.04892730712890944] PASSED [ 29%]
+test_CutoffFunction.py::Test_f::test_nonfloat_argument PASSED [ 29%]
+test_CutoffFunction.py::Test_df::test_boundaries[0] PASSED [ 29%]
+test_CutoffFunction.py::Test_df::test_boundaries[1] PASSED [ 30%]
+test_CutoffFunction.py::Test_df::test_boundaries[2] PASSED [ 30%]
+test_CutoffFunction.py::Test_df::test_boundaries[3] PASSED [ 30%]
+test_CutoffFunction.py::Test_df::test_boundaries[4] PASSED [ 31%]
+test_CutoffFunction.py::Test_df::test_boundaries[5] PASSED [ 31%]
+test_CutoffFunction.py::Test_df::test_boundaries[6] PASSED [ 32%]
+test_CutoffFunction.py::Test_df::test_boundaries[7] PASSED [ 32%]
+test_CutoffFunction.py::Test_df::test_boundaries[8] PASSED [ 32%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[0-0.0] PASSED [ 33%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[1--0.46280030605816297] PASSED [ 33%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[2--0.0374393678577051] PASSED [ 34%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[3--0.08475351107871792] PASSED [ 34%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[4--0.9027038257291898] PASSED [ 34%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[5--0.4687499999999999] PASSED [ 35%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[6--0.43945312499999917] PASSED [ 35%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[7--0.38452148437500033] PASSED [ 36%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[8--0.32444000244141674] PASSED [ 36%]
+test_CutoffFunction.py::Test_df::test_nonfloat_argument PASSED [ 36%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[0] PASSED [ 37%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[1] PASSED [ 37%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[2] PASSED [ 38%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[3] PASSED [ 38%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[4] PASSED [ 38%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[5] PASSED [ 39%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[6] PASSED [ 39%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[7] PASSED [ 40%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[8] PASSED [ 40%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[0-1.0-0.0] PASSED [ 40%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[1-0.1464466094067261--0.46280030605816297] PASSED [ 41%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[2-0.00768915371206977--0.0374393678577051] PASSED [ 41%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[3-0.01740635089776903--0.08475351107871792] PASSED [ 41%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[4-0.27645304662956416--0.9027038257291898] PASSED [ 42%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[5-0.1562499999999999--0.4687499999999999] PASSED [ 42%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[6-0.10351562500000003--0.43945312499999917] PASSED [ 43%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[7-0.07055664062499914--0.38452148437500033] PASSED [ 43%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[8-0.04892730712890944--0.32444000244141674] PASSED [ 43%]
+test_CutoffFunction.py::Test_fdf::test_nonfloat_argument PASSED [ 44%]
+test_ElementMap.py::Test___cinit__::test_skeleton_initialization PASSED [ 44%]
+test_ElementMap.py::Test___cinit__::test_empty_initialization PASSED [ 45%]
+test_ElementMap.py::Test_registerElements::test_nonstring_argument PASSED [ 45%]
+test_ElementMap.py::Test_registerElements::test_correct_elements_registered PASSED [ 45%]
+test_ElementMap.py::Test___getitem__::test_correct_element_index PASSED [ 46%]
+test_ElementMap.py::Test___getitem__::test_correct_element_symbol PASSED [ 46%]
+test_ElementMap.py::Test___getitem__::test_out_of_bounds_index PASSED [ 47%]
+test_ElementMap.py::Test___getitem__::test_unknown_symbol PASSED [ 47%]
+test_ElementMap.py::Test___getitem__::test_wrong_argument_type PASSED [ 47%]
+test_ElementMap.py::Test_size::test_correct_empty_size_returned PASSED [ 48%]
+test_ElementMap.py::Test_size::test_correct_size_returned PASSED [ 48%]
+test_ElementMap.py::Test_index::test_correct_element_index PASSED [ 49%]
+test_ElementMap.py::Test_index::test_wrong_argument_type PASSED [ 49%]
+test_ElementMap.py::Test_symbol::test_correct_element_index PASSED [ 49%]
+test_ElementMap.py::Test_symbol::test_wrong_argument_type PASSED [ 50%]
+test_ElementMap.py::Test_deregisterElements::test_empty_map PASSED [ 50%]
+test_ElementMap.py::Test_symbolFromAtomicNumber::test_some_elements PASSED [ 50%]
+test_ElementMap.py::Test_info::test_return_list PASSED [ 51%]
+test_Log.py::Test___cinit__::test_skeleton_initialization PASSED [ 51%]
+test_Log.py::Test___cinit__::test_empty_initialization PASSED [ 52%]
+test_Log.py::Test_addLogEntry::test_add_string_entry PASSED [ 52%]
+test_Log.py::Test_addLogEntry::test_add_nonstring_entry PASSED [ 52%]
+test_Log.py::Test_getLog::test_read_two_entries PASSED [ 53%]
+test_Log.py::Test_writeToStdout::test_correct_type PASSED [ 53%]
+test_Log.py::Test_writeToStdout::test_set_and_get PASSED [ 54%]
+test_Neighbor.py::Test___cinit__::test_skeleton_initialization PASSED [ 54%]
+test_Neighbor.py::Test___cinit__::test_empty_initialization PASSED [ 54%]
+test_Neighbor.py::Test_index::test_correct_type PASSED [ 55%]
+test_Neighbor.py::Test_index::test_set_and_get PASSED [ 55%]
+test_Neighbor.py::Test_tag::test_correct_type PASSED [ 56%]
+test_Neighbor.py::Test_tag::test_set_and_get PASSED [ 56%]
+test_Neighbor.py::Test_element::test_correct_type PASSED [ 56%]
+test_Neighbor.py::Test_element::test_set_and_get PASSED [ 57%]
+test_Neighbor.py::Test_d::test_correct_type PASSED [ 57%]
+test_Neighbor.py::Test_d::test_set_and_get PASSED [ 58%]
+test_Neighbor.py::Test_dr::test_correct_type PASSED [ 58%]
+test_Neighbor.py::Test_dr::test_set_and_get PASSED [ 58%]
+test_Neighbor.py::Test_dGdr::test_correct_type PASSED [ 59%]
+test_Neighbor.py::Test___eq__::test_not_equal PASSED [ 59%]
+test_Neighbor.py::Test___eq__::test_element_different PASSED [ 60%]
+test_Neighbor.py::Test___eq__::test_distance_different PASSED [ 60%]
+test_Neighbor.py::Test___eq__::test_equal PASSED [ 60%]
+test_Neighbor.py::Test___ne__::test_element_different PASSED [ 61%]
+test_Neighbor.py::Test___ne__::test_distance_different PASSED [ 61%]
+test_Neighbor.py::Test___ne__::test_equal PASSED [ 61%]
+test_Neighbor.py::Test___lt__::test_less_than PASSED [ 62%]
+test_Neighbor.py::Test___lt__::test_greater_than PASSED [ 62%]
+test_Neighbor.py::Test___lt__::test_equal_distance PASSED [ 63%]
+test_Neighbor.py::Test___lt__::test_equal_element PASSED [ 63%]
+test_Neighbor.py::Test___lt__::test_equal PASSED [ 63%]
+test_Neighbor.py::Test___gt__::test_less_than PASSED [ 64%]
+test_Neighbor.py::Test___gt__::test_greater_than PASSED [ 64%]
+test_Neighbor.py::Test___gt__::test_equal_distance PASSED [ 65%]
+test_Neighbor.py::Test___gt__::test_equal_element PASSED [ 65%]
+test_Neighbor.py::Test___gt__::test_equal PASSED [ 65%]
+test_Neighbor.py::Test___le__::test_less_than PASSED [ 66%]
+test_Neighbor.py::Test___le__::test_greater_than PASSED [ 66%]
+test_Neighbor.py::Test___le__::test_equal_distance PASSED [ 67%]
+test_Neighbor.py::Test___le__::test_equal_element PASSED [ 67%]
+test_Neighbor.py::Test___le__::test_equal PASSED [ 67%]
+test_Neighbor.py::Test___ge__::test_less_than PASSED [ 68%]
+test_Neighbor.py::Test___ge__::test_greater_than PASSED [ 68%]
+test_Neighbor.py::Test___ge__::test_equal_distance PASSED [ 69%]
+test_Neighbor.py::Test___ge__::test_equal_element PASSED [ 69%]
+test_Neighbor.py::Test___ge__::test_equal PASSED [ 69%]
+test_Settings.py::Test___cinit__::test_skeleton_initialization PASSED [ 70%]
+test_Settings.py::Test___cinit__::test_empty_initialization PASSED [ 70%]
+test_Settings.py::Test_loadFile::test_file_read[setups/Settings] PASSED [ 70%]
+test_Settings.py::Test___getitem__::test_existing_key[setups/Settings] PASSED [ 71%]
+test_Settings.py::Test___getitem__::test_nonexisting_key[setups/Settings] PASSED [ 71%]
+test_Settings.py::Test___getitem__::test_nonstring_key[setups/Settings] PASSED [ 72%]
+test_Settings.py::Test_keywordExists::test_existing_key[setups/Settings] PASSED [ 72%]
+test_Settings.py::Test_keywordExists::test_nonexisting_key[setups/Settings] PASSED [ 72%]
+test_Settings.py::Test_keywordExists::test_nonstring_key[setups/Settings] PASSED [ 73%]
+test_Settings.py::Test_getValue::test_existing_key[setups/Settings] PASSED [ 73%]
+test_Settings.py::Test_getValue::test_nonexisting_key[setups/Settings] PASSED [ 74%]
+test_Settings.py::Test_getValue::test_nonstring_key[setups/Settings] PASSED [ 74%]
+test_Settings.py::Test_info::test_return_list[setups/Settings] PASSED [ 74%]
+test_Settings.py::Test_getSettingsLines::test_return_list[setups/Settings] PASSED [ 75%]
+test_Vec3D.py::Test___cinit__::test_skeleton_initialization PASSED [ 75%]
+test_Vec3D.py::Test___cinit__::test_empty_initialization PASSED [ 76%]
+test_Vec3D.py::Test___cinit__::test_float_initialization PASSED [ 76%]
+test_Vec3D.py::Test___cinit__::test_Vec3D_initialization PASSED [ 76%]
+test_Vec3D.py::Test___getitem__::test_no_integer_index PASSED [ 77%]
+test_Vec3D.py::Test___getitem__::test_negative_index PASSED [ 77%]
+test_Vec3D.py::Test___getitem__::test_large_index PASSED [ 78%]
+test_Vec3D.py::Test___getitem__::test_components PASSED [ 78%]
+test_Vec3D.py::Test___setitem__::test_no_integer_index PASSED [ 78%]
+test_Vec3D.py::Test___setitem__::test_negative_index PASSED [ 79%]
+test_Vec3D.py::Test___setitem__::test_large_index PASSED [ 79%]
+test_Vec3D.py::Test___setitem__::test_wrong_type PASSED [ 80%]
+test_Vec3D.py::Test___setitem__::test_components PASSED [ 80%]
+test_Vec3D.py::Test___str__::test_return_string PASSED [ 80%]
+test_Vec3D.py::Test___str__::test_string_content PASSED [ 81%]
+test_Vec3D.py::Test___iadd__::test_wrong_type PASSED [ 81%]
+test_Vec3D.py::Test___iadd__::test_correct_addition PASSED [ 81%]
+test_Vec3D.py::Test___iadd__::test_added_Vec3D_unchanged PASSED [ 82%]
+test_Vec3D.py::Test___isub__::test_wrong_type PASSED [ 82%]
+test_Vec3D.py::Test___isub__::test_correct_subtraction PASSED [ 83%]
+test_Vec3D.py::Test___isub__::test_subtracted_Vec3D_unchanged PASSED [ 83%]
+test_Vec3D.py::Test___imul__::test_wrong_type PASSED [ 83%]
+test_Vec3D.py::Test___imul__::test_correct_float_multiplication PASSED [ 84%]
+test_Vec3D.py::Test___itruediv__::test_wrong_type PASSED [ 84%]
+test_Vec3D.py::Test___itruediv__::test_correct_float_division PASSED [ 85%]
+test_Vec3D.py::Test___mul__::test_wrong_type PASSED [ 85%]
+test_Vec3D.py::Test___mul__::test_scalar_product PASSED [ 85%]
+test_Vec3D.py::Test___mul__::test_right_float_multiplication PASSED [ 86%]
+test_Vec3D.py::Test___mul__::test_left_float_multiplication PASSED [ 86%]
+test_Vec3D.py::Test___eq__::test_wrong_type PASSED [ 87%]
+test_Vec3D.py::Test___eq__::test_equal_components PASSED [ 87%]
+test_Vec3D.py::Test___ne__::test_wrong_type PASSED [ 87%]
+test_Vec3D.py::Test___ne__::test_one_different_component PASSED [ 88%]
+test_Vec3D.py::Test_norm::test_correct_result PASSED [ 88%]
+test_Vec3D.py::Test_norm2::test_correct_result PASSED [ 89%]
+test_Vec3D.py::Test_normalize::test_correct_result PASSED [ 89%]
+test_Vec3D.py::Test_cross::test_wrong_type PASSED [ 89%]
+test_Vec3D.py::Test_cross::test_correct_return_type PASSED [ 90%]
+test_Vec3D.py::Test_cross::test_correct_result PASSED [ 90%]
+test_Vec3D.py::Test___add__::test_wrong_type PASSED [ 90%]
+test_Vec3D.py::Test___add__::test_correct_return_type PASSED [ 91%]
+test_Vec3D.py::Test___add__::test_new_object_returned PASSED [ 91%]
+test_Vec3D.py::Test___add__::test_correct_result PASSED [ 92%]
+test_Vec3D.py::Test___sub__::test_wrong_type PASSED [ 92%]
+test_Vec3D.py::Test___sub__::test_correct_return_type PASSED [ 92%]
+test_Vec3D.py::Test___sub__::test_new_object_returned PASSED [ 93%]
+test_Vec3D.py::Test___sub__::test_correct_result PASSED [ 93%]
+test_Vec3D.py::Test___neg__::test_correct_return_type PASSED [ 94%]
+test_Vec3D.py::Test___neg__::test_new_object_returned PASSED [ 94%]
+test_Vec3D.py::Test___neg__::test_correct_result PASSED [ 94%]
+test_Vec3D.py::Test___truediv__::test_wrong_type PASSED [ 95%]
+test_Vec3D.py::Test___truediv__::test_correct_return_type PASSED [ 95%]
+test_Vec3D.py::Test___truediv__::test_new_object_returned PASSED [ 96%]
+test_Vec3D.py::Test___truediv__::test_correct_result PASSED [ 96%]
+test_Vec3D.py::Test_r::test_getter_correct_type PASSED [ 96%]
+test_Vec3D.py::Test_r::test_getter_correct_size PASSED [ 97%]
+test_Vec3D.py::Test_r::test_getter_correct_content PASSED [ 97%]
+test_Vec3D.py::Test_r::test_setter_wrong_size PASSED [ 98%]
+test_Vec3D.py::Test_r::test_setter_wrong_type PASSED [ 98%]
+test_Vec3D.py::Test_r::test_setter_wrong_list_size PASSED [ 98%]
+test_Vec3D.py::Test_r::test_setter_correct_assignment PASSED [ 99%]
+test_Vec3D.py::Test_r::test_setter_correct_assignment_to_Vec3D PASSED [ 99%]
+test_Vec3D.py::Test_r::test_setter_index_assignment_not_possible PASSED [100%]
diff --git a/var/spack/repos/builtin/packages/n2p2/test/expected-result-2.1.1.txt b/var/spack/repos/builtin/packages/n2p2/test/expected-result-2.1.1.txt
new file mode 100644
index 0000000000..26fb530a38
--- /dev/null
+++ b/var/spack/repos/builtin/packages/n2p2/test/expected-result-2.1.1.txt
@@ -0,0 +1,272 @@
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+*** No errors detected
+test_Atom.py::Test___cinit__::test_skeleton_initialization PASSED [ 0%]
+test_Atom.py::Test___cinit__::test_empty_initialization PASSED [ 0%]
+test_Atom.py::Test_hasNeighborList::test_correct_type PASSED [ 1%]
+test_Atom.py::Test_hasNeighborList::test_set_and_get PASSED [ 1%]
+test_Atom.py::Test_hasSymmetryFunctions::test_correct_type PASSED [ 1%]
+test_Atom.py::Test_hasSymmetryFunctions::test_set_and_get PASSED [ 2%]
+test_Atom.py::Test_hasSymmetryFunctionDerivatives::test_correct_type PASSED [ 2%]
+test_Atom.py::Test_hasSymmetryFunctionDerivatives::test_set_and_get PASSED [ 3%]
+test_Atom.py::Test_index::test_correct_type PASSED [ 3%]
+test_Atom.py::Test_index::test_set_and_get PASSED [ 3%]
+test_Atom.py::Test_indexStructure::test_correct_type PASSED [ 4%]
+test_Atom.py::Test_indexStructure::test_set_and_get PASSED [ 4%]
+test_Atom.py::Test_tag::test_correct_type PASSED [ 5%]
+test_Atom.py::Test_tag::test_set_and_get PASSED [ 5%]
+test_Atom.py::Test_element::test_correct_type PASSED [ 5%]
+test_Atom.py::Test_element::test_set_and_get PASSED [ 6%]
+test_Atom.py::Test_numNeighbors::test_correct_type PASSED [ 6%]
+test_Atom.py::Test_numNeighbors::test_set_and_get PASSED [ 7%]
+test_Atom.py::Test_numNeighborsUnique::test_correct_type PASSED [ 7%]
+test_Atom.py::Test_numNeighborsUnique::test_set_and_get PASSED [ 7%]
+test_Atom.py::Test_numSymmetryFunctions::test_correct_type PASSED [ 8%]
+test_Atom.py::Test_numSymmetryFunctions::test_set_and_get PASSED [ 8%]
+test_Atom.py::Test_energy::test_correct_type PASSED [ 9%]
+test_Atom.py::Test_energy::test_set_and_get PASSED [ 9%]
+test_Atom.py::Test_charge::test_correct_type PASSED [ 9%]
+test_Atom.py::Test_charge::test_set_and_get PASSED [ 10%]
+test_Atom.py::Test_r::test_correct_type PASSED [ 10%]
+test_Atom.py::Test_r::test_set_and_get PASSED [ 10%]
+test_Atom.py::Test_f::test_correct_type PASSED [ 11%]
+test_Atom.py::Test_f::test_set_and_get PASSED [ 11%]
+test_Atom.py::Test_fRef::test_correct_type PASSED [ 12%]
+test_Atom.py::Test_fRef::test_set_and_get PASSED [ 12%]
+test_Atom.py::Test_neighborsUnique::test_correct_type PASSED [ 12%]
+test_Atom.py::Test_numNeighborsPerElement::test_correct_type PASSED [ 13%]
+test_Atom.py::Test_G::test_correct_type PASSED [ 13%]
+test_Atom.py::Test_dEdG::test_correct_type PASSED [ 14%]
+test_Atom.py::Test_dGdr::test_correct_type PASSED [ 14%]
+test_Atom.py::Test_neighbors::test_correct_type PASSED [ 14%]
+test_Atom.py::Test_info::test_return_list PASSED [ 15%]
+test_CutoffFunction.py::Test___cinit__::test_skeleton_initialization PASSED [ 15%]
+test_CutoffFunction.py::Test___cinit__::test_empty_initialization PASSED [ 16%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[0] PASSED [ 16%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[1] PASSED [ 16%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[2] PASSED [ 17%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[3] PASSED [ 17%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[4] PASSED [ 18%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[5] PASSED [ 18%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[6] PASSED [ 18%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[7] PASSED [ 19%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_correct_type[8] PASSED [ 19%]
+test_CutoffFunction.py::Test_setCutoffType::test_set_unknown_type PASSED [ 20%]
+test_CutoffFunction.py::Test_setCutoffRadius::test_set_float_value PASSED [ 20%]
+test_CutoffFunction.py::Test_setCutoffRadius::test_set_wrong_argument PASSED [ 20%]
+test_CutoffFunction.py::Test_setCutoffParameter::test_set_float_value PASSED [ 21%]
+test_CutoffFunction.py::Test_setCutoffParameter::test_set_wrong_float_value PASSED [ 21%]
+test_CutoffFunction.py::Test_setCutoffParameter::test_set_wrong_argument PASSED [ 21%]
+test_CutoffFunction.py::Test_f::test_boundaries[0] PASSED [ 22%]
+test_CutoffFunction.py::Test_f::test_boundaries[1] PASSED [ 22%]
+test_CutoffFunction.py::Test_f::test_boundaries[2] PASSED [ 23%]
+test_CutoffFunction.py::Test_f::test_boundaries[3] PASSED [ 23%]
+test_CutoffFunction.py::Test_f::test_boundaries[4] PASSED [ 23%]
+test_CutoffFunction.py::Test_f::test_boundaries[5] PASSED [ 24%]
+test_CutoffFunction.py::Test_f::test_boundaries[6] PASSED [ 24%]
+test_CutoffFunction.py::Test_f::test_boundaries[7] PASSED [ 25%]
+test_CutoffFunction.py::Test_f::test_boundaries[8] PASSED [ 25%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[0-1.0] PASSED [ 25%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[1-0.1464466094067261] PASSED [ 26%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[2-0.00768915371206977] PASSED [ 26%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[3-0.01740635089776903] PASSED [ 27%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[4-0.27645304662956416] PASSED [ 27%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[5-0.1562499999999999] PASSED [ 27%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[6-0.10351562500000003] PASSED [ 28%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[7-0.07055664062499914] PASSED [ 28%]
+test_CutoffFunction.py::Test_f::test_nonzero_radius[8-0.04892730712890944] PASSED [ 29%]
+test_CutoffFunction.py::Test_f::test_nonfloat_argument PASSED [ 29%]
+test_CutoffFunction.py::Test_df::test_boundaries[0] PASSED [ 29%]
+test_CutoffFunction.py::Test_df::test_boundaries[1] PASSED [ 30%]
+test_CutoffFunction.py::Test_df::test_boundaries[2] PASSED [ 30%]
+test_CutoffFunction.py::Test_df::test_boundaries[3] PASSED [ 30%]
+test_CutoffFunction.py::Test_df::test_boundaries[4] PASSED [ 31%]
+test_CutoffFunction.py::Test_df::test_boundaries[5] PASSED [ 31%]
+test_CutoffFunction.py::Test_df::test_boundaries[6] PASSED [ 32%]
+test_CutoffFunction.py::Test_df::test_boundaries[7] PASSED [ 32%]
+test_CutoffFunction.py::Test_df::test_boundaries[8] PASSED [ 32%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[0-0.0] PASSED [ 33%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[1--0.46280030605816297] PASSED [ 33%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[2--0.0374393678577051] PASSED [ 34%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[3--0.08475351107871792] PASSED [ 34%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[4--0.9027038257291898] PASSED [ 34%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[5--0.4687499999999999] PASSED [ 35%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[6--0.43945312499999917] PASSED [ 35%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[7--0.38452148437500033] PASSED [ 36%]
+test_CutoffFunction.py::Test_df::test_nonzero_radius[8--0.32444000244141674] PASSED [ 36%]
+test_CutoffFunction.py::Test_df::test_nonfloat_argument PASSED [ 36%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[0] PASSED [ 37%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[1] PASSED [ 37%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[2] PASSED [ 38%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[3] PASSED [ 38%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[4] PASSED [ 38%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[5] PASSED [ 39%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[6] PASSED [ 39%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[7] PASSED [ 40%]
+test_CutoffFunction.py::Test_fdf::test_boundaries[8] PASSED [ 40%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[0-1.0-0.0] PASSED [ 40%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[1-0.1464466094067261--0.46280030605816297] PASSED [ 41%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[2-0.00768915371206977--0.0374393678577051] PASSED [ 41%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[3-0.01740635089776903--0.08475351107871792] PASSED [ 41%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[4-0.27645304662956416--0.9027038257291898] PASSED [ 42%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[5-0.1562499999999999--0.4687499999999999] PASSED [ 42%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[6-0.10351562500000003--0.43945312499999917] PASSED [ 43%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[7-0.07055664062499914--0.38452148437500033] PASSED [ 43%]
+test_CutoffFunction.py::Test_fdf::test_nonzero_radius[8-0.04892730712890944--0.32444000244141674] PASSED [ 43%]
+test_CutoffFunction.py::Test_fdf::test_nonfloat_argument PASSED [ 44%]
+test_ElementMap.py::Test___cinit__::test_skeleton_initialization PASSED [ 44%]
+test_ElementMap.py::Test___cinit__::test_empty_initialization PASSED [ 45%]
+test_ElementMap.py::Test_registerElements::test_nonstring_argument PASSED [ 45%]
+test_ElementMap.py::Test_registerElements::test_correct_elements_registered PASSED [ 45%]
+test_ElementMap.py::Test___getitem__::test_correct_element_index PASSED [ 46%]
+test_ElementMap.py::Test___getitem__::test_correct_element_symbol PASSED [ 46%]
+test_ElementMap.py::Test___getitem__::test_out_of_bounds_index PASSED [ 47%]
+test_ElementMap.py::Test___getitem__::test_unknown_symbol PASSED [ 47%]
+test_ElementMap.py::Test___getitem__::test_wrong_argument_type PASSED [ 47%]
+test_ElementMap.py::Test_size::test_correct_empty_size_returned PASSED [ 48%]
+test_ElementMap.py::Test_size::test_correct_size_returned PASSED [ 48%]
+test_ElementMap.py::Test_index::test_correct_element_index PASSED [ 49%]
+test_ElementMap.py::Test_index::test_wrong_argument_type PASSED [ 49%]
+test_ElementMap.py::Test_symbol::test_correct_element_index PASSED [ 49%]
+test_ElementMap.py::Test_symbol::test_wrong_argument_type PASSED [ 50%]
+test_ElementMap.py::Test_deregisterElements::test_empty_map PASSED [ 50%]
+test_ElementMap.py::Test_symbolFromAtomicNumber::test_some_elements PASSED [ 50%]
+test_ElementMap.py::Test_info::test_return_list PASSED [ 51%]
+test_Log.py::Test___cinit__::test_skeleton_initialization PASSED [ 51%]
+test_Log.py::Test___cinit__::test_empty_initialization PASSED [ 52%]
+test_Log.py::Test_addLogEntry::test_add_string_entry PASSED [ 52%]
+test_Log.py::Test_addLogEntry::test_add_nonstring_entry PASSED [ 52%]
+test_Log.py::Test_getLog::test_read_two_entries PASSED [ 53%]
+test_Log.py::Test_writeToStdout::test_correct_type PASSED [ 53%]
+test_Log.py::Test_writeToStdout::test_set_and_get PASSED [ 54%]
+test_Neighbor.py::Test___cinit__::test_skeleton_initialization PASSED [ 54%]
+test_Neighbor.py::Test___cinit__::test_empty_initialization PASSED [ 54%]
+test_Neighbor.py::Test_index::test_correct_type PASSED [ 55%]
+test_Neighbor.py::Test_index::test_set_and_get PASSED [ 55%]
+test_Neighbor.py::Test_tag::test_correct_type PASSED [ 56%]
+test_Neighbor.py::Test_tag::test_set_and_get PASSED [ 56%]
+test_Neighbor.py::Test_element::test_correct_type PASSED [ 56%]
+test_Neighbor.py::Test_element::test_set_and_get PASSED [ 57%]
+test_Neighbor.py::Test_d::test_correct_type PASSED [ 57%]
+test_Neighbor.py::Test_d::test_set_and_get PASSED [ 58%]
+test_Neighbor.py::Test_dr::test_correct_type PASSED [ 58%]
+test_Neighbor.py::Test_dr::test_set_and_get PASSED [ 58%]
+test_Neighbor.py::Test_dGdr::test_correct_type PASSED [ 59%]
+test_Neighbor.py::Test___eq__::test_not_equal PASSED [ 59%]
+test_Neighbor.py::Test___eq__::test_element_different PASSED [ 60%]
+test_Neighbor.py::Test___eq__::test_distance_different PASSED [ 60%]
+test_Neighbor.py::Test___eq__::test_equal PASSED [ 60%]
+test_Neighbor.py::Test___ne__::test_element_different PASSED [ 61%]
+test_Neighbor.py::Test___ne__::test_distance_different PASSED [ 61%]
+test_Neighbor.py::Test___ne__::test_equal PASSED [ 61%]
+test_Neighbor.py::Test___lt__::test_less_than PASSED [ 62%]
+test_Neighbor.py::Test___lt__::test_greater_than PASSED [ 62%]
+test_Neighbor.py::Test___lt__::test_equal_distance PASSED [ 63%]
+test_Neighbor.py::Test___lt__::test_equal_element PASSED [ 63%]
+test_Neighbor.py::Test___lt__::test_equal PASSED [ 63%]
+test_Neighbor.py::Test___gt__::test_less_than PASSED [ 64%]
+test_Neighbor.py::Test___gt__::test_greater_than PASSED [ 64%]
+test_Neighbor.py::Test___gt__::test_equal_distance PASSED [ 65%]
+test_Neighbor.py::Test___gt__::test_equal_element PASSED [ 65%]
+test_Neighbor.py::Test___gt__::test_equal PASSED [ 65%]
+test_Neighbor.py::Test___le__::test_less_than PASSED [ 66%]
+test_Neighbor.py::Test___le__::test_greater_than PASSED [ 66%]
+test_Neighbor.py::Test___le__::test_equal_distance PASSED [ 67%]
+test_Neighbor.py::Test___le__::test_equal_element PASSED [ 67%]
+test_Neighbor.py::Test___le__::test_equal PASSED [ 67%]
+test_Neighbor.py::Test___ge__::test_less_than PASSED [ 68%]
+test_Neighbor.py::Test___ge__::test_greater_than PASSED [ 68%]
+test_Neighbor.py::Test___ge__::test_equal_distance PASSED [ 69%]
+test_Neighbor.py::Test___ge__::test_equal_element PASSED [ 69%]
+test_Neighbor.py::Test___ge__::test_equal PASSED [ 69%]
+test_Settings.py::Test___cinit__::test_skeleton_initialization PASSED [ 70%]
+test_Settings.py::Test___cinit__::test_empty_initialization PASSED [ 70%]
+test_Settings.py::Test_loadFile::test_file_read[setups/Settings] PASSED [ 70%]
+test_Settings.py::Test___getitem__::test_existing_key[setups/Settings] PASSED [ 71%]
+test_Settings.py::Test___getitem__::test_nonexisting_key[setups/Settings] PASSED [ 71%]
+test_Settings.py::Test___getitem__::test_nonstring_key[setups/Settings] PASSED [ 72%]
+test_Settings.py::Test_keywordExists::test_existing_key[setups/Settings] PASSED [ 72%]
+test_Settings.py::Test_keywordExists::test_nonexisting_key[setups/Settings] PASSED [ 72%]
+test_Settings.py::Test_keywordExists::test_nonstring_key[setups/Settings] PASSED [ 73%]
+test_Settings.py::Test_getValue::test_existing_key[setups/Settings] PASSED [ 73%]
+test_Settings.py::Test_getValue::test_nonexisting_key[setups/Settings] PASSED [ 74%]
+test_Settings.py::Test_getValue::test_nonstring_key[setups/Settings] PASSED [ 74%]
+test_Settings.py::Test_info::test_return_list[setups/Settings] PASSED [ 74%]
+test_Settings.py::Test_getSettingsLines::test_return_list[setups/Settings] PASSED [ 75%]
+test_Vec3D.py::Test___cinit__::test_skeleton_initialization PASSED [ 75%]
+test_Vec3D.py::Test___cinit__::test_empty_initialization PASSED [ 76%]
+test_Vec3D.py::Test___cinit__::test_float_initialization PASSED [ 76%]
+test_Vec3D.py::Test___cinit__::test_Vec3D_initialization PASSED [ 76%]
+test_Vec3D.py::Test___getitem__::test_no_integer_index PASSED [ 77%]
+test_Vec3D.py::Test___getitem__::test_negative_index PASSED [ 77%]
+test_Vec3D.py::Test___getitem__::test_large_index PASSED [ 78%]
+test_Vec3D.py::Test___getitem__::test_components PASSED [ 78%]
+test_Vec3D.py::Test___setitem__::test_no_integer_index PASSED [ 78%]
+test_Vec3D.py::Test___setitem__::test_negative_index PASSED [ 79%]
+test_Vec3D.py::Test___setitem__::test_large_index PASSED [ 79%]
+test_Vec3D.py::Test___setitem__::test_wrong_type PASSED [ 80%]
+test_Vec3D.py::Test___setitem__::test_components PASSED [ 80%]
+test_Vec3D.py::Test___str__::test_return_string PASSED [ 80%]
+test_Vec3D.py::Test___str__::test_string_content PASSED [ 81%]
+test_Vec3D.py::Test___iadd__::test_wrong_type PASSED [ 81%]
+test_Vec3D.py::Test___iadd__::test_correct_addition PASSED [ 81%]
+test_Vec3D.py::Test___iadd__::test_added_Vec3D_unchanged PASSED [ 82%]
+test_Vec3D.py::Test___isub__::test_wrong_type PASSED [ 82%]
+test_Vec3D.py::Test___isub__::test_correct_subtraction PASSED [ 83%]
+test_Vec3D.py::Test___isub__::test_subtracted_Vec3D_unchanged PASSED [ 83%]
+test_Vec3D.py::Test___imul__::test_wrong_type PASSED [ 83%]
+test_Vec3D.py::Test___imul__::test_correct_float_multiplication PASSED [ 84%]
+test_Vec3D.py::Test___itruediv__::test_wrong_type PASSED [ 84%]
+test_Vec3D.py::Test___itruediv__::test_correct_float_division PASSED [ 85%]
+test_Vec3D.py::Test___mul__::test_wrong_type PASSED [ 85%]
+test_Vec3D.py::Test___mul__::test_scalar_product PASSED [ 85%]
+test_Vec3D.py::Test___mul__::test_right_float_multiplication PASSED [ 86%]
+test_Vec3D.py::Test___mul__::test_left_float_multiplication PASSED [ 86%]
+test_Vec3D.py::Test___eq__::test_wrong_type PASSED [ 87%]
+test_Vec3D.py::Test___eq__::test_equal_components PASSED [ 87%]
+test_Vec3D.py::Test___ne__::test_wrong_type PASSED [ 87%]
+test_Vec3D.py::Test___ne__::test_one_different_component PASSED [ 88%]
+test_Vec3D.py::Test_norm::test_correct_result PASSED [ 88%]
+test_Vec3D.py::Test_norm2::test_correct_result PASSED [ 89%]
+test_Vec3D.py::Test_normalize::test_correct_result PASSED [ 89%]
+test_Vec3D.py::Test_cross::test_wrong_type PASSED [ 89%]
+test_Vec3D.py::Test_cross::test_correct_return_type PASSED [ 90%]
+test_Vec3D.py::Test_cross::test_correct_result PASSED [ 90%]
+test_Vec3D.py::Test___add__::test_wrong_type PASSED [ 90%]
+test_Vec3D.py::Test___add__::test_correct_return_type PASSED [ 91%]
+test_Vec3D.py::Test___add__::test_new_object_returned PASSED [ 91%]
+test_Vec3D.py::Test___add__::test_correct_result PASSED [ 92%]
+test_Vec3D.py::Test___sub__::test_wrong_type PASSED [ 92%]
+test_Vec3D.py::Test___sub__::test_correct_return_type PASSED [ 92%]
+test_Vec3D.py::Test___sub__::test_new_object_returned PASSED [ 93%]
+test_Vec3D.py::Test___sub__::test_correct_result PASSED [ 93%]
+test_Vec3D.py::Test___neg__::test_correct_return_type PASSED [ 94%]
+test_Vec3D.py::Test___neg__::test_new_object_returned PASSED [ 94%]
+test_Vec3D.py::Test___neg__::test_correct_result PASSED [ 94%]
+test_Vec3D.py::Test___truediv__::test_wrong_type PASSED [ 95%]
+test_Vec3D.py::Test___truediv__::test_correct_return_type PASSED [ 95%]
+test_Vec3D.py::Test___truediv__::test_new_object_returned PASSED [ 96%]
+test_Vec3D.py::Test___truediv__::test_correct_result PASSED [ 96%]
+test_Vec3D.py::Test_r::test_getter_correct_type PASSED [ 96%]
+test_Vec3D.py::Test_r::test_getter_correct_size PASSED [ 97%]
+test_Vec3D.py::Test_r::test_getter_correct_content PASSED [ 97%]
+test_Vec3D.py::Test_r::test_setter_wrong_size PASSED [ 98%]
+test_Vec3D.py::Test_r::test_setter_wrong_type PASSED [ 98%]
+test_Vec3D.py::Test_r::test_setter_wrong_list_size PASSED [ 98%]
+test_Vec3D.py::Test_r::test_setter_correct_assignment PASSED [ 99%]
+test_Vec3D.py::Test_r::test_setter_correct_assignment_to_Vec3D PASSED [ 99%]
+test_Vec3D.py::Test_r::test_setter_index_assignment_not_possible PASSED [100%]
diff --git a/var/spack/repos/builtin/packages/n2p2/test/result-check.sh b/var/spack/repos/builtin/packages/n2p2/test/result-check.sh
new file mode 100755
index 0000000000..cc7acd780a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/n2p2/test/result-check.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+grep -e "No errors detected" "$1" > test-result.txt
+grep -e "PASSED" "$2" >> test-result.txt
+
+if cmp -s $3 test-result.txt; then
+ echo "Test of n2p2 PASSED !"
+else
+ echo "Test of n2p2 Failed !"
+fi
+
+rm $1 $2 test-result.txt
diff --git a/var/spack/repos/builtin/packages/nacos/package.py b/var/spack/repos/builtin/packages/nacos/package.py
index 6aad25b31a..7688825a1f 100644
--- a/var/spack/repos/builtin/packages/nacos/package.py
+++ b/var/spack/repos/builtin/packages/nacos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nag/package.py b/var/spack/repos/builtin/packages/nag/package.py
index 4f39548065..fd477e4db2 100644
--- a/var/spack/repos/builtin/packages/nag/package.py
+++ b/var/spack/repos/builtin/packages/nag/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nalu-wind/package.py b/var/spack/repos/builtin/packages/nalu-wind/package.py
index 1f54887dc7..1e55739c1d 100644
--- a/var/spack/repos/builtin/packages/nalu-wind/package.py
+++ b/var/spack/repos/builtin/packages/nalu-wind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,17 @@ from spack import *
import sys
-class NaluWind(CMakePackage):
+def _parse_float(val):
+ try:
+ return float(val) > 0.0
+ except ValueError:
+ return False
+
+
+class NaluWind(CMakePackage, CudaPackage):
"""Nalu-Wind: Wind energy focused variant of Nalu."""
- homepage = "https://github.com/exawind/nalu-wind"
+ homepage = "https://nalu-wind.readthedocs.io"
git = "https://github.com/exawind/nalu-wind.git"
maintainers = ['jrood-nrel']
@@ -19,14 +26,14 @@ class NaluWind(CMakePackage):
version('master', branch='master')
- # Options
- variant('shared', default=(sys.platform != 'darwin'),
- description='Build dependencies as shared libraries')
variant('pic', default=True,
description='Position independent code')
- variant('test_tol', default='default',
- description='Tolerance for regression tests')
- # Third party libraries
+ variant('abs_tol', default=1.0e-15,
+ values=_parse_float,
+ description='Absolute tolerance for regression tests')
+ variant('rel_tol', default=1.0e-12,
+ values=_parse_float,
+ description='Relative tolerance for regression tests')
variant('openfast', default=False,
description='Compile with OpenFAST support')
variant('tioga', default=False,
@@ -37,108 +44,80 @@ class NaluWind(CMakePackage):
description='Compile with Catalyst support')
variant('fftw', default=False,
description='Compile with FFTW support')
+ variant('boost', default=False,
+ description='Enable Boost integration')
+ variant('wind-utils', default=False,
+ description='Build wind-utils')
- # Required dependencies
depends_on('mpi')
- depends_on('yaml-cpp@0.5.3:', when='+shared')
- depends_on('yaml-cpp~shared@0.5.3:', when='~shared')
+ depends_on('yaml-cpp@0.5.3:')
+ depends_on('trilinos@master,develop ~cuda~wrapper+exodus+tpetra+muelu+belos+ifpack2+amesos2+zoltan+stk+boost~superlu-dist~superlu+hdf5+zlib+pnetcdf+shards~hypre', when='~cuda')
# Cannot build Trilinos as a shared library with STK on Darwin
- # which is why we have a 'shared' variant for Nalu-Wind
# https://github.com/trilinos/Trilinos/issues/2994
- depends_on('trilinos+exodus+tpetra+muelu+belos+ifpack2+amesos2+zoltan+stk+boost~superlu-dist+superlu+hdf5+zlib+pnetcdf+shards~hypre@master,develop', when='+shared')
- depends_on('trilinos~shared+exodus+tpetra+muelu+belos+ifpack2+amesos2+zoltan+stk+boost~superlu-dist+superlu+hdf5+zlib+pnetcdf+shards~hypre@master,develop', when='~shared')
- # Optional dependencies
- depends_on('openfast+cxx', when='+openfast+shared')
- depends_on('openfast+cxx~shared', when='+openfast~shared')
- depends_on('tioga', when='+tioga+shared')
- depends_on('tioga~shared', when='+tioga~shared')
- depends_on('hypre+mpi+int64~superlu-dist', when='+hypre+shared')
- depends_on('hypre+mpi+int64~superlu-dist~shared', when='+hypre~shared')
+ depends_on('trilinos@master,develop ~cuda~wrapper+exodus+tpetra+muelu+belos+ifpack2+amesos2+zoltan+stk+boost~superlu-dist~superlu+hdf5+zlib+pnetcdf+shards~hypre~shared', when=(sys.platform == 'darwin'))
+ depends_on('openfast@master,develop +cxx', when='+openfast')
+ depends_on('tioga@master,develop', when='+tioga')
+ depends_on('hypre@develop,2.18.2: +mpi~superlu-dist', when='+hypre')
+ depends_on('kokkos-nvcc-wrapper', type='build', when='+cuda')
+ for _arch in CudaPackage.cuda_arch_values:
+ depends_on('trilinos@master,develop ~shared+exodus+tpetra+muelu+belos+ifpack2+amesos2+zoltan+stk+boost~superlu-dist~superlu+hdf5+zlib+pnetcdf+shards~hypre+cuda+cuda_rdc+wrapper cuda_arch={0}'.format(_arch),
+ when='+cuda cuda_arch={0}'.format(_arch))
+ depends_on('hypre@develop +mpi+cuda~int64~superlu-dist cuda_arch={0}'.format(_arch),
+ when='+hypre+cuda cuda_arch={0}'.format(_arch))
depends_on('trilinos-catalyst-ioss-adapter', when='+catalyst')
- # FFTW doesn't have a 'shared' variant at this moment
depends_on('fftw+mpi', when='+fftw')
+ depends_on('boost cxxstd=14', when='+boost')
def cmake_args(self):
spec = self.spec
- options = []
-
- options.extend([
- '-DTrilinos_DIR:PATH=%s' % spec['trilinos'].prefix,
- '-DYAML_DIR:PATH=%s' % spec['yaml-cpp'].prefix,
- '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
- '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
- '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
- '-DMPI_C_COMPILER=%s' % spec['mpi'].mpicc,
- '-DMPI_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
- '-DMPI_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
- '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=%s' % (
- 'ON' if '+pic' in spec else 'OFF'),
- ])
+ args = [
+ self.define_from_variant('CMAKE_POSITION_INDEPENDENT_CODE', 'pic'),
+ self.define('CMAKE_CXX_COMPILER', spec['mpi'].mpicxx),
+ self.define('CMAKE_C_COMPILER', spec['mpi'].mpicc),
+ self.define('CMAKE_Fortran_COMPILER', spec['mpi'].mpifc),
+ self.define('Trilinos_DIR', spec['trilinos'].prefix),
+ self.define('YAML_DIR', spec['yaml-cpp'].prefix),
+ self.define_from_variant('ENABLE_CUDA', 'cuda'),
+ self.define_from_variant('ENABLE_WIND_UTILS', 'wind-utils'),
+ self.define_from_variant('ENABLE_BOOST', 'boost'),
+ ]
+
+ args.append(self.define_from_variant('ENABLE_OPENFAST', 'openfast'))
if '+openfast' in spec:
- options.extend([
- '-DENABLE_OPENFAST:BOOL=ON',
- '-DOpenFAST_DIR:PATH=%s' % spec['openfast'].prefix
- ])
- else:
- options.append('-DENABLE_OPENFAST:BOOL=OFF')
+ args.append(self.define('OpenFAST_DIR', spec['openfast'].prefix))
+ args.append(self.define_from_variant('ENABLE_TIOGA', 'tioga'))
if '+tioga' in spec:
- options.extend([
- '-DENABLE_TIOGA:BOOL=ON',
- '-DTIOGA_DIR:PATH=%s' % spec['tioga'].prefix
- ])
- else:
- options.append('-DENABLE_TIOGA:BOOL=OFF')
+ args.append(self.define('TIOGA_DIR', spec['tioga'].prefix))
+ args.append(self.define_from_variant('ENABLE_HYPRE', 'hypre'))
if '+hypre' in spec:
- options.extend([
- '-DENABLE_HYPRE:BOOL=ON',
- '-DHYPRE_DIR:PATH=%s' % spec['hypre'].prefix
- ])
- else:
- options.append('-DENABLE_HYPRE:BOOL=OFF')
+ args.append(self.define('HYPRE_DIR', spec['hypre'].prefix))
+ args.append(self.define_from_variant('ENABLE_PARAVIEW_CATALYST', 'catalyst'))
if '+catalyst' in spec:
- options.extend([
- '-DENABLE_PARAVIEW_CATALYST:BOOL=ON',
- '-DPARAVIEW_CATALYST_INSTALL_PATH:PATH=%s' %
- spec['trilinos-catalyst-ioss-adapter'].prefix
- ])
- else:
- options.append('-DENABLE_PARAVIEW_CATALYST:BOOL=OFF')
+ args.append(self.define('PARAVIEW_CATALYST_INSTALL_PATH',
+ spec['trilinos-catalyst-ioss-adapter'].prefix))
+ args.append(self.define_from_variant('ENABLE_FFTW', 'fftw'))
if '+fftw' in spec:
- options.extend([
- '-DENABLE_FFTW:BOOL=ON',
- '-DFFTW_DIR:PATH=%s' % spec['fftw'].prefix
+ args.append(self.define('FFTW_DIR', spec['fftw'].prefix))
+
+ args.append(self.define('ENABLE_TESTS', self.run_tests))
+ if self.run_tests:
+ args.extend([
+ self.define('TEST_TOLERANCE', spec.variants['abs_tol'].value),
+ self.define('TEST_REL_TOL', spec.variants['rel_tol'].value),
])
- else:
- options.append('-DENABLE_FFTW:BOOL=OFF')
if 'darwin' in spec.architecture:
- options.append('-DCMAKE_MACOSX_RPATH:BOOL=ON')
+ args.append(self.define('CMAKE_MACOSX_RPATH', 'ON'))
- if self.run_tests:
- options.append('-DENABLE_TESTS:BOOL=ON')
- else:
- options.append('-DENABLE_TESTS:BOOL=OFF')
-
- if self.spec.variants['test_tol'].value != 'default':
- try:
- test_tol = float(self.spec.variants['test_tol'].value)
- if test_tol <= 0.0:
- raise ValueError
- options.append('-DTEST_TOLERANCE:STRING={tol}'.format(
- tol=test_tol))
- except ValueError:
- print("Specified test_tol must be a positive float. "
- "Using the default.")
-
- return options
+ return args
@run_before('cmake')
def add_submodules(self):
- if self.run_tests:
+ if self.run_tests or '+wind-utils' in self.spec:
git = which('git')
git('submodule', 'update', '--init', '--recursive')
diff --git a/var/spack/repos/builtin/packages/nalu/package.py b/var/spack/repos/builtin/packages/nalu/package.py
index 8e6abea569..5f443554e6 100644
--- a/var/spack/repos/builtin/packages/nalu/package.py
+++ b/var/spack/repos/builtin/packages/nalu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -53,8 +53,7 @@ class Nalu(CMakePackage):
'-DMPI_C_COMPILER=%s' % spec['mpi'].mpicc,
'-DMPI_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
'-DMPI_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
- '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=%s' % (
- 'ON' if '+pic' in spec else 'OFF'),
+ self.define_from_variant('CMAKE_POSITION_INDEPENDENT_CODE', 'pic'),
])
if '+tioga' in spec:
diff --git a/var/spack/repos/builtin/packages/namd/package.py b/var/spack/repos/builtin/packages/namd/package.py
index 1da71d20f5..aaa5529db5 100644
--- a/var/spack/repos/builtin/packages/namd/package.py
+++ b/var/spack/repos/builtin/packages/namd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ from spack import *
import llnl.util.tty as tty
-class Namd(MakefilePackage):
+class Namd(MakefilePackage, CudaPackage):
"""NAMDis a parallel molecular dynamics code designed for
high-performance simulation of large biomolecular systems."""
@@ -26,8 +26,8 @@ class Namd(MakefilePackage):
version('2.13', '9e3323ed856e36e34d5c17a7b0341e38')
version('2.12', '2a1191909b1ab03bf0205971ad4d8ee9')
- variant('fftw', default='3', values=('none', '2', '3', 'mkl'),
- description='Enable the use of FFTW/FFTW3/MKL FFT')
+ variant('fftw', default='3', values=('none', '2', '3', 'mkl', 'amdfftw'),
+ description='Enable the use of FFTW/FFTW3/MKL FFT/AMDFFTW')
variant('interface', default='none', values=('none', 'tcl', 'python'),
description='Enables TCL and/or python interface')
@@ -45,6 +45,8 @@ class Namd(MakefilePackage):
depends_on('fftw@:2.99', when="fftw=2")
depends_on('fftw@3:', when="fftw=3")
+ depends_on('amdfftw', when="fftw=amdfftw")
+
depends_on('intel-mkl', when="fftw=mkl")
depends_on('tcl', when='interface=tcl')
@@ -52,6 +54,12 @@ class Namd(MakefilePackage):
depends_on('tcl', when='interface=python')
depends_on('python', when='interface=python')
+ # https://www.ks.uiuc.edu/Research/namd/2.12/features.html
+ # https://www.ks.uiuc.edu/Research/namd/2.13/features.html
+ # https://www.ks.uiuc.edu/Research/namd/2.14/features.html
+ depends_on('cuda@6.5.14:7.5.18', when='@2.12 +cuda')
+ depends_on('cuda@8.0.61:', when='@2.13: +cuda')
+
def _copy_arch_file(self, lib):
config_filename = 'arch/{0}.{1}'.format(self.arch, lib)
copy('arch/Linux-x86_64.{0}'.format(lib),
@@ -97,12 +105,16 @@ class Namd(MakefilePackage):
optims_opts = {
'gcc': m64 + '-O3 -fexpensive-optimizations \
-ffast-math -lpthread ' + archopt,
- 'intel': '-O2 -ip -qopenmp-simd' + archopt}
+ 'intel': '-O2 -ip -qopenmp-simd' + archopt,
+ 'aocc': m64 + '-O3 -ffp-contract=fast -ffast-math \
+ -fopenmp ' + archopt}
else:
optims_opts = {
'gcc': m64 + '-O3 -fexpensive-optimizations \
- -ffast-math ' + archopt,
- 'intel': '-O2 -ip ' + archopt}
+ -ffast-math -lpthread ' + archopt,
+ 'intel': '-O2 -ip ' + archopt,
+ 'aocc': m64 + '-O3 -ffp-contract=fast \
+ -ffast-math ' + archopt}
optim_opts = optims_opts[self.compiler.name] \
if self.compiler.name in optims_opts else ''
@@ -187,6 +199,10 @@ class Namd(MakefilePackage):
opts.append('--without-fftw')
elif fftw_version == 'mkl':
self._append_option(opts, 'mkl')
+ elif fftw_version == 'amdfftw':
+ self._copy_arch_file('fftw3')
+ opts.extend(['--with-fftw3',
+ '--fftw-prefix', spec['amdfftw'].prefix])
else:
_fftw = 'fftw{0}'.format('' if fftw_version == '2' else '3')
@@ -206,6 +222,12 @@ class Namd(MakefilePackage):
'--without-python'
])
+ if '+cuda' in spec:
+ self._append_option(opts, 'cuda')
+ filter_file('^CUDADIR=.*$',
+ 'CUDADIR={0}'.format(spec['cuda'].prefix),
+ join_path('arch', self.arch + '.cuda'))
+
config = Executable('./config')
config(self.build_directory, *opts)
diff --git a/var/spack/repos/builtin/packages/nano/package.py b/var/spack/repos/builtin/packages/nano/package.py
index 9fce06f929..5c076e8909 100644
--- a/var/spack/repos/builtin/packages/nano/package.py
+++ b/var/spack/repos/builtin/packages/nano/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nanoflann/package.py b/var/spack/repos/builtin/packages/nanoflann/package.py
index faeb5d7b16..8d80d79f3b 100644
--- a/var/spack/repos/builtin/packages/nanoflann/package.py
+++ b/var/spack/repos/builtin/packages/nanoflann/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nanomsg/package.py b/var/spack/repos/builtin/packages/nanomsg/package.py
index c3c5bb05e6..f22c50134b 100644
--- a/var/spack/repos/builtin/packages/nanomsg/package.py
+++ b/var/spack/repos/builtin/packages/nanomsg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nanopb/package.py b/var/spack/repos/builtin/packages/nanopb/package.py
index 60829cbd91..023184f101 100644
--- a/var/spack/repos/builtin/packages/nanopb/package.py
+++ b/var/spack/repos/builtin/packages/nanopb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nasm/package.py b/var/spack/repos/builtin/packages/nasm/package.py
index ee0da70daf..a45c02716d 100644
--- a/var/spack/repos/builtin/packages/nasm/package.py
+++ b/var/spack/repos/builtin/packages/nasm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,7 +29,7 @@ class Nasm(AutotoolsPackage):
def patch(self):
# Remove flags not recognized by the NVIDIA compiler
- if self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%nvhpc@:20.11'):
filter_file(r'CFLAGS="\$pa_add_cflags__old_cflags -Werror=.*"',
'CFLAGS="$pa_add_cflags__old_cflags"', 'configure')
filter_file(r'CFLAGS="\$pa_add_flags__old_flags -Werror=.*"',
diff --git a/var/spack/repos/builtin/packages/nauty/package.py b/var/spack/repos/builtin/packages/nauty/package.py
index cccacd8e6c..4b485a580d 100644
--- a/var/spack/repos/builtin/packages/nauty/package.py
+++ b/var/spack/repos/builtin/packages/nauty/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nbdkit/package.py b/var/spack/repos/builtin/packages/nbdkit/package.py
index 864af474a8..6df13e2c88 100644
--- a/var/spack/repos/builtin/packages/nbdkit/package.py
+++ b/var/spack/repos/builtin/packages/nbdkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,3 +24,7 @@ class Nbdkit(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
+
+ def configure_args(self):
+ args = ['bashcompdir={0}'.format(prefix)]
+ return args
diff --git a/var/spack/repos/builtin/packages/ncbi-magicblast/package.py b/var/spack/repos/builtin/packages/ncbi-magicblast/package.py
index 54588463bd..e9e7a42f37 100644
--- a/var/spack/repos/builtin/packages/ncbi-magicblast/package.py
+++ b/var/spack/repos/builtin/packages/ncbi-magicblast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ncbi-rmblastn/isb-2.9.0+-rmblast-p1.patch b/var/spack/repos/builtin/packages/ncbi-rmblastn/isb-2.9.0+-rmblast-p1.patch
deleted file mode 100644
index 6dd66369e5..0000000000
--- a/var/spack/repos/builtin/packages/ncbi-rmblastn/isb-2.9.0+-rmblast-p1.patch
+++ /dev/null
@@ -1,238 +0,0 @@
-diff -rupN ncbi-blast-2.9.0+-src.orig/c++/src/app/rmblastn/Makefile.in ncbi-blast-2.9.0+-src/c++/src/app/rmblastn/Makefile.in
---- ncbi-blast-2.9.0+-src.orig/c++/src/app/rmblastn/Makefile.in 1969-12-31 16:00:00.000000000 -0800
-+++ ncbi-blast-2.9.0+-src/c++/src/app/rmblastn/Makefile.in 2019-04-01 13:25:24.854320235 -0700
-@@ -0,0 +1,16 @@
-+# $Id: Makefile.in 371962 2012-08-14 09:45:56Z coulouri $
-+
-+# Meta-makefile("APP" project)
-+#################################
-+
-+REQUIRES = objects algo
-+
-+APP_PROJ = rmblastn
-+
-+srcdir = @srcdir@
-+include @builddir@/Makefile.meta
-+
-+.PHONY: all $(APP_PROJ)
-+
-+rmblastn:
-+ ${MAKE} ${MFLAGS} -f Makefile.rmblastn_app
-diff -rupN ncbi-blast-2.9.0+-src.orig/c++/src/app/rmblastn/Makefile.rmblastn.app ncbi-blast-2.9.0+-src/c++/src/app/rmblastn/Makefile.rmblastn.app
---- ncbi-blast-2.9.0+-src.orig/c++/src/app/rmblastn/Makefile.rmblastn.app 1969-12-31 16:00:00.000000000 -0800
-+++ ncbi-blast-2.9.0+-src/c++/src/app/rmblastn/Makefile.rmblastn.app 2019-04-01 13:25:24.856320218 -0700
-@@ -0,0 +1,16 @@
-+WATCHERS = camacho madden maning
-+
-+APP = rmblastn
-+SRC = rmblastn_app
-+LIB_ = $(BLAST_INPUT_LIBS) $(BLAST_LIBS) $(OBJMGR_LIBS)
-+LIB = blast_app_util $(LIB_:%=%$(STATIC))
-+
-+# De-universalize Mac builds to work around a PPC toolchain limitation
-+CFLAGS = $(FAST_CFLAGS:ppc=i386)
-+CXXFLAGS = $(FAST_CXXFLAGS:ppc=i386)
-+LDFLAGS = $(FAST_LDFLAGS:ppc=i386)
-+
-+CPPFLAGS = $(ORIG_CPPFLAGS)
-+LIBS = $(CMPRS_LIBS) $(DL_LIBS) $(PCRE_LIBS) $(NETWORK_LIBS) $(ORIG_LIBS)
-+
-+REQUIRES = objects -Cygwin
-diff -rupN ncbi-blast-2.9.0+-src.orig/c++/src/app/rmblastn/rmblastn_app.cpp ncbi-blast-2.9.0+-src/c++/src/app/rmblastn/rmblastn_app.cpp
---- ncbi-blast-2.9.0+-src.orig/c++/src/app/rmblastn/rmblastn_app.cpp 1969-12-31 16:00:00.000000000 -0800
-+++ ncbi-blast-2.9.0+-src/c++/src/app/rmblastn/rmblastn_app.cpp 2019-04-01 13:25:24.858320200 -0700
-@@ -0,0 +1,183 @@
-+/* $Id: rmblastn_app.cpp 371962 2012-08-14 09:45:56Z coulouri $
-+ * ===========================================================================
-+ *
-+ * PUBLIC DOMAIN NOTICE
-+ *
-+ * ===========================================================================
-+ *
-+ * Authors: Robert M. Hubley
-+ * Christiam Camacho ( original blastn_app.cpp )
-+ *
-+ */
-+
-+/** @file rmblastn_app.cpp
-+ * RMBLASTN command line application
-+ */
-+
-+#ifndef SKIP_DOXYGEN_PROCESSING
-+static char const rcsid[] =
-+ "$Id: rmblastn_app.cpp 371962 2012-08-14 09:45:56Z coulouri $";
-+#endif /* SKIP_DOXYGEN_PROCESSING */
-+
-+#include <ncbi_pch.hpp>
-+#include <corelib/ncbiapp.hpp>
-+#include <algo/blast/api/local_blast.hpp>
-+#include <algo/blast/api/remote_blast.hpp>
-+#include <algo/blast/blastinput/blast_fasta_input.hpp>
-+#include <algo/blast/blastinput/rmblastn_args.hpp>
-+#include <algo/blast/api/objmgr_query_data.hpp>
-+#include <algo/blast/format/blast_format.hpp>
-+#include "../blast/blast_app_util.hpp"
-+
-+#ifndef SKIP_DOXYGEN_PROCESSING
-+USING_NCBI_SCOPE;
-+USING_SCOPE(blast);
-+USING_SCOPE(objects);
-+#endif
-+
-+class CRMBlastnApp : public CNcbiApplication
-+{
-+public:
-+ /** @inheritDoc */
-+ CRMBlastnApp() {
-+ CRef<CVersion> version(new CVersion());
-+ version->SetVersionInfo(new CBlastVersion());
-+ SetFullVersion(version);
-+ }
-+private:
-+ /** @inheritDoc */
-+ virtual void Init();
-+ /** @inheritDoc */
-+ virtual int Run();
-+
-+ /// This application's command line args
-+ CRef<CRMBlastnAppArgs> m_CmdLineArgs;
-+};
-+
-+
-+
-+void CRMBlastnApp::Init()
-+{
-+ // formulate command line arguments
-+ m_CmdLineArgs.Reset(new CRMBlastnAppArgs());
-+
-+ // read the command line
-+
-+ HideStdArgs(fHideLogfile | fHideConffile | fHideFullVersion | fHideXmlHelp | fHideDryRun);
-+ SetupArgDescriptions(m_CmdLineArgs->SetCommandLine());
-+}
-+
-+int CRMBlastnApp::Run(void)
-+{
-+ int status = BLAST_EXIT_SUCCESS;
-+
-+ try {
-+
-+ // Allow the fasta reader to complain on invalid sequence input
-+ SetDiagPostLevel(eDiag_Warning);
-+
-+ /*** Get the BLAST options ***/
-+ const CArgs& args = GetArgs();
-+ CRef<CBlastOptionsHandle> opts_hndl;
-+ if(RecoverSearchStrategy(args, m_CmdLineArgs)) {
-+ opts_hndl.Reset(&*m_CmdLineArgs->SetOptionsForSavedStrategy(args));
-+ }
-+ else {
-+ opts_hndl.Reset(&*m_CmdLineArgs->SetOptions(args));
-+ }
-+ const CBlastOptions& opt = opts_hndl->GetOptions();
-+
-+ /*** Get the query sequence(s) ***/
-+ CRef<CQueryOptionsArgs> query_opts =
-+ m_CmdLineArgs->GetQueryOptionsArgs();
-+ SDataLoaderConfig dlconfig(query_opts->QueryIsProtein());
-+ dlconfig.OptimizeForWholeLargeSequenceRetrieval();
-+ CBlastInputSourceConfig iconfig(dlconfig, query_opts->GetStrand(),
-+ query_opts->UseLowercaseMasks(),
-+ query_opts->GetParseDeflines(),
-+ query_opts->GetRange());
-+ iconfig.SetSkipSeqCheck(true);
-+ CBlastFastaInputSource fasta(m_CmdLineArgs->GetInputStream(), iconfig);
-+ CBlastInput input(&fasta, m_CmdLineArgs->GetQueryBatchSize());
-+
-+ /*** Initialize the database/subject ***/
-+ CRef<CBlastDatabaseArgs> db_args(m_CmdLineArgs->GetBlastDatabaseArgs());
-+ CRef<CLocalDbAdapter> db_adapter;
-+ CRef<CScope> scope;
-+ InitializeSubject(db_args, opts_hndl, m_CmdLineArgs->ExecuteRemotely(),
-+ db_adapter, scope);
-+ _ASSERT(db_adapter && scope);
-+
-+ // Initialize the megablast database index now so we can know whether an indexed search will be run.
-+ // This is only important for the reference in the report, but would be done anyway.
-+ if (opt.GetUseIndex() && !m_CmdLineArgs->ExecuteRemotely()) {
-+ CRef<CBlastOptions> my_options(&(opts_hndl->SetOptions()));
-+ CSetupFactory::InitializeMegablastDbIndex(my_options);
-+ }
-+
-+ /*** Get the formatting options ***/
-+ CRef<CFormattingArgs> fmt_args(m_CmdLineArgs->GetFormattingArgs());
-+ CBlastFormat formatter(opt, *db_adapter,
-+ fmt_args->GetFormattedOutputChoice(),
-+ query_opts->GetParseDeflines(),
-+ m_CmdLineArgs->GetOutputStream(),
-+ fmt_args->GetNumDescriptions(),
-+ fmt_args->GetNumAlignments(),
-+ *scope,
-+ opt.GetMatrixName(),
-+ fmt_args->ShowGis(),
-+ fmt_args->DisplayHtmlOutput(),
-+ opt.GetQueryGeneticCode(),
-+ opt.GetDbGeneticCode(),
-+ opt.GetSumStatisticsMode(),
-+ m_CmdLineArgs->ExecuteRemotely(),
-+ db_adapter->GetFilteringAlgorithm(),
-+ fmt_args->GetCustomOutputFormatSpec(),
-+ m_CmdLineArgs->GetTask() == "megablast",
-+ opt.GetMBIndexLoaded());
-+
-+
-+ formatter.PrintProlog();
-+
-+ /*** Process the input ***/
-+ for (; !input.End(); formatter.ResetScopeHistory()) {
-+
-+ CRef<CBlastQueryVector> query_batch(input.GetNextSeqBatch(*scope));
-+ CRef<IQueryFactory> queries(new CObjMgr_QueryFactory(*query_batch));
-+
-+ SaveSearchStrategy(args, m_CmdLineArgs, queries, opts_hndl);
-+
-+ CRef<CSearchResultSet> results;
-+
-+ if (m_CmdLineArgs->ExecuteRemotely()) {
-+ CRef<CRemoteBlast> rmt_blast =
-+ InitializeRemoteBlast(queries, db_args, opts_hndl,
-+ m_CmdLineArgs->ProduceDebugRemoteOutput());
-+ results = rmt_blast->GetResultSet();
-+ } else {
-+ CLocalBlast lcl_blast(queries, opts_hndl, db_adapter);
-+ lcl_blast.SetNumberOfThreads(m_CmdLineArgs->GetNumThreads());
-+ results = lcl_blast.Run();
-+ }
-+
-+ ITERATE(CSearchResultSet, result, *results) {
-+ formatter.PrintOneResultSet(**result, query_batch);
-+ }
-+ }
-+
-+ formatter.PrintEpilog(opt);
-+
-+ if (m_CmdLineArgs->ProduceDebugOutput()) {
-+ opts_hndl->GetOptions().DebugDumpText(NcbiCerr, "BLAST options", 1);
-+ }
-+
-+ } CATCH_ALL(status)
-+ return status;
-+}
-+
-+#ifndef SKIP_DOXYGEN_PROCESSING
-+int main(int argc, const char* argv[] /*, const char* envp[]*/)
-+{
-+ return CRMBlastnApp().AppMain(argc, argv, 0, eDS_Default, 0);
-+}
-+#endif /* SKIP_DOXYGEN_PROCESSING */
-
---- ncbi-blast-2.9.0+-src.orig/c++/src/objtools/blast/seqdb_reader/seqdbimpl.cpp 2019-08-02 15:07:03.643749527 -0700
-+++ ncbi-blast-2.9.0+-src/c++/src/objtools/blast/seqdb_reader/seqdbimpl.cpp 2019-08-02 15:07:05.839730395 -0700
-@@ -808,7 +808,6 @@
- if (! m_OidListSetup) {
- x_GetOidList(locked);
- }
-- m_Atlas.Unlock(locked);
-
- if (const CSeqDBVol * vol = m_VolSet.FindVol(oid, vol_oid)) {
- return vol->GetSeqIDs(vol_oid);
diff --git a/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py b/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py
index a0f7873c33..e7ef8bf897 100644
--- a/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py
+++ b/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,11 +12,35 @@ class NcbiRmblastn(AutotoolsPackage):
homepage = "http://www.repeatmasker.org/RMBlast.html"
url = "ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.9.0/ncbi-blast-2.9.0+-src.tar.gz"
+ version('2.11.0', sha256='d88e1858ae7ce553545a795a2120e657a799a6d334f2a07ef0330cc3e74e1954')
version('2.9.0', sha256='a390cc2d7a09422759fc178db84de9def822cbe485916bbb2ec0d215dacdc257')
- patch('isb-2.9.0+-rmblast-p1.patch', when="@2.9.0")
+
+ # There is a corresponding gzipped patch file associated with each version.
+ # According to the documentation, http://www.repeatmasker.org/RMBlast.html,
+ # Download NCBI Blast+ and rmblast patch file:
+ # ncbi-blast-2.11.0+-src.tar.gz
+ # isb-2.11.0+-rmblast.patch.gz
+ # The patch is downloaded and unzipped in the ncbi-rmblastn Spack package
+ # directory to make it available for the patch directive.
+ patch(
+ 'http://www.repeatmasker.org/isb-2.11.0+-rmblast.patch.gz',
+ sha256='ce985abd3512834adb9ad3e4078fbf9608a33a2ee6538a1e94b641490c92f899',
+ archive_sha256='0fc27781c2ea2f17645247e2f3775b5d18c56f0b62761a865347be745ea4f6be',
+ when='@2.11.0'
+ )
+ patch(
+ 'http://www.repeatmasker.org/isb-2.9.0+-rmblast.patch.gz',
+ sha256='ffa0845801aed11f4215b452532f3ff5b3dcb49ac8c14169568aaa585b9450ed',
+ archive_sha256='e746ee480ade608052306fd21f015c8a323f27029f65399275216f9a4c882d59',
+ when='@2.9.0'
+ )
configure_directory = 'c++'
+ def url_for_version(self, version):
+ url = "ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/{0}/ncbi-blast-{1}+-src.tar.gz"
+ return url.format(version, version)
+
def configure_args(self):
args = [
"--with-mt",
diff --git a/var/spack/repos/builtin/packages/ncbi-toolkit/package.py b/var/spack/repos/builtin/packages/ncbi-toolkit/package.py
index c3be024e81..e8d62cb6c4 100644
--- a/var/spack/repos/builtin/packages/ncbi-toolkit/package.py
+++ b/var/spack/repos/builtin/packages/ncbi-toolkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nccl-tests/package.py b/var/spack/repos/builtin/packages/nccl-tests/package.py
index cb5c0cc9f0..9e1a202da2 100644
--- a/var/spack/repos/builtin/packages/nccl-tests/package.py
+++ b/var/spack/repos/builtin/packages/nccl-tests/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,6 +31,11 @@ class NcclTests(MakefilePackage, CudaPackage):
targets.append('MPI=1')
return targets
+ def setup_build_environment(self, env):
+ cuda_arch = self.spec.variants["cuda_arch"].value
+ cuda_gencode = " ".join(self.cuda_flags(cuda_arch))
+ env.set("NVCC_GENCODE", cuda_gencode)
+
def install(self, spec, prefix):
mkdirp(prefix.bin)
install_tree('./build', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/nccl/package.py b/var/spack/repos/builtin/packages/nccl/package.py
index f805f55b1c..9c8fddf611 100644
--- a/var/spack/repos/builtin/packages/nccl/package.py
+++ b/var/spack/repos/builtin/packages/nccl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,9 @@ class Nccl(MakefilePackage, CudaPackage):
maintainers = ['adamjstewart']
+ version('2.9.6-1', sha256='c4b1f5a88f03c0ac8f1dcbe27723cd75cfe051754078d83629efaaed10ce8731')
+ version('2.8.4-1', sha256='a5c1b4da6e1608ee63baa87f6df424bba7a8b1cedad597a25d5b4cf8d56d0865')
+ version('2.8.3-1', sha256='3ae89ddb2956fff081e406a94ff54ae5e52359f5d645ce977c7eba09b3b782e6')
version('2.7.8-1', sha256='fa2bec307270f30fcf6280a85f24ea8801e0ce3b3027937c7325260a890b07e0')
version('2.7.6-1', sha256='60dd9b1743c2db6c05f60959edf98a4477f218115ef910d7ec2662f2fb5cf626')
version('2.7.5-1', sha256='26a8dec6fa0a776eb71205d618d58e26d372621719788a23b33db6fdce4426bf')
diff --git a/var/spack/repos/builtin/packages/nccmp/package.py b/var/spack/repos/builtin/packages/nccmp/package.py
index db9603b42f..6751a95b18 100644
--- a/var/spack/repos/builtin/packages/nccmp/package.py
+++ b/var/spack/repos/builtin/packages/nccmp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ncdu/package.py b/var/spack/repos/builtin/packages/ncdu/package.py
index 6218512e29..a4e5a19ef8 100644
--- a/var/spack/repos/builtin/packages/ncdu/package.py
+++ b/var/spack/repos/builtin/packages/ncdu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ncftp/package.py b/var/spack/repos/builtin/packages/ncftp/package.py
index 386d90b01a..22a342219d 100644
--- a/var/spack/repos/builtin/packages/ncftp/package.py
+++ b/var/spack/repos/builtin/packages/ncftp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ncl/for_aarch64.patch b/var/spack/repos/builtin/packages/ncl/for_aarch64.patch
new file mode 100644
index 0000000000..23799d8d00
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ncl/for_aarch64.patch
@@ -0,0 +1,10 @@
+--- spack-src/config/ymake.bak 2021-02-26 14:49:53.611863443 +0900
++++ spack-src/config/ymake 2021-02-26 14:52:08.501852485 +0900
+@@ -367,6 +367,7 @@
+ case x*64:
+ case p*64:
+ case alpha:
++ case aarch64:
+ set model = $mach
+ set arch = $mach
+ set sysincs = LINUX
diff --git a/var/spack/repos/builtin/packages/ncl/package.py b/var/spack/repos/builtin/packages/ncl/package.py
index 0046f425b8..df5b8015c1 100644
--- a/var/spack/repos/builtin/packages/ncl/package.py
+++ b/var/spack/repos/builtin/packages/ncl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,8 @@ class Ncl(Package):
version('6.5.0', sha256='133446f3302eddf237db56bf349e1ebf228240a7320699acc339a3d7ee414591')
version('6.4.0', sha256='0962ae1a1d716b182b3b27069b4afe66bf436c64c312ddfcf5f34d4ec60153c8')
+ patch('for_aarch64.patch', when='target=aarch64:')
+
patch('spack_ncl.patch')
# Make ncl compile with hdf5 1.10 (upstream as of 6.5.0)
patch('hdf5.patch', when="@6.4.0")
diff --git a/var/spack/repos/builtin/packages/nco/package.py b/var/spack/repos/builtin/packages/nco/package.py
index cd30f8742a..8e9b6e208c 100644
--- a/var/spack/repos/builtin/packages/nco/package.py
+++ b/var/spack/repos/builtin/packages/nco/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ncompress/package.py b/var/spack/repos/builtin/packages/ncompress/package.py
index c3d31ce682..f95dc9b7d4 100644
--- a/var/spack/repos/builtin/packages/ncompress/package.py
+++ b/var/spack/repos/builtin/packages/ncompress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ncurses/package.py b/var/spack/repos/builtin/packages/ncurses/package.py
index 068bba6993..40a2ec77ec 100644
--- a/var/spack/repos/builtin/packages/ncurses/package.py
+++ b/var/spack/repos/builtin/packages/ncurses/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,6 +31,10 @@ class Ncurses(AutotoolsPackage, GNUMirrorPackage):
variant('termlib', default=True,
description='Enables termlib features. This is an extra '
'lib and optional internal dependency.')
+ # Build ncurses with ABI compaitibility.
+ variant('abi', default='none', description='choose abi compatibility', values=('none', '5', '6'), multi=False)
+
+ conflicts('abi=6', when='@:5.9', msg='6 is not compatible with this release')
depends_on('pkgconfig', type='build')
@@ -65,6 +69,15 @@ class Ncurses(AutotoolsPackage, GNUMirrorPackage):
break
if usingSymlinks:
variants += '+symlinks'
+
+ abiVersion = 'none'
+ output = Executable(exe)('--abi-version', output=str, error=str)
+ if '6' in output:
+ abiVersion = '6'
+ elif '5' in output:
+ abiVersion = '5'
+ variants += ' abi=' + abiVersion
+
results.append(variants)
return results
@@ -108,6 +121,10 @@ class Ncurses(AutotoolsPackage, GNUMirrorPackage):
'--enable-tcap-names',
'--with-versioned-syms'))
+ abi = self.spec.variants['abi'].value
+ if abi != 'none':
+ opts.append('--with-abi-version=' + abi)
+
prefix = '--prefix={0}'.format(prefix)
configure = Executable('../configure')
diff --git a/var/spack/repos/builtin/packages/ncview/package.py b/var/spack/repos/builtin/packages/ncview/package.py
index 3eb944ce9c..dd50c8fba2 100644
--- a/var/spack/repos/builtin/packages/ncview/package.py
+++ b/var/spack/repos/builtin/packages/ncview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ndiff/package.py b/var/spack/repos/builtin/packages/ndiff/package.py
index a688a09241..f64c260ed4 100644
--- a/var/spack/repos/builtin/packages/ndiff/package.py
+++ b/var/spack/repos/builtin/packages/ndiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/neartree/package.py b/var/spack/repos/builtin/packages/neartree/package.py
new file mode 100644
index 0000000000..51da0d1813
--- /dev/null
+++ b/var/spack/repos/builtin/packages/neartree/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Neartree(MakefilePackage):
+ """This is a release of an API for finding nearest neighbors among
+ points in spaces of arbitrary dimensions."""
+
+ homepage = "http://neartree.sourceforge.net/"
+ url = "https://downloads.sourceforge.net/project/neartree/neartree/NearTree-3.1/NearTree-3.1.tar.gz"
+
+ version('3.1', sha256='07b668516f15a7c13c219fd005b14e73bced5dc6b23857edcc24d3e5cf0d3be3')
+
+ depends_on('libtool', type='build')
+ depends_on('cvector')
+
+ def edit(self, spec, prefix):
+ mf = FileFilter('Makefile')
+ mf.filter(r'^CC.+', "CC = {0}".format(spack_cc))
+ mf.filter(r'^INSTALL_PREFIX .+', "INSTALL_PREFIX = {0}".format(prefix))
+
+ def build(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin/packages/nek5000/package.py b/var/spack/repos/builtin/packages/nek5000/package.py
index 221b21cbb5..2acabdcc7f 100644
--- a/var/spack/repos/builtin/packages/nek5000/package.py
+++ b/var/spack/repos/builtin/packages/nek5000/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -94,6 +94,11 @@ class Nek5000(Package):
else:
filter_file(r'^#MPI=0', 'MPI=0', 'makenek')
+ # Make sure nekmpi wrapper uses srun when we know OpenMPI
+ # is not built with mpiexec
+ if '^openmpi~legacylaunchers' in spec:
+ filter_file(r'mpiexec -np', 'srun -n', 'nekmpi')
+
if '+profiling' not in spec:
filter_file(r'^#PROFILING=0', 'PROFILING=0', 'makenek')
diff --git a/var/spack/repos/builtin/packages/nekbone/package.py b/var/spack/repos/builtin/packages/nekbone/package.py
index 6f8cd220ff..c70b3ffa84 100644
--- a/var/spack/repos/builtin/packages/nekbone/package.py
+++ b/var/spack/repos/builtin/packages/nekbone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nekcem/package.py b/var/spack/repos/builtin/packages/nekcem/package.py
index 09e1988224..3d099d16f0 100644
--- a/var/spack/repos/builtin/packages/nekcem/package.py
+++ b/var/spack/repos/builtin/packages/nekcem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nekrs/package.py b/var/spack/repos/builtin/packages/nekrs/package.py
new file mode 100644
index 0000000000..731c34e21f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nekrs/package.py
@@ -0,0 +1,141 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class Nekrs(Package, CudaPackage, ROCmPackage):
+ """nekRS is an open-source Navier Stokes solver based on the spectral
+ element method targeting classical processors and hardware accelerators
+ like GPUs"""
+
+ homepage = "https://github.com/Nek5000/nekRS"
+ git = "https://github.com/Nek5000/nekRS.git"
+
+ tags = ['cfd', 'flow', 'hpc', 'solver', 'navier-stokes',
+ 'spectral-elements', 'fluid', 'ecp', 'ecp-apps']
+
+ maintainers = ['thilinarmtb', 'stgeke']
+
+ version('21.0', tag='v21.0')
+
+ variant('cuda',
+ default=False,
+ description='Activates support for CUDA')
+ variant('opencl',
+ default=False,
+ description='Activates support for OpenCL')
+ variant('hip',
+ default=False,
+ description='Activates support for HIP')
+
+ # Conflicts:
+ # nekrs includes following packages, but in order to build as part of
+ # CEED we can't leave them in as conflicts. They should be enabled
+ # sometime in future.
+ # for pkg in ['occa', 'hyper', 'nek5000', 'blas', 'lapack', 'gslib']:
+ # conflicts('^' + pkg, msg=(pkg + " is built into nekRS"))
+
+ # Dependencies
+ depends_on('mpi')
+ depends_on('git')
+ depends_on('cmake')
+
+ depends_on('cuda', when='+cuda')
+ depends_on('hip', when='+rocm')
+
+ @run_before('install')
+ def fortran_check(self):
+ if not self.compiler.f77:
+ msg = 'Cannot build NekRS without a Fortran 77 compiler.'
+ raise RuntimeError(msg)
+
+ # Following 4 methods are stolen from OCCA since we are using OCCA
+ # shipped with nekRS.
+ def _setup_runtime_flags(self, s_env):
+ spec = self.spec
+ s_env.set('OCCA_CXX', self.compiler.cxx)
+
+ cxxflags = spec.compiler_flags['cxxflags']
+ if cxxflags:
+ # Run-time compiler flags:
+ s_env.set('OCCA_CXXFLAGS', ' '.join(cxxflags))
+
+ if '+cuda' in spec:
+ cuda_dir = spec['cuda'].prefix
+ # Run-time CUDA compiler:
+ s_env.set('OCCA_CUDA_COMPILER',
+ join_path(cuda_dir, 'bin', 'nvcc'))
+
+ def setup_build_environment(self, env):
+ spec = self.spec
+ # The environment variable CXX is automatically set to the Spack
+ # compiler wrapper.
+
+ # The cxxflags, if specified, will be set by the Spack compiler wrapper
+ # while the environment variable CXXFLAGS will remain undefined.
+ # We define CXXFLAGS in the environment to tell OCCA to use the user
+ # specified flags instead of its defaults. This way the compiler will
+ # get the cxxflags twice - once from the Spack compiler wrapper and
+ # second time from OCCA - however, only the second one will be seen in
+ # the verbose output, so we keep both.
+ cxxflags = spec.compiler_flags['cxxflags']
+ if cxxflags:
+ env.set('CXXFLAGS', ' '.join(cxxflags))
+
+ # For the cuda, openmp, and opencl variants, set the environment
+ # variable OCCA_{CUDA,OPENMP,OPENCL}_ENABLED only if the variant is
+ # disabled. Otherwise, let OCCA autodetect what is available.
+
+ if '+cuda' in spec:
+ cuda_dir = spec['cuda'].prefix
+ cuda_libs_list = ['libcuda', 'libcudart', 'libOpenCL']
+ cuda_libs = find_libraries(cuda_libs_list,
+ cuda_dir,
+ shared=True,
+ recursive=True)
+ env.set('OCCA_INCLUDE_PATH', cuda_dir.include)
+ env.set('OCCA_LIBRARY_PATH', ':'.join(cuda_libs.directories))
+ env.set('OCCA_CUDA_ENABLED', '1')
+ else:
+ env.set('OCCA_CUDA_ENABLED', '0')
+
+ env.set('OCCA_OPENCL_ENABLED', '1' if '+opencl' in spec else '0')
+ env.set('OCCA_HIP_ENABLED', '1' if '+rocm' in spec else '0')
+
+ # Setup run-time environment for testing.
+ env.set('OCCA_VERBOSE', '1')
+ self._setup_runtime_flags(env)
+
+ def setup_run_environment(self, env):
+ # The 'env' is included in the Spack generated module files.
+ self._setup_runtime_flags(env)
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ # Export OCCA_* variables for everyone using this package from within
+ # Spack.
+ self._setup_runtime_flags(env)
+
+ def install(self, spec, prefix):
+ script_dir = 'scripts'
+
+ with working_dir(script_dir):
+ # Make sure nekmpi wrapper uses srun when we know OpenMPI
+ # is not built with mpiexec
+ if '^openmpi~legacylaunchers' in spec:
+ filter_file(r'mpirun -np', 'srun -n', 'nrsmpi')
+ filter_file(r'mpirun -np', 'srun -n', 'nrspre')
+ filter_file(r'mpirun -np', 'srun -n', 'nrsbmpi')
+
+ makenrs = Executable(os.path.join(os.getcwd(), "makenrs"))
+
+ makenrs.add_default_env("NEKRS_INSTALL_DIR", prefix)
+ makenrs.add_default_env("NEKRS_CC", spec['mpi'].mpicc)
+ makenrs.add_default_env("NEKRS_CXX", spec['mpi'].mpicxx)
+ makenrs.add_default_env("NEKRS_FC", spec['mpi'].mpifc)
+ makenrs.add_default_env("TRAVIS", "true")
+
+ makenrs(output=str, error=str, fail_on_error=True)
diff --git a/var/spack/repos/builtin/packages/nektar/package.py b/var/spack/repos/builtin/packages/nektar/package.py
index ed9a2bc966..43b73c731a 100644
--- a/var/spack/repos/builtin/packages/nektar/package.py
+++ b/var/spack/repos/builtin/packages/nektar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nektools/package.py b/var/spack/repos/builtin/packages/nektools/package.py
index d1f190e653..008204b6ee 100644
--- a/var/spack/repos/builtin/packages/nektools/package.py
+++ b/var/spack/repos/builtin/packages/nektools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,7 +19,7 @@ def is_integral(x):
class Nektools(Package):
- """Tools reuqired by Nek5000"""
+ """Tools required by Nek5000"""
homepage = "https://nek5000.mcs.anl.gov/"
url = 'https://github.com/Nek5000/Nek5000/archive/v17.0.tar.gz'
@@ -50,6 +50,7 @@ class Nektools(Package):
variant('genmap', default=True, description='Build genmap tool.')
variant('nekmerge', default=True, description='Build nekmerge tool.')
variant('prenek', default=True, description='Build prenek tool.')
+ variant('visit', default=False, description='Enable support for visit')
depends_on('libx11', when="+prenek")
depends_on('libx11', when="+postnek")
diff --git a/var/spack/repos/builtin/packages/neo4j/package.py b/var/spack/repos/builtin/packages/neo4j/package.py
index 8f76eb8e64..517e06792e 100644
--- a/var/spack/repos/builtin/packages/neo4j/package.py
+++ b/var/spack/repos/builtin/packages/neo4j/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/neovim/package.py b/var/spack/repos/builtin/packages/neovim/package.py
index c920ae114b..30460ba1a6 100644
--- a/var/spack/repos/builtin/packages/neovim/package.py
+++ b/var/spack/repos/builtin/packages/neovim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nest/package.py b/var/spack/repos/builtin/packages/nest/package.py
index 6524931f5e..7b7658028f 100644
--- a/var/spack/repos/builtin/packages/nest/package.py
+++ b/var/spack/repos/builtin/packages/nest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,10 @@ class Nest(CMakePackage):
homepage = "http://www.nest-simulator.org"
url = "https://github.com/nest/nest-simulator/releases/download/v2.12.0/nest-2.12.0.tar.gz"
+ git = "https://github.com/nest/nest-simulator.git"
+ version('master', branch='master')
+ version('2.20.0', sha256='40e33187c22d6e843d80095b221fa7fd5ebe4dbc0116765a91fc5c425dd0eca4')
version('2.14.0', sha256='d6316d6c9153100a3220488abfa738958c4b65bf2622bd15540e4aa81e79f17f')
version('2.12.0', sha256='bac578f38bb0621618ee9d5f2f1febfee60cddc000ff32e51a5f5470bb3df40d')
version('2.10.0', sha256='2b6fc562cd6362e812d94bb742562a5a685fb1c7e08403765dbe123d59b0996c')
@@ -22,9 +25,11 @@ class Nest(CMakePackage):
version('2.6.0', sha256='5fe4924bc57d0c7dd820aa371de935eedf7e813832c0eee2c976b33c9a8db4cf')
version('2.4.2', sha256='8f86e58c1a12b733ffabd8b0400326e5a3494a458149ea8ebe9f19674d05b91b')
- variant('python', default=True,
+ maintainers = ['ikitayama']
+
+ variant('python', default=False,
description='Build the PyNest interface')
- variant('mpi', default=True,
+ variant('mpi', default=False,
description='Build with MPI bindings')
variant('openmp', default=True,
description='"Enable OpenMP support"')
@@ -47,6 +52,7 @@ class Nest(CMakePackage):
depends_on('python@2.6:', when='+python', type=('build', 'run'))
depends_on('py-numpy', when='+python', type=('build', 'run'))
+ depends_on('py-scipy', when='+python', type=('run'))
depends_on('py-cython@0.19.2:', when='+python', type='build')
depends_on('py-nose', when='+python', type='test')
depends_on('py-setuptools', when='+python', type='build')
@@ -102,9 +108,8 @@ class Nest(CMakePackage):
else:
args.append('-Dwith-mpi=OFF')
- if '+python':
- version = self.spec['python'].version[0]
- args.append('-Dwith-python={0}'.format(version))
+ if '+python' in self.spec:
+ args.append('-Dwith-python=ON')
args.append('-Dcythonize-pynest=' + self.spec['py-cython'].prefix)
else:
args.append('-Dwith-python=OFF')
diff --git a/var/spack/repos/builtin/packages/net-snmp/package.py b/var/spack/repos/builtin/packages/net-snmp/package.py
new file mode 100644
index 0000000000..e017498ca4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/net-snmp/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class NetSnmp(AutotoolsPackage):
+ """A SNMP application library, tools and daemon."""
+
+ homepage = "http://www.net-snmp.org/"
+ url = "https://sourceforge.net/projects/net-snmp/files/net-snmp/5.9/net-snmp-5.9.tar.gz"
+
+ version('5.9', sha256='04303a66f85d6d8b16d3cc53bde50428877c82ab524e17591dfceaeb94df6071')
+
+ depends_on('perl-extutils-makemaker')
+ depends_on('ncurses')
+
+ def configure_args(self):
+ args = ['--with-defaults', 'LIBS=-ltinfo']
+ return args
diff --git a/var/spack/repos/builtin/packages/netcdf-c/4.7.3-spectrum-mpi-pnetcdf-detect.patch b/var/spack/repos/builtin/packages/netcdf-c/4.7.3-spectrum-mpi-pnetcdf-detect.patch
new file mode 100644
index 0000000000..0e04164ff6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/netcdf-c/4.7.3-spectrum-mpi-pnetcdf-detect.patch
@@ -0,0 +1,44 @@
+--- a/configure 2019-11-20 18:59:25.000000000 -0500
++++ b/configure 13:20:48.088873402 -0500
+@@ -18459,12 +18459,12 @@
+ $as_echo_n "checking Is libpnetcdf version 1.6.0 or later?... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
++#include <pnetcdf.h>
+
+ int
+ main ()
+ {
+
+-#include <pnetcdf.h>
+ #if (PNETCDF_VERSION_MAJOR*1000 + PNETCDF_VERSION_MINOR < 1006)
+ choke me
+ #endif
+@@ -18584,12 +18584,12 @@
+ $as_echo_n "checking if erange-fill is enabled in PnetCDF... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
++#include <pnetcdf.h>
+
+ int
+ main ()
+ {
+
+-#include <pnetcdf.h>
+ #if !defined(PNETCDF_ERANGE_FILL) || PNETCDF_ERANGE_FILL == 0
+ choke me
+ #endif
+@@ -18619,12 +18619,12 @@
+ $as_echo_n "checking if relax-coord-bound is enabled in PnetCDF... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
++#include <pnetcdf.h>
+
+ int
+ main ()
+ {
+
+-#include <pnetcdf.h>
+ #if !defined(PNETCDF_RELAX_COORD_BOUND) || PNETCDF_RELAX_COORD_BOUND == 0
+ choke me
+ #endif
diff --git a/var/spack/repos/builtin/packages/netcdf-c/package.py b/var/spack/repos/builtin/packages/netcdf-c/package.py
index 12853dfc46..f65e55eca0 100644
--- a/var/spack/repos/builtin/packages/netcdf-c/package.py
+++ b/var/spack/repos/builtin/packages/netcdf-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,7 @@ class NetcdfC(AutotoolsPackage):
maintainers = ['skosukhin', 'WardF']
version('master', branch='master')
+ version('4.8.0', sha256='679635119a58165c79bb9736f7603e2c19792dd848f19195bf6881492246d6d5')
version('4.7.4', sha256='0e476f00aeed95af8771ff2727b7a15b2de353fb7bb3074a0d340b55c2bd4ea8')
version('4.7.3', sha256='8e8c9f4ee15531debcf83788594744bd6553b8489c06a43485a15c93b4e0448b')
version('4.7.2', sha256='b751cc1f314ac8357df2e0a1bacf35a624df26fe90981d3ad3fa85a5bbd8989a')
@@ -53,6 +54,9 @@ class NetcdfC(AutotoolsPackage):
patch('https://github.com/Unidata/netcdf-c/pull/1505.patch', sha256='f52db13c61b9c19aafe03c2a865163b540e9f6dee36e3a5f808f05fac59f2030', when='@4.7.2')
patch('https://github.com/Unidata/netcdf-c/pull/1508.patch', sha256='56532470875b9a97f3cf2a7d9ed16ef1612df3265ee38880c109428322ff3a40', when='@4.7.2')
+ # See https://github.com/Unidata/netcdf-c/pull/1752
+ patch('4.7.3-spectrum-mpi-pnetcdf-detect.patch', when='@4.7.3:4.7.4 +parallel-netcdf')
+
variant('mpi', default=True,
description='Enable parallel I/O for netcdf-4')
variant('parallel-netcdf', default=False,
@@ -63,6 +67,7 @@ class NetcdfC(AutotoolsPackage):
variant('shared', default=True, description='Enable shared library')
variant('dap', default=False, description='Enable DAP support')
variant('jna', default=False, description='Enable JNA support')
+ variant('fsync', default=False, description='Enable fsync support')
# It's unclear if cdmremote can be enabled if '--enable-netcdf-4' is passed
# to the configure script. Since netcdf-4 support is mandatory we comment
@@ -136,9 +141,7 @@ class NetcdfC(AutotoolsPackage):
'--enable-largefile',
'--enable-netcdf-4']
- # The flag was introduced in version 4.1.0
- if self.spec.satisfies('@4.1:'):
- config_args.append('--enable-fsync')
+ config_args.extend(self.enable_or_disable('fsync'))
# The flag was introduced in version 4.3.1
if self.spec.satisfies('@4.3.1:'):
diff --git a/var/spack/repos/builtin/packages/netcdf-cxx/package.py b/var/spack/repos/builtin/packages/netcdf-cxx/package.py
index 6a5f6aa183..b00cd17987 100644
--- a/var/spack/repos/builtin/packages/netcdf-cxx/package.py
+++ b/var/spack/repos/builtin/packages/netcdf-cxx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/netcdf-cxx4/package.py b/var/spack/repos/builtin/packages/netcdf-cxx4/package.py
index 66b294992f..20921a2f99 100644
--- a/var/spack/repos/builtin/packages/netcdf-cxx4/package.py
+++ b/var/spack/repos/builtin/packages/netcdf-cxx4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/netcdf-fortran/package.py b/var/spack/repos/builtin/packages/netcdf-fortran/package.py
index 1178de8d57..3552101abf 100644
--- a/var/spack/repos/builtin/packages/netcdf-fortran/package.py
+++ b/var/spack/repos/builtin/packages/netcdf-fortran/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -136,6 +136,15 @@ class NetcdfFortran(AutotoolsPackage):
return config_args
+ @run_after('configure')
+ def patch_libtool(self):
+ """AOCC support for NETCDF-F"""
+ if '%aocc' in self.spec:
+ filter_file(
+ r'\${wl}-soname \$wl\$soname',
+ r'-fuse-ld=ld -Wl,-soname,\$soname',
+ 'libtool', string=True)
+
@when('@:4.4.5')
def check(self):
with working_dir(self.build_directory):
diff --git a/var/spack/repos/builtin/packages/netdata/package.py b/var/spack/repos/builtin/packages/netdata/package.py
index 830e233452..6e17f04c3b 100644
--- a/var/spack/repos/builtin/packages/netdata/package.py
+++ b/var/spack/repos/builtin/packages/netdata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,19 @@ class Netdata(AutotoolsPackage):
"""Real-time performance monitoring, done right!"""
homepage = "https://www.netdata.cloud/"
- url = "https://github.com/netdata/netdata/archive/v1.22.1.tar.gz"
+ url = "https://github.com/netdata/netdata/releases/download/v1.30.1/netdata-v1.30.1.tar.gz"
- version('1.22.1', sha256='6efd785eab82f98892b4b4017cadfa4ce1688985915499bc75f2f888765a3446')
+ version('1.30.1', sha256='3df188ac04f17094cb929e2990841ba77f68aa6af484e0509b99db298fa206c9')
+ version('1.22.1', sha256='f169c8615a6823448c2f1923c87c286d798132ea29d26f366e96d26e0aec3697')
- depends_on('m4', type='build')
- depends_on('autoconf', type='build')
- depends_on('automake', type='build')
- depends_on('libtool', type='build')
+ depends_on('pkgconfig', type='build')
depends_on('libuv')
- depends_on('libuuid')
+ depends_on('uuid')
+ depends_on('zlib')
+
+ @run_after('install')
+ def setup_dirs(self):
+ # netdata requires the following directories to be able to run.
+ mkdirp(self.prefix.var.cache.netdata)
+ mkdirp(self.prefix.var.lib.netdata)
+ mkdirp(self.prefix.var.log.netdata)
diff --git a/var/spack/repos/builtin/packages/netgauge/package.py b/var/spack/repos/builtin/packages/netgauge/package.py
index 3c5d36e1fa..11e82d9db6 100644
--- a/var/spack/repos/builtin/packages/netgauge/package.py
+++ b/var/spack/repos/builtin/packages/netgauge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/netgen/package.py b/var/spack/repos/builtin/packages/netgen/package.py
index f22ae4a168..63e51a22e5 100644
--- a/var/spack/repos/builtin/packages/netgen/package.py
+++ b/var/spack/repos/builtin/packages/netgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/netkit-ftp/package.py b/var/spack/repos/builtin/packages/netkit-ftp/package.py
index fe76bea86b..d2b6a69e61 100644
--- a/var/spack/repos/builtin/packages/netkit-ftp/package.py
+++ b/var/spack/repos/builtin/packages/netkit-ftp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/netlib-lapack/package.py b/var/spack/repos/builtin/packages/netlib-lapack/package.py
index 91358bf60f..e2187ab9dd 100644
--- a/var/spack/repos/builtin/packages/netlib-lapack/package.py
+++ b/var/spack/repos/builtin/packages/netlib-lapack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,10 @@ class NetlibLapack(CMakePackage):
homepage = "http://www.netlib.org/lapack/"
url = "http://www.netlib.org/lapack/lapack-3.5.0.tgz"
+ version('3.9.1', sha256='d0085d2caf997ff39299c05d4bacb6f3d27001d25a4cc613d48c1f352b73e7e0',
+ url='https://github.com/Reference-LAPACK/lapack/archive/refs/tags/v3.9.1.tar.gz')
+ version('3.9.0', sha256='106087f1bb5f46afdfba7f569d0cbe23dacb9a07cd24733765a0e89dbe1ad573',
+ url='https://github.com/Reference-LAPACK/lapack/archive/v3.9.0.tar.gz')
version('3.8.0', sha256='deb22cc4a6120bff72621155a9917f485f96ef8319ac074a7afbc68aab88bcf6',
url='http://www.netlib.org/lapack/lapack-3.8.0.tar.gz')
version('3.7.1', sha256='f6c53fd9f56932f3ddb3d5e24c1c07e4cd9b3b08e7f89de9c867125eecc9a1c8')
@@ -43,14 +47,10 @@ class NetlibLapack(CMakePackage):
patch('ibm-xl.patch', when='@3.7: %cce@9:')
# https://github.com/Reference-LAPACK/lapack/issues/228
- # TODO: update 'when' once the version of lapack
- # containing the fix is released and added to Spack.
- patch('undefined_declarations.patch', when='@3.8.0:')
+ patch('undefined_declarations.patch', when='@3.8.0:3.8.9999')
# https://github.com/Reference-LAPACK/lapack/pull/268
- # TODO: update 'when' once the version of lapack
- # containing the fix is released and added to Spack.
- patch('testing.patch', when='@3.7.0:')
+ patch('testing.patch', when='@3.7.0:3.8.9999')
# virtual dependency
provides('blas', when='~external-blas')
diff --git a/var/spack/repos/builtin/packages/netlib-scalapack/package.py b/var/spack/repos/builtin/packages/netlib-scalapack/package.py
index 51fa58d0e6..10f90a9dd9 100644
--- a/var/spack/repos/builtin/packages/netlib-scalapack/package.py
+++ b/var/spack/repos/builtin/packages/netlib-scalapack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/netlib-xblas/package.py b/var/spack/repos/builtin/packages/netlib-xblas/package.py
index 1431b78494..b9ca43d64e 100644
--- a/var/spack/repos/builtin/packages/netlib-xblas/package.py
+++ b/var/spack/repos/builtin/packages/netlib-xblas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/netperf/package.py b/var/spack/repos/builtin/packages/netperf/package.py
index 484c6b961c..8bbc48b578 100644
--- a/var/spack/repos/builtin/packages/netperf/package.py
+++ b/var/spack/repos/builtin/packages/netperf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nettle/package.py b/var/spack/repos/builtin/packages/nettle/package.py
index 358294a22a..75f59b0b19 100644
--- a/var/spack/repos/builtin/packages/nettle/package.py
+++ b/var/spack/repos/builtin/packages/nettle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/neuron/package.py b/var/spack/repos/builtin/packages/neuron/package.py
index a3c6cbec05..27e6967da3 100644
--- a/var/spack/repos/builtin/packages/neuron/package.py
+++ b/var/spack/repos/builtin/packages/neuron/package.py
@@ -1,187 +1,136 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-import os
from spack import *
-class Neuron(Package):
+class Neuron(CMakePackage):
"""NEURON is a simulation environment for single and networks of neurons.
NEURON is a simulation environment for modeling individual and networks of
neurons. NEURON models individual neurons via the use of sections that are
automatically subdivided into individual compartments, instead of
- requiring the user to manually create compartments. The primary scripting
- language is hoc but a Python interface is also available.
+ requiring the user to manually create compartments.
"""
homepage = "https://www.neuron.yale.edu/"
- url = "http://www.neuron.yale.edu/ftp/neuron/versions/v7.5/nrn-7.5.tar.gz"
- git = "https://github.com/nrnhines/nrn.git"
-
- version('develop', branch='master')
- version('7.5', sha256='67642216a969fdc844da1bd56643edeed5e9f9ab8c2a3049dcbcbcccba29c336')
- version('7.4', sha256='1403ba16b2b329d2376f4bf007d96e6bf2992fa850f137f1068ad5b22b432de6')
- version('7.3', sha256='71cff5962966c5cd5d685d90569598a17b4b579d342126b31e2d431128cc8832')
- version('7.2', sha256='c777d73a58ff17a073e8ea25f140cb603b8b5f0df3c361388af7175e44d85b0e')
-
- variant('mpi', default=True, description='Enable MPI parallelism')
- variant('python', default=True, description='Enable python')
- variant('shared', default=False, description='Build shared libraries')
- variant('cross-compile', default=False, description='Build for cross-compile environment')
- variant('multisend', default=True, description="Enable multi-send spike exchange")
- variant('rx3d', default=False, description="Enable cython translated 3-d rxd")
-
- depends_on('flex', type='build')
- depends_on('bison', type='build')
- depends_on('automake', type='build')
- depends_on('automake', type='build')
- depends_on('autoconf', type='build')
- depends_on('libtool', type='build')
- depends_on('pkgconfig', type='build')
-
- depends_on('mpi', when='+mpi')
- depends_on('python@2.6:', when='+python')
- depends_on('ncurses', when='~cross-compile')
-
- conflicts('~shared', when='+python')
-
- filter_compiler_wrappers('*/bin/nrniv_makefile')
-
- def get_neuron_archdir(self):
- """Determine the architecture-specific neuron base directory.
-
- Instead of recreating the logic of the neuron's configure
- we dynamically find the architecture-specific directory by
- looking for a specific binary.
- """
- file_list = find(self.prefix, '*/bin/nrniv_makefile')
- # check needed as when initially evaluated the prefix is empty
- if file_list:
- neuron_archdir = os.path.dirname(os.path.dirname(file_list[0]))
+ url = "https://neuron.yale.edu/ftp/neuron/versions/v7.7/nrn-7.7.tar.gz"
+ git = "https://github.com/neuronsimulator/nrn"
+ maintainers = ['pramodk', 'nrnhines', 'iomaganaris', 'alexsavulescu']
+
+ version('develop', branch='master', submodules='True')
+ version("7.8.2", tag="7.8.2", submodules='True')
+ version("7.8.1", tag="7.8.1", submodules='True')
+
+ variant("coreneuron", default=False, description="Enable CoreNEURON as submodule")
+ variant("cross-compile", default=False, description="Build for cross-compile environment")
+ variant("interviews", default=False, description="Enable GUI with INTERVIEWS")
+ variant("legacy-unit", default=False, description="Enable legacy units")
+ variant("mpi", default=True, description="Enable MPI parallelism")
+ variant("python", default=True, description="Enable python")
+ variant("rx3d", default=False, description="Enable cython translated 3-d rxd")
+ variant("tests", default=False, description="Enable unit tests")
+ variant("caliper", default=False, description="Add LLNL/Caliper support")
+
+ depends_on("bison", type="build")
+ depends_on("flex", type="build")
+ depends_on("py-cython", when="+rx3d", type="build")
+
+ depends_on("gettext")
+ depends_on("mpi", when="+mpi")
+ depends_on("ncurses")
+ depends_on("python@2.7:", when="+python")
+ depends_on("py-pytest", when="+python+tests")
+ depends_on("readline")
+ depends_on("caliper", when="+caliper")
+ depends_on("py-numpy", type='run')
+
+ conflicts("+rx3d", when="~python")
+
+ patch("patch-v782-git-cmake-avx512.patch", when="@7.8.2")
+
+ def cmake_args(self):
+ spec = self.spec
+
+ def cmake_options(spec_options):
+ value = "TRUE" if spec_options in spec else "FALSE"
+ cmake_name = spec_options[1:].upper().replace("-", "_")
+ return "-DNRN_ENABLE_" + cmake_name + ":BOOL=" + value
+
+ args = [cmake_options(variant) for variant in ["+coreneuron",
+ "+interviews",
+ "+mpi",
+ "+python",
+ "+rx3d",
+ "+coreneuron",
+ "+tests"]]
+ args.append("-DNRN_ENABLE_BINARY_SPECIAL=ON")
+
+ if "~mpi" in spec and '+coreneuron' in spec:
+ args.append("-DCORENRN_ENABLE_MPI=OFF")
+
+ if "+python" in spec:
+ args.append("-DPYTHON_EXECUTABLE:FILEPATH="
+ + spec["python"].command.path)
+
+ if spec.variants['build_type'].value == 'Debug':
+ args.append("-DCMAKE_C_FLAGS=-g -O0")
+ args.append("-DCMAKE_CXX_FLAGS=-g -O0")
+ args.append("-DCMAKE_BUILD_TYPE=Custom")
+
+ if "+legacy-unit" in spec:
+ args.append('-DNRN_DYNAMIC_UNITS_USE_LEGACY=ON')
+
+ if "+caliper" in spec:
+ args.append('-DCORENRN_CALIPER_PROFILING=ON')
+
+ return args
+
+ @run_after("install")
+ def filter_compilers(self):
+ """run after install to avoid spack compiler wrappers
+ getting embded into nrnivmodl script"""
+
+ spec = self.spec
+
+ if "cray" in spec.architecture:
+ cc_compiler = "cc"
+ cxx_compiler = "CC"
+ elif spec.satisfies("+mpi"):
+ cc_compiler = spec["mpi"].mpicc
+ cxx_compiler = spec["mpi"].mpicxx
else:
- neuron_archdir = self.prefix
+ cc_compiler = self.compiler.cc
+ cxx_compiler = self.compiler.cxx
- return neuron_archdir
-
- def patch(self):
- # aclocal need complete include path (especially on os x)
- pkgconf_inc = '-I %s/share/aclocal/' % (self.spec['pkgconfig'].prefix)
- libtool_inc = '-I %s/share/aclocal/' % (self.spec['libtool'].prefix)
- newpath = 'aclocal -I m4 %s %s' % (pkgconf_inc, libtool_inc)
- filter_file(r'aclocal -I m4', r'%s' % newpath, "build.sh")
-
- def get_arch_options(self, spec):
- options = []
-
- if spec.satisfies('+cross-compile'):
- options.extend(['cross_compiling=yes',
- '--without-memacs',
- '--without-nmodl'])
-
- # on os-x disable building carbon 'click' utility
- if 'darwin' in self.spec.architecture:
- options.append('macdarwin=no')
-
- return options
-
- def get_python_options(self, spec):
- options = []
-
- if spec.satisfies('+python'):
- python_exec = spec['python'].command.path
- py_inc = spec['python'].headers.directories[0]
- py_lib = spec['python'].prefix.lib
-
- if not os.path.isdir(py_lib):
- py_lib = spec['python'].prefix.lib64
-
- options.extend(['--with-nrnpython=%s' % python_exec,
- '--disable-pysetup',
- 'PYINCDIR=%s' % py_inc,
- 'PYLIBDIR=%s' % py_lib])
-
- if spec.satisfies('~cross-compile'):
- options.append('PYTHON_BLD=%s' % python_exec)
+ kwargs = {"backup": False, "string": True}
+ nrnmech_makefile = join_path(self.prefix,
+ "./bin/nrnmech_makefile")
+ # assign_operator is changed to fix wheel support
+ if self.spec.satisfies("@:7.99"):
+ assign_operator = "?="
else:
- options.append('--without-nrnpython')
-
- return options
-
- def get_compiler_options(self, spec):
- flags = '-O2 -g'
-
- if self.spec.satisfies('%pgi'):
- flags += ' ' + self.compiler.cc_pic_flag
-
- return ['CFLAGS=%s' % flags,
- 'CXXFLAGS=%s' % flags]
-
- def build_nmodl(self, spec, prefix):
- # build components for front-end arch in cross compiling environment
- options = ['--prefix=%s' % prefix,
- '--with-nmodl-only',
- '--without-x']
-
- if 'cray' in self.spec.architecture:
- flags = '-target-cpu=x86_64 -target-network=none'
- options.extend(['CFLAGS=%s' % flags,
- 'CXXFLAGS=%s' % flags])
-
- configure = Executable(join_path(self.stage.source_path, 'configure'))
- configure(*options)
- make()
- make('install')
-
- def install(self, spec, prefix):
-
- options = ['--prefix=%s' % prefix,
- '--without-iv',
- '--without-x',
- '--without-readline']
-
- if spec.satisfies('+multisend'):
- options.append('--with-multisend')
-
- if spec.satisfies('~rx3d'):
- options.append('--disable-rx3d')
-
- if spec.satisfies('+mpi'):
- options.extend(['MPICC=%s' % spec['mpi'].mpicc,
- 'MPICXX=%s' % spec['mpi'].mpicxx,
- '--with-paranrn'])
- else:
- options.append('--without-paranrn')
-
- if spec.satisfies('~shared'):
- options.extend(['--disable-shared',
- 'linux_nrnmech=no'])
-
- options.extend(self.get_arch_options(spec))
- options.extend(self.get_python_options(spec))
- options.extend(self.get_compiler_options(spec))
-
- build = Executable('./build.sh')
- build()
-
- with working_dir('build', create=True):
- if spec.satisfies('+cross-compile'):
- self.build_nmodl(spec, prefix)
- srcpath = self.stage.source_path
- configure = Executable(join_path(srcpath, 'configure'))
- configure(*options)
- make('VERBOSE=1')
- make('install')
+ assign_operator = "="
+
+ filter_file("CC {0} {1}".format(assign_operator, env["CC"]),
+ "CC = {0}".format(cc_compiler),
+ nrnmech_makefile,
+ **kwargs)
+ filter_file("CXX {0} {1}".format(assign_operator, env["CXX"]),
+ "CXX = {0}".format(cxx_compiler),
+ nrnmech_makefile,
+ **kwargs)
+
+ if spec.satisfies("+coreneuron"):
+ corenrn_makefile = join_path(self.prefix,
+ "share/coreneuron/nrnivmodl_core_makefile")
+ filter_file(env["CXX"], cxx_compiler, corenrn_makefile, **kwargs)
def setup_run_environment(self, env):
- neuron_archdir = self.get_neuron_archdir()
- env.prepend_path('PATH', join_path(neuron_archdir, 'bin'))
- env.prepend_path('LD_LIBRARY_PATH', join_path(neuron_archdir, 'lib'))
-
- def setup_dependent_build_environment(self, env, dependent_spec):
- neuron_archdir = self.get_neuron_archdir()
- env.prepend_path('PATH', join_path(neuron_archdir, 'bin'))
- env.prepend_path('LD_LIBRARY_PATH', join_path(neuron_archdir, 'lib'))
+ env.prepend_path("PATH", join_path(self.prefix, "bin"))
+ env.prepend_path("LD_LIBRARY_PATH", join_path(self.prefix, "lib"))
+ if self.spec.satisfies("+python"):
+ env.prepend_path("PYTHONPATH", self.spec.prefix.lib.python)
diff --git a/var/spack/repos/builtin/packages/neuron/patch-v782-git-cmake-avx512.patch b/var/spack/repos/builtin/packages/neuron/patch-v782-git-cmake-avx512.patch
new file mode 100644
index 0000000000..dc2a4b8fe4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/neuron/patch-v782-git-cmake-avx512.patch
@@ -0,0 +1,139 @@
+diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
+index 391d4daa..20b8b571 100644
+--- a/CONTRIBUTING.md
++++ b/CONTRIBUTING.md
+@@ -98,7 +98,7 @@ Currently we have enabled CMake code formatting using [cmake-format](https://git
+ * Make sure to install cmake-format utility with Python version you are using:
+
+ ```
+-pip3.7 install cmake-format==0.6.0 --user
++pip3.7 install cmake-format==0.6.0 pyyaml --user
+ ```
+ Now you should have `cmake-format` command available.
+
+diff --git a/cmake/ExternalProjectHelper.cmake b/cmake/ExternalProjectHelper.cmake
+index 57094e7e..eeb6dfc2 100644
+--- a/cmake/ExternalProjectHelper.cmake
++++ b/cmake/ExternalProjectHelper.cmake
+@@ -1,5 +1,15 @@
+ find_package(Git QUIET)
+
++if(${GIT_FOUND} AND EXISTS ${CMAKE_SOURCE_DIR}/.git)
++ execute_process(
++ COMMAND ${GIT_EXECUTABLE} --git-dir=.git describe --all
++ RESULT_VARIABLE NOT_A_GIT_REPO
++ ERROR_QUIET
++ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
++else()
++ set(NOT_A_GIT_REPO "NotAGitRepo")
++endif()
++
+ # initialize submodule with given path
+ function(initialize_submodule path)
+ if(NOT ${GIT_FOUND})
+@@ -9,7 +19,7 @@ function(initialize_submodule path)
+ message(STATUS "Sub-module : missing ${path} : running git submodule update --init --recursive")
+ execute_process(
+ COMMAND
+- git submodule update --init --recursive -- ${path}
++ ${GIT_EXECUTABLE} submodule update --init --recursive -- ${path}
+ WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+ endfunction()
+
+@@ -20,6 +30,9 @@ function(add_external_project name)
+ NAMES CMakeLists.txt
+ PATHS "${PROJECT_SOURCE_DIR}/external/${name}")
+ if(NOT EXISTS ${${name}_PATH})
++ if(NOT_A_GIT_REPO)
++ message(FATAL_ERROR "Looks like you are building from source. Git needed for ${name} feature.")
++ endif()
+ initialize_submodule(external/${name})
+ else()
+ message(STATUS "Sub-project : using ${name} from from external/${name}")
+diff --git a/git2nrnversion_h.sh b/git2nrnversion_h.sh
+index d62b7410..4d8e4015 100755
+--- a/git2nrnversion_h.sh
++++ b/git2nrnversion_h.sh
+@@ -20,10 +20,9 @@ if git log > /dev/null && test -d .git ; then
+ elif test -f src/nrnoc/nrnversion.h ; then
+ sed -n '1,$p' src/nrnoc/nrnversion.h
+ else
+- echo "#define GIT_DATE \"1999-12-31\""
+- echo "#define GIT_BRANCH \"?\""
+- echo "#define GIT_CHANGESET \"?\""
+- echo "#define GIT_DESCRIBE \"?\""
+- exit 1
++ echo "#define GIT_DATE \"Build Time: $(date "+%Y-%m-%d-%H:%M:%S")\""
++ echo "#define GIT_BRANCH \"unknown branch\""
++ echo "#define GIT_CHANGESET \"unknown commit id\""
++ echo "#define GIT_DESCRIBE \"${PROJECT_VERSION}.dev0\""
+ fi
+
+diff --git a/src/ivoc/ivocvect.cpp b/src/ivoc/ivocvect.cpp
+index 4884614a..4da9e17e 100644
+--- a/src/ivoc/ivocvect.cpp
++++ b/src/ivoc/ivocvect.cpp
+@@ -67,7 +67,26 @@ extern "C" {
+ #define FRead(arg1,arg2,arg3,arg4) if (fread(arg1,arg2,arg3,arg4) != arg3) {}
+ #endif
+
+-static double dmaxint_;
++/**
++ * As all parameters are passed from hoc as double, we need
++ * to calculate max integer that can fit into double variable.
++ *
++ * With IEEE 64-bit double has 52 bits of mantissa, so it's 2^53.
++ * calculating it with approach `while (dbl + 1 != dbl) dbl++;`
++ * has issues with SSE and other 32 bits platform. So we are using
++ * direct value here.
++ *
++ * The maximum mantissa 0xFFFFFFFFFFFFF which is 52 bits all 1.
++ * In Python it's:
++ *
++ * >>> (2.**53).hex()
++ * '0x1.0000000000000p+53'
++ * >>> (2.**53)
++ * 9007199254740992.0
++ *
++ * See https://stackoverflow.com/questions/1848700/biggest-integer-that-can-be-stored-in-a-double
++ */
++static double dmaxint_ = 9007199254740992;
+
+ // Definitions allow machine independent write and read
+ // note that must include BYTEHEADER at head of routine
+@@ -3776,20 +3795,7 @@ static void steer_x(void* v) {
+ }
+
+ void Vector_reg() {
+- dmaxint_ = 1073741824.;
+- for(;;) {
+- if (dmaxint_*2. == double(int(dmaxint_*2.))) {
+- dmaxint_ *= 2.;
+- }else{
+- if (dmaxint_*2. - 1. == double(int(dmaxint_*2. - 1.))) {
+- dmaxint_ = 2.*dmaxint_ - 1.;
+- }
+- break;
+- }
+- }
+- //printf("dmaxint=%30.20g %d\n", dmaxint_, (long)dmaxint_);
+- class2oc("Vector", v_cons, v_destruct, v_members, NULL, v_retobj_members,
+- v_retstr_members);
++ class2oc("Vector", v_cons, v_destruct, v_members, NULL, v_retobj_members, v_retstr_members);
+ svec_ = hoc_lookup("Vector");
+ // now make the x variable an actual double
+ Symbol* sv = hoc_lookup("Vector");
+diff --git a/src/nrniv/CMakeLists.txt b/src/nrniv/CMakeLists.txt
+index 30024d6e..26f76a98 100644
+--- a/src/nrniv/CMakeLists.txt
++++ b/src/nrniv/CMakeLists.txt
+@@ -139,7 +139,8 @@ set(NRN_INCLUDE_DIRS
+ # is different from the contents of nrnversion.h
+ # ~~~
+ add_custom_target(
+- nrnversion_h ${PROJECT_SOURCE_DIR}/git2nrnversion_h.sh ${PROJECT_SOURCE_DIR} > nrnversion.h.tmp
++ nrnversion_h
++ COMMAND ${CMAKE_COMMAND} -E env PROJECT_VERSION=${PROJECT_VERSION} $ENV{SHELL} ${PROJECT_SOURCE_DIR}/git2nrnversion_h.sh ${PROJECT_SOURCE_DIR} > nrnversion.h.tmp
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different nrnversion.h.tmp ${NRN_NRNOC_SRC_DIR}/nrnversion.h
+ DEPENDS ${PROJECT_SOURCE_DIR}/git2nrnversion_h.sh)
+
diff --git a/var/spack/repos/builtin/packages/newt/package.py b/var/spack/repos/builtin/packages/newt/package.py
index 5458dd5510..061daaaf4f 100644
--- a/var/spack/repos/builtin/packages/newt/package.py
+++ b/var/spack/repos/builtin/packages/newt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nextflow/package.py b/var/spack/repos/builtin/packages/nextflow/package.py
index b376a69820..1f14cf8d9d 100644
--- a/var/spack/repos/builtin/packages/nextflow/package.py
+++ b/var/spack/repos/builtin/packages/nextflow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Nextflow(Package):
homepage = "http://www.nextflow.io"
url = "https://github.com/nextflow-io/nextflow/releases/download/v0.24.1/nextflow"
+ version('20.10.0', sha256='54f76c83cbabe8ec68d6a878dcf921e647284499f4ae917356e594d873cb78dd', expand=False)
version('20.07.1', sha256='de4db5747a801af645d9b021c7b36f4a25c3ce1a8fda7705a5f37e8f9357443a', expand=False)
version('0.25.6', sha256='9498806596c96ba87396194fa6f1d7d1cdb739990f83e7e89d1d055366c5a943', expand=False)
version('0.24.1', sha256='0bfde5335b385e3cff99bf4aab619e583de5dc0849767240f675037a2e7c1d83', expand=False)
diff --git a/var/spack/repos/builtin/packages/nfft/package.py b/var/spack/repos/builtin/packages/nfft/package.py
index ccd1a8ade0..8e02e1e16e 100644
--- a/var/spack/repos/builtin/packages/nfft/package.py
+++ b/var/spack/repos/builtin/packages/nfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nfs-ganesha/package.py b/var/spack/repos/builtin/packages/nfs-ganesha/package.py
index 08bdfc8a43..9445c4c0c6 100644
--- a/var/spack/repos/builtin/packages/nfs-ganesha/package.py
+++ b/var/spack/repos/builtin/packages/nfs-ganesha/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nfs-utils/package.py b/var/spack/repos/builtin/packages/nfs-utils/package.py
index b28a8596a5..69c9edd893 100644
--- a/var/spack/repos/builtin/packages/nfs-utils/package.py
+++ b/var/spack/repos/builtin/packages/nfs-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,6 +25,7 @@ class NfsUtils(AutotoolsPackage):
depends_on('lvm2')
depends_on('keyutils')
depends_on('sqlite')
+ depends_on('uuid')
depends_on('util-linux')
depends_on('gettext')
diff --git a/var/spack/repos/builtin/packages/nghttp2/package.py b/var/spack/repos/builtin/packages/nghttp2/package.py
index e5a6cb60dc..509ae8633a 100644
--- a/var/spack/repos/builtin/packages/nghttp2/package.py
+++ b/var/spack/repos/builtin/packages/nghttp2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nginx/package.py b/var/spack/repos/builtin/packages/nginx/package.py
index 8c2c6a32dd..e9e32e91a5 100644
--- a/var/spack/repos/builtin/packages/nginx/package.py
+++ b/var/spack/repos/builtin/packages/nginx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ngmerge/package.py b/var/spack/repos/builtin/packages/ngmerge/package.py
index f471c2abd0..089061d1d1 100644
--- a/var/spack/repos/builtin/packages/ngmerge/package.py
+++ b/var/spack/repos/builtin/packages/ngmerge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ngmlr/for_aarch64.patch b/var/spack/repos/builtin/packages/ngmlr/for_aarch64.patch
index 9db5bb838a..000ffa5503 100644
--- a/var/spack/repos/builtin/packages/ngmlr/for_aarch64.patch
+++ b/var/spack/repos/builtin/packages/ngmlr/for_aarch64.patch
@@ -5,7 +5,7 @@
#include <stdint.h>
#include <string.h>
-#include <emmintrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#ifdef __cplusplus
extern "C" {
@@ -16,7 +16,7 @@
*/
-#include <emmintrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
@@ -27,7 +27,7 @@
#include <stdio.h>
#include <algorithm>
-#include <x86intrin.h>
-+#include <SSE2NEON.h>
++#include <sse2neon.h>
#include "IConfig.h"
diff --git a/var/spack/repos/builtin/packages/ngmlr/package.py b/var/spack/repos/builtin/packages/ngmlr/package.py
index 6dede65ee9..5329857a1f 100644
--- a/var/spack/repos/builtin/packages/ngmlr/package.py
+++ b/var/spack/repos/builtin/packages/ngmlr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ngspice/package.py b/var/spack/repos/builtin/packages/ngspice/package.py
new file mode 100644
index 0000000000..1cffd24ecc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ngspice/package.py
@@ -0,0 +1,132 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Ngspice(AutotoolsPackage):
+ """ngspice is the open source spice simulator for electric and
+ electronic circuits."""
+
+ homepage = "http://ngspice.sourceforge.net/"
+ url = "https://sourceforge.net/projects/ngspice/files/ngspice-33.tar.gz"
+ git = "git://git.code.sf.net/p/ngspice/ngspice"
+
+ maintainers = ['aweits', 'cessenat']
+
+ # Master version by default adds the experimental adms feature
+ version('master', branch='master')
+ version('34', sha256='2263fffc6694754972af7072ef01cfe62ac790800dad651bc290bfcae79bd7b5')
+ version('33', sha256='b99db66cc1c57c44e9af1ef6ccb1dcbc8ae1df3e35acf570af578f606f8541f1')
+ version('32', sha256='3cd90c4e94516d87c5b4d02a3a6405b1136b25d05c871d4fee1fd7c4c0d03ef2')
+ version('31', sha256='845f3b0c962e47ded051dfbc134c3c1e4ac925c9f0ce1cb3df64eb9b9da5c282')
+ version('30', sha256='08fe0e2f3768059411328a33e736df441d7e6e7304f8dad0ed5f28e15d936097')
+ version('29', sha256='8d6d0ffbc15f248eb6ec3bde3b9d1397fbc95cb677e1c6a14ff46065c7f95c4a')
+ version('27', sha256='0c08c7d57a2e21cf164496f3237f66f139e0c78e38345fbe295217afaf150695')
+
+ # kicad needs build=lib, i.e. --with--ngshared
+ variant(
+ 'build', default='lib',
+ description='Build type: lib=ngshared, bin otherwise',
+ values=('lib', 'bin'),
+ multi=False,
+ )
+
+ variant('X', default=False, description='Use the X Window System')
+ variant(
+ 'debug', default='auto',
+ description='Enable debugging features: '
+ 'auto is yes for build=lib, no for build=bin',
+ values=('auto', 'yes', 'no'),
+ multi=False,
+ )
+ variant('xspice', default=False, description='Enable XSPICE enhancements')
+ variant('cider', default=False, description='Enable CIDER enhancements')
+ variant('openmp', default=False, description='Compile with multi-threading support')
+ variant('readline', default=True, description='Build readline support (for bin)')
+ variant('fft', default=True, description='Use external fftw lib')
+
+ depends_on('fftw-api@3:~mpi~openmp', when='+fft~openmp')
+ depends_on('fftw-api@3:~mpi+openmp', when='+fft+openmp')
+ depends_on('readline', when='+readline build=bin')
+
+ # Needed for autoreconf:
+ depends_on('bison', type='build', when='@master')
+ depends_on('flex', type='build', when='@master')
+
+ # INSTALL indicates dependency on these :
+ depends_on('freetype', when='+X build=bin')
+ depends_on('libxrender', when='+X build=bin')
+ depends_on('fontconfig', when='+X build=bin')
+ depends_on('libxft', when='+X build=bin')
+ depends_on('libxext', when='+X build=bin')
+ depends_on('libxmu', when='+X build=bin')
+ depends_on('libxaw', when='+X build=bin')
+ depends_on('libx11', when='+X build=bin')
+
+ # Need autotools when building on master:
+ depends_on("autoconf", type='build', when='@master')
+ depends_on("automake", type='build', when='@master')
+ depends_on("libtool", type='build', when='@master')
+
+ depends_on("adms", when='@master')
+
+ conflicts('%gcc@:4.9.9', when='@32:',
+ msg='Failure to compile recent release with old gcc due to hicum2')
+ conflicts('@28', msg='This release does not compile')
+
+ @when('@master')
+ def autoreconf(self, spec, prefix):
+ Executable('./autogen.sh')('--adms')
+
+ def configure_args(self):
+ spec = self.spec
+ args = []
+ if 'build=lib' in spec:
+ args.append('--with-ngshared')
+ # Legacy debug is activated in auto debug mode with build=lib
+ if 'debug=no' in spec:
+ args.append('--disable-debug')
+ args.append('--without-x')
+ else:
+ if 'debug=auto' in spec or 'debug=no' in spec:
+ args.append('--disable-debug')
+ if '+readline' in spec:
+ args.append('--with-readline=yes')
+ if '+X' in spec:
+ args.append('--with-x')
+ x = spec['libx11']
+ args.extend([
+ '--x-includes=%s' % x.prefix.include,
+ '--x-libraries=%s' % x.prefix.lib,
+ ])
+ else:
+ args.append('--without-x')
+ if '+xspice' in spec:
+ args.append('--enable-xspice')
+ if '+cider' in spec:
+ args.append('--enable-cider')
+
+ if '+openmp' in spec:
+ args.append('--enable-openmp')
+ if '~fft' in spec:
+ args.append('--with-fftw3=no')
+ if 'darwin' in spec.architecture:
+ args.append('--enable-pss')
+ if '@master' in spec:
+ args.append('--enable-adms')
+
+ # Do not hide compilation line (easier to debug compilation)
+ args.append('--disable-silent-rules')
+
+ return args
+
+ def flag_handler(self, name, flags):
+ if self.spec.satisfies('%nvhpc') and name == 'cflags':
+ flags.append('-Wall -Wextra -Wmissing-prototypes -Wstrict-prototypes')
+ flags.append('-Wnested-externs -Wredundant-decls')
+ if 'debug=yes' in self.spec:
+ flags.append('-g')
+ return (None, None, flags)
diff --git a/var/spack/repos/builtin/packages/nicstat/package.py b/var/spack/repos/builtin/packages/nicstat/package.py
index 054cc9c4d8..e8d45a3061 100644
--- a/var/spack/repos/builtin/packages/nicstat/package.py
+++ b/var/spack/repos/builtin/packages/nicstat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nim/package.py b/var/spack/repos/builtin/packages/nim/package.py
index bc5fb15916..0ccb6add93 100644
--- a/var/spack/repos/builtin/packages/nim/package.py
+++ b/var/spack/repos/builtin/packages/nim/package.py
@@ -1,41 +1,43 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
-
-from spack import *
+import os.path
class Nim(Package):
"""Nim is a statically typed compiled systems programming language.
It combines successful concepts from mature languages like Python,
- Ada and Modula."""
+ Ada and Modula.
+ """
homepage = "https://nim-lang.org/"
- url = "https://nim-lang.org/download/nim-0.20.0.tar.xz"
+ url = "https://nim-lang.org/download/nim-1.4.4.tar.xz"
- version('0.20.0', sha256='4be00d7dd47220da508b30ce3b4deade4ba39800ea4a1e574018b3c733359780')
- version('0.19.6', sha256='a09f0c58d29392434d4fd6d15d4059cf7e013ae948413cb9233b8233d67e3a29')
+ version('1.4.4', sha256='6d73729def143f72fc2491ca937a9cab86d2a8243bd845a5d1403169ad20660e')
+ version('1.4.2', sha256='03a47583777dd81380a3407aa6a788c9aa8a67df4821025770c9ac4186291161')
+ version('0.20.0', sha256='51f479b831e87b9539f7264082bb6a64641802b54d2691b3c6e68ac7e2699a90', deprecated=True)
+ version('0.19.6', sha256='a09f0c58d29392434d4fd6d15d4059cf7e013ae948413cb9233b8233d67e3a29', deprecated=True)
version('0.19.9', sha256='154c440cb8f27da20b3d6b1a8cc03f63305073fb995bbf26ec9bc6ad891ce276',
- url='https://github.com/nim-lang/nightlies/releases/download/2019-06-02-devel-1255b3c/nim-0.19.9-linux_x64.tar.xz')
+ url='https://github.com/nim-lang/nightlies/releases/download/2019-06-02-devel-1255b3c/nim-0.19.9-linux_x64.tar.xz',
+ deprecated=True)
+
+ depends_on('pcre')
+ depends_on('openssl')
- depends_on('pcre', type='build')
- depends_on('openssl', type='build')
+ def patch(self):
+ install_sh_path = os.path.join(self.stage.source_path, 'install.sh')
+ filter_file("1/nim", "1", install_sh_path)
def install(self, spec, prefix):
bash = which('bash')
bash('./build.sh')
- nim = Executable(join_path('.', 'bin/nim'))
+ nim = Executable(os.path.join('bin', 'nim'))
nim('c', 'koch')
- koch = Executable(join_path('.', 'koch'))
+ koch = Executable('./koch')
+ koch('boot', '-d:release')
koch('tools')
- install_tree('bin', prefix.bin)
- install_tree('lib', prefix.lib)
- install_tree('compiler', prefix.compiler)
- install_tree('config', prefix.config)
- install_tree('doc', prefix.doc)
- install('compiler.nimble', prefix)
+ bash('./install.sh', prefix)
diff --git a/var/spack/repos/builtin/packages/ninja-fortran/package.py b/var/spack/repos/builtin/packages/ninja-fortran/package.py
index d85a5b4542..600a638826 100644
--- a/var/spack/repos/builtin/packages/ninja-fortran/package.py
+++ b/var/spack/repos/builtin/packages/ninja-fortran/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ninja/package.py b/var/spack/repos/builtin/packages/ninja/package.py
index 96cd0252a2..a354d9d254 100644
--- a/var/spack/repos/builtin/packages/ninja/package.py
+++ b/var/spack/repos/builtin/packages/ninja/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,7 @@ class Ninja(Package):
version('kitware', branch='features-for-fortran', git='https://github.com/Kitware/ninja.git')
version('master', branch='master')
+ version('1.10.2', sha256='ce35865411f0490368a8fc383f29071de6690cbadc27704734978221f25e2bed')
version('1.10.1', sha256='a6b6f7ac360d4aabd54e299cc1d8fa7b234cd81b9401693da21221c62569a23e')
version('1.10.0', sha256='3810318b08489435f8efc19c05525e80a993af5a55baa0dfeae0465a9d45f99f')
version('1.9.0', sha256='5d7ec75828f8d3fd1a0c2f31b5b0cea780cdfe1031359228c428c1a48bfcd5b9')
diff --git a/var/spack/repos/builtin/packages/nix/package.py b/var/spack/repos/builtin/packages/nix/package.py
index 7025b65dc1..1dbd50d231 100644
--- a/var/spack/repos/builtin/packages/nix/package.py
+++ b/var/spack/repos/builtin/packages/nix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/njet/njet-2.0.0.patch b/var/spack/repos/builtin/packages/njet/njet-2.0.0.patch
new file mode 100644
index 0000000000..30883e323f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/njet/njet-2.0.0.patch
@@ -0,0 +1,17 @@
+--- blha/njet_olp.cpp.orig 2016-06-09 15:09:37.024953173 +0200
++++ blha/njet_olp.cpp 2016-06-09 15:09:41.783999034 +0200
+@@ -1076,12 +1076,12 @@
+ string line;
+ int linenum = 0;
+
+- while (is_good && (is_good = getline(*input, line))) {
++ while (is_good && (is_good = getline(*input, line).good())) {
+ linenum++;
+ if (line.find(SIGNPREF) == 0) {
+ is_njet = true;
+ if (stringstream(line.substr(SIGNPREF.length())) >> signval) {
+- is_good = getline(*input, line);
++ is_good = getline(*input, line).good();
+ linenum++;
+ body.push_back(line);
+ continue;
diff --git a/var/spack/repos/builtin/packages/njet/package.py b/var/spack/repos/builtin/packages/njet/package.py
index a22e6de0e7..a29079288f 100644
--- a/var/spack/repos/builtin/packages/njet/package.py
+++ b/var/spack/repos/builtin/packages/njet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,10 +13,15 @@ class Njet(AutotoolsPackage):
homepage = "https://bitbucket.org/njet/njet/wiki/Home"
url = "https://bitbucket.org/njet/njet/downloads/njet-2.1.1.tar.gz"
+ tags = ['hep']
+
version('2.1.1', sha256='3858ad37e84f3652711aa033819a6566352ecff04a1cb0189d6590af75b7bb56')
+ version('2.0.0', sha256='a1f5c171b8aff3553d9dde24d3ced5479bdaeec67f4c90c70a846ee3449b40ea')
depends_on('qd')
+ patch('njet-2.0.0.patch', when='@2.0.0', level=0)
+
def configure_args(self):
args = ['--with-qd=' + self.spec['qd'].prefix,
"FFLAGS=-ffixed-line-length-none -std=legacy"]
diff --git a/var/spack/repos/builtin/packages/nlcglib/package.py b/var/spack/repos/builtin/packages/nlcglib/package.py
index af001a6bd6..bc0481fe76 100644
--- a/var/spack/repos/builtin/packages/nlcglib/package.py
+++ b/var/spack/repos/builtin/packages/nlcglib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nlohmann-json-schema-validator/package.py b/var/spack/repos/builtin/packages/nlohmann-json-schema-validator/package.py
index ff2af6fcea..a21b239f32 100644
--- a/var/spack/repos/builtin/packages/nlohmann-json-schema-validator/package.py
+++ b/var/spack/repos/builtin/packages/nlohmann-json-schema-validator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nlohmann-json/package.py b/var/spack/repos/builtin/packages/nlohmann-json/package.py
index 8cba1e2a09..a839bb18ac 100644
--- a/var/spack/repos/builtin/packages/nlohmann-json/package.py
+++ b/var/spack/repos/builtin/packages/nlohmann-json/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nlopt/package.py b/var/spack/repos/builtin/packages/nlopt/package.py
index 509218ea83..5b8dac7c6d 100644
--- a/var/spack/repos/builtin/packages/nlopt/package.py
+++ b/var/spack/repos/builtin/packages/nlopt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -55,6 +55,10 @@ class Nlopt(CMakePackage):
if '-shared' in spec:
args.append('-DBUILD_SHARED_LIBS:Bool=OFF')
+ # On is default
+ if '-octave' in spec:
+ args.append('-DNLOPT_OCTAVE:Bool=OFF')
+
if '+cxx' in spec:
args.append('-DNLOPT_CXX:BOOL=ON')
diff --git a/var/spack/repos/builtin/packages/nmap/package.py b/var/spack/repos/builtin/packages/nmap/package.py
index a7e3d1a4b2..5c98b4bf09 100644
--- a/var/spack/repos/builtin/packages/nmap/package.py
+++ b/var/spack/repos/builtin/packages/nmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nn-c/package.py b/var/spack/repos/builtin/packages/nn-c/package.py
index 01f8e652b3..fb68df6e6f 100644
--- a/var/spack/repos/builtin/packages/nn-c/package.py
+++ b/var/spack/repos/builtin/packages/nn-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nnvm/package.py b/var/spack/repos/builtin/packages/nnvm/package.py
index b341fc315a..ae82139089 100644
--- a/var/spack/repos/builtin/packages/nnvm/package.py
+++ b/var/spack/repos/builtin/packages/nnvm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,6 @@ class Nnvm(CMakePackage):
def cmake_args(self):
spec = self.spec
return [
- '-DUSE_SHARED_NNVM=%s' % ('ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('USE_SHARED_NNVM', 'shared'),
'-DUSE_STATIC_NNVM=%s' % ('ON' if '~shared' in spec else 'OFF'),
]
diff --git a/var/spack/repos/builtin/packages/node-js/package.py b/var/spack/repos/builtin/packages/node-js/package.py
index 28def78333..5ca807744e 100644
--- a/var/spack/repos/builtin/packages/node-js/package.py
+++ b/var/spack/repos/builtin/packages/node-js/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,13 +18,15 @@ class NodeJs(Package):
list_depth = 1
# Current (latest features)
+ version('15.3.0', sha256='cadfa384a5f14591b84ce07a1afe529f28deb0d43366fb0ae4e78afba96bfaf2')
version('14.13.0', sha256='8538b2e76aa06ee0e6eb1c118426c3c5ca53b2e49d66591738eacf76e89edd61')
version('14.10.0', sha256='7e0d7a1aa23697415e3588a1ca4f1c47496e6c88b9cf37c66be90353d3e4ac3e')
version('13.8.0', sha256='815b5e1b18114f35da89e4d98febeaba97555d51ef593bd5175db2b05f2e8be6')
version('13.5.0', sha256='4b8078d896a7550d7ed399c1b4ac9043e9f883be404d9b337185c8d8479f2db8')
# LTS (recommended for most users)
- version('12.18.4', sha256='a802d87e579e46fc52771ed6f2667048320caca867be3276f4c4f1bbb41389c3', preferred=True)
+ version('14.15.1', sha256='a1120472bf55aea745287693a6651e16973e1008c9d6107df350126adf9716fe', preferred=True)
+ version('12.18.4', sha256='a802d87e579e46fc52771ed6f2667048320caca867be3276f4c4f1bbb41389c3')
version('12.18.3', sha256='6ea85f80e01b007cc9b566b8836513bc5102667d833bad4c1092be60fa60c2d4')
version('12.16.0', sha256='ae2dfe74485d821d4fef7cf1802acd2322cd994c853a2327c4306952f4453441')
version('12.14.0', sha256='5c1939867228f3845c808ef84a89c8ee93cc35f857bf7587ecee1b5a6d9da67b')
diff --git a/var/spack/repos/builtin/packages/notmuch/package.py b/var/spack/repos/builtin/packages/notmuch/package.py
index 6a79d0b421..7366a44e06 100644
--- a/var/spack/repos/builtin/packages/notmuch/package.py
+++ b/var/spack/repos/builtin/packages/notmuch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/npb/package.py b/var/spack/repos/builtin/packages/npb/package.py
index bc9a10cc0d..9dd5ab5185 100644
--- a/var/spack/repos/builtin/packages/npb/package.py
+++ b/var/spack/repos/builtin/packages/npb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/npm/package.py b/var/spack/repos/builtin/packages/npm/package.py
index 7b11e83911..fd1480ade0 100644
--- a/var/spack/repos/builtin/packages/npm/package.py
+++ b/var/spack/repos/builtin/packages/npm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Npm(Package):
# base http://www.npmjs.com/
url = "https://registry.npmjs.org/npm/-/npm-6.13.4.tgz"
+ version('6.14.9', sha256='1e0e880ce0d5adf0120fb3f92fc8e5ea5bac73681d37282615d074ff670f7703')
version('6.14.8', sha256='fe8e873cb606c06f67f666b4725eb9122c8927f677c8c0baf1477f0ff81f5a2c')
version('6.13.7', sha256='6adf71c198d61a5790cf0e057f4ab72c6ef6c345d72bed8bb7212cb9db969494')
version('6.13.4', sha256='a063290bd5fa06a8753de14169b7b243750432f42d01213fbd699e6b85916de7')
diff --git a/var/spack/repos/builtin/packages/npth/package.py b/var/spack/repos/builtin/packages/npth/package.py
index e5a82c4e83..0d2bbdebe7 100644
--- a/var/spack/repos/builtin/packages/npth/package.py
+++ b/var/spack/repos/builtin/packages/npth/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nrm/package.py b/var/spack/repos/builtin/packages/nrm/package.py
index d4d5bb4914..cee2d89547 100644
--- a/var/spack/repos/builtin/packages/nrm/package.py
+++ b/var/spack/repos/builtin/packages/nrm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ns-3-dev/package.py b/var/spack/repos/builtin/packages/ns-3-dev/package.py
index 6f1d85f6db..1168e28134 100644
--- a/var/spack/repos/builtin/packages/ns-3-dev/package.py
+++ b/var/spack/repos/builtin/packages/ns-3-dev/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nseg/package.py b/var/spack/repos/builtin/packages/nseg/package.py
index 76bf947f20..12a507cb4f 100644
--- a/var/spack/repos/builtin/packages/nseg/package.py
+++ b/var/spack/repos/builtin/packages/nseg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nsimd/package.py b/var/spack/repos/builtin/packages/nsimd/package.py
index f9706f834d..84c6326bae 100644
--- a/var/spack/repos/builtin/packages/nsimd/package.py
+++ b/var/spack/repos/builtin/packages/nsimd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,10 @@ class Nsimd(CMakePackage):
maintainers = ['eschnett']
+ version('2.2', sha256='7916bec6c8ea9ddc690a5bfc80fb1b9402f9e1b2a4b4bb6b6bb8eb5a07eb018e')
+ version('2.1', sha256='3274f1061d1fac170130b8c75378a6b94580629b3dc1d53db244b51500ee4695')
+ # Version 2.0 is disabled since it does not support cmake
+ # version('2.0', sha256='b239e98316f93257161b25c8232634884edcee358982a74742981cc9b68da642')
version('1.0', sha256='523dae83f1d93eab30114321f1c9a67e2006a52595da4c51f121ca139abe0857')
variant('simd',
@@ -21,17 +25,40 @@ class Nsimd(CMakePackage):
'none',
'CPU',
'SSE2', 'SSE42', 'AVX', 'AVX2', 'AVX512_KNL', 'AVX512_SKYLAKE',
- 'NEON128', 'AARCH64', 'SVE',
+ 'NEON128', 'AARCH64',
+ 'SVE', 'SVE128', 'SVE256', 'SVE512', 'SVE1024', 'SVE2048',
+ 'CUDA', 'ROCM',
),
multi=False)
variant('optionals', values=any_combination_of('FMA', 'FP16'),
description='Optional SIMD features',)
conflicts('simd=none', msg="SIMD instruction set not defined")
+ conflicts('simd=SVE128', when=('@:1'),
+ msg="SIMD extension not available in version @:1")
+ conflicts('simd=SVE256', when=('@:1'),
+ msg="SIMD extension not available in version @:1")
+ conflicts('simd=SVE512', when=('@:1'),
+ msg="SIMD extension not available in version @:1")
+ conflicts('simd=SVE1024', when=('@:1'),
+ msg="SIMD extension not available in version @:1")
+ conflicts('simd=SVE2048', when=('@:1'),
+ msg="SIMD extension not available in version @:1")
+ conflicts('simd=CUDA', when=('@:1'),
+ msg="SIMD extension not available in version @:1")
+ conflicts('simd=ROCM', when=('@:1'),
+ msg="SIMD extension not available in version @:1")
+ conflicts('optionals=FMA', when=('@2:'),
+ msg="SIMD optionals not available in version @2:")
+ conflicts('optionals=FP16', when=('@2:'),
+ msg="SIMD optionals not available in version @2:")
+ conflicts('optionals=FMA,FP16', when=('@2:'),
+ msg="SIMD optionals not available in version @2:")
# Requires a C++14 compiler for building.
# The C++ interface requires a C++11 compiler to use.
depends_on('cmake@2.8.7:', type='build')
+ depends_on('cmake@3.0.2:', type='build', when='@2:')
depends_on('python@3:', type='build')
# Add a 'generate_code' phase in the beginning
@@ -39,24 +66,28 @@ class Nsimd(CMakePackage):
def generate_code(self, spec, prefix):
"""Auto-generates code in the build directory"""
- options = [
- 'egg/hatch.py',
- '--all',
- '--force',
- '--disable-clang-format',
- ]
- python = spec['python'].command
- python(*options)
+ if self.spec.satisfies("@:1"):
+ options = [
+ 'egg/hatch.py',
+ '--all',
+ '--force',
+ ]
+ python = spec['python'].command
+ python(*options)
def cmake_args(self):
# Required SIMD argument
simd = self.spec.variants['simd'].value
- cmake_args = ["-DSIMD={0}".format(simd)]
+ if self.spec.satisfies("@:1"):
+ cmake_args = ["-DSIMD={0}".format(simd)]
+ else:
+ cmake_args = ["-Dsimd={0}".format(simd)]
- # Optional SIMD instructions to be turned on explicitly
- optionals_value = self.spec.variants['optionals'].value
- if optionals_value != 'none':
- optionals_arg = ';'.join(optionals_value)
- cmake_args.append("-DSIMD_OPTIONALS={0}".format(optionals_arg))
+ if self.spec.satisfies("@:1"):
+ # Optional SIMD instructions to be turned on explicitly
+ optionals_value = self.spec.variants['optionals'].value
+ if optionals_value != 'none':
+ optionals_arg = ';'.join(optionals_value)
+ cmake_args.append("-DSIMD_OPTIONALS={0}".format(optionals_arg))
return cmake_args
diff --git a/var/spack/repos/builtin/packages/nspr/package.py b/var/spack/repos/builtin/packages/nspr/package.py
index 5d697e6ddc..8bf72545b0 100644
--- a/var/spack/repos/builtin/packages/nspr/package.py
+++ b/var/spack/repos/builtin/packages/nspr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ntirpc/package.py b/var/spack/repos/builtin/packages/ntirpc/package.py
index fa29056e16..6d67a37777 100644
--- a/var/spack/repos/builtin/packages/ntirpc/package.py
+++ b/var/spack/repos/builtin/packages/ntirpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ntpoly/package.py b/var/spack/repos/builtin/packages/ntpoly/package.py
index d83a0bba78..0d657b0d56 100644
--- a/var/spack/repos/builtin/packages/ntpoly/package.py
+++ b/var/spack/repos/builtin/packages/ntpoly/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/numactl/fix-empty-block.patch b/var/spack/repos/builtin/packages/numactl/fix-empty-block.patch
new file mode 100644
index 0000000000..9ddf07c6e1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/numactl/fix-empty-block.patch
@@ -0,0 +1,13 @@
+diff --git a/configure.ac b/configure.ac
+index ef39707..659a765 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -17,7 +17,7 @@ AC_PROG_CC
+ # Override CFLAGS so that we can specify custom CFLAGS for numademo.
+ AX_AM_OVERRIDE_VAR([CFLAGS])
+
+-AX_TLS
++AX_TLS([:],[:])
+
+ AX_CHECK_COMPILE_FLAG([-ftree-vectorize], [tree_vectorize="true"])
+ AM_CONDITIONAL([HAVE_TREE_VECTORIZE], [test x"${tree_vectorize}" = x"true"])
diff --git a/var/spack/repos/builtin/packages/numactl/package.py b/var/spack/repos/builtin/packages/numactl/package.py
index 5070a9bfca..05f5bf4bd1 100644
--- a/var/spack/repos/builtin/packages/numactl/package.py
+++ b/var/spack/repos/builtin/packages/numactl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,7 @@ class Numactl(AutotoolsPackage):
patch('numactl-2.0.11-sysmacros.patch', when="@2.0.11")
# https://github.com/numactl/numactl/issues/94
patch('numactl-2.0.14-symver.patch', when="@2.0.14")
+ patch('fix-empty-block.patch', when="@2.0.10:2.0.14")
depends_on('autoconf', type='build')
depends_on('automake', type='build')
@@ -31,14 +32,21 @@ class Numactl(AutotoolsPackage):
bash = which('bash')
bash('./autogen.sh')
+ @when('%nvhpc')
def patch(self):
+ self._nvhpc_patch()
+
+ @when('%pgi@20:')
+ def patch(self):
+ self._nvhpc_patch()
+
+ def _nvhpc_patch(self):
# Remove flags not recognized by the NVIDIA compiler
- if self.spec.satisfies('%nvhpc'):
- filter_file('-ffast-math -funroll-loops', '', 'Makefile.am')
- filter_file('-std=gnu99', '-c99', 'Makefile.am')
+ filter_file('-ffast-math -funroll-loops', '', 'Makefile.am')
+ filter_file('-std=gnu99', '-c99', 'Makefile.am')
# Avoid undefined reference errors
- if self.spec.satisfies('@2.0.14 %nvhpc'):
+ if self.spec.satisfies('@2.0.14'):
filter_file('numa_sched_setaffinity_v1_int',
'numa_sched_setaffinity_v1', 'libnuma.c')
filter_file('numa_sched_setaffinity_v2_int',
diff --git a/var/spack/repos/builtin/packages/numamma/package.py b/var/spack/repos/builtin/packages/numamma/package.py
index cc71495449..e188813ab7 100644
--- a/var/spack/repos/builtin/packages/numamma/package.py
+++ b/var/spack/repos/builtin/packages/numamma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/numap/package.py b/var/spack/repos/builtin/packages/numap/package.py
index 2df4cfd995..45be5cea89 100644
--- a/var/spack/repos/builtin/packages/numap/package.py
+++ b/var/spack/repos/builtin/packages/numap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/numdiff/package.py b/var/spack/repos/builtin/packages/numdiff/package.py
index 5205d0e1ac..19fb8c4bfc 100644
--- a/var/spack/repos/builtin/packages/numdiff/package.py
+++ b/var/spack/repos/builtin/packages/numdiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nut/package.py b/var/spack/repos/builtin/packages/nut/package.py
index 0cc637fbaa..1c833bc892 100644
--- a/var/spack/repos/builtin/packages/nut/package.py
+++ b/var/spack/repos/builtin/packages/nut/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,7 +21,7 @@ class Nut(CMakePackage):
version('master', branch='master')
version('0.1.1', sha256='9f1dca4a9d7003b170fd57d6720228ff25471616cf884e033652e90c49c089bb')
- depends_on('cmake@3.0:')
+ depends_on('cmake@3.0:', type='build')
depends_on('random123')
conflicts('%intel', when='@serial')
diff --git a/var/spack/repos/builtin/packages/nvdimmsim/package.py b/var/spack/repos/builtin/packages/nvdimmsim/package.py
index 0d0a0964d4..e08e9883cb 100644
--- a/var/spack/repos/builtin/packages/nvdimmsim/package.py
+++ b/var/spack/repos/builtin/packages/nvdimmsim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nvhpc/package.py b/var/spack/repos/builtin/packages/nvhpc/package.py
index 7a8ce0f36a..a0477a8615 100644
--- a/var/spack/repos/builtin/packages/nvhpc/package.py
+++ b/var/spack/repos/builtin/packages/nvhpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,22 @@ import platform
# - package key must be in the form '{os}-{arch}' where 'os' is in the
# format returned by platform.system() and 'arch' by platform.machine()
_versions = {
+ '21.3': {
+ 'Linux-aarch64': ('88e0dbf8fcdd06a2ba06aacf65ae1625b8683688f6593ed3bf8ce129ce1b17b7', 'https://developer.download.nvidia.com/hpc-sdk/21.3/nvhpc_2021_213_Linux_aarch64_cuda_multi.tar.gz'),
+ 'Linux-ppc64le': ('08cd0cd6c80d633f107b44f88685ada7f014fbf6eac19ef5ae4a7952cabe4037', 'https://developer.download.nvidia.com/hpc-sdk/21.3/nvhpc_2021_213_Linux_ppc64le_cuda_multi.tar.gz'),
+ 'Linux-x86_64': ('391d5604a70f61bdd4ca6a3e4692f6f2391948990c8a35c395b6867341890031', 'https://developer.download.nvidia.com/hpc-sdk/21.3/nvhpc_2021_213_Linux_x86_64_cuda_multi.tar.gz')},
+ '21.2': {
+ 'Linux-aarch64': ('fe19c0232f7c9534f8699b7432483c9cc649f1e92e7f0961d1aa7c54d83297ff', 'https://developer.download.nvidia.com/hpc-sdk/21.2/nvhpc_2021_212_Linux_aarch64_cuda_multi.tar.gz'),
+ 'Linux-ppc64le': ('6b69b6e4ebec6a91b9f1627384c50adad79ebdd25dfb20a5f64cf01c3a07f11a', 'https://developer.download.nvidia.com/hpc-sdk/21.2/nvhpc_2021_212_Linux_ppc64le_cuda_multi.tar.gz'),
+ 'Linux-x86_64': ('a3e3393040185ae844002fbc6c8eb4ffdfb97ce8b2ce29d796fe7e9a521fdc59', 'https://developer.download.nvidia.com/hpc-sdk/21.2/nvhpc_2021_212_Linux_x86_64_cuda_multi.tar.gz')},
+ '21.1': {
+ 'Linux-aarch64': ('b276e7c0ff78cee837a597d9136cd1d8ded27a9d1fdae1e7d674e2a072a9a6aa', 'https://developer.download.nvidia.com/hpc-sdk/21.1/nvhpc_2021_211_Linux_aarch64_cuda_multi.tar.gz'),
+ 'Linux-ppc64le': ('bc236c212097bac6b7d04d627d9cc6b75bb6cd473a0b6a1bf010559ce328a2b0', 'https://developer.download.nvidia.com/hpc-sdk/21.1/nvhpc_2021_211_Linux_ppc64le_cuda_multi.tar.gz'),
+ 'Linux-x86_64': ('d529daf46404724ac3f005be4239f2c30e53f5220bb9453f367dccc3a74d6b41', 'https://developer.download.nvidia.com/hpc-sdk/21.1/nvhpc_2021_211_Linux_x86_64_cuda_multi.tar.gz')},
+ '20.11': {
+ 'Linux-aarch64': ('2f26ca45b07b694b8669e4f761760d4f7faa8d032b21e430adee1af0a27032c1', 'https://developer.download.nvidia.com/hpc-sdk/20.11/nvhpc_2020_2011_Linux_aarch64_cuda_multi.tar.gz'),
+ 'Linux-ppc64le': ('99e5a5437e82f3914e0fe81feb761a5b599a3fe8b31f3c2cac8ae47e8cdc7b0f', 'https://developer.download.nvidia.com/hpc-sdk/20.11/nvhpc_2020_2011_Linux_ppc64le_cuda_multi.tar.gz'),
+ 'Linux-x86_64': ('c80fc26e5ba586696f7030f03054c1aaca0752a891c7923faf47eb23b66857ec', 'https://developer.download.nvidia.com/hpc-sdk/20.11/nvhpc_2020_2011_Linux_x86_64_cuda_multi.tar.gz')},
'20.9': {
'Linux-aarch64': ('3bfb3d17f5ee99998bcc30d738e818d3b94b828e2d8da7db48bf152a01e22023', 'https://developer.download.nvidia.com/hpc-sdk/20.9/nvhpc_2020_209_Linux_aarch64_cuda_11.0.tar.gz'),
'Linux-ppc64le': ('b2966d4047e1dfd981ce63b333ab9c0acbdc2a6a505fa217456ac9fa3b8e7474', 'https://developer.download.nvidia.com/hpc-sdk/20.9/nvhpc_2020_209_Linux_ppc64le_cuda_multi.tar.gz'),
@@ -98,7 +114,6 @@ class Nvhpc(Package):
env.set('FC', join_path(prefix.bin, 'nvfortran'))
env.prepend_path('PATH', prefix.bin)
- env.prepend_path('CPATH', prefix.include)
env.prepend_path('LIBRARY_PATH', prefix.lib)
env.prepend_path('LD_LIBRARY_PATH', prefix.lib)
env.prepend_path('MANPATH', prefix.man)
@@ -108,7 +123,21 @@ class Nvhpc(Package):
'Linux_%s' % self.spec.target.family,
self.version, 'comm_libs', 'mpi'))
env.prepend_path('PATH', mpi_prefix.bin)
- env.prepend_path('CPATH', mpi_prefix.include)
+ env.prepend_path('LD_LIBRARY_PATH', mpi_prefix.lib)
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ prefix = Prefix(join_path(self.prefix,
+ 'Linux_%s' % self.spec.target.family,
+ self.version, 'compilers'))
+
+ env.prepend_path('LIBRARY_PATH', prefix.lib)
+ env.prepend_path('LD_LIBRARY_PATH', prefix.lib)
+
+ if '+mpi' in self.spec:
+ mpi_prefix = Prefix(join_path(self.prefix,
+ 'Linux_%s' % self.spec.target.family,
+ self.version, 'comm_libs', 'mpi'))
+
env.prepend_path('LD_LIBRARY_PATH', mpi_prefix.lib)
def setup_dependent_package(self, module, dependent_spec):
diff --git a/var/spack/repos/builtin/packages/nvptx-tools/package.py b/var/spack/repos/builtin/packages/nvptx-tools/package.py
index 775b53e3fa..22c6bb6f08 100644
--- a/var/spack/repos/builtin/packages/nvptx-tools/package.py
+++ b/var/spack/repos/builtin/packages/nvptx-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class NvptxTools(AutotoolsPackage):
homepage = "https://github.com/MentorEmbedded/nvptx-tools"
git = "https://github.com/MentorEmbedded/nvptx-tools"
+ version('2021-05-21', commit='d0524fbdc86dfca068db5a21cc78ac255b335be5')
version('2018-03-01', commit='5f6f343a302d620b0868edab376c00b15741e39e')
depends_on('binutils')
diff --git a/var/spack/repos/builtin/packages/nvshmem/package.py b/var/spack/repos/builtin/packages/nvshmem/package.py
new file mode 100644
index 0000000000..d669c8efce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nvshmem/package.py
@@ -0,0 +1,54 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import re
+
+
+class Nvshmem(MakefilePackage, CudaPackage):
+ """NVSHMEM is a parallel programming interface based on OpenSHMEM that
+ provides efficient and scalable communication for NVIDIA GPU
+ clusters. NVSHMEM creates a global address space for data that spans
+ the memory of multiple GPUs and can be accessed with fine-grained
+ GPU-initiated operations, CPU-initiated operations, and operations on
+ CUDA streams."""
+
+ homepage = "https://developer.nvidia.com/nvshmem"
+ url = "https://developer.nvidia.com/nvshmem-src-203-0"
+
+ maintainers = ['bvanessen']
+
+ version('2.0.3-0', sha256='20da93e8508511e21aaab1863cb4c372a3bec02307b932144a7d757ea5a1bad2', extension='txz')
+
+ variant('cuda', default=True, description='Build with CUDA')
+ conflicts('~cuda')
+
+ def url_for_version(self, version):
+ ver_str = '{0}'.format(version)
+ ver = re.sub('[.]', '', ver_str)
+ url_fmt = "https://developer.nvidia.com/nvshmem-src-{0}"
+ return url_fmt.format(ver)
+
+ depends_on('mpi')
+ depends_on('gdrcopy')
+
+ def setup_build_environment(self, env):
+ env.append_flags(
+ 'NVSHMEM_PREFIX', self.prefix)
+ env.append_flags(
+ 'NVSHMEM_MPI_SUPPORT', '1')
+ env.append_flags(
+ 'NVSHMEM_USE_GDRCOPY', '1')
+
+ if self.spec.satisfies('^spectrum-mpi') or self.spec.satisfies('^openmpi'):
+ env.append_flags(
+ 'NVSHMEM_MPI_IS_OMPI', '1')
+ env.append_flags(
+ 'NVSHMEM_SHMEM_SUPPORT', '1')
+ else:
+ env.append_flags(
+ 'NVSHMEM_MPI_IS_OMPI', '0')
+ env.append_flags(
+ 'NVSHMEM_SHMEM_SUPPORT', '0')
diff --git a/var/spack/repos/builtin/packages/nvtop/package.py b/var/spack/repos/builtin/packages/nvtop/package.py
new file mode 100644
index 0000000000..a18d32188c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nvtop/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Nvtop(CMakePackage, CudaPackage):
+ """Nvtop stands for NVidia TOP, a (h)top like task monitor for NVIDIA GPUs.
+ It can handle multiple GPUs and print information about them
+ in a htop familiar way."""
+
+ homepage = "https://github.com/Syllo/nvtop"
+ url = "https://github.com/Syllo/nvtop/archive/1.1.0.tar.gz"
+
+ version('1.1.0', sha256='00470cde8fc48d5a5ed7c96402607e474414d94b562b21189bdde1dbe6b1d1f3')
+
+ depends_on('ncurses')
+
+ def cmake_args(self):
+ return [self.define('NVML_RETRIEVE_HEADER_ONLINE', True)]
diff --git a/var/spack/repos/builtin/packages/nwchem/package.py b/var/spack/repos/builtin/packages/nwchem/package.py
index e31715ccd9..ccf985f911 100644
--- a/var/spack/repos/builtin/packages/nwchem/package.py
+++ b/var/spack/repos/builtin/packages/nwchem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/nyancat/package.py b/var/spack/repos/builtin/packages/nyancat/package.py
index e96079814b..a89ba0e9a2 100644
--- a/var/spack/repos/builtin/packages/nyancat/package.py
+++ b/var/spack/repos/builtin/packages/nyancat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ocaml/package.py b/var/spack/repos/builtin/packages/ocaml/package.py
index 406deeed36..0ddebf55c2 100644
--- a/var/spack/repos/builtin/packages/ocaml/package.py
+++ b/var/spack/repos/builtin/packages/ocaml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ocamlbuild/package.py b/var/spack/repos/builtin/packages/ocamlbuild/package.py
new file mode 100644
index 0000000000..0bee1bfd19
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ocamlbuild/package.py
@@ -0,0 +1,41 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Ocamlbuild(MakefilePackage):
+ """OCamlbuild is a generic build tool,
+ that has built-in rules for building OCaml library and programs."""
+
+ # Add a proper url for your package's homepage here.
+ homepage = "https://ocaml.org/learn/tutorials/ocamlbuild/"
+ url = "https://github.com/ocaml/ocamlbuild/archive/0.14.0.tar.gz"
+ git = "https://github.com/ocaml/ocamlbuild/ocamlbuild.git"
+
+ # Add a list of GitHub accounts to
+ # notify when the package is updated.
+ maintainers = ['scemama', 'cessenat']
+
+ # Add proper versions here.
+ version('master', branch='master')
+ version('0.14.0', sha256='87b29ce96958096c0a1a8eeafeb6268077b2d11e1bf2b3de0f5ebc9cf8d42e78')
+ version('0.13.1', sha256='79839544bcaebc8f9f0d73d029e2b67e2c898bba046c559ea53de81ea763408c')
+
+ # Add dependencies if required.
+ depends_on('ocaml')
+
+ # Installation : https://github.com/ocaml/ocamlbuild/
+ def edit(self, spec, prefix):
+ makefile_inc = [
+ 'BINDIR = bin',
+ 'LIBDIR = lib',
+ 'MANDIR = man',
+ ]
+ makefile_inc.append('OCAML_PREFIX = %s' % self.spec['ocaml'].prefix)
+ makefile_inc.append('DESTDIR = %s/' % self.spec.prefix)
+ with open('Makefile.config', 'a') as fh:
+ fh.write('\n'.join(makefile_inc))
+ make('configure')
diff --git a/var/spack/repos/builtin/packages/occa/package.py b/var/spack/repos/builtin/packages/occa/package.py
index 5d72517b3d..1868510c89 100644
--- a/var/spack/repos/builtin/packages/occa/package.py
+++ b/var/spack/repos/builtin/packages/occa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/oce/package.py b/var/spack/repos/builtin/packages/oce/package.py
index dbd3f23182..931aa0bb47 100644
--- a/var/spack/repos/builtin/packages/oce/package.py
+++ b/var/spack/repos/builtin/packages/oce/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/oci-systemd-hook/package.py b/var/spack/repos/builtin/packages/oci-systemd-hook/package.py
index 3e45811b41..6938f5b4ff 100644
--- a/var/spack/repos/builtin/packages/oci-systemd-hook/package.py
+++ b/var/spack/repos/builtin/packages/oci-systemd-hook/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,7 @@ class OciSystemdHook(AutotoolsPackage):
depends_on('m4', type='build')
depends_on('gettext')
depends_on('yajl')
+ depends_on('uuid')
depends_on('util-linux')
depends_on('go-md2man')
diff --git a/var/spack/repos/builtin/packages/ocl-icd/package.py b/var/spack/repos/builtin/packages/ocl-icd/package.py
index 88bd00a2e6..e12d2546b6 100644
--- a/var/spack/repos/builtin/packages/ocl-icd/package.py
+++ b/var/spack/repos/builtin/packages/ocl-icd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ OpenCL ICD loaders."""
homepage = "https://github.com/OCL-dev/ocl-icd"
url = "https://github.com/OCL-dev/ocl-icd/archive/v2.2.12.tar.gz"
+ version('2.2.14', sha256='46df23608605ad548e80b11f4ba0e590cef6397a079d2f19adf707a7c2fbfe1b')
version('2.2.13', sha256='f85d59f3e8327f15637b91e4ae8df0829e94daeff68c647b2927b8376b1f8d92')
version('2.2.12', sha256='17500e5788304eef5b52dbe784cec197bdae64e05eecf38317840d2d05484272')
version('2.2.11', sha256='c1865ef7701b8201ebc6930ed3ac757c7e5cb30f3aa4c1e742a6bc022f4f2292')
@@ -34,9 +35,10 @@ OpenCL ICD loaders."""
depends_on('ruby', type='build')
depends_on('asciidoc-py3', type='build')
depends_on('xmlto', type='build')
- depends_on('opencl-headers@2.2:', when='+headers')
+ depends_on('opencl-headers@3.0:', when='+headers')
- provides('opencl@:2.2', when='@2.2.12:+headers')
+ provides('opencl@:3.0', when='@2.2.13:+headers')
+ provides('opencl@:2.2', when='@2.2.12+headers')
provides('opencl@:2.1', when='@2.2.8:2.2.11+headers')
provides('opencl@:2.0', when='@2.2.3:2.2.7+headers')
diff --git a/var/spack/repos/builtin/packages/oclgrind/package.py b/var/spack/repos/builtin/packages/oclgrind/package.py
index c3b9302583..9fb81b0b93 100644
--- a/var/spack/repos/builtin/packages/oclgrind/package.py
+++ b/var/spack/repos/builtin/packages/oclgrind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/oclint/package.py b/var/spack/repos/builtin/packages/oclint/package.py
index 8731f6b5ad..c38dc86396 100644
--- a/var/spack/repos/builtin/packages/oclint/package.py
+++ b/var/spack/repos/builtin/packages/oclint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/oclock/package.py b/var/spack/repos/builtin/packages/oclock/package.py
index bf0345509d..76fdb6a382 100644
--- a/var/spack/repos/builtin/packages/oclock/package.py
+++ b/var/spack/repos/builtin/packages/oclock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/octave-arduino/package.py b/var/spack/repos/builtin/packages/octave-arduino/package.py
new file mode 100644
index 0000000000..46908525e9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-arduino/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveArduino(OctavePackage, SourceforgePackage):
+ """Provides an Octave look-alike implementation of the
+ Arduino extension for Matlab."""
+
+ homepage = "https://octave.sourceforge.io/arduino/"
+ sourceforge_mirror_path = "octave/arduino-0.2.0.tar.gz"
+
+ version('0.2.0', sha256='0562ff48ea4b2cef28e2e03ccc4678dafa16f91d1580245bb7f9f488c4f56238')
+
+ depends_on('octave-instrctl')
+ extends('octave@3.6.0:')
diff --git a/var/spack/repos/builtin/packages/octave-control/package.py b/var/spack/repos/builtin/packages/octave-control/package.py
new file mode 100644
index 0000000000..75b6406b54
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-control/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveControl(OctavePackage, SourceforgePackage):
+ """Computer-Aided Control System Design (CACSD) Tools for GNU Octave,
+ based on the proven SLICOT Library"""
+
+ homepage = "https://octave.sourceforge.io/control/"
+ sourceforge_mirror_path = "octave/control-3.2.0.tar.gz"
+
+ version('3.2.0', sha256='faf1d510d16ab46e4fa91a1288f4a7839ee05469c33e4698b7a007a0bb965e3e')
+
+ extends('octave@4.0.0:')
diff --git a/var/spack/repos/builtin/packages/octave-gsl/package.py b/var/spack/repos/builtin/packages/octave-gsl/package.py
new file mode 100644
index 0000000000..c5170f3397
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-gsl/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveGsl(OctavePackage, SourceforgePackage):
+ """Octave bindings to the GNU Scientific Library"""
+
+ homepage = "https://octave.sourceforge.io/gsl/"
+ sourceforge_mirror_path = "octave/gsl-2.1.1.tar.gz"
+
+ version('2.1.1', sha256='d028c52579e251c3f21ebfdf065dffab3ad7893434efda33b501225ef1ea6ed3')
+
+ depends_on('gsl@2.4:')
+ extends('octave@2.9.7:')
+
+ def setup_build_environment(self, env):
+ env.prepend_path('PKG_CONFIG_PATH', self.spec['gsl'].prefix)
diff --git a/var/spack/repos/builtin/packages/octave-instrctl/package.py b/var/spack/repos/builtin/packages/octave-instrctl/package.py
new file mode 100644
index 0000000000..a49d954cdd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-instrctl/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveInstrctl(OctavePackage, SourceforgePackage):
+ """Instrument-Control is a package for interfacing the outside world of hardware
+ via Serial, i2c or Parallel interfaces."""
+
+ homepage = "https://octave.sourceforge.io/instrument-control/"
+ sourceforge_mirror_path = "octave/instrument-control-0.3.1.tar.gz"
+
+ version('0.3.1', sha256='d9c3b2e258cc8245ebfdd282e6314af12987daf453f4356555f56ca5ec55873c')
+
+ extends('octave@3.6.0:')
diff --git a/var/spack/repos/builtin/packages/octave-io/package.py b/var/spack/repos/builtin/packages/octave-io/package.py
new file mode 100644
index 0000000000..42fd686410
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-io/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveIo(OctavePackage, SourceforgePackage):
+ """The IO package is part of the Octave Forge project
+ and provides input/output from/in external formats."""
+
+ homepage = "https://octave.sourceforge.io/io/"
+ sourceforge_mirror_path = "octave/io-2.6.3.tar.gz"
+
+ version('2.6.3', sha256='6bc63c6498d79cada01a6c4446f793536e0bb416ddec2a5201dd8d741d459e10')
+ version('2.6.2', sha256='01dbf8885a8011e76c919e271727c1d44f625bf6b217948b79438039ba368ceb')
+ version('2.6.1', sha256='83253561f883c96ca3021a771223d23795122dc4cb800766e9cb893c6f8262dd')
+ version('2.6.0', sha256='27f26273ced0b42c098e900136bb0ab2e542baf98d02bc0176cf47edbd0e6d7f')
+ version('2.2.7', sha256='4eed2ee4c89b49ab160546c77ed66a384598f3bbb1c6e3833529c2c55aa479b6')
+
+ extends('octave@4.2.0:')
diff --git a/var/spack/repos/builtin/packages/octave-optim/package.py b/var/spack/repos/builtin/packages/octave-optim/package.py
index 4f94c18ac4..52865115ba 100644
--- a/var/spack/repos/builtin/packages/octave-optim/package.py
+++ b/var/spack/repos/builtin/packages/octave-optim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,10 @@ class OctaveOptim(OctavePackage, SourceforgePackage):
homepage = "https://octave.sourceforge.io/optim/"
sourceforge_mirror_path = "octave/optim-1.5.2.tar.gz"
+ version('1.6.1', sha256='7150cdfac7e9da31ec7ac1cfe8619d9c0e9c8b3f787f54bf89e0fb1c275be584')
version('1.5.2', sha256='7b36033c5581559dc3e7616f97d402bc44dde0dfd74c0e3afdf47d452a76dddf')
depends_on('octave-struct@1.0.12:')
- extends('octave@3.6.0:')
+ depends_on('octave-statistics@1.4.0:')
+ extends('octave@3.6.0:', when='@:1.5.2')
+ extends('octave@4.0.0:', when='@1.6.1:')
diff --git a/var/spack/repos/builtin/packages/octave-quaternion/package.py b/var/spack/repos/builtin/packages/octave-quaternion/package.py
new file mode 100644
index 0000000000..4a09b93f27
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-quaternion/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveQuaternion(OctavePackage, SourceforgePackage):
+ """Quaternion package for GNU Octave,
+ includes a quaternion class with overloaded operators."""
+
+ homepage = "https://octave.sourceforge.io/quaternion/"
+ sourceforge_mirror_path = "octave/quaternion-2.4.0.tar.gz"
+
+ version('2.4.0', sha256='4c2d4dd8f1d213f080519c6f9dfbbdca068087ee0411122b16e377e0f4641610')
+ version('2.2.2', sha256='261d51657bc729c8f9fe915532d91e75e48dce2af2b298781e78cc93a5067cbd')
+
+ conflicts('octave@6:')
+ extends('octave@3.8.0:5.2.0')
diff --git a/var/spack/repos/builtin/packages/octave-signal/package.py b/var/spack/repos/builtin/packages/octave-signal/package.py
new file mode 100644
index 0000000000..0e8efd6014
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-signal/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveSignal(OctavePackage, SourceforgePackage):
+ """Signal processing tools, including filtering, windowing and display functions."""
+
+ homepage = "https://octave.sourceforge.io/optim/"
+ sourceforge_mirror_path = "octave/signal-1.4.1.tar.gz"
+
+ version('1.4.1', sha256='d978600f8b8f61339b986136c9862cad3e8f7015f84132f214bf63e9e281aeaa')
+
+ depends_on('octave-control@2.4:')
+ extends('octave@3.8.0:')
diff --git a/var/spack/repos/builtin/packages/octave-splines/package.py b/var/spack/repos/builtin/packages/octave-splines/package.py
index 5a9a5777c1..2c73b27064 100644
--- a/var/spack/repos/builtin/packages/octave-splines/package.py
+++ b/var/spack/repos/builtin/packages/octave-splines/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,5 +12,6 @@ class OctaveSplines(OctavePackage, SourceforgePackage):
homepage = "http://octave.sourceforge.net/splines/index.html"
sourceforge_mirror_path = "octave/splines-1.3.1.tar.gz"
+ version('1.3.3', sha256='0a4bf9544b1fedb4aed4222eff1333928b0e3c903f140822eb857585e0d5919b')
version('1.3.1', sha256='f9665d780c37aa6a6e17d1f424c49bdeedb89d1192319a4e39c08784122d18f9')
extends('octave@3.6.0:')
diff --git a/var/spack/repos/builtin/packages/octave-statistics/package.py b/var/spack/repos/builtin/packages/octave-statistics/package.py
new file mode 100644
index 0000000000..1a73d067e0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-statistics/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveStatistics(OctavePackage, SourceforgePackage):
+ """Additional statistics functions for Octave."""
+
+ homepage = "https://octave.sourceforge.io/statistics/"
+ sourceforge_mirror_path = "octave/statistics-1.4.2.tar.gz"
+
+ version('1.4.2', sha256='7976814f837508e70367548bfb0a6d30aa9e447d4e3a66914d069efb07876247')
+
+ depends_on('octave-io')
+ extends('octave@4.0.0:')
diff --git a/var/spack/repos/builtin/packages/octave-struct/package.py b/var/spack/repos/builtin/packages/octave-struct/package.py
index b428ce7872..eb88791e9f 100644
--- a/var/spack/repos/builtin/packages/octave-struct/package.py
+++ b/var/spack/repos/builtin/packages/octave-struct/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,5 +12,6 @@ class OctaveStruct(OctavePackage, SourceforgePackage):
homepage = "https://octave.sourceforge.io/struct/"
sourceforge_mirror_path = "octave/struct-1.0.14.tar.gz"
+ version('1.0.17', sha256='0137bbb5df650f29104f6243502f3a2302aaaa5e42ea9f02d8a3943aaf668433')
version('1.0.14', sha256='ad4e17687bc24650f032757271b20b70fe32c35513d4dd9ab1e549919df36b47')
extends('octave@2.9.7:')
diff --git a/var/spack/repos/builtin/packages/octave-symbolic/package.py b/var/spack/repos/builtin/packages/octave-symbolic/package.py
new file mode 100644
index 0000000000..223995fab1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave-symbolic/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OctaveSymbolic(OctavePackage, SourceforgePackage):
+ """Adds symbolic calculation features to GNU Octave.
+ These include common Computer Algebra System tools such as algebraic operations,
+ calculus, equation solving, Fourier and Laplace transforms, variable precision
+ arithmetic and other features.
+ Compatibility with other symbolic toolboxes is intended."""
+
+ homepage = "https://octave.sourceforge.io/symbolic/"
+ sourceforge_mirror_path = "octave/symbolic-2.9.0.tar.gz"
+
+ version('2.9.0', sha256='089ec44a0a49417a8b78797e87f338da6a6e227509f3080724996483d39b23cb')
+
+ extends('octave@4.2.0:')
diff --git a/var/spack/repos/builtin/packages/octave/package.py b/var/spack/repos/builtin/packages/octave/package.py
index 3d6d3e5ad9..7dcdeed439 100644
--- a/var/spack/repos/builtin/packages/octave/package.py
+++ b/var/spack/repos/builtin/packages/octave/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,8 @@ class Octave(AutotoolsPackage, GNUMirrorPackage):
extendable = True
+ version('6.2.0', sha256='457d1fda8634a839e2fd7cfc55b98bd56f36b6ae73d31bb9df43dde3012caa7c')
+ version('6.1.0', sha256='6ff34e401658622c44094ecb67e497672e4337ca2d36c0702d0403ecc60b0a57')
version('5.2.0', sha256='2fea62b3c78d6f38e9451da8a4d26023840725977dffee5250d3d180f56595e1')
version('5.1.0', sha256='e36b1124cac27c7caa51cc57de408c31676d5f0096349b4d50b57bfe1bcd7495')
version('4.4.1', sha256='09fbd0f212f4ef21e53f1d9c41cf30ce3d7f9450fb44911601e21ed64c67ae97')
@@ -86,12 +88,13 @@ class Octave(AutotoolsPackage, GNUMirrorPackage):
depends_on('gnuplot', when='+gnuplot')
depends_on('imagemagick', when='+magick')
depends_on('hdf5', when='+hdf5')
- depends_on('java', when='+jdk') # TODO: requires Java 6 ?
+ depends_on('java', when='+jdk') # TODO: requires Java 6 ?
depends_on('llvm', when='+llvm')
- # depends_on('opengl', when='+opengl') # TODO: add package
+ depends_on('gl', when='+opengl')
+ depends_on('gl', when='+fltk')
depends_on('qhull', when='+qhull')
depends_on('qrupdate', when='+qrupdate')
- # depends_on('qscintilla', when='+qscintilla) # TODO: add package
+ depends_on('qscintilla', when='+qscintilla')
depends_on('qt+opengl', when='+qt')
depends_on('suite-sparse', when='+suitesparse')
depends_on('zlib', when='+zlib')
@@ -237,7 +240,7 @@ class Octave(AutotoolsPackage, GNUMirrorPackage):
else:
config_args.append("--disable-java")
- if '~opengl' in spec:
+ if '~opengl' and '~fltk' in spec:
config_args.extend([
"--without-opengl",
"--without-framework-opengl"
diff --git a/var/spack/repos/builtin/packages/octopus/package.py b/var/spack/repos/builtin/packages/octopus/package.py
index b4cac8fbd5..7c962b129a 100644
--- a/var/spack/repos/builtin/packages/octopus/package.py
+++ b/var/spack/repos/builtin/packages/octopus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/odc/package.py b/var/spack/repos/builtin/packages/odc/package.py
new file mode 100644
index 0000000000..24bf25fbac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/odc/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Odc(CMakePackage):
+ """ECMWF encoding and decoding of observational data in ODB2 format."""
+
+ homepage = 'https://github.com/ecmwf/odc'
+ url = 'https://github.com/ecmwf/odc/archive/refs/tags/1.3.0.tar.gz'
+
+ maintainers = ['skosukhin']
+
+ version('1.3.0', sha256='97a4f10765b341cc8ccbbf203f5559cb1b838cbd945f48d4cecb1bc4305e6cd6')
+
+ variant('fortran', default=False,
+ description='Enable the Fortran interface')
+
+ depends_on('ecbuild@3.4:', type='build')
+ depends_on('cmake@3.12:', type='build')
+
+ depends_on('eckit@1.4:+sql')
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('ENABLE_FORTRAN', 'fortran'),
+ # The tests download additional data (~650MB):
+ self.define('ENABLE_TESTS', self.run_tests)
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/of-catalyst/package.py b/var/spack/repos/builtin/packages/of-catalyst/package.py
index eb036b0db9..58898c658a 100644
--- a/var/spack/repos/builtin/packages/of-catalyst/package.py
+++ b/var/spack/repos/builtin/packages/of-catalyst/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/of-precice/package.py b/var/spack/repos/builtin/packages/of-precice/package.py
index 3cc9927f4a..f20427d8f5 100644
--- a/var/spack/repos/builtin/packages/of-precice/package.py
+++ b/var/spack/repos/builtin/packages/of-precice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/omega-h/package.py b/var/spack/repos/builtin/packages/omega-h/package.py
index b2ba6be1f2..b5a01bfad5 100644
--- a/var/spack/repos/builtin/packages/omega-h/package.py
+++ b/var/spack/repos/builtin/packages/omega-h/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ class OmegaH(CMakePackage):
maintainers = ['ibaned']
- version('develop', branch='master')
+ version('main', branch='main')
version('9.32.5', sha256='963a203e9117024cd48d829d82b8543cd9133477fdc15386113b594fdc3246d8')
version('9.29.0', sha256='b41964b018909ffe9cea91c23a0509b259bfbcf56874fcdf6bd9f6a179938014')
version('9.27.0', sha256='aa51f83508cbd14a41ae953bda7da98a6ad2979465c76e5b3a3d9a7a651cb34a')
@@ -93,4 +93,8 @@ class OmegaH(CMakePackage):
flags = list(flags)
if name == 'cxxflags':
flags.append(self.compiler.cxx11_flag)
+
+ if self.spec.satisfies('%cce'):
+ flags.append("-Wno-final-dtor-non-final-class")
+
return (None, None, flags)
diff --git a/var/spack/repos/builtin/packages/ompss/package.py b/var/spack/repos/builtin/packages/ompss/package.py
index 669116328c..9f25d7cbac 100644
--- a/var/spack/repos/builtin/packages/ompss/package.py
+++ b/var/spack/repos/builtin/packages/ompss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ompt-openmp/package.py b/var/spack/repos/builtin/packages/ompt-openmp/package.py
index 7376efb76e..a3c65b3755 100644
--- a/var/spack/repos/builtin/packages/ompt-openmp/package.py
+++ b/var/spack/repos/builtin/packages/ompt-openmp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/onednn/package.py b/var/spack/repos/builtin/packages/onednn/package.py
index a10c409560..ee825deaad 100644
--- a/var/spack/repos/builtin/packages/onednn/package.py
+++ b/var/spack/repos/builtin/packages/onednn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,15 @@ class Onednn(CMakePackage):
homepage = "https://01.org/onednn"
url = "https://github.com/oneapi-src/oneDNN/archive/v1.7.tar.gz"
+ git = "https://github.com/oneapi-src/oneDNN.git"
maintainers = ['adamjstewart']
+ version('master', branch='master')
+ version('2.1-rc', sha256='13d293e7368a8fdd8dd3c11c73352cf5f564398658dd027ce0acde947440b4cb')
+ version('2.0', sha256='922b42c3ea7a7122a77c61568dc4512aa8130c264c0489283c989919d1f59a6d')
+ version('1.8.1', sha256='1883ccfb037bd31f916203a38e877899fc27ae10bc9ebad686f78d189ba506a7')
+ version('1.8', sha256='0a1bfbbc6fd86c6ea4cf0f7c36fe3e69b0bbefa74158c65a5db28d589cb5fbe9')
version('1.7', sha256='2dbd53578b36bd84bbc3e411d1a4cacc0eed832892818c5fa16b72cbf1dab015')
version('1.6.5', sha256='6258d961fe1757b70d10cf34f0925079401ffae264f056b15024270b11d5c1eb')
version('1.6.4', sha256='5369f7b2f0b52b40890da50c0632c3a5d1082d98325d0f2bff125d19d0dcaa1d')
diff --git a/var/spack/repos/builtin/packages/oniguruma/package.py b/var/spack/repos/builtin/packages/oniguruma/package.py
index 91259d7588..82692ef59f 100644
--- a/var/spack/repos/builtin/packages/oniguruma/package.py
+++ b/var/spack/repos/builtin/packages/oniguruma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ont-albacore/package.py b/var/spack/repos/builtin/packages/ont-albacore/package.py
index b3bedf9da2..e920701550 100644
--- a/var/spack/repos/builtin/packages/ont-albacore/package.py
+++ b/var/spack/repos/builtin/packages/ont-albacore/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/opa-psm2/opa-psm2-install-prefix.patch b/var/spack/repos/builtin/packages/opa-psm2/opa-psm2-install-prefix.patch
deleted file mode 100644
index e03f7276b7..0000000000
--- a/var/spack/repos/builtin/packages/opa-psm2/opa-psm2-install-prefix.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-diff -Naupr opa-psm2-PSM2_11.2.68/Makefile opa-psm2-PSM2_11.2.68-pathfix/Makefile
---- opa-psm2-PSM2_11.2.68/Makefile 2018-09-27 19:48:03.000000000 -0400
-+++ opa-psm2-PSM2_11.2.68-pathfix/Makefile 2019-06-07 11:34:37.658270976 -0400
-@@ -135,9 +135,9 @@ endif
-
- ifndef LIBDIR
- ifeq (${arch},x86_64)
-- INSTALL_LIB_TARG=/usr/lib64
-+ INSTALL_LIB_TARG=/lib64
- else
-- INSTALL_LIB_TARG=/usr/lib
-+ INSTALL_LIB_TARG=/lib
- endif
- else
- INSTALL_LIB_TARG=${LIBDIR}
-@@ -177,7 +177,7 @@ UDEV_40_PSM_RULES := %{_udevrulesdir}/40
-
- ifeq (fedora,$(DISTRO))
- # On Fedora, we change these two variables to these values:
-- LIBPSM2_COMPAT_CONF_DIR := /usr/lib
-+ LIBPSM2_COMPAT_CONF_DIR := /lib
- LIBPSM2_COMPAT_SYM_CONF_DIR := %{_prefix}/lib
- SPEC_FILE_RELEASE_DIST := %{?dist}
- UDEV_40_PSM_RULES :=#
-@@ -411,20 +411,20 @@ install: all
- ln -sf ${TARGLIB}.so.${MAJOR} ${TARGLIB}.so)
- install -D $(OUTDIR)/${TARGLIB}.a \
- ${DESTDIR}${INSTALL_LIB_TARG}/${TARGLIB}.a
-- install -m 0644 -D psm2.h ${DESTDIR}/usr/include/psm2.h
-- install -m 0644 -D psm2_mq.h ${DESTDIR}/usr/include/psm2_mq.h
-- install -m 0644 -D psm2_am.h ${DESTDIR}/usr/include/psm2_am.h
-+ install -m 0644 -D psm2.h ${DESTDIR}/include/psm2.h
-+ install -m 0644 -D psm2_mq.h ${DESTDIR}/include/psm2_mq.h
-+ install -m 0644 -D psm2_am.h ${DESTDIR}/include/psm2_am.h
- ifneq (fedora,${DISTRO})
- install -m 0644 -D 40-psm.rules ${DESTDIR}$(UDEVDIR)/rules.d/40-psm.rules
- endif
- # The following files and dirs were part of the noship rpm:
-- mkdir -p ${DESTDIR}/usr/include/hfi1diag
-- mkdir -p ${DESTDIR}/usr/include/hfi1diag/linux-x86_64
-- install -m 0644 -D include/linux-x86_64/bit_ops.h ${DESTDIR}/usr/include/hfi1diag/linux-x86_64/bit_ops.h
-- install -m 0644 -D include/linux-x86_64/sysdep.h ${DESTDIR}/usr/include/hfi1diag/linux-x86_64/sysdep.h
-- install -m 0644 -D include/opa_udebug.h ${DESTDIR}/usr/include/hfi1diag/opa_udebug.h
-- install -m 0644 -D include/opa_debug.h ${DESTDIR}/usr/include/hfi1diag/opa_debug.h
-- install -m 0644 -D include/opa_intf.h ${DESTDIR}/usr/include/hfi1diag/opa_intf.h
-+ mkdir -p ${DESTDIR}/include/hfi1diag
-+ mkdir -p ${DESTDIR}/include/hfi1diag/linux-x86_64
-+ install -m 0644 -D include/linux-x86_64/bit_ops.h ${DESTDIR}/include/hfi1diag/linux-x86_64/bit_ops.h
-+ install -m 0644 -D include/linux-x86_64/sysdep.h ${DESTDIR}/include/hfi1diag/linux-x86_64/sysdep.h
-+ install -m 0644 -D include/opa_udebug.h ${DESTDIR}/include/hfi1diag/opa_udebug.h
-+ install -m 0644 -D include/opa_debug.h ${DESTDIR}/include/hfi1diag/opa_debug.h
-+ install -m 0644 -D include/opa_intf.h ${DESTDIR}/include/hfi1diag/opa_intf.h
- for h in opa_user_gen1.h opa_service_gen1.h opa_common_gen1.h ; do \
- sed -e 's/#include "opa_user_gen1.h"/#include "opa_user.h"/' \
- -e 's/#include "opa_common_gen1.h"/#include "opa_common.h"/' \
-@@ -434,14 +434,14 @@ endif
- done
- cat include/opa_user.h $(TEMP_INST_DIR)/opa_user_gen1.h > $(TEMP_INST_DIR)/opa_user.h
- cat include/opa_service.h $(TEMP_INST_DIR)/opa_service_gen1.h > $(TEMP_INST_DIR)/opa_service.h
-- install -m 0644 -D $(TEMP_INST_DIR)/opa_user.h ${DESTDIR}/usr/include/hfi1diag/opa_user.h
-- install -m 0644 -D $(TEMP_INST_DIR)/opa_service.h ${DESTDIR}/usr/include/hfi1diag/opa_service.h
-- install -m 0644 -D $(TEMP_INST_DIR)/opa_common_gen1.h ${DESTDIR}/usr/include/hfi1diag/opa_common.h
-- install -m 0644 -D include/opa_byteorder.h ${DESTDIR}/usr/include/hfi1diag/opa_byteorder.h
-- install -m 0644 -D include/psm2_mock_testing.h ${DESTDIR}/usr/include/hfi1diag/psm2_mock_testing.h
-- install -m 0644 -D include/opa_revision.h ${DESTDIR}/usr/include/hfi1diag/opa_revision.h
-- install -m 0644 -D psmi_wrappers.h ${DESTDIR}/usr/include/hfi1diag/psmi_wrappers.h
-- install -m 0644 -D psm_hal_gen1/hfi1_deprecated_gen1.h ${DESTDIR}/usr/include/hfi1diag/hfi1_deprecated.h
-+ install -m 0644 -D $(TEMP_INST_DIR)/opa_user.h ${DESTDIR}/include/hfi1diag/opa_user.h
-+ install -m 0644 -D $(TEMP_INST_DIR)/opa_service.h ${DESTDIR}/include/hfi1diag/opa_service.h
-+ install -m 0644 -D $(TEMP_INST_DIR)/opa_common_gen1.h ${DESTDIR}/include/hfi1diag/opa_common.h
-+ install -m 0644 -D include/opa_byteorder.h ${DESTDIR}/include/hfi1diag/opa_byteorder.h
-+ install -m 0644 -D include/psm2_mock_testing.h ${DESTDIR}/include/hfi1diag/psm2_mock_testing.h
-+ install -m 0644 -D include/opa_revision.h ${DESTDIR}/include/hfi1diag/opa_revision.h
-+ install -m 0644 -D psmi_wrappers.h ${DESTDIR}/include/hfi1diag/psmi_wrappers.h
-+ install -m 0644 -D psm_hal_gen1/hfi1_deprecated_gen1.h ${DESTDIR}/include/hfi1diag/hfi1_deprecated.h
- rm -fr $(TEMP_INST_DIR)
-
- specfile: specfile_clean | $(OUTDIR)
diff --git a/var/spack/repos/builtin/packages/opa-psm2/package.py b/var/spack/repos/builtin/packages/opa-psm2/package.py
index 304c7adafe..9f9a248bdd 100644
--- a/var/spack/repos/builtin/packages/opa-psm2/package.py
+++ b/var/spack/repos/builtin/packages/opa-psm2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,12 @@ from spack import *
class OpaPsm2(MakefilePackage):
- """ Intel Omni-Path Performance Scaled Messaging 2 (PSM2) library"""
+ """ Omni-Path Performance Scaled Messaging 2 (PSM2) library"""
- homepage = "http://github.com/intel/opa-psm2"
- url = "https://github.com/intel/opa-psm2/archive/PSM2_10.3-8.tar.gz"
+ homepage = "http://github.com/cornelisnetworks/opa-psm2"
+ url = "https://github.com/cornelisnetworks/opa-psm2/archive/PSM2_10.3-8.tar.gz"
+ version('11.2.185', sha256='8c0446e989feb4a3822791e4a3687060916f7c4612d1e8e493879be66f10db09')
version('11.2.77', sha256='5cc33d1e19d871a5861efe0bb897526f404b4bf2b88ac58bb277db96ac5ecb54')
version('11.2.68', sha256='42e16a14fc8c90b50855dcea46af3315bee32fb1ae89d83060f9b2ebdce1ec26')
version('10.3-37', sha256='43e46f6fb345db67bb45b48e2b2bb05f590f7ccbc3ee337b33312043b46946b9')
@@ -26,13 +27,8 @@ class OpaPsm2(MakefilePackage):
depends_on('numactl')
- # patch to prevent opa-psm2 from adding an additional "usr/"
- # subdirectory within the installation prefix, which breaks paths for
- # dependent packages like libfabric
- patch('opa-psm2-install-prefix.patch', when='@11.2.68:')
-
# patch to get the Makefile to use the spack compiler wrappers
- patch('opa-psm2-compiler.patch', when='@11.2.68:',
+ patch('opa-psm2-compiler.patch', when='@11.2.68:11.2.77',
sha256='fe31fda9aaee13acb87d178af2282446196d2cc0b21163034573706110b2e2d6')
def setup_build_environment(self, env):
@@ -46,7 +42,8 @@ class OpaPsm2(MakefilePackage):
# Change the makefile so libraries and includes are not
# placed under $PREFIX/usr
env['LIBDIR'] = '/lib'
- filter_file(r'${DESTDIR}/usr', '${DESTDIR}', 'Makefile')
+ filter_file(r'${DESTDIR}/usr', '${DESTDIR}', 'Makefile', string=True)
+ filter_file(r'/usr/lib', '/lib', 'Makefile', string=True)
if '~avx2' in spec:
env['PSM_DISABLE_AVX2'] = 'True'
diff --git a/var/spack/repos/builtin/packages/opam/package.py b/var/spack/repos/builtin/packages/opam/package.py
index d25999f89e..f88e2a570d 100644
--- a/var/spack/repos/builtin/packages/opam/package.py
+++ b/var/spack/repos/builtin/packages/opam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/opari2/package.py b/var/spack/repos/builtin/packages/opari2/package.py
index 9899e51544..56b5af5c21 100644
--- a/var/spack/repos/builtin/packages/opari2/package.py
+++ b/var/spack/repos/builtin/packages/opari2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class Opari2(AutotoolsPackage):
homepage = "http://www.vi-hps.org/projects/score-p"
url = "https://www.vi-hps.org/cms/upload/packages/opari2/opari2-2.0.4.tar.gz"
+ version('2.0.6', sha256='55972289ce66080bb48622110c3189a36e88a12917635f049b37685b9d3bbcb0', url='https://perftools.pages.jsc.fz-juelich.de/cicd/opari2/tags/opari2-2.0.6/opari2-2.0.6.tar.gz')
version('2.0.5', sha256='9034dd7596ac2176401090fd5ced45d0ab9a9404444ff767f093ccce68114ef5')
version('2.0.4', sha256='f69e324792f66780b473daf2b3c81f58ee8188adc72b6fe0dacf43d4c1a0a131')
version('2.0.3', sha256='7e2efcfbc99152ee6e31454ef4fb747f77165691539d5d2c1df2abc4612de86c')
diff --git a/var/spack/repos/builtin/packages/open-iscsi/package.py b/var/spack/repos/builtin/packages/open-iscsi/package.py
index 0261105867..89c902072e 100644
--- a/var/spack/repos/builtin/packages/open-iscsi/package.py
+++ b/var/spack/repos/builtin/packages/open-iscsi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class OpenIscsi(MakefilePackage):
version('2.0.876', sha256='9f01327d5e100ed794dc5083fc18dc4a06a0c29c77b252e21abd1b8f56edd9a7')
depends_on('gettext')
+ depends_on('uuid')
depends_on('util-linux+libmount')
depends_on('kmod')
depends_on('open-isns')
diff --git a/var/spack/repos/builtin/packages/open-isns/package.py b/var/spack/repos/builtin/packages/open-isns/package.py
index 220db25ce0..fbb2972c4b 100644
--- a/var/spack/repos/builtin/packages/open-isns/package.py
+++ b/var/spack/repos/builtin/packages/open-isns/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openal-soft/package.py b/var/spack/repos/builtin/packages/openal-soft/package.py
new file mode 100644
index 0000000000..c1895be63a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openal-soft/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class OpenalSoft(CMakePackage):
+ """OpenAL provides capabilities for playing audio in a
+ virtual 3D environment. Distance attenuation, doppler
+ shift, and directional sound emitters are among the
+ features handled by the API."""
+
+ homepage = "https://openal-soft.org"
+ url = "https://openal-soft.org/openal-releases/openal-soft-1.21.1.tar.bz2"
+
+ version('1.21.1', sha256='c8ad767e9a3230df66756a21cc8ebf218a9d47288f2514014832204e666af5d8')
+
+ variant('alsa', default=False, description="ALSA support")
+
+ depends_on('alsa-lib', when="+alsa")
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('ALSOFT_REQUIRE_ALSA', 'alsa')
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/openbabel/package.py b/var/spack/repos/builtin/packages/openbabel/package.py
index 4d3b66d680..79cc0e5b0b 100644
--- a/var/spack/repos/builtin/packages/openbabel/package.py
+++ b/var/spack/repos/builtin/packages/openbabel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openblas/0001-use-usr-bin-env-perl.patch b/var/spack/repos/builtin/packages/openblas/0001-use-usr-bin-env-perl.patch
new file mode 100644
index 0000000000..28de1277c9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openblas/0001-use-usr-bin-env-perl.patch
@@ -0,0 +1,55 @@
+From ec6b354c32e939605331e2081590815a86413ca8 Mon Sep 17 00:00:00 2001
+From: Harmen Stoppels <harmenstoppels@gmail.com>
+Date: Wed, 24 Feb 2021 14:07:20 +0100
+Subject: [PATCH] use /usr/bin/env perl
+
+---
+ c_check | 2 +-
+ exports/gensymbol | 2 +-
+ f_check | 2 +-
+ interface/create | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/c_check b/c_check
+index 9c8b1aba..e24943a2 100644
+--- a/c_check
++++ b/c_check
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl
++#!/usr/bin/env perl
+
+ #use File::Basename;
+ # use File::Temp qw(tempfile);
+diff --git a/exports/gensymbol b/exports/gensymbol
+index 857a17a9..e7210a03 100644
+--- a/exports/gensymbol
++++ b/exports/gensymbol
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl
++#!/usr/bin/env perl
+
+ # Changelog
+ # 2017/09/03 staticfloat
+diff --git a/f_check b/f_check
+index ffe9c6b4..d044f254 100644
+--- a/f_check
++++ b/f_check
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl
++#!/usr/bin/env perl
+
+ $hostos = `uname -s | sed -e s/\-.*//`; chop($hostos);
+
+diff --git a/interface/create b/interface/create
+index b7be8ab6..0b9cefa2 100755
+--- a/interface/create
++++ b/interface/create
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl
++#!/usr/bin/env perl
+
+ $count = 0;
+
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/openblas/package.py b/var/spack/repos/builtin/packages/openblas/package.py
index 4121d558b7..2e28011a8e 100644
--- a/var/spack/repos/builtin/packages/openblas/package.py
+++ b/var/spack/repos/builtin/packages/openblas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,9 @@ class Openblas(MakefilePackage):
git = 'https://github.com/xianyi/OpenBLAS.git'
version('develop', branch='develop')
+ version('0.3.15', sha256='30a99dec977594b387a17f49904523e6bc8dd88bd247266e83485803759e4bbe')
+ version('0.3.14', sha256='d381935d26f9cae8e4bbd7d7f278435adf8e3a90920edf284bb9ad789ee9ad60')
+ version('0.3.13', sha256='79197543b17cc314b7e43f7a33148c308b0807cd6381ee77f77e15acf3e6459e')
version('0.3.12', sha256='65a7d3a4010a4e3bd5c0baa41a234797cd3a1735449a4a5902129152601dc57b')
version('0.3.11', sha256='bc4617971179e037ae4e8ebcd837e46db88422f7b365325bd7aba31d1921a673')
version('0.3.10', sha256='0484d275f87e9b8641ff2eecaa9df2830cbe276ac79ad80494822721de6e1693')
@@ -42,7 +45,9 @@ class Openblas(MakefilePackage):
variant('pic', default=True, description='Build position independent code')
variant('shared', default=True, description='Build shared libraries')
variant('consistent_fpcsr', default=False, description='Synchronize FP CSR between threads (x86/x86_64 only)')
+ variant('bignuma', default=False, description='Enable experimental support for up to 1024 CPUs/Cores and 128 numa nodes')
+ variant('locking', default=True, description='Build with thread safety')
variant(
'threads', default='none',
description='Multithreading support',
@@ -61,8 +66,8 @@ class Openblas(MakefilePackage):
# UPD: the patch has been merged starting version 0.2.20
patch('openblas_icc.patch', when='@:0.2.19%intel')
patch('openblas_icc_openmp.patch', when='@:0.2.20%intel@16.0:')
- patch('openblas_icc_fortran.patch', when='%intel@16.0:')
- patch('openblas_icc_fortran2.patch', when='%intel@18.0:')
+ patch('openblas_icc_fortran.patch', when='@:0.3.14%intel@16.0:')
+ patch('openblas_icc_fortran2.patch', when='@:0.3.14%intel@18.0:')
# See https://github.com/spack/spack/issues/15385
patch('lapack-0.3.9-xerbl.patch', when='@0.3.8:0.3.9 %intel')
@@ -108,18 +113,32 @@ class Openblas(MakefilePackage):
when='@0.3.8:0.3.10 %apple-clang@12.0.0:')
# Add conditions to f_check to determine the Fujitsu compiler
+ # See https://github.com/xianyi/OpenBLAS/pull/3010
+ # UPD: the patch has been merged starting version 0.3.13
patch('openblas_fujitsu.patch', when='@:0.3.10 %fj')
- patch('openblas_fujitsu_v0.3.11.patch', when='@0.3.11: %fj')
- patch('openblas_fujitsu2.patch', when='@0.3.10: %fj')
+ patch('openblas_fujitsu_v0.3.11.patch', when='@0.3.11:0.3.12 %fj')
+ patch('openblas_fujitsu2.patch', when='@0.3.10:0.3.12 %fj')
+
+ # Use /usr/bin/env perl in build scripts
+ patch('0001-use-usr-bin-env-perl.patch', when='@:0.3.13')
+
+ # See https://github.com/spack/spack/issues/19932#issuecomment-733452619
+ conflicts('%gcc@7.0.0:7.3.99,8.0.0:8.2.99', when='@0.3.11:')
+
+ # See https://github.com/xianyi/OpenBLAS/issues/3074
+ conflicts('%gcc@:10.1.99', when='@0.3.13 target=ppc64le:')
# See https://github.com/spack/spack/issues/3036
conflicts('%intel@16', when='@0.2.15:0.2.19')
conflicts('+consistent_fpcsr', when='threads=none',
msg='FPCSR consistency only applies to multithreading')
+ conflicts('threads=pthreads', when='~locking', msg='Pthread support requires +locking')
conflicts('threads=openmp', when='%apple-clang', msg="Apple's clang does not support OpenMP")
conflicts('threads=openmp @:0.2.19', when='%clang', msg='OpenBLAS @:0.2.19 does not support OpenMP with clang!')
+ depends_on('perl', type='build')
+
@property
def parallel(self):
# unclear whether setting `-j N` externally was supported before 0.3
@@ -201,8 +220,15 @@ class Openblas(MakefilePackage):
if microarch.vendor == 'generic':
# User requested a generic platform, or we couldn't find a good
# match for the requested one. Allow OpenBLAS to determine
- # an optimized kernel at run time.
+ # an optimized kernel at run time, including older CPUs, while
+ # forcing it not to add flags for the current host compiler.
args.append('DYNAMIC_ARCH=1')
+ if self.spec.version >= Version('0.3.12'):
+ # These are necessary to prevent OpenBLAS from targeting the
+ # host architecture on newer version of OpenBLAS, but they
+ # cause build errors on 0.3.5 .
+ args.extend(['DYNAMIC_OLDER=1', 'TARGET=GENERIC'])
+
elif microarch.name in skylake:
# Special case for renaming skylake family
args.append('TARGET=SKYLAKEX')
@@ -246,6 +272,13 @@ class Openblas(MakefilePackage):
if self.spec.satisfies('@0.2.16'):
make_defs += ['BUILD_LAPACK_DEPRECATED=1']
+ # serial, but still thread-safe version
+ if self.spec.satisfies('@0.3.7:'):
+ if '+locking' in self.spec:
+ make_defs += ['USE_LOCKING=1']
+ else:
+ make_defs += ['USE_LOCKING=0']
+
# Add support for multithreading
if self.spec.satisfies('threads=openmp'):
make_defs += ['USE_OPENMP=1', 'USE_THREAD=1']
@@ -271,6 +304,18 @@ class Openblas(MakefilePackage):
if self.spec.satisfies('%gcc@:4.8.4'):
make_defs.append('NO_AVX2=1')
+ # Fujitsu Compiler dose not add Fortran runtime in rpath.
+ if self.spec.satisfies('%fj'):
+ make_defs.append('LDFLAGS=-lfj90i -lfj90f -lfjsrcinfo -lelf')
+
+ # Newer versions of openblas will try to find ranlib in the compiler's
+ # prefix, for instance, .../lib/spack/env/gcc/ranlib, which will fail.
+ if self.spec.satisfies('@0.3.13:'):
+ make_defs.append('RANLIB=ranlib')
+
+ if self.spec.satisfies('+bignuma'):
+ make_defs.append('BIGNUMA=1')
+
return make_defs
@property
diff --git a/var/spack/repos/builtin/packages/opencascade/package.py b/var/spack/repos/builtin/packages/opencascade/package.py
index 0cae5d3055..41155c3634 100644
--- a/var/spack/repos/builtin/packages/opencascade/package.py
+++ b/var/spack/repos/builtin/packages/opencascade/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,8 +14,12 @@ class Opencascade(CMakePackage):
visualization, data exchange and rapid application development."""
homepage = "https://www.opencascade.com"
- url = "http://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/V7_4_0;sf=tgz"
+ url = "https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/V7_4_0;sf=tgz"
+ version('7.5.2', extension='tar.gz',
+ sha256='1a32d2b0d6d3c236163cb45139221fb198f0f3cdad56606c5b1c9a2a8869b3ac')
+ version('7.4.0p2', extension='tar.gz',
+ sha256='93565f9bdc9575e0d6fcb34c11c8f06d8f9394250bb427870da65424e8537f60')
version('7.4.0p1', extension='tar.gz',
sha256='e00fedc221560fda31653c23a8f3d0eda78095c87519f338d4f4088e2ee9a9c0')
version('7.4.0', extension='tar.gz',
@@ -31,7 +35,7 @@ class Opencascade(CMakePackage):
description='Build with rapidjson')
depends_on('intel-tbb', when='+tbb')
- depends_on('vtk', when='+vtk')
+ depends_on('vtk', when='+vtk')
depends_on('freeimage', when='+freeimage')
depends_on('rapidjson', when='+rapidjson')
depends_on('freetype')
diff --git a/var/spack/repos/builtin/packages/opencl-c-headers/package.py b/var/spack/repos/builtin/packages/opencl-c-headers/package.py
index c93d5eb53d..e5b9aa826e 100644
--- a/var/spack/repos/builtin/packages/opencl-c-headers/package.py
+++ b/var/spack/repos/builtin/packages/opencl-c-headers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class OpenclCHeaders(Package):
homepage = "https://www.khronos.org/registry/OpenCL/"
url = "https://github.com/KhronosGroup/OpenCL-Headers/archive/v2020.06.16.tar.gz"
+ version('2020.12.18', sha256='5dad6d436c0d7646ef62a39ef6cd1f3eba0a98fc9157808dfc1d808f3705ebc2')
version('2020.06.16', sha256='2f5a60e5ac4b127650618c58a7e3b35a84dbf23c1a0ac72eb5e7baf221600e06')
version('2020.03.13', sha256='664bbe587e5a0a00aac267f645b7c413586e7bc56dca9ff3b00037050d06f476')
diff --git a/var/spack/repos/builtin/packages/opencl-clhpp/package.py b/var/spack/repos/builtin/packages/opencl-clhpp/package.py
index 3e335c2180..564e4e2c12 100644
--- a/var/spack/repos/builtin/packages/opencl-clhpp/package.py
+++ b/var/spack/repos/builtin/packages/opencl-clhpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class OpenclClhpp(CMakePackage):
homepage = "https://www.khronos.org/registry/OpenCL/"
url = "https://github.com/KhronosGroup/OpenCL-CLHPP/archive/v2.0.12.tar.gz"
+ version('2.0.13', sha256='8ff0d0cd94d728edd30c876db546bf13e370ee7863629b4b9b5e2ef8e130d23c')
version('2.0.12', sha256='20b28709ce74d3602f1a946d78a2024c1f6b0ef51358b9686612669897a58719')
version('2.0.11', sha256='ffc2ca08cf4ae90ee55f14ea3735ccc388f454f4422b69498b2e9b93a1d45181')
version('2.0.10', sha256='fa27456295c3fa534ce824eb0314190a8b3ebd3ba4d93a0b1270fc65bf378f2b')
diff --git a/var/spack/repos/builtin/packages/opencl-headers/package.py b/var/spack/repos/builtin/packages/opencl-headers/package.py
index dc6427d515..4e72e6d25e 100644
--- a/var/spack/repos/builtin/packages/opencl-headers/package.py
+++ b/var/spack/repos/builtin/packages/opencl-headers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,13 @@ class OpenclHeaders(BundlePackage):
homepage = "https://www.khronos.org/registry/OpenCL/"
+ version('3.0')
version('2.2')
version('2.1')
version('2.0')
- depends_on('opencl-c-headers@2020.03.13:')
- depends_on('opencl-clhpp@2.0.11:', when='@2.1:')
+ depends_on('opencl-c-headers@2020.12.18:', when='@3.0:')
+ depends_on('opencl-c-headers@2020.03.13:', when='@2.0:2.2')
+ depends_on('opencl-clhpp@2.0.13:', when='@3.0:')
+ depends_on('opencl-clhpp@2.0.11:', when='@2.1:2.2')
depends_on('opencl-clhpp@2.0.9:', when='@2.0')
diff --git a/var/spack/repos/builtin/packages/opencoarrays/package.py b/var/spack/repos/builtin/packages/opencoarrays/package.py
index d2d55add98..e00331c499 100644
--- a/var/spack/repos/builtin/packages/opencoarrays/package.py
+++ b/var/spack/repos/builtin/packages/opencoarrays/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/opencv/package.py b/var/spack/repos/builtin/packages/opencv/package.py
index 7282ffe5bd..298a5130c9 100644
--- a/var/spack/repos/builtin/packages/opencv/package.py
+++ b/var/spack/repos/builtin/packages/opencv/package.py
@@ -1,38 +1,30 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
class Opencv(CMakePackage, CudaPackage):
- """OpenCV is released under a BSD license and hence it's free for both
- academic and commercial use. It has C++, C, Python and Java interfaces and
- supports Windows, Linux, Mac OS, iOS and Android. OpenCV was designed for
- computational efficiency and with a strong focus on real-time applications.
- Written in optimized C/C++, the library can take advantage of multi-core
- processing. Enabled with OpenCL, it can take advantage of the hardware
- acceleration of the underlying heterogeneous compute platform. Adopted all
- around the world, OpenCV has more than 47 thousand people of user community
- and estimated number of downloads exceeding 9 million. Usage ranges from
- interactive art, to mines inspection, stitching maps on the web or through
- advanced robotics.
- """
-
- homepage = 'http://opencv.org/'
- url = 'https://github.com/Itseez/opencv/archive/3.1.0.tar.gz'
+ """OpenCV (Open Source Computer Vision Library) is an open source computer
+ vision and machine learning software library."""
+
+ homepage = 'https://opencv.org/'
+ url = 'https://github.com/opencv/opencv/archive/4.5.0.tar.gz'
git = 'https://github.com/opencv/opencv.git'
+ maintainers = ['bvanessen', 'adamjstewart']
+
version('master', branch='master')
- version('4.2.0', sha256='9ccb2192d7e8c03c58fee07051364d94ed7599363f3b0dce1c5e6cc11c1bb0ec')
- version('4.1.2', sha256='385dd0a9c25e67ef0dd60e022d2a2d7b17e2f36819cf3cb46aa8cdff5c5282c9')
- version('4.1.1', sha256='5de5d96bdfb9dad6e6061d70f47a0a91cee96bb35afb9afb9ecb3d43e243d217')
- version('4.1.0-openvino', sha256='58764d2487c6fb4cd950fb46483696ae7ae28e257223d6e44e162caa22ee9e5c')
- version('4.1.0', sha256='8f6e4ab393d81d72caae6e78bd0fd6956117ec9f006fba55fcdb88caf62989b7')
- version('4.0.1-openvino', sha256='8cbe32d12a70decad7a8327eb4fba46016a9c47ff3ba6e114d27b450f020716f')
- version('4.0.1', sha256='7b86a0ee804244e0c407321f895b15e4a7162e9c5c0d2efc85f1cadec4011af4')
- version('4.0.0-openvino', sha256='aa910078ed0b7e17bd10067e04995c131584a6ed6d0dcc9ca44a292aa8e296fc')
- version('4.0.0', sha256='3787b3cc7b21bba1441819cb00c636911a846c0392ddf6211d398040a1e4886c')
- version('3.4.6', sha256='e7d311ff97f376b8ee85112e2b536dbf4bdf1233673500175ed7cf21a0089f6d')
- version('3.4.5', sha256='0c57d9dd6d30cbffe68a09b03f4bebe773ee44dc8ff5cd6eaeb7f4d5ef3b428e')
- version('3.4.4', sha256='a35b00a71d77b484f73ec485c65fe56c7a6fa48acd5ce55c197aef2e13c78746')
+ version('4.5.1', sha256='e27fe5b168918ab60d58d7ace2bd82dd14a4d0bd1d3ae182952c2113f5637513')
+ version('4.5.0', sha256='dde4bf8d6639a5d3fe34d5515eab4a15669ded609a1d622350c7ff20dace1907')
+ version('4.2.0', sha256='9ccb2192d7e8c03c58fee07051364d94ed7599363f3b0dce1c5e6cc11c1bb0ec')
+ version('4.1.2', sha256='385dd0a9c25e67ef0dd60e022d2a2d7b17e2f36819cf3cb46aa8cdff5c5282c9')
+ version('4.1.1', sha256='5de5d96bdfb9dad6e6061d70f47a0a91cee96bb35afb9afb9ecb3d43e243d217')
+ version('4.1.0', sha256='8f6e4ab393d81d72caae6e78bd0fd6956117ec9f006fba55fcdb88caf62989b7')
+ version('4.0.1', sha256='7b86a0ee804244e0c407321f895b15e4a7162e9c5c0d2efc85f1cadec4011af4')
+ version('4.0.0', sha256='3787b3cc7b21bba1441819cb00c636911a846c0392ddf6211d398040a1e4886c')
+ version('3.4.12', sha256='c8919dfb5ead6be67534bf794cb0925534311f1cd5c6680f8164ad1813c88d13')
+ version('3.4.6', sha256='e7d311ff97f376b8ee85112e2b536dbf4bdf1233673500175ed7cf21a0089f6d')
+ version('3.4.5', sha256='0c57d9dd6d30cbffe68a09b03f4bebe773ee44dc8ff5cd6eaeb7f4d5ef3b428e')
+ version('3.4.4', sha256='a35b00a71d77b484f73ec485c65fe56c7a6fa48acd5ce55c197aef2e13c78746')
version('3.4.3', sha256='4eef85759d5450b183459ff216b4c0fa43e87a4f6aa92c8af649f89336f002ec')
version('3.4.1', sha256='f1b87684d75496a1054405ae3ee0b6573acaf3dad39eaf4f1d66fdd7e03dc852')
version('3.4.0', sha256='678cc3d2d1b3464b512b084a8cca1fad7de207c7abdf2caa1fed636c13e916da')
@@ -40,73 +32,64 @@ class Opencv(CMakePackage, CudaPackage):
version('3.3.0', sha256='8bb312b9d9fd17336dc1f8b3ac82f021ca50e2034afc866098866176d985adc6')
version('3.2.0', sha256='9541efbf68f298f45914b4e837490647f4d5e472b4c0c04414a787d116a702b2')
version('3.1.0', sha256='f3b160b9213dd17aa15ddd45f6fb06017fe205359dbd1f7219aad59c98899f15')
- version('2.4.13.2', sha256='4b00c110e6c54943cbbb7cf0d35c5bc148133ab2095ee4aaa0ac0a4f67c58080')
- version('2.4.13.1', sha256='0d5ce5e0973e3a745f927d1ee097aaf909aae59f787be6d27a03d639e2d96bd7')
- version('2.4.13', sha256='94ebcca61c30034d5fb16feab8ec12c8a868f5162d20a9f0396f0f5f6d8bbbff')
- version('2.4.12.3', sha256='a4cbcd2d470860b0cf1f8faf504619c18a8ac38fd414c5a88ed3e94c963aa750')
- version('2.4.12.2', sha256='150a165eb14a5ea74fb94dcc16ac7d668a6ff20a4449df2570734a2abaab9c0e')
- version('2.4.12.1', sha256='c1564771f79304a2597ae4f74f44032021e3a46657e4a117060c08f5ed05ad83')
-
- # Standard variants
+ version('2.4.13.2', sha256='4b00c110e6c54943cbbb7cf0d35c5bc148133ab2095ee4aaa0ac0a4f67c58080', deprecated=True)
+ version('2.4.13.1', sha256='0d5ce5e0973e3a745f927d1ee097aaf909aae59f787be6d27a03d639e2d96bd7', deprecated=True)
+ version('2.4.13', sha256='94ebcca61c30034d5fb16feab8ec12c8a868f5162d20a9f0396f0f5f6d8bbbff', deprecated=True)
+ version('2.4.12.3', sha256='a4cbcd2d470860b0cf1f8faf504619c18a8ac38fd414c5a88ed3e94c963aa750', deprecated=True)
+ version('2.4.12.2', sha256='150a165eb14a5ea74fb94dcc16ac7d668a6ff20a4449df2570734a2abaab9c0e', deprecated=True)
+ version('2.4.12.1', sha256='c1564771f79304a2597ae4f74f44032021e3a46657e4a117060c08f5ed05ad83', deprecated=True)
+
+ # OpenCV modules
+ modules = [
+ 'apps', 'calib3d', 'core', 'dnn', 'features2d', 'flann', 'gapi', 'highgui',
+ 'imgcodecs', 'imgproc', 'java', 'java_bindings_generator', 'js',
+ 'js_bindings_generator', 'ml', 'objc_bindings_generator', 'objdetect', 'photo',
+ 'python2', 'python3', 'python_bindings_generator', 'python_tests', 'stitching',
+ 'ts', 'video', 'videoio', 'world'
+ ]
+
+ for mod in modules:
+ # At least one of these modules must be enabled to build OpenCV
+ variant(mod, default=mod == 'core',
+ description='Include opencv_{0} module into the OpenCV build'.format(
+ mod))
+
+ # Optional 3rd party components
+ components = [
+ '1394', 'ade', 'aravis', 'arith_dec', 'arith_enc', 'avfoundation', 'clp',
+ 'cuda', 'eigen', 'ffmpeg', 'freetype', 'gdal', 'gdcm', 'gphoto2', 'gstreamer',
+ 'halide', 'hpx', 'imgcodec_hdr', 'imgcode_pfm', 'imgcodec_pxm',
+ 'imgcodec_sunraster', 'inf_engine', 'ipp', 'itt', 'jasper', 'jpeg', 'lapack',
+ 'librealsense', 'mfx', 'ngraph', 'onnx', 'opencl', 'openclamdblas',
+ 'openclamdfft', 'opencl_svm', 'openexr', 'opengl', 'openjpeg', 'openmp',
+ 'openni', 'openni2', 'openvx', 'plaidml', 'png', 'protobuf', 'pthreads_pf',
+ 'pvapi', 'qt', 'quirc', 'tbb', 'tiff', 'va', 'va_intel', 'vtk', 'vulcan',
+ 'webp', 'ximea'
+ ]
+
+ for component in components:
+ variant(component, default=False,
+ description='Include {0} support'.format(component))
+
+ # Other variants
variant('shared', default=True,
description='Enables the build of shared libraries')
- variant('lapack', default=True, description='Include Lapack library support')
variant('powerpc', default=False, description='Enable PowerPC for GCC')
- variant('vsx', default=False, description='Enable POWER8 and above VSX (64-bit little-endian)')
variant('fast-math', default=False,
description='Enable -ffast-math (not recommended for GCC 4.6.x)')
-
- # OpenCV modules
- variant('calib3d', default=True, description='calib3d module')
- variant('core', default=True, description='Include opencv_core module into the OpenCV build')
- variant('cudacodec', default=False, description='Enable video encoding/decoding with CUDA')
- variant('dnn', default=True, description='Build DNN support')
- variant('features2d', default=True, description='features2d module')
- variant('flann', default=True, description='flann module')
- variant('highgui', default=True, description='Include opencv_highgui module into the OpenCV build')
- variant('imgproc', default=True, description='Include opencv_imgproc module into the OpenCV build')
- variant('java', default=True,
- description='Activates support for Java')
- variant('ml', default=True, description='Build ML support')
- variant('python', default=True,
- description='Enables the build of Python extensions')
- variant('stitching', default=True, description='stitching module')
- variant('superres', default=True, description='superres module')
- variant('ts', default=True, description='Include opencv_ts module into the OpenCV build')
- variant('video', default=True, description='video module')
- variant('videostab', default=True, description='videostab module')
- variant('videoio', default=True, description='videoio module')
-
- # Optional 3rd party components
- variant('eigen', default=True, description='Activates support for eigen')
- variant('ipp', default=True, description='Activates support for IPP')
- variant('ipp_iw', default=True, description='Build IPP IW from source')
- variant('jasper', default=True, description='Activates support for JasPer')
- variant('jpeg', default=True, description='Include JPEG support')
- variant('opencl', default=True, description='Include OpenCL Runtime support')
- variant('opencl_svm', default=True, description='Include OpenCL Shared Virtual Memory support')
- variant('openclamdfft', default=True, description='Include OpenCL AMD OpenCL FFT library support')
- variant('openclamdblas', default=True, description='Include OpenCL AMD OpenCL BLAS library support')
- variant('openmp', default=True, description='Activates support for OpenMP threads')
- variant('pthreads_pf', default=True, description='Use pthreads-based parallel_for')
- variant('png', default=True, description='Include PNG support')
- variant('qt', default=False, description='Activates support for QT')
- variant('gtk', default=True, description='Activates support for GTK')
- variant('tiff', default=True, description='Include TIFF support')
- variant('vtk', default=True, description='Activates support for VTK')
- variant('zlib', default=True, description='Build zlib from source')
+ variant('nonfree', default=False, description='Enable non-free algorithms')
variant('contrib', default=False, description='Adds in code from opencv_contrib.')
- contrib_vers = ['4.1.0', '4.1.1', '4.2.0']
+ contrib_vers = [
+ '3.4.12', '4.0.0', '4.0.1', '4.1.0', '4.1.1', '4.1.2', '4.2.0', '4.5.0', '4.5.1'
+ ]
for cv in contrib_vers:
resource(name="contrib",
git='https://github.com/opencv/opencv_contrib.git',
tag="{0}".format(cv),
when='@{0}+contrib'.format(cv))
- resource(name="contrib",
- git='https://github.com/opencv/opencv_contrib.git',
- tag="{0}".format(cv),
- when='@{0}+cuda'.format(cv))
+
+ depends_on('cmake@3.5.1:', type='build')
depends_on('hdf5', when='+contrib')
depends_on('hdf5', when='+cuda')
@@ -121,244 +104,196 @@ class Opencv(CMakePackage, CudaPackage):
patch('opencv3.2_vtk.patch', when='@3.2+vtk')
patch('opencv3.2_regacyvtk.patch', when='@3.2+vtk')
patch('opencv3.2_ffmpeg.patch', when='@3.2+videoio')
- patch('opencv3.2_python3.7.patch', when='@3.2+python')
+ patch('opencv3.2_python3.7.patch', when='@3.2+python3')
patch('opencv3.2_fj.patch', when='@3.2 %fj')
+ depends_on('zlib@1.2.3:')
depends_on('eigen', when='+eigen')
- depends_on('zlib', when='+zlib')
+ depends_on('ffmpeg', when='+ffmpeg')
+ depends_on('freetype', when='+freetype')
+ depends_on('gdal', when='+gdal')
depends_on('libpng', when='+png')
depends_on('jpeg', when='+jpeg')
+ depends_on('openjpeg@2:', when='+openjpeg')
depends_on('libtiff', when='+tiff')
depends_on('jasper', when='+jasper')
- depends_on('cuda', when='+cuda')
- depends_on('gtkplus', when='+gtk')
+ depends_on('cuda@6.5:', when='+cuda')
depends_on('vtk', when='+vtk')
depends_on('qt', when='+qt')
- depends_on('java', when='+java')
- depends_on('ant', when='+java', type='build')
- depends_on('py-numpy', when='+python', type=('build', 'run'))
- depends_on('protobuf@3.5.0:', when='@3.4.1: +dnn')
- depends_on('protobuf@3.1.0', when='@3.3.0:3.4.0 +dnn')
+ depends_on('java', when='+java_bindings_generator')
+ depends_on('ant', when='+java_bindings_generator', type='build')
+ depends_on('python@2.7:2.8,3.2:', type='build')
+ depends_on('python@2.7:2.8', when='+python2', type=('build', 'link', 'run'))
+ depends_on('python@3.2:', when='+python3', type=('build', 'link', 'run'))
+ depends_on('py-setuptools', when='+python2', type='build')
+ depends_on('py-setuptools', when='+python3', type='build')
+ depends_on('py-numpy', when='+python2', type=('build', 'run'))
+ depends_on('py-numpy', when='+python3', type=('build', 'run'))
+ depends_on('protobuf@3.5.0:', when='@3.4.1: +protobuf')
+ depends_on('protobuf@3.1.0', when='@3.3.0:3.4.0 +protobuf')
depends_on('ffmpeg', when='+videoio')
depends_on('mpi', when='+videoio')
- # TODO For Cuda >= 10, make sure 'dynlink_nvcuvid.h' or 'nvcuvid.h'
- # exists, otherwise build will fail
- # See https://github.com/opencv/opencv_contrib/issues/1786
- conflicts('^cuda@10:', when='+cudacodec')
- conflicts('^cuda', when='~contrib', msg='cuda support requires +contrib')
+ conflicts('+cuda', when='~contrib', msg='cuda support requires +contrib')
# IPP is provided x86_64 only
conflicts('+ipp', when="arch=aarch64:")
- extends('python', when='+python')
+ # OpenCV module conflicts
+ # These conflicts can be scraped from CMakeCache.txt, look for:
+ # OPENCV_MODULE_opencv_*_REQ_DEPS
+ # If these required dependencies aren't found, CMake will silently
+ # disable the requested module
+ conflicts('+calib3d', when='~imgproc')
+ conflicts('+calib3d', when='~features2d')
+ conflicts('+calib3d', when='~flann')
+ conflicts('+dnn', when='~core')
+ conflicts('+dnn', when='~imgproc')
+ conflicts('+features2d', when='~imgproc')
+ conflicts('+flann', when='~core')
+ conflicts('+gapi', when='~imgproc')
+ conflicts('+highgui', when='~imgproc')
+ conflicts('+highgui', when='~imgcodecs')
+ conflicts('+imgcodecs', when='~imgproc')
+ conflicts('+imgproc', when='~core')
+ conflicts('+ml', when='~core')
+ conflicts('+objc_bindings_generator', when='~core')
+ conflicts('+objc_bindings_generator', when='~imgproc')
+ conflicts('+objdetect', when='~core')
+ conflicts('+objdetect', when='~imgproc')
+ conflicts('+objdetect', when='~calib3d')
+ conflicts('+photo', when='~imgproc')
+ conflicts('+python2', when='~python_bindings_generator')
+ conflicts('+python3', when='~python_bindings_generator')
+ conflicts('+stitching', when='~imgproc')
+ conflicts('+stitching', when='~features2d')
+ conflicts('+stitching', when='~calib3d')
+ conflicts('+stitching', when='~flann')
+ conflicts('+ts', when='~core')
+ conflicts('+ts', when='~imgproc')
+ conflicts('+ts', when='~imgcodecs')
+ conflicts('+ts', when='~videoio')
+ conflicts('+ts', when='~highgui')
+ conflicts('+video', when='~imgproc')
+ conflicts('+videoio', when='~imgproc')
+ conflicts('+videoio', when='~imgcodecs')
+ conflicts('+world', when='~core')
+
+ conflicts('+python2', when='+python3')
+ conflicts('+python3', when='+python2')
+
+ extends('python', when='+python2')
+ extends('python', when='+python3')
def cmake_args(self):
spec = self.spec
+ args = []
- # Standard variants
- args = [
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format((
- 'ON' if '+shared' in spec else 'OFF')),
- '-DENABLE_PRECOMPILED_HEADERS:BOOL=OFF',
- '-DWITH_LAPACK={0}'.format((
- 'ON' if '+lapack' in spec else 'OFF')),
- '-DENABLE_POWERPC={0}'.format((
- 'ON' if '+powerpc' in spec else 'OFF')),
- '-DENABLE_VSX={0}'.format((
- 'ON' if '+vsx' in spec else 'OFF')),
- '-DENABLE_FAST_MATH={0}'.format((
- 'ON' if '+fast-math' in spec else 'OFF')),
- ]
-
- # modules
- args.extend([
- '-DBUILD_opencv_calib3d={0}'.format((
- 'ON' if '+calib3d' in spec else 'OFF')),
- '-DBUILD_opencv_core:BOOL={0}'.format((
- 'ON' if '+core' in spec else 'OFF')),
- '-DBUILD_opencv_cudacodec={0}'.format((
- 'ON' if '+cudacodec' in spec else 'OFF')),
- '-DBUILD_opencv_dnn:BOOL={0}'.format((
- 'ON' if '+dnn' in spec else 'OFF')),
- '-DBUILD_opencv_features2d={0}'.format((
- 'ON' if '+features2d' in spec else 'OFF')),
- '-DBUILD_opencv_flann={0}'.format((
- 'ON' if '+flann' in spec else 'OFF')),
- '-DBUILD_opencv_highgui:BOOL={0}'.format((
- 'ON' if '+highgui' in spec else 'OFF')),
- '-DBUILD_opencv_imgproc:BOOL={0}'.format((
- 'ON' if '+imgproc' in spec else 'OFF')),
- '-DBUILD_opencv_java:BOOL={0}'.format((
- 'ON' if '+java' in spec else 'OFF')),
- '-DBUILD_opencv_ml={0}'.format((
- 'ON' if '+ml' in spec else 'OFF')),
- '-DBUILD_opencv_stitching={0}'.format((
- 'ON' if '+stitching' in spec else 'OFF')),
- '-DBUILD_opencv_superres={0}'.format((
- 'ON' if '+superres' in spec else 'OFF')),
- '-DBUILD_opencv_ts={0}'.format((
- 'ON' if '+ts' in spec else 'OFF')),
- '-DBUILD_opencv_video={0}'.format((
- 'ON' if '+video' in spec else 'OFF')),
- '-DBUILD_opencv_videostab={0}'.format((
- 'ON' if '+videostab' in spec else 'OFF')),
- '-DBUILD_opencv_videoio={0}'.format((
- 'ON' if '+videoio' in spec else 'OFF')),
- ])
+ # OpenCV modules
+ for mod in self.modules:
+ args.append(self.define_from_variant('BUILD_opencv_' + mod, mod))
- # 3rd party components
+ # Optional 3rd party components
+ for component in self.components:
+ args.append(self.define_from_variant(
+ 'WITH_' + component.upper(), component))
+
+ # Other variants
args.extend([
- '-DBUILD_IPP_IW:BOOL={0}'.format((
- 'ON' if '+ipp_iw' in spec else 'OFF')),
- '-DWITH_CUDA:BOOL={0}'.format((
- 'ON' if '+cuda' in spec else 'OFF')),
- '-DWITH_EIGEN:BOOL={0}'.format((
- 'ON' if '+eigen' in spec else 'OFF')),
- '-DWITH_IPP:BOOL={0}'.format((
- 'ON' if '+ipp' in spec else 'OFF')),
- '-DWITH_JASPER:BOOL={0}'.format((
- 'ON' if '+jasper' in spec else 'OFF')),
- '-DWITH_JPEG:BOOL={0}'.format((
- 'ON' if '+jpeg' in spec else 'OFF')),
- '-DWITH_OPENCL:BOOL={0}'.format((
- 'ON' if '+opencl' in spec else 'OFF')),
- '-DWITH_OPENCL_SVM:BOOL={0}'.format((
- 'ON' if '+opencl_svm' in spec else 'OFF')),
- '-DWITH_OPENCLAMDFFT:BOOL={0}'.format((
- 'ON' if '+openclamdfft' in spec else 'OFF')),
- '-DWITH_OPENCLAMDBLAS:BOOL={0}'.format((
- 'ON' if '+openclamdblas' in spec else 'OFF')),
- '-DWITH_OPENMP:BOOL={0}'.format((
- 'ON' if '+openmp' in spec else 'OFF')),
- '-DWITH_PTHREADS_PF:BOOL={0}'.format((
- 'ON' if '+pthreads_pf' in spec else 'OFF')),
- '-DWITH_PNG:BOOL={0}'.format((
- 'ON' if '+png' in spec else 'OFF')),
- '-DWITH_QT:BOOL={0}'.format((
- 'ON' if '+qt' in spec else 'OFF')),
- '-DWITH_TIFF:BOOL={0}'.format((
- 'ON' if '+tiff' in spec else 'OFF')),
- '-DWITH_VTK:BOOL={0}'.format((
- 'ON' if '+vtk' in spec else 'OFF')),
- '-DWITH_PROTOBUF:BOOL={0}'.format((
- 'ON' if '@3.3.0: +dnn' in spec else 'OFF')),
- '-DBUILD_PROTOBUF:BOOL=OFF',
- '-DPROTOBUF_UPDATE_FILES={0}'.format('ON')
+ self.define('ENABLE_CONFIG_VERIFICATION', True),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define('ENABLE_PRECOMPILED_HEADERS', False),
+ self.define_from_variant('WITH_LAPACK', 'lapack'),
+ self.define_from_variant('ENABLE_POWERPC', 'powerpc'),
+ self.define_from_variant('ENABLE_FAST_MATH', 'fast-math'),
+ self.define_from_variant('OPENCV_ENABLE_NONFREE', 'nonfree'),
])
- if '+contrib' in spec or '+cuda' in spec:
- args.append('-DOPENCV_EXTRA_MODULES_PATH={0}'.format(
- join_path(self.stage.source_path, 'opencv_contrib/modules')))
+ if '+contrib' in spec:
+ args.append(self.define('OPENCV_EXTRA_MODULES_PATH', join_path(
+ self.stage.source_path, 'opencv_contrib/modules')))
if '+cuda' in spec:
if spec.variants['cuda_arch'].value[0] != 'none':
- cuda_arch = [x for x in spec.variants['cuda_arch'].value if x]
- args.append('-DCUDA_ARCH_BIN={0}'.format(
- ' '.join(cuda_arch)))
+ cuda_arch = spec.variants['cuda_arch'].value
+ args.append(self.define('CUDA_ARCH_BIN', ' '.join(cuda_arch)))
+
+ # TODO: this CMake flag is deprecated
+ if spec.target.family == 'ppc64le':
+ args.append(self.define('ENABLE_VSX', True))
# Media I/O
- if '+zlib' in spec:
- zlib = spec['zlib']
- args.extend([
- '-DZLIB_LIBRARY_{0}:FILEPATH={1}'.format((
- 'DEBUG' if 'build_type=Debug' in spec else 'RELEASE'),
- zlib.libs[0]),
- '-DZLIB_INCLUDE_DIR:PATH={0}'.format(
- zlib.headers.directories[0])
- ])
+ zlib = spec['zlib']
+ args.extend([
+ self.define('BUILD_ZLIB', False),
+ self.define('ZLIB_LIBRARY', zlib.libs[0]),
+ self.define('ZLIB_INCLUDE_DIR', zlib.headers.directories[0]),
+ ])
if '+png' in spec:
libpng = spec['libpng']
args.extend([
- '-DPNG_LIBRARY_{0}:FILEPATH={1}'.format((
- 'DEBUG' if 'build_type=Debug' in spec else 'RELEASE'),
- libpng.libs[0]),
- '-DPNG_INCLUDE_DIR:PATH={0}'.format(
- libpng.headers.directories[0])
+ self.define('BUILD_PNG', False),
+ self.define('PNG_LIBRARY', libpng.libs[0]),
+ self.define('PNG_INCLUDE_DIR', libpng.headers.directories[0])
])
if '+jpeg' in spec:
libjpeg = spec['jpeg']
args.extend([
- '-DBUILD_JPEG:BOOL=OFF',
- '-DJPEG_LIBRARY:FILEPATH={0}'.format(libjpeg.libs[0]),
- '-DJPEG_INCLUDE_DIR:PATH={0}'.format(
- libjpeg.headers.directories[0])
+ self.define('BUILD_JPEG', False),
+ self.define('JPEG_LIBRARY', libjpeg.libs[0]),
+ self.define('JPEG_INCLUDE_DIR', libjpeg.headers.directories[0])
])
if '+tiff' in spec:
libtiff = spec['libtiff']
args.extend([
- '-DTIFF_LIBRARY_{0}:FILEPATH={1}'.format((
- 'DEBUG' if 'build_type=Debug' in spec else 'RELEASE'),
- libtiff.libs[0]),
- '-DTIFF_INCLUDE_DIR:PATH={0}'.format(
- libtiff.headers.directories[0])
+ self.define('BUILD_TIFF', False),
+ self.define('TIFF_LIBRARY', libtiff.libs[0]),
+ self.define('TIFF_INCLUDE_DIR', libtiff.headers.directories[0])
])
if '+jasper' in spec:
jasper = spec['jasper']
args.extend([
- '-DJASPER_LIBRARY_{0}:FILEPATH={1}'.format((
- 'DEBUG' if 'build_type=Debug' in spec else 'RELEASE'),
- jasper.libs[0]),
- '-DJASPER_INCLUDE_DIR:PATH={0}'.format(
- jasper.headers.directories[0])
+ self.define('BUILD_JASPER', False),
+ self.define('JASPER_LIBRARY', jasper.libs[0]),
+ self.define('JASPER_INCLUDE_DIR', jasper.headers.directories[0])
])
- # GUI
- if '+gtk' not in spec:
- args.extend([
- '-DWITH_GTK:BOOL=OFF',
- '-DWITH_GTK_2_X:BOOL=OFF'
- ])
- elif '^gtkplus@3:' in spec:
+ # Python
+ python_exe = spec['python'].command.path
+ python_lib = spec['python'].libs[0]
+ python_include_dir = spec['python'].headers.directories[0]
+
+ if '+python2' in spec:
args.extend([
- '-DWITH_GTK:BOOL=ON',
- '-DWITH_GTK_2_X:BOOL=OFF'
+ self.define('PYTHON2_EXECUTABLE', python_exe),
+ self.define('PYTHON2_LIBRARY', python_lib),
+ self.define('PYTHON2_INCLUDE_DIR', python_include_dir),
+ self.define('PYTHON3_EXECUTABLE', '')
])
- elif '^gtkplus@2:3' in spec:
+ elif '+python3' in spec:
args.extend([
- '-DWITH_GTK:BOOL=OFF',
- '-DWITH_GTK_2_X:BOOL=ON'
+ self.define('PYTHON3_EXECUTABLE', python_exe),
+ self.define('PYTHON3_LIBRARY', python_lib),
+ self.define('PYTHON3_INCLUDE_DIR', python_include_dir),
+ self.define('PYTHON2_EXECUTABLE', '')
])
-
- # Python
- if '+python' in spec:
- python_exe = spec['python'].command.path
- python_lib = spec['python'].libs[0]
- python_include_dir = spec['python'].headers.directories[0]
-
- if '^python@3:' in spec:
- args.extend([
- '-DBUILD_opencv_python3=ON',
- '-DPYTHON3_EXECUTABLE={0}'.format(python_exe),
- '-DPYTHON3_LIBRARY={0}'.format(python_lib),
- '-DPYTHON3_INCLUDE_DIR={0}'.format(python_include_dir),
- '-DBUILD_opencv_python2=OFF',
- ])
- elif '^python@2:3' in spec:
- args.extend([
- '-DBUILD_opencv_python2=ON',
- '-DPYTHON2_EXECUTABLE={0}'.format(python_exe),
- '-DPYTHON2_LIBRARY={0}'.format(python_lib),
- '-DPYTHON2_INCLUDE_DIR={0}'.format(python_include_dir),
- '-DBUILD_opencv_python3=OFF',
- ])
else:
args.extend([
- '-DBUILD_opencv_python2=OFF',
- '-DBUILD_opencv_python3=OFF'
+ self.define('PYTHON2_EXECUTABLE', ''),
+ self.define('PYTHON3_EXECUTABLE', ''),
])
return args
@property
def libs(self):
- shared = "+shared" in self.spec
+ shared = '+shared' in self.spec
return find_libraries(
- "libopencv_*", root=self.prefix, shared=shared, recursive=True
+ 'libopencv_*', root=self.prefix, shared=shared, recursive=True
)
diff --git a/var/spack/repos/builtin/packages/opendx/package.py b/var/spack/repos/builtin/packages/opendx/package.py
index 2cf5a9e5e3..f731c24246 100644
--- a/var/spack/repos/builtin/packages/opendx/package.py
+++ b/var/spack/repos/builtin/packages/opendx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openexr/package.py b/var/spack/repos/builtin/packages/openexr/package.py
index 9663fd9ab7..db9f6a4b79 100644
--- a/var/spack/repos/builtin/packages/openexr/package.py
+++ b/var/spack/repos/builtin/packages/openexr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
from spack import *
-class Openexr(Package):
+class Openexr(AutotoolsPackage):
"""OpenEXR Graphics Tools (high dynamic-range image file format)"""
homepage = "http://www.openexr.com/"
@@ -39,9 +39,9 @@ class Openexr(Package):
depends_on('ilmbase')
depends_on('zlib', type=('build', 'link'))
- def install(self, spec, prefix):
- configure_options = ['--prefix={0}'.format(prefix)]
- if '+debug' not in spec:
- configure_options.append('--disable-debug')
- configure(*configure_options)
- make('install')
+ def configure_args(self):
+ configure_options = []
+
+ configure_options += self.enable_or_disable('debug')
+
+ return configure_options
diff --git a/var/spack/repos/builtin/packages/openfast/package.py b/var/spack/repos/builtin/packages/openfast/package.py
index 70e49a8c4f..b368168aa2 100644
--- a/var/spack/repos/builtin/packages/openfast/package.py
+++ b/var/spack/repos/builtin/packages/openfast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class Openfast(CMakePackage):
maintainers = ['jrood-nrel']
version('develop', branch='dev')
- version('master', branch='master')
+ version('master', branch='main')
variant('shared', default=True,
description="Build shared libraries")
@@ -47,16 +47,11 @@ class Openfast(CMakePackage):
options.extend([
'-DBUILD_DOCUMENTATION:BOOL=OFF',
'-DBUILD_TESTING:BOOL=OFF',
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
- '-DDOUBLE_PRECISION:BOOL=%s' % (
- 'ON' if '+double-precision' in spec else 'OFF'),
- '-DUSE_DLL_INTERFACE:BOOL=%s' % (
- 'ON' if '+dll-interface' in spec else 'OFF'),
- '-DBUILD_OPENFAST_CPP_API:BOOL=%s' % (
- 'ON' if '+cxx' in spec else 'OFF'),
- '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=%s' % (
- 'ON' if '+pic' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('DOUBLE_PRECISION', 'double-precision'),
+ self.define_from_variant('USE_DLL_INTERFACE', 'dll-interface'),
+ self.define_from_variant('BUILD_OPENFAST_CPP_API', 'cxx'),
+ self.define_from_variant('CMAKE_POSITION_INDEPENDENT_CODE', 'pic'),
])
# Make sure we use Spack's blas/lapack:
diff --git a/var/spack/repos/builtin/packages/openfdtd/package.py b/var/spack/repos/builtin/packages/openfdtd/package.py
index 5af480448f..71f2f44755 100644
--- a/var/spack/repos/builtin/packages/openfdtd/package.py
+++ b/var/spack/repos/builtin/packages/openfdtd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,9 @@ class Openfdtd(MakefilePackage):
homepage = "http://www.e-em.co.jp/OpenFDTD/"
url = "http://www.e-em.co.jp/OpenFDTD/OpenFDTD.zip"
- version('2.3.0', sha256='10ac70f2ed7160da87dd9222a5a17ca7b72365ee886235359afc48c4fb7b4be4')
+ version('2.6.0', sha256='92f7b92dc55ff6d8fc8c31eda77ca10fe25a5f54b002f2523a3d67f485d77e9f')
+ version('2.3.0', sha256='10ac70f2ed7160da87dd9222a5a17ca7b72365ee886235359afc48c4fb7b4be4',
+ url='http://www.e-em.co.jp/OpenFDTD/old/OpenFDTD_230.zip')
variant('mpi', default=False, description='Build with MPI Support')
diff --git a/var/spack/repos/builtin/packages/openfoam-org/isnan.patch b/var/spack/repos/builtin/packages/openfoam-org/isnan.patch
new file mode 100644
index 0000000000..b84876c5a7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-org/isnan.patch
@@ -0,0 +1,31 @@
+--- a/src/conversion/ensight/part/ensightPart.C 2021-01-07 15:37:26.650557806 +0100
++++ b/src/conversion/ensight/part/ensightPart.C 2021-01-07 15:38:04.148140312 +0100
+@@ -51,7 +51,7 @@
+ {
+ const label id = idList[i];
+
+- if (id >= field.size() || isnan(field[id]))
++ if (id >= field.size() || std::isnan(field[id]))
+ {
+ return false;
+ }
+--- a/src/conversion/ensight/part/ensightPartIO.C 2021-01-07 15:37:26.650557806 +0100
++++ b/src/conversion/ensight/part/ensightPartIO.C 2021-01-07 15:38:38.580675503 +0100
+@@ -63,7 +63,7 @@
+ {
+ forAll(idList, i)
+ {
+- if (idList[i] >= field.size() || isnan(field[idList[i]]))
++ if (idList[i] >= field.size() || std::isnan(field[idList[i]]))
+ {
+ os.writeUndef();
+ }
+@@ -80,7 +80,7 @@
+ // no idList => perNode
+ forAll(field, i)
+ {
+- if (isnan(field[i]))
++ if (std::isnan(field[i]))
+ {
+ os.writeUndef();
+ }
diff --git a/var/spack/repos/builtin/packages/openfoam-org/package.py b/var/spack/repos/builtin/packages/openfoam-org/package.py
index d9bd136b2e..42e2b0cc09 100644
--- a/var/spack/repos/builtin/packages/openfoam-org/package.py
+++ b/var/spack/repos/builtin/packages/openfoam-org/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -77,6 +77,8 @@ class OpenfoamOrg(Package):
url=baseurl + '/OpenFOAM-4.x/archive/version-4.1.tar.gz')
version('2.4.0', sha256='9529aa7441b64210c400c019dcb2e0410fcfd62a6f62d23b6c5994c4753c4465',
url=baseurl + '/OpenFOAM-2.4.x/archive/version-2.4.0.tar.gz')
+ version('2.3.1', sha256='2bbcf4d5932397c2087a9b6d7eeee6d2b1350c8ea4f455415f05e7cd94d9e5ba',
+ url='http://downloads.sourceforge.net/foam/OpenFOAM-2.3.1.tgz')
variant('int64', default=False,
description='Compile with 64-bit label')
@@ -109,7 +111,11 @@ class OpenfoamOrg(Package):
patch('50-etc.patch', when='@5.0:5.9')
patch('41-etc.patch', when='@4.1')
patch('41-site.patch', when='@4.1:')
- patch('240-etc.patch', when='@2.4.0')
+ patch('240-etc.patch', when='@:2.4.0')
+ patch('isnan.patch', when='@:2.4.0')
+ # Add support for SYSTEMMPI
+ patch('https://github.com/OpenFOAM/OpenFOAM-2.3.x/commit/ae9a670c99472787f3a5446ac2b522bf3519b796.patch',
+ sha256='6c4c535baca3ce64035d512265c4ce8effd39de7602c923c5e19985db68b632a', when='@:2.3.1')
# The openfoam architecture, compiler information etc
_foam_arch = None
diff --git a/var/spack/repos/builtin/packages/openfoam/package.py b/var/spack/repos/builtin/packages/openfoam/package.py
index de5f766f3c..b82ac5ddcd 100644
--- a/var/spack/repos/builtin/packages/openfoam/package.py
+++ b/var/spack/repos/builtin/packages/openfoam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -265,6 +265,8 @@ class Openfoam(Package):
version('develop', branch='develop', submodules='True')
version('master', branch='master', submodules='True')
+ version('2012_210414', sha256='5260aaa79f91aad58a3a305c1a12d0d48b10f12e37cd99a6fa561969b15ea09d')
+ version('2012', sha256='3d6e39e39e7ae61d321fbc6db6c3748e6e5e1c4886454207a7f1a7321469e65a')
version('2006_201012', sha256='9afb7eee072bfddcf7f3e58420c93463027db2394997ac4c3b87a8b07c707fb0')
version('2006', sha256='30c6376d6f403985fc2ab381d364522d1420dd58a42cb270d2ad86f8af227edc')
version('1912_200506', sha256='831a39ff56e268e88374d0a3922479fd80260683e141e51980242cc281484121')
@@ -313,9 +315,10 @@ class Openfoam(Package):
# conflicts('^openmpi~thread_multiple', when='@1712:')
depends_on('zlib')
- depends_on('fftw')
+ depends_on('fftw-api')
depends_on('boost')
- depends_on('cgal')
+ # OpenFOAM does not play nice with CGAL 5.X
+ depends_on('cgal@:4.99')
# The flex restriction is ONLY to deal with a spec resolution clash
# introduced by the restriction within scotch!
depends_on('flex@:2.6.1,2.6.4:')
@@ -404,10 +407,7 @@ class Openfoam(Package):
def setup_build_environment(self, env):
"""Sets the build environment (prior to unpacking the sources).
"""
- # Avoid the exception that occurs at runtime
- # when building with the Fujitsu compiler.
- if self.spec.satisfies('%fj'):
- env.set('FOAM_SIGFPE', 'false')
+ pass
def setup_run_environment(self, env):
"""Sets the run environment (post-installation).
@@ -548,17 +548,28 @@ class Openfoam(Package):
rcfile,
backup=False)
- @when('@1906: %fj')
+ def configure_trapFpe_off(self):
+ """Disable trapFpe handling.
+ Seems to be needed for several clang-derivatives.
+ """
+ # Set 'trapFpe 0' in etc/controlDict
+ controlDict = 'etc/controlDict'
+ if os.path.exists(controlDict):
+ filter_file(r'trapFpe\s+\d+\s*;', 'trapFpe 0;',
+ controlDict, backup=False)
+
+ @when('@1812: %fj')
@run_before('configure')
def make_fujitsu_rules(self):
"""Create Fujitsu rules (clang variant) unless supplied upstream.
- Implemented for 1906 and later (older rules are too messy to edit).
+ Implemented for 1812 and later (older rules are too messy to edit).
Already included after 1912.
"""
general_rules = 'wmake/rules/General'
arch_rules = 'wmake/rules/linuxARM64' # self.arch
src = arch_rules + 'Clang'
dst = arch_rules + 'Fujitsu' # self.compiler
+ self.configure_trapFpe_off() # LLVM may falsely trigger FPE
if os.path.exists(dst):
return
@@ -573,15 +584,22 @@ class Openfoam(Package):
tty.info('Add Fujitsu wmake rules')
copy_tree(src, dst)
- for cfg in ['c', 'c++', 'general']:
- rule = join_path(dst, cfg)
- filter_file('Clang', 'Fujitsu', rule, backup=False)
+ if self.spec.version >= Version('1906'):
+ for cfg in ['c', 'c++', 'general']:
+ rule = join_path(dst, cfg)
+ filter_file('Clang', 'Fujitsu', rule, backup=False)
+ else:
+ filter_file('clang', spack_cc, join_path(dst, 'c'),
+ backup=False, string=True)
+ filter_file('clang++', spack_cxx, join_path(dst, 'c++'),
+ backup=False, string=True)
src = join_path(general_rules, 'Clang')
dst = join_path(general_rules, 'Fujitsu') # self.compiler
copy_tree(src, dst)
- filter_file('clang', spack_cc, join_path(dst, 'c'),
- backup=False, string=True)
+ if self.spec.version >= Version('1906'):
+ filter_file('clang', spack_cc, join_path(dst, 'c'),
+ backup=False, string=True)
filter_file('clang++', spack_cxx, join_path(dst, 'c++'),
backup=False, string=True)
@@ -621,10 +639,10 @@ class Openfoam(Package):
pkglib(spec['cgal'], '${CGAL_ARCH_PATH}'))),
],
'FFTW': [
- ('FFTW_ARCH_PATH', spec['fftw'].prefix), # Absolute
+ ('FFTW_ARCH_PATH', spec['fftw-api'].prefix), # Absolute
('LD_LIBRARY_PATH',
foam_add_lib(
- pkglib(spec['fftw'], '${BOOST_ARCH_PATH}'))),
+ pkglib(spec['fftw-api'], '${BOOST_ARCH_PATH}'))),
],
# User-defined MPI
'mpi-user': [
@@ -847,7 +865,8 @@ class OpenfoamArch(object):
#: Map spack compiler names to OpenFOAM compiler names
# By default, simply capitalize the first letter
- compiler_mapping = {'intel': 'Icc', 'fj': 'Fujitsu'}
+ compiler_mapping = {'aocc': 'Amd', 'fj': 'Fujitsu',
+ 'intel': 'Icc', 'oneapi': 'Icx'}
def __init__(self, spec, **kwargs):
# Some user settings, to be adjusted manually or via variants
diff --git a/var/spack/repos/builtin/packages/openfst/package.py b/var/spack/repos/builtin/packages/openfst/package.py
index 8399c6fcb9..eed28c0962 100644
--- a/var/spack/repos/builtin/packages/openfst/package.py
+++ b/var/spack/repos/builtin/packages/openfst/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,7 +31,7 @@ class Openfst(AutotoolsPackage):
version('1.4.0', sha256='eb557f37560438f03912b4e43335c4c9e72aa486d4f2046127131185eb88f17a')
conflicts('%intel@16:')
- conflicts('%gcc@6:', when='@:1.6.7')
+ conflicts('%gcc@6:', when='@:1.6.1')
variant('far', default=False, description="Enable FAR support")
diff --git a/var/spack/repos/builtin/packages/opengl/package.py b/var/spack/repos/builtin/packages/opengl/package.py
index 8be03f2577..763e2281fb 100644
--- a/var/spack/repos/builtin/packages/opengl/package.py
+++ b/var/spack/repos/builtin/packages/opengl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -91,8 +91,5 @@ class Opengl(Package):
@property
def libs(self):
- for dir in ['lib64', 'lib']:
- libs = find_libraries('libGL', join_path(self.prefix, dir),
- shared=True, recursive=False)
- if libs:
- return libs
+ return find_libraries(
+ 'libGL', self.prefix, shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/openglu/package.py b/var/spack/repos/builtin/packages/openglu/package.py
index 77ddbce2b9..d929adacdb 100644
--- a/var/spack/repos/builtin/packages/openglu/package.py
+++ b/var/spack/repos/builtin/packages/openglu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -61,8 +61,5 @@ class Openglu(Package):
@property
def libs(self):
- for dir in ['lib64', 'lib']:
- libs = find_libraries('libGLU', join_path(self.prefix, dir),
- shared=True, recursive=False)
- if libs:
- return libs
+ return find_libraries(
+ 'libGLU', self.prefix, shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/openimageio/package.py b/var/spack/repos/builtin/packages/openimageio/package.py
index 6b01cdaa4d..551d50ade9 100644
--- a/var/spack/repos/builtin/packages/openimageio/package.py
+++ b/var/spack/repos/builtin/packages/openimageio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openipmi/package.py b/var/spack/repos/builtin/packages/openipmi/package.py
index 894897e9e7..bd54726c5e 100644
--- a/var/spack/repos/builtin/packages/openipmi/package.py
+++ b/var/spack/repos/builtin/packages/openipmi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,13 +14,18 @@ class Openipmi(AutotoolsPackage):
homepage = "https://sourceforge.net/projects/openipmi/"
url = "https://sourceforge.net/projects/openipmi/files/OpenIPMI%202.0%20Library/OpenIPMI-2.0.29.tar.gz"
+ version('2.0.29', sha256='2244124579afb14e569f34393e9ac61e658a28b6ffa8e5c0d2c1c12a8ce695cd')
version('2.0.28', sha256='8e8b1de2a9a041b419133ecb21f956e999841cf2e759e973eeba9a36f8b40996')
version('2.0.27', sha256='f3b1fafaaec2e2bac32fec5a86941ad8b8cb64543470bd6d819d7b166713d20b')
- depends_on('popt')
- depends_on('python')
- depends_on('termcap')
- depends_on('ncurses')
+ depends_on('popt', type='link')
+ depends_on('python', type=('build', 'link', 'run'))
+ depends_on('perl', type=('build', 'link', 'run'))
+ depends_on('termcap', type='link')
+ depends_on('ncurses', type='link')
+ depends_on('readline', type='link')
+
+ patch('readline.patch', when='@2.0.27')
def configure_args(self):
args = ['LIBS=' + self.spec['ncurses'].libs.link_flags]
diff --git a/var/spack/repos/builtin/packages/openipmi/readline.patch b/var/spack/repos/builtin/packages/openipmi/readline.patch
new file mode 100644
index 0000000000..193442101b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openipmi/readline.patch
@@ -0,0 +1,11 @@
+--- spack-src/sample/ipmi_serial_bmc_emu.c.org 2020-12-07 17:08:39.907878381 +0900
++++ spack-src/sample/ipmi_serial_bmc_emu.c 2020-12-07 17:08:56.713276894 +0900
+@@ -42,7 +42,7 @@
+ #include <unistd.h>
+ #include <stdlib.h>
+ #include <sys/select.h>
+-#include <editline/readline.h>
++#include <readline/readline.h>
+
+ #define _GNU_SOURCE
+ #include <getopt.h>
diff --git a/var/spack/repos/builtin/packages/openjdk/package.py b/var/spack/repos/builtin/packages/openjdk/package.py
index 4c50bdfc2c..ab2aab9ae2 100644
--- a/var/spack/repos/builtin/packages/openjdk/package.py
+++ b/var/spack/repos/builtin/packages/openjdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,6 +7,7 @@ import os
import platform
import re
+from spack.util.prefix import Prefix
# If you need to add a new version, please be aware that:
# - versions in the following dict are automatically added to the package
@@ -16,12 +17,22 @@ import re
# format returned by platform.system() and 'arch' by platform.machine()
_versions = {
+ '11.0.9.1_1': {
+ 'Linux-ppc64le': ('d94b6b46a14ab0974b1c1b89661741126d8cf8a0068b471b8f5fa286a71636b1', 'https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.9.1%2B1/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.9.1_1.tar.gz')},
+ '11.0.8_10': {
+ 'Linux-x86_64': ('6e4cead158037cb7747ca47416474d4f408c9126be5b96f9befd532e0a762b47', 'https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10/OpenJDK11U-jdk_x64_linux_hotspot_11.0.8_10.tar.gz')},
'11.0.0-2020-01-01': {
'Linux-aarch64': ('05c7d9c90edacd853850fbb0f52f8aa482809d0452c599cb9fe0b28b3b4bf329', 'https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk11u-2020-01-01-06-13/OpenJDK11U-jdk_aarch64_linux_hotspot_2020-01-01-06-13.tar.gz')},
'11.0.2': {
- 'Linux-x86_64': ('99be79935354f5c0df1ad293620ea36d13f48ec3ea870c838f20c504c9668b57', 'https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz')},
+ 'Linux-x86_64': ('99be79935354f5c0df1ad293620ea36d13f48ec3ea870c838f20c504c9668b57', 'https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz'),
+ 'Darwin-x86_64': ('f365750d4be6111be8a62feda24e265d97536712bc51783162982b8ad96a70ee', 'https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_osx-x64_bin.tar.gz')
+ },
'11.0.1': {
- 'Linux-x86_64': ('7a6bb980b9c91c478421f865087ad2d69086a0583aeeb9e69204785e8e97dcfd', 'https://download.java.net/java/GA/jdk11/13/GPL/openjdk-11.0.1_linux-x64_bin.tar.gz')},
+ 'Linux-x86_64': ('7a6bb980b9c91c478421f865087ad2d69086a0583aeeb9e69204785e8e97dcfd', 'https://download.java.net/java/GA/jdk11/13/GPL/openjdk-11.0.1_linux-x64_bin.tar.gz'),
+ 'Darwin-x86_64': ('fa07eee08fa0f3de541ee1770de0cdca2ae3876f3bd78c329f27e85c287cd070', 'https://download.java.net/java/GA/jdk11/13/GPL/openjdk-11.0.1_osx-x64_bin.tar.gz')
+ },
+ '1.8.0_265-b01': {
+ 'Linux-x86_64': ('1285da6278f2d38a790a21148d7e683f20de0799c44b937043830ef6b57f58c4', 'https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_linux_hotspot_8u265b01.tar.gz')},
'1.8.0_191-b12': {
'Linux-aarch64': ('8eee0aede947b804f9a5f49c8a38b52aace8a30a9ebd9383b7d06042fb5a237c', 'https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz')},
'1.8.0_222-b10': {
@@ -49,8 +60,7 @@ class Openjdk(Package):
provides('java@9', when='@9.0:9.99')
provides('java@8', when='@1.8.0:1.8.999')
- conflicts('target=ppc64:', msg='openjdk is only available for x86_64 and aarch64')
- conflicts('target=ppc64le:', msg='openjdk is only available for x86_64 and aarch64')
+ conflicts('target=ppc64:', msg='openjdk is not available for ppc64 (big endian)')
# FIXME:
# 1. `extends('java')` doesn't work, you need to use `extends('openjdk')`
@@ -109,7 +119,8 @@ class Openjdk(Package):
return find_libraries(['libjvm'], root=self.home, recursive=True)
def install(self, spec, prefix):
- install_tree('.', prefix)
+ top_dir = 'Contents/Home/' if platform.system() == "Darwin" else '.'
+ install_tree(top_dir, prefix)
def setup_run_environment(self, env):
"""Set JAVA_HOME."""
diff --git a/var/spack/repos/builtin/packages/openjpeg/package.py b/var/spack/repos/builtin/packages/openjpeg/package.py
index c451758ef0..676c567e35 100644
--- a/var/spack/repos/builtin/packages/openjpeg/package.py
+++ b/var/spack/repos/builtin/packages/openjpeg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openkim-models/package.py b/var/spack/repos/builtin/packages/openkim-models/package.py
index 6e8819da66..9777513768 100644
--- a/var/spack/repos/builtin/packages/openkim-models/package.py
+++ b/var/spack/repos/builtin/packages/openkim-models/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,20 +19,24 @@ class OpenkimModels(CMakePackage):
compatible with the kim-api package.
"""
homepage = "https://openkim.org/"
- url = "https://s3.openkim.org/archives/collection/openkim-models-2019-07-25.txz"
+ url = "https://s3.openkim.org/archives/collection/openkim-models-2021-01-28.txz"
maintainers = ['ellio167']
extends('kim-api')
+ depends_on('kim-api@2.2.1:', when='@2021.01.28:')
depends_on('kim-api@2.1.0:', when='@2019-07-25:')
depends_on('kim-api@:2.0.2', when='@:2019-03-29')
version(
- '2019-07-25',
- sha256='50338084ece92ec0fb13b0bbdf357b5d7450e26068ba501f23c315f814befc26')
+ '2021.01.28',
+ sha256='8824adee02ae4583bd378cc81140fbb49515c5965708ee98d856d122d48dd95f')
version(
- '2019-03-29',
- sha256='053dda2023fe4bb6d7c1d66530c758c4e633bbf1f1be17b6b075b276fe8874f6')
+ '2019-07-25',
+ sha256='50338084ece92ec0fb13b0bbdf357b5d7450e26068ba501f23c315f814befc26')
+ version(
+ '2019-03-29',
+ sha256='053dda2023fe4bb6d7c1d66530c758c4e633bbf1f1be17b6b075b276fe8874f6')
def cmake_args(self):
args = []
diff --git a/var/spack/repos/builtin/packages/openldap/package.py b/var/spack/repos/builtin/packages/openldap/package.py
index 89d190ae27..e7724a7aa4 100644
--- a/var/spack/repos/builtin/packages/openldap/package.py
+++ b/var/spack/repos/builtin/packages/openldap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -47,7 +47,7 @@ class Openldap(AutotoolsPackage):
@when('+client_only')
def configure_args(self):
return ['CPPFLAGS=-D_GNU_SOURCE',
- '--disable-static',
+ '--enable-static',
'--enable-dynamic',
'--disable-debug',
'--disable-slapd',
@@ -57,7 +57,7 @@ class Openldap(AutotoolsPackage):
def configure_args(self):
# Ref: https://www.openldap.org/lists/openldap-technical/201009/msg00304.html
args = ['CPPFLAGS=-D_GNU_SOURCE', # fixes a build error, see Ref above
- '--disable-static',
+ '--enable-static',
'--disable-debug',
'--with-cyrus-sasl',
'--enable-dynamic',
diff --git a/var/spack/repos/builtin/packages/openloops/get-process-list.py b/var/spack/repos/builtin/packages/openloops/get-process-list.py
new file mode 100644
index 0000000000..9876e5888f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openloops/get-process-list.py
@@ -0,0 +1,47 @@
+from html.parser import HTMLParser
+import re
+import urllib.request
+
+
+class my_html_parser(HTMLParser):
+ def error(self, message):
+ pass
+
+ def __init__(self):
+ super().__init__()
+ self.state = 0
+ self.processes = []
+
+ def handle_starttag(self, tag, attrs):
+ if tag == 'tr' and self.state == 2:
+ for att in attrs:
+ if att[0] == 'id':
+ return
+ self.state = 3
+ if tag == 'td' and self.state == 3:
+ self.state = 4
+ pass
+
+ def handle_endtag(self, tag):
+ if tag == 'table' and self.state == 1:
+ self.state = 2
+ pass
+
+ def handle_data(self, data):
+ # print("Encountered some data :", data)
+ if data == 'Categories' and self.state == 0:
+ self.state = 1
+
+ if self.state == 4:
+ if re.findall('[^a-z0-9_]', data):
+ return
+ self.processes.append(data)
+ self.state = 2
+
+
+if __name__ == '__main__':
+ url = "https://openloops.hepforge.org/process_library.php?repo=public"
+ data = urllib.request.urlopen(url).read()
+ parser = my_html_parser()
+ parser.feed(data.decode('UTF8'))
+ print(parser.processes)
diff --git a/var/spack/repos/builtin/packages/openloops/package.py b/var/spack/repos/builtin/packages/openloops/package.py
index 9a1081c2b6..1ff72c6088 100644
--- a/var/spack/repos/builtin/packages/openloops/package.py
+++ b/var/spack/repos/builtin/packages/openloops/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,49 +15,52 @@ class Openloops(Package):
at NLO QCD and NLO EW. """
homepage = "https://openloops.hepforge.org/"
- url = "https://openloops.hepforge.org/downloads?f=OpenLoops-2.1.1.tar.gz"
+ url = "https://openloops.hepforge.org/downloads?f=OpenLoops-2.1.1.tar.gz"
+ tags = ['hep']
+
+ version('2.1.2', sha256='f52575cae3d70b6b51a5d423e9cd0e076ed5961afcc015eec00987e64529a6ae')
version('2.1.1', sha256='f1c47ece812227eab584e2c695fef74423d2f212873f762b8658f728685bcb91')
- all_processes = (
- "tbln", "tbln_ew", "tbqq", "tbw", "pptttt", "pptttt_ew", "pptt",
- "pptt_ew", "ppttbb", "ppttj", "ppttj_ew", "ppttjj",
- "pptaj", "pptajj", "pptllj", "pptlljj", "pptln", "pptw", "pptwj",
- "pptzj", "pptzjj", "ppthj", "ppthjj", "pptj",
- "pptjj", "ppjj", "ppjj_ew", "ppjjj", "ppjjj_ew", "ppjjj_nf5", "ppjjjj",
- "pplllvvv_ew", "ppatt", "ppatt_ew",
- "ppattj", "pplltt", "pplltt_ew", "ppllttj", "ppllttj_ew", "pplntt",
- "pplnttj", "ppwtt", "ppwtt_ew", "ppwttj",
- "ppwttj_ew", "ppztt", "ppztt_ew", "ppzttj", "ppaatt", "ppwwtt",
- "ppzatt", "ppzztt", "ppvvvv", "ppaaaj2", "ppllaa",
- "ppllaaj", "pplllla", "ppvvv", "ppvvv2", "ppvvv_ew", "ppvvvj",
- "ppaajj", "ppaajj2", "ppaajjj", "pplla", "pplla2",
- "pplla_ew", "ppllaj", "ppllaj2", "ppllaj_ew", "ppllaj_nf5", "ppllajj",
- "ppllll", "ppllll2", "ppllll2_nf5",
- "ppllll2_onlyh", "ppllll_ew", "ppllllj", "ppllllj2", "ppllllj2_nf5",
- "ppllllj2_nf5_notridr", "ppllllj2_nf5_sr",
- "ppllllj2_onlyh", "ppllnnjj_ew", "ppllnnjj_vbs", "pplnajj", "ppvv",
- "ppvv2", "ppvv_ew", "ppvvj", "ppvvj2",
- "ppvvj_ew", "ppwajj", "ppwwjj", "ppzajj", "ppzwj_ew", "ppzwjj",
- "ppzzjj", "ppajj", "ppajj2", "ppajj_ew", "ppajjj",
- "ppllj", "ppllj2", "ppllj_ew", "ppllj_nf5", "pplljj", "pplljj_ew",
- "pplljjj", "pplnj_ckm", "pplnjj", "pplnjj_ckm",
- "pplnjj_ew", "pplnjjj", "ppnnjj_ew", "ppnnjjj", "ppvj", "ppvj2",
- "ppvj_ew", "ppwj_ckm", "ppwjj", "ppwjj_ckm",
- "ppwjj_ew", "ppwjjj", "ppzjj", "ppzjj_ew", "ppzjjj", "pphtt",
- "pphtt_ew", "pphttj", "pphlltt", "pphll", "pphll2",
- "pphll_ew", "pphllj", "pphllj2", "pphllj_ew", "pphlljj", "pphlljj_top",
- "pphlnj_ckm", "pphlnjj", "pphv", "pphv_ew",
- "pphwjj", "pphz2", "pphzj2", "pphzjj", "pphhtt", "pphhv", "pphhh2",
- "heftpphh", "heftpphhj", "heftpphhjj", "pphh2",
- "pphhj2", "pphhjj2", "pphhjj_vbf", "bbhj", "heftpphj", "heftpphjj",
- "heftpphjjj", "pphbb", "pphbbj", "pphj2",
- "pphjj2", "pphjj_vbf", "pphjj_vbf_ew", "pphjjj2", "eetttt", "eettttj",
- "eellllbb", "eett", "eett_ew", "eettj",
- "eettjj", "eevtt", "eevttj", "eevttjj", "eevvtt", "eevvttj",
- "eellll_ew", "eevv_ew", "eevvjj", "eell_ew", "eevjj",
- "eehtt", "eehttj", "eehll_ew", "eehvtt", "eehhtt", "heftppllj",
- "heftpplljj", "heftpplljjj")
+ all_processes = ['tbln', 'tbln_ew', 'tbqq', 'tbw', 'pptttt', 'pptttt_ew',
+ 'pptt', 'pptt_ew', 'ppttbb', 'ppttj', 'ppttj_ew', 'ppttjj',
+ 'pptaj', 'pptajj', 'pptllj', 'pptlljj', 'pptln', 'pptw',
+ 'pptwj', 'pptzj', 'pptzjj', 'ppthj', 'ppthjj', 'pptj',
+ 'pptjj', 'ppjj', 'ppjj_ew', 'ppjjj', 'ppjjj_ew', 'ppjjj_nf5',
+ 'ppjjjj', 'pplllvvv_ew', 'ppatt', 'ppatt_ew', 'ppattj',
+ 'pplltt', 'pplltt_ew', 'ppllttj', 'ppllttj_ew', 'pplntt',
+ 'pplnttj', 'ppwtt', 'ppwtt_ew', 'ppwttj', 'ppwttj_ew',
+ 'ppztt', 'ppztt_ew', 'ppzttj', 'ppaatt', 'ppwwtt', 'ppzatt',
+ 'ppzztt', 'ppvvvv', 'ppaaaj2', 'ppllaa', 'ppllaaj',
+ 'pplllla', 'ppvvv', 'ppvvv2', 'ppvvv_ew', 'ppvvvj',
+ 'ppaajj', 'ppaajj2', 'ppaajjj', 'pplla', 'pplla2',
+ 'pplla_ew', 'ppllaj', 'ppllaj2', 'ppllaj_ew', 'ppllaj_nf5',
+ 'ppllajj', 'ppllll', 'ppllll2', 'ppllll2_nf5',
+ 'ppllll2_onlyh', 'ppllll_ew', 'ppllllbb', 'ppllllj',
+ 'ppllllj2', 'ppllllj2_nf5', 'ppllllj2_nf5_notridr',
+ 'ppllllj2_nf5_sr', 'ppllllj2_onlyh', 'ppllnnjj_ew',
+ 'ppllnnjj_vbs', 'pplnaj_ckm', 'pplnajj', 'pplnajj_ckm',
+ 'ppvv', 'ppvv2', 'ppvv_ew', 'ppvvj', 'ppvvj2', 'ppvvj_ew',
+ 'ppwajj', 'ppwwjj', 'ppzajj', 'ppzwj_ew', 'ppzwjj', 'ppzzjj',
+ 'ppajj', 'ppajj2', 'ppajj_ew', 'ppajjj', 'ppllj', 'ppllj2',
+ 'ppllj_ew', 'ppllj_nf5', 'pplljj', 'pplljj_ew', 'pplljjj',
+ 'pplnj_ckm', 'pplnjj', 'pplnjj_ckm', 'pplnjj_ew', 'pplnjjj',
+ 'ppnnjj_ew', 'ppnnjjj', 'ppvj', 'ppvj2', 'ppvj_ew',
+ 'ppwj_ckm', 'ppwjj', 'ppwjj_ckm', 'ppwjj_ew', 'ppwjjj',
+ 'ppzjj', 'ppzjj_ew', 'ppzjjj', 'pphtt', 'pphtt_ew', 'pphttj',
+ 'pphlltt', 'pphll', 'pphll2', 'pphll_ew', 'pphllj',
+ 'pphllj2', 'pphllj_ew', 'pphlljj', 'pphlljj_top',
+ 'pphlnj_ckm', 'pphlnjj', 'pphv', 'pphv_ew', 'pphwjj',
+ 'pphz2', 'pphzj2', 'pphzjj', 'pphhtt', 'pphhv', 'pphhh2',
+ 'heftpphh', 'heftpphhj', 'heftpphhjj', 'pphh2', 'pphhj2',
+ 'pphhjj2', 'pphhjj_vbf', 'bbhj', 'heftpphj', 'heftpphjj',
+ 'heftpphjjj', 'pphbb', 'pphbbj', 'pphj2', 'pphjj2',
+ 'pphjj_vbf', 'pphjj_vbf_ew', 'pphjjj2', 'eetttt', 'eettttj',
+ 'eellllbb', 'eett', 'eett_ew', 'eettj', 'eettjj', 'eevtt',
+ 'eevttj', 'eevttjj', 'eevvtt', 'eevvttj', 'eellll_ew',
+ 'eevv_ew', 'eevvjj', 'eell_ew', 'eevjj', 'eehtt', 'eehttj',
+ 'eehll_ew', 'eehvtt', 'eehhtt', 'heftppllj', 'heftpplljj',
+ 'heftpplljjj']
variant('compile_extra', default=False,
description='Compile real radiation tree amplitudes')
@@ -67,7 +70,7 @@ class Openloops(Package):
values=disjoint_sets(('all.coll',), ('lhc.coll',), ('lcg.coll',),
all_processes).with_default('lhc.coll'))
- variant('num_jobs', description='Number of parallel jobs to run. ' +
+ variant('num_jobs', description='Number of parallel jobs to run. ' +
'Set to 1 if compiling a large number' +
'of processes (e.g. lcg.coll)', default=0)
depends_on('python', type=("build", "run"))
@@ -95,14 +98,20 @@ class Openloops(Package):
f.write('fortran_compiler = {0}\n'.format(env['SPACK_FC']))
if self.spec.satisfies('@1.3.1') and not is_intel:
f.write('gfortran_f_flags = -ffree-line-length-none\n')
- if self.spec.satisfies('@2.1.1') and not is_intel:
+ if self.spec.satisfies('@2.1.1:') and not is_intel:
f.write('gfortran_f_flags = -ffree-line-length-none ' +
- '-fdollar-ok -mcmodel=medium\n')
+ '-fdollar-ok ')
+ if self.spec.target.family == 'aarch64':
+ f.write('-mcmodel=small\n')
+ else:
+ f.write('-mcmodel=medium\n')
if self.spec.satisfies('@:1.999.999 processes=lcg.coll'):
copy(join_path(os.path.dirname(__file__), 'sft1.coll'), 'lcg.coll')
- elif self.spec.satisfies('@2:2.999.999 processes=lcg.coll'):
+ elif self.spec.satisfies('@2:2.1.2 processes=lcg.coll'):
copy(join_path(os.path.dirname(__file__), 'sft2.coll'), 'lcg.coll')
+ elif self.spec.satisfies('@2.1.2:2.99.99 processes=lcg.coll'):
+ copy(join_path(os.path.dirname(__file__), 'sft3.coll'), 'lcg.coll')
def build(self, spec, prefix):
scons = Executable('./scons')
diff --git a/var/spack/repos/builtin/packages/openloops/sft3.coll b/var/spack/repos/builtin/packages/openloops/sft3.coll
new file mode 100644
index 0000000000..a4d7715534
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openloops/sft3.coll
@@ -0,0 +1,171 @@
+tbln
+tbln_ew
+tbqq
+tbw
+pptttt
+pptttt_ew
+pptt
+pptt_ew
+ppttbb
+ppttj
+ppttj_ew
+ppttjj
+pptaj
+pptajj
+pptllj
+pptlljj
+pptln
+pptw
+pptwj
+pptzj
+pptzjj
+ppthj
+ppthjj
+pptj
+pptjj
+ppjj
+ppjj_ew
+ppjjj
+ppjjj_ew
+ppjjj_nf5
+ppjjjj
+pplllvvv_ew
+ppatt
+ppatt_ew
+ppattj
+pplltt
+pplltt_ew
+ppllttj
+ppllttj_ew
+pplntt
+pplnttj
+ppwtt
+ppwtt_ew
+ppwttj
+ppwttj_ew
+ppztt
+ppztt_ew
+ppzttj
+ppaatt
+ppwwtt
+ppzatt
+ppzztt
+ppvvvv
+ppaaaj2
+ppllaa
+ppllaaj
+pplllla
+ppvvv
+ppvvv2
+ppvvv_ew
+ppvvvj
+ppaajj
+ppaajj2
+ppaajjj
+pplla
+pplla2
+pplla_ew
+ppllaj
+ppllaj2
+ppllaj_ew
+ppllaj_nf5
+ppllajj
+ppllll
+ppllll2
+ppllll2_nf5
+ppllll2_onlyh
+ppllll_ew
+ppllllbb
+ppllllj
+ppllllj2
+ppllllj2_nf5
+ppllllj2_nf5_notridr
+ppllllj2_nf5_sr
+ppllllj2_onlyh
+ppllnnjj_ew
+ppllnnjj_vbs
+pplnaj_ckm
+pplnajj
+pplnajj_ckm
+ppvv
+ppvv2
+ppvv_ew
+ppvvj
+ppvvj2
+ppvvj_ew
+ppwajj
+ppwwjj
+ppzajj
+ppzwj_ew
+ppzwjj
+ppzzjj
+ppajj
+ppajj2
+ppajj_ew
+ppajjj
+ppllj
+ppllj2
+ppllj_ew
+ppllj_nf5
+pplljj
+pplljj_ew
+pplljjj
+pplnj_ckm
+pplnjj
+pplnjj_ckm
+pplnjj_ew
+pplnjjj
+ppnnjj_ew
+ppnnjjj
+ppvj
+ppvj2
+ppvj_ew
+ppwj_ckm
+ppwjj
+ppwjj_ckm
+ppwjj_ew
+ppwjjj
+ppzjj
+ppzjj_ew
+ppzjjj
+pphtt
+pphtt_ew
+pphttj
+pphlltt
+pphll
+pphll2
+pphll_ew
+pphllj
+pphllj2
+pphllj_ew
+pphlljj
+pphlljj_top
+pphlnj_ckm
+pphlnjj
+pphv
+pphv_ew
+pphwjj
+pphz2
+pphzj2
+pphzjj
+pphhtt
+pphhv
+pphhh2
+heftpphh
+heftpphhj
+heftpphhjj
+pphh2
+pphhj2
+pphhjj2
+pphhjj_vbf
+bbhj
+heftpphj
+heftpphjj
+heftpphjjj
+pphbb
+pphbbj
+pphj2
+pphjj2
+pphjj_vbf
+pphjj_vbf_ew
+pphjjj2 \ No newline at end of file
diff --git a/var/spack/repos/builtin/packages/openmc/package.py b/var/spack/repos/builtin/packages/openmc/package.py
index 60ce6f4bba..1088aeec60 100644
--- a/var/spack/repos/builtin/packages/openmc/package.py
+++ b/var/spack/repos/builtin/packages/openmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,12 +18,37 @@ class Openmc(CMakePackage):
url = "https://github.com/openmc-dev/openmc/tarball/v0.10.0"
git = "https://github.com/openmc-dev/openmc.git"
+ version('develop', branch='develop', submodules=True)
+ version('master', branch='master', submodules=True)
+ version('0.12.0', tag='v0.12.0', submodules=True)
+ version('0.11.0', sha256='19a9d8e9c3b581e9060fbd96d30f1098312d217cb5c925eb6372a5786d9175af')
version('0.10.0', sha256='47650cb45e2c326ae439208d6f137d75ad3e5c657055912d989592c6e216178f')
- version('develop')
- depends_on("hdf5+hl")
+ variant('mpi', default=False, description='Enable MPI support')
+ variant('openmp', default=True, description='Enable OpenMP support')
+ variant('optimize', default=False, description='Enable optimization flags')
+ variant('debug', default=False, description='Enable debug flags')
+
+ depends_on('git', type='build')
+ depends_on('hdf5+hl~mpi', when='~mpi')
+ depends_on('mpi', when='+mpi')
+ depends_on('hdf5+hl+mpi', when='+mpi')
def cmake_args(self):
- options = ['-DHDF5_ROOT:PATH=%s' % self.spec['hdf5'].prefix]
+ options = ['-DCMAKE_INSTALL_LIBDIR=lib'] # forcing bc sometimes goes to lib64
+
+ if '+mpi' in self.spec:
+ options += ['-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % self.spec['mpi'].mpicxx]
+
+ options += [self.define_from_variant('openmp')]
+ options += [self.define_from_variant('optimize')]
+ options += [self.define_from_variant('debug')]
+
+ if '+optimize' in self.spec:
+ self.spec.variants['build_type'].value = 'Release'
+
+ if '+debug' in self.spec:
+ self.spec.variants['build_type'].value = 'Debug'
return options
diff --git a/var/spack/repos/builtin/packages/openmm/package.py b/var/spack/repos/builtin/packages/openmm/package.py
index 2867af4538..ff545129cc 100644
--- a/var/spack/repos/builtin/packages/openmm/package.py
+++ b/var/spack/repos/builtin/packages/openmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class Openmm(CMakePackage, CudaPackage):
homepage = "http://openmm.org/"
url = "https://github.com/openmm/openmm/archive/7.4.1.tar.gz"
+ version('7.5.0', sha256='516748b4f1ae936c4d70cc6401174fc9384244c65cd3aef27bc2c53eac6d6de5')
version('7.4.1', sha256='e8102b68133e6dcf7fcf29bc76a11ea54f30af71d8a7705aec0aee957ebe3a6d')
install_targets = ['install', 'PythonInstall']
diff --git a/var/spack/repos/builtin/packages/openmolcas/package.py b/var/spack/repos/builtin/packages/openmolcas/package.py
index c8a6e2aaa0..5911bf6ac4 100644
--- a/var/spack/repos/builtin/packages/openmolcas/package.py
+++ b/var/spack/repos/builtin/packages/openmolcas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openmpi/opal_assembly_arch.patch b/var/spack/repos/builtin/packages/openmpi/opal_assembly_arch.patch
new file mode 100644
index 0000000000..4fc3112567
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openmpi/opal_assembly_arch.patch
@@ -0,0 +1,27 @@
+diff --git a/opal/include/opal/sys/gcc_builtin/atomic.h b/opal/include/opal/sys/gcc_builtin/atomic.h
+index d85ff02bd6a..a465fdae5db 100644
+--- a/opal/include/opal/sys/gcc_builtin/atomic.h
++++ b/opal/include/opal/sys/gcc_builtin/atomic.h
+@@ -13,8 +13,8 @@
+ * Copyright (c) 2011 Sandia National Laboratories. All rights reserved.
+ * Copyright (c) 2014-2017 Los Alamos National Security, LLC. All rights
+ * reserved.
+- * Copyright (c) 2016-2017 Research Organization for Information Science
+- * and Technology (RIST). All rights reserved.
++ * Copyright (c) 2016-2021 Research Organization for Information Science
++ * and Technology (RIST). All rights reserved.
+ * Copyright (c) 2018 Triad National Security, LLC. All rights
+ * reserved.
+ * $COPYRIGHT$
+@@ -61,9 +61,8 @@ static inline void opal_atomic_rmb(void)
+ {
+ #if OPAL_ASSEMBLY_ARCH == OPAL_X86_64
+ /* work around a bug in older gcc versions where ACQUIRE seems to get
+- * treated as a no-op instead of being equivalent to
+- * __asm__ __volatile__("": : :"memory") */
+- __atomic_thread_fence (__ATOMIC_SEQ_CST);
++ * treated as a no-op instead */
++ __asm__ __volatile__("": : :"memory");
+ #else
+ __atomic_thread_fence (__ATOMIC_ACQUIRE);
+ #endif
diff --git a/var/spack/repos/builtin/packages/openmpi/package.py b/var/spack/repos/builtin/packages/openmpi/package.py
index 124973bbc1..697171a02a 100644
--- a/var/spack/repos/builtin/packages/openmpi/package.py
+++ b/var/spack/repos/builtin/packages/openmpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,27 +24,31 @@ class Openmpi(AutotoolsPackage):
application developers and computer science researchers.
"""
- homepage = "http://www.open-mpi.org"
- url = "https://www.open-mpi.org/software/ompi/v4.0/downloads/openmpi-4.0.0.tar.bz2"
- list_url = "http://www.open-mpi.org/software/ompi/"
+ homepage = "https://www.open-mpi.org"
+ url = "https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.0.tar.bz2"
+ list_url = "https://www.open-mpi.org/software/ompi/"
git = "https://github.com/open-mpi/ompi.git"
- maintainers = ['hppritcha']
+ maintainers = ['hppritcha', 'naughtont3']
executables = ['^ompi_info$']
version('master', branch='master')
# Current
- version('4.0.5', sha256='c58f3863b61d944231077f344fe6b4b8fbb83f3d1bc93ab74640bf3e5acac009') # libmpi.so.40.20.5
+ version('4.1.1', sha256='e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda') # libmpi.so.40.30.1
+
+ # Still supported
+ version('4.1.0', sha256='73866fb77090819b6a8c85cb8539638d37d6877455825b74e289d647a39fd5b5') # libmpi.so.40.30.0
+ version('4.0.5', preferred=True, sha256='c58f3863b61d944231077f344fe6b4b8fbb83f3d1bc93ab74640bf3e5acac009') # libmpi.so.40.20.5
version('4.0.4', sha256='47e24eb2223fe5d24438658958a313b6b7a55bb281563542e1afc9dec4a31ac4') # libmpi.so.40.20.4
version('4.0.3', sha256='1402feced8c3847b3ab8252165b90f7d1fa28c23b6b2ca4632b6e4971267fd03') # libmpi.so.40.20.3
version('4.0.2', sha256='900bf751be72eccf06de9d186f7b1c4b5c2fa9fa66458e53b77778dffdfe4057') # libmpi.so.40.20.2
version('4.0.1', sha256='cce7b6d20522849301727f81282201d609553103ac0b09162cf28d102efb9709') # libmpi.so.40.20.1
version('4.0.0', sha256='2f0b8a36cfeb7354b45dda3c5425ef8393c9b04115570b615213faaa3f97366b') # libmpi.so.40.20.0
- # Still supported
- version('3.1.6', preferred=True, sha256='50131d982ec2a516564d74d5616383178361c2f08fdd7d1202b80bdf66a0d279') # libmpi.so.40.10.4
+ # Retired
+ version('3.1.6', sha256='50131d982ec2a516564d74d5616383178361c2f08fdd7d1202b80bdf66a0d279') # libmpi.so.40.10.4
version('3.1.5', sha256='fbf0075b4579685eec8d56d34d4d9c963e6667825548554f5bf308610af72133') # libmpi.so.40.10.4
version('3.1.4', sha256='17a69e0054db530c7dc119f75bd07d079efa147cf94bf27e590905864fe379d6') # libmpi.so.40.10.4
version('3.1.3', sha256='8be04307c00f51401d3fb9d837321781ea7c79f2a5a4a2e5d4eaedc874087ab6') # libmpi.so.40.10.3
@@ -58,7 +62,6 @@ class Openmpi(AutotoolsPackage):
version('3.0.1', sha256='663450d1ee7838b03644507e8a76edfb1fba23e601e9e0b5b2a738e54acd785d') # libmpi.so.40.00.1
version('3.0.0', sha256='f699bff21db0125d8cccfe79518b77641cd83628725a1e1ed3e45633496a82d7') # libmpi.so.40.00.0
- # Retired
version('2.1.6', sha256='98b8e1b8597bbec586a0da79fcd54a405388190247aa04d48e8c40944d4ca86e') # libmpi.so.20.10.3
version('2.1.5', sha256='b807ccab801f27c3159a5edf29051cd3331d3792648919f9c4cee48e987e7794') # libmpi.so.20.10.3
version('2.1.4', sha256='3e03695ca8bd663bc2d89eda343c92bb3d4fc79126b178f5ddcb68a8796b24e2') # libmpi.so.20.10.3
@@ -73,6 +76,7 @@ class Openmpi(AutotoolsPackage):
version('2.0.1', sha256='fed74f4ae619b7ebcc18150bb5bdb65e273e14a8c094e78a3fea0df59b9ff8ff') # libmpi.so.20.0.1
version('2.0.0', sha256='08b64cf8e3e5f50a50b4e5655f2b83b54653787bd549b72607d9312be44c18e0') # libmpi.so.20.0.0
+ # Ancient
version('1.10.7', sha256='a089ece151fec974905caa35b0a59039b227bdea4e7933069e94bee4ed0e5a90') # libmpi.so.12.0.7
version('1.10.6', sha256='65606184a084a0eda6102b01e5a36a8f02d3195d15e91eabbb63e898bd110354') # libmpi.so.12.0.6
version('1.10.5', sha256='a95fa355ed3a905c7c187bc452529a9578e2d6bae2559d8197544ab4227b759e') # libmpi.so.12.0.5
@@ -106,7 +110,6 @@ class Openmpi(AutotoolsPackage):
version('1.6.1', sha256='077240dd1ab10f0caf26931e585db73848e9815c7119b993f91d269da5901e3a') # libmpi.so.1.0.3
version('1.6', sha256='6e0d8b336543fb9ab78c97d364484923167857d30b266dfde1ccf60f356b9e0e') # libmpi.so.1.0.3
- # Ancient
version('1.5.5', sha256='660e6e49315185f88a87b6eae3d292b81774eab7b29a9b058b10eb35d892ff23') # libmpi.so.1.0.3
version('1.5.4', sha256='81126a95a51b8af4bb0ad28790f852c30d22d989713ec30ad22e9e0a79587ef6') # libmpi.so.1.0.2
version('1.5.3', sha256='70745806cdbe9b945d47d9fa058f99e072328e41e40c0ced6dd75220885c5263') # libmpi.so.1.0.1
@@ -171,7 +174,7 @@ class Openmpi(AutotoolsPackage):
patch('nag_pthread/2.0.0_2.1.1.patch', when='@2.0.0:2.1.1%nag')
patch('nag_pthread/1.10.4_1.10.999.patch', when='@1.10.4:1.10.999%nag')
- patch('nvhpc-libtool.patch', when='%nvhpc@develop')
+ patch('nvhpc-libtool.patch', when='@develop %nvhpc')
patch('nvhpc-configure.patch', when='%nvhpc')
# Fix MPI_Sizeof() in the "mpi" Fortran module for compilers that do not
@@ -186,6 +189,9 @@ class Openmpi(AutotoolsPackage):
# The second patch was applied starting version v4.0.0 and backported to
# v2.x, v3.0.x, and v3.1.x.
patch('use_mpi_tkr_sizeof/step_2.patch', when='@1.8.4:2.1.3,3:3.0.1')
+ # To fix performance regressions introduced while fixing a bug in older
+ # gcc versions on x86_64, Refs. open-mpi/ompi#8603
+ patch('opal_assembly_arch.patch', when='@4.0.0:4.1.0')
variant(
'fabrics',
@@ -247,6 +253,8 @@ class Openmpi(AutotoolsPackage):
default=False,
description='Do not remove mpirun/mpiexec when building with slurm'
)
+ # Variants to use internal packages
+ variant('internal-hwloc', default=False, description='Use internal hwloc')
provides('mpi')
provides('mpi@:2.2', when='@1.6.5')
@@ -260,18 +268,20 @@ class Openmpi(AutotoolsPackage):
depends_on('automake', type='build', when='@develop')
depends_on('libtool', type='build', when='@develop')
depends_on('m4', type='build', when='@develop')
- depends_on('perl', type='build', when='@develop')
+ depends_on('perl', type='build')
depends_on('pkgconfig', type='build')
- depends_on('hwloc@2.0:', when='@4:')
+ depends_on('libevent@2.0:', when='@4:')
+
+ depends_on('hwloc@2:', when='@4: ~internal-hwloc')
# ompi@:3.0.0 doesn't support newer hwloc releases:
# "configure: error: OMPI does not currently support hwloc v2 API"
# Future ompi releases may support it, needs to be verified.
# See #7483 for context.
- depends_on('hwloc@:1.999', when='@:3.999.9999')
+ depends_on('hwloc@:1.999', when='@:3.999.999 ~internal-hwloc')
- depends_on('hwloc +cuda', when='+cuda')
+ depends_on('hwloc +cuda', when='+cuda ~internal-hwloc')
depends_on('java', when='+java')
depends_on('sqlite', when='+sqlite3@:1.11')
depends_on('zlib', when='@3.0.0:')
@@ -297,6 +307,8 @@ class Openmpi(AutotoolsPackage):
depends_on('openpbs', when='schedulers=tm')
depends_on('slurm', when='schedulers=slurm')
+ depends_on('openssh', type='run')
+
# CUDA support was added in 1.7
conflicts('+cuda', when='@:1.6')
# PMI support was added in 1.5.5
@@ -326,7 +338,7 @@ class Openmpi(AutotoolsPackage):
# knem support was added in 1.5
conflicts('fabrics=knem', when='@:1.4')
- conflicts('schedulers=slurm ~pmi', when='@1.5.4:',
+ conflicts('schedulers=slurm ~pmi', when='@1.5.4:2.999.999',
msg='+pmi is required for openmpi(>=1.5.5) to work with SLURM.')
conflicts('schedulers=loadleveler', when='@3.0.0:',
msg='The loadleveler scheduler is not supported with '
@@ -442,15 +454,16 @@ class Openmpi(AutotoolsPackage):
# Get the appropriate compiler
match = re.search(r'\bC compiler absolute: (\S+)', output)
- compiler_spec = get_spack_compiler_spec(
- os.path.dirname(match.group(1)))
- if compiler_spec:
- variants += "%" + str(compiler_spec)
+ if match:
+ compiler_spec = get_spack_compiler_spec(
+ os.path.dirname(match.group(1)))
+ if compiler_spec:
+ variants += "%" + str(compiler_spec)
results.append(variants)
return results
def url_for_version(self, version):
- url = "http://www.open-mpi.org/software/ompi/v{0}/downloads/openmpi-{1}.tar.bz2"
+ url = "https://download.open-mpi.org/release/open-mpi/v{0}/openmpi-{1}.tar.bz2"
return url.format(version.up_to(2), version)
@property
@@ -619,7 +632,11 @@ class Openmpi(AutotoolsPackage):
# for versions older than 3.0.3,3.1.3,4.0.0
# Presumably future versions after 11/2018 should support slurm+static
if spec.satisfies('schedulers=slurm'):
- config_args.append('--with-pmi={0}'.format(spec['slurm'].prefix))
+ if spec.satisfies('+pmi'):
+ config_args.append('--with-pmi={0}'.format(
+ spec['slurm'].prefix))
+ else:
+ config_args.extend(self.with_or_without('pmi'))
if spec.satisfies('@3.1.3:') or spec.satisfies('@3.0.3'):
if '+static' in spec:
config_args.append('--enable-static')
@@ -674,8 +691,11 @@ class Openmpi(AutotoolsPackage):
if spec.satisfies('+lustre'):
lustre_opt = '--with-lustre={0}'.format(spec['lustre'].prefix)
config_args.append(lustre_opt)
+ # external libevent
+ if spec.satisfies('@4.0.0:'):
+ config_args.append('--with-libevent={0}'.format(spec['libevent'].prefix))
# Hwloc support
- if spec.satisfies('@1.5.2:'):
+ if '~internal-hwloc' in spec and spec.satisfies('@1.5.2:'):
config_args.append('--with-hwloc={0}'.format(spec['hwloc'].prefix))
# Java support
if spec.satisfies('@1.7.4:'):
@@ -737,7 +757,7 @@ class Openmpi(AutotoolsPackage):
else:
config_args.append('--without-cuda')
- if spec.satisfies('%nvhpc'):
+ if spec.satisfies('%nvhpc@:20.11'):
# Workaround compiler issues
config_args.append('CFLAGS=-O1')
@@ -929,14 +949,29 @@ class Openmpi(AutotoolsPackage):
self.run_test(exe, '--version', expected, installed=True,
purpose=purpose, skip_missing=True)
+ def _test_build_examples(self):
+ # Build the examples copied during installation and return "status"
+ reason = 'test: ensuring ability to build the examples'
+ return self.run_test('make', ['all'], [],
+ purpose=reason,
+ work_dir=join_path(self.install_test_root,
+ self.extra_install_tests))
+
+ def _test_clean_examples(self):
+ # Clean up any example build files
+ reason = 'test: ensuring copied examples cleaned up'
+ return self.run_test('make', ['clean'], [],
+ purpose=reason,
+ work_dir=join_path(self.install_test_root,
+ self.extra_install_tests))
+
def _test_examples(self):
- # First build the examples
- self.run_test('make', ['all'], [],
- purpose='test: ensuring ability to build the examples',
- work_dir=join_path(self.install_test_root,
- self.extra_install_tests))
+ # First ensure can build copied examples
+ if not self._test_build_examples():
+ self._test_clean_examples()
+ return
- # Now run those with known results
+ # Now run examples with known, simple-to-verify results
have_spml = self.spec.satisfies('@2.0.0:2.1.6')
hello_world = (['Hello, world', 'I am', '0 of', '1'], 0)
@@ -975,10 +1010,15 @@ class Openmpi(AutotoolsPackage):
}
for exe in checks:
- expected = checks[exe]
- reason = 'test: checking example {0} output'.format(exe)
- self.run_test(exe, [], expected, 0, installed=True,
- purpose=reason, skip_missing=True)
+ expected, status = checks[exe]
+ reason = 'test: checking {0} example output and status ({1})' \
+ .format(exe, status)
+ self.run_test(exe, [], expected, status, installed=False,
+ purpose=reason, skip_missing=True,
+ work_dir=join_path(self.install_test_root,
+ self.extra_install_tests))
+
+ self._test_clean_examples()
def test(self):
"""Perform smoke tests on the installed package."""
diff --git a/var/spack/repos/builtin/packages/openmx/for_aarch64.patch b/var/spack/repos/builtin/packages/openmx/for_aarch64.patch
new file mode 100644
index 0000000000..33a80bf8ab
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openmx/for_aarch64.patch
@@ -0,0 +1,11 @@
+--- spack-src/source/Krylov.c.bak 2016-03-27 15:53:28.000000000 +0900
++++ spack-src/source/Krylov.c 2021-01-28 15:31:32.660274698 +0900
+@@ -29,7 +29,7 @@
+ #ifdef nosse
+ #include "mimic_sse.h"
+ #else
+-#include <emmintrin.h>
++#include <sse2neon.h>
+ #endif
+
+ #ifdef kcomp
diff --git a/var/spack/repos/builtin/packages/openmx/package.py b/var/spack/repos/builtin/packages/openmx/package.py
index 5560820b59..f6a313c27b 100644
--- a/var/spack/repos/builtin/packages/openmx/package.py
+++ b/var/spack/repos/builtin/packages/openmx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,6 +25,9 @@ class Openmx(MakefilePackage):
depends_on('fftw')
depends_on('blas')
depends_on('lapack')
+ depends_on('sse2neon', when='target=aarch64:')
+
+ patch('for_aarch64.patch', when='@3.8 target=aarch64:')
parallel = False
diff --git a/var/spack/repos/builtin/packages/opennurbs/package.py b/var/spack/repos/builtin/packages/opennurbs/package.py
index 7b3496364f..bfe4c2316e 100644
--- a/var/spack/repos/builtin/packages/opennurbs/package.py
+++ b/var/spack/repos/builtin/packages/opennurbs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,8 +25,7 @@ class Opennurbs(Package):
# CMake installation method
def install(self, spec, prefix):
cmake_args = [
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF')
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared')
]
cmake_args.extend(std_cmake_args)
diff --git a/var/spack/repos/builtin/packages/openpa/package.py b/var/spack/repos/builtin/packages/openpa/package.py
index 7271d579e1..f159f0e5ec 100644
--- a/var/spack/repos/builtin/packages/openpa/package.py
+++ b/var/spack/repos/builtin/packages/openpa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openpbs/package.py b/var/spack/repos/builtin/packages/openpbs/package.py
index 695e5ad595..4b24a5dfe5 100644
--- a/var/spack/repos/builtin/packages/openpbs/package.py
+++ b/var/spack/repos/builtin/packages/openpbs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openpmd-api/package.py b/var/spack/repos/builtin/packages/openpmd-api/package.py
index 70cff5df46..911dbf78d1 100644
--- a/var/spack/repos/builtin/packages/openpmd-api/package.py
+++ b/var/spack/repos/builtin/packages/openpmd-api/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,23 @@ from spack import *
class OpenpmdApi(CMakePackage):
- """API for easy reading and writing of openPMD files"""
+ """C++ & Python API for Scientific I/O"""
homepage = "http://www.openPMD.org"
+ url = "https://github.com/openPMD/openPMD-api/archive/0.13.3.tar.gz"
git = "https://github.com/openPMD/openPMD-api.git"
maintainers = ['ax3l']
version('dev', branch='dev')
+ version('0.13.4', sha256='46c013be5cda670f21969675ce839315d4f5ada0406a6546a91ec3441402cf5e')
+ version('0.13.3', sha256='4b8f84bd89cd540c73ffe8c21085970453cb7f0e4f125f11a4e288433f64b58c')
+ version('0.13.2', sha256='2e5170d41bb7b2c0608ec833eee7f9adf8175b46734743f6e46dcce6f6685fb0')
+ version('0.13.1', sha256='81ff79419982eb1b0865d1736f73f950f5d4c356d3c78200ceeab7f54dc07fd7')
+ version('0.13.0', sha256='97c2e43d80ee5c5288f278bd54f0dcb40e7f48a575b278fcef9660214b779bb0') # C++14 required
+ # C++11 up until here
version('0.12.0', tag='0.12.0-alpha')
version('0.11.1', tag='0.11.1-alpha')
- version('0.11.0', tag='0.11.0-alpha')
- version('0.10.3', tag='0.10.3-alpha')
- version('0.10.2', tag='0.10.2-alpha')
- version('0.10.1', tag='0.10.1-alpha')
- version('0.10.0', tag='0.10.0-alpha')
variant('shared', default=True,
description='Build a shared version of the library')
@@ -36,7 +38,7 @@ class OpenpmdApi(CMakePackage):
variant('python', default=False,
description='Enable Python bindings')
- depends_on('cmake@3.12.0:', type='build')
+ depends_on('cmake@3.15.0:', type='build')
depends_on('mpark-variant@1.4.0:')
depends_on('catch2@2.6.1:', type='test')
depends_on('mpi@2.3:', when='+mpi') # might become MPI 3.0+
@@ -50,54 +52,45 @@ class OpenpmdApi(CMakePackage):
depends_on('adios2@2.6.0:', when='+adios2 @0.12.0:')
depends_on('adios2@2.5.0: ~mpi', when='~mpi +adios2')
depends_on('adios2@2.5.0: +mpi', when='+mpi +adios2')
- depends_on('nlohmann-json@3.7.0:')
- depends_on('py-pybind11@2.3.0:', when='+python', type='link')
+ depends_on('nlohmann-json@3.9.1:')
+ depends_on('py-pybind11@2.6.1:', when='+python', type='link')
depends_on('py-numpy@1.15.1:', when='+python', type=['test', 'run'])
depends_on('py-mpi4py@2.1.0:', when='+python +mpi', type=['test', 'run'])
- depends_on('python@3.5:', when='+python', type=['link', 'test', 'run'])
+ depends_on('python@3.6:', when='+python', type=['link', 'test', 'run'])
extends('python', when='+python')
- # Fix breaking HDF5 1.12.0 API
- # https://github.com/openPMD/openPMD-api/pull/696
- patch('hdf5-1.12.0.patch', when='@:0.11.0 +hdf5')
-
def cmake_args(self):
spec = self.spec
args = [
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
# variants
- '-DopenPMD_USE_MPI:BOOL={0}'.format(
- 'ON' if '+mpi' in spec else 'OFF'),
- '-DopenPMD_USE_HDF5:BOOL={0}'.format(
- 'ON' if '+hdf5' in spec else 'OFF'),
- '-DopenPMD_USE_ADIOS1:BOOL={0}'.format(
- 'ON' if '+adios1' in spec else 'OFF'),
- '-DopenPMD_USE_ADIOS2:BOOL={0}'.format(
- 'ON' if '+adios2' in spec else 'OFF'),
- '-DopenPMD_USE_PYTHON:BOOL={0}'.format(
- 'ON' if '+python' in spec else 'OFF'),
+ self.define_from_variant('openPMD_USE_MPI', 'mpi'),
+ self.define_from_variant('openPMD_USE_HDF5', 'hdf5'),
+ self.define_from_variant('openPMD_USE_ADIOS1', 'adios1'),
+ self.define_from_variant('openPMD_USE_ADIOS2', 'adios2'),
+ self.define_from_variant('openPMD_USE_PYTHON', 'python'),
# tests and examples
- '-DBUILD_TESTING:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
- '-DBUILD_EXAMPLES:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
+ self.define('BUILD_TESTING', self.run_tests),
+ self.define('BUILD_EXAMPLES', self.run_tests)
]
# switch internally shipped third-party libraries for spack
if spec.satisfies('+python'):
- args.append('-DopenPMD_USE_INTERNAL_PYBIND11:BOOL=OFF')
- args.append('-DPYTHON_EXECUTABLE:FILEPATH={0}'.format(
- self.spec['python'].command.path))
-
- args.extend([
- '-DopenPMD_USE_INTERNAL_JSON:BOOL=OFF',
- '-DopenPMD_USE_INTERNAL_VARIANT:BOOL=OFF'
- ])
+ py_exe_define = 'Python_EXECUTABLE' \
+ if spec.version >= Version('0.13.0') else 'PYTHON_EXECUTABLE'
+ args += [
+ self.define(py_exe_define, self.spec['python'].command.path),
+ self.define('openPMD_USE_INTERNAL_PYBIND11', False)
+ ]
+
+ args += [
+ self.define('openPMD_USE_INTERNAL_JSON', False),
+ self.define('openPMD_USE_INTERNAL_VARIANT', False)
+ ]
if self.run_tests:
- args.append('-DopenPMD_USE_INTERNAL_CATCH:BOOL=OFF')
+ args.append(self.define('openPMD_USE_INTERNAL_CATCH', False))
return args
diff --git a/var/spack/repos/builtin/packages/openrasmol/package.py b/var/spack/repos/builtin/packages/openrasmol/package.py
new file mode 100644
index 0000000000..76ff5de93e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openrasmol/package.py
@@ -0,0 +1,68 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Openrasmol(MakefilePackage):
+ """RasMol is a molecular graphics program intended for the
+ visualisation of proteins, nucleic acids and small molecules."""
+
+ homepage = "http://www.openrasmol.org/"
+ url = "https://sourceforge.net/projects/openrasmol/files/RasMol/RasMol_2.7.5/RasMol-2.7.5.2.tar.gz"
+
+ version('2.7.5.2', sha256='b975e6e69d5c6b161a81f04840945d2f220ac626245c61bcc6c56181b73a5718')
+
+ depends_on('imake', type='build')
+ depends_on('libxext', type='link')
+ depends_on('libxi', type='link')
+
+ depends_on('cbflib@0.9.2', type='link')
+ depends_on('cqrlib@1.1.2', type='link')
+ depends_on('cvector@1.0.3', type='link')
+ depends_on('neartree@3.1', type='link')
+ depends_on('xforms@1.0.91', type='link')
+
+ patch('rasmol_noqa.patch')
+ patch('rasmol_help.patch')
+
+ def edit(self, spec, prefix):
+ with working_dir('src'):
+ # Imakefile
+ bash = which('bash')
+ bash('./rasmol_build_options.sh')
+ # host.def
+ with open('host.def', 'w') as f:
+ f.write('#ifdef AfterVendorCF\n')
+ f.write('#define CcCmd {0}\n'.format(spack_cc))
+ f.write('#endif\n')
+
+ def setup_build_environment(self, env):
+ env.set('XFORMSLIB_DIR', self.spec['xforms'].prefix)
+ env.set('CBFLIB_DIR', self.spec['cbflib'].prefix)
+ env.set('CQRLIB_DIR', self.spec['cqrlib'].prefix)
+ env.set('CVECTOR_DIR', self.spec['cvector'].prefix)
+ env.set('NEARTREE_DIR', self.spec['neartree'].prefix)
+
+ def build(self, spec, prefix):
+ with working_dir('src'):
+ bash = which('bash')
+ bash('./build_all.sh')
+
+ def install(self, spec, prefix):
+ install_tree('./data', prefix.sample)
+ install_tree('./doc', prefix.doc)
+ with working_dir('src'):
+ bash = which('bash')
+ bash('./rasmol_install.sh', '--prefix={0}'.format(prefix))
+
+ def test(self):
+ testdir = self.test_suite.current_test_data_dir
+ opts = []
+ opts.append('-insecure')
+ opts.append('-script')
+ opts.append(join_path(testdir, 'test.rsc'))
+ opts.append(join_path(self.prefix.sample, '1crn.pdb'))
+ self.run_test('rasmol', options=opts)
diff --git a/var/spack/repos/builtin/packages/openrasmol/rasmol_help.patch b/var/spack/repos/builtin/packages/openrasmol/rasmol_help.patch
new file mode 100644
index 0000000000..5ced3123be
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openrasmol/rasmol_help.patch
@@ -0,0 +1,22 @@
+--- a/src/command.c 2021-02-04 01:59:48.968985028 +0900
++++ b/src/command.c 2021-02-04 02:02:15.548984240 +0900
+@@ -118,6 +118,10 @@
+ #include <stdio.h>
+ #include <time.h>
+
++#include <limits.h>
++#ifndef PATH_MAX
++#define PATH_MAX 1024
++#endif
+
+ #if !defined(IBMPC) && !defined(VMS) && !defined(APPLEMAC)
+ #include <pwd.h>
+@@ -229,7 +233,7 @@
+
+ #define HelpPool 16
+ static char *HelpFileName;
+-static char HelpFileBuf[80];
++static char HelpFileBuf[PATH_MAX];
+ static HlpEntry __far *FreeInfo;
+ static HlpEntry __far *HelpInfo;
+
diff --git a/var/spack/repos/builtin/packages/openrasmol/rasmol_noqa.patch b/var/spack/repos/builtin/packages/openrasmol/rasmol_noqa.patch
new file mode 100644
index 0000000000..04c559b5cf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openrasmol/rasmol_noqa.patch
@@ -0,0 +1,26 @@
+--- a/src/rasmol_install.sh 2021-01-23 02:35:53.420843463 +0900
++++ b/src/rasmol_install.sh 2021-01-23 02:46:42.576839974 +0900
+@@ -226,11 +226,6 @@
+ fi
+ fi
+
+-echo -n "Install rasmol into \"$RASMOLPATH\"? [y/N] ";
+-read ok
+-if [ "$ok" != "y" ] && [ "$ok" != "Y" ] ; then exit 1 ;
+-fi
+-
+ savecurdir=`pwd` ;
+ cd $RASMOLPATH ;
+ rasmolpath=`pwd` ;
+@@ -245,11 +240,6 @@
+
+ fi
+
+-echo -n "Install rasmol program wrapper in \"$bindest/rasmol\"? [y/N] ";
+-read ok
+-if [ "$ok" != "y" ] && [ "$ok" != "Y" ]; then unset bindest ;
+-fi
+-
+
+ if ! [ -d $bindest ] ; then
+ mkdir -p $bindest ;
diff --git a/var/spack/repos/builtin/packages/openrasmol/test/test.rsc b/var/spack/repos/builtin/packages/openrasmol/test/test.rsc
new file mode 100644
index 0000000000..654f542115
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openrasmol/test/test.rsc
@@ -0,0 +1,3 @@
+wireframe true
+write ps test.ps
+quit
diff --git a/var/spack/repos/builtin/packages/openresty/package.py b/var/spack/repos/builtin/packages/openresty/package.py
index 23708b280d..591b6c902b 100644
--- a/var/spack/repos/builtin/packages/openresty/package.py
+++ b/var/spack/repos/builtin/packages/openresty/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openscenegraph/package.py b/var/spack/repos/builtin/packages/openscenegraph/package.py
index e22d7fc625..87747b6bc7 100644
--- a/var/spack/repos/builtin/packages/openscenegraph/package.py
+++ b/var/spack/repos/builtin/packages/openscenegraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,7 +27,7 @@ class Openscenegraph(CMakePackage):
depends_on('cmake@2.8.7:', type='build')
depends_on('gl')
depends_on('qt+opengl', when='@:3.5.4') # Qt windowing system was moved into separate osgQt project
- depends_on('qt@4:', when='@3.2:')
+ depends_on('qt@4:', when='@3.2:3.5.4')
depends_on('qt@:4', when='@:3.1')
depends_on('libxinerama')
depends_on('libxrandr')
diff --git a/var/spack/repos/builtin/packages/openslide/package.py b/var/spack/repos/builtin/packages/openslide/package.py
index c41da2461b..af1b19e6a3 100644
--- a/var/spack/repos/builtin/packages/openslide/package.py
+++ b/var/spack/repos/builtin/packages/openslide/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openslp/package.py b/var/spack/repos/builtin/packages/openslp/package.py
index 5957777b5f..5a7d595f99 100644
--- a/var/spack/repos/builtin/packages/openslp/package.py
+++ b/var/spack/repos/builtin/packages/openslp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openspeedshop-utils/package.py b/var/spack/repos/builtin/packages/openspeedshop-utils/package.py
index 6b3645148e..565d8538f7 100644
--- a/var/spack/repos/builtin/packages/openspeedshop-utils/package.py
+++ b/var/spack/repos/builtin/packages/openspeedshop-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,33 +13,30 @@ import os.path
class OpenspeedshopUtils(CMakePackage):
- """OpenSpeedShop is a community effort by The Krell Institute with
- current direct funding from DOEs NNSA. It builds on top of a
- broad list of community infrastructures, most notably Dyninst
- and MRNet from UW, libmonitor from Rice, and PAPI from UTK.
- OpenSpeedShop is an open source multi platform Linux performance
- tool which is targeted to support performance analysis of
- applications running on both single node and large scale IA64,
- IA32, EM64T, AMD64, PPC, ARM, Power8, Intel Phi, Blue Gene and
- Cray platforms. OpenSpeedShop development is hosted by the Krell
- Institute. The infrastructure and base components of OpenSpeedShop
+ """OpenSpeedShop is a community effort led by Trenza, Inc.
+ It builds on top of a broad list of community infrastructures,
+ most notably Dyninst and MRNet from UW, libmonitor from Rice,
+ and PAPI from UTK. OpenSpeedShop is an open source multi platform
+ Linux performance tool which is targeted to support performance
+ analysis of applications running on both single node and large
+ scale IA64, IA32, EM64T, AMD64, PPC, ARM, Power8, Intel Phi, Blue
+ Gene and Cray platforms. OpenSpeedShop development is hosted by
+ Trenza Inc.. The infrastructure and base components of OpenSpeedShop
are released as open source code primarily under LGPL.
openspeedshop-utils is a package that does not have the
qt3 gui. It was created to avoid a conflict between
openspeedshop and cbtf-argonavis-gui based on the fact
- that spack will not allow a qt3 and qt4/qt5 dependency in a packages
- dependency tree.
+ that spack will not allow a qt3 and qt4/qt5 dependency in a
+ packages dependency tree.
"""
homepage = "http://www.openspeedshop.org"
git = "https://github.com/OpenSpeedShop/openspeedshop.git"
version('develop', branch='master')
+ version('2.4.2.1', branch='2.4.2.1')
+ version('2.4.2', branch='2.4.2')
version('2.4.1', branch='2.4.1')
- version('2.4.0', branch='2.4.0')
- version('2.3.1.5', branch='2.3.1.5')
- version('2.3.1.4', branch='2.3.1.4')
- version('2.3.1.3', branch='2.3.1.3')
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
@@ -51,8 +48,9 @@ class OpenspeedshopUtils(CMakePackage):
variant('cuda', default=False,
description="build with cuda packages included.")
- variant('build_type', default='None', values=('None',),
- description='CMake build type')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo'))
# MPI variants
variant('openmpi', default=False,
@@ -83,9 +81,9 @@ class OpenspeedshopUtils(CMakePackage):
depends_on("flex@2.6.1", type='build')
# For binutils
- depends_on("binutils", type='build')
+ depends_on("binutils+plugins~gold@2.32", type='build')
- depends_on("elf", type="link")
+ depends_on("elfutils", type="link")
depends_on("libdwarf")
depends_on("sqlite")
@@ -94,7 +92,7 @@ class OpenspeedshopUtils(CMakePackage):
depends_on("boost@1.66.0:1.69.0")
depends_on("dyninst@develop", when='@develop')
- depends_on("dyninst@10:", when='@2.3.1.3:9999')
+ depends_on("dyninst@10:", when='@2.4.0:9999')
depends_on("python@2.7.14:2.7.99", type=('build', 'run'))
@@ -102,44 +100,44 @@ class OpenspeedshopUtils(CMakePackage):
# Dependencies for the openspeedshop cbtf packages.
depends_on("cbtf@develop", when='@develop', type=('build', 'link', 'run'))
- depends_on("cbtf@1.9.1.0:9999", when='@2.3.1.3:9999', type=('build', 'link', 'run'))
+ depends_on("cbtf@1.9.3:9999", when='@2.4.0:9999', type=('build', 'link', 'run'))
depends_on("cbtf-krell@develop", when='@develop', type=('build', 'link', 'run'))
- depends_on("cbtf-krell@1.9.1.0:9999", when='@2.3.1.3:9999', type=('build', 'link', 'run'))
+ depends_on("cbtf-krell@1.9.3:9999", when='@2.4.0:9999', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+crayfe', when='@develop+crayfe', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+crayfe', when='@2.3.1.3:9999+crayfe', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+crayfe', when='@2.4.0:9999+crayfe', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+cti', when='@develop+cti', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+cti', when='@2.3.1.3:9999+cti', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+cti', when='@2.4.0:9999+cti', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mpich', when='@develop+mpich', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mpich', when='@2.3.1.3:9999+mpich', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mpich', when='@2.4.0:9999+mpich', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mpich2', when='@develop+mpich2', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mpich2', when='@2.3.1.3:9999+mpich2', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mpich2', when='@2.4.0:9999+mpich2', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mpt', when='@develop+mpt', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mpt', when='@2.3.1.3:9999+mpt', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mpt', when='@2.4.0:9999+mpt', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mvapich', when='@develop+mvapich', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mvapich', when='@2.3.1.3:9999+mvapich', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mvapich', when='@2.4.0:9999+mvapich', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mvapich2', when='@develop+mvapich2', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mvapich2', when='@2.3.1.3:9999+mvapich2', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mvapich2', when='@2.4.0:9999+mvapich2', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+openmpi', when='@develop+openmpi', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+openmpi', when='@2.3.1.3:9999+openmpi', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+openmpi', when='@2.4.0:9999+openmpi', type=('build', 'link', 'run'))
depends_on("cbtf-argonavis@develop", when='@develop+cuda', type=('build', 'link', 'run'))
- depends_on("cbtf-argonavis@1.9.1.0:9999", when='@2.3.1.3:9999+cuda', type=('build', 'link', 'run'))
+ depends_on("cbtf-argonavis@1.9.3:9999", when='@2.4.0:9999+cuda', type=('build', 'link', 'run'))
# For MRNet
depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti', type=('build', 'link', 'run'))
depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop', type=('build', 'link', 'run'))
- depends_on("mrnet@5.0.1-3:+cti", when='@2.3.1.3:9999+cti', type=('build', 'link', 'run'))
- depends_on("mrnet@5.0.1-3:+lwthreads", when='@2.3.1.3:9999', type=('build', 'link', 'run'))
+ depends_on("mrnet@5.0.1-3:+cti", when='@2.4.0:9999+cti', type=('build', 'link', 'run'))
+ depends_on("mrnet@5.0.1-3:+lwthreads", when='@2.4.0:9999', type=('build', 'link', 'run'))
patch('arm.patch', when='target=aarch64:')
parallel = False
@@ -162,7 +160,7 @@ class OpenspeedshopUtils(CMakePackage):
# Equivalent to install-tool cmake arg:
# '-DCBTF_KRELL_CN_RUNTIME_DIR=%s'
- # % <base dir>/cbtf_v2.3.1.release/compute)
+ # % <base dir>/cbtf_v2.4.0elease/compute)
cray_login_node_options.append('-DCBTF_KRELL_CN_RUNTIME_DIR=%s'
% be_ck.prefix)
cray_login_node_options.append('-DRUNTIME_PLATFORM=%s'
@@ -174,7 +172,7 @@ class OpenspeedshopUtils(CMakePackage):
# Appends base options to cmake_args
spec = self.spec
- compile_flags = "-O2 -g"
+ compile_flags = "-O2 -g -Wall"
cmake_args = []
@@ -227,7 +225,7 @@ class OpenspeedshopUtils(CMakePackage):
base_options = []
base_options.append('-DBINUTILS_DIR=%s' % spec['binutils'].prefix)
- base_options.append('-DLIBELF_DIR=%s' % spec['elf'].prefix)
+ base_options.append('-DLIBELF_DIR=%s' % spec['elfutils'].prefix)
base_options.append('-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix)
base_options.append('-DPYTHON_EXECUTABLE=%s' % python_exe)
base_options.append('-DPYTHON_INCLUDE_DIR=%s' % python_include)
diff --git a/var/spack/repos/builtin/packages/openspeedshop/package.py b/var/spack/repos/builtin/packages/openspeedshop/package.py
index adb1d59ca0..144de35d2d 100644
--- a/var/spack/repos/builtin/packages/openspeedshop/package.py
+++ b/var/spack/repos/builtin/packages/openspeedshop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,16 +10,15 @@ import os
class Openspeedshop(CMakePackage):
- """OpenSpeedShop is a community effort by The Krell Institute with
- current direct funding from DOEs NNSA. It builds on top of a
- broad list of community infrastructures, most notably Dyninst
- and MRNet from UW, libmonitor from Rice, and PAPI from UTK.
- OpenSpeedShop is an open source multi platform Linux performance
- tool which is targeted to support performance analysis of
- applications running on both single node and large scale IA64,
- IA32, EM64T, AMD64, PPC, ARM, Power8, Intel Phi, Blue Gene and
- Cray platforms. OpenSpeedShop development is hosted by the Krell
- Institute. The infrastructure and base components of OpenSpeedShop
+ """OpenSpeedShop is a community effort led by Trenza, Inc.
+ It builds on top of a broad list of community infrastructures,
+ most notably Dyninst and MRNet from UW, libmonitor from Rice,
+ and PAPI from UTK. OpenSpeedShop is an open source multi platform
+ Linux performance tool which is targeted to support performance
+ analysis of applications running on both single node and large
+ scale IA64, IA32, EM64T, AMD64, PPC, ARM, Power8, Intel Phi, Blue
+ Gene and Cray platforms. OpenSpeedShop development is hosted by
+ Trenza Inc.. The infrastructure and base components of OpenSpeedShop
are released as open source code primarily under LGPL.
"""
@@ -27,11 +26,9 @@ class Openspeedshop(CMakePackage):
git = "https://github.com/OpenSpeedShop/openspeedshop.git"
version('develop', branch='master')
+ version('2.4.2.1', branch='2.4.2.1')
+ version('2.4.2', branch='2.4.2')
version('2.4.1', branch='2.4.1')
- version('2.4.0', branch='2.4.0')
- version('2.3.1.5', branch='2.3.1.5')
- version('2.3.1.4', branch='2.3.1.4')
- version('2.3.1.3', branch='2.3.1.3')
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
@@ -43,11 +40,12 @@ class Openspeedshop(CMakePackage):
variant('cuda', default=False,
description="build with cuda packages included.")
- variant('gui', default='qt3', values=('none', 'qt3', 'qt4'),
+ variant('gui', default='none', values=('none', 'qt3', 'qt4'),
description='Build or not build a GUI of choice')
- variant('build_type', default='None', values=('None',),
- description='CMake build type')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo'))
# MPI variants
variant('openmpi', default=False,
@@ -78,19 +76,18 @@ class Openspeedshop(CMakePackage):
depends_on("flex@2.6.1", type='build')
# For binutils
- depends_on("binutils")
+ depends_on("binutils+plugins~gold@2.32")
- depends_on("elf", type="link")
+ depends_on("elfutils", type="link")
depends_on("libdwarf")
depends_on("sqlite")
# For boost
- # depends_on("boost@1.66.0:")
- depends_on("boost@1.66.0:1.69.0")
+ depends_on("boost@1.70.0:")
depends_on("dyninst@develop", when='@develop')
- depends_on("dyninst@10:", when='@2.3.1.3:9999')
+ depends_on("dyninst@10:", when='@2.4.0:9999')
depends_on("python@2.7.14:2.7.99", type=('build', 'run'))
@@ -100,44 +97,44 @@ class Openspeedshop(CMakePackage):
# Dependencies for the openspeedshop cbtf packages.
depends_on("cbtf@develop", when='@develop', type=('build', 'link', 'run'))
- depends_on("cbtf@1.9.1.0:9999", when='@2.3.1.3:9999', type=('build', 'link', 'run'))
+ depends_on("cbtf@1.9.3:9999", when='@2.4.0:9999', type=('build', 'link', 'run'))
depends_on("cbtf-krell@develop", when='@develop', type=('build', 'link', 'run'))
- depends_on("cbtf-krell@1.9.1.0:9999", when='@2.3.1.3:9999', type=('build', 'link', 'run'))
+ depends_on("cbtf-krell@1.9.3:9999", when='@2.4.0:9999', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+crayfe', when='@develop+crayfe', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+crayfe', when='@2.3.1.3:9999+crayfe', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+crayfe', when='@2.4.0:9999+crayfe', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+cti', when='@develop+cti', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+cti', when='@2.3.1.3:9999+cti', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+cti', when='@2.4.0:9999+cti', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mpich', when='@develop+mpich', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mpich', when='@2.3.1.3:9999+mpich', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mpich', when='@2.4.0:9999+mpich', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mpich2', when='@develop+mpich2', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mpich2', when='@2.3.1.3:9999+mpich2', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mpich2', when='@2.4.0:9999+mpich2', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mpt', when='@develop+mpt', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mpt', when='@2.3.1.3:9999+mpt', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mpt', when='@2.4.0:9999+mpt', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mvapich', when='@develop+mvapich', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mvapich', when='@2.3.1.3:9999+mvapich', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mvapich', when='@2.4.0:9999+mvapich', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+mvapich2', when='@develop+mvapich2', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+mvapich2', when='@2.3.1.3:9999+mvapich2', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+mvapich2', when='@2.4.0:9999+mvapich2', type=('build', 'link', 'run'))
depends_on('cbtf-krell@develop+openmpi', when='@develop+openmpi', type=('build', 'link', 'run'))
- depends_on('cbtf-krell@1.9.1.0:9999+openmpi', when='@2.3.1.3:9999+openmpi', type=('build', 'link', 'run'))
+ depends_on('cbtf-krell@1.9.3:9999+openmpi', when='@2.4.0:9999+openmpi', type=('build', 'link', 'run'))
depends_on("cbtf-argonavis@develop", when='@develop+cuda', type=('build', 'link', 'run'))
- depends_on("cbtf-argonavis@1.9.1.0:9999", when='@2.3.1.3:9999+cuda', type=('build', 'link', 'run'))
+ depends_on("cbtf-argonavis@1.9.3:9999", when='@2.4.0:9999+cuda', type=('build', 'link', 'run'))
# For MRNet
depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti', type=('build', 'link', 'run'))
depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop', type=('build', 'link', 'run'))
- depends_on("mrnet@5.0.1-3:+cti", when='@2.3.1.3:9999+cti', type=('build', 'link', 'run'))
- depends_on("mrnet@5.0.1-3:+lwthreads", when='@2.3.1.3:9999', type=('build', 'link', 'run'))
+ depends_on("mrnet@5.0.1-3:+cti", when='@2.4.0:9999+cti', type=('build', 'link', 'run'))
+ depends_on("mrnet@5.0.1-3:+lwthreads", when='@2.4.0:9999', type=('build', 'link', 'run'))
patch('arm.patch', when='target=aarch64:')
parallel = False
@@ -161,7 +158,7 @@ class Openspeedshop(CMakePackage):
# Equivalent to install-tool cmake arg:
# '-DCBTF_KRELL_CN_RUNTIME_DIR=%s'
- # % <base dir>/cbtf_v2.3.1.release/compute)
+ # % <base dir>/cbtf_v2.4.0.release/compute)
cray_login_node_options.append('-DCBTF_KRELL_CN_RUNTIME_DIR=%s'
% be_ck.prefix)
cray_login_node_options.append('-DRUNTIME_PLATFORM=%s'
@@ -173,7 +170,7 @@ class Openspeedshop(CMakePackage):
spec = self.spec
- compile_flags = "-O2 -g"
+ compile_flags = "-O2 -g -Wall"
cmake_args = []
@@ -186,10 +183,15 @@ class Openspeedshop(CMakePackage):
cmake_args.extend(
['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
'-DCMAKE_C_FLAGS=%s' % compile_flags,
- '-DINSTRUMENTOR=%s' % instrumentor_setting,
- '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
+
+ if spec.satisfies('+cuda'):
+ cmake_args.extend(
+ ['-DCBTF_ARGONAVIS_DIR=%s'
+ % spec['cbtf-argonavis'].prefix])
else:
@@ -198,12 +200,12 @@ class Openspeedshop(CMakePackage):
guitype = self.spec.variants['gui'].value
cmake_args.extend(
['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags,
- '-DINSTRUMENTOR=%s' % instrumentor_setting,
- '-DSQLITE3_DIR=%s' % spec['sqlite'].prefix,
- '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DSQLITE3_DIR=%s' % spec['sqlite'].prefix,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
if guitype == 'none':
cmake_args.extend(
@@ -216,6 +218,11 @@ class Openspeedshop(CMakePackage):
['-DQTLIB_DIR=%s'
% spec['qt'].prefix])
+ if spec.satisfies('+cuda'):
+ cmake_args.extend(
+ ['-DCBTF_ARGONAVIS_DIR=%s'
+ % spec['cbtf-argonavis'].prefix])
+
if spec.satisfies('+crayfe'):
# We need to build target/compute node
# components/libraries first then pass
@@ -232,17 +239,18 @@ class Openspeedshop(CMakePackage):
python_exe = spec['python'].command.path
python_library = spec['python'].libs[0]
python_include = spec['python'].headers.directories[0]
+ true_value = 'TRUE'
base_options = []
base_options.append('-DBINUTILS_DIR=%s' % spec['binutils'].prefix)
- base_options.append('-DLIBELF_DIR=%s' % spec['elf'].prefix)
+ base_options.append('-DLIBELF_DIR=%s' % spec['elfutils'].prefix)
base_options.append('-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix)
base_options.append('-DPYTHON_EXECUTABLE=%s' % python_exe)
base_options.append('-DPYTHON_INCLUDE_DIR=%s' % python_include)
base_options.append('-DPYTHON_LIBRARY=%s' % python_library)
- base_options.append('-DBoost_NO_SYSTEM_PATHS=TRUE')
- base_options.append('-DBoost_NO_BOOST_CMAKE=TRUE')
+ base_options.append('-DBoost_NO_SYSTEM_PATHS=%s' % true_value)
+ base_options.append('-DBoost_NO_BOOST_CMAKE=%s' % true_value)
base_options.append('-DBOOST_ROOT=%s' % spec['boost'].prefix)
base_options.append('-DBoost_DIR=%s' % spec['boost'].prefix)
base_options.append('-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib)
@@ -298,6 +306,7 @@ class Openspeedshop(CMakePackage):
lib_dir = self.prefix.lib64
else:
lib_dir = self.prefix.lib
+
plugin_path = '/openspeedshop'
oss_plugin_path = lib_dir + plugin_path
env.set('OPENSS_PLUGIN_PATH', oss_plugin_path)
diff --git a/var/spack/repos/builtin/packages/openssh/package.py b/var/spack/repos/builtin/packages/openssh/package.py
index 41542691fc..af049c8396 100644
--- a/var/spack/repos/builtin/packages/openssh/package.py
+++ b/var/spack/repos/builtin/packages/openssh/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import re
class Openssh(AutotoolsPackage):
@@ -18,21 +19,22 @@ class Openssh(AutotoolsPackage):
homepage = "https://www.openssh.com/"
url = "https://mirrors.sonic.net/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz"
- version('8.4p1', sha256='5a01d22e407eb1c05ba8a8f7c654d388a13e9f226e4ed33bd38748dafa1d2b24')
- version('8.3p1', sha256='f2befbe0472fe7eb75d23340eb17531cb6b3aac24075e2066b41f814e12387b2')
- version('8.1p1', sha256='02f5dbef3835d0753556f973cd57b4c19b6b1f6cd24c03445e23ac77ca1b93ff')
- version('7.9p1', sha256='6b4b3ba2253d84ed3771c8050728d597c91cfce898713beb7b64a305b6f11aad')
- version('7.6p1', sha256='a323caeeddfe145baaa0db16e98d784b1fbc7dd436a6bf1f479dfd5cd1d21723')
- version('7.5p1', sha256='9846e3c5fab9f0547400b4d2c017992f914222b3fd1f8eee6c7dc6bc5e59f9f0')
- version('7.4p1', sha256='1b1fc4a14e2024293181924ed24872e6f2e06293f3e8926a376b8aec481f19d1')
- version('7.3p1', sha256='3ffb989a6dcaa69594c3b550d4855a5a2e1718ccdde7f5e36387b424220fbecc')
- version('7.2p2', sha256='a72781d1a043876a224ff1b0032daa4094d87565a68528759c1c2cab5482548c')
- version('7.1p2', sha256='dd75f024dcf21e06a0d6421d582690bf987a1f6323e32ad6619392f3bfde6bbd')
- version('7.0p1', sha256='fd5932493a19f4c81153d812ee4e042b49bbd3b759ab3d9344abecc2bc1485e5')
- version('6.9p1', sha256='6e074df538f357d440be6cf93dc581a21f22d39e236f217fcd8eacbb6c896cfe')
- version('6.8p1', sha256='3ff64ce73ee124480b5bf767b9830d7d3c03bbcb6abe716b78f0192c37ce160e')
- version('6.7p1', sha256='b2f8394eae858dabbdef7dac10b99aec00c95462753e80342e530bbb6f725507')
- version('6.6p1', sha256='48c1f0664b4534875038004cc4f3555b8329c2a81c1df48db5c517800de203bb')
+ version('8.5p1', sha256='f52f3f41d429aa9918e38cf200af225ccdd8e66f052da572870c89737646ec25')
+ version('8.4p1', sha256='5a01d22e407eb1c05ba8a8f7c654d388a13e9f226e4ed33bd38748dafa1d2b24')
+ version('8.3p1', sha256='f2befbe0472fe7eb75d23340eb17531cb6b3aac24075e2066b41f814e12387b2')
+ version('8.1p1', sha256='02f5dbef3835d0753556f973cd57b4c19b6b1f6cd24c03445e23ac77ca1b93ff')
+ version('7.9p1', sha256='6b4b3ba2253d84ed3771c8050728d597c91cfce898713beb7b64a305b6f11aad')
+ version('7.6p1', sha256='a323caeeddfe145baaa0db16e98d784b1fbc7dd436a6bf1f479dfd5cd1d21723')
+ version('7.5p1', sha256='9846e3c5fab9f0547400b4d2c017992f914222b3fd1f8eee6c7dc6bc5e59f9f0')
+ version('7.4p1', sha256='1b1fc4a14e2024293181924ed24872e6f2e06293f3e8926a376b8aec481f19d1')
+ version('7.3p1', sha256='3ffb989a6dcaa69594c3b550d4855a5a2e1718ccdde7f5e36387b424220fbecc')
+ version('7.2p2', sha256='a72781d1a043876a224ff1b0032daa4094d87565a68528759c1c2cab5482548c')
+ version('7.1p2', sha256='dd75f024dcf21e06a0d6421d582690bf987a1f6323e32ad6619392f3bfde6bbd')
+ version('7.0p1', sha256='fd5932493a19f4c81153d812ee4e042b49bbd3b759ab3d9344abecc2bc1485e5')
+ version('6.9p1', sha256='6e074df538f357d440be6cf93dc581a21f22d39e236f217fcd8eacbb6c896cfe')
+ version('6.8p1', sha256='3ff64ce73ee124480b5bf767b9830d7d3c03bbcb6abe716b78f0192c37ce160e')
+ version('6.7p1', sha256='b2f8394eae858dabbdef7dac10b99aec00c95462753e80342e530bbb6f725507')
+ version('6.6p1', sha256='48c1f0664b4534875038004cc4f3555b8329c2a81c1df48db5c517800de203bb')
depends_on('openssl@:1.0', when='@:7.7p1')
depends_on('openssl')
@@ -40,6 +42,16 @@ class Openssh(AutotoolsPackage):
depends_on('ncurses')
depends_on('zlib')
+ # Note: some server apps have "ssh" in the name, so require the exact
+ # command 'ssh'
+ executables = ['^ssh$', '^rsh$']
+
+ @classmethod
+ def determine_version(cls, exe):
+ output = Executable(exe)('-V', output=str, error=str).rstrip()
+ match = re.search(r'OpenSSH_([^, ]+)', output)
+ return match.group(1) if match else None
+
def configure_args(self):
# OpenSSH's privilege separation path defaults to /var/empty. At
# least newer versions want to create the directory during the
diff --git a/var/spack/repos/builtin/packages/openssl/package.py b/var/spack/repos/builtin/packages/openssl/package.py
index 3e6c6b4f7e..11c74c9b7f 100644
--- a/var/spack/repos/builtin/packages/openssl/package.py
+++ b/var/spack/repos/builtin/packages/openssl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,52 +28,56 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
# The latest stable version is the 1.1.1 series. This is also our Long Term
# Support (LTS) version, supported until 11th September 2023.
- version('1.1.1h', sha256='5c9ca8774bd7b03e5784f26ae9e9e6d749c9da2438545077e6b3d755a06595d9')
- version('1.1.1g', sha256='ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46')
- version('1.1.1f', sha256='186c6bfe6ecfba7a5b48c47f8a1673d0f3b0e5ba2e25602dd23b629975da3f35')
- version('1.1.1e', sha256='694f61ac11cb51c9bf73f54e771ff6022b0327a43bbdfa1b2f19de1662a6dcbe')
- version('1.1.1d', sha256='1e3a91bc1f9dfce01af26026f856e064eab4c8ee0a8f457b5ae30b40b8b711f2')
- version('1.1.1c', sha256='f6fb3079ad15076154eda9413fed42877d668e7069d9b87396d0804fdb3f4c90')
- version('1.1.1b', sha256='5c557b023230413dfb0756f3137a13e6d726838ccd1430888ad15bfb2b43ea4b')
- version('1.1.1a', sha256='fc20130f8b7cbd2fb918b2f14e2f429e109c31ddd0fb38fc5d71d9ffed3f9f41')
- version('1.1.1', sha256='2836875a0f89c03d0fdf483941512613a50cfb421d6fd94b9f41d7279d586a3d')
+ version('1.1.1k', sha256='892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5')
+ version('1.1.1j', sha256='aaf2fcb575cdf6491b98ab4829abf78a3dec8402b8b81efc8f23c00d443981bf', deprecated=True)
+ version('1.1.1i', sha256='e8be6a35fe41d10603c3cc635e93289ed00bf34b79671a3a4de64fcee00d5242', deprecated=True)
+ version('1.1.1h', sha256='5c9ca8774bd7b03e5784f26ae9e9e6d749c9da2438545077e6b3d755a06595d9', deprecated=True)
+ version('1.1.1g', sha256='ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46', deprecated=True)
+ version('1.1.1f', sha256='186c6bfe6ecfba7a5b48c47f8a1673d0f3b0e5ba2e25602dd23b629975da3f35', deprecated=True)
+ version('1.1.1e', sha256='694f61ac11cb51c9bf73f54e771ff6022b0327a43bbdfa1b2f19de1662a6dcbe', deprecated=True)
+ version('1.1.1d', sha256='1e3a91bc1f9dfce01af26026f856e064eab4c8ee0a8f457b5ae30b40b8b711f2', deprecated=True)
+ version('1.1.1c', sha256='f6fb3079ad15076154eda9413fed42877d668e7069d9b87396d0804fdb3f4c90', deprecated=True)
+ version('1.1.1b', sha256='5c557b023230413dfb0756f3137a13e6d726838ccd1430888ad15bfb2b43ea4b', deprecated=True)
+ version('1.1.1a', sha256='fc20130f8b7cbd2fb918b2f14e2f429e109c31ddd0fb38fc5d71d9ffed3f9f41', deprecated=True)
+ version('1.1.1', sha256='2836875a0f89c03d0fdf483941512613a50cfb421d6fd94b9f41d7279d586a3d', deprecated=True)
# The 1.1.0 series is out of support and should not be used.
- version('1.1.0l', sha256='74a2f756c64fd7386a29184dc0344f4831192d61dc2481a93a4c5dd727f41148')
- version('1.1.0k', sha256='efa4965f4f773574d6cbda1cf874dbbe455ab1c0d4f906115f867d30444470b1')
- version('1.1.0j', sha256='31bec6c203ce1a8e93d5994f4ed304c63ccf07676118b6634edded12ad1b3246')
- version('1.1.0i', sha256='ebbfc844a8c8cc0ea5dc10b86c9ce97f401837f3fa08c17b2cdadc118253cf99')
- version('1.1.0g', sha256='de4d501267da39310905cb6dc8c6121f7a2cad45a7707f76df828fe1b85073af')
- version('1.1.0e', sha256='57be8618979d80c910728cfc99369bf97b2a1abd8f366ab6ebdee8975ad3874c')
- version('1.1.0d', sha256='7d5ebb9e89756545c156ff9c13cf2aa6214193b010a468a3bc789c3c28fe60df')
- version('1.1.0c', sha256='fc436441a2e05752d31b4e46115eb89709a28aef96d4fe786abe92409b2fd6f5')
+ version('1.1.0l', sha256='74a2f756c64fd7386a29184dc0344f4831192d61dc2481a93a4c5dd727f41148', deprecated=True)
+ version('1.1.0k', sha256='efa4965f4f773574d6cbda1cf874dbbe455ab1c0d4f906115f867d30444470b1', deprecated=True)
+ version('1.1.0j', sha256='31bec6c203ce1a8e93d5994f4ed304c63ccf07676118b6634edded12ad1b3246', deprecated=True)
+ version('1.1.0i', sha256='ebbfc844a8c8cc0ea5dc10b86c9ce97f401837f3fa08c17b2cdadc118253cf99', deprecated=True)
+ version('1.1.0g', sha256='de4d501267da39310905cb6dc8c6121f7a2cad45a7707f76df828fe1b85073af', deprecated=True)
+ version('1.1.0e', sha256='57be8618979d80c910728cfc99369bf97b2a1abd8f366ab6ebdee8975ad3874c', deprecated=True)
+ version('1.1.0d', sha256='7d5ebb9e89756545c156ff9c13cf2aa6214193b010a468a3bc789c3c28fe60df', deprecated=True)
+ version('1.1.0c', sha256='fc436441a2e05752d31b4e46115eb89709a28aef96d4fe786abe92409b2fd6f5', deprecated=True)
# The 1.0.2 series is out of support and should not be used.
- version('1.0.2u', sha256='ecd0c6ffb493dd06707d38b14bb4d8c2288bb7033735606569d8f90f89669d16')
- version('1.0.2t', sha256='14cb464efe7ac6b54799b34456bd69558a749a4931ecfd9cf9f71d7881cac7bc')
- version('1.0.2s', sha256='cabd5c9492825ce5bd23f3c3aeed6a97f8142f606d893df216411f07d1abab96')
- version('1.0.2r', sha256='ae51d08bba8a83958e894946f15303ff894d75c2b8bbd44a852b64e3fe11d0d6')
- version('1.0.2p', sha256='50a98e07b1a89eb8f6a99477f262df71c6fa7bef77df4dc83025a2845c827d00')
- version('1.0.2o', sha256='ec3f5c9714ba0fd45cb4e087301eb1336c317e0d20b575a125050470e8089e4d')
- version('1.0.2n', sha256='370babb75f278c39e0c50e8c4e7493bc0f18db6867478341a832a982fd15a8fe')
- version('1.0.2m', sha256='8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f')
- version('1.0.2k', sha256='6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0')
- version('1.0.2j', sha256='e7aff292be21c259c6af26469c7a9b3ba26e9abaaffd325e3dccc9785256c431')
- version('1.0.2i', sha256='9287487d11c9545b6efb287cdb70535d4e9b284dd10d51441d9b9963d000de6f')
- version('1.0.2h', sha256='1d4007e53aad94a5b2002fe045ee7bb0b3d98f1a47f8b2bc851dcd1c74332919')
- version('1.0.2g', sha256='b784b1b3907ce39abf4098702dade6365522a253ad1552e267a9a0e89594aa33')
- version('1.0.2f', sha256='932b4ee4def2b434f85435d9e3e19ca8ba99ce9a065a61524b429a9d5e9b2e9c')
- version('1.0.2e', sha256='e23ccafdb75cfcde782da0151731aa2185195ac745eea3846133f2e05c0e0bff')
- version('1.0.2d', sha256='671c36487785628a703374c652ad2cebea45fa920ae5681515df25d9f2c9a8c8')
+ version('1.0.2u', sha256='ecd0c6ffb493dd06707d38b14bb4d8c2288bb7033735606569d8f90f89669d16', deprecated=True)
+ version('1.0.2t', sha256='14cb464efe7ac6b54799b34456bd69558a749a4931ecfd9cf9f71d7881cac7bc', deprecated=True)
+ version('1.0.2s', sha256='cabd5c9492825ce5bd23f3c3aeed6a97f8142f606d893df216411f07d1abab96', deprecated=True)
+ version('1.0.2r', sha256='ae51d08bba8a83958e894946f15303ff894d75c2b8bbd44a852b64e3fe11d0d6', deprecated=True)
+ version('1.0.2p', sha256='50a98e07b1a89eb8f6a99477f262df71c6fa7bef77df4dc83025a2845c827d00', deprecated=True)
+ version('1.0.2o', sha256='ec3f5c9714ba0fd45cb4e087301eb1336c317e0d20b575a125050470e8089e4d', deprecated=True)
+ version('1.0.2n', sha256='370babb75f278c39e0c50e8c4e7493bc0f18db6867478341a832a982fd15a8fe', deprecated=True)
+ version('1.0.2m', sha256='8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f', deprecated=True)
+ version('1.0.2k', sha256='6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0', deprecated=True)
+ version('1.0.2j', sha256='e7aff292be21c259c6af26469c7a9b3ba26e9abaaffd325e3dccc9785256c431', deprecated=True)
+ version('1.0.2i', sha256='9287487d11c9545b6efb287cdb70535d4e9b284dd10d51441d9b9963d000de6f', deprecated=True)
+ version('1.0.2h', sha256='1d4007e53aad94a5b2002fe045ee7bb0b3d98f1a47f8b2bc851dcd1c74332919', deprecated=True)
+ version('1.0.2g', sha256='b784b1b3907ce39abf4098702dade6365522a253ad1552e267a9a0e89594aa33', deprecated=True)
+ version('1.0.2f', sha256='932b4ee4def2b434f85435d9e3e19ca8ba99ce9a065a61524b429a9d5e9b2e9c', deprecated=True)
+ version('1.0.2e', sha256='e23ccafdb75cfcde782da0151731aa2185195ac745eea3846133f2e05c0e0bff', deprecated=True)
+ version('1.0.2d', sha256='671c36487785628a703374c652ad2cebea45fa920ae5681515df25d9f2c9a8c8', deprecated=True)
# The 1.0.1 version is out of support and should not be used.
- version('1.0.1u', sha256='4312b4ca1215b6f2c97007503d80db80d5157f76f8f7d3febbe6b4c56ff26739')
- version('1.0.1t', sha256='4a6ee491a2fdb22e519c76fdc2a628bb3cec12762cd456861d207996c8a07088')
- version('1.0.1r', sha256='784bd8d355ed01ce98b812f873f8b2313da61df7c7b5677fcf2e57b0863a3346')
- version('1.0.1h', sha256='9d1c8a9836aa63e2c6adb684186cbd4371c9e9dcc01d6e3bb447abf2d4d3d093')
- version('1.0.1e', sha256='f74f15e8c8ff11aa3d5bb5f276d202ec18d7246e95f961db76054199c69c1ae3')
+ version('1.0.1u', sha256='4312b4ca1215b6f2c97007503d80db80d5157f76f8f7d3febbe6b4c56ff26739', deprecated=True)
+ version('1.0.1t', sha256='4a6ee491a2fdb22e519c76fdc2a628bb3cec12762cd456861d207996c8a07088', deprecated=True)
+ version('1.0.1r', sha256='784bd8d355ed01ce98b812f873f8b2313da61df7c7b5677fcf2e57b0863a3346', deprecated=True)
+ version('1.0.1h', sha256='9d1c8a9836aa63e2c6adb684186cbd4371c9e9dcc01d6e3bb447abf2d4d3d093', deprecated=True)
+ version('1.0.1e', sha256='f74f15e8c8ff11aa3d5bb5f276d202ec18d7246e95f961db76054199c69c1ae3', deprecated=True)
variant('systemcerts', default=True, description='Use system certificates')
+ variant('docs', default=False, description='Install docs and manpages')
depends_on('zlib')
@@ -110,7 +114,7 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
if spec.satisfies('@1.0'):
options.append('no-krb5')
# clang does not support the .arch directive in assembly files.
- if 'clang' in self.compiler.cc and \
+ if ('clang' in self.compiler.cc or 'nvc' in self.compiler.cc) and \
'aarch64' in spack.architecture.sys_type():
options.append('no-asm')
@@ -135,8 +139,10 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
if self.run_tests:
make('test', parallel=False) # 'VERBOSE=1'
+ install_tgt = 'install' if self.spec.satisfies('+docs') else 'install_sw'
+
# See https://github.com/openssl/openssl/issues/7466#issuecomment-432148137
- make('install', parallel=False)
+ make(install_tgt, parallel=False)
@run_after('install')
def link_system_certs(self):
@@ -154,6 +160,8 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
pkg_dir = join_path(self.prefix, 'etc', 'openssl')
+ mkdirp(pkg_dir)
+
for directory in system_dirs:
sys_cert = join_path(directory, 'cert.pem')
pkg_cert = join_path(pkg_dir, 'cert.pem')
@@ -168,8 +176,17 @@ class Openssl(Package): # Uses Fake Autotools, should subclass Package
# We symlink the whole directory instead of all files because
# the directory contents might change without Spack noticing.
if os.path.isdir(sys_certs) and not os.path.islink(pkg_certs):
- os.rmdir(pkg_certs)
+ if os.path.isdir(pkg_certs):
+ os.rmdir(pkg_certs)
os.symlink(sys_certs, pkg_certs)
+ def patch(self):
+ if self.spec.satisfies('%nvhpc'):
+ # Remove incompatible preprocessor flags
+ filter_file('-MF ', '',
+ 'Configurations/unix-Makefile.tmpl', string=True)
+ filter_file(r'-MT \$\@ ', '',
+ 'Configurations/unix-Makefile.tmpl', string=True)
+
def setup_build_environment(self, env):
env.set('PERL', self.spec['perl'].prefix.bin.perl)
diff --git a/var/spack/repos/builtin/packages/openstf/package.py b/var/spack/repos/builtin/packages/openstf/package.py
index 52f50b046a..3df68a3a42 100644
--- a/var/spack/repos/builtin/packages/openstf/package.py
+++ b/var/spack/repos/builtin/packages/openstf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,9 @@ class Openstf(MakefilePackage):
homepage = "http://www.e-em.co.jp/OpenSTF/"
url = "http://www.e-em.co.jp/OpenSTF/OpenSTF.zip"
- version('1.3.1', sha256='4c39c81f70e3f8017fcb9cd457436c77d29e016d78bc5337f152f2eb078aa7b6')
+ version('1.7.0', sha256='50a0406dd452e3ec09d29aa362a426ca04c8a586d817ab1295988f578baeac2a')
+ version('1.3.1', sha256='4c39c81f70e3f8017fcb9cd457436c77d29e016d78bc5337f152f2eb078aa7b6',
+ url='http://www.e-em.co.jp/OpenSTF/old/OpenSTF_131.zip')
variant('mpi', default=False, description='Build with MPI Support')
diff --git a/var/spack/repos/builtin/packages/opensubdiv/package.py b/var/spack/repos/builtin/packages/opensubdiv/package.py
index 69f9aeba4c..85f1856dd4 100644
--- a/var/spack/repos/builtin/packages/opensubdiv/package.py
+++ b/var/spack/repos/builtin/packages/opensubdiv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,7 +19,12 @@ class Opensubdiv(CMakePackage, CudaPackage):
git = "https://github.com/PixarAnimationStudios/OpenSubdiv"
version('develop', branch='dev')
- version('3_4_0', sha256='d932b292f83371c7518960b2135c7a5b931efb43cdd8720e0b27268a698973e4')
+ version('3.4.3', sha256='7b22eb27d636ab0c1e03722c7a5a5bd4f11664ee65c9b48f341a6d0ce7f36745')
+ version('3.4.0', sha256='d932b292f83371c7518960b2135c7a5b931efb43cdd8720e0b27268a698973e4')
+
+ def url_for_version(self, version):
+ url = "https://github.com/PixarAnimationStudios/OpenSubdiv/archive/v{0}.tar.gz"
+ return url.format(version.underscored)
variant('tbb', default=False, description='Builds with Intel TBB support')
variant('openmp', default=False, description='Builds with OpenMP support')
diff --git a/var/spack/repos/builtin/packages/opentsdb/package.py b/var/spack/repos/builtin/packages/opentsdb/package.py
index 04ba715d8e..703575350d 100644
--- a/var/spack/repos/builtin/packages/opentsdb/package.py
+++ b/var/spack/repos/builtin/packages/opentsdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/openvdb/package.py b/var/spack/repos/builtin/packages/openvdb/package.py
new file mode 100644
index 0000000000..2fea55fe0b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openvdb/package.py
@@ -0,0 +1,90 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import os
+import sys
+from spack import *
+
+
+class Openvdb(CMakePackage):
+
+ """OpenVDB - a sparse volume data format."""
+
+ homepage = "https://github.com/AcademySoftwareFoundation/openvdb"
+ url = "https://github.com/AcademySoftwareFoundation/openvdb/archive/v8.0.1.tar.gz"
+ git = "https://github.com/AcademySoftwareFoundation/openvdb.git"
+
+ # Github account name for Drew.Whitehouse@gmail.com
+ maintainers = ['eloop']
+
+ version('develop', branch='develop')
+ version('8.0.1', 'a6845da7c604d2c72e4141c898930ac8a2375521e535f696c2cd92bebbe43c4f')
+ version('7.1.0', '0c3588c1ca6e647610738654ec2c6aaf41a203fd797f609fbeab1c9f7c3dc116')
+
+ variant('shared', default=True, description='Build as a shared library.')
+ variant('python', default=False, description='Build the pyopenvdb python extension.')
+ variant('vdb_print', default=False, description='Build the vdb_print tool.')
+ variant('vdb_lod', default=False, description='Build the vdb_lod tool.')
+ variant('vdb_render', default=False, description='Build the vdb_render tool.')
+ variant('ax', default=False, description='Build the AX extension (untested).')
+
+ depends_on('ilmbase')
+ depends_on('openexr')
+ depends_on('intel-tbb')
+
+ # Openvdb officially suggests an old version of blosc but it doesn't seem to be
+ # strictly neccessary and requires manual approval from spack.
+ depends_on('c-blosc') # depends_on('c-blosc@1.5:')
+
+ extends('python', when='+python')
+ depends_on('py-numpy', when='+python')
+
+ depends_on('boost+iostreams+system+python+numpy', when='+python')
+ depends_on('boost+iostreams+system', when='~python')
+
+ # AX requires quite a few things, and hasn't been properly released
+ # yet. I've only managed to build llvm@8.0.1 under centos8. It
+ # looks like the next version of OpenVDB will support llvm@12.0.0.
+ depends_on('llvm@8.0.1', when='+ax')
+ depends_on('bison', when='+ax')
+ depends_on('flex', when='+ax')
+
+ depends_on('git', type='build', when='@develop')
+
+ def cmake_args(self):
+ args = [
+ self.define('OPENVDB_BUILD_CORE', True),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('OPENVDB_BUILD_VDB_PRINT', 'vdb_print'),
+ self.define_from_variant('OPENVDB_BUILD_VDB_LOD', 'vdb_lod'),
+ self.define_from_variant('OPENVDB_BUILD_VDB_RENDER', 'vdb_render'),
+ self.define_from_variant('OPENVDB_BUILD_AX', 'ax'),
+ self.define_from_variant('OPENVDB_BUILD_AX_BINARIES', 'ax'),
+ self.define_from_variant('OPENVDB_BUILD_PYTHON_MODULE', 'python'),
+ self.define_from_variant('USE_NUMPY', 'python')
+ ]
+ return args
+
+ # The python extension is being put in the wrong directory
+ # by OpenVDB's cmake, instead it needs to be in
+ # site_packages_dir. For RHEL systems we seem to get the
+ # dso in lib64/ instead of lib/
+ @run_after('install')
+ def post_install(self):
+
+ spec = self.spec
+
+ if '+python' in spec:
+ if sys.platform == "darwin":
+ pyso = "pyopenvdb.dylib"
+ else:
+ pyso = "pyopenvdb.so"
+ pyver = 'python{0}'.format(spec['python'].package.version.up_to(2))
+
+ src = prefix.lib.join(pyver).join(pyso)
+ if not os.path.isfile(src):
+ src = prefix.lib64.join(pyver).join(pyso)
+ mkdirp(site_packages_dir)
+ os.rename(src, os.path.join(site_packages_dir, pyso))
diff --git a/var/spack/repos/builtin/packages/openvslam/package.py b/var/spack/repos/builtin/packages/openvslam/package.py
new file mode 100644
index 0000000000..505d838c61
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openvslam/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Openvslam(CMakePackage):
+ """OpenVSLAM is a monocular, stereo, and RGBD visual SLAM system."""
+
+ homepage = "https://openvslam.readthedocs.io/"
+ git = "https://github.com/xdspacelab/openvslam.git"
+
+ version('master', branch='master')
+
+ # https://openvslam.readthedocs.io/en/master/installation.html
+ depends_on('cmake@3.1:', type='build')
+ depends_on('eigen@3.3.0:')
+ depends_on('g2o')
+ depends_on('dbow2@shinsumicco')
+ depends_on('yaml-cpp@0.6.0:')
+ depends_on('opencv@3.3.1:+core+imgcodecs+videoio+features2d+calib3d+highgui')
+ depends_on('pangolin')
+
+ patch('https://github.com/xdspacelab/openvslam/commit/eeb58880443700fd79688d9646fd633c42fa60eb.patch',
+ sha256='131159b0042300614d039ceb3538defe4d302b59dc748b02287fc8ff895e6bbd')
+
+ @run_after('install')
+ def post_install(self):
+ # https://github.com/xdspacelab/openvslam/issues/501
+ mkdir(self.prefix.bin)
+ with working_dir(self.build_directory):
+ install('run_*', self.prefix.bin)
+ install(join_path('lib*', 'libpangolin_viewer.*'), self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/openwsman/package.py b/var/spack/repos/builtin/packages/openwsman/package.py
index c355e2627f..562f6455ec 100644
--- a/var/spack/repos/builtin/packages/openwsman/package.py
+++ b/var/spack/repos/builtin/packages/openwsman/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,10 +16,66 @@ class Openwsman(CMakePackage):
version('2.6.11', sha256='895eaaae62925f9416766ea3e71a5368210e6cfe13b23e4e0422fa0e75c2541c')
version('2.6.10', sha256='d3c624a03d7bc1835544ce1af56efd010f77cbee0c02b34e0755aa9c9b2c317b')
- depends_on('python@3:', type='build')
- depends_on('curl')
- depends_on('libxml2')
- depends_on('sblim-sfcc')
+ variant('python', default=True, description='Enable python')
+
+ extends('python', when='+python')
+
+ depends_on('python', type=('build', 'link', 'run'))
+ depends_on('curl', type='link')
+ depends_on('swig', type='build')
+ depends_on('libxml2', type='link')
+ depends_on('openssl', type='link')
+ depends_on('sblim-sfcc', type='link')
+
+ def patch(self):
+ """ Change python install directory. """
+ if self.spec.satisfies('+python'):
+ python_spec = self.spec['python']
+ python_libdir = join_path(
+ self.spec.prefix.lib,
+ 'python' + str(python_spec.version.up_to(2)),
+ 'site-packages'
+ )
+ filter_file(
+ 'DESTINATION .*',
+ 'DESTINATION {0} )'.format(python_libdir),
+ join_path('bindings', 'python', 'CMakeLists.txt')
+ )
def cmake_args(self):
- return ['-DBUILD_PYTHON=OFF', '-DUSE_PAM=NO']
+ define = self.define
+ spec = self.spec
+ arg = [
+ define('BUILD_PERL', False),
+ define('BUILD_JAVA', False),
+ define('BUILD_CSHARP', False),
+ define('USE_PAM', 'OFF'),
+ ]
+ if spec.satisfies('+python'):
+ if spec.satisfies('^python@3:'):
+ arg.extend([
+ define('BUILD_PYTHON', False),
+ define('BUILD_PYTHON3', True)
+ ])
+ else:
+ arg.extend([
+ define('BUILD_PYTHON', True),
+ define('BUILD_PYTHON3', False)
+ ])
+ arg.append(define('PYTHON_EXECUTABLE',
+ spec['python'].command.path))
+ else:
+ arg.extend([
+ define('BUILD_PYTHON', False),
+ define('BUILD_PYTHON3', False)
+ ])
+ return arg
+
+ def flag_handler(self, name, flags):
+ flags = list(flags)
+ if name == 'cflags':
+ if self.spec.satisfies('%gcc'):
+ flags.append('-std=gnu99')
+ else:
+ flags.append(self.compiler.c99_flag)
+ return (None, None, flags)
diff --git a/var/spack/repos/builtin/packages/opium/package.py b/var/spack/repos/builtin/packages/opium/package.py
index 19f3b8fcf6..df8d1a7166 100644
--- a/var/spack/repos/builtin/packages/opium/package.py
+++ b/var/spack/repos/builtin/packages/opium/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/optional-lite/package.py b/var/spack/repos/builtin/packages/optional-lite/package.py
index 347ed93e87..d779ddcb44 100644
--- a/var/spack/repos/builtin/packages/optional-lite/package.py
+++ b/var/spack/repos/builtin/packages/optional-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/optipng/package.py b/var/spack/repos/builtin/packages/optipng/package.py
index 76e3b31834..5ccfd34ae7 100644
--- a/var/spack/repos/builtin/packages/optipng/package.py
+++ b/var/spack/repos/builtin/packages/optipng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/opus/package.py b/var/spack/repos/builtin/packages/opus/package.py
index b59de759a7..5fa86aa529 100644
--- a/var/spack/repos/builtin/packages/opus/package.py
+++ b/var/spack/repos/builtin/packages/opus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Opus(AutotoolsPackage):
homepage = "http://opus-codec.org/"
url = "http://downloads.xiph.org/releases/opus/opus-1.1.4.tar.gz"
+ version('1.3.1', sha256='65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d')
version('1.1.4', sha256='9122b6b380081dd2665189f97bfd777f04f92dc3ab6698eea1dbb27ad59d8692')
version('1.1.3', sha256='58b6fe802e7e30182e95d0cde890c0ace40b6f125cffc50635f0ad2eef69b633')
version('1.1.2', sha256='0e290078e31211baa7b5886bcc8ab6bc048b9fc83882532da4a1a45e58e907fd')
diff --git a/var/spack/repos/builtin/packages/oracle-instant-client/package.py b/var/spack/repos/builtin/packages/oracle-instant-client/package.py
new file mode 100644
index 0000000000..9155132e58
--- /dev/null
+++ b/var/spack/repos/builtin/packages/oracle-instant-client/package.py
@@ -0,0 +1,107 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import glob
+
+
+def oracleclient_releases():
+ releases = [
+ {
+ 'version': '21.1.0.0.0',
+ 'components': {
+ 'basic': ['https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-basic-linux.x64-21.1.0.0.0.zip', '9b63e264c01ac54a0f0e61bd638576aed6f04a36b305bcd17847755e7b9855ce'],
+ 'sqlplus': ['https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-sqlplus-linux.x64-21.1.0.0.0.zip', '3220f486940e82f1a7825e8f0875729d63abd57cc708f1908e2d5f2163b93937'],
+ 'tools': ['https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-tools-linux.x64-21.1.0.0.0.zip', 'ff652d5bbfeaaa2403cbc13c5667f52e1d648aa2a5c59a50f4c9f84e6d2bba74'],
+ 'sdk': ['https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-sdk-linux.x64-21.1.0.0.0.zip', '80a465530a565ed327ab9ae0d9fc067ed42338536c7e8721cf2c26e474f4f75f'],
+ 'jdbc': ['https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-jdbc-linux.x64-21.1.0.0.0.zip', '76c866272712f2b432cc4be675605b22deca02f7a88a292b5ed8d29212d79dc7'],
+ 'odbc': ['https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-odbc-linux.x64-21.1.0.0.0.zip', 'ec7722b522684f0a3f63481573d0eb3537764224eabed6223f33699dd940bf20']
+ }
+ },
+ {
+ 'version': '19.10.0.0.0',
+ 'components': {
+ 'basic': ['https://download.oracle.com/otn_software/linux/instantclient/191000/instantclient-basic-linux.x64-19.10.0.0.0dbru.zip', 'c2eeea093d70f5416f8a8560f9fa5b57707a76ac9775906dbc4aaa778fdee84f'],
+ 'sqlplus': ['https://download.oracle.com/otn_software/linux/instantclient/191000/instantclient-sqlplus-linux.x64-19.10.0.0.0dbru.zip', 'eee44825f348966796166beb8c0d8cc8f61929bae05229b65b34794e0f05659a'],
+ 'tools': ['https://download.oracle.com/otn_software/linux/instantclient/191000/instantclient-tools-linux.x64-19.10.0.0.0dbru.zip', '93bf58d2e15bb3ca98f8e5f579a93760571a37e0d9312187f6a5f228d492c863'],
+ 'sdk': ['https://download.oracle.com/otn_software/linux/instantclient/191000/instantclient-sdk-linux.x64-19.10.0.0.0dbru.zip', '2c4ae1b77fe32f3d3bf86a4ef560dc3a5dcbf5d11d742b4afeca414e5388ff2f'],
+ 'jdbc': ['https://download.oracle.com/otn_software/linux/instantclient/191000/instantclient-jdbc-linux.x64-19.10.0.0.0dbru.zip', '3fabbc4a86b8c5b4b29c4d76524c7d7e5bfab33cdbfa73f1199fc5582ed25df6'],
+ 'odbc': ['https://download.oracle.com/otn_software/linux/instantclient/191000/instantclient-odbc-linux.x64-19.10.0.0.0dbru.zip', '1c7ae3ea5913af9647ae68e2053cdaf9154ef6c9aa07e8b7d91e1ead9d5e675a']
+ }
+ }]
+
+ return releases
+
+
+class OracleInstantClient(Package):
+ """Oracle instant client"""
+
+ homepage = "https://www.oracle.com/database/technologies/instant-client.html"
+ url = "https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-basic-linux.x64-21.1.0.0.0.zip"
+
+ releases = oracleclient_releases()
+ for release in releases:
+ oracle_version = release['version']
+ main_pkg = release['components']['basic']
+ url, sha256 = main_pkg
+ version(oracle_version, sha256=sha256, url=url)
+ for rname, atts in release['components'].items():
+ if rname == 'basic':
+ continue
+ url, sha256 = atts
+ condition = "@{0}".format(oracle_version)
+ resource(name=rname, url=url, sha256=sha256, when=condition, placement=rname)
+
+ depends_on('libaio', type='link')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.include)
+ mkdirp(prefix.lib)
+ mkdirp(prefix.doc)
+
+ for dirn, fns in {'.': ('adrci', 'genezi', 'uidrvci'),
+ 'sqlplus': ('glogin.sql', 'sqlplus'),
+ 'odbc': ('odbc_update_ini.sh', ),
+ 'tools': ('exp', 'expdp', 'imp', 'impdp', 'sqlldr', 'wrc')
+ }.items():
+ for fn in fns:
+ install(join_path(dirn, fn), prefix.bin)
+
+ for fn in glob.glob(join_path(self.stage.source_path, '*.so*')):
+ install(fn, prefix.lib)
+
+ for fn in glob.glob(join_path(self.stage.source_path, '*.jar')):
+ install(fn, prefix.lib)
+
+ for fn in glob.glob(join_path(self.stage.source_path, 'sqlplus', '*.so*')):
+ install(fn, prefix.lib)
+
+ for fn in glob.glob(join_path(self.stage.source_path, 'jdbc', '*.so*')):
+ install(fn, prefix.lib)
+
+ for fn in glob.glob(join_path(self.stage.source_path, 'odbc', '*.so*')):
+ install(fn, prefix.lib)
+
+ for fn in glob.glob(join_path(self.stage.source_path, 'tools', '*.so*')):
+ install(fn, prefix.lib)
+
+ for fn in glob.glob(join_path(self.stage.source_path, 'jdbc', '*.jar')):
+ install(fn, prefix.lib)
+
+ install_tree('network', prefix.lib)
+
+ for dirn, fns in {'.': ('BASIC_LICENSE', 'BASIC_README'),
+ 'sqlplus': ('SQLPLUS_LICENSE', 'SQLPLUS_README'),
+ 'jdbc': ('JDBC_LICENSE', 'JDBC_README'),
+ 'odbc': ('ODBC_LICENSE', 'ODBC_README'),
+ 'sdk': ('SDK_LICENSE', 'SDK_README'),
+ 'tools': ('TOOLS_LICENSE', 'TOOLS_README')
+ }.items():
+ for fn in fns:
+ install(join_path(dirn, fn), prefix.doc)
+
+ install_tree(join_path('odbc', 'help'), prefix.doc)
+ install_tree(join_path('sdk', 'sdk', 'include'), prefix.include)
diff --git a/var/spack/repos/builtin/packages/orbit2/package.py b/var/spack/repos/builtin/packages/orbit2/package.py
index 6fed395b84..34de749143 100644
--- a/var/spack/repos/builtin/packages/orbit2/package.py
+++ b/var/spack/repos/builtin/packages/orbit2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/orc/package.py b/var/spack/repos/builtin/packages/orc/package.py
index f67111cc6a..ee0ab451b6 100644
--- a/var/spack/repos/builtin/packages/orc/package.py
+++ b/var/spack/repos/builtin/packages/orc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/orca/package.py b/var/spack/repos/builtin/packages/orca/package.py
index 475998e876..b499cb647d 100644
--- a/var/spack/repos/builtin/packages/orca/package.py
+++ b/var/spack/repos/builtin/packages/orca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,7 @@ class Orca(Package):
homepage = "https://cec.mpg.de"
url = "file://{0}/orca_4_0_1_2_linux_x86-64_openmpi202.tar.zst".format(os.getcwd())
+ manual_download = True
version('4.2.1', sha256='9bbb3bfdca8220b417ee898b27b2885508d8c82799adfa63dde9e72eab49a6b2',
expand=False)
diff --git a/var/spack/repos/builtin/packages/orfm/package.py b/var/spack/repos/builtin/packages/orfm/package.py
index 8c98bd4f1b..02da11bf55 100644
--- a/var/spack/repos/builtin/packages/orfm/package.py
+++ b/var/spack/repos/builtin/packages/orfm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/orientdb/package.py b/var/spack/repos/builtin/packages/orientdb/package.py
index bc605566dd..2f7645a01d 100644
--- a/var/spack/repos/builtin/packages/orientdb/package.py
+++ b/var/spack/repos/builtin/packages/orientdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/orthofiller/package.py b/var/spack/repos/builtin/packages/orthofiller/package.py
index b5376c7d2f..cbb5c2cb2d 100644
--- a/var/spack/repos/builtin/packages/orthofiller/package.py
+++ b/var/spack/repos/builtin/packages/orthofiller/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/orthofinder/package.py b/var/spack/repos/builtin/packages/orthofinder/package.py
index af6820cf16..53969220af 100644
--- a/var/spack/repos/builtin/packages/orthofinder/package.py
+++ b/var/spack/repos/builtin/packages/orthofinder/package.py
@@ -1,8 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import os
+import shutil
from spack import *
@@ -18,17 +20,34 @@ class Orthofinder(Package):
in FASTA format."""
homepage = "https://github.com/davidemms/OrthoFinder"
- url = "https://github.com/davidemms/OrthoFinder/releases/download/2.2.0/OrthoFinder-2.2.0.tar.gz"
+ url = "https://github.com/davidemms/OrthoFinder/releases/download/2.5.2/OrthoFinder_source.tar.gz"
- version('2.2.0', sha256='7314f3fdfb24d84aa5b9ee27ce9f670df314889c12b8100e4e476c2d21a1c8e7')
+ version('2.5.2', sha256='e0752b66866e23a11f0592e880fac5f67258f9cf926f926dec8849564c41b8f7')
+ version('2.2.0', sha256='375f711086b44e2118d7d460821294744245e254e5fa2151dfe73100c0707a8c')
+ depends_on('py-numpy', type='run')
+ depends_on('py-scipy', type='run')
+ depends_on('diamond', type='run')
depends_on('blast-plus', type='run')
depends_on('mcl', type='run')
depends_on('fastme', type='run')
- depends_on('py-dlcpar', type='run')
- def install(self, spec, prefix):
- install_tree('.', prefix.bin)
+ def url_for_version(self, version):
+ if '@:2.3.6' in self.spec:
+ url = "https://github.com/davidemms/OrthoFinder/releases/download/{0}/OrthoFinder-{0}_source.tar.gz"
+ return url.format(version)
+ else:
+ url = "https://github.com/davidemms/OrthoFinder/releases/download/{0}/OrthoFinder_source.tar.gz"
+ return url.format(version)
- chmod = which('chmod')
- chmod('+x', join_path(prefix.bin, 'orthofinder'))
+ def install(self, spec, prefix):
+ if '@2.2.0' in spec:
+ install_tree('./orthofinder', prefix.bin)
+ else:
+ install_tree('.', prefix.bin)
+ shutil.rmtree(prefix.bin.scripts_of.bin)
+ os.rename('%s/orthofinder.py' % prefix.bin, '%s/orthofinder' % prefix.bin)
+
+ def setup_run_environment(self, env):
+ env.prepend_path('PATH', prefix.bin)
+ env.prepend_path('PATH', prefix.bin.tools)
diff --git a/var/spack/repos/builtin/packages/orthomcl/package.py b/var/spack/repos/builtin/packages/orthomcl/package.py
index f06da0e2dc..5651124ec0 100644
--- a/var/spack/repos/builtin/packages/orthomcl/package.py
+++ b/var/spack/repos/builtin/packages/orthomcl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/osi/package.py b/var/spack/repos/builtin/packages/osi/package.py
index 16eaba412c..54525581c1 100644
--- a/var/spack/repos/builtin/packages/osi/package.py
+++ b/var/spack/repos/builtin/packages/osi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/osmctools/package.py b/var/spack/repos/builtin/packages/osmctools/package.py
index 84c23714bf..ebd1de09b1 100644
--- a/var/spack/repos/builtin/packages/osmctools/package.py
+++ b/var/spack/repos/builtin/packages/osmctools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/osqp/package.py b/var/spack/repos/builtin/packages/osqp/package.py
index 6597e9a701..7a053f7bbc 100644
--- a/var/spack/repos/builtin/packages/osqp/package.py
+++ b/var/spack/repos/builtin/packages/osqp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/uuid/package.py b/var/spack/repos/builtin/packages/ossp-uuid/package.py
index 3f7a7ec5a8..b01319e8f0 100644
--- a/var/spack/repos/builtin/packages/uuid/package.py
+++ b/var/spack/repos/builtin/packages/ossp-uuid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
from spack import *
-class Uuid(AutotoolsPackage):
+class OsspUuid(AutotoolsPackage):
"""OSSP uuid is a ISO-C:1999 application programming interface (API) and
corresponding command line interface (CLI) for the generation of DCE 1.1,
ISO/IEC 11578:1996 and RFC 4122 compliant Universally Unique Identifier
@@ -16,3 +16,13 @@ class Uuid(AutotoolsPackage):
url = "http://www.mirrorservice.org/sites/ftp.ossp.org/pkg/lib/uuid/uuid-1.6.2.tar.gz"
version('1.6.2', sha256='11a615225baa5f8bb686824423f50e4427acd3f70d394765bdff32801f0fd5b0')
+
+ provides('uuid')
+
+ @property
+ def libs(self):
+ return find_libraries('libuuid', self.prefix, recursive=True)
+
+ @property
+ def headers(self):
+ return find_headers('uuid', self.prefix, recursive=True)
diff --git a/var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py b/var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py
index 273b02fd44..eec9f6f351 100644
--- a/var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py
+++ b/var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class OsuMicroBenchmarks(AutotoolsPackage):
homepage = "http://mvapich.cse.ohio-state.edu/benchmarks/"
url = "http://mvapich.cse.ohio-state.edu/download/mvapich/osu-micro-benchmarks-5.6.3.tar.gz"
+ version('5.7', sha256='1470ebe00eb6ca7f160b2c1efda57ca0fb26b5c4c61148a3f17e8e79fbf34590')
version('5.6.3', sha256='c5eaa8c5b086bde8514fa4cac345d66b397e02283bc06e44cb6402268a60aeb8')
version('5.6.2', sha256='2ecb90abd85398786823c0716d92448d7094657d3f017c65d270ffe39afc7b95')
version('5.6.1', sha256='943c426a653a6c56200193d747755efaa4c4e6f23b3571b0e3ef81ecd21b1063')
diff --git a/var/spack/repos/builtin/packages/otf/package.py b/var/spack/repos/builtin/packages/otf/package.py
index cb19e3ee1b..2524243156 100644
--- a/var/spack/repos/builtin/packages/otf/package.py
+++ b/var/spack/repos/builtin/packages/otf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/otf2/collective_callbacks.patch b/var/spack/repos/builtin/packages/otf2/collective_callbacks.patch
new file mode 100644
index 0000000000..daa07d84cb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/otf2/collective_callbacks.patch
@@ -0,0 +1,13 @@
+diff --git a/src/otf2_archive_int.c b/src/otf2_archive_int.c
+index db9b7a9..68f1694 100644
+--- a/src/otf2_archive_int.c
++++ b/src/otf2_archive_int.c
+@@ -1083,7 +1083,7 @@ otf2_archive_set_collective_callbacks( OTF2_Archive* archive,
+ archive->global_comm_context = globalCommContext;
+ archive->local_comm_context = localCommContext;
+
+- OTF2_ErrorCode status;
++ OTF2_ErrorCode status = OTF2_SUCCESS;
+
+ /* It is time to create the directories by the root rank. */
+ if ( archive->file_mode == OTF2_FILEMODE_WRITE )
diff --git a/var/spack/repos/builtin/packages/otf2/cray_ac_scorep_sys_detection-m4.patch b/var/spack/repos/builtin/packages/otf2/cray_ac_scorep_sys_detection-m4.patch
new file mode 100644
index 0000000000..52ea2428ec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/otf2/cray_ac_scorep_sys_detection-m4.patch
@@ -0,0 +1,11 @@
+--- a/vendor/common/build-config/m4/ac_scorep_sys_detection.m4 2019-07-19 01:31:13.409311556 -0500
++++ b/vendor/common/build-config/m4/ac_scorep_sys_detection.m4 2021-03-04 22:11:30.278313559 -0600
+@@ -100,6 +100,8 @@
+ [test "x${build_cpu}" = "xpowerpc64" && test -d /bgsys],
+ [ac_scorep_platform="bgp"],
+ [(test "x${build_cpu}" = "xx86_64" || test "x${build_cpu}" = "xaarch64") && test -d /opt/cray],
++ [AS_IF([test -d /opt/cray/cs-prgenv],
++ [ac_scorep_platform="crayxc"])]
+ [AS_IF([test -L /opt/cray/pmi/default],
+ [AS_IF([test "x`readlink -f /opt/cray/pmi/default | grep -o --regexp=[[a-z]]*$ | grep -q ss && echo TRUE`" = "xTRUE"],
+ [ac_scorep_platform="crayxt"],
diff --git a/var/spack/repos/builtin/packages/otf2/package.py b/var/spack/repos/builtin/packages/otf2/package.py
index a2c197e98b..0fed25f920 100644
--- a/var/spack/repos/builtin/packages/otf2/package.py
+++ b/var/spack/repos/builtin/packages/otf2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Otf2(AutotoolsPackage):
homepage = "http://www.vi-hps.org/projects/score-p"
url = "https://www.vi-hps.org/cms/upload/packages/otf2/otf2-2.1.1.tar.gz"
+ version('2.3', sha256='36957428d37c40d35b6b45208f050fb5cfe23c54e874189778a24b0e9219c7e3', url='https://perftools.pages.jsc.fz-juelich.de/cicd/otf2/tags/otf2-2.3/otf2-2.3.tar.gz')
version('2.2', sha256='d0519af93839dc778eddca2ce1447b1ee23002c41e60beac41ea7fe43117172d')
version('2.1.1', sha256='01591b42e76f396869ffc84672f4eaa90ee8ec2a8939755d9c0b5b8ecdcf47d3')
version('2.1', sha256='8ad38ea0461099e34f00f2947af4409ce9b9c379e14c3f449ba162e51ac4cad3')
@@ -24,6 +25,22 @@ class Otf2(AutotoolsPackage):
version('1.3.1', sha256='c4605ace845d89fb1a19223137b92cc503b01e3db5eda8c9e0715d0cfcf2e4b9')
version('1.2.1', sha256='1db9fb0789de4a9c3c96042495e4212a22cb581f734a1593813adaf84f2288e4')
+ depends_on('autoconf', type='build', when='%cce')
+ depends_on('automake', type='build', when='%cce')
+ depends_on('libtool', type='build', when='%cce')
+ depends_on('m4', type='build', when='%cce')
+
+ # Fix missing initialization of variable resulting in issues when used by
+ # APEX/HPX: https://github.com/STEllAR-GROUP/hpx/issues/5239
+ patch('collective_callbacks.patch', when='@2.1:2.2')
+
+ # when using Cray's cs-prgenv, allow the build system to detect the systems as an XC
+ patch('cray_ac_scorep_sys_detection-m4.patch', when='%cce')
+
+ @property
+ def force_autoreconf(self):
+ return self.spec.satisfies('%cce')
+
def configure_args(self):
return [
'--enable-shared',
diff --git a/var/spack/repos/builtin/packages/p11-kit/package.py b/var/spack/repos/builtin/packages/p11-kit/package.py
index 4b6a110498..5eab2fc81e 100644
--- a/var/spack/repos/builtin/packages/p11-kit/package.py
+++ b/var/spack/repos/builtin/packages/p11-kit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/p3dfft3/package.py b/var/spack/repos/builtin/packages/p3dfft3/package.py
index a4dfe41941..31d961256e 100644
--- a/var/spack/repos/builtin/packages/p3dfft3/package.py
+++ b/var/spack/repos/builtin/packages/p3dfft3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/p4est/package.py b/var/spack/repos/builtin/packages/p4est/package.py
index e5ec4998da..963656cab8 100644
--- a/var/spack/repos/builtin/packages/p4est/package.py
+++ b/var/spack/repos/builtin/packages/p4est/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,11 @@ class P4est(AutotoolsPackage):
parallel"""
homepage = "http://www.p4est.org"
url = "http://p4est.github.io/release/p4est-2.2.tar.gz"
+ git = "https://github.com/cburstedde/p4est.git"
maintainers = ['davydden']
+ version('2.3.1', submodules=True, tag='v2.3.1')
version('2.2', sha256='1549cbeba29bee2c35e7cc50a90a04961da5f23b6eada9c8047f511b90a8e438')
version('2.0', sha256='c522c5b69896aab39aa5a81399372a19a6b03fc6200d2d5d677d9a22fe31029a')
version('1.1', sha256='0b5327a35f0c869bf920b8cab5f20caa4eb55692eaaf1f451d5de30285b25139')
diff --git a/var/spack/repos/builtin/packages/p7zip/package.py b/var/spack/repos/builtin/packages/p7zip/package.py
index 5a0728eb29..7439723316 100644
--- a/var/spack/repos/builtin/packages/p7zip/package.py
+++ b/var/spack/repos/builtin/packages/p7zip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pacbio-daligner/package.py b/var/spack/repos/builtin/packages/pacbio-daligner/package.py
index b3b6420ac1..81ec8cb9f8 100644
--- a/var/spack/repos/builtin/packages/pacbio-daligner/package.py
+++ b/var/spack/repos/builtin/packages/pacbio-daligner/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pacbio-damasker/package.py b/var/spack/repos/builtin/packages/pacbio-damasker/package.py
index 876e602a76..fcb8507c12 100644
--- a/var/spack/repos/builtin/packages/pacbio-damasker/package.py
+++ b/var/spack/repos/builtin/packages/pacbio-damasker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pacbio-dazz-db/package.py b/var/spack/repos/builtin/packages/pacbio-dazz-db/package.py
index f5b0958bfb..e2369f9cdd 100644
--- a/var/spack/repos/builtin/packages/pacbio-dazz-db/package.py
+++ b/var/spack/repos/builtin/packages/pacbio-dazz-db/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pacbio-dextractor/package.py b/var/spack/repos/builtin/packages/pacbio-dextractor/package.py
index 5d4d1bcd7f..bab6f85501 100644
--- a/var/spack/repos/builtin/packages/pacbio-dextractor/package.py
+++ b/var/spack/repos/builtin/packages/pacbio-dextractor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pacifica-cli/package.py b/var/spack/repos/builtin/packages/pacifica-cli/package.py
new file mode 100644
index 0000000000..b0c38cb15a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pacifica-cli/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PacificaCli(PythonPackage):
+ """Python CLI for Pacifica Core Services"""
+
+ homepage = "https://github.com/pacifica/pacifica-cli/"
+ pypi = "pacifica-cli/pacifica-cli-0.5.2.tar.gz"
+
+ version('0.5.2', sha256='fee5fa8ac38ffec2e9199bff23afbbae697c4f7554f13e340104f8b20a62843f')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-jsonschema', type=('build', 'run'))
+ depends_on('py-pacifica-uploader@0.3.1:', type=('build', 'run'))
+ depends_on('py-pacifica-downloader@0.4.1:', type=('build', 'run'))
+ depends_on('py-pacifica-namespace', type=('build', 'run'))
+ depends_on('py-pager', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/packmol/package.py b/var/spack/repos/builtin/packages/packmol/package.py
index 0d4465c958..7bc1a415d1 100644
--- a/var/spack/repos/builtin/packages/packmol/package.py
+++ b/var/spack/repos/builtin/packages/packmol/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pacparser/package.py b/var/spack/repos/builtin/packages/pacparser/package.py
new file mode 100644
index 0000000000..6f8a03f736
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pacparser/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Pacparser(MakefilePackage):
+ """pacparser is a library to parse proxy auto-config (PAC) files."""
+
+ homepage = "http://pacparser.github.io/"
+ url = "https://github.com/manugarg/pacparser/releases/download/1.3.7/pacparser-1.3.7.tar.gz"
+
+ version('1.3.7', sha256='eb48ec2fc202d12a4b882133048c7590329849f32c2285bc4dbe418f29aad249')
+
+ depends_on('python', when='+python')
+ depends_on('py-setuptools', when='+python', type=('build', 'run'))
+
+ variant('python', default=False,
+ description='Build and install python bindings')
+
+ def build(self, spec, prefix):
+ make('-C', 'src')
+ if '+python' in spec:
+ make('-C', 'src', 'pymod')
+
+ def install(self, spec, prefix):
+ make('-C', 'src', 'install', 'PREFIX=' + self.prefix)
+ if '+python' in spec:
+ make('-C', 'src', 'install-pymod', 'PREFIX=' + self.prefix,
+ 'EXTRA_ARGS=--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/pacvim/package.py b/var/spack/repos/builtin/packages/pacvim/package.py
index 6df19aee63..a40b0730bf 100644
--- a/var/spack/repos/builtin/packages/pacvim/package.py
+++ b/var/spack/repos/builtin/packages/pacvim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pagit/package.py b/var/spack/repos/builtin/packages/pagit/package.py
index e0fef6b568..3d1ffa1d69 100644
--- a/var/spack/repos/builtin/packages/pagit/package.py
+++ b/var/spack/repos/builtin/packages/pagit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pagmo/package.py b/var/spack/repos/builtin/packages/pagmo/package.py
index 406372843b..6ca785d7c5 100644
--- a/var/spack/repos/builtin/packages/pagmo/package.py
+++ b/var/spack/repos/builtin/packages/pagmo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -74,18 +74,18 @@ class Pagmo(CMakePackage):
spec = self.spec
args = [
- '-DBUILD_EXAMPLES={0}'.format(self.variant_to_bool('+examples')),
- '-DBUILD_MAIN={0}'.format(self.variant_to_bool('+cxx')),
- '-DBUILD_PYGMO={0}'.format(self.variant_to_bool('+python')),
- '-DENABLE_GSL={0}'.format(self.variant_to_bool('+gsl')),
- '-DENABLE_GTOP_DATABASE={0}'.format(self.variant_to_bool('+gtop')),
- '-DENABLE_IPOPT={0}'.format(self.variant_to_bool('+ipopt')),
- '-DENABLE_MPI={0}'.format(self.variant_to_bool('+mpi')),
- '-DENABLE_NLOPT={0}'.format(self.variant_to_bool('+nlopt')),
- '-DENABLE_SNOPT={0}'.format(self.variant_to_bool('+snopt')),
- '-DENABLE_WORHP={0}'.format(self.variant_to_bool('+worhp')),
- '-DINSTALL_HEADERS={0}'.format(self.variant_to_bool('+headers')),
- '-DENABLE_TESTS={0}'.format('ON' if self.run_tests else 'OFF'),
+ self.define_from_variant('BUILD_EXAMPLES', 'examples'),
+ self.define_from_variant('BUILD_MAIN', 'cxx'),
+ self.define_from_variant('BUILD_PYGMO', 'python'),
+ self.define_from_variant('ENABLE_GSL', 'gsl'),
+ self.define_from_variant('ENABLE_GTOP_DATABASE', 'gtop'),
+ self.define_from_variant('ENABLE_IPOPT', 'ipopt'),
+ self.define_from_variant('ENABLE_MPI', 'mpi'),
+ self.define_from_variant('ENABLE_NLOPT', 'nlopt'),
+ self.define_from_variant('ENABLE_SNOPT', 'snopt'),
+ self.define_from_variant('ENABLE_WORHP', 'worhp'),
+ self.define_from_variant('INSTALL_HEADERS', 'headers'),
+ self.define('ENABLE_TESTS', self.run_tests),
]
if '+python' in spec:
diff --git a/var/spack/repos/builtin/packages/pajeng/package.py b/var/spack/repos/builtin/packages/pajeng/package.py
new file mode 100644
index 0000000000..c0d3be4104
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pajeng/package.py
@@ -0,0 +1,69 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Pajeng(CMakePackage):
+ """PajeNG is a re-implementation of the well-known Paje visualization
+ tool for the analysis of execution traces. PajeNG comprises the
+ libpaje library, and an auxiliary tool called pj_dump to transform
+ Paje trace files to Comma-Separated Value (CSV). The space-time
+ visualization tool called pajeng had been deprecated (removed from
+ the sources) since modern tools do a better job (see pj_gantt)."""
+
+ homepage = "https://github.com/schnorr/pajeng"
+ git = "https://github.com/schnorr/pajeng.git"
+ url = "https://github.com/schnorr/pajeng/archive/1.3.6.tar.gz"
+
+ maintainers = ['viniciusvgp', 'schnorr']
+
+ version('develop', git='https://github.com/schnorr/pajeng.git')
+ version('1.3.6', sha256='1a2722bfaeb0c6437fb9e8efc2592edbf14ba01172f97e01c7839ffea8b9d0b3')
+ version('1.3.5', sha256='ea8ca02484de4091dcf57289724876ec17dd98e3a032dc609b7ea020ca2629eb')
+ version('1.3.4', sha256='284e9a590a2861251e808542663bf1b77bc2c99650a1fbf945cd5bab65402f9e')
+ version('1.3.3', sha256='42cf44003d238fd5c4ab512bdeb445fc12f7e3bd3f0526b389f080c84b83b19f')
+ version('1.3.2', sha256='97154415a22f9b7f83516e988ea664b3990377d69fca859275ca48d7bfad0932')
+ version('1.3.1', sha256='4bc3764aaa7e79da9a81f40c0593b646007b689e4ac20886d06f271ce0fa0a60')
+ version('1.3', sha256='781b8be935e10b65470207f4f179bb1196aa6740547f9f1af0cb1c0193f11c6f')
+ version('1.1', sha256='986d03e6deed20a3b9d0e076b1be9053c1bc86c8b41ca36cce3ba3b22dc6abca')
+ version('1.0', sha256='4d98d1a78669290d0a2e6bfe07a1eb4ab96bd05e5ef78da96d2c3cf03b023aa0')
+
+ variant('static', default=False, description="Build as static library")
+ variant('doc', default=False, description="The Paje Trace File documentation")
+ variant('lib', default=True, description="Build libpaje")
+ variant('tools', default=True, description="Build auxiliary tools")
+ variant('gui', default=False, description="The PajeNG visualization tool")
+
+ depends_on('boost')
+ depends_on('flex')
+ depends_on('bison')
+ depends_on('qt@:4.999+opengl', when='@:1.3.2+gui')
+ depends_on('freeglut', when='@:1.3.2+gui')
+ depends_on('fmt', when='@develop')
+
+ conflicts('+tools', when='~lib', msg="Enable libpaje to compile tools.")
+ conflicts('+gui', when='@1.3.3:', msg="PajeNG visualization tool is available only for versions up to 1.3.2.")
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('STATIC_LINKING', 'static'),
+ self.define_from_variant('PAJE_DOC', 'doc'),
+ self.define_from_variant('PAJE_LIBRARY', 'lib'),
+ self.define_from_variant('PAJE_TOOLS', 'tools')
+ ]
+
+ if self.spec.satisfies('@:1.3.2'):
+ args.extend([self.define_from_variant('PAJENG', 'gui'),
+ self.define_from_variant('PAJE_UTILS_LIBRARY', 'gui'),
+ self.define_from_variant('PJ_DUMP', 'tools'),
+ self.define_from_variant('PJ_VALIDATE', 'tools')])
+
+ return args
+
+ @when('@1.1+lib')
+ def build(self, spec, prefix):
+ with working_dir(self.build_directory):
+ make('paje_library')
diff --git a/var/spack/repos/builtin/packages/pal/package.py b/var/spack/repos/builtin/packages/pal/package.py
index 53e092f70c..875e51ce0d 100644
--- a/var/spack/repos/builtin/packages/pal/package.py
+++ b/var/spack/repos/builtin/packages/pal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/paml/package.py b/var/spack/repos/builtin/packages/paml/package.py
index b56da09036..fb50d05b48 100644
--- a/var/spack/repos/builtin/packages/paml/package.py
+++ b/var/spack/repos/builtin/packages/paml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/panda/package.py b/var/spack/repos/builtin/packages/panda/package.py
index df0bf63a87..924807b5b0 100644
--- a/var/spack/repos/builtin/packages/panda/package.py
+++ b/var/spack/repos/builtin/packages/panda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pandaseq/package.py b/var/spack/repos/builtin/packages/pandaseq/package.py
index a4693e7056..987d3639ff 100644
--- a/var/spack/repos/builtin/packages/pandaseq/package.py
+++ b/var/spack/repos/builtin/packages/pandaseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pandoc/package.py b/var/spack/repos/builtin/packages/pandoc/package.py
index c099ac3e6d..2784af64e1 100644
--- a/var/spack/repos/builtin/packages/pandoc/package.py
+++ b/var/spack/repos/builtin/packages/pandoc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,6 +28,8 @@ class Pandoc(Package):
variant('texlive', default=True, description='Use TeX Live to enable PDF output')
+ conflicts('target=aarch64:', msg='aarch64 is not supported.')
+
depends_on('texlive', when='+texlive')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/pango/package.py b/var/spack/repos/builtin/packages/pango/package.py
index 850c3f8bed..e7c5d6d297 100644
--- a/var/spack/repos/builtin/packages/pango/package.py
+++ b/var/spack/repos/builtin/packages/pango/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pangolin/package.py b/var/spack/repos/builtin/packages/pangolin/package.py
new file mode 100644
index 0000000000..8c0ecfd0c2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pangolin/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Pangolin(CMakePackage):
+ """Pangolin is a lightweight portable rapid development library for
+ managing OpenGL display / interaction and abstracting video input."""
+
+ homepage = "https://github.com/stevenlovegrove/Pangolin"
+ git = "https://github.com/stevenlovegrove/Pangolin.git"
+
+ version('master', branch='master')
+
+ # Required dependencies
+ depends_on('cmake@2.8.12:', type='build')
+ depends_on('gl')
+ depends_on('glew')
+ depends_on('glu', type='link')
+
+ # Optional dependencies
+ depends_on('eigen')
diff --git a/var/spack/repos/builtin/packages/pangomm/package.py b/var/spack/repos/builtin/packages/pangomm/package.py
index e77aaf711b..49c05abbdf 100644
--- a/var/spack/repos/builtin/packages/pangomm/package.py
+++ b/var/spack/repos/builtin/packages/pangomm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/papi/crayftn-fixes.patch b/var/spack/repos/builtin/packages/papi/crayftn-fixes.patch
new file mode 100644
index 0000000000..bd4aa652d5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/papi/crayftn-fixes.patch
@@ -0,0 +1,57 @@
+From ddfa53f3e20218dceaed6e0bfbe307e531ae879f Mon Sep 17 00:00:00 2001
+From: Howard Pritchard <hppritcha@gmail.com>
+Date: Thu, 10 Dec 2020 15:05:33 -0700
+Subject: [PATCH] fix fixed form ftn argument for crayftn patch openmp.F
+
+Signed-off-by: Howard Pritchard <hppritcha@gmail.com>
+
+diff --git a/src/ftests/Makefile b/src/ftests/Makefile
+index 315e1e76..d45fbb6d 100644
+--- a/src/ftests/Makefile
++++ b/src/ftests/Makefile
+@@ -3,7 +3,7 @@
+ include Makefile.target
+
+ INCLUDE = -I../testlib -I. -I..
+-FFLAGS = $(CFLAGS) -ffixed-line-length-132
++FFLAGS = $(CFLAGS) -N132
+ testlibdir=../testlib
+ TESTLIB= $(testlibdir)/libtestlib.a
+ DOLOOPS= $(testlibdir)/do_loops.o
+diff --git a/src/ftests/openmp.F b/src/ftests/openmp.F
+index 6cd5af23..ccf9030a 100644
+--- a/src/ftests/openmp.F
++++ b/src/ftests/openmp.F
+@@ -18,7 +18,7 @@
+ tests_quiet = get_quiet()
+ es = PAPI_NULL
+
+- call PAPIF_thread_init(omp_get_thread_num, retval)
++ call PAPIF_thread_init(my_thread_num, retval)
+
+
+ retval = PAPI_VER_CURRENT
+@@ -64,7 +64,6 @@
+
+ !$OMP END PARALLEL
+
+-
+ call PAPIf_stop(es, values(1), retval)
+ if ( retval .NE. PAPI_OK ) then
+ call ftest_fail(__FILE__, __LINE__,
+@@ -80,3 +79,12 @@
+ call ftests_pass(__FILE__)
+ end
+
++ function my_thread_num()
++ use omp_lib
++ integer::my_thread_num
++
++ my_thread_num = omp_get_thread_num()
++
++ end function my_thread_num
++
++
+--
+2.26.2
+
diff --git a/var/spack/repos/builtin/packages/papi/package.py b/var/spack/repos/builtin/packages/papi/package.py
index 04a425b3ad..621b5121db 100644
--- a/var/spack/repos/builtin/packages/papi/package.py
+++ b/var/spack/repos/builtin/packages/papi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -62,6 +62,7 @@ class Papi(AutotoolsPackage):
# Does not build with newer versions of gcc, see
# https://bitbucket.org/icl/papi/issues/46/cannot-compile-on-arch-linux
patch('https://bitbucket.org/icl/papi/commits/53de184a162b8a7edff48fed01a15980664e15b1/raw', sha256='64c57b3ad4026255238cc495df6abfacc41de391a0af497c27d0ac819444a1f8', when='@5.4.0:5.6.99%gcc@8:')
+ patch('crayftn-fixes.patch', when='@6.0.0:%cce@9:')
configure_directory = 'src'
diff --git a/var/spack/repos/builtin/packages/papyrus/package.py b/var/spack/repos/builtin/packages/papyrus/package.py
index bb13155510..4430e93652 100644
--- a/var/spack/repos/builtin/packages/papyrus/package.py
+++ b/var/spack/repos/builtin/packages/papyrus/package.py
@@ -1,20 +1,32 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os
class Papyrus(CMakePackage):
"""Parallel Aggregate Persistent Storage"""
homepage = "https://code.ornl.gov/eck/papyrus"
- url = "https://code.ornl.gov/eck/papyrus/repository/archive.tar.bz2?ref=v1.0.1"
+ url = "https://code.ornl.gov/eck/papyrus/repository/archive.tar.bz2?ref=v1.0.2"
git = "https://code.ornl.gov/eck/papyrus.git"
version('master', branch='master')
+ version('1.0.2', sha256='b6cfcff99f73ded8e4ca4b165bc182cd5cac60f0c0cf4f93649b77d074445645')
version('1.0.1', sha256='3772fd6f2c301faf78f18c5e4dc3dbac57eb361861b091579609b3fff9e0bb17')
version('1.0.0', sha256='5d57c0bcc80de48951e42460785783b882087a5714195599d773a6eabde5c4c4')
depends_on('mpi')
+
+ def setup_run_environment(self, env):
+ if os.path.isdir(self.prefix.lib64):
+ lib_dir = self.prefix.lib64
+ else:
+ lib_dir = self.prefix.lib
+
+ env.prepend_path('CPATH', self.prefix.include)
+ env.prepend_path('LIBRARY_PATH', lib_dir)
+ env.prepend_path('LD_LIBRARY_PATH', lib_dir)
diff --git a/var/spack/repos/builtin/packages/paradiseo/package.py b/var/spack/repos/builtin/packages/paradiseo/package.py
index c235acbdc8..778799fc6e 100644
--- a/var/spack/repos/builtin/packages/paradiseo/package.py
+++ b/var/spack/repos/builtin/packages/paradiseo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -53,18 +53,13 @@ class Paradiseo(CMakePackage):
patch('fix_tutorials.patch')
def cmake_args(self):
- spec = self.spec
-
return [
'-DINSTALL_TYPE:STRING=MIN',
- '-DMPI:BOOL=%s' % ('TRUE' if '+mpi' in spec else 'FALSE'),
+ self.define_from_variant('MPI', 'mpi'),
# Note: This requires a C++11 compatible compiler
- '-DSMP:BOOL=%s' % ('TRUE' if '+smp' in spec else 'FALSE'),
- '-DEDO:BOOL=%s' % ('TRUE' if '+edo' in spec else 'FALSE'),
- '-DENABLE_CMAKE_TESTING:BOOL=%s' % (
- 'TRUE' if self.run_tests else 'FALSE'),
- '-DENABLE_OPENMP:BOOL=%s' % (
- 'TRUE' if '+openmp' in spec else 'FALSE'),
- '-DENABLE_GNUPLOT:BOOL=%s' % (
- 'TRUE' if '+gnuplot' in spec else 'FALSE')
+ self.define_from_variant('SMP', 'smp'),
+ self.define_from_variant('EDO', 'edo'),
+ self.define('ENABLE_CMAKE_TESTING', self.run_tests),
+ self.define_from_variant('ENABLE_OPENMP', 'openmp'),
+ self.define_from_variant('ENABLE_GNUPLOT', 'gnuplot')
]
diff --git a/var/spack/repos/builtin/packages/parallel-netcdf/package.py b/var/spack/repos/builtin/packages/parallel-netcdf/package.py
index 8f35ea98c6..902f007847 100644
--- a/var/spack/repos/builtin/packages/parallel-netcdf/package.py
+++ b/var/spack/repos/builtin/packages/parallel-netcdf/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import os
class ParallelNetcdf(AutotoolsPackage):
@@ -19,6 +20,8 @@ class ParallelNetcdf(AutotoolsPackage):
maintainers = ['skosukhin']
+ test_requires_compiler = True
+
def url_for_version(self, version):
if version >= Version('1.11.0'):
url = "https://parallel-netcdf.github.io/Release/pnetcdf-{0}.tar.gz"
@@ -28,6 +31,7 @@ class ParallelNetcdf(AutotoolsPackage):
return url.format(version.dotted)
version('master', branch='master')
+ version('1.12.2', sha256='3ef1411875b07955f519a5b03278c31e566976357ddfc74c2493a1076e7d7c74')
version('1.12.1', sha256='56f5afaa0ddc256791c405719b6436a83b92dcd5be37fe860dea103aee8250a2')
version('1.11.2', sha256='d2c18601b364c35b5acb0a0b46cd6e14cae456e0eb854e5c789cf65f3cd6a2a7')
version('1.11.1', sha256='0c587b707835255126a23c104c66c9614be174843b85b897b3772a590be45779')
@@ -169,3 +173,32 @@ class ParallelNetcdf(AutotoolsPackage):
args.append('--enable-burst-buffering')
return args
+
+ examples_src_dir = 'examples/CXX'
+
+ @run_after('install')
+ def cache_test_sources(self):
+ """Copy the example source files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources([self.examples_src_dir])
+
+ def test(self):
+ test_dir = join_path(self.install_test_root, self.examples_src_dir)
+ # pnetcdf has many examples to serve as a suitable smoke check.
+ # column_wise was chosen based on the E4S test suite. Other
+ # examples should work as well.
+ test_exe = 'column_wise'
+ options = ['{0}.cpp'.format(test_exe), '-o', test_exe, '-lpnetcdf']
+ reason = 'test: compiling and linking pnetcdf example'
+ self.run_test(self.spec['mpi'].mpicxx, options, [],
+ installed=False, purpose=reason, work_dir=test_dir)
+ mpiexe_list = ['mpirun', 'mpiexec', 'srun']
+ for mpiexe in mpiexe_list:
+ if os.path.isfile(mpiexe):
+ self.run_test(mpiexe, ['-n', '4', test_exe], [],
+ installed=False,
+ purpose='test: pnetcdf smoke test',
+ skip_missing=True,
+ work_dir=test_dir)
+ break
+ self.run_test('rm', ['-f', test_exe], work_dir=test_dir)
diff --git a/var/spack/repos/builtin/packages/parallel/package.py b/var/spack/repos/builtin/packages/parallel/package.py
index 4346efcbbb..deb8686027 100644
--- a/var/spack/repos/builtin/packages/parallel/package.py
+++ b/var/spack/repos/builtin/packages/parallel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/parallelio/package.py b/var/spack/repos/builtin/packages/parallelio/package.py
new file mode 100644
index 0000000000..378b79829e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/parallelio/package.py
@@ -0,0 +1,52 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Parallelio(CMakePackage):
+ """The Parallel IO libraries (PIO) are high-level parallel I/O C and
+ Fortran libraries for applications that need to do netCDF I/O from
+ large numbers of processors on a HPC system."""
+
+ homepage = "https://ncar.github.io/ParallelIO/"
+ url = "https://github.com/NCAR/ParallelIO/archive/pio2_5_2.tar.gz"
+
+ maintainers = ['tkameyama']
+
+ version('2_5_2', sha256='935bc120ef3bf4fe09fb8bfdf788d05fb201a125d7346bf6b09e27ac3b5f345c')
+
+ variant('pnetcdf', default=False, description='enable pnetcdf')
+
+ depends_on('mpi')
+ depends_on('netcdf-c +mpi', type='link')
+ depends_on('netcdf-fortran', type='link')
+ depends_on('parallel-netcdf', type='link', when='+pnetcdf')
+
+ resource(name='CMake_Fortran_utils',
+ git='https://github.com/CESM-Development/CMake_Fortran_utils.git',
+ tag='master')
+ resource(name='genf90',
+ git='https://github.com/PARALLELIO/genf90.git',
+ tag='genf90_200608')
+
+ def cmake_args(self):
+ define = self.define
+ spec = self.spec
+ env['CC'] = spec['mpi'].mpicc
+ env['FC'] = spec['mpi'].mpifc
+ src = self.stage.source_path
+ args = [
+ define('NetCDF_C_PATH', spec['netcdf-c'].prefix),
+ define('NetCDF_Fortran_PATH', spec['netcdf-fortran'].prefix),
+ define('USER_CMAKE_MODULE_PATH', join_path(src, 'CMake_Fortran_utils')),
+ define('GENF90_PATH', join_path(src, 'genf90')),
+ ]
+ if spec.satisfies('+pnetcdf'):
+ args.extend([
+ define('PnetCDF_C_PATH', spec['parallel-netcdf'].prefix),
+ define('PnetCDF_Fortran_PATH', spec['parallel-netcdf'].prefix),
+ ])
+ return args
diff --git a/var/spack/repos/builtin/packages/parallelmergetree/package.py b/var/spack/repos/builtin/packages/parallelmergetree/package.py
index 36069e755f..54c246f0b0 100644
--- a/var/spack/repos/builtin/packages/parallelmergetree/package.py
+++ b/var/spack/repos/builtin/packages/parallelmergetree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,18 +17,30 @@ class Parallelmergetree(CMakePackage):
maintainers = ['spetruzza']
- version('develop',
- commit='6774ed74fd13b9747ac792978a676ce6e8b05cab',
+ version('1.0.2',
+ git='https://bitbucket.org/cedmav/parallelmergetree.git',
+ tag='v1.0.2',
submodules=True)
- depends_on('babelflow@develop')
+ version('1.0.0',
+ git='https://bitbucket.org/cedmav/parallelmergetree.git',
+ tag='v1.0.0',
+ submodules=True)
+
+ depends_on('babelflow')
variant("shared", default=True, description="Build ParallelMergeTree as shared libs")
def cmake_args(self):
- args = [
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'),
- '-DLIBRARY_ONLY=ON'
- ]
+ args = []
+
+ if "+shared" in self.spec:
+ args.append('-DBUILD_SHARED_LIBS=ON')
+ else:
+ args.append('-DBUILD_SHARED_LIBS=OFF')
+
+ args.append('-DLIBRARY_ONLY=ON')
+ args.append('-DBabelFlow_DIR={0}'.format(
+ self.spec['babelflow'].prefix))
+
return args
diff --git a/var/spack/repos/builtin/packages/paraver/package.py b/var/spack/repos/builtin/packages/paraver/package.py
index fe305fc07e..1b8997d4ec 100644
--- a/var/spack/repos/builtin/packages/paraver/package.py
+++ b/var/spack/repos/builtin/packages/paraver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/paraview/package.py b/var/spack/repos/builtin/packages/paraview/package.py
index 18b3c36e24..b0b83914c2 100644
--- a/var/spack/repos/builtin/packages/paraview/package.py
+++ b/var/spack/repos/builtin/packages/paraview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,9 +17,11 @@ class Paraview(CMakePackage, CudaPackage):
list_depth = 1
git = "https://gitlab.kitware.com/paraview/paraview.git"
- maintainers = ['chuckatkins', 'danlipsa']
+ maintainers = ['chuckatkins', 'danlipsa', 'vicentebolea']
- version('develop', branch='master', submodules=True)
+ version('master', branch='master', submodules=True)
+ version('5.9.1', sha256='0d486cb6fbf55e428845c9650486f87466efcb3155e40489182a7ea85dfd4c8d', preferred=True)
+ version('5.9.0', sha256='b03258b7cddb77f0ee142e3e77b377e5b1f503bcabc02bfa578298c99a06980d')
version('5.8.1', sha256='7653950392a0d7c0287c26f1d3a25cdbaa11baa7524b0af0e6a1a0d7d487d034')
version('5.8.0', sha256='219e4107abf40317ce054408e9c3b22fb935d464238c1c00c0161f1c8697a3f9')
version('5.7.0', sha256='e41e597e1be462974a03031380d9e5ba9a7efcdb22e4ca2f3fec50361f310874')
@@ -50,6 +52,11 @@ class Paraview(CMakePackage, CudaPackage):
description='Builds a shared version of the library')
variant('kits', default=True,
description='Use module kits')
+ variant('cuda_arch', default='native', multi=False,
+ values=('native', 'fermi', 'kepler', 'maxwell',
+ 'pascal', 'volta', 'turing', 'ampere', 'all', 'none'),
+ description='CUDA architecture')
+ variant('advanced_debug', default=False, description="Enable all other debug flags beside build_type, such as VTK_DEBUG_LEAK")
conflicts('+python', when='+python3')
# Python 2 support dropped with 5.9.0
@@ -119,12 +126,16 @@ class Paraview(CMakePackage, CudaPackage):
depends_on('netcdf-c')
depends_on('pegtl')
depends_on('protobuf@3.4:')
- depends_on('pugixml')
depends_on('libxml2')
depends_on('lz4')
- depends_on('lzma')
+ depends_on('xz')
depends_on('zlib')
+ # Older builds of pugi export their symbols differently,
+ # and pre-5.9 is unable to handle that.
+ depends_on('pugixml@:1.10', when='@:5.8.99')
+ depends_on('pugixml', when='@5.9:')
+
# Can't contretize with python2 and py-setuptools@45.0.0:
depends_on('py-setuptools@:44.99.99', when='+python')
# Can't contretize with python2 and py-pillow@7.0.0:
@@ -144,6 +155,9 @@ class Paraview(CMakePackage, CudaPackage):
# Broken H5Part with external parallel HDF5
patch('h5part-parallel.patch', when='@5.7:5.7.999')
+ # Broken downstream FindMPI
+ patch('vtkm-findmpi-downstream.patch', when='@5.9.0')
+
def url_for_version(self, version):
_urlfmt = 'http://www.paraview.org/files/v{0}/ParaView-v{1}{2}.tar.{3}'
"""Handle ParaView version-based custom URLs."""
@@ -157,7 +171,7 @@ class Paraview(CMakePackage, CudaPackage):
@property
def paraview_subdir(self):
"""The paraview subdirectory name as paraview-major.minor"""
- if self.spec.version == Version('develop'):
+ if self.spec.version == Version('master'):
return 'paraview-5.9'
else:
return 'paraview-{0}'.format(self.spec.version.up_to(2))
@@ -176,6 +190,12 @@ class Paraview(CMakePackage, CudaPackage):
env.set('PARAVIEW_VTK_DIR',
join_path(lib_dir, 'cmake', self.paraview_subdir, 'vtk'))
+ def flag_handler(self, name, flags):
+ if name == 'ldflags' and self.spec.satisfies('%intel'):
+ flags.append('-shared-intel')
+ return(None, flags, None)
+ return(flags, None, None)
+
def setup_run_environment(self, env):
# paraview 5.5 and later
# - cmake under lib/cmake/paraview-5.5
@@ -256,6 +276,8 @@ class Paraview(CMakePackage, CudaPackage):
cmake_args.extend([
'-DPARAVIEW_USE_QT:BOOL=%s' % variant_bool('+qt'),
'-DPARAVIEW_BUILD_WITH_EXTERNAL=ON'])
+ if spec.satisfies('%cce'):
+ cmake_args.append('-DVTK_PYTHON_OPTIONAL_LINK:BOOL=OFF')
else: # @5.7:
cmake_args.extend([
'-DPARAVIEW_BUILD_QT_GUI:BOOL=%s' % variant_bool('+qt'),
@@ -333,6 +355,9 @@ class Paraview(CMakePackage, CudaPackage):
else:
cmake_args.append('-DVTKm_ENABLE_CUDA:BOOL=%s' %
variant_bool('+cuda'))
+ if spec.satisfies('+cuda') and not spec.satisfies('cuda_arch=native'):
+ cmake_args.append('-DVTKm_CUDA_Architecture=%s' %
+ spec.variants['cuda_arch'].value)
if 'darwin' in spec.architecture:
cmake_args.extend([
@@ -365,4 +390,16 @@ class Paraview(CMakePackage, CudaPackage):
if '%intel' in spec and spec.version >= Version('5.6'):
cmake_args.append('-DPARAVIEW_ENABLE_MOTIONFX:BOOL=OFF')
+ # Encourage Paraview to use the correct Python libs
+ if spec.satisfies('+python') or spec.satisfies('+python3'):
+ pylibdirs = spec['python'].libs.directories
+ cmake_args.append(
+ "-DCMAKE_INSTALL_RPATH={0}".format(
+ ":".join(self.rpath + pylibdirs)
+ )
+ )
+
+ if '+advanced_debug' in spec:
+ cmake_args.append('-DVTK_DEBUG_LEAKS:BOOL=ON')
+
return cmake_args
diff --git a/var/spack/repos/builtin/packages/paraview/vtkm-findmpi-downstream.patch b/var/spack/repos/builtin/packages/paraview/vtkm-findmpi-downstream.patch
new file mode 100644
index 0000000000..31356ea51a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/paraview/vtkm-findmpi-downstream.patch
@@ -0,0 +1,51 @@
+From 5bf0eff1563820d7c997649da372ab003fd4af81 Mon Sep 17 00:00:00 2001
+From: Chuck Atkins <chuck.atkins@kitware.com>
+Date: Mon, 15 Feb 2021 13:59:50 -0500
+Subject: [PATCH] CMake: Fix FindMPI getting consumed by newer CMake versions
+
+---
+ CMake/patches/FindMPI.cmake | 11 +++++++++++
+ CMakeLists.txt | 7 ++++++-
+ 2 files changed, 17 insertions(+), 1 deletion(-)
+ create mode 100644 CMake/patches/FindMPI.cmake
+
+diff --git a/VTK/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/FindMPI.cmake b/VTK/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/FindMPI.cmake
+new file mode 100644
+index 000000000..a4ed44f04
+--- /dev/null
++++ b/VTK/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/FindMPI.cmake
+@@ -0,0 +1,11 @@
++#------------------------------------------------------------------------------#
++# Distributed under the OSI-approved Apache License, Version 2.0. See
++# accompanying file Copyright.txt for details.
++#------------------------------------------------------------------------------#
++
++# This module is already included in new versions of CMake
++if(CMAKE_VERSION VERSION_LESS 3.15)
++ include(${CMAKE_CURRENT_LIST_DIR}/3.15/FindMPI.cmake)
++else()
++ include(${CMAKE_ROOT}/Modules/FindMPI.cmake)
++endif()
+diff --git a/VTK/ThirdParty/vtkm/vtkvtkm/vtk-m/CMakeLists.txt b/VTK/ThirdParty/vtkm/vtkvtkm/vtk-m/CMakeLists.txt
+index e907495f3..fa464ab8d 100644
+--- a/VTK/ThirdParty/vtkm/vtkvtkm/vtk-m/CMakeLists.txt
++++ b/VTK/ThirdParty/vtkm/vtkvtkm/vtk-m/CMakeLists.txt
+@@ -277,9 +277,14 @@ if(NOT VTKm_INSTALL_ONLY_LIBRARIES)
+ FILES
+ ${VTKm_SOURCE_DIR}/CMake/VTKmCMakeBackports.cmake
+ ${VTKm_SOURCE_DIR}/CMake/FindTBB.cmake
+- ${VTKm_SOURCE_DIR}/CMake/patches/3.15/FindMPI.cmake
++ ${VTKm_SOURCE_DIR}/CMake/patches/FindMPI.cmake
+ DESTINATION ${VTKm_INSTALL_CMAKE_MODULE_DIR}
+ )
++ install(
++ FILES
++ ${VTKm_SOURCE_DIR}/CMake/patches/3.15/FindMPI.cmake
++ DESTINATION ${VTKm_INSTALL_CMAKE_MODULE_DIR}/3.15
++ )
+
+ # Install support files.
+ install(
+--
+2.24.2
+
diff --git a/var/spack/repos/builtin/packages/parmetis/package.py b/var/spack/repos/builtin/packages/parmetis/package.py
index d1f9c434af..a7a3749afd 100644
--- a/var/spack/repos/builtin/packages/parmetis/package.py
+++ b/var/spack/repos/builtin/packages/parmetis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/parmgridgen/package.py b/var/spack/repos/builtin/packages/parmgridgen/package.py
index eccaec1263..97dd2144cb 100644
--- a/var/spack/repos/builtin/packages/parmgridgen/package.py
+++ b/var/spack/repos/builtin/packages/parmgridgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/parquet-cpp/package.py b/var/spack/repos/builtin/packages/parquet-cpp/package.py
index 85222f83a2..19ebba1e8a 100644
--- a/var/spack/repos/builtin/packages/parquet-cpp/package.py
+++ b/var/spack/repos/builtin/packages/parquet-cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/parquet-format/package.py b/var/spack/repos/builtin/packages/parquet-format/package.py
index ae65ccd211..31977d5b8e 100644
--- a/var/spack/repos/builtin/packages/parquet-format/package.py
+++ b/var/spack/repos/builtin/packages/parquet-format/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/parsec/package.py b/var/spack/repos/builtin/packages/parsec/package.py
new file mode 100644
index 0000000000..1397abec01
--- /dev/null
+++ b/var/spack/repos/builtin/packages/parsec/package.py
@@ -0,0 +1,88 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+#
+from spack import *
+import llnl.util.tty as tty
+
+
+class Parsec(CMakePackage, CudaPackage):
+ """PaRSEC: the Parallel Runtime Scheduler and Execution Controller
+
+ PaRSEC is a runtime and a programming toolbox that support the design and
+ parallel execution of micro-tasks on distributed, heterogeneous systems.
+ """
+
+ homepage = "https://icl.utk.edu/dte"
+ git = "https://bitbucket.org/icldistcomp/parsec.git"
+ url = "https://bitbucket.org/icldistcomp/parsec/get/parsec-3.0.2012.tar.bz2"
+ list_url = "https://bitbucket.org/icldistcomp/parsec/downloads/?tab=tags"
+ maintainers = ['abouteiller', 'bosilca', 'herault']
+
+ test_requires_compiler = True
+
+ version('master', branch='master')
+ version('3.0.2012', sha256='f565bcfffe106be8237b6aea3e83a5770607b7236606414b6f270244fa6ec3bc')
+ version('1.1.0', sha256='d2928033c121000ae0a554f1e7f757c1f22274a8b74457ecd52744ae1f70b95a', url='https://bitbucket.org/icldistcomp/parsec/get/v1.1.0.tar.bz2')
+
+ variant('build_type', default='RelWithDebInfo', description='CMake build type', values=('Debug', 'Release', 'RelWithDebInfo'))
+ variant('shared', default=True, description='Build a shared library')
+ variant('cuda', default=True, description='Build with CUDA')
+ variant('profile', default=False, description='Generate profiling data')
+ variant('debug_verbose', default=False, description='Debug version with verbose and paranoid (incurs performance overhead!)')
+ conflicts('+debug_verbose build_type=Release', msg='You need to set build_type=Debug for +debug_verbose')
+ conflicts('+debug_verbose build_type=RelWithDebInfo', msg='You need to set build_type=Debug for +debug_verbose')
+ # TODO: Spack does not handle cross-compilation atm
+ # variant('xcompile', default=False, description='Cross compile')
+
+ depends_on('cmake@3.16:', type='build')
+ depends_on('python', type='build')
+ depends_on('hwloc')
+ depends_on('mpi')
+ depends_on('papi', when='+profile')
+ depends_on('python', type=('build', 'run'), when='+profile')
+ depends_on('py-cython', type=('build', 'run'), when='+profile')
+ depends_on('py-pandas', type=('build', 'run'), when='+profile')
+ depends_on('py-matplotlib', type=('build', 'run'), when='+profile')
+ depends_on('py-tables', type=('build', 'run'), when='+profile')
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('PARSEC_GPU_WITH_CUDA', 'cuda'),
+ self.define_from_variant('PARSEC_PROF_TRACE', 'profile'),
+ self.define_from_variant('PARSEC_DEBUG_HISTORY', 'debug_verbose'),
+ self.define_from_variant('PARSEC_DEBUG_PARANOID', 'debug_verbose'),
+ ]
+ return args
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check(self):
+ """Run ctest after building binary."""
+ with working_dir(self.build_directory):
+ try:
+ ctest('--output-on-failure', '-j1')
+ except ProcessError:
+ warn = 'ctest tests failed.\n'
+ warn += 'Please report this failure to:\n'
+ warn += 'https://bitbucket.org/icldistcomp/parsec/issues'
+ tty.msg(warn)
+
+ def test(self):
+ """Compile and run a user program with the installed library"""
+ with working_dir(join_path(self.install_test_root,
+ 'contrib/build_with_parsec')):
+ self.run_test('cmake',
+ options=['.'],
+ purpose='Check if CMake can find PaRSEC and its targets')
+ self.run_test('make',
+ purpose='Check if tests can compile')
+ self.run_test('./dtd_test_allreduce')
+ self.run_test('./write_check')
+
+ @run_after('install')
+ def cache_test_sources(self):
+ srcs = ['contrib/build_with_parsec']
+ self.cache_extra_test_sources(srcs)
diff --git a/var/spack/repos/builtin/packages/parsimonator/package.py b/var/spack/repos/builtin/packages/parsimonator/package.py
index d83dbab338..fb17d2d39b 100644
--- a/var/spack/repos/builtin/packages/parsimonator/package.py
+++ b/var/spack/repos/builtin/packages/parsimonator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/parsplice/package.py b/var/spack/repos/builtin/packages/parsplice/package.py
index 308bcd79f4..c1e1ed2e1f 100644
--- a/var/spack/repos/builtin/packages/parsplice/package.py
+++ b/var/spack/repos/builtin/packages/parsplice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/partitionfinder/package.py b/var/spack/repos/builtin/packages/partitionfinder/package.py
index 302ead2b40..6ef6d5ef65 100644
--- a/var/spack/repos/builtin/packages/partitionfinder/package.py
+++ b/var/spack/repos/builtin/packages/partitionfinder/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pasta/package.py b/var/spack/repos/builtin/packages/pasta/package.py
index cb1c073c08..020897c6b2 100644
--- a/var/spack/repos/builtin/packages/pasta/package.py
+++ b/var/spack/repos/builtin/packages/pasta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/patch/package.py b/var/spack/repos/builtin/packages/patch/package.py
index a5e9a0f4bc..673f49b5d8 100644
--- a/var/spack/repos/builtin/packages/patch/package.py
+++ b/var/spack/repos/builtin/packages/patch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/patchelf/package.py b/var/spack/repos/builtin/packages/patchelf/package.py
index 796fd533eb..04a93e7427 100644
--- a/var/spack/repos/builtin/packages/patchelf/package.py
+++ b/var/spack/repos/builtin/packages/patchelf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,14 +11,26 @@ class Patchelf(AutotoolsPackage):
ELF executables."""
homepage = "https://nixos.org/patchelf.html"
- url = "https://nixos.org/releases/patchelf/patchelf-0.10/patchelf-0.10.tar.gz"
+ url = "https://github.com/NixOS/patchelf/releases/download/0.12/patchelf-0.12.tar.bz2"
list_url = "https://nixos.org/releases/patchelf/"
list_depth = 1
+ version('0.12', sha256='699a31cf52211cf5ad6e35a8801eb637bc7f3c43117140426400d67b7babd792')
+ version('0.11', sha256='e52378cc2f9379c6e84a04ac100a3589145533a7b0cd26ef23c79dfd8a9038f9')
version('0.10', sha256='b2deabce05c34ce98558c0efb965f209de592197b2c88e930298d740ead09019')
version('0.9', sha256='f2aa40a6148cb3b0ca807a1bf836b081793e55ec9e5540a5356d800132be7e0a')
version('0.8', sha256='14af06a2da688d577d64ff8dac065bb8903bbffbe01d30c62df7af9bf4ce72fe')
+ # Fixes a bug where patchelf errors with 'unsupported overlap
+ # of SHT_NOTE and PT_NOTE'
+ patch('https://github.com/NixOS/patchelf/pull/230.patch', sha256='a155f233b228f02d7886e304cb13898d93801b52f351e098c2cc0719697ec9d0', when='@0.12')
+
+ def url_for_version(self, version):
+ if version < Version('0.12'):
+ return "https://nixos.org/releases/patchelf/patchelf-{0}/patchelf-{1}.tar.gz".format(version, version)
+
+ return "https://github.com/NixOS/patchelf/releases/download/{0}/patchelf-{1}.tar.bz2".format(version, version)
+
def test(self):
# Check patchelf in prefix and reports the correct version
reason = 'test: ensuring patchelf version is {0}' \
diff --git a/var/spack/repos/builtin/packages/patchutils/package.py b/var/spack/repos/builtin/packages/patchutils/package.py
index f89e60b1cc..1d7d1ecb95 100644
--- a/var/spack/repos/builtin/packages/patchutils/package.py
+++ b/var/spack/repos/builtin/packages/patchutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pathfinder/package.py b/var/spack/repos/builtin/packages/pathfinder/package.py
index 8ce7ecca1e..22b0659918 100644
--- a/var/spack/repos/builtin/packages/pathfinder/package.py
+++ b/var/spack/repos/builtin/packages/pathfinder/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pax-utils/package.py b/var/spack/repos/builtin/packages/pax-utils/package.py
index 62776831c0..7c7f1efbfa 100644
--- a/var/spack/repos/builtin/packages/pax-utils/package.py
+++ b/var/spack/repos/builtin/packages/pax-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pbbam/package.py b/var/spack/repos/builtin/packages/pbbam/package.py
index b84494d86d..425f7160b4 100644
--- a/var/spack/repos/builtin/packages/pbbam/package.py
+++ b/var/spack/repos/builtin/packages/pbbam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pbmpi/package.py b/var/spack/repos/builtin/packages/pbmpi/package.py
index 205af53280..7dd8f14d5c 100644
--- a/var/spack/repos/builtin/packages/pbmpi/package.py
+++ b/var/spack/repos/builtin/packages/pbmpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pbsuite/package.py b/var/spack/repos/builtin/packages/pbsuite/package.py
index fb81eb65dc..68dedeeb4e 100644
--- a/var/spack/repos/builtin/packages/pbsuite/package.py
+++ b/var/spack/repos/builtin/packages/pbsuite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pciutils/package.py b/var/spack/repos/builtin/packages/pciutils/package.py
index da00975a02..dac91808e6 100644
--- a/var/spack/repos/builtin/packages/pciutils/package.py
+++ b/var/spack/repos/builtin/packages/pciutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,8 +16,16 @@ class Pciutils(MakefilePackage):
version('3.6.4', sha256='551d0ac33f030868b7e95c29e58dc2b1882455dbc9c15c15adf7086e664131f1')
version('3.6.3', sha256='7ab0fbb35cffa326eb852539260562bac14f3d27cda8c70bc2cf3211ed97c014')
+ variant('lib', default=False, description='Install libraries with headers')
+
+ def build(self, spec, prefix):
+ make('PREFIX={0}'.format(prefix))
+
def install(self, spec, prefix):
- make('install', 'PREFIX={0}'.format(prefix))
+ if '+lib' in spec:
+ make('install-lib', 'install', 'PREFIX={0}'.format(prefix))
+ else:
+ make('install', 'PREFIX={0}'.format(prefix))
def setup_run_environment(self, env):
env.prepend_path('PATH', self.prefix.sbin)
diff --git a/var/spack/repos/builtin/packages/pcl/package.py b/var/spack/repos/builtin/packages/pcl/package.py
new file mode 100644
index 0000000000..5bd60d353f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pcl/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Pcl(CMakePackage):
+ """The Point Cloud Library (PCL) is a standalone, large scale,
+ open project for 2D/3D image and point cloud processing."""
+
+ homepage = "https://pointclouds.org/"
+ url = "https://github.com/PointCloudLibrary/pcl/releases/download/pcl-1.11.1/source.tar.gz"
+
+ version('1.11.1', sha256='19d1a0bee2bc153de47c05da54fc6feb23393f306ab2dea2e25419654000336e')
+
+ depends_on('cmake@3.5:', type='build')
+ depends_on('eigen@3.1:')
+ depends_on('flann@1.7:')
+ depends_on('boost@1.55:+filesystem+date_time+iostreams+system')
diff --git a/var/spack/repos/builtin/packages/pcma/package.py b/var/spack/repos/builtin/packages/pcma/package.py
index efde640c07..095247dcb5 100644
--- a/var/spack/repos/builtin/packages/pcma/package.py
+++ b/var/spack/repos/builtin/packages/pcma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pcre/package.py b/var/spack/repos/builtin/packages/pcre/package.py
index a4d1794148..0d2ee33522 100644
--- a/var/spack/repos/builtin/packages/pcre/package.py
+++ b/var/spack/repos/builtin/packages/pcre/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pcre2/package.py b/var/spack/repos/builtin/packages/pcre2/package.py
index 58a4e013f3..33d75bb9c9 100644
--- a/var/spack/repos/builtin/packages/pcre2/package.py
+++ b/var/spack/repos/builtin/packages/pcre2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Pcre2(AutotoolsPackage):
homepage = "http://www.pcre.org"
url = "https://ftp.pcre.org/pub/pcre/pcre2-10.31.tar.bz2"
+ version('10.36', sha256='a9ef39278113542968c7c73a31cfcb81aca1faa64690f400b907e8ab6b4a665c')
version('10.35', sha256='9ccba8e02b0ce78046cdfb52e5c177f0f445e421059e43becca4359c669d4613')
version('10.31', sha256='e07d538704aa65e477b6a392b32ff9fc5edf75ab9a40ddfc876186c4ff4d68ac')
version('10.20', sha256='332e287101c9e9567d1ed55391b338b32f1f72c5b5ee7cc81ef2274a53ad487a')
diff --git a/var/spack/repos/builtin/packages/pdf2svg/package.py b/var/spack/repos/builtin/packages/pdf2svg/package.py
index da10b3f5b0..116625cce4 100644
--- a/var/spack/repos/builtin/packages/pdf2svg/package.py
+++ b/var/spack/repos/builtin/packages/pdf2svg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pdftk/package.py b/var/spack/repos/builtin/packages/pdftk/package.py
index 0788be1861..9fe2e2fa8e 100644
--- a/var/spack/repos/builtin/packages/pdftk/package.py
+++ b/var/spack/repos/builtin/packages/pdftk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pdsh/package.py b/var/spack/repos/builtin/packages/pdsh/package.py
index d28c2f695d..6fa7b6e85e 100644
--- a/var/spack/repos/builtin/packages/pdsh/package.py
+++ b/var/spack/repos/builtin/packages/pdsh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pdt/cray_configure.patch b/var/spack/repos/builtin/packages/pdt/cray_configure.patch
new file mode 100644
index 0000000000..1c6a4a373d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pdt/cray_configure.patch
@@ -0,0 +1,14 @@
+--- a/configure 2019-05-13 21:57:59.000000000 -0500
++++ b/configure 2021-03-04 10:09:56.612397173 -0600
+@@ -98,6 +98,11 @@
+ ARCH=CRAYXMT
+ PLATFORM=crayxmt
+ echo "Looks like a Cray XMT machine..."
++ elif [ -r /opt/cray ]
++ then
++ ARCH=CRAY
++ PLATFORM=x86_64
++ echo "Looks like a Cray machine..."
+ else
+ ARCH=X86_64
+ PLATFORM=x86_64
diff --git a/var/spack/repos/builtin/packages/pdt/package.py b/var/spack/repos/builtin/packages/pdt/package.py
index bf3f954982..32678012f6 100644
--- a/var/spack/repos/builtin/packages/pdt/package.py
+++ b/var/spack/repos/builtin/packages/pdt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,6 +32,8 @@ class Pdt(AutotoolsPackage):
variant('pic', default=False, description="Builds with pic")
+ patch('cray_configure.patch', when='%cce')
+
def patch(self):
spec = self.spec
if spec.satisfies('%clang') or spec.satisfies('%apple-clang'):
@@ -50,6 +52,8 @@ class Pdt(AutotoolsPackage):
options.append('-GNU')
elif self.compiler.name == 'clang':
options.append('-clang')
+ elif self.compiler.name == 'cce':
+ options.append('-CC')
else:
raise InstallError('Unknown/unsupported compiler family')
diff --git a/var/spack/repos/builtin/packages/pegtl/package.py b/var/spack/repos/builtin/packages/pegtl/package.py
index 1b972e40e6..e686c79f67 100644
--- a/var/spack/repos/builtin/packages/pegtl/package.py
+++ b/var/spack/repos/builtin/packages/pegtl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,9 +19,37 @@ class Pegtl(CMakePackage):
git = "https://github.com/taocpp/PEGTL.git"
version('master', branch='master')
+ version('3.2.0', sha256='91aa6529ef9e6b57368e7b5b1f04a3bd26a39419d30e35a3c5c66ef073926b56')
version('2.8.3', sha256='370afd0fbe6d73c448a33c10fbe4a7254f92077f5a217317d0a32a9231293015')
version('2.1.4', sha256='d990dccc07b4d9ba548326d11c5c5e34fa88b34fe113cb5377da03dda29f23f2')
version('2.0.0', sha256='5aae0505077e051cae4d855c38049cc6cf71103a6cc8d0ddef01a576e8a60cc0')
# Ref: https://github.com/taocpp/PEGTL/blob/master/src/example/pegtl/json_classes.hpp
patch('change_to_virtual_destructor.patch', when='@:2.4')
+
+ # Ref: https://bugs.gentoo.org/733678
+ patch_url = 'https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/pegtl/files/pegtl-2.8.3-gcc-10.patch'
+ patch_checksum = 'fc40b0c7390f8c0473f2cb4821bda7a5e107f93ca9d2fafeff2065445bb39981'
+ patch(patch_url, sha256=patch_checksum, level=0, when='@2.1.4:2.8.3')
+
+ def cmake_args(self):
+
+ args = []
+ if self.run_tests:
+ args.extend([
+ '-DPEGTL_BUILD_EXAMPLES=ON',
+ '-DPEGTL_BUILD_TESTS=ON'
+ ])
+ else:
+ args.extend([
+ '-DPEGTL_BUILD_EXAMPLES=OFF',
+ '-DPEGTL_BUILD_TESTS=OFF'
+ ])
+
+ return args
+
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def check(self):
+ with working_dir(self.build_directory):
+ make('test', parallel=False)
diff --git a/var/spack/repos/builtin/packages/pennant/package.py b/var/spack/repos/builtin/packages/pennant/package.py
index 80f79b0ecc..1cbe6b9c37 100644
--- a/var/spack/repos/builtin/packages/pennant/package.py
+++ b/var/spack/repos/builtin/packages/pennant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/percept/package.py b/var/spack/repos/builtin/packages/percept/package.py
index 745643f335..a33c2f3667 100644
--- a/var/spack/repos/builtin/packages/percept/package.py
+++ b/var/spack/repos/builtin/packages/percept/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/percona-server/package.py b/var/spack/repos/builtin/packages/percona-server/package.py
index a718612603..22095246ab 100644
--- a/var/spack/repos/builtin/packages/percona-server/package.py
+++ b/var/spack/repos/builtin/packages/percona-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,4 +26,4 @@ class PerconaServer(CMakePackage):
depends_on('curl')
depends_on('bison', type='build')
depends_on('flex', type='build')
- depends_on('rpcsvc-proto', type='build')
+ depends_on('rpcsvc-proto')
diff --git a/var/spack/repos/builtin/packages/perfstubs/package.py b/var/spack/repos/builtin/packages/perfstubs/package.py
index 9162e749fc..32f51fa978 100644
--- a/var/spack/repos/builtin/packages/perfstubs/package.py
+++ b/var/spack/repos/builtin/packages/perfstubs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,10 +25,7 @@ class Perfstubs(CMakePackage):
variant('static', default=False, description='Build static executable support')
def cmake_args(self):
- spec = self.spec
-
args = [
- '-DPERFSTUBS_USE_STATIC:BOOL={0}'.format(
- 'ON' if '+static' in spec else 'OFF')
+ self.define_from_variant('PERFSTUBS_USE_STATIC', 'static')
]
return args
diff --git a/var/spack/repos/builtin/packages/perl-acme-damn/package.py b/var/spack/repos/builtin/packages/perl-acme-damn/package.py
index ac5a5c0cad..79180eb922 100644
--- a/var/spack/repos/builtin/packages/perl-acme-damn/package.py
+++ b/var/spack/repos/builtin/packages/perl-acme-damn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-algorithm-diff/package.py b/var/spack/repos/builtin/packages/perl-algorithm-diff/package.py
index 9936e43f85..f68efc3fad 100644
--- a/var/spack/repos/builtin/packages/perl-algorithm-diff/package.py
+++ b/var/spack/repos/builtin/packages/perl-algorithm-diff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-alien-build/package.py b/var/spack/repos/builtin/packages/perl-alien-build/package.py
index 7e227821aa..9fff553333 100644
--- a/var/spack/repos/builtin/packages/perl-alien-build/package.py
+++ b/var/spack/repos/builtin/packages/perl-alien-build/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-alien-libxml2/package.py b/var/spack/repos/builtin/packages/perl-alien-libxml2/package.py
index 0ec9551e4a..6e5d36685f 100644
--- a/var/spack/repos/builtin/packages/perl-alien-libxml2/package.py
+++ b/var/spack/repos/builtin/packages/perl-alien-libxml2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-alien-svn/package.py b/var/spack/repos/builtin/packages/perl-alien-svn/package.py
new file mode 100644
index 0000000000..a657988876
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-alien-svn/package.py
@@ -0,0 +1,42 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import sys
+
+from spack import *
+
+
+class PerlAlienSvn(PerlPackage):
+ """Perl SVN extension."""
+
+ homepage = "http://metacpan.org/source/MSCHWERN/Alien-SVN-v1.8.11.0"
+ url = "http://cpan.metacpan.org/authors/id/M/MS/MSCHWERN/Alien-SVN-v1.8.11.0.tar.gz"
+
+ version('1.8.11.0', sha256='acf8ebce1cb6958ef24611a453abee32b8e4dfe767563834362891ef3f30fc68')
+ version('1.7.19.0', sha256='80df1eef9ffb7b0fb0c45285eec05d15bcb45c349c441f97131c64b8697dceb0')
+ version('1.7.17.1', sha256='35ae83fda2ef9a5b48012ac8317ec063058d1e9fc5f2719fa141eecedf6baef8')
+ version('1.7.17.0', sha256='f3e11ac89453e91f9c298c43958f8115bbb49cb67bb22a0e92690a8e8447c3d0')
+ version('1.7.3.1', sha256='e85efca8f9519b2cef81f39e026d227c077c9531c41f44995b31550c3af02366')
+ version('1.7.3.0', sha256='02abbe17ad7db912001e6f1c5018cec08c3840e0c32700363a79274e144e74e5')
+ version('1.6.12.1', sha256='a89d8eeff61e34aa7b3d35dee3e6752b12dfa5f0f04bf69d796846cf0391f53d')
+
+ depends_on('perl-module-build', type='build')
+ depends_on('apr@1.6.2', type='build')
+ depends_on('apr-util', type=('build', 'link'))
+ depends_on('sqlite', type='build')
+ depends_on('zlib')
+ depends_on('libbsd')
+
+ def setup_build_environment(self, env):
+ # non-interactive build, use defaults
+ env.set('PERL_MM_USE_DEFAULT', '1')
+
+ def setup_run_environment(self, env):
+ # SVN libs are not RPATHed correctly...
+ # TODO: extend to other plaforms
+ if sys.platform.startswith('linux'):
+ env.prepend_path('LD_LIBRARY_PATH', join_path(
+ self.prefix, 'lib', 'perl4', 'x86_64-linux-thread-multi',
+ 'Alien', 'SVN'))
diff --git a/var/spack/repos/builtin/packages/perl-app-cmd/package.py b/var/spack/repos/builtin/packages/perl-app-cmd/package.py
index 39fe52402c..94e3eb27c7 100644
--- a/var/spack/repos/builtin/packages/perl-app-cmd/package.py
+++ b/var/spack/repos/builtin/packages/perl-app-cmd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-array-utils/package.py b/var/spack/repos/builtin/packages/perl-array-utils/package.py
index beb3619ecb..4a1dd58ddb 100644
--- a/var/spack/repos/builtin/packages/perl-array-utils/package.py
+++ b/var/spack/repos/builtin/packages/perl-array-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py b/var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py
index 2fde7fc975..3f182d7caf 100644
--- a/var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py
+++ b/var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-bio-searchio-hmmer/package.py b/var/spack/repos/builtin/packages/perl-bio-searchio-hmmer/package.py
index ae1c8c0c78..35841c28ec 100644
--- a/var/spack/repos/builtin/packages/perl-bio-searchio-hmmer/package.py
+++ b/var/spack/repos/builtin/packages/perl-bio-searchio-hmmer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-bioperl/package.py b/var/spack/repos/builtin/packages/perl-bioperl/package.py
index 815eb8fcef..174bf4b94c 100644
--- a/var/spack/repos/builtin/packages/perl-bioperl/package.py
+++ b/var/spack/repos/builtin/packages/perl-bioperl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-bit-vector/package.py b/var/spack/repos/builtin/packages/perl-bit-vector/package.py
index 6d4fcbc44d..ad8e0ff50f 100644
--- a/var/spack/repos/builtin/packages/perl-bit-vector/package.py
+++ b/var/spack/repos/builtin/packages/perl-bit-vector/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-cairo/package.py b/var/spack/repos/builtin/packages/perl-cairo/package.py
index 6ac4f1e682..310dc5725c 100644
--- a/var/spack/repos/builtin/packages/perl-cairo/package.py
+++ b/var/spack/repos/builtin/packages/perl-cairo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-capture-tiny/package.py b/var/spack/repos/builtin/packages/perl-capture-tiny/package.py
index 0f6c7df5b3..8ec29b2040 100644
--- a/var/spack/repos/builtin/packages/perl-capture-tiny/package.py
+++ b/var/spack/repos/builtin/packages/perl-capture-tiny/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-carp-clan/package.py b/var/spack/repos/builtin/packages/perl-carp-clan/package.py
index 74058a6206..23a44b6144 100644
--- a/var/spack/repos/builtin/packages/perl-carp-clan/package.py
+++ b/var/spack/repos/builtin/packages/perl-carp-clan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-cgi/package.py b/var/spack/repos/builtin/packages/perl-cgi/package.py
index 63b10b5ce2..76e071279b 100644
--- a/var/spack/repos/builtin/packages/perl-cgi/package.py
+++ b/var/spack/repos/builtin/packages/perl-cgi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py b/var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py
index 71cd1db575..ec64e55ec6 100644
--- a/var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py
+++ b/var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-class-inspector/package.py b/var/spack/repos/builtin/packages/perl-class-inspector/package.py
index a1d1b87605..7085b8b9a1 100644
--- a/var/spack/repos/builtin/packages/perl-class-inspector/package.py
+++ b/var/spack/repos/builtin/packages/perl-class-inspector/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-class-load-xs/package.py b/var/spack/repos/builtin/packages/perl-class-load-xs/package.py
index 6e4eb2b317..dd402bdb58 100644
--- a/var/spack/repos/builtin/packages/perl-class-load-xs/package.py
+++ b/var/spack/repos/builtin/packages/perl-class-load-xs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-class-load/package.py b/var/spack/repos/builtin/packages/perl-class-load/package.py
index e2890a406d..2717be5ee0 100644
--- a/var/spack/repos/builtin/packages/perl-class-load/package.py
+++ b/var/spack/repos/builtin/packages/perl-class-load/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-clone-choose/package.py b/var/spack/repos/builtin/packages/perl-clone-choose/package.py
index 903afa8800..8fd0307a83 100644
--- a/var/spack/repos/builtin/packages/perl-clone-choose/package.py
+++ b/var/spack/repos/builtin/packages/perl-clone-choose/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-clone/package.py b/var/spack/repos/builtin/packages/perl-clone/package.py
index baf0625396..9ad8fe1519 100644
--- a/var/spack/repos/builtin/packages/perl-clone/package.py
+++ b/var/spack/repos/builtin/packages/perl-clone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-compress-raw-bzip2/package.py b/var/spack/repos/builtin/packages/perl-compress-raw-bzip2/package.py
index 4935df1e1c..7ede37807d 100644
--- a/var/spack/repos/builtin/packages/perl-compress-raw-bzip2/package.py
+++ b/var/spack/repos/builtin/packages/perl-compress-raw-bzip2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-compress-raw-zlib/package.py b/var/spack/repos/builtin/packages/perl-compress-raw-zlib/package.py
index 4e850c1ca7..e67a7aa9c4 100644
--- a/var/spack/repos/builtin/packages/perl-compress-raw-zlib/package.py
+++ b/var/spack/repos/builtin/packages/perl-compress-raw-zlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-config-general/package.py b/var/spack/repos/builtin/packages/perl-config-general/package.py
index 3cbc8cf636..a68e8c2554 100644
--- a/var/spack/repos/builtin/packages/perl-config-general/package.py
+++ b/var/spack/repos/builtin/packages/perl-config-general/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-contextual-return/package.py b/var/spack/repos/builtin/packages/perl-contextual-return/package.py
index 1e7c993917..1568eff405 100644
--- a/var/spack/repos/builtin/packages/perl-contextual-return/package.py
+++ b/var/spack/repos/builtin/packages/perl-contextual-return/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py b/var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py
index cdaf06be25..0b0a1c1fe8 100644
--- a/var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py
+++ b/var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-data-dumper/package.py b/var/spack/repos/builtin/packages/perl-data-dumper/package.py
index 8c5d73a14e..8e09ebdf5c 100644
--- a/var/spack/repos/builtin/packages/perl-data-dumper/package.py
+++ b/var/spack/repos/builtin/packages/perl-data-dumper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-data-optlist/package.py b/var/spack/repos/builtin/packages/perl-data-optlist/package.py
index d1e17f1ab8..f125cb9cd1 100644
--- a/var/spack/repos/builtin/packages/perl-data-optlist/package.py
+++ b/var/spack/repos/builtin/packages/perl-data-optlist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-data-stag/package.py b/var/spack/repos/builtin/packages/perl-data-stag/package.py
index f18fb9f255..724a406a7f 100644
--- a/var/spack/repos/builtin/packages/perl-data-stag/package.py
+++ b/var/spack/repos/builtin/packages/perl-data-stag/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-date-manip/package.py b/var/spack/repos/builtin/packages/perl-date-manip/package.py
index 07f9850916..be1fedfa71 100644
--- a/var/spack/repos/builtin/packages/perl-date-manip/package.py
+++ b/var/spack/repos/builtin/packages/perl-date-manip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-db-file/package.py b/var/spack/repos/builtin/packages/perl-db-file/package.py
index 47791806a6..8e6a6d2e15 100644
--- a/var/spack/repos/builtin/packages/perl-db-file/package.py
+++ b/var/spack/repos/builtin/packages/perl-db-file/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-dbd-mysql/package.py b/var/spack/repos/builtin/packages/perl-dbd-mysql/package.py
index d7358ccca9..22001616e1 100644
--- a/var/spack/repos/builtin/packages/perl-dbd-mysql/package.py
+++ b/var/spack/repos/builtin/packages/perl-dbd-mysql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-dbd-pg/package.py b/var/spack/repos/builtin/packages/perl-dbd-pg/package.py
index 04ed9af3b3..a00f1315bc 100644
--- a/var/spack/repos/builtin/packages/perl-dbd-pg/package.py
+++ b/var/spack/repos/builtin/packages/perl-dbd-pg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-dbd-sqlite/package.py b/var/spack/repos/builtin/packages/perl-dbd-sqlite/package.py
index 9a082332aa..9c2c7549f0 100644
--- a/var/spack/repos/builtin/packages/perl-dbd-sqlite/package.py
+++ b/var/spack/repos/builtin/packages/perl-dbd-sqlite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-dbi/package.py b/var/spack/repos/builtin/packages/perl-dbi/package.py
index 1bfb8c5f94..9eb37493b9 100644
--- a/var/spack/repos/builtin/packages/perl-dbi/package.py
+++ b/var/spack/repos/builtin/packages/perl-dbi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-devel-cycle/package.py b/var/spack/repos/builtin/packages/perl-devel-cycle/package.py
index 36d47053c2..a0d35cf8b6 100644
--- a/var/spack/repos/builtin/packages/perl-devel-cycle/package.py
+++ b/var/spack/repos/builtin/packages/perl-devel-cycle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py b/var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py
index 888d592842..6e79016d0d 100644
--- a/var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py
+++ b/var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py b/var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py
index a1d11b5d24..197b19d281 100644
--- a/var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py
+++ b/var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py b/var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py
index 2f6a7c1696..56886ec65a 100644
--- a/var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py
+++ b/var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-devel-symdump/package.py b/var/spack/repos/builtin/packages/perl-devel-symdump/package.py
index 83084c0d46..15395784fe 100644
--- a/var/spack/repos/builtin/packages/perl-devel-symdump/package.py
+++ b/var/spack/repos/builtin/packages/perl-devel-symdump/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-digest-md5/package.py b/var/spack/repos/builtin/packages/perl-digest-md5/package.py
index 577e223cf2..0d08f863ea 100644
--- a/var/spack/repos/builtin/packages/perl-digest-md5/package.py
+++ b/var/spack/repos/builtin/packages/perl-digest-md5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py b/var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py
index 7a11c4ca3b..f7bf21d68d 100644
--- a/var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py
+++ b/var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-encode-locale/package.py b/var/spack/repos/builtin/packages/perl-encode-locale/package.py
index 225c8c7752..23b812c4b0 100644
--- a/var/spack/repos/builtin/packages/perl-encode-locale/package.py
+++ b/var/spack/repos/builtin/packages/perl-encode-locale/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-error/package.py b/var/spack/repos/builtin/packages/perl-error/package.py
index f274b4e78c..35812a7aba 100644
--- a/var/spack/repos/builtin/packages/perl-error/package.py
+++ b/var/spack/repos/builtin/packages/perl-error/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-eval-closure/package.py b/var/spack/repos/builtin/packages/perl-eval-closure/package.py
index 5341d59640..c891a0fd5d 100644
--- a/var/spack/repos/builtin/packages/perl-eval-closure/package.py
+++ b/var/spack/repos/builtin/packages/perl-eval-closure/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-exception-class/package.py b/var/spack/repos/builtin/packages/perl-exception-class/package.py
index 893c2f817a..bbeb153d85 100644
--- a/var/spack/repos/builtin/packages/perl-exception-class/package.py
+++ b/var/spack/repos/builtin/packages/perl-exception-class/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-exporter-tiny/package.py b/var/spack/repos/builtin/packages/perl-exporter-tiny/package.py
index f8fef2eada..e8a3f7916b 100644
--- a/var/spack/repos/builtin/packages/perl-exporter-tiny/package.py
+++ b/var/spack/repos/builtin/packages/perl-exporter-tiny/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-extutils-config/package.py b/var/spack/repos/builtin/packages/perl-extutils-config/package.py
index 65a426a239..bd8ca94557 100644
--- a/var/spack/repos/builtin/packages/perl-extutils-config/package.py
+++ b/var/spack/repos/builtin/packages/perl-extutils-config/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-extutils-depends/package.py b/var/spack/repos/builtin/packages/perl-extutils-depends/package.py
index e10e1848a3..4eb726d536 100644
--- a/var/spack/repos/builtin/packages/perl-extutils-depends/package.py
+++ b/var/spack/repos/builtin/packages/perl-extutils-depends/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-extutils-helpers/package.py b/var/spack/repos/builtin/packages/perl-extutils-helpers/package.py
index f6ba584389..61ac96b95c 100644
--- a/var/spack/repos/builtin/packages/perl-extutils-helpers/package.py
+++ b/var/spack/repos/builtin/packages/perl-extutils-helpers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-extutils-installpaths/package.py b/var/spack/repos/builtin/packages/perl-extutils-installpaths/package.py
index 4688f37daf..63548278bb 100644
--- a/var/spack/repos/builtin/packages/perl-extutils-installpaths/package.py
+++ b/var/spack/repos/builtin/packages/perl-extutils-installpaths/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py b/var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py
index 0a7668428d..49adea5bfe 100644
--- a/var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py
+++ b/var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py b/var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py
index bbe10419ce..41a22808b7 100644
--- a/var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py
+++ b/var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-ffi-checklib/package.py b/var/spack/repos/builtin/packages/perl-ffi-checklib/package.py
index c2a83e1952..b5423df9e9 100644
--- a/var/spack/repos/builtin/packages/perl-ffi-checklib/package.py
+++ b/var/spack/repos/builtin/packages/perl-ffi-checklib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-chdir/package.py b/var/spack/repos/builtin/packages/perl-file-chdir/package.py
index d6d56f7760..173849fcca 100644
--- a/var/spack/repos/builtin/packages/perl-file-chdir/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-chdir/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-copy-recursive/package.py b/var/spack/repos/builtin/packages/perl-file-copy-recursive/package.py
index d4f2fe9705..fc90dc89e2 100644
--- a/var/spack/repos/builtin/packages/perl-file-copy-recursive/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-copy-recursive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-homedir/package.py b/var/spack/repos/builtin/packages/perl-file-homedir/package.py
index 08ca6a0854..460c3e6064 100644
--- a/var/spack/repos/builtin/packages/perl-file-homedir/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-homedir/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-listing/package.py b/var/spack/repos/builtin/packages/perl-file-listing/package.py
index f40ede5793..df8e5d71e7 100644
--- a/var/spack/repos/builtin/packages/perl-file-listing/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-listing/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-pushd/package.py b/var/spack/repos/builtin/packages/perl-file-pushd/package.py
index 4d6ae057e1..5cbb81b548 100644
--- a/var/spack/repos/builtin/packages/perl-file-pushd/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-pushd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-sharedir-install/package.py b/var/spack/repos/builtin/packages/perl-file-sharedir-install/package.py
index 89eec13d46..99def42f30 100644
--- a/var/spack/repos/builtin/packages/perl-file-sharedir-install/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-sharedir-install/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-slurp-tiny/package.py b/var/spack/repos/builtin/packages/perl-file-slurp-tiny/package.py
index 881110d542..db0445b863 100644
--- a/var/spack/repos/builtin/packages/perl-file-slurp-tiny/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-slurp-tiny/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-slurp/package.py b/var/spack/repos/builtin/packages/perl-file-slurp/package.py
index e759a60efc..623bd7acad 100644
--- a/var/spack/repos/builtin/packages/perl-file-slurp/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-slurp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-slurper/package.py b/var/spack/repos/builtin/packages/perl-file-slurper/package.py
index 075ef52fe1..5498db5738 100644
--- a/var/spack/repos/builtin/packages/perl-file-slurper/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-slurper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-file-which/package.py b/var/spack/repos/builtin/packages/perl-file-which/package.py
index 636e8ae3ec..95ca303e7d 100644
--- a/var/spack/repos/builtin/packages/perl-file-which/package.py
+++ b/var/spack/repos/builtin/packages/perl-file-which/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-font-ttf/package.py b/var/spack/repos/builtin/packages/perl-font-ttf/package.py
index 20d1d374df..b564944744 100644
--- a/var/spack/repos/builtin/packages/perl-font-ttf/package.py
+++ b/var/spack/repos/builtin/packages/perl-font-ttf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-forks/package.py b/var/spack/repos/builtin/packages/perl-forks/package.py
index b4fddbdd5e..7fbd843ac2 100644
--- a/var/spack/repos/builtin/packages/perl-forks/package.py
+++ b/var/spack/repos/builtin/packages/perl-forks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-gd/package.py b/var/spack/repos/builtin/packages/perl-gd/package.py
index 0990c198f8..dca605fab0 100644
--- a/var/spack/repos/builtin/packages/perl-gd/package.py
+++ b/var/spack/repos/builtin/packages/perl-gd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-gdgraph-histogram/package.py b/var/spack/repos/builtin/packages/perl-gdgraph-histogram/package.py
index 3c550e758c..8a18634fab 100644
--- a/var/spack/repos/builtin/packages/perl-gdgraph-histogram/package.py
+++ b/var/spack/repos/builtin/packages/perl-gdgraph-histogram/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-gdgraph/package.py b/var/spack/repos/builtin/packages/perl-gdgraph/package.py
index 3897af23cc..cc97f0f070 100644
--- a/var/spack/repos/builtin/packages/perl-gdgraph/package.py
+++ b/var/spack/repos/builtin/packages/perl-gdgraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-gdtextutil/package.py b/var/spack/repos/builtin/packages/perl-gdtextutil/package.py
index 4be0490125..a668049df5 100644
--- a/var/spack/repos/builtin/packages/perl-gdtextutil/package.py
+++ b/var/spack/repos/builtin/packages/perl-gdtextutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-graph-readwrite/package.py b/var/spack/repos/builtin/packages/perl-graph-readwrite/package.py
index b89ca46e9f..ec811a895c 100644
--- a/var/spack/repos/builtin/packages/perl-graph-readwrite/package.py
+++ b/var/spack/repos/builtin/packages/perl-graph-readwrite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-graph/package.py b/var/spack/repos/builtin/packages/perl-graph/package.py
index 6022a74c66..2e4df81f77 100644
--- a/var/spack/repos/builtin/packages/perl-graph/package.py
+++ b/var/spack/repos/builtin/packages/perl-graph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-hash-merge/package.py b/var/spack/repos/builtin/packages/perl-hash-merge/package.py
index 9fbcf05055..6649a8b88b 100644
--- a/var/spack/repos/builtin/packages/perl-hash-merge/package.py
+++ b/var/spack/repos/builtin/packages/perl-hash-merge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-html-parser/package.py b/var/spack/repos/builtin/packages/perl-html-parser/package.py
index cef4f955cf..410711077f 100644
--- a/var/spack/repos/builtin/packages/perl-html-parser/package.py
+++ b/var/spack/repos/builtin/packages/perl-html-parser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-html-tagset/package.py b/var/spack/repos/builtin/packages/perl-html-tagset/package.py
index 523a597370..53e04ef83c 100644
--- a/var/spack/repos/builtin/packages/perl-html-tagset/package.py
+++ b/var/spack/repos/builtin/packages/perl-html-tagset/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-http-cookies/package.py b/var/spack/repos/builtin/packages/perl-http-cookies/package.py
index 25e3a81d89..73440f1044 100644
--- a/var/spack/repos/builtin/packages/perl-http-cookies/package.py
+++ b/var/spack/repos/builtin/packages/perl-http-cookies/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-http-daemon/package.py b/var/spack/repos/builtin/packages/perl-http-daemon/package.py
index 18ba0e506c..00ac9d0226 100644
--- a/var/spack/repos/builtin/packages/perl-http-daemon/package.py
+++ b/var/spack/repos/builtin/packages/perl-http-daemon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-http-date/package.py b/var/spack/repos/builtin/packages/perl-http-date/package.py
index ae330f69e5..08b3734b4e 100644
--- a/var/spack/repos/builtin/packages/perl-http-date/package.py
+++ b/var/spack/repos/builtin/packages/perl-http-date/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-http-message/package.py b/var/spack/repos/builtin/packages/perl-http-message/package.py
index bedcb7d315..1d5cefccc4 100644
--- a/var/spack/repos/builtin/packages/perl-http-message/package.py
+++ b/var/spack/repos/builtin/packages/perl-http-message/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-http-negotiate/package.py b/var/spack/repos/builtin/packages/perl-http-negotiate/package.py
index dbb407ac05..218f300901 100644
--- a/var/spack/repos/builtin/packages/perl-http-negotiate/package.py
+++ b/var/spack/repos/builtin/packages/perl-http-negotiate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-inline-c/package.py b/var/spack/repos/builtin/packages/perl-inline-c/package.py
index f41c070d28..44cb397d07 100644
--- a/var/spack/repos/builtin/packages/perl-inline-c/package.py
+++ b/var/spack/repos/builtin/packages/perl-inline-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-inline/package.py b/var/spack/repos/builtin/packages/perl-inline/package.py
index 001553c399..91cc7648cf 100644
--- a/var/spack/repos/builtin/packages/perl-inline/package.py
+++ b/var/spack/repos/builtin/packages/perl-inline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-all/package.py b/var/spack/repos/builtin/packages/perl-io-all/package.py
index 9e55fc06e8..fa8e8a5035 100644
--- a/var/spack/repos/builtin/packages/perl-io-all/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-all/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-compress/package.py b/var/spack/repos/builtin/packages/perl-io-compress/package.py
index b28bf0c935..bd850ce981 100644
--- a/var/spack/repos/builtin/packages/perl-io-compress/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-compress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-html/package.py b/var/spack/repos/builtin/packages/perl-io-html/package.py
index 42950079dc..9de028a96c 100644
--- a/var/spack/repos/builtin/packages/perl-io-html/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-html/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-prompt/package.py b/var/spack/repos/builtin/packages/perl-io-prompt/package.py
index 9947434642..2dbb63a3c8 100644
--- a/var/spack/repos/builtin/packages/perl-io-prompt/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-prompt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-sessiondata/package.py b/var/spack/repos/builtin/packages/perl-io-sessiondata/package.py
index 6f94b59fd8..24c05ac63a 100644
--- a/var/spack/repos/builtin/packages/perl-io-sessiondata/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-sessiondata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-socket-ssl/package.py b/var/spack/repos/builtin/packages/perl-io-socket-ssl/package.py
index 71fa915734..ea5e6fc509 100644
--- a/var/spack/repos/builtin/packages/perl-io-socket-ssl/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-socket-ssl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-string/package.py b/var/spack/repos/builtin/packages/perl-io-string/package.py
index 364e6eab6a..5a776ebde9 100644
--- a/var/spack/repos/builtin/packages/perl-io-string/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-string/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-stringy/package.py b/var/spack/repos/builtin/packages/perl-io-stringy/package.py
index 063c7b747b..b116a997fe 100644
--- a/var/spack/repos/builtin/packages/perl-io-stringy/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-stringy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-io-tty/package.py b/var/spack/repos/builtin/packages/perl-io-tty/package.py
index 1700a20c84..aaec88d7e1 100644
--- a/var/spack/repos/builtin/packages/perl-io-tty/package.py
+++ b/var/spack/repos/builtin/packages/perl-io-tty/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-ipc-run/package.py b/var/spack/repos/builtin/packages/perl-ipc-run/package.py
index 26247138ee..96ad0118ff 100644
--- a/var/spack/repos/builtin/packages/perl-ipc-run/package.py
+++ b/var/spack/repos/builtin/packages/perl-ipc-run/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-json/package.py b/var/spack/repos/builtin/packages/perl-json/package.py
index c1dbe2634d..a897682965 100644
--- a/var/spack/repos/builtin/packages/perl-json/package.py
+++ b/var/spack/repos/builtin/packages/perl-json/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-libwww-perl/package.py b/var/spack/repos/builtin/packages/perl-libwww-perl/package.py
index f82663cdef..ece14eb617 100644
--- a/var/spack/repos/builtin/packages/perl-libwww-perl/package.py
+++ b/var/spack/repos/builtin/packages/perl-libwww-perl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-libxml-perl/package.py b/var/spack/repos/builtin/packages/perl-libxml-perl/package.py
index 06b598b36f..2d17ffe7f1 100644
--- a/var/spack/repos/builtin/packages/perl-libxml-perl/package.py
+++ b/var/spack/repos/builtin/packages/perl-libxml-perl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-list-moreutils-xs/package.py b/var/spack/repos/builtin/packages/perl-list-moreutils-xs/package.py
index 36812e5efc..250ba32d08 100644
--- a/var/spack/repos/builtin/packages/perl-list-moreutils-xs/package.py
+++ b/var/spack/repos/builtin/packages/perl-list-moreutils-xs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-list-moreutils/package.py b/var/spack/repos/builtin/packages/perl-list-moreutils/package.py
index 9e11513683..0ef9f25725 100644
--- a/var/spack/repos/builtin/packages/perl-list-moreutils/package.py
+++ b/var/spack/repos/builtin/packages/perl-list-moreutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-log-log4perl/package.py b/var/spack/repos/builtin/packages/perl-log-log4perl/package.py
index c63584e302..0db77d2a3c 100644
--- a/var/spack/repos/builtin/packages/perl-log-log4perl/package.py
+++ b/var/spack/repos/builtin/packages/perl-log-log4perl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-logger-simple/package.py b/var/spack/repos/builtin/packages/perl-logger-simple/package.py
index 4db26ae672..75f58b070a 100644
--- a/var/spack/repos/builtin/packages/perl-logger-simple/package.py
+++ b/var/spack/repos/builtin/packages/perl-logger-simple/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-lwp-mediatypes/package.py b/var/spack/repos/builtin/packages/perl-lwp-mediatypes/package.py
index 9fc269ae5d..73de57f933 100644
--- a/var/spack/repos/builtin/packages/perl-lwp-mediatypes/package.py
+++ b/var/spack/repos/builtin/packages/perl-lwp-mediatypes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-lwp-protocol-https/package.py b/var/spack/repos/builtin/packages/perl-lwp-protocol-https/package.py
index 8d2da894b0..94ebb17494 100644
--- a/var/spack/repos/builtin/packages/perl-lwp-protocol-https/package.py
+++ b/var/spack/repos/builtin/packages/perl-lwp-protocol-https/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-mailtools/package.py b/var/spack/repos/builtin/packages/perl-mailtools/package.py
index ae53c07582..4201c8a66b 100644
--- a/var/spack/repos/builtin/packages/perl-mailtools/package.py
+++ b/var/spack/repos/builtin/packages/perl-mailtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-math-bezier/package.py b/var/spack/repos/builtin/packages/perl-math-bezier/package.py
index d53aa00e33..01f1a818f7 100644
--- a/var/spack/repos/builtin/packages/perl-math-bezier/package.py
+++ b/var/spack/repos/builtin/packages/perl-math-bezier/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-math-cdf/package.py b/var/spack/repos/builtin/packages/perl-math-cdf/package.py
index 0572e5a8cd..a168161b00 100644
--- a/var/spack/repos/builtin/packages/perl-math-cdf/package.py
+++ b/var/spack/repos/builtin/packages/perl-math-cdf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-math-cephes/package.py b/var/spack/repos/builtin/packages/perl-math-cephes/package.py
index 70eea6616c..4919114baf 100644
--- a/var/spack/repos/builtin/packages/perl-math-cephes/package.py
+++ b/var/spack/repos/builtin/packages/perl-math-cephes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-math-matrixreal/package.py b/var/spack/repos/builtin/packages/perl-math-matrixreal/package.py
index 66d742daad..7cd9098c9b 100644
--- a/var/spack/repos/builtin/packages/perl-math-matrixreal/package.py
+++ b/var/spack/repos/builtin/packages/perl-math-matrixreal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-math-round/package.py b/var/spack/repos/builtin/packages/perl-math-round/package.py
index f9f94857be..46e4926c39 100644
--- a/var/spack/repos/builtin/packages/perl-math-round/package.py
+++ b/var/spack/repos/builtin/packages/perl-math-round/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-math-vecstat/package.py b/var/spack/repos/builtin/packages/perl-math-vecstat/package.py
index 404c92b762..c79d5c6dff 100644
--- a/var/spack/repos/builtin/packages/perl-math-vecstat/package.py
+++ b/var/spack/repos/builtin/packages/perl-math-vecstat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-mce/package.py b/var/spack/repos/builtin/packages/perl-mce/package.py
new file mode 100644
index 0000000000..4281e375cd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-mce/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PerlMce(PerlPackage):
+ """MCE - Many-Core Engine for Perl providing parallel processing
+ capabilities.
+
+ MCE spawns a pool of workers and therefore does not fork a new process per
+ each element of data. Instead, MCE follows a bank queuing model. Imagine
+ the line being the data and bank-tellers the parallel workers. MCE enhances
+ that model by adding the ability to chunk the next n elements from the
+ input stream to the next available worker."""
+
+ homepage = "https://github.com/marioroy/mce-perl"
+ url = "https://cpan.metacpan.org/authors/id/M/MA/MARIOROY/MCE-1.874.tar.gz"
+
+ version('1.874', sha256='d809e3018475115ad7eccb8bef49bde3bf3e75abbbcd80564728bbcfab86d3d0')
diff --git a/var/spack/repos/builtin/packages/perl-module-build-tiny/package.py b/var/spack/repos/builtin/packages/perl-module-build-tiny/package.py
index 8cbfbe2651..486c59bb13 100644
--- a/var/spack/repos/builtin/packages/perl-module-build-tiny/package.py
+++ b/var/spack/repos/builtin/packages/perl-module-build-tiny/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-module-build/package.py b/var/spack/repos/builtin/packages/perl-module-build/package.py
index 2bb7ee2014..b9a4cac078 100644
--- a/var/spack/repos/builtin/packages/perl-module-build/package.py
+++ b/var/spack/repos/builtin/packages/perl-module-build/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-module-implementation/package.py b/var/spack/repos/builtin/packages/perl-module-implementation/package.py
index 0f7fc9d2ea..ee0aa1a7ad 100644
--- a/var/spack/repos/builtin/packages/perl-module-implementation/package.py
+++ b/var/spack/repos/builtin/packages/perl-module-implementation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py b/var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py
index 3ee858b6e5..8fdd43653d 100644
--- a/var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py
+++ b/var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-module-runtime/package.py b/var/spack/repos/builtin/packages/perl-module-runtime/package.py
index 811fc818a5..28cfcc4bbc 100644
--- a/var/spack/repos/builtin/packages/perl-module-runtime/package.py
+++ b/var/spack/repos/builtin/packages/perl-module-runtime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-moose/package.py b/var/spack/repos/builtin/packages/perl-moose/package.py
index e6fe33a7a1..e6c20e5953 100644
--- a/var/spack/repos/builtin/packages/perl-moose/package.py
+++ b/var/spack/repos/builtin/packages/perl-moose/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-mozilla-ca/package.py b/var/spack/repos/builtin/packages/perl-mozilla-ca/package.py
index dcb7b7fbec..50a4c28060 100644
--- a/var/spack/repos/builtin/packages/perl-mozilla-ca/package.py
+++ b/var/spack/repos/builtin/packages/perl-mozilla-ca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-mro-compat/package.py b/var/spack/repos/builtin/packages/perl-mro-compat/package.py
index 777dda8b19..1d72a34b28 100644
--- a/var/spack/repos/builtin/packages/perl-mro-compat/package.py
+++ b/var/spack/repos/builtin/packages/perl-mro-compat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-namespace-clean/package.py b/var/spack/repos/builtin/packages/perl-namespace-clean/package.py
index 8434b43622..bfcecb5a9a 100644
--- a/var/spack/repos/builtin/packages/perl-namespace-clean/package.py
+++ b/var/spack/repos/builtin/packages/perl-namespace-clean/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-net-http/package.py b/var/spack/repos/builtin/packages/perl-net-http/package.py
index 95abf9018d..986eb30313 100644
--- a/var/spack/repos/builtin/packages/perl-net-http/package.py
+++ b/var/spack/repos/builtin/packages/perl-net-http/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-net-scp-expect/package.py b/var/spack/repos/builtin/packages/perl-net-scp-expect/package.py
index bb56e653ed..d7329e9149 100644
--- a/var/spack/repos/builtin/packages/perl-net-scp-expect/package.py
+++ b/var/spack/repos/builtin/packages/perl-net-scp-expect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-net-ssleay/package.py b/var/spack/repos/builtin/packages/perl-net-ssleay/package.py
index 90d622752b..46ca769edd 100644
--- a/var/spack/repos/builtin/packages/perl-net-ssleay/package.py
+++ b/var/spack/repos/builtin/packages/perl-net-ssleay/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-number-format/package.py b/var/spack/repos/builtin/packages/perl-number-format/package.py
index 9743a62d0e..9050093576 100644
--- a/var/spack/repos/builtin/packages/perl-number-format/package.py
+++ b/var/spack/repos/builtin/packages/perl-number-format/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-object-insideout/package.py b/var/spack/repos/builtin/packages/perl-object-insideout/package.py
index 9eb1b1e216..8a8feb99b1 100644
--- a/var/spack/repos/builtin/packages/perl-object-insideout/package.py
+++ b/var/spack/repos/builtin/packages/perl-object-insideout/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py b/var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py
index a230fb68b0..f986fbfeea 100644
--- a/var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py
+++ b/var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-package-stash-xs/package.py b/var/spack/repos/builtin/packages/perl-package-stash-xs/package.py
index fc4638e5f9..defb35fbde 100644
--- a/var/spack/repos/builtin/packages/perl-package-stash-xs/package.py
+++ b/var/spack/repos/builtin/packages/perl-package-stash-xs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-package-stash/package.py b/var/spack/repos/builtin/packages/perl-package-stash/package.py
index d5691e3166..e862255e20 100644
--- a/var/spack/repos/builtin/packages/perl-package-stash/package.py
+++ b/var/spack/repos/builtin/packages/perl-package-stash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-padwalker/package.py b/var/spack/repos/builtin/packages/perl-padwalker/package.py
index 8722fcd46f..824a644067 100644
--- a/var/spack/repos/builtin/packages/perl-padwalker/package.py
+++ b/var/spack/repos/builtin/packages/perl-padwalker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-parallel-forkmanager/package.py b/var/spack/repos/builtin/packages/perl-parallel-forkmanager/package.py
index dd6f3e8e26..75793707a6 100644
--- a/var/spack/repos/builtin/packages/perl-parallel-forkmanager/package.py
+++ b/var/spack/repos/builtin/packages/perl-parallel-forkmanager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-params-util/package.py b/var/spack/repos/builtin/packages/perl-params-util/package.py
index 4c21dff3f0..650a67ea28 100644
--- a/var/spack/repos/builtin/packages/perl-params-util/package.py
+++ b/var/spack/repos/builtin/packages/perl-params-util/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-params-validate/package.py b/var/spack/repos/builtin/packages/perl-params-validate/package.py
index e23f51433a..2ca31890ad 100644
--- a/var/spack/repos/builtin/packages/perl-params-validate/package.py
+++ b/var/spack/repos/builtin/packages/perl-params-validate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-parse-recdescent/package.py b/var/spack/repos/builtin/packages/perl-parse-recdescent/package.py
index 7d3668fcef..570edfd8ff 100644
--- a/var/spack/repos/builtin/packages/perl-parse-recdescent/package.py
+++ b/var/spack/repos/builtin/packages/perl-parse-recdescent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-path-tiny/package.py b/var/spack/repos/builtin/packages/perl-path-tiny/package.py
index 6579aa788c..3e45e4f14a 100644
--- a/var/spack/repos/builtin/packages/perl-path-tiny/package.py
+++ b/var/spack/repos/builtin/packages/perl-path-tiny/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-pdf-api2/package.py b/var/spack/repos/builtin/packages/perl-pdf-api2/package.py
index 5f80edeb0f..3cd836b07d 100644
--- a/var/spack/repos/builtin/packages/perl-pdf-api2/package.py
+++ b/var/spack/repos/builtin/packages/perl-pdf-api2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-pegex/package.py b/var/spack/repos/builtin/packages/perl-pegex/package.py
index af916be11e..d8916ea5a2 100644
--- a/var/spack/repos/builtin/packages/perl-pegex/package.py
+++ b/var/spack/repos/builtin/packages/perl-pegex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-perl-unsafe-signals/package.py b/var/spack/repos/builtin/packages/perl-perl-unsafe-signals/package.py
index 36af1d8355..a4638d4ec8 100644
--- a/var/spack/repos/builtin/packages/perl-perl-unsafe-signals/package.py
+++ b/var/spack/repos/builtin/packages/perl-perl-unsafe-signals/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-perl-version/package.py b/var/spack/repos/builtin/packages/perl-perl-version/package.py
index d059adea86..2877516e38 100644
--- a/var/spack/repos/builtin/packages/perl-perl-version/package.py
+++ b/var/spack/repos/builtin/packages/perl-perl-version/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-perl4-corelibs/package.py b/var/spack/repos/builtin/packages/perl-perl4-corelibs/package.py
index 3f721225ef..21e0609979 100644
--- a/var/spack/repos/builtin/packages/perl-perl4-corelibs/package.py
+++ b/var/spack/repos/builtin/packages/perl-perl4-corelibs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-perl6-slurp/package.py b/var/spack/repos/builtin/packages/perl-perl6-slurp/package.py
index b6b4d1f154..75f730cb0e 100644
--- a/var/spack/repos/builtin/packages/perl-perl6-slurp/package.py
+++ b/var/spack/repos/builtin/packages/perl-perl6-slurp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-perlio-gzip/package.py b/var/spack/repos/builtin/packages/perl-perlio-gzip/package.py
index a25481e7e0..832369692b 100644
--- a/var/spack/repos/builtin/packages/perl-perlio-gzip/package.py
+++ b/var/spack/repos/builtin/packages/perl-perlio-gzip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-perlio-utf8-strict/package.py b/var/spack/repos/builtin/packages/perl-perlio-utf8-strict/package.py
index f34077aca8..fa5e76c575 100644
--- a/var/spack/repos/builtin/packages/perl-perlio-utf8-strict/package.py
+++ b/var/spack/repos/builtin/packages/perl-perlio-utf8-strict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-readonly/package.py b/var/spack/repos/builtin/packages/perl-readonly/package.py
index 83c47b1af3..8ae8f85836 100644
--- a/var/spack/repos/builtin/packages/perl-readonly/package.py
+++ b/var/spack/repos/builtin/packages/perl-readonly/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-regexp-common/package.py b/var/spack/repos/builtin/packages/perl-regexp-common/package.py
index 4468a61eb9..9bd3e7d9b0 100644
--- a/var/spack/repos/builtin/packages/perl-regexp-common/package.py
+++ b/var/spack/repos/builtin/packages/perl-regexp-common/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-scalar-list-utils/package.py b/var/spack/repos/builtin/packages/perl-scalar-list-utils/package.py
index a7e5af124c..cc4d242eb8 100644
--- a/var/spack/repos/builtin/packages/perl-scalar-list-utils/package.py
+++ b/var/spack/repos/builtin/packages/perl-scalar-list-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-scalar-util-numeric/package.py b/var/spack/repos/builtin/packages/perl-scalar-util-numeric/package.py
index 10047fbb8c..5eb82746f3 100644
--- a/var/spack/repos/builtin/packages/perl-scalar-util-numeric/package.py
+++ b/var/spack/repos/builtin/packages/perl-scalar-util-numeric/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-set-intervaltree/package.py b/var/spack/repos/builtin/packages/perl-set-intervaltree/package.py
index 222895ef49..9beca32318 100644
--- a/var/spack/repos/builtin/packages/perl-set-intervaltree/package.py
+++ b/var/spack/repos/builtin/packages/perl-set-intervaltree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-set-intspan/package.py b/var/spack/repos/builtin/packages/perl-set-intspan/package.py
index eb02324284..63e468cd85 100644
--- a/var/spack/repos/builtin/packages/perl-set-intspan/package.py
+++ b/var/spack/repos/builtin/packages/perl-set-intspan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-set-scalar/package.py b/var/spack/repos/builtin/packages/perl-set-scalar/package.py
index 9129381b0d..6443465a8a 100644
--- a/var/spack/repos/builtin/packages/perl-set-scalar/package.py
+++ b/var/spack/repos/builtin/packages/perl-set-scalar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-soap-lite/package.py b/var/spack/repos/builtin/packages/perl-soap-lite/package.py
index 0d79c0f9c1..d06513d154 100644
--- a/var/spack/repos/builtin/packages/perl-soap-lite/package.py
+++ b/var/spack/repos/builtin/packages/perl-soap-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-star-fusion/package.py b/var/spack/repos/builtin/packages/perl-star-fusion/package.py
index 17482f6e25..019598852c 100644
--- a/var/spack/repos/builtin/packages/perl-star-fusion/package.py
+++ b/var/spack/repos/builtin/packages/perl-star-fusion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-statistics-basic/package.py b/var/spack/repos/builtin/packages/perl-statistics-basic/package.py
index 275ea7c29d..aa9fa59d65 100644
--- a/var/spack/repos/builtin/packages/perl-statistics-basic/package.py
+++ b/var/spack/repos/builtin/packages/perl-statistics-basic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-statistics-descriptive/package.py b/var/spack/repos/builtin/packages/perl-statistics-descriptive/package.py
index a4567cb9ad..d381790ded 100644
--- a/var/spack/repos/builtin/packages/perl-statistics-descriptive/package.py
+++ b/var/spack/repos/builtin/packages/perl-statistics-descriptive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-statistics-pca/package.py b/var/spack/repos/builtin/packages/perl-statistics-pca/package.py
index 9fd21bc7f3..ac8ccbdfdd 100644
--- a/var/spack/repos/builtin/packages/perl-statistics-pca/package.py
+++ b/var/spack/repos/builtin/packages/perl-statistics-pca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py b/var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py
index d583c203a7..4215970423 100644
--- a/var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py
+++ b/var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-sub-exporter/package.py b/var/spack/repos/builtin/packages/perl-sub-exporter/package.py
index c500800417..b9395cb3c7 100644
--- a/var/spack/repos/builtin/packages/perl-sub-exporter/package.py
+++ b/var/spack/repos/builtin/packages/perl-sub-exporter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-sub-identify/package.py b/var/spack/repos/builtin/packages/perl-sub-identify/package.py
index 8f7cfe8e83..fb2b283358 100644
--- a/var/spack/repos/builtin/packages/perl-sub-identify/package.py
+++ b/var/spack/repos/builtin/packages/perl-sub-identify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-sub-install/package.py b/var/spack/repos/builtin/packages/perl-sub-install/package.py
index 6b3adf0925..4a3fddf245 100644
--- a/var/spack/repos/builtin/packages/perl-sub-install/package.py
+++ b/var/spack/repos/builtin/packages/perl-sub-install/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-sub-name/package.py b/var/spack/repos/builtin/packages/perl-sub-name/package.py
index 3d98a9d9ec..424b015779 100644
--- a/var/spack/repos/builtin/packages/perl-sub-name/package.py
+++ b/var/spack/repos/builtin/packages/perl-sub-name/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-sub-uplevel/package.py b/var/spack/repos/builtin/packages/perl-sub-uplevel/package.py
index 9efb3f8515..969816a1d4 100644
--- a/var/spack/repos/builtin/packages/perl-sub-uplevel/package.py
+++ b/var/spack/repos/builtin/packages/perl-sub-uplevel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-svg/package.py b/var/spack/repos/builtin/packages/perl-svg/package.py
index 5f916455ef..4e10bdba77 100644
--- a/var/spack/repos/builtin/packages/perl-svg/package.py
+++ b/var/spack/repos/builtin/packages/perl-svg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-swissknife/package.py b/var/spack/repos/builtin/packages/perl-swissknife/package.py
index dcec6f3b78..ba09579fc0 100644
--- a/var/spack/repos/builtin/packages/perl-swissknife/package.py
+++ b/var/spack/repos/builtin/packages/perl-swissknife/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-sys-sigaction/package.py b/var/spack/repos/builtin/packages/perl-sys-sigaction/package.py
index d8c50b5c46..ccc88cb54e 100644
--- a/var/spack/repos/builtin/packages/perl-sys-sigaction/package.py
+++ b/var/spack/repos/builtin/packages/perl-sys-sigaction/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-task-weaken/package.py b/var/spack/repos/builtin/packages/perl-task-weaken/package.py
index 3ca09779a8..4822c777e1 100644
--- a/var/spack/repos/builtin/packages/perl-task-weaken/package.py
+++ b/var/spack/repos/builtin/packages/perl-task-weaken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-term-readline-gnu/package.py b/var/spack/repos/builtin/packages/perl-term-readline-gnu/package.py
index 2db6ca8d1a..da09ecd513 100644
--- a/var/spack/repos/builtin/packages/perl-term-readline-gnu/package.py
+++ b/var/spack/repos/builtin/packages/perl-term-readline-gnu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-termreadkey/package.py b/var/spack/repos/builtin/packages/perl-termreadkey/package.py
index dab402ed10..2ea2d24a76 100644
--- a/var/spack/repos/builtin/packages/perl-termreadkey/package.py
+++ b/var/spack/repos/builtin/packages/perl-termreadkey/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py b/var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py
index 84239d7d57..397f21f23d 100644
--- a/var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-deep/package.py b/var/spack/repos/builtin/packages/perl-test-deep/package.py
index cb8aa6f76c..ab781859eb 100644
--- a/var/spack/repos/builtin/packages/perl-test-deep/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-deep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-differences/package.py b/var/spack/repos/builtin/packages/perl-test-differences/package.py
index 90d3a1f21f..3c9d4282d3 100644
--- a/var/spack/repos/builtin/packages/perl-test-differences/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-differences/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-exception/package.py b/var/spack/repos/builtin/packages/perl-test-exception/package.py
index fffa271abc..41078facc3 100644
--- a/var/spack/repos/builtin/packages/perl-test-exception/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-exception/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-fatal/package.py b/var/spack/repos/builtin/packages/perl-test-fatal/package.py
index b2ae23ddb2..8fbc58eb49 100644
--- a/var/spack/repos/builtin/packages/perl-test-fatal/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-fatal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py b/var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py
index 497e0f6932..9675d19eca 100644
--- a/var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-more/package.py b/var/spack/repos/builtin/packages/perl-test-more/package.py
new file mode 100644
index 0000000000..30a468174d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-more/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PerlTestMore(PerlPackage):
+ """Test2 is a new testing framework produced by forking Test::Builder,
+ completely refactoring it, adding many new features and capabilities."""
+
+ homepage = "https://github.com/Test-More/test-more"
+ url = "https://github.com/Test-More/test-more/archive/v1.302183.tar.gz"
+
+ version('1.302183', sha256='1356ec24c5ab3f7ad8327091ddc6ace164a27767be10325776bf9743360ab4f7')
+ version('1.302182', sha256='60727db9435cb244f6dcf4ca598c8ef39ac3035a0c36fd5c9c5b89be4f138366')
+ version('1.302181', sha256='acb3c990d646928e7571c140510d7424716d3281c4064b1787294e72b39f61ce')
+ version('1.302180', sha256='4dbed31e9434d74427b41a17ca3e0511a81ee5cb1240408c7f439c6449672a20')
diff --git a/var/spack/repos/builtin/packages/perl-test-most/package.py b/var/spack/repos/builtin/packages/perl-test-most/package.py
index 63fb0c8ea2..f0057b9d34 100644
--- a/var/spack/repos/builtin/packages/perl-test-most/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-most/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-needs/package.py b/var/spack/repos/builtin/packages/perl-test-needs/package.py
index 5ac982eae2..11d46af928 100644
--- a/var/spack/repos/builtin/packages/perl-test-needs/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-needs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-output/package.py b/var/spack/repos/builtin/packages/perl-test-output/package.py
new file mode 100644
index 0000000000..10e5a2471d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-output/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PerlTestOutput(PerlPackage):
+ """Test::Output - Utilities to test STDOUT and STDERR messages."""
+
+ homepage = "https://github.com/briandfoy/test-output"
+ url = "https://github.com/briandfoy/test-output/archive/release-1.033.tar.gz"
+
+ version('1.033', sha256='35f0a4ef2449fc78886b4c99e1c1d23f432c2fae98538a4489439eb17223bfc2')
+ version('1.032', sha256='8b87e16b40199c9d62f07a821e1ff17a2701e42adffb281a649ed631823d5771')
+ version('1.031', sha256='1bb5847f26bee90e71b0af2a9d3a5eec4e17a63aacaf18ce5215f350961c5bf7')
+ version('1.03', sha256='cac7c9664105764f5845cb48bf7e5b2da806009d33360dab6a615c6dcfe7ca19')
+ version('1.02_01', sha256='fd762b929555b93ca7de05bbd02195c09019faf60d63e38cfca3bdf87dfadb56')
+ version('1.02', sha256='088a25e5802579e6d3e6669da4228b8897d1372a02998a6bf7435f22688d2e56')
diff --git a/var/spack/repos/builtin/packages/perl-test-requires/package.py b/var/spack/repos/builtin/packages/perl-test-requires/package.py
index ac812e33f1..6a3a6157dc 100644
--- a/var/spack/repos/builtin/packages/perl-test-requires/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-requires/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-requiresinternet/package.py b/var/spack/repos/builtin/packages/perl-test-requiresinternet/package.py
index 1300688bff..6fd9f90920 100644
--- a/var/spack/repos/builtin/packages/perl-test-requiresinternet/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-requiresinternet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-warn/package.py b/var/spack/repos/builtin/packages/perl-test-warn/package.py
index 0708909ba2..c93c285def 100644
--- a/var/spack/repos/builtin/packages/perl-test-warn/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-warn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-test-warnings/package.py b/var/spack/repos/builtin/packages/perl-test-warnings/package.py
index a9385eaae6..a7c0fe1b11 100644
--- a/var/spack/repos/builtin/packages/perl-test-warnings/package.py
+++ b/var/spack/repos/builtin/packages/perl-test-warnings/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-text-csv/package.py b/var/spack/repos/builtin/packages/perl-text-csv/package.py
index 8c86a4ccb6..fb9db890a6 100644
--- a/var/spack/repos/builtin/packages/perl-text-csv/package.py
+++ b/var/spack/repos/builtin/packages/perl-text-csv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-text-diff/package.py b/var/spack/repos/builtin/packages/perl-text-diff/package.py
index 54b87ec592..b06e68be4b 100644
--- a/var/spack/repos/builtin/packages/perl-text-diff/package.py
+++ b/var/spack/repos/builtin/packages/perl-text-diff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-text-format/package.py b/var/spack/repos/builtin/packages/perl-text-format/package.py
index 2f38503de9..5efb63365d 100644
--- a/var/spack/repos/builtin/packages/perl-text-format/package.py
+++ b/var/spack/repos/builtin/packages/perl-text-format/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-text-simpletable/package.py b/var/spack/repos/builtin/packages/perl-text-simpletable/package.py
index b0da48547e..4f67994028 100644
--- a/var/spack/repos/builtin/packages/perl-text-simpletable/package.py
+++ b/var/spack/repos/builtin/packages/perl-text-simpletable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-text-soundex/package.py b/var/spack/repos/builtin/packages/perl-text-soundex/package.py
index 34c20e0f54..666097d7e0 100644
--- a/var/spack/repos/builtin/packages/perl-text-soundex/package.py
+++ b/var/spack/repos/builtin/packages/perl-text-soundex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-text-unidecode/package.py b/var/spack/repos/builtin/packages/perl-text-unidecode/package.py
index e91f502234..f4efc023c6 100644
--- a/var/spack/repos/builtin/packages/perl-text-unidecode/package.py
+++ b/var/spack/repos/builtin/packages/perl-text-unidecode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-thread-queue/package.py b/var/spack/repos/builtin/packages/perl-thread-queue/package.py
new file mode 100644
index 0000000000..05d5faa44b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-thread-queue/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PerlThreadQueue(PerlPackage):
+ """Thread::Queue - Thread-safe queues.
+
+ This module provides thread-safe FIFO queues that can be accessed safely by
+ any number of threads."""
+
+ homepage = "https://metacpan.org/pod/Thread::Queue"
+ url = "https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN/Thread-Queue-3.13.tar.gz"
+
+ version('3.13', sha256='6ba3dacddd2fbb66822b4aa1d11a0a5273cd04c825cb3ff31c20d7037cbfdce8')
diff --git a/var/spack/repos/builtin/packages/perl-threads/package.py b/var/spack/repos/builtin/packages/perl-threads/package.py
new file mode 100644
index 0000000000..52253feb5b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-threads/package.py
@@ -0,0 +1,15 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PerlThreads(PerlPackage):
+ """threads - Perl interpreter-based threads"""
+
+ homepage = "https://metacpan.org/pod/threads"
+ url = "https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN/threads-2.21.tar.gz"
+
+ version('2.21', sha256='28394c98a2bcae6f20ffb8a3d965a1c194b764c650169e2050ee38dbaa10f110')
diff --git a/var/spack/repos/builtin/packages/perl-time-hires/package.py b/var/spack/repos/builtin/packages/perl-time-hires/package.py
index dd628ecbe3..b7b4737d89 100644
--- a/var/spack/repos/builtin/packages/perl-time-hires/package.py
+++ b/var/spack/repos/builtin/packages/perl-time-hires/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-time-piece/package.py b/var/spack/repos/builtin/packages/perl-time-piece/package.py
index ec607ecef7..e8f346340d 100644
--- a/var/spack/repos/builtin/packages/perl-time-piece/package.py
+++ b/var/spack/repos/builtin/packages/perl-time-piece/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-timedate/package.py b/var/spack/repos/builtin/packages/perl-timedate/package.py
index f5891903c7..7cb2bdf6a1 100644
--- a/var/spack/repos/builtin/packages/perl-timedate/package.py
+++ b/var/spack/repos/builtin/packages/perl-timedate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-tk/package.py b/var/spack/repos/builtin/packages/perl-tk/package.py
new file mode 100644
index 0000000000..a1f48a1fb2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-tk/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PerlTk(PerlPackage):
+ """Interface to Tk Graphics Library"""
+
+ homepage = "https://metacpan.org/pod/distribution/Tk/Tk.pod"
+ url = "https://cpan.metacpan.org/authors/id/S/SR/SREZIC/Tk-804.035.tar.gz"
+
+ version('804.035', sha256='4d2b80291ba6de34d8ec886a085a6dbd2b790b926035a087e99025614c5ffdd4')
+ version('804.033', sha256='84756e9b07a2555c8eecf88e63d5cbbba9b1aa97b1e71a3d4aa524a7995a88ad')
+
+ depends_on('perl-extutils-makemaker', type='build')
diff --git a/var/spack/repos/builtin/packages/perl-try-tiny/package.py b/var/spack/repos/builtin/packages/perl-try-tiny/package.py
index 7c21b12f77..5c6398d47c 100644
--- a/var/spack/repos/builtin/packages/perl-try-tiny/package.py
+++ b/var/spack/repos/builtin/packages/perl-try-tiny/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-uri/package.py b/var/spack/repos/builtin/packages/perl-uri/package.py
index 057ff43d87..8304c7a13b 100644
--- a/var/spack/repos/builtin/packages/perl-uri/package.py
+++ b/var/spack/repos/builtin/packages/perl-uri/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-want/package.py b/var/spack/repos/builtin/packages/perl-want/package.py
index 82b926234a..fe7f20ae64 100644
--- a/var/spack/repos/builtin/packages/perl-want/package.py
+++ b/var/spack/repos/builtin/packages/perl-want/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-www-robotrules/package.py b/var/spack/repos/builtin/packages/perl-www-robotrules/package.py
index e1cda90585..69066a503a 100644
--- a/var/spack/repos/builtin/packages/perl-www-robotrules/package.py
+++ b/var/spack/repos/builtin/packages/perl-www-robotrules/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-dom-xpath/package.py b/var/spack/repos/builtin/packages/perl-xml-dom-xpath/package.py
index 36408595df..4efaa15970 100644
--- a/var/spack/repos/builtin/packages/perl-xml-dom-xpath/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-dom-xpath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-dom/package.py b/var/spack/repos/builtin/packages/perl-xml-dom/package.py
index 3eeec70b70..6ed1bf7333 100644
--- a/var/spack/repos/builtin/packages/perl-xml-dom/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-dom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-filter-buffertext/package.py b/var/spack/repos/builtin/packages/perl-xml-filter-buffertext/package.py
index 28e9035034..5996757d83 100644
--- a/var/spack/repos/builtin/packages/perl-xml-filter-buffertext/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-filter-buffertext/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-libxml/package.py b/var/spack/repos/builtin/packages/perl-xml-libxml/package.py
index 3a4a21727c..1e6bffdffe 100644
--- a/var/spack/repos/builtin/packages/perl-xml-libxml/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-libxml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-libxslt/package.py b/var/spack/repos/builtin/packages/perl-xml-libxslt/package.py
index 86312928e1..9aa3b64870 100644
--- a/var/spack/repos/builtin/packages/perl-xml-libxslt/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-libxslt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-namespacesupport/package.py b/var/spack/repos/builtin/packages/perl-xml-namespacesupport/package.py
index 91f50a70d5..1946451cac 100644
--- a/var/spack/repos/builtin/packages/perl-xml-namespacesupport/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-namespacesupport/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-parser-lite/package.py b/var/spack/repos/builtin/packages/perl-xml-parser-lite/package.py
index 6ba82d6eb9..34ff956881 100644
--- a/var/spack/repos/builtin/packages/perl-xml-parser-lite/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-parser-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-parser/package.py b/var/spack/repos/builtin/packages/perl-xml-parser/package.py
index 5f4aafa3fd..2bf04b0203 100644
--- a/var/spack/repos/builtin/packages/perl-xml-parser/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-parser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-quote/package.py b/var/spack/repos/builtin/packages/perl-xml-quote/package.py
index d08e170109..d78d50a28b 100644
--- a/var/spack/repos/builtin/packages/perl-xml-quote/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-quote/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-regexp/package.py b/var/spack/repos/builtin/packages/perl-xml-regexp/package.py
index 1a7ad14196..f26c6700f3 100644
--- a/var/spack/repos/builtin/packages/perl-xml-regexp/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-regexp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-sax-base/package.py b/var/spack/repos/builtin/packages/perl-xml-sax-base/package.py
index 3fa83dff5c..545794631c 100644
--- a/var/spack/repos/builtin/packages/perl-xml-sax-base/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-sax-base/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-sax-writer/package.py b/var/spack/repos/builtin/packages/perl-xml-sax-writer/package.py
index ce276ea045..b14d443e64 100644
--- a/var/spack/repos/builtin/packages/perl-xml-sax-writer/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-sax-writer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-sax/package.py b/var/spack/repos/builtin/packages/perl-xml-sax/package.py
index 87646a73c1..56a175e7de 100644
--- a/var/spack/repos/builtin/packages/perl-xml-sax/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-sax/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-simple/package.py b/var/spack/repos/builtin/packages/perl-xml-simple/package.py
index eb7d89b92c..688f17a454 100644
--- a/var/spack/repos/builtin/packages/perl-xml-simple/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-simple/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-twig/package.py b/var/spack/repos/builtin/packages/perl-xml-twig/package.py
index f17251ea63..1593e05971 100644
--- a/var/spack/repos/builtin/packages/perl-xml-twig/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-twig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-writer/package.py b/var/spack/repos/builtin/packages/perl-xml-writer/package.py
index da5fdf7f6f..99ae3d6fe3 100644
--- a/var/spack/repos/builtin/packages/perl-xml-writer/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-writer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-xml-xpathengine/package.py b/var/spack/repos/builtin/packages/perl-xml-xpathengine/package.py
index cf514e9b52..a7f68c56a6 100644
--- a/var/spack/repos/builtin/packages/perl-xml-xpathengine/package.py
+++ b/var/spack/repos/builtin/packages/perl-xml-xpathengine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-yaml-libyaml/package.py b/var/spack/repos/builtin/packages/perl-yaml-libyaml/package.py
index 2e141c982b..5b5d02d6f7 100644
--- a/var/spack/repos/builtin/packages/perl-yaml-libyaml/package.py
+++ b/var/spack/repos/builtin/packages/perl-yaml-libyaml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl-yaml/package.py b/var/spack/repos/builtin/packages/perl-yaml/package.py
index 7d55b590ef..a7ab45438b 100644
--- a/var/spack/repos/builtin/packages/perl-yaml/package.py
+++ b/var/spack/repos/builtin/packages/perl-yaml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/perl/nvhpc.patch b/var/spack/repos/builtin/packages/perl/nvhpc-5.30.patch
index 5f3373bd1b..5f3373bd1b 100644
--- a/var/spack/repos/builtin/packages/perl/nvhpc.patch
+++ b/var/spack/repos/builtin/packages/perl/nvhpc-5.30.patch
diff --git a/var/spack/repos/builtin/packages/perl/nvhpc-5.32.patch b/var/spack/repos/builtin/packages/perl/nvhpc-5.32.patch
new file mode 100644
index 0000000000..655e560412
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl/nvhpc-5.32.patch
@@ -0,0 +1,42 @@
+--- a/Configure 2021-01-19 09:35:25.337234880 -0800
++++ b/Configure 2021-01-19 09:36:43.001275967 -0800
+@@ -4979,7 +4979,7 @@
+ # and usrinc directly from the compiler.
+ # Note that ccname for clang is also gcc.
+ case "$ccname" in
+- gcc)
++ XXX)
+ $echo 'extern int foo;' > try.c
+ set X `$cppstdin -v try.c 2>&1 | $awk '/^#include </,/^End of search /'|$cppfilter $grep '/include'`
+ shift
+--- a/Makefile.SH 2021-01-28 15:18:51.559057410 -0800
++++ b/Makefile.SH 2021-01-28 15:20:01.552036603 -0800
+@@ -1143,7 +1143,7 @@
+ # But also this ensures that all extensions are built before we try to scan
+ # them, which picks up Devel::PPPort's documentation.
+ pod/perltoc.pod: $(perltoc_pod_prereqs) $(PERL_EXE) $(ext) pod/buildtoc
+- $(RUN_PERL) -f pod/buildtoc -q
++ $(MINIPERL) -f pod/buildtoc -q
+
+ pod/perlapi.pod: pod/perlintern.pod
+
+@@ -1200,8 +1200,8 @@
+ $spitshell >>$Makefile <<EOT
+
+ install_$name install-$name: \$(INSTALL_DEPENDENCE) installperl all installman
+- \$(RUN_PERL) installperl --destdir=\$(DESTDIR) $flags \$(INSTALLFLAGS) \$(STRIPFLAGS)
+- \$(RUN_PERL) installman --destdir=\$(DESTDIR) $flags
++ \$(MINIPERL) installperl --destdir=\$(DESTDIR) $flags \$(INSTALLFLAGS) \$(STRIPFLAGS)
++ \$(MINIPERL) installman --destdir=\$(DESTDIR) $flags
+ EOT
+ fi
+
+@@ -1219,7 +1219,7 @@
+ LOCAL_PERL='$(RUN_PERL)'
+ $spitshell >>$Makefile <<'!NO!SUBS!'
+ install.perl: $(INSTALL_DEPENDENCE) installperl
+- $(RUN_PERL) installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
++ $(MINIPERL) installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
+ -@test ! -s extras.lst || PATH="`pwd`:\${PATH}" PERL5LIB="`pwd`/lib" \$(RUN_PERL) -Ilib -MCPAN -e '@ARGV&&install(@ARGV)' `cat extras.lst`
+
+ !NO!SUBS!
diff --git a/var/spack/repos/builtin/packages/perl/package.py b/var/spack/repos/builtin/packages/perl/package.py
index 2532f97160..07b452caf2 100644
--- a/var/spack/repos/builtin/packages/perl/package.py
+++ b/var/spack/repos/builtin/packages/perl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -39,7 +39,8 @@ class Perl(Package): # Perl doesn't use Autotools, it should subclass Package
version('5.31.4', sha256='418a7e6fe6485cc713a86d1227ef112f0bb3f80322e3b715ffe42851d97804a5')
# Maintenance releases (even numbers, recommended)
- version('5.32.0', sha256='efeb1ce1f10824190ad1cadbcccf6fdb8a5d37007d0100d2d9ae5f2b5900c0b4', preferred=True)
+ version('5.32.1', sha256='03b693901cd8ae807231b1787798cf1f2e0b8a56218d07b7da44f784a7caeb2c', preferred=True)
+ version('5.32.0', sha256='efeb1ce1f10824190ad1cadbcccf6fdb8a5d37007d0100d2d9ae5f2b5900c0b4')
version('5.30.3', sha256='32e04c8bb7b1aecb2742a7f7ac0eabac100f38247352a73ad7fa104e39e7406f')
version('5.30.2', sha256='66db7df8a91979eb576fac91743644da878244cf8ee152f02cd6f5cd7a731689')
version('5.30.1', sha256='bf3d25571ff1ee94186177c2cdef87867fd6a14aa5a84f0b1fb7bf798f42f964')
@@ -77,7 +78,12 @@ class Perl(Package): # Perl doesn't use Autotools, it should subclass Package
patch('macos-11-version-check.patch', when='@5.24.1:5.32.0 platform=darwin')
# Enable builds with the NVIDIA compiler
- patch('nvhpc.patch', when='%nvhpc')
+ # The Configure script assumes some gcc specific behavior, and use
+ # the mini Perl environment to bootstrap installation.
+ patch('nvhpc-5.30.patch', when='@5.30.0:5.30.99 %nvhpc')
+ patch('nvhpc-5.32.patch', when='@5.32.0:5.32.99 %nvhpc')
+ conflicts('@5.32.0:', when='%nvhpc@:20.11',
+ msg='The NVIDIA compilers are incompatible with version 5.32 and later')
# Installing cpanm alongside the core makes it safe and simple for
# people/projects to install their own sets of perl modules. Not
@@ -261,6 +267,13 @@ class Perl(Package): # Perl doesn't use Autotools, it should subclass Package
# if it does not exist already.
mkdirp(module.perl_lib_dir)
+ def setup_build_environment(self, env):
+ # This is to avoid failures when using -mmacosx-version-min=11.1
+ # since not all Apple Clang compilers support that version range
+ # See https://eclecticlight.co/2020/07/21/big-sur-is-both-10-16-and-11-0-its-official/
+ if self.spec.satisfies('os=bigsur'):
+ env.set('SYSTEM_VERSION_COMPAT', 1)
+
@run_after('install')
def filter_config_dot_pm(self):
"""Run after install so that Config.pm records the compiler that Spack
diff --git a/var/spack/repos/builtin/packages/pestpp/package.py b/var/spack/repos/builtin/packages/pestpp/package.py
index f888c66638..9c16abb1ca 100644
--- a/var/spack/repos/builtin/packages/pestpp/package.py
+++ b/var/spack/repos/builtin/packages/pestpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/petsc/package.py b/var/spack/repos/builtin/packages/petsc/package.py
index 4c2c3d4d49..b5130bc9e2 100644
--- a/var/spack/repos/builtin/packages/petsc/package.py
+++ b/var/spack/repos/builtin/packages/petsc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,13 +12,19 @@ class Petsc(Package):
"""
homepage = "http://www.mcs.anl.gov/petsc/index.html"
- url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-lite-3.13.1.tar.gz"
+ url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.15.0.tar.gz"
git = "https://gitlab.com/petsc/petsc.git"
maintainers = ['balay', 'barrysmith', 'jedbrown']
- version('develop', branch='master')
+ version('main', branch='main')
version('xsdk-0.2.0', tag='xsdk-0.2.0')
+ version('3.15.0', sha256='ac46db6bfcaaec8cd28335231076815bd5438f401a4a05e33736b4f9ff12e59a')
+ version('3.14.6', sha256='4de0c8820419fb15bc683b780127ff57067b62ca18749e864a87c6d7c93f1230')
+ version('3.14.5', sha256='8b8ff5c4e10468f696803b354a502d690c7d25c19d694a7e10008a302fdbb048')
+ version('3.14.4', sha256='b030969816e02c251a6d010c07a90b69ade44932f9ddfac3090ff5e95ab97d5c')
+ version('3.14.3', sha256='63ed7e3440f2bbc732a6c44aa878364f88f5016ab375d9b36d742893a049053d')
+ version('3.14.2', sha256='87a04fd05cac20a2ec47094b7d18b96e0651257d8c768ced2ef7db270ecfb9cb')
version('3.14.1', sha256='0b4681165a9af96594c794b97ac6993452ec902726679f6b50bb450f89d230ed')
version('3.14.0', sha256='a8f9caba03e0d57d8452c08505cf96be5f6949adaa266e819382162c03ddb9c5')
version('3.13.6', sha256='67ca2cf3040d08fdc51d27f660ea3157732b24c2f47aae1b19d63f62a39842c2')
@@ -78,6 +84,8 @@ class Petsc(Package):
variant('metis', default=True,
description='Activates support for metis and parmetis')
+ variant('ptscotch', default=False,
+ description='Activates support for PTScotch (only parallel)')
variant('hdf5', default=True,
description='Activates support for HDF5 (only parallel)')
variant('hypre', default=True,
@@ -90,6 +98,8 @@ class Petsc(Package):
description='Activates support for SuperluDist (only parallel)')
variant('trilinos', default=False,
description='Activates support for Trilinos (only parallel)')
+ variant('mkl-pardiso', default=False,
+ description='Activates support for MKL Pardiso')
variant('int64', default=False,
description='Compile with 64bit indices')
variant('clanguage', default='C', values=('C', 'C++'),
@@ -145,6 +155,7 @@ class Petsc(Package):
conflicts('+moab', when='~mpi', msg=mpi_msg)
conflicts('+mumps', when='~mpi', msg=mpi_msg)
conflicts('+p4est', when='~mpi', msg=mpi_msg)
+ conflicts('+ptscotch', when='~mpi', msg=mpi_msg)
conflicts('+superlu-dist', when='~mpi', msg=mpi_msg)
conflicts('+trilinos', when='~mpi', msg=mpi_msg)
@@ -168,7 +179,7 @@ class Petsc(Package):
# Virtual dependencies
# Git repository needs sowing to build Fortran interface
- depends_on('sowing', when='@develop')
+ depends_on('sowing', when='@main')
depends_on('sowing@1.1.23-p1', when='@xsdk-0.2.0')
# PETSc, hypre, superlu_dist when built with int64 use 32 bit integers
@@ -191,6 +202,11 @@ class Petsc(Package):
depends_on('metis@5:~int64', when='@3.8:+metis~int64')
depends_on('metis@5:+int64', when='@3.8:+metis+int64')
+ # PTScotch: Currently disable Parmetis wrapper, this means
+ # nested disection won't be available thought PTScotch
+ depends_on('scotch+esmumps~metis+mpi', when='+ptscotch')
+ depends_on('scotch+int64', when='+ptscotch+int64')
+
depends_on('hdf5@:1.10.99+mpi', when='@:3.12.99+hdf5+mpi')
depends_on('hdf5+mpi', when='@3.13:+hdf5+mpi')
depends_on('hdf5+mpi', when='+exodusii+mpi')
@@ -198,7 +214,8 @@ class Petsc(Package):
depends_on('zlib', when='+hdf5')
depends_on('zlib', when='+libpng')
depends_on('zlib', when='+p4est')
- depends_on('parmetis', when='+metis+mpi')
+ depends_on('parmetis+int64', when='+metis+mpi+int64')
+ depends_on('parmetis~int64', when='+metis+mpi~int64')
depends_on('valgrind', when='+valgrind')
# Hypre does not support complex numbers.
# Also PETSc prefer to build it without internal superlu, likely due to
@@ -212,8 +229,8 @@ class Petsc(Package):
depends_on('hypre@2.14:+mpi~internal-superlu+int64', when='@3.14:+hypre+mpi~complex+int64')
depends_on('hypre@xsdk-0.2.0+mpi~internal-superlu+int64', when='@xsdk-0.2.0+hypre+mpi~complex+int64')
depends_on('hypre@xsdk-0.2.0+mpi~internal-superlu~int64', when='@xsdk-0.2.0+hypre+mpi~complex~int64')
- depends_on('hypre@develop+mpi~internal-superlu+int64', when='@develop+hypre+mpi~complex+int64')
- depends_on('hypre@develop+mpi~internal-superlu~int64', when='@develop+hypre+mpi~complex~int64')
+ depends_on('hypre@develop+mpi~internal-superlu+int64', when='@main+hypre+mpi~complex+int64')
+ depends_on('hypre@develop+mpi~internal-superlu~int64', when='@main+hypre+mpi~complex~int64')
depends_on('superlu-dist@:4.3~int64', when='@3.4.4:3.6.4+superlu-dist+mpi~int64')
depends_on('superlu-dist@:4.3+int64', when='@3.4.4:3.6.4+superlu-dist+mpi+int64')
depends_on('superlu-dist@5.0.0:5.1.3~int64', when='@3.7:3.7.99+superlu-dist+mpi~int64')
@@ -228,13 +245,15 @@ class Petsc(Package):
depends_on('superlu-dist@6.1:+int64', when='@3.13.0:+superlu-dist+mpi+int64')
depends_on('superlu-dist@xsdk-0.2.0~int64', when='@xsdk-0.2.0+superlu-dist+mpi~int64')
depends_on('superlu-dist@xsdk-0.2.0+int64', when='@xsdk-0.2.0+superlu-dist+mpi+int64')
- depends_on('superlu-dist@develop~int64', when='@develop+superlu-dist+mpi~int64')
- depends_on('superlu-dist@develop+int64', when='@develop+superlu-dist+mpi+int64')
- depends_on('mumps+mpi~int64', when='+mumps')
+ depends_on('superlu-dist@develop~int64', when='@main+superlu-dist+mpi~int64')
+ depends_on('superlu-dist@develop+int64', when='@main+superlu-dist+mpi+int64')
+ depends_on('mumps+mpi~int64~metis~parmetis', when='+mumps~metis')
+ depends_on('mumps+mpi~int64+metis+parmetis', when='+mumps+metis')
depends_on('scalapack', when='+mumps')
depends_on('trilinos@12.6.2:+mpi', when='@3.7.0:+trilinos+mpi')
depends_on('trilinos@xsdk-0.2.0+mpi', when='@xsdk-0.2.0+trilinos+mpi')
- depends_on('trilinos@develop+mpi', when='@xdevelop+trilinos+mpi')
+ depends_on('trilinos@develop+mpi', when='@main+trilinos+mpi')
+ depends_on('mkl', when='+mkl-pardiso')
depends_on('fftw+mpi', when='+fftw+mpi')
depends_on('suite-sparse', when='+suite-sparse')
depends_on('libx11', when='+X')
@@ -254,9 +273,12 @@ class Petsc(Package):
depends_on('saws', when='+saws')
depends_on('libyaml', when='+libyaml')
+ # Using the following tarballs
+ # * petsc-3.12 (and older) - includes docs
+ # * petsc-lite-3.13, petsc-lite-3.14 (without docs)
+ # * petsc-3.15 and newer (without docs)
def url_for_version(self, version):
- if version >= Version('3.13.0'):
- # petsc-lite tarballs are smaller by skipping docs
+ if self.spec.satisfies('@3.13.0:3.14.6'):
return "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-lite-{0}.tar.gz".format(version)
else:
return "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-{0}.tar.gz".format(version)
@@ -409,6 +431,17 @@ class Petsc(Package):
else:
options.append('--with-suitesparse=0')
+ # PTScotch: Since we are not using the Parmetis wrapper for now,
+ # we cannot use '--with-ptscotch-dir=...'
+ if '+ptscotch' in spec:
+ options.extend([
+ '--with-ptscotch-include=%s' % spec['scotch'].prefix.include,
+ '--with-ptscotch-lib=%s' % spec['scotch'].libs.joined(),
+ '--with-ptscotch=1'
+ ])
+ else:
+ options.append('--with-ptscotch=0')
+
# hdf5: configure detection is convoluted for pflotran
if '+hdf5' in spec:
options.extend([
@@ -430,6 +463,11 @@ class Petsc(Package):
else:
options.append('--with-zlib=0')
+ if '+mkl-pardiso' in spec:
+ options.append(
+ '--with-mkl_pardiso-dir=%s' % spec['mkl'].prefix
+ )
+
python('configure', '--prefix=%s' % prefix, *options)
# PETSc has its own way of doing parallel make.
@@ -478,6 +516,13 @@ class Petsc(Package):
'-pc_type', 'hypre',
'-pc_hypre_type', 'boomeramg')
+ if 'mkl-pardiso' in spec:
+ run('ex50',
+ '-da_grid_x', '4',
+ '-da_grid_y', '4',
+ '-pc_type', 'lu',
+ '-pc_factor_mat_solver_package', 'mkl_pardiso')
+
def setup_build_environment(self, env):
# configure fails if these env vars are set outside of Spack
env.unset('PETSC_DIR')
diff --git a/var/spack/repos/builtin/packages/pexsi/package.py b/var/spack/repos/builtin/packages/pexsi/package.py
index aef5546c9f..e3803b8b98 100644
--- a/var/spack/repos/builtin/packages/pexsi/package.py
+++ b/var/spack/repos/builtin/packages/pexsi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pfapack/package.py b/var/spack/repos/builtin/packages/pfapack/package.py
new file mode 100644
index 0000000000..73c83aac92
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pfapack/package.py
@@ -0,0 +1,66 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Pfapack(MakefilePackage):
+ """A library for numerically computing the Pfaffian of
+ a real or complex skew-symmetric matrix. This is based on
+ computing the tridiagonal form of the matrix under
+ unitary congruence transformations."""
+
+ homepage = "https://michaelwimmer.org/downloads.html"
+ url = "https://michaelwimmer.org/pfapack.tgz"
+
+ version('2014-09-17', sha256='b68fc35dda23ee24c358641b1a92ef701c4ffa0b3f0b0808b24e68afeb58ef07')
+
+ parallel = False
+
+ depends_on('lapack')
+ depends_on('blas')
+ depends_on('python', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+
+ def edit(self, spec, prefix):
+ filter_file('FORT =.*', 'FORT = {0}'.format(spack_fc),
+ join_path('fortran', 'makefile'))
+ filter_file('CC =.*', 'CC = {0}'.format(spack_cc),
+ join_path('c_interface', 'makefile'))
+
+ def build(self, spec, prefix):
+ source_directory = self.stage.source_path
+ with working_dir(join_path(source_directory, 'fortran')):
+ make()
+ with working_dir(join_path(source_directory, 'c_interface')):
+ make()
+
+ def install(self, spec, prefix):
+ source_directory = self.stage.source_path
+ mkdirp(prefix.fortran)
+ install(join_path(source_directory, 'fortran', 'libpfapack.a'),
+ prefix.fortran)
+ install(join_path(source_directory, 'fortran', '*.mod'),
+ prefix.fortran)
+ install_tree(join_path(source_directory, 'fortran', 'EXAMPLES'),
+ prefix.fortran.EXAMPLES)
+ install_tree(join_path(source_directory, 'fortran', 'TESTING'),
+ prefix.fortran.TESTING)
+ mkdirp(prefix.c_interface)
+ install(join_path(source_directory, 'c_interface', 'libcpfapack.a'),
+ prefix.c_interface)
+ install(join_path(source_directory, 'c_interface', 'fortran.h'),
+ prefix.c_interface)
+ install(join_path(source_directory, 'c_interface',
+ 'fortran_pfapack.h'),
+ prefix.c_interface)
+ install(join_path(source_directory, 'c_interface', 'pfapack.h'),
+ prefix.c_interface)
+ install_tree(join_path(source_directory, 'c_interface', 'EXAMPLES'),
+ prefix.c_interface.EXAMPLES)
+ install_tree(join_path(source_directory, 'c_interface', 'TESTING'),
+ prefix.c_interface.TESTING)
+ install_tree(join_path(source_directory, 'python'), prefix.python)
diff --git a/var/spack/repos/builtin/packages/pfft/package.py b/var/spack/repos/builtin/packages/pfft/package.py
index 0dcbd0bb71..3398abcdd0 100644
--- a/var/spack/repos/builtin/packages/pfft/package.py
+++ b/var/spack/repos/builtin/packages/pfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pflask/package.py b/var/spack/repos/builtin/packages/pflask/package.py
index bd2274eeae..f104bbe269 100644
--- a/var/spack/repos/builtin/packages/pflask/package.py
+++ b/var/spack/repos/builtin/packages/pflask/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pflotran/package.py b/var/spack/repos/builtin/packages/pflotran/package.py
index fd300f9285..a51299d441 100644
--- a/var/spack/repos/builtin/packages/pflotran/package.py
+++ b/var/spack/repos/builtin/packages/pflotran/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,7 +26,7 @@ class Pflotran(AutotoolsPackage):
depends_on('mpi')
depends_on('hdf5@1.8.12:+mpi+fortran+hl')
- depends_on('petsc@develop:+hdf5+metis', when='@develop')
+ depends_on('petsc@main:+hdf5+metis', when='@develop')
depends_on('petsc@3.14:+hdf5+metis', when='@xsdk-0.6.0')
depends_on('petsc@3.12:+hdf5+metis', when='@xsdk-0.5.0')
depends_on('petsc@3.10:+hdf5+metis', when='@xsdk-0.4.0')
diff --git a/var/spack/repos/builtin/packages/pfunit/package.py b/var/spack/repos/builtin/packages/pfunit/package.py
index 65d8b67365..7aea55a1eb 100644
--- a/var/spack/repos/builtin/packages/pfunit/package.py
+++ b/var/spack/repos/builtin/packages/pfunit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,9 @@ class Pfunit(CMakePackage):
maintainers = ['citibeth']
+ version('4.1.14', sha256='bada2be8d7e69ca1f16209ba92293fa1c06748b78534d71b24b2c825450a495f')
+ version('4.1.13', sha256='f388e08c67c51cbfd9f3a3658baac912b5506d2fc651410cd34a21260c309630')
+ version('4.1.12', sha256='7d71b0fb996497fe9a20eb818d02d596cd0d3cded1033a89a9081fbd925c68f2')
version('4.1.11', sha256='16160bac223aaa3ed2b27e30287d25fdaec3cf6f2c570ebd8d61196e6aa6180f')
version('4.1.10', sha256='051c35ad9678002943f4a4f2ab532a6b44de86ca414751616f93e69f393f5373')
version('3.3.3', sha256='9f673b58d20ad23148040a100227b4f876458a9d9aee0f0d84a5f0eef209ced5')
@@ -69,16 +72,16 @@ class Pfunit(CMakePackage):
spec = self.spec
args = [
'-DPYTHON_EXECUTABLE=%s' % spec['python'].command,
- '-DBUILD_SHARED=%s' % ('YES' if '+shared' in spec else 'NO'),
+ self.define_from_variant('BUILD_SHARED', 'shared'),
'-DCMAKE_Fortran_MODULE_DIRECTORY=%s' % spec.prefix.include,
- '-DBUILD_DOCS=%s' % ('YES' if '+docs' in spec else 'NO'),
- '-DOPENMP=%s' % ('YES' if '+openmp' in spec else 'NO'),
+ self.define_from_variant('BUILD_DOCS', 'docs'),
+ self.define_from_variant('OPENMP', 'openmp'),
'-DMAX_RANK=%s' % spec.variants['max_array_rank'].value]
if spec.satisfies('@4.0.0:'):
args.append('-DSKIP_MPI=%s' % ('YES' if '~mpi' in spec else 'NO'))
else:
- args.append('-DMPI=%s' % ('YES' if '+mpi' in spec else 'NO'))
+ args.append(self.define_from_variant('MPI', 'mpi'))
if spec.satisfies('+mpi'):
args.extend(['-DMPI_USE_MPIEXEC=YES',
@@ -100,7 +103,7 @@ class Pfunit(CMakePackage):
def compiler_vendor(self):
vendors = {'%gcc': 'GNU', '%clang': 'GNU', '%intel': 'Intel',
- '%pgi': 'PGI', '%nag': 'NAG'}
+ '%pgi': 'PGI', '%nag': 'NAG', '%cce': 'Cray'}
for key, value in vendors.items():
if self.spec.satisfies(key):
return value
diff --git a/var/spack/repos/builtin/packages/pgdspider/package.py b/var/spack/repos/builtin/packages/pgdspider/package.py
index 3c6f7ab1f3..efbab33f4d 100644
--- a/var/spack/repos/builtin/packages/pgdspider/package.py
+++ b/var/spack/repos/builtin/packages/pgdspider/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pgi/package.py b/var/spack/repos/builtin/packages/pgi/package.py
index 1ad53bb20b..fc6cf89a7c 100644
--- a/var/spack/repos/builtin/packages/pgi/package.py
+++ b/var/spack/repos/builtin/packages/pgi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ class Pgi(Package):
set up a mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
homepage = "http://www.pgroup.com/"
+ manual_download = True
version('20.4', sha256='f3ecc2104b304cd5c8b20e3ffdb5da88f2b5f7cc148e8daf00561928a5cbbc2e')
version('19.10', sha256='ac9db73ba80a66fe3bc875f63aaa9e16f54674a4e88b25416432430ba8cf203d')
diff --git a/var/spack/repos/builtin/packages/phantompeakqualtools/package.py b/var/spack/repos/builtin/packages/phantompeakqualtools/package.py
index 317d0e753d..1b75780f4c 100644
--- a/var/spack/repos/builtin/packages/phantompeakqualtools/package.py
+++ b/var/spack/repos/builtin/packages/phantompeakqualtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/phast/package.py b/var/spack/repos/builtin/packages/phast/package.py
index 7f787eb023..fac5739815 100644
--- a/var/spack/repos/builtin/packages/phast/package.py
+++ b/var/spack/repos/builtin/packages/phast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/phasta/package.py b/var/spack/repos/builtin/packages/phasta/package.py
index 6040d3f875..993ea56fdb 100644
--- a/var/spack/repos/builtin/packages/phasta/package.py
+++ b/var/spack/repos/builtin/packages/phasta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/phist/package.py b/var/spack/repos/builtin/packages/phist/package.py
index dbc620ff21..e276bcf800 100644
--- a/var/spack/repos/builtin/packages/phist/package.py
+++ b/var/spack/repos/builtin/packages/phist/package.py
@@ -1,10 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import spack.hooks.sbang as sbang
class Phist(CMakePackage):
@@ -26,13 +27,14 @@ class Phist(CMakePackage):
version('develop', branch='devel')
version('master', branch='master')
+ version('1.9.4', sha256='9dde3ca0480358fa0877ec8424aaee4011c5defc929219a5930388a7cdb4c8a6')
version('1.9.3', sha256='3ab7157e9f535a4c8537846cb11b516271ef13f82d0f8ebb7f96626fb9ab86cf')
version('1.9.2', sha256='289678fa7172708f5d32d6bd924c8fdfe72b413bba5bbb8ce6373c85c5ec5ae5')
version('1.9.1', sha256='6e6411115ec48afe605b4f2179e9bc45d60f15459428f474f3f32b80d2830f1f')
version('1.9.0', sha256='990d3308fc0083ed0f9f565d00c649ee70c3df74d44cbe5f19dfe05263d06559')
version('1.8.0', sha256='ee42946bce187e126452053b5f5c200b57b6e40ee3f5bcf0751f3ced585adeb0')
version('1.7.5', sha256='f11fe27f2aa13d69eb285cc0f32c33c1603fa1286b84e54c81856c6f2bdef500')
- version('1.7.4', sha256='ef0c97fda9984f53011020aff3e61523833320f5f5719af2f2ed84463cccb98b')
+ version('1.7.4', sha256='c5324f639b8c95b07cd29c3cd8dd7dd576c84a0b9228dbb88f8b87605424419e')
version('1.7.3', sha256='ab2d853c9ba13bcd3069fcc61c359cb412466a2e4b22ebbd2f5263cffa685126')
version('1.7.2', sha256='29b504d78b5efd57b87d2ca6e20bc8a32b1ba55b40f5a5b7189cc0d28e43bcc0')
version('1.6.1', sha256='4ed4869f24f920a494aeae0f7d1d94fe9efce55ebe0d298a5948c9603e07994d')
@@ -101,6 +103,8 @@ class Phist(CMakePackage):
patch('update_tpetra_gotypes.patch', when='@:1.8.99')
+ patch('sbang.patch', when='+fortran')
+
# ###################### Dependencies ##########################
depends_on('cmake@3.8:', type='build')
@@ -132,6 +136,9 @@ class Phist(CMakePackage):
# to compile some OpenMP statements
conflicts('%gcc@:4.9.1')
+ def setup_build_environment(self, env):
+ env.set('SPACK_SBANG', sbang.sbang_install_path())
+
def cmake_args(self):
spec = self.spec
@@ -147,26 +154,20 @@ class Phist(CMakePackage):
'-DPHIST_OUTLEV=%s' % outlev,
'-DTPL_LAPACKE_LIBRARIES=%s' % lapacke_libs,
'-DTPL_LAPACKE_INCLUDE_DIRS=%s' % lapacke_include_dir,
- '-DPHIST_ENABLE_MPI:BOOL=%s'
- % ('ON' if '+mpi' in spec else 'OFF'),
- '-DPHIST_ENABLE_OPENMP=%s'
- % ('ON' if '+openmp' in spec else 'OFF'),
- '-DBUILD_SHARED_LIBS:BOOL=%s'
- % ('ON' if '+shared' in spec else 'OFF'),
- '-DPHIST_ENABLE_SCAMAC:BOOL=%s'
- % ('ON' if '+scamac' in spec else 'OFF'),
+ self.define_from_variant('PHIST_ENABLE_MPI', 'mpi'),
+ self.define_from_variant('PHIST_ENABLE_OPENMP', 'openmp'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('PHIST_ENABLE_SCAMAC', 'scamac'),
'-DPHIST_USE_TRILINOS_TPLS:BOOL=%s'
% ('ON' if '^trilinos' in spec else 'OFF'),
'-DPHIST_USE_SOLVER_TPLS:BOOL=%s'
% ('ON' if '^trilinos+belos+anasazi' in spec else 'OFF'),
'-DPHIST_USE_PRECON_TPLS:BOOL=%s'
% ('ON' if '^trilinos' in spec else 'OFF'),
- '-DXSDK_ENABLE_Fortran:BOOL=%s'
- % ('ON' if '+fortran' in spec else 'OFF'),
+ self.define_from_variant('XSDK_ENABLE_Fortran', 'fortran'),
'-DXSDK_INDEX_SIZE=%s'
% ('64' if '+int64' in spec else '32'),
- '-DPHIST_HOST_OPTIMIZE:BOOL=%s'
- % ('ON' if '+host' in spec else 'OFF'),
+ self.define_from_variant('PHIST_HOST_OPTIMIZE', 'host'),
]
return args
diff --git a/var/spack/repos/builtin/packages/phist/sbang.patch b/var/spack/repos/builtin/packages/phist/sbang.patch
new file mode 100644
index 0000000000..331ebebabd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/phist/sbang.patch
@@ -0,0 +1,8 @@
+diff --git a/fortran_bindings/cfwrapper.py.in b/fortran_bindings/cfwrapper.py.in
+index 6eb9051..874ce48 100755
+--- a/fortran_bindings/cfwrapper.py.in
++++ b/fortran_bindings/cfwrapper.py.in
+@@ -1,3 +1,4 @@
++#!/bin/bash $ENV{SPACK_SBANG}
+ #!${PYTHON_EXECUTABLE}
+ # -*- coding: utf-8 -*-
diff --git a/var/spack/repos/builtin/packages/phoenix/package.py b/var/spack/repos/builtin/packages/phoenix/package.py
index e6d5afd2b9..9ab52f2115 100644
--- a/var/spack/repos/builtin/packages/phoenix/package.py
+++ b/var/spack/repos/builtin/packages/phoenix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/photos/package.py b/var/spack/repos/builtin/packages/photos/package.py
index 6304e194aa..7c7407ba66 100644
--- a/var/spack/repos/builtin/packages/photos/package.py
+++ b/var/spack/repos/builtin/packages/photos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,15 +13,23 @@ class Photos(AutotoolsPackage):
homepage = "http://photospp.web.cern.ch/photospp/"
url = "http://photospp.web.cern.ch/photospp/resources/PHOTOS.3.61/PHOTOS.3.61-LHC.tar.gz"
+ tags = ['hep']
+
+ version('3.64', sha256='cb4096b4804289fc4d54a992caa566cbbd33f41f65f8906deb01200dc5163027')
version('3.61', sha256='acd3bcb769ba2a3e263de399e9b89fd6296405c9cbc5045b83baba3e60db4b26')
+ variant('hepmc', default=True, description='Build with HepMC2 support')
+ variant('hepmc3', default=False, description='Build with HepMC3 support')
+
maintainers = ['vvolkl']
- depends_on('hepmc@:2.99.99')
+ depends_on('hepmc', when='+hepmc')
+ depends_on('hepmc3', when='+hepmc3')
def configure_args(self):
args = []
- args.append('--with-hepmc=%s' % self.spec["hepmc"].prefix)
- args.append('--without-hepmc3')
+ args.extend(self.with_or_without('hepmc', 'prefix'))
+ args.extend(self.with_or_without('hepmc3', 'prefix'))
+
return args
diff --git a/var/spack/repos/builtin/packages/php/package.py b/var/spack/repos/builtin/packages/php/package.py
index d5da45eb94..839afd9d84 100644
--- a/var/spack/repos/builtin/packages/php/package.py
+++ b/var/spack/repos/builtin/packages/php/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/phrap-crossmatch-swat/package.py b/var/spack/repos/builtin/packages/phrap-crossmatch-swat/package.py
index 7cc86e5c7a..6b8f8ff918 100644
--- a/var/spack/repos/builtin/packages/phrap-crossmatch-swat/package.py
+++ b/var/spack/repos/builtin/packages/phrap-crossmatch-swat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class PhrapCrossmatchSwat(MakefilePackage):
homepage = "http://www.phrap.org/phredphrapconsed.html"
url = "file://{0}/phrap-crossmatch-swat-1.090518.tar.gz".format(os.getcwd())
+ manual_download = True
version('1.090518', sha256='81f50c4410e8604cdefcc34ef6dc7b037be3bb45b94c439611a5590c1cf83665')
diff --git a/var/spack/repos/builtin/packages/phred/package.py b/var/spack/repos/builtin/packages/phred/package.py
index cdfc8a41b3..3587bb25f1 100644
--- a/var/spack/repos/builtin/packages/phred/package.py
+++ b/var/spack/repos/builtin/packages/phred/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class Phred(MakefilePackage):
homepage = "http://www.phrap.org/phredphrapconsed.html"
url = "file://{0}/phred.tar.gz".format(os.getcwd())
+ manual_download = True
version('071220', sha256='26212f13fa906c1ca0af61f48d52a5f2c1aacba802bf729ba65ca5222463abce')
diff --git a/var/spack/repos/builtin/packages/phylip/package.py b/var/spack/repos/builtin/packages/phylip/package.py
index 8eefcbe512..0639f9cfa6 100644
--- a/var/spack/repos/builtin/packages/phylip/package.py
+++ b/var/spack/repos/builtin/packages/phylip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/phylobayesmpi/package.py b/var/spack/repos/builtin/packages/phylobayesmpi/package.py
index 9a10a82054..726e8e94e1 100644
--- a/var/spack/repos/builtin/packages/phylobayesmpi/package.py
+++ b/var/spack/repos/builtin/packages/phylobayesmpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/phyluce/package.py b/var/spack/repos/builtin/packages/phyluce/package.py
index 2d6942b383..5fb589f485 100644
--- a/var/spack/repos/builtin/packages/phyluce/package.py
+++ b/var/spack/repos/builtin/packages/phyluce/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/picard/package.py b/var/spack/repos/builtin/packages/picard/package.py
index b8c0ac199d..d3acce0f18 100644
--- a/var/spack/repos/builtin/packages/picard/package.py
+++ b/var/spack/repos/builtin/packages/picard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,7 @@ class Picard(Package):
# They started distributing a single jar file at v2.6.0, prior to
# that it was a .zip file with multiple .jar and .so files
+ version('2.24.0', sha256='70e91039bccc6f6db60f18c41713218a8cdf45f591f02c1012c062152b27cd7b', expand=False)
version('2.20.8', sha256='aff92d618ee9e6bafc1ab4fbfa89fc557a0dbe596ae4b92fe3bf93ebf95c7105', expand=False)
version('2.19.0', sha256='f97fc3f7a73b55cceea8b6a6488efcf1b2fbf8cad61d88645704ddd45a8c5950', expand=False)
version('2.18.3', sha256='0e0fc45d9a822ee9fa562b3bb8f1525a439e4cd541429a1a4ca4646f37189b70', expand=False)
diff --git a/var/spack/repos/builtin/packages/picsar/package.py b/var/spack/repos/builtin/packages/picsar/package.py
index fc5335a91b..b8d7ede7d9 100644
--- a/var/spack/repos/builtin/packages/picsar/package.py
+++ b/var/spack/repos/builtin/packages/picsar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/picsarlite/package.py b/var/spack/repos/builtin/packages/picsarlite/package.py
index a688bb6c30..a10b6461aa 100644
--- a/var/spack/repos/builtin/packages/picsarlite/package.py
+++ b/var/spack/repos/builtin/packages/picsarlite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pidx/package.py b/var/spack/repos/builtin/packages/pidx/package.py
index 2f51f09301..eb5892141a 100644
--- a/var/spack/repos/builtin/packages/pidx/package.py
+++ b/var/spack/repos/builtin/packages/pidx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pig/package.py b/var/spack/repos/builtin/packages/pig/package.py
index 1a4e37b357..5a279dd66a 100644
--- a/var/spack/repos/builtin/packages/pig/package.py
+++ b/var/spack/repos/builtin/packages/pig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pigz/package.py b/var/spack/repos/builtin/packages/pigz/package.py
index c54a518993..1af66b3b2e 100644
--- a/var/spack/repos/builtin/packages/pigz/package.py
+++ b/var/spack/repos/builtin/packages/pigz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pilon/package.py b/var/spack/repos/builtin/packages/pilon/package.py
index 75600c5854..6bb4ed9ab7 100644
--- a/var/spack/repos/builtin/packages/pilon/package.py
+++ b/var/spack/repos/builtin/packages/pilon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pindel/package.py b/var/spack/repos/builtin/packages/pindel/package.py
index ef7052b06f..c69c7768c8 100644
--- a/var/spack/repos/builtin/packages/pindel/package.py
+++ b/var/spack/repos/builtin/packages/pindel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pinentry/package.py b/var/spack/repos/builtin/packages/pinentry/package.py
index 3a9e6e526c..01fce6c5ea 100644
--- a/var/spack/repos/builtin/packages/pinentry/package.py
+++ b/var/spack/repos/builtin/packages/pinentry/package.py
@@ -1,20 +1,23 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
-
class Pinentry(AutotoolsPackage):
"""pinentry is a small collection of dialog programs that allow GnuPG to
- read passphrases and PIN numbers in a secure manner. There are versions for
- the common GTK and Qt toolkits as well as for the text terminal (Curses).
+ read passphrases and PIN numbers in a secure manner.
+
+ There are versions for the common GTK and Qt toolkits as well as for
+ the text terminal (Curses).
"""
homepage = "https://gnupg.org/related_software/pinentry/index.html"
url = "https://gnupg.org/ftp/gcrypt/pinentry/pinentry-1.1.0.tar.bz2"
+ maintainers = ['alalazo']
+
+ version('1.1.1', sha256='cd12a064013ed18e2ee8475e669b9f58db1b225a0144debdb85a68cecddba57f')
version('1.1.0', sha256='68076686fa724a290ea49cdf0d1c0c1500907d1b759a3bcbfbec0293e8f56570')
depends_on('libgpg-error@1.16:')
@@ -22,6 +25,8 @@ class Pinentry(AutotoolsPackage):
def configure_args(self):
return [
+ '--enable-static',
+ '--enable-shared',
# Autotools automatically enables these if dependencies found
# TODO: add variants for these
'--disable-pinentry-curses',
diff --git a/var/spack/repos/builtin/packages/pinfo/package.py b/var/spack/repos/builtin/packages/pinfo/package.py
index 698897949f..a4ada3a763 100644
--- a/var/spack/repos/builtin/packages/pinfo/package.py
+++ b/var/spack/repos/builtin/packages/pinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pipework/package.py b/var/spack/repos/builtin/packages/pipework/package.py
index ad92723f64..eeb19e2eb0 100644
--- a/var/spack/repos/builtin/packages/pipework/package.py
+++ b/var/spack/repos/builtin/packages/pipework/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/piranha/package.py b/var/spack/repos/builtin/packages/piranha/package.py
index c8681c1607..a5a5346eeb 100644
--- a/var/spack/repos/builtin/packages/piranha/package.py
+++ b/var/spack/repos/builtin/packages/piranha/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,8 +23,8 @@ class Piranha(CMakePackage):
# Build dependencies
depends_on('cmake@3.2.0:', type='build')
- extends('python', when='+pyranha')
- depends_on('python@2.6:', type='build', when='+pyranha')
+ extends('python', when='+python')
+ depends_on('python@2.6:', type='build', when='+python')
# Other dependencies
depends_on('boost+iostreams+regex+serialization',
@@ -37,6 +37,6 @@ class Piranha(CMakePackage):
def cmake_args(self):
return [
- '-DBUILD_PYRANHA=%s' % ('ON' if '+python' in self.spec else 'OFF'),
+ self.define_from_variant('BUILD_PYRANHA', 'python'),
'-DBUILD_TESTS:BOOL=ON',
]
diff --git a/var/spack/repos/builtin/packages/pism/package.py b/var/spack/repos/builtin/packages/pism/package.py
index e25fab43c6..4a8b300f14 100644
--- a/var/spack/repos/builtin/packages/pism/package.py
+++ b/var/spack/repos/builtin/packages/pism/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -93,28 +93,17 @@ class Pism(CMakePackage):
'-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
# Fortran not needed for PISM...
# '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
- '-DPism_BUILD_EXTRA_EXECS=%s' %
- ('YES' if '+extra' in spec else 'NO'),
- '-DBUILD_SHARED_LIBS=%s' %
- ('YES' if '+shared' in spec else 'NO'),
- '-DPism_BUILD_PYTHON_BINDINGS=%s' %
- ('YES' if '+python' in spec else 'NO'),
- '-DPism_BUILD_ICEBIN=%s' %
- ('YES' if '+icebin' in spec else 'NO'),
- '-DPism_USE_PROJ4=%s' %
- ('YES' if '+proj' in spec else 'NO'),
- '-DPism_USE_PARALLEL_NETCDF4=%s' %
- ('YES' if '+parallel-netcdf4' in spec else 'NO'),
- '-DPism_USE_PNETCDF=%s' %
- ('YES' if '+parallel-netcdf3' in spec else 'NO'),
- '-DPism_USE_PARALLEL_HDF5=%s' %
- ('YES' if '+parallel-hdf5' in spec else 'NO'),
- '-DPism_BUILD_PDFS=%s' %
- ('YES' if '+doc' in spec else 'NO'),
- '-DPism_INSTALL_EXAMPLES=%s' %
- ('YES' if '+examples' in spec else 'NO'),
- '-DPism_USE_EVERYTRACE=%s' %
- ('YES' if '+everytrace' in spec else 'NO')]
+ self.define_from_variant('Pism_BUILD_EXTRA_EXECS', 'extra'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('Pism_BUILD_PYTHON_BINDINGS', 'python'),
+ self.define_from_variant('Pism_BUILD_ICEBIN', 'icebin'),
+ self.define_from_variant('Pism_USE_PROJ4', 'proj'),
+ self.define_from_variant('Pism_USE_PARALLEL_NETCDF4', 'parallel-netcdf4'),
+ self.define_from_variant('Pism_USE_PNETCDF', 'parallel-netcdf3'),
+ self.define_from_variant('Pism_USE_PARALLEL_HDF5', 'parallel-hdf5'),
+ self.define_from_variant('Pism_BUILD_PDFS', 'doc'),
+ self.define_from_variant('Pism_INSTALL_EXAMPLES', 'examples'),
+ self.define_from_variant('Pism_USE_EVERYTRACE', 'everytrace')]
def setup_run_environment(self, env):
env.set('PISM_PREFIX', self.prefix)
diff --git a/var/spack/repos/builtin/packages/pixman/package.py b/var/spack/repos/builtin/packages/pixman/package.py
index a145edc638..5cb50c6198 100644
--- a/var/spack/repos/builtin/packages/pixman/package.py
+++ b/var/spack/repos/builtin/packages/pixman/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pixz/package.py b/var/spack/repos/builtin/packages/pixz/package.py
index 5fad0583bb..b23b377ae8 100644
--- a/var/spack/repos/builtin/packages/pixz/package.py
+++ b/var/spack/repos/builtin/packages/pixz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pkg-config/package.py b/var/spack/repos/builtin/packages/pkg-config/package.py
index 0863e920a6..f0f06d81ed 100644
--- a/var/spack/repos/builtin/packages/pkg-config/package.py
+++ b/var/spack/repos/builtin/packages/pkg-config/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class PkgConfig(AutotoolsPackage):
and libraries"""
homepage = "http://www.freedesktop.org/wiki/Software/pkg-config/"
+ # URL must remain http:// so Spack can bootstrap curl
url = "http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz"
version('0.29.2', sha256='6fc69c01688c9458a57eb9a1664c9aba372ccda420a02bf4429fe610e7e7d591')
@@ -30,6 +31,8 @@ class PkgConfig(AutotoolsPackage):
parallel = False
+ tags = ['build-tools']
+
executables = ['^pkg-config$']
@classmethod
diff --git a/var/spack/repos/builtin/packages/pkgconf/package.py b/var/spack/repos/builtin/packages/pkgconf/package.py
index 87978eef11..3cdc15b401 100644
--- a/var/spack/repos/builtin/packages/pkgconf/package.py
+++ b/var/spack/repos/builtin/packages/pkgconf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Pkgconf(AutotoolsPackage):
# URL must remain http:// so Spack can bootstrap curl
url = "http://distfiles.dereferenced.org/pkgconf/pkgconf-1.6.3.tar.xz"
+ version('1.7.4', sha256='d73f32c248a4591139a6b17777c80d4deab6b414ec2b3d21d0a24be348c476ab')
version('1.7.3', sha256='b846aea51cf696c3392a0ae58bef93e2e72f8e7073ca6ad1ed8b01c85871f9c0')
version('1.6.3', sha256='61f0b31b0d5ea0e862b454a80c170f57bad47879c0c42bd8de89200ff62ea210')
version('1.6.1', sha256='22b9ee38438901f9d60f180e5182821180854fa738fd071f593ea26a81da208c')
@@ -37,6 +38,8 @@ class Pkgconf(AutotoolsPackage):
# https://github.com/spack/spack/issues/3525
conflicts('%pgi')
+ tags = ['build-tools']
+
executables = ['^pkgconf$', '^pkg-config$']
@classmethod
diff --git a/var/spack/repos/builtin/packages/pktools/package.py b/var/spack/repos/builtin/packages/pktools/package.py
index ae26bba54a..c886fe4206 100644
--- a/var/spack/repos/builtin/packages/pktools/package.py
+++ b/var/spack/repos/builtin/packages/pktools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/planck-likelihood/package.py b/var/spack/repos/builtin/packages/planck-likelihood/package.py
index 7277ce5298..5079e7a3aa 100644
--- a/var/spack/repos/builtin/packages/planck-likelihood/package.py
+++ b/var/spack/repos/builtin/packages/planck-likelihood/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/plasma/package.py b/var/spack/repos/builtin/packages/plasma/package.py
index 99ee4cb3a1..8d192a4a38 100644
--- a/var/spack/repos/builtin/packages/plasma/package.py
+++ b/var/spack/repos/builtin/packages/plasma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/platypus/package.py b/var/spack/repos/builtin/packages/platypus/package.py
index 841464d5ec..18e65260f6 100644
--- a/var/spack/repos/builtin/packages/platypus/package.py
+++ b/var/spack/repos/builtin/packages/platypus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/plink-ng/package.py b/var/spack/repos/builtin/packages/plink-ng/package.py
index 27b4a4ca95..11a44f5f1c 100644
--- a/var/spack/repos/builtin/packages/plink-ng/package.py
+++ b/var/spack/repos/builtin/packages/plink-ng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/plink/package.py b/var/spack/repos/builtin/packages/plink/package.py
index 83bc26409a..bf209fe0d2 100644
--- a/var/spack/repos/builtin/packages/plink/package.py
+++ b/var/spack/repos/builtin/packages/plink/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/plplot/package.py b/var/spack/repos/builtin/packages/plplot/package.py
index 166890da95..6ed1fb5eaf 100644
--- a/var/spack/repos/builtin/packages/plplot/package.py
+++ b/var/spack/repos/builtin/packages/plplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/plumed/package.py b/var/spack/repos/builtin/packages/plumed/package.py
index 0eae1ac429..ad14b7d2cd 100644
--- a/var/spack/repos/builtin/packages/plumed/package.py
+++ b/var/spack/repos/builtin/packages/plumed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,9 +25,11 @@ class Plumed(AutotoolsPackage):
git = 'https://github.com/plumed/plumed2.git'
version('master', branch='master')
+ version('2.7.0', sha256='14450ea566c25ac9bf71fd77bb9c0c95e9038462b5739c73a515be82e2011cd6')
+ version('2.6.2', preferred=True, sha256='bbc2ef0cb08d404513b8b737c72333b6656389e15effd6a0f9ace2a5758c9a4a')
version('2.6.1', sha256='c1b3c397b2d971140aa240dde50e48a04ce78e3dedb02b6dca80fa53f8026e4e')
version('2.6.0', sha256='3d57ae460607a49547ef38a52c4ac93493a3966857c352280a9c05f5dcdb1820')
- version('2.5.5', preferred=True, sha256='70faa9ff1938e286dc388cb793b39840953e5646855b684f48df1bc864b737e8')
+ version('2.5.5', sha256='70faa9ff1938e286dc388cb793b39840953e5646855b684f48df1bc864b737e8')
version('2.5.4', sha256='a1647e598191f261e75d06351e607475d395af481315052a4c28563ac9989a7f')
version('2.5.3', sha256='543288be667dc4201fc461ecd2dd4878ddfbeac682d0c021c99ea8e501c7c9dc')
version('2.5.2', sha256='85d10cc46e2e37c7719cf51c0931278f56c2c8f8a9d86188b2bf97c2535a2ab4')
@@ -56,6 +58,9 @@ class Plumed(AutotoolsPackage):
variant('shared', default=True, description='Builds shared libraries')
variant('mpi', default=True, description='Activates MPI support')
variant('gsl', default=True, description='Activates GSL support')
+ variant('arrayfire', default='none',
+ values=('none', 'cpu', 'cuda', 'opencl'),
+ description='Activates FireArray support')
# Dependencies. LAPACK and BLAS are recommended but not essential.
depends_on('zlib')
@@ -64,6 +69,9 @@ class Plumed(AutotoolsPackage):
# For libmatheval support through the 'function' module
# which is enabled by default (or when optional_modules=all)
depends_on('libmatheval', when='@:2.4.99')
+ depends_on('arrayfire', when='arrayfire=cpu')
+ depends_on('arrayfire+cuda', when='arrayfire=cuda')
+ depends_on('arrayfire+opencl', when='arrayfire=opencl')
depends_on('mpi', when='+mpi')
depends_on('gsl', when='+gsl')
@@ -126,6 +134,14 @@ class Plumed(AutotoolsPackage):
# provided by optimized libraries due to linking order
filter_file('-lgslcblas', '', 'configure.ac')
+ def patch(self):
+ # Ensure Spack's wrappers are used to compile the Python interface
+ env = 'CXX={0} LDSHARED="{0} -pthread -shared" ' \
+ 'LDCXXSHARED="{0} -pthread -shared"'.format(spack_cxx)
+ filter_file('plumed_program_name=plumed',
+ '{0} plumed_program_name=plumed'.format(env),
+ 'src/lib/Makefile', 'python/Makefile')
+
def configure_args(self):
spec = self.spec
@@ -158,18 +174,31 @@ class Plumed(AutotoolsPackage):
'STATIC_LIBS=-mt_mpi'
])
+ extra_libs = []
# Set flags to help find gsl
- if '+gsl' in self.spec:
- gsl_libs = self.spec['gsl'].libs
- blas_libs = self.spec['blas'].libs
- configure_opts.append('LDFLAGS={0}'.format(
+ if '+gsl' in spec:
+ gsl_libs = spec['gsl'].libs
+ blas_libs = spec['blas'].libs
+ extra_libs.append(
(gsl_libs + blas_libs).ld_flags
+ )
+ # Set flags to help with ArrayFire
+ if 'arrayfire=none' not in spec:
+ libaf = 'arrayfire:{0}'.format(spec.variants['arrayfire'].value)
+ extra_libs.append(spec[libaf].libs.search_flags)
+
+ if extra_libs:
+ configure_opts.append('LDFLAGS={0}'.format(
+ ' '.join(extra_libs)
))
# Additional arguments
configure_opts.extend([
'--enable-shared={0}'.format('yes' if '+shared' in spec else 'no'),
- '--enable-gsl={0}'.format('yes' if '+gsl' in spec else 'no')
+ '--enable-gsl={0}'.format('yes' if '+gsl' in spec else 'no'),
+ '--enable-af_cpu={0}'.format('yes' if 'arrayfire=cpu' in spec else 'no'),
+ '--enable-af_cuda={0}'.format('yes' if 'arrayfire=cuda' in spec else 'no'),
+ '--enable-af_ocl={0}'.format('yes' if 'arrayfire=ocl' in spec else 'no')
])
# Construct list of optional modules
diff --git a/var/spack/repos/builtin/packages/ply/package.py b/var/spack/repos/builtin/packages/ply/package.py
new file mode 100644
index 0000000000..830a5ef718
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ply/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Ply(AutotoolsPackage):
+ """A light-weight dynamic tracer for Linux that leverages the
+ kernel's BPF VM in concert with kprobes and tracepoints to attach
+ probes to arbitrary points in the kernel."""
+
+ homepage = "https://github.com/iovisor/ply"
+ git = "https://github.com/iovisor/ply.git"
+
+ version('2.1.1', commit='899afb0c35ba2191dd7aa21f13bc7fde2655c475')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ def autoreconf(self, spec, prefix):
+ bash = which("bash")
+ bash('./autogen.sh')
diff --git a/var/spack/repos/builtin/packages/pmdk/package.py b/var/spack/repos/builtin/packages/pmdk/package.py
index 54e777bf52..9653653f8d 100644
--- a/var/spack/repos/builtin/packages/pmdk/package.py
+++ b/var/spack/repos/builtin/packages/pmdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pmemkv/package.py b/var/spack/repos/builtin/packages/pmemkv/package.py
new file mode 100644
index 0000000000..d3f4945984
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pmemkv/package.py
@@ -0,0 +1,88 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Pmemkv(CMakePackage):
+ """pmemkv is a local/embedded key-value datastore,
+ optimized for persistent memory.
+ """
+
+ homepage = "https://pmem.io/pmemkv/"
+ url = "https://github.com/pmem/pmemkv/archive/1.4.tar.gz"
+ git = "https://github.com/pmem/pmemkv.git"
+
+ version('master', branch='master')
+ version('1.4', sha256='6630917e0203eff7a520071c858baa7b7e108088da2fe8c4b31ec5f8c661fbe9')
+ version('1.3', sha256='f1b946ef3545bcc2751fa2e4faab0538cd3072b66d4c4575f21712e0cc53bae8')
+ version('1.2', sha256='22de74392e0a6eea5aa1955ed2d59462bf45ec69a01eb1cf2115e39e7bdc4754')
+ version('1.1', sha256='c4ca07c1fecad39b5dbf197673f033f27d74c9f9987f036f6eaf5c7f23a342f3')
+ version('1.0.3', sha256='cae393a01ba69364271c5894046bf2c611f677ac88012f2473fadf6fcd20ff29')
+ version('1.0.2', sha256='a0cbbb60c0342d6fd0b73d2cee1a1423c6a894b8d21daf669016809961fe23b8')
+
+ depends_on('libpmemobj-cpp@develop', when='@master')
+ depends_on('libpmemobj-cpp@1.12:', when='@1.4:')
+ depends_on('libpmemobj-cpp@1.11:', when='@1.3:')
+ depends_on('libpmemobj-cpp@1.10:', when='@1.2:')
+ depends_on('libpmemobj-cpp@1.9:', when='@1.1:')
+ depends_on('libpmemobj-cpp@1.8:', when='@1.0.2:')
+
+ depends_on('pmdk@master', when='@master')
+ depends_on('pmdk@master', when='@1.4:')
+ depends_on('pmdk@1.8:', when='@1.1:')
+ depends_on('pmdk@1.7:', when='@1.0.2:')
+
+ depends_on('memkind@1.8.0:')
+
+ depends_on('rapidjson')
+
+ # tbb is one of virtual dependencies.
+ # Please refer https://spack.readthedocs.io/en/latest/packaging_guide.html#virtual-dependencies
+ # we can use any packages which provides 'tbb'
+ # For example, 'intel-tbb' or 'intel-oneapi-tbb'
+ # Default is 'intel-tbb' (etc/spack/defaults/packages.yaml)
+ depends_on('tbb')
+
+ depends_on('cmake@3.3:')
+
+ variant('cmap', default=True, description='enable cmap engine.')
+ variant('vcmap', default=True, description='enable vcmap engine.')
+ variant('vsmap', default=True, description='enable vsmap engine.')
+ variant('csmap', default=False, description='enable experimental csmap engine.')
+ variant('stree', default=True, description='enable experimental stree engine.')
+ variant('tree3', default=False, description='enable experimental tree3 engine.')
+ variant('radix', default=False, description='enable experimental radix engine.')
+ variant('robinhood', default=False, description='enable experimental robinhood engine.')
+ variant('dram_vcmap', default=False, description='enable testing dram_vcmap engine.')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ self.define('BUILD_DOC', False),
+ self.define('BUILD_EXAMPLES', False),
+ self.define('BUILD_TESTS', False),
+ self.define('BUILD_JSON_CONFIG', True),
+ self.define('TESTS_LONG', False),
+ self.define('TESTS_USE_FORCED_PMEM', False),
+ self.define('TESTS_USE_VALGRIND', False),
+ self.define('TESTS_PMEMOBJ_DRD_HELGRIND', False),
+ self.define('TESTS_JSON', False),
+ self.define_from_variant('ENGINE_CMAP', 'cmap'),
+ self.define_from_variant('ENGINE_VCMAP', 'vcmap'),
+ self.define_from_variant('ENGINE_VSMAP', 'vsmap'),
+ self.define_from_variant('ENGINE_CSMAP', 'csmap'),
+ self.define_from_variant('ENGINE_STREE', 'stree'),
+ self.define_from_variant('ENGINE_TREE3', 'tree3'),
+ self.define_from_variant('ENGINE_RADIX', 'radix'),
+ self.define_from_variant('ENGINE_ROBINHOOD', 'robinhood'),
+ self.define_from_variant('ENGINE_DRAM_VCMAP', 'dram_vcmap'),
+ ]
+
+ if ('+csmap' in spec) or ('+robinhood' in spec):
+ args.append(self.define('CXX_STANDARD', 14))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/pmerge/package.py b/var/spack/repos/builtin/packages/pmerge/package.py
new file mode 100644
index 0000000000..91411de322
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pmerge/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Pmerge(AutotoolsPackage):
+ """PMERGE implements a new method that identifies candidate PSVs by
+ building networks of loci that share high levels of nucleotide
+ similarity. The PMERGE is embedded in the analysis pipeline of the
+ widely used Stacks software, and it is straightforward to apply it as
+ an additional filter in population-genomic studies using RAD-seq
+ data."""
+
+ homepage = "https://github.com/beiko-lab/PMERGE"
+ git = "https://github.com/beiko-lab/PMERGE.git"
+
+ version('master', branch='master')
+
+ depends_on('automake@1.14:1.14.99', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('m4', type='build')
+ depends_on('perl', type='build')
+
+ @property
+ def configure_directory(self):
+ return 'Install'
diff --git a/var/spack/repos/builtin/packages/pmgr-collective/package.py b/var/spack/repos/builtin/packages/pmgr-collective/package.py
index 80cb96cfc3..47e60fa550 100644
--- a/var/spack/repos/builtin/packages/pmgr-collective/package.py
+++ b/var/spack/repos/builtin/packages/pmgr-collective/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pmix/package.py b/var/spack/repos/builtin/packages/pmix/package.py
index b752aca0bf..40baaa9d03 100644
--- a/var/spack/repos/builtin/packages/pmix/package.py
+++ b/var/spack/repos/builtin/packages/pmix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -37,6 +37,8 @@ class Pmix(AutotoolsPackage):
maintainers = ['rhc54']
version('master', branch='master')
+ version('3.2.1', sha256='7e5db8ada5828cf85c12f70db6bfcf777d13e5c4c73b2206bb5e394d47066a2b')
+ version('3.1.5', sha256='88934195174455df478b996313095df25b51d0caf5a5cce01b22f0ccdc6c5cf7')
version('3.1.3', sha256='118acb9c4e10c4e481406dcffdfa762f314af50db75336bf8460e53b56dc439d')
version('3.1.2', sha256='28aed0392d4ca2cdfbdd721e6210c94dadc9830677fea37a0abe9d592c00f9c3')
version('3.0.2', sha256='df68f35a3ed9517eeade80b13855cebad8fde2772b36a3f6be87559b6d430670')
@@ -59,6 +61,10 @@ class Pmix(AutotoolsPackage):
description="allow a PMIx server to request services from "
"a system-level REST server")
+ variant('docs',
+ default=False,
+ description='Build manpages')
+
depends_on('libevent@2.0.20:2.0.22,2.1.8')
depends_on('hwloc@1.11.0:1.11.99,2.0.1:', when='@3.0.0:')
depends_on("m4", type=("build"), when="@master")
@@ -68,6 +74,7 @@ class Pmix(AutotoolsPackage):
depends_on("perl", type=("build"), when="@master")
depends_on('curl', when="+restful")
depends_on('jansson@2.11:', when="+restful")
+ depends_on('pandoc', type='build', when='+docs')
conflicts('@:3.9.9', when='+restful')
@@ -93,6 +100,9 @@ class Pmix(AutotoolsPackage):
else:
config_args.append('--disable-pmi-backward-compatibility')
+ if '~docs' in self.spec:
+ config_args.append('--disable-man-pages')
+
# libevent support
config_args.append(
'--with-libevent={0}'.format(spec['libevent'].prefix))
diff --git a/var/spack/repos/builtin/packages/pmlib/package.py b/var/spack/repos/builtin/packages/pmlib/package.py
index 3c7ea4a0ed..31cd0a2404 100644
--- a/var/spack/repos/builtin/packages/pmlib/package.py
+++ b/var/spack/repos/builtin/packages/pmlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pnfft/package.py b/var/spack/repos/builtin/packages/pnfft/package.py
index 209263a440..ed8e7fac28 100644
--- a/var/spack/repos/builtin/packages/pnfft/package.py
+++ b/var/spack/repos/builtin/packages/pnfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pngquant/package.py b/var/spack/repos/builtin/packages/pngquant/package.py
index a6bcd69de7..7ceaaf4a88 100644
--- a/var/spack/repos/builtin/packages/pngquant/package.py
+++ b/var/spack/repos/builtin/packages/pngquant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pngwriter/package.py b/var/spack/repos/builtin/packages/pngwriter/package.py
index a544f48247..49b4f46fa9 100644
--- a/var/spack/repos/builtin/packages/pngwriter/package.py
+++ b/var/spack/repos/builtin/packages/pngwriter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pnmpi/package.py b/var/spack/repos/builtin/packages/pnmpi/package.py
index 8c936455b7..5efe1533eb 100644
--- a/var/spack/repos/builtin/packages/pnmpi/package.py
+++ b/var/spack/repos/builtin/packages/pnmpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/poamsa/package.py b/var/spack/repos/builtin/packages/poamsa/package.py
index deba0f0544..5cb548b0ee 100644
--- a/var/spack/repos/builtin/packages/poamsa/package.py
+++ b/var/spack/repos/builtin/packages/poamsa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pocl/package.py b/var/spack/repos/builtin/packages/pocl/package.py
index 121b240e28..da19e674a7 100644
--- a/var/spack/repos/builtin/packages/pocl/package.py
+++ b/var/spack/repos/builtin/packages/pocl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class Pocl(CMakePackage):
git = "https://github.com/pocl/pocl.git"
version("master", branch="master")
+ version('1.6', sha256='b0a4c0c056371b6f0db726b88fbb76bbee94948fb2abd4dbc8d958f7c42f766c')
version('1.5', sha256='4fcf4618171727d165fc044d465a66e3119217bb4577a97374f94fcd8aed330e')
version('1.4', sha256='ec237faa83bb1c803fbdf7c6e83d8a2ad68b6f0ed1879c3aa16c0e1dcc478742')
version('1.3', sha256='6527e3f47fab7c21e96bc757c4ae3303901f35e23f64642d6da5cc4c4fcc915a')
@@ -32,6 +33,9 @@ class Pocl(CMakePackage):
version('0.11', sha256='24bb801fb87d104b66faaa95d1890776fdeabb37ad1b12fb977281737c7f29bb')
version('0.10', sha256='e9c38f774a77e61f66d850b705a5ba42d49356c40e75733db4c4811e091e5088')
+ conflicts('@:1.5', when='target=a64fx',
+ msg='a64fx is supported by pocl v1.6 and above.')
+
# This is Github's pocl/pocl#373
patch("uint.patch", when="@:0.13")
patch("vecmathlib.patch", when="@:0.13")
@@ -51,7 +55,8 @@ class Pocl(CMakePackage):
# enabled by default, and also because they fail to build for us
# (see #1616)
# These are the supported LLVM versions
- depends_on("llvm +clang @6.0:10.0", when="@master")
+ depends_on("llvm +clang @6.0:11.0", when="@master")
+ depends_on("llvm +clang +shared_libs -flang @6.0:11.0", when="@1.6")
depends_on("llvm +clang @6.0:10.0", when="@1.5")
depends_on("llvm +clang @6.0:9.0", when="@1.4")
depends_on("llvm +clang @5.0:8.0", when="@1.3")
diff --git a/var/spack/repos/builtin/packages/podio/package.py b/var/spack/repos/builtin/packages/podio/package.py
index ebb1c0e880..bec083e0c3 100644
--- a/var/spack/repos/builtin/packages/podio/package.py
+++ b/var/spack/repos/builtin/packages/podio/package.py
@@ -1,10 +1,8 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
-
class Podio(CMakePackage):
"""PODIO, or plain-old-data I/O, is a C++ library to support the creation
@@ -16,13 +14,16 @@ class Podio(CMakePackage):
maintainers = ['vvolkl', 'drbenmorgan']
+ tags = ["hep", "key4hep"]
+
version('master', branch='master')
- version('0.12.0', sha256='1729a2ce21e8b307fc37dfb9a9f5ae031e9f4be4992385cf99dba3e5fdf5323a')
- version('0.11.0', sha256='4b2765566a14f0ddece2c894634e0a8e4f42f3e44392addb9110d856f6267fb6')
- version('0.10.0', sha256='b5b42770ec8b96bcd2748abc05669dd3e4d4cc84f81ed57d57d2eda1ade90ef2')
+ version('0.13', sha256='e9cbd4e25730003d3706ad82e28b15cb5bdc524a78b0a26e90b89ea852101498')
+ version('0.12', sha256='1729a2ce21e8b307fc37dfb9a9f5ae031e9f4be4992385cf99dba3e5fdf5323a')
+ version('0.11', sha256='4b2765566a14f0ddece2c894634e0a8e4f42f3e44392addb9110d856f6267fb6')
+ version('0.10', sha256='b5b42770ec8b96bcd2748abc05669dd3e4d4cc84f81ed57d57d2eda1ade90ef2')
version('0.9.2', sha256='8234d1b9636029124235ef81199a1220968dcc7fdaeab81cdc96a47af332d240')
- version('0.9.0', sha256='3cde67556b6b76fd2d004adfaa3b3b6173a110c0c209792bfdb5f9353e21076f')
- version('0.8.0', sha256='9d035a7f5ebfae5279a17405003206853271af692f762e2bac8e73825f2af327')
+ version('0.9', sha256='3cde67556b6b76fd2d004adfaa3b3b6173a110c0c209792bfdb5f9353e21076f')
+ version('0.8', sha256='9d035a7f5ebfae5279a17405003206853271af692f762e2bac8e73825f2af327')
variant('build_type', default='Release',
description='The build type to build',
@@ -41,29 +42,46 @@ class Podio(CMakePackage):
depends_on('python', type=('build', 'run'))
depends_on('py-pyyaml', type=('build', 'run'))
depends_on('py-jinja2@2.10.1:', type=('build', 'run'), when='@0.12.0:')
- depends_on('sio', type=('build', 'run'), when='+sio')
+ depends_on('sio', type=('build', 'link'), when='+sio')
conflicts('+sio', when='@:0.12', msg='sio support requires at least podio@0.13')
def cmake_args(self):
args = [
- self.define('BUILD_TESTING', self.run_tests),
self.define_from_variant('ENABLE_SIO', 'sio')
]
return args
+ def setup_run_environment(self, env):
+ env.prepend_path('PYTHONPATH', self.prefix.python)
+
def url_for_version(self, version):
- # podio releases are dashes and padded with a leading zero
- # the patch version is omitted when 0
- # so for example v01-12-01, v01-12 ...
- major = (str(version[0]).zfill(2))
- minor = (str(version[1]).zfill(2))
- patch = (str(version[2]).zfill(2))
- if version[2] == 0:
- url = "https://github.com/AIDASoft/podio/archive/v%s-%s.tar.gz" % (major, minor)
+ """Translate version numbers to ilcsoft conventions.
+ in spack, the convention is: 0.1 (or 0.1.0) 0.1.1, 0.2, 0.2.1 ...
+ in ilcsoft, releases are dashed and padded with a leading zero
+ the patch version is omitted when 0
+ so for example v01-12-01, v01-12 ...
+ :param self: spack package class that has a url
+ :type self: class: `spack.PackageBase`
+ :param version: version
+ :type param: str
+ """
+ base_url = self.url.rsplit('/', 1)[0]
+
+ if len(version) == 1:
+ major = version[0]
+ minor, patch = 0, 0
+ elif len(version) == 2:
+ major, minor = version
+ patch = 0
else:
- url = "https://github.com/AIDASoft/podio/archive/v%s-%s-%s.tar.gz" % (major, minor, patch)
- return url
+ major, minor, patch = version
- def setup_run_environment(self, env):
- env.prepend_path('PYTHONPATH', self.prefix.python)
+ # By now the data is normalized enough to handle it easily depending
+ # on the value of the patch version
+ if patch == 0:
+ version_str = 'v%02d-%02d.tar.gz' % (major, minor)
+ else:
+ version_str = 'v%02d-%02d-%02d.tar.gz' % (major, minor, patch)
+
+ return base_url + '/' + version_str
diff --git a/var/spack/repos/builtin/packages/poke/package.py b/var/spack/repos/builtin/packages/poke/package.py
new file mode 100644
index 0000000000..4e2eadc79e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/poke/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Poke(AutotoolsPackage, GNUMirrorPackage):
+ """"The extensible editor for structured binary data"""
+ homepage = "http://www.jemarch.net/poke.html"
+ gnu_mirror_path = 'poke/poke-1.0.tar.gz'
+
+ maintainers = ['ChristianTackeGSI']
+
+ version('1.0', sha256='de930b8700c0772b3c2cd0d0ca35f50fd3d77bdf82c6251eb516b49e8ca25b0a')
+
+ depends_on('pkgconfig')
+ depends_on('readline')
+ depends_on('bdw-gc')
+ depends_on('json-c')
+
+ build_directory = 'spack-build'
diff --git a/var/spack/repos/builtin/packages/polymake/package.py b/var/spack/repos/builtin/packages/polymake/package.py
index f32033188c..3bede01dad 100644
--- a/var/spack/repos/builtin/packages/polymake/package.py
+++ b/var/spack/repos/builtin/packages/polymake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/poplddecay/package.py b/var/spack/repos/builtin/packages/poplddecay/package.py
index 6dbf55dc27..4a90da46b0 100644
--- a/var/spack/repos/builtin/packages/poplddecay/package.py
+++ b/var/spack/repos/builtin/packages/poplddecay/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/poppler-data/package.py b/var/spack/repos/builtin/packages/poppler-data/package.py
index 19d0c0e3c7..f6d5c29001 100644
--- a/var/spack/repos/builtin/packages/poppler-data/package.py
+++ b/var/spack/repos/builtin/packages/poppler-data/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/poppler/package.py b/var/spack/repos/builtin/packages/poppler/package.py
index 7368e73428..6123ff06a1 100644
--- a/var/spack/repos/builtin/packages/poppler/package.py
+++ b/var/spack/repos/builtin/packages/poppler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/popt/package.py b/var/spack/repos/builtin/packages/popt/package.py
index 4256f4385f..2a28509c5b 100644
--- a/var/spack/repos/builtin/packages/popt/package.py
+++ b/var/spack/repos/builtin/packages/popt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,10 +14,10 @@ class Popt(AutotoolsPackage):
version('1.16', sha256='e728ed296fe9f069a0e005003c3d6b2dde3d9cad453422a10d6558616d304cc8')
- depends_on('libiconv')
+ depends_on('iconv')
def patch(self):
# Remove flags not recognized by the NVIDIA compilers
- if self.spec.satisfies('%nvhpc'):
+ if self.spec.satisfies('%nvhpc@:20.11'):
filter_file('CFLAGS="$CFLAGS -Wall -W"',
'CFLAGS="$CFLAGS -Wall"', 'configure', string=True)
diff --git a/var/spack/repos/builtin/packages/porta/package.py b/var/spack/repos/builtin/packages/porta/package.py
index b61ed84db0..41c5778ea0 100644
--- a/var/spack/repos/builtin/packages/porta/package.py
+++ b/var/spack/repos/builtin/packages/porta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/portage/package.py b/var/spack/repos/builtin/packages/portage/package.py
index 95c881ae6c..29df97cbdb 100644
--- a/var/spack/repos/builtin/packages/portage/package.py
+++ b/var/spack/repos/builtin/packages/portage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,52 +14,92 @@ class Portage(CMakePackage):
"""
homepage = "http://portage.lanl.gov/"
git = "https://github.com/laristra/portage.git"
+ url = "https://github.com/laristra/portage/releases/download/3.0.0/portage-3.0.0.tar.gz"
+
+ maintainers = ['raovgarimella']
# tarballs don't have submodules, so use git tags
- version('develop', branch='master', submodules=True)
- version('1.2.2', tag='v1.2.2', submodules=True)
- version('1.1.1', tag='v1.1.1', submodules=True)
- version('1.1.0', tag='v1.1.0', submodules=True)
-
- # fabs() needs math.h for gcc-7, got fixed in
- # versions above 1.2.2
- patch('gcc-7.patch', when='@:1.2.2 %gcc@7:')
- # part of https://github.com/laristra/cinch/commit/f87f848269fac25aa5b8d0bd5d9c9b2d2d6fb0ad
- # fixed in version above 1.2.2
- patch('p_lapacke_config.patch', when='@1.2.2')
- # don't enable debug prints in RelWithDebInfo build
- # fixed in version above 1.2.2
- patch('rel-with-deb-info.patch', when='@1.2.2')
-
- # intel/19.0.4 got an ICE (internal compiler error) compiling pairs.cc
- patch('p_intel_ice.patch', when='@1.2.2')
+ version('3.0.0', sha256='7a5a21ffbc35fa54a5136d937cfda6f836c7496ff2b5adf54deb4107501333da')
+ version('master', branch='master', submodules=True)
variant('mpi', default=True, description='Support MPI')
+ variant('tangram', default=False, description='Use Tangram interface reconstruction package')
+ variant('jali', default=False, description='Include support for Jali mesh framework')
+ variant('flecsisp', default=False, description='Include support for FleCSI mesh framework')
+ variant('thrust', default=False, description='Enable on-node parallelism using NVidia Thrust library')
+ variant('kokkos', default=False, description='Enable on-node or device parallelism with Kokkos')
+ variant('openmp', default=False, description="Enable on-node parallelism using OpenMP")
+ variant('cuda', default=False, description="Enable GPU parallelism using CUDA")
+
+ depends_on("cmake@3.13:", type='build')
- depends_on("cmake@3.1:", type='build')
depends_on('mpi', when='+mpi')
- depends_on('lapack')
- depends_on('boost')
+
+ depends_on('tangram', when='+tangram')
+ depends_on('tangram+mpi', when='+tangram+mpi')
+ depends_on('tangram+jali', when='+tangram+jali')
+ depends_on('tangram+flecsisp', when='+tangram+flecsisp')
+ depends_on('tangram+thrust', when='+tangram+thrust')
+ depends_on('tangram+kokkos', when='+tangram+kokkos')
+ depends_on('tangram+cuda', when='+tangram+cuda')
+
+ depends_on('wonton')
+ depends_on('wonton+mpi', when='+mpi')
+ depends_on('wonton+jali', when='+jali')
+ depends_on('wonton+flecsisp', when='+flecsisp')
+ depends_on('wonton+thrust', when='+thrust')
+ depends_on('wonton+kokkos', when='+kokkos')
+ depends_on('wonton+openmp', when='+openmp')
+ depends_on('wonton+cuda', when='+cuda')
+
+ # Jali needs MPI
+ conflicts('+jali ~mpi')
+
+ # Thrust with CUDA does not work as yet
+ conflicts('+thrust +cuda')
+
+ # Don't enable Kokkos and Thrust simultaneously
+ conflicts('+thrust +kokkos')
def cmake_args(self):
- options = ['-DENABLE_UNIT_TESTS=ON', '-DENABLE_APP_TESTS=ON']
+ options = []
if '+mpi' in self.spec:
- options.extend([
- '-DENABLE_MPI=ON',
- '-DENABLE_MPI_CXX_BINDINGS=ON',
- '-DCMAKE_CXX_COMPILER=%s' % self.spec['mpi'].mpicxx,
- '-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc,
- ])
+ options.append('-DPORTAGE_ENABLE_MPI=ON')
else:
- options.append('-DENABLE_MPI=OFF')
+ options.append('-DPORTAGE_ENABLE_MPI=OFF')
- options.append('-DBLA_VENDOR=' + self.spec['blas'].name.upper())
- options.append('-DBLAS_LIBRARIES=' + self.spec['blas'].libs.joined())
- options.append('-DLAPACK_LIBRARIES=' +
- self.spec['lapack'].libs.joined())
+ if '+thrust' in self.spec:
+ options.append('-DPORTAGE_ENABLE_THRUST=ON')
+ else:
+ options.append('-DPORTAGE_ENABLE_THRUST=OFF')
- options.append("-DLAPACKE_LIBRARY=" +
- self.spec["lapack:c"].libs.joined(";"))
+ if '+kokkos' in self.spec:
+ options.append('-DPORTAGE_ENABLE_Kokkos=ON')
+ else:
+ options.append('-DPORTAGE_ENABLE_Kokkos=OFF')
+
+ if '+jali' in self.spec:
+ options.append('-DPORTAGE_ENABLE_Jali=ON')
+ else:
+ options.append('-DPORTAGE_ENABLE_Jali=OFF')
+
+ if '+flecsi' in self.spec:
+ options.append('-DPORTAGE_ENABLE_FleCSI=ON')
+ else:
+ options.append('-DPORTAGE_ENABLE_FleCSI=OFF')
+
+ if '+tangram' in self.spec:
+ options.append('-DPORTAGE_ENABLE_TANGRAM=ON')
+ else:
+ options.append('-DPORTAGE_ENABLE_TANGRAM=OFF')
+
+ # Unit test variant
+ if self.run_tests:
+ options.append('-DENABLE_UNIT_TESTS=ON')
+ options.append('-DENABLE_APP_TESTS=ON')
+ else:
+ options.append('-DENABLE_UNIT_TESTS=OFF')
+ options.append('-DENABLE_APP_TESTS=OFF')
return options
diff --git a/var/spack/repos/builtin/packages/portcullis/package.py b/var/spack/repos/builtin/packages/portcullis/package.py
index 6c4d0222c2..9f5b35a805 100644
--- a/var/spack/repos/builtin/packages/portcullis/package.py
+++ b/var/spack/repos/builtin/packages/portcullis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/postgis/package.py b/var/spack/repos/builtin/packages/postgis/package.py
index 95d7faee98..a0f3ddd57d 100644
--- a/var/spack/repos/builtin/packages/postgis/package.py
+++ b/var/spack/repos/builtin/packages/postgis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/postgresql/package.py b/var/spack/repos/builtin/packages/postgresql/package.py
index 328203138c..902d8e1258 100644
--- a/var/spack/repos/builtin/packages/postgresql/package.py
+++ b/var/spack/repos/builtin/packages/postgresql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -44,6 +44,7 @@ class Postgresql(AutotoolsPackage):
variant('tcl', default=False, description='Enable Tcl bindings.')
variant('gssapi', default=False,
description='Build with GSSAPI functionality.')
+ variant('xml', default=False, description='Build with XML support.')
depends_on('readline', when='lineedit=readline')
depends_on('libedit', when='lineedit=libedit')
@@ -51,6 +52,7 @@ class Postgresql(AutotoolsPackage):
depends_on('tcl', when='+tcl')
depends_on('perl', when='+perl')
depends_on('python', when='+python')
+ depends_on('libxml2', when='+xml')
def configure_args(self):
config_args = ["--with-openssl"]
@@ -77,6 +79,9 @@ class Postgresql(AutotoolsPackage):
if '+tcl' in self.spec:
config_args.append('--with-tcl')
+ if '+xml' in self.spec:
+ config_args.append('--with-libxml')
+
return config_args
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/povray/fix_prebuild.sh.patch b/var/spack/repos/builtin/packages/povray/fix_prebuild.sh.patch
new file mode 100644
index 0000000000..785dc433b3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/povray/fix_prebuild.sh.patch
@@ -0,0 +1,15 @@
+diff -Naur spack-src/unix/prebuild.sh spack-src.patched/unix/prebuild.sh
+--- spack-src/unix/prebuild.sh 2020-11-19 16:49:04.573263288 -0500
++++ spack-src.patched/unix/prebuild.sh 2020-11-19 16:51:35.599850471 -0500
+@@ -62,8 +62,9 @@
+
+ # Prevents running from another directory.
+ if test x"`dirname $0`" != x"."; then
+- echo "$0: must ran from POV-Ray's unix/ directory"
+- exit 1
++ wdir=`dirname $0`
++ echo >&2 "Changing directory to '$wdir' ..."
++ cd $wdir
+ fi
+
+ # Check optional argument.
diff --git a/var/spack/repos/builtin/packages/povray/package.py b/var/spack/repos/builtin/packages/povray/package.py
new file mode 100644
index 0000000000..4c622475af
--- /dev/null
+++ b/var/spack/repos/builtin/packages/povray/package.py
@@ -0,0 +1,157 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+# For getting fqdn for defaulting COMPILED_BY
+import socket
+# For getting username for defaulting COMPILED_BY
+import getpass
+
+
+class Povray(AutotoolsPackage):
+ """The Persistence of Vision Raytracer creates three-dimensional,
+ photo-realistic images using a rendering technique called ray-tracing. It
+ reads in a text file containing information describing the objects and
+ lighting in a scene and generates an image of that scene from the view
+ point of a camera also described in the text file. Ray-tracing is not a
+ fast process by any means, but it produces very high quality images with
+ realistic reflections, shading, perspective and other effects.
+ """
+
+ # Add a proper url for your package's homepage here.
+ homepage = "http://povray.org/download/"
+ url = "https://github.com/POV-Ray/povray/archive/v3.7.0.8.tar.gz"
+ git = "https://github.com/POV-Ray/povray.git"
+
+ # maintainers = ['payerle' ]
+
+ version('3.7.0.8', sha256='53d11ebd2972fc452af168a00eb83aefb61387662c10784e81b63e44aa575de4')
+
+ variant('boost', default=True, description='Build with boost support')
+ variant('debug', default=False,
+ description='Enable compiler debugging mode')
+ variant('io-restrictions', default=True,
+ description='Enable POV-Rays mechanism for control of I/O '
+ 'operations')
+ variant('jpeg', default=True, description='Build with jpeg support')
+ variant('libpng', default=True, description='Build with libpng support')
+ variant('libtiff', default=True, description='Build with libtiff support')
+ variant('mkl', default=True, description='Build with Intel MKL support')
+ variant('openexr', default=True, description='Build with OpenEXR support')
+ variant('profile', default=False,
+ description='Enable program execution profiling')
+ variant('static', default=False,
+ description='Build static instead shared binaries')
+ variant('zlib', default=True, description='Build with zlib support')
+ # SDL support is limited to sdl version 1, not sdl2, and spack currently
+ # only supports sdl2
+ # variant('sdl', default=True,
+ # description='Build with SDL support (for display preview)')
+ # X11 support requires SDL, and I believe therefore lacks support for
+ # remote displays. As we do not have SDL support, no X11 support
+ # variant('x11', default=True, description='Build with X11 support')
+
+ # Build dependencies
+ depends_on('autoconf@2.59:', type='build')
+ depends_on('automake@1.9:', type='build')
+ depends_on('perl', type='build')
+ depends_on('m4', type='build')
+ depends_on('boost@1.37:', when='+boost')
+ depends_on('zlib@1.2.1:', when='+zlib')
+ depends_on('libpng@1.2.5:', when='+libpng')
+ depends_on('jpeg', when='+jpeg')
+ depends_on('libtiff@3.6.1:', when='+libtiff')
+ depends_on('mkl', when='+mkl')
+ depends_on('openexr@1.2:', when='+openexr')
+
+ # MKL conflicts
+ conflicts('+mkl', when='target=aarch64:',
+ msg='Intel MKL only runs on x86')
+ conflicts('+mkl', when='target=ppc64:',
+ msg='Intel MKL only runs on x86')
+ conflicts('+mkl', when='target=ppc64le:',
+ msg='Intel MKL only runs on x86')
+
+ # This patch enables prebuild.sh to be invoked from any directory
+ # (it immediately cds to the directory containing prebuild.sh)
+ # This is better than a broken check that it was called from the
+ # containing directory
+ patch('fix_prebuild.sh.patch')
+
+ @run_before('autoreconf')
+ def run_prebuild_script(self):
+ # We need to run <build_dir>/unix/prebuild.sh
+ # and it must be run from within the directory containing it
+ unix_dir = join_path(self.build_directory, 'unix')
+ prebuild_path = join_path(unix_dir, 'prebuild.sh')
+ prebuild_script = which(prebuild_path)
+ prebuild_script()
+
+ def configure_args(self):
+ extra_args = []
+
+ # POVRay insists upon a COMPILED_BY value being passed to configure
+ # We generate a generic using process owner and fqdn of build host.
+ fqdn = socket.getfqdn()
+ uname = getpass.getuser()
+ compiled_by = 'Installed by spack <{0}@{1}>'.format(uname, fqdn)
+ extra_args.append('COMPILED_BY={0}'.format(compiled_by))
+
+ extra_args.append('--disable-silent-rules') # Verbose make output
+ extra_args += self.enable_or_disable('debug')
+ extra_args += self.enable_or_disable('io-restrictions')
+ extra_args += self.enable_or_disable('profile')
+ extra_args += self.enable_or_disable('static')
+
+ if '+boost' in self.spec:
+ extra_args.append('--with-boost={0}'.format(
+ self.spec['boost'].prefix))
+ else:
+ extra_args.append('--without-boost')
+
+ if '+jpeg' in self.spec:
+ extra_args.append('--with-libjpeg={0}'.format(
+ self.spec['jpeg'].prefix))
+ else:
+ extra_args.append('--without-libjpeg')
+
+ if '+libpng' in self.spec:
+ extra_args.append('--with-libpng={0}'.format(
+ self.spec['libpng'].prefix))
+ else:
+ extra_args.append('--without-libpng')
+
+ if '+libtiff' in self.spec:
+ extra_args.append('--with-libtiff={0}'.format(
+ self.spec['libtiff'].prefix))
+ else:
+ extra_args.append('--without-libtiff')
+
+ if '+mkl' in self.spec:
+ extra_args.append('--with-libmkl={0}'.format(
+ self.spec['mkl'].prefix))
+ else:
+ extra_args.append('--without-libmkl')
+
+ if '+openexr' in self.spec:
+ extra_args.append('--with-openexr={0}'.format(
+ self.spec['openexr'].prefix))
+ else:
+ extra_args.append('--without-openexr')
+
+ # POV-Ray only supports sdl v1, spack only supports sdl2 at this time
+ # and X11 support requires sdl
+ extra_args.append('--without-libsdl')
+ extra_args.append('--without-x')
+
+ return extra_args
+
+ def test(self):
+ povs = find(self.prefix.share, 'biscuit.pov')[0]
+ copy(povs, '.')
+ self.run_test('povray', options=['biscuit.pov'],
+ purpose="test: render sample file",
+ expected=['POV-Ray finished']
+ )
diff --git a/var/spack/repos/builtin/packages/powerapi/package.py b/var/spack/repos/builtin/packages/powerapi/package.py
index 4b4fb5e3a0..5b3a876afe 100644
--- a/var/spack/repos/builtin/packages/powerapi/package.py
+++ b/var/spack/repos/builtin/packages/powerapi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/powertop/package.py b/var/spack/repos/builtin/packages/powertop/package.py
index 8279ccf826..1c776afc6f 100644
--- a/var/spack/repos/builtin/packages/powertop/package.py
+++ b/var/spack/repos/builtin/packages/powertop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Powertop(AutotoolsPackage):
version('2.9', sha256='aa7fb7d8e9a00f05e7d8a7a2866d85929741e0d03a5bf40cab22d2021c959250')
depends_on('libnl')
+ depends_on('ncurses', type='link')
def setup_run_environment(self, env):
env.prepend_path('PATH', self.prefix.sbin)
diff --git a/var/spack/repos/builtin/packages/ppl/package.py b/var/spack/repos/builtin/packages/ppl/package.py
index 0fc42092ae..2439710d1d 100644
--- a/var/spack/repos/builtin/packages/ppl/package.py
+++ b/var/spack/repos/builtin/packages/ppl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pplacer/package.py b/var/spack/repos/builtin/packages/pplacer/package.py
index af928f8247..251dffa965 100644
--- a/var/spack/repos/builtin/packages/pplacer/package.py
+++ b/var/spack/repos/builtin/packages/pplacer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-appl-amr-fdm/package.py b/var/spack/repos/builtin/packages/ppopen-appl-amr-fdm/package.py
index 3b7df081a2..9e21fd66d1 100755
--- a/var/spack/repos/builtin/packages/ppopen-appl-amr-fdm/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-appl-amr-fdm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-appl-bem-at/package.py b/var/spack/repos/builtin/packages/ppopen-appl-bem-at/package.py
index c4c90de105..b8c2d16b58 100644
--- a/var/spack/repos/builtin/packages/ppopen-appl-bem-at/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-appl-bem-at/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-appl-bem/package.py b/var/spack/repos/builtin/packages/ppopen-appl-bem/package.py
index 4aae619b31..db914a5ca3 100644
--- a/var/spack/repos/builtin/packages/ppopen-appl-bem/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-appl-bem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-appl-dem-util/package.py b/var/spack/repos/builtin/packages/ppopen-appl-dem-util/package.py
index b76c5ed567..508a068c05 100755
--- a/var/spack/repos/builtin/packages/ppopen-appl-dem-util/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-appl-dem-util/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-appl-fdm-at/package.py b/var/spack/repos/builtin/packages/ppopen-appl-fdm-at/package.py
index 625d81c7de..37820a5ce6 100755
--- a/var/spack/repos/builtin/packages/ppopen-appl-fdm-at/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-appl-fdm-at/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-appl-fdm/package.py b/var/spack/repos/builtin/packages/ppopen-appl-fdm/package.py
index 0bc7fc94ca..f1a4348e17 100755
--- a/var/spack/repos/builtin/packages/ppopen-appl-fdm/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-appl-fdm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-appl-fem/package.py b/var/spack/repos/builtin/packages/ppopen-appl-fem/package.py
index 8d6078bef8..216f055123 100644
--- a/var/spack/repos/builtin/packages/ppopen-appl-fem/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-appl-fem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-appl-fvm/package.py b/var/spack/repos/builtin/packages/ppopen-appl-fvm/package.py
index 944e6f6467..0c02922d18 100644
--- a/var/spack/repos/builtin/packages/ppopen-appl-fvm/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-appl-fvm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-at/package.py b/var/spack/repos/builtin/packages/ppopen-at/package.py
index 8d907beaa2..bb1ee3b139 100644
--- a/var/spack/repos/builtin/packages/ppopen-at/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-at/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-math-mp/package.py b/var/spack/repos/builtin/packages/ppopen-math-mp/package.py
index 317f364a71..470894c47b 100644
--- a/var/spack/repos/builtin/packages/ppopen-math-mp/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-math-mp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ppopen-math-vis/package.py b/var/spack/repos/builtin/packages/ppopen-math-vis/package.py
index 48d838857d..581f378e45 100644
--- a/var/spack/repos/builtin/packages/ppopen-math-vis/package.py
+++ b/var/spack/repos/builtin/packages/ppopen-math-vis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/prank/package.py b/var/spack/repos/builtin/packages/prank/package.py
index e87fca199e..718f17b1cb 100644
--- a/var/spack/repos/builtin/packages/prank/package.py
+++ b/var/spack/repos/builtin/packages/prank/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/precice/package.py b/var/spack/repos/builtin/packages/precice/package.py
index 68977cd7b9..f1a31e7fec 100644
--- a/var/spack/repos/builtin/packages/precice/package.py
+++ b/var/spack/repos/builtin/packages/precice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,8 @@ class Precice(CMakePackage):
maintainers = ['fsimonis', 'MakisH']
version('develop', branch='develop')
+ version('2.2.1', sha256='bca8cedfb5c86656e4fdfaca5cb982b861f9aba926538fa4411bc0d015e09c1f')
+ version('2.2.0', sha256='f8c4e0810dcaeb6a40a0fcab64b95c899f0121c968e0730416d4d2a97d39d0c4')
version('2.1.1', sha256='729b7c24a7a61b3953bb70d96a954ad3a85729a29a35a288b59ba25661117064')
version('2.1.0', sha256='1e6432724f70d0c6c05fdd645e0026754edbc547719a35bf1d3c12a779b1d00e')
version('2.0.2', sha256='72864480f32696e7b6da94fd404ef5cd6586e2e1640613e46b75f1afac8569ed')
@@ -42,9 +44,11 @@ class Precice(CMakePackage):
depends_on('cmake@3.5:', type='build')
depends_on('cmake@3.10.2:', type='build', when='@1.4:')
+ depends_on('pkgconfig', type='build', when='@2.2:')
depends_on('boost@1.60.0:')
depends_on('boost@1.65.1:', when='@1.4:')
depends_on('boost@:1.72.99', when='@:2.0.2')
+ depends_on('boost@:1.74.99', when='@:2.1.1')
depends_on('eigen@3.2:')
depends_on('eigen@:3.3.7', type='build', when='@:1.5') # bug in prettyprint
depends_on('libxml2')
@@ -60,13 +64,12 @@ class Precice(CMakePackage):
depends_on('py-numpy@:1.16', when='@:1.9+python', type=('build', 'run'))
depends_on('py-numpy@1.17:', when='@2:+python', type=('build', 'run'))
- # We require C++11 compiler support as well as
- # library support for time manipulators (N2071, N2072)
+ # We require C++14 compiler support
conflicts('%gcc@:4')
- conflicts('%apple-clang@:4')
+ conflicts('%apple-clang@:5')
conflicts('%clang@:3.7')
- conflicts('%intel@:14')
- conflicts('%pgi@:14')
+ conflicts('%intel@:16')
+ conflicts('%pgi@:17.3')
def cmake_args(self):
"""Populate cmake arguments for precice."""
diff --git a/var/spack/repos/builtin/packages/predixy/package.py b/var/spack/repos/builtin/packages/predixy/package.py
index 1d0c8d0660..5f71ebd3d3 100644
--- a/var/spack/repos/builtin/packages/predixy/package.py
+++ b/var/spack/repos/builtin/packages/predixy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/premake-core/package.py b/var/spack/repos/builtin/packages/premake-core/package.py
index 7401375511..afb690dbea 100644
--- a/var/spack/repos/builtin/packages/premake-core/package.py
+++ b/var/spack/repos/builtin/packages/premake-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/presentproto/package.py b/var/spack/repos/builtin/packages/presentproto/package.py
index 704552d769..4b0fd96645 100644
--- a/var/spack/repos/builtin/packages/presentproto/package.py
+++ b/var/spack/repos/builtin/packages/presentproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/preseq/package.py b/var/spack/repos/builtin/packages/preseq/package.py
index a446ad53c6..9ff1667d10 100644
--- a/var/spack/repos/builtin/packages/preseq/package.py
+++ b/var/spack/repos/builtin/packages/preseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/presto/package.py b/var/spack/repos/builtin/packages/presto/package.py
index 94b18d13d5..f32548f214 100644
--- a/var/spack/repos/builtin/packages/presto/package.py
+++ b/var/spack/repos/builtin/packages/presto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/price/package.py b/var/spack/repos/builtin/packages/price/package.py
index 746079fb17..1ce5789466 100644
--- a/var/spack/repos/builtin/packages/price/package.py
+++ b/var/spack/repos/builtin/packages/price/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/primer3/package.py b/var/spack/repos/builtin/packages/primer3/package.py
index b4f2ad849b..f930549559 100644
--- a/var/spack/repos/builtin/packages/primer3/package.py
+++ b/var/spack/repos/builtin/packages/primer3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/prinseq-lite/package.py b/var/spack/repos/builtin/packages/prinseq-lite/package.py
index a101a7dcfa..273c90aa37 100644
--- a/var/spack/repos/builtin/packages/prinseq-lite/package.py
+++ b/var/spack/repos/builtin/packages/prinseq-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/printproto/package.py b/var/spack/repos/builtin/packages/printproto/package.py
index 028bfda890..6d0b1ac557 100644
--- a/var/spack/repos/builtin/packages/printproto/package.py
+++ b/var/spack/repos/builtin/packages/printproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/prism/package.py b/var/spack/repos/builtin/packages/prism/package.py
index bc336c3174..0a2549feb0 100644
--- a/var/spack/repos/builtin/packages/prism/package.py
+++ b/var/spack/repos/builtin/packages/prism/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/prmon/package.py b/var/spack/repos/builtin/packages/prmon/package.py
index 4ae90c2531..4bb686e8f6 100644
--- a/var/spack/repos/builtin/packages/prmon/package.py
+++ b/var/spack/repos/builtin/packages/prmon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,15 @@ class Prmon(CMakePackage):
"""Standalone monitor for process resource consumption."""
homepage = "https://github.com/HSF/prmon/"
- url = "https://github.com/HSF/prmon/archive/v1.1.1.tar.gz"
+ url = "https://github.com/HSF/prmon/archive/refs/tags/v2.2.0.zip"
git = "https://github.com/HSF/prmon.git"
maintainers = ['vvolkl']
version("master", branch="master")
- version('1.1.1', sha256='5f074b05af2a12e2726c33f6a6e9e8e59ee0c4fb5fe056deb38abacd1bb6bf03')
+ version('2.2.0', sha256='7b3b887c679279f0e666e8c8c58ca1a22a328b8b94ecff09e61795a6a83e8ce5')
+ version('2.1.1', sha256='302d7a3fc5a403143d794e16dca1949e3d13e46cf9857dfaad4e374f4a468df2')
+ version('1.1.1', sha256='a6e6486bbc4d6cddf73affe07d9ff7948a424c9a02b3cdd5bbe5c6cafa06af2e')
variant('plot', default=True,
description='Make use of plotting scripts')
diff --git a/var/spack/repos/builtin/packages/prng/package.py b/var/spack/repos/builtin/packages/prng/package.py
index b892c9bcb4..09eac076d4 100644
--- a/var/spack/repos/builtin/packages/prng/package.py
+++ b/var/spack/repos/builtin/packages/prng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/probconsrna/package.py b/var/spack/repos/builtin/packages/probconsrna/package.py
index 8db95ecb53..545ef569ea 100644
--- a/var/spack/repos/builtin/packages/probconsrna/package.py
+++ b/var/spack/repos/builtin/packages/probconsrna/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/procenv/7cafed1316ddb16fe0689d54ba10c05dd2edd347.patch b/var/spack/repos/builtin/packages/procenv/7cafed1316ddb16fe0689d54ba10c05dd2edd347.patch
new file mode 100644
index 0000000000..a185ad2120
--- /dev/null
+++ b/var/spack/repos/builtin/packages/procenv/7cafed1316ddb16fe0689d54ba10c05dd2edd347.patch
@@ -0,0 +1,34 @@
+From 7cafed1316ddb16fe0689d54ba10c05dd2edd347 Mon Sep 17 00:00:00 2001
+From: Lukas Maerdian <lukas.maerdian@canonical.com>
+Date: Mon, 10 Aug 2020 15:11:23 +0200
+Subject: [PATCH] Fix GCC-10 build when used with -Werror=format-overflow=
+ (Fixes #15)
+
+Process names have a maximum length of 16 bytes and the buffer used has a
+length of 16 bytes, but the compiler is picky about writing and arbirary
+string into that small buffer. Tell the compiler to write max. 15 chars +
+'\0', to make it happy.
+https://stackoverflow.com/questions/23534263/what-is-the-maximum-allowed-limit-on-the-length-of-a-process-name
+---
+ src/platform/linux/platform.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/platform/linux/platform.c b/src/platform/linux/platform.c
+index a392bc0..49ea36c 100644
+--- a/src/platform/linux/platform.c
++++ b/src/platform/linux/platform.c
+@@ -1263,12 +1263,12 @@ handle_proc_branch_linux (void)
+
+ if ((p=strstr (buffer, "Name:")) == buffer) {
+ p += 1+strlen ("Name:"); /* jump over tab char */
+- sprintf (name, "%s", p);
++ sprintf (name, "%.15s", p);
+ }
+
+ if ((p=strstr (buffer, "PPid:")) == buffer) {
+ p += 1+strlen ("PPid:"); /* jump over tab char */
+- sprintf (ppid, "%s", p);
++ sprintf (ppid, "%.15s", p);
+
+ /* got all we need now */
+ break;
diff --git a/var/spack/repos/builtin/packages/procenv/package.py b/var/spack/repos/builtin/packages/procenv/package.py
new file mode 100644
index 0000000000..b7f7958225
--- /dev/null
+++ b/var/spack/repos/builtin/packages/procenv/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Procenv(AutotoolsPackage):
+ """A command-line tool that displays as much detail about itself and
+ its environment as possible. It can be used as a test tool, to
+ understand the type of environment a process runs in, and for
+ comparing system environments."""
+
+ homepage = "https://github.com/jamesodhunt/procenv/"
+ url = "https://github.com/jamesodhunt/procenv/archive/0.51.tar.gz"
+
+ version('0.51', sha256='b831c14729e06a285cc13eba095817ce3b6d0ddf484b1264951b03ee4fe25bc9')
+
+ # https://github.com/jamesodhunt/procenv/pull/16
+ patch("7cafed1316ddb16fe0689d54ba10c05dd2edd347.patch", when="@:0.51")
+
+ depends_on('expat')
+ depends_on('libpcap')
+ # Fixme: package these and use conditionally (on linux)
+ # depends_on('libselinux')
+ # depends_on('libapparmor')
+ depends_on('numactl')
+ depends_on('check', type='build')
diff --git a/var/spack/repos/builtin/packages/process-in-process/package.py b/var/spack/repos/builtin/packages/process-in-process/package.py
new file mode 100644
index 0000000000..5f9a3a5d02
--- /dev/null
+++ b/var/spack/repos/builtin/packages/process-in-process/package.py
@@ -0,0 +1,178 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ProcessInProcess(Package):
+ """Process-in-Process"""
+
+ homepage = "https://github.com/RIKEN-SysSoft/PiP"
+ git = "https://github.com/RIKEN-SysSoft/PiP.git"
+
+ maintainers = ['ahori']
+
+ # PiP version 1 is obsolete
+ version('2', branch='pip-2', preferred=True)
+ version('3', branch='pip-3') # experimental
+
+ conflicts('%gcc@:3', when='os=centos7')
+ conflicts('%gcc@5:', when='os=centos7')
+ conflicts('%gcc@:3', when='os=rhel7')
+ conflicts('%gcc@5:', when='os=rhel7')
+ conflicts('%gcc@:7', when='os=centos8')
+ conflicts('%gcc@9:', when='os=centos8')
+ conflicts('%gcc@:7', when='os=rhel8')
+ conflicts('%gcc@9:', when='os=rhel8')
+
+ # packages required for building PiP-gdb
+ depends_on('texinfo', type='build')
+ depends_on('systemtap')
+
+ # resources for PiP version 2
+ # PiP-glibc resource
+ # for rhel/centos 7
+ resource(name='PiP-glibc',
+ git='https://github.com/RIKEN-SysSoft/PiP-glibc.git',
+ branch='centos/glibc-2.17-260.el7.pip.branch',
+ destination='PiP-glibc',
+ when='@2 os=centos7')
+ resource(name='PiP-glibc',
+ git='https://github.com/RIKEN-SysSoft/PiP-glibc.git',
+ branch='centos/glibc-2.17-260.el7.pip.branch',
+ destination='PiP-glibc',
+ when='@2 os=rhel7')
+ # for rhel/centos 8
+ resource(name='PiP-glibc',
+ git='https://github.com/RIKEN-SysSoft/PiP-glibc.git',
+ branch='centos/glibc-2.28-72.el8_1.1.pip.branch',
+ destination='PiP-glibc',
+ when='@2 os=centos8')
+ resource(name='PiP-glibc',
+ git='https://github.com/RIKEN-SysSoft/PiP-glibc.git',
+ branch='centos/glibc-2.28-72.el8_1.1.pip.branch',
+ destination='PiP-glibc',
+ when='@2 os=rhel8')
+
+ # PiP-gdb resource
+ # for rhel/centos 7
+ resource(name='PiP-gdb',
+ git='https://github.com/RIKEN-SysSoft/PiP-gdb.git',
+ branch='centos/gdb-7.6.1-94.el7.pip.branch',
+ destination='PiP-gdb',
+ when='@2 os=centos7')
+ resource(name='PiP-gdb',
+ git='https://github.com/RIKEN-SysSoft/PiP-gdb.git',
+ branch='centos/gdb-7.6.1-94.el7.pip.branch',
+ destination='PiP-gdb',
+ when='@2 os=rhel7')
+ # for rhel/centos 8
+ resource(name='PiP-gdb',
+ git='https://github.com/RIKEN-SysSoft/PiP-gdb.git',
+ branch='centos/gdb-8.2-12.el8.pip.branch',
+ destination='PiP-gdb',
+ when='@2 os=centos8')
+ resource(name='PiP-gdb',
+ git='https://github.com/RIKEN-SysSoft/PiP-gdb.git',
+ branch='centos/gdb-8.2-12.el8.pip.branch',
+ destination='PiP-gdb',
+ when='@2 os=rhel8')
+
+ # resources for PiP version 3
+ # PiP-glibc resource
+ # for rhel/centos 7
+ resource(name='PiP-glibc',
+ git='https://github.com/RIKEN-SysSoft/PiP-glibc.git',
+ branch='centos/glibc-2.17-260.el7.pip.branch',
+ destination='PiP-glibc',
+ when='@3 os=centos7')
+ resource(name='PiP-glibc',
+ git='https://github.com/RIKEN-SysSoft/PiP-glibc.git',
+ branch='centos/glibc-2.17-260.el7.pip.branch',
+ destination='PiP-glibc',
+ when='@3 os=rhel7')
+ # for rhel/centos 8
+ resource(name='PiP-glibc',
+ git='https://github.com/RIKEN-SysSoft/PiP-glibc.git',
+ branch='centos/glibc-2.28-72.el8_1.1.pip.branch',
+ destination='PiP-glibc',
+ when='@3 os=centos8')
+ resource(name='PiP-glibc',
+ git='https://github.com/RIKEN-SysSoft/PiP-glibc.git',
+ branch='centos/glibc-2.28-72.el8_1.1.pip.branch',
+ destination='PiP-glibc',
+ when='@3 os=rhel8')
+
+ # PiP-gdb resource
+ # for rhel/centos 7
+ resource(name='PiP-gdb',
+ git='https://github.com/RIKEN-SysSoft/PiP-gdb.git',
+ branch='centos/gdb-7.6.1-94.el7.pip.branch',
+ destination='PiP-gdb',
+ when='@3 os=centos7')
+ resource(name='PiP-gdb',
+ git='https://github.com/RIKEN-SysSoft/PiP-gdb.git',
+ branch='centos/gdb-7.6.1-94.el7.pip.branch',
+ destination='PiP-gdb',
+ when='@3 os=rhel7')
+ # for rhel/centos 8
+ resource(name='PiP-gdb',
+ git='https://github.com/RIKEN-SysSoft/PiP-gdb.git',
+ branch='centos/gdb-8.2-12.el8.pip.branch',
+ destination='PiP-gdb',
+ when='@3 os=centos8')
+ resource(name='PiP-gdb',
+ git='https://github.com/RIKEN-SysSoft/PiP-gdb.git',
+ branch='centos/gdb-8.2-12.el8.pip.branch',
+ destination='PiP-gdb',
+ when='@3 os=rhel8')
+
+ # PiP testsuite (agnostic with PiP and OS versions)
+ resource(name='PiP-Testsuite',
+ git='https://github.com/RIKEN-SysSoft/PiP-Testsuite.git',
+ destination='PiP-Testsuite')
+
+ def install(self, spec, prefix):
+ "Install Process-in-Process including PiP-glibc, PiP-gdb"
+
+ # checking os and arch
+ arch = self.spec.architecture
+ target = self.spec.target
+ if arch.os not in ['centos7', 'rhel7', 'centos8', 'rhel8']:
+ raise InstallError('PIP only supports rhel/centos 7 and 8')
+ if target.family not in ['x86_64', 'aarch64']:
+ raise InstallError('PIP only supports x86_64 and aarch64')
+
+ bash = which('bash')
+
+ # installing PiP-glibc
+ glibc_builddir = join_path('PiP-glibc', 'PiP-glibc.build')
+ with working_dir(glibc_builddir, create=True):
+ # build.sh does build and install
+ bash(join_path('..', 'PiP-glibc', 'build.sh'), prefix.glibc)
+
+ # installing PiP lib
+ configure('--prefix=%s' % prefix,
+ '--with-glibc-libdir=%s' % prefix.glibc.lib)
+ make()
+ make('install')
+ # installing already-doxygen-ed documents (man pages, html, ...)
+ make('doc')
+
+ # testing PiP by using PiP-Testsuite (another repo), no need install
+ with working_dir(join_path('PiP-Testsuite', 'PiP-Testsuite')):
+ bash('configure', '--with-pip=%s' % prefix)
+ # make test programs
+ make()
+ # and run the test programs
+ make('test10', parallel=False)
+
+ # installing PiP-gdb
+ with working_dir(join_path('PiP-gdb', 'PiP-gdb')):
+ # build.sh does build and install
+ bash('build.sh', '--prefix=%s' % prefix, '--with-pip=%s' % prefix)
+ # testing PiP-gdb
+ bash('test.sh', parallel=False)
+ # all done !!
diff --git a/var/spack/repos/builtin/packages/procps-ng/package.py b/var/spack/repos/builtin/packages/procps-ng/package.py
index 883a81df75..3932e4f56a 100644
--- a/var/spack/repos/builtin/packages/procps-ng/package.py
+++ b/var/spack/repos/builtin/packages/procps-ng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/procps/package.py b/var/spack/repos/builtin/packages/procps/package.py
index e18d6206cf..bb6b4a3dc0 100644
--- a/var/spack/repos/builtin/packages/procps/package.py
+++ b/var/spack/repos/builtin/packages/procps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/prodigal/package.py b/var/spack/repos/builtin/packages/prodigal/package.py
index 429d6d78a6..e6d6cc2611 100644
--- a/var/spack/repos/builtin/packages/prodigal/package.py
+++ b/var/spack/repos/builtin/packages/prodigal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/professor/package.py b/var/spack/repos/builtin/packages/professor/package.py
new file mode 100644
index 0000000000..199ddf755a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/professor/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Professor(Package):
+ """Professor Monte-Carlo tuning package"""
+
+ homepage = "https://professor.hepforge.org/"
+ url = "https://professor.hepforge.org/downloads/?f=Professor-2.3.3.tar.gz"
+
+ maintainers = ['mjk655']
+
+ version('2.3.3', sha256='60c5ba00894c809e2c31018bccf22935a9e1f51c0184468efbdd5d27b211009f')
+
+ depends_on('wxwidgets')
+ depends_on('yoda')
+ depends_on('eigen')
+ depends_on('py-cython')
+ depends_on('py-iminuit')
+ depends_on('py-matplotlib')
+
+ def install(self, spec, prefix):
+ make()
+ make('PREFIX={0}'.format(prefix), "install")
diff --git a/var/spack/repos/builtin/packages/profugusmc/package.py b/var/spack/repos/builtin/packages/profugusmc/package.py
index 0922b3f470..12113ecbc6 100644
--- a/var/spack/repos/builtin/packages/profugusmc/package.py
+++ b/var/spack/repos/builtin/packages/profugusmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/proj/package.py b/var/spack/repos/builtin/packages/proj/package.py
index 3c8b30aa6c..a0a8f336c4 100644
--- a/var/spack/repos/builtin/packages/proj/package.py
+++ b/var/spack/repos/builtin/packages/proj/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,13 +13,15 @@ class Proj(AutotoolsPackage):
transformations."""
homepage = "https://proj.org/"
- url = "https://download.osgeo.org/proj/proj-7.1.0.tar.gz"
+ url = "https://download.osgeo.org/proj/proj-7.2.1.tar.gz"
maintainers = ['adamjstewart']
# Version 6 removes projects.h, while version 7 removes proj_api.h.
# Many packages that depend on proj do not yet support the newer API.
# See https://github.com/OSGeo/PROJ/wiki/proj.h-adoption-status
+ version('7.2.1', sha256='b384f42e5fb9c6d01fe5fa4d31da2e91329668863a684f97be5d4760dbbf0a14')
+ version('7.2.0', sha256='2957798e5fe295ff96a2af1889d0428e486363d210889422f76dd744f7885763')
version('7.1.0', sha256='876151e2279346f6bdbc63bd59790b48733496a957bccd5e51b640fdd26eaa8d')
version('7.0.1', sha256='a7026d39c9c80d51565cfc4b33d22631c11e491004e19020b3ff5a0791e1779f')
version('7.0.0', sha256='ee0e14c1bd2f9429b1a28999240304c0342ed739ebaea3d4ff44c585b1097be8')
@@ -44,10 +46,24 @@ class Proj(AutotoolsPackage):
# https://github.com/OSGeo/PROJ-data
resource(
name='proj-data',
+ url='https://download.osgeo.org/proj/proj-data-1.4.tar.gz',
+ sha256='76960d34d635aa127058ce654d89ea0eff91e2e4f2036482e677af5a88669b08',
+ placement='nad',
+ when='@7.2.1:',
+ )
+ resource(
+ name='proj-data',
+ url='https://download.osgeo.org/proj/proj-data-1.3.tar.gz',
+ sha256='0faa3e5ca6d816c907868c1ab2523668ccad27c6c4af9c7b00df9e4c3eb84398',
+ placement='nad',
+ when='@7.2.0',
+ )
+ resource(
+ name='proj-data',
url='https://download.osgeo.org/proj/proj-data-1.1.tar.gz',
sha256='df7c57e60f9e1d5bcc724f1def71d2a7cd33bd83c28f4b4bb71dbb2d8849c84a',
placement='nad',
- when='@7:',
+ when='@7:7.1',
)
# https://github.com/OSGeo/PROJ#distribution-files-and-format
diff --git a/var/spack/repos/builtin/packages/prokka/package.py b/var/spack/repos/builtin/packages/prokka/package.py
index eedb5fde08..8d2a65433b 100644
--- a/var/spack/repos/builtin/packages/prokka/package.py
+++ b/var/spack/repos/builtin/packages/prokka/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/prometheus/package.py b/var/spack/repos/builtin/packages/prometheus/package.py
index 10a9e956c3..12fedfdba6 100644
--- a/var/spack/repos/builtin/packages/prometheus/package.py
+++ b/var/spack/repos/builtin/packages/prometheus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/protobuf-c/package.py b/var/spack/repos/builtin/packages/protobuf-c/package.py
index 020e6297df..276f897399 100644
--- a/var/spack/repos/builtin/packages/protobuf-c/package.py
+++ b/var/spack/repos/builtin/packages/protobuf-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/protobuf/package.py b/var/spack/repos/builtin/packages/protobuf/package.py
index 060d345b45..1c09bf2e82 100644
--- a/var/spack/repos/builtin/packages/protobuf/package.py
+++ b/var/spack/repos/builtin/packages/protobuf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -40,7 +40,7 @@ class Protobuf(Package):
version('3.2.0', sha256='a839d3f1519ff9d68ab908de5a0f269650ef1fc501c10f6eefd4cae51d29b86f')
version('3.1.0', sha256='fb2a314f4be897491bb2446697be693d489af645cb0e165a85e7e64e07eb134d')
version('3.0.2', sha256='a0a265bcc9d4e98c87416e59c33afc37cede9fb277292523739417e449b18c1e')
- version('2.5.0', sha256='c2665a7aa2ac1a206e61b28e014486e3de59009ea2be2bde9182e0847f38b62f')
+ version('2.5.0', sha256='c2665a7aa2ac1a206e61b28e014486e3de59009ea2be2bde9182e0847f38b62f', deprecated=True)
variant('shared', default=True,
description='Enables the build of shared libraries')
diff --git a/var/spack/repos/builtin/packages/proxymngr/package.py b/var/spack/repos/builtin/packages/proxymngr/package.py
index 7c3b9f0329..7547c7ace3 100644
--- a/var/spack/repos/builtin/packages/proxymngr/package.py
+++ b/var/spack/repos/builtin/packages/proxymngr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,7 +21,7 @@ class Proxymngr(AutotoolsPackage, XorgPackage):
depends_on('libxt')
depends_on('lbxproxy')
- depends_on('xproto@7.0.17:', type='build')
- depends_on('xproxymanagementprotocol', type='build')
+ depends_on('xproto@7.0.17:')
+ depends_on('xproxymanagementprotocol')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/prrte/package.py b/var/spack/repos/builtin/packages/prrte/package.py
index 58a3d10819..5e730479f9 100644
--- a/var/spack/repos/builtin/packages/prrte/package.py
+++ b/var/spack/repos/builtin/packages/prrte/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pruners-ninja/package.py b/var/spack/repos/builtin/packages/pruners-ninja/package.py
index 6ea2b448f7..aa810c56e5 100644
--- a/var/spack/repos/builtin/packages/pruners-ninja/package.py
+++ b/var/spack/repos/builtin/packages/pruners-ninja/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ps-lite/package.py b/var/spack/repos/builtin/packages/ps-lite/package.py
index 525633514e..e1fc7e7198 100644
--- a/var/spack/repos/builtin/packages/ps-lite/package.py
+++ b/var/spack/repos/builtin/packages/ps-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/psi4/package.py b/var/spack/repos/builtin/packages/psi4/package.py
index bc2e6db011..105ade6b02 100644
--- a/var/spack/repos/builtin/packages/psi4/package.py
+++ b/var/spack/repos/builtin/packages/psi4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pslib/package.py b/var/spack/repos/builtin/packages/pslib/package.py
index 38e1e40dc5..1c2fe3e337 100644
--- a/var/spack/repos/builtin/packages/pslib/package.py
+++ b/var/spack/repos/builtin/packages/pslib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/psm/package.py b/var/spack/repos/builtin/packages/psm/package.py
index bf31fc4c90..9ce5b45924 100644
--- a/var/spack/repos/builtin/packages/psm/package.py
+++ b/var/spack/repos/builtin/packages/psm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class Psm(MakefilePackage):
conflicts('%gcc@6:', when='@3.3')
- depends_on('libuuid')
+ depends_on('uuid')
def edit(self, spec, prefix):
makefile = FileFilter('Makefile')
diff --git a/var/spack/repos/builtin/packages/psmc/package.py b/var/spack/repos/builtin/packages/psmc/package.py
index 243c740453..d282d85b42 100644
--- a/var/spack/repos/builtin/packages/psmc/package.py
+++ b/var/spack/repos/builtin/packages/psmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pstreams/package.py b/var/spack/repos/builtin/packages/pstreams/package.py
index 48afbe9388..7ad2c6335a 100644
--- a/var/spack/repos/builtin/packages/pstreams/package.py
+++ b/var/spack/repos/builtin/packages/pstreams/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pugixml/package.py b/var/spack/repos/builtin/packages/pugixml/package.py
index 8ac943e398..094b1d3e7f 100644
--- a/var/spack/repos/builtin/packages/pugixml/package.py
+++ b/var/spack/repos/builtin/packages/pugixml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,16 +13,19 @@ class Pugixml(CMakePackage):
homepage = "http://pugixml.org/"
url = "https://github.com/zeux/pugixml/releases/download/v1.10/pugixml-1.10.tar.gz"
- version('1.8.1', sha256='929c4657c207260f8cc28e5b788b7499dffdba60d83d59f55ea33d873d729cd4')
+ version('1.11.4', sha256='8ddf57b65fb860416979a3f0640c2ad45ddddbbafa82508ef0a0af3ce7061716')
+ version('1.11', sha256='26913d3e63b9c07431401cf826df17ed832a20d19333d043991e611d23beaa2c')
version('1.10', sha256='55f399fbb470942410d348584dc953bcaec926415d3462f471ef350f29b5870a')
+ version('1.8.1', sha256='929c4657c207260f8cc28e5b788b7499dffdba60d83d59f55ea33d873d729cd4')
- variant('shared', default=True, description='Enable shared libraries')
+ variant('pic', default=True, description='Build position-independent code')
+ variant('shared', default=True, description='Build shared libraries')
- def cmake_args(self):
- args = [
- '-DBUILD_SHARED_AND_STATIC_LIBS:BOOL=OFF',
- '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON',
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in self.spec else 'OFF')]
+ conflicts('+shared', when='~pic')
- return args
+ def cmake_args(self):
+ return [
+ self.define('BUILD_SHARED_AND_STATIC_LIBS', False),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('CMAKE_POSITION_INDEPENDENT_CODE', 'pic'),
+ ]
diff --git a/var/spack/repos/builtin/packages/pulseaudio/package.py b/var/spack/repos/builtin/packages/pulseaudio/package.py
index 16f550c140..22400919bb 100644
--- a/var/spack/repos/builtin/packages/pulseaudio/package.py
+++ b/var/spack/repos/builtin/packages/pulseaudio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -42,7 +42,7 @@ class Pulseaudio(AutotoolsPackage):
depends_on('libsndfile@1.0.18:')
depends_on('libtool@2.4:') # links to libltdl.so
depends_on('libsm', when='+x11')
- depends_on('libuuid', when='+x11')
+ depends_on('uuid', when='+x11')
depends_on('libx11', when='+x11')
depends_on('libxcb', when='+x11')
depends_on('libxau', when='+x11')
diff --git a/var/spack/repos/builtin/packages/pumi/package.py b/var/spack/repos/builtin/packages/pumi/package.py
index 83560c2f45..08930cd70d 100644
--- a/var/spack/repos/builtin/packages/pumi/package.py
+++ b/var/spack/repos/builtin/packages/pumi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -67,13 +67,12 @@ class Pumi(CMakePackage):
args = [
'-DSCOREC_CXX_WARNINGS=OFF',
- '-DENABLE_ZOLTAN=%s' % ('ON' if '+zoltan' in spec else 'OFF'),
+ self.define_from_variant('ENABLE_ZOLTAN', 'zoltan'),
'-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
'-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
- '-DBUILD_SHARED_LIBS=%s' % ('ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
'-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
- '-DPUMI_FORTRAN_INTERFACE=%s' %
- ('ON' if '+fortran' in spec else 'OFF'),
+ self.define_from_variant('PUMI_FORTRAN_INTERFACE', 'fortran'),
'-DMDS_ID_TYPE=%s' % ('long' if '+int64' in spec else 'int'),
'-DSKIP_SIMMETRIX_VERSION_CHECK=%s' %
('ON' if '~simmodsuite_version_check' in spec else 'OFF'),
diff --git a/var/spack/repos/builtin/packages/pv/package.py b/var/spack/repos/builtin/packages/pv/package.py
index 6b9ecb0e4a..383db4cb2c 100644
--- a/var/spack/repos/builtin/packages/pv/package.py
+++ b/var/spack/repos/builtin/packages/pv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pvm/package.py b/var/spack/repos/builtin/packages/pvm/package.py
index cb76f739bb..661cc70edb 100644
--- a/var/spack/repos/builtin/packages/pvm/package.py
+++ b/var/spack/repos/builtin/packages/pvm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,19 +17,30 @@ class Pvm(MakefilePackage):
version('3.4.6', sha256='482665e9bc975d826bcdacf1df1d42e43deda9585a2c430fd3b7b7ed08eada44')
+ depends_on('m4', type='build')
+ depends_on('libtirpc', type='link')
+
parallel = False
@property
def pvm_arch(self):
"""Returns the appropriate PVM_ARCH."""
process = subprocess.Popen(['lib/pvmgetarch'], stdout=subprocess.PIPE)
- return process.communicate()[0].strip()
+ return process.communicate()[0].strip().decode()
def edit(self, spec, prefix):
# Before building PVM, you must set the environment
# variable "PVM_ROOT" to the path where PVM resides
env['PVM_ROOT'] = self.stage.source_path
+ def setup_build_environment(self, env):
+ tirpc = self.spec['libtirpc'].prefix
+ env.prepend_path(
+ 'SPACK_INCLUDE_DIRS',
+ tirpc.include.tirpc,
+ )
+ env.set('SPACK_LDLIBS', '-ltirpc')
+
def install(self, spec, prefix):
pvm_arch = self.pvm_arch
diff --git a/var/spack/repos/builtin/packages/pxz/package.py b/var/spack/repos/builtin/packages/pxz/package.py
index cbc64a0e88..8c0dea6e56 100644
--- a/var/spack/repos/builtin/packages/pxz/package.py
+++ b/var/spack/repos/builtin/packages/pxz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-3to2/package.py b/var/spack/repos/builtin/packages/py-3to2/package.py
index facf4b4067..4ac91215fd 100644
--- a/var/spack/repos/builtin/packages/py-3to2/package.py
+++ b/var/spack/repos/builtin/packages/py-3to2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,6 @@ class Py3to2(PythonPackage):
"""lib3to2 is a set of fixers that are intended to backport code written
for Python version 3.x into Python version 2.x."""
- homepage = "https://pypi.python.org/pypi/3to2"
- url = "https://pypi.io/packages/source/3/3to2/3to2-1.1.1.zip"
+ pypi = "3to2/3to2-1.1.1.zip"
version('1.1.1', sha256='fef50b2b881ef743f269946e1090b77567b71bb9a9ce64b7f8e699b562ff685c')
diff --git a/var/spack/repos/builtin/packages/py-4suite-xml/package.py b/var/spack/repos/builtin/packages/py-4suite-xml/package.py
index a848e1a63a..60ce3b0fba 100644
--- a/var/spack/repos/builtin/packages/py-4suite-xml/package.py
+++ b/var/spack/repos/builtin/packages/py-4suite-xml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class Py4suiteXml(PythonPackage):
XLink, XUpdate"""
homepage = "http://4suite.org/"
- url = "https://pypi.io/packages/source/4/4Suite-XML/4Suite-XML-1.0.2.tar.gz"
+ pypi = "4Suite-XML/4Suite-XML-1.0.2.tar.gz"
version('1.0.2', sha256='f0c24132eb2567e64b33568abff29a780a2f0236154074d0b8f5262ce89d8c03')
diff --git a/var/spack/repos/builtin/packages/py-abipy/package.py b/var/spack/repos/builtin/packages/py-abipy/package.py
index b9b476b096..f9b1d517c3 100644
--- a/var/spack/repos/builtin/packages/py-abipy/package.py
+++ b/var/spack/repos/builtin/packages/py-abipy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyAbipy(PythonPackage):
the results."""
homepage = "https://github.com/abinit/abipy"
- url = "https://pypi.io/packages/source/a/abipy/abipy-0.2.0.tar.gz"
+ pypi = "abipy/abipy-0.2.0.tar.gz"
version('0.2.0', sha256='c72b796ba0f9ea4299eac3085bede092d2652e9e5e8074d3badd19ef7b600792')
diff --git a/var/spack/repos/builtin/packages/py-absl-py/package.py b/var/spack/repos/builtin/packages/py-absl-py/package.py
index 5d77a4095e..80692b1635 100644
--- a/var/spack/repos/builtin/packages/py-absl-py/package.py
+++ b/var/spack/repos/builtin/packages/py-absl-py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,9 +14,9 @@ class PyAbslPy(PythonPackage):
extensively tested and used in production.
"""
- homepage = "https://pypi.org/project/absl-py/"
- url = "https://pypi.io/packages/source/a/absl-py/absl-py-0.7.0.tar.gz"
+ pypi = "absl-py/absl-py-0.7.0.tar.gz"
+ version('0.10.0', sha256='b20f504a7871a580be5268a18fbad48af4203df5d33dbc9272426cb806245a45')
version('0.7.1', sha256='b943d1c567743ed0455878fcd60bc28ac9fae38d129d1ccfad58079da00b8951')
version('0.7.0', sha256='8718189e4bd6013bf79910b9d1cb0a76aecad8ce664f78e1144980fabdd2cd23')
version('0.1.6', sha256='02c577d618a8bc0a2a5d1a51f160d3649745d7a2516d87025322f46ac1391a22')
diff --git a/var/spack/repos/builtin/packages/py-accimage/package.py b/var/spack/repos/builtin/packages/py-accimage/package.py
index 3ef812704c..1006c946f9 100644
--- a/var/spack/repos/builtin/packages/py-accimage/package.py
+++ b/var/spack/repos/builtin/packages/py-accimage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,8 @@ class PyAccimage(PythonPackage):
depends_on('py-numpy', type='test')
depends_on('py-imageio', type='test')
- def test(self):
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def build_test(self):
pytest = which('pytest')
pytest('test.py')
diff --git a/var/spack/repos/builtin/packages/py-acme-tiny/package.py b/var/spack/repos/builtin/packages/py-acme-tiny/package.py
index 33db049299..beaaf6ec33 100644
--- a/var/spack/repos/builtin/packages/py-acme-tiny/package.py
+++ b/var/spack/repos/builtin/packages/py-acme-tiny/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-adal/package.py b/var/spack/repos/builtin/packages/py-adal/package.py
index b1fac54c0f..bf2bbc8d22 100644
--- a/var/spack/repos/builtin/packages/py-adal/package.py
+++ b/var/spack/repos/builtin/packages/py-adal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyAdal(PythonPackage):
DEPRECATED: replaced by MSAL Python."""
homepage = "https://github.com/AzureAD/azure-activedirectory-library-for-python"
- url = "https://pypi.io/packages/source/a/adal/adal-1.2.4.tar.gz"
+ pypi = "adal/adal-1.2.4.tar.gz"
version('1.2.4', sha256='7a15d22b1ee7ce1be92441199958748982feba6b7dec35fbf60f9b607bad1bc0')
diff --git a/var/spack/repos/builtin/packages/py-adb-enhanced/package.py b/var/spack/repos/builtin/packages/py-adb-enhanced/package.py
index 92eff9a04a..a2ae86872a 100644
--- a/var/spack/repos/builtin/packages/py-adb-enhanced/package.py
+++ b/var/spack/repos/builtin/packages/py-adb-enhanced/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,14 +15,15 @@ class PyAdbEnhanced(PythonPackage):
homepage = "https://opencollective.com/ashishb"
url = "https://github.com/ashishb/adb-enhanced/archive/2.5.4.tar.gz"
+ version('2.5.10', sha256='9e913d09814ce99974c455a766c5b616a92bca551e657517d6e079882eb19bdb')
version('2.5.4', sha256='329ee2e0cfceaa41c591398b365d9acdfd45ffe913c64ac06e1538041986fffb')
version('2.5.3', sha256='5a1d5182d1a073b440e862e5481c7a21073eccc3cda7a4774a2aa311fee9bbdc')
version('2.5.2', sha256='055676156c1566b8d952b9fdfdd89fc09f2d5d1e3b90b4cdf40858ce9947e2ca')
depends_on('python@3:', type=('build', 'run'))
+ depends_on('python@3.4:', when='@2.5.10:', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-docopt', type=('build', 'run'))
- depends_on('py-future', type=('build', 'run'))
+ depends_on('py-future', when='@:2.5.4', type=('build', 'run'))
depends_on('py-psutil', type=('build', 'run'))
- depends_on('py-asyncio', type=('build', 'run'))
- depends_on('py-pytest', type='test')
+ depends_on('py-asyncio', when='@:2.5.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-addict/package.py b/var/spack/repos/builtin/packages/py-addict/package.py
index b4b27f9975..99daa3e067 100644
--- a/var/spack/repos/builtin/packages/py-addict/package.py
+++ b/var/spack/repos/builtin/packages/py-addict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-adios/package.py b/var/spack/repos/builtin/packages/py-adios/package.py
index aace2cd98a..c2f65a757a 100644
--- a/var/spack/repos/builtin/packages/py-adios/package.py
+++ b/var/spack/repos/builtin/packages/py-adios/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-advancedhtmlparser/package.py b/var/spack/repos/builtin/packages/py-advancedhtmlparser/package.py
index 11daf7db41..111c241822 100644
--- a/var/spack/repos/builtin/packages/py-advancedhtmlparser/package.py
+++ b/var/spack/repos/builtin/packages/py-advancedhtmlparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyAdvancedhtmlparser(PythonPackage):
modification, and formatting"""
homepage = "https://github.com/kata198/AdvancedHTMLParser"
- url = "https://pypi.io/packages/source/a/advancedhtmlparser/AdvancedHTMLParser-8.1.4.tar.gz"
+ pypi = "advancedhtmlparser/AdvancedHTMLParser-8.1.4.tar.gz"
version('8.1.4', sha256='21a73137026c8ec3248c654a24cc40064196029256cdf71681149f6835e9ed39')
diff --git a/var/spack/repos/builtin/packages/py-aenum/package.py b/var/spack/repos/builtin/packages/py-aenum/package.py
index 3fa4c63a80..08841dafe0 100644
--- a/var/spack/repos/builtin/packages/py-aenum/package.py
+++ b/var/spack/repos/builtin/packages/py-aenum/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,7 @@ class PyAenum(PythonPackage):
NamedTuples, and NamedConstants."""
homepage = "https://bitbucket.org/stoneleaf/aenum"
- url = "https://pypi.io/packages/source/a/aenum/aenum-2.1.2.tar.gz"
-
- import_modules = ['aenum']
+ pypi = "aenum/aenum-2.1.2.tar.gz"
version('2.1.2', sha256='a3208e4b28db3a7b232ff69b934aef2ea1bf27286d9978e1e597d46f490e4687')
diff --git a/var/spack/repos/builtin/packages/py-affine/package.py b/var/spack/repos/builtin/packages/py-affine/package.py
index d473915436..1a554a4ea4 100644
--- a/var/spack/repos/builtin/packages/py-affine/package.py
+++ b/var/spack/repos/builtin/packages/py-affine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-agate-dbf/package.py b/var/spack/repos/builtin/packages/py-agate-dbf/package.py
index e5a64ed299..16e1bd09f6 100644
--- a/var/spack/repos/builtin/packages/py-agate-dbf/package.py
+++ b/var/spack/repos/builtin/packages/py-agate-dbf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAgateDbf(PythonPackage):
"""agate-dbf adds read support for dbf files to agate."""
homepage = "https://agate-dbf.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/a/agate-dbf/agate-dbf-0.2.1.tar.gz"
+ pypi = "agate-dbf/agate-dbf-0.2.1.tar.gz"
version('0.2.1', sha256='00c93c498ec9a04cc587bf63dd7340e67e2541f0df4c9a7259d7cb3dd4ce372f')
diff --git a/var/spack/repos/builtin/packages/py-agate-excel/package.py b/var/spack/repos/builtin/packages/py-agate-excel/package.py
index f129ff9b5c..39fa0237d8 100644
--- a/var/spack/repos/builtin/packages/py-agate-excel/package.py
+++ b/var/spack/repos/builtin/packages/py-agate-excel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyAgateExcel(PythonPackage):
agate."""
homepage = "https://agate-excel.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/a/agate-excel/agate-excel-0.2.3.tar.gz"
+ pypi = "agate-excel/agate-excel-0.2.3.tar.gz"
version('0.2.3', sha256='8f255ef2c87c436b7132049e1dd86c8e08bf82d8c773aea86f3069b461a17d52')
diff --git a/var/spack/repos/builtin/packages/py-agate-sql/package.py b/var/spack/repos/builtin/packages/py-agate-sql/package.py
index 340ac94245..51164b7514 100644
--- a/var/spack/repos/builtin/packages/py-agate-sql/package.py
+++ b/var/spack/repos/builtin/packages/py-agate-sql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAgateSql(PythonPackage):
"""agate-sql adds SQL read/write support to agate."""
homepage = "https://agate-sql.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/a/agate-sql/agate-sql-0.5.4.tar.gz"
+ pypi = "agate-sql/agate-sql-0.5.4.tar.gz"
version('0.5.4', sha256='9277490ba8b8e7c747a9ae3671f52fe486784b48d4a14e78ca197fb0e36f281b')
diff --git a/var/spack/repos/builtin/packages/py-agate/package.py b/var/spack/repos/builtin/packages/py-agate/package.py
index 849e65574b..ba7eda21e8 100644
--- a/var/spack/repos/builtin/packages/py-agate/package.py
+++ b/var/spack/repos/builtin/packages/py-agate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyAgate(PythonPackage):
real-world problems with readable code."""
homepage = "https://agate.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/a/agate/agate-1.6.1.tar.gz"
+ pypi = "agate/agate-1.6.1.tar.gz"
version('1.6.1', sha256='c93aaa500b439d71e4a5cf088d0006d2ce2c76f1950960c8843114e5f361dfd3')
diff --git a/var/spack/repos/builtin/packages/py-aiobotocore/package.py b/var/spack/repos/builtin/packages/py-aiobotocore/package.py
new file mode 100644
index 0000000000..00deac6247
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-aiobotocore/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyAiobotocore(PythonPackage):
+ """Async client for amazon services using botocore and aiohttp/asyncio."""
+
+ homepage = "https://aiobotocore.readthedocs.io/en/latest/"
+ pypi = "aiobotocore/aiobotocore-1.2.1.tar.gz"
+
+ version('1.2.1', sha256='58cc422e65fc89f7cb78eca740d241ac8e15f39f6b308cc23152711e8a987d45')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-botocore@1.19.52', type=('build', 'run'))
+ depends_on('py-aiohttp@3.3.1:', type=('build', 'run'))
+ depends_on('py-wrapt@1.10.10:', type=('build', 'run'))
+ depends_on('py-aioitertools@0.5.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-aiodns/package.py b/var/spack/repos/builtin/packages/py-aiodns/package.py
new file mode 100644
index 0000000000..d6494e57e8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-aiodns/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyAiodns(PythonPackage):
+ """Simple DNS resolver for asyncio.It provides a simple way for
+ doing asynchronous DNS resolutions using pycares."""
+
+ homepage = "https://pypi.org/project/aiodns/"
+ pypi = "aiodns/aiodns-2.0.0.tar.gz"
+
+ version('2.0.0', sha256='815fdef4607474295d68da46978a54481dd1e7be153c7d60f9e72773cd38d77d')
+ version('1.2.0', sha256='d67e14b32176bcf3ff79b5d47c466011ce4adeadfa264f7949da1377332a0449')
+ version('1.1.1', sha256='d8677adc679ce8d0ef706c14d9c3d2f27a0e0cc11d59730cdbaf218ad52dd9ea')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-typing', when='^python@:3.6.999', type=('build', 'run'))
+ depends_on('py-pycares@3.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-aiofiles/package.py b/var/spack/repos/builtin/packages/py-aiofiles/package.py
index b6248f37e7..bc0b6d99c0 100644
--- a/var/spack/repos/builtin/packages/py-aiofiles/package.py
+++ b/var/spack/repos/builtin/packages/py-aiofiles/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyAiofiles(PythonPackage):
handling local disk files in asyncio applications."""
homepage = "https://github.com/Tinche/aiofiles"
- url = "https://pypi.io/packages/source/a/aiofiles/aiofiles-0.5.0.tar.gz"
+ pypi = "aiofiles/aiofiles-0.5.0.tar.gz"
version('0.5.0', sha256='98e6bcfd1b50f97db4980e182ddd509b7cc35909e903a8fe50d8849e02d815af')
diff --git a/var/spack/repos/builtin/packages/py-aiohttp-cors/package.py b/var/spack/repos/builtin/packages/py-aiohttp-cors/package.py
new file mode 100644
index 0000000000..e5c2f67f63
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-aiohttp-cors/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyAiohttpCors(PythonPackage):
+ """aiohttp_cors library implements Cross Origin Resource Sharing (CORS)
+ support for aiohttp asyncio-powered asynchronous HTTP server."""
+
+ homepage = "https://github.com/aio-libs/aiohttp-cors"
+ pypi = "aiohttp_cors/aiohttp-cors-0.7.0.tar.gz"
+
+ version('0.7.0', sha256='4d39c6d7100fd9764ed1caf8cebf0eb01bf5e3f24e2e073fda6234bc48b19f5d')
+
+ depends_on('python@3.4.1:', type=('build', 'run'))
+ depends_on('py-setuptools@20.8.1:', type='build')
+ depends_on('py-aiohttp@1.1:', type=('build', 'run'))
+ depends_on('py-typing', when='^python@:3.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-aiohttp/package.py b/var/spack/repos/builtin/packages/py-aiohttp/package.py
index e29f467c29..a94fed955f 100644
--- a/var/spack/repos/builtin/packages/py-aiohttp/package.py
+++ b/var/spack/repos/builtin/packages/py-aiohttp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-aioitertools/package.py b/var/spack/repos/builtin/packages/py-aioitertools/package.py
new file mode 100644
index 0000000000..39484caaef
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-aioitertools/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyAioitertools(PythonPackage):
+ """Implementation of itertools, builtins, and more for AsyncIO and mixed-type
+ iterables."""
+
+ homepage = "https://aioitertools.omnilib.dev/en/stable/"
+ pypi = "aioitertools/aioitertools-0.7.1.tar.gz"
+
+ version('0.7.1', sha256='54a56c7cf3b5290d1cb5e8974353c9f52c677612b5d69a859369a020c53414a3')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-typing-extensions@3.7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-aioredis/package.py b/var/spack/repos/builtin/packages/py-aioredis/package.py
index 6760e58471..0b7e678dff 100644
--- a/var/spack/repos/builtin/packages/py-aioredis/package.py
+++ b/var/spack/repos/builtin/packages/py-aioredis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAioredis(PythonPackage):
"""asyncio (PEP 3156) Redis support."""
homepage = "https://github.com/aio-libs/aioredis"
- url = "https://pypi.io/packages/source/a/aioredis/aioredis-1.3.1.tar.gz"
+ pypi = "aioredis/aioredis-1.3.1.tar.gz"
version('1.3.1', sha256='15f8af30b044c771aee6787e5ec24694c048184c7b9e54c3b60c750a4b93273a')
diff --git a/var/spack/repos/builtin/packages/py-alabaster/package.py b/var/spack/repos/builtin/packages/py-alabaster/package.py
index 5d623519b7..a1606d6105 100644
--- a/var/spack/repos/builtin/packages/py-alabaster/package.py
+++ b/var/spack/repos/builtin/packages/py-alabaster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,10 @@ class PyAlabaster(PythonPackage):
for the Sphinx documentation system."""
homepage = "https://alabaster.readthedocs.io/"
- url = "https://pypi.io/packages/source/a/alabaster/alabaster-0.7.10.tar.gz"
-
- import_modules = ['alabaster']
+ pypi = "alabaster/alabaster-0.7.10.tar.gz"
version('0.7.12', sha256='a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02')
version('0.7.10', sha256='37cdcb9e9954ed60912ebc1ca12a9d12178c26637abdf124e3cde2341c257fe0')
version('0.7.9', sha256='47afd43b08a4ecaa45e3496e139a193ce364571e7e10c6a87ca1a4c57eb7ea08')
depends_on('py-setuptools', type='build')
- depends_on('py-pygments', type='test')
diff --git a/var/spack/repos/builtin/packages/py-alembic/package.py b/var/spack/repos/builtin/packages/py-alembic/package.py
index 86b75bc361..b03bf6d5e6 100644
--- a/var/spack/repos/builtin/packages/py-alembic/package.py
+++ b/var/spack/repos/builtin/packages/py-alembic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,13 +9,15 @@ from spack import *
class PyAlembic(PythonPackage):
"""Alembic is a database migrations tool."""
- homepage = "https://pypi.org/project/alembic/"
- url = "https://pypi.io/packages/source/a/alembic/alembic-1.0.7.tar.gz"
+ pypi = "alembic/alembic-1.0.7.tar.gz"
+ version('1.5.5', sha256='df0028c19275a2cff137e39617a39cdcdbd1173733b87b6bfa257b7c0860213b')
version('1.0.7', sha256='16505782b229007ae905ef9e0ae6e880fddafa406f086ac7d442c1aaf712f8c2')
+ depends_on('python@2.7:2.8,3.6:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-sqlalchemy@1.1.0:', type=('build', 'run'))
+ depends_on('py-sqlalchemy@1.3.0:', type=('build', 'run'), when='@1.5:')
+ depends_on('py-sqlalchemy@1.1.0:', type=('build', 'run'), when='@:1.4.999')
depends_on('py-mako', type=('build', 'run'))
depends_on('py-python-dateutil', type=('build', 'run'))
depends_on('py-python-editor@0.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-altgraph/package.py b/var/spack/repos/builtin/packages/py-altgraph/package.py
index 221fc3de85..596bd1eff0 100644
--- a/var/spack/repos/builtin/packages/py-altgraph/package.py
+++ b/var/spack/repos/builtin/packages/py-altgraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,7 @@ class PyAltgraph(PythonPackage):
topological sort, shortest paths, etc. with graphviz output.
"""
- homepage = "https://pypi.python.org/pypi/altgraph"
- url = "https://pypi.io/packages/source/a/altgraph/altgraph-0.16.1.tar.gz"
+ pypi = "altgraph/altgraph-0.16.1.tar.gz"
version('0.16.1', "ddf5320017147ba7b810198e0b6619bd7b5563aa034da388cea8546b877f9b0c")
diff --git a/var/spack/repos/builtin/packages/py-amqp/package.py b/var/spack/repos/builtin/packages/py-amqp/package.py
index 63f85069b0..ddd3a4dc7c 100644
--- a/var/spack/repos/builtin/packages/py-amqp/package.py
+++ b/var/spack/repos/builtin/packages/py-amqp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyAmqp(PythonPackage):
"""Low-level AMQP client for Python (fork of amqplib)."""
- homepage = "https://pypi.org/project/amqp/"
- url = "https://pypi.io/packages/source/a/amqp/amqp-2.4.1.tar.gz"
+ pypi = "amqp/amqp-2.4.1.tar.gz"
version('5.0.1', sha256='9881f8e6fe23e3db9faa6cfd8c05390213e1d1b95c0162bc50552cad75bffa5f')
version('2.6.1', sha256='70cdb10628468ff14e57ec2f751c7aa9e48e7e3651cfd62d431213c0c4e58f21')
diff --git a/var/spack/repos/builtin/packages/py-angel/package.py b/var/spack/repos/builtin/packages/py-angel/package.py
new file mode 100644
index 0000000000..31eb071227
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-angel/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyAngel(PythonPackage):
+ """ANGEL: Robust Open Reading Frame prediction"""
+
+ homepage = "https://github.com/PacificBiosciences/ANGEL"
+ url = "https://github.com/PacificBiosciences/ANGEL/archive/v3.0.tar.gz"
+
+ version('3.0', sha256='a0319553055d3dfc84a4f732ed246c180c23ee9c397810c96acd7940721ae57d')
+
+ depends_on('python@3.7:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-numpy@1.7:', type=('build', 'run'))
+ depends_on('py-scikit-learn', type=('build', 'run'))
+
+ depends_on('py-biopython@:1.72', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-ansible/package.py b/var/spack/repos/builtin/packages/py-ansible/package.py
index c3df51f2f2..ea3fa0357c 100644
--- a/var/spack/repos/builtin/packages/py-ansible/package.py
+++ b/var/spack/repos/builtin/packages/py-ansible/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-antlr4-python3-runtime/package.py b/var/spack/repos/builtin/packages/py-antlr4-python3-runtime/package.py
index 2684416f08..0689270ff1 100644
--- a/var/spack/repos/builtin/packages/py-antlr4-python3-runtime/package.py
+++ b/var/spack/repos/builtin/packages/py-antlr4-python3-runtime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyAntlr4Python3Runtime(PythonPackage):
"""
homepage = "https://www.antlr.org"
- url = "https://pypi.io/packages/source/a/antlr4-python3-runtime/antlr4-python3-runtime-4.7.2.tar.gz"
+ pypi = "antlr4-python3-runtime/antlr4-python3-runtime-4.7.2.tar.gz"
version('4.7.2', sha256='168cdcec8fb9152e84a87ca6fd261b3d54c8f6358f42ab3b813b14a7193bb50b')
diff --git a/var/spack/repos/builtin/packages/py-anuga/package.py b/var/spack/repos/builtin/packages/py-anuga/package.py
new file mode 100644
index 0000000000..931a45160d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-anuga/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyAnuga(PythonPackage):
+ """ANUGA (pronounced "AHnooGAH") is open-source software for the simulation
+ of the shallow water equation, in particular it can be used to model
+ tsunamis and floods."""
+
+ homepage = "https://github.com/GeoscienceAustralia/anuga_core"
+ url = "https://github.com/GeoscienceAustralia/anuga_core/archive/2.1.tar.gz"
+
+ version('2.1', sha256='0e56c4a7d55570d7b2c36fa9b53ee4e7b85f62be0b4c03ad8ab5f51464321d2f')
+
+ variant('mpi', default=True, description='Install anuga_parallel')
+
+ # At present AnuGA has only been run and tested using python 2.x.
+ # We recommend python 2.7.
+ depends_on('python@2.6:2.8', type=('build', 'run'))
+ depends_on('py-setuptools@:44', type='build')
+ depends_on('py-numpy@:1.16', type=('build', 'run'))
+ depends_on('py-netcdf4', type=('build', 'run'))
+ depends_on('py-matplotlib@:2', type=('build', 'run'))
+ depends_on('gdal@:3.2+python', type=('build', 'run'))
+ depends_on('py-pypar', when='+mpi', type=('build', 'run'))
+
+ # https://github.com/GeoscienceAustralia/anuga_core/issues/247
+ conflicts('%apple-clang@12:')
diff --git a/var/spack/repos/builtin/packages/py-apache-beam/package.py b/var/spack/repos/builtin/packages/py-apache-beam/package.py
index d06ebd20bd..5878eeadec 100644
--- a/var/spack/repos/builtin/packages/py-apache-beam/package.py
+++ b/var/spack/repos/builtin/packages/py-apache-beam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyApacheBeam(PythonPackage):
"""Apache Beam is a unified programming model for Batch and Streaming."""
homepage = "https://github.com/apache/beam"
- url = "https://pypi.io/packages/source/a/apache-beam/apache-beam-2.24.0.zip"
+ pypi = "apache-beam/apache-beam-2.24.0.zip"
version('2.24.0', sha256='55c50b1a964bacc840a5e4cc3b4a42c4ef09d12192d215ba3cad65d4d22e09dd')
@@ -18,7 +18,6 @@ class PyApacheBeam(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-pip@7.0.0:', type=('build', 'run'))
depends_on('py-cython@0.28.1:', type=('build', 'run'))
- depends_on('py-avro@1.8.1:1.10.8', type=('build', 'run'), when='^python@:2.9')
depends_on('py-avro-python3@1.8.1:1.10.0', type=('build', 'run'), when='^python@3.0:')
depends_on('py-crcmod@1.7:', type=('build', 'run'))
depends_on('py-dill@0.3.1:0.3.2', type=('build', 'run'))
@@ -42,5 +41,3 @@ class PyApacheBeam(PythonPackage):
depends_on('py-requests@2.24.0:3.0.0', type=('build', 'run'))
depends_on('py-typing@3.7.0:3.8.0', type=('build', 'run'), when='^python@:3.5')
depends_on('py-typing-extensions@3.7.0:3.8.0', type=('build', 'run'))
-
- conflicts('+py-avro-python3', when='@1.9.2')
diff --git a/var/spack/repos/builtin/packages/py-apache-libcloud/package.py b/var/spack/repos/builtin/packages/py-apache-libcloud/package.py
index 2b2034d98d..526ed5a651 100644
--- a/var/spack/repos/builtin/packages/py-apache-libcloud/package.py
+++ b/var/spack/repos/builtin/packages/py-apache-libcloud/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyApacheLibcloud(PythonPackage):
"""Python library for multiple cloud provider APIs"""
homepage = "http://libcloud.apache.org"
- url = "https://pypi.io/packages/source/a/apache-libcloud/apache-libcloud-1.2.1.tar.gz"
+ pypi = "apache-libcloud/apache-libcloud-1.2.1.tar.gz"
version('1.2.1', sha256='b26b542c6c9785dd4e34892d87421ffa4c043335c1cba301a97a8d9748c423f2')
diff --git a/var/spack/repos/builtin/packages/py-apex/package.py b/var/spack/repos/builtin/packages/py-apex/package.py
index 0132a01c4d..bed0e8a971 100644
--- a/var/spack/repos/builtin/packages/py-apex/package.py
+++ b/var/spack/repos/builtin/packages/py-apex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyApex(PythonPackage):
"""apex: Pyramid toolkit to add Velruse, Flash Messages,CSRF,
ReCaptcha and Sessions."""
- homepage = "https://pypi.org/project/apex/"
- url = "https://pypi.io/packages/source/a/apex/apex-0.9.10dev.tar.gz"
+ pypi = "apex/apex-0.9.10dev.tar.gz"
version('0.9.10dev', sha256='48aa6d9e805e661e609161bd52e0d02d89a9a32f32dc29cde6c950df58129119')
diff --git a/var/spack/repos/builtin/packages/py-apipkg/package.py b/var/spack/repos/builtin/packages/py-apipkg/package.py
index 6799ad8f26..abbac3bae6 100644
--- a/var/spack/repos/builtin/packages/py-apipkg/package.py
+++ b/var/spack/repos/builtin/packages/py-apipkg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyApipkg(PythonPackage):
"""apipkg: namespace control and lazy-import mechanism"""
- homepage = "https://pypi.python.org/pypi/apipkg"
- url = "https://pypi.io/packages/source/a/apipkg/apipkg-1.4.tar.gz"
+ pypi = "apipkg/apipkg-1.4.tar.gz"
version('1.5', sha256='37228cda29411948b422fae072f57e31d3396d2ee1c9783775980ee9c9990af6')
version('1.4', sha256='2e38399dbe842891fe85392601aab8f40a8f4cc5a9053c326de35a1cc0297ac6')
@@ -18,5 +17,3 @@ class PyApipkg(PythonPackage):
depends_on('py-setuptools@30.3.0:', type='build')
depends_on('py-setuptools-scm', type='build')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
- depends_on('py-py', type='test')
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-appdirs/package.py b/var/spack/repos/builtin/packages/py-appdirs/package.py
index 29b6c4f85b..101f32f6b4 100644
--- a/var/spack/repos/builtin/packages/py-appdirs/package.py
+++ b/var/spack/repos/builtin/packages/py-appdirs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,18 +11,10 @@ class PyAppdirs(PythonPackage):
dirs, e.g. a "user data dir"."""
homepage = "https://github.com/ActiveState/appdirs"
- url = "https://pypi.io/packages/source/a/appdirs/appdirs-1.4.3.tar.gz"
-
- import_modules = ['appdirs']
+ pypi = "appdirs/appdirs-1.4.3.tar.gz"
version('1.4.3', sha256='9e5896d1372858f8dd3344faf4e5014d21849c756c8d5701f78f8a103b372d92')
version('1.4.0', sha256='8fc245efb4387a4e3e0ac8ebcc704582df7d72ff6a42a53f5600bbb18fdaadc5')
patch('setuptools-import.patch', when='@:1.4.0')
-
- # Newer versions of setuptools require appdirs. Although setuptools is an
- # optional dependency of appdirs, if it is not found, setup.py will
- # fallback on distutils.core instead. Don't add a setuptools dependency
- # or we won't be able to bootstrap setuptools.
-
- # depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-applicationinsights/package.py b/var/spack/repos/builtin/packages/py-applicationinsights/package.py
index a14808abab..5f52a52ef6 100644
--- a/var/spack/repos/builtin/packages/py-applicationinsights/package.py
+++ b/var/spack/repos/builtin/packages/py-applicationinsights/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyApplicationinsights(PythonPackage):
Python."""
homepage = "https://github.com/Microsoft/ApplicationInsights-Python"
- url = "https://pypi.io/packages/source/a/applicationinsights/applicationinsights-0.11.9.tar.gz"
+ pypi = "applicationinsights/applicationinsights-0.11.9.tar.gz"
version('0.11.9', sha256='30a11aafacea34f8b160fbdc35254c9029c7e325267874e3c68f6bdbcd6ed2c3')
diff --git a/var/spack/repos/builtin/packages/py-appnope/package.py b/var/spack/repos/builtin/packages/py-appnope/package.py
index 07640da7f9..977942a7ba 100644
--- a/var/spack/repos/builtin/packages/py-appnope/package.py
+++ b/var/spack/repos/builtin/packages/py-appnope/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyAppnope(PythonPackage):
"""Disable App Nap on OS X 10.9"""
homepage = "https://github.com/minrk/appnope"
- url = "https://pypi.io/packages/source/a/appnope/appnope-0.1.0.tar.gz"
+ pypi = "appnope/appnope-0.1.0.tar.gz"
version('0.1.0', sha256='8b995ffe925347a2138d7ac0fe77155e4311a0ea6d6da4f5128fe4b3cbe5ed71')
diff --git a/var/spack/repos/builtin/packages/py-apptools/package.py b/var/spack/repos/builtin/packages/py-apptools/package.py
index 4ac8da1c79..9fa3307bed 100644
--- a/var/spack/repos/builtin/packages/py-apptools/package.py
+++ b/var/spack/repos/builtin/packages/py-apptools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyApptools(PythonPackage):
that is commonly needed by many applications."""
homepage = "https://docs.enthought.com/apptools"
- url = "https://pypi.io/packages/source/a/apptools/apptools-4.5.0.tar.gz"
+ pypi = "apptools/apptools-4.5.0.tar.gz"
version('4.5.0', sha256='260ae0e2a86cb2df2fede631ab6ac8ece694a58a1def78cd015c890c57140582')
diff --git a/var/spack/repos/builtin/packages/py-apscheduler/package.py b/var/spack/repos/builtin/packages/py-apscheduler/package.py
index a4ba440e90..0269ed03c9 100644
--- a/var/spack/repos/builtin/packages/py-apscheduler/package.py
+++ b/var/spack/repos/builtin/packages/py-apscheduler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyApscheduler(PythonPackage):
"""In-process task scheduler with Cron-like capabilities."""
homepage = "https://github.com/agronholm/apscheduler"
- url = "https://pypi.io/packages/source/A/APScheduler/APScheduler-3.3.1.tar.gz"
+ pypi = "APScheduler/APScheduler-3.3.1.tar.gz"
version('3.3.1', sha256='f68874dff1bdffcc6ce3adb7840c1e4d162c609a3e3f831351df30b75732767b')
version('2.1.0', sha256='3b4b44387616902ad6d13122961013630eb25519937e5aa7c450de85656c9753')
diff --git a/var/spack/repos/builtin/packages/py-arcgis/package.py b/var/spack/repos/builtin/packages/py-arcgis/package.py
new file mode 100644
index 0000000000..fbe3a26680
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-arcgis/package.py
@@ -0,0 +1,36 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyArcgis(PythonPackage):
+ """ArcGIS API for Python."""
+
+ homepage = "https://developers.arcgis.com/python/"
+ pypi = "arcgis/arcgis-1.8.4.tar.gz"
+
+ version('1.8.4', sha256='f1445dac25d3d4c03755d716c74a0930881c6be3cd36d22c6ff5ac754f9842d7')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-ipywidgets@7:', type=('build', 'run'))
+ depends_on('py-widgetsnbextension@3:', type=('build', 'run'))
+ depends_on('py-pandas@1:', type=('build', 'run'))
+ depends_on('py-numpy@1.16.2:', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-keyring@19:', type=('build', 'run'))
+ depends_on('py-lerc', type=('build', 'run'))
+ depends_on('py-ujson@3:', type=('build', 'run'))
+ depends_on('py-jupyterlab', type=('build', 'run'))
+ depends_on('py-python-certifi-win32', type=('build', 'run'))
+ depends_on('py-pyshp@2:', type=('build', 'run'))
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-requests-oauthlib', type=('build', 'run'))
+ depends_on('py-requests-toolbelt', type=('build', 'run'))
+ depends_on('py-requests-ntlm', type=('build', 'run'))
+
+ def setup_py(self, *args, **kwargs):
+ super(PyArcgis, self).setup_py('--conda-install-mode', *args, **kwargs)
diff --git a/var/spack/repos/builtin/packages/py-archspec/package.py b/var/spack/repos/builtin/packages/py-archspec/package.py
index 54aaea8037..0d63a036bc 100644
--- a/var/spack/repos/builtin/packages/py-archspec/package.py
+++ b/var/spack/repos/builtin/packages/py-archspec/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,12 +8,10 @@ class PyArchspec(PythonPackage):
"""
homepage = "https://archspec.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/a/archspec/archspec-0.1.1.tar.gz"
+ pypi = "archspec/archspec-0.1.1.tar.gz"
maintainers = ['alalazo']
- import_modules = ['archspec']
-
version('0.1.1', sha256='34bafad493b41208857232e21776216d716de37ab051a6a4a1cc1653f7e26423')
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-argcomplete/package.py b/var/spack/repos/builtin/packages/py-argcomplete/package.py
index f1362da76f..cb8d45fc77 100644
--- a/var/spack/repos/builtin/packages/py-argcomplete/package.py
+++ b/var/spack/repos/builtin/packages/py-argcomplete/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyArgcomplete(PythonPackage):
"""Bash tab completion for argparse."""
homepage = "https://github.com/kislyuk/argcomplete"
- url = "https://pypi.io/packages/source/a/argcomplete/argcomplete-1.12.0.tar.gz"
+ pypi = "argcomplete/argcomplete-1.12.0.tar.gz"
version('1.12.0', sha256='2fbe5ed09fd2c1d727d4199feca96569a5b50d44c71b16da9c742201f7cc295c')
version('1.1.1', sha256='cca45b5fe07000994f4f06a0b95bd71f7b51b04f81c3be0b4ea7b666e4f1f084')
diff --git a/var/spack/repos/builtin/packages/py-argh/package.py b/var/spack/repos/builtin/packages/py-argh/package.py
new file mode 100644
index 0000000000..3ea2908dba
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-argh/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyArgh(PythonPackage):
+ """An argparse wrapper that doesn't make you say "argh" each time
+ you deal with it.
+
+ Building a command-line interface? Found yourself uttering "argh!"
+ while struggling with the API of argparse? Don't like the complexity
+ but need the power? Argh is a smart wrapper for argparse. Argparse is
+ a very powerful tool; Argh just makes it easy to use."""
+
+ homepage = "https://github.com/neithere/argh/"
+ pypi = "argh/argh-0.26.2.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('0.26.2', sha256='e9535b8c84dc9571a48999094fda7f33e63c3f1b74f3e5f3ac0105a58405bb65')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-argparse', when='^python@:2.6.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-argon2-cffi/package.py b/var/spack/repos/builtin/packages/py-argon2-cffi/package.py
index 954c86331c..79c81f53eb 100644
--- a/var/spack/repos/builtin/packages/py-argon2-cffi/package.py
+++ b/var/spack/repos/builtin/packages/py-argon2-cffi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyArgon2Cffi(PythonPackage):
"""The secure Argon2 password hashing algorithm.."""
homepage = "https://argon2-cffi.readthedocs.io/"
- url = "https://pypi.io/packages/source/a/argon2-cffi/argon2-cffi-20.1.0.tar.gz"
+ pypi = "argon2-cffi/argon2-cffi-20.1.0.tar.gz"
version('20.1.0', sha256='d8029b2d3e4b4cea770e9e5a0104dd8fa185c1724a0f01528ae4826a6d25f97d')
@@ -16,6 +16,3 @@ class PyArgon2Cffi(PythonPackage):
depends_on('py-cffi@1.0.0:', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
depends_on('py-enum34', when='^python@:3.3', type=('build', 'run'))
- depends_on('py-coverage@5.0.2:+toml', type='test')
- depends_on('py-hypothesis', type='test')
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-argparse/package.py b/var/spack/repos/builtin/packages/py-argparse/package.py
index 976e99d2a9..09cf35bf97 100644
--- a/var/spack/repos/builtin/packages/py-argparse/package.py
+++ b/var/spack/repos/builtin/packages/py-argparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyArgparse(PythonPackage):
"""Python command-line parsing library."""
homepage = "https://github.com/ThomasWaldmann/argparse/"
- url = "https://pypi.io/packages/source/a/argparse/argparse-1.4.0.tar.gz"
+ pypi = "argparse/argparse-1.4.0.tar.gz"
version('1.4.0', sha256='62b089a55be1d8949cd2bc7e0df0bddb9e028faefc8c32038cc84862aefdd6e4')
diff --git a/var/spack/repos/builtin/packages/py-args/package.py b/var/spack/repos/builtin/packages/py-args/package.py
index 08364481e8..58a3ffa61f 100644
--- a/var/spack/repos/builtin/packages/py-args/package.py
+++ b/var/spack/repos/builtin/packages/py-args/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,8 @@ class PyArgs(PythonPackage):
"""Command Arguments for Humans."""
homepage = "https://github.com/kennethreitz/args"
- url = "https://pypi.io/packages/source/a/args/args-0.1.0.tar.gz"
+ pypi = "args/args-0.1.0.tar.gz"
version('0.1.0', sha256='a785b8d837625e9b61c39108532d95b85274acd679693b71ebb5156848fcf814')
depends_on('py-setuptools', type='build')
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-arrow/package.py b/var/spack/repos/builtin/packages/py-arrow/package.py
index 32a9885f8f..830f8bdc95 100644
--- a/var/spack/repos/builtin/packages/py-arrow/package.py
+++ b/var/spack/repos/builtin/packages/py-arrow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyArrow(PythonPackage):
work with dates and times with fewer imports and a lot less code."""
homepage = "https://arrow.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/a/arrow/arrow-0.16.0.tar.gz"
+ pypi = "arrow/arrow-0.16.0.tar.gz"
version('0.16.0', sha256='92aac856ea5175c804f7ccb96aca4d714d936f1c867ba59d747a8096ec30e90a')
version('0.14.7', sha256='67f8be7c0cf420424bc62d8d7dc40b44e4bb2f7b515f9cc2954fb36e35797656')
@@ -25,6 +25,3 @@ class PyArrow(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-backports-functools-lru-cache@1.2.1:', type=('build', 'run'), when='^python@2.7:2.8')
depends_on('py-python-dateutil', type=('build', 'run'))
- depends_on('py-chai', type='test')
- depends_on('py-mock', type='test')
- depends_on('py-pytz@2019.0:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-arviz/package.py b/var/spack/repos/builtin/packages/py-arviz/package.py
index 20e1be3839..2d3b7556ef 100644
--- a/var/spack/repos/builtin/packages/py-arviz/package.py
+++ b/var/spack/repos/builtin/packages/py-arviz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyArviz(PythonPackage):
model checking, comparison and diagnostics."""
homepage = "http://github.com/arviz-devs/arviz"
- url = "https://pypi.io/packages/source/a/arviz/arviz-0.6.1.tar.gz"
+ pypi = "arviz/arviz-0.6.1.tar.gz"
version('0.6.1', sha256='435edf8db49c41a8fa198f959e7581063006c49a4efdef4755bb778db6fd4f72')
diff --git a/var/spack/repos/builtin/packages/py-asciitree/package.py b/var/spack/repos/builtin/packages/py-asciitree/package.py
index adbd103c5b..6b2a6d571c 100644
--- a/var/spack/repos/builtin/packages/py-asciitree/package.py
+++ b/var/spack/repos/builtin/packages/py-asciitree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAsciitree(PythonPackage):
"""Draws ASCII trees."""
homepage = "https://github.com/mbr/asciitree"
- url = "https://pypi.io/packages/source/a/asciitree/asciitree-0.3.3.tar.gz"
+ pypi = "asciitree/asciitree-0.3.3.tar.gz"
version('0.3.3', sha256='4aa4b9b649f85e3fcb343363d97564aa1fb62e249677f2e18a96765145cc0f6e')
diff --git a/var/spack/repos/builtin/packages/py-asdf/package.py b/var/spack/repos/builtin/packages/py-asdf/package.py
index 6fad12565d..51b0859025 100644
--- a/var/spack/repos/builtin/packages/py-asdf/package.py
+++ b/var/spack/repos/builtin/packages/py-asdf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyAsdf(PythonPackage):
implementation of the ASDF Standard."""
homepage = "https://github.com/spacetelescope/asdf"
- url = "https://pypi.io/packages/source/a/asdf/asdf-2.4.2.tar.gz"
+ pypi = "asdf/asdf-2.4.2.tar.gz"
version('2.4.2', sha256='6ff3557190c6a33781dae3fd635a8edf0fa0c24c6aca27d8679af36408ea8ff2')
diff --git a/var/spack/repos/builtin/packages/py-ase/package.py b/var/spack/repos/builtin/packages/py-ase/package.py
index 1e9c27921f..b36c55d8d6 100644
--- a/var/spack/repos/builtin/packages/py-ase/package.py
+++ b/var/spack/repos/builtin/packages/py-ase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyAse(PythonPackage):
visualizing and analyzing atomistic simulations."""
homepage = "https://wiki.fysik.dtu.dk/ase/"
- url = "https://pypi.io/packages/source/a/ase/ase-3.13.0.tar.gz"
+ pypi = "ase/ase-3.13.0.tar.gz"
version('3.18.0',
sha256='39d45f12def2669605bffc82926acfb13a0d0610e6d82740fa316aafa70f97f9')
@@ -25,3 +25,4 @@ class PyAse(PythonPackage):
depends_on('py-matplotlib', type=('build', 'run'))
depends_on('py-scipy', type=('build', 'run'))
depends_on('py-flask', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-asgiref/package.py b/var/spack/repos/builtin/packages/py-asgiref/package.py
index 6819d27aa9..f60f7e7a4c 100644
--- a/var/spack/repos/builtin/packages/py-asgiref/package.py
+++ b/var/spack/repos/builtin/packages/py-asgiref/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-asn1crypto/package.py b/var/spack/repos/builtin/packages/py-asn1crypto/package.py
index 81caf85143..d245efcb04 100644
--- a/var/spack/repos/builtin/packages/py-asn1crypto/package.py
+++ b/var/spack/repos/builtin/packages/py-asn1crypto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyAsn1crypto(PythonPackage):
"""Python ASN.1 library with a focus on performance and a pythonic API """
homepage = "https://github.com/wbond/asn1crypto"
- url = "https://pypi.io/packages/source/a/asn1crypto/asn1crypto-0.22.0.tar.gz"
+ pypi = "asn1crypto/asn1crypto-0.22.0.tar.gz"
version('0.24.0', sha256='9d5c20441baf0cb60a4ac34cc447c6c189024b6b4c6cd7877034f4965c464e49')
version('0.22.0', sha256='cbbadd640d3165ab24b06ef25d1dca09a3441611ac15f6a6b452474fdf0aed1a')
diff --git a/var/spack/repos/builtin/packages/py-aspy-yaml/package.py b/var/spack/repos/builtin/packages/py-aspy-yaml/package.py
index fb697e1f75..5d24272b18 100644
--- a/var/spack/repos/builtin/packages/py-aspy-yaml/package.py
+++ b/var/spack/repos/builtin/packages/py-aspy-yaml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAspyYaml(PythonPackage):
"""Some extensions to pyyaml."""
homepage = "https://github.com/asottile/aspy.yaml/"
- url = "https://pypi.io/packages/source/a/aspy.yaml/aspy.yaml-1.3.0.tar.gz"
+ pypi = "aspy.yaml/aspy.yaml-1.3.0.tar.gz"
version('1.3.0', sha256='e7c742382eff2caed61f87a39d13f99109088e5e93f04d76eb8d4b28aa143f45')
diff --git a/var/spack/repos/builtin/packages/py-asserts/package.py b/var/spack/repos/builtin/packages/py-asserts/package.py
index 36f9b16d98..49f10de2e1 100644
--- a/var/spack/repos/builtin/packages/py-asserts/package.py
+++ b/var/spack/repos/builtin/packages/py-asserts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-asteval/package.py b/var/spack/repos/builtin/packages/py-asteval/package.py
index 4f80a22789..d2cfb13f1c 100644
--- a/var/spack/repos/builtin/packages/py-asteval/package.py
+++ b/var/spack/repos/builtin/packages/py-asteval/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,9 @@ class PyAsteval(PythonPackage):
"""Safe, minimalistic evaluator of python expression using ast module"""
homepage = "http://github.com/newville/asteval"
- url = "https://pypi.io/packages/source/a/asteval/asteval-0.9.18.tar.gz"
+ pypi = "asteval/asteval-0.9.18.tar.gz"
version('0.9.18', sha256='5d64e18b8a72c2c7ae8f9b70d1f80b68bbcaa98c1c0d7047c35489d03209bc86')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-astor/package.py b/var/spack/repos/builtin/packages/py-astor/package.py
index 38c77c5196..e476301fac 100644
--- a/var/spack/repos/builtin/packages/py-astor/package.py
+++ b/var/spack/repos/builtin/packages/py-astor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,16 +10,13 @@ class PyAstor(PythonPackage):
astor is designed to allow easy manipulation of Python source via the AST.
"""
- homepage = "https://pypi.python.org/pypi/astor"
- url = "https://pypi.io/packages/source/a/astor/astor-0.8.0.tar.gz"
+ pypi = "astor/astor-0.8.0.tar.gz"
version('0.8.0', sha256='37a6eed8b371f1228db08234ed7f6cfdc7817a3ed3824797e20cbb11dc2a7862')
version('0.6', sha256='175ec395cde36aa0178c5a3120d03954c65d1ef4bb19ec4aa30e9d7a7cc426c4')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-nose', type='test')
- depends_on('py-astunparse', type='test')
# Build fails with newer versions of setuptools
# https://github.com/berkerpeksag/astor/issues/162
diff --git a/var/spack/repos/builtin/packages/py-astpretty/package.py b/var/spack/repos/builtin/packages/py-astpretty/package.py
index b6b4e9855f..40228b163e 100644
--- a/var/spack/repos/builtin/packages/py-astpretty/package.py
+++ b/var/spack/repos/builtin/packages/py-astpretty/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAstpretty(PythonPackage):
"""Pretty print the output of python stdlib `ast.parse`."""
homepage = "https://github.com/asottile/astpretty"
- url = "https://pypi.io/packages/source/a/astpretty/astpretty-2.0.0.tar.gz"
+ pypi = "astpretty/astpretty-2.0.0.tar.gz"
version('2.0.0', sha256='e4724bfd753636ba4a84384702e9796e5356969f40af2596d846ce64addde086')
diff --git a/var/spack/repos/builtin/packages/py-astroid/PR546.patch b/var/spack/repos/builtin/packages/py-astroid/PR546.patch
new file mode 100644
index 0000000000..974363d232
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-astroid/PR546.patch
@@ -0,0 +1,129 @@
+From beb8c1add0facf57d70d986812ffb45336b6b261 Mon Sep 17 00:00:00 2001
+From: Mario Corchero <mcorcherojim@bloomberg.net>
+Date: Mon, 14 May 2018 11:20:45 -0400
+Subject: [PATCH 1/2] Fix import of symlinks outside of path
+
+Makes load_module_from_file able to import files within the path that
+are just a symlink to a file outside of the path.
+modutils is using realpath at the moment which will resolve the symlink
+and don't allow the import as the file is detected outside of the
+available paths. By checking both abspath and realpath this patches add
+support for such scenarios.
+---
+ astroid/modutils.py | 64 ++++++++++++++++++++++++------
+ astroid/tests/unittest_modutils.py | 11 +++++
+ 2 files changed, 63 insertions(+), 12 deletions(-)
+
+diff --git a/astroid/modutils.py b/astroid/modutils.py
+index 83d0ba74..78a55575 100644
+--- a/astroid/modutils.py
++++ b/astroid/modutils.py
+@@ -285,26 +285,66 @@ def check_modpath_has_init(path, mod_path):
+ return True
+
+
++def _get_relative_base_path(filename, path_to_check):
++ """Extracts the relative mod path of the file to import from
++
++ Check if a file is within the passed in path and if so, returns the
++ relative mod path from the one passed in.
++
++ If the filename is no in path_to_check, returns None
++
++ Note this function will look for both abs and realpath of the file,
++ this allows to find the relative base path even if the file is a
++ symlink of a file in the passed in path
++
++ Examples:
++ _get_relative_base_path("/a/b/c/d.py", "/a/b") -> ["c","d"]
++ _get_relative_base_path("/a/b/c/d.py", "/dev") -> None
++
++ Given "/myfile.py" is a symlink of "/a/b/c/d.py":
++ _get_relative_base_path("/myfile.py", "/dev") -> ["c","d"]
++ """
++ importable_path = None
++ path_to_check = os.path.normcase(path_to_check)
++ abs_filename = os.path.abspath(filename)
++ if os.path.normcase(abs_filename).startswith(path_to_check):
++ importable_path = abs_filename
++
++ real_filename = os.path.realpath(filename)
++ if os.path.normcase(real_filename).startswith(path_to_check):
++ importable_path = real_filename
++
++ if importable_path:
++ base_path = os.path.splitext(importable_path)[0]
++ relative_base_path = base_path[len(path_to_check):]
++ return [pkg for pkg in relative_base_path.split(os.sep) if pkg]
++
++ return None
++
++
+ def modpath_from_file_with_callback(filename, extrapath=None, is_package_cb=None):
+- filename = _path_from_filename(filename)
+- filename = os.path.realpath(os.path.expanduser(filename))
+- base = os.path.splitext(filename)[0]
++ filename = os.path.expanduser(_path_from_filename(filename))
+
+ if extrapath is not None:
+ for path_ in six.moves.map(_canonicalize_path, extrapath):
+ path = os.path.abspath(path_)
+- if path and os.path.normcase(base[:len(path)]) == os.path.normcase(path):
+- submodpath = [pkg for pkg in base[len(path):].split(os.sep)
+- if pkg]
+- if is_package_cb(path, submodpath[:-1]):
+- return extrapath[path_].split('.') + submodpath
++ if not path:
++ continue
++ submodpath = _get_relative_base_path(filename, path)
++ if not submodpath:
++ continue
++ if is_package_cb(path, submodpath[:-1]):
++ return extrapath[path_].split('.') + submodpath
+
+ for path in six.moves.map(_canonicalize_path, sys.path):
+ path = _cache_normalize_path(path)
+- if path and os.path.normcase(base).startswith(path):
+- modpath = [pkg for pkg in base[len(path):].split(os.sep) if pkg]
+- if is_package_cb(path, modpath[:-1]):
+- return modpath
++ if not path:
++ continue
++ modpath = _get_relative_base_path(filename, path)
++ if not modpath:
++ continue
++ if is_package_cb(path, modpath[:-1]):
++ return modpath
+
+ raise ImportError('Unable to find module for %s in %s' % (
+ filename, ', \n'.join(sys.path)))
+diff --git a/astroid/tests/unittest_modutils.py b/astroid/tests/unittest_modutils.py
+index ef3c460c..76c04eb1 100644
+--- a/astroid/tests/unittest_modutils.py
++++ b/astroid/tests/unittest_modutils.py
+@@ -15,6 +15,7 @@
+ import sys
+ import unittest
+ from xml import etree
++import tempfile
+
+ import astroid
+ from astroid.interpreter._import import spec
+@@ -110,6 +111,16 @@ def test_knownValues_modpath_from_file_2(self):
+ def test_raise_modpath_from_file_Exception(self):
+ self.assertRaises(Exception, modutils.modpath_from_file, '/turlututu')
+
++ def test_import_symlink_with_source_outside_of_path(self):
++ with tempfile.NamedTemporaryFile() as tmpfile:
++ linked_file_name = 'symlinked_file.py'
++ try:
++ os.symlink(tmpfile.name, linked_file_name)
++ self.assertEqual(modutils.modpath_from_file(linked_file_name),
++ ['symlinked_file'])
++ finally:
++ os.remove(linked_file_name)
++
+
+ class LoadModuleFromPathTest(resources.SysPathSetup, unittest.TestCase):
+
+
diff --git a/var/spack/repos/builtin/packages/py-astroid/package.py b/var/spack/repos/builtin/packages/py-astroid/package.py
index 3eb5aece5b..15526117c1 100644
--- a/var/spack/repos/builtin/packages/py-astroid/package.py
+++ b/var/spack/repos/builtin/packages/py-astroid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,12 @@ class PyAstroid(PythonPackage):
homepage = "https://github.com/PyCQA/astroid"
url = "https://github.com/PyCQA/astroid/archive/astroid-1.4.5.tar.gz"
+ version('2.5.6', sha256='7fa655511c3726ce7058e9908065c385bcada47cb4cb31d5d6a7248b1fea58fa')
+ version('2.4.2', sha256='34d480d364dcf3e176bc302da56c5ef585ab45d4460f5a2761f960d2fd7b624c')
version('2.3.3', sha256='3a82983cf34dcbfe42ebcffeb98739e8a7bb868f03c1d9e298c530179b5075e7')
+ version('2.2.5', sha256='232c2cfc72bae18a28de6541bbd560a1a3f42e08c52e41bd3f1f00ed74b0a4a6')
version('2.2.0', sha256='7e289d0aa4a537b4aa798bd609fdf745de0f3c37e6b67642ed328e1482421a6d')
+ version('2.0.4', sha256='e2161452b7a07a4663dba61bfb2191a7b61b792fb8239427581dad43773e071e')
version('1.6.6', sha256='3fbcc144457ba598fb48e0ddce5eacee62610ab11e6fe374b6eef5f7df2a3fbb')
# version('1.5.3', sha256='6f65e4ea8290ec032320460905afb828') # has broken unit tests
version('1.4.5', sha256='28d8f5b898087ecf86fd66ca0934e5c0e51fc0beb5972cfc4e0c11080e0cb6ab')
@@ -23,18 +27,25 @@ class PyAstroid(PythonPackage):
version('1.4.2', sha256='f9007d651f4b3514ea5812127677a4bb681ff194164290cea358987920f24ee6')
version('1.4.1', sha256='f1ab3ee6f17f9d30981399a52b56a7a7d2747ba24f0aa504e411ee6205a01fc0')
+ # fixes symlink resolution, already included in 2: but not in 1.6.6
+ patch('PR546.patch', when='@1.6.6')
+
# Dependencies taken from astroid/__pkginfo__.py
depends_on('python@2.7:2.8,3.4:', when='@:1.999', type=('build', 'run'))
depends_on('python@3.4:', when='@2.0.0:', type=('build', 'run'))
depends_on('python@3.5:', when='@2.3.3:', type=('build', 'run'))
+ depends_on('python@3.6:', when='@2.5.6:', type=('build', 'run'))
depends_on('py-lazy-object-proxy', type=('build', 'run'))
- depends_on('py-lazy-object-proxy@1.4:1.4.999', when='@2.3.3:', type=('build', 'run'))
+ # Starting with astroid 2.3.1, astroid's dependencies were restricted
+ # to a given minor version, c.f. commit e1b4e11.
+ depends_on('py-lazy-object-proxy@1.4:1.4.999', when='@2.3.1:', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
depends_on('py-six@1.12:1.999', when='@2.3.3:', type=('build', 'run'))
- depends_on('py-wrapt', type=('build', 'run'))
- depends_on('py-wrapt@1.11:1.11.999', when='@2.3.3:', type=('build', 'run'))
+ depends_on('py-wrapt', when='@:2.2.999', type=('build', 'run'))
+ depends_on('py-wrapt@1.11:1.12.999', when='@2.3.3:', type=('build', 'run'))
depends_on('py-enum34@1.1.3:', when='^python@:3.3.99', type=('build', 'run'))
depends_on('py-singledispatch', when='^python@:3.3.99', type=('build', 'run'))
depends_on('py-backports-functools-lru-cache', when='^python@:3.2.99', type=('build', 'run'))
- depends_on('py-typed-ast@1.4.0:1.4.999', when='@2.3.3: ^python@:3.7.999', type=('build', 'run'))
+ depends_on('py-typed-ast@1.3.0:1.3.999', when='@2.2.5:2.3.0 ^python@3.7.0:3.7.999')
+ depends_on('py-typed-ast@1.4.0:1.4.999', when='@2.3.1: ^python@:3.7.999', type=('build', 'run'))
depends_on('py-setuptools@17.1:', type='build')
diff --git a/var/spack/repos/builtin/packages/py-astropy-healpix/package.py b/var/spack/repos/builtin/packages/py-astropy-healpix/package.py
index b83191ada3..e4482d3b30 100644
--- a/var/spack/repos/builtin/packages/py-astropy-healpix/package.py
+++ b/var/spack/repos/builtin/packages/py-astropy-healpix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyAstropyHealpix(PythonPackage):
representing data on a sphere."""
homepage = 'https://astropy-healpix.readthedocs.io/en/latest/'
- url = 'https://pypi.io/packages/source/a/astropy-healpix/astropy-healpix-0.5.tar.gz'
+ pypi = 'astropy-healpix/astropy-healpix-0.5.tar.gz'
version('0.5', sha256='5ae15da796a840f221fb83e25de791e827b6921bc21a365d99bc1a59c7c0cdad')
diff --git a/var/spack/repos/builtin/packages/py-astropy-helpers/package.py b/var/spack/repos/builtin/packages/py-astropy-helpers/package.py
index 636fcb8b30..d08e018813 100644
--- a/var/spack/repos/builtin/packages/py-astropy-helpers/package.py
+++ b/var/spack/repos/builtin/packages/py-astropy-helpers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-astropy/package.py b/var/spack/repos/builtin/packages/py-astropy/package.py
index 6e5dc8282b..83ad6961ec 100644
--- a/var/spack/repos/builtin/packages/py-astropy/package.py
+++ b/var/spack/repos/builtin/packages/py-astropy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,7 @@ class PyAstropy(PythonPackage):
Python astronomy packages."""
homepage = 'https://astropy.org/'
- url = 'https://pypi.io/packages/source/a/astropy/astropy-4.0.1.post1.tar.gz'
-
- install_time_test_callbacks = ['install_test', 'import_module_test']
+ pypi = 'astropy/astropy-4.0.1.post1.tar.gz'
version('4.0.1.post1', sha256='5c304a6c1845ca426e7bc319412b0363fccb4928cb4ba59298acd1918eec44b5')
version('3.2.1', sha256='706c0457789c78285e5464a5a336f5f0b058d646d60f4e5f5ba1f7d5bf424b28')
@@ -87,6 +85,8 @@ class PyAstropy(PythonPackage):
return args
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def install_test(self):
with working_dir('spack-test', create=True):
python('-c', 'import astropy; astropy.test()')
diff --git a/var/spack/repos/builtin/packages/py-astunparse/package.py b/var/spack/repos/builtin/packages/py-astunparse/package.py
index 996a59183e..c411120ed7 100644
--- a/var/spack/repos/builtin/packages/py-astunparse/package.py
+++ b/var/spack/repos/builtin/packages/py-astunparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,7 @@ class PyAstunparse(PythonPackage):
distribution; under Demo/parser in Python 2 and under Tools/parser in
Python 3."""
- homepage = "https://pypi.org/project/astunparse/"
- url = "https://pypi.io/packages/source/a/astunparse/astunparse-1.6.2.tar.gz"
+ pypi = "astunparse/astunparse-1.6.2.tar.gz"
version('1.6.3', sha256='5ad93a8456f0d084c3456d059fd9a92cce667963232cbf763eac3bc5b7940872')
version('1.6.2', sha256='dab3e426715373fd76cd08bb1abe64b550f5aa494cf1e32384f26fd60961eb67')
diff --git a/var/spack/repos/builtin/packages/py-async-generator/package.py b/var/spack/repos/builtin/packages/py-async-generator/package.py
index 45d452d1d1..b6145e3a02 100644
--- a/var/spack/repos/builtin/packages/py-async-generator/package.py
+++ b/var/spack/repos/builtin/packages/py-async-generator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyAsyncGenerator(PythonPackage):
"""Provides async generator functionality to python 3.5."""
- homepage = "https://pypi.org/project/async_generator/"
- url = "https://pypi.io/packages/source/a/async_generator/async_generator-1.10.tar.gz"
+ pypi = "async_generator/async_generator-1.10.tar.gz"
version('1.10', sha256='6ebb3d106c12920aaae42ccb6f787ef5eefdcdd166ea3d628fa8476abe712144')
diff --git a/var/spack/repos/builtin/packages/py-async-timeout/package.py b/var/spack/repos/builtin/packages/py-async-timeout/package.py
index dd7ca9943c..31d4deb268 100644
--- a/var/spack/repos/builtin/packages/py-async-timeout/package.py
+++ b/var/spack/repos/builtin/packages/py-async-timeout/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-asyncio/package.py b/var/spack/repos/builtin/packages/py-asyncio/package.py
index 42de434cde..bb078bb958 100644
--- a/var/spack/repos/builtin/packages/py-asyncio/package.py
+++ b/var/spack/repos/builtin/packages/py-asyncio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-atomicwrites/package.py b/var/spack/repos/builtin/packages/py-atomicwrites/package.py
index de8ec7788b..a630545ebb 100644
--- a/var/spack/repos/builtin/packages/py-atomicwrites/package.py
+++ b/var/spack/repos/builtin/packages/py-atomicwrites/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyAtomicwrites(PythonPackage):
"""Atomic file writes."""
homepage = "https://github.com/untitaker/python-atomicwrites"
- url = "https://pypi.io/packages/source/a/atomicwrites/atomicwrites-1.3.0.tar.gz"
-
- import_modules = ['atomicwrites']
+ pypi = "atomicwrites/atomicwrites-1.3.0.tar.gz"
version('1.3.0', sha256='75a9445bac02d8d058d5e1fe689654ba5a6556a1dfd8ce6ec55a0ed79866cfa6')
version('1.1.5', sha256='240831ea22da9ab882b551b31d4225591e5e447a68c5e188db5b89ca1d487585')
diff --git a/var/spack/repos/builtin/packages/py-atpublic/package.py b/var/spack/repos/builtin/packages/py-atpublic/package.py
new file mode 100644
index 0000000000..b32564285a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-atpublic/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyAtpublic(PythonPackage):
+ """This library provides two very simple decorators that document
+ the publicness of the names in your module."""
+
+ homepage = "https://public.readthedocs.io"
+ pypi = "atpublic/atpublic-2.1.2.tar.gz"
+
+ version('2.1.2', sha256='82a2f2c0343ac67913f67cdee8fa4da294a4d6b863111527a459c8e4d1a646c8')
+ version('2.1.1', sha256='fa1d48bcb85bbed90f6ffee6936578f65ff0e93aa607397bd88eaeb408bd96d8')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-typing-extensions', when='^python@:3.7.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-atropos/package.py b/var/spack/repos/builtin/packages/py-atropos/package.py
index b08f3a818e..979bd9d250 100644
--- a/var/spack/repos/builtin/packages/py-atropos/package.py
+++ b/var/spack/repos/builtin/packages/py-atropos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyAtropos(PythonPackage):
reads. It is a fork of the venerable Cutadapt read trimmer."""
homepage = "https://atropos.readthedocs.io"
- url = "https://pypi.io/packages/source/a/atropos/atropos-1.1.22.tar.gz"
+ pypi = "atropos/atropos-1.1.22.tar.gz"
git = "https://github.com/jdidion/atropos.git"
version('1.1.22', sha256='05e40cb9337421479c692e1154b962fbf811d7939b72c197a024929b7ae88b78')
diff --git a/var/spack/repos/builtin/packages/py-attrs/package.py b/var/spack/repos/builtin/packages/py-attrs/package.py
index cdb3d490c5..7c9ea1d1c0 100644
--- a/var/spack/repos/builtin/packages/py-attrs/package.py
+++ b/var/spack/repos/builtin/packages/py-attrs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyAttrs(PythonPackage):
"""Classes Without Boilerplate"""
homepage = "http://attrs.org/"
- url = "https://pypi.io/packages/source/a/attrs/attrs-20.3.0.tar.gz"
-
- import_modules = ['attr']
+ pypi = "attrs/attrs-20.3.0.tar.gz"
version('20.3.0', sha256='832aa3cde19744e49938b91fea06d69ecb9e649c93ba974535d08ad92164f700')
version('20.2.0', sha256='26b54ddbbb9ee1d34d5d3668dd37d6cf74990ab23c828c2888dccdceee395594')
@@ -25,11 +23,3 @@ class PyAttrs(PythonPackage):
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- depends_on('py-coverage', type='test')
- depends_on('py-hypothesis', type='test')
- depends_on('py-pympler', type='test')
- depends_on('py-pytest', type='test')
- depends_on('py-pytest@4.3.0:', type='test', when='@19.3.0:')
- depends_on('py-six', type='test')
- depends_on('py-zope-interface', type='test')
diff --git a/var/spack/repos/builtin/packages/py-audioread/package.py b/var/spack/repos/builtin/packages/py-audioread/package.py
index b69f22b720..d2afde94ae 100644
--- a/var/spack/repos/builtin/packages/py-audioread/package.py
+++ b/var/spack/repos/builtin/packages/py-audioread/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyAudioread(PythonPackage):
Python."""
homepage = "https://github.com/beetbox/audioread"
- url = "https://pypi.io/packages/source/a/audioread/audioread-2.1.8.tar.gz"
+ pypi = "audioread/audioread-2.1.8.tar.gz"
version('2.1.8', sha256='073904fabc842881e07bd3e4a5776623535562f70b1655b635d22886168dd168')
diff --git a/var/spack/repos/builtin/packages/py-autograd-gamma/package.py b/var/spack/repos/builtin/packages/py-autograd-gamma/package.py
index 75436ea4c9..9d586c6a9c 100644
--- a/var/spack/repos/builtin/packages/py-autograd-gamma/package.py
+++ b/var/spack/repos/builtin/packages/py-autograd-gamma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAutogradGamma(PythonPackage):
Gamma-family of functions."""
homepage = "https://github.com/CamDavidsonPilon/autograd-gamma"
- url = "https://pypi.io/packages/source/a/autograd-gamma/autograd-gamma-0.4.3.tar.gz"
+ pypi = "autograd-gamma/autograd-gamma-0.4.3.tar.gz"
version('0.4.3', sha256='2cb570cbb8da61ede937ccc004d87d3924108f754b351a86cdd2ad31ace6cdf6')
diff --git a/var/spack/repos/builtin/packages/py-autograd/package.py b/var/spack/repos/builtin/packages/py-autograd/package.py
index 86aba0132d..48e4e9cd55 100644
--- a/var/spack/repos/builtin/packages/py-autograd/package.py
+++ b/var/spack/repos/builtin/packages/py-autograd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class PyAutograd(PythonPackage):
examples directory."""
homepage = "https://github.com/HIPS/autograd"
- url = "https://pypi.io/packages/source/a/autograd/autograd-1.3.tar.gz"
+ pypi = "autograd/autograd-1.3.tar.gz"
version('1.3', sha256='a15d147577e10de037de3740ca93bfa3b5a7cdfbc34cfb9105429c3580a33ec4')
diff --git a/var/spack/repos/builtin/packages/py-autopep8/package.py b/var/spack/repos/builtin/packages/py-autopep8/package.py
index 296d0bd4c3..979b206019 100644
--- a/var/spack/repos/builtin/packages/py-autopep8/package.py
+++ b/var/spack/repos/builtin/packages/py-autopep8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyAutopep8(PythonPackage):
PEP 8 style guide."""
homepage = "https://github.com/hhatto/autopep8"
- url = "https://pypi.io/packages/source/a/autopep8/autopep8-1.2.4.tar.gz"
+ pypi = "autopep8/autopep8-1.2.4.tar.gz"
version('1.4.4', sha256='4d8eec30cc81bc5617dbf1218201d770dc35629363547f17577c61683ccfb3ee')
version('1.3.3', sha256='ff787bffb812818c3071784b5ce9a35f8c481a0de7ea0ce4f8b68b8788a12f30')
diff --git a/var/spack/repos/builtin/packages/py-auxlib/package.py b/var/spack/repos/builtin/packages/py-auxlib/package.py
index 4d18101e5d..a263eaadde 100644
--- a/var/spack/repos/builtin/packages/py-auxlib/package.py
+++ b/var/spack/repos/builtin/packages/py-auxlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAuxlib(PythonPackage):
"""Auxlib is an auxiliary library to the python standard library."""
homepage = "https://github.com/kalefranz/auxlib"
- url = "https://pypi.io/packages/source/a/auxlib/auxlib-0.0.43.tar.gz"
+ pypi = "auxlib/auxlib-0.0.43.tar.gz"
version('0.0.43', sha256='0f175637e96a090a785767ce28483cf1aeec316a19afce9b2fbd113e1122786a')
diff --git a/var/spack/repos/builtin/packages/py-avro-json-serializer/package.py b/var/spack/repos/builtin/packages/py-avro-json-serializer/package.py
index 614d29196d..af1fb402ed 100644
--- a/var/spack/repos/builtin/packages/py-avro-json-serializer/package.py
+++ b/var/spack/repos/builtin/packages/py-avro-json-serializer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAvroJsonSerializer(PythonPackage):
"""Serializes data into a JSON format using AVRO schema."""
homepage = "https://github.com/linkedin/python-avro-json-serializer"
- url = "https://pypi.io/packages/source/a/avro_json_serializer/avro_json_serializer-0.4.tar.gz"
+ pypi = "avro_json_serializer/avro_json_serializer-0.4.tar.gz"
version('0.4', sha256='f9dac2dac92036c5dd5aba8c716545fc0a0630cc365a51ab15bc2ac47eac28f1')
diff --git a/var/spack/repos/builtin/packages/py-avro-python3/package.py b/var/spack/repos/builtin/packages/py-avro-python3/package.py
index 2c62f35825..224bcec05e 100644
--- a/var/spack/repos/builtin/packages/py-avro-python3/package.py
+++ b/var/spack/repos/builtin/packages/py-avro-python3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyAvroPython3(PythonPackage):
functions will be made available for both python2 and python3."""
homepage = "https://github.com/apache/avro/tree/master/lang/py3"
- url = "https://pypi.io/packages/source/a/avro-python3/avro-python3-1.10.0.tar.gz"
+ pypi = "avro-python3/avro-python3-1.10.0.tar.gz"
version('1.10.0', sha256='a455c215540b1fceb1823e2a918e94959b54cb363307c97869aa46b5b55bde05')
diff --git a/var/spack/repos/builtin/packages/py-avro/package.py b/var/spack/repos/builtin/packages/py-avro/package.py
index 35c903a411..8e33156b24 100644
--- a/var/spack/repos/builtin/packages/py-avro/package.py
+++ b/var/spack/repos/builtin/packages/py-avro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAvro(PythonPackage):
"""Avro is a serialization and RPC framework."""
homepage = "http://avro.apache.org/docs/current/"
- url = "https://pypi.io/packages/source/a/avro/avro-1.8.2.tar.gz"
+ pypi = "avro/avro-1.8.2.tar.gz"
version('1.8.2', sha256='8f9ee40830b70b5fb52a419711c9c4ad0336443a6fba7335060805f961b04b59')
diff --git a/var/spack/repos/builtin/packages/py-awesome-slugify/package.py b/var/spack/repos/builtin/packages/py-awesome-slugify/package.py
index 2d8ac680e4..1db30c5296 100644
--- a/var/spack/repos/builtin/packages/py-awesome-slugify/package.py
+++ b/var/spack/repos/builtin/packages/py-awesome-slugify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyAwesomeSlugify(PythonPackage):
"""Python flexible slugify function"""
homepage = "https://github.com/dimka665/awesome-slugify"
- url = "https://pypi.io/packages/source/a/awesome-slugify/awesome-slugify-1.6.5.tar.gz"
+ pypi = "awesome-slugify/awesome-slugify-1.6.5.tar.gz"
version('1.6.5', sha256='bbdec3fa2187917473a2efad092b57f7125a55f841a7cf6a1773178d32ccfd71')
@@ -18,4 +18,3 @@ class PyAwesomeSlugify(PythonPackage):
depends_on('py-regex', type=('build', 'run'))
depends_on('py-unidecode@0.04.14:0.04.99', type=('build', 'run'))
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-awkward/package.py b/var/spack/repos/builtin/packages/py-awkward/package.py
new file mode 100644
index 0000000000..309d74dfb3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-awkward/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyAwkward(PythonPackage):
+ """Manipulate JSON-like data with NumPy-like idioms."""
+
+ git = "https://github.com/scikit-hep/awkward-1.0.git"
+ pypi = "awkward/awkward-1.1.2.tar.gz"
+ homepage = "https://awkward-array.org"
+
+ maintainers = ['vvolkl']
+
+ version('1.2.3', sha256='7d727542927a926f488fa62d04e2c5728c72660f17f822e627f349285f295063')
+ version('1.2.2', sha256='89f126a072d3a6eee091e1afeed87e0b2ed3c34ed31a1814062174de3cab8d9b')
+ version('1.1.2', sha256='4ae8371d9e6d5bd3e90f3686b433cebc0541c88072655d2c75ec58e79b5d6943')
+
+ patch('pybind11.patch', when="@:1.2.2")
+ patch('pybind11_02.patch', when="@1.2.3:")
+
+ depends_on('py-setuptools', type='build')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-numpy@1.13.1:', type=('build', 'run'))
+ depends_on('py-pybind11', type=('build', 'link'))
+ depends_on('dlpack', when="@1.0.0:")
+ depends_on('rapidjson')
+ depends_on('cmake', type='build')
diff --git a/var/spack/repos/builtin/packages/py-awkward/pybind11.patch b/var/spack/repos/builtin/packages/py-awkward/pybind11.patch
new file mode 100644
index 0000000000..8edc76919f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-awkward/pybind11.patch
@@ -0,0 +1,14 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fedfe3a..bf762c9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -107,7 +107,7 @@ addtest(test0074 tests/test_0074-argsort-and-sort-rawarray.cpp)
+
+ # Third tier: Python modules.
+ if (PYBUILD)
+- add_subdirectory(pybind11)
++ find_package(pybind11)
+
+ file(GLOB LAYOUT_SOURCES "src/python/*.cpp")
+ pybind11_add_module(_ext ${LAYOUT_SOURCES})
+
diff --git a/var/spack/repos/builtin/packages/py-awkward/pybind11_02.patch b/var/spack/repos/builtin/packages/py-awkward/pybind11_02.patch
new file mode 100644
index 0000000000..5b33d80eac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-awkward/pybind11_02.patch
@@ -0,0 +1,14 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ba2c37f..bd7f268 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -96,7 +96,7 @@ option(PYBUILD "Build Python modules")
+
+ # Third tier: Python modules.
+ if(PYBUILD)
+- add_subdirectory(pybind11)
++ find_package(pybind11)
+
+ file(GLOB LAYOUT_SOURCES "src/python/*.cpp")
+ pybind11_add_module(_ext ${LAYOUT_SOURCES})
+
diff --git a/var/spack/repos/builtin/packages/py-awkward0/package.py b/var/spack/repos/builtin/packages/py-awkward0/package.py
new file mode 100644
index 0000000000..62afd740c7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-awkward0/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyAwkward0(PythonPackage):
+ """Manipulate arrays of complex data structures as easily as Numpy.
+
+ Awkward Array is a pure Python+Numpy library for manipulating complex data
+ structures as you would Numpy arrays."""
+
+ homepage = "https://github.com/scikit-hep/awkward-0.x"
+ pypi = "awkward0/awkward0-0.15.5.tar.gz"
+
+ version('0.15.5', sha256='156e6e338c56d857a7bb53c4fcc8b0b2592a3470eff0d854e6d68777986359ad')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pytest-runner', type='build')
+ depends_on('py-numpy@1.13.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-awkward1/package.py b/var/spack/repos/builtin/packages/py-awkward1/package.py
index 515ef90a04..be14c4d815 100644
--- a/var/spack/repos/builtin/packages/py-awkward1/package.py
+++ b/var/spack/repos/builtin/packages/py-awkward1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class PyAwkward1(PythonPackage):
- """ROOT I/O in pure Python and NumPy."""
+ """DEPRECATED! This package was renamed to py-awkward."""
git = "https://github.com/scikit-hep/awkward-1.0.git"
url = "https://github.com/scikit-hep/awkward-1.0/archive/0.3.1.tar.gz"
@@ -15,14 +15,16 @@ class PyAwkward1(PythonPackage):
maintainers = ['vvolkl']
- version('0.3.1', sha256='7126d9feab8828b0b4f4c6dbc9e28c269a91e28eef4a6033d7ebb5db21f1dab3')
+ version('1.1.2', sha256='626e3a6a2a92dd67abc8692b1ebfa1b447b9594352d6ce8c86c37d7299dc4602', deprecated=True)
+ version('0.3.1', sha256='7126d9feab8828b0b4f4c6dbc9e28c269a91e28eef4a6033d7ebb5db21f1dab3', deprecated=True)
patch('pybind11.patch')
depends_on('py-setuptools', type='build')
depends_on('python@3.6:', type=('build', 'run'))
- depends_on('py-numpy@1.13.1:')
- depends_on('py-pybind11')
+ depends_on('py-numpy@1.13.1:', type=('build', 'run'))
+ depends_on('py-pybind11', type=('build', 'link'))
+ depends_on('dlpack', when="@1.0.0:")
depends_on('rapidjson')
- depends_on('cmake')
+ depends_on('cmake', type='build')
diff --git a/var/spack/repos/builtin/packages/py-azote/package.py b/var/spack/repos/builtin/packages/py-azote/package.py
index 60fdc86e5b..736ae9609d 100644
--- a/var/spack/repos/builtin/packages/py-azote/package.py
+++ b/var/spack/repos/builtin/packages/py-azote/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-azure-batch/package.py b/var/spack/repos/builtin/packages/py-azure-batch/package.py
index b201ec7660..f2bc719c30 100644
--- a/var/spack/repos/builtin/packages/py-azure-batch/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-batch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureBatch(PythonPackage):
"""Microsoft Azure Batch Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-batch/azure-batch-9.0.0.zip"
+ pypi = "azure-batch/azure-batch-9.0.0.zip"
version('9.0.0', sha256='47ca6f50a640915e1cdc5ce3c1307abe5fa3a636236e561119cf62d9df384d84')
diff --git a/var/spack/repos/builtin/packages/py-azure-cli-command-modules-nspkg/package.py b/var/spack/repos/builtin/packages/py-azure-cli-command-modules-nspkg/package.py
index 0a40cf2e44..027281f528 100644
--- a/var/spack/repos/builtin/packages/py-azure-cli-command-modules-nspkg/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-cli-command-modules-nspkg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureCliCommandModulesNspkg(PythonPackage):
"""Microsoft Azure CLI Command Modules Namespace Package."""
homepage = "https://github.com/Azure/azure-cli"
- url = "https://pypi.io/packages/source/a/azure-cli-command-modules-nspkg/azure-cli-command-modules-nspkg-2.0.3.tar.gz"
+ pypi = "azure-cli-command-modules-nspkg/azure-cli-command-modules-nspkg-2.0.3.tar.gz"
version('2.0.3', sha256='4bd62bf5facb92dd4f89080e75eaee2ea1d3dd4e57a3d2a760ce501cf53f4e7d')
diff --git a/var/spack/repos/builtin/packages/py-azure-cli-core/package.py b/var/spack/repos/builtin/packages/py-azure-cli-core/package.py
index 07e520c530..c638326957 100644
--- a/var/spack/repos/builtin/packages/py-azure-cli-core/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-cli-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureCliCore(PythonPackage):
"""Microsoft Azure Command-Line Tools Core Module."""
homepage = "https://github.com/Azure/azure-cli"
- url = "https://pypi.io/packages/source/a/azure-cli-core/azure-cli-core-2.9.1.tar.gz"
+ pypi = "azure-cli-core/azure-cli-core-2.9.1.tar.gz"
version('2.9.1', sha256='8618a30f7ea2188506f29801220c06396d731c26e4de92c327e6b0e8cc790db5')
@@ -36,4 +36,3 @@ class PyAzureCliCore(PythonPackage):
depends_on('py-ndg-httpsclient', when='^python@:2.7.8', type=('build', 'run'))
depends_on('py-pyasn1', when='^python@:2.7.8', type=('build', 'run'))
depends_on('py-futures', when='^python@:2', type=('build', 'run'))
- depends_on('py-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-azure-cli-nspkg/package.py b/var/spack/repos/builtin/packages/py-azure-cli-nspkg/package.py
index 31fab8f659..c5a9f8eaa3 100644
--- a/var/spack/repos/builtin/packages/py-azure-cli-nspkg/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-cli-nspkg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureCliNspkg(PythonPackage):
"""Microsoft Azure CLI Namespace Package."""
homepage = "https://github.com/Azure/azure-cli"
- url = "https://pypi.io/packages/source/a/azure-cli-nspkg/azure-cli-nspkg-3.0.4.tar.gz"
+ pypi = "azure-cli-nspkg/azure-cli-nspkg-3.0.4.tar.gz"
version('3.0.4', sha256='1bde56090f548c6435bd3093995cf88e4c445fb040604df8b5b5f70780d79181')
diff --git a/var/spack/repos/builtin/packages/py-azure-cli-telemetry/package.py b/var/spack/repos/builtin/packages/py-azure-cli-telemetry/package.py
index bb379686be..327c3e4688 100644
--- a/var/spack/repos/builtin/packages/py-azure-cli-telemetry/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-cli-telemetry/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,11 +8,10 @@ class PyAzureCliTelemetry(PythonPackage):
"""Microsoft Azure CLI Telemetry Package."""
homepage = "https://github.com/Azure/azure-cli"
- url = "https://pypi.io/packages/source/a/azure-cli-telemetry/azure-cli-telemetry-1.0.4.tar.gz"
+ pypi = "azure-cli-telemetry/azure-cli-telemetry-1.0.4.tar.gz"
version('1.0.4', sha256='1f239d544d309c29e827982cc20113eb57037dba16db6cdd2e0283e437e0e577')
depends_on('py-setuptools', type='build')
depends_on('py-applicationinsights@0.11.1:0.11.999', type=('build', 'run'))
depends_on('py-portalocker@1.2:1.999', type=('build', 'run'))
- depends_on('py-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-azure-cli/package.py b/var/spack/repos/builtin/packages/py-azure-cli/package.py
index faa09d1cfd..cc5ed8aeef 100644
--- a/var/spack/repos/builtin/packages/py-azure-cli/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-cli/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureCli(PythonPackage):
"""Microsoft Azure Command-Line Tools."""
homepage = "https://github.com/Azure/azure-cli"
- url = "https://pypi.io/packages/source/a/azure-cli/azure-cli-2.9.1.tar.gz"
+ pypi = "azure-cli/azure-cli-2.9.1.tar.gz"
version('2.9.1', sha256='749d850f73ea8956ab510288c1061dd7066180a8583081a6d560fdc7ac8314d6')
@@ -99,4 +99,3 @@ class PyAzureCli(PythonPackage):
depends_on('py-xmltodict@0.12:0.999', type=('build', 'run'))
depends_on('py-javaproperties@0.5.1', type=('build', 'run'))
depends_on('py-jsondiff@1.2.0', type=('build', 'run'))
- depends_on('py-mock@4.0:4.999', type='test')
diff --git a/var/spack/repos/builtin/packages/py-azure-common/package.py b/var/spack/repos/builtin/packages/py-azure-common/package.py
index 72410b447e..6979ce1cfb 100644
--- a/var/spack/repos/builtin/packages/py-azure-common/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-common/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureCommon(PythonPackage):
"""Microsoft Azure Client Library for Python (Common)."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-common/azure-common-1.1.25.zip"
+ pypi = "azure-common/azure-common-1.1.25.zip"
version('1.1.25', sha256='ce0f1013e6d0e9faebaf3188cc069f4892fc60a6ec552e3f817c1a2f92835054')
diff --git a/var/spack/repos/builtin/packages/py-azure-core/package.py b/var/spack/repos/builtin/packages/py-azure-core/package.py
index e45bfcabfb..a7c9e591cc 100644
--- a/var/spack/repos/builtin/packages/py-azure-core/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureCore(PythonPackage):
"""Microsoft Azure Core Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/core/azure-core"
- url = "https://pypi.io/packages/source/a/azure-core/azure-core-1.7.0.zip"
+ pypi = "azure-core/azure-core-1.7.0.zip"
version('1.7.0', sha256='a66da240a287f447f9867f54ba09ea235895cec13ea38c5f490ce4eedefdd75c')
version('1.6.0', sha256='d10b74e783cff90d56360e61162afdd22276d62dc9467e657ae866449eae7648')
diff --git a/var/spack/repos/builtin/packages/py-azure-cosmos/package.py b/var/spack/repos/builtin/packages/py-azure-cosmos/package.py
index 56ed2ae59f..3d8ce9a111 100644
--- a/var/spack/repos/builtin/packages/py-azure-cosmos/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-cosmos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureCosmos(PythonPackage):
"""Microsoft Azure Cosmos Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-cosmos/azure-cosmos-4.0.0.zip"
+ pypi = "azure-cosmos/azure-cosmos-4.0.0.zip"
version('4.0.0', sha256='c4e40e0d378fd0c96664f46f1ad08e6c8aaaac31c463726a74aae9eae724442d')
version('3.2.0', sha256='4f77cc558fecffac04377ba758ac4e23f076dc1c54e2cf2515f85bc15cbde5c6',
diff --git a/var/spack/repos/builtin/packages/py-azure-datalake-store/package.py b/var/spack/repos/builtin/packages/py-azure-datalake-store/package.py
index 84dc392932..d6f8199b43 100644
--- a/var/spack/repos/builtin/packages/py-azure-datalake-store/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-datalake-store/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureDatalakeStore(PythonPackage):
"""Azure Data Lake Store Filesystem Client Library for Python."""
homepage = "https://github.com/Azure/azure-data-lake-store-python"
- url = "https://pypi.io/packages/source/a/azure-datalake-store/azure-datalake-store-0.0.48.tar.gz"
+ pypi = "azure-datalake-store/azure-datalake-store-0.0.48.tar.gz"
version('0.0.48', sha256='d27c335783d4add00b3a5f709341e4a8009857440209e15a739a9a96b52386f7')
diff --git a/var/spack/repos/builtin/packages/py-azure-functions-devops-build/package.py b/var/spack/repos/builtin/packages/py-azure-functions-devops-build/package.py
index ee70dc2f03..9da4a4dd10 100644
--- a/var/spack/repos/builtin/packages/py-azure-functions-devops-build/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-functions-devops-build/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureFunctionsDevopsBuild(PythonPackage):
Specifically made for the Azure CLI."""
homepage = "https://github.com/Azure/azure-functions-devops-build"
- url = "https://pypi.io/packages/source/a/azure-functions-devops-build/azure-functions-devops-build-0.0.22.tar.gz"
+ pypi = "azure-functions-devops-build/azure-functions-devops-build-0.0.22.tar.gz"
version('0.0.22', sha256='c6341abda6098813f8fa625acd1e925410a17a8a1c7aaabdf975bb7cecb14edf')
diff --git a/var/spack/repos/builtin/packages/py-azure-graphrbac/package.py b/var/spack/repos/builtin/packages/py-azure-graphrbac/package.py
index 4cd0dd661f..d051d5f68a 100644
--- a/var/spack/repos/builtin/packages/py-azure-graphrbac/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-graphrbac/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureGraphrbac(PythonPackage):
"""Microsoft Azure Graph RBAC Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-graphrbac/azure-graphrbac-0.61.1.zip"
+ pypi = "azure-graphrbac/azure-graphrbac-0.61.1.zip"
version('0.61.1', sha256='53e98ae2ca7c19b349e9e9bb1b6a824aeae8dcfcbe17190d20fe69c0f185b2e2')
version('0.60.0', sha256='d0bb62d8bf8e196b903f3971ba4afa448e4fe14e8394ebfcdd941d84d62ecafe')
diff --git a/var/spack/repos/builtin/packages/py-azure-identity/package.py b/var/spack/repos/builtin/packages/py-azure-identity/package.py
index e3835d9cef..79371fde83 100644
--- a/var/spack/repos/builtin/packages/py-azure-identity/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-identity/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureIdentity(PythonPackage):
"""Microsoft Azure Identity Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/identity/azure-identity"
- url = "https://pypi.io/packages/source/a/azure-identity/azure-identity-1.3.1.zip"
+ pypi = "azure-identity/azure-identity-1.3.1.zip"
version('1.3.1', sha256='5a59c36b4b05bdaec455c390feda71b6495fc828246593404351b9a41c2e877a')
version('1.2.0', sha256='b32acd1cdb6202bfe10d9a0858dc463d8960295da70ae18097eb3b85ab12cb91')
diff --git a/var/spack/repos/builtin/packages/py-azure-keyvault-certificates/package.py b/var/spack/repos/builtin/packages/py-azure-keyvault-certificates/package.py
index 49ad0b0ea6..0a3142140c 100644
--- a/var/spack/repos/builtin/packages/py-azure-keyvault-certificates/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-keyvault-certificates/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureKeyvaultCertificates(PythonPackage):
"""Microsoft Azure Key Vault Certificates Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/keyvault/azure-keyvault-certificates"
- url = "https://pypi.io/packages/source/a/azure-keyvault-certificates/azure-keyvault-certificates-4.1.0.zip"
+ pypi = "azure-keyvault-certificates/azure-keyvault-certificates-4.1.0.zip"
version('4.1.0', sha256='544f56480619e1db350f2e7b117b22af778e02174bd6bcb0af9ae00c50353419')
diff --git a/var/spack/repos/builtin/packages/py-azure-keyvault-keys/package.py b/var/spack/repos/builtin/packages/py-azure-keyvault-keys/package.py
index 7fa65939ac..ce910ec577 100644
--- a/var/spack/repos/builtin/packages/py-azure-keyvault-keys/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-keyvault-keys/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureKeyvaultKeys(PythonPackage):
"""Microsoft Azure Key Vault Keys Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/keyvault/azure-keyvault-keys"
- url = "https://pypi.io/packages/source/a/azure-keyvault-keys/azure-keyvault-keys-4.1.0.zip"
+ pypi = "azure-keyvault-keys/azure-keyvault-keys-4.1.0.zip"
version('4.1.0', sha256='f9967b4deb48e619f6c40558f69e48978779cc09c8a7fad33d536cfc41cd68f9')
diff --git a/var/spack/repos/builtin/packages/py-azure-keyvault-nspkg/package.py b/var/spack/repos/builtin/packages/py-azure-keyvault-nspkg/package.py
index 16200150de..22632d0d66 100644
--- a/var/spack/repos/builtin/packages/py-azure-keyvault-nspkg/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-keyvault-nspkg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureKeyvaultNspkg(PythonPackage):
"""Microsoft Azure Key Vault Namespace Package."""
homepage = "https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/keyvault"
- url = "https://pypi.io/packages/source/a/azure-keyvault-nspkg/azure-keyvault-nspkg-1.0.0.zip"
+ pypi = "azure-keyvault-nspkg/azure-keyvault-nspkg-1.0.0.zip"
version('1.0.0', sha256='ac68b88aab9c6caf54a23da2a1d1c718d7520bae5adff04dd0a743228269b641')
diff --git a/var/spack/repos/builtin/packages/py-azure-keyvault-secrets/package.py b/var/spack/repos/builtin/packages/py-azure-keyvault-secrets/package.py
index cbc91cde3d..5761fd83f5 100644
--- a/var/spack/repos/builtin/packages/py-azure-keyvault-secrets/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-keyvault-secrets/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureKeyvaultSecrets(PythonPackage):
"""Microsoft Azure Key Vault Secrets Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/keyvault/azure-keyvault-secrets"
- url = "https://pypi.io/packages/source/a/azure-keyvault-secrets/azure-keyvault-secrets-4.1.0.zip"
+ pypi = "azure-keyvault-secrets/azure-keyvault-secrets-4.1.0.zip"
version('4.1.0', sha256='4f3bfac60e025e01dd1c1998b73649d45d706975356c0cf147174cf5a6ddf8be')
diff --git a/var/spack/repos/builtin/packages/py-azure-keyvault/package.py b/var/spack/repos/builtin/packages/py-azure-keyvault/package.py
index b18a562226..7ab2dfb767 100644
--- a/var/spack/repos/builtin/packages/py-azure-keyvault/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-keyvault/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureKeyvault(PythonPackage):
"""Microsoft Azure Key Vault Client Libraries for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/keyvault/azure-keyvault"
- url = "https://pypi.io/packages/source/a/azure-keyvault/azure-keyvault-4.1.0.zip"
+ pypi = "azure-keyvault/azure-keyvault-4.1.0.zip"
version('4.1.0', sha256='69002a546921a8290eb54d9a3805cfc515c321bc1d4c0bfcfb463620245eca40')
version('1.1.0', sha256='37a8e5f376eb5a304fcd066d414b5d93b987e68f9212b0c41efa37d429aadd49')
diff --git a/var/spack/repos/builtin/packages/py-azure-loganalytics/package.py b/var/spack/repos/builtin/packages/py-azure-loganalytics/package.py
index 25a4e42317..606c5ee879 100644
--- a/var/spack/repos/builtin/packages/py-azure-loganalytics/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-loganalytics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureLoganalytics(PythonPackage):
"""Microsoft Azure Log Analytics Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-loganalytics/azure-loganalytics-0.1.0.zip"
+ pypi = "azure-loganalytics/azure-loganalytics-0.1.0.zip"
version('0.1.0', sha256='3ceb350def677a351f34b0a0d1637df6be0c6fe87ff32a5270b17f540f6da06e')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-advisor/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-advisor/package.py
index 5e19a89dea..ab5cb79d26 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-advisor/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-advisor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtAdvisor(PythonPackage):
"""Microsoft Azure Advisor Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-advisor/azure-mgmt-advisor-4.0.0.zip"
+ pypi = "azure-mgmt-advisor/azure-mgmt-advisor-4.0.0.zip"
version('4.0.0', sha256='1ecea7a9dc48c099c06aab68aace7fdbded91a5522932882b1707c29fa055054')
version('2.0.1', sha256='1929d6d5ba49d055fdc806e981b93cf75ea42ba35f78222aaf42d8dcf29d4ef3')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-apimanagement/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-apimanagement/package.py
index 538bfed522..f816f5fade 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-apimanagement/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-apimanagement/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtApimanagement(PythonPackage):
"""Microsoft Azure API Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-apimanagement/azure-mgmt-apimanagement-0.2.0.zip"
+ pypi = "azure-mgmt-apimanagement/azure-mgmt-apimanagement-0.2.0.zip"
version('0.2.0', sha256='790f01c0b32583706b8b8c59667c0f5a51cd70444eee76474e23a598911e1d72')
version('0.1.0', sha256='5d45d3438c6a11bae6bb8d4d5173cdb44b85683695f9f3433f22f45aecc47819')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-appconfiguration/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-appconfiguration/package.py
index 96f7a6dfff..9fd889dc10 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-appconfiguration/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-appconfiguration/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtAppconfiguration(PythonPackage):
"""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-appconfiguration/azure-mgmt-appconfiguration-0.5.0.zip"
+ pypi = "azure-mgmt-appconfiguration/azure-mgmt-appconfiguration-0.5.0.zip"
version('0.5.0', sha256='211527511d7616a383cc196956eaf2b7ee016f2367d367924b3715f2a41106da')
version('0.4.0', sha256='85f6202ba235fde6be274f3dec1578b90235cf31979abea3fcfa476d0b2ac5b6')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-applicationinsights/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-applicationinsights/package.py
index b7b4089b9d..8289b7a2aa 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-applicationinsights/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-applicationinsights/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtApplicationinsights(PythonPackage):
Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-applicationinsights/azure-mgmt-applicationinsights-0.3.0.zip"
+ pypi = "azure-mgmt-applicationinsights/azure-mgmt-applicationinsights-0.3.0.zip"
version('0.3.0', sha256='3c788a54db4fbca1a8850151462ec1471ff59c86b3a10d6082952bbdaa7e6651')
version('0.1.1', sha256='f10229eb9e3e9d0ad20188b8d14d67055e86f3815b43b75eedf96b654bee2a9b')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-authorization/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-authorization/package.py
index 5a5089966c..6990814ac1 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-authorization/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-authorization/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtAuthorization(PythonPackage):
"""Microsoft Azure Authorization Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-authorization/azure-mgmt-authorization-0.60.0.zip"
+ pypi = "azure-mgmt-authorization/azure-mgmt-authorization-0.60.0.zip"
version('0.60.0', sha256='31e875a34ac2c5d6fefe77b4a8079a8b2bdbe9edb957e47e8b44222fb212d6a7')
version('0.52.0', sha256='16a618c4357c11e96de376856c396f09e76a56473920cdf7a66735fabaa2a70c')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-batch/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-batch/package.py
index f11c869362..e4a9a7682c 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-batch/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-batch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtBatch(PythonPackage):
"""Microsoft Azure Batch Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-batch/azure-mgmt-batch-9.0.0.zip"
+ pypi = "azure-mgmt-batch/azure-mgmt-batch-9.0.0.zip"
version('9.0.0', sha256='03417eecfa1fac906e674cb1cb43ed7da27a96277277b091d7c389ba39f6c3fe')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-batchai/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-batchai/package.py
index ec279bfc50..301398f80f 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-batchai/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-batchai/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtBatchai(PythonPackage):
"""Microsoft Azure Batch AI Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-batchai/azure-mgmt-batchai-2.0.0.zip"
+ pypi = "azure-mgmt-batchai/azure-mgmt-batchai-2.0.0.zip"
version('2.0.0', sha256='f1870b0f97d5001cdb66208e5a236c9717a0ed18b34dbfdb238a828f3ca2a683')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-billing/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-billing/package.py
index a124ac5931..a4ceadbe96 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-billing/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-billing/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtBilling(PythonPackage):
"""Microsoft Azure Billing Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-billing/azure-mgmt-billing-0.2.0.zip"
+ pypi = "azure-mgmt-billing/azure-mgmt-billing-0.2.0.zip"
version('0.2.0', sha256='85f73bb3808a7d0d2543307e8f41e5b90a170ad6eeedd54fe7fcaac61b5b22d2')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-botservice/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-botservice/package.py
index 168259dac0..10f403f43f 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-botservice/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-botservice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtBotservice(PythonPackage):
"""Microsoft Azure Bot Service Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-botservice/azure-mgmt-botservice-0.2.0.zip"
+ pypi = "azure-mgmt-botservice/azure-mgmt-botservice-0.2.0.zip"
version('0.2.0', sha256='b21d8858e69aa16d25b908c40116a1f773c127ec4dd602cbb8542ebf39a55d83')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-cdn/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-cdn/package.py
index 916934c841..7d181e5c3e 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-cdn/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-cdn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtCdn(PythonPackage):
"""Microsoft Azure CDN Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-cdn/azure-mgmt-cdn-4.0.0.zip"
+ pypi = "azure-mgmt-cdn/azure-mgmt-cdn-4.0.0.zip"
# Release candidate needed for py-azure-cli
version('4.1.0rc1', sha256='853c73d612f5d97387e079c5841a9f1a05702173d0c7c0c59ba7b0fd86380503')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-cognitiveservices/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-cognitiveservices/package.py
index 067f980c7d..8d27014d96 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-cognitiveservices/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-cognitiveservices/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtCognitiveservices(PythonPackage):
Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-cognitiveservices/azure-mgmt-cognitiveservices-6.2.0.zip"
+ pypi = "azure-mgmt-cognitiveservices/azure-mgmt-cognitiveservices-6.2.0.zip"
version('6.2.0', sha256='93503507ba87c18fe24cd3dfcd54e6e69a4daf7636f38b7537e09cee9a4c13ce')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-compute/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-compute/package.py
index 4b47781334..732010eb3d 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-compute/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-compute/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtCompute(PythonPackage):
"""Microsoft Azure Compute Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-compute/azure-mgmt-compute-13.0.0.zip"
+ pypi = "azure-mgmt-compute/azure-mgmt-compute-13.0.0.zip"
version('13.0.0', sha256='7f331bafcbedf25d65aa42038f7553747dab18d7f10a5af3297192d31c45339e')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-consumption/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-consumption/package.py
index 8974a4500d..eb9e8d1e39 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-consumption/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-consumption/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtConsumption(PythonPackage):
"""Microsoft Azure Consumption Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-consumption/azure-mgmt-consumption-3.0.0.zip"
+ pypi = "azure-mgmt-consumption/azure-mgmt-consumption-3.0.0.zip"
version('3.0.0', sha256='035d4b74ca7c47e2683bea17105fd9014c27060336fb6255324ac86b27f70f5b')
version('2.0.0', sha256='9a85a89f30f224d261749be20b4616a0eb8948586f7f0f20573b8ea32f265189')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-containerinstance/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-containerinstance/package.py
index c2ce7566d4..035b88f33c 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-containerinstance/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-containerinstance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtContainerinstance(PythonPackage):
"""Microsoft Azure Container Instance Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-containerinstance/azure-mgmt-containerinstance-2.0.0.zip"
+ pypi = "azure-mgmt-containerinstance/azure-mgmt-containerinstance-2.0.0.zip"
version('2.0.0', sha256='5ad247d186c3c040da7a1d40ad39c9881e99afc58271f673abb602abb0b6b85b')
version('1.5.0', sha256='b055386f04ba8433112b0df7fcbc260b5208828d7bb8c057e760fe596aa7a8cd')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-containerregistry/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-containerregistry/package.py
index 1a337d7a4a..947ee794ac 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-containerregistry/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-containerregistry/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtContainerregistry(PythonPackage):
"""Microsoft Azure Container Registry Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-containerregistry/azure-mgmt-containerregistry-2.8.0.zip"
+ pypi = "azure-mgmt-containerregistry/azure-mgmt-containerregistry-2.8.0.zip"
# Release candidate needed for py-azure-cli
version('3.0.0rc14', sha256='d23ce93ec5903d00f79f0ac995e16bf47197130239f7f182509add3277b73071')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-containerservice/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-containerservice/package.py
index 3e592e4a13..6c4daf4775 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-containerservice/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-containerservice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtContainerservice(PythonPackage):
"""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-containerservice/azure-mgmt-containerservice-9.2.0.zip"
+ pypi = "azure-mgmt-containerservice/azure-mgmt-containerservice-9.2.0.zip"
version('9.2.0', sha256='e7904b60c42a153b64b1604f3c698602686b38787bebdaed6e808cd43b6e5967')
version('9.0.1', sha256='7e4459679bdba4aa67a4b5848e63d94e965a304a7418ef7607eb7a9ce295d886')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-core/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-core/package.py
index 4dfca888f6..07b9620797 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-core/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtCore(PythonPackage):
"""Microsoft Azure Management Core Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/core/azure-mgmt-core"
- url = "https://pypi.io/packages/source/a/azure-mgmt-core/azure-mgmt-core-1.2.0.zip"
+ pypi = "azure-mgmt-core/azure-mgmt-core-1.2.0.zip"
version('1.2.0', sha256='8fe3b59446438f27e34f7b24ea692a982034d9e734617ca1320eedeee1939998')
version('1.0.0', sha256='510faf49a10daec8346cc086143d8e667ef3b4f8c8022a8e710091027631a55e')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-cosmosdb/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-cosmosdb/package.py
index 978d659b9e..903fd1963c 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-cosmosdb/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-cosmosdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtCosmosdb(PythonPackage):
"""Microsoft Azure Cosmos DB Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-cosmosdb/azure-mgmt-cosmosdb-0.15.0.zip"
+ pypi = "azure-mgmt-cosmosdb/azure-mgmt-cosmosdb-0.15.0.zip"
version('0.15.0', sha256='e70fe9b3d9554c501d46e69f18b73de18d77fbcb98a7a87b965b3dd027cada0f')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-datalake-analytics/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-datalake-analytics/package.py
index bcb73cd655..a96112a8b3 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-datalake-analytics/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-datalake-analytics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtDatalakeAnalytics(PythonPackage):
Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-datalake-analytics/azure-mgmt-datalake-analytics-0.6.0.zip"
+ pypi = "azure-mgmt-datalake-analytics/azure-mgmt-datalake-analytics-0.6.0.zip"
version('0.6.0', sha256='0d64c4689a67d6138eb9ffbaff2eda2bace7d30b846401673183dcb42714de8f')
version('0.2.1', sha256='4c7960d094f5847d9a456c18b8a3c8e60c428e3080a3905f1c943d81ba6351a4')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-datalake-store/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-datalake-store/package.py
index 994c8a60c1..7e1cf9bd11 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-datalake-store/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-datalake-store/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtDatalakeStore(PythonPackage):
"""Microsoft Azure Data Lake Store Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-datalake-store/azure-mgmt-datalake-store-0.5.0.zip"
+ pypi = "azure-mgmt-datalake-store/azure-mgmt-datalake-store-0.5.0.zip"
version('0.5.0', sha256='9376d35495661d19f8acc5604f67b0bc59493b1835bbc480f9a1952f90017a4c')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-datamigration/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-datamigration/package.py
index 7eaf2e926b..e774c3a15d 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-datamigration/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-datamigration/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtDatamigration(PythonPackage):
"""Microsoft Azure Data Migration Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-datamigration/azure-mgmt-datamigration-4.0.0.zip"
+ pypi = "azure-mgmt-datamigration/azure-mgmt-datamigration-4.0.0.zip"
version('4.0.0', sha256='1efda568d67af911156591eb308432b5f9a56075b57ac0a5dd9f7aee17d79217')
version('0.1.0', sha256='e754928992743f54d999800a5e0679ee3e91d804d23a25f12c2e6f2f86cd05df')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-deploymentmanager/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-deploymentmanager/package.py
index 57d08f8805..fa28bd3a97 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-deploymentmanager/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-deploymentmanager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtDeploymentmanager(PythonPackage):
"""Microsoft Azure Deployment Manager Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-deploymentmanager/azure-mgmt-deploymentmanager-0.2.0.zip"
+ pypi = "azure-mgmt-deploymentmanager/azure-mgmt-deploymentmanager-0.2.0.zip"
version('0.2.0', sha256='46e342227993fc9acab1dda42f2eb566b522a8c945ab9d0eea56276b46f6d730')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-devtestlabs/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-devtestlabs/package.py
index 10094a24da..9a556a713d 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-devtestlabs/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-devtestlabs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtDevtestlabs(PythonPackage):
"""Microsoft Azure DevTestLabs Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-devtestlabs/azure-mgmt-devtestlabs-4.0.0.zip"
+ pypi = "azure-mgmt-devtestlabs/azure-mgmt-devtestlabs-4.0.0.zip"
version('4.0.0', sha256='59549c4c4068f26466b1097b574a8e5099fb2cd6c8be0a00395b06d3b29e278d')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-dns/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-dns/package.py
index ef7bab9ef7..35dc48f3e2 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-dns/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-dns/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtDns(PythonPackage):
"""Microsoft Azure DNS Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-dns/azure-mgmt-dns-3.0.0.zip"
+ pypi = "azure-mgmt-dns/azure-mgmt-dns-3.0.0.zip"
version('3.0.0', sha256='6ecdf4e67d8eb5db593ec331e6d9f350616e77c31225c91d266605e03e63b37f')
version('2.1.0', sha256='3730b1b3f545a5aa43c0fff07418b362a789eb7d81286e2bed90ffef88bfa5d0')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-eventgrid/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-eventgrid/package.py
index d1dc0f2264..93ad191352 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-eventgrid/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-eventgrid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtEventgrid(PythonPackage):
"""Microsoft Azure EventGrid Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-eventgrid/azure-mgmt-eventgrid-2.2.0.zip"
+ pypi = "azure-mgmt-eventgrid/azure-mgmt-eventgrid-2.2.0.zip"
# Release candidate needed for py-azure-cli
version('3.0.0rc7', sha256='68f9eb18b74fa86e07cf4e4d1a2ed16fe549bdd53f21a707b05798616b01a9d4')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-eventhub/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-eventhub/package.py
index bd25960c8c..a5b9a45639 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-eventhub/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-eventhub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtEventhub(PythonPackage):
"""Microsoft Azure EventHub Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-eventhub/azure-mgmt-eventhub-4.0.0.zip"
+ pypi = "azure-mgmt-eventhub/azure-mgmt-eventhub-4.0.0.zip"
version('4.0.0', sha256='65223196cf132899656c2f9cb71a14c972d99e5ecd815ee050dae1072cb73ae2')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-hdinsight/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-hdinsight/package.py
index 4107d2f68b..c35ed71e9d 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-hdinsight/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-hdinsight/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtHdinsight(PythonPackage):
"""Microsoft Azure HDInsight Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-hdinsight/azure-mgmt-hdinsight-1.5.1.zip"
+ pypi = "azure-mgmt-hdinsight/azure-mgmt-hdinsight-1.5.1.zip"
version('1.5.1', sha256='76b94f3e43fdc6698023d79be731937dc645dc3178dc134854768528ecc0aea3')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-imagebuilder/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-imagebuilder/package.py
index 44e3e311e4..ae171d1b92 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-imagebuilder/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-imagebuilder/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtImagebuilder(PythonPackage):
"""Microsoft Azure Image Builder Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-imagebuilder/azure-mgmt-imagebuilder-0.4.0.zip"
+ pypi = "azure-mgmt-imagebuilder/azure-mgmt-imagebuilder-0.4.0.zip"
version('0.4.0', sha256='4c9291bf16b40b043637e5e4f15650f71418ac237393e62219cab478a7951733')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-iotcentral/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-iotcentral/package.py
index 80154d6528..7f18068803 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-iotcentral/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-iotcentral/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtIotcentral(PythonPackage):
"""Microsoft Azure IoTCentral Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-iotcentral/azure-mgmt-iotcentral-3.1.0.zip"
+ pypi = "azure-mgmt-iotcentral/azure-mgmt-iotcentral-3.1.0.zip"
version('3.1.0', sha256='c175f6642be514ad0efd3dc03d09e50d923596fd9e634381793dcc46bb8a57c7')
version('3.0.0', sha256='f6dacf442ccae2f18f1082e80bcbdcaa8c0efa2ba92b48c5db6ee01d37240047')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-iothub/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-iothub/package.py
index a1954a9751..bcd3c93b88 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-iothub/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-iothub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtIothub(PythonPackage):
"""Microsoft Azure IoTHub Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-iothub/azure-mgmt-iothub-0.12.0.zip"
+ pypi = "azure-mgmt-iothub/azure-mgmt-iothub-0.12.0.zip"
version('0.12.0', sha256='da20ee2b9b9a2c2f89be9037c3ee5421152e7f6d718eafbf50a91dbf0a07ffa0')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-iothubprovisioningservices/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-iothubprovisioningservices/package.py
index 37845cee5d..e9adf65bb9 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-iothubprovisioningservices/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-iothubprovisioningservices/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtIothubprovisioningservices(PythonPackage):
"""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-iothubprovisioningservices/azure-mgmt-iothubprovisioningservices-0.2.0.zip"
+ pypi = "azure-mgmt-iothubprovisioningservices/azure-mgmt-iothubprovisioningservices-0.2.0.zip"
version('0.2.0', sha256='8c37acfd1c33aba845f2e0302ef7266cad31cba503cc990a48684659acb7b91d')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-keyvault/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-keyvault/package.py
index 5273aec0ff..7a8f3bef2f 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-keyvault/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-keyvault/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtKeyvault(PythonPackage):
"""Microsoft Azure Key Vault Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-keyvault/azure-mgmt-keyvault-2.2.0.zip"
+ pypi = "azure-mgmt-keyvault/azure-mgmt-keyvault-2.2.0.zip"
version('2.2.0', sha256='1883e12eeb5819064dc52bf3a3ade05c791f4b66e4aeec948bda28df6ce2bce4')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-kusto/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-kusto/package.py
index faadc899cf..46a66a3ce0 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-kusto/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-kusto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtKusto(PythonPackage):
"""Microsoft Azure Kusto Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-kusto/azure-mgmt-kusto-0.9.0.zip"
+ pypi = "azure-mgmt-kusto/azure-mgmt-kusto-0.9.0.zip"
version('0.9.0', sha256='9210db89fa18ee8ed53339cd63bbe6fe1d9624cd793b54b7451ddbda8ae92ef3')
version('0.3.0', sha256='9eb8b7781fd4410ee9e207cd0c3983baf9e58414b5b4a18849d09856e36bacde')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-loganalytics/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-loganalytics/package.py
index 925db35fa1..c3b68318dc 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-loganalytics/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-loganalytics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtLoganalytics(PythonPackage):
"""Microsoft Azure Log Analytics Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-loganalytics/azure-mgmt-loganalytics-0.7.0.zip"
+ pypi = "azure-mgmt-loganalytics/azure-mgmt-loganalytics-0.7.0.zip"
version('0.7.0', sha256='50fb7f714685d170ce9607e3c30488e194015845ef7f0a717b80609837a6c2a2')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-managedservices/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-managedservices/package.py
index d7ac227ef3..c031eade9d 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-managedservices/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-managedservices/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtManagedservices(PythonPackage):
"""Microsoft Azure Managed Services Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-managedservices/azure-mgmt-managedservices-1.0.0.zip"
+ pypi = "azure-mgmt-managedservices/azure-mgmt-managedservices-1.0.0.zip"
version('1.0.0', sha256='fed8399fc6773aada37c1d0496a46f59410d77c9494d0ca5967c531c3376ad19')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-managementgroups/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-managementgroups/package.py
index 6ce865aaba..2ac5535384 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-managementgroups/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-managementgroups/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtManagementgroups(PythonPackage):
"""Microsoft Azure Management Groups Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-managementgroups/azure-mgmt-managementgroups-0.2.0.zip"
+ pypi = "azure-mgmt-managementgroups/azure-mgmt-managementgroups-0.2.0.zip"
version('0.2.0', sha256='3d5237947458dc94b4a392141174b1c1258d26611241ee104e9006d1d798f682')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-maps/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-maps/package.py
index 8448f6fde4..60f3ec3909 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-maps/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-maps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtMaps(PythonPackage):
"""Microsoft Azure Maps Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-maps/azure-mgmt-maps-0.1.0.zip"
+ pypi = "azure-mgmt-maps/azure-mgmt-maps-0.1.0.zip"
version('0.1.0', sha256='c120e210bb61768da29de24d28b82f8d42ae24e52396eb6569b499709e22f006')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-marketplaceordering/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-marketplaceordering/package.py
index a09eaf331c..1e83ee1596 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-marketplaceordering/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-marketplaceordering/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtMarketplaceordering(PythonPackage):
"""Microsoft Azure Market Place Ordering Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-marketplaceordering/azure-mgmt-marketplaceordering-0.2.1.zip"
+ pypi = "azure-mgmt-marketplaceordering/azure-mgmt-marketplaceordering-0.2.1.zip"
version('0.2.1', sha256='dc765cde7ec03efe456438c85c6207c2f77775a8ce8a7adb19b0df5c5dc513c2')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-media/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-media/package.py
index 7ef8dd5201..9cbd96be7d 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-media/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-media/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtMedia(PythonPackage):
"""Microsoft Azure Media Services Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-media/azure-mgmt-media-2.2.0.zip"
+ pypi = "azure-mgmt-media/azure-mgmt-media-2.2.0.zip"
version('2.2.0', sha256='0adeee9e654a9011f5107def06fea6838864a3514a1e5a9ed495f3a56a687cc7')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-monitor/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-monitor/package.py
index 681dbf6c22..013d79c517 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-monitor/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-monitor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtMonitor(PythonPackage):
"""Microsoft Azure Monitor Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-monitor/azure-mgmt-monitor-0.11.0.zip"
+ pypi = "azure-mgmt-monitor/azure-mgmt-monitor-0.11.0.zip"
version('0.11.0', sha256='c6e1fe83dd2ddffa7f6d90c7aa63b3128042396a3893c14dc4816ad28cb15016')
version('0.10.0', sha256='d57d604cc1a7a9ce35eb7cf8a00d4924887c688aa78dc035ea1f80066b297464')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-msi/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-msi/package.py
index abdbdc640a..ddc265158b 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-msi/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-msi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtMsi(PythonPackage):
"""Microsoft Azure MSI Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-msi/azure-mgmt-msi-1.0.0.zip"
+ pypi = "azure-mgmt-msi/azure-mgmt-msi-1.0.0.zip"
version('1.0.0', sha256='d46f3aab25db3dad520e4055c1d67afe4fcc6d66335c762134e60f82265f8f58')
version('0.2.0', sha256='8622bc9a164169a0113728ebe7fd43a88189708ce6e10d4507247d6907987167')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-netapp/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-netapp/package.py
index 401b2078c3..e8422694cc 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-netapp/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-netapp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtNetapp(PythonPackage):
"""Microsoft Azure NetApp Files Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-netapp/azure-mgmt-netapp-0.11.0.zip"
+ pypi = "azure-mgmt-netapp/azure-mgmt-netapp-0.11.0.zip"
version('0.11.0', sha256='621a76b06c97e858d49b68953e66eb718ac24f91aa6bf090f32a335a38f02305')
version('0.8.0', sha256='67df7c7391c2179423a95927a639492c3a177bff8f3a80e4b2d666a86e2d6f6d')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-network/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-network/package.py
index 549160d7ea..b4f0403f54 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-network/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-network/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtNetwork(PythonPackage):
"""Microsoft Azure Network Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-network/azure-mgmt-network-11.0.0.zip"
+ pypi = "azure-mgmt-network/azure-mgmt-network-11.0.0.zip"
version('11.0.0', sha256='7fdfc631c660cb173eee88abbb7b8be7742f91b522be6017867f217409cd69bc')
version('10.2.0', sha256='d50c74cdc1c9be6861ddef9adffd3b05afc5a5092baf0209eea30f4439cba2d9')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-nspkg/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-nspkg/package.py
index 4c4dda2d0d..0fc10037e9 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-nspkg/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-nspkg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtNspkg(PythonPackage):
"""Microsoft Azure Resource Management Namespace Package [Internal]."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-nspkg/azure-mgmt-nspkg-3.0.2.zip"
+ pypi = "azure-mgmt-nspkg/azure-mgmt-nspkg-3.0.2.zip"
version('3.0.2', sha256='8b2287f671529505b296005e6de9150b074344c2c7d1c805b3f053d081d58c52')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-policyinsights/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-policyinsights/package.py
index c0532b307a..95ac19a79e 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-policyinsights/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-policyinsights/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtPolicyinsights(PythonPackage):
"""Microsoft Azure Policy Insights Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-policyinsights/azure-mgmt-policyinsights-0.5.0.zip"
+ pypi = "azure-mgmt-policyinsights/azure-mgmt-policyinsights-0.5.0.zip"
version('0.5.0', sha256='ed229e3845c477e88dde413825d4fba0d38b3a5ffab4e694c7d0da995f3db0f3')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-privatedns/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-privatedns/package.py
index 5aa65aec57..5d18ecef62 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-privatedns/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-privatedns/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtPrivatedns(PythonPackage):
"""Microsoft Azure DNS Private Zones Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-privatedns/azure-mgmt-privatedns-0.1.0.zip"
+ pypi = "azure-mgmt-privatedns/azure-mgmt-privatedns-0.1.0.zip"
version('0.1.0', sha256='d29cfd8cec806e06673d9382d3f5766fc65d9a9de75b424705094a34a7db8d23')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-rdbms/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-rdbms/package.py
index c375a82622..3d0e8ca4fa 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-rdbms/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-rdbms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtRdbms(PythonPackage):
"""Microsoft Azure RDBMS Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-rdbms/azure-mgmt-rdbms-2.2.0.zip"
+ pypi = "azure-mgmt-rdbms/azure-mgmt-rdbms-2.2.0.zip"
version('2.2.0', sha256='f93344897a9bfa6ebc57dd0c10ad79602ff7965c322c65115e3f4b8584bbe1c7')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservices/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservices/package.py
index 67a5987b8f..ec590b3a56 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservices/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservices/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtRecoveryservices(PythonPackage):
"""Microsoft Azure Recovery Services Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-recoveryservices/azure-mgmt-recoveryservices-0.5.0.zip"
+ pypi = "azure-mgmt-recoveryservices/azure-mgmt-recoveryservices-0.5.0.zip"
version('0.5.0', sha256='3c90e6b2e358dbe6d5c6d7204955bdf52c3e977c6f8b727cbbb8811427d7fd52')
version('0.4.0', sha256='e1e794760232239f8a9328d5de1740565ff70d1612a2921c9609746ba5671e6c')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservicesbackup/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservicesbackup/package.py
index 96b755acef..2a03def283 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservicesbackup/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-recoveryservicesbackup/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtRecoveryservicesbackup(PythonPackage):
Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-recoveryservicesbackup/azure-mgmt-recoveryservicesbackup-0.8.0.zip"
+ pypi = "azure-mgmt-recoveryservicesbackup/azure-mgmt-recoveryservicesbackup-0.8.0.zip"
version('0.8.0', sha256='a0ee89691b21945cc4b892a9194320f50c1cd242d98f00a82d7e3848c28517a5')
version('0.6.0', sha256='4df62479c90a6f93e7689f9d58e0a139899f0407f5e3298d5ce014442599428f')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-redhatopenshift/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-redhatopenshift/package.py
index 6503254cd8..1056c043e1 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-redhatopenshift/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-redhatopenshift/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtRedhatopenshift(PythonPackage):
"""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-redhatopenshift/azure-mgmt-redhatopenshift-0.1.0.zip"
+ pypi = "azure-mgmt-redhatopenshift/azure-mgmt-redhatopenshift-0.1.0.zip"
version('0.1.0', sha256='565afbc63f5283f37c76135174f2ca20dd417da3e24b3fb1e132c4a0e2a2c5bc')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-redis/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-redis/package.py
index 90d0e95241..99875a7902 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-redis/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-redis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtRedis(PythonPackage):
"""Microsoft Azure Redis Cache Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-redis/azure-mgmt-redis-6.0.0.zip"
+ pypi = "azure-mgmt-redis/azure-mgmt-redis-6.0.0.zip"
# Release candidate needed for py-azure-cli
version('7.0.0rc1', sha256='d3cc259c507b79962495ed00d0a3432a45e4e90a0fb48b49e80d51cdc398dc20')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-relay/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-relay/package.py
index fee12b519b..7eea1a44f0 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-relay/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-relay/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtRelay(PythonPackage):
"""Microsoft Azure Relay Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-relay/azure-mgmt-relay-0.2.0.zip"
+ pypi = "azure-mgmt-relay/azure-mgmt-relay-0.2.0.zip"
version('0.2.0', sha256='a7e8341b2920d1d45bdf73d2b7825c44427d33fb0d820aceb11c94432323bf68')
version('0.1.0', sha256='d9f987cf2998b8a354f331b2a71082c049193f1e1cd345812e14b9b821365acb')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-reservations/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-reservations/package.py
index b14a6d83dc..303e51db0a 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-reservations/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-reservations/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtReservations(PythonPackage):
"""Microsoft Azure Reservations Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-reservations/azure-mgmt-reservations-0.7.0.zip"
+ pypi = "azure-mgmt-reservations/azure-mgmt-reservations-0.7.0.zip"
version('0.7.0', sha256='f65c1985a47e0ac55e7d5d9cc1bd5e95335a111566edc289d460aa2bc8f80991')
version('0.6.0', sha256='83a9a70d6fd78b8b3e92ca64bbc1fde8d1bc5e2efea54076052c51c946b4cc9b')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-resource/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-resource/package.py
index f22f77fd46..4fd05cf350 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-resource/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-resource/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtResource(PythonPackage):
"""Microsoft Azure Resource Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-resource/azure-mgmt-resource-10.0.0.zip"
+ pypi = "azure-mgmt-resource/azure-mgmt-resource-10.0.0.zip"
version('10.0.0', sha256='bd9a3938f5423741329436d2da09693845c2fad96c35fadbd7c5ae5213208345')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-search/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-search/package.py
index 42e7eae43d..1444f58443 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-search/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-search/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtSearch(PythonPackage):
"""Microsoft Azure Search Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-search/azure-mgmt-search-2.1.0.zip"
+ pypi = "azure-mgmt-search/azure-mgmt-search-2.1.0.zip"
version('2.1.0', sha256='92a40a1a7a9e3a82b6fa302042799e8d5a67d3996c20835af72afc14f1610501')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-security/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-security/package.py
index 27778ebcba..191dcd3345 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-security/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-security/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtSecurity(PythonPackage):
"""Microsoft Azure Security Center Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-security/azure-mgmt-security-0.4.1.zip"
+ pypi = "azure-mgmt-security/azure-mgmt-security-0.4.1.zip"
version('0.4.1', sha256='391c8df5400485049a6c19d50e536304c186bb64fd569eec0c6d01d20220ee21')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-servicebus/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-servicebus/package.py
index 22fba6dcf8..8890fab404 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-servicebus/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-servicebus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtServicebus(PythonPackage):
"""Microsoft Azure Service Bus Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-servicebus/azure-mgmt-servicebus-0.6.0.zip"
+ pypi = "azure-mgmt-servicebus/azure-mgmt-servicebus-0.6.0.zip"
version('0.6.0', sha256='f20920b8fb119ef4abeda4d2dac765a4fc48cd0bcf30c27f8c4cc6d890bc08b1')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-servicefabric/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-servicefabric/package.py
index 519f7c632f..d8a6de79d4 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-servicefabric/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-servicefabric/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtServicefabric(PythonPackage):
"""Microsoft Azure Service Fabric Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-servicefabric/azure-mgmt-servicefabric-0.4.0.zip"
+ pypi = "azure-mgmt-servicefabric/azure-mgmt-servicefabric-0.4.0.zip"
version('0.4.0', sha256='a2cbd2797e796a550a93d37229b2ded22765f50166730a63c8e20a27677e28f4')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-signalr/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-signalr/package.py
index 298f1b7b05..19797f4d56 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-signalr/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-signalr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtSignalr(PythonPackage):
"""Microsoft Azure SignalR Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-signalr/azure-mgmt-signalr-0.4.0.zip"
+ pypi = "azure-mgmt-signalr/azure-mgmt-signalr-0.4.0.zip"
version('0.4.0', sha256='6503ddda9d6f4b634dfeb8eb4bcd14ede5e0900585f6c83bf9010cf82215c126')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-sql/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-sql/package.py
index 8bfe3781bb..524886b480 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-sql/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-sql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtSql(PythonPackage):
"""Microsoft Azure SQL Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-sql/azure-mgmt-sql-0.19.0.zip"
+ pypi = "azure-mgmt-sql/azure-mgmt-sql-0.19.0.zip"
version('0.19.0', sha256='694649d4c9c5f89e543f23ec10e450b6382b2f1bc5843ef266cfc302276038c6')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-sqlvirtualmachine/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-sqlvirtualmachine/package.py
index 03565edb89..c5ac853281 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-sqlvirtualmachine/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-sqlvirtualmachine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMgmtSqlvirtualmachine(PythonPackage):
Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-sqlvirtualmachine/azure-mgmt-sqlvirtualmachine-0.5.0.zip"
+ pypi = "azure-mgmt-sqlvirtualmachine/azure-mgmt-sqlvirtualmachine-0.5.0.zip"
version('0.5.0', sha256='b5a9423512a7b12844ac014366a1d53c81017a14f39676beedf004a532aa2aad')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-storage/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-storage/package.py
index f53822ef94..47f7bd3b57 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-storage/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-storage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtStorage(PythonPackage):
"""Microsoft Azure Storage Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-storage/azure-mgmt-storage-11.1.0.zip"
+ pypi = "azure-mgmt-storage/azure-mgmt-storage-11.1.0.zip"
version('11.1.0', sha256='ef23587c1b6dc0866ebf0e91e83ba05d7f7e4fea7951b704781b9cd9f5f27f1c')
version('11.0.0', sha256='f9791c2a84eee0a55bbf757632a2a4d1e102db958e75422d5e0e7306041129b8')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-trafficmanager/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-trafficmanager/package.py
index fa6dc2c756..2890197a95 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-trafficmanager/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-trafficmanager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtTrafficmanager(PythonPackage):
"""Microsoft Azure Traffic Manager Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-trafficmanager/azure-mgmt-trafficmanager-0.51.0.zip"
+ pypi = "azure-mgmt-trafficmanager/azure-mgmt-trafficmanager-0.51.0.zip"
version('0.51.0', sha256='fc8ae77022cfe52fda4379a2f31e0b857574d536e41291a7b569b5c0f4104186')
diff --git a/var/spack/repos/builtin/packages/py-azure-mgmt-web/package.py b/var/spack/repos/builtin/packages/py-azure-mgmt-web/package.py
index b4d7f2ba45..2fbee188d1 100644
--- a/var/spack/repos/builtin/packages/py-azure-mgmt-web/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-mgmt-web/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureMgmtWeb(PythonPackage):
"""Microsoft Azure Web Apps Management Client Library for Python."""
homepage = "https://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-mgmt-web/azure-mgmt-web-0.47.0.zip"
+ pypi = "azure-mgmt-web/azure-mgmt-web-0.47.0.zip"
version('0.47.0', sha256='789a328e2a60df48a82452ca6fbc1a7b4adf3c38d4701d278efe4e81cf21cce8')
diff --git a/var/spack/repos/builtin/packages/py-azure-multiapi-storage/package.py b/var/spack/repos/builtin/packages/py-azure-multiapi-storage/package.py
index 5d5a8442b5..06c3892b94 100644
--- a/var/spack/repos/builtin/packages/py-azure-multiapi-storage/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-multiapi-storage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyAzureMultiapiStorage(PythonPackage):
version support."""
homepage = "https://github.com/Azure/azure-multiapi-storage-python"
- url = "https://pypi.io/packages/source/a/azure-multiapi-storage/azure-multiapi-storage-0.3.5.tar.gz"
+ pypi = "azure-multiapi-storage/azure-multiapi-storage-0.3.5.tar.gz"
version('0.3.5', sha256='71c238c785786a159b3ffd587a5e7fa1d9a517b66b592ae277fed73a9fbfa2b0')
diff --git a/var/spack/repos/builtin/packages/py-azure-nspkg/package.py b/var/spack/repos/builtin/packages/py-azure-nspkg/package.py
index 8e1b468565..a74afd4925 100644
--- a/var/spack/repos/builtin/packages/py-azure-nspkg/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-nspkg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureNspkg(PythonPackage):
"""Microsoft Azure Namespace Package [Internal]."""
homepage = "hhttps://github.com/Azure/azure-sdk-for-python"
- url = "https://pypi.io/packages/source/a/azure-nspkg/azure-nspkg-3.0.2.zip"
+ pypi = "azure-nspkg/azure-nspkg-3.0.2.zip"
version('3.0.2', sha256='e7d3cea6af63e667d87ba1ca4f8cd7cb4dfca678e4c55fc1cedb320760e39dd0')
diff --git a/var/spack/repos/builtin/packages/py-azure-storage-common/package.py b/var/spack/repos/builtin/packages/py-azure-storage-common/package.py
index 70902f28d9..f98a0a281f 100644
--- a/var/spack/repos/builtin/packages/py-azure-storage-common/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-storage-common/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureStorageCommon(PythonPackage):
"""Microsoft Azure Storage Common Client Library for Python."""
homepage = "https://github.com/Azure/azure-storage-python"
- url = "https://pypi.io/packages/source/a/azure-storage-common/azure-storage-common-2.1.0.tar.gz"
+ pypi = "azure-storage-common/azure-storage-common-2.1.0.tar.gz"
version('2.1.0', sha256='ccedef5c67227bc4d6670ffd37cec18fb529a1b7c3a5e53e4096eb0cf23dc73f')
version('1.4.2', sha256='4ec87c7537d457ec95252e0e46477e2c1ccf33774ffefd05d8544682cb0ae401')
diff --git a/var/spack/repos/builtin/packages/py-azure-storage-nspkg/package.py b/var/spack/repos/builtin/packages/py-azure-storage-nspkg/package.py
index da8878813f..eb495ef64e 100644
--- a/var/spack/repos/builtin/packages/py-azure-storage-nspkg/package.py
+++ b/var/spack/repos/builtin/packages/py-azure-storage-nspkg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyAzureStorageNspkg(PythonPackage):
"""Microsoft Azure Storage Namespace Package."""
homepage = "https://github.com/Azure/azure-storage-python"
- url = "https://pypi.io/packages/source/a/azure-storage-nspkg/azure-storage-nspkg-3.1.0.tar.gz"
+ pypi = "azure-storage-nspkg/azure-storage-nspkg-3.1.0.tar.gz"
version('3.1.0', sha256='6f3bbe8652d5f542767d8433e7f96b8df7f518774055ac7c92ed7ca85f653811')
diff --git a/var/spack/repos/builtin/packages/py-azureml-automl-core/package.py b/var/spack/repos/builtin/packages/py-azureml-automl-core/package.py
index 9a50fbe3cc..15000c3ce4 100644
--- a/var/spack/repos/builtin/packages/py-azureml-automl-core/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-automl-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class PyAzuremlAutomlCore(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_automl_core/azureml_automl_core-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='1fa4a900856b15e1ec9a6bb949946ed0c873a5a54da3db592f03dbb46a117ceb', expand=False)
version('1.11.0', sha256='da1b9cef9aabbfaee69a19d5e15f5a911eefbd126546738343a78c032860b5a5', expand=False)
version('1.8.0', sha256='58ce54b01570996cda860c0c80693b8db19324785a356573f105afeaa31cae6c', expand=False)
@@ -18,6 +19,9 @@ class PyAzuremlAutomlCore(Package):
depends_on('python@3.5:3.999', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('py-azureml-dataset-runtime@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-telemetry@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-dataset-runtime@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-telemetry@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-azureml-core/package.py b/var/spack/repos/builtin/packages/py-azureml-core/package.py
index 673b7542de..caa3786dd4 100644
--- a/var/spack/repos/builtin/packages/py-azureml-core/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class PyAzuremlCore(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_core/azureml_core-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='0965d0741e39cdb95cff5880dbf1a55fdd87cd9fc316884f965668e6cc36e628', expand=False)
version('1.11.0', sha256='df8a01b04bb156852480de0bdd78434ed84f386e1891752bdf887faeaa2ca417', expand=False)
version('1.8.0', sha256='a0f2b0977f18fb7dcb88c314594a4a85c636a36be3d582be1cae25655fea6105', expand=False)
@@ -23,29 +24,29 @@ class PyAzuremlCore(Package):
depends_on('py-pytz', type=('build', 'run'))
depends_on('py-backports-tempfile', type=('build', 'run'))
depends_on('py-pathspec', type=('build', 'run'))
- depends_on('py-requests@2.19.1:', type=('build', 'run'))
- depends_on('py-azure-mgmt-resource@1.2.1:', type=('build', 'run'))
+ depends_on('py-requests@2.19.1:2.999', type=('build', 'run'))
+ depends_on('py-azure-mgmt-resource@1.2.1:14.999', type=('build', 'run'))
depends_on('py-azure-mgmt-containerregistry@2.0.0:', type=('build', 'run'))
- depends_on('py-azure-mgmt-storage@1.5.0:', type=('build', 'run'))
- depends_on('py-azure-mgmt-keyvault@0.40.0:', type=('build', 'run'))
- depends_on('py-azure-mgmt-authorization@0.40.0:', type=('build', 'run'))
+ depends_on('py-azure-mgmt-storage@1.5.0:15.999', type=('build', 'run'))
+ depends_on('py-azure-mgmt-keyvault@0.40.0:6.999', type=('build', 'run'))
+ depends_on('py-azure-mgmt-authorization@0.40.0:0.999', type=('build', 'run'))
depends_on('py-azure-mgmt-network@10.0:10.999', when='@1.8.0', type=('build', 'run'))
- depends_on('py-azure-graphrbac@0.40.0:', type=('build', 'run'))
+ depends_on('py-azure-graphrbac@0.40.0:0.999', type=('build', 'run'))
depends_on('py-azure-common@1.1.12:', type=('build', 'run'))
depends_on('py-msrest@0.5.1:', type=('build', 'run'))
depends_on('py-msrestazure@0.4.33:', type=('build', 'run'))
depends_on('py-urllib3@1.23:', type=('build', 'run'))
- depends_on('py-cryptography@:1.8,2.3:', type=('build', 'run'))
+ depends_on('py-cryptography@:1.8,2.3:3.2', type=('build', 'run'))
depends_on('py-python-dateutil@2.7.3:', type=('build', 'run'))
depends_on('py-ndg-httpsclient', type=('build', 'run'))
depends_on('py-secretstorage', type=('build', 'run'))
- depends_on('py-ruamel-yaml@0.16.8:', type=('build', 'run'))
+ depends_on('py-ruamel-yaml@0.15.35:', type=('build', 'run'))
depends_on('py-jsonpickle', type=('build', 'run'))
depends_on('py-contextlib2', type=('build', 'run'))
depends_on('py-docker', type=('build', 'run'))
- depends_on('py-pyjwt', type=('build', 'run'))
+ depends_on('py-pyjwt@:2.999', type=('build', 'run'))
depends_on('py-adal@1.2.0:', type=('build', 'run'))
- depends_on('py-pyopenssl', type=('build', 'run'))
+ depends_on('py-pyopenssl@:20.999', type=('build', 'run'))
depends_on('py-jmespath', type=('build', 'run'))
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/py-azureml-dataprep-native/package.py b/var/spack/repos/builtin/packages/py-azureml-dataprep-native/package.py
index afd1a43272..551c210660 100644
--- a/var/spack/repos/builtin/packages/py-azureml-dataprep-native/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-dataprep-native/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,16 +12,45 @@ class PyAzuremlDataprepNative(Package):
homepage = "http://aka.ms/data-prep-sdk"
if sys.platform == 'darwin':
- version('14.2.1', sha256='0711ea6465a555d4ed052b7ecf3ed580d711ca7499a12be4c9736d5555ab2786', expand=False,
+ version('30.0.0-py3.9', sha256='eaf3fcd9f965e87b03fe89d7c6fe6abce53483a79afc963e4981061f4c250e85', expand=False,
+ url='https://pypi.io/packages/cp39/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp39-cp39-macosx_10_9_x86_64.whl')
+ version('30.0.0-py3.8', sha256='6772b638f9d03a041b17ce4343061f5d543019200904b9d361b2b2629c3595a7', expand=False, preferred=True,
+ url='https://pypi.io/packages/cp38/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp38-cp38-macosx_10_9_x86_64.whl')
+ version('30.0.0-py3.7', sha256='1fb47c48edf795aaa1b3e589a4d580fc61d639c0bb26519271736c72155d008e', expand=False,
+ url='https://pypi.io/packages/cp37/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp37-cp37m-macosx_10_9_x86_64.whl')
+ version('30.0.0-py3.6', sha256='bd81f0ac0df442b4e09bd2ee76ccff1279437b73e08324d9038c13a5e4708598', expand=False,
+ url='https://pypi.io/packages/cp36/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp36-cp36m-macosx_10_9_x86_64.whl')
+ version('30.0.0-py3.5', sha256='2d1702a2dd9b851ccba9d4624a240f5657f3f34a89977f01ee99f9ccaab905a9', expand=False,
+ url='https://pypi.io/packages/cp35/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp35-cp35m-macosx_10_9_x86_64.whl')
+
+ version('14.2.1-py3.7', sha256='0711ea6465a555d4ed052b7ecf3ed580d711ca7499a12be4c9736d5555ab2786', expand=False,
url='https://pypi.io/packages/cp37/a/azureml_dataprep_native/azureml_dataprep_native-14.2.1-cp37-cp37m-macosx_10_9_x86_64.whl')
elif sys.platform.startswith('linux'):
- version('14.2.1', sha256='0817ec5c378a9bcd1af8edda511ca9d02bdc7087e6f8802c459c9b8f3fde4ade', expand=False,
+ version('30.0.0-py3.9', sha256='b8673136948f682c84d047feacbfee436df053cba4f386f31c4c3a245a4e3646', expand=False,
+ url='https://pypi.io/packages/cp39/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp39-cp39-manylinux1_x86_64.whl')
+ version('30.0.0-py3.8', sha256='d07cf20f22b14c98576e135bbad9bb8aaa3108941d2beaadf050b4238bc93a18', expand=False, preferred=True,
+ url='https://pypi.io/packages/cp38/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp38-cp38-manylinux1_x86_64.whl')
+ version('30.0.0-py3.7', sha256='897063c21d7b1b8cb070f8992e78291c402559434e9d4a5bb85b595a5c676fe6', expand=False,
+ url='https://pypi.io/packages/cp37/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp37-cp37m-manylinux1_x86_64.whl')
+ version('30.0.0-py3.6', sha256='d2560d3f20cd3b8ad2d2159b1048b83dd330cf8c44aa8becedd6dcaf72876062', expand=False,
+ url='https://pypi.io/packages/cp36/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp36-cp36m-manylinux1_x86_64.whl')
+ version('30.0.0-py3.5', sha256='15b55d903d5688b5a9a290e388db62c8f3d042bc1796db44723f4455b7b18d07', expand=False,
+ url='https://pypi.io/packages/cp35/a/azureml_dataprep_native/azureml_dataprep_native-30.0.0-cp35-cp35m-manylinux1_x86_64.whl')
+
+ version('14.2.1-py3.7', sha256='0817ec5c378a9bcd1af8edda511ca9d02bdc7087e6f8802c459c9b8f3fde4ade', expand=False,
url='https://pypi.io/packages/cp37/a/azureml_dataprep_native/azureml_dataprep_native-14.2.1-cp37-cp37m-manylinux1_x86_64.whl')
extends('python')
- depends_on('python@3.7.0:3.7.999', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('python@3.9.0:3.9.999', when='@30.0.0-py3.9', type=('build', 'run'))
+ depends_on('python@3.8.0:3.8.999', when='@30.0.0-py3.8', type=('build', 'run'))
+ depends_on('python@3.7.0:3.7.999', when='@30.0.0-py3.7', type=('build', 'run'))
+ depends_on('python@3.6.0:3.6.999', when='@30.0.0-py3.6', type=('build', 'run'))
+ depends_on('python@3.5.0:3.5.999', when='@30.0.0-py3.5', type=('build', 'run'))
+
+ depends_on('python@3.7.0:3.7.999', when='@14.2.1-py3.7', type=('build', 'run'))
+
def install(self, spec, prefix):
pip = which('pip')
pip('install', self.stage.archive_file, '--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/py-azureml-dataprep-rslex/package.py b/var/spack/repos/builtin/packages/py-azureml-dataprep-rslex/package.py
new file mode 100644
index 0000000000..bb18b6ce47
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-azureml-dataprep-rslex/package.py
@@ -0,0 +1,78 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import sys
+import archspec
+
+from spack import *
+
+
+class PyAzuremlDataprepRslex(Package):
+ """Azure Machine Learning Data Prep RsLex is a Rust implementation of Data Prep's
+ capabilities to load, transform, and write data for machine learning workflows."""
+
+ homepage = "http://aka.ms/data-prep-sdk"
+
+ if sys.platform == 'darwin':
+ version('1.9.0-py3.9', sha256='9bdaa31d129dac19ee20d5a3aad1726397e90d8d741b4f6de4554040800fefe8', expand=False,
+ url='https://pypi.io/packages/cp39/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp39-cp39-macosx_10_9_x86_64.whl')
+ version('1.9.0-py3.8', sha256='9b2e741ac1c53d3f7e6061d264feccf157d97e404c772933a176e6021014484e', expand=False, preferred=True,
+ url='https://pypi.io/packages/cp38/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp38-cp38-macosx_10_9_x86_64.whl')
+ version('1.9.0-py3.7', sha256='9993b369fb9d94d885611859ee957582304c1d8953fc8b48567b786bbfd8062b', expand=False,
+ url='https://pypi.io/packages/cp37/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp37-cp37m-macosx_10_9_x86_64.whl')
+ version('1.9.0-py3.6', sha256='80d518774591deb2c8f1457708c10c9ba348407d7aa49e0710358f46846fcbef', expand=False,
+ url='https://pypi.io/packages/cp36/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp36-cp36m-macosx_10_9_x86_64.whl')
+ version('1.9.0-py3.5', sha256='91a5c09796e60570620efb7d66f05647557ec6d39aab8b22c0e13926c402ca5b', expand=False,
+ url='https://pypi.io/packages/cp35/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp35-cp35m-macosx_10_9_x86_64.whl')
+
+ version('1.8.0-py3.9', sha256='677c25a7e23ec7f91d25aa596f382f7f3b6d60fbc3258bead2b2a6aa42f3a16d', expand=False,
+ url='https://pypi.io/packages/cp39/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp39-cp39-macosx_10_9_x86_64.whl')
+ version('1.8.0-py3.8', sha256='d7f2dec06296544b1707f5b01c6a4eaad744b4abfe9e8e89830b561c84d95a7a', expand=False,
+ url='https://pypi.io/packages/cp38/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp38-cp38-macosx_10_9_x86_64.whl')
+ version('1.8.0-py3.7', sha256='8e9feb3187f11fb86f525bc88bf6a6171d7e7d6e2860411a5b82d1f3ecaa8ae8', expand=False,
+ url='https://pypi.io/packages/cp37/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp37-cp37m-macosx_10_9_x86_64.whl')
+ version('1.8.0-py3.6', sha256='f5f7c9af1f1ecfbfee0e5822db180de05c6f5aeed34f6d0b3fd26e210f476d3e', expand=False,
+ url='https://pypi.io/packages/cp36/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp36-cp36m-macosx_10_9_x86_64.whl')
+ version('1.8.0-py3.5', sha256='1c610a25a3e09d4ebb95c42baaa57b5c0c66e31522a6bff52dda0df2d6ac7f4d', expand=False,
+ url='https://pypi.io/packages/cp35/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp35-cp35m-macosx_10_9_x86_64.whl')
+ elif sys.platform.startswith('linux'):
+ version('1.9.0-py3.9', sha256='79d52bb427e3ca781a645c4f11f7a8e5e2c8f61e61bfc162b4062d8e47bcf3d6', expand=False,
+ url='https://pypi.io/packages/cp39/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp39-cp39-manylinux1_x86_64.whl')
+ version('1.9.0-py3.8', sha256='a52461103b45867dd919bab593bb6f2426c9b5f5a435081e82a3c57c54c3add6', expand=False, preferred=True,
+ url='https://pypi.io/packages/cp38/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp38-cp38-manylinux1_x86_64.whl')
+ version('1.9.0-py3.7', sha256='d7b6e15401b88cec2915b0bd6298ae7f54584d01ee14e4a24ffb950b7578bceb', expand=False,
+ url='https://pypi.io/packages/cp37/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp37-cp37m-manylinux1_x86_64.whl')
+ version('1.9.0-py3.6', sha256='2723bf56f2d11e5ee00c6619f2365bd594e85ba116ffc912a2433c52913d0890', expand=False,
+ url='https://pypi.io/packages/cp36/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp36-cp36m-manylinux1_x86_64.whl')
+ version('1.9.0-py3.5', sha256='d5c6d363da2b3ace1baa9ad3e645ad8a19fdacf0b95dd1f8b6ab19c4371cc10f', expand=False,
+ url='https://pypi.io/packages/cp35/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.9.0-cp35-cp35m-manylinux1_x86_64.whl')
+
+ version('1.8.0-py3.9', sha256='e251a077669703ca117b157b225fbc20832169f913476cf79c01a5c6f8ff7a50', expand=False,
+ url='https://pypi.io/packages/cp39/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp39-cp39-manylinux1_x86_64.whl')
+ version('1.8.0-py3.8', sha256='2ebfa164f0933a5cec383cd27ba10d33861a73237ef481ada5a9a822bb55514a', expand=False,
+ url='https://pypi.io/packages/cp38/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp38-cp38-manylinux1_x86_64.whl')
+ version('1.8.0-py3.7', sha256='0588c6e503635aa6d4c64f7bbb3a3be52679f24ac89e2c8d4e96fd991d7006a2', expand=False,
+ url='https://pypi.io/packages/cp37/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp37-cp37m-manylinux1_x86_64.whl')
+ version('1.8.0-py3.6', sha256='195507ba55aa5ac7c5d37d05b8ac25813add0da5cc9bd4a04f2cb5da984cb287', expand=False,
+ url='https://pypi.io/packages/cp36/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp36-cp36m-manylinux1_x86_64.whl')
+ version('1.8.0-py3.5', sha256='9dfbd1065030dee3aa45b6796c087acffb06cfcbe97cc877e255e21e320362be', expand=False,
+ url='https://pypi.io/packages/cp35/a/azureml_dataprep_rslex/azureml_dataprep_rslex-1.8.0-cp35-cp35m-manylinux1_x86_64.whl')
+
+ extends('python')
+ depends_on('py-pip', type='build')
+
+ depends_on('python@3.9.0:3.9.999', when='@1.9.0-py3.9,1.8.0-py3.9', type=('build', 'run'))
+ depends_on('python@3.8.0:3.8.999', when='@1.9.0-py3.8,1.8.0-py3.8', type=('build', 'run'))
+ depends_on('python@3.7.0:3.7.999', when='@1.9.0-py3.7,1.8.0-py3.7', type=('build', 'run'))
+ depends_on('python@3.6.0:3.6.999', when='@1.9.0-py3.6,1.8.0-py3.6', type=('build', 'run'))
+ depends_on('python@3.5.0:3.5.999', when='@1.9.0-py3.5,1.8.0-py3.5', type=('build', 'run'))
+
+ for t in set([str(x.family) for x in archspec.cpu.TARGETS.values()
+ if str(x.family) != 'x86_64']):
+ conflicts('target={0}:'.format(t), msg='py-azureml-dataprep-rslex is available x86_64 only')
+
+ def install(self, spec, prefix):
+ pip = which('pip')
+ pip('install', self.stage.archive_file, '--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/py-azureml-dataprep/package.py b/var/spack/repos/builtin/packages/py-azureml-dataprep/package.py
index 18a4dcfd72..50bf6be9ff 100644
--- a/var/spack/repos/builtin/packages/py-azureml-dataprep/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-dataprep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,8 @@ class PyAzuremlDataprep(Package):
homepage = "http://aka.ms/data-prep-sdk"
url = "https://pypi.io/packages/py3/a/azureml_dataprep/azureml_dataprep-2.0.2-py3-none-any.whl"
+ version('2.11.0', sha256='755c0d7cfe228705aee7adc97813fb6d7d6ecb048b66f47c1fd5897f2709c3a2', expand=False)
+ version('2.10.1', sha256='a36f807112ff1e64d21265b8e7f40154c93e3bead539e2a74c9d74200fd77c86', expand=False)
version('2.0.2', sha256='9b9e97d9ed29c0641d3ceb37745ff078143bd235c53df528f847ec0684c52f79', expand=False)
version('1.8.2', sha256='e53f3206f0bd4af8d5e7de3a94c2c6e662902b86e94a7b9d930e36329fe5820f', expand=False)
@@ -18,10 +20,15 @@ class PyAzuremlDataprep(Package):
extends('python')
depends_on('python@3:', type=('build', 'run'))
depends_on('py-pip', type='build')
+
depends_on('py-dotnetcore2@2.1.14:2.999', type=('build', 'run'))
- depends_on('py-azureml-dataprep-native@14.2.1:14.999', type=('build', 'run'))
+ depends_on('py-azureml-dataprep-native@30.0.0:30.999', when='@2.10.0:', type=('build', 'run'))
+ depends_on('py-azureml-dataprep-native@14.2.1:14.999', when='@:2.0.2', type=('build', 'run'))
+ depends_on('py-azureml-dataprep-rslex@1.9.0:1.9.999', when='@2.11.0:', type=('build', 'run'))
+ depends_on('py-azureml-dataprep-rslex@1.8.0:1.8.999', when='@2.10.1', type=('build', 'run'))
depends_on('py-cloudpickle@1.1.0:1.999', type=('build', 'run'))
- depends_on('py-azure-identity@1.2.0:1.2.999', type=('build', 'run'))
+ depends_on('py-azure-identity@1.2.0:1.4.999', when='@2.10.0:', type=('build', 'run'))
+ depends_on('py-azure-identity@1.2.0:1.2.999', when='@:2.0.2', type=('build', 'run'))
depends_on('py-fusepy@3.0.1:3.999', when='+fuse', type=('build', 'run'))
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/py-azureml-dataset-runtime/package.py b/var/spack/repos/builtin/packages/py-azureml-dataset-runtime/package.py
index e7849b8b7e..6005b50ba4 100644
--- a/var/spack/repos/builtin/packages/py-azureml-dataset-runtime/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-dataset-runtime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class PyAzuremlDatasetRuntime(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml-dataset-runtime/azureml_dataset_runtime-1.11.0.post1-py3-none-any.whl"
+ version('1.23.0', sha256='96ca73d03ffedc0dd336d9383d2e17cf74548a89fc7ca4c201c599817c97bbc6', expand=False)
version('1.11.0.post1', sha256='65c20f276399a7d406c4850af7a6f149472d301931fd1da6a60bad59d43fa47b', expand=False)
variant('fuse', default=False, description='Build with FUSE support')
@@ -18,8 +19,11 @@ class PyAzuremlDatasetRuntime(Package):
extends('python')
depends_on('python@3.0:3.999', type=('build', 'run'))
depends_on('py-pip', type='build')
- depends_on('py-azureml-dataprep@2.0.1:2.0.999', type=('build', 'run'))
- depends_on('py-pyarrow@0.17.0:0.999', type=('build', 'run'))
+ depends_on('py-azureml-dataprep@2.10.0:2.10.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-dataprep@2.0.1:2.0.999', when='@1.11.0.post1', type=('build', 'run'))
+ depends_on('py-pyarrow@0.17.0:1.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-pyarrow@0.17.0:0.999', when='@1.11.0.post1', type=('build', 'run'))
+ depends_on('py-numpy@:1.19.2,1.19.4:', when='@1.23.0:', type=('build', 'run'))
depends_on('py-fusepy@3.0.1:3.999', when='+fuse', type=('build', 'run'))
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/py-azureml-pipeline-core/package.py b/var/spack/repos/builtin/packages/py-azureml-pipeline-core/package.py
index 2df7e538ac..14ba81928b 100644
--- a/var/spack/repos/builtin/packages/py-azureml-pipeline-core/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-pipeline-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,7 @@ class PyAzuremlPipelineCore(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_pipeline_core/azureml_pipeline_core-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='347e3e41559879611d53eeff5c05dd133db6fa537edcf2b9f70d91aad461df02', expand=False)
version('1.11.0', sha256='98012195e3bba12bf42ac69179549038b3563b39e3dadab4f1d06407a00ad8b3', expand=False)
version('1.8.0', sha256='24e1c57a57e75f9d74ea6f45fa4e93c1ee3114c8ed9029d538f9cc8e4f8945b2', expand=False)
@@ -17,6 +18,8 @@ class PyAzuremlPipelineCore(Package):
depends_on('python@3.5:3.999', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('py-azureml-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-core@1.8.0:1.8.999', when='@1.8.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-azureml-pipeline-steps/package.py b/var/spack/repos/builtin/packages/py-azureml-pipeline-steps/package.py
index 5cb949660c..5ce52e7312 100644
--- a/var/spack/repos/builtin/packages/py-azureml-pipeline-steps/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-pipeline-steps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,7 @@ class PyAzuremlPipelineSteps(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_pipeline_steps/azureml_pipeline_steps-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='72154c2f75624a1e7500b8e2239ae1354eeedf66d2cabb11e213b7eb80aedddb', expand=False)
version('1.11.0', sha256='674317d9c74ec4cb05e443f50de1732e14dc4519cbe2743a44f8db0bc5e71214', expand=False)
version('1.8.0', sha256='3310674207ed457a26fb978e7168e400306c695f7f854f354dee9d5c7c81304c', expand=False)
@@ -17,6 +18,10 @@ class PyAzuremlPipelineSteps(Package):
depends_on('python@3:', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('py-azureml-train-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-train-automl-client@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-pipeline-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-train-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-train-automl-client@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-pipeline-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-azureml-pipeline/package.py b/var/spack/repos/builtin/packages/py-azureml-pipeline/package.py
index e66b510d68..902b197e90 100644
--- a/var/spack/repos/builtin/packages/py-azureml-pipeline/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-pipeline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class PyAzuremlPipeline(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_pipeline/azureml_pipeline-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='ed0fae96771840d3ffd63d63df1b1eed2f50c3b8dbe7b672a4f1ba6e66d0a392', expand=False)
version('1.11.0', sha256='8233c66b4120e86b9a9346608ca53bf48d5b9f0558300314034426dd0d7897d6', expand=False)
version('1.8.0', sha256='43ce39789d9a255f147311e40274b5f2571c7ef3b52e218f248724ccb377a02c', expand=False)
@@ -18,6 +19,9 @@ class PyAzuremlPipeline(Package):
depends_on('python@3:', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('py-azureml-pipeline-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-pipeline-steps@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-pipeline-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-pipeline-steps@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-azureml-sdk/package.py b/var/spack/repos/builtin/packages/py-azureml-sdk/package.py
index cd7f504fd3..730e4e5ffe 100644
--- a/var/spack/repos/builtin/packages/py-azureml-sdk/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-sdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,13 +12,21 @@ class PyAzuremlSdk(Package):
maintainers = ['adamjstewart']
+ version('1.23.0', sha256='b9520f426831acb99fafa1ecd154b6bfd4f73fbf71e918d819f9db4a75438ab9', expand=False)
version('1.11.0', sha256='d8c9d24ea90457214d798b0d922489863dad518adde3638e08ef62de28fb183a', expand=False)
version('1.8.0', sha256='61107db1403ce2c1a12064eb0fa31a1d075debbf32dd17cb93b7639b615b7839', expand=False)
extends('python')
- depends_on('python@3.5:3.999', type=('build', 'run'))
+ # https://github.com/Azure/MachineLearningNotebooks/issues/1285
+ depends_on('python@3.5:3.8.999', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('py-azureml-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-dataset-runtime@1.23.0:1.23.999 +fuse', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-train@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-train-automl-client@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-pipeline@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-dataset-runtime@1.11.0:1.11.999 +fuse', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-train@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-azureml-telemetry/package.py b/var/spack/repos/builtin/packages/py-azureml-telemetry/package.py
index 510ea5ec5d..6e838c0eba 100644
--- a/var/spack/repos/builtin/packages/py-azureml-telemetry/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-telemetry/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class PyAzuremlTelemetry(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_telemetry/azureml_telemetry-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='68f9aac77e468db80e60f75d0843536082e2884ab251b6d3054dd623bd9c9e0d', expand=False)
version('1.11.0', sha256='0d46c4a7bb8c0b188f1503504a6029384bc2237d82a131e7d1e9e89c3491b1fc', expand=False)
version('1.8.0', sha256='de657efe9773bea0de76c432cbab34501ac28606fe1b380d6883562ebda3d804', expand=False)
@@ -19,6 +20,8 @@ class PyAzuremlTelemetry(Package):
depends_on('py-pip', type='build')
depends_on('py-applicationinsights', type=('build', 'run'))
+ depends_on('py-azureml-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-core@1.8.0:1.8.999', when='@1.8.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-azureml-train-automl-client/package.py b/var/spack/repos/builtin/packages/py-azureml-train-automl-client/package.py
index 51f977dcf8..dec7a98dbf 100644
--- a/var/spack/repos/builtin/packages/py-azureml-train-automl-client/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-train-automl-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class PyAzuremlTrainAutomlClient(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_train_automl_client/azureml_train_automl_client-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='ac5f1ce9b04b4e61e2e28e0fa8d2d8e47937a546f624d1cd3aa6bc4f9110ecbe', expand=False)
version('1.11.0', sha256='3184df60a46917e92140a299aecb54591b19df490a3f4f571ff1f92c5e70a715', expand=False)
version('1.8.0', sha256='562300095db6c4dea7b052e255c53dd95c4c3d0589a828b545497fe1ca7e9677', expand=False)
@@ -19,6 +20,11 @@ class PyAzuremlTrainAutomlClient(Package):
depends_on('python@3.5:3.999', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('py-azureml-automl-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-dataset-runtime@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-telemetry@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-automl-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-dataset-runtime@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-azureml-train-core/package.py b/var/spack/repos/builtin/packages/py-azureml-train-core/package.py
index b15cd2e82b..0109a28056 100644
--- a/var/spack/repos/builtin/packages/py-azureml-train-core/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-train-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class PyAzuremlTrainCore(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_train_core/azureml_train_core-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='5c384ea0bea3ecd8bf2a1832dda906fd183cf2a03ad3372cb824ce8fa417979e', expand=False)
version('1.11.0', sha256='1b5fd813d21e75cd522d3a078eba779333980a309bcff6fc72b74ddc8e7a26f1', expand=False)
version('1.8.0', sha256='5a8d90a08d4477527049d793feb40d07dc32fafc0e4e57b4f0729d3c50b408a2', expand=False)
@@ -18,6 +19,10 @@ class PyAzuremlTrainCore(Package):
depends_on('python@3.5:3.999', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('py-azureml-train-restclients-hyperdrive@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+ depends_on('py-azureml-telemetry@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-train-restclients-hyperdrive@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-telemetry@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-azureml-train-restclients-hyperdrive/package.py b/var/spack/repos/builtin/packages/py-azureml-train-restclients-hyperdrive/package.py
index 36ce557724..a7159acaf9 100644
--- a/var/spack/repos/builtin/packages/py-azureml-train-restclients-hyperdrive/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-train-restclients-hyperdrive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,7 @@ class PyAzuremlTrainRestclientsHyperdrive(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_train_restclients_hyperdrive/azureml_train_restclients_hyperdrive-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='8ecee0cdb92a4a431b778ebcc7f9fe7c5bf63ea4cae9caa687980bc34ae3a42c', expand=False)
version('1.11.0', sha256='8bc6f9676a9f75e6ee06d201c418ea904c24e854f26cf799b08c259c3ac92d13', expand=False)
version('1.8.0', sha256='1633c7eb0fd96714f54f72072ccf1c5ee1ef0a8ba52680793f20d27e0fd43c87', expand=False)
diff --git a/var/spack/repos/builtin/packages/py-azureml-train/package.py b/var/spack/repos/builtin/packages/py-azureml-train/package.py
index c8917a5700..8f9f868d8f 100644
--- a/var/spack/repos/builtin/packages/py-azureml-train/package.py
+++ b/var/spack/repos/builtin/packages/py-azureml-train/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class PyAzuremlTrain(Package):
homepage = "https://docs.microsoft.com/en-us/azure/machine-learning/service/"
url = "https://pypi.io/packages/py3/a/azureml_train/azureml_train-1.11.0-py3-none-any.whl"
+ version('1.23.0', sha256='e16cb8673d9c9c70966c37c7362ceed3514e9797b0816c0aa449730da3b9c857', expand=False)
version('1.11.0', sha256='7800a3067979972b976c81082dc509e23c04405129cc1fdef0f9cd7895bcafc7', expand=False)
version('1.8.0', sha256='124e5b7d8d64bac61db022f305bd31c25e57fdcb4be93eefd4244a04a13deab3', expand=False)
@@ -19,6 +20,8 @@ class PyAzuremlTrain(Package):
depends_on('python@3.5:3.999', type=('build', 'run'))
depends_on('py-pip', type='build')
+ depends_on('py-azureml-train-core@1.23.0:1.23.999', when='@1.23.0', type=('build', 'run'))
+
depends_on('py-azureml-train-core@1.11.0:1.11.999', when='@1.11.0', type=('build', 'run'))
depends_on('py-azureml-train-core@1.8.0:1.8.999', when='@1.8.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-babel/package.py b/var/spack/repos/builtin/packages/py-babel/package.py
index f95746fe8f..976051f151 100644
--- a/var/spack/repos/builtin/packages/py-babel/package.py
+++ b/var/spack/repos/builtin/packages/py-babel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,7 @@ class PyBabel(PythonPackage):
emphasis on web-based applications."""
homepage = "http://babel.pocoo.org/en/latest/"
- url = "https://pypi.io/packages/source/B/Babel/Babel-2.7.0.tar.gz"
-
- import_modules = ['babel', 'babel.localtime', 'babel.messages']
+ pypi = "Babel/Babel-2.7.0.tar.gz"
version('2.7.0', sha256='e86135ae101e31e2c8ec20a4e0c5220f4eed12487d5cf3f78be7e98d3a57fc28')
version('2.6.0', sha256='8cba50f48c529ca3fa18cf81fa9403be176d374ac4d60738b839122dfaaa3d23')
@@ -24,5 +22,3 @@ class PyBabel(PythonPackage):
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-pytz@2015.7:', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-freezegun', type='test')
diff --git a/var/spack/repos/builtin/packages/py-backcall/package.py b/var/spack/repos/builtin/packages/py-backcall/package.py
index 084f6f833b..77c19b44d8 100644
--- a/var/spack/repos/builtin/packages/py-backcall/package.py
+++ b/var/spack/repos/builtin/packages/py-backcall/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyBackcall(PythonPackage):
"""Specifications for callback functions passed in to an API"""
homepage = "https://github.com/takluyver/backcall"
- url = "https://pypi.io/packages/source/b/backcall/backcall-0.1.0.tar.gz"
+ pypi = "backcall/backcall-0.1.0.tar.gz"
version('0.1.0', sha256='38ecd85be2c1e78f77fd91700c76e14667dc21e2713b63876c0eb901196e01e4')
diff --git a/var/spack/repos/builtin/packages/py-backports-abc/package.py b/var/spack/repos/builtin/packages/py-backports-abc/package.py
index 6457b6b320..695768f064 100644
--- a/var/spack/repos/builtin/packages/py-backports-abc/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-abc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-backports-functools-lru-cache/package.py b/var/spack/repos/builtin/packages/py-backports-functools-lru-cache/package.py
index aedc9c9ca7..ec8b9c9de0 100644
--- a/var/spack/repos/builtin/packages/py-backports-functools-lru-cache/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-functools-lru-cache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyBackportsFunctoolsLruCache(PythonPackage):
"""Backport of functools.lru_cache from Python 3.3"""
homepage = "https://github.com/jaraco/backports.functools_lru_cache"
- url = "https://pypi.io/packages/source/b/backports.functools_lru_cache/backports.functools_lru_cache-1.4.tar.gz"
+ pypi = "backports.functools_lru_cache/backports.functools_lru_cache-1.4.tar.gz"
py_namespace = 'backports'
diff --git a/var/spack/repos/builtin/packages/py-backports-lzma/package.py b/var/spack/repos/builtin/packages/py-backports-lzma/package.py
index b13c4167bb..899c33716f 100644
--- a/var/spack/repos/builtin/packages/py-backports-lzma/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-lzma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py b/var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py
index 43ea3b0cca..64da7c3c9e 100644
--- a/var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyBackportsShutilGetTerminalSize(PythonPackage):
"""A backport of the get_terminal_size function
from Python 3.3's shutil."""
- homepage = "https://pypi.python.org/pypi/backports.shutil_get_terminal_size"
- url = "https://pypi.io/packages/source/b/backports.shutil_get_terminal_size/backports.shutil_get_terminal_size-1.0.0.tar.gz"
+ pypi = "backports.shutil_get_terminal_size/backports.shutil_get_terminal_size-1.0.0.tar.gz"
py_namespace = 'backports'
diff --git a/var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py b/var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py
index 5a3559edef..977fea79c0 100644
--- a/var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyBackportsSslMatchHostname(PythonPackage):
"""The ssl.match_hostname() function from Python 3.5"""
- homepage = "https://pypi.python.org/pypi/backports.ssl_match_hostname"
- url = "https://pypi.io/packages/source/b/backports.ssl_match_hostname/backports.ssl_match_hostname-3.5.0.1.tar.gz"
+ pypi = "backports.ssl_match_hostname/backports.ssl_match_hostname-3.5.0.1.tar.gz"
py_namespace = 'backports'
diff --git a/var/spack/repos/builtin/packages/py-backports-tempfile/package.py b/var/spack/repos/builtin/packages/py-backports-tempfile/package.py
index b3771f02e1..3eefd9587c 100644
--- a/var/spack/repos/builtin/packages/py-backports-tempfile/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-tempfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyBackportsTempfile(PythonPackage):
"""
homepage = "https://github.com/PiDelport/backports.tempfile"
- url = "https://pypi.io/packages/source/b/backports.tempfile/backports.tempfile-1.0.tar.gz"
+ pypi = "backports.tempfile/backports.tempfile-1.0.tar.gz"
version('1.0', sha256='1c648c452e8770d759bdc5a5e2431209be70d25484e1be24876cf2168722c762')
diff --git a/var/spack/repos/builtin/packages/py-backports-weakref/package.py b/var/spack/repos/builtin/packages/py-backports-weakref/package.py
index ef88d79256..8879650884 100644
--- a/var/spack/repos/builtin/packages/py-backports-weakref/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-weakref/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyBackportsWeakref(PythonPackage):
"""Backports of new features in Python's weakref module"""
homepage = "https://github.com/PiDelport/backports.weakref"
- url = "https://pypi.io/packages/source/b/backports.weakref/backports.weakref-1.0.post1.tar.gz"
+ pypi = "backports.weakref/backports.weakref-1.0.post1.tar.gz"
version('1.0.post1', sha256='bc4170a29915f8b22c9e7c4939701859650f2eb84184aee80da329ac0b9825c2', preferred=True)
version('1.0rc1', sha256='8813bf712a66b3d8b85dc289e1104ed220f1878cf981e2fe756dfaabe9a82892')
diff --git a/var/spack/repos/builtin/packages/py-basemap/package.py b/var/spack/repos/builtin/packages/py-basemap/package.py
index 95dda66b30..23b1a64372 100644
--- a/var/spack/repos/builtin/packages/py-basemap/package.py
+++ b/var/spack/repos/builtin/packages/py-basemap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-bash-kernel/package.py b/var/spack/repos/builtin/packages/py-bash-kernel/package.py
new file mode 100644
index 0000000000..8d2b28af6b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-bash-kernel/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyBashKernel(PythonPackage):
+ """A Jupyter kernel for bash."""
+
+ homepage = "https://github.com/takluyver/bash_kernel"
+ pypi = "bash_kernel/bash_kernel-0.7.2.tar.gz"
+
+ version('0.7.2', sha256='a08c84eddd8179de5234105821fd5cc210015671a0bd3cd0bc4f631c475e1670')
+
+ depends_on('py-pexpect@4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-basis-set-exchange/package.py b/var/spack/repos/builtin/packages/py-basis-set-exchange/package.py
index 92cd2b6d72..891aa4084a 100644
--- a/var/spack/repos/builtin/packages/py-basis-set-exchange/package.py
+++ b/var/spack/repos/builtin/packages/py-basis-set-exchange/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,5 +29,3 @@ class PyBasisSetExchange(PythonPackage):
depends_on('py-jsonschema', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('python@3:', type=('build', 'run'))
- depends_on('py-pytest@4.0:', type='test')
- depends_on('py-pytest-cov', type='test')
diff --git a/var/spack/repos/builtin/packages/py-batchspawner/package.py b/var/spack/repos/builtin/packages/py-batchspawner/package.py
new file mode 100644
index 0000000000..5169641049
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-batchspawner/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyBatchspawner(PythonPackage):
+ """This is a custom spawner for Jupyterhub that is designed for
+ installations on clusters using batch scheduling software."""
+
+ homepage = "https://github.com/jupyterhub/batchspawner"
+ pypi = "batchspawner/batchspawner-1.1.0.tar.gz"
+
+ version('1.1.0', sha256='9bae72f7c1bd9bb11aa58ecc3bc9fae5475a10fdd92dc0c0d67fa7eb95c9dd3a')
+
+ depends_on('python@3.3:3.999', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-async-generator@1.8:', type=('build', 'run'))
+ depends_on('py-jinja2', type=('build', 'run'))
+ depends_on('py-jupyterhub@0.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-bayesian-optimization/package.py b/var/spack/repos/builtin/packages/py-bayesian-optimization/package.py
new file mode 100644
index 0000000000..6c21738d7a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-bayesian-optimization/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyBayesianOptimization(PythonPackage):
+ """Pure Python implementation of bayesian global
+ optimization with gaussian processes."""
+
+ homepage = "https://github.com/fmfn/BayesianOptimization"
+ pypi = 'bayesian-optimization/bayesian-optimization-1.2.0.tar.gz'
+
+ version('1.2.0', sha256='c2fd3af4b6cc24ee1c145295b2a900ffb9b455cad924e8185a8d5784712bc935')
+
+ depends_on('py-setuptools', type='build')
+ depends_on("py-numpy@1.9.0:", type=('build', 'run'))
+ depends_on("py-scipy@0.14.0:", type=('build', 'run'))
+ depends_on("py-scikit-learn@0.18.0:", type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-bcbio-gff/package.py b/var/spack/repos/builtin/packages/py-bcbio-gff/package.py
index 68e6abd7a3..4bb8588792 100644
--- a/var/spack/repos/builtin/packages/py-bcbio-gff/package.py
+++ b/var/spack/repos/builtin/packages/py-bcbio-gff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyBcbioGff(PythonPackage):
"""Read and write Generic Feature Format (GFF) with Biopython
integration."""
- homepage = "https://pypi.python.org/pypi/bcbio-gff/0.6.2"
- url = "https://pypi.io/packages/source/b/bcbio-gff/bcbio-gff-0.6.2.tar.gz"
+ pypi = "bcbio-gff/bcbio-gff-0.6.2.tar.gz"
version('0.6.2', sha256='c682dc46a90e9fdb124ab5723797a5f71b2e3534542ceff9f6572b64b9814e68')
diff --git a/var/spack/repos/builtin/packages/py-bcolz/package.py b/var/spack/repos/builtin/packages/py-bcolz/package.py
index 74791dcdc4..cab6554f96 100644
--- a/var/spack/repos/builtin/packages/py-bcolz/package.py
+++ b/var/spack/repos/builtin/packages/py-bcolz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,7 @@ class PyBcolz(PythonPackage):
"""
homepage = "https://github.com/Blosc/bcolz"
- url = "https://pypi.io/packages/source/b/bcolz/bcolz-1.2.1.tar.gz"
+ pypi = "bcolz/bcolz-1.2.1.tar.gz"
version('1.2.1', sha256='c017d09bb0cb5bbb07f2ae223a3f3638285be3b574cb328e91525b2880300bd1')
diff --git a/var/spack/repos/builtin/packages/py-bcrypt/package.py b/var/spack/repos/builtin/packages/py-bcrypt/package.py
index 1b64063991..f0e3513fc9 100644
--- a/var/spack/repos/builtin/packages/py-bcrypt/package.py
+++ b/var/spack/repos/builtin/packages/py-bcrypt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-beancount/package.py b/var/spack/repos/builtin/packages/py-beancount/package.py
new file mode 100644
index 0000000000..92460452fa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-beancount/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyBeancount(PythonPackage):
+ """A double-entry bookkeeping computer language that lets you define
+ financial transaction records in a text file, read them in memory,
+ generate a variety of reports from them, and provides a web
+ interface.."""
+
+ homepage = "http://furius.ca/beancount/"
+ pypi = "beancount/beancount-2.3.3.tar.gz"
+
+ version('2.3.3', sha256='d9a29839ea867d1dda7af1f4bf5d3959aa7c1574cd4a0bc86f69ee64c555c71c')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build'))
+
+ depends_on('py-bottle', type=('build', 'run'))
+ depends_on('py-lxml+htmlsoup', type=('build', 'run'))
+ depends_on('py-ply', type=('build', 'run'))
+ depends_on('py-python-dateutil', type=('build', 'run'))
+ depends_on('py-python-magic', type=('build', 'run'))
+ depends_on('py-beautifulsoup4', type=('build', 'run'))
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-chardet', type=('build', 'run'))
+ depends_on('py-google-api-python-client', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-beautifulsoup4/package.py b/var/spack/repos/builtin/packages/py-beautifulsoup4/package.py
index 5544150207..db9b938ae0 100644
--- a/var/spack/repos/builtin/packages/py-beautifulsoup4/package.py
+++ b/var/spack/repos/builtin/packages/py-beautifulsoup4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyBeautifulsoup4(PythonPackage):
of navigating, searching, and modifying the parse tree."""
homepage = "https://www.crummy.com/software/BeautifulSoup"
- url = "https://pypi.io/packages/source/b/beautifulsoup4/beautifulsoup4-4.8.0.tar.gz"
+ pypi = "beautifulsoup4/beautifulsoup4-4.8.0.tar.gz"
version('4.8.0', sha256='25288c9e176f354bf277c0a10aa96c782a6a18a17122dba2e8cec4a97e03343b')
version('4.5.3', sha256='b21ca09366fa596043578fd4188b052b46634d22059e68dd0077d9ee77e08a3e')
diff --git a/var/spack/repos/builtin/packages/py-bigfloat/package.py b/var/spack/repos/builtin/packages/py-bigfloat/package.py
new file mode 100644
index 0000000000..d6f709e769
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-bigfloat/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyBigfloat(PythonPackage):
+ """Arbitrary-precision correctly-rounded floating-point arithmetic, via MPFR."""
+
+ homepage = "http://github.com/mdickinson/bigfloat"
+ pypi = "bigfloat/bigfloat-0.4.0.tar.gz"
+
+ version('0.4.0', sha256='58b96bde872aca5989d13d82eba3acf2aa1b94e22117dd72a16ba5911b0c0cb8')
+
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('gmp', type='link')
+ depends_on('mpfr', type=('build', 'link'))
diff --git a/var/spack/repos/builtin/packages/py-billiard/package.py b/var/spack/repos/builtin/packages/py-billiard/package.py
index 93d717a9f9..3a4d4148af 100644
--- a/var/spack/repos/builtin/packages/py-billiard/package.py
+++ b/var/spack/repos/builtin/packages/py-billiard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyBilliard(PythonPackage):
"""Python multiprocessing fork with improvements and bugfixes"""
- homepage = "https://pypi.org/project/billiard/"
- url = "https://pypi.io/packages/source/b/billiard/billiard-3.5.0.5.tar.gz"
+ pypi = "billiard/billiard-3.5.0.5.tar.gz"
version('3.6.3.0', sha256='d91725ce6425f33a97dfa72fb6bfef0e47d4652acd98a032bd1a7fbf06d5fa6a')
version('3.6.1.0', sha256='b8809c74f648dfe69b973c8e660bcec00603758c9db8ba89d7719f88d5f01f26')
diff --git a/var/spack/repos/builtin/packages/py-binaryornot/package.py b/var/spack/repos/builtin/packages/py-binaryornot/package.py
index 9b096c9def..de4922c501 100644
--- a/var/spack/repos/builtin/packages/py-binaryornot/package.py
+++ b/var/spack/repos/builtin/packages/py-binaryornot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-bintrees/package.py b/var/spack/repos/builtin/packages/py-bintrees/package.py
index b832d60d87..7fbc6e2f26 100644
--- a/var/spack/repos/builtin/packages/py-bintrees/package.py
+++ b/var/spack/repos/builtin/packages/py-bintrees/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyBintrees(PythonPackage):
"""
homepage = "https://github.com/mozman/bintrees"
- url = "https://pypi.io/packages/source/b/bintrees/bintrees-2.0.7.zip"
+ pypi = "bintrees/bintrees-2.0.7.zip"
version('2.0.7', sha256='60675e6602cef094abcd38bf4aecc067d78ae2d5e1645615c789724542d11270')
diff --git a/var/spack/repos/builtin/packages/py-binwalk/package.py b/var/spack/repos/builtin/packages/py-binwalk/package.py
index fce4309425..b92a2751c5 100644
--- a/var/spack/repos/builtin/packages/py-binwalk/package.py
+++ b/var/spack/repos/builtin/packages/py-binwalk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyBinwalk(PythonPackage):
and extracting firmware images."""
homepage = "https://github.com/devttys0/binwalk"
- url = "https://pypi.io/packages/source/b/binwalk/binwalk-2.1.0.tar.gz"
+ pypi = "binwalk/binwalk-2.1.0.tar.gz"
version('2.1.0', sha256='218c8045c6cb3ed6e21814fb89cdb913808b02dfe5a6cc30f85f4a59e8129f6b')
diff --git a/var/spack/repos/builtin/packages/py-biom-format/package.py b/var/spack/repos/builtin/packages/py-biom-format/package.py
index fae9305010..a298bff954 100644
--- a/var/spack/repos/builtin/packages/py-biom-format/package.py
+++ b/var/spack/repos/builtin/packages/py-biom-format/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,20 +11,22 @@ class PyBiomFormat(PythonPackage):
a general-use format for representing biological sample by observation
contingency tables."""
- homepage = "https://pypi.python.org/pypi/biom-format/2.1.6"
- url = "https://pypi.io/packages/source/b/biom-format/biom-format-2.1.6.tar.gz"
+ pypi = "biom-format/biom-format-2.1.6.tar.gz"
+ version('2.1.10', sha256='f5a277a8144f0b114606852c42f657b9cfde44b3cefa0b2638ab1c1d5e1d0488')
+ version('2.1.9', sha256='18a6e4d4b4b2a6bf2d5544fa357ad168bedeac93f0837015ef9c72f41fa89491')
+ version('2.1.7', sha256='b47e54282ef13cddffdb00aea9183a87175a2372c91a915259086a3f444c42f4')
version('2.1.6', sha256='8eefc275a85cc937f6d6f408d91b7b45eae854cd5d1cbda411a3af51f5b49b0d')
- variant('h5py', default=True, description='For use with BIOM 2.0+ files')
-
+ depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('python@3:', type=('build', 'run'), when='@2.1.9:')
depends_on('py-setuptools', type=('build', 'run'))
- depends_on('py-cython', type='build')
- depends_on('py-h5py', type=('build', 'run'), when='+h5py')
- depends_on('py-click', type=('build', 'run'))
- depends_on('py-numpy@1.3.0:', type=('build', 'run'))
+ depends_on('py-cython@0.29:', type='build')
+ depends_on('py-h5py', type=('build', 'run'))
+ depends_on('py-click', type=('build', 'run'), when='@2.1.5:')
+ depends_on('py-numpy@1.9.2:', type=('build', 'run'))
depends_on('py-future@0.16.0:', type=('build', 'run'))
- depends_on('py-scipy@0.13.0:', type=('build', 'run'))
- depends_on('py-pandas@0.19.2:', type=('build', 'run'))
+ depends_on('py-scipy@1.3.1:', type=('build', 'run'))
+ depends_on('py-pandas@0.20.0:', type=('build', 'run'))
depends_on('py-six@1.10.0:', type=('build', 'run'))
- depends_on('py-pyqi', type=('build', 'run'))
+ depends_on('py-pyqi', type=('build', 'run'), when='^python@:2')
diff --git a/var/spack/repos/builtin/packages/py-biomine/package.py b/var/spack/repos/builtin/packages/py-biomine/package.py
index 8326bf8e99..8275ab3c48 100644
--- a/var/spack/repos/builtin/packages/py-biomine/package.py
+++ b/var/spack/repos/builtin/packages/py-biomine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-biopandas/package.py b/var/spack/repos/builtin/packages/py-biopandas/package.py
index 720bd34d28..93fb63e45a 100644
--- a/var/spack/repos/builtin/packages/py-biopandas/package.py
+++ b/var/spack/repos/builtin/packages/py-biopandas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyBiopandas(PythonPackage):
"""Working with molecular structures in pandas DataFrames"""
homepage = "http://rasbt.github.io/biopandas"
- url = "https://pypi.io/packages/source/b/biopandas/biopandas-0.2.5.tar.gz"
+ pypi = "biopandas/biopandas-0.2.5.tar.gz"
git = "https://github.com/rasbt/biopandas.git"
# Note that the source package on PyPi is broken as it
diff --git a/var/spack/repos/builtin/packages/py-biopython/package.py b/var/spack/repos/builtin/packages/py-biopython/package.py
index df5694de42..964904b568 100644
--- a/var/spack/repos/builtin/packages/py-biopython/package.py
+++ b/var/spack/repos/builtin/packages/py-biopython/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,9 +15,11 @@ class PyBiopython(PythonPackage):
homepage = "http://biopython.org/wiki/Main_Page"
url = "http://biopython.org/DIST/biopython-1.65.tar.gz"
+ version('1.78', sha256='1ee0a0b6c2376680fea6642d5080baa419fd73df104a62d58a8baf7a8bbe4564')
version('1.73', sha256='70c5cc27dc61c23d18bb33b6d38d70edc4b926033aea3b7434737c731c94a5e0')
version('1.70', sha256='4a7c5298f03d1a45523f32bae1fffcff323ea9dce007fb1241af092f5ab2e45b')
version('1.65', sha256='463cc81db84e9bfcdfb15629511c81ed556a6c0287e670dbfe80f03c65d2a88e')
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-setuptools', type='build')
+ depends_on('python@3.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-bitarray/package.py b/var/spack/repos/builtin/packages/py-bitarray/package.py
index e0efb22763..db9523c7f1 100644
--- a/var/spack/repos/builtin/packages/py-bitarray/package.py
+++ b/var/spack/repos/builtin/packages/py-bitarray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyBitarray(PythonPackage):
"""Efficient array of booleans - C extension"""
- homepage = "https://pypi.python.org/pypi/bitarray"
- url = "https://pypi.io/packages/source/b/bitarray/bitarray-0.8.1.tar.gz"
+ pypi = "bitarray/bitarray-0.8.1.tar.gz"
version('0.8.1', sha256='7da501356e48a83c61f479393681c1bc4b94e5a34ace7e08cb29e7dd9290ab18')
diff --git a/var/spack/repos/builtin/packages/py-bitstring/package.py b/var/spack/repos/builtin/packages/py-bitstring/package.py
index 7d96b435dd..e1e7f55fce 100644
--- a/var/spack/repos/builtin/packages/py-bitstring/package.py
+++ b/var/spack/repos/builtin/packages/py-bitstring/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyBitstring(PythonPackage):
"""Simple construction, analysis and modification of binary data."""
homepage = "http://pythonhosted.org/bitstring"
- url = "https://pypi.io/packages/source/b/bitstring/bitstring-3.1.5.zip"
+ pypi = "bitstring/bitstring-3.1.5.zip"
version('3.1.5', sha256='c163a86fcef377c314690051885d86b47419e3e1770990c212e16723c1c08faa')
diff --git a/var/spack/repos/builtin/packages/py-black/package.py b/var/spack/repos/builtin/packages/py-black/package.py
index 913b2592c8..b15f52f8da 100644
--- a/var/spack/repos/builtin/packages/py-black/package.py
+++ b/var/spack/repos/builtin/packages/py-black/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,18 +13,40 @@ class PyBlack(PythonPackage):
"""
homepage = "https://github.com/psf/black"
- url = "https://pypi.io/packages/source/b/black/black-18.9b0.tar.gz"
+ pypi = "black/black-20.8b1.tar.gz"
+ version('20.8b1', sha256='1c02557aa099101b9d21496f8a914e9ed2222ef70336404eeeac8edba836fbea')
version('19.3b0', sha256='68950ffd4d9169716bcb8719a56c07a2f4485354fec061cdd5910aa07369731c')
version('18.9b0', sha256='e030a9a28f542debc08acceb273f228ac422798e5215ba2a791a6ddeaaca22a5')
+ variant('d', default=False, description='enable blackd HTTP server')
+
depends_on('python@3.6.0:')
# Needs setuptools at runtime so that `import pkg_resources` succeeds
# See #8843 and #8689 for examples of setuptools added as a runtime dep
depends_on('py-setuptools', type=('build', 'run'))
# Translated from black's setup.py:
# https://github.com/ambv/black/blob/master/setup.py
- depends_on('py-attrs@18.1.0:', type=('build', 'run'))
depends_on('py-click@6.5:', type=('build', 'run'))
+ depends_on('py-click@7.1.2:', when='@20.8b1:', type=('build', 'run'))
+ depends_on('py-attrs@18.1.0:', when='@:20.8b0', type=('build', 'run'))
depends_on('py-appdirs', type=('build', 'run'))
depends_on('py-toml@0.9.4:', type=('build', 'run'))
+ depends_on('py-toml@0.10.1:', when='@20.8b1:', type=('build', 'run'))
+ depends_on('py-typed-ast@1.4.0:', when='@19.10b0:', type=('build', 'run'))
+ depends_on('py-regex@2020.1.8:', when='@20.8b0:', type=('build', 'run'))
+ depends_on('py-pathspec@0.6:0.999', when='@19.10b0:', type=('build', 'run'))
+ depends_on('py-dataclasses@0.6:', when='@20.8b0:^python@:3.6', type=('build', 'run'))
+ depends_on('py-typing-extensions@3.7.4:', when='@20.8b0:', type=('build', 'run'))
+ depends_on('py-mypy-extensions@0.4.3:', when='@20.8b0:', type=('build', 'run'))
+ depends_on('py-aiohttp@3.3.2:', when='+d', type=('build', 'run'))
+ depends_on('py-aiohttp-cors', when='+d', type=('build', 'run'))
+
+ @property
+ def import_modules(self):
+ modules = ['blib2to3', 'blib2to3.pgen2', 'black']
+
+ if '+d' in self.spec:
+ modules.append('blackd')
+
+ return modules
diff --git a/var/spack/repos/builtin/packages/py-bleach/package.py b/var/spack/repos/builtin/packages/py-bleach/package.py
index bf01b9f223..e9b260b8bb 100644
--- a/var/spack/repos/builtin/packages/py-bleach/package.py
+++ b/var/spack/repos/builtin/packages/py-bleach/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,12 @@ class PyBleach(PythonPackage):
"""An easy whitelist-based HTML-sanitizing tool."""
homepage = "http://github.com/mozilla/bleach"
- url = "https://pypi.io/packages/source/b/bleach/bleach-3.1.0.tar.gz"
+ pypi = "bleach/bleach-3.1.0.tar.gz"
version('3.1.0', sha256='3fdf7f77adcf649c9911387df51254b813185e32b2c6619f690b593a617e19fa')
version('1.5.0', sha256='978e758599b54cd3caa2e160d74102879b230ea8dc93871d0783721eef58bc65')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
- depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-six@1.9.0:', type=('build', 'run'))
depends_on('py-webencodings', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-blessed/package.py b/var/spack/repos/builtin/packages/py-blessed/package.py
index 45b5b3b84c..3ce9f3e8be 100644
--- a/var/spack/repos/builtin/packages/py-blessed/package.py
+++ b/var/spack/repos/builtin/packages/py-blessed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyBlessed(PythonPackage):
Python."""
homepage = "https://github.com/jquast/blessed"
- url = "https://pypi.io/packages/source/b/blessed/blessed-1.15.0.tar.gz"
+ pypi = "blessed/blessed-1.15.0.tar.gz"
version('1.15.0', sha256='777b0b6b5ce51f3832e498c22bc6a093b6b5f99148c7cbf866d26e2dec51ef21')
diff --git a/var/spack/repos/builtin/packages/py-blessings/package.py b/var/spack/repos/builtin/packages/py-blessings/package.py
index 9f563b308e..4dd301ece3 100644
--- a/var/spack/repos/builtin/packages/py-blessings/package.py
+++ b/var/spack/repos/builtin/packages/py-blessings/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyBlessings(PythonPackage):
"""A nicer, kinder way to write to the terminal """
homepage = "https://github.com/erikrose/blessings"
- url = "https://pypi.io/packages/source/b/blessings/blessings-1.6.tar.gz"
+ pypi = "blessings/blessings-1.6.tar.gz"
version('1.6', sha256='edc5713061f10966048bf6b40d9a514b381e0ba849c64e034c4ef6c1847d3007')
diff --git a/var/spack/repos/builtin/packages/py-blinker/package.py b/var/spack/repos/builtin/packages/py-blinker/package.py
index dd77fedbe0..26a0071fba 100644
--- a/var/spack/repos/builtin/packages/py-blinker/package.py
+++ b/var/spack/repos/builtin/packages/py-blinker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyBlinker(PythonPackage):
"""Fast, simple object-to-object and broadcast signaling"""
homepage = "https://pythonhosted.org/blinker/"
- url = "https://pypi.io/packages/source/b/blinker/blinker-1.4.tar.gz"
+ pypi = "blinker/blinker-1.4.tar.gz"
version('1.4', sha256='471aee25f3992bd325afa3772f1063dbdbbca947a041b8b89466dc00d606f8b6')
diff --git a/var/spack/repos/builtin/packages/py-blis/package.py b/var/spack/repos/builtin/packages/py-blis/package.py
index ce7f6c4c65..a296d0933a 100644
--- a/var/spack/repos/builtin/packages/py-blis/package.py
+++ b/var/spack/repos/builtin/packages/py-blis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,10 +9,9 @@ class PyBlis(PythonPackage):
without the tears"""
homepage = "https://github.com/explosion/cython-blis"
- url = "https://pypi.io/packages/source/b/blis/blis-0.4.1.tar.gz"
+ pypi = "blis/blis-0.4.1.tar.gz"
version('0.4.1', sha256='d69257d317e86f34a7f230a2fd1f021fd2a1b944137f40d8cdbb23bd334cd0c4')
depends_on('py-setuptools', type='build')
depends_on('py-numpy@1.15:', type=('build', 'run'))
- depends_on('py-hypothesis', type='test')
diff --git a/var/spack/repos/builtin/packages/py-blosc/package.py b/var/spack/repos/builtin/packages/py-blosc/package.py
index da185302ff..841e3ad5a3 100644
--- a/var/spack/repos/builtin/packages/py-blosc/package.py
+++ b/var/spack/repos/builtin/packages/py-blosc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,5 +19,3 @@ class PyBlosc(PythonPackage):
depends_on('python@3.6:', type=('build', 'run'))
depends_on('py-scikit-build', type='build')
# depends_on('c-blosc') # shipped internally
- depends_on('py-numpy', type='test')
- depends_on('py-psutil', type='test')
diff --git a/var/spack/repos/builtin/packages/py-bmap-tools/package.py b/var/spack/repos/builtin/packages/py-bmap-tools/package.py
index 9a3fe50d4b..e955abdd4a 100644
--- a/var/spack/repos/builtin/packages/py-bmap-tools/package.py
+++ b/var/spack/repos/builtin/packages/py-bmap-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-bokeh/package.py b/var/spack/repos/builtin/packages/py-bokeh/package.py
index 7b42fde368..b821319474 100644
--- a/var/spack/repos/builtin/packages/py-bokeh/package.py
+++ b/var/spack/repos/builtin/packages/py-bokeh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,12 @@ class PyBokeh(PythonPackage):
"""Statistical and novel interactive HTML plots for Python"""
homepage = "http://github.com/bokeh/bokeh"
- url = "https://pypi.io/packages/source/b/bokeh/bokeh-0.12.2.tar.gz"
+ pypi = "bokeh/bokeh-0.12.2.tar.gz"
version('1.3.4', sha256='e2d97bed5b199a10686486001fed5c854e4c04ebe28859923f27c52b93904754')
version('0.12.2', sha256='0a840f6267b6d342e1bd720deee30b693989538c49644142521d247c0f2e6939')
+ depends_on('py-setuptools', type='build', when="@1.3.4:")
depends_on('python@2.6:', type=('build', 'run'), when='@0.12.2')
depends_on('python@2.7:', type=('build', 'run'), when='@1.3.4:')
depends_on('py-requests@1.2.3:', type=('build', 'run'), when='@0.12.2')
diff --git a/var/spack/repos/builtin/packages/py-boltons/package.py b/var/spack/repos/builtin/packages/py-boltons/package.py
index 3ecf04e2c1..0513e82575 100644
--- a/var/spack/repos/builtin/packages/py-boltons/package.py
+++ b/var/spack/repos/builtin/packages/py-boltons/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyBoltons(PythonPackage):
Otherwise known as, "everyone's util.py," but cleaned up and tested.
"""
homepage = "https://boltons.readthedocs.io/"
- url = "https://pypi.io/packages/source/b/boltons/boltons-16.5.1.tar.gz"
+ pypi = "boltons/boltons-16.5.1.tar.gz"
version('16.5.1', sha256='fcded58596fa79bd1ada4488178e79fd11c7cb449f29ff9a6532411fb2db19b7')
diff --git a/var/spack/repos/builtin/packages/py-boom-boot-manager/package.py b/var/spack/repos/builtin/packages/py-boom-boot-manager/package.py
index 643d5ddb7c..77e3a0992c 100644
--- a/var/spack/repos/builtin/packages/py-boom-boot-manager/package.py
+++ b/var/spack/repos/builtin/packages/py-boom-boot-manager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-boto/package.py b/var/spack/repos/builtin/packages/py-boto/package.py
index 005ba180ed..7b57a1cc45 100644
--- a/var/spack/repos/builtin/packages/py-boto/package.py
+++ b/var/spack/repos/builtin/packages/py-boto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-boto3/package.py b/var/spack/repos/builtin/packages/py-boto3/package.py
index e31d3b8110..d529d6e862 100644
--- a/var/spack/repos/builtin/packages/py-boto3/package.py
+++ b/var/spack/repos/builtin/packages/py-boto3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,20 +10,20 @@ class PyBoto3(PythonPackage):
"""The AWS SDK for Python."""
homepage = "https://github.com/boto/boto3"
- url = "https://pypi.io/packages/source/b/boto3/boto3-1.10.44.tar.gz"
-
- import_modules = [
- 'boto3', 'boto3.s3', 'boto3.resources', 'boto3.dynamodb',
- 'boto3.docs', 'boto3.ec2'
- ]
+ pypi = "boto3/boto3-1.10.44.tar.gz"
+ version('1.17.27', sha256='fa41987f9f71368013767306d9522b627946a01b4843938a26fb19cc8adb06c0')
version('1.10.44', sha256='adc0c0269bd65967fd528d7cd826304f381d40d94f2bf2b09f58167e5ac05d86')
version('1.10.38', sha256='6cdb063b2ae5ac7b93ded6b6b17e3da1325b32232d5ff56e6800018d4786bba6')
version('1.9.169', sha256='9d8bd0ca309b01265793b7e8d7b88c1df439737d77c8725988f0277bbf58d169')
depends_on('py-setuptools', type='build')
+ depends_on('py-botocore@1.20.27:1.20.999', when='@1.17.27', type=('build', 'run'))
depends_on('py-botocore@1.13.44:1.13.999', when='@1.10.44', type=('build', 'run'))
depends_on('py-botocore@1.13.38:1.13.999', when='@1.10.38', type=('build', 'run'))
depends_on('py-botocore@1.12.169:1.12.999', when='@1.9.169', type=('build', 'run'))
+
depends_on('py-jmespath@0.7.1:0.999', type=('build', 'run'))
- depends_on('py-s3transfer@0.2.0:0.2.999', type=('build', 'run'))
+
+ depends_on('py-s3transfer@0.3.0:0.3.999', when='@1.17.27', type=('build', 'run'))
+ depends_on('py-s3transfer@0.2.0:0.2.999', when='@:1.10', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-botocore/package.py b/var/spack/repos/builtin/packages/py-botocore/package.py
index 7b05bf0c72..8fbba5ebf5 100644
--- a/var/spack/repos/builtin/packages/py-botocore/package.py
+++ b/var/spack/repos/builtin/packages/py-botocore/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,23 +10,26 @@ class PyBotocore(PythonPackage):
"""Low-level, data-driven core of boto 3."""
homepage = "https://github.com/boto/botocore"
- url = "https://pypi.io/packages/source/b/botocore/botocore-1.13.44.tar.gz"
-
- import_modules = ['botocore']
+ pypi = "botocore/botocore-1.13.44.tar.gz"
+ version('1.20.27', sha256='4477803f07649f4d80b17d054820e7a09bb2cb0792d0decc2812108bc3759c4a')
+ version('1.19.52', sha256='dc5ec23deadbe9327d3c81d03fddf80805c549059baabd80dea605941fe6a221')
version('1.13.44', sha256='a4409008c32a3305b9c469c5cc92edb5b79d6fcbf6f56fe126886b545f0a4f3f')
version('1.13.38', sha256='15766a367f39dba9de3c6296aaa7da31030f08a0117fd12685e7df682d8acee2')
version('1.12.169', sha256='25b44c3253b5ed1c9093efb57ffca440c5099a2d62fa793e8b6c52e72f54b01e')
depends_on('py-setuptools', type='build')
depends_on('py-jmespath@0.7.1:0.999', type=('build', 'run'))
- depends_on('py-docutils@0.10:0.15', type=('build', 'run'))
+ depends_on('py-docutils@0.10:0.15', type=('build', 'run'), when='@:1.17.999')
depends_on('py-ordereddict@1.1', type=('build', 'run'), when='^python@2.6.0:2.6.999')
depends_on('py-simplejson@3.3.0', type=('build', 'run'), when='^python@2.6.0:2.6.999')
depends_on('py-python-dateutil@2.1:2.999', type=('build', 'run'))
depends_on('py-python-dateutil@2.1:2.6', type=('build', 'run'), when='^python@2.6.0:2.6.999')
- depends_on('py-urllib3@1.20:1.25', type=('build', 'run'))
- depends_on('py-urllib3@1.20:1.23', type=('build', 'run'), when='^python@2.6.0:2.6.999')
- depends_on('py-urllib3@1.20:1.22', type=('build', 'run'), when='^python@3.3.0:3.3.999')
- depends_on('py-mock', type='test')
- depends_on('py-nose', type='test')
+ depends_on('py-urllib3@1.20:1.25', type=('build', 'run'), when='@:1.14.11')
+ depends_on('py-urllib3@1.20:1.23', type=('build', 'run'), when='@:1.13.999 ^python@2.6.0:2.6.999')
+ depends_on('py-urllib3@1.20:1.22', type=('build', 'run'), when='@:1.13.999 ^python@3.3.0:3.3.999')
+ depends_on('py-urllib3@1.20:1.25.7', type=('build', 'run'), when='@1.14.12:1.18.999 ^python@3.4.0:3.4.999')
+ depends_on('py-urllib3@1.20:1.25.999', type=('build', 'run'), when='@1.14.12:1.18.999')
+ depends_on('py-urllib3@1.25.4:1.25.7', type=('build', 'run'), when='@1.19.0: ^python@3.4.0:3.4.999')
+ depends_on('py-urllib3@1.25.4:1.25.999', type=('build', 'run'), when='@1.19.0:1.19.15')
+ depends_on('py-urllib3@1.25.4:1.26.999', type=('build', 'run'), when='@1.19.16:')
diff --git a/var/spack/repos/builtin/packages/py-bottle/package.py b/var/spack/repos/builtin/packages/py-bottle/package.py
index 5301354d8d..e41196bd1a 100644
--- a/var/spack/repos/builtin/packages/py-bottle/package.py
+++ b/var/spack/repos/builtin/packages/py-bottle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-bottleneck/package.py b/var/spack/repos/builtin/packages/py-bottleneck/package.py
index 8870b3197c..2ad3047faf 100644
--- a/var/spack/repos/builtin/packages/py-bottleneck/package.py
+++ b/var/spack/repos/builtin/packages/py-bottleneck/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,12 +8,13 @@ from spack import *
class PyBottleneck(PythonPackage):
"""A collection of fast NumPy array functions written in Cython."""
- homepage = "https://pypi.python.org/pypi/Bottleneck/1.0.0"
- url = "https://pypi.io/packages/source/B/Bottleneck/Bottleneck-1.0.0.tar.gz"
+ pypi = "Bottleneck/Bottleneck-1.0.0.tar.gz"
+ version('1.3.2', sha256='20179f0b66359792ea283b69aa16366419132f3b6cf3adadc0c48e2e8118e573')
+ version('1.3.1', sha256='451586370462cb623d6ad604a545d1e97fb51d2ab5252b1ac57350a83e494a28')
+ version('1.3.0', sha256='9d7814c61c31f42cfb4f26e050c2659c88a198f1398a9714174ae78347aad737')
version('1.2.1', sha256='6efcde5f830aed64feafca0359b51db0e184c72af8ba6675b4a99f263922eb36')
version('1.0.0', sha256='8d9b7ad4fadf9648acc924a6ee522c7cb5b474e75faaad9d90dfd55e2805b495')
depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-breakseq2/package.py b/var/spack/repos/builtin/packages/py-breakseq2/package.py
index 9c295e7023..f653a52412 100644
--- a/var/spack/repos/builtin/packages/py-breakseq2/package.py
+++ b/var/spack/repos/builtin/packages/py-breakseq2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-breathe/package.py b/var/spack/repos/builtin/packages/py-breathe/package.py
index 7ddebbdb10..fe8121eeb3 100644
--- a/var/spack/repos/builtin/packages/py-breathe/package.py
+++ b/var/spack/repos/builtin/packages/py-breathe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-brian/package.py b/var/spack/repos/builtin/packages/py-brian/package.py
index 770c19340f..4bbe434c2d 100644
--- a/var/spack/repos/builtin/packages/py-brian/package.py
+++ b/var/spack/repos/builtin/packages/py-brian/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyBrian(PythonPackage):
"""A clock-driven simulator for spiking neural networks"""
homepage = "http://www.briansimulator.org"
- url = "https://pypi.io/packages/source/b/brian/brian-1.4.3.tar.gz"
+ pypi = "brian/brian-1.4.3.tar.gz"
version('1.4.3', sha256='c881dcfcd1a21990f9cb3cca76cdd868111cfd9e227ef5c1b13bb372d2efeaa4')
diff --git a/var/spack/repos/builtin/packages/py-brian2/package.py b/var/spack/repos/builtin/packages/py-brian2/package.py
index 0e7a7bf31d..4b627d4b78 100644
--- a/var/spack/repos/builtin/packages/py-brian2/package.py
+++ b/var/spack/repos/builtin/packages/py-brian2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class PyBrian2(PythonPackage):
"""A clock-driven simulator for spiking neural networks"""
homepage = "http://www.briansimulator.org"
- url = "https://pypi.io/packages/source/B/Brian2/Brian2-2.2.2.1.tar.gz"
+ pypi = "Brian2/Brian2-2.2.2.1.tar.gz"
+ version('2.4.2', sha256='7a711af40145d8c62b0bc0861d352dc64f341c3a738174d87ef9d71e50e959f2')
version('2.2.2.1', sha256='02075f66d42fd243fc5e28e1add8862709ae9fdabaffb69858e6d7f684a91525')
version('2.0.1', sha256='195d8ced0d20e9069917776948f92aa70b7457bbc6b5222b8199654402ee1153')
version('2.0rc3', sha256='05f347f5fa6b25d1ce5ec152a2407bbce033599eb6664f32f5331946eb3c7d66')
@@ -19,14 +20,19 @@ class PyBrian2(PythonPackage):
variant('docs', default=False, description='Build the documentation')
depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('python@3.6:', type=('build', 'run'), when='@2.4:')
depends_on('py-numpy@1.10:', type=('build', 'run'))
+ depends_on('py-numpy@1.15:', type=('build', 'run'), when='@2.4:')
depends_on('py-cython@0.29:', type=('build', 'run'))
depends_on('py-sympy@0.7.6:1.0,1.1.1:', type=('build', 'run'))
+ depends_on('py-sympy@1.2:', type=('build', 'run'), when='@2.4:')
depends_on('py-pyparsing', type=('build', 'run'))
depends_on('py-jinja2@2.7:', type=('build', 'run'))
depends_on('py-setuptools@21:', type=('build', 'run'))
+ depends_on('py-setuptools@24.2:', type=('build', 'run'), when='@2.4:')
depends_on('py-sphinx@1.5:', type=('build', 'run'), when='+docs')
- depends_on('py-nose@1.0:', type='test')
+ depends_on('py-sphinx@1.8:', type=('build', 'run'), when='@2.4:+docs')
+ depends_on('py-ipython@5:', type=('build', 'run'), when='@2.4:+docs')
def build_args(self, spec, prefix):
return ['--with-cython']
diff --git a/var/spack/repos/builtin/packages/py-brotlipy/package.py b/var/spack/repos/builtin/packages/py-brotlipy/package.py
index e83bcafea0..e4e288b7a3 100644
--- a/var/spack/repos/builtin/packages/py-brotlipy/package.py
+++ b/var/spack/repos/builtin/packages/py-brotlipy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyBrotlipy(PythonPackage):
"""Python binding to the Brotli library."""
homepage = "https://github.com/python-hyper/brotlipy/"
- url = "https://pypi.io/packages/source/b/brotlipy/brotlipy-0.7.0.tar.gz"
+ pypi = "brotlipy/brotlipy-0.7.0.tar.gz"
version('0.7.0', sha256='36def0b859beaf21910157b4c33eb3b06d8ce459c942102f16988cca6ea164df')
diff --git a/var/spack/repos/builtin/packages/py-bsddb3/package.py b/var/spack/repos/builtin/packages/py-bsddb3/package.py
index 9dcff4735c..038f2c7eab 100644
--- a/var/spack/repos/builtin/packages/py-bsddb3/package.py
+++ b/var/spack/repos/builtin/packages/py-bsddb3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,7 @@ class PyBsddb3(PythonPackage):
Sequence and Transaction objects, and each of these is exposed
as a Python type in the bsddb3.db module."""
- homepage = "https://pypi.python.org/pypi/bsddb3/6.2.5"
- url = "https://pypi.io/packages/source/b/bsddb3/bsddb3-6.2.5.tar.gz"
+ pypi = "bsddb3/bsddb3-6.2.5.tar.gz"
version('6.2.5', sha256='784bf40ad935258507594a89b32ea11f362cde120751c8b96de163955ced7db8')
diff --git a/var/spack/repos/builtin/packages/py-bx-python/package.py b/var/spack/repos/builtin/packages/py-bx-python/package.py
index 3d73b21d18..bf0ffcacd6 100644
--- a/var/spack/repos/builtin/packages/py-bx-python/package.py
+++ b/var/spack/repos/builtin/packages/py-bx-python/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyBxPython(PythonPackage):
to allow for rapid implementation of genome scale analyses."""
homepage = "https://github.com/bxlab/bx-python"
- url = "https://pypi.io/packages/source/b/bx-python/bx-python-0.8.8.tar.gz"
+ pypi = "bx-python/bx-python-0.8.8.tar.gz"
version('0.8.8', sha256='ad0808ab19c007e8beebadc31827e0d7560ac0e935f1100fb8cc93607400bb47')
version('0.7.4',
diff --git a/var/spack/repos/builtin/packages/py-bz2file/package.py b/var/spack/repos/builtin/packages/py-bz2file/package.py
index 796e08250f..f883842822 100644
--- a/var/spack/repos/builtin/packages/py-bz2file/package.py
+++ b/var/spack/repos/builtin/packages/py-bz2file/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyBz2file(PythonPackage):
"""Python library for reading and writing bzip2-compressed files."""
homepage = "https://github.com/nvawda/bz2file"
- url = "https://pypi.io/packages/source/b/bz2file/bz2file-0.98.tar.gz"
+ pypi = "bz2file/bz2file-0.98.tar.gz"
version('0.98', sha256='64c1f811e31556ba9931953c8ec7b397488726c63e09a4c67004f43bdd28da88')
diff --git a/var/spack/repos/builtin/packages/py-cached-property/package.py b/var/spack/repos/builtin/packages/py-cached-property/package.py
index e5e120e7dd..1fcf4ebfca 100644
--- a/var/spack/repos/builtin/packages/py-cached-property/package.py
+++ b/var/spack/repos/builtin/packages/py-cached-property/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyCachedProperty(PythonPackage):
"""A decorator for caching properties in classes."""
- homepage = "https://pypi.org/project/cached-property/"
- url = "https://pypi.io/packages/source/c/cached-property/cached-property-1.5.1.tar.gz"
+ pypi = "cached-property/cached-property-1.5.1.tar.gz"
version('1.5.2', sha256="9fa5755838eecbb2d234c3aa390bd80fbd3ac6b6869109bfc1b499f7bd89a130")
version('1.5.1', sha256="9217a59f14a5682da7c4b8829deadbfc194ac22e9908ccf7c8820234e80a1504")
diff --git a/var/spack/repos/builtin/packages/py-cachetools/package.py b/var/spack/repos/builtin/packages/py-cachetools/package.py
index a35b423504..03c9e260eb 100644
--- a/var/spack/repos/builtin/packages/py-cachetools/package.py
+++ b/var/spack/repos/builtin/packages/py-cachetools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyCachetools(PythonPackage):
decorator."""
homepage = "https://github.com/tkem/cachetools"
- url = "https://pypi.io/packages/source/c/cachetools/cachetools-3.1.1.tar.gz"
+ pypi = "cachetools/cachetools-3.1.1.tar.gz"
version('3.1.1', sha256='8ea2d3ce97850f31e4a08b0e2b5e6c34997d7216a9d2c98e0f3978630d4da69a')
diff --git a/var/spack/repos/builtin/packages/py-cairocffi/package.py b/var/spack/repos/builtin/packages/py-cairocffi/package.py
index d4cf1ca37c..8e524842e8 100644
--- a/var/spack/repos/builtin/packages/py-cairocffi/package.py
+++ b/var/spack/repos/builtin/packages/py-cairocffi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,15 +13,10 @@ class PyCairocffi(PythonPackage):
buffers, PNG, PostScript, PDF, and SVG file output."""
homepage = "https://github.com/Kozea/cairocffi"
- url = "https://pypi.io/packages/source/c/cairocffi/cairocffi-1.0.2.tar.gz"
- import_modules = ['cairocffi']
+ pypi = "cairocffi/cairocffi-1.0.2.tar.gz"
version('1.0.2', sha256='01ac51ae12c4324ca5809ce270f9dd1b67f5166fe63bd3e497e9ea3ca91946ff')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools@39.2.0:', type='build')
depends_on('py-cffi@1.1.0:', type=('build', 'run'))
- depends_on('py-pytest-runner', type='test')
- depends_on('py-pytest-cov', type='test')
- depends_on('py-pytest-flake8', type='test')
- depends_on('py-pytest-isort', type='test')
diff --git a/var/spack/repos/builtin/packages/py-cantoolz/package.py b/var/spack/repos/builtin/packages/py-cantoolz/package.py
index 60e47cad32..1659190854 100644
--- a/var/spack/repos/builtin/packages/py-cantoolz/package.py
+++ b/var/spack/repos/builtin/packages/py-cantoolz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cartopy/package.py b/var/spack/repos/builtin/packages/py-cartopy/package.py
index 1d19b4da2d..39bbc32415 100644
--- a/var/spack/repos/builtin/packages/py-cartopy/package.py
+++ b/var/spack/repos/builtin/packages/py-cartopy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,11 @@ class PyCartopy(PythonPackage):
url = "https://github.com/SciTools/cartopy/archive/v0.18.0.tar.gz"
maintainers = ['adamjstewart']
+
+ # Skip test files in cartopy.tests
import_modules = [
'cartopy', 'cartopy.sphinxext', 'cartopy.io', 'cartopy.geodesic',
- 'cartopy.examples', 'cartopy.mpl', 'cartopy.feature',
+ 'cartopy.examples', 'cartopy.mpl', 'cartopy.feature'
]
version('0.18.0', sha256='493ced4698361ffabec1a213d2b711dc836117242c304f3b93f5406182fd8bc2')
@@ -48,15 +50,32 @@ class PyCartopy(PythonPackage):
depends_on('pil@1.7.8:', type=('build', 'run'), when='+plotting')
depends_on('py-scipy@0.10:', type=('build', 'run'), when='+plotting')
- # Testing dependencies
- depends_on('py-filelock', type='test')
- depends_on('py-mock@1.0.1:', type='test')
- depends_on('py-pytest@3.0.0:', type='test')
-
patch('proj6.patch', when='@0.17.0')
phases = ['build_ext', 'install']
+ def setup_build_environment(self, env):
+ # Needed for `spack install --test=root py-cartopy`
+ library_dirs = []
+ for dep in self.spec.dependencies(deptype='link'):
+ query = self.spec[dep.name]
+ library_dirs.extend(query.libs.directories)
+
+ # Cartopy uses ctypes.util.find_library, which searches LD_LIBRARY_PATH
+ # Our RPATH logic works fine, but the unit tests fail without this
+ libs = ':'.join(library_dirs)
+ if self.spec.satisfies('platform=darwin'):
+ env.prepend_path('DYLD_FALLBACK_LIBRARY_PATH', libs)
+ else:
+ env.prepend_path('LD_LIBRARY_PATH', libs)
+
+ # Needed for `spack test run py-cartopy`
+ setup_run_environment = setup_build_environment
+
+ # Needed for `spack test run py-foo` where `py-foo` depends on `py-cartopy`
+ def setup_dependent_run_environment(self, env, dependent_spec):
+ self.setup_build_environment(env)
+
def build_ext_args(self, spec, prefix):
args = [
spec['geos'].headers.include_flags,
@@ -74,8 +93,6 @@ class PyCartopy(PythonPackage):
return args
# Tests need to be re-added since `phases` was overridden
- run_after('build_ext')(
- PythonPackage._run_default_build_time_test_callbacks)
run_after('install')(
PythonPackage._run_default_install_time_test_callbacks)
run_after('install')(PythonPackage.sanity_check_prefix)
diff --git a/var/spack/repos/builtin/packages/py-catalogue/package.py b/var/spack/repos/builtin/packages/py-catalogue/package.py
index 799f5bb2ff..42671fd164 100644
--- a/var/spack/repos/builtin/packages/py-catalogue/package.py
+++ b/var/spack/repos/builtin/packages/py-catalogue/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyCatalogue(PythonPackage):
"""catalogue: Super lightweight function registries for your library."""
homepage = "https://github.com/explosion/catalogue"
- url = "https://pypi.io/packages/source/c/catalogue/catalogue-2.0.0.tar.gz"
+ pypi = "catalogue/catalogue-2.0.0.tar.gz"
version('2.0.0', sha256='34f8416ec5e7ed08e55c10414416e67c3f4d66edf83bc67320c3290775293816')
version('1.0.0', sha256='d74d1d856c6b36a37bf14aa6dbbc27d0582667b7ab979a6108e61a575e8723f5')
diff --git a/var/spack/repos/builtin/packages/py-catkin-pkg/package.py b/var/spack/repos/builtin/packages/py-catkin-pkg/package.py
new file mode 100644
index 0000000000..0bf04a7b57
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-catkin-pkg/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyCatkinPkg(PythonPackage):
+ """Library for retrieving information about catkin packages."""
+
+ homepage = "https://wiki.ros.org/catkin_pkg"
+ pypi = "catkin-pkg/catkin_pkg-0.4.23.tar.gz"
+
+ version('0.4.23', sha256='28ee181cca827c0aabf9397351f58a97e1475ca5ac7c106a5916e3ee191cd3d0')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-docutils', type=('build', 'run'))
+ depends_on('py-python-dateutil', type=('build', 'run'))
+ depends_on('py-pyparsing', type=('build', 'run'))
+ depends_on('py-argparse', when='^python@:2.6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cclib/package.py b/var/spack/repos/builtin/packages/py-cclib/package.py
index c7801a86a0..2f5fea76e2 100644
--- a/var/spack/repos/builtin/packages/py-cclib/package.py
+++ b/var/spack/repos/builtin/packages/py-cclib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cdat-lite/package.py b/var/spack/repos/builtin/packages/py-cdat-lite/package.py
index db51d6e3ec..0c46ae53be 100644
--- a/var/spack/repos/builtin/packages/py-cdat-lite/package.py
+++ b/var/spack/repos/builtin/packages/py-cdat-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyCdatLite(PythonPackage):
developed by PCMDI at Lawrence Livermore National Laboratory."""
homepage = "http://proj.badc.rl.ac.uk/cedaservices/wiki/CdatLite"
- url = "https://pypi.io/packages/source/c/cdat-lite/cdat-lite-6.0.1.tar.gz"
+ pypi = "cdat-lite/cdat-lite-6.0.1.tar.gz"
version('6.0.1', sha256='092ae4ff1fb03dee00096e8dd595b769b422759ce972d96525950adf8e1c9374')
diff --git a/var/spack/repos/builtin/packages/py-cdo/package.py b/var/spack/repos/builtin/packages/py-cdo/package.py
index 674900d87d..fcd3203850 100644
--- a/var/spack/repos/builtin/packages/py-cdo/package.py
+++ b/var/spack/repos/builtin/packages/py-cdo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyCdo(PythonPackage):
"""The cdo package provides an interface to the Climate Data
Operators from Python."""
- homepage = "https://pypi.python.org/pypi/cdo"
- url = "https://pypi.io/packages/source/c/cdo/cdo-1.3.2.tar.gz"
+ pypi = "cdo/cdo-1.3.2.tar.gz"
version('1.3.2', sha256='9f78879d90d14134f2320565016d0d371b7dfe7ec71110fd313868ec1db34aee')
diff --git a/var/spack/repos/builtin/packages/py-cdsapi/package.py b/var/spack/repos/builtin/packages/py-cdsapi/package.py
index 7d5ed6c865..4b5699ae49 100644
--- a/var/spack/repos/builtin/packages/py-cdsapi/package.py
+++ b/var/spack/repos/builtin/packages/py-cdsapi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyCdsapi(PythonPackage):
"""The Climate Data Store Application Program Interface is a service providing programmatic access to CDS data. Get your UID and API key from the CDS portal at the address https://cds.climate.copernicus.eu/user and write it into the configuration file. Look at https://pypi.org/project/cdsapi/ for an example"""
homepage = "https://cds.climate.copernicus.eu"
- url = "https://pypi.io/packages/source/c/cdsapi/cdsapi-0.2.3.tar.gz"
+ pypi = "cdsapi/cdsapi-0.2.3.tar.gz"
version('0.2.3', sha256='333b31ec263224399635db9b21a2e1a50cd73451f5179f8d967437e7c9161d9b')
diff --git a/var/spack/repos/builtin/packages/py-cekit/package.py b/var/spack/repos/builtin/packages/py-cekit/package.py
index a51203aac9..f393d95bf5 100644
--- a/var/spack/repos/builtin/packages/py-cekit/package.py
+++ b/var/spack/repos/builtin/packages/py-cekit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-celery/package.py b/var/spack/repos/builtin/packages/py-celery/package.py
index ff0eab1b63..ae99dcf6a1 100644
--- a/var/spack/repos/builtin/packages/py-celery/package.py
+++ b/var/spack/repos/builtin/packages/py-celery/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyCelery(PythonPackage):
"""Celery - Distributed Task Queue."""
- homepage = "https://pypi.org/project/celery/"
- url = "https://pypi.io/packages/source/c/celery/celery-4.2.1.tar.gz"
+ pypi = "celery/celery-4.2.1.tar.gz"
version('5.0.0', sha256='313930fddde703d8e37029a304bf91429cd11aeef63c57de6daca9d958e1f255')
version('4.4.7', sha256='d220b13a8ed57c78149acf82c006785356071844afe0b27012a4991d44026f9f')
diff --git a/var/spack/repos/builtin/packages/py-certifi/package.py b/var/spack/repos/builtin/packages/py-certifi/package.py
index 033ac47a88..79fb7ca72d 100644
--- a/var/spack/repos/builtin/packages/py-certifi/package.py
+++ b/var/spack/repos/builtin/packages/py-certifi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,7 @@ class PyCertifi(PythonPackage):
hosts."""
homepage = "http://certifi.io/"
- url = "https://pypi.io/packages/source/c/certifi/certifi-2020.6.20.tar.gz"
-
- import_modules = ['certifi']
+ pypi = "certifi/certifi-2020.6.20.tar.gz"
version('2020.6.20', sha256='5930595817496dd21bb8dc35dad090f1c2cd0adfaf21204bf6732ca5d8ee34d3')
version('2019.9.11', sha256='e4f3620cfea4f83eedc95b24abd9cd56f3c4b146dd0177e83a21b4eb49e21e50')
diff --git a/var/spack/repos/builtin/packages/py-certipy/package.py b/var/spack/repos/builtin/packages/py-certipy/package.py
index 1fe73e8dc7..4c79879695 100644
--- a/var/spack/repos/builtin/packages/py-certipy/package.py
+++ b/var/spack/repos/builtin/packages/py-certipy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyCertipy(PythonPackage):
"""A simple python tool for creating certificate authorities
and certificates on the fly."""
- homepage = "https://pypi.org/project/certipy/"
- url = "https://pypi.io/packages/source/c/certipy/certipy-0.1.3.tar.gz"
+ pypi = "certipy/certipy-0.1.3.tar.gz"
version('0.1.3', sha256='695704b7716b033375c9a1324d0d30f27110a28895c40151a90ec07ff1032859')
diff --git a/var/spack/repos/builtin/packages/py-cf-units/package.py b/var/spack/repos/builtin/packages/py-cf-units/package.py
index 54d6e909b3..ca14b17a26 100644
--- a/var/spack/repos/builtin/packages/py-cf-units/package.py
+++ b/var/spack/repos/builtin/packages/py-cf-units/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyCfUnits(PythonPackage):
"""
homepage = "https://scitools.org.uk"
- url = "https://pypi.io/packages/source/c/cf-units/cf-units-2.1.1.tar.gz"
+ pypi = "cf-units/cf-units-2.1.1.tar.gz"
git = "https://github.com/SciTools/cf-units.git"
version('master', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-cffi/package.py b/var/spack/repos/builtin/packages/py-cffi/package.py
index f333c73ffa..617fd1a5d1 100644
--- a/var/spack/repos/builtin/packages/py-cffi/package.py
+++ b/var/spack/repos/builtin/packages/py-cffi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,7 @@ class PyCffi(PythonPackage):
"""Foreign Function Interface for Python calling C code"""
homepage = "https://cffi.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/c/cffi/cffi-1.13.0.tar.gz"
-
- import_modules = ['cffi']
+ pypi = "cffi/cffi-1.13.0.tar.gz"
version('1.14.3', sha256='f92f789e4f9241cd262ad7a555ca2c648a98178a953af117ef7fad46aa1d5591')
version('1.13.0', sha256='8fe230f612c18af1df6f348d02d682fe2c28ca0a6c3856c99599cdacae7cf226')
@@ -27,8 +25,6 @@ class PyCffi(PythonPackage):
depends_on('py-pycparser', type=('build', 'run'))
depends_on('py-pycparser@2.19:', when='^python@:2.6', type=('build', 'run'))
depends_on('libffi')
- depends_on('py-py', type='test')
- depends_on('py-pytest', type='test')
def setup_build_environment(self, env):
# This sets the compiler (and flags) that distutils will use
diff --git a/var/spack/repos/builtin/packages/py-cfgrib/package.py b/var/spack/repos/builtin/packages/py-cfgrib/package.py
new file mode 100644
index 0000000000..db9a09669c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-cfgrib/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyCfgrib(PythonPackage):
+ """Python interface to map GRIB files to the NetCDF Common Data Model
+ following the CF Convention using ecCodes."""
+
+ homepage = "https://github.com/ecmwf/cfgrib"
+ pypi = "cfgrib/cfgrib-0.9.8.5.tar.gz"
+
+ version('0.9.8.5', sha256='07c224d7ac823a1df5738b96b9d3621515538f51f67e55044f9cc8ec1668e1bd')
+
+ depends_on('python@3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pytest-runner', type='build')
+ depends_on('py-attrs@19.2:', type=('build', 'run'))
+ depends_on('py-cffi', type=('build', 'run'))
+ depends_on('py-click', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cfgv/package.py b/var/spack/repos/builtin/packages/py-cfgv/package.py
index a9465eb0fc..2ed399e835 100644
--- a/var/spack/repos/builtin/packages/py-cfgv/package.py
+++ b/var/spack/repos/builtin/packages/py-cfgv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyCfgv(PythonPackage):
"""Validate configuration and produce human readable error messages."""
homepage = "https://github.com/asottile/cfgv/"
- url = "https://pypi.io/packages/source/c/cfgv/cfgv-2.0.1.tar.gz"
+ pypi = "cfgv/cfgv-2.0.1.tar.gz"
version('2.0.1', sha256='edb387943b665bf9c434f717bf630fa78aecd53d5900d2e05da6ad6048553144')
diff --git a/var/spack/repos/builtin/packages/py-cftime/package.py b/var/spack/repos/builtin/packages/py-cftime/package.py
index 284284391a..c90bd32176 100644
--- a/var/spack/repos/builtin/packages/py-cftime/package.py
+++ b/var/spack/repos/builtin/packages/py-cftime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-chai/package.py b/var/spack/repos/builtin/packages/py-chai/package.py
index f2e7ff7f54..15f6a1e623 100644
--- a/var/spack/repos/builtin/packages/py-chai/package.py
+++ b/var/spack/repos/builtin/packages/py-chai/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyChai(PythonPackage):
"""Chai - Python Mocking Made Easy"""
homepage = "https://github.com/agoragames/chai"
- url = "https://pypi.io/packages/source/c/chai/chai-1.1.2.tar.gz"
+ pypi = "chai/chai-1.1.2.tar.gz"
version('1.1.2', sha256='ff8d2b6855f660cd23cd5ec79bd10264d39f24f6235773331b48e7fcd637d6cc')
diff --git a/var/spack/repos/builtin/packages/py-chainer/package.py b/var/spack/repos/builtin/packages/py-chainer/package.py
index c75383b469..7b2d7011b2 100644
--- a/var/spack/repos/builtin/packages/py-chainer/package.py
+++ b/var/spack/repos/builtin/packages/py-chainer/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import json
class PyChainer(PythonPackage):
@@ -25,6 +26,8 @@ class PyChainer(PythonPackage):
version('7.2.0', sha256='6e2fba648cc5b8a5421e494385b76fe5ec154f1028a1c5908557f5d16c04f0b3')
version('6.7.0', sha256='87cb3378a35e7c5c695028ec91d58dc062356bc91412384ea939d71374610389')
+ variant("mn", default=False, description="run with ChainerMN")
+
depends_on('python@3.5.1:', when='@7:', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-numpy@1.9:', type=('build', 'run'))
@@ -34,3 +37,49 @@ class PyChainer(PythonPackage):
depends_on('py-filelock', type=('build', 'run'))
depends_on('py-protobuf@3:', type=('build', 'run'))
depends_on('py-typing@:3.6.6', when='@:6', type=('build', 'run'))
+
+ # Dependencies only required for test of ChainerMN
+ depends_on('py-matplotlib', type=('build', 'run'), when='+mn')
+ depends_on('py-mpi4py', type=('build', 'run'), when='+mn')
+ depends_on("mpi", type=("build", "run"), when='+mn')
+
+ @run_after('install')
+ def cache_test_sources(self):
+ if '+mn' in self.spec:
+ self.cache_extra_test_sources("examples")
+
+ def test(self):
+ if "+mn" in self.spec:
+ # Run test of ChainerMN
+ test_dir = self.test_suite.current_test_data_dir
+
+ mnist_dir = join_path(
+ self.install_test_root, "examples", "chainermn", "mnist"
+ )
+ mnist_file = join_path(mnist_dir, "train_mnist.py")
+ mpi_name = self.spec["mpi"].prefix.bin.mpirun
+ python_exe = self.spec["python"].command.path
+ opts = [
+ "-n",
+ "4",
+ python_exe,
+ mnist_file,
+ "-o",
+ test_dir,
+ ]
+ env["OMP_NUM_THREADS"] = "4"
+
+ self.run_test(
+ mpi_name,
+ options=opts,
+ work_dir=test_dir,
+ )
+
+ # check results
+ json_open = open(join_path(test_dir, 'log'), 'r')
+ json_load = json.load(json_open)
+ v = dict([(d.get('epoch'), d.get('main/accuracy')) for d in json_load])
+ if 1 not in v or 20 not in v:
+ raise RuntimeError('Cannot find epoch 1 or epoch 20')
+ if abs(1.0 - v[1]) < abs(1.0 - v[20]):
+ raise RuntimeError('ChainerMN Test Failed !')
diff --git a/var/spack/repos/builtin/packages/py-chainmap/package.py b/var/spack/repos/builtin/packages/py-chainmap/package.py
index f68782e7b4..f41fe19a7c 100644
--- a/var/spack/repos/builtin/packages/py-chainmap/package.py
+++ b/var/spack/repos/builtin/packages/py-chainmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyChainmap(PythonPackage):
ChainMap implementations."""
homepage = "https://bitbucket.org/jeunice/chainmap/src/default/"
- url = "https://pypi.io/packages/source/c/chainmap/chainmap-1.0.3.tar.gz"
+ pypi = "chainmap/chainmap-1.0.3.tar.gz"
version('1.0.3', sha256='e42aaa4b3e2f66102a11bfd563069704bfbfd84fdcb517b564effd736bf53cd9')
version('1.0.2', sha256='405da3bce9913bfb33e6e497803b447b60d12ab44031ca357626143e087e0526')
diff --git a/var/spack/repos/builtin/packages/py-chalice/package.py b/var/spack/repos/builtin/packages/py-chalice/package.py
index 348b09c5e5..527f6cd9a1 100644
--- a/var/spack/repos/builtin/packages/py-chalice/package.py
+++ b/var/spack/repos/builtin/packages/py-chalice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,7 +27,7 @@ class PyChalice(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-click@7.0:8.0', type=('build', 'run'))
depends_on('py-botocore@1.12.86:2.0.0', type=('build', 'run'))
- depends_on('py-typing@3.6.4', type=('build', 'run'))
+ depends_on('py-typing@3.6.4', type=('build', 'run'), when='^python@:3.6.999')
depends_on('py-mypy-extensions@0.4.3', type=('build', 'run'))
depends_on('py-six@1.10.0:2.0.0', type=('build', 'run'))
depends_on('py-pip@9:20.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-chardet/package.py b/var/spack/repos/builtin/packages/py-chardet/package.py
index 8cd829597d..71f38e420b 100644
--- a/var/spack/repos/builtin/packages/py-chardet/package.py
+++ b/var/spack/repos/builtin/packages/py-chardet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyChardet(PythonPackage):
"""Universal encoding detector for Python 2 and 3"""
homepage = "https://github.com/chardet/chardet"
- url = "https://pypi.io/packages/source/c/chardet/chardet-3.0.4.tar.gz"
+ pypi = "chardet/chardet-3.0.4.tar.gz"
version('3.0.4', sha256='84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae')
version('3.0.2', sha256='4f7832e7c583348a9eddd927ee8514b3bf717c061f57b21dbe7697211454d9bb')
@@ -18,5 +18,3 @@ class PyChardet(PythonPackage):
depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-pytest-runner', type='build')
- depends_on('py-pytest', type='test')
- depends_on('py-hypothesis', type='test')
diff --git a/var/spack/repos/builtin/packages/py-charm4py/package.py b/var/spack/repos/builtin/packages/py-charm4py/package.py
index 7ebea4ddef..ebe181bcea 100644
--- a/var/spack/repos/builtin/packages/py-charm4py/package.py
+++ b/var/spack/repos/builtin/packages/py-charm4py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ class PyCharm4py(PythonPackage):
from small multi-core devices up to the largest supercomputers."""
homepage = "https://charmpy.readthedocs.io"
- url = "https://pypi.io/packages/source/c/charm4py/charm4py-1.0.tar.gz"
+ pypi = "charm4py/charm4py-1.0.tar.gz"
# Add a list of GitHub accounts to
# notify when the package is updated.
diff --git a/var/spack/repos/builtin/packages/py-checkm-genome/package.py b/var/spack/repos/builtin/packages/py-checkm-genome/package.py
index cc1bee25c9..d50f03bcf5 100644
--- a/var/spack/repos/builtin/packages/py-checkm-genome/package.py
+++ b/var/spack/repos/builtin/packages/py-checkm-genome/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyCheckmGenome(PythonPackage):
cells, and metagenomes"""
homepage = "https://ecogenomics.github.io/CheckM"
- url = "https://pypi.io/packages/source/c/checkm-genome/checkm-genome-1.0.11.tar.gz"
+ pypi = "checkm-genome/checkm-genome-1.0.11.tar.gz"
version('1.0.13', sha256='ffb7e4966c0fac07c7e6e7db6f6eb5b48587fa83987f8a68efbaff2afb7da82e')
version('1.0.11', sha256='e475d9817d12fa771dbccc80f47758b742fc67c25261dc8ca0c0dc898c2a5190')
@@ -20,7 +20,7 @@ class PyCheckmGenome(PythonPackage):
depends_on('pplacer', type=('build', 'run'))
depends_on('prodigal@2.6.1:', type=('build', 'run'))
depends_on('python@2.7.0:2.7.999', type=('build', 'run'))
- depends_on('py-backports-functools-lru-cache', type=('build', 'run'))
+ depends_on('py-backports-functools-lru-cache', type=('build', 'run'), when='^python@:3.2.99')
depends_on('py-numpy@1.8.0:', type=('build', 'run'))
depends_on('py-scipy@0.9.0:', type=('build', 'run'))
depends_on('py-matplotlib@1.3.1:2.2.3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cheetah/package.py b/var/spack/repos/builtin/packages/py-cheetah/package.py
index d150293c56..6b5b76813f 100644
--- a/var/spack/repos/builtin/packages/py-cheetah/package.py
+++ b/var/spack/repos/builtin/packages/py-cheetah/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,11 @@ from spack import *
class PyCheetah(PythonPackage):
"""Cheetah is a template engine and code generation tool."""
- homepage = "https://pypi.python.org/pypi/Cheetah/2.4.4"
- url = "https://pypi.io/packages/source/C/Cheetah/Cheetah-2.3.0.tar.gz"
+ pypi = "Cheetah/Cheetah-2.3.0.tar.gz"
+ version('2.4.4', sha256='be308229f0c1e5e5af4f27d7ee06d90bb19e6af3059794e5fd536a6f29a9b550')
version('2.3.0', sha256='2a32d7f7f70be98c2d57aa581f979bc799d4bf17d09fc0e7d77280501edf3e53')
+
+ depends_on('python@2:2.99.999', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-markdown@2.0.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cheetah3/package.py b/var/spack/repos/builtin/packages/py-cheetah3/package.py
new file mode 100644
index 0000000000..28e739934f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-cheetah3/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyCheetah3(PythonPackage):
+ """Cheetah3 is a template engine and code generation tool."""
+
+ pypi = "Cheetah3/Cheetah3-3.2.6.tar.gz"
+
+ version('3.2.6', sha256='f1c2b693cdcac2ded2823d363f8459ae785261e61c128d68464c8781dba0466b')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-markdown@2.0.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cheroot/package.py b/var/spack/repos/builtin/packages/py-cheroot/package.py
index f75ef07b58..263b80e497 100644
--- a/var/spack/repos/builtin/packages/py-cheroot/package.py
+++ b/var/spack/repos/builtin/packages/py-cheroot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyCheroot(PythonPackage):
""" Highly-optimized, pure-python HTTP server """
homepage = "https://cheroot.cherrypy.org/"
- url = "https://pypi.io/packages/source/c/cheroot/cheroot-6.5.5.tar.gz"
+ pypi = "cheroot/cheroot-6.5.5.tar.gz"
version('8.3.0', sha256='a0577e1f28661727d472671a7cc4e0c12ea0cbc5220265e70f00a8b8cb628931')
version('6.5.5', sha256='f6a85e005adb5bc5f3a92b998ff0e48795d4d98a0fbb7edde47a7513d4100601')
@@ -23,4 +23,5 @@ class PyCheroot(PythonPackage):
depends_on('py-six@1.11.0:', type=('build', 'run'))
depends_on('py-backports-functools-lru-cache', type=('build', 'run'),
when='^python@:3.3')
+ depends_on('py-jaraco-functools', when='@8.3.0:', type=('build', 'run'))
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cherrypy/package.py b/var/spack/repos/builtin/packages/py-cherrypy/package.py
index 848d185303..311b683b2d 100644
--- a/var/spack/repos/builtin/packages/py-cherrypy/package.py
+++ b/var/spack/repos/builtin/packages/py-cherrypy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyCherrypy(PythonPackage):
"""CherryPy is a pythonic, object-oriented HTTP framework."""
homepage = "https://cherrypy.org/"
- url = "https://pypi.io/packages/source/C/CherryPy/CherryPy-18.1.1.tar.gz"
+ pypi = "CherryPy/CherryPy-18.1.1.tar.gz"
version('18.1.1', sha256='6585c19b5e4faffa3613b5bf02c6a27dcc4c69a30d302aba819639a2af6fa48b')
diff --git a/var/spack/repos/builtin/packages/py-chronyk/package.py b/var/spack/repos/builtin/packages/py-chronyk/package.py
index 9523814f8e..a1a81ae552 100644
--- a/var/spack/repos/builtin/packages/py-chronyk/package.py
+++ b/var/spack/repos/builtin/packages/py-chronyk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cinema-lib/package.py b/var/spack/repos/builtin/packages/py-cinema-lib/package.py
index 8034e9c7a1..9e5e1fd30c 100644
--- a/var/spack/repos/builtin/packages/py-cinema-lib/package.py
+++ b/var/spack/repos/builtin/packages/py-cinema-lib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cinemasci/package.py b/var/spack/repos/builtin/packages/py-cinemasci/package.py
new file mode 100644
index 0000000000..83ddb8b648
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-cinemasci/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyCinemasci(PythonPackage):
+ """A set of python tools for reading, writing and viewing Cinema
+ databases"""
+
+ homepage = "https://github.com/cinemascience"
+ pypi = "cinemasci/cinemasci-1.3.tar.gz"
+
+ maintainers = ['EthanS94']
+
+ version('1.3', sha256='c024ca9791de9d78e5dad3fd11e8f87d8bc1afa5830f2697d7ec4116a5d23c20')
+
+ depends_on('hdf5~mpi')
+ depends_on('pil', type=('build', 'run'))
+ depends_on('python@3:', type=('build', 'run'))
+ depends_on('py-h5py~mpi', type=('build', 'run'))
+ depends_on('py-ipywidgets', type=('build', 'run'))
+ depends_on('py-jupyterlab', type=('build', 'run'))
+ depends_on('py-pandas', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build'))
diff --git a/var/spack/repos/builtin/packages/py-click-didyoumean/package.py b/var/spack/repos/builtin/packages/py-click-didyoumean/package.py
index 10052f429f..492ee04b2b 100644
--- a/var/spack/repos/builtin/packages/py-click-didyoumean/package.py
+++ b/var/spack/repos/builtin/packages/py-click-didyoumean/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyClickDidyoumean(PythonPackage):
"""Enable git-like did-you-mean feature in click"""
homepage = "https://github.com/click-contrib/click-didyoumean"
- url = "https://files.pythonhosted.org/packages/9f/79/d265d783dd022541b744d002745d9e55d84c04a41930e35d8795934f6526/click-didyoumean-0.0.3.tar.gz"
+ pypi = "click-didyoumean/click-didyoumean-0.0.3.tar.gz"
version('0.0.3', sha256='112229485c9704ff51362fe34b2d4f0b12fc71cc20f6d2b3afabed4b8bfa6aeb')
diff --git a/var/spack/repos/builtin/packages/py-click-plugins/package.py b/var/spack/repos/builtin/packages/py-click-plugins/package.py
index 33ec97c648..cf15ed4638 100644
--- a/var/spack/repos/builtin/packages/py-click-plugins/package.py
+++ b/var/spack/repos/builtin/packages/py-click-plugins/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyClickPlugins(PythonPackage):
"""An extension module for py-click to register external CLI
commands via setuptools entry-points."""
- homepage = "https://pypi.org/project/click-plugins/"
- url = "https://pypi.io/packages/source/c/click-plugins/click-plugins-1.0.4.tar.gz"
+ pypi = "click-plugins/click-plugins-1.0.4.tar.gz"
version('1.0.4', sha256='dfed74b5063546a137de99baaaf742b4de4337ad2b3e1df5ec7c8a256adc0847')
diff --git a/var/spack/repos/builtin/packages/py-click-repl/package.py b/var/spack/repos/builtin/packages/py-click-repl/package.py
index 11e1a693ae..0eff678cf7 100644
--- a/var/spack/repos/builtin/packages/py-click-repl/package.py
+++ b/var/spack/repos/builtin/packages/py-click-repl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyClickRepl(PythonPackage):
"""Subcommand REPL for click apps """
homepage = "https://github.com/click-contrib/click-repl"
- url = "https://files.pythonhosted.org/packages/51/99/6a722e232f92fdc21c46fd042fea63e7c2fcda3086ff5db62edd595d3f49/click-repl-0.1.6.tar.gz"
+ pypi = "click-repl/click-repl-0.1.6.tar.gz"
version('0.1.6', sha256='b9f29d52abc4d6059f8e276132a111ab8d94980afe6a5432b9d996544afa95d5')
diff --git a/var/spack/repos/builtin/packages/py-click/package.py b/var/spack/repos/builtin/packages/py-click/package.py
index 52e616dbfc..260fb5e752 100644
--- a/var/spack/repos/builtin/packages/py-click/package.py
+++ b/var/spack/repos/builtin/packages/py-click/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@ class PyClick(PythonPackage):
"""A simple wrapper around optparse for powerful command line utilities."""
homepage = "http://github.com/mitsuhiko/click"
- url = "https://pypi.io/packages/source/c/click/click-7.1.2.tar.gz"
+ pypi = "click/click-7.1.2.tar.gz"
version('7.1.2', sha256='d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a')
version('7.0', sha256='5b94b49521f6456670fdb30cd82a4eca9412788a93fa6dd6df72c94d5a8ff2d7',
diff --git a/var/spack/repos/builtin/packages/py-cligj/package.py b/var/spack/repos/builtin/packages/py-cligj/package.py
index f35a0ef68f..9f0cc7a391 100644
--- a/var/spack/repos/builtin/packages/py-cligj/package.py
+++ b/var/spack/repos/builtin/packages/py-cligj/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-clint/package.py b/var/spack/repos/builtin/packages/py-clint/package.py
index e8a82f5ddf..600e83d4e2 100644
--- a/var/spack/repos/builtin/packages/py-clint/package.py
+++ b/var/spack/repos/builtin/packages/py-clint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyClint(PythonPackage):
"""Python Command-line Application Tools"""
homepage = "https://github.com/kennethreitz-archive/clint"
- url = "https://pypi.io/packages/source/c/clint/clint-0.5.1.tar.gz"
+ pypi = "clint/clint-0.5.1.tar.gz"
version('0.5.1', sha256='05224c32b1075563d0b16d0015faaf9da43aa214e4a2140e51f08789e7a4c5aa')
diff --git a/var/spack/repos/builtin/packages/py-clipboard/package.py b/var/spack/repos/builtin/packages/py-clipboard/package.py
index b80f58d098..7b9373e787 100644
--- a/var/spack/repos/builtin/packages/py-clipboard/package.py
+++ b/var/spack/repos/builtin/packages/py-clipboard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyClipboard(PythonPackage):
"""A cross platform clipboard operation library of Python."""
homepage = "https://github.com/terryyin/clipboard"
- url = "https://pypi.io/packages/source/c/clipboard/clipboard-0.0.4.tar.gz"
+ pypi = "clipboard/clipboard-0.0.4.tar.gz"
version('0.0.4', sha256='a72a78e9c9bf68da1c3f29ee022417d13ec9e3824b511559fd2b702b1dd5b817')
diff --git a/var/spack/repos/builtin/packages/py-cloudpickle/package.py b/var/spack/repos/builtin/packages/py-cloudpickle/package.py
index 0f7e525290..2f5ff6422c 100644
--- a/var/spack/repos/builtin/packages/py-cloudpickle/package.py
+++ b/var/spack/repos/builtin/packages/py-cloudpickle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,12 @@ class PyCloudpickle(PythonPackage):
"""Extended pickling support for Python objects."""
homepage = "https://github.com/cloudpipe/cloudpickle"
- url = "https://pypi.io/packages/source/c/cloudpickle/cloudpickle-0.5.2.tar.gz"
-
- import_modules = ['cloudpickle']
+ pypi = "cloudpickle/cloudpickle-0.5.2.tar.gz"
+ version('1.6.0', sha256='9bc994f9e9447593bd0a45371f0e7ac7333710fcf64a4eb9834bf149f4ef2f32')
version('1.2.1', sha256='603244e0f552b72a267d47a7d9b347b27a3430f58a0536037a290e7e0e212ecf')
+ version('1.1.1', sha256='7d43c4d0c7e9735ee8a352c96f84031dabd6676170c4e5e0585a469cc4769f22')
version('0.5.2', sha256='b0e63dd89ed5285171a570186751bc9b84493675e99e12789e9a5dc5490ef554')
+ depends_on('python@3.5:', type=('build', 'run'), when='@1.6.0:')
depends_on('py-setuptools', type='build')
-
- def build_test(self):
- # PyPI tarball does not come with unit tests
- pass
diff --git a/var/spack/repos/builtin/packages/py-clustershell/package.py b/var/spack/repos/builtin/packages/py-clustershell/package.py
index 5fd696ce89..2134827ae9 100644
--- a/var/spack/repos/builtin/packages/py-clustershell/package.py
+++ b/var/spack/repos/builtin/packages/py-clustershell/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cmake-format/package.py b/var/spack/repos/builtin/packages/py-cmake-format/package.py
index b300b97379..cab5dc3e02 100644
--- a/var/spack/repos/builtin/packages/py-cmake-format/package.py
+++ b/var/spack/repos/builtin/packages/py-cmake-format/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,7 @@ class PyCmakeFormat(PythonPackage):
cmake. Tools include cmake-annotate, cmake-format, cmake-lint,
and ctest-to."""
- homepage = "https://pypi.python.org/pypi/cmake-format"
- url = "https://pypi.io/packages/source/c/cmake_format/cmake_format-0.6.9.tar.gz"
+ pypi = "cmake_format/cmake_format-0.6.9.tar.gz"
version('0.6.10', sha256='82f0ef16236225cb43f45bfb6983ef7f6f72634727a1a6c26290402527bdd793')
version('0.6.9', sha256='b2f8bf2e9c6651126f2f2954b7803222b0faf6b8649eabc4d965ea97483a4d20')
diff --git a/var/spack/repos/builtin/packages/py-cmake/package.py b/var/spack/repos/builtin/packages/py-cmake/package.py
index fc2ab57044..fab0dda083 100644
--- a/var/spack/repos/builtin/packages/py-cmake/package.py
+++ b/var/spack/repos/builtin/packages/py-cmake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyCmake(PythonPackage):
"""
homepage = "https://cmake.org/"
- url = "https://pypi.io/packages/source/c/cmake/cmake-3.18.0.tar.gz"
+ pypi = "cmake/cmake-3.18.0.tar.gz"
version('3.18.0', sha256='52b98c5ee70b5fa30a8623e96482227e065292f78794eb085fdf0fecb204b79b')
diff --git a/var/spack/repos/builtin/packages/py-cmocean/package.py b/var/spack/repos/builtin/packages/py-cmocean/package.py
index aca64870cc..ba33dd142f 100644
--- a/var/spack/repos/builtin/packages/py-cmocean/package.py
+++ b/var/spack/repos/builtin/packages/py-cmocean/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,11 +8,10 @@ class PyCmocean(PythonPackage):
"""Colormaps for Oceanography."""
homepage = "https://matplotlib.org/cmocean/"
- url = "https://pypi.io/packages/source/c/cmocean/cmocean-2.0.tar.gz"
+ pypi = "cmocean/cmocean-2.0.tar.gz"
version('2.0', sha256='13eea3c8994d8e303e32a2db0b3e686f6edfb41cb21e7b0e663c2b17eea9b03a')
depends_on('py-setuptools', type='build')
depends_on('py-matplotlib', type=('build', 'run'))
depends_on('py-numpy', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-cnvkit/package.py b/var/spack/repos/builtin/packages/py-cnvkit/package.py
index 17d4508b15..a18fe650ef 100644
--- a/var/spack/repos/builtin/packages/py-cnvkit/package.py
+++ b/var/spack/repos/builtin/packages/py-cnvkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyCnvkit(PythonPackage):
"""Copy number variation toolkit for high-throughput sequencing."""
homepage = "https://github.com/etal/cnvkit"
- url = "https://pypi.io/packages/source/C/CNVkit/CNVkit-0.9.6.tar.gz"
+ pypi = "CNVkit/CNVkit-0.9.6.tar.gz"
version('0.9.6', sha256='be889c98a5cf0a994330b8c31c0a65151fb0095fe4e75a1e04118da2516248c2')
diff --git a/var/spack/repos/builtin/packages/py-coapthon3/package.py b/var/spack/repos/builtin/packages/py-coapthon3/package.py
index 2697b8e16a..22173535eb 100644
--- a/var/spack/repos/builtin/packages/py-coapthon3/package.py
+++ b/var/spack/repos/builtin/packages/py-coapthon3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-codecov/package.py b/var/spack/repos/builtin/packages/py-codecov/package.py
index afced5c19b..9025209f78 100644
--- a/var/spack/repos/builtin/packages/py-codecov/package.py
+++ b/var/spack/repos/builtin/packages/py-codecov/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyCodecov(PythonPackage):
"""Hosted coverage reports for Github, Bitbucket and Gitlab."""
homepage = "https://github.com/codecov/codecov-python"
- url = "https://pypi.io/packages/source/c/codecov/codecov-2.0.15.tar.gz"
-
- import_modules = ['codecov']
+ pypi = "codecov/codecov-2.0.15.tar.gz"
version('2.0.15', sha256='8ed8b7c6791010d359baed66f84f061bba5bd41174bf324c31311e8737602788')
@@ -20,5 +18,3 @@ class PyCodecov(PythonPackage):
depends_on('py-requests@2.7.9:', type=('build', 'run'))
depends_on('py-coverage', type=('build', 'run'))
depends_on('py-argparse', when='^python@:2.6', type=('build', 'run'))
- depends_on('py-unittest2', type='test')
- depends_on('py-linecache2', type='test')
diff --git a/var/spack/repos/builtin/packages/py-cogent/package.py b/var/spack/repos/builtin/packages/py-cogent/package.py
index 8605e05bea..ef791daad6 100644
--- a/var/spack/repos/builtin/packages/py-cogent/package.py
+++ b/var/spack/repos/builtin/packages/py-cogent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,11 @@ class PyCogent(PythonPackage):
"""A toolkit for statistical analysis of biological sequences."""
homepage = "http://pycogent.org"
- url = "https://pypi.io/packages/source/c/cogent/cogent-1.9.tar.gz"
+ pypi = "cogent/cogent-1.9.tar.gz"
version('1.9', sha256='57d8c58e0273ffe4f2b907874f9b49dadfd0600f5507b7666369f4e44d56ce14')
version('1.5.3', url="https://pypi.io/packages/source/c/cogent/cogent-1.5.3.tgz",
- sha256='1215ac219070b7b2207b0b47b4388510f3e30ccd88160aa9f02f25d24bcbcd95')
+ sha256='1215ac219070b7b2207b0b47b4388510f3e30ccd88160aa9f02f25d24bcbcd95')
variant('matplotlib', default=False, description="graphs related to codon usage")
variant('mpi', default=False, description='MPI required for parallel computation.')
diff --git a/var/spack/repos/builtin/packages/py-coilmq/package.py b/var/spack/repos/builtin/packages/py-coilmq/package.py
index fc2f404e51..a341d1f979 100644
--- a/var/spack/repos/builtin/packages/py-coilmq/package.py
+++ b/var/spack/repos/builtin/packages/py-coilmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-colorama/package.py b/var/spack/repos/builtin/packages/py-colorama/package.py
index be101dc938..fe372be465 100644
--- a/var/spack/repos/builtin/packages/py-colorama/package.py
+++ b/var/spack/repos/builtin/packages/py-colorama/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyColorama(PythonPackage):
"""Cross-platform colored terminal text."""
homepage = "https://github.com/tartley/colorama"
- url = "https://pypi.io/packages/source/c/colorama/colorama-0.3.7.tar.gz"
+ pypi = "colorama/colorama-0.3.7.tar.gz"
version('0.4.1', sha256='05eed71e2e327246ad6b38c540c4a3117230b19679b875190486ddd2d721422d')
version('0.3.7', sha256='e043c8d32527607223652021ff648fbb394d5e19cba9f1a698670b338c9d782b')
diff --git a/var/spack/repos/builtin/packages/py-colored-traceback/package.py b/var/spack/repos/builtin/packages/py-colored-traceback/package.py
new file mode 100644
index 0000000000..e643af79e0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-colored-traceback/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyColoredTraceback(PythonPackage):
+ """Automatically color Python's uncaught exception tracebacks."""
+
+ homepage = "https://github.com/staticshock/colored-traceback.py"
+ pypi = "colored-traceback/colored-traceback-0.3.0.tar.gz"
+
+ version('0.3.0', sha256='6da7ce2b1da869f6bb54c927b415b95727c4bb6d9a84c4615ea77d9872911b05')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pygments', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-colored/package.py b/var/spack/repos/builtin/packages/py-colored/package.py
new file mode 100644
index 0000000000..42a5007582
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-colored/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyColored(PythonPackage):
+ """Simple library for color and formatting to terminal
+
+ Very simple Python library for color and formatting in terminal.
+ Collection of color codes and names for 256 color terminal setups.
+ The following is a list of 256 colors for Xterm, containing an example
+ of the displayed color, Xterm Name, Xterm Number and HEX."""
+
+ homepage = "https://gitlab.com/dslackw/colored"
+ pypi = "colored/colored-1.4.2.tar.gz"
+
+ version('1.4.2', sha256='056fac09d9e39b34296e7618897ed1b8c274f98423770c2980d829fd670955ed')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-coloredlogs/package.py b/var/spack/repos/builtin/packages/py-coloredlogs/package.py
index bc4b8f1434..1cd4a1e14a 100644
--- a/var/spack/repos/builtin/packages/py-coloredlogs/package.py
+++ b/var/spack/repos/builtin/packages/py-coloredlogs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyColoredlogs(PythonPackage):
"""Colored terminal output for Python's logging module"""
- homepage = "https://pypi.org/project/coloredlogs/"
- url = "https://pypi.io/packages/source/c/coloredlogs/coloredlogs-10.0.tar.gz"
+ pypi = "coloredlogs/coloredlogs-10.0.tar.gz"
version('14.0', sha256='a1fab193d2053aa6c0a97608c4342d031f1f93a3d1218432c59322441d31a505')
version('10.0', sha256='b869a2dda3fa88154b9dd850e27828d8755bfab5a838a1c97fbc850c6e377c36')
diff --git a/var/spack/repos/builtin/packages/py-colorful/package.py b/var/spack/repos/builtin/packages/py-colorful/package.py
index 377b9e1c46..a2f767afad 100644
--- a/var/spack/repos/builtin/packages/py-colorful/package.py
+++ b/var/spack/repos/builtin/packages/py-colorful/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyColorful(PythonPackage):
"""Terminal string styling done right, in Python."""
homepage = "https://github.com/timofurrer/colorful"
- url = "https://pypi.io/packages/source/c/colorful/colorful-0.5.4.tar.gz"
+ pypi = "colorful/colorful-0.5.4.tar.gz"
version('0.5.4', sha256='86848ad4e2eda60cd2519d8698945d22f6f6551e23e95f3f14dfbb60997807ea')
diff --git a/var/spack/repos/builtin/packages/py-colorlog/package.py b/var/spack/repos/builtin/packages/py-colorlog/package.py
index 05268384f2..2e8f2b7f75 100644
--- a/var/spack/repos/builtin/packages/py-colorlog/package.py
+++ b/var/spack/repos/builtin/packages/py-colorlog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyColorlog(PythonPackage):
"""A colored formatter for the python logging module"""
homepage = "https://github.com/borntyping/python-colorlog"
- url = "https://pypi.io/packages/source/c/colorlog/colorlog-4.0.2.tar.gz"
+ pypi = "colorlog/colorlog-4.0.2.tar.gz"
version('4.0.2', sha256='3cf31b25cbc8f86ec01fef582ef3b840950dea414084ed19ab922c8b493f9b42')
version('3.1.4', sha256='418db638c9577f37f0fae4914074f395847a728158a011be2a193ac491b9779d')
diff --git a/var/spack/repos/builtin/packages/py-colormath/package.py b/var/spack/repos/builtin/packages/py-colormath/package.py
index b190cdd418..8e584938fa 100644
--- a/var/spack/repos/builtin/packages/py-colormath/package.py
+++ b/var/spack/repos/builtin/packages/py-colormath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyColormath(PythonPackage):
"""Color math and conversion library."""
- homepage = "https://pypi.python.org/pypi/colormath/2.1.1"
- url = "https://pypi.io/packages/source/c/colormath/colormath-2.1.1.tar.gz"
+ pypi = "colormath/colormath-2.1.1.tar.gz"
version('3.0.0', sha256='3d4605af344527da0e4f9f504fad7ddbebda35322c566a6c72e28edb1ff31217')
version('2.1.1', sha256='003a2b2d9c1f43aa7d90addf1863fb2d822463c839b1166ae3092950792f9707')
diff --git a/var/spack/repos/builtin/packages/py-colorpy/package.py b/var/spack/repos/builtin/packages/py-colorpy/package.py
index 909ad673ef..2aee0a5c97 100644
--- a/var/spack/repos/builtin/packages/py-colorpy/package.py
+++ b/var/spack/repos/builtin/packages/py-colorpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyColorpy(PythonPackage):
"""
homepage = "http://markkness.net/colorpy/ColorPy.html"
- url = "https://pypi.io/packages/source/c/colorpy/colorpy-0.1.1.tar.gz"
+ pypi = "colorpy/colorpy-0.1.1.tar.gz"
version('0.1.1', sha256='e400a7e879adc83c6098dde13cdd093723f3936778c245b1caf88f5f1411170d')
diff --git a/var/spack/repos/builtin/packages/py-colorspacious/package.py b/var/spack/repos/builtin/packages/py-colorspacious/package.py
index 9efa00007f..4ace96ea36 100644
--- a/var/spack/repos/builtin/packages/py-colorspacious/package.py
+++ b/var/spack/repos/builtin/packages/py-colorspacious/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyColorspacious(PythonPackage):
"""
homepage = "https://github.com/njsmith/colorspacious"
- url = "https://pypi.io/packages/source/c/colorspacious/colorspacious-1.1.2.tar.gz"
+ pypi = "colorspacious/colorspacious-1.1.2.tar.gz"
version('1.1.2', sha256='5e9072e8cdca889dac445c35c9362a22ccf758e97b00b79ff0d5a7ba3e11b618')
diff --git a/var/spack/repos/builtin/packages/py-commonmark/package.py b/var/spack/repos/builtin/packages/py-commonmark/package.py
index 20d2b605a4..09fcc65150 100644
--- a/var/spack/repos/builtin/packages/py-commonmark/package.py
+++ b/var/spack/repos/builtin/packages/py-commonmark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyCommonmark(PythonPackage):
modules."""
homepage = "https://github.com/readthedocs/commonmark.py"
- url = "https://pypi.io/packages/source/c/commonmark/commonmark-0.9.0.tar.gz"
+ pypi = "commonmark/commonmark-0.9.0.tar.gz"
version('0.9.0', sha256='867fc5db078ede373ab811e16b6789e9d033b15ccd7296f370ca52d1ee792ce0')
diff --git a/var/spack/repos/builtin/packages/py-configargparse/package.py b/var/spack/repos/builtin/packages/py-configargparse/package.py
index acaf0cc4bb..9871f2e4a6 100644
--- a/var/spack/repos/builtin/packages/py-configargparse/package.py
+++ b/var/spack/repos/builtin/packages/py-configargparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-configobj/package.py b/var/spack/repos/builtin/packages/py-configobj/package.py
index 350695780d..262fe83b05 100644
--- a/var/spack/repos/builtin/packages/py-configobj/package.py
+++ b/var/spack/repos/builtin/packages/py-configobj/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyConfigobj(PythonPackage):
"""
homepage = "https://github.com/DiffSK/configobj"
- url = "https://pypi.io/packages/source/c/configobj/configobj-5.0.6.tar.gz"
+ pypi = "configobj/configobj-5.0.6.tar.gz"
version('5.0.6', sha256='a2f5650770e1c87fb335af19a9b7eb73fc05ccf22144eb68db7d00cd2bcb0902')
version('4.7.2', sha256='515ff923462592e8321df8b48c47e3428f8d406ee22b8de77bef969d1af11171')
diff --git a/var/spack/repos/builtin/packages/py-configparser/package.py b/var/spack/repos/builtin/packages/py-configparser/package.py
index 7a4109552c..fd5349f3d3 100644
--- a/var/spack/repos/builtin/packages/py-configparser/package.py
+++ b/var/spack/repos/builtin/packages/py-configparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyConfigparser(PythonPackage):
Python 2.6-3.5."""
homepage = "https://docs.python.org/3/library/configparser.html"
- url = "https://pypi.io/packages/source/c/configparser/configparser-3.5.0.tar.gz"
+ pypi = "configparser/configparser-3.5.0.tar.gz"
version('3.5.1', sha256='f41e19cb29bebfccb1a78627b3f328ec198cc8f39510c7c55e7dfc0ab58c8c62')
version('3.5.0', sha256='5308b47021bc2340965c371f0f058cc6971a04502638d4244225c49d80db273a')
diff --git a/var/spack/repos/builtin/packages/py-contextily/package.py b/var/spack/repos/builtin/packages/py-contextily/package.py
new file mode 100644
index 0000000000..d5bcfa3dee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-contextily/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyContextily(PythonPackage):
+ """Context geo-tiles in Python."""
+
+ homepage = "https://github.com/darribas/contextily"
+ pypi = "contextily/contextily-1.0.1.tar.gz"
+
+ maintainers = ['adamjstewart']
+
+ version('1.0.1', sha256='f7dc25dbc8e01163be6cdeedb49a56da9cd0d586c838861f442ef2ee45eba9d4')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-geopy', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-mercantile', type=('build', 'run'))
+ depends_on('pil', type=('build', 'run'))
+ depends_on('py-rasterio', type=('build', 'run'))
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-joblib', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-contextlib2/package.py b/var/spack/repos/builtin/packages/py-contextlib2/package.py
index 7231512b35..6bc59bb426 100644
--- a/var/spack/repos/builtin/packages/py-contextlib2/package.py
+++ b/var/spack/repos/builtin/packages/py-contextlib2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-contextvars/package.py b/var/spack/repos/builtin/packages/py-contextvars/package.py
index a0c1a87499..189d38cf0f 100644
--- a/var/spack/repos/builtin/packages/py-contextvars/package.py
+++ b/var/spack/repos/builtin/packages/py-contextvars/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyContextvars(PythonPackage):
(see PEP 567) for Python 3.6."""
homepage = "https://github.com/MagicStack/contextvars"
- url = "https://pypi.io/packages/source/c/contextvars/contextvars-2.4.tar.gz"
+ pypi = "contextvars/contextvars-2.4.tar.gz"
version('2.4', sha256='f38c908aaa59c14335eeea12abea5f443646216c4e29380d7bf34d2018e2c39e')
diff --git a/var/spack/repos/builtin/packages/py-convertdate/package.py b/var/spack/repos/builtin/packages/py-convertdate/package.py
index b75b839ad0..14fdb922b2 100644
--- a/var/spack/repos/builtin/packages/py-convertdate/package.py
+++ b/var/spack/repos/builtin/packages/py-convertdate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyConvertdate(PythonPackage):
Indian Civil, Islamic, ISO, Julian, Mayan and Persian."""
homepage = "https://github.com/fitnr/convertdate/"
- url = "https://pypi.io/packages/source/c/convertdate/convertdate-2.2.0.tar.gz"
+ pypi = "convertdate/convertdate-2.2.0.tar.gz"
version('2.2.0', sha256='9d2b0cd8d5382d2458d4cfa59665abba398a9e9bfd3a01c6f61b7b47768d28bf')
diff --git a/var/spack/repos/builtin/packages/py-cookiecutter/package.py b/var/spack/repos/builtin/packages/py-cookiecutter/package.py
index 4a39c6ea3d..efe34d3fb6 100644
--- a/var/spack/repos/builtin/packages/py-cookiecutter/package.py
+++ b/var/spack/repos/builtin/packages/py-cookiecutter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-counter/package.py b/var/spack/repos/builtin/packages/py-counter/package.py
index f751818caa..2f949c5536 100644
--- a/var/spack/repos/builtin/packages/py-counter/package.py
+++ b/var/spack/repos/builtin/packages/py-counter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,8 @@ class PyCounter(PythonPackage):
"""Counter package defines the "counter.Counter" class similar to
bags or multisets in other languages."""
- import_modules = ['counter']
-
homepage = "https://github.com/KelSolaar/Counter"
- url = "https://pypi.io/packages/source/C/Counter/Counter-1.0.0.tar.gz"
+ pypi = "Counter/Counter-1.0.0.tar.gz"
version('1.0.0', sha256='9e008590e360936a66c98e1a01e7a9a0ecf6af19cc588107121f5fb4613bb60c')
diff --git a/var/spack/repos/builtin/packages/py-cov-core/package.py b/var/spack/repos/builtin/packages/py-cov-core/package.py
index 8ecc781755..6214952e07 100644
--- a/var/spack/repos/builtin/packages/py-cov-core/package.py
+++ b/var/spack/repos/builtin/packages/py-cov-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyCovCore(PythonPackage):
"""plugin core for use by pytest-cov, nose-cov and nose2-cov"""
homepage = "https://github.com/schlamar/cov-core"
- url = "https://pypi.io/packages/source/c/cov-core/cov-core-1.15.0.tar.gz"
+ pypi = "cov-core/cov-core-1.15.0.tar.gz"
version('1.15.0', sha256='4a14c67d520fda9d42b0da6134638578caae1d374b9bb462d8de00587dba764c')
diff --git a/var/spack/repos/builtin/packages/py-coverage/package.py b/var/spack/repos/builtin/packages/py-coverage/package.py
index 9ec93625d3..2597f15c53 100644
--- a/var/spack/repos/builtin/packages/py-coverage/package.py
+++ b/var/spack/repos/builtin/packages/py-coverage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,15 @@ class PyCoverage(PythonPackage):
""" Testing coverage checker for python """
homepage = "http://nedbatchelder.com/code/coverage/"
- url = "https://pypi.io/packages/source/c/coverage/coverage-4.5.4.tar.gz"
+ pypi = "coverage/coverage-4.5.4.tar.gz"
version('5.3', sha256='280baa8ec489c4f542f8940f9c4c2181f0306a8ee1a54eceba071a449fb870a0')
+ version('5.0.4', sha256='1b60a95fc995649464e0cd48cecc8288bac5f4198f21d04b8229dc4097d76823')
version('4.5.4', sha256='e07d9f1a23e9e93ab5c62902833bf3e4b1f65502927379148b6622686223125c')
version('4.5.3', sha256='9de60893fb447d1e797f6bf08fdf0dbcda0c1e34c1b06c92bd3a363c0ea8c609')
version('4.3.4', sha256='eaaefe0f6aa33de5a65f48dd0040d7fe08cac9ac6c35a56d0a7db109c3e733df')
version('4.0a6', sha256='85c7f3efceb3724ab066a3fcccc05b9b89afcaefa5b669a7e2222d31eac4728d')
depends_on('python@2.6:2.8,3.3:', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'), when="@5.0.0:")
depends_on('py-setuptools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cppheaderparser/package.py b/var/spack/repos/builtin/packages/py-cppheaderparser/package.py
index 23e4c1a700..a8f80896d3 100644
--- a/var/spack/repos/builtin/packages/py-cppheaderparser/package.py
+++ b/var/spack/repos/builtin/packages/py-cppheaderparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyCppheaderparser(PythonPackage):
"""Parse C++ header files and generate a data structure
representing the class"""
- homepage = "https://pypi.org/project/CppHeaderParser"
- url = "https://pypi.io/packages/source/C/CppHeaderParser/CppHeaderParser-2.7.4.tar.gz"
+ pypi = "CppHeaderParser/CppHeaderParser-2.7.4.tar.gz"
version('2.7.4', sha256='382b30416d95b0a5e8502b214810dcac2a56432917e2651447d3abe253e3cc42')
diff --git a/var/spack/repos/builtin/packages/py-crcmod/package.py b/var/spack/repos/builtin/packages/py-crcmod/package.py
index 4ca6189b9e..bd5b86470c 100644
--- a/var/spack/repos/builtin/packages/py-crcmod/package.py
+++ b/var/spack/repos/builtin/packages/py-crcmod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyCrcmod(PythonPackage):
compute the Cyclic Redundancy Check (CRC)"""
homepage = "http://crcmod.sourceforge.net/"
- url = "https://pypi.io/packages/source/c/crcmod/crcmod-1.7.tar.gz"
+ pypi = "crcmod/crcmod-1.7.tar.gz"
version('1.7', sha256='dc7051a0db5f2bd48665a990d3ec1cc305a466a77358ca4492826f41f283601e')
version('1.6', sha256='56d27d035ea029c6ed96779ca042c0136d39d106e3c30baa6422738c7d86aaa5')
diff --git a/var/spack/repos/builtin/packages/py-crispresso/package.py b/var/spack/repos/builtin/packages/py-crispresso/package.py
index fb46dca86a..093c52c323 100644
--- a/var/spack/repos/builtin/packages/py-crispresso/package.py
+++ b/var/spack/repos/builtin/packages/py-crispresso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyCrispresso(PythonPackage):
outcomes from deep sequencing data."""
homepage = "https://github.com/lucapinello/CRISPResso"
- url = "https://pypi.io/packages/source/C/CRISPResso/CRISPResso-1.0.8.tar.gz"
+ pypi = "CRISPResso/CRISPResso-1.0.8.tar.gz"
version('1.0.8', sha256='b04ac8781ff8ed56d018c357e741f146b72ad7e0d23c9e5bc1e1bcd1a873ebc3')
diff --git a/var/spack/repos/builtin/packages/py-crossmap/package.py b/var/spack/repos/builtin/packages/py-crossmap/package.py
index 14298c3a67..c2eee33fec 100644
--- a/var/spack/repos/builtin/packages/py-crossmap/package.py
+++ b/var/spack/repos/builtin/packages/py-crossmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cryptography/package.py b/var/spack/repos/builtin/packages/py-cryptography/package.py
index ee433a9d87..ccd240519a 100644
--- a/var/spack/repos/builtin/packages/py-cryptography/package.py
+++ b/var/spack/repos/builtin/packages/py-cryptography/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyCryptography(PythonPackage):
and primitives to Python developers"""
homepage = "https://github.com/pyca/cryptography"
- url = "https://pypi.io/packages/source/c/cryptography/cryptography-1.8.1.tar.gz"
+ pypi = "cryptography/cryptography-1.8.1.tar.gz"
version('2.7', sha256='e6347742ac8f35ded4a46ff835c60e68c22a536a8ae5c4422966d06946b6d4c6')
version('2.3.1', sha256='8d10113ca826a4c29d5b85b2c4e045ffa8bad74fb525ee0eceb1d38d4c70dfd6')
diff --git a/var/spack/repos/builtin/packages/py-cssselect/package.py b/var/spack/repos/builtin/packages/py-cssselect/package.py
index 6eec358501..5cf408f223 100644
--- a/var/spack/repos/builtin/packages/py-cssselect/package.py
+++ b/var/spack/repos/builtin/packages/py-cssselect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-csvkit/package.py b/var/spack/repos/builtin/packages/py-csvkit/package.py
index 217a5174f7..1bdf4fb282 100644
--- a/var/spack/repos/builtin/packages/py-csvkit/package.py
+++ b/var/spack/repos/builtin/packages/py-csvkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyCsvkit(PythonPackage):
formats"""
homepage = 'http://csvkit.rtfd.org/'
- url = "https://pypi.io/packages/source/c/csvkit/csvkit-0.9.1.tar.gz"
+ pypi = "csvkit/csvkit-0.9.1.tar.gz"
version('1.0.4', sha256='1353a383531bee191820edfb88418c13dfe1cdfa9dd3dc46f431c05cd2a260a0')
version('0.9.1', sha256='92f8b8647becb5cb1dccb3af92a13a4e85702d42ba465ce8447881fb38c9f93a')
diff --git a/var/spack/repos/builtin/packages/py-cudf/package.py b/var/spack/repos/builtin/packages/py-cudf/package.py
index 7d6e42db01..38cfe7d750 100644
--- a/var/spack/repos/builtin/packages/py-cudf/package.py
+++ b/var/spack/repos/builtin/packages/py-cudf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cuml/package.py b/var/spack/repos/builtin/packages/py-cuml/package.py
index 05d09fe3d5..1becd4d192 100644
--- a/var/spack/repos/builtin/packages/py-cuml/package.py
+++ b/var/spack/repos/builtin/packages/py-cuml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cupy/package.py b/var/spack/repos/builtin/packages/py-cupy/package.py
index 3ed5b9f557..26b06235e2 100644
--- a/var/spack/repos/builtin/packages/py-cupy/package.py
+++ b/var/spack/repos/builtin/packages/py-cupy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyCupy(PythonPackage):
full use of the GPU architecture."""
homepage = "https://cupy.dev/"
- url = "https://pypi.io/packages/source/c/cupy/cupy-8.0.0.tar.gz"
+ pypi = "cupy/cupy-8.0.0.tar.gz"
version('8.0.0', sha256='d1dcba5070dfa754445d010cdc952ff6b646d5f9bdcd7a63e8246e2472c3ddb8')
diff --git a/var/spack/repos/builtin/packages/py-current/package.py b/var/spack/repos/builtin/packages/py-current/package.py
index 3604d3ca14..5eb287a38e 100644
--- a/var/spack/repos/builtin/packages/py-current/package.py
+++ b/var/spack/repos/builtin/packages/py-current/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyCurrent(PythonPackage):
"""Current module relative paths and imports"""
homepage = "http://github.com/xflr6/current"
- url = "https://pypi.io/packages/source/c/current/current-0.3.1.zip"
+ pypi = "current/current-0.3.1.zip"
version('0.3.1', sha256='207613dc19a6cc8e1a756f26e416733c8f82a70e4ae81103d22f483aae6492a8')
diff --git a/var/spack/repos/builtin/packages/py-cutadapt/package.py b/var/spack/repos/builtin/packages/py-cutadapt/package.py
index 056d112aa8..ff1d146cb6 100644
--- a/var/spack/repos/builtin/packages/py-cutadapt/package.py
+++ b/var/spack/repos/builtin/packages/py-cutadapt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyCutadapt(PythonPackage):
reads."""
homepage = "https://cutadapt.readthedocs.io"
- url = "https://pypi.io/packages/source/c/cutadapt/cutadapt-1.13.tar.gz"
+ pypi = "cutadapt/cutadapt-1.13.tar.gz"
git = "https://github.com/marcelm/cutadapt.git"
version('2.10', sha256='936b88374b5b393a954852a0fe317a85b798dd4faf5ec52cf3ef4f3c062c242a')
diff --git a/var/spack/repos/builtin/packages/py-cvxopt/package.py b/var/spack/repos/builtin/packages/py-cvxopt/package.py
index 1cc1a932c1..c23bb2c640 100644
--- a/var/spack/repos/builtin/packages/py-cvxopt/package.py
+++ b/var/spack/repos/builtin/packages/py-cvxopt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,7 @@ class PyCvxopt(PythonPackage):
Python programming language."""
homepage = "http://cvxopt.org/"
- url = "https://pypi.io/packages/source/c/cvxopt/cvxopt-1.1.9.tar.gz"
-
- import_modules = ['cvxopt']
+ pypi = "cvxopt/cvxopt-1.1.9.tar.gz"
version('1.2.5', sha256='94ec8c36bd6628a11de9014346692daeeef99b3b7bae28cef30c7490bbcb2d72')
version('1.1.9', sha256='8f157e7397158812cabd340b68546f1baa55a486ed0aad8bc26877593dc2983d')
diff --git a/var/spack/repos/builtin/packages/py-cvxpy/package.py b/var/spack/repos/builtin/packages/py-cvxpy/package.py
index 68b82e8a59..a66058a72c 100644
--- a/var/spack/repos/builtin/packages/py-cvxpy/package.py
+++ b/var/spack/repos/builtin/packages/py-cvxpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,18 +11,15 @@ class PyCvxpy(PythonPackage):
"""Convex optimization, for everyone."""
homepage = "https://www.cvxpy.org/index.html"
- url = "https://www.pypi.io/packages/source/c/cvxpy/cvxpy-1.0.25.tar.gz"
+ pypi = "cvxpy/cvxpy-1.0.25.tar.gz"
version('1.0.25', sha256='8535529ddb807067b0d59661dce1d9a6ddb2a218398a38ea7772328ad8a6ea13')
depends_on('py-setuptools', type='build')
- depends_on('py-nose', type='test')
-
depends_on('py-numpy@1.15:', type=('build', 'run'))
depends_on('py-scipy@1.1.0:', type=('build', 'run'))
depends_on('py-ecos@2:', type=('build', 'run'))
depends_on('py-scs@1.1.3:', type=('build', 'run'))
depends_on('py-osqp@0.4.1', type=('build', 'run'))
-
depends_on('py-multiprocess', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cycler/package.py b/var/spack/repos/builtin/packages/py-cycler/package.py
index 9deebea972..1681b56a1e 100644
--- a/var/spack/repos/builtin/packages/py-cycler/package.py
+++ b/var/spack/repos/builtin/packages/py-cycler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-cymem/package.py b/var/spack/repos/builtin/packages/py-cymem/package.py
index fa076b8836..674b530642 100644
--- a/var/spack/repos/builtin/packages/py-cymem/package.py
+++ b/var/spack/repos/builtin/packages/py-cymem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyCymem(PythonPackage):
"""Manage calls to calloc/free through Cython."""
homepage = "https://github.com/explosion/cymem"
- url = "https://pypi.io/packages/source/c/cymem/cymem-2.0.3.tar.gz"
+ pypi = "cymem/cymem-2.0.3.tar.gz"
version('2.0.3', sha256='5083b2ab5fe13ced094a82e0df465e2dbbd9b1c013288888035e24fd6eb4ed01')
diff --git a/var/spack/repos/builtin/packages/py-cyordereddict/package.py b/var/spack/repos/builtin/packages/py-cyordereddict/package.py
index 19640edae8..ec5fd981dc 100644
--- a/var/spack/repos/builtin/packages/py-cyordereddict/package.py
+++ b/var/spack/repos/builtin/packages/py-cyordereddict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,5 +11,5 @@ class PyCyordereddict(PythonPackage):
A drop-in replacement that is 2-6x faster."""
homepage = "https://github.com/shoyer/cyordereddict"
- url = "https://pypi.io/packages/source/c/cyordereddict/cyordereddict-1.0.0.tar.gz"
+ pypi = "cyordereddict/cyordereddict-1.0.0.tar.gz"
version('1.0.0', sha256='d9b2c31796999770801a9a49403b8cb49510ecb64e5d1e9d4763ed44f2d5a76e')
diff --git a/var/spack/repos/builtin/packages/py-cython-bbox/package.py b/var/spack/repos/builtin/packages/py-cython-bbox/package.py
new file mode 100644
index 0000000000..b0411fe56c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-cython-bbox/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyCythonBbox(PythonPackage):
+ """cython_bbox is widely used in object detection tasks. To my
+ best knowledge, it was first implemented in Faster-RCNN. Since
+ then, almost all object detection projects use the source code
+ directly. In order to use it in standalone code snippets or small projects,
+ I make it a pypi module. The cython_bbox.pyx is totally borrowed
+ from Faster-RCNN. Thanks RBG!"""
+
+ homepage = "https://github.com/samson-wang/cython_bbox.git"
+ pypi = "cython-bbox/cython_bbox-0.1.3.tar.gz"
+
+ version('0.1.3', sha256='82e2d887534ecc10d3507489a05b11259f3baacd29eee37e6d8c97e1ffb16554')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cython/package.py b/var/spack/repos/builtin/packages/py-cython/package.py
index 2dd532be2f..98c3242fec 100644
--- a/var/spack/repos/builtin/packages/py-cython/package.py
+++ b/var/spack/repos/builtin/packages/py-cython/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,18 +9,11 @@ from spack import *
class PyCython(PythonPackage):
"""The Cython compiler for writing C extensions for the Python language."""
- homepage = "https://pypi.python.org/pypi/cython"
- url = "https://pypi.io/packages/source/c/cython/Cython-0.29.21.tar.gz"
-
- import_modules = [
- 'cython', 'Cython', 'Cython.Build', 'Cython.Compiler',
- 'Cython.Runtime', 'Cython.Distutils', 'Cython.Debugger',
- 'Cython.Debugger.Tests', 'Cython.Plex', 'Cython.Tests',
- 'Cython.Build.Tests', 'Cython.Compiler.Tests', 'Cython.Utility',
- 'Cython.Tempita', 'pyximport',
- ]
+ pypi = "cython/Cython-0.29.21.tar.gz"
+ version('0.29.22', sha256='df6b83c7a6d1d967ea89a2903e4a931377634a297459652e4551734c48195406')
version('0.29.21', sha256='e57acb89bd55943c8d8bf813763d20b9099cc7165c0f16b707631a7654be9cad')
+ version('0.29.20', sha256='22d91af5fc2253f717a1b80b8bb45acb655f643611983fd6f782b9423f8171c7')
version('0.29.16', sha256='232755284f942cbb3b43a06cd85974ef3c970a021aef19b5243c03ee2b08fa05')
version('0.29.15', sha256='60d859e1efa5cc80436d58aecd3718ff2e74b987db0518376046adedba97ac30')
version('0.29.14', sha256='e4d6bb8703d0319eb04b7319b12ea41580df44fd84d83ccda13ea463c6801414')
@@ -47,6 +40,8 @@ class PyCython(PythonPackage):
"""Returns the Cython command"""
return Executable(self.prefix.bin.cython)
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
def build_test(self):
# Warning: full suite of unit tests takes a very long time
python('runtests.py', '-j', str(make_jobs))
diff --git a/var/spack/repos/builtin/packages/py-cyvcf2/package.py b/var/spack/repos/builtin/packages/py-cyvcf2/package.py
index 153d00fe29..c9af6c2bac 100644
--- a/var/spack/repos/builtin/packages/py-cyvcf2/package.py
+++ b/var/spack/repos/builtin/packages/py-cyvcf2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyCyvcf2(PythonPackage):
"""fast vcf parsing with cython + htslib"""
homepage = "https://github.com/brentp/cyvcf2"
- url = "https://pypi.io/packages/source/c/cyvcf2/cyvcf2-0.11.7.tar.gz"
+ pypi = "cyvcf2/cyvcf2-0.11.7.tar.gz"
version('0.11.7', sha256='a4b6229b89a0a1043684c65cbdd702c366a8800dc3591fb44c4b5a08640cbeec')
diff --git a/var/spack/repos/builtin/packages/py-d2to1/package.py b/var/spack/repos/builtin/packages/py-d2to1/package.py
index 040d0b8d4b..59f4b3c496 100644
--- a/var/spack/repos/builtin/packages/py-d2to1/package.py
+++ b/var/spack/repos/builtin/packages/py-d2to1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-dadi/package.py b/var/spack/repos/builtin/packages/py-dadi/package.py
new file mode 100644
index 0000000000..9f3a2071ea
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dadi/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyDadi(PythonPackage):
+ """Fit population genetic models of demography and selection using
+ diffusion approximations to the allele frequency spectrum """
+
+ homepage = "https://bitbucket.org/gutenkunstlab/dadi/src/master/"
+ git = "https://bitbucket.org/gutenkunstlab/dadi.git"
+ pypi = "dadi/dadi-2.1.0.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('2020-12-02', commit='047bac0')
+ version('2.1.0', sha256='97a15aa7ef501850cad4cff66b11b66ecb65d5d68acbf2ff713585c81c3a1038')
+
+ depends_on('py-setuptools', type=('build'))
+ depends_on('python@3:', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('nlopt', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-dask-glm/package.py b/var/spack/repos/builtin/packages/py-dask-glm/package.py
new file mode 100644
index 0000000000..9a8e280390
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dask-glm/package.py
@@ -0,0 +1,47 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyDaskGlm(PythonPackage):
+ """Dask-glm is a library for fitting Generalized Linear Models on
+ large datasets."""
+
+ homepage = "https://dask-glm.readthedocs.io/en/latest/"
+ pypi = "dask-glm/dask-glm-0.2.0.tar.gz"
+
+ version('0.2.0', sha256='58b86cebf04fe5b9e58092e1c467e32e60d01e11b71fdc628baaa9fc6d1adee5')
+
+ variant('docs', default=False, description='Build HTML documentation')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-cloudpickle@0.2.2:', type=('build', 'run'))
+ depends_on('py-dask+array', type=('build', 'run'))
+ depends_on('py-multipledispatch@0.4.9:', type=('build', 'run'))
+ depends_on('py-scipy@0.18.1:', type=('build', 'run'))
+ depends_on('py-scikit-learn@0.18:', type=('build', 'run'), when='~docs')
+ depends_on('py-scikit-learn@0.18:0.21.999', type=('build', 'run'), when='+docs')
+ depends_on('py-jupyter', type='build', when='+docs')
+ depends_on('py-nbsphinx', type='build', when='+docs')
+ depends_on('py-notebook', type='build', when='+docs')
+ depends_on('py-numpydoc', type='build', when='+docs')
+ depends_on('py-sphinx', type='build', when='+docs')
+ depends_on('py-sphinx-rtd-theme', type='build', when='+docs')
+ depends_on('pandoc', type='build', when='+docs')
+ depends_on('py-pip', type='build', when='+docs')
+ depends_on('py-s3fs', type='build', when='+docs')
+ depends_on('py-matplotlib', type='build', when='+docs')
+ depends_on('llvm@:10.0.1~flang', type='build', when='+docs')
+ depends_on('cairo+X+ft+fc+pdf+gobject', type='build', when='+docs')
+ depends_on('harfbuzz+graphite2', type='build', when='+docs')
+
+ @run_after('install')
+ def install_docs(self):
+ if '+docs' in self.spec:
+ with working_dir('docs'):
+ make('html')
+ install_tree('docs', self.prefix.docs)
diff --git a/var/spack/repos/builtin/packages/py-dask-ml/package.py b/var/spack/repos/builtin/packages/py-dask-ml/package.py
new file mode 100644
index 0000000000..272dcd46ee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dask-ml/package.py
@@ -0,0 +1,65 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyDaskMl(PythonPackage):
+ """Scalable Machine Learning with Dask."""
+
+ homepage = "https://ml.dask.org/"
+ pypi = "dask-ml/dask-ml-1.8.0.tar.gz"
+
+ version('1.8.0', sha256='8fc4ac3ec1915e382fb8cae9ff1ec9b5ac1bee0b6f4c6975d6e6cb7191a4a815')
+
+ variant('docs', default=False, description='Build HTML documentation')
+ variant('xgboost', default=False, description='Deploys XGBoost alongside Dask')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+
+ depends_on('py-dask+array+dataframe@2.4.0:', type=('build', 'run'))
+ depends_on('py-distributed@2.4.0:', type=('build', 'run'))
+ depends_on('py-numba', type=('build', 'run'))
+ depends_on('py-numpy@1.17.3:', type=('build', 'run'))
+ depends_on('py-pandas@0.24.2:', type=('build', 'run'))
+ depends_on('py-scikit-learn@0.23:', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-dask-glm@0.2.0:', type=('build', 'run'))
+ depends_on('py-multipledispatch@0.4.9:', type=('build', 'run'))
+ depends_on('py-packaging', type=('build', 'run'))
+
+ depends_on('py-graphviz', type=('build', 'run'), when='+docs')
+ depends_on('py-heapdict', type=('build', 'run'), when='+docs')
+ depends_on('py-ipykernel', type=('build', 'run'), when='+docs')
+ depends_on('py-ipython', type=('build', 'run'), when='+docs')
+ depends_on('py-nbsphinx', type=('build', 'run'), when='+docs')
+ depends_on('py-nose', type=('build', 'run'), when='+docs')
+ depends_on('py-numpydoc', type=('build', 'run'), when='+docs')
+ depends_on('py-sortedcontainers', type=('build', 'run'), when='+docs')
+ depends_on('py-sphinx', type=('build', 'run'), when='+docs')
+ depends_on('py-sphinx-rtd-theme', type=('build', 'run'), when='+docs')
+ depends_on('py-sphinx-gallery', type=('build', 'run'), when='+docs')
+ depends_on('py-testpath', type=('build', 'run'), when='+docs')
+ depends_on('py-tornado', type=('build', 'run'), when='+docs')
+ depends_on('py-zict', type=('build', 'run'), when='+docs')
+ depends_on('py-dask-sphinx-theme@1.1.0:', type=('build', 'run'), when='+docs')
+ depends_on('py-nbsphinx', type=('build', 'run'), when='+docs')
+
+ depends_on('py-xgboost+dask', type=('build', 'run'), when='+docs')
+ depends_on('py-xgboost+dask', type=('build', 'run'), when='+xgboost')
+
+ patch('xgboost_dependency.patch')
+
+ conflicts('+docs', when='%gcc target=aarch64:')
+
+ @run_after('install')
+ def install_docs(self):
+ if '+docs' in self.spec:
+ with working_dir('docs'):
+ make('html')
+ install_tree('docs', self.prefix.docs)
diff --git a/var/spack/repos/builtin/packages/py-dask-ml/xgboost_dependency.patch b/var/spack/repos/builtin/packages/py-dask-ml/xgboost_dependency.patch
new file mode 100644
index 0000000000..39fa59c943
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dask-ml/xgboost_dependency.patch
@@ -0,0 +1,23 @@
+diff --git a/dask_ml/xgboost.py b/dask_ml/xgboost.py
+index 86e841db..70551df7 100644
+--- a/dask_ml/xgboost.py
++++ b/dask_ml/xgboost.py
+@@ -4,4 +4,4 @@ This may be used for training an XGBoost model on a cluster. XGBoost
+ will be setup in distributed mode alongside your existing
+ ``dask.distributed`` cluster.
+ """
+-from dask_xgboost import * # noqa
++from xgboost import * # noqa
+diff --git a/setup.py b/setup.py
+index 857f6911..fb280973 100644
+--- a/setup.py
++++ b/setup.py
+@@ -35,7 +35,7 @@ test_requires = [
+ "pytest-mock",
+ ]
+ dev_requires = doc_requires + test_requires
+-xgboost_requires = ["dask-xgboost", "xgboost"]
++xgboost_requires = ["xgboost[dask]"]
+ complete_requires = xgboost_requires
+
+ extras_require = {
diff --git a/var/spack/repos/builtin/packages/py-dask-sphinx-theme/package.py b/var/spack/repos/builtin/packages/py-dask-sphinx-theme/package.py
new file mode 100644
index 0000000000..38f213b9d8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dask-sphinx-theme/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyDaskSphinxTheme(PythonPackage):
+ """Sphinx theme for Dask documentation."""
+
+ homepage = "https://github.com/dask/dask-sphinx-theme/"
+ pypi = "dask_sphinx_theme/dask_sphinx_theme-1.3.5.tar.gz"
+
+ version('1.3.5', sha256='151970cf0efedeb398fd6ca080407d3e81b4584d333e24498262d954171baa33')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-sphinx-rtd-theme', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-dask-xgboost/package.py b/var/spack/repos/builtin/packages/py-dask-xgboost/package.py
new file mode 100644
index 0000000000..3428d49d1e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dask-xgboost/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyDaskXgboost(PythonPackage):
+ """Distributed training with XGBoost and Dask.distributed.
+
+ Deprecated: use `py-xgboost+dask` instead."""
+
+ homepage = "https://github.com/dask/dask-xgboost/"
+ pypi = "dask-xgboost/dask-xgboost-0.1.11.tar.gz"
+
+ # Deprecated, see https://github.com/dask/dask-xgboost/issues/80
+ version('0.1.11', sha256='3fbe1bf4344dc74edfbe9f928c7e3e6acc26dc57cefd8da8ae56a15469c6941c', deprecated=True)
+
+ variant('sparse', default=False, description='Add sparse support')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-xgboost@:0.90', type=('build', 'run'))
+ depends_on('py-dask', type=('build', 'run'))
+ depends_on('py-distributed@1.15.2:', type=('build', 'run'))
+
+ depends_on('py-sparse', type=('build', 'run'), when='+sparse')
+ depends_on('py-scipy', type=('build', 'run'), when='+sparse')
diff --git a/var/spack/repos/builtin/packages/py-dask/package.py b/var/spack/repos/builtin/packages/py-dask/package.py
index b6f3a07f10..20900d20c3 100644
--- a/var/spack/repos/builtin/packages/py-dask/package.py
+++ b/var/spack/repos/builtin/packages/py-dask/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,11 @@ class PyDask(PythonPackage):
"""Dask is a flexible parallel computing library for analytics."""
homepage = "https://github.com/dask/dask/"
- url = "https://pypi.io/packages/source/d/dask/dask-1.1.0.tar.gz"
+ pypi = "dask/dask-1.1.0.tar.gz"
maintainers = ['skosukhin']
+ version('2020.12.0', sha256='43e745afd4b464e6c0113131e430a16dce6ac42460b06e24d799093d098f7ab0')
version('2.16.0', sha256='2af5b0dcd48ce679ce0321cf91de623f4fe376262789b951fefa3c334002f350')
version('1.2.2', sha256='5e7876bae2a01b355d1969b73aeafa23310febd8c353163910b73e93dc7e492c')
version('1.1.2', sha256='93b355b9a9c9a3ddbb39fab99d5759aad5cfd346f4520b87788970e80cf97256')
@@ -32,20 +33,19 @@ class PyDask(PythonPackage):
conflicts('+distributed', when='@:0.4.0,0.7.6:0.8.1')
conflicts('+diagnostics', when='@:0.5.0')
conflicts('+yaml', when='@:0.17.5')
+ conflicts('~yaml', when='@2.17.1:')
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
depends_on('python@3.5:', type=('build', 'run'), when='@2.0.0:')
depends_on('python@3.6:', type=('build', 'run'), when='@2.7.0:')
depends_on('py-setuptools', type='build')
- depends_on('py-pytest@3.1.0:', type='test')
- depends_on('py-requests', type='test')
- depends_on('py-pytest-runner', type='test')
# Requirements for dask.array
depends_on('py-numpy@1.10.4:', type=('build', 'run'), when='+array')
depends_on('py-numpy@1.11.0:', type=('build', 'run'), when='@0.17.3: +array')
depends_on('py-numpy@1.13.0:', type=('build', 'run'), when='@1.2.1: +array')
+ depends_on('py-numpy@1.15.1:', type=('build', 'run'), when='@2020.12.0: +array')
depends_on('py-toolz', type=('build', 'run'), when='+array')
depends_on('py-toolz@0.7.2:', type=('build', 'run'), when='@0.7.0: +array')
@@ -80,12 +80,14 @@ class PyDask(PythonPackage):
depends_on('py-numpy@1.10.4:', type=('build', 'run'), when='+dataframe')
depends_on('py-numpy@1.11.0:', type=('build', 'run'), when='@0.17.3: +dataframe')
depends_on('py-numpy@1.13.0:', type=('build', 'run'), when='@1.2.1: +dataframe')
+ depends_on('py-numpy@1.15.1:', type=('build', 'run'), when='@2020.12.0: +dataframe')
depends_on('py-pandas@0.16.0:', type=('build', 'run'), when='+dataframe')
depends_on('py-pandas@0.18.0:', type=('build', 'run'), when='@0.9.0: +dataframe')
depends_on('py-pandas@0.19.0:', type=('build', 'run'), when='@0.14.0: +dataframe')
depends_on('py-pandas@0.21.0:', type=('build', 'run'), when='@1.2.1: +dataframe')
depends_on('py-pandas@0.23.0:', type=('build', 'run'), when='@2.11.0: +dataframe')
+ depends_on('py-pandas@0.25.0:', type=('build', 'run'), when='@2020.12.0: +dataframe')
depends_on('py-toolz', type=('build', 'run'), when='+dataframe')
depends_on('py-toolz@0.7.2:', type=('build', 'run'), when='@0.7.0: +dataframe')
@@ -123,6 +125,7 @@ class PyDask(PythonPackage):
# Requirements for dask.diagnostics
depends_on('py-bokeh', type=('build', 'run'), when='+diagnostics')
depends_on('py-bokeh@1.0.0:', type=('build', 'run'), when='@2.0.0: +diagnostics')
+ depends_on('py-bokeh@1.0.0:1.999,2.0.1:', type=('build', 'run'), when='@2.26.0: +diagnostics')
# Requirements for dask.delayed
depends_on('py-cloudpickle@0.2.1:', type=('build', 'run'), when='@2,7.0: +delayed')
diff --git a/var/spack/repos/builtin/packages/py-dataclasses/package.py b/var/spack/repos/builtin/packages/py-dataclasses/package.py
index c79947953d..33ec35fca1 100644
--- a/var/spack/repos/builtin/packages/py-dataclasses/package.py
+++ b/var/spack/repos/builtin/packages/py-dataclasses/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyDataclasses(PythonPackage):
"""A backport of the dataclasses module for Python 3.6"""
homepage = "https://github.com/ericvsmith/dataclasses"
- url = "https://pypi.io/packages/source/d/dataclasses/dataclasses-0.7.tar.gz"
+ pypi = "dataclasses/dataclasses-0.7.tar.gz"
version('0.7', sha256='494a6dcae3b8bcf80848eea2ef64c0cc5cd307ffc263e17cdf42f3e5420808e6')
diff --git a/var/spack/repos/builtin/packages/py-dateparser/package.py b/var/spack/repos/builtin/packages/py-dateparser/package.py
index 5d233e6377..ac977d938d 100644
--- a/var/spack/repos/builtin/packages/py-dateparser/package.py
+++ b/var/spack/repos/builtin/packages/py-dateparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyDateparser(PythonPackage):
"""dateparser -- python parser for human readable dates"""
homepage = "https://github.com/scrapinghub/dateparser"
- url = "https://pypi.io/packages/source/d/dateparser/dateparser-0.7.2.tar.gz"
+ pypi = "dateparser/dateparser-0.7.2.tar.gz"
version('0.7.2', sha256='e1eac8ef28de69a554d5fcdb60b172d526d61924b1a40afbbb08df459a36006b')
@@ -26,8 +26,3 @@ class PyDateparser(PythonPackage):
depends_on('py-ruamel-yaml', type=('build', 'run'), when='+calendars')
depends_on('py-convertdate', type=('build', 'run'), when='+calendars')
depends_on('py-jdatetime', type=('build', 'run'), when='+calendars')
- depends_on('py-mock', type='test')
- depends_on('py-nose', type='test')
- depends_on('py-parameterized', type='test')
- depends_on('py-six', type='test')
- depends_on('py-coverage', type='test')
diff --git a/var/spack/repos/builtin/packages/py-dbf/package.py b/var/spack/repos/builtin/packages/py-dbf/package.py
index d5d2f3b5e7..c729c652b1 100644
--- a/var/spack/repos/builtin/packages/py-dbf/package.py
+++ b/var/spack/repos/builtin/packages/py-dbf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyDbf(PythonPackage):
"""Pure python package for reading/writing dBase, FoxPro, and Visual FoxPro
.dbf files (including memos)"""
- homepage = 'https://pypi.python.org/pypi/dbf'
- url = "https://pypi.io/packages/source/d/dbf/dbf-0.96.005.tar.gz"
+ pypi = "dbf/dbf-0.96.005.tar.gz"
version('0.96.005', sha256='d6e03f1dca40488c37cf38be9cb28b694c46cec747a064dcb0591987de58ed02')
version('0.94.003', sha256='c95b688d2f28944004368799cc6e2999d78af930a69bb2643ae098c721294444')
diff --git a/var/spack/repos/builtin/packages/py-dbfread/package.py b/var/spack/repos/builtin/packages/py-dbfread/package.py
index 338382d127..80ad1d8062 100644
--- a/var/spack/repos/builtin/packages/py-dbfread/package.py
+++ b/var/spack/repos/builtin/packages/py-dbfread/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyDbfread(PythonPackage):
batch jobs and one-off scripts."""
homepage = "https://dbfread.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/d/dbfread/dbfread-2.0.7.tar.gz"
+ pypi = "dbfread/dbfread-2.0.7.tar.gz"
version('2.0.7', sha256='07c8a9af06ffad3f6f03e8fe91ad7d2733e31a26d2b72c4dd4cfbae07ee3b73d')
diff --git a/var/spack/repos/builtin/packages/py-deap/package.py b/var/spack/repos/builtin/packages/py-deap/package.py
index 9940120413..7024581278 100644
--- a/var/spack/repos/builtin/packages/py-deap/package.py
+++ b/var/spack/repos/builtin/packages/py-deap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyDeap(PythonPackage):
"""Distributed Evolutionary Algorithms in Python."""
homepage = "http://deap.readthedocs.org/"
- url = "https://pypi.io/packages/source/d/deap/deap-1.3.1.tar.gz"
+ pypi = "deap/deap-1.3.1.tar.gz"
version('1.3.1', sha256='11f54493ceb54aae10dde676577ef59fc52d52f82729d5a12c90b0813c857a2f')
diff --git a/var/spack/repos/builtin/packages/py-decorator/package.py b/var/spack/repos/builtin/packages/py-decorator/package.py
index d174fc8a1f..1c1c53c41f 100644
--- a/var/spack/repos/builtin/packages/py-decorator/package.py
+++ b/var/spack/repos/builtin/packages/py-decorator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyDecorator(PythonPackage):
various non-trivial examples."""
homepage = "https://github.com/micheles/decorator"
- url = "https://pypi.io/packages/source/d/decorator/decorator-4.4.2.tar.gz"
+ pypi = "decorator/decorator-4.4.2.tar.gz"
version('4.4.2', sha256='e3a62f0520172440ca0dcc823749319382e377f37f140a0b99ef45fecb84bfe7')
version('4.4.0', sha256='86156361c50488b84a3f148056ea716ca587df2f0de1d34750d35c21312725de')
diff --git a/var/spack/repos/builtin/packages/py-deeptools/package.py b/var/spack/repos/builtin/packages/py-deeptools/package.py
index 35103a5e5d..f820b8d3e4 100644
--- a/var/spack/repos/builtin/packages/py-deeptools/package.py
+++ b/var/spack/repos/builtin/packages/py-deeptools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,8 @@ class PyDeeptools(PythonPackage):
"""deepTools addresses the challenge of handling the large amounts of data
that are now routinely generated from DNA sequencing centers."""
- homepage = "https://pypi.io/packages/source/d/deepTools"
# The test suite and associated test data is missing in the pypi tarball.
+ homepage = "https://pypi.python.org/pypi/deepTools/"
url = "https://github.com/deeptools/deepTools/archive/3.3.0.tar.gz"
version('3.3.0', sha256='a7aaf79fe939ca307fe6ec5e156750389fdfa4324bf0dd6bf5f53d5fda109358')
@@ -30,8 +30,6 @@ class PyDeeptools(PythonPackage):
depends_on('py-plotly@2.0.0:', type=('build', 'run'))
depends_on('py-deeptoolsintervals@0.1.8:', type=('build', 'run'))
- depends_on('py-nose', type='test')
-
def patch(self):
# Add nosetest hook for "python setup.py test" argument.
filter_file(r'^setup\(',
diff --git a/var/spack/repos/builtin/packages/py-deeptoolsintervals/package.py b/var/spack/repos/builtin/packages/py-deeptoolsintervals/package.py
index 09e5a32a58..576ae51692 100644
--- a/var/spack/repos/builtin/packages/py-deeptoolsintervals/package.py
+++ b/var/spack/repos/builtin/packages/py-deeptoolsintervals/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyDeeptoolsintervals(PythonPackage):
"""A python module creating/accessing GTF-based interval trees with
associated meta-data."""
- homepage = 'https://pypi.org/project/deeptoolsintervals/'
- url = 'https://pypi.io/packages/source/d/deeptoolsintervals/deeptoolsintervals-0.1.9.tar.gz'
+ pypi = 'deeptoolsintervals/deeptoolsintervals-0.1.9.tar.gz'
version('0.1.9', sha256='7d94c36fd2b6f10d8b99e536d2672e8228971f1fc810497d33527bba2c40d4f6')
diff --git a/var/spack/repos/builtin/packages/py-defusedxml/package.py b/var/spack/repos/builtin/packages/py-defusedxml/package.py
index 0b8261f6e5..f911614d29 100644
--- a/var/spack/repos/builtin/packages/py-defusedxml/package.py
+++ b/var/spack/repos/builtin/packages/py-defusedxml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyDefusedxml(PythonPackage):
"""defusing XML bombs and other exploits"""
homepage = "https://github.com/tiran/defusedxml"
- url = "https://pypi.io/packages/source/d/defusedxml/defusedxml-0.5.0.tar.gz"
+ pypi = "defusedxml/defusedxml-0.5.0.tar.gz"
version('0.6.0', sha256='f684034d135af4c6cbb949b8a4d2ed61634515257a67299e5f940fbaa34377f5')
version('0.5.0', sha256='24d7f2f94f7f3cb6061acb215685e5125fbcdc40a857eff9de22518820b0a4f4')
diff --git a/var/spack/repos/builtin/packages/py-dendropy/package.py b/var/spack/repos/builtin/packages/py-dendropy/package.py
index aa58be0d77..e7515b8f68 100644
--- a/var/spack/repos/builtin/packages/py-dendropy/package.py
+++ b/var/spack/repos/builtin/packages/py-dendropy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyDendropy(PythonPackage):
NeXML, Phylip, FASTA, etc."""
homepage = "https://www.dendropy.org"
- url = "https://pypi.io/packages/source/d/dendropy/DendroPy-4.3.0.tar.gz"
+ pypi = "dendropy/DendroPy-4.3.0.tar.gz"
version('4.3.0', sha256='bd5b35ce1a1c9253209b7b5f3939ac22beaa70e787f8129149b4f7ffe865d510')
version('3.12.0', sha256='38a0f36f2f7aae43ec5599408b0d0a4c80996b749589f025940d955a70fc82d4')
diff --git a/var/spack/repos/builtin/packages/py-deprecated/package.py b/var/spack/repos/builtin/packages/py-deprecated/package.py
index 7d1fe4af93..992523088f 100644
--- a/var/spack/repos/builtin/packages/py-deprecated/package.py
+++ b/var/spack/repos/builtin/packages/py-deprecated/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-deprecation/package.py b/var/spack/repos/builtin/packages/py-deprecation/package.py
index 2128e78233..86dfeb1502 100644
--- a/var/spack/repos/builtin/packages/py-deprecation/package.py
+++ b/var/spack/repos/builtin/packages/py-deprecation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyDeprecation(PythonPackage):
fail_if_not_removed decorator for your tests. """
homepage = "http://deprecation.readthedocs.io/"
- url = "https://pypi.io/packages/source/d/deprecation/deprecation-2.0.7.tar.gz"
+ pypi = "deprecation/deprecation-2.0.7.tar.gz"
version('2.0.7', sha256='c0392f676a6146f0238db5744d73e786a43510d54033f80994ef2f4c9df192ed')
diff --git a/var/spack/repos/builtin/packages/py-descartes/package.py b/var/spack/repos/builtin/packages/py-descartes/package.py
index fb834d07c1..4a92a44ca8 100644
--- a/var/spack/repos/builtin/packages/py-descartes/package.py
+++ b/var/spack/repos/builtin/packages/py-descartes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyDescartes(PythonPackage):
"""Use Shapely or GeoJSON-like geometric objects as matplotlib paths
and patches"""
- homepage = "https://pypi.org/project/descartes/"
- url = "https://pypi.io/packages/source/d/descartes/descartes-1.1.0.tar.gz"
+ pypi = "descartes/descartes-1.1.0.tar.gz"
version('1.1.0', sha256='135a502146af5ed6ff359975e2ebc5fa4b71b5432c355c2cafdc6dea1337035b')
diff --git a/var/spack/repos/builtin/packages/py-devlib/package.py b/var/spack/repos/builtin/packages/py-devlib/package.py
index 5a9bb49486..f4cc8823f1 100644
--- a/var/spack/repos/builtin/packages/py-devlib/package.py
+++ b/var/spack/repos/builtin/packages/py-devlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-dgl/package.py b/var/spack/repos/builtin/packages/py-dgl/package.py
index 9ef1bd9ed8..e2fd91ff98 100644
--- a/var/spack/repos/builtin/packages/py-dgl/package.py
+++ b/var/spack/repos/builtin/packages/py-dgl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-dictdiffer/package.py b/var/spack/repos/builtin/packages/py-dictdiffer/package.py
new file mode 100644
index 0000000000..3d7fd248f3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dictdiffer/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyDictdiffer(PythonPackage):
+ """Dictdiffer is a helper module that helps you to diff and patch dictionares."""
+
+ homepage = "https://github.com/inveniosoftware/dictdiffer"
+ pypi = "dictdiffer/dictdiffer-0.8.1.tar.gz"
+
+ version('0.8.1', sha256='1adec0d67cdf6166bda96ae2934ddb5e54433998ceab63c984574d187cc563d2')
+
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-setuptools-scm@3.1.0:', type='build')
+ depends_on('py-pytest-runner@2.7:', type='build')
diff --git a/var/spack/repos/builtin/packages/py-dill/package.py b/var/spack/repos/builtin/packages/py-dill/package.py
index 0afa8d329c..f492e8c773 100644
--- a/var/spack/repos/builtin/packages/py-dill/package.py
+++ b/var/spack/repos/builtin/packages/py-dill/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyDill(PythonPackage):
"""Serialize all of python """
homepage = "https://github.com/uqfoundation/dill"
- url = "https://pypi.io/packages/source/d/dill/dill-0.2.7.tar.gz"
+ pypi = "dill/dill-0.2.7.tar.gz"
version('0.3.1', sha256='d3ddddf2806a7bc9858b20c02dc174396795545e9d62f243b34481fd26eb3e2c')
version('0.2.9', sha256='f6d6046f9f9195206063dd0415dff185ad593d6ee8b0e67f12597c0f4df4986f')
diff --git a/var/spack/repos/builtin/packages/py-discover/package.py b/var/spack/repos/builtin/packages/py-discover/package.py
index 8512294724..d0618e8783 100644
--- a/var/spack/repos/builtin/packages/py-discover/package.py
+++ b/var/spack/repos/builtin/packages/py-discover/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,6 @@ from spack import *
class PyDiscover(PythonPackage):
"""Test discovery for unittest."""
- homepage = "https://pypi.python.org/pypi/discover"
- url = "https://pypi.io/packages/source/d/discover/discover-0.4.0.tar.gz"
+ pypi = "discover/discover-0.4.0.tar.gz"
version('0.4.0', sha256='05c3fa9199e57d4b16fb653e02d65713adc1f89ef55324fb0c252b1cf9070d79')
diff --git a/var/spack/repos/builtin/packages/py-diskcache/package.py b/var/spack/repos/builtin/packages/py-diskcache/package.py
index 042183cdf3..c25bcb47ca 100644
--- a/var/spack/repos/builtin/packages/py-diskcache/package.py
+++ b/var/spack/repos/builtin/packages/py-diskcache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,9 +8,8 @@ class PyDiskcache(PythonPackage):
"""Disk Cache -- Disk and file backed persistent cache."""
homepage = "http://www.grantjenks.com/docs/diskcache/"
- url = "https://pypi.io/packages/source/d/diskcache/diskcache-4.1.0.tar.gz"
+ pypi = "diskcache/diskcache-4.1.0.tar.gz"
version('4.1.0', sha256='bcee5a59f9c264e2809e58d01be6569a3bbb1e36a1e0fb83f7ef9b2075f95ce0')
depends_on('py-setuptools', type='build')
- depends_on('py-tox', type='test')
diff --git a/var/spack/repos/builtin/packages/py-distributed/package.py b/var/spack/repos/builtin/packages/py-distributed/package.py
index be4fb3b1c6..93c2825fc3 100644
--- a/var/spack/repos/builtin/packages/py-distributed/package.py
+++ b/var/spack/repos/builtin/packages/py-distributed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class PyDistributed(PythonPackage):
"""Distributed scheduler for Dask"""
homepage = "https://distributed.dask.org/"
- url = "https://pypi.io/packages/source/d/distributed/distributed-2.10.0.tar.gz"
+ pypi = "distributed/distributed-2.10.0.tar.gz"
+ version('2020.12.0', sha256='2a0b6acc921cd4e0143a7c4383cdcbed7defbc4bd9dc3aab0c7f1c45f14f80e1')
version('2.10.0', sha256='2f8cca741a20f776929cbad3545f2df64cf60207fb21f774ef24aad6f6589e8b')
version('1.28.1', sha256='3bd83f8b7eb5938af5f2be91ccff8984630713f36f8f66097e531a63f141c48a')
@@ -20,14 +21,21 @@ class PyDistributed(PythonPackage):
depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-click@6.6:', type=('build', 'run'))
- depends_on('py-cloudpickle@0.2.2:', type=('build', 'run'))
- depends_on('py-msgpack', type=('build', 'run'))
+ depends_on('py-cloudpickle@0.2.2:', type=('build', 'run'), when='@:2.16.0')
+ depends_on('py-cloudpickle@1.3.0:', type=('build', 'run'), when='@2.17.0:2.20.0')
+ depends_on('py-cloudpickle@1.5.0:', type=('build', 'run'), when='@2.21.0:')
+ depends_on('py-contextvars', type=('build', 'run'), when='^python@:3.6')
+ depends_on('py-msgpack', type=('build', 'run'), when='@:2.10.0')
+ depends_on('py-msgpack@0.6.0:', type=('build', 'run'), when='@2.11.0:')
depends_on('py-psutil@5.0:', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'), when='@:1')
depends_on('py-sortedcontainers@:1.999,2.0.2:', type=('build', 'run'))
- depends_on('py-tblib', type=('build', 'run'))
- depends_on('py-toolz@0.7.4:', type=('build', 'run'))
- depends_on('py-tornado@5:', type=('build', 'run'))
+ depends_on('py-tblib', type=('build', 'run'), when='@:2.10.0')
+ depends_on('py-tblib@1.6.0:', type=('build', 'run'), when='@2.11.0:')
+ depends_on('py-toolz@0.7.4:', type=('build', 'run'), when='@:2.12.0')
+ depends_on('py-toolz@0.8.2:', type=('build', 'run'), when='@2.13.0:')
+ depends_on('py-tornado@5:', type=('build', 'run'), when='^python@:3.7')
+ depends_on('py-tornado@6.0.3:', type=('build', 'run'), when='^python@3.8:')
depends_on('py-zict@0.1.3:', type=('build', 'run'))
depends_on('py-pyyaml', type=('build', 'run'))
depends_on('py-futures', when='@:1 ^python@2.7:2.8', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-distro/package.py b/var/spack/repos/builtin/packages/py-distro/package.py
index 4bda8e4085..e8b944c8b4 100644
--- a/var/spack/repos/builtin/packages/py-distro/package.py
+++ b/var/spack/repos/builtin/packages/py-distro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyDistro(PythonPackage):
"""Distro - an OS platform information API."""
homepage = "https://github.com/nir0s/distro"
- url = "https://pypi.io/packages/source/d/distro/distro-1.5.0.tar.gz"
+ pypi = "distro/distro-1.5.0.tar.gz"
version('1.5.0', sha256='0e58756ae38fbd8fc3020d54badb8eae17c5b9dcbed388b17bb55b8a5928df92')
diff --git a/var/spack/repos/builtin/packages/py-django/package.py b/var/spack/repos/builtin/packages/py-django/package.py
index 0dc1fa1388..aa89dea5ce 100644
--- a/var/spack/repos/builtin/packages/py-django/package.py
+++ b/var/spack/repos/builtin/packages/py-django/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-dlcpar/package.py b/var/spack/repos/builtin/packages/py-dlcpar/package.py
index 53f8aa5547..fa3b9b571a 100644
--- a/var/spack/repos/builtin/packages/py-dlcpar/package.py
+++ b/var/spack/repos/builtin/packages/py-dlcpar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-dm-tree/package.py b/var/spack/repos/builtin/packages/py-dm-tree/package.py
new file mode 100644
index 0000000000..db112aaa5b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dm-tree/package.py
@@ -0,0 +1,59 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import tempfile
+
+
+class PyDmTree(PythonPackage):
+ """tree is a library for working with nested data structures. In a
+ way, tree generalizes the builtin map() function which only
+ supports flat sequences, and allows to apply a function to each
+ leaf preserving the overall structure."""
+
+ homepage = "https://github.com/deepmind/tree"
+ pypi = "dm-tree/dm-tree-0.1.5.tar.gz"
+
+ maintainers = ['aweits']
+
+ version('0.1.5', sha256='a951d2239111dfcc468071bc8ff792c7b1e3192cab5a3c94d33a8b2bda3127fa')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('bazel', type='build')
+ depends_on('py-six@1.12.0:', type=('build', 'run'))
+
+ @run_after('install')
+ def clean(self):
+ remove_linked_tree(self.tmp_path)
+
+ def patch(self):
+ self.tmp_path = tempfile.mkdtemp(dir='/tmp', prefix='spack')
+ env['TEST_TMPDIR'] = self.tmp_path
+ env['HOME'] = self.tmp_path
+ args = [
+ # Don't allow user or system .bazelrc to override build settings
+ "'--nohome_rc',\n",
+ "'--nosystem_rc',\n",
+ # Bazel does not work properly on NFS, switch to /tmp
+ "'--output_user_root={0}',\n".format(self.tmp_path),
+ "'build',\n",
+ # Spack logs don't handle colored output well
+ "'--color=no',\n",
+ "'--jobs={0}',\n".format(make_jobs),
+ # Enable verbose output for failures
+ "'--verbose_failures',\n",
+ # Show (formatted) subcommands being executed
+ "'--subcommands=pretty_print',\n",
+ "'--spawn_strategy=local',\n",
+ # Ask bazel to explain what it's up to
+ # Needs a filename as argument
+ "'--explain=explainlogfile.txt',\n",
+ # Increase verbosity of explanation,
+ "'--verbose_explanations',\n",
+ # bazel uses system PYTHONPATH instead of spack paths
+ "'--action_env', 'PYTHONPATH={0}',\n".format(env['PYTHONPATH']),
+ ]
+ filter_file("'build',",
+ ' '.join(args),
+ 'setup.py')
diff --git a/var/spack/repos/builtin/packages/py-dnaio/package.py b/var/spack/repos/builtin/packages/py-dnaio/package.py
index c8e3250a15..34e47c774d 100644
--- a/var/spack/repos/builtin/packages/py-dnaio/package.py
+++ b/var/spack/repos/builtin/packages/py-dnaio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyDnaio(PythonPackage):
"""Read and write FASTQ and FASTA"""
homepage = "https://github.com/marcelm/dnaio"
- url = "https://pypi.io/packages/source/d/dnaio/dnaio-0.3.tar.gz"
+ pypi = "dnaio/dnaio-0.3.tar.gz"
git = "https://github.com/marcelm/dnaio.git"
version('0.4.2', sha256='fa55a45bfd5d9272409b714158fb3a7de5dceac1034a0af84502c7f503ee84f8')
diff --git a/var/spack/repos/builtin/packages/py-docker/package.py b/var/spack/repos/builtin/packages/py-docker/package.py
index 148da74a95..fe1f667fae 100644
--- a/var/spack/repos/builtin/packages/py-docker/package.py
+++ b/var/spack/repos/builtin/packages/py-docker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyDocker(PythonPackage):
"""A Python library for the Docker Engine API."""
homepage = "https://github.com/docker/docker-py"
- url = "https://pypi.io/packages/source/d/docker/docker-4.2.1.tar.gz"
+ pypi = "docker/docker-4.2.1.tar.gz"
version('4.2.1', sha256='380a20d38fbfaa872e96ee4d0d23ad9beb0f9ed57ff1c30653cbeb0c9c0964f2')
diff --git a/var/spack/repos/builtin/packages/py-dockerpy-creds/package.py b/var/spack/repos/builtin/packages/py-dockerpy-creds/package.py
index 01f681be87..44e85058a9 100644
--- a/var/spack/repos/builtin/packages/py-dockerpy-creds/package.py
+++ b/var/spack/repos/builtin/packages/py-dockerpy-creds/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-docopt/package.py b/var/spack/repos/builtin/packages/py-docopt/package.py
index ce0dcd40ad..1ba7f43d16 100644
--- a/var/spack/repos/builtin/packages/py-docopt/package.py
+++ b/var/spack/repos/builtin/packages/py-docopt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyDocopt(PythonPackage):
"""Command-line interface description language."""
homepage = "http://docopt.org/"
- url = "https://pypi.io/packages/source/d/docopt/docopt-0.6.2.tar.gz"
-
- import_modules = ['docopt']
+ pypi = "docopt/docopt-0.6.2.tar.gz"
version('0.6.2', sha256='49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491')
diff --git a/var/spack/repos/builtin/packages/py-docutils-stubs/package.py b/var/spack/repos/builtin/packages/py-docutils-stubs/package.py
index 02c7f99d47..f1f634ae68 100644
--- a/var/spack/repos/builtin/packages/py-docutils-stubs/package.py
+++ b/var/spack/repos/builtin/packages/py-docutils-stubs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyDocutilsStubs(PythonPackage):
"""PEP 561 based Type information for docutils."""
homepage = "https://github.com/tk0miya/docutils-stubs"
- url = "https://pypi.io/packages/source/d/docutils-stubs/docutils-stubs-0.0.21.tar.gz"
+ pypi = "docutils-stubs/docutils-stubs-0.0.21.tar.gz"
version('0.0.21', sha256='e0d3d2588a0c0b47bf66b917bf4ff2c100cf4cf77bbe2f518d97b8f4d63e735c')
diff --git a/var/spack/repos/builtin/packages/py-docutils/package.py b/var/spack/repos/builtin/packages/py-docutils/package.py
index 07b0da2534..78f5e696b2 100644
--- a/var/spack/repos/builtin/packages/py-docutils/package.py
+++ b/var/spack/repos/builtin/packages/py-docutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,18 +15,7 @@ class PyDocutils(PythonPackage):
markup language."""
homepage = "http://docutils.sourceforge.net/"
- url = "https://pypi.io/packages/source/d/docutils/docutils-0.15.2.tar.gz"
-
- import_modules = [
- 'docutils', 'docutils.languages', 'docutils.parsers',
- 'docutils.readers', 'docutils.transforms', 'docutils.utils',
- 'docutils.writers', 'docutils.parsers.rst',
- 'docutils.parsers.rst.directives', 'docutils.parsers.rst.languages',
- 'docutils.utils.math', 'docutils.writers.html4css1',
- 'docutils.writers.html5_polyglot', 'docutils.writers.latex2e',
- 'docutils.writers.odf_odt', 'docutils.writers.pep_html',
- 'docutils.writers.s5_html', 'docutils.writers.xetex'
- ]
+ pypi = "docutils/docutils-0.15.2.tar.gz"
version('0.15.2', sha256='a2aeea129088da402665e92e0b25b04b073c04b2dce4ab65caaa38b7ce2e1a99')
version('0.14', sha256='51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274')
diff --git a/var/spack/repos/builtin/packages/py-dominate/package.py b/var/spack/repos/builtin/packages/py-dominate/package.py
index 2d3f438ea5..5e844e743a 100644
--- a/var/spack/repos/builtin/packages/py-dominate/package.py
+++ b/var/spack/repos/builtin/packages/py-dominate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyDominate(PythonPackage):
powerful features of Python."""
homepage = "https://github.com/Knio/dominate"
- url = "https://pypi.io/packages/source/d/dominate/dominate-2.6.0.tar.gz"
+ pypi = "dominate/dominate-2.6.0.tar.gz"
# license = "LGPL-3.0"
version('2.6.0', sha256='76ec2cde23700a6fc4fee098168b9dee43b99c2f1dd0ca6a711f683e8eb7e1e4')
diff --git a/var/spack/repos/builtin/packages/py-dotnetcore2/package.py b/var/spack/repos/builtin/packages/py-dotnetcore2/package.py
index 6ee28f6b68..ee671dc5d4 100644
--- a/var/spack/repos/builtin/packages/py-dotnetcore2/package.py
+++ b/var/spack/repos/builtin/packages/py-dotnetcore2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-doxypy/package.py b/var/spack/repos/builtin/packages/py-doxypy/package.py
index 103ac0488f..9effe56993 100644
--- a/var/spack/repos/builtin/packages/py-doxypy/package.py
+++ b/var/spack/repos/builtin/packages/py-doxypy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyDoxypy(PythonPackage):
"""doxypy is an input filter for Doxygen."""
- homepage = "https://pypi.python.org/pypi/doxypy"
- url = "https://pypi.io/packages/source/d/doxypy/doxypy-0.3.tar.gz"
+ pypi = "doxypy/doxypy-0.3.tar.gz"
version('0.3', sha256='55d621b0edebd9e2a58a266c0a1d086fc9892de8e07e04dfbb93880a7ae91f00')
diff --git a/var/spack/repos/builtin/packages/py-doxypypy/package.py b/var/spack/repos/builtin/packages/py-doxypypy/package.py
index e28970409e..1e841763a8 100644
--- a/var/spack/repos/builtin/packages/py-doxypypy/package.py
+++ b/var/spack/repos/builtin/packages/py-doxypypy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyDoxypypy(PythonPackage):
"""
homepage = "https://github.com/Feneric/doxypypy"
- url = "https://pypi.io/packages/source/d/doxypypy/doxypypy-0.8.8.6.tar.gz"
+ pypi = "doxypypy/doxypypy-0.8.8.6.tar.gz"
version('0.8.8.6', sha256='627571455c537eb91d6998d95b32efc3c53562b2dbadafcb17e49593e0dae01b')
diff --git a/var/spack/repos/builtin/packages/py-dp-gp-cluster/package.py b/var/spack/repos/builtin/packages/py-dp-gp-cluster/package.py
index 42e56516d1..fd6628cd7e 100644
--- a/var/spack/repos/builtin/packages/py-dp-gp-cluster/package.py
+++ b/var/spack/repos/builtin/packages/py-dp-gp-cluster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-dpath/package.py b/var/spack/repos/builtin/packages/py-dpath/package.py
new file mode 100644
index 0000000000..ceab57e57b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dpath/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyDpath(PythonPackage):
+ """A python library for accessing and searching dictionaries via
+ /slashed/paths ala xpath."""
+
+ homepage = "https://github.com/akesterson/dpath-python"
+ pypi = "dpath/dpath-2.0.1.tar.gz"
+
+ version('2.0.1', sha256='bea06b5f4ff620a28dfc9848cf4d6b2bfeed34238edeb8ebe815c433b54eb1fa')
+
+ depends_on('python@2.7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-drmaa/package.py b/var/spack/repos/builtin/packages/py-drmaa/package.py
index c7df76190d..ee5ee1c192 100644
--- a/var/spack/repos/builtin/packages/py-drmaa/package.py
+++ b/var/spack/repos/builtin/packages/py-drmaa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyDrmaa(PythonPackage):
"""Python wrapper around the C DRMAA library."""
homepage = "https://github.com/pygridtools/drmaa-python"
- url = "https://pypi.io/packages/source/d/drmaa/drmaa-0.7.9.tar.gz"
+ pypi = "drmaa/drmaa-0.7.9.tar.gz"
version('0.7.9', sha256='12540cd98afc40d5c0b2f38d7b0e46468d1c45192a2f401f41fc2eda9c9f5542')
diff --git a/var/spack/repos/builtin/packages/py-dryscrape/package.py b/var/spack/repos/builtin/packages/py-dryscrape/package.py
index 8aa002bf7b..683266b624 100644
--- a/var/spack/repos/builtin/packages/py-dryscrape/package.py
+++ b/var/spack/repos/builtin/packages/py-dryscrape/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyDryscrape(PythonPackage):
for Python"""
homepage = "https://github.com/niklasb/dryscrape"
- url = "https://pypi.io/packages/source/d/dryscrape/dryscrape-1.0.tar.gz"
+ pypi = "dryscrape/dryscrape-1.0.tar.gz"
git = "https://github.com/niklasb/dryscrape.git"
version('develop', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-dulwich/package.py b/var/spack/repos/builtin/packages/py-dulwich/package.py
new file mode 100644
index 0000000000..b0dca56e9e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dulwich/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyDulwich(PythonPackage):
+ """Dulwich aims to provide an interface to Git repos
+ (both local and remote) that doesn't call out to Git
+ directory, but instead uses pure Python."""
+
+ homepage = "https://www.dulwich.io"
+ pypi = "dulwich/dulwich-0.20.15.tar.gz"
+
+ version('0.20.15', sha256='fb1773373ec2af896031f8312af6962a1b8b0176a2de3fb3d84a84ec04498888')
+ version('0.20.14', sha256='21d6ee82708f7c67ce3fdcaf1f1407e524f7f4f7411a410a972faa2176baec0d')
+
+ depends_on('python@3.5.0:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-certifi', type=('build', 'run'))
+ depends_on('py-urllib3@1.24.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-dvc/package.py b/var/spack/repos/builtin/packages/py-dvc/package.py
new file mode 100644
index 0000000000..dc638f2ab8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dvc/package.py
@@ -0,0 +1,61 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyDvc(PythonPackage):
+ """Git for data scientists - manage your code and data together."""
+
+ homepage = "https://www.dvc.org"
+ pypi = "dvc/dvc-1.11.10.tar.gz"
+
+ version('1.11.10', sha256='6b53ebf1bd5619836f131181402bb21f7b44109166e9db8f8d6a0d8c7ce9458d')
+ version('1.11.6', sha256='41ba76c51c6142b28dae3aab039cb12423ba52fed6bd2a838f8308f315cfc20b')
+
+ variant('ssh', default=False, description='Enable ssh storage support')
+ variant('s3', default=False, description='Enable s3 storage support')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-ply@3.9:', type=('build', 'run'))
+ depends_on('py-colorama@0.3.9:', type=('build', 'run'))
+ depends_on('py-configobj@5.0.6:', type=('build', 'run'))
+ depends_on('py-gitpython@3.1:', type=('build', 'run'))
+ depends_on('py-dulwich@0.20.14:', type=('build', 'run'))
+ depends_on('py-setuptools@34.0.0:', type=('build', 'run'))
+ depends_on('py-nanotime@0.5.2:', type=('build', 'run'))
+ depends_on('py-pyasn1@0.4.1:', type=('build', 'run'))
+ depends_on('py-voluptuous@0.11.7:', type=('build', 'run'))
+ depends_on('py-jsonpath-ng@1.5.1:', type=('build', 'run'))
+ depends_on('py-grandalf@0.6', type=('build', 'run'))
+ depends_on('py-distro@1.3.0:', type=('build', 'run'))
+ depends_on('py-appdirs@1.4.3:', type=('build', 'run'))
+ depends_on('py-ruamel-yaml@0.16.1:', type=('build', 'run'))
+ depends_on('py-toml@0.10.1:', type=('build', 'run'))
+ depends_on('py-funcy@1.14:', type=('build', 'run'))
+ depends_on('py-pathspec@0.6.0:', type=('build', 'run'))
+ depends_on('py-shortuuid@0.5.0:', type=('build', 'run'))
+ depends_on('py-tqdm@4.45.0:4.99', type=('build', 'run'))
+ depends_on('py-packaging@19.0:', type=('build', 'run'))
+ depends_on('py-flufl-lock@3.2:3.999', type=('build', 'run'))
+ depends_on('py-zc-lockfile@1.2.1:', type=('build', 'run'))
+ depends_on('py-networkx@2.1:2.4', when='@:1.11.6', type=('build', 'run'))
+ depends_on('py-networkx@2.1:', when='@1.11.7:', type=('build', 'run'))
+ depends_on('py-pydot@1.2.4:', type=('build', 'run'))
+ depends_on('py-dataclasses@0.7', when='^python@:3.6.999', type=('build', 'run'))
+ depends_on('py-flatten-dict@0.3.0:0.99', type=('build', 'run'))
+ depends_on('py-tabulate@0.8.7:', type=('build', 'run'))
+ depends_on('py-pygtrie@2.3.2', type=('build', 'run'))
+ depends_on('py-dpath@2.0.1:2.99', type=('build', 'run'))
+ depends_on('py-shtab@1.3.2:1.99', type=('build', 'run'))
+ depends_on('py-rich@3.0.5:', type=('build', 'run'))
+ depends_on('py-dictdiffer@0.8.1:', type=('build', 'run'))
+ depends_on('py-python-benedict@0.21.1:', type=('build', 'run'))
+ depends_on('py-pyparsing@2.4.7', type=('build', 'run'))
+ depends_on('py-typing-extensions@3.7.4:', type=('build', 'run'))
+
+ depends_on('py-paramiko@2.7.0:+invoke', when='+ssh', type=('build', 'run'))
+ depends_on('py-boto3@1.9.201:', when='+s3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-dxchange/package.py b/var/spack/repos/builtin/packages/py-dxchange/package.py
index be0a23916c..06e362a16a 100644
--- a/var/spack/repos/builtin/packages/py-dxchange/package.py
+++ b/var/spack/repos/builtin/packages/py-dxchange/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,8 +14,6 @@ class PyDxchange(PythonPackage):
homepage = "https://github.com/data-exchange/dxchange"
url = "https://github.com/data-exchange/dxchange/archive/v0.1.2.tar.gz"
- import_modules = ['dxchange']
-
version('0.1.2', sha256='d005b036b6323d0dffd5944c3da0b8a90496d96277654e72b53717058dd5fd87')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-dxfile/package.py b/var/spack/repos/builtin/packages/py-dxfile/package.py
index aa7eac9d91..b4df041a6c 100644
--- a/var/spack/repos/builtin/packages/py-dxfile/package.py
+++ b/var/spack/repos/builtin/packages/py-dxfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,6 @@ class PyDxfile(PythonPackage):
homepage = "https://github.com/data-exchange/dxfile"
url = "https://github.com/data-exchange/dxfile/archive/v0.4.tar.gz"
- import_modules = ['dxfile']
-
version('0.4', sha256='b7729eebdc7c99a66a8b339fc10019aa8565e02bd12708540fb3f47935f004c7')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-earthengine-api/package.py b/var/spack/repos/builtin/packages/py-earthengine-api/package.py
index 6125d918b6..7f61286ac2 100644
--- a/var/spack/repos/builtin/packages/py-earthengine-api/package.py
+++ b/var/spack/repos/builtin/packages/py-earthengine-api/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyEarthengineApi(PythonPackage):
using the Python programming language."""
homepage = "https://github.com/google/earthengine-api"
- url = "https://pypi.io/packages/source/e/earthengine-api/earthengine-api-0.1.186.tar.gz"
+ pypi = "earthengine-api/earthengine-api-0.1.186.tar.gz"
version('0.1.186', sha256='ced86dc969f5db13eea91944e29c39146bacbb7026a46f4b4ac349b365979627')
diff --git a/var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py b/var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py
index dcc295c63e..485c26d777 100644
--- a/var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py
+++ b/var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyEasybuildEasyblocks(PythonPackage):
"""
homepage = 'https://easybuilders.github.io/easybuild'
- url = 'https://pypi.io/packages/source/e/easybuild-easyblocks/easybuild-easyblocks-4.0.0.tar.gz'
+ pypi = 'easybuild-easyblocks/easybuild-easyblocks-4.0.0.tar.gz'
maintainers = ['boegel']
version('4.0.0', sha256='a0fdef6c33c786e323bde1b28bab942fd8e535c26842877d705e692e85b31b07')
diff --git a/var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py b/var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py
index 83c55889b5..167dc02f8e 100644
--- a/var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py
+++ b/var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyEasybuildEasyconfigs(PythonPackage):
"""
homepage = 'https://easybuilders.github.io/easybuild'
- url = 'https://pypi.io/packages/source/e/easybuild-easyconfigs/easybuild-easyconfigs-4.0.0.tar.gz'
+ pypi = 'easybuild-easyconfigs/easybuild-easyconfigs-4.0.0.tar.gz'
maintainers = ['boegel']
version('4.0.0', sha256='90d4e8f8abb11e7ae2265745bbd1241cd69d02570e9b4530175c4b2e2aba754e')
diff --git a/var/spack/repos/builtin/packages/py-easybuild-framework/package.py b/var/spack/repos/builtin/packages/py-easybuild-framework/package.py
index 9096f62708..762fe7a3c7 100644
--- a/var/spack/repos/builtin/packages/py-easybuild-framework/package.py
+++ b/var/spack/repos/builtin/packages/py-easybuild-framework/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyEasybuildFramework(PythonPackage):
"""
homepage = 'https://easybuilders.github.io/easybuild'
- url = 'https://pypi.io/packages/source/e/easybuild-framework/easybuild-framework-4.0.0.tar.gz'
+ pypi = 'easybuild-framework/easybuild-framework-4.0.0.tar.gz'
maintainers = ['boegel']
version('4.0.0', sha256='f5c40345cc8b9b5750f53263ade6c9c3a8cd3dfab488d58f76ac61a8ca7c5a77')
@@ -22,6 +22,3 @@ class PyEasybuildFramework(PythonPackage):
depends_on('python@2.6:2.8,3.5:', when='@4:', type=('build', 'run'))
depends_on('py-setuptools', when='@:3', type=('build', 'run'))
depends_on('py-vsc-base@2.5.4:', when='@2.9:3', type='run')
-
- # Only required for tests (python -O -m test.framework.suite)
- depends_on('py-vsc-install', when='@:3', type='test')
diff --git a/var/spack/repos/builtin/packages/py-ecdsa/package.py b/var/spack/repos/builtin/packages/py-ecdsa/package.py
index 2401b9bd27..77e0487f91 100644
--- a/var/spack/repos/builtin/packages/py-ecdsa/package.py
+++ b/var/spack/repos/builtin/packages/py-ecdsa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyEcdsa(PythonPackage):
"""ECDSA cryptographic signature library (pure python)"""
homepage = "https://github.com/warner/python-ecdsa"
- url = "https://pypi.io/packages/source/e/ecdsa/ecdsa-0.15.tar.gz"
+ pypi = "ecdsa/ecdsa-0.15.tar.gz"
version('0.15', sha256='8f12ac317f8a1318efa75757ef0a651abe12e51fc1af8838fb91079445227277')
version('0.13.2', sha256='5c034ffa23413ac923541ceb3ac14ec15a0d2530690413bff58c12b80e56d884')
@@ -18,4 +18,3 @@ class PyEcdsa(PythonPackage):
depends_on('python@2.6:2.8,3.3:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-six@1.9.0:', type=('build', 'run'))
- depends_on('openssl', type='test')
diff --git a/var/spack/repos/builtin/packages/py-ecos/package.py b/var/spack/repos/builtin/packages/py-ecos/package.py
index 84e3bcd9eb..b71a96ba2d 100644
--- a/var/spack/repos/builtin/packages/py-ecos/package.py
+++ b/var/spack/repos/builtin/packages/py-ecos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,11 +11,10 @@ class PyEcos(PythonPackage):
"""This is the Python package for ECOS: Embedded Cone Solver."""
homepage = "https://github.com/embotech/ecos"
- url = "https://www.pypi.io/packages/source/e/ecos/ecos-2.0.7.post1.tar.gz"
+ pypi = "ecos/ecos-2.0.7.post1.tar.gz"
version('2.0.7.post1', sha256='83e90f42b3f32e2a93f255c3cfad2da78dbd859119e93844c45d2fca20bdc758')
depends_on('py-setuptools', type='build')
- depends_on('py-nose', type='test')
depends_on('py-numpy@1.6:', type=('build', 'run'))
depends_on('py-scipy@0.9:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-edffile/package.py b/var/spack/repos/builtin/packages/py-edffile/package.py
index ab4a9f9ed9..97bd01212a 100644
--- a/var/spack/repos/builtin/packages/py-edffile/package.py
+++ b/var/spack/repos/builtin/packages/py-edffile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,6 @@ class PyEdffile(PythonPackage):
homepage = "https://github.com/vasole/pymca/blob/master/PyMca5/PyMcaIO/EdfFile.py"
git = "https://github.com/conda-forge/edffile-feedstock.git"
- import_modules = ['EdfFile']
-
version('5.0.0', commit='be5ab4199db9f8209c59e31874934b8536b52301')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-editdistance/package.py b/var/spack/repos/builtin/packages/py-editdistance/package.py
index ccedeef495..d38930ea3f 100644
--- a/var/spack/repos/builtin/packages/py-editdistance/package.py
+++ b/var/spack/repos/builtin/packages/py-editdistance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyEditdistance(PythonPackage):
"""Fast implementation of the edit distance (Levenshtein distance)."""
homepage = "https://github.com/aflc/editdistance"
- url = "https://pypi.io/packages/source/e/editdistance/editdistance-0.4.tar.gz"
+ pypi = "editdistance/editdistance-0.4.tar.gz"
version('0.4', sha256='c765db6f8817d38922e4a50be4b9ab338b2c539377b6fcf0bca11dea72eeb8c1')
diff --git a/var/spack/repos/builtin/packages/py-eg/package.py b/var/spack/repos/builtin/packages/py-eg/package.py
index a6ba806690..9146d1aa40 100644
--- a/var/spack/repos/builtin/packages/py-eg/package.py
+++ b/var/spack/repos/builtin/packages/py-eg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-elasticsearch/package.py b/var/spack/repos/builtin/packages/py-elasticsearch/package.py
index b87dd19f43..7429f21748 100644
--- a/var/spack/repos/builtin/packages/py-elasticsearch/package.py
+++ b/var/spack/repos/builtin/packages/py-elasticsearch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyElasticsearch(PythonPackage):
"""Python client for Elasticsearch"""
homepage = "https://github.com/elastic/elasticsearch-py"
- url = "https://pypi.io/packages/source/e/elasticsearch/elasticsearch-5.2.0.tar.gz"
+ pypi = "elasticsearch/elasticsearch-5.2.0.tar.gz"
version('7.5.1', sha256='2a0ca516378ae9b87ac840e7bb529ec508f3010360dd9feed605dff2a898aff5')
version('6.4.0', sha256='fb5ab15ee283f104b5a7a5695c7e879cb2927e4eb5aed9c530811590b41259ad')
diff --git a/var/spack/repos/builtin/packages/py-elephant/package.py b/var/spack/repos/builtin/packages/py-elephant/package.py
index 7d2477ef40..7e5798aa20 100644
--- a/var/spack/repos/builtin/packages/py-elephant/package.py
+++ b/var/spack/repos/builtin/packages/py-elephant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyElephant(PythonPackage):
"""
homepage = "http://neuralensemble.org/elephant"
- url = "https://pypi.io/packages/source/e/elephant/elephant-0.3.0.tar.gz"
+ pypi = "elephant/elephant-0.3.0.tar.gz"
version('0.4.1', sha256='86b21a44cbacdc09a6ba6f51738dcd5b42ecd553d73acb29f71a0be7c82eac81')
version('0.3.0', sha256='747251ccfb5820bdead6391411b5faf205b4ddf3ababaefe865f50b16540cfef')
@@ -27,4 +27,3 @@ class PyElephant(PythonPackage):
depends_on('py-pandas@0.14.1:', type=('build', 'run'), when='+pandas')
depends_on('py-numpydoc@0.5:', type=('build', 'run'), when='+docs')
depends_on('py-sphinx@1.2.2:', type=('build', 'run'), when='+docs')
- depends_on('py-nose@1.3.3:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-emcee/package.py b/var/spack/repos/builtin/packages/py-emcee/package.py
index 093a662b2b..7e0687f228 100644
--- a/var/spack/repos/builtin/packages/py-emcee/package.py
+++ b/var/spack/repos/builtin/packages/py-emcee/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyEmcee(PythonPackage):
Affine Invariant Markov chain Monte Carlo (MCMC) Ensemble sampler."""
homepage = "http://dan.iel.fm/emcee/current/"
- url = "https://pypi.io/packages/source/e/emcee/emcee-2.2.1.tar.gz"
+ pypi = "emcee/emcee-2.2.1.tar.gz"
version('2.2.1', sha256='b83551e342b37311897906b3b8acf32979f4c5542e0a25786ada862d26241172')
version('2.1.0', sha256='5ce1039a3d78fb9e7d53fcd768517585c5998193743bfcfaac407927d375ca63')
diff --git a/var/spack/repos/builtin/packages/py-empy/package.py b/var/spack/repos/builtin/packages/py-empy/package.py
index 54b1bd759a..557ddb48ef 100644
--- a/var/spack/repos/builtin/packages/py-empy/package.py
+++ b/var/spack/repos/builtin/packages/py-empy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,6 @@ class PyEmpy(PythonPackage):
"""A powerful and robust templating system for Python"""
homepage = "http://www.alcyone.com/software/empy"
- url = "https://pypi.io/packages/source/e/empy/empy-3.3.4.tar.gz"
+ pypi = "empy/empy-3.3.4.tar.gz"
version('3.3.4', sha256='73ac49785b601479df4ea18a7c79bc1304a8a7c34c02b9472cf1206ae88f01b3')
diff --git a/var/spack/repos/builtin/packages/py-entrypoints/package.py b/var/spack/repos/builtin/packages/py-entrypoints/package.py
index 84bc7c20f4..a86adfd36b 100644
--- a/var/spack/repos/builtin/packages/py-entrypoints/package.py
+++ b/var/spack/repos/builtin/packages/py-entrypoints/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,10 +9,7 @@ from spack import *
class PyEntrypoints(PythonPackage):
"""Discover and load entry points from installed packages."""
- homepage = "https://pypi.python.org/pypi/entrypoints"
- url = "https://pypi.io/packages/source/e/entrypoints/entrypoints-0.2.3.tar.gz"
-
- import_modules = ['entrypoints']
+ pypi = "entrypoints/entrypoints-0.2.3.tar.gz"
version('0.3', sha256='c70dd71abe5a8c85e55e12c19bd91ccfeec11a6e99044204511f9ed547d48451')
version('0.2.3', sha256='d2d587dde06f99545fb13a383d2cd336a8ff1f359c5839ce3a64c917d10c029f')
diff --git a/var/spack/repos/builtin/packages/py-enum34/package.py b/var/spack/repos/builtin/packages/py-enum34/package.py
index 7bcdf462b3..0628fa762b 100644
--- a/var/spack/repos/builtin/packages/py-enum34/package.py
+++ b/var/spack/repos/builtin/packages/py-enum34/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyEnum34(PythonPackage):
"""Python 3.4 Enum backported to 3.3, 3.2, 3.1, 2.7, 2.6, 2.5, and 2.4."""
homepage = "https://bitbucket.org/stoneleaf/enum34/src"
- url = "https://pypi.io/packages/source/e/enum34/enum34-1.1.6.tar.gz"
+ pypi = "enum34/enum34-1.1.6.tar.gz"
version('1.1.6', sha256='8ad8c4783bf61ded74527bffb48ed9b54166685e4230386a9ed9b1279e2df5b1')
diff --git a/var/spack/repos/builtin/packages/py-envisage/package.py b/var/spack/repos/builtin/packages/py-envisage/package.py
index 06783c8fcb..7068987db6 100644
--- a/var/spack/repos/builtin/packages/py-envisage/package.py
+++ b/var/spack/repos/builtin/packages/py-envisage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyEnvisage(PythonPackage):
to the Eclipse and Netbeans frameworks for Java applications."""
homepage = "https://docs.enthought.com/envisage"
- url = "https://pypi.io/packages/source/e/envisage/envisage-4.9.2.tar.gz"
+ pypi = "envisage/envisage-4.9.2.tar.gz"
version('4.9.2', sha256='ed9580ac6ea17b333f1cce5b94656aed584798d56d8bd364f996a06fe1ac32eb')
diff --git a/var/spack/repos/builtin/packages/py-ephem/package.py b/var/spack/repos/builtin/packages/py-ephem/package.py
index b3f62ae3cf..fdbcb4cb8c 100644
--- a/var/spack/repos/builtin/packages/py-ephem/package.py
+++ b/var/spack/repos/builtin/packages/py-ephem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-epydoc/package.py b/var/spack/repos/builtin/packages/py-epydoc/package.py
index cfd14fa4eb..da62e048aa 100644
--- a/var/spack/repos/builtin/packages/py-epydoc/package.py
+++ b/var/spack/repos/builtin/packages/py-epydoc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,6 @@ from spack import *
class PyEpydoc(PythonPackage):
"""Epydoc is a tool for generating API documentation documentation for
Python modules, based on their docstrings."""
- homepage = "https://pypi.python.org/pypi/epydoc"
- url = "https://pypi.io/packages/source/e/epydoc/epydoc-3.0.1.tar.gz"
+ pypi = "epydoc/epydoc-3.0.1.tar.gz"
version('3.0.1', sha256='c81469b853fab06ec42b39e35dd7cccbe9938dfddef324683d89c1e5176e48f2')
diff --git a/var/spack/repos/builtin/packages/py-espresso/package.py b/var/spack/repos/builtin/packages/py-espresso/package.py
index 4891b8c53e..581a670a2a 100644
--- a/var/spack/repos/builtin/packages/py-espresso/package.py
+++ b/var/spack/repos/builtin/packages/py-espresso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-espressopp/package.py b/var/spack/repos/builtin/packages/py-espressopp/package.py
index f243fcb4d2..66e0b5a363 100644
--- a/var/spack/repos/builtin/packages/py-espressopp/package.py
+++ b/var/spack/repos/builtin/packages/py-espressopp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,12 +14,13 @@ class PyEspressopp(CMakePackage):
atomistic or bead-spring models as they are used in soft matter research
"""
homepage = "https://espressopp.github.io"
- url = "https://github.com/espressopp/espressopp/tarball/v2.0.2"
+ url = "https://github.com/espressopp/espressopp/tarball/v3.0.0"
git = "https://github.com/espressopp/espressopp.git"
- version('develop', branch='master')
- version('2.0.2', sha256='8cf4525bca06426379f5b9fbb8cc2603f559d28a2e74d1d7694df963b8f3dc6c')
- version('1.9.5', sha256='8093f1a226f9fee8fb37c401767439a29ff3656dede3a44b4160169fc90d4d91')
+ version('master', branch='master')
+ version('3.0.0', sha256='63518e768a98179ad5ef3be96eabaa4d38063b34962e2278db7d59ed2bb8a32e')
+ version('2.0.2', sha256='8cf4525bca06426379f5b9fbb8cc2603f559d28a2e74d1d7694df963b8f3dc6c', deprecated=True)
+ version('1.9.5', sha256='8093f1a226f9fee8fb37c401767439a29ff3656dede3a44b4160169fc90d4d91', deprecated=True)
variant('ug', default=False, description='Build user guide')
variant('pdf', default=False, description='Build user guide in pdf format')
@@ -27,15 +28,16 @@ class PyEspressopp(CMakePackage):
depends_on("cmake@2.8:", type='build')
depends_on("mpi")
- depends_on("boost+serialization+filesystem+system+python+mpi cxxstd=11", when='@1.9.4:')
+ depends_on("boost+serialization+filesystem+system+python+mpi cxxstd=11")
extends("python")
- depends_on("python@2:2.8")
- depends_on("py-mpi4py@2.0.0:", when='@1.9.4', type=('build', 'run'))
- depends_on("py-mpi4py@1.3.1:", when='@1.9.4.1:', type=('build', 'run'))
+ depends_on("python@2:2.8", when="@:2.9999", type=('build', 'run'))
+ depends_on("python@3:", type=('build', 'run'))
+ depends_on("py-mpi4py@2.0.0:", type=('build', 'run'))
depends_on("fftw")
depends_on("py-sphinx", when="+ug", type='build')
depends_on("py-sphinx", when="+pdf", type='build')
- depends_on('py-numpy@:1.16.6', type=('build', 'run'))
+ depends_on('py-numpy@:1.16.6', when='@:2.9999', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
depends_on('py-matplotlib', when="+ug", type='build')
depends_on('py-matplotlib', when="+pdf", type='build')
depends_on("texlive", when="+pdf", type='build')
diff --git a/var/spack/repos/builtin/packages/py-et-xmlfile/package.py b/var/spack/repos/builtin/packages/py-et-xmlfile/package.py
index 49c508e32b..e80e144278 100644
--- a/var/spack/repos/builtin/packages/py-et-xmlfile/package.py
+++ b/var/spack/repos/builtin/packages/py-et-xmlfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyEtXmlfile(PythonPackage):
"""An implementation of lxml.xmlfile for the standard library."""
homepage = "https://bitbucket.org/openpyxl/et_xmlfile"
- url = "https://pypi.io/packages/source/e/et_xmlfile/et_xmlfile-1.0.1.tar.gz"
+ pypi = "et_xmlfile/et_xmlfile-1.0.1.tar.gz"
version('1.0.1', sha256='614d9722d572f6246302c4491846d2c393c199cfa4edc9af593437691683335b')
diff --git a/var/spack/repos/builtin/packages/py-eventlet/package.py b/var/spack/repos/builtin/packages/py-eventlet/package.py
index fa7f734348..54ca8e5710 100644
--- a/var/spack/repos/builtin/packages/py-eventlet/package.py
+++ b/var/spack/repos/builtin/packages/py-eventlet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-execnet/package.py b/var/spack/repos/builtin/packages/py-execnet/package.py
index 96c26f7717..b8d0a4b5fc 100644
--- a/var/spack/repos/builtin/packages/py-execnet/package.py
+++ b/var/spack/repos/builtin/packages/py-execnet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyExecnet(PythonPackage):
across version, platform and network barriers."""
homepage = "http://codespeak.net/execnet"
- url = "https://pypi.io/packages/source/e/execnet/execnet-1.7.1.tar.gz"
+ pypi = "execnet/execnet-1.7.1.tar.gz"
version('1.7.1', sha256='cacb9df31c9680ec5f95553976c4da484d407e85e41c83cb812aa014f0eddc50')
version('1.4.1', sha256='f66dd4a7519725a1b7e14ad9ae7d3df8e09b2da88062386e08e941cafc0ef3e6')
diff --git a/var/spack/repos/builtin/packages/py-exodus-bundler/package.py b/var/spack/repos/builtin/packages/py-exodus-bundler/package.py
index eddb3da88f..4f31ce3574 100644
--- a/var/spack/repos/builtin/packages/py-exodus-bundler/package.py
+++ b/var/spack/repos/builtin/packages/py-exodus-bundler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyExodusBundler(PythonPackage):
ELF binaries from one system to another."""
homepage = "https://github.com/intoli/exodus"
- url = "https://pypi.io/packages/source/e/exodus-bundler/exodus-bundler-2.0.2.tar.gz"
+ pypi = "exodus-bundler/exodus-bundler-2.0.2.tar.gz"
version('2.0.2', sha256='4e896a2034b94cf7b4fb33d86a68e29a7d3b08e57541e444db34dddc6ac1ef68')
diff --git a/var/spack/repos/builtin/packages/py-extension-helpers/package.py b/var/spack/repos/builtin/packages/py-extension-helpers/package.py
index 698af27a49..f03d1a7ff3 100644
--- a/var/spack/repos/builtin/packages/py-extension-helpers/package.py
+++ b/var/spack/repos/builtin/packages/py-extension-helpers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyExtensionHelpers(PythonPackage):
to be general and usable by any Python package."""
homepage = 'https://github.com/astropy/astropy-helpers'
- url = 'https://pypi.io/packages/source/e/extension-helpers/extension-helpers-0.1.tar.gz'
+ pypi = 'extension-helpers/extension-helpers-0.1.tar.gz'
version('0.1', sha256='ac8a6fe91c6d98986a51a9f08ca0c7945f8fd70d95b662ced4040ae5eb973882')
diff --git a/var/spack/repos/builtin/packages/py-extras/package.py b/var/spack/repos/builtin/packages/py-extras/package.py
index 5705b0dfe6..ab4f9c1f6c 100644
--- a/var/spack/repos/builtin/packages/py-extras/package.py
+++ b/var/spack/repos/builtin/packages/py-extras/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyExtras(PythonPackage):
library."""
homepage = "https://github.com/testing-cabal/extras"
- url = "https://pypi.io/packages/source/e/extras/extras-1.0.0.tar.gz"
+ pypi = "extras/extras-1.0.0.tar.gz"
version('1.0.0', sha256='132e36de10b9c91d5d4cc620160a476e0468a88f16c9431817a6729611a81b4e')
diff --git a/var/spack/repos/builtin/packages/py-ez-setup/package.py b/var/spack/repos/builtin/packages/py-ez-setup/package.py
new file mode 100644
index 0000000000..41c2b34658
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ez-setup/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyEzSetup(PythonPackage):
+ """Setuptools bootstrap module, which is not always packaged with
+ setuptools."""
+
+ homepage = "https://github.com/ActiveState/ez_setup"
+ url = "https://github.com/ActiveState/ez_setup/archive/v0.9.tar.gz"
+
+ version('0.9', sha256='a35cb03142cc10b6bb2cf59999cf2f4e127ec0901606d02be57da5b34e6897fb')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-f90wrap/package.py b/var/spack/repos/builtin/packages/py-f90wrap/package.py
new file mode 100644
index 0000000000..84a4989280
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-f90wrap/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyF90wrap(PythonPackage):
+ """f90wrap is a tool to automatically generate Python extension
+ modules which interface to Fortran code that makes use of derived types."""
+
+ homepage = "https://github.com/jameskermode/f90wrap"
+ pypi = "f90wrap/f90wrap-0.2.3.tar.gz"
+
+ version('0.2.3', sha256='5577ea92934c5aad378df21fb0805b5fb433d6f2b8b9c1bf1a9ec1e3bf842cff')
+
+ # TODO errors with python 3.6 due to UnicodeDecodeError
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-fabric/package.py b/var/spack/repos/builtin/packages/py-fabric/package.py
index b8ccb624bb..1f63b06bdb 100644
--- a/var/spack/repos/builtin/packages/py-fabric/package.py
+++ b/var/spack/repos/builtin/packages/py-fabric/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyFabric(PythonPackage):
"""High level SSH command execution."""
homepage = "http://fabfile.org/"
- url = "https://pypi.io/packages/source/f/fabric/fabric-2.5.0.tar.gz"
+ pypi = "fabric/fabric-2.5.0.tar.gz"
version('2.5.0', sha256='24842d7d51556adcabd885ac3cf5e1df73fc622a1708bf3667bf5927576cdfa6')
diff --git a/var/spack/repos/builtin/packages/py-falcon/package.py b/var/spack/repos/builtin/packages/py-falcon/package.py
index c1003d9bbf..7100d9f77c 100644
--- a/var/spack/repos/builtin/packages/py-falcon/package.py
+++ b/var/spack/repos/builtin/packages/py-falcon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-fallocate/package.py b/var/spack/repos/builtin/packages/py-fallocate/package.py
index 0e0a442f2b..aee4656d7d 100644
--- a/var/spack/repos/builtin/packages/py-fallocate/package.py
+++ b/var/spack/repos/builtin/packages/py-fallocate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,6 @@ class PyFallocate(PythonPackage):
"""
homepage = "https://github.com/trbs/fallocate"
- url = "https://pypi.io/packages/source/f/fallocate/fallocate-1.6.4.tar.gz"
+ pypi = "fallocate/fallocate-1.6.4.tar.gz"
version('1.6.4', sha256='85ebeb2786761fbe80d88c52590a610bd3425fc89e188c208a3f261a5bd6acb3')
diff --git a/var/spack/repos/builtin/packages/py-fastaindex/package.py b/var/spack/repos/builtin/packages/py-fastaindex/package.py
index 8b37fd3a4e..f5c091c50e 100644
--- a/var/spack/repos/builtin/packages/py-fastaindex/package.py
+++ b/var/spack/repos/builtin/packages/py-fastaindex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyFastaindex(PythonPackage):
with 4 columns storing counts for A, C, G & T for each sequence.."""
homepage = "https://github.com/lpryszcz/FastaIndex"
- url = "https://pypi.io/packages/source/F/FastaIndex/FastaIndex-0.11rc7.tar.gz"
+ pypi = "FastaIndex/FastaIndex-0.11rc7.tar.gz"
version('0.11rc7', sha256='c130a2146bb178ea4f9d228e0d360787046ab4cb0ab53b5b43711dd57e31aff7')
diff --git a/var/spack/repos/builtin/packages/py-fastavro/package.py b/var/spack/repos/builtin/packages/py-fastavro/package.py
index e103a8cbac..6c13cc70f6 100644
--- a/var/spack/repos/builtin/packages/py-fastavro/package.py
+++ b/var/spack/repos/builtin/packages/py-fastavro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-fastcache/package.py b/var/spack/repos/builtin/packages/py-fastcache/package.py
index bd58a14702..bb4b861f1f 100644
--- a/var/spack/repos/builtin/packages/py-fastcache/package.py
+++ b/var/spack/repos/builtin/packages/py-fastcache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyFastcache(PythonPackage):
"""C implementation of Python 3 functools.lru_cache"""
homepage = "https://github.com/pbrady/fastcache"
- url = "https://pypi.io/packages/source/f/fastcache/fastcache-1.1.0.tar.gz"
+ pypi = "fastcache/fastcache-1.1.0.tar.gz"
version('1.1.0', sha256='6de1b16e70335b7bde266707eb401a3aaec220fb66c5d13b02abf0eab8be782b')
diff --git a/var/spack/repos/builtin/packages/py-fastcluster/package.py b/var/spack/repos/builtin/packages/py-fastcluster/package.py
index bc09681527..f7bc397880 100644
--- a/var/spack/repos/builtin/packages/py-fastcluster/package.py
+++ b/var/spack/repos/builtin/packages/py-fastcluster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyFastcluster(PythonPackage):
"""Fast hierarchical clustering routines for R and Python."""
homepage = "http://danifold.net/"
- url = "https://pypi.io/packages/source/f/fastcluster/fastcluster-1.1.26.tar.gz"
+ pypi = "fastcluster/fastcluster-1.1.26.tar.gz"
version('1.1.26', sha256='a202f44a3b06f5cf9cdba3c67d6c523288922d6e6a1cdf737292f93759aa82f7')
diff --git a/var/spack/repos/builtin/packages/py-fastdtw/package.py b/var/spack/repos/builtin/packages/py-fastdtw/package.py
index dbe31960f5..122c2f93cc 100644
--- a/var/spack/repos/builtin/packages/py-fastdtw/package.py
+++ b/var/spack/repos/builtin/packages/py-fastdtw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyFastdtw(PythonPackage):
complexity."""
homepage = "https://github.com/slaypni/fastdtw"
- url = "https://pypi.io/packages/source/f/fastdtw/fastdtw-0.3.4.tar.gz"
+ pypi = "fastdtw/fastdtw-0.3.4.tar.gz"
version('0.3.4', sha256='2350fa6ec36bcad186eaf81f46eff35181baf04e324f522de8aeb43d0243f64f')
diff --git a/var/spack/repos/builtin/packages/py-fasteners/package.py b/var/spack/repos/builtin/packages/py-fasteners/package.py
index 685b1dca0e..6c65b8b023 100644
--- a/var/spack/repos/builtin/packages/py-fasteners/package.py
+++ b/var/spack/repos/builtin/packages/py-fasteners/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyFasteners(PythonPackage):
"""A python package that provides useful locks."""
homepage = "https://github.com/harlowja/fasteners"
- url = "https://pypi.io/packages/source/f/fasteners/fasteners-0.14.1.tar.gz"
+ pypi = "fasteners/fasteners-0.14.1.tar.gz"
version('0.14.1', sha256='427c76773fe036ddfa41e57d89086ea03111bbac57c55fc55f3006d027107e18')
diff --git a/var/spack/repos/builtin/packages/py-fastrlock/package.py b/var/spack/repos/builtin/packages/py-fastrlock/package.py
index 83825227c5..c27e5c54a3 100644
--- a/var/spack/repos/builtin/packages/py-fastrlock/package.py
+++ b/var/spack/repos/builtin/packages/py-fastrlock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-faststructure/package.py b/var/spack/repos/builtin/packages/py-faststructure/package.py
index 60e123738f..07160c8e8c 100644
--- a/var/spack/repos/builtin/packages/py-faststructure/package.py
+++ b/var/spack/repos/builtin/packages/py-faststructure/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-fava/package.py b/var/spack/repos/builtin/packages/py-fava/package.py
new file mode 100644
index 0000000000..86af081df4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-fava/package.py
@@ -0,0 +1,43 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFava(PythonPackage):
+ """Fava is a web interface for the double-entry bookkeeping software
+ Beancount with a focus on features and usability."""
+
+ homepage = "https://beancount.github.io/fava/"
+ pypi = "fava/fava-1.18.tar.gz"
+
+ version('1.18', sha256='21336b695708497e6f00cab77135b174c51feb2713b657e0e208282960885bf5')
+
+ # For some reason Fava adds a whole bunch of executables to
+ # its bin directory, and this causes clashes when loading
+ # the module.
+ extends('python', ignore='bin/^(?!fava).*')
+
+ # Some of the dependencies are not listed as required at
+ # build or run time, but actually are.
+ # - py-setuptools
+ # - py-importlib
+ # - py-pytest
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-setuptools-scm', type=('build'))
+
+ depends_on('py-babel@2.6.0:', type=('build', 'run'))
+ depends_on('py-beancount@2.3.0:', type=('build', 'run'))
+ depends_on('py-cheroot', type=('build', 'run'))
+ depends_on('py-click', type=('build', 'run'))
+ depends_on('py-flask@0.10.1:', type=('build', 'run'))
+ depends_on('py-flask-babel@1.0.0:', type=('build', 'run'))
+ depends_on('py-jinja2@2.10:', type=('build', 'run'))
+ depends_on('py-markdown2@2.3.0:', type=('build', 'run'))
+ depends_on('py-ply', type=('build', 'run'))
+ depends_on('py-pytest', type=('build', 'run'))
+ depends_on('py-simplejson@3.2.0:', type=('build', 'run'))
+ depends_on('py-werkzeug@0.15.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-fenics-basix/package.py b/var/spack/repos/builtin/packages/py-fenics-basix/package.py
new file mode 100644
index 0000000000..9fec47e0db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-fenics-basix/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFenicsBasix(PythonPackage):
+ """Python basis evaluation library for Next generation FEniCS problem solving
+ environment"""
+
+ homepage = "https://github.com/FEniCS/basix"
+ git = "https://github.com/FEniCS/basix.git"
+ maintainers = ["chrisrichardson", "mscroggs"]
+
+ version("main", branch="main")
+
+ depends_on("fenics-basix@main", type=("build", "run"))
+ depends_on("python@3.6:", type=('build', 'run'))
+ depends_on("eigen@3.3.7:")
+ depends_on("py-setuptools", type="build")
+ depends_on("cmake@3.18:", type="build")
+ depends_on("py-pybind11@2.6.2:", type="build")
+
+ phases = ['build_ext', 'build', 'install']
+
+ build_directory = 'python'
diff --git a/var/spack/repos/builtin/packages/py-fenics-dijitso/package.py b/var/spack/repos/builtin/packages/py-fenics-dijitso/package.py
index d2cd6865d3..9b0edc2cd8 100644
--- a/var/spack/repos/builtin/packages/py-fenics-dijitso/package.py
+++ b/var/spack/repos/builtin/packages/py-fenics-dijitso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,16 @@ class PyFenicsDijitso(PythonPackage):
"""A Python module for distributed just-in-time shared library building"""
homepage = "https://bitbucket.org/fenics-project/dijitso"
- url = "https://bitbucket.org/fenics-project/dijitso/downloads/dijitso-2018.1.0.tar.gz"
+ url = "https://bitbucket.org/fenics-project/dijitso/downloads/dijitso-2019.1.0.tar.gz"
git = "https://bitbucket.org/fenics-project/dijitso.git"
maintainers = ["js947", "chrisrichardson"]
version("master", branch="master")
- version("2018.1.0", sha256="2084ada1e7bd6ecec0999b15a17db98c72e26f1ccbf3fcbe240b1a035a1a2e64")
- version("2017.2.0", sha256="05a893d17f8a50067d303b232e41592dce2840d6499677ad8b457ba58a679b58")
- version("2017.1.0", sha256="ef23952539d349fbd384d41302abc94413d485ca7e8c29e8a0debc2aadaf8657")
- version("2016.2.0", sha256="1bfa0ac0d47dae75bbde8fabb1145d3caa2e6c28a1e4097ad5550a91a8a205e4")
+ version('2019.1.0', sha256='eaa45eec4457f3f865d72a926b7cba86df089410e78de04cd89b15bb405e8fd9')
+ version('2018.1.0', sha256='2084ada1e7bd6ecec0999b15a17db98c72e26f1ccbf3fcbe240b1a035a1a2e64')
+ version('2017.2.0', sha256='05a893d17f8a50067d303b232e41592dce2840d6499677ad8b457ba58a679b58')
+ version('2017.1.0', sha256='ef23952539d349fbd384d41302abc94413d485ca7e8c29e8a0debc2aadaf8657')
+ version('2016.2.0', sha256='1bfa0ac0d47dae75bbde8fabb1145d3caa2e6c28a1e4097ad5550a91a8a205e4')
depends_on("py-setuptools", type="build")
depends_on("python@3.5:", type=("build", "run"))
diff --git a/var/spack/repos/builtin/packages/py-fenics-dolfinx/package.py b/var/spack/repos/builtin/packages/py-fenics-dolfinx/package.py
index f84f9ce565..d23c7dd508 100644
--- a/var/spack/repos/builtin/packages/py-fenics-dolfinx/package.py
+++ b/var/spack/repos/builtin/packages/py-fenics-dolfinx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,23 +14,24 @@ class PyFenicsDolfinx(PythonPackage):
git = "https://github.com/FEniCS/dolfinx.git"
maintainers = ["js947", "chrisrichardson"]
- version("master", branch="master")
+ version("main", branch="main")
depends_on("cmake@3.9:", type="build")
depends_on("pkgconfig", type=("build", "run"))
depends_on('python@3.5:', type=('build', 'run'))
depends_on("py-setuptools", type="build")
- depends_on("fenics-dolfinx@master")
+ depends_on("fenics-dolfinx@main")
+ depends_on("fenics-basix@main", type=("build", "run"))
depends_on("py-mpi4py", type=("build", "run"))
depends_on("py-petsc4py", type=("build", "run"))
depends_on("py-pybind11", type=("build", "run"))
depends_on("py-fenics-ffcx", type=("run"))
+ depends_on("py-fenics-basix", type=("run"))
depends_on("py-fenics-ufl", type=("run"))
depends_on("py-cffi", type=("run"))
depends_on("py-numpy", type=("run"))
- import_modules = ['dolfinx']
phases = ['build_ext', 'build', 'install']
build_directory = 'python'
diff --git a/var/spack/repos/builtin/packages/py-fenics-ffc/package.py b/var/spack/repos/builtin/packages/py-fenics-ffc/package.py
new file mode 100644
index 0000000000..0c3b9fbf66
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-fenics-ffc/package.py
@@ -0,0 +1,39 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFenicsFfc(PythonPackage):
+ """The FEniCS Form Compiler FFC is a compiler for finite element
+ variational forms, translating high-level mathematical descriptions
+ of variational forms into efficient low-level C++ code for finite
+ element assembly."""
+
+ homepage = "https://fenicsproject.org/"
+ git = "https://bitbucket.org/fenics-project/ffc.git"
+ url = "https://bitbucket.org/fenics-project/ffc/downloads/ffc-2019.1.0.post0.tar.gz"
+ maintainers = ['emai-imcs']
+
+ version('2019.1.0.post0', sha256='306e1179630200a34202975a5369194939b3482eebfc34bc44ad74dab1f109e8')
+ version('2018.1.0', sha256='c5a6511693106d1cd2fc013148d0cd01cd1b99fc65dab461ca0b95851a9ea271')
+ version('2017.2.0.post0', sha256='1969a5460cb866c478df64874ce213f81cb5c893b89f991a578e258b1a64fee5')
+ version('2016.2.0', sha256='097c284780447ea7bb47d4d51956648a1efb2cb9047eb1382944421dde351ecb')
+
+ depends_on('python@3.5:', type=('build', 'run'))
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+
+ for ver in ['2019.1.0.post0', '2018.1.0', '2017.2.0.post0', '2016.2.0']:
+ if ver in ['2019.1.0.post0', '2017.2.0.post0']:
+ ver = ver[:ver.rfind('.post')]
+ wver = '@' + ver
+ depends_on('py-fenics-fiat{0}'.format(wver), type=('build', 'run'), when=wver)
+ if(Version(ver) < Version('2017.2.0')):
+ depends_on('py-fenics-instant{0}'.format(wver), type=('build', 'run'), when=wver)
+ else:
+ depends_on('py-fenics-dijitso{0}'.format(wver), type=('build', 'run'), when=wver)
+ depends_on('py-fenics-ufl{0}'.format(wver), type=('build', 'run'), when=wver)
diff --git a/var/spack/repos/builtin/packages/py-fenics-ffcx/package.py b/var/spack/repos/builtin/packages/py-fenics-ffcx/package.py
index abc7792afb..53959c1278 100644
--- a/var/spack/repos/builtin/packages/py-fenics-ffcx/package.py
+++ b/var/spack/repos/builtin/packages/py-fenics-ffcx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,11 +13,11 @@ class PyFenicsFfcx(PythonPackage):
git = "https://github.com/FEniCS/ffcx.git"
maintainers = ["js947", "chrisrichardson"]
- version("master", branch="master")
+ version("main", branch="main")
depends_on('python@3.5:', type=('build', 'run'))
depends_on("py-setuptools", type=("build", "run"))
depends_on("py-cffi", type=("build", "run"))
depends_on("py-fenics-ufl@master", type=("build", "run"))
- depends_on("py-fenics-fiat@master", type=("build", "run"))
+ depends_on("py-fenics-basix@main", type=("build", "run"))
depends_on("py-numpy", type=("build", "run"))
diff --git a/var/spack/repos/builtin/packages/py-fenics-fiat/package.py b/var/spack/repos/builtin/packages/py-fenics-fiat/package.py
index f6f9aa5825..135565888c 100644
--- a/var/spack/repos/builtin/packages/py-fenics-fiat/package.py
+++ b/var/spack/repos/builtin/packages/py-fenics-fiat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,8 +27,11 @@ class PyFenicsFiat(PythonPackage):
version('2017.2.0', sha256='e4d3ffc86a0a717b3f17b9bb2d922214c342be27e5bdfbe50f110030bfff9729')
version('2017.1.0.post1', sha256='1784fe1cb9479ca7cd85f63b0afa6e07634feec8d8e82fa8be4c480649cb9621')
version('2017.1.0', sha256='d4288401ad16c4598720f9db0810a522f7f0eadad35d8211bac7120bce5fde94')
+ version('2016.2.0', tag='fiat-2016.2.0')
depends_on('python@3:', type=('build', 'run'))
depends_on('py-setuptools', type="build")
depends_on('py-numpy', type=("build", "run"))
- depends_on('py-sympy', type=("build", "run"))
+ depends_on('py-sympy', type=("build", "run"), when='@2019.1.0')
+ # avoid compilation error of dolfin (ffc fails with latest sympy)
+ depends_on('py-sympy@1.0', type=("build", "run"), when='@:2018.1.0')
diff --git a/var/spack/repos/builtin/packages/py-fenics-instant/package.py b/var/spack/repos/builtin/packages/py-fenics-instant/package.py
new file mode 100644
index 0000000000..10de314363
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-fenics-instant/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFenicsInstant(PythonPackage):
+ """Instant is a Python module that allows for instant inlining of C and C++
+ code in Python. It is a small Python module built on top of SWIG and
+ Distutils. Instant has been retired after 2017.2.0 release. It is no longer
+ needed in FEniCS and hence no longer maintained and tested. """
+
+ homepage = "https://fenicsproject.org"
+ url = "https://bitbucket.org/fenics-project/instant/downloads/instant-2017.2.0.tar.gz"
+ maintainers = ['emai-imcs']
+
+ version('2017.2.0', sha256='be24f162fd1a89b82fae002db8df0b4f111fd50db83d78c0c121015c02e45b7b')
+ version('2016.2.0', sha256='df5e8ca306546fd1ee1a28e36b61c5d46456dc8b07e3293d674ddff62cf8d953')
+
+ depends_on('python@2.7:', type=("build", "run"))
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-subprocess32', when='^python@:2.999', type=('build', 'run'))
+ depends_on('py-setuptools', type="build")
+ depends_on('py-numpy', type=("build", "run"))
+ depends_on('cmake', type="run")
+ depends_on('swig', type=("build", "run"))
diff --git a/var/spack/repos/builtin/packages/py-fenics-ufl/package.py b/var/spack/repos/builtin/packages/py-fenics-ufl/package.py
index 0476cd33c6..7d3aeb9a67 100644
--- a/var/spack/repos/builtin/packages/py-fenics-ufl/package.py
+++ b/var/spack/repos/builtin/packages/py-fenics-ufl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,6 +24,7 @@ class PyFenicsUfl(PythonPackage):
version('2017.2.0.post0', sha256='111e77707cd6731584b1041f405c2fd3f1752a86c51fd9c430524bd396f293b0')
version('2017.2.0', sha256='0adff7a511185b20c38ddaccdeed6c1b2ecafe4b163c688bfd1316d5c3b1c00d')
version('2017.1.0.post1', sha256='82c8170f44c2392c7e60aa86495df22cc209af50735af8115dc35aeda4b0ca96')
+ version('2016.2.0', tag='ufl-2016.2.0')
depends_on("python@3.5:", type=('build', 'run'))
depends_on("py-setuptools", type="build")
diff --git a/var/spack/repos/builtin/packages/py-filelock/package.py b/var/spack/repos/builtin/packages/py-filelock/package.py
index 27d9735598..ffa7a37685 100644
--- a/var/spack/repos/builtin/packages/py-filelock/package.py
+++ b/var/spack/repos/builtin/packages/py-filelock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyFilelock(PythonPackage):
inter-process communication"""
homepage = "https://github.com/benediktschmitt/py-filelock"
- url = "https://pypi.io/packages/source/f/filelock/filelock-3.0.4.tar.gz"
+ pypi = "filelock/filelock-3.0.4.tar.gz"
version('3.0.12', sha256='18d82244ee114f543149c66a6e0c14e9c4f8a1044b5cdaadd0f82159d6a6ff59')
version('3.0.4', sha256='011327d4ed939693a5b28c0fdf2fd9bda1f68614c1d6d0643a89382ce9843a71')
diff --git a/var/spack/repos/builtin/packages/py-filemagic/package.py b/var/spack/repos/builtin/packages/py-filemagic/package.py
index 8d425dfb37..cc3701a427 100644
--- a/var/spack/repos/builtin/packages/py-filemagic/package.py
+++ b/var/spack/repos/builtin/packages/py-filemagic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,8 @@ class PyFilemagic(PythonPackage):
"""A Python API for libmagic, the library behind the Unix file command"""
homepage = "https://filemagic.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/f/filemagic/filemagic-1.6.tar.gz"
+ pypi = "filemagic/filemagic-1.6.tar.gz"
version('1.6', sha256='e684359ef40820fe406f0ebc5bf8a78f89717bdb7fed688af68082d991d6dbf3')
depends_on('py-setuptools', type='build')
- depends_on('py-mock', type='test', when='^python@3:')
- depends_on('py-unittest2', type='test')
diff --git a/var/spack/repos/builtin/packages/py-filterpy/package.py b/var/spack/repos/builtin/packages/py-filterpy/package.py
new file mode 100644
index 0000000000..a67b0f2434
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-filterpy/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFilterpy(PythonPackage):
+ """This library provides Kalman filtering and various
+ related optimal and non-optimal filtering software written
+ in Python."""
+
+ homepage = "https://github.com/rlabbe/filterpy/"
+ pypi = "filterpy/filterpy-1.4.5.zip"
+
+ version('1.4.5', sha256='4f2a4d39e4ea601b9ab42b2db08b5918a9538c168cff1c6895ae26646f3d73b1')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-fiona/package.py b/var/spack/repos/builtin/packages/py-fiona/package.py
index b4213d5f61..1365749c13 100644
--- a/var/spack/repos/builtin/packages/py-fiona/package.py
+++ b/var/spack/repos/builtin/packages/py-fiona/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,24 +7,28 @@ from spack import *
class PyFiona(PythonPackage):
- """Alternative Python binding for OGR"""
+ """Fiona reads and writes spatial data files."""
- homepage = "http://toblerity.org/fiona/"
- url = "https://pypi.io/packages/source/F/Fiona/Fiona-1.8.6.tar.gz"
+ homepage = "https://github.com/Toblerity/Fiona"
+ pypi = "Fiona/Fiona-1.8.18.tar.gz"
+ git = "https://github.com/Toblerity/Fiona.git"
maintainers = ['adamjstewart']
- import_modules = ['fiona', 'fiona.fio']
+ version('master', branch='master')
+ version('1.8.18', sha256='b732ece0ff8886a29c439723a3e1fc382718804bb057519d537a81308854967a')
version('1.8.6', sha256='fa31dfe8855b9cd0b128b47a4df558f1b8eda90d2181bff1dd9854e5556efb3e')
version('1.7.12', sha256='8b54eb8422d7c502bb7776b184018186bede1a489cf438a7a47f992ade6a0e51')
- depends_on('python@3:', type=('build', 'run'), when='@1.9:')
- depends_on('python@2.6:', type=('build', 'run'))
- depends_on('gdal@1.8:', type=('build', 'run'))
+ depends_on('python@3.6:', type=('build', 'link', 'run'), when='@1.9:')
+ depends_on('python@2.6:', type=('build', 'link', 'run'))
+ depends_on('gdal@1.11:', type=('build', 'link', 'run'), when='@1.9:')
+ depends_on('gdal@1.8:', type=('build', 'link', 'run'))
- depends_on('py-setuptools', type='build')
- depends_on('py-cython', type='build')
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-cython', type='build', when='@master')
depends_on('py-attrs@17:', type=('build', 'run'))
+ depends_on('py-certifi', type=('build', 'run'), when='@1.8.18')
depends_on('py-click@4:7', type=('build', 'run'))
depends_on('py-cligj@0.5:', type=('build', 'run'))
depends_on('py-click-plugins@1:', type=('build', 'run'))
@@ -33,7 +37,3 @@ class PyFiona(PythonPackage):
depends_on('py-argparse', type=('build', 'run'), when='^python@:2.6')
depends_on('py-ordereddict', type=('build', 'run'), when='^python@:2.6')
depends_on('py-enum34', type=('build', 'run'), when='^python@:3.3')
-
- def build_test(self):
- # PyPI tarball does not come with unit tests
- pass
diff --git a/var/spack/repos/builtin/packages/py-fiscalyear/package.py b/var/spack/repos/builtin/packages/py-fiscalyear/package.py
index 407caa7ce5..9b26ea824b 100644
--- a/var/spack/repos/builtin/packages/py-fiscalyear/package.py
+++ b/var/spack/repos/builtin/packages/py-fiscalyear/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,24 +8,23 @@ from spack import *
class PyFiscalyear(PythonPackage):
"""fiscalyear is a small, lightweight Python module providing helpful
- utilities for managing the fiscal calendar. It is designed as an extension
- of the built-in datetime and calendar modules, adding the ability to query
- the fiscal year and fiscal quarter of a date or datetime object."""
+ utilities for managing the fiscal calendar.
+
+ It is designed as an extension of the built-in datetime and calendar
+ modules, adding the ability to query the fiscal year, fiscal quarter,
+ fiscal month, and fiscal day of a date or datetime object."""
homepage = "https://github.com/adamjstewart/fiscalyear"
- url = "https://pypi.io/packages/source/f/fiscalyear/fiscalyear-0.2.0.tar.gz"
- git = "https://github.com/adamjstewart/fiscalyear.git"
+ pypi = "fiscalyear/fiscalyear-0.2.0.tar.gz"
+ git = "https://github.com/adamjstewart/fiscalyear.git"
maintainers = ['adamjstewart']
- import_modules = ['fiscalyear']
version('master', branch='master')
+ version('0.3.1', sha256='5964b4be71453c1fa5da804343cea866e0299aff874aa59ae186a8a9b9ff62d0')
+ version('0.3.0', sha256='64f97b3a0ab6b2857d09f0016bd3aae37646a454a5c2c66e907fef03ae54a816')
version('0.2.0', sha256='f513616aeb03046406c56d7c69cd9e26f6a12963c71c1410cc3d4532a5bfee71')
version('0.1.0', sha256='3fde4a12eeb72da446beb487e078adf1223a92d130520e589b82d7d1509701a2')
depends_on('python@2.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- depends_on('py-pytest', type='test')
- depends_on('py-pytest-runner', type='test')
- depends_on('py-pytest-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-fisher/package.py b/var/spack/repos/builtin/packages/py-fisher/package.py
index 45e0fc5110..776ba03af6 100644
--- a/var/spack/repos/builtin/packages/py-fisher/package.py
+++ b/var/spack/repos/builtin/packages/py-fisher/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,9 @@ class PyFisher(PythonPackage):
Simple, fast implementation of Fisher's exact test."""
homepage = "https://github.com/brentp/fishers_exact_test"
- url = "https://pypi.io/packages/source/f/fisher/fisher-0.1.9.tar.gz"
+ pypi = "fisher/fisher-0.1.9.tar.gz"
version('0.1.9', sha256='d378b3f7e488e2a679c6d0e5ea1bce17bc931c2bfe8ec8424ee47a74f251968d')
depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-fits-tools/package.py b/var/spack/repos/builtin/packages/py-fits-tools/package.py
index 5127d88727..abe29b1a90 100644
--- a/var/spack/repos/builtin/packages/py-fits-tools/package.py
+++ b/var/spack/repos/builtin/packages/py-fits-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-fixtures/package.py b/var/spack/repos/builtin/packages/py-fixtures/package.py
index 2cc0362c4e..c594f7bf60 100644
--- a/var/spack/repos/builtin/packages/py-fixtures/package.py
+++ b/var/spack/repos/builtin/packages/py-fixtures/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyFixtures(PythonPackage):
"""Fixtures, reusable state for writing clean tests and more."""
homepage = "https://launchpad.net/python-fixtures"
- url = "https://pypi.io/packages/source/f/fixtures/fixtures-3.0.0.tar.gz"
+ pypi = "fixtures/fixtures-3.0.0.tar.gz"
version('3.0.0', sha256='fcf0d60234f1544da717a9738325812de1f42c2fa085e2d9252d8fff5712b2ef')
diff --git a/var/spack/repos/builtin/packages/py-flake8-import-order/package.py b/var/spack/repos/builtin/packages/py-flake8-import-order/package.py
index a93236e60f..f11c20ff95 100644
--- a/var/spack/repos/builtin/packages/py-flake8-import-order/package.py
+++ b/var/spack/repos/builtin/packages/py-flake8-import-order/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyFlake8ImportOrder(PythonPackage):
"""
homepage = "https://github.com/PyCQA/flake8-import-order"
- url = "https://pypi.io/packages/source/f/flake8-import-order/flake8-import-order-0.18.1.tar.gz"
+ pypi = "flake8-import-order/flake8-import-order-0.18.1.tar.gz"
version('0.18.1', sha256='a28dc39545ea4606c1ac3c24e9d05c849c6e5444a50fb7e9cdd430fc94de6e92')
diff --git a/var/spack/repos/builtin/packages/py-flake8-polyfill/package.py b/var/spack/repos/builtin/packages/py-flake8-polyfill/package.py
index cc61a2e936..882ba736c0 100644
--- a/var/spack/repos/builtin/packages/py-flake8-polyfill/package.py
+++ b/var/spack/repos/builtin/packages/py-flake8-polyfill/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyFlake8Polyfill(PythonPackage):
simultaneously.
"""
homepage = "https://gitlab.com/pycqa/flake8-polyfill"
- url = "https://pypi.io/packages/source/f/flake8-polyfill/flake8-polyfill-1.0.2.tar.gz"
+ pypi = "flake8-polyfill/flake8-polyfill-1.0.2.tar.gz"
version('1.0.2', sha256='e44b087597f6da52ec6393a709e7108b2905317d0c0b744cdca6208e670d8eda')
diff --git a/var/spack/repos/builtin/packages/py-flake8/package.py b/var/spack/repos/builtin/packages/py-flake8/package.py
index 4c585ee755..a0da2f0c38 100644
--- a/var/spack/repos/builtin/packages/py-flake8/package.py
+++ b/var/spack/repos/builtin/packages/py-flake8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-flask-babel/package.py b/var/spack/repos/builtin/packages/py-flask-babel/package.py
new file mode 100644
index 0000000000..4d91e33c96
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-flask-babel/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFlaskBabel(PythonPackage):
+ """Implements i18n and l10n support for Flask."""
+
+ homepage = "https://pythonhosted.org/Flask-Babel/"
+ pypi = "Flask-Babel/Flask-Babel-2.0.0.tar.gz"
+
+ version('2.0.0', sha256='f9faf45cdb2e1a32ea2ec14403587d4295108f35017a7821a2b1acb8cfd9257d')
+
+ depends_on('python@3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-flask', type=('build', 'run'))
+ depends_on('py-babel@2.3:', type=('build', 'run'))
+ depends_on('py-pytz', type=('build', 'run'))
+ depends_on('py-jinja2@2.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-flask-compress/package.py b/var/spack/repos/builtin/packages/py-flask-compress/package.py
index c8a2f4ea06..797f512740 100644
--- a/var/spack/repos/builtin/packages/py-flask-compress/package.py
+++ b/var/spack/repos/builtin/packages/py-flask-compress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyFlaskCompress(PythonPackage):
responses with gzip."""
homepage = "https://github.com/libwilliam/flask-compress"
- url = "https://pypi.io/packages/source/F/Flask-Compress/Flask-Compress-1.4.0.tar.gz"
+ pypi = "Flask-Compress/Flask-Compress-1.4.0.tar.gz"
version('1.4.0', sha256='468693f4ddd11ac6a41bca4eb5f94b071b763256d54136f77957cfee635badb3')
diff --git a/var/spack/repos/builtin/packages/py-flask-cors/package.py b/var/spack/repos/builtin/packages/py-flask-cors/package.py
new file mode 100644
index 0000000000..625a9bc6ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-flask-cors/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFlaskCors(PythonPackage):
+ """A Flask extension for handling Cross Origin Resource Sharing (CORS),
+ making cross-origin AJAX possible.
+ """
+
+ homepage = "https://flask-cors.corydolphin.com/en/latest/index.html"
+ pypi = "Flask-Cors/Flask-Cors-3.0.10.tar.gz"
+
+ version('3.0.10', sha256='b60839393f3b84a0f3746f6cdca56c1ad7426aa738b70d6c61375857823181de')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-flask@0.9:', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-flask-socketio/package.py b/var/spack/repos/builtin/packages/py-flask-socketio/package.py
index 5a31755694..a084643c4a 100644
--- a/var/spack/repos/builtin/packages/py-flask-socketio/package.py
+++ b/var/spack/repos/builtin/packages/py-flask-socketio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyFlaskSocketio(PythonPackage):
"""
homepage = "https://flask-socketio.readthedocs.io"
- url = "https://pypi.io/packages/source/F/Flask-SocketIO/Flask-SocketIO-2.9.6.tar.gz"
+ pypi = "Flask-SocketIO/Flask-SocketIO-2.9.6.tar.gz"
version('2.9.6', sha256='f49edfd3a44458fbb9f7a04a57069ffc0c37f000495194f943a25d370436bb69')
diff --git a/var/spack/repos/builtin/packages/py-flask/package.py b/var/spack/repos/builtin/packages/py-flask/package.py
index 4be2b1e1e1..53f5c6d3be 100644
--- a/var/spack/repos/builtin/packages/py-flask/package.py
+++ b/var/spack/repos/builtin/packages/py-flask/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyFlask(PythonPackage):
"""A simple framework for building complex web applications."""
homepage = "https://palletsprojects.com/p/flask/"
- url = "https://pypi.io/packages/source/F/Flask/Flask-1.1.1.tar.gz"
+ pypi = "Flask/Flask-1.1.1.tar.gz"
version('1.1.2', sha256='4efa1ae2d7c9865af48986de8aeb8504bf32c7f3d6fdc9353d34b21f4b127060')
version('1.1.1', sha256='13f9f196f330c7c2c5d7a5cf91af894110ca0215ac051b5844701f2bfd934d52')
diff --git a/var/spack/repos/builtin/packages/py-flatten-dict/package.py b/var/spack/repos/builtin/packages/py-flatten-dict/package.py
new file mode 100644
index 0000000000..6b2eeb1d0a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-flatten-dict/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyFlattenDict(PythonPackage):
+ """A flexible utility for flattening and unflattening dict-lik objects
+ in Python"""
+
+ homepage = "https://github.com/ianlini/flatten-dict"
+ pypi = "flatten-dict/flatten-dict-0.3.0.tar.gz"
+
+ version('0.3.0', sha256='0ccc43f15c7c84c5ef387ad19254f6769a32d170313a1bcbf4ce582089313d7e')
+
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-six@1.12:1.999', type=('build', 'run'))
+ depends_on('py-pathlib2@2.3:2.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-flexmock/package.py b/var/spack/repos/builtin/packages/py-flexmock/package.py
new file mode 100644
index 0000000000..1fd10869f6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-flexmock/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFlexmock(PythonPackage):
+ """flexmock is a testing library for Python that makes it easy to create
+ mocks,stubs and fakes.
+
+ Its API is inspired by a Ruby library of the same name. However, it is not
+ a goal of Python flexmock to be a clone of the Ruby version. Instead, the
+ focus is on providing full support for testing Python programs and making
+ the creation of fake objects as unobtrusive as possible."""
+
+ homepage = "https://flexmock.readthedocs.io/en/latest/"
+ pypi = "flexmock/flexmock-0.10.4.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('0.10.4', sha256='5033ceb974d6452cf8716c2ff5059074b77e546df5c849fb44a53f98dfe0d82c')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-flexx/package.py b/var/spack/repos/builtin/packages/py-flexx/package.py
index 127c97f1ad..f8ec0d645f 100644
--- a/var/spack/repos/builtin/packages/py-flexx/package.py
+++ b/var/spack/repos/builtin/packages/py-flexx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyFlexx(PythonPackage):
"""Write desktop and web apps in pure Python."""
homepage = "http://flexx.readthedocs.io"
- url = "https://pypi.io/packages/source/f/flexx/flexx-0.4.1.zip"
+ pypi = "flexx/flexx-0.4.1.zip"
version('0.4.1', sha256='54be868f01d943018d0907821f2562f6eb31c568b3932abfd8518f75c29b8be1')
diff --git a/var/spack/repos/builtin/packages/py-flufl-lock/package.py b/var/spack/repos/builtin/packages/py-flufl-lock/package.py
new file mode 100644
index 0000000000..70b57ff62f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-flufl-lock/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyFluflLock(PythonPackage):
+ """NFS-safe file locking with timeouts for POSIX and Windows"""
+
+ homepage = "https://fluflock.readthedocs.io"
+ pypi = "flufl.lock/flufl.lock-5.0.4.tar.gz"
+
+ version('5.0.4', sha256='09ffef831d57c4d182e398e97bb74ad8c8ffbd1710175a5a0b0f057095db12f1')
+ version('5.0.3', sha256='94df161caa489d74afc26df8c0b640770923ecc0c6c5d331fbeabe7b91d306cb')
+ version('3.2', sha256='a8d66accc9ab41f09961cd8f8db39f9c28e97e2769659a3567c63930a869ff5b')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-atpublic', type=('build', 'run'))
+ depends_on('py-psutil', type=('build', 'run'))
+ depends_on('py-typing-extensions', when='^python@:3.7.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-flye/package.py b/var/spack/repos/builtin/packages/py-flye/package.py
index be8821ca27..2105f86f73 100644
--- a/var/spack/repos/builtin/packages/py-flye/package.py
+++ b/var/spack/repos/builtin/packages/py-flye/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-fn-py/package.py b/var/spack/repos/builtin/packages/py-fn-py/package.py
index bc8e2f85a0..aa26aec47c 100644
--- a/var/spack/repos/builtin/packages/py-fn-py/package.py
+++ b/var/spack/repos/builtin/packages/py-fn-py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-fortran-language-server/package.py b/var/spack/repos/builtin/packages/py-fortran-language-server/package.py
index dcb2344977..b0154d9655 100644
--- a/var/spack/repos/builtin/packages/py-fortran-language-server/package.py
+++ b/var/spack/repos/builtin/packages/py-fortran-language-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-fortranformat/package.py b/var/spack/repos/builtin/packages/py-fortranformat/package.py
index d193494b6a..7170833816 100644
--- a/var/spack/repos/builtin/packages/py-fortranformat/package.py
+++ b/var/spack/repos/builtin/packages/py-fortranformat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyFortranformat(PythonPackage):
"""Mimics Fortran textual IO in Python"""
homepage = "http://bitbucket.org/brendanarnold/py-fortranformat"
- url = "https://pypi.io/packages/source/f/fortranformat/fortranformat-0.2.5.tar.gz"
+ pypi = "fortranformat/fortranformat-0.2.5.tar.gz"
version('0.2.5', sha256='6b5fbc1f129c7a70543c3a81f334fb4d57f07df2834b22ce69f6d7e8539cd3f9')
diff --git a/var/spack/repos/builtin/packages/py-fparser/package.py b/var/spack/repos/builtin/packages/py-fparser/package.py
index e83f4b78ac..553e7cc4e7 100644
--- a/var/spack/repos/builtin/packages/py-fparser/package.py
+++ b/var/spack/repos/builtin/packages/py-fparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-fprettify/package.py b/var/spack/repos/builtin/packages/py-fprettify/package.py
index 404c688b09..3855af1d06 100644
--- a/var/spack/repos/builtin/packages/py-fprettify/package.py
+++ b/var/spack/repos/builtin/packages/py-fprettify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyFprettify(PythonPackage):
Python."""
homepage = "https://github.com/pseewald/fprettify"
- url = "https://pypi.io/packages/source/f/fprettify/fprettify-0.3.6.tar.gz"
+ pypi = "fprettify/fprettify-0.3.6.tar.gz"
version('0.3.6', sha256='5ee954763eba2bc54ee7444c1f592944f1c1933223bb0c07957d60d44f7f0b75')
diff --git a/var/spack/repos/builtin/packages/py-freezegun/package.py b/var/spack/repos/builtin/packages/py-freezegun/package.py
index 3329c975bc..7ad47c106e 100644
--- a/var/spack/repos/builtin/packages/py-freezegun/package.py
+++ b/var/spack/repos/builtin/packages/py-freezegun/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,7 @@ class PyFreezegun(PythonPackage):
through time by mocking the datetime module."""
homepage = "https://github.com/spulec/freezegun"
- url = "https://pypi.io/packages/source/f/freezegun/freezegun-0.3.12.tar.gz"
-
- import_modules = ['freezegun']
+ pypi = "freezegun/freezegun-0.3.12.tar.gz"
version('0.3.12', sha256='2a4d9c8cd3c04a201e20c313caf8b6338f1cfa4cda43f46a94cc4a9fd13ea5e7')
@@ -21,5 +19,3 @@ class PyFreezegun(PythonPackage):
depends_on('py-six', type=('build', 'run'))
depends_on('py-python-dateutil@1.0:1.999', type=('build', 'run'), when='^python@:2')
depends_on('py-python-dateutil@2:', type=('build', 'run'), when='^python@3:')
- depends_on('py-mock', type='test')
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-fsspec/package.py b/var/spack/repos/builtin/packages/py-fsspec/package.py
index bf82fc803a..e52ee16a0d 100644
--- a/var/spack/repos/builtin/packages/py-fsspec/package.py
+++ b/var/spack/repos/builtin/packages/py-fsspec/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,19 @@ class PyFsspec(PythonPackage):
"""A specification for pythonic filesystems."""
homepage = "https://github.com/intake/filesystem_spec"
- url = "https://pypi.io/packages/source/f/fsspec/fsspec-0.4.4.tar.gz"
-
- import_modules = ['fsspec', 'fsspec.implementations']
+ pypi = "fsspec/fsspec-0.4.4.tar.gz"
+ version('2021.4.0', sha256='8b1a69884855d1a8c038574292e8b861894c3373282d9a469697a2b41d5289a6')
+ version('0.8.0', sha256='176f3fc405471af0f1f1e14cffa3d53ab8906577973d068b976114433c010d9d')
version('0.7.3', sha256='1b540552c93b47e83c568e87507d6e02993e6d1b30bc7285f2336c81c5014103')
version('0.4.4', sha256='97697a46e8bf8be34461c2520d6fc4bfca0ed749b22bb2b7c21939fd450a7d63')
+ variant('http', default=False, description='HTTPFileSystem support (Requires version 0.8.1+)')
+
+ conflicts('+http', when='@:0.8.0', msg='Only available in 0.8.1+')
+
depends_on('python@3.5:', type=('build', 'run'))
depends_on('python@3.6:', type=('build', 'run'), when='@0.6.3:')
depends_on('py-setuptools', type='build')
+ depends_on('py-requests', type=('build', 'run'), when='+http')
+ depends_on('py-aiohttp', type=('build', 'run'), when='+http')
diff --git a/var/spack/repos/builtin/packages/py-ftfy/package.py b/var/spack/repos/builtin/packages/py-ftfy/package.py
new file mode 100644
index 0000000000..3d1594f80d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ftfy/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyFtfy(PythonPackage):
+ """Fixes Unicode that's broken in various ways."""
+
+ homepage = "https://ftfy.readthedocs.io"
+ pypi = "ftfy/ftfy-5.8.tar.gz"
+
+ version('5.8', sha256='51c7767f8c4b47d291fcef30b9625fb5341c06a31e6a3b627039c706c42f3720')
+
+ depends_on('python@3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-wcwidth', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-funcsigs/package.py b/var/spack/repos/builtin/packages/py-funcsigs/package.py
index ec53173d15..56c8ed60bc 100644
--- a/var/spack/repos/builtin/packages/py-funcsigs/package.py
+++ b/var/spack/repos/builtin/packages/py-funcsigs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,13 +9,9 @@ from spack import *
class PyFuncsigs(PythonPackage):
"""Python function signatures from PEP362 for Python 2.6, 2.7 and 3.2."""
- homepage = "https://pypi.python.org/pypi/funcsigs"
- url = "https://pypi.io/packages/source/f/funcsigs/funcsigs-1.0.2.tar.gz"
-
- import_modules = ['funcsigs']
+ pypi = "funcsigs/funcsigs-1.0.2.tar.gz"
version('1.0.2', sha256='a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50')
version('0.4', sha256='d83ce6df0b0ea6618700fe1db353526391a8a3ada1b7aba52fed7a61da772033')
depends_on('py-setuptools@17.1:', type='build')
- depends_on('py-unittest2', type='test')
diff --git a/var/spack/repos/builtin/packages/py-functools32/package.py b/var/spack/repos/builtin/packages/py-functools32/package.py
index bcec6385a8..6dd79b73fd 100644
--- a/var/spack/repos/builtin/packages/py-functools32/package.py
+++ b/var/spack/repos/builtin/packages/py-functools32/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,6 @@ class PyFunctools32(PythonPackage):
PyPy."""
homepage = "https://github.com/MiCHiLU/python-functools32"
- url = "https://pypi.io/packages/source/f/functools32/functools32-3.2.3-2.tar.gz"
+ pypi = "functools32/functools32-3.2.3-2.tar.gz"
version('3.2.3-2', sha256='f6253dfbe0538ad2e387bd8fdfd9293c925d63553f5813c4e587745416501e6d')
diff --git a/var/spack/repos/builtin/packages/py-funcy/package.py b/var/spack/repos/builtin/packages/py-funcy/package.py
new file mode 100644
index 0000000000..e918f2e3d2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-funcy/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyFuncy(PythonPackage):
+ """A collection of fancy functional tools focused on practicality"""
+
+ homepage = "https://funcy.readthedocs.io"
+ pypi = "funcy/funcy-1.15.tar.gz"
+
+ version('1.15', sha256='65b746fed572b392d886810a98d56939c6e0d545abb750527a717c21ced21008')
+ version('1.14', sha256='75ee84c3b446f92e68a857c2267b15a1b49c631c9d5a87a5f063cd2d6761a5c4')
+
+ depends_on('python@2.7.0:2.7.999,3.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-fusepy/package.py b/var/spack/repos/builtin/packages/py-fusepy/package.py
index c9df4ba5ba..2c3ba9a971 100644
--- a/var/spack/repos/builtin/packages/py-fusepy/package.py
+++ b/var/spack/repos/builtin/packages/py-fusepy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyFusepy(PythonPackage):
MacFUSE. It's just one file and is implemented using ctypes."""
homepage = "https://github.com/fusepy/fusepy"
- url = "https://pypi.io/packages/source/f/fusepy/fusepy-3.0.1.tar.gz"
+ pypi = "fusepy/fusepy-3.0.1.tar.gz"
version('3.0.1', sha256='72ff783ec2f43de3ab394e3f7457605bf04c8cf288a2f4068b4cde141d4ee6bd')
version('2.0.4', sha256='10f5c7f5414241bffecdc333c4d3a725f1d6605cae6b4eaf86a838ff49cdaf6c')
diff --git a/var/spack/repos/builtin/packages/py-future/package.py b/var/spack/repos/builtin/packages/py-future/package.py
index af2bce85f0..0f6a65007b 100644
--- a/var/spack/repos/builtin/packages/py-future/package.py
+++ b/var/spack/repos/builtin/packages/py-future/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyFuture(PythonPackage):
"""Clean single-source support for Python 3 and 2"""
homepage = "https://python-future.org/"
- url = "https://pypi.io/packages/source/f/future/future-0.18.2.tar.gz"
+ pypi = "future/future-0.18.2.tar.gz"
version('0.18.2', sha256='b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d')
version('0.17.1', sha256='67045236dcfd6816dc439556d009594abf643e5eb48992e36beac09c2ca659b8')
@@ -21,3 +21,29 @@ class PyFuture(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-importlib', type=('build', 'run'), when='^python@:2.6')
depends_on('py-argparse', type=('build', 'run'), when='^python@:2.6')
+
+ @property
+ def import_modules(self):
+ modules = [
+ 'copyreg', '_thread', 'past', 'past.types', 'past.translation',
+ 'past.utils', 'past.builtins', 'reprlib', 'html', 'builtins',
+ 'http', '_dummy_thread', 'queue', 'xmlrpc', 'libfuturize',
+ 'libfuturize.fixes', 'future', 'future.moves', 'future.moves.test',
+ 'future.moves.urllib', 'future.moves.html', 'future.moves.http',
+ 'future.moves.dbm', 'future.moves.xmlrpc', 'future.types',
+ 'future.tests', 'future.utils', 'future.builtins',
+ 'future.backports', 'future.backports.test',
+ 'future.backports.urllib', 'future.backports.html',
+ 'future.backports.http', 'future.backports.xmlrpc',
+ 'future.backports.email', 'future.backports.email.mime',
+ 'future.standard_library', 'libpasteurize', 'libpasteurize.fixes',
+ 'socketserver', '_markupbase'
+ ]
+
+ if 'platform=windows' in self.spec:
+ modules.append('winreg')
+
+ if '+tkinter' in self.spec['python']:
+ modules.extend(['tkinter', 'future.moves.tkinter'])
+
+ return modules
diff --git a/var/spack/repos/builtin/packages/py-futures/package.py b/var/spack/repos/builtin/packages/py-futures/package.py
index 5d3c82aacd..6556c510b8 100644
--- a/var/spack/repos/builtin/packages/py-futures/package.py
+++ b/var/spack/repos/builtin/packages/py-futures/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyFutures(PythonPackage):
"""Backport of the concurrent.futures package from Python 3.2"""
- homepage = "https://pypi.python.org/pypi/futures"
- url = "https://pypi.io/packages/source/f/futures/futures-3.0.5.tar.gz"
+ pypi = "futures/futures-3.0.5.tar.gz"
version('3.2.0', sha256='9ec02aa7d674acb8618afb127e27fde7fc68994c0437ad759fa094a574adb265')
version('3.0.5', sha256='0542525145d5afc984c88f914a0c85c77527f65946617edb5274f72406f981df')
diff --git a/var/spack/repos/builtin/packages/py-fypp/package.py b/var/spack/repos/builtin/packages/py-fypp/package.py
index e28f8b5250..bdaab57c5d 100644
--- a/var/spack/repos/builtin/packages/py-fypp/package.py
+++ b/var/spack/repos/builtin/packages/py-fypp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-gast/package.py b/var/spack/repos/builtin/packages/py-gast/package.py
index c69b9bc475..688fd260ac 100644
--- a/var/spack/repos/builtin/packages/py-gast/package.py
+++ b/var/spack/repos/builtin/packages/py-gast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGast(PythonPackage):
"""Python AST that abstracts the underlying Python version"""
homepage = "https://github.com/serge-sans-paille/gast"
- url = "https://pypi.io/packages/source/g/gast/gast-0.3.2.tar.gz"
+ pypi = "gast/gast-0.3.2.tar.gz"
version('0.3.3', sha256='b881ef288a49aa81440d2c5eb8aeefd4c2bb8993d5f50edae7413a85bfdb3b57')
version('0.3.2', sha256='5c7617f1f6c8b8b426819642b16b9016727ddaecd16af9a07753e537eba8a3a5')
diff --git a/var/spack/repos/builtin/packages/py-gcovr/package.py b/var/spack/repos/builtin/packages/py-gcovr/package.py
index f5110bf31b..181f0b6d68 100644
--- a/var/spack/repos/builtin/packages/py-gcovr/package.py
+++ b/var/spack/repos/builtin/packages/py-gcovr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyGcovr(PythonPackage):
Python."""
homepage = "https://gcovr.com/"
- url = "https://pypi.io/packages/source/g/gcovr/gcovr-4.2.tar.gz"
+ pypi = "gcovr/gcovr-4.2.tar.gz"
version('4.2', sha256='5aae34dc81e51600cfecbbbce3c3a80ce3f7548bc0aa1faa4b74ecd18f6fca3f')
diff --git a/var/spack/repos/builtin/packages/py-gdbgui/package.py b/var/spack/repos/builtin/packages/py-gdbgui/package.py
index 551e0ef206..2bac7009ea 100644
--- a/var/spack/repos/builtin/packages/py-gdbgui/package.py
+++ b/var/spack/repos/builtin/packages/py-gdbgui/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGdbgui(PythonPackage):
"""gdbgui is a modern, free, browser-based frontend to gdb"""
homepage = "https://gdbgui.com"
- url = "https://pypi.io/packages/source/g/gdbgui/gdbgui-0.11.2.1.tar.gz"
+ pypi = "gdbgui/gdbgui-0.11.2.1.tar.gz"
version('0.13.2.0', sha256='80e347a08b8cc630ab9f68482a1ed92c844fbfde46dc21fd39f3e6ef14b72e54')
version('0.11.2.1', sha256='280945a37414c31a798f68f70c1bffbedd12dfb0ce77418357e7d42b667491c7')
diff --git a/var/spack/repos/builtin/packages/py-gdc-client/package.py b/var/spack/repos/builtin/packages/py-gdc-client/package.py
index 37bae78010..15f84364e6 100644
--- a/var/spack/repos/builtin/packages/py-gdc-client/package.py
+++ b/var/spack/repos/builtin/packages/py-gdc-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-gee-asset-manager/package.py b/var/spack/repos/builtin/packages/py-gee-asset-manager/package.py
index f32108bccd..d67224ee90 100644
--- a/var/spack/repos/builtin/packages/py-gee-asset-manager/package.py
+++ b/var/spack/repos/builtin/packages/py-gee-asset-manager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,5 @@ class PyGeeAssetManager(PythonPackage):
depends_on('py-retrying@1.3.3:', type=('build', 'run'))
depends_on('py-beautifulsoup4@4.5.1:', type=('build', 'run'))
depends_on('py-requests-toolbelt@0.7.0:', type=('build', 'run'))
- depends_on('py-pytest@3.0.0:', type=('build', 'test'))
depends_on('py-future@0.16.0:', type=('build', 'run'))
depends_on('py-google-cloud-storage@1.1.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-geeadd/package.py b/var/spack/repos/builtin/packages/py-geeadd/package.py
index 78c260243b..aa47e37cbe 100644
--- a/var/spack/repos/builtin/packages/py-geeadd/package.py
+++ b/var/spack/repos/builtin/packages/py-geeadd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGeeadd(PythonPackage):
"""Google Earth Engine Batch Assets Manager with Addons."""
homepage = "https://github.com/samapriya/gee_asset_manager_addon"
- url = "https://pypi.io/packages/source/g/geeadd/geeadd-0.3.0.tar.gz"
+ pypi = "geeadd/geeadd-0.3.0.tar.gz"
version('0.3.0', sha256='591e6ff2847122598ed5b0452a892a76e332ce227d4ba75e4d03eca2c7a4beea')
@@ -22,7 +22,6 @@ class PyGeeadd(PythonPackage):
depends_on('py-clipboard@0.0.4:', type=('build', 'run'))
depends_on('py-beautifulsoup4@4.5.1:', type=('build', 'run'))
depends_on('py-requests-toolbelt@0.7.0:', type=('build', 'run'))
- depends_on('py-pytest@3.0.0:', type=('build', 'test'))
depends_on('py-future@0.16.0:', type=('build', 'run'))
depends_on('py-google-cloud-storage@1.1.1:', type=('build', 'run'))
depends_on('py-oauth2client@4.1.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-geeup/package.py b/var/spack/repos/builtin/packages/py-geeup/package.py
index 6ac2cc37d0..e0b2f3975f 100644
--- a/var/spack/repos/builtin/packages/py-geeup/package.py
+++ b/var/spack/repos/builtin/packages/py-geeup/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGeeup(PythonPackage):
"""Simple Client for Earth Engine Uploads with Selenium Support."""
homepage = "https://github.com/samapriya/geeup"
- url = "https://pypi.io/packages/source/g/geeup/geeup-0.2.4.tar.gz"
+ pypi = "geeup/geeup-0.2.4.tar.gz"
version('0.2.4', sha256='20f62306ea900d7fa28a97cc92204716212dc030c50a6ac8214772a61a1a83fe')
diff --git a/var/spack/repos/builtin/packages/py-gemini/package.py b/var/spack/repos/builtin/packages/py-gemini/package.py
new file mode 100644
index 0000000000..cbb26e77e3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-gemini/package.py
@@ -0,0 +1,58 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyGemini(PythonPackage):
+ """GEMINI (GEnome MINIng) is a flexible framework for exploring genetic
+ variation in the context of the wealth of genome annotations available
+ for the human genome.
+ """
+
+ homepage = "https://gemini.readthedocs.org"
+ url = "https://github.com/arq5x/gemini/archive/v0.30.2.tar.gz"
+
+ maintainers = ['robqiao']
+
+ version('0.30.2', sha256='c7af06a4cc475a846aeeb3cd7fcfb39d6cdd0b76e3b07abab2e5e6e68a3fe431')
+ version('0.30.1', sha256='af835ca33bc6d7865def2467c34cb1d539ec542f9514044435bd2252b25a046d')
+ version('0.30.0', sha256='a55d0c77342bf650f7e1300cb6ba485407ea3b42f4137a5197248d397a026030')
+ version('0.20.1', sha256='cd84aa45ace7a9ffb13ba4176122eab5b9fcc0445b1c0944ecec017f88f2b7f1')
+ version('0.20.0', sha256='640b40186fa00f54c1a0cdfab3fc3076b1d3bdf5c6327fcb2a0c51aa1b05878b')
+ version('0.19.1', sha256='1154bcb48b1bc78819c5a5e710f5cb0747b01fa0f3113e6081a5a2747c8703e5')
+ version('0.19.0', sha256='5146d1b5ed52139c50473aa3625d8df29f2db6d198cfd2c966469e7d585cccf2')
+ version('0.18.3', sha256='7c2f99069385547c656021fbb43e0bae4f9fb8a56ad3f6a61235b44fbc1ba6eb')
+ version('0.18.2', sha256='cf8a83d48d966a800aa2569076d52c307f4d8264a6ae804c176d61e705c0017e')
+ version('0.18.1', sha256='1d3d3b9d47555e1f62c1a870d8fd2ecbfc0bed25910cab31af5b585db3144a68')
+
+ depends_on('python@2.5:2.8', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('tabix', type=('build', 'run'))
+ depends_on('grabix', type=('build', 'run'))
+ depends_on('bedtools2', type=('build', 'run'))
+
+ depends_on('py-numpy@1.7.1:', type=('build', 'run'))
+ depends_on('py-inheritance@0.1.3:', type=('build', 'run'))
+ depends_on('py-geneimpacts@0.1.3:', type=('build', 'run'))
+ depends_on('py-cython@0.22.1:', type=('build', 'run'))
+ depends_on('py-sqlalchemy@1:', type=('build', 'run'))
+ depends_on('py-pysam@0.6:', type=('build', 'run'))
+ depends_on('py-cyvcf2@0.7.2:', type=('build', 'run'))
+ depends_on('py-pyyaml@3.10:', type=('build', 'run'))
+ depends_on('py-pybedtools@0.6.2:', type=('build', 'run'))
+ depends_on('py-jinja2@2.7.1:', type=('build', 'run'))
+ depends_on('py-networkx@1.10:', type=('build', 'run'))
+ depends_on('py-bottle@0.11.6:', type=('build', 'run'))
+ depends_on('py-ipyparallel@4.0:', type=('build', 'run'))
+ depends_on('py-ipython-cluster-helper@0.5.1:', type=('build', 'run'))
+ depends_on('py-bx-python@0.7.1:', type=('build', 'run'))
+ depends_on('py-pandas@0.11.0:', type=('build', 'run'))
+ depends_on('py-openpyxl@1.6.1:1.999', type=('build', 'run'))
+ depends_on('py-scipy@0.12.0:', type=('build', 'run'))
+ depends_on('py-unidecode@0.04.14:', type=('build', 'run'))
+ depends_on('py-cyordereddict@0.2.2', type=('build', 'run'))
+ depends_on('py-bcolz@0.11.3:', type=('build', 'run'))
+ depends_on('py-numexpr@2.4.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-genders/package.py b/var/spack/repos/builtin/packages/py-genders/package.py
index 33452991fd..f6f34137c0 100644
--- a/var/spack/repos/builtin/packages/py-genders/package.py
+++ b/var/spack/repos/builtin/packages/py-genders/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-geneimpacts/package.py b/var/spack/repos/builtin/packages/py-geneimpacts/package.py
index a5ef2fa91e..f38824a074 100644
--- a/var/spack/repos/builtin/packages/py-geneimpacts/package.py
+++ b/var/spack/repos/builtin/packages/py-geneimpacts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-genshi/package.py b/var/spack/repos/builtin/packages/py-genshi/package.py
index e43cf5d6e1..30d2efa821 100644
--- a/var/spack/repos/builtin/packages/py-genshi/package.py
+++ b/var/spack/repos/builtin/packages/py-genshi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-gensim/package.py b/var/spack/repos/builtin/packages/py-gensim/package.py
index fe3e4a192c..ad3c4d68bf 100644
--- a/var/spack/repos/builtin/packages/py-gensim/package.py
+++ b/var/spack/repos/builtin/packages/py-gensim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyGensim(PythonPackage):
language processing (NLP) and information retrieval (IR) community."""
homepage = "https://radimrehurek.com/gensim"
- url = "https://pypi.io/packages/source/g/gensim/gensim-3.8.1.tar.gz"
+ pypi = "gensim/gensim-3.8.1.tar.gz"
maintainers = ['adamjstewart']
diff --git a/var/spack/repos/builtin/packages/py-geoalchemy2/package.py b/var/spack/repos/builtin/packages/py-geoalchemy2/package.py
index dad20c8e16..d8a0903013 100644
--- a/var/spack/repos/builtin/packages/py-geoalchemy2/package.py
+++ b/var/spack/repos/builtin/packages/py-geoalchemy2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGeoalchemy2(PythonPackage):
"""Using SQLAlchemy with Spatial Databases"""
homepage = "https://geoalchemy-2.readthedocs.io/en/latest"
- url = "https://pypi.io/packages/source/G/GeoAlchemy2/GeoAlchemy2-0.6.3.tar.gz"
+ pypi = "GeoAlchemy2/GeoAlchemy2-0.6.3.tar.gz"
version('0.6.3', sha256='4dc4c6c2bda0fc82cccab4aaff185a6570e13a5351d85e29e12984a55d4138ee')
version('0.4.2', sha256='17fa10b0c01bd2ab036ea56975dfa850098aa394a5d6ee04d88b2aefc16751cb')
@@ -20,9 +20,3 @@ class PyGeoalchemy2(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-sqlalchemy@0.8:', type=('build', 'run'))
depends_on('py-shapely@1.3.0:', type=('build', 'run'), when='+dev')
-
- depends_on('py-pycodestyle@2.2.0', type='test')
- depends_on('py-flake8@3.2.0', type='test')
- depends_on('py-pytest@3.7.4', type='test', when='@0.6.3')
- depends_on('py-pytest@3.1.3', type='test', when='@0.4.2')
- depends_on('py-pytest-cov@2.5.1', type='test')
diff --git a/var/spack/repos/builtin/packages/py-geographiclib/package.py b/var/spack/repos/builtin/packages/py-geographiclib/package.py
new file mode 100644
index 0000000000..f1a16e0c7a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-geographiclib/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyGeographiclib(PythonPackage):
+ """The geodesic routines from GeographicLib."""
+
+ homepage = "https://geographiclib.sourceforge.io/1.50/python"
+ pypi = "geographiclib/geographiclib-1.50.tar.gz"
+
+ maintainers = ['adamjstewart']
+
+ version('1.50', sha256='12bd46ee7ec25b291ea139b17aa991e7ef373e21abd053949b75c0e9ca55c632')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-geopandas/package.py b/var/spack/repos/builtin/packages/py-geopandas/package.py
index 3373e961e5..866af609dc 100644
--- a/var/spack/repos/builtin/packages/py-geopandas/package.py
+++ b/var/spack/repos/builtin/packages/py-geopandas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,24 +13,29 @@ class PyGeopandas(PythonPackage):
performed by shapely. Geopandas further depends on fiona for file access
and descartes and matplotlib for plotting."""
- homepage = "http://geopandas.org/"
- url = "https://pypi.io/packages/source/g/geopandas/geopandas-0.5.0.tar.gz"
+ homepage = "https://geopandas.org/"
+ pypi = "geopandas/geopandas-0.8.1.tar.gz"
+ git = "https://github.com/geopandas/geopandas.git"
maintainers = ['adamjstewart']
- import_modules = [
- 'geopandas', 'geopandas.io', 'geopandas.tools', 'geopandas.datasets'
- ]
+ version('master', branch='master')
+ version('0.9.0', sha256='63972ab4dc44c4029f340600dcb83264eb8132dd22b104da0b654bef7f42630a')
+ version('0.8.2', sha256='aa9ae82e4e6b52efa244bd4b8bd2363d66693e5592ad1a0f52b6afa8c36348cb')
+ version('0.8.1', sha256='e28a729e44ac53c1891b54b1aca60e3bc0bb9e88ad0f2be8e301a03b9510f6e2')
version('0.5.0', sha256='d075d2ab61a502ab92ec6b72aaf9610a1340ec24ed07264fcbdbe944b9e68954')
version('0.4.0', sha256='9f5d24d23f33e6d3267a633025e4d9e050b3a1e86d41a96d3ccc5ad95afec3db')
version('0.3.0', sha256='e63bb32a3e516d8c9bcd149c22335575defdc5896c8bdf15c836608f152a920b')
- variant('plotting', default=False, description='Include dependencies required for plotting')
-
+ depends_on('python@3.5:', type=('build', 'run'), when='@0.7:')
+ depends_on('python@3.6:', type=('build', 'run'), when='@0.9:')
depends_on('py-setuptools', type='build')
depends_on('py-pandas', type=('build', 'run'))
+ depends_on('py-pandas@0.23.0:', type=('build', 'run'), when='@0.6:')
+ depends_on('py-pandas@0.24.0:', type=('build', 'run'), when='@0.9:')
depends_on('py-shapely', type=('build', 'run'))
+ depends_on('py-shapely@1.6:', type=('build', 'run'), when='@0.9:')
depends_on('py-fiona', type=('build', 'run'))
+ depends_on('py-fiona@1.8:', type=('build', 'run'), when='@0.9:')
depends_on('py-pyproj', type=('build', 'run'))
- depends_on('py-descartes', type=('build', 'run'), when='+plotting')
- depends_on('py-matplotlib', type=('build', 'run'), when='+plotting')
+ depends_on('py-pyproj@2.2.0:', type=('build', 'run'), when='@0.7:')
diff --git a/var/spack/repos/builtin/packages/py-geoplot/package.py b/var/spack/repos/builtin/packages/py-geoplot/package.py
new file mode 100644
index 0000000000..90a3893c19
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-geoplot/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyGeoplot(PythonPackage):
+ """geoplot is a high-level Python geospatial plotting library.
+
+ It's an extension to cartopy and matplotlib which makes mapping easy:
+ like seaborn for geospatial."""
+
+ homepage = "https://github.com/ResidentMario/geoplot"
+ pypi = "geoplot/geoplot-0.4.1.tar.gz"
+
+ maintainers = ['adamjstewart']
+
+ version('0.4.1', sha256='eb073436c5a1cb7f97caa217cdb109e6cad4f3774e657757005e3f0f5a3183ca')
+
+ depends_on('python@3.6.0:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-seaborn', type=('build', 'run'))
+ depends_on('py-pandas', type=('build', 'run'))
+ depends_on('py-geopandas', type=('build', 'run'))
+ depends_on('py-cartopy', type=('build', 'run'))
+ depends_on('py-descartes', type=('build', 'run'))
+ depends_on('py-mapclassify@2.1:', type=('build', 'run'))
+ depends_on('py-contextily@1.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-geopy/package.py b/var/spack/repos/builtin/packages/py-geopy/package.py
new file mode 100644
index 0000000000..89a0075536
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-geopy/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyGeopy(PythonPackage):
+ """geopy is a Python client for several popular geocoding web services."""
+
+ homepage = "https://github.com/geopy/geopy"
+ pypi = "geopy/geopy-2.1.0.tar.gz"
+
+ maintainers = ['adamjstewart']
+
+ version('2.1.0', sha256='892b219413e7955587b029949af3a1949c6fbac9d5ad17b79d850718f6a9550f')
+
+ depends_on('python@3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-geographiclib@1.49:1.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-gevent/package.py b/var/spack/repos/builtin/packages/py-gevent/package.py
index e1f28b445b..a7bf95a17b 100644
--- a/var/spack/repos/builtin/packages/py-gevent/package.py
+++ b/var/spack/repos/builtin/packages/py-gevent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGevent(PythonPackage):
"""gevent is a coroutine-based Python networking library."""
homepage = "http://www.gevent.org"
- url = "https://pypi.io/packages/source/g/gevent/gevent-1.3a2.tar.gz"
+ pypi = "gevent/gevent-1.3a2.tar.gz"
version('1.3a2', sha256='f7ab82697111ea233c7beeadf5240f669dfad9c4bbc89a3ec80a49e2c48a65bd')
diff --git a/var/spack/repos/builtin/packages/py-gf256/package.py b/var/spack/repos/builtin/packages/py-gf256/package.py
index 9527477a3f..be7051abcc 100644
--- a/var/spack/repos/builtin/packages/py-gf256/package.py
+++ b/var/spack/repos/builtin/packages/py-gf256/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-gffutils/package.py b/var/spack/repos/builtin/packages/py-gffutils/package.py
new file mode 100644
index 0000000000..8854e47df6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-gffutils/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyGffutils(PythonPackage):
+ """GFF and GTF file manipulation and interconversion
+
+ gffutils is a Python package for working with and manipulating the GFF and
+ GTF format files typically used for genomic annotations. Files are loaded
+ into a sqlite3 database, allowing much more complex manipulation of
+ hierarchical features (e.g., genes, transcripts, and exons) than is
+ possible with plain-text methods alone."""
+
+ homepage = "https://github.com/daler/gffutils"
+ pypi = "gffutils/gffutils-0.10.1.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('0.10.1', sha256='a8fc39006d7aa353147238160640e2210b168f7849cb99896be3fc9441e351cb')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pyfaidx@0.5.5.2:', type=('build', 'run'))
+ depends_on('py-six@1.12.0:', type=('build', 'run'))
+ depends_on('py-argh@0.26.2:', type=('build', 'run'))
+ depends_on('py-argcomplete@1.9.4:', type=('build', 'run'))
+ depends_on('py-simplejson', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-git-review/package.py b/var/spack/repos/builtin/packages/py-git-review/package.py
index 5f4caa3b5c..e4b2c7222c 100644
--- a/var/spack/repos/builtin/packages/py-git-review/package.py
+++ b/var/spack/repos/builtin/packages/py-git-review/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,19 +10,22 @@ class PyGitReview(PythonPackage):
"""git-review is a tool that helps submitting git branches to gerrit"""
homepage = "http://docs.openstack.org/infra/git-review"
- url = "https://pypi.io/packages/source/g/git-review/git-review-1.25.0.tar.gz"
+ pypi = "git-review/git-review-1.25.0.tar.gz"
+ version('2.1.0', sha256='3a6c775645b1fa8c40c49fbfce6f8d7e225a1e797a0aa92912607b1d97e61ed6')
+ version('2.0.0', sha256='6e6c86b61334526c5c0f200fdf61957310b0c32208339a38c890db7fe0de5452')
version('1.28.0', sha256='8e3aabb7b9484063e49c2504d137609401e32ad5128ff2a5cf43e98d5d3dc15a')
+ version('1.27.0', sha256='7a30afdd3c62e1ef69ebda3f22c17efccd1a0a89c761b9b0d301108a11a37476')
version('1.26.0', sha256='487c3c1d7cc81d02b303a1245e432579f683695c827ad454685b3953f70f0b94')
version('1.25.0', sha256='087e0a7dc2415796a9f21c484a6f652c5410e6ba4562c36291c5399f9395a11d')
- extends('python')
-
+ depends_on('python@3.5:', type=('build', 'run'), when='@2:')
depends_on('py-setuptools', type=('build'))
- depends_on('py-pbr', type=('build', 'run'))
+ depends_on('py-pbr', type=('build'))
+ depends_on('py-pbr@4.1.0:', type=('build'), when='@2:')
+ depends_on('py-six', type=('build', 'run'), when='@1.28.0')
depends_on('py-requests@1.1:', type=('build', 'run'))
depends_on('git', type=('run'))
- depends_on('tk', type=('run'))
def setup_run_environment(self, env):
env.set('PBR_VERSION', str(self.spec.version))
diff --git a/var/spack/repos/builtin/packages/py-gitdb/package.py b/var/spack/repos/builtin/packages/py-gitdb/package.py
index 50670dbcbf..0af83c876c 100644
--- a/var/spack/repos/builtin/packages/py-gitdb/package.py
+++ b/var/spack/repos/builtin/packages/py-gitdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyGitdb(PythonPackage):
to git repositories."""
homepage = "https://gitdb.readthedocs.io"
- url = "https://pypi.io/packages/source/g/gitdb/gitdb-4.0.5.tar.gz"
+ pypi = "gitdb/gitdb-4.0.5.tar.gz"
version('4.0.5', sha256='c9e1f2d0db7ddb9a704c2a0217be31214e91a4fe1dea1efad19ae42ba0c285c9')
diff --git a/var/spack/repos/builtin/packages/py-gitpython/package.py b/var/spack/repos/builtin/packages/py-gitpython/package.py
index 8e75089c46..0ed05bb3ee 100644
--- a/var/spack/repos/builtin/packages/py-gitpython/package.py
+++ b/var/spack/repos/builtin/packages/py-gitpython/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,17 +10,22 @@ class PyGitpython(PythonPackage):
"""GitPython is a python library used to interact with Git repositories."""
homepage = "http://gitpython.readthedocs.org"
- url = "https://pypi.io/packages/source/g/gitpython/GitPython-3.1.7.tar.gz"
+ pypi = "GitPython/GitPython-3.1.12.tar.gz"
- version('3.1.8', sha256='49d4f859bda7bd6ef9ce72d9a2cddb6a59dd70f34a18ce409670bc655431c517')
- version('3.1.6', sha256='00d459b1fd2d4a2106252867701f7303485654bdb115275fa6f788756d18879e')
- version('3.1.5', sha256='2f7f9716afecc099bebf4d1a5e4a7df96f32c8255254e83642d8acf70f1b82c3')
- version('3.1.4', sha256='946e9c1daa755b8d4aaaad7f96c3fb4ac99ba36379b4355d6a3a4966ba68ca12')
- version('3.1.3', sha256='12da19250d1db60a9562780c3ecd8a9713da59ec69a3e207db2af1a0afe87c96')
- version('3.1.2', sha256='ce862c2c5e569728eae2d2441d358ab99a2492c7418cb3bdba1517c46a625cc1')
- version('3.1.1', sha256='76f35b8d99f02432632d33c0d64419c65d04377cb68b80bfc1819c421a3c05ca')
- version('3.1.0', sha256='a7d97b664ac61474147db23671aa8cc12be16248a405e3db15538d619d15cb51')
- version('3.0.9', sha256='d92bed79c12ce4198efe34337c55d85984def3d648ea465049e0ec6935e23c21')
+ version('3.1.12', sha256='42dbefd8d9e2576c496ed0059f3103dcef7125b9ce16f9d5f9c834aed44a1dac')
+ version('3.1.11', sha256='befa4d101f91bad1b632df4308ec64555db684c360bd7d2130b4807d49ce86b8')
+ version('3.1.10', sha256='f488d43600d7299567b59fe41497d313e7c1253a9f2a8ebd2df8af2a1151c71d')
+ version('3.1.9', sha256='a03f728b49ce9597a6655793207c6ab0da55519368ff5961e4a74ae475b9fa8e')
+ version('3.1.8', sha256='080bf8e2cf1a2b907634761c2eaefbe83b69930c94c66ad11b65a8252959f912')
+ version('3.1.7', sha256='2db287d71a284e22e5c2846042d0602465c7434d910406990d5b74df4afb0858')
+ version('3.1.6', sha256='b54969b3262d4647f80ace8e9dd4e3f99ac30cc0f3e766415b349208f810908f')
+ version('3.1.5', sha256='90400ecfa87bac36ac75dfa7b62e83a02017b51759f6eef4494e4de775b2b4be')
+ version('3.1.4', sha256='fa98ce1f05805d59bbc3adb16c0780e5ca43b5ea9422feecf1cd0949a61d947e')
+ version('3.1.3', sha256='e107af4d873daed64648b4f4beb89f89f0cfbe3ef558fc7821ed2331c2f8da1a')
+ version('3.1.2', sha256='864a47472548f3ba716ca202e034c1900f197c0fb3a08f641c20c3cafd15ed94')
+ version('3.1.1', sha256='6d4f10e2aaad1864bb0f17ec06a2c2831534140e5883c350d58b4e85189dab74')
+ version('3.1.0', sha256='e426c3b587bd58c482f0b7fe6145ff4ac7ae6c82673fc656f489719abca6f4cb')
+ version('3.0.9', sha256='7e5df21bfef38505115ad92544fb379e6fedb2753f3b709174c4358cecd0cb97')
version('0.3.6', sha256='e6599fcb939cb9b25a015a429702db39de10f2b493655ed5669c49c37707d233')
depends_on('python@3.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-gluoncv/package.py b/var/spack/repos/builtin/packages/py-gluoncv/package.py
index a584605d28..daf315726f 100644
--- a/var/spack/repos/builtin/packages/py-gluoncv/package.py
+++ b/var/spack/repos/builtin/packages/py-gluoncv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-gnuplot/package.py b/var/spack/repos/builtin/packages/py-gnuplot/package.py
index 38e5522370..6889ce41ab 100644
--- a/var/spack/repos/builtin/packages/py-gnuplot/package.py
+++ b/var/spack/repos/builtin/packages/py-gnuplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-goatools/package.py b/var/spack/repos/builtin/packages/py-goatools/package.py
index 863e329169..2b6c27343e 100644
--- a/var/spack/repos/builtin/packages/py-goatools/package.py
+++ b/var/spack/repos/builtin/packages/py-goatools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGoatools(PythonPackage):
"""Python scripts to find enrichment of GO terms"""
homepage = "https://github.com/tanghaibao/goatools"
- url = "https://pypi.io/packages/source/g/goatools/goatools-0.7.11.tar.gz"
+ pypi = "goatools/goatools-0.7.11.tar.gz"
version('0.7.11', sha256='753c6fb8c901367aa5d64ce5ad487d82903e424cf8ec7bac50ee069b307f6364')
diff --git a/var/spack/repos/builtin/packages/py-google-api-core/package.py b/var/spack/repos/builtin/packages/py-google-api-core/package.py
index f8ca4ea2b5..b0fff59ac0 100644
--- a/var/spack/repos/builtin/packages/py-google-api-core/package.py
+++ b/var/spack/repos/builtin/packages/py-google-api-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,11 @@ class PyGoogleApiCore(PythonPackage):
"""Google API client core library."""
homepage = "https://github.com/GoogleCloudPlatform/google-cloud-python"
- url = "https://pypi.io/packages/source/g/google-api-core/google-api-core-1.14.2.tar.gz"
+ pypi = "google-api-core/google-api-core-1.14.2.tar.gz"
+
+ # google.api_core.operations_v1 and google.api_core.gapic_v1 require
+ # grpc optional dependency
+ import_modules = ['google.api_core', 'google.api_core.future']
version('1.14.2', sha256='2c23fbc81c76b941ffb71301bb975ed66a610e9b03f918feacd1ed59cf43a6ec')
diff --git a/var/spack/repos/builtin/packages/py-google-api-python-client/package.py b/var/spack/repos/builtin/packages/py-google-api-python-client/package.py
index 5e85f7181c..86ddee05bb 100644
--- a/var/spack/repos/builtin/packages/py-google-api-python-client/package.py
+++ b/var/spack/repos/builtin/packages/py-google-api-python-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyGoogleApiPythonClient(PythonPackage):
Plus, Moderator, and many other Google APIs."""
homepage = "http://github.com/google/google-api-python-client/"
- url = "https://pypi.io/packages/source/g/google-api-python-client/google-api-python-client-1.7.10.tar.gz"
+ pypi = "google-api-python-client/google-api-python-client-1.7.10.tar.gz"
version('1.7.10', sha256='2e55a5c7b56233c68945b6804c73e253445933f4d485d4e69e321b38772b9dd6')
diff --git a/var/spack/repos/builtin/packages/py-google-auth-httplib2/package.py b/var/spack/repos/builtin/packages/py-google-auth-httplib2/package.py
index ab4c3c7e72..c7b6612d55 100644
--- a/var/spack/repos/builtin/packages/py-google-auth-httplib2/package.py
+++ b/var/spack/repos/builtin/packages/py-google-auth-httplib2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGoogleAuthHttplib2(PythonPackage):
"""Google Authentication Library: httplib2 transport."""
homepage = "https://github.com/GoogleCloudPlatform/google-auth-library-python-httplib2"
- url = "https://pypi.io/packages/source/g/google-auth-httplib2/google-auth-httplib2-0.0.3.tar.gz"
+ pypi = "google-auth-httplib2/google-auth-httplib2-0.0.3.tar.gz"
version('0.0.3', sha256='098fade613c25b4527b2c08fa42d11f3c2037dda8995d86de0745228e965d445')
diff --git a/var/spack/repos/builtin/packages/py-google-auth-oauthlib/package.py b/var/spack/repos/builtin/packages/py-google-auth-oauthlib/package.py
index 416c9f7098..9caead3c5e 100644
--- a/var/spack/repos/builtin/packages/py-google-auth-oauthlib/package.py
+++ b/var/spack/repos/builtin/packages/py-google-auth-oauthlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyGoogleAuthOauthlib(PythonPackage):
"""This library provides oauthlib integration with google-auth."""
homepage = "https://github.com/googleapis/google-auth-library-python-oauthlib"
- url = "https://pypi.io/packages/source/g/google-auth-oauthlib/google-auth-oauthlib-0.4.1.tar.gz"
+ pypi = "google-auth-oauthlib/google-auth-oauthlib-0.4.1.tar.gz"
version('0.4.1', sha256='88d2cd115e3391eb85e1243ac6902e76e77c5fe438b7276b297fbe68015458dd')
diff --git a/var/spack/repos/builtin/packages/py-google-auth/package.py b/var/spack/repos/builtin/packages/py-google-auth/package.py
index 1bf19bdb08..cd0f8c3228 100644
--- a/var/spack/repos/builtin/packages/py-google-auth/package.py
+++ b/var/spack/repos/builtin/packages/py-google-auth/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyGoogleAuth(PythonPackage):
authentication mechanisms to access Google APIs."""
homepage = "https://github.com/GoogleCloudPlatform/google-auth-library-python"
- url = "https://pypi.io/packages/source/g/google-auth/google-auth-1.6.3.tar.gz"
+ pypi = "google-auth/google-auth-1.6.3.tar.gz"
version('1.6.3', sha256='0f7c6a64927d34c1a474da92cfc59e552a5d3b940d3266606c6a28b72888b9e4')
diff --git a/var/spack/repos/builtin/packages/py-google-cloud-core/package.py b/var/spack/repos/builtin/packages/py-google-cloud-core/package.py
index d32a1dbf15..f88f90a808 100644
--- a/var/spack/repos/builtin/packages/py-google-cloud-core/package.py
+++ b/var/spack/repos/builtin/packages/py-google-cloud-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGoogleCloudCore(PythonPackage):
"""Google Cloud API client core library."""
homepage = "https://github.com/GoogleCloudPlatform/google-cloud-python"
- url = "https://pypi.io/packages/source/g/google-cloud-core/google-cloud-core-1.0.3.tar.gz"
+ pypi = "google-cloud-core/google-cloud-core-1.0.3.tar.gz"
version('1.0.3', sha256='10750207c1a9ad6f6e082d91dbff3920443bdaf1c344a782730489a9efa802f1')
diff --git a/var/spack/repos/builtin/packages/py-google-cloud-storage/package.py b/var/spack/repos/builtin/packages/py-google-cloud-storage/package.py
index d89b32b0d4..e605b58076 100644
--- a/var/spack/repos/builtin/packages/py-google-cloud-storage/package.py
+++ b/var/spack/repos/builtin/packages/py-google-cloud-storage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGoogleCloudStorage(PythonPackage):
"""Google Cloud Storage API client library."""
homepage = "https://github.com/GoogleCloudPlatform/google-cloud-python"
- url = "https://pypi.io/packages/source/g/google-cloud-storage/google-cloud-storage-1.18.0.tar.gz"
+ pypi = "google-cloud-storage/google-cloud-storage-1.18.0.tar.gz"
version('1.18.0', sha256='9fb3dc68948f4c893c2b16f5a3db3daea2d2f3b8e9d5c2d505fe1523758009b6')
diff --git a/var/spack/repos/builtin/packages/py-google-pasta/package.py b/var/spack/repos/builtin/packages/py-google-pasta/package.py
index ee19406005..fc01482d46 100644
--- a/var/spack/repos/builtin/packages/py-google-pasta/package.py
+++ b/var/spack/repos/builtin/packages/py-google-pasta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,18 @@ class PyGooglePasta(PythonPackage):
"""pasta is an AST-based Python refactoring library."""
homepage = "https://github.com/google/pasta"
- url = "https://pypi.io/packages/source/g/google-pasta/google-pasta-0.1.8.tar.gz"
+ pypi = "google-pasta/google-pasta-0.1.8.tar.gz"
+ version('0.2.0', sha256='c9f2c8dfc8f96d0d5808299920721be30c9eec37f2389f28904f454565c8a16e')
version('0.1.8', sha256='713813a9f7d6589e5defdaf21e80e4392eb124662f8bd829acd51a4f8735c0cb')
+ version('0.1.7', sha256='324ae96cea1c27af1bbe289e502ad26673d9e00236a64a3efd68bf12dfd85a51')
+ version('0.1.6', sha256='11c4efd38f2cfb053c12ded1e1c3e1219a77b83ea83d783eaeba879faebe6b8c')
+ version('0.1.5', sha256='799bf5b40320495ebbb54706d35b8c8a818c39328aa4c27a842f5d2f645eef38')
+ version('0.1.4', sha256='8a9208c806c4e3f267269e4bae94c1f41d4777472cf7a813f74ba9e0907b1a5f')
+ version('0.1.3', sha256='29815aac18759d4518a80de24e23ac1ae3e098e9c5d7273abdc42174846a13e9')
+ version('0.1.2', sha256='53e4c009a5eac38e942deb48bfc2d3cfca62cd457255fa86ffedb7e40f726a0c')
+ version('0.1.1', sha256='66f6ea653c7caf5ad0a1cd6f69a750df9845ccce755ee3619db89b672d240c20')
+ version('0.1', sha256='33ce0c80b393d070a372cd65fd1471852507f0ccc5432687bb73589f05cb8452')
depends_on('py-setuptools', type='build')
depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-google-resumable-media/package.py b/var/spack/repos/builtin/packages/py-google-resumable-media/package.py
index ea84fc077a..86f726b124 100644
--- a/var/spack/repos/builtin/packages/py-google-resumable-media/package.py
+++ b/var/spack/repos/builtin/packages/py-google-resumable-media/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGoogleResumableMedia(PythonPackage):
"""Utilities for Google Media Downloads and Resumable Uploads."""
homepage = "https://github.com/GoogleCloudPlatform/google-resumable-media-python"
- url = "https://pypi.io/packages/source/g/google-resumable-media/google-resumable-media-0.3.2.tar.gz"
+ pypi = "google-resumable-media/google-resumable-media-0.3.2.tar.gz"
version('0.3.2', sha256='3e38923493ca0d7de0ad91c31acfefc393c78586db89364e91cb4f11990e51ba')
diff --git a/var/spack/repos/builtin/packages/py-google/package.py b/var/spack/repos/builtin/packages/py-google/package.py
index d0b70ba0a1..2ea3f0c709 100644
--- a/var/spack/repos/builtin/packages/py-google/package.py
+++ b/var/spack/repos/builtin/packages/py-google/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyGoogle(PythonPackage):
"""Python bindings to the Google search engine."""
homepage = "http://breakingcode.wordpress.com/"
- url = "https://pypi.io/packages/source/g/google/google-3.0.0.tar.gz"
+ pypi = "google/google-3.0.0.tar.gz"
version('3.0.0', sha256='143530122ee5130509ad5e989f0512f7cb218b2d4eddbafbad40fd10e8d8ccbe')
diff --git a/var/spack/repos/builtin/packages/py-googleapis-common-protos/package.py b/var/spack/repos/builtin/packages/py-googleapis-common-protos/package.py
index ce116afc5c..21b61eddc9 100644
--- a/var/spack/repos/builtin/packages/py-googleapis-common-protos/package.py
+++ b/var/spack/repos/builtin/packages/py-googleapis-common-protos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGoogleapisCommonProtos(PythonPackage):
"""Common protobufs used in Google APIs."""
homepage = "https://github.com/googleapis/googleapis"
- url = "https://pypi.io/packages/source/g/googleapis-common-protos/googleapis-common-protos-1.6.0.tar.gz"
+ pypi = "googleapis-common-protos/googleapis-common-protos-1.6.0.tar.gz"
version('1.6.0', sha256='e61b8ed5e36b976b487c6e7b15f31bb10c7a0ca7bd5c0e837f4afab64b53a0c6')
diff --git a/var/spack/repos/builtin/packages/py-googledrivedownloader/package.py b/var/spack/repos/builtin/packages/py-googledrivedownloader/package.py
index 96710e1a17..a35bdd76cc 100644
--- a/var/spack/repos/builtin/packages/py-googledrivedownloader/package.py
+++ b/var/spack/repos/builtin/packages/py-googledrivedownloader/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyGoogledrivedownloader(PythonPackage):
"""Minimal class to download shared files from Google Drive."""
homepage = "https://github.com/ndrplz/google-drive-downloader"
- url = "https://pypi.io/packages/source/g/googledrivedownloader/googledrivedownloader-0.4.tar.gz"
+ pypi = "googledrivedownloader/googledrivedownloader-0.4.tar.gz"
version('0.4', sha256='4b34c1337b2ff3bf2bd7581818efbdcaea7d50ffd484ccf80809688f5ca0e204')
diff --git a/var/spack/repos/builtin/packages/py-gosam/package.py b/var/spack/repos/builtin/packages/py-gosam/package.py
index 75d8cee2a8..e9ea4dfe08 100644
--- a/var/spack/repos/builtin/packages/py-gosam/package.py
+++ b/var/spack/repos/builtin/packages/py-gosam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,8 @@ class PyGosam(PythonPackage):
homepage = "https://gosam.hepforge.org"
url = "https://gosam.hepforge.org/downloads/?f=gosam-2.0.4-6d9f1cba.tar.gz"
+ tags = ['hep']
+
version('2.0.4', sha256='faf621c70f66d9dffc16ac5cce66258067f39f686d722a4867eeb759fcde4f44')
depends_on('form', type='run')
diff --git a/var/spack/repos/builtin/packages/py-gpaw/package.py b/var/spack/repos/builtin/packages/py-gpaw/package.py
index 4bb61361f6..2449a9bd35 100644
--- a/var/spack/repos/builtin/packages/py-gpaw/package.py
+++ b/var/spack/repos/builtin/packages/py-gpaw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyGpaw(PythonPackage):
(ASE)."""
homepage = "https://wiki.fysik.dtu.dk/gpaw/index.html"
- url = "https://pypi.io/packages/source/g/gpaw/gpaw-1.3.0.tar.gz"
+ pypi = "gpaw/gpaw-1.3.0.tar.gz"
version('19.8.1', sha256='79dee367d695d68409c4d69edcbad5c8679137d6715da403f6c2500cb2178c2a')
version('1.3.0', sha256='cf601c69ac496421e36111682bcc1d23da2dba2aabc96be51accf73dea30655c')
diff --git a/var/spack/repos/builtin/packages/py-gpustat/package.py b/var/spack/repos/builtin/packages/py-gpustat/package.py
index 1bfab1ba35..740af6eb55 100644
--- a/var/spack/repos/builtin/packages/py-gpustat/package.py
+++ b/var/spack/repos/builtin/packages/py-gpustat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyGpustat(PythonPackage):
"""An utility to monitor NVIDIA GPU status and usage."""
homepage = "https://github.com/wookayin/gpustat"
- url = "https://pypi.io/packages/source/g/gpustat/gpustat-0.6.0.tar.gz"
+ pypi = "gpustat/gpustat-0.6.0.tar.gz"
version('0.6.0', sha256='f69135080b2668b662822633312c2180002c10111597af9631bb02e042755b6c')
@@ -19,5 +19,3 @@ class PyGpustat(PythonPackage):
depends_on('py-nvidia-ml-py3@7.352.0:', when='^python@3:', type=('build', 'run'))
depends_on('py-psutil', type=('build', 'run'))
depends_on('py-blessings@1.6:', type=('build', 'run'))
- depends_on('py-mock@2:', type='test')
- depends_on('py-pytest@:4', type='test')
diff --git a/var/spack/repos/builtin/packages/py-gputil/package.py b/var/spack/repos/builtin/packages/py-gputil/package.py
index 22a16dda7b..fd4e3af69b 100644
--- a/var/spack/repos/builtin/packages/py-gputil/package.py
+++ b/var/spack/repos/builtin/packages/py-gputil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyGputil(PythonPackage):
using nvidia-smi."""
homepage = "https://github.com/anderskm/gputil"
- url = "https://pypi.io/packages/source/G/GPUtil/GPUtil-1.4.0.tar.gz"
+ pypi = "GPUtil/GPUtil-1.4.0.tar.gz"
version('1.4.0', sha256='099e52c65e512cdfa8c8763fca67f5a5c2afb63469602d5dcb4d296b3661efb9')
diff --git a/var/spack/repos/builtin/packages/py-gpy/package.py b/var/spack/repos/builtin/packages/py-gpy/package.py
index d85c28b52d..84f5e117cb 100644
--- a/var/spack/repos/builtin/packages/py-gpy/package.py
+++ b/var/spack/repos/builtin/packages/py-gpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGpy(PythonPackage):
"""The Gaussian Process Toolbox."""
homepage = "http://sheffieldml.github.com/GPy/"
- url = "https://pypi.io/packages/source/g/gpy/GPy-1.9.9.tar.gz"
+ pypi = "gpy/GPy-1.9.9.tar.gz"
version('1.9.9', sha256='04faf0c24eacc4dea60727c50a48a07ddf9b5751a3b73c382105e2a31657c7ed')
version('0.8.8', sha256='e135d928cf170e2ec7fb058a035b5a7e334dc6b84d0bfb981556782528341988')
diff --git a/var/spack/repos/builtin/packages/py-gpytorch/package.py b/var/spack/repos/builtin/packages/py-gpytorch/package.py
index 7635c07e60..649711c354 100644
--- a/var/spack/repos/builtin/packages/py-gpytorch/package.py
+++ b/var/spack/repos/builtin/packages/py-gpytorch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGpytorch(PythonPackage):
process models with ease."""
homepage = "https://gpytorch.ai/"
- url = "https://pypi.io/packages/source/g/gpytorch/gpytorch-1.2.1.tar.gz"
+ pypi = "gpytorch/gpytorch-1.2.1.tar.gz"
maintainers = ['adamjstewart']
diff --git a/var/spack/repos/builtin/packages/py-gql/package.py b/var/spack/repos/builtin/packages/py-gql/package.py
index a3962bc649..6443a003d4 100644
--- a/var/spack/repos/builtin/packages/py-gql/package.py
+++ b/var/spack/repos/builtin/packages/py-gql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-grandalf/package.py b/var/spack/repos/builtin/packages/py-grandalf/package.py
new file mode 100644
index 0000000000..b2059587ee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-grandalf/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyGrandalf(PythonPackage):
+ """Grandalf is a Python package made for experimentations with graph
+ drawing algorithms."""
+
+ homepage = "https://github.com/bdcht/grandalf"
+ url = "https://github.com/bdcht/grandalf/archive/v0.7.tar.gz"
+
+ version('0.7', sha256='b3112299fe0a9123c088a16bf2f1b541d0d91199b77170a9739b569bd16a828e')
+ version('0.6', sha256='928db4b90f7aff01e252a833951086b20d5958c00083411193c794de7bf59df2')
+
+ depends_on('python@3:', type=('build', 'run'))
+ depends_on('py-pyparsing', type=('build', 'run'))
+ depends_on('py-pytest-runner', type='build')
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-graphql-core/package.py b/var/spack/repos/builtin/packages/py-graphql-core/package.py
index 6b74fa9095..b5243409d0 100644
--- a/var/spack/repos/builtin/packages/py-graphql-core/package.py
+++ b/var/spack/repos/builtin/packages/py-graphql-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-graphviz/package.py b/var/spack/repos/builtin/packages/py-graphviz/package.py
index 144321cccf..70b73593e2 100644
--- a/var/spack/repos/builtin/packages/py-graphviz/package.py
+++ b/var/spack/repos/builtin/packages/py-graphviz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,14 @@ class PyGraphviz(PythonPackage):
"""Simple Python interface for Graphviz"""
homepage = "https://github.com/xflr6/graphviz"
- url = "https://pypi.io/packages/source/g/graphviz/graphviz-0.10.1.zip"
+ pypi = "graphviz/graphviz-0.10.1.zip"
version('0.13.2', sha256='60acbeee346e8c14555821eab57dbf68a169e6c10bce40e83c1bf44f63a62a01')
version('0.13', sha256='dc08677f37c65a4a480f00df4bd0d19a0a103c06aad95f21a37f0b7fd440de81')
version('0.12', sha256='c60e232a66e4847f9f644fbaa94730ca4f78385a1314a2cc1e7f4cb2d7461298')
version('0.11.1', sha256='914b8b124942d82e3e1dcef499c9fe77c10acd3d18a1cfeeb2b9de05f6d24805')
version('0.10.1', sha256='d311be4fddfe832a56986ac5e1d6e8715d7fcb0208560da79d1bb0f72abef41f')
+ version('0.8.4', sha256='4958a19cbd8461757a08db308a4a15c3d586660417e1e364f0107d2fe481689f')
variant('dev', default=False, description='development mode')
variant('docs', default=False, description='build documentation')
@@ -30,10 +31,5 @@ class PyGraphviz(PythonPackage):
depends_on('py-pep8-naming', type=('build', 'run'), when='+dev')
depends_on('py-wheel', type=('build', 'run'), when='+dev')
depends_on('py-twine', type=('build', 'run'), when='+dev')
- depends_on('py-mock@2:', type='test')
- depends_on('py-pytest@3.4:', type='test')
- depends_on('py-pytest@3.4:3.9,3.11:', when='@0.11.1', type='test')
- depends_on('py-pytest-mock@1.8:', type='test')
- depends_on('py-pytest-cov', type='test')
depends_on('py-sphinx@1.7:', type=('build', 'run'), when='+docs')
depends_on('py-sphinx-rtd-theme', type=('build', 'run'), when='+docs')
diff --git a/var/spack/repos/builtin/packages/py-greenlet/package.py b/var/spack/repos/builtin/packages/py-greenlet/package.py
index cda196c519..9af8f00180 100644
--- a/var/spack/repos/builtin/packages/py-greenlet/package.py
+++ b/var/spack/repos/builtin/packages/py-greenlet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,9 @@ class PyGreenlet(PythonPackage):
"""Lightweight in-process concurrent programming"""
homepage = "https://github.com/python-greenlet/greenlet"
- url = "https://pypi.io/packages/source/g/greenlet/greenlet-0.4.13.tar.gz"
+ pypi = "greenlet/greenlet-0.4.17.tar.gz"
+ version('0.4.17', sha256='41d8835c69a78de718e466dd0e6bfd4b46125f21a67c3ff6d76d8d8059868d6b')
version('0.4.13', sha256='0fef83d43bf87a5196c91e73cb9772f945a4caaff91242766c5916d1dd1381e4')
+
+ depends_on('python', type=('build', 'link', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-grequests/package.py b/var/spack/repos/builtin/packages/py-grequests/package.py
index 53b804bd6f..94ac957d72 100644
--- a/var/spack/repos/builtin/packages/py-grequests/package.py
+++ b/var/spack/repos/builtin/packages/py-grequests/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyGrequests(PythonPackage):
"""
homepage = "https://github.com/spyoungtech/grequests"
- url = "https://pypi.io/packages/source/g/grequests/grequests-0.4.0.tar.gz"
+ pypi = "grequests/grequests-0.4.0.tar.gz"
version('0.4.0', sha256='8aeccc15e60ec65c7e67ee32e9c596ab2196979815497f85cf863465a1626490')
version('0.3.0', sha256='0f41c4eee83bab39f5543af49665c08681637a0562a5704a3f7b2e4a996531c9')
@@ -22,4 +22,3 @@ class PyGrequests(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-gevent', type=('build', 'run'))
depends_on('py-requests', type=('build', 'run'))
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-griddataformats/package.py b/var/spack/repos/builtin/packages/py-griddataformats/package.py
index f7c8584ac0..c9b808bf60 100644
--- a/var/spack/repos/builtin/packages/py-griddataformats/package.py
+++ b/var/spack/repos/builtin/packages/py-griddataformats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyGriddataformats(PythonPackage):
data again."""
homepage = "http://www.mdanalysis.org/GridDataFormats"
- url = "https://pypi.io/packages/source/G/GridDataFormats/GridDataFormats-0.5.0.tar.gz"
+ pypi = "GridDataFormats/GridDataFormats-0.5.0.tar.gz"
version('0.5.0', sha256='f317ed60708de22d1b2a76ce89a00f722d903291b1055ff1018d441870c39d69')
version('0.4.1', sha256='b362662c2dc475e2a3895fe044eaaa9a707bd660fd109a63dac84a47236690a3')
diff --git a/var/spack/repos/builtin/packages/py-grpcio/package.py b/var/spack/repos/builtin/packages/py-grpcio/package.py
index b53cb4a0f1..88fc4891ac 100644
--- a/var/spack/repos/builtin/packages/py-grpcio/package.py
+++ b/var/spack/repos/builtin/packages/py-grpcio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,14 @@ class PyGrpcio(PythonPackage):
"""HTTP/2-based RPC framework."""
homepage = "https://grpc.io/"
- url = "https://pypi.io/packages/source/g/grpcio/grpcio-1.32.0.tar.gz"
+ pypi = "grpcio/grpcio-1.32.0.tar.gz"
version('1.32.0', sha256='01d3046fe980be25796d368f8fc5ff34b7cf5e1444f3789a017a7fe794465639')
version('1.30.0', sha256='e8f2f5d16e0164c415f1b31a8d9a81f2e4645a43d1b261375d6bab7b0adf511f')
version('1.29.0', sha256='a97ea91e31863c9a3879684b5fb3c6ab4b17c5431787548fc9f52b9483ea9c25')
version('1.27.2', sha256='5ae532b93cf9ce5a2a549b74a2c35e3b690b171ece9358519b3039c7b84c887e')
version('1.25.0', sha256='c948c034d8997526011960db54f512756fb0b4be1b81140a15b4ef094c6594a4')
+ version('1.16.0', sha256='d99db0b39b490d2469a8ef74197d5f211fa740fc9581dccecbb76c56d080fce1')
depends_on('python@3.5:', when='@1.30:', type=('build', 'run'))
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-gsd/package.py b/var/spack/repos/builtin/packages/py-gsd/package.py
index f130265d82..2cfd8719cc 100644
--- a/var/spack/repos/builtin/packages/py-gsd/package.py
+++ b/var/spack/repos/builtin/packages/py-gsd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,7 @@ class PyGsd(PythonPackage):
tool to explore the behavior of the simulation."""
homepage = "https://gsd.readthedocs.io/en/stable/#"
- url = "https://pypi.io/packages/source/g/gsd/gsd-1.9.3.tar.gz"
+ pypi = "gsd/gsd-1.9.3.tar.gz"
version('1.9.3', sha256='c6b37344e69020f69fda2b8d97f894cb41fd720840abeda682edd680d1cff838')
diff --git a/var/spack/repos/builtin/packages/py-gsi/package.py b/var/spack/repos/builtin/packages/py-gsi/package.py
index 3f09ff3b55..aa4a6b3b43 100644
--- a/var/spack/repos/builtin/packages/py-gsi/package.py
+++ b/var/spack/repos/builtin/packages/py-gsi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyGsi(PythonPackage):
"""Python interface for GSI authentication"""
homepage = "https://github.com/DIRACGrid/pyGSI"
- url = "https://pypi.io/packages/source/g/gsi/GSI-0.6.5.tar.gz"
+ pypi = "gsi/GSI-0.6.5.tar.gz"
version('0.6.5', sha256='8291dd2fab2be12626272629f7f9661487c4e29f1f9ab8c61614c54b06cb0643')
diff --git a/var/spack/repos/builtin/packages/py-guidata/package.py b/var/spack/repos/builtin/packages/py-guidata/package.py
index 40ddc445b2..e5d76a7c03 100644
--- a/var/spack/repos/builtin/packages/py-guidata/package.py
+++ b/var/spack/repos/builtin/packages/py-guidata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyGuidata(PythonPackage):
and display"""
homepage = "https://github.com/PierreRaybaut/guidata"
- url = "https://pypi.io/packages/source/g/guidata/guidata-1.7.5.zip"
+ pypi = "guidata/guidata-1.7.5.zip"
version('1.7.5', sha256='531d5e9ea784120c2e14212cfbd9c63f78fc7a77bcb9c5497be984584ee455c0')
diff --git a/var/spack/repos/builtin/packages/py-guiqwt/package.py b/var/spack/repos/builtin/packages/py-guiqwt/package.py
index 86cb35e37f..dcdbb22570 100644
--- a/var/spack/repos/builtin/packages/py-guiqwt/package.py
+++ b/var/spack/repos/builtin/packages/py-guiqwt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyGuiqwt(PythonPackage):
(extension to PythonQwt)"""
homepage = "https://github.com/PierreRaybaut/guiqwt"
- url = "https://pypi.io/packages/source/g/guiqwt/guiqwt-3.0.2.zip"
+ pypi = "guiqwt/guiqwt-3.0.2.zip"
version('3.0.2', sha256='387c0b9430624ecc87931e33ff963785194968c9f848337eb050eca48c6cd858')
diff --git a/var/spack/repos/builtin/packages/py-gym/package.py b/var/spack/repos/builtin/packages/py-gym/package.py
new file mode 100644
index 0000000000..795c93fe25
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-gym/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyGym(PythonPackage):
+ """OpenAI Gym is a toolkit for developing and comparing
+ reinforcement learning algorithms. This is the gym open-source
+ library, which gives you access to a standardized set of
+ environments."""
+
+ homepage = "https://github.com/openai/gym"
+ pypi = "gym/0.18.0.tar.gz"
+
+ version('0.18.0', sha256='a0dcd25c1373f3938f4cb4565f74f434fba6faefb73a42d09c9dddd0c08af53e')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-numpy@1.10.4:', type=('build', 'run'))
+ depends_on('py-pyglet@1.4.0:1.5.0', type=('build', 'run'), when='@0.18.0')
+ depends_on('py-pyglet@1.4.0:1.5.15', type=('build', 'run'), when='@0.18.1')
+ depends_on('pil@:8.2.0', type=('build', 'run'), when='@0.18.1')
+ depends_on('pil@:7.2.0', type=('build', 'run'), when='@0.18.0')
+ depends_on('py-cloudpickle@1.2.0:1.6.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-h11/package.py b/var/spack/repos/builtin/packages/py-h11/package.py
index e31e940b7f..9864e1617a 100644
--- a/var/spack/repos/builtin/packages/py-h11/package.py
+++ b/var/spack/repos/builtin/packages/py-h11/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyH11(PythonPackage):
"""A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"""
homepage = "https://github.com/python-hyper/h11"
- url = "https://pypi.io/packages/source/h/h11/h11-0.10.0.tar.gz"
+ pypi = "h11/h11-0.10.0.tar.gz"
version('0.10.0', sha256='311dc5478c2568cc07262e0381cdfc5b9c6ba19775905736c87e81ae6662b9fd')
version('0.9.0', sha256='33d4bca7be0fa039f4e84d50ab00531047e53d6ee8ffbc83501ea602c169cae1')
diff --git a/var/spack/repos/builtin/packages/py-h2/package.py b/var/spack/repos/builtin/packages/py-h2/package.py
index 375f36c27d..ae263f1ff0 100644
--- a/var/spack/repos/builtin/packages/py-h2/package.py
+++ b/var/spack/repos/builtin/packages/py-h2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyH2(PythonPackage):
"""HTTP/2 State-Machine based protocol implementation"""
homepage = "https://github.com/python-hyper/hyper-h2"
- url = "https://pypi.io/packages/source/h/h2/h2-4.0.0.tar.gz"
+ pypi = "h2/h2-4.0.0.tar.gz"
version('4.0.0', sha256='bb7ac7099dd67a857ed52c815a6192b6b1f5ba6b516237fc24a085341340593d')
diff --git a/var/spack/repos/builtin/packages/py-h5glance/package.py b/var/spack/repos/builtin/packages/py-h5glance/package.py
index 9d3c3c9171..885929a09e 100644
--- a/var/spack/repos/builtin/packages/py-h5glance/package.py
+++ b/var/spack/repos/builtin/packages/py-h5glance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,11 +13,11 @@ class PyH5glance(PythonPackage):
"""
homepage = "https://github.com/European-XFEL/h5glance"
- url = "https://pypi.io/packages/source/h/h5glance/h5glance-0.4.tar.gz"
+ pypi = "h5glance/h5glance-0.4.tar.gz"
version('0.6', sha256='203369ab614273aaad3419f151e234609bb8390b201b65f678d7e17c57633e35')
version('0.5', sha256='bc34ee42429f0440b329083e3f67fbf3d7016a4aed9e8b30911e5905217bc8d9')
- version('0.4', sha256='03babaee0d481991062842796126bc9e6b11e2e6e7daba57c26f2b58bf3bbd32')
+ version('0.4', sha256='03babaee0d481991062842796126bc9e6b11e2e6e7daba57c26f2b58bf3bbd32')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-h5py', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-h5netcdf/package.py b/var/spack/repos/builtin/packages/py-h5netcdf/package.py
new file mode 100644
index 0000000000..73538cdb44
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-h5netcdf/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyH5netcdf(PythonPackage):
+ """A Python interface for the netCDF4 file-format that reads and writes local or
+ remote HDF5 files directly via h5py or h5pyd, without relying on the Unidata netCDF
+ library."""
+
+ homepage = "https://github.com/h5netcdf/h5netcdf"
+ pypi = "h5netcdf/h5netcdf-0.10.0.tar.gz"
+
+ version('0.10.0', sha256='fc1cfec33bb9f730c412f87fcbc259167fd7620635679ccfc6e31971730dbd60')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-h5py', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-h5py/h5py-3-setuprequires.patch b/var/spack/repos/builtin/packages/py-h5py/h5py-3-setuprequires.patch
new file mode 100644
index 0000000000..c8c6654736
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-h5py/h5py-3-setuprequires.patch
@@ -0,0 +1,21 @@
+diff -Naur h5py-3.1.0/setup.py h5py-3.1.0.patch/setup.py
+--- h5py-3.1.0/setup.py 2020-11-06 14:25:11.000000000 +0000
++++ h5py-3.1.0.patch/setup.py 2021-03-04 20:12:19.913405154 +0000
+@@ -49,14 +49,14 @@
+ f"Cython >=0.29; python_version<'3.8'",
+ f"Cython >=0.29.14; python_version>='3.8'",
+ ] + [
+- f"numpy =={np_min}; python_version{py_condition}"
++ f"numpy >={np_min}; python_version{py_condition}"
+ for np_min, py_condition in NUMPY_MIN_VERSIONS
+ ]
+
+ if setup_configure.mpi_enabled():
+ RUN_REQUIRES.append('mpi4py >=3.0.0')
+- SETUP_REQUIRES.append("mpi4py ==3.0.0; python_version<'3.8'")
+- SETUP_REQUIRES.append("mpi4py ==3.0.3; python_version>='3.8'")
++ SETUP_REQUIRES.append("mpi4py >=3.0.0; python_version<'3.8'")
++ SETUP_REQUIRES.append("mpi4py >=3.0.3; python_version>='3.8'")
+
+ # Set the environment variable H5PY_SETUP_REQUIRES=0 if we need to skip
+ # setup_requires for any reason.
diff --git a/var/spack/repos/builtin/packages/py-h5py/package.py b/var/spack/repos/builtin/packages/py-h5py/package.py
index 2b7d34cc4b..a1351d4797 100644
--- a/var/spack/repos/builtin/packages/py-h5py/package.py
+++ b/var/spack/repos/builtin/packages/py-h5py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,12 +11,15 @@ class PyH5py(PythonPackage):
HDF5 library from Python."""
homepage = "http://www.h5py.org/"
- url = "https://pypi.io/packages/source/h/h5py/h5py-2.10.0.tar.gz"
+ pypi = "h5py/h5py-3.2.1.tar.gz"
git = "https://github.com/h5py/h5py.git"
-
- import_modules = ['h5py', 'h5py._hl']
+ maintainers = ['bryanherman']
version('master', branch='master')
+ version('3.2.1', sha256='89474be911bfcdb34cbf0d98b8ec48b578c27a89fdb1ae4ee7513f1ef8d9249e')
+ version('3.2.0', sha256='4271c1a4b7d87aa76fe96d016368beb05a6c389d64882d58036964ce7d2d03c1')
+ version('3.1.0', sha256='1e2516f190652beedcb8c7acfa1c6fa92d99b42331cbef5e5c7ec2d65b0fc3c2')
+ version('3.0.0', sha256='7d3803be1b530c68c2955faba726dc0f591079b68941a0c0269b5384a42ab519')
version('2.10.0', sha256='84412798925dc870ffd7107f045d7659e60f5d46d1c70c700375248bf6bf512d')
version('2.9.0', sha256='9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002')
version('2.8.0', sha256='e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955')
@@ -28,30 +31,58 @@ class PyH5py(PythonPackage):
variant('mpi', default=True, description='Build with MPI support')
+ # Python versions
+ depends_on('python@3.6:', type=('build', 'run'), when='@3.0.0:3.1.99')
+ depends_on('python@3.7:', type=('build', 'run'), when='@3.2.0:')
+
# Build dependencies
- depends_on('py-cython@0.23:', type='build')
+ depends_on('py-cython@0.23:', type='build', when='@:2.99')
+ depends_on('py-cython@0.29:', type=('build'), when='@3.0.0:^python@:3.7.99')
+ depends_on('py-cython@0.29.14:', type=('build'), when='@3.0.0:^python@3.8.0:3.8.99')
+ depends_on('py-cython@0.29.15:', type=('build'), when='@3.0.0:^python@3.9.0:')
depends_on('py-pkgconfig', type='build')
depends_on('py-setuptools', type='build')
+ depends_on('py-wheel', type='build', when='@3.0.0:')
# Build and runtime dependencies
- depends_on('py-cached-property@1.5:', type=('build', 'run'))
- depends_on('py-numpy@1.7:', type=('build', 'run'))
- depends_on('py-six', type=('build', 'run'))
+ depends_on('py-cached-property@1.5:', type=('build', 'run'), when='^python@:3.7.99')
+ depends_on('py-numpy@1.7:', type=('build', 'run'), when='@:2.99')
+ depends_on('py-numpy@1.12:', type=('build', 'run'), when='@3.0.0:^python@3.6.0:3.6.99')
+ depends_on('py-numpy@1.14.5:', type=('build', 'run'), when='@3.0.0:^python@3.7.0:3.7.99')
+ depends_on('py-numpy@1.17.5:', type=('build', 'run'), when='@3.0.0:^python@3.8.0:3.8.99')
+ depends_on('py-numpy@1.19.3:', type=('build', 'run'), when='@3.0.0:^python@3.9.0:')
+ depends_on('py-six', type=('build', 'run'), when='@:2.99')
# Link dependencies
- depends_on('hdf5@1.8.4:+hl')
+ depends_on('hdf5@1.8.4:1.11+hl', when='@:2.99')
+ depends_on('hdf5@1.8.4:+hl', when='@3.0.0:')
# MPI dependencies
depends_on('hdf5+mpi', when='+mpi')
depends_on('mpi', when='+mpi')
- depends_on('py-mpi4py', when='+mpi', type=('build', 'run'))
+ depends_on('py-mpi4py', when='@:2.99 +mpi', type=('build', 'run'))
+ depends_on('py-mpi4py@3.0.0:', when='@3.0.0:+mpi^python@3.0.0:3.7.99', type=('build', 'run'))
+ depends_on('py-mpi4py@3.0.3:', when='@3.0.0:+mpi^python@3.8.0:', type=('build', 'run'))
+
+ # For version 3+, patch setup.py to allow setup_requires list to be more abstract.
+ # Required for offline installations with version 3+
+ patch('h5py-3-setuprequires.patch', when="@3.0.0:")
phases = ['configure', 'install']
+ def setup_build_environment(self, env):
+ env.set('HDF5_DIR', self.spec['hdf5'].prefix)
+ if '+mpi' in self.spec:
+ env.set('CC', self.spec['mpi'].mpicc)
+ env.set('HDF5_MPI', 'ON')
+
+ @when('@3.0.0:')
+ def configure(self, spec, prefix):
+ pass
+
+ @when('@:2.99')
def configure(self, spec, prefix):
self.setup_py('configure', '--hdf5={0}'.format(spec['hdf5'].prefix),
'--hdf5-version={0}'.format(spec['hdf5'].version))
-
if '+mpi' in spec:
- env['CC'] = spec['mpi'].mpicc
self.setup_py('configure', '--mpi')
diff --git a/var/spack/repos/builtin/packages/py-h5sh/package.py b/var/spack/repos/builtin/packages/py-h5sh/package.py
index a85c123475..042d595b99 100644
--- a/var/spack/repos/builtin/packages/py-h5sh/package.py
+++ b/var/spack/repos/builtin/packages/py-h5sh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyH5sh(PythonPackage):
"""Shell-like environment for HDF5."""
- homepage = "https://pypi.python.org/pypi/h5sh"
+ homepage = "https://github.com/sethrj/h5sh"
url = "https://github.com/sethrj/h5sh/archive/v0.1.1.tar.gz"
maintainers = ['sethrj']
@@ -22,4 +22,3 @@ class PyH5sh(PythonPackage):
depends_on('py-prompt-toolkit@2:', type=('build', 'run'))
depends_on('py-pygments', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-hacking/package.py b/var/spack/repos/builtin/packages/py-hacking/package.py
index dae3f8b281..01b0c0f79c 100644
--- a/var/spack/repos/builtin/packages/py-hacking/package.py
+++ b/var/spack/repos/builtin/packages/py-hacking/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyHacking(PythonPackage):
"""OpenStack Hacking Guideline Enforcement."""
homepage = "https://docs.openstack.org/hacking/latest/"
- url = "https://pypi.io/packages/source/h/hacking/hacking-1.1.0.tar.gz"
-
- import_modules = ['hacking']
+ pypi = "hacking/hacking-1.1.0.tar.gz"
version('1.1.0', sha256='23a306f3a1070a4469a603886ba709780f02ae7e0f1fc7061e5c6fb203828fee')
diff --git a/var/spack/repos/builtin/packages/py-hatchet/package.py b/var/spack/repos/builtin/packages/py-hatchet/package.py
index 91df70b61b..b5c85f678f 100644
--- a/var/spack/repos/builtin/packages/py-hatchet/package.py
+++ b/var/spack/repos/builtin/packages/py-hatchet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,18 @@ from spack import *
class PyHatchet(PythonPackage):
- """Hatchet is an analysis tool for structured tree or graph performance data
- using an indexed Pandas dataframe."""
+ """Hatchet is a performance tool for analyzing hierarchical performance data
+ using a graph-indexed Pandas dataframe."""
- homepage = "https://github.com/LLNL/hatchet"
- url = "https://github.com/LLNL/hatchet/archive/v1.0.0.tar.gz"
+ homepage = "https://github.com/hatchet/hatchet"
+ url = "https://github.com/hatchet/hatchet/archive/v1.0.0.tar.gz"
maintainers = ["slabasan", "bhatele", "tgamblin"]
+ version('1.3.0', sha256='d38212aec6272558e25538ff23b54ec0f2b4dbf6ef4b0e77f7f05c37c0d17815')
+ version('1.2.0', sha256='1d5f80abfa69d1a379dff7263908c5c915023f18f26d50b639556e2f43ac755e')
+ version('1.1.0', sha256='71bfa2881ef295294e5b4493acb8cce98d14c354e9ae59b42fb56a76d8ec7056')
+ version('1.0.1', sha256='e5a4b455ab6bfbccbce3260673d9af8d1e4b21e19a2b6d0b6c1e1d7727613b7a')
version('1.0.0', sha256='efd218bc9152abde0a8006489a2c432742f00283a114c1eeb6d25abc10f5862d')
depends_on('python@2.7,3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-hdbscan/package.py b/var/spack/repos/builtin/packages/py-hdbscan/package.py
index 1d093dbf55..be6a532871 100644
--- a/var/spack/repos/builtin/packages/py-hdbscan/package.py
+++ b/var/spack/repos/builtin/packages/py-hdbscan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-hdfs/package.py b/var/spack/repos/builtin/packages/py-hdfs/package.py
index c84c3faca9..5c28dc6827 100644
--- a/var/spack/repos/builtin/packages/py-hdfs/package.py
+++ b/var/spack/repos/builtin/packages/py-hdfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyHdfs(PythonPackage):
"""API and command line interface for HDFS"""
homepage = "https://hdfscli.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/h/hdfs/hdfs-2.1.0.tar.gz"
+ pypi = "hdfs/hdfs-2.1.0.tar.gz"
version('2.1.0', sha256='a40fe99ccb03b5c3247b33a4110eb21b57405dd7c3f1b775e362e66c19b44bc6')
diff --git a/var/spack/repos/builtin/packages/py-healpy/package.py b/var/spack/repos/builtin/packages/py-healpy/package.py
index d1781d13a1..b2920aeb41 100644
--- a/var/spack/repos/builtin/packages/py-healpy/package.py
+++ b/var/spack/repos/builtin/packages/py-healpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class PyHealpy(PythonPackage):
"""healpy is a Python package to handle pixelated data on the sphere."""
homepage = "https://healpy.readthedocs.io/"
- url = "https://pypi.python.org/packages/source/h/healpy/healpy-1.13.0.tar.gz"
+ pypi = "healpy/healpy-1.13.0.tar.gz"
+ version('1.14.0', sha256='2720b5f96c314bdfdd20b6ffc0643ac8091faefcf8fd20a4083cedff85a66c5e')
version('1.13.0', sha256='d0ae02791c2404002a09c643e9e50bc58e3d258f702c736dc1f39ce1e6526f73')
version('1.7.4', sha256='3cca7ed7786ffcca70e2f39f58844667ffb8521180ac890d4da651b459f51442')
diff --git a/var/spack/repos/builtin/packages/py-heapdict/package.py b/var/spack/repos/builtin/packages/py-heapdict/package.py
index 7333f24c7a..99f27ce27e 100644
--- a/var/spack/repos/builtin/packages/py-heapdict/package.py
+++ b/var/spack/repos/builtin/packages/py-heapdict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHeapdict(PythonPackage):
"""A heap with decrease-key and increase-key operations"""
homepage = "http://stutzbachenterprises.com/"
- url = "https://pypi.io/packages/source/H/HeapDict/HeapDict-1.0.1.tar.gz"
+ pypi = "HeapDict/HeapDict-1.0.1.tar.gz"
version('1.0.1', sha256='8495f57b3e03d8e46d5f1b2cc62ca881aca392fd5cc048dc0aa2e1a6d23ecdb6')
diff --git a/var/spack/repos/builtin/packages/py-hepdata-validator/package.py b/var/spack/repos/builtin/packages/py-hepdata-validator/package.py
index ca4daefff5..71a027085e 100644
--- a/var/spack/repos/builtin/packages/py-hepdata-validator/package.py
+++ b/var/spack/repos/builtin/packages/py-hepdata-validator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,9 @@ class PyHepdataValidator(PythonPackage):
"""Validation schema and code for HEPdata submissions."""
homepage = "https://github.com/hepdata/hepdata-validator"
- url = "https://pypi.io/packages/source/h/hepdata_validator/hepdata_validator-0.1.16.tar.gz"
+ pypi = "hepdata_validator/hepdata_validator-0.1.16.tar.gz"
+
+ tags = ['hep']
version('0.1.16', sha256='3d7f725328ecdbb66826bff2e48a40a1d9234249859c8092ca0e92be7fb78111')
version('0.1.15', sha256='1030654b1a1cfc387c2759f8613f033da467c8182dc027e181227aeb52854bb2')
diff --git a/var/spack/repos/builtin/packages/py-hepunits/package.py b/var/spack/repos/builtin/packages/py-hepunits/package.py
index d30fb48126..5b364756fb 100644
--- a/var/spack/repos/builtin/packages/py-hepunits/package.py
+++ b/var/spack/repos/builtin/packages/py-hepunits/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,15 @@ class PyHepunits(PythonPackage):
"""Units and constants in the HEP system of units."""
git = "https://github.com/scikit-hep/hepunits.git"
- url = "https://pypi.io/packages/source/h/hepunits/hepunits-1.2.1.tar.gz"
+ pypi = "hepunits/hepunits-1.2.1.tar.gz"
homepage = "https://github.com/scikit-hep/hepunits"
+ tags = ['hep']
+
maintainers = ['vvolkl']
version('master', branch='master')
+ version('2.1.0', sha256='9e8da814c242579ad1fde6ccff0514195c70ab6d232eab8ff0ad675239686ef6')
version('1.2.1', sha256='b05b0dda32bf797806d506d7508d4eb23b78f34d67bbba9348a2b4a9712666fa')
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-hieroglyph/package.py b/var/spack/repos/builtin/packages/py-hieroglyph/package.py
index fa8a0dab06..997e0ddf34 100644
--- a/var/spack/repos/builtin/packages/py-hieroglyph/package.py
+++ b/var/spack/repos/builtin/packages/py-hieroglyph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,11 +12,13 @@ class PyHieroglyph(PythonPackage):
"""
homepage = "https://github.com/nyergler/hieroglyph"
- url = "https://pypi.io/packages/source/h/hieroglyph/hieroglyph-1.0.0.tar.gz"
+ pypi = "hieroglyph/hieroglyph-1.0.0.tar.gz"
+ version('2.1.0', sha256='b4b5db13a9d387438e610c2ca1d81386ccd206944d9a9dd273f21874486cddaf')
version('1.0.0', sha256='8e137f0b1cd60c47b870011089790d3c8ddb74fcf409a75ddf2c7f2516ff337c')
- version('master')
- depends_on('py-setuptools')
- depends_on('py-sphinx@1.2:')
- depends_on('py-six')
+ depends_on('python@3:', when='@2:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-sphinx@1.2:', when='@1.0.0:1.9.999', type=('build', 'run'))
+ depends_on('py-sphinx@2.0:', when='@2.0.0:', type=('build', 'run'))
+ depends_on('py-six', when='@1.0.0:1.9.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-hiredis/package.py b/var/spack/repos/builtin/packages/py-hiredis/package.py
index add8083916..2da29cd190 100644
--- a/var/spack/repos/builtin/packages/py-hiredis/package.py
+++ b/var/spack/repos/builtin/packages/py-hiredis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyHiredis(PythonPackage):
It primarily speeds up parsing of multi bulk replies."""
homepage = "https://github.com/redis/hiredis-py"
- url = "https://pypi.io/packages/source/h/hiredis/hiredis-1.1.0.tar.gz"
+ pypi = "hiredis/hiredis-1.1.0.tar.gz"
version('1.1.0', sha256='996021ef33e0f50b97ff2d6b5f422a0fe5577de21a8873b58a779a5ddd1c3132')
diff --git a/var/spack/repos/builtin/packages/py-holland-backup/package.py b/var/spack/repos/builtin/packages/py-holland-backup/package.py
new file mode 100644
index 0000000000..4d1be3dcab
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-holland-backup/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from spack import *
+
+
+class PyHollandBackup(PythonPackage):
+ """Holland is an Open Source backup framework originally developed
+ by Rackspace and written in Python. Its goal is to help facilitate
+ backing up databases with greater configurability, consistency, and ease.
+ Holland currently focuses on MySQL, however future development will include
+ other database platforms and even non-database related applications.
+ Because of its plugin structure, Holland can be used to backup anything
+ you want by whatever means you want."""
+
+ homepage = "http://hollandbackup.org/"
+ url = "https://github.com/holland-backup/holland/archive/1.2.2.tar.gz"
+
+ version('1.2.2', sha256='836337c243b2dff5ff6a3ce0b647f123ab24697a5de8ac8ae8b7839aa23dff68')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-configobj@4.6.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-horovod/package.py b/var/spack/repos/builtin/packages/py-horovod/package.py
index f377b6fcda..5fadc26f44 100644
--- a/var/spack/repos/builtin/packages/py-horovod/package.py
+++ b/var/spack/repos/builtin/packages/py-horovod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,10 @@ class PyHorovod(PythonPackage, CudaPackage):
maintainers = ['adamjstewart', 'aweits', 'tgaddair']
version('master', branch='master', submodules=True)
+ version('0.21.3', tag='v0.21.3', submodules=True)
+ version('0.21.2', tag='v0.21.2', submodules=True)
+ version('0.21.1', tag='v0.21.1', submodules=True)
+ version('0.21.0', tag='v0.21.0', submodules=True)
version('0.20.3', tag='v0.20.3', submodules=True)
version('0.20.2', tag='v0.20.2', submodules=True)
version('0.20.1', tag='v0.20.1', submodules=True)
@@ -65,12 +69,14 @@ class PyHorovod(PythonPackage, CudaPackage):
depends_on('py-cffi@1.4.0:', type=('build', 'run'), when='frameworks=pytorch')
depends_on('mxnet@1.4.1:+python', type=('build', 'link', 'run'), when='frameworks=mxnet')
depends_on('py-keras@2.0.8,2.1.2:', type=('build', 'run'), when='frameworks=keras')
- depends_on('py-h5py@2.9:', type=('build', 'run'), when='frameworks=spark')
+ depends_on('py-h5py@:2.999', type=('build', 'run'), when='frameworks=spark')
depends_on('py-numpy', type=('build', 'run'), when='frameworks=spark')
depends_on('py-petastorm@0.8.2', type=('build', 'run'), when='frameworks=spark @:0.19.1')
- depends_on('py-petastorm@0.9.0:', type=('build', 'run'), when='frameworks=spark @0.19.2:')
+ depends_on('py-petastorm@0.9.0:', type=('build', 'run'), when='frameworks=spark @0.19.2:0.21.0')
+ depends_on('py-petastorm@0.9.8:', type=('build', 'run'), when='frameworks=spark @0.21.1:')
depends_on('py-pyarrow@0.15.0:', type=('build', 'run'), when='frameworks=spark')
- depends_on('py-pyspark@2.3.2:', type=('build', 'run'), when='frameworks=spark')
+ depends_on('py-pyspark@2.3.2:', type=('build', 'run'), when='frameworks=spark ^python@:3.7')
+ depends_on('py-pyspark@3.0.0:', type=('build', 'run'), when='frameworks=spark ^python@3.8:')
depends_on('py-ray', type=('build', 'run'), when='frameworks=ray')
# Build dependencies
@@ -89,12 +95,6 @@ class PyHorovod(PythonPackage, CudaPackage):
# There does not appear to be a way to use an external Gloo installation
depends_on('cmake', type='build', when='tensor_ops=gloo')
- # Test dependencies
- depends_on('py-mock', type='test')
- depends_on('py-pytest', type='test')
- depends_on('py-pytest-forked', type='test')
- depends_on('py-parameterized', type='test', when='@0.20:')
-
conflicts('cuda_arch=none', when='+cuda',
msg='Must specify CUDA compute capabilities of your GPU, see '
'https://developer.nvidia.com/cuda-gpus')
@@ -105,6 +105,51 @@ class PyHorovod(PythonPackage, CudaPackage):
# https://github.com/horovod/horovod/pull/1835
patch('fma.patch', when='@0.19.0:0.19.1')
+ @property
+ def import_modules(self):
+ modules = [
+ 'horovod', 'horovod.runner', 'horovod.runner.util',
+ 'horovod.runner.elastic', 'horovod.runner.driver',
+ 'horovod.runner.common', 'horovod.runner.common.util',
+ 'horovod.runner.common.service', 'horovod.runner.http',
+ 'horovod.runner.task', 'horovod.common'
+ ]
+
+ if 'frameworks=tensorflow' in self.spec:
+ modules.append('horovod.tensorflow')
+
+ if 'frameworks=pytorch' in self.spec:
+ modules.extend([
+ 'horovod.torch', 'horovod.torch.mpi_lib',
+ 'horovod.torch.elastic', 'horovod.torch.mpi_lib_impl'
+ ])
+
+ if 'frameworks=mxnet' in self.spec:
+ modules.append('horovod.mxnet')
+
+ if 'frameworks=keras' in self.spec:
+ modules.extend(['horovod.keras', 'horovod._keras'])
+
+ if 'frameworks=spark' in self.spec:
+ modules.extend([
+ 'horovod.spark', 'horovod.spark.driver',
+ 'horovod.spark.common', 'horovod.spark.task'
+ ])
+
+ if 'frameworks=ray' in self.spec:
+ modules.append('horovod.ray')
+
+ if 'frameworks=tensorflow,keras' in self.spec:
+ modules.append('horovod.tensorflow.keras')
+
+ if 'frameworks=spark,pytorch' in self.spec:
+ modules.append('horovod.spark.torch')
+
+ if 'frameworks=spark,keras' in self.spec:
+ modules.append('horovod.spark.keras')
+
+ return modules
+
def setup_build_environment(self, env):
# https://github.com/horovod/horovod/blob/master/docs/install.rst#environment-variables
@@ -126,6 +171,8 @@ class PyHorovod(PythonPackage, CudaPackage):
env.set('HOROVOD_WITHOUT_PYTORCH', 1)
if 'frameworks=mxnet' in self.spec:
env.set('HOROVOD_WITH_MXNET', 1)
+ env.set('MXNET_INCLUDE_PATH', self.spec['mxnet'].prefix.include)
+ env.set('MXNET_LIBRARY_PATH', join_path(self.spec['mxnet'].libs[0]))
else:
env.set('HOROVOD_WITHOUT_MXNET', 1)
@@ -167,8 +214,6 @@ class PyHorovod(PythonPackage, CudaPackage):
env.set('HOROVOD_CPU_OPERATIONS',
self.spec.variants['tensor_ops'].value.upper())
- @run_after('install')
- @on_package_attributes(run_tests=True)
- def install_test(self):
- horovodrun = Executable(self.prefix.bin.horovodrun)
- horovodrun('--check-build')
+ def test(self):
+ super(PyHorovod, self).test()
+ run_test(self.prefix.bin.horovodrun, '--check-build')
diff --git a/var/spack/repos/builtin/packages/py-hpack/package.py b/var/spack/repos/builtin/packages/py-hpack/package.py
index 8aae974133..b4621c40ae 100644
--- a/var/spack/repos/builtin/packages/py-hpack/package.py
+++ b/var/spack/repos/builtin/packages/py-hpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHpack(PythonPackage):
"""Pure-Python HPACK header compression"""
homepage = "https://github.com/python-hyper/hpack"
- url = "https://pypi.io/packages/source/h/hpack/hpack-4.0.0.tar.gz"
+ pypi = "hpack/hpack-4.0.0.tar.gz"
version('4.0.0', sha256='fc41de0c63e687ebffde81187a948221294896f6bdc0ae2312708df339430095')
diff --git a/var/spack/repos/builtin/packages/py-hpcbench/package.py b/var/spack/repos/builtin/packages/py-hpcbench/package.py
index 7721655824..b53c1df5d6 100644
--- a/var/spack/repos/builtin/packages/py-hpcbench/package.py
+++ b/var/spack/repos/builtin/packages/py-hpcbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyHpcbench(PythonPackage):
homepage = "https://github.com/BlueBrain/hpcbench"
- url = "https://pypi.io/packages/source/h/hpcbench/hpcbench-0.8.tar.gz"
+ pypi = "hpcbench/hpcbench-0.8.tar.gz"
git = "https://github.com/BlueBrain/hpcbench.git"
version('master', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-hpccm/package.py b/var/spack/repos/builtin/packages/py-hpccm/package.py
index db041ef65a..887df9d8cf 100644
--- a/var/spack/repos/builtin/packages/py-hpccm/package.py
+++ b/var/spack/repos/builtin/packages/py-hpccm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyHpccm(PythonPackage):
tool to make it easier to generate container specification files."""
homepage = "https://github.com/NVIDIA/hpc-container-maker"
- url = "https://pypi.io/packages/source/h/hpccm/hpccm-19.2.0.tar.gz"
+ pypi = "hpccm/hpccm-19.2.0.tar.gz"
version('19.2.0', sha256='c60eec914a802b0a76596cfd5fdf7122d3f8665fcef06ef928323f5dfb5219a6')
diff --git a/var/spack/repos/builtin/packages/py-hstspreload/package.py b/var/spack/repos/builtin/packages/py-hstspreload/package.py
index f3c304395b..88cde592d3 100644
--- a/var/spack/repos/builtin/packages/py-hstspreload/package.py
+++ b/var/spack/repos/builtin/packages/py-hstspreload/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHstspreload(PythonPackage):
"""Chromium HSTS Preload list as a Python package and updated daily"""
homepage = "https://github.com/sethmlarson/hstspreload"
- url = "https://pypi.io/packages/source/h/hstspreload/hstspreload-2020.9.23.tar.gz"
+ pypi = "hstspreload/hstspreload-2020.9.23.tar.gz"
version('2020.9.23', sha256='35822733ba67cfb4efc6cd7d1230b509f0bd42c90eeb329faf2fe679f801e40f')
diff --git a/var/spack/repos/builtin/packages/py-html2text/package.py b/var/spack/repos/builtin/packages/py-html2text/package.py
index 69895a7361..3adc4770cd 100644
--- a/var/spack/repos/builtin/packages/py-html2text/package.py
+++ b/var/spack/repos/builtin/packages/py-html2text/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHtml2text(PythonPackage):
"""Turn HTML into equivalent Markdown-structured text."""
homepage = "https://github.com/Alir3z4/html2text/"
- url = "https://pypi.io/packages/source/h/html2text/html2text-2016.9.19.tar.gz"
+ pypi = "html2text/html2text-2016.9.19.tar.gz"
version('2016.9.19', sha256='554ef5fd6c6cf6e3e4f725a62a3e9ec86a0e4d33cd0928136d1c79dbeb7b2d55')
diff --git a/var/spack/repos/builtin/packages/py-html5lib/package.py b/var/spack/repos/builtin/packages/py-html5lib/package.py
index e9e8b485ab..ea81a8beae 100644
--- a/var/spack/repos/builtin/packages/py-html5lib/package.py
+++ b/var/spack/repos/builtin/packages/py-html5lib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHtml5lib(PythonPackage):
"""HTML parser based on the WHATWG HTML specification."""
homepage = "https://github.com/html5lib/html5lib-python"
- url = "https://pypi.io/packages/source/h/html5lib/html5lib-0.9999999.tar.gz"
+ pypi = "html5lib/html5lib-0.9999999.tar.gz"
version('1.0.1', sha256='66cb0dcfdbbc4f9c3ba1a63fdb511ffdbd4f513b2b6d81b80cd26ce6b3fb3736')
version('0.9999999', sha256='2612a191a8d5842bfa057e41ba50bbb9dcb722419d2408c78cff4758d0754868')
diff --git a/var/spack/repos/builtin/packages/py-htmlgen/package.py b/var/spack/repos/builtin/packages/py-htmlgen/package.py
index b15fe69769..6beb4732f4 100644
--- a/var/spack/repos/builtin/packages/py-htmlgen/package.py
+++ b/var/spack/repos/builtin/packages/py-htmlgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,5 +18,3 @@ class PyHtmlgen(PythonPackage):
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-asserts@0.8.0:0.8.999', type='test')
- depends_on('py-typing', type='test')
diff --git a/var/spack/repos/builtin/packages/py-htseq/package.py b/var/spack/repos/builtin/packages/py-htseq/package.py
index 693c12840c..f604ab6118 100644
--- a/var/spack/repos/builtin/packages/py-htseq/package.py
+++ b/var/spack/repos/builtin/packages/py-htseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-httpbin/package.py b/var/spack/repos/builtin/packages/py-httpbin/package.py
index 815f748885..912ec6529d 100644
--- a/var/spack/repos/builtin/packages/py-httpbin/package.py
+++ b/var/spack/repos/builtin/packages/py-httpbin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHttpbin(PythonPackage):
"""HTTP Request and Response Service"""
homepage = "https://github.com/Runscope/httpbin"
- url = "https://pypi.io/packages/source/h/httpbin/httpbin-0.7.0.tar.gz"
+ pypi = "httpbin/httpbin-0.7.0.tar.gz"
version('0.7.0', sha256='cbb37790c91575f4f15757f42ad41d9f729eb227d5edbe89e4ec175486db8dfa')
version('0.5.0', sha256='79fbc5d27e4194ea908b0fa18e09a59d95d287c91667aa69bcd010342d1589b5')
diff --git a/var/spack/repos/builtin/packages/py-httpcore/package.py b/var/spack/repos/builtin/packages/py-httpcore/package.py
index a161d9a171..311aa58924 100644
--- a/var/spack/repos/builtin/packages/py-httpcore/package.py
+++ b/var/spack/repos/builtin/packages/py-httpcore/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyHttpcore(PythonPackage):
which does one thing only. Sending HTTP requests."""
homepage = "https://github.com/encode/httpcore"
- url = "https://pypi.io/packages/source/h/httpcore/httpcore-0.11.0.tar.gz"
+ pypi = "httpcore/httpcore-0.11.0.tar.gz"
version('0.11.0', sha256='35ffc735d746b83f8fc6d36f82600e56117b9e8adc65d0c0423264b6ebfef7bf')
diff --git a/var/spack/repos/builtin/packages/py-httplib2/package.py b/var/spack/repos/builtin/packages/py-httplib2/package.py
index 73877056ac..62cfe2a587 100644
--- a/var/spack/repos/builtin/packages/py-httplib2/package.py
+++ b/var/spack/repos/builtin/packages/py-httplib2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHttplib2(PythonPackage):
"""A comprehensive HTTP client library."""
homepage = "https://github.com/httplib2/httplib2"
- url = "https://pypi.io/packages/source/h/httplib2/httplib2-0.13.1.tar.gz"
+ pypi = "httplib2/httplib2-0.13.1.tar.gz"
version('0.13.1', sha256='6901c8c0ffcf721f9ce270ad86da37bc2b4d32b8802d4a9cec38274898a64044')
diff --git a/var/spack/repos/builtin/packages/py-httptools/package.py b/var/spack/repos/builtin/packages/py-httptools/package.py
index 9cb1f5df43..20afa6eec4 100644
--- a/var/spack/repos/builtin/packages/py-httptools/package.py
+++ b/var/spack/repos/builtin/packages/py-httptools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHttptools(PythonPackage):
"""httptools is a Python binding for the nodejs HTTP parser."""
homepage = "https://github.com/MagicStack/httptools"
- url = "https://pypi.io/packages/source/h/httptools/httptools-0.1.1.tar.gz"
+ pypi = "httptools/httptools-0.1.1.tar.gz"
version('0.1.1', sha256='41b573cf33f64a8f8f3400d0a7faf48e1888582b6f6e02b82b9bd4f0bf7497ce')
diff --git a/var/spack/repos/builtin/packages/py-httpx/package.py b/var/spack/repos/builtin/packages/py-httpx/package.py
index 50dca9b2fb..ec3268461f 100644
--- a/var/spack/repos/builtin/packages/py-httpx/package.py
+++ b/var/spack/repos/builtin/packages/py-httpx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyHttpx(PythonPackage):
and async APIs, and support for both HTTP/1.1 and HTTP/2."""
homepage = "https://github.com/encode/httpx"
- url = "https://pypi.io/packages/source/h/httpx/httpx-0.15.2.tar.gz"
+ pypi = "httpx/httpx-0.15.2.tar.gz"
version('0.15.2', sha256='713a2deaf96d85bbd4a1fbdf0edb27d6b4ee2c9aaeda8433042367e4b9e1628d')
version('0.11.1', sha256='7d2bfb726eeed717953d15dddb22da9c2fcf48a4d70ba1456aa0a7faeda33cf7')
diff --git a/var/spack/repos/builtin/packages/py-humanfriendly/package.py b/var/spack/repos/builtin/packages/py-humanfriendly/package.py
index d6129f4db8..60e177e46a 100644
--- a/var/spack/repos/builtin/packages/py-humanfriendly/package.py
+++ b/var/spack/repos/builtin/packages/py-humanfriendly/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyHumanfriendly(PythonPackage):
"""Human friendly output for text interfaces using Python"""
homepage = "https://humanfriendly.readthedocs.io/"
- url = "https://pypi.io/packages/source/h/humanfriendly/humanfriendly-8.1.tar.gz"
+ pypi = "humanfriendly/humanfriendly-8.1.tar.gz"
version('8.2', sha256='bf52ec91244819c780341a3438d5d7b09f431d3f113a475147ac9b7b167a3d12')
version('8.1', sha256='25c2108a45cfd1e8fbe9cdb30b825d34ef5d5675c8e11e4775c9aedbfb0bdee2')
diff --git a/var/spack/repos/builtin/packages/py-humanize/package.py b/var/spack/repos/builtin/packages/py-humanize/package.py
index c83200de00..8240561773 100644
--- a/var/spack/repos/builtin/packages/py-humanize/package.py
+++ b/var/spack/repos/builtin/packages/py-humanize/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,9 +14,8 @@ class PyHumanize(PythonPackage):
"""
homepage = "https://github.com/jmoiron/humanize"
- url = "https://pypi.io/packages/source/h/humanize/humanize-0.5.1.tar.gz"
+ pypi = "humanize/humanize-0.5.1.tar.gz"
version('0.5.1', sha256='a43f57115831ac7c70de098e6ac46ac13be00d69abbf60bdcac251344785bb19')
depends_on('py-setuptools', type='build')
- depends_on('py-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-hvac/package.py b/var/spack/repos/builtin/packages/py-hvac/package.py
index 968fef45e6..6358045a0d 100644
--- a/var/spack/repos/builtin/packages/py-hvac/package.py
+++ b/var/spack/repos/builtin/packages/py-hvac/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-hyperframe/package.py b/var/spack/repos/builtin/packages/py-hyperframe/package.py
index 046a0b828c..065add01cb 100644
--- a/var/spack/repos/builtin/packages/py-hyperframe/package.py
+++ b/var/spack/repos/builtin/packages/py-hyperframe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyHyperframe(PythonPackage):
"""HTTP/2 framing layer for Python"""
homepage = "https://github.com/python-hyper/hyperframe/"
- url = "https://pypi.io/packages/source/h/hyperframe/hyperframe-6.0.0.tar.gz"
+ pypi = "hyperframe/hyperframe-6.0.0.tar.gz"
version('6.0.0', sha256='742d2a4bc3152a340a49d59f32e33ec420aa8e7054c1444ef5c7efff255842f1')
diff --git a/var/spack/repos/builtin/packages/py-hyperopt/package.py b/var/spack/repos/builtin/packages/py-hyperopt/package.py
new file mode 100644
index 0000000000..6cd8f64810
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-hyperopt/package.py
@@ -0,0 +1,35 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyHyperopt(PythonPackage):
+ """Hyperopt is a Python library for serial and parallel optimization over
+ awkward search spaces, which may include real-valued, discrete, and
+ conditional dimensions."""
+
+ homepage = "http://hyperopt.github.io/hyperopt/"
+ pypi = "hyperopt/hyperopt-0.2.5.tar.gz"
+
+ version('0.2.5', sha256='bc6047d50f956ae64eebcb34b1fd40f186a93e214957f20e87af2f10195295cc')
+
+ variant('spark', default=False, description="SparkTrials")
+ variant('mongo', default=False, description="MongoTrials")
+ variant('atpe', default=False, description="ATPE")
+
+ depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-networkx@2.2:', type=('build', 'run'))
+ depends_on('py-future', type=('build', 'run'))
+ depends_on('py-tqdm', type=('build', 'run'))
+ depends_on('py-cloudpickle', type=('build', 'run'))
+ depends_on('py-pyspark', when="+spark", type=('build', 'run'))
+ depends_on('py-pymongo', when="+mongo", type=('build', 'run'))
+ depends_on('py-scikit-learn', when="+atpe", type=('build', 'run'))
+ depends_on('py-lightgbm', when="+atpe", type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-hypothesis/package.py b/var/spack/repos/builtin/packages/py-hypothesis/package.py
index 79a39055d0..825e37e981 100644
--- a/var/spack/repos/builtin/packages/py-hypothesis/package.py
+++ b/var/spack/repos/builtin/packages/py-hypothesis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,7 @@ class PyHypothesis(PythonPackage):
"""A library for property based testing."""
homepage = "https://github.com/HypothesisWorks/hypothesis-python"
- url = "https://pypi.io/packages/source/h/hypothesis/hypothesis-4.41.2.tar.gz"
-
- import_modules = [
- 'hypothesis', 'hypothesis.searchstrategy', 'hypothesis.extra',
- 'hypothesis.utils', 'hypothesis.vendor', 'hypothesis.internal',
- 'hypothesis.internal.conjecture'
- ]
-
- # TODO: Add missing dependency required to import hypothesis.extra.django
+ pypi = "hypothesis/hypothesis-4.41.2.tar.gz"
version('5.3.0', sha256='c9fdb53fe3bf1f8e7dcca1a7dd6e430862502f088aca2903d141511212e79429')
version('4.57.1', sha256='3c4369a4b0a1348561048bcda5f1db951a1b8e2a514ea8e8c70d36e656bf6fa0')
diff --git a/var/spack/repos/builtin/packages/py-ics/package.py b/var/spack/repos/builtin/packages/py-ics/package.py
index c2c4a71346..db0df6608f 100644
--- a/var/spack/repos/builtin/packages/py-ics/package.py
+++ b/var/spack/repos/builtin/packages/py-ics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-identify/package.py b/var/spack/repos/builtin/packages/py-identify/package.py
index 3ffafe94d7..210a1550b7 100644
--- a/var/spack/repos/builtin/packages/py-identify/package.py
+++ b/var/spack/repos/builtin/packages/py-identify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyIdentify(PythonPackage):
standardized tags identifying what the file is."""
homepage = "https://github.com/chriskuehl/identify"
- url = "https://pypi.io/packages/source/i/identify/identify-1.4.7.tar.gz"
+ pypi = "identify/identify-1.4.7.tar.gz"
version('1.4.7', sha256='d8919589bd2a5f99c66302fec0ef9027b12ae150b0b0213999ad3f695fc7296e')
diff --git a/var/spack/repos/builtin/packages/py-idna-ssl/package.py b/var/spack/repos/builtin/packages/py-idna-ssl/package.py
index 273cdd9bc5..c79d2b46b6 100644
--- a/var/spack/repos/builtin/packages/py-idna-ssl/package.py
+++ b/var/spack/repos/builtin/packages/py-idna-ssl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-idna/package.py b/var/spack/repos/builtin/packages/py-idna/package.py
index 95498e38a6..619d8894b9 100644
--- a/var/spack/repos/builtin/packages/py-idna/package.py
+++ b/var/spack/repos/builtin/packages/py-idna/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyIdna(PythonPackage):
"""Internationalized Domain Names for Python (IDNA 2008 and UTS #46) """
homepage = "https://github.com/kjd/idna"
- url = "https://pypi.io/packages/source/i/idna/idna-2.8.tar.gz"
+ pypi = "idna/idna-2.8.tar.gz"
version('2.8', sha256='c357b3f628cf53ae2c4c05627ecc484553142ca23264e593d327bcde5e9c3407')
version('2.5', sha256='3cb5ce08046c4e3a560fc02f138d0ac63e00f8ce5901a56b32ec8b7994082aab')
diff --git a/var/spack/repos/builtin/packages/py-illumina-utils/package.py b/var/spack/repos/builtin/packages/py-illumina-utils/package.py
index 081b14163a..f978230888 100644
--- a/var/spack/repos/builtin/packages/py-illumina-utils/package.py
+++ b/var/spack/repos/builtin/packages/py-illumina-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyIlluminaUtils(PythonPackage):
data (for CASAVA 1.8+)."""
homepage = "https://github.com/meren/illumina-utils"
- url = "https://pypi.io/packages/source/i/illumina-utils/illumina-utils-2.2.tar.gz"
+ pypi = "illumina-utils/illumina-utils-2.2.tar.gz"
version('2.3', sha256='0e8407b91d530d9a53d8ec3c83e60f25e7f8f80d06ce17b8e4f57a02d3262441')
version('2.2', sha256='6039c72d077c101710fe4fdbfeaa30caa1c3c2c84ffa6295456927d82def8e6d')
diff --git a/var/spack/repos/builtin/packages/py-ilmbase/package.py b/var/spack/repos/builtin/packages/py-ilmbase/package.py
new file mode 100644
index 0000000000..97e5246249
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ilmbase/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyIlmbase(AutotoolsPackage):
+ """The PyIlmBase libraries provides python bindings for the IlmBase libraries."""
+
+ homepage = "https://github.com/AcademySoftwareFoundation/openexr/tree/v2.3.0/PyIlmBase"
+ url = "https://github.com/AcademySoftwareFoundation/openexr/releases/download/v2.3.0/pyilmbase-2.3.0.tar.gz"
+
+ version('2.3.0', sha256='9c898bb16e7bc916c82bebdf32c343c0f2878fc3eacbafa49937e78f2079a425')
+
+ depends_on('ilmbase')
+ depends_on('boost+python')
+
+ # https://github.com/AcademySoftwareFoundation/openexr/issues/336
+ parallel = False
+
+ def configure_args(self):
+ spec = self.spec
+
+ args = [
+ '--with-boost-python-libname=boost_python{0}'.format(
+ spec['python'].version.up_to(2).joined)
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/py-imageio-ffmpeg/package.py b/var/spack/repos/builtin/packages/py-imageio-ffmpeg/package.py
new file mode 100644
index 0000000000..b7c51db642
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-imageio-ffmpeg/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyImageioFfmpeg(PythonPackage):
+ """The purpose of this project is to provide a simple and
+ reliable ffmpeg wrapper for working with video files. It
+ implements two simple generator functions for reading and
+ writing data from/to ffmpeg, which reliably terminate the
+ ffmpeg process when done. It also takes care of publishing
+ platform-specific wheels that include the binary ffmpeg
+ executables."""
+
+ homepage = "https://github.com/imageio/imageio-ffmpeg"
+ pypi = "imageio-ffmpeg/imageio-ffmpeg-0.4.3.tar.gz"
+
+ version('0.4.3', sha256='f826260a3207b872f1a4ba87ec0c8e02c00afba4fd03348a59049bdd8215841e')
+
+ depends_on('python@3.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('ffmpeg', type='run')
diff --git a/var/spack/repos/builtin/packages/py-imageio/package.py b/var/spack/repos/builtin/packages/py-imageio/package.py
index 8dd09b1f3f..e49849ab10 100644
--- a/var/spack/repos/builtin/packages/py-imageio/package.py
+++ b/var/spack/repos/builtin/packages/py-imageio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,9 @@ class PyImageio(PythonPackage):
cross-platform, runs on Python 2.7 and 3.4+, and is easy to install."""
homepage = "http://imageio.github.io/"
- url = "https://pypi.io/packages/source/i/imageio/imageio-2.3.0.tar.gz"
+ pypi = "imageio/imageio-2.3.0.tar.gz"
+ version('2.9.0', sha256='52ddbaeca2dccf53ba2d6dec5676ca7bc3b2403ef8b37f7da78b7654bb3e10f0')
version('2.5.0', sha256='42e65aadfc3d57a1043615c92bdf6319b67589e49a0aae2b985b82144aceacad')
version('2.4.1', sha256='16b8077bc8a5fa7a58b3e744f7ecbb156d8c088132df31e0f4f546c98de3514a')
version('2.3.0', sha256='c4fd5183c342d47fdc2e98552d14e3f24386021bbc3efedd1e3b579d7d249c07')
@@ -24,6 +25,7 @@ class PyImageio(PythonPackage):
# Fix for python 2 if needed.
depends_on('py-numpy', type=('build', 'run'))
depends_on('pil', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'), when='@:2.5.0')
+ depends_on('python@3.5:', type=('build', 'run'), when='@2.9.0:')
depends_on('py-setuptools', type='build')
depends_on('ffmpeg', type='run')
diff --git a/var/spack/repos/builtin/packages/py-imagesize/package.py b/var/spack/repos/builtin/packages/py-imagesize/package.py
index e9f2033413..78b4fe8477 100644
--- a/var/spack/repos/builtin/packages/py-imagesize/package.py
+++ b/var/spack/repos/builtin/packages/py-imagesize/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,7 @@ class PyImagesize(PythonPackage):
JPEG2000, and GIF image file formats."""
homepage = "https://github.com/shibukawa/imagesize_py"
- url = "https://pypi.io/packages/source/i/imagesize/imagesize-0.7.1.tar.gz"
-
- import_modules = ['imagesize']
+ pypi = "imagesize/imagesize-0.7.1.tar.gz"
version('1.1.0', sha256='f3832918bc3c66617f92e35f5d70729187676313caa60c187eb0f28b8fe5e3b5')
version('0.7.1', sha256='0ab2c62b87987e3252f89d30b7cedbec12a01af9274af9ffa48108f2c13c6062')
diff --git a/var/spack/repos/builtin/packages/py-iminuit/package.py b/var/spack/repos/builtin/packages/py-iminuit/package.py
index e9ec1b73bf..787cf7e2fe 100644
--- a/var/spack/repos/builtin/packages/py-iminuit/package.py
+++ b/var/spack/repos/builtin/packages/py-iminuit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,18 +9,13 @@ from spack import *
class PyIminuit(PythonPackage):
"""Interactive IPython-Friendly Minimizer based on SEAL Minuit2."""
- homepage = "https://pypi.python.org/pypi/iminuit"
- url = "https://pypi.io/packages/source/i/iminuit/iminuit-1.2.tar.gz"
+ pypi = "iminuit/iminuit-1.2.tar.gz"
+ version('1.3.7', sha256='9173e52cc4a0c0bda13ebfb862f9b074dc5de345b23cb15c1150863aafd8a26c')
version('1.3.6', sha256='d79a197f305d4708a0e3e52b0a6748c1a6997360d2fbdfd09c022995a6963b5e')
version('1.2', sha256='7651105fc3f186cfb5742f075ffebcc5088bf7797d8ed124c00977eebe0d1c64')
# Required dependencies
depends_on('py-setuptools', type='build')
- depends_on('py-numpy', type=('build', 'run'), when='@1.3:')
-
- # Optional dependencies
- depends_on('py-matplotlib', type='test', when='@1.3:')
- depends_on('py-cython', type='test', when='@1.3:')
- depends_on('py-pytest', type='test', when='@1.3:')
- depends_on('py-scipy', type='test', when='@1.3:')
+ depends_on('py-numpy', type=('build', 'run'), when='@1.3:1.3.6')
+ depends_on('py-numpy@1.11.3:', type=('build', 'run'), when='@1.3.7:')
diff --git a/var/spack/repos/builtin/packages/py-immutables/package.py b/var/spack/repos/builtin/packages/py-immutables/package.py
index 24a92efc3c..85199833fd 100644
--- a/var/spack/repos/builtin/packages/py-immutables/package.py
+++ b/var/spack/repos/builtin/packages/py-immutables/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyImmutables(PythonPackage):
"""An immutable mapping type for Python."""
homepage = "https://github.com/MagicStack/immutables"
- url = "https://pypi.io/packages/source/i/immutables/immutables-0.14.tar.gz"
+ pypi = "immutables/immutables-0.14.tar.gz"
version('0.14', sha256='a0a1cc238b678455145bae291d8426f732f5255537ed6a5b7645949704c70a78')
diff --git a/var/spack/repos/builtin/packages/py-importlib-metadata/package.py b/var/spack/repos/builtin/packages/py-importlib-metadata/package.py
index f22a812605..8e0b429d3e 100644
--- a/var/spack/repos/builtin/packages/py-importlib-metadata/package.py
+++ b/var/spack/repos/builtin/packages/py-importlib-metadata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,20 +10,22 @@ class PyImportlibMetadata(PythonPackage):
"""Read metadata from Python packages."""
homepage = "https://importlib-metadata.readthedocs.io/"
- url = "https://pypi.io/packages/source/i/importlib_metadata/importlib_metadata-1.2.0.tar.gz"
+ pypi = "importlib_metadata/importlib_metadata-1.2.0.tar.gz"
+ version('3.10.0', sha256='c9db46394197244adf2f0b08ec5bc3cf16757e9590b02af1fca085c16c0d600a')
version('2.0.0', sha256='77a540690e24b0305878c37ffd421785a6f7e53c8b5720d211b211de8d0e95da')
version('1.2.0', sha256='41e688146d000891f32b1669e8573c57e39e5060e7f5f647aa617cd9a9568278')
version('0.23', sha256='aa18d7378b00b40847790e7c27e11673d7fed219354109d0e7b9e5b25dc3ad26')
version('0.19', sha256='23d3d873e008a513952355379d93cbcab874c58f4f034ff657c7a87422fa64e8')
version('0.18', sha256='cb6ee23b46173539939964df59d3d72c3e0c1b5d54b84f1d8a7e912fe43612db')
+ depends_on('python@3.6:', type=('build', 'run'), when='@3:')
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-setuptools-scm', type='build')
+ depends_on('py-setuptools-scm@3.4.1:+toml', type='build', when='@3:')
depends_on('py-zipp@0.5:', type=('build', 'run'))
depends_on('py-pathlib2', when='^python@:2', type=('build', 'run'))
depends_on('py-contextlib2', when='^python@:2', type=('build', 'run'))
depends_on('py-configparser@3.5:', when='^python@:2', type=('build', 'run'))
- depends_on('py-importlib-resources', when='^python@:3.6', type='test')
- depends_on('py-packaging', type='test')
+ depends_on('py-typing-extensions@3.6.4:', type=('build', 'run'), when='@3: ^python@:3.7.999')
diff --git a/var/spack/repos/builtin/packages/py-importlib-resources/package.py b/var/spack/repos/builtin/packages/py-importlib-resources/package.py
index 4c0a6e1243..9f80b56bca 100644
--- a/var/spack/repos/builtin/packages/py-importlib-resources/package.py
+++ b/var/spack/repos/builtin/packages/py-importlib-resources/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,14 +9,17 @@ from spack import *
class PyImportlibResources(PythonPackage):
"""Read resources from Python packages"""
- homepage = "https://pypi.org/project/importlib_resources/"
- url = "https://pypi.io/packages/source/i/importlib_resources/importlib_resources-1.0.2.tar.gz"
+ pypi = "importlib_resources/importlib_resources-1.0.2.tar.gz"
+ version('5.1.0', sha256='bfdad047bce441405a49cf8eb48ddce5e56c696e185f59147a8b79e75e9e6380')
version('1.0.2', sha256='d3279fd0f6f847cced9f7acc19bd3e5df54d34f93a2e7bb5f238f81545787078')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('python@3.6:', when='@5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-wheel', type='build')
+ depends_on('py-setuptools-scm@3.4.1:+toml', when='@5:', type='build')
+ depends_on('py-zipp@0.4:', when='@5:', type=('build', 'run'))
+ depends_on('py-wheel', when='@1.0.2', type='build')
depends_on('py-pathlib2', when='^python@:2', type=('build', 'run'))
depends_on('py-typing', when='^python@:3.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-importlib/package.py b/var/spack/repos/builtin/packages/py-importlib/package.py
index 723eb00c05..e56a2ee537 100644
--- a/var/spack/repos/builtin/packages/py-importlib/package.py
+++ b/var/spack/repos/builtin/packages/py-importlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,8 @@ class PyImportlib(PythonPackage):
"""Packaging for importlib from Python 2.7"""
homepage = "https://github.com/brettcannon/importlib"
- url = "https://pypi.io/packages/source/i/importlib/importlib-1.0.4.zip"
+ pypi = "importlib/importlib-1.0.4.zip"
version('1.0.4', sha256='b6ee7066fea66e35f8d0acee24d98006de1a0a8a94a8ce6efe73a9a23c8d9826')
+
+ depends_on('python@:2.6.999,3.0.0:3.0.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-inference-schema/package.py b/var/spack/repos/builtin/packages/py-inference-schema/package.py
index 5d9795145e..b807709689 100644
--- a/var/spack/repos/builtin/packages/py-inference-schema/package.py
+++ b/var/spack/repos/builtin/packages/py-inference-schema/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-inheritance/package.py b/var/spack/repos/builtin/packages/py-inheritance/package.py
index 1620794a7b..f6bcc6ea3a 100644
--- a/var/spack/repos/builtin/packages/py-inheritance/package.py
+++ b/var/spack/repos/builtin/packages/py-inheritance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-iniconfig/package.py b/var/spack/repos/builtin/packages/py-iniconfig/package.py
new file mode 100644
index 0000000000..e658aba1d6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-iniconfig/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyIniconfig(PythonPackage):
+ """
+ iniconfig: brain-dead simple parsing of ini files
+ """
+
+ pypi = "iniconfig/iniconfig-1.1.1.tar.gz"
+
+ version('1.1.1', sha256='bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-iniparse/package.py b/var/spack/repos/builtin/packages/py-iniparse/package.py
index f8083f0c5f..945d1a030a 100644
--- a/var/spack/repos/builtin/packages/py-iniparse/package.py
+++ b/var/spack/repos/builtin/packages/py-iniparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyIniparse(PythonPackage):
"""Accessing and Modifying INI files"""
homepage = "https://github.com/candlepin/python-iniparse"
- url = "https://pypi.io/packages/source/i/iniparse/iniparse-0.4.tar.gz"
+ pypi = "iniparse/iniparse-0.4.tar.gz"
git = "https://github.com/candlepin/python-iniparse.git"
version('master', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-intel-openmp/package.py b/var/spack/repos/builtin/packages/py-intel-openmp/package.py
new file mode 100644
index 0000000000..efc942cb4d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-intel-openmp/package.py
@@ -0,0 +1,36 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import sys
+from spack import *
+
+
+class PyIntelOpenmp(Package):
+ """Intel OpenMP* Runtime Library x86_64 dynamic libraries
+ for macOS*. Intel OpenMP* Runtime Library provides OpenMP
+ API specification support in Intel C Compiler, Intel C++
+ Compiler and Intel Fortran Compiler. It helps to improve
+ performance by creating multithreaded software using shared
+ memory and running on multi-core processor systems."""
+
+ homepage = "https://pypi.org/project/intel-openmp/"
+
+ if sys.platform.startswith('linux'):
+ version('2021.1.2',
+ url='https://pypi.io/packages/py2.py3/i/intel-openmp/intel_openmp-2021.1.2-py2.py3-none-manylinux1_x86_64.whl',
+ sha256='8796797ecae99f39b27065e4a7f1f435e2ca08afba654ca57a77a2717f864dca',
+ expand=False)
+
+ if sys.platform.startswith('darwin'):
+ version('2021.1.2',
+ url='https://pypi.io/packages/py2.py3/i/intel-openmp/intel_openmp-2021.1.2-py2.py3-none-macosx_10_15_x86_64.whl',
+ sha256='2af893738b4b06cb0183746f2992169111031340b59c84a0fd4dec1ed66b80f2',
+ expand=False)
+
+ depends_on('py-pip', type='build')
+
+ def install(self, spec, prefix):
+ pip = which('pip')
+ pip('install', self.stage.archive_file, '--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/py-intervaltree/package.py b/var/spack/repos/builtin/packages/py-intervaltree/package.py
index f5d4501dd7..333d3de4e7 100644
--- a/var/spack/repos/builtin/packages/py-intervaltree/package.py
+++ b/var/spack/repos/builtin/packages/py-intervaltree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,5 +15,4 @@ class PyIntervaltree(PythonPackage):
version('3.0.2', sha256='e8ab75b66077f2e5fb85ac56cb6df834689edb048d38601d53d8867cce3b77d1')
depends_on('py-sortedcontainers@2:2.999', type=('build', 'run'))
- depends_on('py-pytest', type='test')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-invoke/package.py b/var/spack/repos/builtin/packages/py-invoke/package.py
index 29414d5fbc..1b98a89008 100644
--- a/var/spack/repos/builtin/packages/py-invoke/package.py
+++ b/var/spack/repos/builtin/packages/py-invoke/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyInvoke(PythonPackage):
"""Pythonic task execution"""
homepage = "http://www.pyinvoke.org/"
- url = "https://pypi.io/packages/source/i/invoke/invoke-1.4.1.tar.gz"
+ pypi = "invoke/invoke-1.4.1.tar.gz"
version('1.4.1', sha256='de3f23bfe669e3db1085789fd859eb8ca8e0c5d9c20811e2407fa042e8a5e15d')
version('1.2.0', sha256='dc492f8f17a0746e92081aec3f86ae0b4750bf41607ea2ad87e5a7b5705121b7')
diff --git a/var/spack/repos/builtin/packages/py-iocapture/package.py b/var/spack/repos/builtin/packages/py-iocapture/package.py
new file mode 100644
index 0000000000..59e7ac23f7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-iocapture/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyIocapture(PythonPackage):
+ """Capture stdout, stderr easily."""
+
+ homepage = "https://github.com/oinume/iocapture"
+ pypi = "iocapture/iocapture-0.1.2.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('0.1.2', sha256='86670e1808bcdcd4f70112f43da72ae766f04cd8311d1071ce6e0e0a72e37ee8')
+
+ depends_on('python@2.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-ipaddress/package.py b/var/spack/repos/builtin/packages/py-ipaddress/package.py
index 142bddd5fe..4b8aa5dc38 100644
--- a/var/spack/repos/builtin/packages/py-ipaddress/package.py
+++ b/var/spack/repos/builtin/packages/py-ipaddress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyIpaddress(PythonPackage):
"""Python 3.3's ipaddress for older Python versions"""
homepage = "https://github.com/phihag/ipaddress"
- url = "https://pypi.io/packages/source/i/ipaddress/ipaddress-1.0.23.tar.gz"
+ pypi = "ipaddress/ipaddress-1.0.23.tar.gz"
version('1.0.23', sha256='b7f8e0369580bb4a24d5ba1d7cc29660a4a6987763faf1d8a8046830e020e7e2')
version('1.0.22', sha256='b146c751ea45cad6188dd6cf2d9b757f6f4f8d6ffb96a023e6f2e26eea02a72c')
diff --git a/var/spack/repos/builtin/packages/py-ipdb/package.py b/var/spack/repos/builtin/packages/py-ipdb/package.py
index 81c4bfb705..f47c041be4 100644
--- a/var/spack/repos/builtin/packages/py-ipdb/package.py
+++ b/var/spack/repos/builtin/packages/py-ipdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyIpdb(PythonPackage):
"""ipdb is the iPython debugger and has many additional features, including
a better interactive debugging experience via colorized output."""
- homepage = "https://pypi.python.org/pypi/ipdb"
- url = "https://pypi.io/packages/source/i/ipdb/ipdb-0.10.1.tar.gz"
+ pypi = "ipdb/ipdb-0.10.1.tar.gz"
version('0.10.1', sha256='bb2948e726dbfb2687f4a582088b3f170b2556ba8e54ae1231c783c97e99ec87')
diff --git a/var/spack/repos/builtin/packages/py-ipykernel/package.py b/var/spack/repos/builtin/packages/py-ipykernel/package.py
index 1428f7d804..3d3d98530b 100644
--- a/var/spack/repos/builtin/packages/py-ipykernel/package.py
+++ b/var/spack/repos/builtin/packages/py-ipykernel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,8 +7,7 @@
class PyIpykernel(PythonPackage):
"""IPython Kernel for Jupyter"""
- homepage = "https://pypi.python.org/pypi/ipykernel"
- url = "https://pypi.io/packages/source/i/ipykernel/ipykernel-5.3.4.tar.gz"
+ pypi = "ipykernel/ipykernel-5.3.4.tar.gz"
version('5.3.4', sha256='9b2652af1607986a1b231c62302d070bc0534f564c393a5d9d130db9abbbe89d')
version('5.1.1', sha256='f0e962052718068ad3b1d8bcc703794660858f58803c3798628817f492a8769c')
@@ -36,10 +35,6 @@ class PyIpykernel(PythonPackage):
depends_on('py-tornado@4.0:', when='@:4.999', type=('build', 'run'))
depends_on('py-tornado@4.2:', when='@5.0.0:', type=('build', 'run'))
depends_on('py-appnope', when='platform=darwin', type=('build', 'run'))
- depends_on('py-pytest@:5.3.3,5.3.5:', type='test')
- depends_on('py-pytest-cov', type='test')
- # depends_on('py-flaky', type='test')
- depends_on('py-nose', type='test')
phases = ['build', 'install', 'install_data']
diff --git a/var/spack/repos/builtin/packages/py-ipyparallel/package.py b/var/spack/repos/builtin/packages/py-ipyparallel/package.py
index f208ac646a..9644a11939 100644
--- a/var/spack/repos/builtin/packages/py-ipyparallel/package.py
+++ b/var/spack/repos/builtin/packages/py-ipyparallel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-ipython-cluster-helper/package.py b/var/spack/repos/builtin/packages/py-ipython-cluster-helper/package.py
index b2555cabe2..02f2a1e563 100644
--- a/var/spack/repos/builtin/packages/py-ipython-cluster-helper/package.py
+++ b/var/spack/repos/builtin/packages/py-ipython-cluster-helper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-ipython-genutils/package.py b/var/spack/repos/builtin/packages/py-ipython-genutils/package.py
index b6a5d66085..b91e3fd3e2 100644
--- a/var/spack/repos/builtin/packages/py-ipython-genutils/package.py
+++ b/var/spack/repos/builtin/packages/py-ipython-genutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyIpythonGenutils(PythonPackage):
"""Vestigial utilities from IPython"""
- homepage = "https://pypi.python.org/pypi/ipython_genutils"
- url = "https://pypi.io/packages/source/i/ipython_genutils/ipython_genutils-0.1.0.tar.gz"
+ pypi = "ipython_genutils/ipython_genutils-0.1.0.tar.gz"
version('0.2.0', sha256='eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8')
version('0.1.0', sha256='3a0624a251a26463c9dfa0ffa635ec51c4265380980d9a50d65611c3c2bd82a6')
diff --git a/var/spack/repos/builtin/packages/py-ipython/package.py b/var/spack/repos/builtin/packages/py-ipython/package.py
index 2f10a7dddf..e889a1ff80 100644
--- a/var/spack/repos/builtin/packages/py-ipython/package.py
+++ b/var/spack/repos/builtin/packages/py-ipython/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,9 +8,20 @@ class PyIpython(PythonPackage):
"""IPython provides a rich toolkit to help you make the most out of using
Python interactively."""
- homepage = "https://pypi.python.org/pypi/ipython"
- url = "https://pypi.io/packages/source/i/ipython/ipython-7.18.1.tar.gz"
+ pypi = "ipython/ipython-7.18.1.tar.gz"
+ # IPython.kernel is deprecated and fails to import
+ import_modules = [
+ 'IPython', 'IPython.core', 'IPython.core.tests', 'IPython.core.magics',
+ 'IPython.sphinxext', 'IPython.terminal',
+ 'IPython.terminal.pt_inputhooks', 'IPython.terminal.tests',
+ 'IPython.utils', 'IPython.utils.tests', 'IPython.extensions',
+ 'IPython.extensions.tests', 'IPython.testing', 'IPython.testing.tests',
+ 'IPython.testing.plugin', 'IPython.lib', 'IPython.lib.tests',
+ 'IPython.external', 'IPython.external.decorators'
+ ]
+
+ version('7.21.0', sha256='04323f72d5b85b606330b6d7e2dc8d2683ad46c3905e955aa96ecc7a99388e70')
version('7.18.1', sha256='a331e78086001931de9424940699691ad49dfb457cea31f5471eae7b78222d5e')
version('7.5.0', sha256='e840810029224b56cd0d9e7719dc3b39cf84d577f8ac686547c8ba7a06eeab26')
version('7.3.0', sha256='06de667a9e406924f97781bda22d5d76bfb39762b678762d86a466e63f65dc39')
@@ -26,13 +37,15 @@ class PyIpython(PythonPackage):
depends_on('python@2.7:2.8,3.3:', type=('build', 'run'))
depends_on('py-setuptools@18.5:', type='run', when='@4.1:')
depends_on('py-jedi@0.10:', type=('build', 'run'), when='@7.5.0:')
+ depends_on('py-jedi@:0.17', type=('build', 'run'), when='@:7.18') # from release notes
+ depends_on('py-jedi@0.16:', type=('build', 'run'), when='@7.18:')
depends_on('py-decorator', type=('build', 'run'))
depends_on('py-pickleshare', type=('build', 'run'))
depends_on('py-traitlets@4.2:', type=('build', 'run'))
depends_on('py-prompt-toolkit@1.0.4:1.999', when='@:7.0.0', type=('build', 'run'))
- depends_on('py-prompt-toolkit@2.0.0:2.999', when='@7.0.0:', type=('build', 'run'))
+ depends_on('py-prompt-toolkit@2.0.0:2.999', when='@7.0.0:7.5.0', type=('build', 'run'))
depends_on('py-prompt-toolkit@2.0.0:2.0.999', when='@7.5.0', type=('build', 'run'))
- depends_on('py-prompt-toolkit@2.0.0:2.999,3.0.2:3.0.999', when='@7.18:', type=('build', 'run'))
+ depends_on('py-prompt-toolkit@3.0.2:3.0.999', when='@7.18:', type=('build', 'run'))
depends_on('py-pygments', type=('build', 'run'))
depends_on('py-backcall', type=('build', 'run'), when='@7.5.0:')
depends_on('py-pexpect', type=('build', 'run'))
@@ -41,9 +54,3 @@ class PyIpython(PythonPackage):
depends_on('py-backports-shutil-get-terminal-size', type=('build', 'run'), when="^python@:3.2")
depends_on('py-pathlib2', type=('build', 'run'), when="^python@:3.3")
depends_on('py-simplegeneric@0.8:', type=('build', 'run'), when='@:7.0.0')
- depends_on('py-nose@0.10.1:', type='test')
- depends_on('py-requests', type='test')
- depends_on('py-testpath', type='test')
- depends_on('py-nbformat', type='test')
- depends_on('py-ipykernel', type='test')
- depends_on('py-numpy@1.14:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-ipywidgets/package.py b/var/spack/repos/builtin/packages/py-ipywidgets/package.py
index 11b0989069..3936363119 100644
--- a/var/spack/repos/builtin/packages/py-ipywidgets/package.py
+++ b/var/spack/repos/builtin/packages/py-ipywidgets/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -30,5 +30,3 @@ class PyIpywidgets(PythonPackage):
when='@7.4.2')
depends_on('py-widgetsnbextension@3.5.0:3.5.999', type=('build', 'run'),
when='@7.5.1')
- depends_on('py-mock', type='test', when='^python@2.7:2.8')
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-irpf90/package.py b/var/spack/repos/builtin/packages/py-irpf90/package.py
index ffab335699..a4e6d6e9ce 100644
--- a/var/spack/repos/builtin/packages/py-irpf90/package.py
+++ b/var/spack/repos/builtin/packages/py-irpf90/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyIrpf90(PythonPackage):
performance computing."""
homepage = "http://irpf90.ups-tlse.fr"
- url = "https://pypi.io/packages/source/i/irpf90/irpf90-1.7.7.tar.gz"
+ pypi = "irpf90/irpf90-1.7.7.tar.gz"
maintainers = ['scemama']
diff --git a/var/spack/repos/builtin/packages/py-isodate/package.py b/var/spack/repos/builtin/packages/py-isodate/package.py
index bac6f2b44d..e2bf62fad2 100644
--- a/var/spack/repos/builtin/packages/py-isodate/package.py
+++ b/var/spack/repos/builtin/packages/py-isodate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyIsodate(PythonPackage):
there, then it is treated as non existent, and not as an allowed option."""
homepage = "https://github.com/gweis/isodate/"
- url = "https://pypi.io/packages/source/i/isodate/isodate-0.6.0.tar.gz"
+ pypi = "isodate/isodate-0.6.0.tar.gz"
version('0.6.0', sha256='2e364a3d5759479cdb2d37cce6b9376ea504db2ff90252a2e5b7cc89cc9ff2d8')
diff --git a/var/spack/repos/builtin/packages/py-isort/package.py b/var/spack/repos/builtin/packages/py-isort/package.py
index 1446f70979..9eedf82418 100644
--- a/var/spack/repos/builtin/packages/py-isort/package.py
+++ b/var/spack/repos/builtin/packages/py-isort/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,14 +10,12 @@ class PyIsort(PythonPackage):
"""A Python utility / library to sort Python imports."""
homepage = "https://github.com/timothycrosley/isort"
- url = "https://pypi.io/packages/source/i/isort/isort-4.2.15.tar.gz"
+ pypi = "isort/isort-4.2.15.tar.gz"
version('4.3.20', sha256='c40744b6bc5162bbb39c1257fe298b7a393861d50978b565f3ccd9cb9de0182a')
version('4.2.15', sha256='79f46172d3a4e2e53e7016e663cc7a8b538bec525c36675fcfd2767df30b3983')
depends_on('py-setuptools', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-mock', type='test')
depends_on('python@2.6:2.8,3.3:', type=('build', 'run'))
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'), when='@4.3.0:')
depends_on('py-futures', type=('build', 'run'), when='@4.3.0: ^python@:3.1')
diff --git a/var/spack/repos/builtin/packages/py-itk/package.py b/var/spack/repos/builtin/packages/py-itk/package.py
new file mode 100644
index 0000000000..48e3e17caf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-itk/package.py
@@ -0,0 +1,106 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import sys
+import archspec
+
+from spack import *
+
+
+class PyItk(Package):
+ """ITK is an open-source toolkit for multidimensional image analysis"""
+
+ homepage = "https://itk.org/"
+
+ if sys.platform == 'darwin':
+ # version 5.1.1
+ version('5.1.1-cp35',
+ url='https://pypi.io/packages/cp35/i/itk/itk-5.1.1-cp35-cp35m-macosx_10_9_x86_64.whl',
+ sha256='e94d08a142b72b7219c828e7ca34788b59612fc10dbb2c65afd4457e9810eed1',
+ expand=False)
+ version('5.1.1-cp36',
+ url='https://pypi.io/packages/cp35/i/itk/itk-5.1.1-cp36-cp36m-macosx_10_9_x86_64.whl',
+ sha256='94b3c8d2ceba1685ae7e7f2b3bb88bdcd15dee93d369177eb03f676062f7e06f',
+ expand=False)
+ version('5.1.1-cp37',
+ url='https://pypi.io/packages/cp35/i/itk/itk-5.1.1-cp37-cp37m-macosx_10_9_x86_64.whl',
+ sha256='f112515483a073fae96d5cfce4eb9f95cbf57a145bbd196b2369a3194e27febf',
+ expand=False)
+ version('5.1.1-cp38',
+ url='https://pypi.io/packages/cp35/i/itk/itk-5.1.1-cp38-cp38-macosx_10_9_x86_64.whl',
+ sha256='94b09ab9dd59ceaecc456ede2b719a44b8f0d54d92409eede372c6004395ae7b',
+ expand=False)
+ # version 5.1.2
+ version('5.1.2-cp36',
+ url='https://pypi.io/packages/cp36/i/itk/itk-5.1.2-cp36-cp36m-macosx_10_9_x86_64.whl',
+ sha256='d66f5369768e9449c1bd07210a42e11c565602da1dde3128f554b653a2faaf7b',
+ expand=False)
+ version('5.1.2-cp37',
+ url='https://pypi.io/packages/cp37/i/itk/itk-5.1.2-cp37-cp37m-macosx_10_9_x86_64.whl',
+ sha256='0b494485d05306240eaa5ab1a5e00895fcce8fe684c632c02a2373f36d123902',
+ expand=False)
+ version('5.1.2-cp38',
+ url='https://pypi.io/packages/cp38/i/itk/itk-5.1.2-cp38-cp38-macosx_10_9_x86_64.whl',
+ sha256='e8dec75b4452bd2ee65beb4901b245fc3a2a2ccc46dfa008ae0b5b757718d458',
+ expand=False)
+ version('5.1.2-cp39',
+ url='https://pypi.io/packages/cp39/i/itk/itk-5.1.2-cp39-cp39-macosx_10_9_x86_64.whl',
+ sha256='e8dec75b4452bd2ee65beb4901b245fc3a2a2ccc46dfa008ae0b5b757718d458',
+ expand=False)
+ elif sys.platform.startswith('linux'):
+ # version 5.1.1
+ version('5.1.1-cp35',
+ url='https://pypi.io/packages/cp35/i/itk/itk-5.1.1-cp35-cp35m-manylinux1_x86_64.whl',
+ sha256='02ba37cda1f4190ca34133e056f9acd5c0104da64455dc9e0cc6bb3eec47f7a6',
+ expand=False)
+ version('5.1.1-cp36',
+ url='https://pypi.io/packages/cp36/i/itk/itk-5.1.1-cp36-cp36m-manylinux1_x86_64.whl',
+ sha256='a7602fe2ee031bf70acf54e1aef6e0e01e9fa821ca1926fc70fe3db9167a50f2',
+ expand=False)
+ version('5.1.1-cp37',
+ url='https://pypi.io/packages/cp37/i/itk/itk-5.1.1-cp37-cp37m-manylinux1_x86_64.whl',
+ sha256='7c313d2e3a3e37b8e78d0b2d70be2d478c87fde6f27912c714c855a05584b8ee',
+ expand=False)
+ version('5.1.1-cp38',
+ url='https://pypi.io/packages/cp38/i/itk/itk-5.1.1-cp38-cp38-manylinux1_x86_64.whl',
+ sha256='14cd6c3a25f0d69f45eda74b006eceeaf8e2b2fcbe7c343e49683edf97e0fb14',
+ expand=False)
+ # version 5.1.2
+ version('5.1.2-cp36',
+ url='https://pypi.io/packages/cp36/i/itk/itk-5.1.2-cp36-cp36m-manylinux1_x86_64.whl',
+ sha256='266e031a0656688b815dc60e9abd58e40ec37c9dcd25aa91634ed2b157ca974c',
+ expand=False)
+ version('5.1.2-cp37',
+ url='https://pypi.io/packages/cp37/i/itk/itk-5.1.2-cp37-cp37m-manylinux1_x86_64.whl',
+ sha256='064d9cfdd9547ae3ed850c35b989e0141c4bd434672bc2dd124248aab7bdf09a',
+ expand=False)
+ version('5.1.2-cp38',
+ url='https://pypi.io/packages/cp38/i/itk/itk-5.1.2-cp38-cp38-manylinux1_x86_64.whl',
+ sha256='fe9225ac353116f4000c0a3440bf151200beb4a65deec5b2e626edda5b498f16',
+ expand=False)
+ version('5.1.2-cp39',
+ url='https://pypi.io/packages/cp39/i/itk/itk-5.1.2-cp39-cp39-manylinux1_x86_64.whl',
+ sha256='5781b74410b7189a825c89d370411595e5e3d5dbb480201907f751f26698df83',
+ expand=False)
+
+ extends('python')
+ depends_on('py-pip', type='build')
+
+ depends_on('python@3.5.0:3.5.999', when='@5.1.1-cp35', type=('build', 'run'))
+ depends_on('python@3.6.0:3.6.999', when='@5.1.1-cp36,5.1.2-cp36', type=('build', 'run'))
+ depends_on('python@3.7.0:3.7.999', when='@5.1.1-cp37,5.1.2-cp37', type=('build', 'run'))
+ depends_on('python@3.8.0:3.8.999', when='@5.1.1-cp38,5.1.2-cp38', type=('build', 'run'))
+ depends_on('python@3.9.0:3.9.999', when='@5.1.2-cp39', type=('build', 'run'))
+
+ depends_on('itk@5.1.1', when='@5.1.1-cp35:5.1.1-cp39', type='run')
+ depends_on('itk@5.1.2', when='@5.1.2-cp35:5.1.2-cp39', type='run')
+
+ for t in set([str(x.family) for x in archspec.cpu.TARGETS.values()
+ if str(x.family) != 'x86_64']):
+ conflicts('target={0}:'.format(t), msg='py-itk is available x86_64 only')
+
+ def install(self, spec, prefix):
+ pip = which('pip')
+ pip('install', self.stage.archive_file, '--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/py-itsdangerous/package.py b/var/spack/repos/builtin/packages/py-itsdangerous/package.py
index 27278a879a..566850cee6 100644
--- a/var/spack/repos/builtin/packages/py-itsdangerous/package.py
+++ b/var/spack/repos/builtin/packages/py-itsdangerous/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyItsdangerous(PythonPackage):
"""Various helpers to pass trusted data to untrusted environments."""
homepage = "http://github.com/mitsuhiko/itsdangerous"
- url = "https://pypi.io/packages/source/i/itsdangerous/itsdangerous-1.1.0.tar.gz"
+ pypi = "itsdangerous/itsdangerous-1.1.0.tar.gz"
version('1.1.0', sha256='321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19')
version('0.24', sha256='cbb3fcf8d3e33df861709ecaf89d9e6629cff0a217bc2848f1b41cd30d360519')
diff --git a/var/spack/repos/builtin/packages/py-jaraco-functools/package.py b/var/spack/repos/builtin/packages/py-jaraco-functools/package.py
index 4b8af85094..52c85a5cea 100644
--- a/var/spack/repos/builtin/packages/py-jaraco-functools/package.py
+++ b/var/spack/repos/builtin/packages/py-jaraco-functools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyJaracoFunctools(PythonPackage):
"""Functools like those found in stdlib"""
homepage = "https://github.com/jaraco/jaraco.functools"
- url = "https://pypi.io/packages/source/j/jaraco.functools/jaraco.functools-2.0.tar.gz"
+ pypi = "jaraco.functools/jaraco.functools-2.0.tar.gz"
version(
'2.0', sha256='35ba944f52b1a7beee8843a5aa6752d1d5b79893eeb7770ea98be6b637bf9345')
diff --git a/var/spack/repos/builtin/packages/py-javaproperties/package.py b/var/spack/repos/builtin/packages/py-javaproperties/package.py
index 89358b1b67..d68bbd225a 100644
--- a/var/spack/repos/builtin/packages/py-javaproperties/package.py
+++ b/var/spack/repos/builtin/packages/py-javaproperties/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyJavaproperties(PythonPackage):
"""Read & write Java .properties files."""
homepage = "https://github.com/jwodder/javaproperties"
- url = "https://pypi.io/packages/source/j/javaproperties/javaproperties-0.7.0.tar.gz"
+ pypi = "javaproperties/javaproperties-0.7.0.tar.gz"
version('0.7.0', sha256='cf45b39fcbaeced1dfc0b7f2bda16e34fc0349116269e001dada42fd2e145d87')
version('0.5.1', sha256='2b0237b054af4d24c74f54734b7d997ca040209a1820e96fb4a82625f7bd40cf')
diff --git a/var/spack/repos/builtin/packages/py-jdatetime/package.py b/var/spack/repos/builtin/packages/py-jdatetime/package.py
index 1efdc373a5..fff18c8315 100644
--- a/var/spack/repos/builtin/packages/py-jdatetime/package.py
+++ b/var/spack/repos/builtin/packages/py-jdatetime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyJdatetime(PythonPackage):
"""jdatetime is Jalali implementation of Python's datetime module"""
homepage = "https://github.com/slashmili/python-jalali"
- url = "https://pypi.io/packages/source/j/jdatetime/jdatetime-3.6.2.tar.gz"
+ pypi = "jdatetime/jdatetime-3.6.2.tar.gz"
version('3.6.2', sha256='a589e35f0dab89283c1a3de9d70ed6cf657932aaed8e8ce1b0e5801aaab1da67')
diff --git a/var/spack/repos/builtin/packages/py-jdcal/package.py b/var/spack/repos/builtin/packages/py-jdcal/package.py
index 06e1eba505..852f136866 100644
--- a/var/spack/repos/builtin/packages/py-jdcal/package.py
+++ b/var/spack/repos/builtin/packages/py-jdcal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyJdcal(PythonPackage):
"""Julian dates from proleptic Gregorian and Julian calendars"""
homepage = "http://github.com/phn/jdcal"
- url = "https://pypi.io/packages/source/j/jdcal/jdcal-1.3.tar.gz"
+ pypi = "jdcal/jdcal-1.3.tar.gz"
version('1.3', sha256='b760160f8dc8cc51d17875c6b663fafe64be699e10ce34b6a95184b5aa0fdc9e')
version('1.2', sha256='5ebedb58b95ebabd30f56abef65139c6f69ec1687cf1d2f3a7c503f9a2cdfa4d')
diff --git a/var/spack/repos/builtin/packages/py-jedi/package.py b/var/spack/repos/builtin/packages/py-jedi/package.py
index 009b4c9d65..1c65e8e7d3 100644
--- a/var/spack/repos/builtin/packages/py-jedi/package.py
+++ b/var/spack/repos/builtin/packages/py-jedi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,19 +10,39 @@ class PyJedi(PythonPackage):
"""An autocompletion tool for Python that can be used for text editors."""
homepage = "https://github.com/davidhalter/jedi"
- url = "https://pypi.io/packages/source/j/jedi/jedi-0.9.0.tar.gz"
+ pypi = "jedi/jedi-0.9.0.tar.gz"
+ version('0.18.0', sha256='92550a404bad8afed881a137ec9a461fed49eca661414be45059329614ed0707')
+ version('0.17.2', sha256='08d43addcbd656ed07e929631f8071eec567092bf16f2c19fc7bc272a97a77ef')
+ version('0.17.1', sha256='807d5d4f96711a2bcfdd5dfa3b1ae6d09aa53832b182090b222b5efb81f52f63')
+ version('0.15.1', sha256='ba859c74fa3c966a22f2aeebe1b74ee27e2a462f56d3f5f7ca4a59af61bfe42e')
+ version('0.15.0', sha256='9f16cb00b2aee940df2efc1d7d7c848281fd16391536a3d4561f5aea49db1ee6')
+ version('0.14.1', sha256='53c850f1a7d3cfcd306cc513e2450a54bdf5cacd7604b74e42dd1f0758eaaf36')
+ version('0.14.0', sha256='49ccb782651bb6f7009810d17a3316f8867dde31654c750506970742e18b553d')
version('0.13.3', sha256='2bb0603e3506f708e792c7f4ad8fc2a7a9d9c2d292a358fbbd58da531695595b')
+ version('0.13.2', sha256='571702b5bd167911fe9036e5039ba67f820d6502832285cde8c881ab2b2149fd')
+ version('0.13.1', sha256='b7493f73a2febe0dc33d51c99b474547f7f6c0b2c8fb2b21f453eef204c12148')
+ version('0.13.0', sha256='e4db7a2e08980e48c6aec6588483629c81fdcf9b6d9e6a372b40ed7fec91f310')
+ version('0.12.1', sha256='b409ed0f6913a701ed474a614a3bb46e6953639033e31f769ca7581da5bd1ec1')
+ version('0.12.0', sha256='1972f694c6bc66a2fac8718299e2ab73011d653a6d8059790c3476d2353b99ad')
+ version('0.10.2', sha256='7abb618cac6470ebbd142e59c23daec5e6e063bfcecc8a43a037d2ab57276f4e')
+ version('0.10.1', sha256='2420daf6fd00e80caf1bc22903598b5bf5560c900113dcc120eaefc7b4d50e06')
# unfortunately pypi.io only offers a .whl for 0.10.0
version('0.10.0', sha256='d6a7344df9c80562c3f62199278004ccc7c5889be9f1a6aa5abde117ec085123',
- url='https://github.com/davidhalter/jedi/archive/v0.10.0.tar.gz')
+ url='https://github.com/davidhalter/jedi/archive/v0.10.0.tar.gz')
version('0.9.0', sha256='3b4c19fba31bdead9ab7350fb9fa7c914c59b0a807dcdd5c00a05feb85491d31')
depends_on('py-setuptools', type=('build', 'run'))
+
depends_on('python@2.6:2.8,3.2:', type=('build', 'run'), when='@0.9.0')
depends_on('python@2.6:2.8,3.3:', type=('build', 'run'), when='@0.10.0')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'), when='@0.13.3')
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'), when='@0.17.2')
+ depends_on('python@3.6:', type=('build', 'run'), when='@0.18.0')
+
depends_on('py-parso@0.1.0', type=('build', 'run'), when='@0.11.0')
depends_on('py-parso@0.1.1', type=('build', 'run'), when='@0.11.1')
depends_on('py-parso@0.2.0:', type=('build', 'run'), when='@0.12.0')
depends_on('py-parso@0.3.0:', type=('build', 'run'), when='@0.12.1:0.14.0')
+ depends_on('py-parso@0.7.0:0.7.99', type=('build', 'run'), when='@0.17.2')
+ depends_on('py-parso@0.8.0:0.8.99', type=('build', 'run'), when='@0.18.0')
diff --git a/var/spack/repos/builtin/packages/py-jeepney/package.py b/var/spack/repos/builtin/packages/py-jeepney/package.py
index c44cc4c3d5..d202a5e9f9 100644
--- a/var/spack/repos/builtin/packages/py-jeepney/package.py
+++ b/var/spack/repos/builtin/packages/py-jeepney/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyJeepney(PythonPackage):
"""Low-level, pure Python DBus protocol wrapper."""
homepage = "https://gitlab.com/takluyver/jeepney"
- url = "https://pypi.io/packages/source/j/jeepney/jeepney-0.4.3.tar.gz"
+ pypi = "jeepney/jeepney-0.4.3.tar.gz"
version('0.4.3', sha256='3479b861cc2b6407de5188695fa1a8d57e5072d7059322469b62628869b8e36e')
diff --git a/var/spack/repos/builtin/packages/py-jellyfish/package.py b/var/spack/repos/builtin/packages/py-jellyfish/package.py
index 6316162289..8a0aaf3ff1 100644
--- a/var/spack/repos/builtin/packages/py-jellyfish/package.py
+++ b/var/spack/repos/builtin/packages/py-jellyfish/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ from spack import *
class PyJellyfish(PythonPackage):
"""a library for doing approximate and phonetic matching of strings."""
- homepage = "https://pypi.org/project/jellyfish/"
- url = "https://pypi.io/packages/source/j/jellyfish/jellyfish-0.6.1.tar.gz"
+ pypi = "jellyfish/jellyfish-0.6.1.tar.gz"
version('0.6.1', sha256='5104e45a2b804b48a46a92a5e6d6e86830fe60ae83b1da32c867402c8f4c2094')
version('0.5.6', sha256='887a9a49d0caee913a883c3e7eb185f6260ebe2137562365be422d1316bd39c9')
diff --git a/var/spack/repos/builtin/packages/py-jinja2-time/package.py b/var/spack/repos/builtin/packages/py-jinja2-time/package.py
index df57e84129..411881a770 100644
--- a/var/spack/repos/builtin/packages/py-jinja2-time/package.py
+++ b/var/spack/repos/builtin/packages/py-jinja2-time/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-jinja2/package.py b/var/spack/repos/builtin/packages/py-jinja2/package.py
index 588367c0f5..73e073aa1b 100644
--- a/var/spack/repos/builtin/packages/py-jinja2/package.py
+++ b/var/spack/repos/builtin/packages/py-jinja2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,9 @@ class PyJinja2(PythonPackage):
and an optional sandboxed environment."""
homepage = "https://palletsprojects.com/p/jinja/"
- url = "https://pypi.io/packages/source/J/Jinja2/Jinja2-2.10.3.tar.gz"
-
- import_modules = ['jinja2']
+ pypi = "Jinja2/Jinja2-2.10.3.tar.gz"
+ version('2.11.3', sha256='a6d58433de0ae800347cab1fa3043cebbabe8baa9d29e668f1c768cb87a333c6')
version('2.10.3', sha256='9fe95f19286cfefaa917656583d020be14e7859c6b0252588391e47db34527de')
version('2.10.1', sha256='065c4f02ebe7f7cf559e49ee5a95fb800a9e4528727aec6f24402a5374c65013')
version('2.10', sha256='f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4')
@@ -26,6 +25,7 @@ class PyJinja2(PythonPackage):
version('2.7.1', sha256='5cc0a087a81dca1c08368482fb7a92fe2bdd8cfbb22bc0fccfe6c85affb04c8b')
version('2.7', sha256='474f1518d189ae7e318b139fecc1d30b943f124448cfa0f09582ca23e069fa4d')
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-markupsafe@0.23:', type=('build', 'run'))
depends_on('py-babel@0.8:', type=('build', 'run')) # optional, required for i18n
diff --git a/var/spack/repos/builtin/packages/py-jmespath/package.py b/var/spack/repos/builtin/packages/py-jmespath/package.py
index ed5da676f2..f8680c8f0f 100644
--- a/var/spack/repos/builtin/packages/py-jmespath/package.py
+++ b/var/spack/repos/builtin/packages/py-jmespath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,9 @@ class PyJmespath(PythonPackage):
"""JSON Matching Expressions."""
homepage = "https://github.com/jmespath/jmespath.py"
- url = "https://pypi.io/packages/source/j/jmespath/jmespath-0.9.4.tar.gz"
-
- import_modules = ['jmespath']
+ pypi = "jmespath/jmespath-0.9.4.tar.gz"
+ version('0.10.0', sha256='b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9')
version('0.9.4', sha256='bde2aef6f44302dfb30320115b17d030798de8c4110e28d5cf6cf91a7a31074c')
depends_on('py-setuptools', type='build')
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-joblib/package.py b/var/spack/repos/builtin/packages/py-joblib/package.py
index 43ea04ed99..c8d4139dfa 100644
--- a/var/spack/repos/builtin/packages/py-joblib/package.py
+++ b/var/spack/repos/builtin/packages/py-joblib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,31 @@ from spack import *
class PyJoblib(PythonPackage):
- """Python function as pipeline jobs"""
+ """Lightweight pipelining with Python functions."""
- homepage = "http://packages.python.org/joblib/"
- url = "https://pypi.io/packages/source/j/joblib/joblib-0.14.0.tar.gz"
+ homepage = "https://joblib.readthedocs.io/"
+ pypi = "joblib/joblib-0.14.0.tar.gz"
+ # 'joblib.test' requires 'pytest'
import_modules = [
'joblib', 'joblib.externals', 'joblib.externals.cloudpickle',
'joblib.externals.loky', 'joblib.externals.loky.backend'
]
+ version('1.0.1', sha256='9c17567692206d2f3fb9ecf5e991084254fe631665c450b443761c4186a613f7')
+ version('1.0.0', sha256='7ad866067ac1fdec27d51c8678ea760601b70e32ff1881d4dc8e1171f2b64b24')
+ version('0.17.0', sha256='9e284edd6be6b71883a63c9b7f124738a3c16195513ad940eae7e3438de885d5')
+ version('0.16.0', sha256='8f52bf24c64b608bf0b2563e0e47d6fcf516abc8cfafe10cfd98ad66d94f92d6')
+ version('0.15.1', sha256='61e49189c84b3c5d99a969d314853f4d1d263316cc694bec17548ebaa9c47b6e')
+ version('0.15.0', sha256='f8f84dcef519233be4ede1c64fd1f2d48b1e8bbb632d1013ebca75f8b678ee72')
+ version('0.14.1', sha256='0630eea4f5664c463f23fbf5dcfc54a2bc6168902719fa8e19daf033022786c8')
version('0.14.0', sha256='6fcc57aacb4e89451fd449e9412687c51817c3f48662c3d8f38ba3f8a0a193ff')
version('0.13.2', sha256='315d6b19643ec4afd4c41c671f9f2d65ea9d787da093487a81ead7b0bac94524')
- version('0.11', sha256='7b8fd56df36d9731a83729395ccb85a3b401f62a96255deb1a77220c00ed4085')
+ version('0.11', sha256='7b8fd56df36d9731a83729395ccb85a3b401f62a96255deb1a77220c00ed4085')
version('0.10.3', sha256='29b2965a9efbc90a5fe66a389ae35ac5b5b0c1feabfc7cab7fd5d19f429a071d')
version('0.10.2', sha256='3123553bdad83b143428033537c9e1939caf4a4d8813dade6a2246948c94494b')
version('0.10.0', sha256='49b3a0ba956eaa2f077e1ebd230b3c8d7b98afc67520207ada20a4d8b8efd071')
- depends_on('py-setuptools', when='@0.14:', type='build')
+ depends_on('python@3.6:', when='@0.15:', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('py-setuptools', when='@0.14:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jplephem/package.py b/var/spack/repos/builtin/packages/py-jplephem/package.py
index fb4456d800..08508f7458 100644
--- a/var/spack/repos/builtin/packages/py-jplephem/package.py
+++ b/var/spack/repos/builtin/packages/py-jplephem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,7 @@ class PyJplephem(PythonPackage):
ephemeris for predicting the position and velocity of a planet or other
Solar System body."""
- homepage = "https://pypi.org/project/jplephem/"
- url = "https://pypi.io/packages/source/j/jplephem/jplephem-2.9.tar.gz"
+ pypi = "jplephem/jplephem-2.9.tar.gz"
version('2.9', sha256='9dffb9f3d3f6d996ade875102431fe385e8ea422da25c8ba17b0508d9ca1282b')
diff --git a/var/spack/repos/builtin/packages/py-jprops/package.py b/var/spack/repos/builtin/packages/py-jprops/package.py
index 2e6749077f..ae0113d8e1 100644
--- a/var/spack/repos/builtin/packages/py-jprops/package.py
+++ b/var/spack/repos/builtin/packages/py-jprops/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyJprops(PythonPackage):
"""Java properties file parser for Python"""
homepage = "https://github.com/mgood/jprops/"
- url = "https://pypi.io/packages/source/j/jprops/jprops-2.0.2.tar.gz"
+ pypi = "jprops/jprops-2.0.2.tar.gz"
version('2.0.2', sha256='d297231833b6cd0a3f982a48fe148a7f9817f2895661743d166b267e4d3d5b2c')
diff --git a/var/spack/repos/builtin/packages/py-jpype1/package.py b/var/spack/repos/builtin/packages/py-jpype1/package.py
index 4a27b24018..e9802cc963 100644
--- a/var/spack/repos/builtin/packages/py-jpype1/package.py
+++ b/var/spack/repos/builtin/packages/py-jpype1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyJpype1(PythonPackage):
libraries."""
homepage = "https://github.com/originell/jpype"
- url = "https://pypi.io/packages/source/J/JPype1/JPype1-0.6.2.tar.gz"
+ pypi = "JPype1/JPype1-0.6.2.tar.gz"
version('0.6.3', sha256='6841523631874a731e1f94e1b1f130686ad3772030eaa3b6946256eeb1d10dd1')
version('0.6.2', sha256='99206412d80b9d5a81a7cc205267ca63554403eb57f13420302e2f39bfad7f25')
diff --git a/var/spack/repos/builtin/packages/py-jsmin/package.py b/var/spack/repos/builtin/packages/py-jsmin/package.py
index b0ace422ee..ba9b90f02c 100644
--- a/var/spack/repos/builtin/packages/py-jsmin/package.py
+++ b/var/spack/repos/builtin/packages/py-jsmin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyJsmin(PythonPackage):
"""JavaScript minifier."""
homepage = "https://github.com/tikitu/jsmin/"
- url = "https://pypi.io/packages/source/j/jsmin/jsmin-2.2.2.tar.gz"
+ pypi = "jsmin/jsmin-2.2.2.tar.gz"
version('2.2.2', sha256='b6df99b2cd1c75d9d342e4335b535789b8da9107ec748212706ef7bbe5c2553b')
diff --git a/var/spack/repos/builtin/packages/py-json-get/package.py b/var/spack/repos/builtin/packages/py-json-get/package.py
index 2e178d1fa8..c66a717a3d 100644
--- a/var/spack/repos/builtin/packages/py-json-get/package.py
+++ b/var/spack/repos/builtin/packages/py-json-get/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-json5/package.py b/var/spack/repos/builtin/packages/py-json5/package.py
index b204b3016e..dd57aa26a3 100644
--- a/var/spack/repos/builtin/packages/py-json5/package.py
+++ b/var/spack/repos/builtin/packages/py-json5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyJson5(PythonPackage):
include some productions from ECMAScript 5.1."""
homepage = "https://github.com/dpranke/pyjson5"
- url = "https://pypi.io/packages/source/j/json5/json5-0.9.4.tar.gz"
+ pypi = "json5/json5-0.9.4.tar.gz"
version('0.9.4', sha256='2ebfad1cd502dca6aecab5b5c36a21c732c3461ddbc412fb0e9a52b07ddfe586')
diff --git a/var/spack/repos/builtin/packages/py-jsondiff/package.py b/var/spack/repos/builtin/packages/py-jsondiff/package.py
index a6bad6fa93..25f9e35e36 100644
--- a/var/spack/repos/builtin/packages/py-jsondiff/package.py
+++ b/var/spack/repos/builtin/packages/py-jsondiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyJsondiff(PythonPackage):
"""Diff JSON and JSON-like structures in Python."""
homepage = "https://github.com/ZoomerAnalytics/jsondiff"
- url = "https://pypi.io/packages/source/j/jsondiff/jsondiff-1.2.0.tar.gz"
+ pypi = "jsondiff/jsondiff-1.2.0.tar.gz"
version('1.2.0', sha256='34941bc431d10aa15828afe1cbb644977a114e75eef6cc74fb58951312326303')
diff --git a/var/spack/repos/builtin/packages/py-jsonpatch/package.py b/var/spack/repos/builtin/packages/py-jsonpatch/package.py
index eab7421ffb..233e3b1262 100644
--- a/var/spack/repos/builtin/packages/py-jsonpatch/package.py
+++ b/var/spack/repos/builtin/packages/py-jsonpatch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyJsonpatch(PythonPackage):
"""Library to apply JSON Patches according to RFC 6902"""
homepage = "https://github.com/stefankoegl/python-json-patch"
- url = "https://pypi.io/packages/source/j/jsonpatch/jsonpatch-1.23.tar.gz"
+ pypi = "jsonpatch/jsonpatch-1.23.tar.gz"
version('1.23', sha256='49f29cab70e9068db3b1dc6b656cbe2ee4edf7dfe9bf5a0055f17a4b6804a4b9')
diff --git a/var/spack/repos/builtin/packages/py-jsonpath-ng/package.py b/var/spack/repos/builtin/packages/py-jsonpath-ng/package.py
new file mode 100644
index 0000000000..4929e20a1c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-jsonpath-ng/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyJsonpathNg(PythonPackage):
+ """A final implementation of JSONPath for Python that aims to be
+ standard compliant, including arithmetic and binary comparison
+ operators."""
+
+ homepage = "https://github.com/h2non/jsonpath-ng"
+ pypi = "jsonpath-ng/jsonpath-ng-1.5.2.tar.gz"
+
+ version('1.5.2', sha256='144d91379be14d9019f51973bd647719c877bfc07dc6f3f5068895765950c69d')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-ply', type=('build', 'run'))
+ depends_on('py-decorator', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jsonpickle/package.py b/var/spack/repos/builtin/packages/py-jsonpickle/package.py
index 7bc9aeda58..858743b658 100644
--- a/var/spack/repos/builtin/packages/py-jsonpickle/package.py
+++ b/var/spack/repos/builtin/packages/py-jsonpickle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,11 +8,11 @@ class PyJsonpickle(PythonPackage):
"""Python library for serializing any arbitrary object graph into JSON."""
homepage = "https://github.com/jsonpickle/jsonpickle"
- url = "https://pypi.io/packages/source/j/jsonpickle/jsonpickle-1.4.1.tar.gz"
+ pypi = "jsonpickle/jsonpickle-1.4.1.tar.gz"
version('1.4.1', sha256='e8d4b7cd0bd6826001a74377df1079a76ad8bae0f909282de2554164c837c8ba')
depends_on('python@2.7:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-setuptools-scm@3.4.1:+toml', type='build')
- depends_on('py-importlib-metadata', type=('build', 'run'))
+ depends_on("py-importlib-metadata", when="^python@:3.7.99", type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jsonpointer/package.py b/var/spack/repos/builtin/packages/py-jsonpointer/package.py
index a9307fd3f6..f1eb2ae8a9 100644
--- a/var/spack/repos/builtin/packages/py-jsonpointer/package.py
+++ b/var/spack/repos/builtin/packages/py-jsonpointer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class PyJsonpointer(PythonPackage):
"""Library to resolve JSON Pointers according to RFC 6901"""
homepage = "https://github.com/stefankoegl/python-json-pointer"
- url = "https://pypi.io/packages/source/j/jsonpointer/jsonpointer-2.0.tar.gz"
+ pypi = "jsonpointer/jsonpointer-2.0.tar.gz"
version('2.0', sha256='c192ba86648e05fdae4f08a17ec25180a9aef5008d973407b581798a83975362')
+ version('1.9', sha256='39403b47a71aa782de6d80db3b78f8a5f68ad8dfc9e674ca3bb5b32c15ec7308')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-jsonref/package.py b/var/spack/repos/builtin/packages/py-jsonref/package.py
index 405d2155d7..88056cdb47 100644
--- a/var/spack/repos/builtin/packages/py-jsonref/package.py
+++ b/var/spack/repos/builtin/packages/py-jsonref/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyJsonref(PythonPackage):
"""An implementation of JSON Reference for Python"""
homepage = "https://github.com/gazpachoking/jsonref"
- url = "https://pypi.io/packages/source/j/jsonref/jsonref-0.2.tar.gz"
+ pypi = "jsonref/jsonref-0.2.tar.gz"
version('0.2', sha256='f3c45b121cf6257eafabdc3a8008763aed1cd7da06dbabc59a9e4d2a5e4e6697')
diff --git a/var/spack/repos/builtin/packages/py-jsonschema/package.py b/var/spack/repos/builtin/packages/py-jsonschema/package.py
index c33cfc63e4..7cc0ca3354 100644
--- a/var/spack/repos/builtin/packages/py-jsonschema/package.py
+++ b/var/spack/repos/builtin/packages/py-jsonschema/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyJsonschema(PythonPackage):
"""Jsonschema: An(other) implementation of JSON Schema for Python."""
homepage = "http://github.com/Julian/jsonschema"
- url = "https://pypi.io/packages/source/j/jsonschema/jsonschema-3.2.0.tar.gz"
+ pypi = "jsonschema/jsonschema-3.2.0.tar.gz"
version('3.2.0', sha256='c8a85b28d377cc7737e46e2d9f2b4f44ee3c0e1deac6bf46ddefc7187d30797a')
version('3.1.1', sha256='2fa0684276b6333ff3c0b1b27081f4b2305f0a36cf702a23db50edb141893c3f')
diff --git a/var/spack/repos/builtin/packages/py-junit-xml/package.py b/var/spack/repos/builtin/packages/py-junit-xml/package.py
index 7d59fe205c..e3f1b2a421 100644
--- a/var/spack/repos/builtin/packages/py-junit-xml/package.py
+++ b/var/spack/repos/builtin/packages/py-junit-xml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyJunitXml(PythonPackage):
such as Jenkins"""
homepage = "https://github.com/kyrus/python-junit-xml"
- url = "https://pypi.io/packages/source/j/junit-xml/junit-xml-1.7.tar.gz"
+ pypi = "junit-xml/junit-xml-1.7.tar.gz"
version('1.7', sha256='5bc851b53e3e2153dcc62278ce2aa796a8ae9208f1dec36d1507b5af445ce355')
diff --git a/var/spack/repos/builtin/packages/py-jupyter-client/package.py b/var/spack/repos/builtin/packages/py-jupyter-client/package.py
index d14077195b..165cdaa71a 100644
--- a/var/spack/repos/builtin/packages/py-jupyter-client/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyter-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyJupyterClient(PythonPackage):
"""Jupyter protocol client APIs"""
homepage = "https://github.com/jupyter/jupyter_client"
- url = "https://pypi.io/packages/source/j/jupyter-client/jupyter_client-6.1.7.tar.gz"
+ pypi = "jupyter-client/jupyter_client-6.1.7.tar.gz"
version('6.1.7', sha256='49e390b36fe4b4226724704ea28d9fb903f1a3601b6882ce3105221cd09377a1')
version('5.3.4', sha256='60e6faec1031d63df57f1cc671ed673dced0ed420f4377ea33db37b1c188b910')
diff --git a/var/spack/repos/builtin/packages/py-jupyter-console/package.py b/var/spack/repos/builtin/packages/py-jupyter-console/package.py
index 0f06d1422d..9bed10217d 100644
--- a/var/spack/repos/builtin/packages/py-jupyter-console/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyter-console/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-jupyter-core/package.py b/var/spack/repos/builtin/packages/py-jupyter-core/package.py
index 42adbc81b4..647d86b125 100644
--- a/var/spack/repos/builtin/packages/py-jupyter-core/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyter-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyJupyterCore(PythonPackage):
"""Core Jupyter functionality"""
homepage = "http://jupyter-core.readthedocs.io/"
- url = "https://pypi.io/packages/source/j/jupyter-core/jupyter_core-4.6.0.tar.gz"
+ pypi = "jupyter-core/jupyter_core-4.6.0.tar.gz"
version('4.6.3', sha256='394fd5dd787e7c8861741880bdf8a00ce39f95de5d18e579c74b882522219e7e')
version('4.6.1', sha256='a183e0ec2e8f6adddf62b0a3fc6a2237e3e0056d381e536d3e7c7ecc3067e244')
diff --git a/var/spack/repos/builtin/packages/py-jupyter/package.py b/var/spack/repos/builtin/packages/py-jupyter/package.py
index 4c6f0d9a07..b1b15ffdad 100644
--- a/var/spack/repos/builtin/packages/py-jupyter/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyJupyter(PythonPackage):
"""Jupyter metapackage. Install all the Jupyter components in one go."""
homepage = "https://jupyter.org/"
- url = "https://pypi.io/packages/source/j/jupyter/jupyter-1.0.0.tar.gz"
+ pypi = "jupyter/jupyter-1.0.0.tar.gz"
version('1.0.0', sha256='d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f')
diff --git a/var/spack/repos/builtin/packages/py-jupyterhub/package.py b/var/spack/repos/builtin/packages/py-jupyterhub/package.py
index 3e95b7496f..cfcfd295d9 100644
--- a/var/spack/repos/builtin/packages/py-jupyterhub/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyterhub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyJupyterhub(PythonPackage):
"""Multi-user server for Jupyter notebooks."""
- homepage = "https://pypi.org/project/jupyterhub"
- url = "https://pypi.io/packages/source/j/jupyterhub/jupyterhub-1.0.0.tar.gz"
+ pypi = "jupyterhub/jupyterhub-1.0.0.tar.gz"
version('1.0.0', sha256='33541a515a041b9a518ca057c1c4ab4215a7450fdddc206401713ee8137fa67f')
version('0.9.4', sha256='7848bbb299536641a59eb1977ec3c7c95d931bace4a2803d7e9b28b9256714da')
diff --git a/var/spack/repos/builtin/packages/py-jupyterlab-pygments/package.py b/var/spack/repos/builtin/packages/py-jupyterlab-pygments/package.py
index fc4bf5f6d4..0e6bbeddfe 100644
--- a/var/spack/repos/builtin/packages/py-jupyterlab-pygments/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyterlab-pygments/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyJupyterlabPygments(PythonPackage):
"""Pygments theme using JupyterLab CSS variables."""
homepage = "https://jupyter.org/"
- url = "https://pypi.io/packages/source/j/jupyterlab-pygments/jupyterlab_pygments-0.1.1.tar.gz"
+ pypi = "jupyterlab-pygments/jupyterlab_pygments-0.1.1.tar.gz"
version('0.1.1', sha256='19a0ccde7daddec638363cd3d60b63a4f6544c9181d65253317b2fb492a797b9')
diff --git a/var/spack/repos/builtin/packages/py-jupyterlab-server/package.py b/var/spack/repos/builtin/packages/py-jupyterlab-server/package.py
index 09bfce1b1f..35496e3a41 100644
--- a/var/spack/repos/builtin/packages/py-jupyterlab-server/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyterlab-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,8 +8,7 @@ class PyJupyterlabServer(PythonPackage):
"""A set of server components for JupyterLab and JupyterLab
like applications"""
- homepage = "https://pypi.org/project/jupyterlab-server/"
- url = "https://pypi.io/packages/source/j/jupyterlab_server/jupyterlab_server-1.2.0.tar.gz"
+ pypi = "jupyterlab_server/jupyterlab_server-1.2.0.tar.gz"
version('1.2.0', sha256='5431d9dde96659364b7cc877693d5d21e7b80cea7ae3959ecc2b87518e5f5d8c')
version('1.1.0', sha256='bac27e2ea40f686e592d6429877e7d46947ea76c08c878081b028c2c89f71733')
@@ -22,5 +21,3 @@ class PyJupyterlabServer(PythonPackage):
depends_on('py-jsonschema@3.0.1:', type=('build', 'run'))
depends_on('py-notebook@4.2.0:', type=('build', 'run'))
depends_on('py-jinja2@2.10:', type=('build', 'run'))
-
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-jupyterlab/package.py b/var/spack/repos/builtin/packages/py-jupyterlab/package.py
index f19c1b8174..69fbc175ca 100644
--- a/var/spack/repos/builtin/packages/py-jupyterlab/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyterlab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyJupyterlab(PythonPackage):
for Project Jupyter."""
homepage = "https://jupyterlab.readthedocs.io/"
- url = "https://pypi.io/packages/source/j/jupyterlab/jupyterlab-2.2.7.tar.gz"
+ pypi = "jupyterlab/jupyterlab-2.2.7.tar.gz"
version('2.2.7', sha256='a72ffd0d919cba03a5ef8422bc92c3332a957ff97b0490494209c83ad93826da')
version('2.1.0', sha256='8c239aababf5baa0b3d36e375fddeb9fd96f3a9a24a8cda098d6a414f5bbdc81')
@@ -20,8 +20,3 @@ class PyJupyterlab(PythonPackage):
depends_on('py-tornado@:5,6.0.3:', type=('build', 'run'))
depends_on('py-jupyterlab-server@1.1.5:1.999', type=('build', 'run'))
depends_on('py-jinja2@2.10:', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-pytest-check-links', type='test')
- depends_on('py-requests', type='test')
- depends_on('py-wheel', type='test')
- depends_on('py-virtualenv', type='test')
diff --git a/var/spack/repos/builtin/packages/py-keras-applications/package.py b/var/spack/repos/builtin/packages/py-keras-applications/package.py
index a26a4e8a26..5f79fd59be 100644
--- a/var/spack/repos/builtin/packages/py-keras-applications/package.py
+++ b/var/spack/repos/builtin/packages/py-keras-applications/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-keras-preprocessing/package.py b/var/spack/repos/builtin/packages/py-keras-preprocessing/package.py
index 5129e92201..717dd61b91 100644
--- a/var/spack/repos/builtin/packages/py-keras-preprocessing/package.py
+++ b/var/spack/repos/builtin/packages/py-keras-preprocessing/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyKerasPreprocessing(PythonPackage):
"""Utilities for working with image data, text data, and sequence data."""
homepage = "https://github.com/keras-team/keras-preprocessing"
- url = "https://pypi.io/packages/source/K/Keras-Preprocessing/Keras_Preprocessing-1.1.2.tar.gz"
+ pypi = "Keras-Preprocessing/Keras_Preprocessing-1.1.2.tar.gz"
version('1.1.2', sha256='add82567c50c8bc648c14195bf544a5ce7c1f76761536956c3d2978970179ef3')
version('1.1.0', sha256='5a8debe01d840de93d49e05ccf1c9b81ae30e210d34dacbcc47aeb3049b528e5')
diff --git a/var/spack/repos/builtin/packages/py-keras/package.py b/var/spack/repos/builtin/packages/py-keras/package.py
index fc9eeaa8a4..a8fc75eb1b 100644
--- a/var/spack/repos/builtin/packages/py-keras/package.py
+++ b/var/spack/repos/builtin/packages/py-keras/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,9 @@ class PyKeras(PythonPackage):
and more. Runs on Theano or TensorFlow."""
homepage = "http://keras.io"
- url = "https://pypi.io/packages/source/K/Keras/Keras-1.2.2.tar.gz"
+ pypi = "Keras/Keras-1.2.2.tar.gz"
+ version('2.4.3', sha256='fedd729b52572fb108a98e3d97e1bac10a81d3917d2103cc20ab2a5f03beb973')
version('2.2.4', sha256='90b610a3dbbf6d257b20a079eba3fdf2eed2158f64066a7c6f7227023fd60bc9')
version('2.2.3', sha256='694aee60a6f8e0d3d6d3e4967e063b4623e3ca90032f023fd6d16bb5f81d18de')
version('2.2.2', sha256='468d98da104ec5c3dbb10c2ef6bb345ab154f6ca2d722d4c250ef4d6105de17a')
@@ -39,9 +40,13 @@ class PyKeras(PythonPackage):
version('1.1.1', sha256='be1b67f62e5119f6f24a239a865dc47e6d9aa93b97b506ba34cab7353dbc23b6')
version('1.1.0', sha256='36d83b027ba9d2c9da8e1eefc28f600ca93dc03423e033b633cbac9061af8a5d')
- depends_on('py-keras-applications', type='run', when='@2.2:')
- depends_on('py-keras-preprocessing', type='run', when='@2.2:')
+ depends_on('python@3.6:', type=('build', 'run'), when='@2.4:')
+ depends_on('py-numpy@1.9.1:', type=('build', 'run'), when='@2.4:')
+ depends_on('py-scipy@0.14:', type=('build', 'run'), when='@2.4:')
+ depends_on('py-h5py', type=('build', 'run'), when='@2.4:')
+ depends_on('py-keras-applications', type='run', when='@2.2')
+ depends_on('py-keras-preprocessing', type='run', when='@2.2')
depends_on('py-setuptools', type='build')
- depends_on('py-theano', type=('build', 'run'))
+ depends_on('py-theano', type=('build', 'run'), when='@:2.2')
depends_on('py-pyyaml', type=('build', 'run'))
- depends_on('py-six', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'), when='@:2.2')
diff --git a/var/spack/repos/builtin/packages/py-kerberos/package.py b/var/spack/repos/builtin/packages/py-kerberos/package.py
index 74cbc56a4c..5191188f48 100644
--- a/var/spack/repos/builtin/packages/py-kerberos/package.py
+++ b/var/spack/repos/builtin/packages/py-kerberos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyKerberos(PythonPackage):
<http://www.ietf.org/rfc/rfc4559.txt>."""
homepage = "https://github.com/apple/ccs-pykerberos"
- url = "https://pypi.io/packages/source/k/kerberos/kerberos-1.3.0.tar.gz"
+ pypi = "kerberos/kerberos-1.3.0.tar.gz"
version('1.3.0', sha256='f039b7dd4746df56f6102097b3dc250fe0078be75130b9dc4211a85a3b1ec6a4')
diff --git a/var/spack/repos/builtin/packages/py-keyring/package.py b/var/spack/repos/builtin/packages/py-keyring/package.py
new file mode 100644
index 0000000000..5ec3f63419
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-keyring/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyKeyring(PythonPackage):
+ """The Python keyring library provides an easy way to access the system keyring
+ service from python. It can be used in any application that needs safe password
+ storage."""
+
+ homepage = "https://github.com/jaraco/keyring"
+ pypi = "keyring/keyring-23.0.1.tar.gz"
+
+ version('23.0.1', sha256='045703609dd3fccfcdb27da201684278823b72af515aedec1a8515719a038cb8')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm@3.4.1:+toml', type='build')
+ depends_on('py-importlib-metadata@3.6:', type=('build', 'run'))
+ # TODO: additional dependencies required for Windows/Linux
diff --git a/var/spack/repos/builtin/packages/py-kitchen/package.py b/var/spack/repos/builtin/packages/py-kitchen/package.py
index 0e8683d5d8..71c781cf9d 100644
--- a/var/spack/repos/builtin/packages/py-kitchen/package.py
+++ b/var/spack/repos/builtin/packages/py-kitchen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyKitchen(PythonPackage):
"""
homepage = "https://fedorahosted.org/kitchen"
- url = "https://pypi.io/packages/source/k/kitchen/kitchen-1.2.6.tar.gz"
+ pypi = "kitchen/kitchen-1.2.6.tar.gz"
version('1.2.6', sha256='b84cf582f1bd1556b60ebc7370b9d331eb9247b6b070ce89dfe959cba2c0b03c')
version('1.1.1', sha256='25670f80bcbabd0656946125cfad310980d5a5900d6c160d4f0187292120284e')
diff --git a/var/spack/repos/builtin/packages/py-kiwisolver/package.py b/var/spack/repos/builtin/packages/py-kiwisolver/package.py
index ebf05e6702..b8b0196db0 100644
--- a/var/spack/repos/builtin/packages/py-kiwisolver/package.py
+++ b/var/spack/repos/builtin/packages/py-kiwisolver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyKiwisolver(PythonPackage):
"""A fast implementation of the Cassowary constraint solver"""
homepage = "https://github.com/nucleic/kiwi"
- url = "https://pypi.io/packages/source/k/kiwisolver/kiwisolver-1.1.0.tar.gz"
+ pypi = "kiwisolver/kiwisolver-1.1.0.tar.gz"
version('1.1.0', sha256='53eaed412477c836e1b9522c19858a8557d6e595077830146182225613b11a75')
version('1.0.1', sha256='ce3be5d520b4d2c3e5eeb4cd2ef62b9b9ab8ac6b6fedbaa0e39cdb6f50644278')
diff --git a/var/spack/repos/builtin/packages/py-kmodes/package.py b/var/spack/repos/builtin/packages/py-kmodes/package.py
index a3bbe8ea75..6f43ac5390 100644
--- a/var/spack/repos/builtin/packages/py-kmodes/package.py
+++ b/var/spack/repos/builtin/packages/py-kmodes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,7 @@ class PyKmodes(PythonPackage):
algorithms for clustering categorical data."""
homepage = "https://github.com/nicodv/kmodes"
- url = "https://pypi.io/packages/source/k/kmodes/kmodes-0.10.1.tar.gz"
-
- import_modules = ['kmodes', 'kmodes.util']
+ pypi = "kmodes/kmodes-0.10.1.tar.gz"
version('0.10.1', sha256='3222c2f672a6356be353955c02d1e38472d9f6074744b4ffb0c058e8c2235ea1')
diff --git a/var/spack/repos/builtin/packages/py-knack/package.py b/var/spack/repos/builtin/packages/py-knack/package.py
index 4fb7ce188f..a11267ca89 100644
--- a/var/spack/repos/builtin/packages/py-knack/package.py
+++ b/var/spack/repos/builtin/packages/py-knack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyKnack(PythonPackage):
"""A Command-Line Interface framework."""
homepage = "https://github.com/microsoft/knack"
- url = "https://pypi.io/packages/source/k/knack/knack-0.7.1.tar.gz"
+ pypi = "knack/knack-0.7.1.tar.gz"
version('0.7.1', sha256='fcef6040164ebe7d69629e4e089b398c9b980791446496301befcf8381dba0fc')
diff --git a/var/spack/repos/builtin/packages/py-kombu/package.py b/var/spack/repos/builtin/packages/py-kombu/package.py
index a4d3af4019..92d4ce9c86 100644
--- a/var/spack/repos/builtin/packages/py-kombu/package.py
+++ b/var/spack/repos/builtin/packages/py-kombu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyKombu(PythonPackage):
"""Messaging library for Python."""
- homepage = "https://pypi.org/project/kombu/"
- url = "https://pypi.io/packages/source/k/kombu/kombu-4.3.0.tar.gz"
+ pypi = "kombu/kombu-4.3.0.tar.gz"
version('5.0.2', sha256='f4965fba0a4718d47d470beeb5d6446e3357a62402b16c510b6a2f251e05ac3c')
version('4.6.11', sha256='ca1b45faac8c0b18493d02a8571792f3c40291cf2bcf1f55afed3d8f3aa7ba74')
diff --git a/var/spack/repos/builtin/packages/py-kubernetes/package.py b/var/spack/repos/builtin/packages/py-kubernetes/package.py
new file mode 100644
index 0000000000..39150f8fed
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-kubernetes/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyKubernetes(PythonPackage):
+ """Official Python client library for kubernetes. """
+
+ homepage = "https://kubernetes.io"
+ git = "https://github.com/kubernetes-client/python.git"
+ pypi = "kubernetes/kubernetes-17.17.0.tar.gz"
+
+ maintainers = ['vvolkl']
+
+ version('17.17.0', sha256='c69b318696ba797dcf63eb928a8d4370c52319f4140023c502d7dfdf2080eb79')
+ version('12.0.1', sha256='ec52ea01d52e2ec3da255992f7e859f3a76f2bdb51cf65ba8cd71dfc309d8daa')
+ version('12.0.0', sha256='72f095a1cd593401ff26b3b8d71749340394ca6d8413770ea28ce18efd5bcf4c')
+ version('11.0.0', sha256='1a2472f8b01bc6aa87e3a34781f859bded5a5c8ff791a53d889a8bd6cc550430')
+ version('10.1.0', sha256='85a767d04f17d6d317374b6c35e09eb168a6bfd9276f0b3177cc206376bad968')
+ version('10.0.1', sha256='3770a496663396ad1def665eeadb947b3f45217a08b64b10c01a57e981ac8592')
+ version('9.0.0', sha256='a8b0aed55ba946faea660712595a52ae53a8854df773d96f47a63fa0c9d4e3bf')
+
+ depends_on('py-certifi@14.05.14:', type=('build', 'run'))
+ depends_on('py-six@1.9.0:', type=('build', 'run'))
+ depends_on('py-python-dateutil@2.5.3:', type=('build', 'run'))
+ depends_on('py-setuptools@21.0.0:', type=('build'))
+ depends_on('py-pyyaml@3.12:', type=('build', 'run'))
+ depends_on('py-google-auth@1.0.1:', type=('build', 'run'))
+ depends_on('py-ipaddress@1.0.17:', when='^python@:2.8', type=('build', 'run'))
+ depends_on('py-websocket-client@0.32:0.39,0.43:', type=('build', 'run'))
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-requests-oauthlib', type=('build', 'run'))
+ depends_on('py-urllib3@1.24.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-labours/package.py b/var/spack/repos/builtin/packages/py-labours/package.py
index b33748ed0e..df8af5bc30 100644
--- a/var/spack/repos/builtin/packages/py-labours/package.py
+++ b/var/spack/repos/builtin/packages/py-labours/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-lap/package.py b/var/spack/repos/builtin/packages/py-lap/package.py
new file mode 100644
index 0000000000..f8e85f1043
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lap/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyLap(PythonPackage):
+ """lap is a linear assignment problem solver using
+ Jonker-Volgenant algorithm for dense (LAPJV) or sparse (LAPMOD)
+ matrices."""
+
+ homepage = "https://github.com/gatagat/lap"
+ pypi = "lap/lap-0.4.0.tar.gz"
+
+ version('0.4.0', sha256='c4dad9976f0e9f276d8a676a6d03632c3cb7ab7c80142e3b27303d49f0ed0e3b')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython@0.21:', type='build')
+ depends_on('py-numpy@1.10.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-lark-parser/package.py b/var/spack/repos/builtin/packages/py-lark-parser/package.py
index d84e320f1f..937b27daa7 100644
--- a/var/spack/repos/builtin/packages/py-lark-parser/package.py
+++ b/var/spack/repos/builtin/packages/py-lark-parser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyLarkParser(PythonPackage):
"""Lark is a modern general-purpose parsing library for Python."""
homepage = "https://github.com/lark-parser/lark/"
- url = "https://pypi.io/packages/source/l/lark-parser/lark-parser-0.6.2.tar.gz"
+ pypi = "lark-parser/lark-parser-0.6.2.tar.gz"
version('0.7.1', sha256='8455e05d062fa7f9d59a2735583cf02291545f944955c4056bf1144c4e625344')
version('0.6.2', sha256='7e2934371e0e3a5daf9afc2e3ddda76117cabcd3c3f2edf7987c1e4e9b9e503c')
diff --git a/var/spack/repos/builtin/packages/py-latexcodec/package.py b/var/spack/repos/builtin/packages/py-latexcodec/package.py
index d379022142..a782c56a03 100644
--- a/var/spack/repos/builtin/packages/py-latexcodec/package.py
+++ b/var/spack/repos/builtin/packages/py-latexcodec/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyLatexcodec(PythonPackage):
"""A lexer and codec to work with LaTeX code in Python."""
homepage = "http://latexcodec.readthedocs.io"
- url = "https://pypi.io/packages/source/l/latexcodec/latexcodec-1.0.4.tar.gz"
-
- import_modules = ['latexcodec']
+ pypi = "latexcodec/latexcodec-1.0.4.tar.gz"
version('1.0.4', sha256='62bf8a3ee298f169a4d014dad5522bc1325b54dc98789a453fd338620387cb6c')
diff --git a/var/spack/repos/builtin/packages/py-lazy-object-proxy/package.py b/var/spack/repos/builtin/packages/py-lazy-object-proxy/package.py
index 36cac03c58..2dac51e390 100644
--- a/var/spack/repos/builtin/packages/py-lazy-object-proxy/package.py
+++ b/var/spack/repos/builtin/packages/py-lazy-object-proxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,12 @@ class PyLazyObjectProxy(PythonPackage):
"""A fast and thorough lazy object proxy."""
homepage = "https://github.com/ionelmc/python-lazy-object-proxy"
- url = "https://pypi.io/packages/source/l/lazy-object-proxy/lazy-object-proxy-1.3.1.tar.gz"
+ pypi = "lazy-object-proxy/lazy-object-proxy-1.3.1.tar.gz"
version('1.4.3', sha256='f3900e8a5de27447acbf900b4750b0ddfd7ec1ea7fbaf11dfa911141bc522af0')
version('1.3.1', sha256='eb91be369f945f10d3a49f5f9be8b3d0b93a4c2be8f8a5b83b0571b8123e0a7a')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('py-setuptools-scm@3.3.1:', type='build', when='@1.4.0:')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-lazy-property/package.py b/var/spack/repos/builtin/packages/py-lazy-property/package.py
index b6acd6a82e..b8d4e54743 100644
--- a/var/spack/repos/builtin/packages/py-lazy-property/package.py
+++ b/var/spack/repos/builtin/packages/py-lazy-property/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-lazy/package.py b/var/spack/repos/builtin/packages/py-lazy/package.py
index d8f2a46022..1d0d2c2255 100644
--- a/var/spack/repos/builtin/packages/py-lazy/package.py
+++ b/var/spack/repos/builtin/packages/py-lazy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyLazy(PythonPackage):
"""Lazy attributes for Python objects"""
- homepage = "https://pypi.python.org/pypi/lazy"
- url = "https://pypi.io/packages/source/l/lazy/lazy-1.2.zip"
+ pypi = "lazy/lazy-1.2.zip"
version('1.2', sha256='127ea610418057b953f0d102bed83f2c367be13b59f8d0ddf3b8a86c7d31b970')
diff --git a/var/spack/repos/builtin/packages/py-lazyarray/package.py b/var/spack/repos/builtin/packages/py-lazyarray/package.py
index cc9e68f8f3..0a86284abd 100644
--- a/var/spack/repos/builtin/packages/py-lazyarray/package.py
+++ b/var/spack/repos/builtin/packages/py-lazyarray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,16 @@ class PyLazyarray(PythonPackage):
larray, based on and compatible with NumPy arrays."""
homepage = "http://bitbucket.org/apdavison/lazyarray/"
- url = "https://pypi.io/packages/source/l/lazyarray/lazyarray-0.2.8.tar.gz"
+ pypi = "lazyarray/lazyarray-0.2.8.tar.gz"
+ version('0.3.2', sha256='be980534c5950a976709085570f69be9534bdf0f3e5c21a9113de3ee2052683e')
version('0.2.10', sha256='7a53f81b5f3a098c04003d2ad179fc197451fd96bc921510f8534c6af8cc8e19')
version('0.2.8', sha256='aaee4e18117cc512de7a4e64522f37bc6f4bf125ecffdbdbf4e4e390fbdd9ba2')
+ # Required versions come from doc/installation.txt or:
+ # https://lazyarray.readthedocs.io/en/latest/installation.html#dependencies
+ depends_on('python@2.7:', when='@0.3:', type=('build', 'run'))
depends_on('py-numpy@1.3:', type=('build', 'run'))
+ depends_on('py-numpy@1.8:', type=('build', 'run'), when='@0.3:')
depends_on('py-numpy@1.5:', type=('build', 'run'), when='^python@3:')
+ depends_on('py-numpy@1.12:', type=('build', 'run'), when='@0.3:^python@3:')
diff --git a/var/spack/repos/builtin/packages/py-leather/package.py b/var/spack/repos/builtin/packages/py-leather/package.py
index 96aecebd96..9747940972 100644
--- a/var/spack/repos/builtin/packages/py-leather/package.py
+++ b/var/spack/repos/builtin/packages/py-leather/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyLeather(PythonPackage):
don't care if they're perfect."""
homepage = "https://leather.readthedocs.io/en/stable/"
- url = "https://pypi.io/packages/source/l/leather/leather-0.3.3.tar.gz"
+ pypi = "leather/leather-0.3.3.tar.gz"
version('0.3.3', sha256='076d1603b5281488285718ce1a5ce78cf1027fe1e76adf9c548caf83c519b988')
diff --git a/var/spack/repos/builtin/packages/py-lerc/package.py b/var/spack/repos/builtin/packages/py-lerc/package.py
new file mode 100644
index 0000000000..fd7180bd86
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lerc/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyLerc(PythonPackage):
+ """Limited Error Raster Compression."""
+
+ homepage = "https://github.com/Esri/lerc"
+ pypi = "lerc/lerc-0.1.0.tar.gz"
+
+ version('0.1.0', sha256='46cac3f5a0194518f49a52e3ae073093fc85b0d79396383b64b1f9dba4aeacc1')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-libconf/package.py b/var/spack/repos/builtin/packages/py-libconf/package.py
index 4cfeb251da..998f35e476 100644
--- a/var/spack/repos/builtin/packages/py-libconf/package.py
+++ b/var/spack/repos/builtin/packages/py-libconf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyLibconf(PythonPackage):
"""A pure-Python libconfig reader/writer with permissive license"""
- homepage = "https://pypi.python.org/pypi/libconf"
- url = "https://pypi.io/packages/source/l/libconf/libconf-1.0.1.tar.gz"
+ pypi = "libconf/libconf-1.0.1.tar.gz"
version('1.0.1', sha256='6dd62847bb69ab5a09155cb8be2328cce01e7ef88a35e7c37bea2b1a70f8bd58')
diff --git a/var/spack/repos/builtin/packages/py-libensemble/package.py b/var/spack/repos/builtin/packages/py-libensemble/package.py
index 55e7b46e59..f14aad8669 100644
--- a/var/spack/repos/builtin/packages/py-libensemble/package.py
+++ b/var/spack/repos/builtin/packages/py-libensemble/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,16 +11,17 @@ class PyLibensemble(PythonPackage):
"""Library for managing ensemble-like collections of computations."""
homepage = "https://libensemble.readthedocs.io"
- url = "https://pypi.io/packages/source/l/libensemble/libensemble-0.7.1.tar.gz"
+ pypi = "libensemble/libensemble-0.7.2.tar.gz"
git = "https://github.com/Libensemble/libensemble.git"
version('develop', branch='develop')
+ version('0.7.2', sha256='69b64304d1ecce4d57687ea6062f89bd813ae93b2a290bb1f595c5626ab6f197')
version('0.7.1', sha256='5cb294269624c1284ea25be9ed3bc668a2333e21e97a97b57ad339eb85435e46')
version('0.7.0', sha256='4c3c16ef3d4750b7a54198fae5d7ae402c5f5411ae85189da41afd20e20027dc')
version('0.6.0', sha256='3f6a926d3868da53835ed93fc2e2a047b368dacb648c7608ee3a66debcee4d38')
version('0.5.2', sha256='3e36c29a4a2adc0984ecfcc998cb5bb8a2cdfbe7a1ae92f7b35b06e41d21b889')
version('0.5.1', sha256='522e0cc086a3ed75a101b704c0fe01eae07f2684bd8d6da7bdfe9371d3187362')
- version('0.5.0', sha256='c4623171dee049bfaa38a9c433609299a56b1afb774db8b71321247bc7556b8f')
+ version('0.5.0', sha256='c4623171dee049bfaa38a9c433609299a56b1afb774db8b71321247bc7556b8f')
version('0.4.1', sha256='282c32ffb79d84cc80b5cc7043c202d5f0b8ebff10f63924752f092e3938db5e')
version('0.4.0', sha256='9384aa3a58cbc20bbd1c6fddfadb5e6a943d593a3a81c8665f030dbc6d76e76e')
version('0.3.0', sha256='c8efdf45d0da0ef6299ee778cea1c285c95972af70d3a729ee6dc855e66f9294')
@@ -46,7 +47,7 @@ class PyLibensemble(PythonPackage):
depends_on('py-mpi4py@2.0:', type=('build', 'run'), when='+mpi')
depends_on('py-scipy', type=('build', 'run'), when='+scipy')
depends_on('py-petsc4py', type=('build', 'run'), when='+petsc4py')
- depends_on('py-petsc4py@develop', type=('build', 'run'), when='@develop+petsc4py')
+ depends_on('py-petsc4py@main', type=('build', 'run'), when='@develop+petsc4py')
depends_on('nlopt', type=('build', 'run'), when='+nlopt')
depends_on('py-mpmath', type=('build', 'run'), when='+mpmath')
depends_on('py-deap', type=('build', 'run'), when='+deap')
diff --git a/var/spack/repos/builtin/packages/py-librosa/package.py b/var/spack/repos/builtin/packages/py-librosa/package.py
index c720c12e63..ca3e62973f 100644
--- a/var/spack/repos/builtin/packages/py-librosa/package.py
+++ b/var/spack/repos/builtin/packages/py-librosa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyLibrosa(PythonPackage):
"""A python package for music and audio analysis."""
homepage = "http://github.com/librosa/librosa"
- url = "https://pypi.io/packages/source/l/librosa/librosa-0.7.2.tar.gz"
+ pypi = "librosa/librosa-0.7.2.tar.gz"
version('0.7.2', sha256='656bbda80e98e6330db1ead79cd084b13a762284834d7603fcf7cf7c0dc65f3c')
diff --git a/var/spack/repos/builtin/packages/py-lifelines/package.py b/var/spack/repos/builtin/packages/py-lifelines/package.py
index ddbe26a06e..581a66c339 100644
--- a/var/spack/repos/builtin/packages/py-lifelines/package.py
+++ b/var/spack/repos/builtin/packages/py-lifelines/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyLifelines(PythonPackage):
parts of survival analysis."""
homepage = "https://github.com/CamDavidsonPilon/lifelines"
- url = "https://pypi.io/packages/source/l/lifelines/lifelines-0.25.5.tar.gz"
+ pypi = "lifelines/lifelines-0.25.5.tar.gz"
version('0.25.5', sha256='f24260aa371829354440dfc2c1be8d59d9e841cce7a933230213cecd67787b89')
version('0.9.4', sha256='0f19a8b18ace80c231de60487b2b1a3de3eb418445c6a6d0d72c1110d860f676')
diff --git a/var/spack/repos/builtin/packages/py-lightgbm/package.py b/var/spack/repos/builtin/packages/py-lightgbm/package.py
new file mode 100644
index 0000000000..5bcef6498c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lightgbm/package.py
@@ -0,0 +1,36 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyLightgbm(PythonPackage):
+ """LightGBM is a gradient boosting framework that uses tree
+ based learning algorithms."""
+
+ homepage = "https://github.com/microsoft/LightGBM"
+ pypi = "lightgbm/lightgbm-3.1.1.tar.gz"
+
+ version('3.1.1', sha256='babece2e3613e97748a67ed45387bb0e984bdb1f4126e39f010fbfe7503c7b20')
+
+ variant('mpi', default=False, description="Build with mpi support")
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-wheel', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-scikit-learn@:0.21.999,0.22.1:', type=('build', 'run'))
+
+ depends_on('cmake@3.8:', type='build')
+
+ depends_on('mpi', when='+mpi')
+
+ def install_args(self, spec, prefix):
+ args = []
+
+ if spec.satisfies('+mpi'):
+ args.append('--mpi')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/py-ligo-segments/package.py b/var/spack/repos/builtin/packages/py-ligo-segments/package.py
index aacb0affc5..997e509f01 100644
--- a/var/spack/repos/builtin/packages/py-ligo-segments/package.py
+++ b/var/spack/repos/builtin/packages/py-ligo-segments/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyLigoSegments(PythonPackage):
"""Representations of semi-open intervals."""
- homepage = "https://pypi.org/project/ligo-segments/"
- url = "https://pypi.io/packages/source/l/ligo-segments/ligo-segments-1.2.0.tar.gz"
+ pypi = "ligo-segments/ligo-segments-1.2.0.tar.gz"
version('1.2.0', sha256='5edbcb88cae007c4e154a61cb2c9d0a6d6d4016c1ecaf0a59a667a267bd20e7a')
diff --git a/var/spack/repos/builtin/packages/py-line-profiler/package.py b/var/spack/repos/builtin/packages/py-line-profiler/package.py
index c252dca53f..dd6167db48 100644
--- a/var/spack/repos/builtin/packages/py-line-profiler/package.py
+++ b/var/spack/repos/builtin/packages/py-line-profiler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyLineProfiler(PythonPackage):
"""Line-by-line profiler."""
homepage = "https://github.com/rkern/line_profiler"
- url = "https://pypi.io/packages/source/l/line_profiler/line_profiler-2.0.tar.gz"
+ pypi = "line_profiler/line_profiler-2.0.tar.gz"
version('2.1.2', sha256='efa66e9e3045aa7cb1dd4bf0106e07dec9f80bc781a993fbaf8162a36c20af5c')
version('2.0', sha256='739f8ad0e4bcd0cb82e99afc09e00a0351234f6b3f0b1f7f0090a8a2fbbf8381')
diff --git a/var/spack/repos/builtin/packages/py-linecache2/package.py b/var/spack/repos/builtin/packages/py-linecache2/package.py
index b490059705..4ddd9f49a5 100644
--- a/var/spack/repos/builtin/packages/py-linecache2/package.py
+++ b/var/spack/repos/builtin/packages/py-linecache2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,9 @@ class PyLinecache2(PythonPackage):
"""Backports of the linecache module"""
homepage = "https://github.com/testing-cabal/linecache2"
- url = "https://pypi.io/packages/source/l/linecache2/linecache2-1.0.0.tar.gz"
+ pypi = "linecache2/linecache2-1.0.0.tar.gz"
version('1.0.0', sha256='4b26ff4e7110db76eeb6f5a7b64a82623839d595c2038eeda662f2a2db78e97c')
depends_on('py-setuptools', type='build')
depends_on('py-pbr', type='build')
- depends_on('py-fixtures', type='test')
- depends_on('py-unittest2', type='test')
diff --git a/var/spack/repos/builtin/packages/py-lit/package.py b/var/spack/repos/builtin/packages/py-lit/package.py
index b09f8cb956..1c2eacfafb 100644
--- a/var/spack/repos/builtin/packages/py-lit/package.py
+++ b/var/spack/repos/builtin/packages/py-lit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,7 @@ class PyLit(PythonPackage):
designed to be a lightweight testing tool with as simple a user
interface as possible."""
- homepage = "https://pypi.python.org/pypi/lit"
- url = "https://pypi.io/packages/source/l/lit/lit-0.5.0.tar.gz"
+ pypi = "lit/lit-0.5.0.tar.gz"
version('0.7.1', sha256='ecef2833aef7f411cb923dac109c7c9dcc7dbe7cafce0650c1e8d19c243d955f')
version('0.5.0', sha256='3ea4251e78ebeb2e07be2feb33243d1f8931d956efc96ccc2b0846ced212b58c')
diff --git a/var/spack/repos/builtin/packages/py-llvmlite/package.py b/var/spack/repos/builtin/packages/py-llvmlite/package.py
index fcfcd0407e..ff1d401351 100644
--- a/var/spack/repos/builtin/packages/py-llvmlite/package.py
+++ b/var/spack/repos/builtin/packages/py-llvmlite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyLlvmlite(PythonPackage):
"""A lightweight LLVM python binding for writing JIT compilers"""
homepage = "http://llvmlite.readthedocs.io/en/latest/index.html"
- url = "https://pypi.io/packages/source/l/llvmlite/llvmlite-0.23.0.tar.gz"
+ pypi = "llvmlite/llvmlite-0.23.0.tar.gz"
version('0.34.0', sha256='f03ee0d19bca8f2fe922bb424a909d05c28411983b0c2bc58b020032a0d11f63')
version('0.33.0', sha256='9c8aae96f7fba10d9ac864b443d1e8c7ee4765c31569a2b201b3d0b67d8fc596')
@@ -28,15 +28,22 @@ class PyLlvmlite(PythonPackage):
depends_on('py-enum34', type=('build', 'run'), when='^python@:3.3.99')
# llvmlite compatibility information taken from https://github.com/numba/llvmlite#compatibility
- depends_on('llvm@10.0:10.0.99', when='@0.34.0:')
- depends_on('llvm@9.0:9.0.99', when='@0.33.0:0.33.99')
- depends_on('llvm@7.0:8.0.99', when='@0.29.0:0.32.99')
- depends_on('llvm@7.0:7.0.99', when='@0.27.0:0.28.99')
- depends_on('llvm@6.0:6.0.99', when='@0.23.0:0.26.99')
- depends_on('llvm@4.0:4.0.99', when='@0.17.0:0.20.99')
+ for t in ['arm:', 'ppc:', 'ppc64:', 'ppc64le:', 'ppcle:',
+ 'sparc:', 'sparc64:', 'x86:', 'x86_64:']:
+ depends_on('llvm@10.0:10.0.99~flang', when='@0.34.0: target={0}'.format(t))
+ depends_on('llvm@9.0:9.0.99~flang', when='@0.34.0: target=aarch64:')
+ depends_on('llvm@9.0:9.0.99~flang', when='@0.33.0:0.33.99')
+ depends_on('llvm@7.0:8.0.99~flang', when='@0.29.0:0.32.99')
+ depends_on('llvm@7.0:7.0.99~flang', when='@0.27.0:0.28.99')
+ depends_on('llvm@6.0:6.0.99~flang', when='@0.23.0:0.26.99')
+ depends_on('llvm@4.0:4.0.99~flang', when='@0.17.0:0.20.99')
depends_on('binutils', type='build')
def setup_build_environment(self, env):
- # Need to set PIC flag since this is linking statically with LLVM
- env.set('CXX_FLTO_FLAGS', '-flto {0}'.format(
- self.compiler.cxx_pic_flag))
+ if self.spec.satisfies('%fj'):
+ env.set('CXX_FLTO_FLAGS', '{0}'.format(self.compiler.cxx_pic_flag))
+ env.set('LD_FLTO_FLAGS', '-Wl,--exclude-libs=ALL')
+ else:
+ # Need to set PIC flag since this is linking statically with LLVM
+ env.set('CXX_FLTO_FLAGS', '-flto {0}'.format(
+ self.compiler.cxx_pic_flag))
diff --git a/var/spack/repos/builtin/packages/py-lmfit/package.py b/var/spack/repos/builtin/packages/py-lmfit/package.py
index 9f70b89aa0..668de222c2 100644
--- a/var/spack/repos/builtin/packages/py-lmfit/package.py
+++ b/var/spack/repos/builtin/packages/py-lmfit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyLmfit(PythonPackage):
"""Least-Squares Minimization with Bounds and Constraints"""
homepage = "http://lmfit.github.io/lmfit-py/"
- url = "https://pypi.io/packages/source/l/lmfit/lmfit-0.9.5.tar.gz"
+ pypi = "lmfit/lmfit-0.9.5.tar.gz"
version('1.0.1', sha256='d249eb756899360f4d2a544c9458f47fc8f765ac22c09e099530585fd64e286e')
version('0.9.15', sha256='cd7bdf47c09a3d49f30dff9a1c7f778973d15d1e1b5dc642f14c22f6630eaf2f')
diff --git a/var/spack/repos/builtin/packages/py-lmodule/package.py b/var/spack/repos/builtin/packages/py-lmodule/package.py
index 13574e88d6..36d0f20174 100644
--- a/var/spack/repos/builtin/packages/py-lmodule/package.py
+++ b/var/spack/repos/builtin/packages/py-lmodule/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyLmodule(PythonPackage):
environment-modules to interact with module using the Module class."""
homepage = "https://lmodule.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/l/lmodule/lmodule-0.1.0.tar.gz"
+ pypi = "lmodule/lmodule-0.1.0.tar.gz"
git = "https://github.com/buildtesters/lmodule"
maintainers = ['shahzebsiddiqui']
diff --git a/var/spack/repos/builtin/packages/py-localcider/package.py b/var/spack/repos/builtin/packages/py-localcider/package.py
index 7603a6045d..679343d584 100644
--- a/var/spack/repos/builtin/packages/py-localcider/package.py
+++ b/var/spack/repos/builtin/packages/py-localcider/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyLocalcider(PythonPackage):
"""Tools for calculating sequence properties of disordered proteins"""
homepage = "http://pappulab.github.io/localCIDER"
- url = "https://pypi.io/packages/source/l/localcider/localcider-0.1.14.tar.gz"
+ pypi = "localcider/localcider-0.1.14.tar.gz"
version('0.1.14', sha256='54ff29e8a011947cca5df79e96f3c69a76c49c4db41dcf1608663992be3e3f5f')
diff --git a/var/spack/repos/builtin/packages/py-locket/package.py b/var/spack/repos/builtin/packages/py-locket/package.py
index 2ef69b2992..d71a265e6e 100644
--- a/var/spack/repos/builtin/packages/py-locket/package.py
+++ b/var/spack/repos/builtin/packages/py-locket/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,6 @@ class PyLocket(PythonPackage):
"""File-based locks for Python for Linux and Windows."""
homepage = "http://github.com/mwilliamson/locket.py"
- url = "https://pypi.io/packages/source/l/locket/locket-0.2.0.tar.gz"
-
- import_modules = ['locket']
+ pypi = "locket/locket-0.2.0.tar.gz"
version('0.2.0', sha256='1fee63c1153db602b50154684f5725564e63a0f6d09366a1cb13dffcec179fb4')
diff --git a/var/spack/repos/builtin/packages/py-lockfile/package.py b/var/spack/repos/builtin/packages/py-lockfile/package.py
index 9731208b51..8de746add6 100644
--- a/var/spack/repos/builtin/packages/py-lockfile/package.py
+++ b/var/spack/repos/builtin/packages/py-lockfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,7 @@ class PyLockfile(PythonPackage):
SQLite is also provided, more as a demonstration of the
possibilities it provides than as production-quality code.
"""
- homepage = "https://pypi.python.org/pypi/lockfile"
- url = "https://pypi.io/packages/source/l/lockfile/lockfile-0.10.2.tar.gz"
+ pypi = "lockfile/lockfile-0.10.2.tar.gz"
version('0.10.2', sha256='9e42252f17d1dd89ee31745e0c4fbe58862c25147eb0ef5295c9cd9bcb4ea2c1')
diff --git a/var/spack/repos/builtin/packages/py-logilab-common/package.py b/var/spack/repos/builtin/packages/py-logilab-common/package.py
index ad55892341..69c09f6fce 100644
--- a/var/spack/repos/builtin/packages/py-logilab-common/package.py
+++ b/var/spack/repos/builtin/packages/py-logilab-common/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyLogilabCommon(PythonPackage):
"""Common modules used by Logilab projects"""
homepage = "https://www.logilab.org/project/logilab-common"
- url = "https://pypi.io/packages/source/l/logilab-common/logilab-common-1.2.0.tar.gz"
+ pypi = "logilab-common/logilab-common-1.2.0.tar.gz"
version('1.4.2', sha256='cdda9ed0deca7c68f87f7a404ad742e47aaa1ca5956d12988236a5ec3bda13a0')
version('1.2.0', sha256='d4e5cec3be3a89f06ff05e359a221e69bd1da33cb7096cad648ddcccea8465b7')
@@ -18,4 +18,3 @@ class PyLogilabCommon(PythonPackage):
depends_on("py-setuptools", type=('build', 'run'))
depends_on("py-six@1.4.0:", type=('build', 'run'))
depends_on("py-unittest2@0.5.1:", type=('build', 'run'), when='^python@:2.7')
- depends_on("py-pytz", type='test')
diff --git a/var/spack/repos/builtin/packages/py-louie/package.py b/var/spack/repos/builtin/packages/py-louie/package.py
index dc23bd7a4d..f514e77c7f 100644
--- a/var/spack/repos/builtin/packages/py-louie/package.py
+++ b/var/spack/repos/builtin/packages/py-louie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-lru-dict/package.py b/var/spack/repos/builtin/packages/py-lru-dict/package.py
index aa31ec491e..e618fb48e6 100644
--- a/var/spack/repos/builtin/packages/py-lru-dict/package.py
+++ b/var/spack/repos/builtin/packages/py-lru-dict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyLruDict(PythonPackage):
"""A fast LRU cache"""
homepage = "https://github.com/amitdev/lru-dict"
- url = "https://pypi.io/packages/source/l/lru-dict/lru-dict-1.1.6.tar.gz"
+ pypi = "lru-dict/lru-dict-1.1.6.tar.gz"
version('1.1.6', sha256='365457660e3d05b76f1aba3e0f7fedbfcd6528e97c5115a351ddd0db488354cc')
diff --git a/var/spack/repos/builtin/packages/py-lscsoft-glue/package.py b/var/spack/repos/builtin/packages/py-lscsoft-glue/package.py
index f746285d3a..a8dab0ad45 100644
--- a/var/spack/repos/builtin/packages/py-lscsoft-glue/package.py
+++ b/var/spack/repos/builtin/packages/py-lscsoft-glue/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyLscsoftGlue(PythonPackage):
certain metadata services, such as the LSC segment database."""
homepage = "https://www.lsc-group.phys.uwm.edu/daswg/projects/glue.html"
- url = "https://pypi.io/packages/source/l/lscsoft-glue/lscsoft-glue-2.0.0.tar.gz"
+ pypi = "lscsoft-glue/lscsoft-glue-2.0.0.tar.gz"
version('2.0.0', sha256='9bdfaebe4c921d83d1e3d1ca24379a644665e9d7530e7070665f387767c66923')
diff --git a/var/spack/repos/builtin/packages/py-luigi/package.py b/var/spack/repos/builtin/packages/py-luigi/package.py
index 18adbff049..849c2a0228 100644
--- a/var/spack/repos/builtin/packages/py-luigi/package.py
+++ b/var/spack/repos/builtin/packages/py-luigi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,14 +10,27 @@ class PyLuigi(PythonPackage):
"""Workflow mgmgt + task scheduling + dependency resolution"""
homepage = "https://github.com/spotify/luigi"
- url = "https://pypi.io/packages/source/l/luigi/luigi-2.8.3.tar.gz"
+ pypi = "luigi/luigi-2.8.3.tar.gz"
+ version('3.0.3', sha256='7edc05a32bcff5aad28d7c7e3b15b761ef13fe2a495692602ebf0800eba66849')
+ version('3.0.2', sha256='b4b1ccf086586d041d7e91e68515d495c550f30e4d179d63863fea9ccdbb78eb')
+ version('3.0.1', sha256='f158f4e093638bf734e2f4f08261bdba414bac7187ab69f1d6f8c95b1c408409')
version('2.8.3', sha256='8b5c84a3c3f4df07309056d3b98348b93c054f1931b7ee22fc29e7989f645c9e')
- depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.3:', type=('build', 'run'))
+ depends_on('python@3.3:', type=('build', 'run'), when='@3.0.0:')
+ depends_on('python@3.5:', type=('build', 'run'), when='@3.0.2:')
+
depends_on('py-setuptools', type='build')
- depends_on('py-tornado@4.0:4.99', type=('build', 'run'))
- depends_on('py-python-daemon@:2.1', type=('build', 'run'))
- depends_on('py-python-dateutil@2.7.5', when='@2.8.3:', type=('build', 'run'))
- depends_on('py-pytest@3.3.0:', type='test')
+ depends_on('py-enum34@1.1.1:', when='^python@:3.3.999', type=('build', 'run'))
+
+ depends_on('py-tornado@4.0:4.999', type=('build', 'run'), when='@:2.999')
+ depends_on('py-tornado@5.0:5.999', type=('build', 'run'), when='@3.0.1')
+ depends_on('py-tornado@5.0:6.999', type=('build', 'run'), when='@3.0.2:')
+
+ depends_on('py-tenacity@6.3.0:6.999', type=('build', 'run'), when='@3.0.3:')
+
+ depends_on('py-python-daemon', type=('build', 'run'))
+
+ depends_on('py-python-dateutil@2.7.5:2.999', when='@2.8.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-lxml/package.py b/var/spack/repos/builtin/packages/py-lxml/package.py
index 78b82ccbf8..e33810d7c0 100644
--- a/var/spack/repos/builtin/packages/py-lxml/package.py
+++ b/var/spack/repos/builtin/packages/py-lxml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,10 @@ class PyLxml(PythonPackage):
"""lxml is the most feature-rich and easy-to-use library for processing
XML and HTML in the Python language."""
- homepage = "http://lxml.de/"
- url = "https://pypi.io/packages/source/l/lxml/lxml-4.4.1.tar.gz"
+ homepage = "https://lxml.de/"
+ pypi = "lxml/lxml-4.6.1.tar.gz"
+ version('4.6.1', sha256='c152b2e93b639d1f36ec5a8ca24cde4a8eefb2b6b83668fcd8e83a67badcb367')
version('4.5.2', sha256='cdc13a1682b2a6241080745b1953719e7fe0850b40a5c71ca574f090a1391df6')
version('4.4.1', sha256='c81cb40bff373ab7a7446d6bbca0190bccc5be3448b47b51d729e37799bb5692')
version('4.3.3', sha256='4a03dd682f8e35a10234904e0b9508d705ff98cf962c5851ed052e9340df3d90')
diff --git a/var/spack/repos/builtin/packages/py-lz4/package.py b/var/spack/repos/builtin/packages/py-lz4/package.py
index 656b7e0266..57fcf26afe 100644
--- a/var/spack/repos/builtin/packages/py-lz4/package.py
+++ b/var/spack/repos/builtin/packages/py-lz4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyLz4(PythonPackage):
"""lz4 (compression library) bindings for Python"""
homepage = "https://github.com/python-lz4/python-lz4"
- url = "https://pypi.io/packages/source/l/lz4/lz4-3.1.0.tar.gz"
+ pypi = "lz4/lz4-3.1.0.tar.gz"
version('3.1.0', sha256='debe75513db3eb9e5cdcd82a329ff38374b6316ab65b848b571e0404746c1e05')
diff --git a/var/spack/repos/builtin/packages/py-lzstring/package.py b/var/spack/repos/builtin/packages/py-lzstring/package.py
index 33eb630918..296e34f94e 100644
--- a/var/spack/repos/builtin/packages/py-lzstring/package.py
+++ b/var/spack/repos/builtin/packages/py-lzstring/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyLzstring(PythonPackage):
"""lz-string for python."""
homepage = "https://github.com/gkovacs/lz-string-python"
- url = "https://pypi.io/packages/source/l/lzstring/lzstring-1.0.3.tar.gz"
+ pypi = "lzstring/lzstring-1.0.3.tar.gz"
version('1.0.3', sha256='d54dd5a5f86837ccfc1343cc9f1cb0674d2d6ebd4b49f6408c35104f0a996cb4')
diff --git a/var/spack/repos/builtin/packages/py-m2r/package.py b/var/spack/repos/builtin/packages/py-m2r/package.py
index a107f6d18e..619e3128a8 100644
--- a/var/spack/repos/builtin/packages/py-m2r/package.py
+++ b/var/spack/repos/builtin/packages/py-m2r/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-macholib/package.py b/var/spack/repos/builtin/packages/py-macholib/package.py
index 702ea07e0b..fe59bcce3e 100644
--- a/var/spack/repos/builtin/packages/py-macholib/package.py
+++ b/var/spack/repos/builtin/packages/py-macholib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyMacholib(PythonPackage):
"""Python package for Mach-O header analysis and editing"""
- homepage = "https://pypi.python.org/pypi/macholib"
- url = "https://pypi.io/packages/source/m/macholib/macholib-1.11.tar.gz"
+ pypi = "macholib/macholib-1.11.tar.gz"
version('1.11', 'c4180ffc6f909bf8db6cd81cff4b6f601d575568f4d5dee148c830e9851eb9db')
diff --git a/var/spack/repos/builtin/packages/py-machotools/package.py b/var/spack/repos/builtin/packages/py-machotools/package.py
index a0b4337892..a322edb5b7 100644
--- a/var/spack/repos/builtin/packages/py-machotools/package.py
+++ b/var/spack/repos/builtin/packages/py-machotools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyMachotools(PythonPackage):
"""Python package for editing Mach-O headers using macholib"""
- homepage = "https://pypi.python.org/pypi/machotools"
- url = "https://pypi.io/packages/source/m/machotools/machotools-0.2.0.tar.gz"
+ pypi = "machotools/machotools-0.2.0.tar.gz"
version('0.2.0', sha256='e3950fa263169087d44a3d0521a3267d5128efd1b85252670c7171955939ab58')
diff --git a/var/spack/repos/builtin/packages/py-macs2/package.py b/var/spack/repos/builtin/packages/py-macs2/package.py
index b9703842b5..62c21dfa36 100644
--- a/var/spack/repos/builtin/packages/py-macs2/package.py
+++ b/var/spack/repos/builtin/packages/py-macs2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyMacs2(PythonPackage):
"""MACS2 Model-based Analysis of ChIP-Seq"""
homepage = "https://github.com/taoliu/MACS"
- url = "https://pypi.io/packages/source/M/MACS2/MACS2-2.2.4.tar.gz"
+ pypi = "MACS2/MACS2-2.2.4.tar.gz"
version('2.2.4', sha256='b131aadc8f5fd94bec35308b821e1f7585def788d2e7c756fc8cac402ffee25b')
version('2.1.4', sha256='e4966d001914320829ab859c7bc8e92c6410aa7bdbddfd00b7625e9a0fb15c97')
diff --git a/var/spack/repos/builtin/packages/py-maestrowf/package.py b/var/spack/repos/builtin/packages/py-maestrowf/package.py
index 69812a6b38..90826e746f 100644
--- a/var/spack/repos/builtin/packages/py-maestrowf/package.py
+++ b/var/spack/repos/builtin/packages/py-maestrowf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyMaestrowf(PythonPackage):
simulation studies."""
homepage = "https://github.com/LLNL/maestrowf/"
- url = "https://pypi.io/packages/source/m/maestrowf/maestrowf-1.1.8.tar.gz"
+ pypi = "maestrowf/maestrowf-1.1.8.tar.gz"
git = "https://github.com/LLNL/maestrowf/"
maintainers = ['FrankD412']
diff --git a/var/spack/repos/builtin/packages/py-magic/package.py b/var/spack/repos/builtin/packages/py-magic/package.py
index ed29fdcdbb..dcc5d9a1ba 100644
--- a/var/spack/repos/builtin/packages/py-magic/package.py
+++ b/var/spack/repos/builtin/packages/py-magic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mailchecker/package.py b/var/spack/repos/builtin/packages/py-mailchecker/package.py
new file mode 100644
index 0000000000..f4191dfe99
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-mailchecker/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyMailchecker(PythonPackage):
+ """Cross-language email validation. Backed by a database of thousands
+ throwable email providers"""
+
+ homepage = "https://github.com/FGRibreau/mailchecker"
+ pypi = "mailchecker/mailchecker-4.0.3.tar.gz"
+
+ version('4.0.3', sha256='00dbe9739c754366233eb3887c5deef987672482a26e814314c3e749fc7b1d1f')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-mako/package.py b/var/spack/repos/builtin/packages/py-mako/package.py
index b60dd8d184..8ae2da458b 100644
--- a/var/spack/repos/builtin/packages/py-mako/package.py
+++ b/var/spack/repos/builtin/packages/py-mako/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,11 @@ class PyMako(PythonPackage):
"""A super-fast templating language that borrows the best
ideas from the existing templating languages."""
- homepage = "https://pypi.python.org/pypi/mako"
- url = "https://pypi.io/packages/source/M/Mako/Mako-1.0.1.tar.gz"
+ pypi = "Mako/Mako-1.0.1.tar.gz"
+ version('1.1.4', sha256='17831f0b7087c313c0ffae2bcbbd3c1d5ba9eeac9c38f2eb7b50e8c99fe9d5ab')
version('1.0.4', sha256='fed99dbe4d0ddb27a33ee4910d8708aca9ef1fe854e668387a9ab9a90cbf9059')
version('1.0.1', sha256='45f0869febea59dab7efd256fb451c377cbb7947bef386ff0bb44627c31a8d1c')
depends_on('py-setuptools', type='build')
- depends_on('py-mock', type='test')
- depends_on('py-pytest', type='test')
depends_on('py-markupsafe@0.9.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mapclassify/package.py b/var/spack/repos/builtin/packages/py-mapclassify/package.py
new file mode 100644
index 0000000000..b3974e42b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-mapclassify/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMapclassify(PythonPackage):
+ """Classification Schemes for Choropleth Maps."""
+
+ homepage = "https://github.com/pysal/mapclassify"
+ pypi = "mapclassify/mapclassify-2.4.2.tar.gz"
+
+ maintainers = ['adamjstewart']
+
+ version('2.4.2', sha256='bc20954aa433466f5fbc572e3f23b05f9606b59209f40b0ded93ac1ca983d24e')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-scipy@1.0:', type=('build', 'run'))
+ depends_on('py-numpy@1.3:', type=('build', 'run'))
+ depends_on('py-scikit-learn', type=('build', 'run'))
+ depends_on('py-pandas@1.0:', type=('build', 'run'))
+ depends_on('py-networkx', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-markdown/package.py b/var/spack/repos/builtin/packages/py-markdown/package.py
index 665d94dee4..12378f098e 100644
--- a/var/spack/repos/builtin/packages/py-markdown/package.py
+++ b/var/spack/repos/builtin/packages/py-markdown/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyMarkdown(PythonPackage):
"""
homepage = "https://pythonhosted.org/Markdown/"
- url = "https://pypi.io/packages/source/m/markdown/Markdown-2.6.11.tar.gz"
+ pypi = "markdown/Markdown-2.6.11.tar.gz"
version('3.1.1', sha256='2e50876bcdd74517e7b71f3e7a76102050edec255b3983403f1a63e7c8a41e7a')
version('2.6.11', sha256='a856869c7ff079ad84a3e19cd87a64998350c2b94e9e08e44270faef33400f81')
diff --git a/var/spack/repos/builtin/packages/py-markdown2/package.py b/var/spack/repos/builtin/packages/py-markdown2/package.py
new file mode 100644
index 0000000000..b3cf580238
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-markdown2/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMarkdown2(PythonPackage):
+ """A fast and complete Python implementation of Markdown."""
+
+ homepage = "https://github.com/trentm/python-markdown2"
+ pypi = "markdown2/markdown2-2.3.9.tar.gz"
+
+ version('2.4.0', sha256='28d769f0e544e6f68f684f01e9b186747b079a6927d9ca77ebc8c640a2829b1b')
+
+ depends_on('python@3.5:3.999', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-markovify/package.py b/var/spack/repos/builtin/packages/py-markovify/package.py
index d7b93c1e3d..bb18d7ec74 100644
--- a/var/spack/repos/builtin/packages/py-markovify/package.py
+++ b/var/spack/repos/builtin/packages/py-markovify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyMarkovify(PythonPackage):
corpora of text and generating random sentences from that."""
homepage = "https://github.com/jsvine/markovify"
- url = "https://pypi.io/packages/source/m/markovify/markovify-0.8.3.tar.gz"
+ pypi = "markovify/markovify-0.8.3.tar.gz"
version('0.8.3', sha256='254405c5b2f819ae388c39a53e6bc038bfbc24713441869ce90a1cd67e4a89ce')
diff --git a/var/spack/repos/builtin/packages/py-markupsafe/package.py b/var/spack/repos/builtin/packages/py-markupsafe/package.py
index f334d03cee..ae95876b9d 100644
--- a/var/spack/repos/builtin/packages/py-markupsafe/package.py
+++ b/var/spack/repos/builtin/packages/py-markupsafe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,7 @@ class PyMarkupsafe(PythonPackage):
Mako templating engine, the Pylons web framework and many more."""
homepage = "http://www.pocoo.org/projects/markupsafe/"
- url = "https://pypi.io/packages/source/M/MarkupSafe/MarkupSafe-1.1.1.tar.gz"
-
- import_modules = ['markupsafe']
+ pypi = "MarkupSafe/MarkupSafe-1.1.1.tar.gz"
version('1.1.1', sha256='29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b')
version('1.0', sha256='a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665')
diff --git a/var/spack/repos/builtin/packages/py-matplotlib/package.py b/var/spack/repos/builtin/packages/py-matplotlib/package.py
index ebb95033cf..21d71e9585 100644
--- a/var/spack/repos/builtin/packages/py-matplotlib/package.py
+++ b/var/spack/repos/builtin/packages/py-matplotlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,20 +11,23 @@ class PyMatplotlib(PythonPackage):
and interactive visualizations in Python."""
homepage = "https://matplotlib.org/"
- url = "https://pypi.io/packages/source/m/matplotlib/matplotlib-3.3.2.tar.gz"
+ pypi = "matplotlib/matplotlib-3.3.2.tar.gz"
maintainers = ['adamjstewart']
-
import_modules = [
- 'mpl_toolkits', 'matplotlib', 'mpl_toolkits.axes_grid1',
- 'mpl_toolkits.axes_grid', 'mpl_toolkits.mplot3d',
- 'mpl_toolkits.axisartist', 'matplotlib.compat', 'matplotlib.tri',
- 'matplotlib.axes', 'matplotlib.sphinxext', 'matplotlib.cbook',
- 'matplotlib.backends', 'matplotlib.style', 'matplotlib.projections',
- 'matplotlib.testing', 'matplotlib.backends.qt_editor',
- 'matplotlib.testing.jpl_units'
+ 'mpl_toolkits.axes_grid1', 'mpl_toolkits.axes_grid',
+ 'mpl_toolkits.mplot3d', 'mpl_toolkits.axisartist', 'matplotlib',
+ 'matplotlib.compat', 'matplotlib.tri', 'matplotlib.axes',
+ 'matplotlib.sphinxext', 'matplotlib.cbook', 'matplotlib.backends',
+ 'matplotlib.backends.qt_editor', 'matplotlib.style',
+ 'matplotlib.projections', 'matplotlib.testing',
+ 'matplotlib.testing.jpl_units', 'pylab'
]
+ version('3.4.2', sha256='d8d994cefdff9aaba45166eb3de4f5211adb4accac85cbf97137e98f26ea0219')
+ version('3.4.1', sha256='84d4c4f650f356678a5d658a43ca21a41fca13f9b8b00169c0b76e6a6a948908')
+ version('3.4.0', sha256='424ddb3422c65b284a38a97eb48f5cb64b66a44a773e0c71281a347f1738f146')
+ version('3.3.4', sha256='3e477db76c22929e4c6876c44f88d790aacdf3c3f8f3a90cb1975c0bf37825b0')
version('3.3.3', sha256='b1b60c6476c4cfe9e5cf8ab0d3127476fd3d5f05de0f343a452badaad0e4bdec')
version('3.3.2', sha256='3d2edbf59367f03cd9daf42939ca06383a7d7803e3993eb5ff1bee8e8a3fbb6b')
version('3.3.1', sha256='87f53bcce90772f942c2db56736788b39332d552461a5cb13f05ff45c1680f0e')
@@ -44,10 +47,10 @@ class PyMatplotlib(PythonPackage):
version('2.2.2', sha256='4dc7ef528aad21f22be85e95725234c5178c0f938e2228ca76640e5e84d8cde8')
version('2.0.2', sha256='0ffbc44faa34a8b1704bc108c451ecf87988f900ef7ce757b8e2e84383121ff1')
version('2.0.0', sha256='36cf0985829c1ab2b8b1dae5e2272e53ae681bf33ab8bedceed4f0565af5f813')
- version('1.5.3', sha256='a0a5dc39f785014f2088fed2c6d2d129f0444f71afbb9c44f7bdf1b14d86ebbc')
- version('1.5.1', sha256='3ab8d968eac602145642d0db63dd8d67c85e9a5444ce0e2ecb2a8fedc7224d40')
- version('1.4.3', sha256='61f201c6a82e89e4d9e324266203fad44f95fd8f36d8eec0d8690273e1182f75')
- version('1.4.2', sha256='17a3c7154f152d8dfed1f37517c0a8c5db6ade4f6334f684989c36dab84ddb54')
+ version('1.5.3', sha256='a0a5dc39f785014f2088fed2c6d2d129f0444f71afbb9c44f7bdf1b14d86ebbc', deprecated=True)
+ version('1.5.1', sha256='3ab8d968eac602145642d0db63dd8d67c85e9a5444ce0e2ecb2a8fedc7224d40', deprecated=True)
+ version('1.4.3', sha256='61f201c6a82e89e4d9e324266203fad44f95fd8f36d8eec0d8690273e1182f75', deprecated=True)
+ version('1.4.2', sha256='17a3c7154f152d8dfed1f37517c0a8c5db6ade4f6334f684989c36dab84ddb54', deprecated=True)
# https://matplotlib.org/tutorials/introductory/usage.html#backends
# From `lib/matplotlib/rcsetup.py`:
@@ -65,7 +68,9 @@ class PyMatplotlib(PythonPackage):
if sys.platform == 'darwin':
default_backend = 'macosx'
- variant('backend', default=default_backend, description='Default backend',
+ variant('backend', default=default_backend,
+ description='Default backend. All backends are installed and ' +
+ 'functional as long as dependencies are found at run-time',
values=all_backends, multi=False)
variant('movies', default=False,
description='Enable support for saving movies')
@@ -84,19 +89,22 @@ class PyMatplotlib(PythonPackage):
depends_on('python@2.7:2.8,3.4:', when='@:2', type=('build', 'link', 'run'))
depends_on('python@3.5:', when='@3:', type=('build', 'link', 'run'))
depends_on('python@3.6:', when='@3.1:', type=('build', 'link', 'run'))
+ depends_on('python@3.7:', when='@3.4:', type=('build', 'link', 'run'))
depends_on('freetype@2.3:') # freetype 2.6.1 needed for tests to pass
depends_on('qhull@2015.2:', when='@3.3:')
depends_on('libpng@1.2:')
- depends_on('py-certifi@2020.6.20:', when='@3.3.1:3.3.2', type=('build', 'run'))
- depends_on('py-certifi@2020.6.20:', when='@3.3.3:', type='build')
+ depends_on('py-setuptools', type=('build', 'run')) # See #3813
+ depends_on('py-certifi@2020.6.20:', when='@3.3.1:', type='build')
depends_on('py-numpy@1.11:', type=('build', 'run'))
depends_on('py-numpy@1.15:', when='@3.3:', type=('build', 'run'))
- depends_on('py-setuptools', type=('build', 'run')) # See #3813
+ depends_on('py-numpy@1.16:', when='@3.4:', type=('build', 'run'))
depends_on('py-cycler@0.10:', type=('build', 'run'))
- depends_on('py-python-dateutil@2.1:', type=('build', 'run'))
depends_on('py-kiwisolver@1.0.1:', type=('build', 'run'), when='@2.2.0:')
- depends_on('py-pyparsing@2.0.3,2.0.5:2.1.1,2.1.3:2.1.5,2.1.7:', type=('build', 'run'))
depends_on('pil@6.2.0:', when='@3.3:', type=('build', 'run'))
+ depends_on('py-pyparsing@2.0.3,2.0.5:2.1.1,2.1.3:2.1.5,2.1.7:', type=('build', 'run'))
+ depends_on('py-pyparsing@2.2.1:', when='@3.4:', type=('build', 'run'))
+ depends_on('py-python-dateutil@2.1:', type=('build', 'run'))
+ depends_on('py-python-dateutil@2.7:', when='@3.4:', type=('build', 'run'))
depends_on('py-pytz', type=('build', 'run'), when='@:2')
depends_on('py-subprocess32', type=('build', 'run'), when='^python@:2.7')
depends_on('py-functools32', type=('build', 'run'), when='@:2.0.999 ^python@:2.7')
@@ -132,7 +140,7 @@ class PyMatplotlib(PythonPackage):
depends_on('imagemagick', when='+animation')
depends_on('pil@3.4:', when='+image', type=('build', 'run'))
depends_on('texlive', when='+latex', type='run')
- depends_on('ghostscript@0.9:', when='+latex', type='run')
+ depends_on('ghostscript@9.0:', when='+latex', type='run')
depends_on('fontconfig@2.7:', when='+fonts')
depends_on('pkgconfig', type='build')
@@ -182,7 +190,11 @@ class PyMatplotlib(PythonPackage):
setup.write('[libs]\n')
setup.write('system_freetype = True\n')
setup.write('system_qhull = True\n')
+ if self.spec.satisfies('%clang'):
+ setup.write('enable_lto = False\n')
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
def build_test(self):
pytest = which('pytest')
pytest()
diff --git a/var/spack/repos/builtin/packages/py-mayavi/package.py b/var/spack/repos/builtin/packages/py-mayavi/package.py
index 1fe477bbc7..1d74cdbf0b 100644
--- a/var/spack/repos/builtin/packages/py-mayavi/package.py
+++ b/var/spack/repos/builtin/packages/py-mayavi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyMayavi(PythonPackage):
"""Mayavi: 3D visualization of scientific data in Python."""
homepage = "https://docs.enthought.com/mayavi/mayavi/index.html"
- url = "https://pypi.io/packages/source/m/mayavi/mayavi-4.7.1.tar.bz2"
+ pypi = "mayavi/mayavi-4.7.1.tar.bz2"
version('4.7.1', sha256='be51fb6f886f304f7c593c907e6a2e88d7919f8f446cdccfcd184fa35b3db724')
diff --git a/var/spack/repos/builtin/packages/py-mccabe/package.py b/var/spack/repos/builtin/packages/py-mccabe/package.py
index cd4c0df089..898ec641d1 100644
--- a/var/spack/repos/builtin/packages/py-mccabe/package.py
+++ b/var/spack/repos/builtin/packages/py-mccabe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,7 +28,6 @@ class PyMccabe(PythonPackage):
depends_on('python@2.7:2.8,3.3:')
depends_on('py-setuptools', type='build')
- depends_on('py-pytest', type='test')
def patch(self):
"""Filter pytest-runner requirement out of setup.py."""
diff --git a/var/spack/repos/builtin/packages/py-mdanalysis/package.py b/var/spack/repos/builtin/packages/py-mdanalysis/package.py
index 0651123ef3..666f3b87f1 100644
--- a/var/spack/repos/builtin/packages/py-mdanalysis/package.py
+++ b/var/spack/repos/builtin/packages/py-mdanalysis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyMdanalysis(PythonPackage):
topology formats.)"""
homepage = "http://www.mdanalysis.org"
- url = "https://pypi.io/packages/source/M/MDAnalysis/MDAnalysis-0.19.2.tar.gz"
+ pypi = "MDAnalysis/MDAnalysis-0.19.2.tar.gz"
version('1.0.0', sha256='f45a024aca45e390ff1c45ca90beb2180b78881be377e2a1aa9cd6c109bcfa81')
version('0.20.1', sha256='d04b71b193b9716d2597ffb9938b93f43487fa535da1bb5c1f2baccf356d7df9')
@@ -41,7 +41,7 @@ class PyMdanalysis(PythonPackage):
depends_on('py-six@1.4.0:', type=('build', 'run'))
depends_on('py-networkx@1.0:', type=('build', 'run'))
- depends_on('py-gsd@1.4.0:', when='@1.17.0:', type=('build', 'run'))
+ depends_on('py-gsd@1.4.0:', when='@0.17.0:', type=('build', 'run'))
depends_on('py-mmtf-python@1.0.0:', when='@0.16.0:', type=('build', 'run'))
depends_on('py-mock', when='@0.18.0:', type=('build', 'run'))
depends_on('py-tqdm@4.43.0:', when='@1.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mechanize/package.py b/var/spack/repos/builtin/packages/py-mechanize/package.py
index 06ae015836..a85bdf4ccf 100644
--- a/var/spack/repos/builtin/packages/py-mechanize/package.py
+++ b/var/spack/repos/builtin/packages/py-mechanize/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyMechanize(PythonPackage):
"""Stateful programmatic web browsing."""
homepage = "https://github.com/python-mechanize/mechanize"
- url = "https://pypi.io/packages/source/m/mechanize/mechanize-0.4.3.tar.gz"
+ pypi = "mechanize/mechanize-0.4.3.tar.gz"
version('0.4.3', sha256='d7d7068be5e1b3069575c98c870aaa96dd26603fe8c8697b470e2f65259fddbf')
version('0.2.5', sha256='2e67b20d107b30c00ad814891a095048c35d9d8cb9541801cebe85684cc84766')
diff --git a/var/spack/repos/builtin/packages/py-memory-profiler/package.py b/var/spack/repos/builtin/packages/py-memory-profiler/package.py
index ee3f3ec760..cb942d458b 100644
--- a/var/spack/repos/builtin/packages/py-memory-profiler/package.py
+++ b/var/spack/repos/builtin/packages/py-memory-profiler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyMemoryProfiler(PythonPackage):
"""A module for monitoring memory usage of a python program"""
homepage = "https://github.com/fabianp/memory_profiler"
- url = "https://pypi.io/packages/source/m/memory_profiler/memory_profiler-0.57.0.tar.gz"
+ pypi = "memory_profiler/memory_profiler-0.57.0.tar.gz"
version('0.57.0', sha256='23b196f91ea9ac9996e30bfab1e82fecc30a4a1d24870e81d1e81625f786a2c3')
version('0.47', sha256='e992f2a341a5332dad1ad4a008eeac7cfe78c7ea4abdf7535a3e7e79093328cb')
diff --git a/var/spack/repos/builtin/packages/py-memprof/package.py b/var/spack/repos/builtin/packages/py-memprof/package.py
new file mode 100644
index 0000000000..e6af5a333e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-memprof/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMemprof(PythonPackage):
+ """memprof logs and plots the memory usage of all the
+ variables during the execution of the decorated methods."""
+
+ homepage = "http://jmdana.github.io/memprof/"
+ pypi = "memprof/memprof-0.3.6.tar.gz"
+
+ version('0.3.6', sha256='a8376ce476bf82a5eb465d1a30b8ffc86cc55b0b6de7aa4cdeccb4c99586d967')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-argparse', when='^python@:2.6', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mercantile/package.py b/var/spack/repos/builtin/packages/py-mercantile/package.py
new file mode 100644
index 0000000000..dc752b3477
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-mercantile/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMercantile(PythonPackage):
+ """Web mercator XYZ tile utilities."""
+
+ homepage = "https://github.com/mapbox/mercantile"
+ pypi = "mercantile/mercantile-1.1.6.tar.gz"
+
+ maintainers = ['adamjstewart']
+
+ version('1.1.6', sha256='0dff4cbc2c92ceca0e0dfbb3dc74392a96d33cfa29afb1bdfcc80283d3ef4207')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-click@3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-merlin/package.py b/var/spack/repos/builtin/packages/py-merlin/package.py
index 199c0bcd5f..0d0aef7c8a 100644
--- a/var/spack/repos/builtin/packages/py-merlin/package.py
+++ b/var/spack/repos/builtin/packages/py-merlin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyMerlin(PythonPackage):
"""Merlin Workflow for HPC."""
homepage = "https://github.com/LLNL/merlin"
- url = "https://pypi.io/packages/source/m/merlin/merlin-1.4.1.tar.gz"
+ pypi = "merlin/merlin-1.4.1.tar.gz"
git = "https://github.com/LLNL/merlin.git"
version('1.7.5', sha256='1994c1770ec7fc9da216f9d0ca8214684dcc0daa5fd55337b96e308b2e68daaa')
@@ -21,9 +21,6 @@ class PyMerlin(PythonPackage):
depends_on('python@3.6:', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
-
- depends_on('py-pytest', type='test')
-
depends_on('py-cached-property', type=('build', 'run'))
depends_on('py-celery@5.0.0+redis+sqlalchemy', when="@1.7.5:", type=('build', 'run'))
depends_on('py-celery@4.3.0:4.999+redis+sqlalchemy', when="@:1.7.4", type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-metasv/package.py b/var/spack/repos/builtin/packages/py-metasv/package.py
index f9b81e4209..72b5a31925 100644
--- a/var/spack/repos/builtin/packages/py-metasv/package.py
+++ b/var/spack/repos/builtin/packages/py-metasv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-methylcode/package.py b/var/spack/repos/builtin/packages/py-methylcode/package.py
index 698588600a..1de785fbc3 100644
--- a/var/spack/repos/builtin/packages/py-methylcode/package.py
+++ b/var/spack/repos/builtin/packages/py-methylcode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-metpy/package.py b/var/spack/repos/builtin/packages/py-metpy/package.py
new file mode 100644
index 0000000000..f1ff65f4a6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-metpy/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMetpy(PythonPackage):
+ """Collection of tools for reading, visualizing and performing calculations
+ with weather data."""
+
+ homepage = "https://github.com/Unidata/MetPy"
+ pypi = "MetPy/MetPy-1.0.tar.gz"
+
+ version('1.0', sha256='11b043aaa4e3d35db319e96bb9967eb9f73da653e155bca2d62f838108b100dc')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-importlib-metadata@1.0.0:', when='^python@:3.7.999', type=('build', 'run'))
+ depends_on('py-importlib-resources@1.3.0:', when='^python@:3.8.999', type=('build', 'run'))
+ depends_on('py-matplotlib@2.1.0:', type=('build', 'run'))
+ depends_on('py-numpy@1.16.0:', type=('build', 'run'))
+ depends_on('py-pandas@0.22.0:', type=('build', 'run'))
+ depends_on('py-pint@0.10.1:', type=('build', 'run'))
+ depends_on('py-pooch@0.1:', type=('build', 'run'))
+ depends_on('py-pyproj@2.3.0:2.999', type=('build', 'run'))
+ depends_on('py-scipy@1.0:', type=('build', 'run'))
+ depends_on('py-traitlets@4.3.0:', type=('build', 'run'))
+ depends_on('py-xarray@0.14.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mg-rast-tools/package.py b/var/spack/repos/builtin/packages/py-mg-rast-tools/package.py
index 80f444c207..a30d0d4738 100644
--- a/var/spack/repos/builtin/packages/py-mg-rast-tools/package.py
+++ b/var/spack/repos/builtin/packages/py-mg-rast-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mido/package.py b/var/spack/repos/builtin/packages/py-mido/package.py
index 695d21623e..7bc86cf73f 100644
--- a/var/spack/repos/builtin/packages/py-mido/package.py
+++ b/var/spack/repos/builtin/packages/py-mido/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mikado/package.py b/var/spack/repos/builtin/packages/py-mikado/package.py
new file mode 100644
index 0000000000..83a32b846f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-mikado/package.py
@@ -0,0 +1,41 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMikado(PythonPackage):
+ """Mikado is a lightweight Python3 pipeline whose purpose is to facilitate
+ the identification of expressed loci from RNA-Seq data * and to select
+ the best models in each locus."""
+
+ homepage = "https://github.com/EI-CoreBioinformatics/mikado"
+ pypi = "Mikado/Mikado-1.2.4.tar.gz"
+
+ version('1.2.4', sha256='c0485dba3b7c285599809e058c83f33b5efa9522d20d9f980423410604207f61')
+
+ depends_on('py-wheel@0.28.0:', type='build')
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-jsonschema', type=('build', 'run'))
+ depends_on('py-cython@0.25:', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-networkx@1.10:', type=('build', 'run'))
+ depends_on('py-sqlalchemy@1:', type=('build', 'run'))
+ depends_on('py-sqlalchemy-utils', type=('build', 'run'))
+ depends_on('py-biopython@1.66:', type=('build', 'run'))
+ depends_on('py-intervaltree', type=('build', 'run'))
+ depends_on('py-nose', type=('build', 'run'))
+ depends_on('py-pyfaidx', type=('build', 'run'))
+ depends_on('py-scikit-learn@0.17.0:', type=('build', 'run'))
+ depends_on('py-scipy@0.15.0:', type=('build', 'run'))
+ depends_on('py-python-magic', type=('build', 'run'))
+ depends_on('py-drmaa', type=('build', 'run'))
+ depends_on('snakemake', type=('build', 'run'))
+ depends_on('py-docutils@:0.13.0,0.13.2:', type=('build', 'run'))
+ depends_on('py-tabulate', type=('build', 'run'))
+ depends_on('py-ujson', type=('build', 'run'))
+ depends_on('py-simplejson', type=('build', 'run'))
+ depends_on('python@3.4:', type=('build', 'run'))
+ depends_on('py-typing', when='^python@:3.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-minrpc/package.py b/var/spack/repos/builtin/packages/py-minrpc/package.py
index 606c3c987b..5832f976e4 100644
--- a/var/spack/repos/builtin/packages/py-minrpc/package.py
+++ b/var/spack/repos/builtin/packages/py-minrpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyMinrpc(PythonPackage):
"""Minimalistic RPC utility (only used within cpymad and pytao)."""
homepage = "https://github.com/hibtc/minrpc"
- url = "https://pypi.io/packages/source/m/minrpc/minrpc-0.0.11.tar.gz"
+ pypi = "minrpc/minrpc-0.0.11.tar.gz"
version('0.0.11', sha256='bed53160f2774fdae7bd3d0fb5d1c77d17395394ec28a9e95a5859f486b54893')
diff --git a/var/spack/repos/builtin/packages/py-misopy/package.py b/var/spack/repos/builtin/packages/py-misopy/package.py
index d55896c680..181481aeef 100644
--- a/var/spack/repos/builtin/packages/py-misopy/package.py
+++ b/var/spack/repos/builtin/packages/py-misopy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyMisopy(PythonPackage):
across samples."""
homepage = "http://miso.readthedocs.io/en/fastmiso/"
- url = "https://pypi.io/packages/source/m/misopy/misopy-0.5.4.tar.gz"
+ pypi = "misopy/misopy-0.5.4.tar.gz"
version('0.5.4', sha256='377a28b0c254b1920ffdc2d89cf96c3a21cadf1cf148ee6d6ef7a88ada067dfc')
diff --git a/var/spack/repos/builtin/packages/py-mistune/package.py b/var/spack/repos/builtin/packages/py-mistune/package.py
index f500e469d9..eeab123626 100644
--- a/var/spack/repos/builtin/packages/py-mistune/package.py
+++ b/var/spack/repos/builtin/packages/py-mistune/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mixedhtseq/package.py b/var/spack/repos/builtin/packages/py-mixedhtseq/package.py
index c01348a099..ae74d6cca0 100644
--- a/var/spack/repos/builtin/packages/py-mixedhtseq/package.py
+++ b/var/spack/repos/builtin/packages/py-mixedhtseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mlperf-logging/package.py b/var/spack/repos/builtin/packages/py-mlperf-logging/package.py
index 8511471c37..2db75fac19 100644
--- a/var/spack/repos/builtin/packages/py-mlperf-logging/package.py
+++ b/var/spack/repos/builtin/packages/py-mlperf-logging/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mlxtend/package.py b/var/spack/repos/builtin/packages/py-mlxtend/package.py
index 3fb1aef151..c2bc8523b4 100644
--- a/var/spack/repos/builtin/packages/py-mlxtend/package.py
+++ b/var/spack/repos/builtin/packages/py-mlxtend/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mmcv/package.py b/var/spack/repos/builtin/packages/py-mmcv/package.py
index c98d9014fc..d8a5ac91e0 100644
--- a/var/spack/repos/builtin/packages/py-mmcv/package.py
+++ b/var/spack/repos/builtin/packages/py-mmcv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mmtf-python/package.py b/var/spack/repos/builtin/packages/py-mmtf-python/package.py
index e86f4b7f8e..2ad6ad5204 100644
--- a/var/spack/repos/builtin/packages/py-mmtf-python/package.py
+++ b/var/spack/repos/builtin/packages/py-mmtf-python/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyMmtfPython(PythonPackage):
biological structures."""
homepage = "https://github.com/rcsb/mmtf-python"
- url = "https://pypi.io/packages/source/m/mmtf-python/mmtf-python-1.1.2.tar.gz"
+ pypi = "mmtf-python/mmtf-python-1.1.2.tar.gz"
version('1.1.2', sha256='a5caa7fcd2c1eaa16638b5b1da2d3276cbd3ed3513f0c2322957912003b6a8df')
diff --git a/var/spack/repos/builtin/packages/py-mo-pack/package.py b/var/spack/repos/builtin/packages/py-mo-pack/package.py
index c880d5d584..bbbe0ee6c3 100644
--- a/var/spack/repos/builtin/packages/py-mo-pack/package.py
+++ b/var/spack/repos/builtin/packages/py-mo-pack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,3 +18,6 @@ class PyMoPack(PythonPackage):
depends_on('libmo-unpack')
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-cython', type=('build', 'run'))
+
+ def setup_build_environment(self, env):
+ env.append_flags('LDFLAGS', self.spec['libmo-unpack'].libs.search_flags)
diff --git a/var/spack/repos/builtin/packages/py-mock/package.py b/var/spack/repos/builtin/packages/py-mock/package.py
index 1f35d26020..e5a97fc89e 100644
--- a/var/spack/repos/builtin/packages/py-mock/package.py
+++ b/var/spack/repos/builtin/packages/py-mock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyMock(PythonPackage):
they have been used."""
homepage = "https://github.com/testing-cabal/mock"
- url = "https://pypi.io/packages/source/m/mock/mock-3.0.5.tar.gz"
+ pypi = "mock/mock-3.0.5.tar.gz"
version('3.0.5', sha256='83657d894c90d5681d62155c82bda9c1187827525880eda8ff5df4ec813437c3')
version('2.0.0', sha256='b158b6df76edd239b8208d481dc46b6afd45a846b7812ff0ce58971cf5bc8bba')
@@ -23,5 +23,3 @@ class PyMock(PythonPackage):
depends_on('py-six@1.7:', type=('build', 'run'))
depends_on('py-six@1.9:', type=('build', 'run'), when='@2.0.0:')
depends_on('py-funcsigs@1:', type=('build', 'run'), when='^python@:3.2')
- depends_on('py-pytest', type='test')
- depends_on('py-pytest-cov', type='test')
diff --git a/var/spack/repos/builtin/packages/py-modred/package.py b/var/spack/repos/builtin/packages/py-modred/package.py
index e4715365c7..cf93181d4d 100644
--- a/var/spack/repos/builtin/packages/py-modred/package.py
+++ b/var/spack/repos/builtin/packages/py-modred/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-moltemplate/package.py b/var/spack/repos/builtin/packages/py-moltemplate/package.py
index ea2fed2e4f..894ba1f5d0 100644
--- a/var/spack/repos/builtin/packages/py-moltemplate/package.py
+++ b/var/spack/repos/builtin/packages/py-moltemplate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-monotonic/package.py b/var/spack/repos/builtin/packages/py-monotonic/package.py
index fec3f99f96..42736d0b84 100644
--- a/var/spack/repos/builtin/packages/py-monotonic/package.py
+++ b/var/spack/repos/builtin/packages/py-monotonic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyMonotonic(PythonPackage):
"""An implementation of time.monotonic() for Python 2 & < 3.3"""
- homepage = "https://pypi.python.org/pypi/monotonic"
- url = "https://pypi.io/packages/source/m/monotonic/monotonic-1.2.tar.gz"
+ pypi = "monotonic/monotonic-1.2.tar.gz"
version('1.2', sha256='c0e1ceca563ca6bb30b0fb047ee1002503ae6ad3585fc9c6af37a8f77ec274ba')
diff --git a/var/spack/repos/builtin/packages/py-monty/package.py b/var/spack/repos/builtin/packages/py-monty/package.py
index 8b4d406242..394bfa3779 100644
--- a/var/spack/repos/builtin/packages/py-monty/package.py
+++ b/var/spack/repos/builtin/packages/py-monty/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyMonty(PythonPackage):
"""Monty is the missing complement to Python."""
homepage = "https://github.com/materialsvirtuallab/monty"
- url = "https://pypi.io/packages/source/m/monty/monty-0.9.6.tar.gz"
+ pypi = "monty/monty-0.9.6.tar.gz"
version('0.9.6', sha256='bbf05646c4e86731c2398a57b1044add7487fc4ad03122578599ddd9a8892780')
diff --git a/var/spack/repos/builtin/packages/py-more-itertools/package.py b/var/spack/repos/builtin/packages/py-more-itertools/package.py
index dba18e66b3..d96651f47a 100644
--- a/var/spack/repos/builtin/packages/py-more-itertools/package.py
+++ b/var/spack/repos/builtin/packages/py-more-itertools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyMoreItertools(PythonPackage):
"""Additions to the standard Python itertools package."""
homepage = "https://github.com/erikrose/more-itertools"
- url = "https://pypi.io/packages/source/m/more-itertools/more-itertools-7.2.0.tar.gz"
-
- import_modules = ['more_itertools', 'more_itertools.tests']
+ pypi = "more-itertools/more-itertools-7.2.0.tar.gz"
version('7.2.0', sha256='409cd48d4db7052af495b09dec721011634af3753ae1ef92d2b32f73a745f832')
version('7.0.0', sha256='c3e4748ba1aad8dba30a4886b0b1a2004f9a863837b8654e7059eebf727afa5a')
diff --git a/var/spack/repos/builtin/packages/py-motmetrics/package.py b/var/spack/repos/builtin/packages/py-motmetrics/package.py
new file mode 100644
index 0000000000..73dc3d7ba6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-motmetrics/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyMotmetrics(PythonPackage):
+ """The py-motmetrics library provides a Python implementation of
+ metrics for benchmarking multiple object trackers (MOT)."""
+
+ homepage = "https://github.com/cheind/py-motmetrics"
+ pypi = "motmetrics/motmetrics-1.2.0.tar.gz"
+
+ version('1.2.0', sha256='7328d8468c948400b38fcc212f3e448bc1f2fdfc727e170d85a029e49f1cdbc6')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.12.1:', type=('build', 'run'))
+ depends_on('py-pandas@0.23.1:', type=('build', 'run'))
+ depends_on('py-scipy@0.19.0:', type=('build', 'run'))
+ depends_on('py-xmltodict@0.12.0:', type=('build', 'run'))
+ depends_on('py-enum34', when='^python@:2.999', type=('build', 'run'))
+ depends_on('py-flake8', type=('build', 'run'))
+ depends_on('py-flake8-import-order', type=('build', 'run'))
+ depends_on('py-pytest', type=('build', 'run'))
+ depends_on('py-pytest-benchmark', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-moviepy/package.py b/var/spack/repos/builtin/packages/py-moviepy/package.py
new file mode 100644
index 0000000000..5746a6a5d1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-moviepy/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMoviepy(PythonPackage):
+ """MoviePy is a Python module for video editing, which can
+ be used for basic operations (like cuts, concatenations,
+ title insertions), video compositing (a.k.a. non-linear
+ editing), video processing, or to create advanced effects.
+ It can read and write the most common video formats,
+ including GIF."""
+
+ homepage = "https://zulko.github.io/moviepy/"
+ pypi = "moviepy/moviepy-1.0.3.tar.gz"
+
+ version('1.0.3', sha256='2884e35d1788077db3ff89e763c5ba7bfddbd7ae9108c9bc809e7ba58fa433f5')
+ version('1.0.1', sha256='9d5b0a0e884c0eb92c431baa110e560059720aab15d2ef3e4cba3892c34cf1ed')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-decorator@4.0.2:4.9999', type=('build', 'run'))
+ depends_on('py-imageio@2.5:2.9999', when='^python@3.4:', type=('build', 'run'))
+ depends_on('py-imageio@2.0:2.4.9999', when='^python@:3.3.9999', type=('build', 'run'))
+ depends_on('py-imageio-ffmpeg@0.2.0:', when='^python@3.4:', type=('build', 'run'))
+ depends_on('py-tqdm@4.11.2:4.9999', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-requests@2.8.1:2.99999', type=('build', 'run'))
+ depends_on('py-proglog@:1.0.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mpi4py/package.py b/var/spack/repos/builtin/packages/py-mpi4py/package.py
index f4af51fcfe..154669a671 100644
--- a/var/spack/repos/builtin/packages/py-mpi4py/package.py
+++ b/var/spack/repos/builtin/packages/py-mpi4py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,7 @@ class PyMpi4py(PythonPackage):
MPI-1/MPI-2 specification and exposes an API which grounds on the
standard MPI-2 C++ bindings.
"""
- homepage = "https://pypi.python.org/pypi/mpi4py"
- url = "https://pypi.io/packages/source/m/mpi4py/mpi4py-3.0.3.tar.gz"
+ pypi = "mpi4py/mpi4py-3.0.3.tar.gz"
git = "https://github.com/mpi4py/mpi4py.git"
version('develop', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-mpld3/package.py b/var/spack/repos/builtin/packages/py-mpld3/package.py
index 9b5ba868cf..77a433c2f7 100644
--- a/var/spack/repos/builtin/packages/py-mpld3/package.py
+++ b/var/spack/repos/builtin/packages/py-mpld3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyMpld3(PythonPackage):
to the browser."""
homepage = "http://mpld3.github.com/"
- url = "https://pypi.io/packages/source/m/mpld3/mpld3-0.3.tar.gz"
+ pypi = "mpld3/mpld3-0.3.tar.gz"
version('0.3', sha256='4d455884a211bf99b37ecc760759435c7bb6a5955de47d8daf4967e301878ab7')
diff --git a/var/spack/repos/builtin/packages/py-mpmath/package.py b/var/spack/repos/builtin/packages/py-mpmath/package.py
index c6c4e02646..3e73b5aed8 100644
--- a/var/spack/repos/builtin/packages/py-mpmath/package.py
+++ b/var/spack/repos/builtin/packages/py-mpmath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyMpmath(PythonPackage):
"""A Python library for arbitrary-precision floating-point arithmetic."""
homepage = "http://mpmath.org"
- url = "https://pypi.io/packages/source/m/mpmath/mpmath-1.0.0.tar.gz"
+ pypi = "mpmath/mpmath-1.0.0.tar.gz"
version('1.1.0', sha256='fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6')
version('1.0.0', sha256='04d14803b6875fe6d69e6dccea87d5ae5599802e4b1df7997bddd2024001050c')
diff --git a/var/spack/repos/builtin/packages/py-msal-extensions/package.py b/var/spack/repos/builtin/packages/py-msal-extensions/package.py
index 75e6740f35..5c657ddcea 100644
--- a/var/spack/repos/builtin/packages/py-msal-extensions/package.py
+++ b/var/spack/repos/builtin/packages/py-msal-extensions/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyMsalExtensions(PythonPackage):
Microsoft Authentication Library for Python (MSAL)."""
homepage = "https://github.com/AzureAD/microsoft-authentication-library-for-python"
- url = "https://pypi.io/packages/source/m/msal-extensions/msal-extensions-0.2.2.tar.gz"
+ pypi = "msal-extensions/msal-extensions-0.2.2.tar.gz"
version('0.2.2', sha256='31414753c484679bb3b6c6401623eb4c3ccab630af215f2f78c1d5c4f8e1d1a9')
version('0.1.3', sha256='59e171a9a4baacdbf001c66915efeaef372fb424421f1a4397115a3ddd6205dc')
@@ -20,4 +20,3 @@ class PyMsalExtensions(PythonPackage):
depends_on('py-msal@0.4.1:1.999', type=('build', 'run'))
depends_on('py-portalocker@1.0:1.999', type=('build', 'run'))
depends_on('py-pathlib2', when='@0.2:^python@:2', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-msal/package.py b/var/spack/repos/builtin/packages/py-msal/package.py
index 7b870ed9d0..f71ecfff9c 100644
--- a/var/spack/repos/builtin/packages/py-msal/package.py
+++ b/var/spack/repos/builtin/packages/py-msal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyMsal(PythonPackage):
Accounts (MSA) using industry standard OAuth2 and OpenID Connect."""
homepage = "https://github.com/AzureAD/microsoft-authentication-library-for-python"
- url = "https://pypi.io/packages/source/m/msal/msal-1.3.0.tar.gz"
+ pypi = "msal/msal-1.3.0.tar.gz"
version('1.3.0', sha256='5442a3a9d006506e653d3c4daff40538bdf067bf07b6b73b32d1b231d5e77a92')
version('1.0.0', sha256='ecbe3f5ac77facad16abf08eb9d8562af3bc7184be5d4d90c9ef4db5bde26340')
diff --git a/var/spack/repos/builtin/packages/py-msgpack-numpy/package.py b/var/spack/repos/builtin/packages/py-msgpack-numpy/package.py
new file mode 100644
index 0000000000..225ab20c1f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-msgpack-numpy/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMsgpackNumpy(PythonPackage):
+ """This package provides encoding and decoding routines
+ that enable the serialization and deserialization of
+ numerical and array data types provided by numpy using the
+ highly efficient msgpack format. Serialization of Python's
+ native complex data types is also supported."""
+
+ homepage = "https://github.com/lebedov/msgpack-numpy"
+ pypi = "msgpack-numpy/msgpack-numpy-0.4.7.1.tar.gz"
+
+ version('0.4.7.1', sha256='7eaf51acf82d7c467d21aa71df94e1c051b2055e54b755442051b474fa7cf5e1')
+ version('0.4.7', sha256='8e975dd7dd9eb13cbf5e8cd90af1f12af98706bbeb7acfcbd8d558fd005a85d7')
+ version('0.4.6', sha256='ef3c5fe3d6cbab5c9db97de7062681c18f82d32a37177aaaf58b483d0336f135')
+ version('0.4.5', sha256='4e88a4147db70f69dce1556317291e04e5107ee7b93ea300f92f1187120da7ec')
+ version('0.4.4.3', sha256='c7db37ce01e268190568cf66a6a65d1ad81e3bcfa55dd824103c9b324608a44e')
+ version('0.4.4.2', sha256='ac3db232710070ac64d8e1c5123550a1c1fef45d77b6789d2170cbfd2ec711f3')
+ version('0.4.4.1', sha256='b7641ccf9f0f4e91a533e8c7be5e34d3f12ff877480879b252113d65c510eeef')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.9:', type=('build', 'run'))
+ depends_on('py-msgpack@0.5.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-msgpack/package.py b/var/spack/repos/builtin/packages/py-msgpack/package.py
index 77442a5421..b556e0d1e3 100644
--- a/var/spack/repos/builtin/packages/py-msgpack/package.py
+++ b/var/spack/repos/builtin/packages/py-msgpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyMsgpack(PythonPackage):
"""MessagePack (de)serializer."""
homepage = "https://msgpack.org/"
- url = "https://pypi.io/packages/source/m/msgpack/msgpack-1.0.0.tar.gz"
+ pypi = "msgpack/msgpack-1.0.0.tar.gz"
version('1.0.0', sha256='9534d5cc480d4aff720233411a1f765be90885750b07df772380b34c10ecb5c0')
version('0.6.2', sha256='ea3c2f859346fcd55fc46e96885301d9c2f7a36d453f5d8f2967840efa1e1830')
diff --git a/var/spack/repos/builtin/packages/py-msrest/package.py b/var/spack/repos/builtin/packages/py-msrest/package.py
index f589d152e7..27b6171661 100644
--- a/var/spack/repos/builtin/packages/py-msrest/package.py
+++ b/var/spack/repos/builtin/packages/py-msrest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyMsrest(PythonPackage):
"""AutoRest swagger generator Python client runtime."""
homepage = "https://github.com/Azure/msrest-for-python"
- url = "https://pypi.io/packages/source/m/msrest/msrest-0.6.16.tar.gz"
+ pypi = "msrest/msrest-0.6.16.tar.gz"
version('0.6.16', sha256='214c5be98954cb45feb6a6a858a7ae6d41a664e80294b65db225bbaa33d9ca3c')
diff --git a/var/spack/repos/builtin/packages/py-msrestazure/package.py b/var/spack/repos/builtin/packages/py-msrestazure/package.py
index 40208cfa67..2ab33f4bf7 100644
--- a/var/spack/repos/builtin/packages/py-msrestazure/package.py
+++ b/var/spack/repos/builtin/packages/py-msrestazure/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyMsrestazure(PythonPackage):
Azure-specific module."""
homepage = "https://github.com/Azure/msrestazure-for-python"
- url = "https://pypi.io/packages/source/m/msrestazure/msrestazure-0.6.3.tar.gz"
+ pypi = "msrestazure/msrestazure-0.6.3.tar.gz"
version('0.6.3', sha256='0ec9db93eeea6a6cf1240624a04f49cd8bbb26b98d84a63a8220cfda858c2a96')
diff --git a/var/spack/repos/builtin/packages/py-multi-key-dict/package.py b/var/spack/repos/builtin/packages/py-multi-key-dict/package.py
index d30777b9ef..37ab4f83fe 100644
--- a/var/spack/repos/builtin/packages/py-multi-key-dict/package.py
+++ b/var/spack/repos/builtin/packages/py-multi-key-dict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyMultiKeyDict(PythonPackage):
"""Multi key dictionary implementation"""
homepage = "https://github.com/formiaczek/multi_key_dict"
- url = "https://pypi.io/packages/source/m/multi_key_dict/multi_key_dict-2.0.3.tar.gz"
+ pypi = "multi_key_dict/multi_key_dict-2.0.3.tar.gz"
version('2.0.3', sha256='deebdec17aa30a1c432cb3f437e81f8621e1c0542a0c0617a74f71e232e9939e')
diff --git a/var/spack/repos/builtin/packages/py-multidict/package.py b/var/spack/repos/builtin/packages/py-multidict/package.py
index fe0d0ae627..0ea09e54c3 100644
--- a/var/spack/repos/builtin/packages/py-multidict/package.py
+++ b/var/spack/repos/builtin/packages/py-multidict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-multipledispatch/package.py b/var/spack/repos/builtin/packages/py-multipledispatch/package.py
new file mode 100644
index 0000000000..939d2c94ef
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-multipledispatch/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyMultipledispatch(PythonPackage):
+ """A relatively sane approach to multiple dispatch in Python."""
+
+ homepage = "https://multiple-dispatch.readthedocs.io/"
+ url = "https://github.com/mrocklin/multipledispatch/archive/0.6.0.tar.gz"
+
+ version('0.6.0', sha256='649f6e61b8a6ce581c75f32365c926b55495c01b8177135408b83aa03886cde0')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-multiprocess/package.py b/var/spack/repos/builtin/packages/py-multiprocess/package.py
index f382ff050f..c4ff2c8487 100644
--- a/var/spack/repos/builtin/packages/py-multiprocess/package.py
+++ b/var/spack/repos/builtin/packages/py-multiprocess/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyMultiprocess(PythonPackage):
"""Better multiprocessing and multithreading in Python"""
homepage = "https://github.com/uqfoundation/multiprocess"
- url = "https://pypi.io/packages/source/m/multiprocess/multiprocess-0.70.5.zip"
+ pypi = "multiprocess/multiprocess-0.70.5.zip"
version('0.70.9', sha256='9fd5bd990132da77e73dec6e9613408602a4612e1d73caf2e2b813d2b61508e5')
version('0.70.7', sha256='3394f1fbd0d87112690a877e49eb7917d851ee8d822294d522dd4deae12febdb')
diff --git a/var/spack/repos/builtin/packages/py-multiqc/package.py b/var/spack/repos/builtin/packages/py-multiqc/package.py
index a1ab08fae8..fb1c620204 100644
--- a/var/spack/repos/builtin/packages/py-multiqc/package.py
+++ b/var/spack/repos/builtin/packages/py-multiqc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyMultiqc(PythonPackage):
for a large number of common bioinformatics tools."""
homepage = "https://multiqc.info"
- url = "https://pypi.io/packages/source/m/multiqc/multiqc-1.0.tar.gz"
+ pypi = "multiqc/multiqc-1.0.tar.gz"
version('1.7', sha256='02e6a7fac7cd9ed036dcc6c92b8f8bcacbd28983ba6be53afb35e08868bd2d68')
version('1.5', sha256='fe0ffd2b0d1067365ba4e54ae8991f2f779c7c684b037549b617020ea883310a')
diff --git a/var/spack/repos/builtin/packages/py-munch/package.py b/var/spack/repos/builtin/packages/py-munch/package.py
index 9360e01efb..8c03a24d48 100644
--- a/var/spack/repos/builtin/packages/py-munch/package.py
+++ b/var/spack/repos/builtin/packages/py-munch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-murmurhash/package.py b/var/spack/repos/builtin/packages/py-murmurhash/package.py
index 3cb59de262..a21cabd104 100644
--- a/var/spack/repos/builtin/packages/py-murmurhash/package.py
+++ b/var/spack/repos/builtin/packages/py-murmurhash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyMurmurhash(PythonPackage):
"""Cython bindings for MurmurHash."""
homepage = "https://github.com/explosion/murmurhash"
- url = "https://pypi.io/packages/source/m/murmurhash/murmurhash-1.0.2.tar.gz"
+ pypi = "murmurhash/murmurhash-1.0.2.tar.gz"
version('1.0.2', sha256='c7a646f6b07b033642b4f52ae2e45efd8b80780b3b90e8092a0cec935fbf81e2')
diff --git a/var/spack/repos/builtin/packages/py-mx/package.py b/var/spack/repos/builtin/packages/py-mx/package.py
index 6dfdddc487..8ee8a766ca 100644
--- a/var/spack/repos/builtin/packages/py-mx/package.py
+++ b/var/spack/repos/builtin/packages/py-mx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-myhdl/package.py b/var/spack/repos/builtin/packages/py-myhdl/package.py
index 98056266b8..c5c2b8589e 100644
--- a/var/spack/repos/builtin/packages/py-myhdl/package.py
+++ b/var/spack/repos/builtin/packages/py-myhdl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyMyhdl(PythonPackage):
"""Python as a Hardware Description Language"""
homepage = "http://www.myhdl.org"
- url = "https://pypi.io/packages/source/m/myhdl/myhdl-0.9.0.tar.gz"
+ pypi = "myhdl/myhdl-0.9.0.tar.gz"
version('0.9.0', sha256='52d12a5fe2cda22558806272af3c2b519b6f7095292b8e6c8ad255fb604507a5')
diff --git a/var/spack/repos/builtin/packages/py-mypy-extensions/package.py b/var/spack/repos/builtin/packages/py-mypy-extensions/package.py
index 4a31b6816b..d7b657ede5 100644
--- a/var/spack/repos/builtin/packages/py-mypy-extensions/package.py
+++ b/var/spack/repos/builtin/packages/py-mypy-extensions/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyMypyExtensions(PythonPackage):
mypy typechecker."""
homepage = "https://github.com/python/mypy_extensions"
- url = "https://pypi.io/packages/source/m/mypy-extensions/mypy_extensions-0.4.3.tar.gz"
+ pypi = "mypy-extensions/mypy_extensions-0.4.3.tar.gz"
version('0.4.3', sha256='2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8')
diff --git a/var/spack/repos/builtin/packages/py-mypy/package.py b/var/spack/repos/builtin/packages/py-mypy/package.py
index f822ea567e..bfe8cfe0f2 100644
--- a/var/spack/repos/builtin/packages/py-mypy/package.py
+++ b/var/spack/repos/builtin/packages/py-mypy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,17 +10,13 @@ class PyMypy(PythonPackage):
"""Optional static typing for Python."""
homepage = "http://www.mypy-lang.org/"
- url = "https://pypi.io/packages/source/m/mypy/mypy-0.740.tar.gz"
+ pypi = "mypy/mypy-0.740.tar.gz"
+ version('0.800', sha256='e0202e37756ed09daf4b0ba64ad2c245d357659e014c3f51d8cd0681ba66940a')
version('0.740', sha256='48c8bc99380575deb39f5d3400ebb6a8a1cb5cc669bbba4d3bb30f904e0a0e7d')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-typed-ast@1.4.0:1.4.999', type=('build', 'run'))
depends_on('py-typing-extensions@3.7.4:', type=('build', 'run'))
- depends_on('py-mypy-extensions@0.4.0:0.4.999', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-virtualenv', type='test')
- depends_on('py-pip', type='test')
- depends_on('py-lxml', type='test')
- depends_on('googletest', type='test')
+ depends_on('py-mypy-extensions@0.4.3:0.4.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mysql-connector-python/package.py b/var/spack/repos/builtin/packages/py-mysql-connector-python/package.py
index 2ebd16a459..9a51999d80 100644
--- a/var/spack/repos/builtin/packages/py-mysql-connector-python/package.py
+++ b/var/spack/repos/builtin/packages/py-mysql-connector-python/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-mysqlclient/package.py b/var/spack/repos/builtin/packages/py-mysqlclient/package.py
index a1f1d09e13..5af4bf64ca 100644
--- a/var/spack/repos/builtin/packages/py-mysqlclient/package.py
+++ b/var/spack/repos/builtin/packages/py-mysqlclient/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyMysqlclient(PythonPackage):
# The documentation is misleading about this.
homepage = "https://github.com/PyMySQL/mysqlclient-python"
- url = "https://pypi.io/packages/source/m/mysqlclient/mysqlclient-1.4.4.tar.gz"
+ pypi = "mysqlclient/mysqlclient-1.4.4.tar.gz"
version('1.4.6', sha256='f3fdaa9a38752a3b214a6fe79d7cae3653731a53e577821f9187e67cbecb2e16')
version('1.4.5', sha256='e80109b0ae8d952b900b31b623181532e5e89376d707dcbeb63f99e69cefe559')
diff --git a/var/spack/repos/builtin/packages/py-mysqldb1/package.py b/var/spack/repos/builtin/packages/py-mysqldb1/package.py
index daa13088f6..0765a663bb 100644
--- a/var/spack/repos/builtin/packages/py-mysqldb1/package.py
+++ b/var/spack/repos/builtin/packages/py-mysqldb1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-nanotime/package.py b/var/spack/repos/builtin/packages/py-nanotime/package.py
new file mode 100644
index 0000000000..8b206f7ad4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-nanotime/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyNanotime(PythonPackage):
+ """The nanotime module provides a time object that keeps time as the
+ number of nanoseconds since the UNIX epoch. In other words, it is
+ a 64bit UNIX timestamp with nanosecond precision.
+ """
+
+ homepage = "https://github.com/jbenet/nanotime"
+ pypi = "nanotime/nanotime-0.5.2.tar.gz"
+
+ version('0.5.2', sha256='c7cc231fc5f6db401b448d7ab51c96d0a4733f4b69fabe569a576f89ffdf966b')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-natsort/package.py b/var/spack/repos/builtin/packages/py-natsort/package.py
index 32358db64f..daa15a4d71 100644
--- a/var/spack/repos/builtin/packages/py-natsort/package.py
+++ b/var/spack/repos/builtin/packages/py-natsort/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,9 +9,19 @@ from spack import *
class PyNatsort(PythonPackage):
"""Simple yet flexible natural sorting in Python."""
- homepage = "https://pypi.org/project/natsort/"
+ homepage = "https://github.com/SethMMorton/natsort"
url = "https://github.com/SethMMorton/natsort/archive/5.2.0.zip"
+ version('7.1.1', sha256='ada96d9ca0db0d44b891718ff7baff5ac34cf5b6d9def356c0f7a8ea67ae2113')
+ version('7.1.0', sha256='c3de32c8e5e91cf4f2dd1655b4c167ca4676cc28ce397050fc8d229582a71f0d')
+ version('7.0.1', sha256='1a422a344d089f7a2acba788087ca6253ca47a544bda677721f99516cdfd8668')
+ version('7.0.0', sha256='0a5ff72173091e69d67c4711616713ddf090980ab11cbe4a1f269be3e697678a')
+ version('6.2.1', sha256='f14b62b37c78387e38cf1421867e8b5aed849b67d46f2351ee187ef4e9e814e1')
+ version('6.2.0', sha256='4a9587bfd3559900b64727be380236160e4c5a16b5a3643f5001d0bcfb0d63eb')
+ version('6.1.0', sha256='51f1ef44cbe4537fdb70ec55f3584f70ea2070fc37915239ecb0595c1ff055f9')
+ version('6.0.0', sha256='39c46bf2f4dc17fd0ea6210932eeaf7c806cac79dd354295d70e9b44f75a096b')
+ version('5.5.0', sha256='62e8fa3d7697b922e1d786b531a68bd07a7f6ba10a3bdf79a0bf52ef2cdccc41')
+ version('5.4.1', sha256='077ce724aa0c27df2bbcaef9c9f096c99ccd62eb4fffe68512c46edc3b714452')
version('5.2.0', sha256='0ae15082842e8a3598750b4bbaa4f7c138caf004e59c7040429d56bf9e9631bd')
version('5.1.1', sha256='6467eeca268d9accb2e3149acace49649f865b0051a672006a64b20597f04561')
version('5.1.0', sha256='79279792cc97a0005b2075ed2bc9b8a3e25e5edffe43ee2fb26b116283f5dab4')
diff --git a/var/spack/repos/builtin/packages/py-nbclient/package.py b/var/spack/repos/builtin/packages/py-nbclient/package.py
index e5284508b5..d181f2ae4b 100644
--- a/var/spack/repos/builtin/packages/py-nbclient/package.py
+++ b/var/spack/repos/builtin/packages/py-nbclient/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNbclient(PythonPackage):
Formally nbconvert's ExecutePreprocessor."""
homepage = "https://jupyter.org/"
- url = "https://pypi.io/packages/source/n/nbclient/nbclient-0.5.0.tar.gz"
+ pypi = "nbclient/nbclient-0.5.0.tar.gz"
version('0.5.0', sha256='8ad52d27ba144fca1402db014857e53c5a864a2f407be66ca9d74c3a56d6591d')
diff --git a/var/spack/repos/builtin/packages/py-nbconvert/package.py b/var/spack/repos/builtin/packages/py-nbconvert/package.py
index 1cb8b009ad..f75cf1d1cb 100644
--- a/var/spack/repos/builtin/packages/py-nbconvert/package.py
+++ b/var/spack/repos/builtin/packages/py-nbconvert/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyNbconvert(PythonPackage):
"""Jupyter Notebook Conversion"""
homepage = "https://github.com/jupyter/nbconvert"
- url = "https://pypi.io/packages/source/n/nbconvert/nbconvert-6.0.1.tar.gz"
+ pypi = "nbconvert/nbconvert-6.0.1.tar.gz"
version('6.0.1', sha256='db94117fbac29153834447e31b30cda337d4450e46e0bdb1a36eafbbf4435156')
version('5.6.0', sha256='427a468ec26e7d68a529b95f578d5cbf018cb4c1f889e897681c2b6d11897695')
@@ -49,3 +49,12 @@ class PyNbconvert(PythonPackage):
# doesn't try to download it.
install(join_path(self.package_dir, 'style.min.css'),
join_path('nbconvert', 'resources', 'style.min.css'))
+
+ def setup_run_environment(self, env):
+ env.prepend_path("JUPYTER_PATH", self.prefix.share.jupyter)
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ env.prepend_path("JUPYTER_PATH", self.prefix.share.jupyter)
+
+ def setup_dependent_run_environment(self, env, dependent_spec):
+ env.prepend_path("JUPYTER_PATH", self.prefix.share.jupyter)
diff --git a/var/spack/repos/builtin/packages/py-nbformat/package.py b/var/spack/repos/builtin/packages/py-nbformat/package.py
index d8f93315c3..64b860a072 100644
--- a/var/spack/repos/builtin/packages/py-nbformat/package.py
+++ b/var/spack/repos/builtin/packages/py-nbformat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyNbformat(PythonPackage):
"""The Jupyter Notebook format"""
homepage = "https://github.com/jupyter/nbformat"
- url = "https://pypi.io/packages/source/n/nbformat/nbformat-5.0.7.tar.gz"
+ pypi = "nbformat/nbformat-5.0.7.tar.gz"
version('5.0.7', sha256='54d4d6354835a936bad7e8182dcd003ca3dc0cedfee5a306090e04854343b340')
version('4.4.0', sha256='f7494ef0df60766b7cabe0a3651556345a963b74dbc16bc7c18479041170d402')
diff --git a/var/spack/repos/builtin/packages/py-nbsphinx/package.py b/var/spack/repos/builtin/packages/py-nbsphinx/package.py
new file mode 100644
index 0000000000..96f08cc062
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-nbsphinx/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyNbsphinx(PythonPackage):
+ """nbsphinx is a Sphinx extension that provides a source parser for
+ *.ipynb files.
+ """
+
+ # It should be noted that in order to have nbsphinx work,
+ # one must create a Spack view of the dependencies.
+
+ homepage = "https://nbsphinx.readthedocs.io"
+ pypi = "nbsphinx/nbsphinx-0.8.0.tar.gz"
+
+ version('0.8.1', sha256='24d59aa3a1077ba58d9769c64c38fb05b761a1af21c1ac15f6393500cd008ea6')
+ version('0.8.0', sha256='369c16fe93af14c878d61fb3e81d838196fb35b27deade2cd7b95efe1fe56ea0')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-docutils', type=('build', 'run'))
+ depends_on('py-jinja2', type=('build', 'run'))
+ depends_on('py-nbconvert@:5.3,5.5:', type=('build', 'run'))
+ depends_on('py-traitlets', type=('build', 'run'))
+ depends_on('py-nbformat', type=('build', 'run'))
+ depends_on('py-sphinx@1.8:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-nc-time-axis/package.py b/var/spack/repos/builtin/packages/py-nc-time-axis/package.py
index 0703e25af7..2e3a81c80a 100644
--- a/var/spack/repos/builtin/packages/py-nc-time-axis/package.py
+++ b/var/spack/repos/builtin/packages/py-nc-time-axis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNcTimeAxis(PythonPackage):
"""cftime support for matplotlib axis."""
homepage = "https://github.com/scitools/nc-time-axis"
- url = "https://pypi.io/packages/source/n/nc-time-axis/nc-time-axis-1.1.0.tar.gz"
+ pypi = "nc-time-axis/nc-time-axis-1.1.0.tar.gz"
version('1.1.0', sha256='ea9d4f7f9e9189c96f7d320235ac6c4be7f63dc5aa256b3ee5d5cca5845e6e26')
diff --git a/var/spack/repos/builtin/packages/py-ndg-httpsclient/package.py b/var/spack/repos/builtin/packages/py-ndg-httpsclient/package.py
index 91a815ce99..168b8ca2b4 100644
--- a/var/spack/repos/builtin/packages/py-ndg-httpsclient/package.py
+++ b/var/spack/repos/builtin/packages/py-ndg-httpsclient/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyNdgHttpsclient(PythonPackage):
PyOpenSSL."""
homepage = "https://github.com/cedadev/ndg_httpsclient/"
- url = "https://pypi.io/packages/source/n/ndg_httpsclient/ndg_httpsclient-0.5.1.tar.gz"
+ pypi = "ndg_httpsclient/ndg_httpsclient-0.5.1.tar.gz"
version('0.5.1', sha256='d72faed0376ab039736c2ba12e30695e2788c4aa569c9c3e3d72131de2592210')
diff --git a/var/spack/repos/builtin/packages/py-neo/package.py b/var/spack/repos/builtin/packages/py-neo/package.py
index 9015a53edf..bd301e8629 100644
--- a/var/spack/repos/builtin/packages/py-neo/package.py
+++ b/var/spack/repos/builtin/packages/py-neo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,9 @@ class PyNeo(PythonPackage):
file formats"""
homepage = "http://neuralensemble.org/neo"
- url = "https://pypi.io/packages/source/n/neo/neo-0.4.1.tar.gz"
+ pypi = "neo/neo-0.4.1.tar.gz"
+ version('0.8.0', sha256='3382a37b24a384006238b72981f1e9259de9bfa71886f8ed564d35d254ace458')
version('0.5.2', sha256='1de436b7d5e72a5b4f1baa68bae5b790624a9ac44b2673811cb0b6ef554d3f8b')
version('0.4.1', sha256='a5a4f3aa31654d52789f679717c9fb622ad4f59b56d227dca490357b9de0a1ce')
diff --git a/var/spack/repos/builtin/packages/py-neobolt/package.py b/var/spack/repos/builtin/packages/py-neobolt/package.py
index 7e19e529fd..fe871734c1 100644
--- a/var/spack/repos/builtin/packages/py-neobolt/package.py
+++ b/var/spack/repos/builtin/packages/py-neobolt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNeobolt(PythonPackage):
"""Neo4j Bolt connector for Python"""
homepage = "https://github.com/neo4j-drivers/neobolt"
- url = "https://pypi.io/packages/source/n/neobolt/neobolt-1.7.16.tar.gz"
+ pypi = "neobolt/neobolt-1.7.16.tar.gz"
version('1.7.16', sha256='ca4e87679fe3ed39aec23638658e02dbdc6bbc3289a04e826f332e05ab32275d')
diff --git a/var/spack/repos/builtin/packages/py-neotime/package.py b/var/spack/repos/builtin/packages/py-neotime/package.py
index 31769361c1..2a03b0ad45 100644
--- a/var/spack/repos/builtin/packages/py-neotime/package.py
+++ b/var/spack/repos/builtin/packages/py-neotime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNeotime(PythonPackage):
"""Nanosecond resolution temporal types"""
homepage = "https://neotime.readthedocs.io/"
- url = "https://pypi.io/packages/source/n/neotime/neotime-1.7.4.tar.gz"
+ pypi = "neotime/neotime-1.7.4.tar.gz"
version('1.7.4', sha256='4e0477ba0f24e004de2fa79a3236de2bd941f20de0b5db8d976c52a86d7363eb')
diff --git a/var/spack/repos/builtin/packages/py-nest-asyncio/package.py b/var/spack/repos/builtin/packages/py-nest-asyncio/package.py
index 5ffcde84d9..74a8fc7fe3 100644
--- a/var/spack/repos/builtin/packages/py-nest-asyncio/package.py
+++ b/var/spack/repos/builtin/packages/py-nest-asyncio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyNestAsyncio(PythonPackage):
"""Patch asyncio to allow nested event loops."""
homepage = "https://github.com/erdewit/nest_asyncio"
- url = "https://pypi.io/packages/source/n/nest-asyncio/nest_asyncio-1.4.0.tar.gz"
+ pypi = "nest-asyncio/nest_asyncio-1.4.0.tar.gz"
version('1.4.0', sha256='5773054bbc14579b000236f85bc01ecced7ffd045ec8ca4a9809371ec65a59c8')
diff --git a/var/spack/repos/builtin/packages/py-nestle/package.py b/var/spack/repos/builtin/packages/py-nestle/package.py
index 941e5b0234..66a5045385 100644
--- a/var/spack/repos/builtin/packages/py-nestle/package.py
+++ b/var/spack/repos/builtin/packages/py-nestle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNestle(PythonPackage):
"""Nested sampling algorithms for evaluating Bayesian evidence."""
homepage = "http://kbarbary.github.io/nestle/"
- url = "https://pypi.io/packages/source/n/nestle/nestle-0.1.1.tar.gz"
+ pypi = "nestle/nestle-0.1.1.tar.gz"
version('0.1.1', sha256='d236a04f25494af5cda572eecf62729592b3231fbd874b1f72aff54718a3bb08')
diff --git a/var/spack/repos/builtin/packages/py-netcdf4/package.py b/var/spack/repos/builtin/packages/py-netcdf4/package.py
index 93fa8641cc..81a7f538de 100644
--- a/var/spack/repos/builtin/packages/py-netcdf4/package.py
+++ b/var/spack/repos/builtin/packages/py-netcdf4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNetcdf4(PythonPackage):
"""Python interface to the netCDF Library."""
homepage = "https://github.com/Unidata/netcdf4-python"
- url = "https://pypi.io/packages/source/n/netCDF4/netCDF4-1.2.7.tar.gz"
+ pypi = "netCDF4/netCDF4-1.2.7.tar.gz"
maintainers = ['skosukhin']
diff --git a/var/spack/repos/builtin/packages/py-netifaces/package.py b/var/spack/repos/builtin/packages/py-netifaces/package.py
index 08d8200904..a0f20b295f 100644
--- a/var/spack/repos/builtin/packages/py-netifaces/package.py
+++ b/var/spack/repos/builtin/packages/py-netifaces/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNetifaces(PythonPackage):
"""Portable network interface information"""
homepage = "https://bitbucket.org/al45tair/netifaces"
- url = "https://pypi.io/packages/source/n/netifaces/netifaces-0.10.5.tar.gz"
+ pypi = "netifaces/netifaces-0.10.5.tar.gz"
version('0.10.5', sha256='59d8ad52dd3116fcb6635e175751b250dc783fb011adba539558bd764e5d628b')
diff --git a/var/spack/repos/builtin/packages/py-netket/package.py b/var/spack/repos/builtin/packages/py-netket/package.py
index d8950057a4..e9ece8d7de 100644
--- a/var/spack/repos/builtin/packages/py-netket/package.py
+++ b/var/spack/repos/builtin/packages/py-netket/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-networkit/package.py b/var/spack/repos/builtin/packages/py-networkit/package.py
index 3fabec5089..56848a3446 100644
--- a/var/spack/repos/builtin/packages/py-networkit/package.py
+++ b/var/spack/repos/builtin/packages/py-networkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,14 +18,20 @@ class PyNetworkit(PythonPackage):
parallelism and scalability."""
homepage = "https://networkit.github.io/"
- url = "https://pypi.io/packages/source/n/networkit/networkit-6.1.tar.gz"
+ pypi = "networkit/networkit-6.1.tar.gz"
+ maintainers = ['fabratu']
+
+ version('8.1', sha256='5ff9e61496259280df4f913b1e37f51ca6f94974c4b9f623851f4d518f5ce0d5')
+ version('8.0', sha256='36c30e894e835bf93f0aa0fb0b526758234e74318150820911e024ffe5ec1fd2')
version('7.1', sha256='8609dc7a574a8a82d8880b8b1e3dfdd9c59ad67cd02135628e675c482fe98a96')
version('7.0', sha256='eea4b5e565d6990b674e1c7f4d598be9377d57b61d0d82883ecc39edabaf3631')
version('6.1', sha256='f7fcb50dec66a8253f85c10ff9314100de013c7578d531c81d3f71bc6cf8f093')
# Required dependencies
depends_on('cmake', type='build')
+ depends_on('libnetworkit@8.1', type=('build', 'link'), when='@8.1')
+ depends_on('libnetworkit@8.0', type=('build', 'link'), when='@8.0')
depends_on('libnetworkit@7.1', type=('build', 'link'), when='@7.1')
depends_on('libnetworkit@7.0', type=('build', 'link'), when='@7.0')
depends_on('libnetworkit@6.1', type=('build', 'link'), when='@6.1')
@@ -35,6 +41,7 @@ class PyNetworkit(PythonPackage):
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-scipy', type=('build', 'run'))
depends_on('py-setuptools', type='build')
+ depends_on('python@3:', type=('build', 'run'))
phases = ['build_ext', 'install']
diff --git a/var/spack/repos/builtin/packages/py-networkx/package.py b/var/spack/repos/builtin/packages/py-networkx/package.py
index 04f82dac03..05a1072c0b 100644
--- a/var/spack/repos/builtin/packages/py-networkx/package.py
+++ b/var/spack/repos/builtin/packages/py-networkx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyNetworkx(PythonPackage):
of the structure, dynamics, and functions of complex networks."""
homepage = "http://networkx.github.io/"
- url = "https://pypi.io/packages/source/n/networkx/networkx-2.4.tar.gz"
+ pypi = "networkx/networkx-2.4.tar.gz"
version('2.4', sha256='f8f4ff0b6f96e4f9b16af6b84622597b5334bf9cae8cf9b2e42e7985d5c95c64')
version('2.3', sha256='8311ddef63cf5c5c5e7c1d0212dd141d9a1fe3f474915281b73597ed5f1d4e3d')
diff --git a/var/spack/repos/builtin/packages/py-nltk/package.py b/var/spack/repos/builtin/packages/py-nltk/package.py
index a19244e5fc..b6835a8edf 100644
--- a/var/spack/repos/builtin/packages/py-nltk/package.py
+++ b/var/spack/repos/builtin/packages/py-nltk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyNltk(PythonPackage):
natural language processing."""
homepage = "https://www.nltk.org/"
- url = "https://pypi.io/packages/source/n/nltk/nltk-3.5.zip"
+ pypi = "nltk/nltk-3.5.zip"
version('3.5', sha256='845365449cd8c5f9731f7cb9f8bd6fd0767553b9d53af9eb1b3abf7700936b35')
diff --git a/var/spack/repos/builtin/packages/py-nodeenv/package.py b/var/spack/repos/builtin/packages/py-nodeenv/package.py
index 03120dd227..80c974dd20 100644
--- a/var/spack/repos/builtin/packages/py-nodeenv/package.py
+++ b/var/spack/repos/builtin/packages/py-nodeenv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNodeenv(PythonPackage):
"""Node.js virtual environment"""
homepage = "https://github.com/ekalinin/nodeenv"
- url = "https://pypi.io/packages/source/n/nodeenv/nodeenv-1.3.3.tar.gz"
+ pypi = "nodeenv/nodeenv-1.3.3.tar.gz"
version('1.3.3', sha256='ad8259494cf1c9034539f6cced78a1da4840a4b157e23640bc4a0c0546b0cb7a')
diff --git a/var/spack/repos/builtin/packages/py-nose-cov/package.py b/var/spack/repos/builtin/packages/py-nose-cov/package.py
index 88431ff9e5..b2abbd0002 100644
--- a/var/spack/repos/builtin/packages/py-nose-cov/package.py
+++ b/var/spack/repos/builtin/packages/py-nose-cov/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNoseCov(PythonPackage):
"""This plugin produces coverage reports."""
homepage = "http://bitbucket.org/memedough/nose-cov/overview"
- url = "https://pypi.io/packages/source/n/nose-cov/nose-cov-1.6.tar.gz"
+ pypi = "nose-cov/nose-cov-1.6.tar.gz"
version('1.6', sha256='8bec0335598f1cc69e3262cc50d7678c1a6010fa44625ce343c4ec1500774412')
diff --git a/var/spack/repos/builtin/packages/py-nose/package.py b/var/spack/repos/builtin/packages/py-nose/package.py
index fcafc521c7..542931d39c 100644
--- a/var/spack/repos/builtin/packages/py-nose/package.py
+++ b/var/spack/repos/builtin/packages/py-nose/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,7 @@ class PyNose(PythonPackage):
"""nose extends the test loading and running features of unittest,
making it easier to write, find and run tests."""
- homepage = "https://pypi.python.org/pypi/nose"
- url = "https://pypi.io/packages/source/n/nose/nose-1.3.4.tar.gz"
-
- import_modules = [
- 'nose', 'nose.ext', 'nose.plugins', 'nose.sphinx', 'nose.tools'
- ]
+ pypi = "nose/nose-1.3.4.tar.gz"
version('1.3.7', sha256='f1bffef9cbc82628f6e7d7b40d7e255aefaa1adb6a1b1d26c69a8b79e6208a98')
version('1.3.6', sha256='f61e0909a743eed37b1207e38a8e7b4a2fe0a82185e36f2be252ef1b3f901758')
diff --git a/var/spack/repos/builtin/packages/py-nose2/package.py b/var/spack/repos/builtin/packages/py-nose2/package.py
index 510fbd8850..287bfee0de 100644
--- a/var/spack/repos/builtin/packages/py-nose2/package.py
+++ b/var/spack/repos/builtin/packages/py-nose2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyNose2(PythonPackage):
"""unittest2 with plugins, the succesor to nose"""
homepage = "https://github.com/nose-devs/nose2"
- url = "https://pypi.io/packages/source/n/nose2/nose2-0.9.1.tar.gz"
+ pypi = "nose2/nose2-0.9.1.tar.gz"
version('0.9.1', sha256='0ede156fd7974fa40893edeca0b709f402c0ccacd7b81b22e76f73c116d1b999')
version('0.6.0', sha256='daa633e92a52e0db60ade7e105a2ba5cad7ac819f3608740dcfc6140b9fd0a94')
diff --git a/var/spack/repos/builtin/packages/py-nosexcover/package.py b/var/spack/repos/builtin/packages/py-nosexcover/package.py
index c92b5f9d77..df6e91579f 100644
--- a/var/spack/repos/builtin/packages/py-nosexcover/package.py
+++ b/var/spack/repos/builtin/packages/py-nosexcover/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyNosexcover(PythonPackage):
out an XML coverage report to a file named coverage.xml."""
homepage = "https://github.com/cmheisel/nose-xcover"
- url = "https://pypi.io/packages/source/n/nosexcover/nosexcover-1.0.11.tar.gz"
+ pypi = "nosexcover/nosexcover-1.0.11.tar.gz"
version('1.0.11', sha256='298c3c655da587f6cab8a666e9f4b150320032431062dea91353988d45c8b883')
diff --git a/var/spack/repos/builtin/packages/py-notebook/package.py b/var/spack/repos/builtin/packages/py-notebook/package.py
index aa9b8799c0..0bbbcbc70e 100644
--- a/var/spack/repos/builtin/packages/py-notebook/package.py
+++ b/var/spack/repos/builtin/packages/py-notebook/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,12 +8,20 @@ class PyNotebook(PythonPackage):
"""Jupyter Interactive Notebook"""
homepage = "https://github.com/jupyter/notebook"
- url = "https://pypi.io/packages/source/n/notebook/notebook-6.1.4.tar.gz"
+ pypi = "notebook/notebook-6.1.4.tar.gz"
version('6.1.4', sha256='687d01f963ea20360c0b904ee7a37c3d8cda553858c8d6e33fd0afd13e89de32')
version('6.0.3', sha256='47a9092975c9e7965ada00b9a20f0cf637d001db60d241d479f53c0be117ad48')
version('6.0.1', sha256='660976fe4fe45c7aa55e04bf4bccb9f9566749ff637e9020af3422f9921f9a5d')
+ version('6.0.0', sha256='5c16dbf4fa824db19de43637ebfb24bcbd3b4f646e5d6a0414ed3a376d6bc951')
version('5.7.8', sha256='573e0ae650c5d76b18b6e564ba6d21bf321d00847de1d215b418acb64f056eb8')
+ version('5.7.6', sha256='18a98858c0331fb65a60f2ebb6439f8c0c4defd14ca363731b6cabc7f61624b4')
+ version('5.7.5', sha256='c5011449a1a6d9f96bf65c4c2d6713802a21125476312b39c99010ccd7a2e2ed')
+ version('5.7.4', sha256='d908673a4010787625c8952e91a22adf737db031f2aa0793ad92f6558918a74a')
+ version('5.7.3', sha256='f57d470401b2d7434587bcf4dd9263e73f139bf070b1b81a7ed4dfae7ec83f71')
+ version('5.7.2', sha256='91705b109fc785198faed892489cddb233265564d5e2dad5e4f7974af05ee8dd')
+ version('5.7.1', sha256='24f38c9cc7d7bd0a4c429cc8381e602e58b2b176d6071096a09a0e6c9cd0b463')
+ version('5.7.0', sha256='b85e4de3d54cf4f14fe1d0515a980ccb49ddd4cdd21250cc0d4fb6374d50b1a7')
version('4.2.3', sha256='39a9603d3fe88b60de2903680c965cf643acf2c16fb2c6bac1d905e1042b5851')
version('4.2.2', sha256='418ba230c9b2e7e739940cae9fb4625e10a63f038e9c95cf1a9b7a244256ba38')
version('4.2.1', sha256='a49de524dabb99f214bdf2a58f26c7892650251a23a3669c6492fb180492e197')
diff --git a/var/spack/repos/builtin/packages/py-ntlm-auth/package.py b/var/spack/repos/builtin/packages/py-ntlm-auth/package.py
new file mode 100644
index 0000000000..46c3245ec9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ntlm-auth/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyNtlmAuth(PythonPackage):
+ """Creates NTLM authentication structures."""
+
+ homepage = "https://github.com/jborean93/ntlm-auth"
+ pypi = "ntlm-auth/ntlm-auth-1.5.0.tar.gz"
+
+ version('1.5.0', sha256='c9667d361dc09f6b3750283d503c689070ff7d89f2f6ff0d38088d5436ff8543')
+
+ depends_on('python@2.6:2.8,3.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-ordereddict', type=('build', 'run'), when='^python@:2.6.999')
diff --git a/var/spack/repos/builtin/packages/py-numba/package.py b/var/spack/repos/builtin/packages/py-numba/package.py
index a108341740..83347b7983 100644
--- a/var/spack/repos/builtin/packages/py-numba/package.py
+++ b/var/spack/repos/builtin/packages/py-numba/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class PyNumba(PythonPackage):
"""NumPy aware dynamic Python compiler using LLVM"""
homepage = "https://numba.pydata.org/"
- url = "https://pypi.io/packages/source/n/numba/numba-0.35.0.tar.gz"
+ pypi = "numba/numba-0.35.0.tar.gz"
+ version('0.51.1', sha256='1e765b1a41535684bf3b0465c1d0a24dcbbff6af325270c8f4dad924c0940160')
version('0.50.1', sha256='89e81b51b880f9b18c82b7095beaccc6856fcf84ba29c4f0ced42e4e5748a3a7')
version('0.48.0', sha256='9d21bc77e67006b5723052840c88cc59248e079a907cc68f1a1a264e1eaba017')
version('0.40.1', sha256='52d046c13bcf0de79dbfb936874b7228f141b9b8e3447cc35855e9ad3e12aa33')
@@ -28,10 +29,11 @@ class PyNumba(PythonPackage):
# That's why it was chosen as an upper bound in the following depends_on
# calls. If newer versions maintain backwards compatibility, the calls
# can be updated accordingly.
- depends_on('py-llvmlite@0.33:0.34', type=('build', 'run'), when='@0.50.1')
- depends_on('py-llvmlite@0.31.0:0.32.0', type=('build', 'run'), when='@0.48.0')
- depends_on('py-llvmlite@0.25:', type=('build', 'run'), when='@0.40.1:')
- depends_on('py-llvmlite@0.20:0.25', type=('build', 'run'), when='@0.35.1')
+ depends_on('py-llvmlite@0.34.0:0.34.999', type=('build', 'run'), when='@0.51.1')
+ depends_on('py-llvmlite@0.33.0:0.33.999', type=('build', 'run'), when='@0.50.1')
+ depends_on('py-llvmlite@0.31.0:0.31.999', type=('build', 'run'), when='@0.48.0')
+ depends_on('py-llvmlite@0.25.0:', type=('build', 'run'), when='@0.40.1')
+ depends_on('py-llvmlite@0.20:0.25', type=('build', 'run'), when='@0.35.1')
depends_on('py-argparse', type=('build', 'run'), when='^python@:2.6')
depends_on('py-funcsigs', type=('build', 'run'), when='^python@:3.3.99')
diff --git a/var/spack/repos/builtin/packages/py-numcodecs/apple-clang-12.patch b/var/spack/repos/builtin/packages/py-numcodecs/apple-clang-12.patch
new file mode 100644
index 0000000000..818bba165c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-numcodecs/apple-clang-12.patch
@@ -0,0 +1,14 @@
+https://github.com/Blosc/c-blosc/issues/316
+diff --git a/c-blosc/internal-complibs/zlib-1.2.8/gzguts.h b/c-blosc/internal-complibs/zlib-1.2.8/gzguts.h
+index d87659d..f6823ed 100644
+--- a/c-blosc/internal-complibs/zlib-1.2.8/gzguts.h
++++ b/c-blosc/internal-complibs/zlib-1.2.8/gzguts.h
+@@ -26,6 +26,7 @@
+ # include <limits.h>
+ #endif
+ #include <fcntl.h>
++#include <unistd.h>
+
+ #ifdef _WIN32
+ # include <stddef.h>
+
diff --git a/var/spack/repos/builtin/packages/py-numcodecs/package.py b/var/spack/repos/builtin/packages/py-numcodecs/package.py
index 2fd992447e..d3b4c647f3 100644
--- a/var/spack/repos/builtin/packages/py-numcodecs/package.py
+++ b/var/spack/repos/builtin/packages/py-numcodecs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,13 +13,21 @@ class PyNumcodecs(PythonPackage):
"""
homepage = "https://github.com/zarr-developers/numcodecs"
- url = "https://pypi.io/packages/source/n/numcodecs/numcodecs-0.6.4.tar.gz"
+ pypi = "numcodecs/numcodecs-0.6.4.tar.gz"
+ git = "https://github.com/zarr-developers/numcodecs.git"
+ version('master', branch='master', submodules=True)
+ version('0.7.3', sha256='022b12ad83eb623ec53f154859d49f6ec43b15c36052fa864eaf2d9ee786dd85')
version('0.6.4', sha256='ef4843d5db4d074e607e9b85156835c10d006afc10e175bda62ff5412fca6e4d')
variant('msgpack', default=False, description='Codec to encode data as msgpacked bytes.')
- depends_on('py-setuptools@18.0:', type='build')
- depends_on('py-setuptools-scm@1.5.4:', type=('build', 'run'))
- depends_on('py-numpy@1.7:', type=('build', 'run'))
+ depends_on('python@3.6:3.999', when='@0.7:', type=('build', 'link', 'run'))
+ depends_on('python@2.7:2.8,3.5:', when='@:0.6.999', type=('build', 'link', 'run'))
+ depends_on('py-setuptools@18.1:', type='build')
+ depends_on('py-setuptools-scm@1.5.5:', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-numpy@1.7:', type=('build', 'run'))
depends_on('py-msgpack', type=('build', 'run'), when='+msgpack')
+
+ patch('apple-clang-12.patch', when='%apple-clang@12:')
diff --git a/var/spack/repos/builtin/packages/py-numexpr/package.py b/var/spack/repos/builtin/packages/py-numexpr/package.py
index 21fd4bf81a..5c824f3774 100644
--- a/var/spack/repos/builtin/packages/py-numexpr/package.py
+++ b/var/spack/repos/builtin/packages/py-numexpr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,9 +8,11 @@ from spack import *
class PyNumexpr(PythonPackage):
"""Fast numerical expression evaluator for NumPy"""
- homepage = "https://pypi.python.org/pypi/numexpr"
+
+ homepage = "https://github.com/pydata/numexpr"
url = "https://github.com/pydata/numexpr/archive/v2.7.0.tar.gz"
+ version('2.7.2', sha256='7d1b3790103221feda07f4a93a4fa5c6654f46865197a677ca6f27eb5cb4e5ef')
version('2.7.0', sha256='1923f038b90cc69635871968ed742be7775c879451c612f173c2547c823c9561')
version('2.6.9', sha256='d57267bbdf10906f5ed7841b3484bec4af0494102b50e89ba316924cc7a7fd46')
version('2.6.5', sha256='fe78a78e002806e87e012b6105f3b3d52d47fc7a72bafb56341fcec7ce02cfd7')
diff --git a/var/spack/repos/builtin/packages/py-numexpr3/package.py b/var/spack/repos/builtin/packages/py-numexpr3/package.py
index f58baaf3f9..991f24a245 100644
--- a/var/spack/repos/builtin/packages/py-numexpr3/package.py
+++ b/var/spack/repos/builtin/packages/py-numexpr3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class PyNumexpr3(PythonPackage):
SSE2 or AVX2, if your processor supports them. Use of a newer version of
gcc such as 5.4 is strongly recommended."""
homepage = "https://github.com/pydata/numexpr/tree/numexpr-3.0"
- url = "https://pypi.io/packages/source/n/numexpr3/numexpr3-3.0.1a1.tar.gz"
+ pypi = "numexpr3/numexpr3-3.0.1a1.tar.gz"
version('3.0.1a1', sha256='de06f1b4206704b5bc19ea09b5c94350b97c211c26bc866f275252a8461b87e6')
# TODO: Add CMake build system for better control of passing flags related
diff --git a/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler.patch b/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler.patch
index 75ae8cb93a..50df963581 100644
--- a/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler.patch
+++ b/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler.patch
@@ -1,13 +1,13 @@
-diff -urN numpy-1.19.4.org/numpy/distutils/fcompiler/fj.py numpy-1.19.4/numpy/distutils/fcompiler/fj.py
---- numpy-1.19.4.org/numpy/distutils/fcompiler/fj.py 1970-01-01 09:00:00.000000000 +0900
-+++ numpy-1.19.4/numpy/distutils/fcompiler/fj.py 2020-11-10 17:21:43.324928283 +0900
-@@ -0,0 +1,38 @@
+diff -urN numpy-1.19.4.org/numpy/distutils/fcompiler/fujitsu.py numpy-1.19.4/numpy/distutils/fcompiler/fujitsu.py
+--- numpy-1.19.4.org/numpy/distutils/fcompiler/fujitsu.py 1970-01-01 09:00:00.000000000 +0900
++++ numpy-1.19.4/numpy/distutils/fcompiler/fujitsu.py 2020-11-10 17:21:43.324928283 +0900
+@@ -0,0 +1,40 @@
+from numpy.distutils.fcompiler import FCompiler
+
-+compilers = ['FJFCompiler']
++compilers = ['FujitsuFCompiler']
+
-+class FJFCompiler(FCompiler):
-+ compiler_type = 'fj'
++class FujitsuFCompiler(FCompiler):
++ compiler_type = 'fujitsu'
+ description = 'Fujitsu Fortran Compiler'
+
+ possible_executables = ['frt']
@@ -34,12 +34,14 @@ diff -urN numpy-1.19.4.org/numpy/distutils/fcompiler/fj.py numpy-1.19.4/numpy/di
+ return ['-g']
+ def runtime_library_dir_option(self, dir):
+ return f'-Wl,-rpath={dir}'
++ def get_libraries(self):
++ return ['fj90f', 'fj90i', 'fjsrcinfo']
+
+if __name__ == '__main__':
+ from distutils import log
+ from numpy.distutils import customized_fcompiler
+ log.set_verbosity(2)
-+ print(customized_fcompiler('fj').get_version())
++ print(customized_fcompiler('fujitsu').get_version())
diff -urN numpy-1.19.4.org/numpy/distutils/fcompiler/__init__.py numpy-1.19.4/numpy/distutils/fcompiler/__init__.py
--- numpy-1.19.4.org/numpy/distutils/fcompiler/__init__.py 2020-11-09 10:51:35.693490207 +0900
+++ numpy-1.19.4/numpy/distutils/fcompiler/__init__.py 2020-11-16 17:48:49.316744476 +0900
@@ -48,7 +50,7 @@ diff -urN numpy-1.19.4.org/numpy/distutils/fcompiler/__init__.py numpy-1.19.4/nu
('cygwin.*', ('gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95')),
('linux.*', ('gnu95', 'intel', 'lahey', 'pg', 'nv', 'absoft', 'nag', 'vast', 'compaq',
- 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor')),
-+ 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor', 'fj')),
++ 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor', 'fujitsu')),
('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'g95', 'pg')),
('sunos.*', ('sun', 'gnu', 'gnu95', 'g95')),
('irix.*', ('mips', 'gnu', 'gnu95',)),
diff --git a/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler2.patch b/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler2.patch
index 6e605cb137..4526ddeadb 100644
--- a/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler2.patch
+++ b/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler2.patch
@@ -1,13 +1,13 @@
-diff -urN spack-src.org/numpy/distutils/fcompiler/fj.py spack-src/numpy/distutils/fcompiler/fj.py
---- spack-src.org/numpy/distutils/fcompiler/fj.py 1970-01-01 09:00:00.000000000 +0900
-+++ spack-src/numpy/distutils/fcompiler/fj.py 2020-11-16 17:55:57.608802456 +0900
-@@ -0,0 +1,38 @@
+diff -urN spack-src.org/numpy/distutils/fcompiler/fujitsu.py spack-src/numpy/distutils/fcompiler/fujitsu.py
+--- spack-src.org/numpy/distutils/fcompiler/fujitsu.py 1970-01-01 09:00:00.000000000 +0900
++++ spack-src/numpy/distutils/fcompiler/fujitsu.py 2020-11-16 17:55:57.608802456 +0900
+@@ -0,0 +1,40 @@
+from numpy.distutils.fcompiler import FCompiler
+
-+compilers = ['FJFCompiler']
++compilers = ['FujitsuFCompiler']
+
-+class FJFCompiler(FCompiler):
-+ compiler_type = 'fj'
++class FujitsuFCompiler(FCompiler):
++ compiler_type = 'fujitsu'
+ description = 'Fujitsu Fortran Compiler'
+
+ possible_executables = ['frt']
@@ -34,12 +34,14 @@ diff -urN spack-src.org/numpy/distutils/fcompiler/fj.py spack-src/numpy/distutil
+ return ['-g']
+ def runtime_library_dir_option(self, dir):
+ return f'-Wl,-rpath={dir}'
++ def get_libraries(self):
++ return ['fj90f', 'fj90i', 'fjsrcinfo']
+
+if __name__ == '__main__':
+ from distutils import log
+ from numpy.distutils import customized_fcompiler
+ log.set_verbosity(2)
-+ print(customized_fcompiler('fj').get_version())
++ print(customized_fcompiler('fujitsu').get_version())
diff -urN spack-src.org/numpy/distutils/fcompiler/__init__.py spack-src/numpy/distutils/fcompiler/__init__.py
--- spack-src.org/numpy/distutils/fcompiler/__init__.py 2020-11-16 17:55:31.638677631 +0900
+++ spack-src/numpy/distutils/fcompiler/__init__.py 2020-11-16 17:56:29.978957954 +0900
@@ -48,7 +50,7 @@ diff -urN spack-src.org/numpy/distutils/fcompiler/__init__.py spack-src/numpy/di
('cygwin.*', ('gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95')),
('linux.*', ('gnu95', 'intel', 'lahey', 'pg', 'absoft', 'nag', 'vast', 'compaq',
- 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor')),
-+ 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor', 'fj')),
++ 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor', 'fujitsu')),
('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'g95', 'pg')),
('sunos.*', ('sun', 'gnu', 'gnu95', 'g95')),
('irix.*', ('mips', 'gnu', 'gnu95',)),
diff --git a/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler3.patch b/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler3.patch
index 710720b5c5..034cac069b 100644
--- a/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler3.patch
+++ b/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler3.patch
@@ -1,13 +1,13 @@
-diff -urN spack-src.org/numpy/distutils/fcompiler/fj.py spack-src/numpy/distutils/fcompiler/fj.py
---- spack-src.org/numpy/distutils/fcompiler/fj.py 1970-01-01 09:00:00.000000000 +0900
-+++ spack-src/numpy/distutils/fcompiler/fj.py 2020-11-16 18:30:06.698641953 +0900
-@@ -0,0 +1,38 @@
+diff -urN spack-src.org/numpy/distutils/fcompiler/fujitsu.py spack-src/numpy/distutils/fcompiler/fujitsu.py
+--- spack-src.org/numpy/distutils/fcompiler/fujitsu.py 1970-01-01 09:00:00.000000000 +0900
++++ spack-src/numpy/distutils/fcompiler/fujitsu.py 2020-11-16 18:30:06.698641953 +0900
+@@ -0,0 +1,40 @@
+from numpy.distutils.fcompiler import FCompiler
+
-+compilers = ['FJFCompiler']
++compilers = ['FujitsuFCompiler']
+
-+class FJFCompiler(FCompiler):
-+ compiler_type = 'fj'
++class FujitsuFCompiler(FCompiler):
++ compiler_type = 'fujitsu'
+ description = 'Fujitsu Fortran Compiler'
+
+ possible_executables = ['frt']
@@ -34,12 +34,14 @@ diff -urN spack-src.org/numpy/distutils/fcompiler/fj.py spack-src/numpy/distutil
+ return ['-g']
+ def runtime_library_dir_option(self, dir):
+ return '-Wl,-rpath=%s' %dir
++ def get_libraries(self):
++ return ['fj90f', 'fj90i', 'fjsrcinfo']
+
+if __name__ == '__main__':
+ from distutils import log
+ from numpy.distutils import customized_fcompiler
+ log.set_verbosity(2)
-+ print(customized_fcompiler('fj').get_version())
++ print(customized_fcompiler('fujitsu').get_version())
diff -urN spack-src.org/numpy/distutils/fcompiler/__init__.py spack-src/numpy/distutils/fcompiler/__init__.py
--- spack-src.org/numpy/distutils/fcompiler/__init__.py 2020-11-16 18:25:26.087294181 +0900
+++ spack-src/numpy/distutils/fcompiler/__init__.py 2020-11-16 18:26:19.987553070 +0900
@@ -48,7 +50,7 @@ diff -urN spack-src.org/numpy/distutils/fcompiler/__init__.py spack-src/numpy/di
('cygwin.*', ('gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95')),
('linux.*', ('gnu95', 'intel', 'lahey', 'pg', 'absoft', 'nag', 'vast', 'compaq',
- 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor')),
-+ 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor', 'fj')),
++ 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'nagfor', 'fujitsu')),
('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'g95', 'pg')),
('sunos.*', ('sun', 'gnu', 'gnu95', 'g95')),
('irix.*', ('mips', 'gnu', 'gnu95',)),
diff --git a/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler4.patch b/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler4.patch
index 9b8d56c8d5..83f2be5d82 100644
--- a/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler4.patch
+++ b/var/spack/repos/builtin/packages/py-numpy/add_fj_compiler4.patch
@@ -1,13 +1,13 @@
-diff -urN spack-src.org/numpy/distutils/fcompiler/fj.py spack-src/numpy/distutils/fcompiler/fj.py
---- spack-src.org/numpy/distutils/fcompiler/fj.py 1970-01-01 09:00:00.000000000 +0900
-+++ spack-src/numpy/distutils/fcompiler/fj.py 2020-11-16 18:42:47.672297372 +0900
-@@ -0,0 +1,38 @@
+diff -urN spack-src.org/numpy/distutils/fcompiler/fujitsu.py spack-src/numpy/distutils/fcompiler/fujitsu.py
+--- spack-src.org/numpy/distutils/fcompiler/fujitsu.py 1970-01-01 09:00:00.000000000 +0900
++++ spack-src/numpy/distutils/fcompiler/fujitsu.py 2020-11-16 18:42:47.672297372 +0900
+@@ -0,0 +1,40 @@
+from numpy.distutils.fcompiler import FCompiler
+
-+compilers = ['FJFCompiler']
++compilers = ['FujitsuFCompiler']
+
-+class FJFCompiler(FCompiler):
-+ compiler_type = 'fj'
++class FujitsuFCompiler(FCompiler):
++ compiler_type = 'fujitsu'
+ description = 'Fujitsu Fortran Compiler'
+
+ possible_executables = ['frt']
@@ -34,12 +34,14 @@ diff -urN spack-src.org/numpy/distutils/fcompiler/fj.py spack-src/numpy/distutil
+ return ['-g']
+ def runtime_library_dir_option(self, dir):
+ return '-Wl,-rpath=%s' %dir
++ def get_libraries(self):
++ return ['fj90f', 'fj90i', 'fjsrcinfo']
+
+if __name__ == '__main__':
+ from distutils import log
+ from numpy.distutils import customized_fcompiler
+ log.set_verbosity(2)
-+ print(customized_fcompiler('fj').get_version())
++ print(customized_fcompiler('fujitsu').get_version())
diff -urN spack-src.org/numpy/distutils/fcompiler/__init__.py spack-src/numpy/distutils/fcompiler/__init__.py
--- spack-src.org/numpy/distutils/fcompiler/__init__.py 2020-11-16 18:43:18.112443626 +0900
+++ spack-src/numpy/distutils/fcompiler/__init__.py 2020-11-16 18:44:54.062904636 +0900
@@ -48,7 +50,7 @@ diff -urN spack-src.org/numpy/distutils/fcompiler/__init__.py spack-src/numpy/di
('cygwin.*', ('gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95')),
('linux.*', ('gnu95', 'intel', 'lahey', 'pg', 'absoft', 'nag', 'vast', 'compaq',
- 'intele', 'intelem', 'gnu', 'g95', 'pathf95')),
-+ 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'fj')),
++ 'intele', 'intelem', 'gnu', 'g95', 'pathf95', 'fujitsu')),
('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'g95', 'pg')),
('sunos.*', ('sun', 'gnu', 'gnu95', 'g95')),
('irix.*', ('mips', 'gnu', 'gnu95',)),
diff --git a/var/spack/repos/builtin/packages/py-numpy/check_executables.patch b/var/spack/repos/builtin/packages/py-numpy/check_executables.patch
new file mode 100644
index 0000000000..ee4ac1b45e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-numpy/check_executables.patch
@@ -0,0 +1,16 @@
+--- numpy-1.20.0/numpy/distutils/fcompiler/__init__.py.org 2021-02-04 17:38:42.000000000 +0900
++++ numpy-1.20.0/numpy/distutils/fcompiler/__init__.py 2021-02-04 18:29:21.000000000 +0900
+@@ -314,7 +314,12 @@
+ if not exe_from_environ:
+ possibles = [f90, f77] + self.possible_executables
+ else:
+- possibles = [exe_from_environ] + self.possible_executables
++ matching_executables = []
++ for e in exe_from_environ:
++ for p in self.possible_executables:
++ if p in e:
++ matching_executables.append(e)
++ possibles = [matching_executables] + self.possible_executables
+
+ seen = set()
+ unique_possibles = []
diff --git a/var/spack/repos/builtin/packages/py-numpy/check_executables2.patch b/var/spack/repos/builtin/packages/py-numpy/check_executables2.patch
new file mode 100644
index 0000000000..0d0b78f647
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-numpy/check_executables2.patch
@@ -0,0 +1,16 @@
+--- spack-src/numpy/distutils/fcompiler/__init__.py.orig 2021-01-04 15:16:38.000000000 +0900
++++ spack-src/numpy/distutils/fcompiler/__init__.py 2021-02-12 17:20:07.327563118 +0900
+@@ -316,7 +316,12 @@
+ if not exe_from_environ:
+ possibles = [f90, f77] + self.possible_executables
+ else:
+- possibles = [exe_from_environ] + self.possible_executables
++ matching_executables = []
++ for e in exe_from_environ:
++ for p in self.possible_executables:
++ if p in e:
++ matching_executables.append(e)
++ possibles = [matching_executables] + self.possible_executables
+
+ seen = set()
+ unique_possibles = []
diff --git a/var/spack/repos/builtin/packages/py-numpy/check_executables3.patch b/var/spack/repos/builtin/packages/py-numpy/check_executables3.patch
new file mode 100644
index 0000000000..078211e337
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-numpy/check_executables3.patch
@@ -0,0 +1,16 @@
+--- spack-src/numpy/distutils/fcompiler/__init__.py.orig 2020-06-02 17:24:58.000000000 +0900
++++ spack-src/numpy/distutils/fcompiler/__init__.py 2021-02-12 17:33:11.483728471 +0900
+@@ -320,7 +320,12 @@
+ if not exe_from_environ:
+ possibles = [f90, f77] + self.possible_executables
+ else:
+- possibles = [exe_from_environ] + self.possible_executables
++ matching_executables = []
++ for e in exe_from_environ:
++ for p in self.possible_executables:
++ if p in e:
++ matching_executables.append(e)
++ possibles = [matching_executables] + self.possible_executables
+
+ seen = set()
+ unique_possibles = []
diff --git a/var/spack/repos/builtin/packages/py-numpy/check_executables4.patch b/var/spack/repos/builtin/packages/py-numpy/check_executables4.patch
new file mode 100644
index 0000000000..b553acb46f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-numpy/check_executables4.patch
@@ -0,0 +1,16 @@
+--- spack-src/numpy/distutils/fcompiler/__init__.py.orig 2018-11-03 10:49:58.000000000 +0900
++++ spack-src/numpy/distutils/fcompiler/__init__.py 2021-02-12 17:57:50.632263931 +0900
+@@ -318,7 +318,12 @@
+ if not exe_from_environ:
+ possibles = [f90, f77] + self.possible_executables
+ else:
+- possibles = [exe_from_environ] + self.possible_executables
++ matching_executables = []
++ for e in exe_from_environ:
++ for p in self.possible_executables:
++ if p in e:
++ matching_executables.append(e)
++ possibles = [matching_executables] + self.possible_executables
+
+ seen = set()
+ unique_possibles = []
diff --git a/var/spack/repos/builtin/packages/py-numpy/check_executables5.patch b/var/spack/repos/builtin/packages/py-numpy/check_executables5.patch
new file mode 100644
index 0000000000..4ae9fe4009
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-numpy/check_executables5.patch
@@ -0,0 +1,16 @@
+--- spack-src/numpy/distutils/fcompiler/__init__.py.orig 2017-09-29 13:31:46.000000000 +0900
++++ spack-src/numpy/distutils/fcompiler/__init__.py 2021-02-12 18:06:12.001479417 +0900
+@@ -322,7 +322,12 @@
+ if not exe_from_environ:
+ possibles = [f90, f77] + self.possible_executables
+ else:
+- possibles = [exe_from_environ] + self.possible_executables
++ matching_executables = []
++ for e in exe_from_environ:
++ for p in self.possible_executables:
++ if p in e:
++ matching_executables.append(e)
++ possibles = [matching_executables] + self.possible_executables
+
+ seen = set()
+ unique_possibles = []
diff --git a/var/spack/repos/builtin/packages/py-numpy/package.py b/var/spack/repos/builtin/packages/py-numpy/package.py
index fd09019469..35d3fccc79 100644
--- a/var/spack/repos/builtin/packages/py-numpy/package.py
+++ b/var/spack/repos/builtin/packages/py-numpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,20 +16,17 @@ class PyNumpy(PythonPackage):
number capabilities"""
homepage = "https://numpy.org/"
- url = "https://pypi.io/packages/source/n/numpy/numpy-1.19.4.zip"
+ pypi = "numpy/numpy-1.19.4.zip"
git = "https://github.com/numpy/numpy.git"
maintainers = ['adamjstewart']
- install_time_test_callbacks = ['install_test', 'import_module_test']
-
- import_modules = [
- 'numpy', 'numpy.compat', 'numpy.core', 'numpy.distutils', 'numpy.doc',
- 'numpy.f2py', 'numpy.fft', 'numpy.lib', 'numpy.linalg', 'numpy.ma',
- 'numpy.matrixlib', 'numpy.polynomial', 'numpy.random', 'numpy.testing',
- 'numpy.distutils.command', 'numpy.distutils.fcompiler'
- ]
version('master', branch='master')
+ version('1.20.3', sha256='e55185e51b18d788e49fe8305fd73ef4470596b33fc2c1ceb304566b99c71a69')
+ version('1.20.2', sha256='878922bf5ad7550aa044aa9301d417e2d3ae50f0f577de92051d739ac6096cee')
+ version('1.20.1', sha256='3bc63486a870294683980d76ec1e3efc786295ae00128f9ea38e2c6e74d5a60a')
+ version('1.20.0', sha256='3d8233c03f116d068d5365fed4477f2947c7229582dad81e5953088989294cec')
+ version('1.19.5', sha256='a76f502430dd98d7546e1ea2250a7360c065a5fdea52b2dffe8ae7180909b6f4')
version('1.19.4', sha256='141ec3a3300ab89c7f2b0775289954d193cc8edb621ea05f99db9cb181530512')
version('1.19.3', sha256='35bf5316af8dc7c7db1ad45bec603e5fb28671beb98ebd1d65e8059efcfd3b72')
version('1.19.2', sha256='0d310730e1e793527065ad7dde736197b705d0e4c9999775f212b03c44a8484c')
@@ -84,10 +81,11 @@ class PyNumpy(PythonPackage):
variant('blas', default=True, description='Build with BLAS support')
variant('lapack', default=True, description='Build with LAPACK support')
- depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.5:', type=('build', 'run'), when='@1.16:')
- depends_on('python@3.5:', type=('build', 'run'), when='@1.17:')
- depends_on('python@3.6:', type=('build', 'run'), when='@1.19:')
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'link', 'run'))
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'link', 'run'), when='@1.16:')
+ depends_on('python@3.5:', type=('build', 'link', 'run'), when='@1.17:')
+ depends_on('python@3.6:', type=('build', 'link', 'run'), when='@1.19:')
+ depends_on('python@3.7:', type=('build', 'link', 'run'), when='@1.20:')
depends_on('py-setuptools', type=('build', 'run'))
# Check pyproject.toml for updates to the required cython version
depends_on('py-cython@0.29.13:', when='@1.18.0:', type='build')
@@ -105,14 +103,23 @@ class PyNumpy(PythonPackage):
patch('blas-lapack-order.patch', when='@1.15:1.16')
# Add Fujitsu Fortran compiler
- patch('add_fj_compiler.patch', when='@1.19.3:%fj')
+ patch('add_fj_compiler.patch', when='@1.19.3:1.19.5%fj')
patch('add_fj_compiler2.patch', when='@1.19.0:1.19.2%fj')
patch('add_fj_compiler3.patch', when='@1.14.0:1.18.5%fj')
patch('add_fj_compiler4.patch', when='@:1.13.3%fj')
+ patch('check_executables.patch', when='@1.20.0:')
+ patch('check_executables2.patch', when='@1.19.0:1.19.5')
+ patch('check_executables3.patch', when='@1.16.0:1.18.5')
+ patch('check_executables4.patch', when='@1.14.0:1.15.4')
+ patch('check_executables5.patch', when='@:1.13.3')
+
# GCC 4.8 is the minimum version that works
conflicts('%gcc@:4.7', msg='GCC 4.8+ required')
+ # NVHPC support added in https://github.com/numpy/numpy/pull/17344
+ conflicts('%nvhpc', when='@:1.19.999')
+
def flag_handler(self, name, flags):
# -std=c99 at least required, old versions of GCC default to -std=c90
if self.spec.satisfies('%gcc@:5.1') and name == 'cflags':
@@ -248,6 +255,28 @@ class PyNumpy(PythonPackage):
write_library_dirs(f, lapack_lib_dirs)
f.write('include_dirs = {0}\n'.format(lapack_header_dirs))
+ if '^fujitsu-ssl2' in spec:
+ if spec.satisfies('+blas'):
+ f.write('[blas]\n')
+ f.write('libraries = {0}\n'.format(spec['blas'].libs.names[0]))
+ write_library_dirs(f, blas_lib_dirs)
+ f.write('include_dirs = {0}\n'.format(blas_header_dirs))
+ f.write(
+ "extra_link_args = {0}\n".format(
+ self.spec["blas"].libs.ld_flags
+ )
+ )
+ if spec.satisfies('+lapack'):
+ f.write('[lapack]\n')
+ f.write('libraries = {0}\n'.format(spec['lapack'].libs.names[0]))
+ write_library_dirs(f, lapack_lib_dirs)
+ f.write('include_dirs = {0}\n'.format(lapack_header_dirs))
+ f.write(
+ "extra_link_args = {0}\n".format(
+ self.spec["lapack"].libs.ld_flags
+ )
+ )
+
def setup_build_environment(self, env):
# Tell numpy which BLAS/LAPACK libraries we want to use.
# https://github.com/numpy/numpy/pull/13132
@@ -306,21 +335,8 @@ class PyNumpy(PythonPackage):
return args
- def build_test(self):
- # `setup.py test` is not supported. Use one of the following
- # instead:
- #
- # - `python runtests.py` (to build and test)
- # - `python runtests.py --no-build` (to test installed numpy)
- # - `>>> numpy.test()` (run tests for installed numpy
- # from within an interpreter)
- pass
-
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def install_test(self):
- # Change directories due to the following error:
- #
- # ImportError: Error importing numpy: you should not try to import
- # numpy from its source directory; please exit the numpy
- # source tree, and relaunch your python interpreter from there.
with working_dir('spack-test', create=True):
python('-c', 'import numpy; numpy.test("full", verbose=2)')
diff --git a/var/spack/repos/builtin/packages/py-numpydoc/package.py b/var/spack/repos/builtin/packages/py-numpydoc/package.py
index cef8a2f7d2..86babbd46a 100644
--- a/var/spack/repos/builtin/packages/py-numpydoc/package.py
+++ b/var/spack/repos/builtin/packages/py-numpydoc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,14 @@ class PyNumpydoc(PythonPackage):
"""numpydoc - Numpy's Sphinx extensions"""
homepage = "https://github.com/numpy/numpydoc"
- url = "https://pypi.io/packages/source/n/numpydoc/numpydoc-0.6.0.tar.gz"
+ pypi = "numpydoc/numpydoc-0.6.0.tar.gz"
+ version('1.1.0', sha256='c36fd6cb7ffdc9b4e165a43f67bf6271a7b024d0bb6b00ac468c9e2bfc76448e')
version('0.6.0', sha256='1ec573e91f6d868a9940d90a6599f3e834a2d6c064030fbe078d922ee21dcfa1')
- depends_on('python@2.6:2.8,3.3:')
+ depends_on('python@2.6:2.8,3.3:', when='@0.6.0')
+ depends_on('python@3.5:', when='@1.1.0')
depends_on('py-setuptools', type='build')
- depends_on('py-sphinx@1.0.1:', type='build')
+ depends_on('py-sphinx@1.0.1:1.6.7', type='build', when='@0.6.0')
+ depends_on('py-sphinx@1.6.5:', type='build', when='@1.1.0')
+ depends_on('py-jinja2@2.3:', type='build', when='@1.1.0')
diff --git a/var/spack/repos/builtin/packages/py-nvidia-ml-py/package.py b/var/spack/repos/builtin/packages/py-nvidia-ml-py/package.py
index a37a50366b..fbe922ffac 100644
--- a/var/spack/repos/builtin/packages/py-nvidia-ml-py/package.py
+++ b/var/spack/repos/builtin/packages/py-nvidia-ml-py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,6 +8,6 @@ class PyNvidiaMlPy(PythonPackage):
"""Python Bindings for the NVIDIA Management Library."""
homepage = "http://www.nvidia.com/"
- url = "https://pypi.io/packages/source/n/nvidia-ml-py/nvidia-ml-py-11.450.51.tar.gz"
+ pypi = "nvidia-ml-py/nvidia-ml-py-11.450.51.tar.gz"
version('11.450.51', sha256='5aa6dd23a140b1ef2314eee5ca154a45397b03e68fd9ebc4f72005979f511c73')
diff --git a/var/spack/repos/builtin/packages/py-nvidia-ml-py3/package.py b/var/spack/repos/builtin/packages/py-nvidia-ml-py3/package.py
index 711f579dc9..735331b373 100644
--- a/var/spack/repos/builtin/packages/py-nvidia-ml-py3/package.py
+++ b/var/spack/repos/builtin/packages/py-nvidia-ml-py3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,6 +8,6 @@ class PyNvidiaMlPy3(PythonPackage):
"""Python Bindings for the NVIDIA Management Library."""
homepage = "http://www.nvidia.com/"
- url = "https://pypi.io/packages/source/n/nvidia-ml-py3/nvidia-ml-py3-7.352.0.tar.gz"
+ pypi = "nvidia-ml-py3/nvidia-ml-py3-7.352.0.tar.gz"
version('7.352.0', sha256='390f02919ee9d73fe63a98c73101061a6b37fa694a793abf56673320f1f51277')
diff --git a/var/spack/repos/builtin/packages/py-oauth2client/package.py b/var/spack/repos/builtin/packages/py-oauth2client/package.py
index 2b05c982fc..c239617583 100644
--- a/var/spack/repos/builtin/packages/py-oauth2client/package.py
+++ b/var/spack/repos/builtin/packages/py-oauth2client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyOauth2client(PythonPackage):
use google-auth and oauthlib."""
homepage = "http://github.com/google/oauth2client/"
- url = "https://pypi.io/packages/source/o/oauth2client/oauth2client-4.1.3.tar.gz"
+ pypi = "oauth2client/oauth2client-4.1.3.tar.gz"
version('4.1.3', sha256='d486741e451287f69568a4d26d70d9acd73a2bbfa275746c535b4209891cccc6')
diff --git a/var/spack/repos/builtin/packages/py-oauthlib/package.py b/var/spack/repos/builtin/packages/py-oauthlib/package.py
index 93fbb9aacc..be59718198 100644
--- a/var/spack/repos/builtin/packages/py-oauthlib/package.py
+++ b/var/spack/repos/builtin/packages/py-oauthlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyOauthlib(PythonPackage):
"""
homepage = "https://github.com/oauthlib/oauthlib"
- url = "https://pypi.io/packages/source/o/oauthlib/oauthlib-3.1.0.tar.gz"
+ pypi = "oauthlib/oauthlib-3.1.0.tar.gz"
version('3.1.0', sha256='bee41cc35fcca6e988463cacc3bcb8a96224f470ca547e697b604cc697b2f889')
version('3.0.1', sha256='0ce32c5d989a1827e3f1148f98b9085ed2370fc939bf524c9c851d8714797298')
@@ -22,16 +22,7 @@ class PyOauthlib(PythonPackage):
variant('extras', default=True, description='Build with pyjwt, blinker, cryptography')
depends_on('py-setuptools', type='build')
-
depends_on('py-pyjwt@1.0.0:', type=('build', 'run'), when='+extras')
depends_on('py-blinker', type=('build', 'run'), when='+extras')
depends_on('py-cryptography', type=('build', 'run'), when='+extras')
-
- depends_on('py-mock@2.0:', type='test')
- depends_on('py-pytest@4.0:', type='test')
- depends_on('py-pytest-cov@2.6:', type='test')
-
- depends_on('py-nose', type='test', when='@2.0.2')
- depends_on('py-unittest2', type='test', when='^python@2.0.2')
-
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-olefile/package.py b/var/spack/repos/builtin/packages/py-olefile/package.py
index 4e9826b18b..2db8fcad6c 100644
--- a/var/spack/repos/builtin/packages/py-olefile/package.py
+++ b/var/spack/repos/builtin/packages/py-olefile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyOlefile(PythonPackage):
"""Python package to parse, read and write Microsoft OLE2 files"""
homepage = "https://www.decalage.info/python/olefileio"
- url = "https://pypi.io/packages/source/o/olefile/olefile-0.44.zip"
-
- import_modules = ['olefile']
+ pypi = "olefile/olefile-0.44.zip"
version('0.44', sha256='61f2ca0cd0aa77279eb943c07f607438edf374096b66332fae1ee64a6f0f73ad')
diff --git a/var/spack/repos/builtin/packages/py-onnx/package.py b/var/spack/repos/builtin/packages/py-onnx/package.py
index f0a5838462..86355dd317 100644
--- a/var/spack/repos/builtin/packages/py-onnx/package.py
+++ b/var/spack/repos/builtin/packages/py-onnx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ class PyOnnx(PythonPackage):
on the capabilities needed for inferencing (scoring)."""
homepage = "https://github.com/onnx/onnx"
- url = "https://pypi.io/packages/source/O/Onnx/onnx-1.6.0.tar.gz"
+ pypi = "Onnx/onnx-1.6.0.tar.gz"
version('1.6.0', sha256='3b88c3fe521151651a0403c4d131cb2e0311bd28b753ef692020a432a81ce345')
version('1.5.0', sha256='1a584a4ef62a6db178c257fffb06a9d8e61b41c0a80bfd8bcd8a253d72c4b0b4')
diff --git a/var/spack/repos/builtin/packages/py-ont-fast5-api/package.py b/var/spack/repos/builtin/packages/py-ont-fast5-api/package.py
index 9c71274e60..df0883ea8c 100644
--- a/var/spack/repos/builtin/packages/py-ont-fast5-api/package.py
+++ b/var/spack/repos/builtin/packages/py-ont-fast5-api/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyOntFast5Api(PythonPackage):
API, without having to directly invoke the h5py library."""
homepage = "https://github.com/nanoporetech/ont_fast5_api"
- url = "https://pypi.io/packages/source/o/ont-fast5-api/ont-fast5-api-0.3.2.tar.gz"
+ pypi = "ont-fast5-api/ont-fast5-api-0.3.2.tar.gz"
version('0.3.2', sha256='ae44b1bcd812e8acf8beff3db92456647c343cf19340f97cff4847de5cc905d8')
diff --git a/var/spack/repos/builtin/packages/py-opencensus-context/package.py b/var/spack/repos/builtin/packages/py-opencensus-context/package.py
index 87d7d25c30..5e8a66c622 100644
--- a/var/spack/repos/builtin/packages/py-opencensus-context/package.py
+++ b/var/spack/repos/builtin/packages/py-opencensus-context/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-opencensus/package.py b/var/spack/repos/builtin/packages/py-opencensus/package.py
index ef8222c9ae..76643d9fc1 100644
--- a/var/spack/repos/builtin/packages/py-opencensus/package.py
+++ b/var/spack/repos/builtin/packages/py-opencensus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyOpencensus(PythonPackage):
"""A stats collection and distributed tracing framework."""
homepage = "https://github.com/census-instrumentation/opencensus-python"
- url = "https://pypi.io/packages/source/o/opencensus/opencensus-0.7.10.tar.gz"
+ pypi = "opencensus/opencensus-0.7.10.tar.gz"
version('0.7.10', sha256='2921e3e570cfadfd123cd8e3636a405031367fddff74c55d3fe627a4cf8b981c')
diff --git a/var/spack/repos/builtin/packages/py-openidc-client/package.py b/var/spack/repos/builtin/packages/py-openidc-client/package.py
new file mode 100644
index 0000000000..b112133b85
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-openidc-client/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyOpenidcClient(PythonPackage):
+ """A python OpenID Connect client with token caching and management"""
+
+ homepage = "https://github.com/puiterwijk/python-openidc-client"
+ pypi = "openidc-client/openidc-client-0.6.0.tar.gz"
+
+ version('0.6.0', sha256='680e969cae18c30adbddd6a087ed09f6a296b4937b4c8bc69be813bdbbfa9847')
+ version('0.5.0', sha256='59d59d6fbfd26c5b57c53e582bdf2379274602f96133a163e7ff1ef39c363353')
+ version('0.2.0', sha256='50a1f5abc1960c206a462b3b2f2da1f03abdcb542beb1d6d89d2736def228ab9')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-requests', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-openmc/package.py b/var/spack/repos/builtin/packages/py-openmc/package.py
new file mode 100644
index 0000000000..e3ffcba6c6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-openmc/package.py
@@ -0,0 +1,56 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyOpenmc(PythonPackage):
+ """The OpenMC project aims to provide a fully-featured Monte Carlo particle
+ transport code based on modern methods. It is a constructive solid
+ geometry, continuous-energy transport code that uses ACE format cross
+ sections. The project started under the Computational Reactor Physics
+ Group at MIT."""
+
+ homepage = "http://openmc.readthedocs.io/"
+ url = "https://github.com/openmc-dev/openmc/tarball/v0.11.0"
+ git = "https://github.com/openmc-dev/openmc.git"
+
+ version('develop', branch='develop')
+ version('master', branch='master')
+ version('0.12.0', tag='v0.12.0', submodules=True)
+ version('0.11.0', sha256='19a9d8e9c3b581e9060fbd96d30f1098312d217cb5c925eb6372a5786d9175af')
+
+ variant('mpi', default=False, description='Enable MPI support')
+
+ # keep py-openmc and openmc at the same version
+ for ver in ['develop', 'master', '0.12.0', '0.11.0']:
+ depends_on(
+ 'openmc+mpi@{0}'.format(ver), when='@{0}+mpi'.format(ver),
+ type=('build', 'run')
+ )
+ depends_on(
+ 'openmc~mpi@{0}'.format(ver), when='@{0}~mpi'.format(ver),
+ type=('build', 'run')
+ )
+
+ depends_on('git', type='build')
+ depends_on('python@3.5:', type=('build', 'run'))
+ depends_on('py-cython', type='build')
+ depends_on('py-h5py~mpi', when='~mpi', type=('build', 'run'))
+ depends_on('py-h5py+mpi', when='+mpi', type=('build', 'run'))
+ depends_on('py-ipython', type=('build', 'run'))
+ depends_on('py-lxml', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-mpi4py', when='+mpi', type=('build', 'run'))
+ depends_on('py-numpy@1.9:', type=('build', 'run'))
+ depends_on('py-pandas', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-uncertainties', type=('build', 'run'))
+
+ @run_after('install')
+ def install_lib(self):
+ install(join_path(self.spec['openmc'].prefix.lib, 'libopenmc.*'),
+ self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/py-openpmd-validator/package.py b/var/spack/repos/builtin/packages/py-openpmd-validator/package.py
index 3da15810d5..cede47169f 100644
--- a/var/spack/repos/builtin/packages/py-openpmd-validator/package.py
+++ b/var/spack/repos/builtin/packages/py-openpmd-validator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-openpyxl/package.py b/var/spack/repos/builtin/packages/py-openpyxl/package.py
index f929fe6a9b..45ad7e7293 100644
--- a/var/spack/repos/builtin/packages/py-openpyxl/package.py
+++ b/var/spack/repos/builtin/packages/py-openpyxl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyOpenpyxl(PythonPackage):
"""A Python library to read/write Excel 2010 xlsx/xlsm files"""
homepage = "http://openpyxl.readthedocs.org/"
- url = "https://pypi.io/packages/source/o/openpyxl/openpyxl-3.0.3.tar.gz"
+ pypi = "openpyxl/openpyxl-3.0.3.tar.gz"
version('3.0.3', sha256='547a9fc6aafcf44abe358b89ed4438d077e9d92e4f182c87e2dc294186dc4b64')
version('2.4.5', sha256='78c331e819fb0a63a1339d452ba0b575d1a31f09fdcce793a31bec7e9ef4ef21')
diff --git a/var/spack/repos/builtin/packages/py-openslide-python/package.py b/var/spack/repos/builtin/packages/py-openslide-python/package.py
index 371b218cb3..9cc665e367 100644
--- a/var/spack/repos/builtin/packages/py-openslide-python/package.py
+++ b/var/spack/repos/builtin/packages/py-openslide-python/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,8 +14,6 @@ class PyOpenslidePython(PythonPackage):
version('1.1.1', sha256='33c390fe43e3d7d443fafdd66969392d3e9efd2ecd5d4af73c3dbac374485ed5')
- import_modules = ['openslide']
-
depends_on('openslide@3.4.0:')
depends_on('python@2.6:2.8,3.3:')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-opentuner/package.py b/var/spack/repos/builtin/packages/py-opentuner/package.py
index b55a9073c4..0e367bf55d 100644
--- a/var/spack/repos/builtin/packages/py-opentuner/package.py
+++ b/var/spack/repos/builtin/packages/py-opentuner/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-opppy/package.py b/var/spack/repos/builtin/packages/py-opppy/package.py
index 0ba7aecaf2..b92610528f 100644
--- a/var/spack/repos/builtin/packages/py-opppy/package.py
+++ b/var/spack/repos/builtin/packages/py-opppy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class PyOpppy(PythonPackage):
maintainers = ['clevelam']
version('master', branch='master')
+ version('0_1_5', sha256='d9df166d347c18d4f145059b4c2fb23dbfbecf0dd5a3398f29e52d3e261844b0')
version('0_1_4', sha256='22d81a64856f4c12f8079440c837d7d1f45153e68c405b45bed8b6d35831e948')
version('0_1_3', sha256='c3ca97f2ff8ab319b5c7257baa8cab852387dc00d426b4534c06f0894363c541')
version('0_1_2', sha256='ef3795d3164fa0aa7ea7da7e223d6d0a48d2960aefd03a7d90cdb8b8f480cd4c')
@@ -26,6 +27,5 @@ class PyOpppy(PythonPackage):
depends_on('py-sphinx', type=('build'))
depends_on('py-numpy@1.6:', type=('build', 'run'))
depends_on('python@3:', type=('build', 'run'))
- depends_on('py-argparse', type=('build', 'run'), when='^python@:2.6')
depends_on('py-scipy', type=('build', 'run'))
depends_on('py-matplotlib', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-opt-einsum/package.py b/var/spack/repos/builtin/packages/py-opt-einsum/package.py
index 0f430c76f8..cb71c6d7c8 100644
--- a/var/spack/repos/builtin/packages/py-opt-einsum/package.py
+++ b/var/spack/repos/builtin/packages/py-opt-einsum/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class PyOptEinsum(PythonPackage):
"""Optimized Einsum: A tensor contraction order optimizer."""
homepage = "https://github.com/dgasmith/opt_einsum"
- url = "https://pypi.io/packages/source/o/opt_einsum/opt_einsum-3.1.0.tar.gz"
+ pypi = "opt_einsum/opt_einsum-3.1.0.tar.gz"
+ version('3.3.0', sha256='59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549')
version('3.2.1', sha256='83b76a98d18ae6a5cc7a0d88955a7f74881f0e567a0f4c949d24c942753eb998')
version('3.2.0', sha256='738b0a1db1d3084d360081bb64d826f9db06d2df7cc0bf8e2c9356028da1fa31')
version('3.1.0', sha256='edfada4b1d0b3b782ace8bc14e80618ff629abf53143e1e6bbf9bd00b11ece77')
@@ -21,6 +22,3 @@ class PyOptEinsum(PythonPackage):
depends_on('python@3.5:', type=('build', 'run'), when='@3:')
depends_on('py-setuptools', type='build')
depends_on('py-numpy@1.7:', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-pytest-cov', type='test')
- depends_on('py-pytest-pep8', type='test')
diff --git a/var/spack/repos/builtin/packages/py-or-tools/package.py b/var/spack/repos/builtin/packages/py-or-tools/package.py
index 068a22d165..8f79c14c3d 100644
--- a/var/spack/repos/builtin/packages/py-or-tools/package.py
+++ b/var/spack/repos/builtin/packages/py-or-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-ordereddict/package.py b/var/spack/repos/builtin/packages/py-ordereddict/package.py
index afba6ee6f3..490aaf5560 100644
--- a/var/spack/repos/builtin/packages/py-ordereddict/package.py
+++ b/var/spack/repos/builtin/packages/py-ordereddict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,6 @@ class PyOrdereddict(PythonPackage):
"""A drop-in substitute for Py2.7's new collections.
OrderedDict that works in Python 2.4-2.6."""
- homepage = "https://pypi.python.org/pypi/ordereddict"
- url = "https://pypi.io/packages/source/o/ordereddict/ordereddict-1.1.tar.gz"
-
- import_modules = ['ordereddict']
+ pypi = "ordereddict/ordereddict-1.1.tar.gz"
version('1.1', sha256='1c35b4ac206cef2d24816c89f89cf289dd3d38cf7c449bb3fab7bf6d43f01b1f')
diff --git a/var/spack/repos/builtin/packages/py-oset/package.py b/var/spack/repos/builtin/packages/py-oset/package.py
index 9dfb7c47db..37b623aeb4 100644
--- a/var/spack/repos/builtin/packages/py-oset/package.py
+++ b/var/spack/repos/builtin/packages/py-oset/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,10 +9,7 @@ from spack import *
class PyOset(PythonPackage):
"""Set that remembers original insertion order."""
- homepage = "https://pypi.python.org/pypi/oset"
- url = "https://pypi.io/packages/source/o/oset/oset-0.1.3.tar.gz"
-
- import_modules = ['oset']
+ pypi = "oset/oset-0.1.3.tar.gz"
version('0.1.3', sha256='4c1fd7dec96eeff9d3260995a8e37f9f415d0bdb79975f57824e68716ac8f904')
diff --git a/var/spack/repos/builtin/packages/py-osqp/package.py b/var/spack/repos/builtin/packages/py-osqp/package.py
index 1bec5cdf49..1e4b0f9d4c 100644
--- a/var/spack/repos/builtin/packages/py-osqp/package.py
+++ b/var/spack/repos/builtin/packages/py-osqp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyOsqp(PythonPackage):
"""OSQP: The Operator Splitting QP Solver"""
homepage = "https://osqp.org/"
- url = "https://pypi.io/packages/source/o/osqp/osqp-0.6.1.tar.gz"
+ pypi = "osqp/osqp-0.6.1.tar.gz"
version('0.6.1', sha256='47b17996526d6ecdf35cfaead6e3e05d34bc2ad48bcb743153cefe555ecc0e8c')
diff --git a/var/spack/repos/builtin/packages/py-overpy/package.py b/var/spack/repos/builtin/packages/py-overpy/package.py
index 24b3186e17..f34b2c4c8d 100644
--- a/var/spack/repos/builtin/packages/py-overpy/package.py
+++ b/var/spack/repos/builtin/packages/py-overpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,11 @@ class PyOverpy(PythonPackage):
"""A Python Wrapper to access the Overpass API."""
homepage = "https://github.com/DinoTools/python-overpy"
- url = "https://pypi.io/packages/source/o/overpy/overpy-0.4.tar.gz"
+ pypi = "overpy/overpy-0.4.tar.gz"
version('0.4', sha256='6e5bfcd9368f0c33a5d7615b18dbcac18444157f447639287c6743aa2de8964d')
version('0.3.1', sha256='3c6f6afe262ccf50c983617fc4ec5f381c2e1f6391aa974fbcc39203802bc3ff')
depends_on('py-setuptools', type='build')
depends_on('py-pytest-runner', type='build')
- depends_on('py-pytest', type='test')
depends_on('python@2.7:2.8,3.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-owslib/package.py b/var/spack/repos/builtin/packages/py-owslib/package.py
index 459dab7727..3b44452959 100644
--- a/var/spack/repos/builtin/packages/py-owslib/package.py
+++ b/var/spack/repos/builtin/packages/py-owslib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyOwslib(PythonPackage):
related content models."""
homepage = "http://http://geopython.github.io/OWSLib/#installation"
- url = "https://pypi.io/packages/source/O/OWSLib/OWSLib-0.16.0.tar.gz"
+ pypi = "OWSLib/OWSLib-0.16.0.tar.gz"
version('0.17.1', sha256='b2e7fd694d3cffcee79317bad492d60c0aa887aea6916517c051c3247b33b5a5')
version('0.16.0', sha256='ec95a5e93c145a5d84b0074b9ea27570943486552a669151140debf08a100554')
diff --git a/var/spack/repos/builtin/packages/py-pacifica-downloader/package.py b/var/spack/repos/builtin/packages/py-pacifica-downloader/package.py
new file mode 100644
index 0000000000..109c458762
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pacifica-downloader/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPacificaDownloader(PythonPackage):
+ """Python Pacifica Download Library"""
+
+ homepage = "https://github.com/pacifica/pacifica-python-downloader/"
+ pypi = "pacifica-downloader/pacifica-downloader-0.4.1.tar.gz"
+
+ version('0.4.1', sha256='11da2032a07ca7bb06fed38dc8d7c4c57267ff98c5fd925271083e18dd85d9f4')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-requests', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pacifica-namespace/package.py b/var/spack/repos/builtin/packages/py-pacifica-namespace/package.py
new file mode 100644
index 0000000000..2db81023bb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pacifica-namespace/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPacificaNamespace(PythonPackage):
+ """Python Pacifica Namespace Library"""
+
+ homepage = "https://github.com/pacifica/pacifica-namespace/"
+ pypi = "pacifica-namespace/pacifica-namespace-0.0.2.tar.gz"
+
+ version('0.0.2', sha256='a8f59aea1203a1557f7f57887b61e92f8450c74a8522798c5ddecf8fffb0b224')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pacifica-uploader/package.py b/var/spack/repos/builtin/packages/py-pacifica-uploader/package.py
new file mode 100644
index 0000000000..c2d486d2fd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pacifica-uploader/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPacificaUploader(PythonPackage):
+ """Python Pacifica Uploader Library"""
+
+ homepage = "https://github.com/pacifica/pacifica-python-uploader/"
+ pypi = "pacifica-uploader/pacifica-uploader-0.3.1.tar.gz"
+
+ version('0.3.1', sha256='adda18b28f01f0b1e6fbaf927fec9b8cf07c86f1b74185bed2a624e8a4597578')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-requests', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-packaging/package.py b/var/spack/repos/builtin/packages/py-packaging/package.py
index 30b44d9522..4c2bcc47bb 100644
--- a/var/spack/repos/builtin/packages/py-packaging/package.py
+++ b/var/spack/repos/builtin/packages/py-packaging/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyPackaging(PythonPackage):
"""Core utilities for Python packages."""
homepage = "https://github.com/pypa/packaging"
- url = "https://pypi.io/packages/source/p/packaging/packaging-19.2.tar.gz"
-
- import_modules = ['packaging']
+ pypi = "packaging/packaging-19.2.tar.gz"
version('19.2', sha256='28b924174df7a2fa32c1953825ff29c61e2f5e082343165438812f00d3a7fc47')
version('19.1', sha256='c491ca87294da7cc01902edbe30a5bc6c4c28172b5138ab4e4aa1b9d7bfaeafe')
@@ -20,14 +18,8 @@ class PyPackaging(PythonPackage):
version('17.1', sha256='f019b770dd64e585a99714f1fd5e01c7a8f11b45635aa953fd41c689a657375b')
version('16.8', sha256='5d50835fdf0a7edf0b55e311b7c887786504efea1177abd7e69329a8e5ea619e')
+ depends_on('py-setuptools', type='build')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-attrs', when='@19.1', type=('build', 'run'))
depends_on('py-pyparsing@2.0.2:', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
-
- # Newer versions of setuptools require packaging. Although setuptools is an
- # optional dependency of packaging, if it is not found, setup.py will
- # fallback on distutils.core instead. Don't add a setuptools dependency
- # or we won't be able to bootstrap setuptools.
-
- # depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pager/package.py b/var/spack/repos/builtin/packages/py-pager/package.py
new file mode 100644
index 0000000000..1f131397a6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pager/package.py
@@ -0,0 +1,16 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPager(PythonPackage):
+ """Python module that pages output to the screen,
+ reads keys and console dimensions without executing external utils."""
+
+ homepage = "http://bitbucket.org/techtonik/python-pager"
+ pypi = "pager/pager-3.3.tar.gz"
+
+ version('3.3', sha256='18aa45ec877dca732e599531c7b3b0b22ed6a4445febdf1bdf7da2761cca340d')
diff --git a/var/spack/repos/builtin/packages/py-palettable/package.py b/var/spack/repos/builtin/packages/py-palettable/package.py
index aa17c77c4b..df2d34ac25 100644
--- a/var/spack/repos/builtin/packages/py-palettable/package.py
+++ b/var/spack/repos/builtin/packages/py-palettable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPalettable(PythonPackage):
"""Color palettes for Python."""
homepage = "https://jiffyclub.github.io/palettable/"
- url = "https://pypi.io/packages/source/p/palettable/palettable-3.0.0.tar.gz"
+ pypi = "palettable/palettable-3.0.0.tar.gz"
version('3.3.0', sha256='72feca71cf7d79830cd6d9181b02edf227b867d503bec953cf9fa91bf44896bd')
version('3.0.0', sha256='eed9eb0399386ff42f90ca61d4fa38a1819a93d5adfc2d546e3e2869d9972c31')
diff --git a/var/spack/repos/builtin/packages/py-pamela/package.py b/var/spack/repos/builtin/packages/py-pamela/package.py
index 58312ce3c3..7f80ae8091 100644
--- a/var/spack/repos/builtin/packages/py-pamela/package.py
+++ b/var/spack/repos/builtin/packages/py-pamela/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPamela(PythonPackage):
"""Python wrapper for PAM"""
- homepage = "https://pypi.org/project/pamela/"
- url = "https://pypi.io/packages/source/p/pamela/pamela-1.0.0.tar.gz"
+ pypi = "pamela/pamela-1.0.0.tar.gz"
version('1.0.0', sha256='65c9389bef7d1bb0b168813b6be21964df32016923aac7515bdf05366acbab6c')
diff --git a/var/spack/repos/builtin/packages/py-pandas/package.py b/var/spack/repos/builtin/packages/py-pandas/package.py
index 154cbcba06..eedd11c314 100644
--- a/var/spack/repos/builtin/packages/py-pandas/package.py
+++ b/var/spack/repos/builtin/packages/py-pandas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,23 +10,31 @@ class PyPandas(PythonPackage):
programming language."""
homepage = "https://pandas.pydata.org/"
- url = "https://pypi.io/packages/source/p/pandas/pandas-1.1.4.tar.gz"
+ pypi = "pandas/pandas-1.2.0.tar.gz"
maintainers = ['adamjstewart']
import_modules = [
- 'pandas', 'pandas.compat', 'pandas.core', 'pandas.util', 'pandas.io',
- 'pandas.tseries', 'pandas._libs', 'pandas.plotting', 'pandas.arrays',
- 'pandas.api', 'pandas.errors', 'pandas._config', 'pandas.compat.numpy',
+ 'pandas', 'pandas.compat', 'pandas.compat.numpy', 'pandas.core',
'pandas.core.reshape', 'pandas.core.tools', 'pandas.core.util',
- 'pandas.core.dtypes', 'pandas.core.groupby', 'pandas.core.internals',
- 'pandas.core.computation', 'pandas.core.arrays', 'pandas.core.ops',
- 'pandas.core.sparse', 'pandas.core.indexes', 'pandas.io.msgpack',
- 'pandas.io.formats', 'pandas.io.excel', 'pandas.io.json',
- 'pandas.io.sas', 'pandas.io.clipboard', 'pandas._libs.tslibs',
- 'pandas.plotting._matplotlib', 'pandas.api.types',
- 'pandas.api.extensions'
+ 'pandas.core.array_algos', 'pandas.core.dtypes', 'pandas.core.groupby',
+ 'pandas.core.internals', 'pandas.core.computation',
+ 'pandas.core.window', 'pandas.core.arrays',
+ 'pandas.core.arrays.sparse', 'pandas.core.ops', 'pandas.core.sparse',
+ 'pandas.core.indexes', 'pandas.util', 'pandas.io', 'pandas.io.formats',
+ 'pandas.io.excel', 'pandas.io.json', 'pandas.io.sas',
+ 'pandas.io.clipboard', 'pandas.tseries', 'pandas._libs',
+ 'pandas._libs.window', 'pandas._libs.tslibs', 'pandas.plotting',
+ 'pandas.arrays', 'pandas.api', 'pandas.api.indexers',
+ 'pandas.api.types', 'pandas.api.extensions', 'pandas.errors',
+ 'pandas._config'
]
+ version('1.2.4', sha256='649ecab692fade3cbfcf967ff936496b0cfba0af00a55dfaacd82bdda5cb2279')
+ version('1.2.3', sha256='df6f10b85aef7a5bb25259ad651ad1cc1d6bb09000595cab47e718cbac250b1d')
+ version('1.2.2', sha256='14ed84b463e9b84c8ff9308a79b04bf591ae3122a376ee0f62c68a1bd917a773')
+ version('1.2.1', sha256='5527c5475d955c0bc9689c56865aaa2a7b13c504d6c44f0aadbf57b565af5ebd')
+ version('1.2.0', sha256='e03386615b970b8b41da6a68afe717626741bb2431cec993640685614c0680e4')
+ version('1.1.5', sha256='f10fc41ee3c75a474d3bdf68d396f10782d013d7f67db99c0efbfd0acb99701b')
version('1.1.4', sha256='a979d0404b135c63954dea79e6246c45dd45371a88631cdbb4877d844e6de3b6')
version('1.1.3', sha256='babbeda2f83b0686c9ad38d93b10516e68cdcd5771007eb80a763e98aaf44613')
version('1.1.2', sha256='b64ffd87a2cfd31b40acd4b92cb72ea9a52a48165aec4c140e78fd69c45d1444')
@@ -55,6 +63,7 @@ class PyPandas(PythonPackage):
# Required dependencies
# https://pandas.pydata.org/pandas-docs/stable/getting_started/install.html#dependencies
+ depends_on('python@3.7.1:', type=('build', 'run'), when='@1.2:')
depends_on('python@3.6.1:', type=('build', 'run'), when='@1:')
depends_on('python@3.5.3:', type=('build', 'run'), when='@0.25:')
# https://pandas.pydata.org/docs/whatsnew/v1.0.0.html#build-changes
@@ -65,24 +74,20 @@ class PyPandas(PythonPackage):
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-numpy@1.13.3:', type=('build', 'run'), when='@0.25:')
depends_on('py-numpy@1.15.4:', type=('build', 'run'), when='@1.1:')
+ depends_on('py-numpy@1.16.5:', type=('build', 'run'), when='@1.2:')
depends_on('py-python-dateutil', type=('build', 'run'))
depends_on('py-python-dateutil@2.6.1:', type=('build', 'run'), when='@0.25:')
depends_on('py-python-dateutil@2.7.3:', type=('build', 'run'), when='@1.1:')
depends_on('py-pytz@2017.2:', type=('build', 'run'))
+ depends_on('py-pytz@2017.3:', type=('build', 'run'), when='@1.2:')
# Recommended dependencies
# https://pandas.pydata.org/pandas-docs/stable/getting_started/install.html#recommended-dependencies
depends_on('py-numexpr', type=('build', 'run'))
depends_on('py-numexpr@2.6.2:', type=('build', 'run'), when='@0.25:')
+ depends_on('py-numexpr@2.6.8:', type=('build', 'run'), when='@1.2:')
depends_on('py-bottleneck', type=('build', 'run'))
depends_on('py-bottleneck@1.2.1:', type=('build', 'run'), when='@0.25:')
# Optional dependencies
# https://pandas.pydata.org/pandas-docs/stable/getting_started/install.html#optional-dependencies
-
- # Test dependencies
- # https://pandas.pydata.org/pandas-docs/stable/development/contributing.html#running-the-test-suite
- depends_on('py-pytest@4.0.2:', type='test')
- depends_on('py-pytest-xdist', type='test')
- depends_on('py-hypothesis@3.58:', type='test')
- depends_on('py-pyarrow@0.10.0:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pandocfilters/package.py b/var/spack/repos/builtin/packages/py-pandocfilters/package.py
index 168a2363f3..719ac3163f 100644
--- a/var/spack/repos/builtin/packages/py-pandocfilters/package.py
+++ b/var/spack/repos/builtin/packages/py-pandocfilters/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyPandocfilters(PythonPackage):
"""A python module for writing pandoc filters"""
homepage = "https://github.com/jgm/pandocfilters"
- url = "https://pypi.io/packages/source/p/pandocfilters/pandocfilters-1.4.2.tar.gz"
+ pypi = "pandocfilters/pandocfilters-1.4.2.tar.gz"
version('1.4.2', sha256='b3dd70e169bb5449e6bc6ff96aea89c5eea8c5f6ab5e207fc2f521a2cf4a0da9')
diff --git a/var/spack/repos/builtin/packages/py-parameterized/package.py b/var/spack/repos/builtin/packages/py-parameterized/package.py
index ff68c38080..9dfcd7a4b5 100644
--- a/var/spack/repos/builtin/packages/py-parameterized/package.py
+++ b/var/spack/repos/builtin/packages/py-parameterized/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyParameterized(PythonPackage):
"""Parameterized testing with any Python test framework."""
homepage = "https://github.com/wolever/parameterized"
- url = "https://pypi.io/packages/source/p/parameterized/parameterized-0.7.1.tar.gz"
+ pypi = "parameterized/parameterized-0.7.1.tar.gz"
version('0.7.1', sha256='6a94dbea30c6abde99fd4c2f2042c1bf7f980e48908bf92ead62394f93cf57ed')
diff --git a/var/spack/repos/builtin/packages/py-paramiko/package.py b/var/spack/repos/builtin/packages/py-paramiko/package.py
index db07fccd09..598d002d79 100644
--- a/var/spack/repos/builtin/packages/py-paramiko/package.py
+++ b/var/spack/repos/builtin/packages/py-paramiko/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,14 +11,19 @@ class PyParamiko(PythonPackage):
"""SSH2 protocol library"""
homepage = "http://www.paramiko.org/"
- url = "https://pypi.io/packages/source/p/paramiko/paramiko-2.7.1.tar.gz"
+ pypi = "paramiko/paramiko-2.7.1.tar.gz"
version('2.7.1', sha256='920492895db8013f6cc0179293147f830b8c7b21fdfc839b6bad760c27459d9f')
version('2.1.2', sha256='5fae49bed35e2e3d45c4f7b0db2d38b9ca626312d91119b3991d0ecf8125e310')
+ variant('invoke', default=False, description='Enable invoke support')
+
depends_on('py-setuptools', type='build')
depends_on('py-bcrypt@3.1.3:', when='@2.7:', type=('build', 'run'))
depends_on('py-cryptography@1.1:', type=('build', 'run'))
depends_on('py-cryptography@2.5:', when='@2.7:', type=('build', 'run'))
depends_on('py-pyasn1@0.1.7:', when='@:2.1', type=('build', 'run'))
depends_on('py-pynacl@1.0.1:', when='@2.7:', type=('build', 'run'))
+
+ depends_on('py-invoke@1.3:', when='+invoke', type=('build', 'run'))
+ conflicts('+invoke', when='@2.1.2')
diff --git a/var/spack/repos/builtin/packages/py-paramz/package.py b/var/spack/repos/builtin/packages/py-paramz/package.py
index 77c5996d12..14e88bfbde 100644
--- a/var/spack/repos/builtin/packages/py-paramz/package.py
+++ b/var/spack/repos/builtin/packages/py-paramz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyParamz(PythonPackage):
"""The Parameterization Framework."""
homepage = "https://github.com/sods/paramz"
- url = "https://pypi.io/packages/source/p/paramz/paramz-0.9.5.tar.gz"
+ pypi = "paramz/paramz-0.9.5.tar.gz"
version('0.9.5', sha256='0917211c0f083f344e7f1bc997e0d713dbc147b6380bc19f606119394f820b9a')
diff --git a/var/spack/repos/builtin/packages/py-parse/package.py b/var/spack/repos/builtin/packages/py-parse/package.py
index da7323e510..cea8db54b2 100644
--- a/var/spack/repos/builtin/packages/py-parse/package.py
+++ b/var/spack/repos/builtin/packages/py-parse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyParse(PythonPackage):
"""parse() is the opposite of format()"""
- homepage = "https://pypi.org/project/parse/"
- url = "https://pypi.io/packages/source/p/parse/parse-1.11.1.tar.gz"
+ pypi = "parse/parse-1.11.1.tar.gz"
version('1.18.0', sha256='91666032d6723dc5905248417ef0dc9e4c51df9526aaeef271eacad6491f06a4')
version('1.12.1', sha256='a5fca7000c6588d77bc65c28f3f21bfce03b5e44daa8f9f07c17fe364990d717')
diff --git a/var/spack/repos/builtin/packages/py-parsedatetime/package.py b/var/spack/repos/builtin/packages/py-parsedatetime/package.py
index afb8db85bb..4edd86f58b 100644
--- a/var/spack/repos/builtin/packages/py-parsedatetime/package.py
+++ b/var/spack/repos/builtin/packages/py-parsedatetime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyParsedatetime(PythonPackage):
"""Parse human-readable date/time strings."""
homepage = "https://github.com/bear/parsedatetime"
- url = "https://pypi.io/packages/source/p/parsedatetime/parsedatetime-2.5.tar.gz"
+ pypi = "parsedatetime/parsedatetime-2.5.tar.gz"
version('2.5', sha256='d2e9ddb1e463de871d32088a3f3cea3dc8282b1b2800e081bd0ef86900451667')
diff --git a/var/spack/repos/builtin/packages/py-parso/package.py b/var/spack/repos/builtin/packages/py-parso/package.py
index 3f54eca9ce..07364b0bbb 100644
--- a/var/spack/repos/builtin/packages/py-parso/package.py
+++ b/var/spack/repos/builtin/packages/py-parso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,12 +12,14 @@ class PyParso(PythonPackage):
Parso is also able to list multiple syntax errors
in your python file."""
- homepage = "https://pypi.org/project/parso/"
- url = "https://pypi.io/packages/source/p/parso/parso-0.6.1.tar.gz"
+ pypi = "parso/parso-0.6.1.tar.gz"
+ version('0.8.1', sha256='8519430ad07087d4c997fda3a7918f7cfa27cb58972a8c89c2a0295a1c940e9e')
+ version('0.7.1', sha256='caba44724b994a8a5e086460bb212abc5a8bc46951bf4a9a1210745953622eb9')
version('0.6.1', sha256='56b2105a80e9c4df49de85e125feb6be69f49920e121406f15e7acde6c9dfc57')
+ version('0.4.0', sha256='2e9574cb12e7112a87253e14e2c380ce312060269d04bd018478a3c92ea9a376')
- depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('python@3.6:', type=('build', 'run'), when='@0.8.1:')
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'), when='@0.6.1:')
+ depends_on('python@2.6:2.8,3.3:', type=('build', 'run'), when='@0.4.0:')
depends_on('py-setuptools', type='build')
- depends_on('py-pytest@3.0.7:', type='test')
- depends_on('py-docopt', type='test')
diff --git a/var/spack/repos/builtin/packages/py-partd/package.py b/var/spack/repos/builtin/packages/py-partd/package.py
index 8e99413822..f822141cff 100644
--- a/var/spack/repos/builtin/packages/py-partd/package.py
+++ b/var/spack/repos/builtin/packages/py-partd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyPartd(PythonPackage):
"""Key-value byte store with appendable values."""
homepage = "http://github.com/dask/partd/"
- url = "https://pypi.io/packages/source/p/partd/partd-0.3.8.tar.gz"
-
- import_modules = ['partd']
+ pypi = "partd/partd-0.3.8.tar.gz"
version('1.1.0', sha256='6e258bf0810701407ad1410d63d1a15cfd7b773fd9efe555dac6bb82cc8832b0')
version('0.3.10', sha256='33722a228ebcd1fa6f44b1631bdd4cff056376f89eb826d7d880b35b637bcfba')
diff --git a/var/spack/repos/builtin/packages/py-particle/package.py b/var/spack/repos/builtin/packages/py-particle/package.py
index b8b03b21d0..2a53657f35 100644
--- a/var/spack/repos/builtin/packages/py-particle/package.py
+++ b/var/spack/repos/builtin/packages/py-particle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,12 +12,15 @@ class PyParticle(PythonPackage):
particle information and extra goodies."""
git = "https://github.com/scikit-hep/particle.git"
- url = "https://pypi.io/packages/source/p/particle/particle-0.11.0.tar.gz"
+ pypi = "particle/particle-0.11.0.tar.gz"
homepage = "https://github.com/scikit-hep/particle"
maintainers = ['vvolkl']
+ tags = ['hep']
+
version('master', branch='master')
+ version('0.14.1', sha256='05b345f8fbfdb12a0aa744c788b6e1b22326b5a6ad95230596e0fc9ebad56621')
version('0.11.0', sha256='e90dc36c8b7d7431bd14ee5a28486d28b6c0708555845d1d7bdf59a165405f12')
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-path-py/package.py b/var/spack/repos/builtin/packages/py-path-py/package.py
index 6d578b2d8b..9b694a5305 100644
--- a/var/spack/repos/builtin/packages/py-path-py/package.py
+++ b/var/spack/repos/builtin/packages/py-path-py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPathPy(PythonPackage):
"""A module wrapper for os.path"""
homepage = "https://github.com/jaraco/path.py"
- url = "https://pypi.io/packages/source/p/path.py/path.py-12.0.1.tar.gz"
+ pypi = "path.py/path.py-12.0.1.tar.gz"
version('12.0.1', sha256='9f2169633403aa0423f6ec000e8701dd1819526c62465f5043952f92527fea0f')
version('5.2', sha256='9916ae9aa603ce7e131e4ac76c25bcdbf6208f8fe5cc565a5022b85dc9d7022c')
diff --git a/var/spack/repos/builtin/packages/py-pathlib/package.py b/var/spack/repos/builtin/packages/py-pathlib/package.py
index a0676b0494..e9579aa4b9 100644
--- a/var/spack/repos/builtin/packages/py-pathlib/package.py
+++ b/var/spack/repos/builtin/packages/py-pathlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,6 @@ class PyPathlib(PythonPackage):
instead."""
homepage = "https://pathlib.readthedocs.org/"
- url = "https://pypi.io/packages/source/p/pathlib/pathlib-1.0.1.tar.gz"
+ pypi = "pathlib/pathlib-1.0.1.tar.gz"
version('1.0.1', sha256='6940718dfc3eff4258203ad5021090933e5c04707d5ca8cc9e73c94a7894ea9f')
diff --git a/var/spack/repos/builtin/packages/py-pathlib2/package.py b/var/spack/repos/builtin/packages/py-pathlib2/package.py
index 5da1abbe18..c8a2427603 100644
--- a/var/spack/repos/builtin/packages/py-pathlib2/package.py
+++ b/var/spack/repos/builtin/packages/py-pathlib2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,10 +9,7 @@ from spack import *
class PyPathlib2(PythonPackage):
"""Backport of pathlib from python 3.4"""
- homepage = "https://pypi.python.org/pypi/pathlib2"
- url = "https://pypi.io/packages/source/p/pathlib2/pathlib2-2.3.2.tar.gz"
-
- import_modules = ['pathlib2']
+ pypi = "pathlib2/pathlib2-2.3.2.tar.gz"
version('2.3.3', sha256='25199318e8cc3c25dcb45cbe084cc061051336d5a9ea2a12448d3d8cb748f742')
version('2.3.2', sha256='8eb170f8d0d61825e09a95b38be068299ddeda82f35e96c3301a8a5e7604cb83')
diff --git a/var/spack/repos/builtin/packages/py-pathos/package.py b/var/spack/repos/builtin/packages/py-pathos/package.py
index e4b2bc6c4f..d79aeb9c72 100644
--- a/var/spack/repos/builtin/packages/py-pathos/package.py
+++ b/var/spack/repos/builtin/packages/py-pathos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPathos(PythonPackage):
"""Parallel graph management and execution in heterogeneous computing """
homepage = "https://github.com/uqfoundation/pathos"
- url = "https://pypi.io/packages/source/p/pathos/pathos-0.2.3.tar.gz"
+ pypi = "pathos/pathos-0.2.3.tar.gz"
version('0.2.3', sha256='954c5b0a8b257c375e35d311c65fa62a210a3d65269195557de38418ac9f61f9')
version('0.2.0', sha256='2f4e67e7914c95fb0cce766bab173eb2c5860ee420108fa183099557ac2e50e9')
diff --git a/var/spack/repos/builtin/packages/py-pathspec/package.py b/var/spack/repos/builtin/packages/py-pathspec/package.py
index fdf65b9484..7e1a586775 100644
--- a/var/spack/repos/builtin/packages/py-pathspec/package.py
+++ b/var/spack/repos/builtin/packages/py-pathspec/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,10 @@ class PyPathspec(PythonPackage):
"""pathspec extends the test loading and running features of unittest,
making it easier to write, find and run tests."""
- homepage = "https://pypi.python.org/pypi/pathspec"
- url = "https://pypi.io/packages/source/p/pathspec/pathspec-0.3.4.tar.gz"
+ pypi = "pathspec/pathspec-0.8.1.tar.gz"
+ version('0.8.1', sha256='86379d6b86d75816baba717e64b1a3a3469deb93bb76d613c9ce79edc5cb68fd')
version('0.3.4', sha256='7605ca5c26f554766afe1d177164a2275a85bb803b76eba3428f422972f66728')
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-patsy/package.py b/var/spack/repos/builtin/packages/py-patsy/package.py
index eb20c74049..0c5b5ce35b 100644
--- a/var/spack/repos/builtin/packages/py-patsy/package.py
+++ b/var/spack/repos/builtin/packages/py-patsy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyPatsy(PythonPackage):
building design matrices."""
homepage = "https://github.com/pydata/patsy"
- url = "https://pypi.io/packages/source/p/patsy/patsy-0.4.1.zip"
+ pypi = "patsy/patsy-0.4.1.zip"
version('0.5.1', sha256='f115cec4201e1465cd58b9866b0b0e7b941caafec129869057405bfe5b5e3991',
url="https://pypi.io/packages/source/p/patsy/patsy-0.5.1.tar.gz")
@@ -21,5 +21,3 @@ class PyPatsy(PythonPackage):
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-scipy', type=('build', 'run'), when="+splines")
depends_on('py-six', type=('build', 'run'))
-
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pauvre/package.py b/var/spack/repos/builtin/packages/py-pauvre/package.py
index d022d882c4..af1b630c0e 100644
--- a/var/spack/repos/builtin/packages/py-pauvre/package.py
+++ b/var/spack/repos/builtin/packages/py-pauvre/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pbr/package.py b/var/spack/repos/builtin/packages/py-pbr/package.py
index 80abed9db0..701d8a835d 100644
--- a/var/spack/repos/builtin/packages/py-pbr/package.py
+++ b/var/spack/repos/builtin/packages/py-pbr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyPbr(PythonPackage):
"""PBR is a library that injects some useful and sensible default
behaviors into your setuptools run."""
- homepage = "https://pypi.python.org/pypi/pbr"
- url = "https://pypi.io/packages/source/p/pbr/pbr-5.4.3.tar.gz"
+ pypi = "pbr/pbr-5.4.3.tar.gz"
version('5.4.3', sha256='2c8e420cd4ed4cec4e7999ee47409e876af575d4c35a45840d59e8b5f3155ab8')
version('5.2.1', sha256='93d2dc6ee0c9af4dbc70bc1251d0e545a9910ca8863774761f92716dece400b6')
@@ -22,19 +21,3 @@ class PyPbr(PythonPackage):
depends_on('python@2.6:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- # test-requirements.txt
- depends_on('py-wheel@0.32.0:', type='test')
- depends_on('py-fixtures@3.0.0:', type='test')
- depends_on('py-hacking@0.12.0:0.12.999,0.13.1:0.13.999', type='test')
- depends_on('py-mock@2.0.0:', type='test')
- depends_on('py-six@1.10.0:', type='test')
- depends_on('py-stestr@2.1.0:', type='test')
- depends_on('py-testresources@2.0.0:', type='test')
- depends_on('py-testscenarios@0.4:', type='test')
- depends_on('py-testtools@2.2.0:', type='test')
- depends_on('py-virtualenv@14.0.6:', type='test')
- depends_on('py-coverage@4.0:4.3,4.5:', type='test')
- depends_on('py-sphinx@1.6.2:1.6.5,1.6.8:1.999', when='^python@:2', type='test')
- depends_on('py-sphinx@1.6.2:1.6.5,1.6.8:', type='test')
- depends_on('py-testrepository@0.0.18:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pem/package.py b/var/spack/repos/builtin/packages/py-pem/package.py
new file mode 100644
index 0000000000..b2eea492a4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pem/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPem(PythonPackage):
+ """
+ pem is an MIT-licensed Python module for parsing and splitting of PEM
+ files, i.e. Base64 encoded DER keys and certificates.
+ """
+
+ homepage = "https://pem.readthedocs.io/en/stable/"
+ url = "https://github.com/hynek/pem/archive/20.1.0.tar.gz"
+
+ version('20.1.0', sha256='140df7388f72bdf95d5a40e152cfda4fd62856b8320a9a808ffdc2bee37d5c36')
+ version('19.3.0', sha256='22c526314db05559d5a6b0661aa6a21f26a1ad9f6f10a6ba2d386534ad12b175')
+ version('19.2.0', sha256='93772e1574c8ff3442e553025fe42ed66cea3abff7ce75363baffa8eb606e596')
+ version('19.1.0', sha256='da4035ce675c0bd572e9e1b75e30c38553610a7d861460299ee18d72928379de')
+ version('18.2.0', sha256='18d8440b62ae264343da72b0f6df934291c2fcdaffbeaf249150a3fe76751ed5')
+ version('18.1.0', sha256='6bcb3474d112c9dc4aca6900e6b4967cbc1db11f693c8e535f728be2f5620604')
+ version('17.1.0', sha256='f33191c11e0bcba2c3d36dc5cfeefe5cc692778a4d33e2a51e56ed7c2c22a4ce')
+ version('16.1.0', sha256='5204e85da8561e98f96fa0be9aec6e15ee9fd40499fb4ec533e0513a42effa0b')
+ version('16.0.0', sha256='a7a00aa4e1e82d39ae78f7705b0e5dfc7d7b2cf8a16ee073c24af330f75b421e')
+ version('15.0.0', sha256='e93e3cfc017fca98223e9842f9ce5df1ad58bf5b4fb1fe82092fd1b778c187e1')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pep8-naming/package.py b/var/spack/repos/builtin/packages/py-pep8-naming/package.py
index fe3e929996..ba90bad4f1 100644
--- a/var/spack/repos/builtin/packages/py-pep8-naming/package.py
+++ b/var/spack/repos/builtin/packages/py-pep8-naming/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPep8Naming(PythonPackage):
"""Check PEP-8 naming conventions, plugin for flake8."""
homepage = "https://github.com/PyCQA/pep8-naming"
- url = "https://pypi.io/packages/source/p/pep8-naming/pep8-naming-0.10.0.tar.gz"
+ pypi = "pep8-naming/pep8-naming-0.10.0.tar.gz"
version('0.10.0', sha256='f3b4a5f9dd72b991bf7d8e2a341d2e1aa3a884a769b5aaac4f56825c1763bf3a')
version('0.7.0', sha256='624258e0dd06ef32a9daf3c36cc925ff7314da7233209c5b01f7e5cdd3c34826')
diff --git a/var/spack/repos/builtin/packages/py-pep8/package.py b/var/spack/repos/builtin/packages/py-pep8/package.py
index d1eaa13470..fdd6d1f92a 100644
--- a/var/spack/repos/builtin/packages/py-pep8/package.py
+++ b/var/spack/repos/builtin/packages/py-pep8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyPep8(PythonPackage):
"""Python style guide checker (deprecated, use py-pycodestyle instead)."""
homepage = "https://pep8.readthedocs.org/"
- url = "https://pypi.io/packages/source/p/pep8/pep8-1.7.1.tar.gz"
-
- import_modules = ['pep8']
+ pypi = "pep8/pep8-1.7.1.tar.gz"
version('1.7.1', sha256='fe249b52e20498e59e0b5c5256aa52ee99fc295b26ec9eaa85776ffdb9fe6374')
diff --git a/var/spack/repos/builtin/packages/py-performance/package.py b/var/spack/repos/builtin/packages/py-performance/package.py
index 41c12556d3..1fe0a2472d 100644
--- a/var/spack/repos/builtin/packages/py-performance/package.py
+++ b/var/spack/repos/builtin/packages/py-performance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-periodictable/package.py b/var/spack/repos/builtin/packages/py-periodictable/package.py
index 253a808c0b..0e48f6fa70 100644
--- a/var/spack/repos/builtin/packages/py-periodictable/package.py
+++ b/var/spack/repos/builtin/packages/py-periodictable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyPeriodictable(PythonPackage):
"""nose extends the test loading and running features of unittest,
making it easier to write, find and run tests."""
- homepage = "https://pypi.python.org/pypi/periodictable"
- url = "https://pypi.io/packages/source/p/periodictable/periodictable-1.4.1.tar.gz"
+ pypi = "periodictable/periodictable-1.4.1.tar.gz"
version('1.5.0', sha256='b020c04c6765d21903e4604a76ca33cda98677003fe6eb48ed3690cfb03253b2')
version('1.4.1', sha256='f42e66f6efca33caec4f27dad8d6a6d4e59da147ecf5adfce152cb84e7bd160b')
diff --git a/var/spack/repos/builtin/packages/py-petastorm/package.py b/var/spack/repos/builtin/packages/py-petastorm/package.py
index 2c6cc5e34f..a7dcca0ba1 100644
--- a/var/spack/repos/builtin/packages/py-petastorm/package.py
+++ b/var/spack/repos/builtin/packages/py-petastorm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,12 +9,13 @@ class PyPetastorm(PythonPackage):
Tensorflow, Pytorch, and other Python-based ML training frameworks."""
homepage = "https://github.com/uber/petastorm"
- url = "https://pypi.io/packages/source/p/petastorm/petastorm-0.8.2.tar.gz"
+ pypi = "petastorm/petastorm-0.8.2.tar.gz"
maintainers = ['adamjstewart']
-
+ version('0.9.8', sha256='66009b7ad3f08b0485a748f12b2095a0d2470e04f0c63de43cd5b099f270c268')
version('0.8.2', sha256='7782c315e1ee8d15c7741e3eea41e77b9efce661cf58aa0220a801db64f52f91')
+ depends_on('python@3:', when='@0.9.8:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-dill@0.2.1:', type=('build', 'run'))
depends_on('py-diskcache@3.0.0:', type=('build', 'run'))
@@ -26,5 +27,6 @@ class PyPetastorm(PythonPackage):
depends_on('py-psutil@4.0.0:', type=('build', 'run'))
depends_on('py-pyspark@2.1.0:', type=('build', 'run'))
depends_on('py-pyzmq@14.0.0:', type=('build', 'run'))
- depends_on('py-pyarrow@0.12.0:', type=('build', 'run'))
+ depends_on('py-pyarrow@0.12.0:', type=('build', 'run'), when='@:0.8.2')
+ depends_on('py-pyarrow@0.17.1:', type=('build', 'run'), when='@0.9.8:')
depends_on('py-six@1.5.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-petsc4py/ldshared-dev.patch b/var/spack/repos/builtin/packages/py-petsc4py/ldshared-dev.patch
new file mode 100644
index 0000000000..46a403d1ff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-petsc4py/ldshared-dev.patch
@@ -0,0 +1,13 @@
+diff --git a/src/binding/petsc4py/conf/baseconf.py b/src/binding/petsc4py/conf/baseconf.py
+index 8a2466a5bd..73c08b923a 100644
+--- a/src/binding/petsc4py/conf/baseconf.py
++++ b/src/binding/petsc4py/conf/baseconf.py
+@@ -211,7 +211,7 @@ class PetscConfig:
+ ldshared = getenv('LDSHARED', ldshared)
+ ldflags = getenv('LDFLAGS', cflags + ' ' + (ldflags or ''))
+ ldcmd = split_quoted(ld) + split_quoted(ldflags)
+- ldshared = [flg for flg in split_quoted(ldshared) if flg not in ldcmd]
++ ldshared = [flg for flg in split_quoted(ldshared) if flg not in ldcmd and (flg.find('/lib/spack/env')<0)]
+ ldshared = str.join(' ', ldshared)
+ #
+ def get_flags(cmd):
diff --git a/var/spack/repos/builtin/packages/py-petsc4py/ldshared.patch b/var/spack/repos/builtin/packages/py-petsc4py/ldshared.patch
new file mode 100644
index 0000000000..026a48722e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-petsc4py/ldshared.patch
@@ -0,0 +1,13 @@
+diff --git a/conf/baseconf.py b/conf/baseconf.py
+index 8a2466a5bd..73c08b923a 100644
+--- a/conf/baseconf.py
++++ b/conf/baseconf.py
+@@ -211,7 +211,7 @@ class PetscConfig:
+ ldshared = getenv('LDSHARED', ldshared)
+ ldflags = getenv('LDFLAGS', cflags + ' ' + (ldflags or ''))
+ ldcmd = split_quoted(ld) + split_quoted(ldflags)
+- ldshared = [flg for flg in split_quoted(ldshared) if flg not in ldcmd]
++ ldshared = [flg for flg in split_quoted(ldshared) if flg not in ldcmd and (flg.find('/lib/spack/env')<0)]
+ ldshared = str.join(' ', ldshared)
+ #
+ def get_flags(cmd):
diff --git a/var/spack/repos/builtin/packages/py-petsc4py/package.py b/var/spack/repos/builtin/packages/py-petsc4py/package.py
index f9d1d09f42..77dd98917b 100644
--- a/var/spack/repos/builtin/packages/py-petsc4py/package.py
+++ b/var/spack/repos/builtin/packages/py-petsc4py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,12 +11,14 @@ class PyPetsc4py(PythonPackage):
"""
homepage = "https://gitlab.com/petsc/petsc4py"
- url = "https://pypi.io/packages/source/p/petsc4py/petsc4py-3.14.0.tar.gz"
- git = "https://gitlab.com/petsc/petsc4py.git"
+ url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc4py-3.15.0.tar.gz"
+ git = "https://gitlab.com/petsc/petsc.git"
maintainers = ['dalcinl', 'balay']
- version('develop', branch='master')
+ version('main', branch='main')
+ version('3.15.0', sha256='87dcc5ef63a1f0e1a963619f7527e623f52341b2806056b0ef5fdfb0b8b287ad')
+ version('3.14.1', sha256='f5f8daf3a4cd1dfc945876b0d83a05b25f3c54e08046312eaa3e3036b24139c0')
version('3.14.0', sha256='33ac9fb55a541e4c1deabd6e2144da96d5ae70e70c830a55de558000cf3f0ec5')
version('3.13.0', sha256='0e11679353c0c2938336a3c8d1a439b853e20d3bccd7d614ad1dbea3ec5cb31f')
version('3.12.0', sha256='4c94a1dbbf244b249436b266ac5fa4e67080d205420805deab5ec162b979df8d')
@@ -31,7 +33,10 @@ class PyPetsc4py(PythonPackage):
variant('mpi', default=True, description='Activates MPI support')
- depends_on('py-cython', type='build', when='@develop')
+ patch('ldshared.patch', when='@:99')
+ patch('ldshared-dev.patch', when='@main')
+
+ depends_on('py-cython', type='build', when='@main')
depends_on('python@2.6:2.8,3.3:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
@@ -39,8 +44,10 @@ class PyPetsc4py(PythonPackage):
depends_on('petsc+mpi', when='+mpi')
depends_on('petsc~mpi', when='~mpi')
- depends_on('petsc@develop', when='@develop')
- depends_on('petsc@3.14:3.14.99', when='@3.14:3.14.99')
+ depends_on('petsc@main', when='@main')
+ depends_on('petsc@3.15.0:3.15.99', when='@3.15.0:3.15.99')
+ depends_on('petsc@3.14.2:3.14.99', when='@3.14.1:3.14.99')
+ depends_on('petsc@3.14.0:3.14.1', when='@3.14.0')
depends_on('petsc@3.13:3.13.99', when='@3.13:3.13.99')
depends_on('petsc@3.12:3.12.99', when='@3.12:3.12.99')
depends_on('petsc@3.11:3.11.99', when='@3.11:3.11.99')
@@ -50,3 +57,11 @@ class PyPetsc4py(PythonPackage):
depends_on('petsc@3.8:3.8.99', when='@3.8:3.8.99')
depends_on('petsc@3.7:3.7.99', when='@3.7:3.7.99')
depends_on('petsc@3.6:3.6.99', when='@3.6:3.6.99')
+
+ @property
+ def build_directory(self):
+ import os
+ if self.spec.satisfies('@main'):
+ return os.path.join(self.stage.source_path, 'src', 'binding', 'petsc4py')
+ else:
+ return self.stage.source_path
diff --git a/var/spack/repos/builtin/packages/py-pexpect/package.py b/var/spack/repos/builtin/packages/py-pexpect/package.py
index 174edadffc..431219bf4e 100644
--- a/var/spack/repos/builtin/packages/py-pexpect/package.py
+++ b/var/spack/repos/builtin/packages/py-pexpect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,8 +8,7 @@ from spack import *
class PyPexpect(PythonPackage):
"""Pexpect allows easy control of interactive console applications."""
- homepage = "https://pypi.python.org/pypi/pexpect"
- url = "https://pypi.io/packages/source/p/pexpect/pexpect-4.2.1.tar.gz"
+ pypi = "pexpect/pexpect-4.2.1.tar.gz"
version('4.7.0', sha256='9e2c1fd0e6ee3a49b28f95d4b33bc389c89b20af6a1255906e90ff1262ce62eb')
version('4.6.0', sha256='2a8e88259839571d1251d278476f3eec5db26deb73a70be5ed5dc5435e418aba')
diff --git a/var/spack/repos/builtin/packages/py-phonenumbers/package.py b/var/spack/repos/builtin/packages/py-phonenumbers/package.py
new file mode 100644
index 0000000000..c614550f2a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-phonenumbers/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPhonenumbers(PythonPackage):
+ """Python version of Google's common library for parsing, formatting
+ and validating international phone numbers."""
+
+ homepage = "https://github.com/daviddrysdale/python-phonenumbers"
+ pypi = "phonenumbers/phonenumbers-8.12.16.tar.gz"
+
+ version('8.12.16', sha256='a820ab08c980ef24a2d2a1ead4f8d7016fdf008e484d1aecf7ff0b32cc475e16')
+ version('8.12.15', sha256='b734bfcf33e87ddae72196a40b3d1af35abd0beb263816ae18e1bff612926406')
+ version('8.12.14', sha256='58817072cf2b80fcc8710e7a2c395cd32fce2b70a259e36ff81916862f578d61')
+
+ depends_on('python@2.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-phonopy/package.py b/var/spack/repos/builtin/packages/py-phonopy/package.py
index f297faf44d..35e064e641 100644
--- a/var/spack/repos/builtin/packages/py-phonopy/package.py
+++ b/var/spack/repos/builtin/packages/py-phonopy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pickleshare/package.py b/var/spack/repos/builtin/packages/py-pickleshare/package.py
index 3e1b7b6f01..050f3b0ee4 100644
--- a/var/spack/repos/builtin/packages/py-pickleshare/package.py
+++ b/var/spack/repos/builtin/packages/py-pickleshare/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPickleshare(PythonPackage):
"""Tiny 'shelve'-like database with concurrency support"""
- homepage = "https://pypi.python.org/pypi/pickleshare"
- url = "https://pypi.io/packages/source/p/pickleshare/pickleshare-0.7.4.tar.gz"
+ pypi = "pickleshare/pickleshare-0.7.4.tar.gz"
version('0.7.5', sha256='87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca')
version('0.7.4', sha256='84a9257227dfdd6fe1b4be1319096c20eb85ff1e82c7932f36efccfe1b09737b')
diff --git a/var/spack/repos/builtin/packages/py-picmistandard/package.py b/var/spack/repos/builtin/packages/py-picmistandard/package.py
new file mode 100644
index 0000000000..6ef9547e6e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-picmistandard/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPicmistandard(PythonPackage):
+ """Standard input format for Particle-In-Cell codes"""
+
+ homepage = "https://picmi-standard.github.io"
+ git = "https://github.com/picmi-standard/picmi.git"
+
+ maintainers = ['ax3l', 'dpgrote', 'RemiLehe']
+
+ version('develop', branch='master')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+
+ build_directory = 'PICMI_Python'
diff --git a/var/spack/repos/builtin/packages/py-picrust/package.py b/var/spack/repos/builtin/packages/py-picrust/package.py
index e346e5b012..3db338577f 100644
--- a/var/spack/repos/builtin/packages/py-picrust/package.py
+++ b/var/spack/repos/builtin/packages/py-picrust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-picrust2/package.py b/var/spack/repos/builtin/packages/py-picrust2/package.py
new file mode 100644
index 0000000000..f29f1b7143
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-picrust2/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPicrust2(PythonPackage):
+ """PICRUSt2 is a software for predicting functional
+ abundances based only on marker gene sequences."""
+
+ homepage = "https://github.com/picrust/picrust2"
+ url = "https://github.com/picrust/picrust2/archive/v2.3.0-b.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('2.3.0-b', sha256='ac12c372bc263e750d9101eca0cd0e57de37089b661fa1a13caf5a544d293737')
+ version('2.2.0-b', sha256='c41e1f487b33179f4aecede50cfd8b652aa3cef2ea1ae5fd022f531c7d549097')
+ version('2.1.4-b', sha256='f781eb323914979b6d3bca088a5152f085f53e6e38f1c3be94b35f99fc1db2d8')
+
+ depends_on('py-setuptools', type=('build'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-h5py', type=('build', 'run'))
+ depends_on('py-joblib', type=('build', 'run'))
+ depends_on('py-biom-format', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pid/package.py b/var/spack/repos/builtin/packages/py-pid/package.py
index b9b20428a9..5ab1f6a3da 100644
--- a/var/spack/repos/builtin/packages/py-pid/package.py
+++ b/var/spack/repos/builtin/packages/py-pid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPid(PythonPackage):
"""Pidfile featuring stale detection and file-locking, can also be
used as context-manager or decorator."""
- homepage = "https://pypi.org/project/pid/"
+ homepage = "https://github.com/trbs/pid/"
url = "https://github.com/trbs/pid/archive/3.0.3.tar.gz"
version('3.0.3', sha256='082281e2f6b99b4aaa02a24ae4796c604ac17f19cdd0327b8c1ba9c2e73aadc8')
diff --git a/var/spack/repos/builtin/packages/py-pil/package.py b/var/spack/repos/builtin/packages/py-pil/package.py
index 0fd20fdb4c..6f429f83b5 100644
--- a/var/spack/repos/builtin/packages/py-pil/package.py
+++ b/var/spack/repos/builtin/packages/py-pil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pillow-simd/package.py b/var/spack/repos/builtin/packages/py-pillow-simd/package.py
index f1f6939d4c..5298685150 100644
--- a/var/spack/repos/builtin/packages/py-pillow-simd/package.py
+++ b/var/spack/repos/builtin/packages/py-pillow-simd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyPillowSimd(PyPillowBase):
# See https://github.com/spack/spack/pull/15566
_name = 'py-pillow-simd'
homepage = "https://github.com/uploadcare/pillow-simd"
- url = "https://pypi.io/packages/source/P/Pillow-SIMD/Pillow-SIMD-7.0.0.post3.tar.gz"
+ pypi = "Pillow-SIMD/Pillow-SIMD-7.0.0.post3.tar.gz"
version('7.0.0.post3', sha256='c27907af0e7ede1ceed281719e722e7dbf3e1dbfe561373978654a6b64896cb7')
version('6.2.2.post1', sha256='d29b673ac80091797f1e8334458be307e4ac4ab871b0e495cfe56cb7b1d7704e')
diff --git a/var/spack/repos/builtin/packages/py-pillow/package.py b/var/spack/repos/builtin/packages/py-pillow/package.py
index 5ff2621c2d..4388a6d8dd 100644
--- a/var/spack/repos/builtin/packages/py-pillow/package.py
+++ b/var/spack/repos/builtin/packages/py-pillow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,6 @@ class PyPillowBase(PythonPackage):
"""Base class for Pillow and its fork Pillow-SIMD."""
maintainers = ['adamjstewart']
- import_modules = ['PIL']
provides('pil')
@@ -36,9 +35,6 @@ class PyPillowBase(PythonPackage):
depends_on('python@2.6:2.8,3.2:3.5', when='@2:3', type=('build', 'run'))
depends_on('python@2.4:2.7', when='@:1', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-pytest', type='test')
- depends_on('py-pytest-runner', type='test')
- depends_on('imagemagick', type='test')
# Optional dependencies
depends_on('zlib', when='+zlib')
@@ -98,8 +94,6 @@ class PyPillowBase(PythonPackage):
env.set('MAX_CONCURRENCY', str(make_jobs))
# Tests need to be re-added since `phases` was overridden
- run_after('build_ext')(
- PythonPackage._run_default_build_time_test_callbacks)
run_after('install')(
PythonPackage._run_default_install_time_test_callbacks)
run_after('install')(PythonPackage.sanity_check_prefix)
@@ -112,7 +106,7 @@ class PyPillow(PyPillowBase):
capabilities."""
homepage = "https://python-pillow.org/"
- url = "https://pypi.io/packages/source/P/Pillow/Pillow-7.2.0.tar.gz"
+ pypi = "Pillow/Pillow-7.2.0.tar.gz"
version('8.0.0', sha256='59304c67d12394815331eda95ec892bf54ad95e0aa7bc1ccd8e0a4a5a25d4bf3')
version('7.2.0', sha256='97f9e7953a77d5a70f49b9a48da7776dc51e9b738151b22dacf101641594a626')
diff --git a/var/spack/repos/builtin/packages/py-pint/package.py b/var/spack/repos/builtin/packages/py-pint/package.py
index fd2736f7c6..3a31aa86a5 100644
--- a/var/spack/repos/builtin/packages/py-pint/package.py
+++ b/var/spack/repos/builtin/packages/py-pint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,7 @@ class PyPint(PythonPackage):
It allows arithmetic operations between them and conversions from and
to different units."""
- homepage = "https://pypi.org/project/Pint"
- url = "https://pypi.io/packages/source/p/pint/Pint-0.11.tar.gz"
+ pypi = "pint/Pint-0.11.tar.gz"
version('0.11', sha256='308f1070500e102f83b6adfca6db53debfce2ffc5d3cbe3f6c367da359b5cf4d')
version('0.10.1', sha256='d739c364b8326fe3d70773d5720fa8b005ea6158695cad042677a588480c86e6')
diff --git a/var/spack/repos/builtin/packages/py-pip/package.py b/var/spack/repos/builtin/packages/py-pip/package.py
index ed5171411c..06c2ac05c7 100644
--- a/var/spack/repos/builtin/packages/py-pip/package.py
+++ b/var/spack/repos/builtin/packages/py-pip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPip(PythonPackage):
"""The PyPA recommended tool for installing Python packages."""
homepage = "https://pip.pypa.io/"
- url = "https://pypi.io/packages/source/p/pip/pip-20.2.tar.gz"
+ pypi = "pip/pip-20.2.tar.gz"
version('20.2', sha256='912935eb20ea6a3b5ed5810dde9754fde5563f5ca9be44a8a6e5da806ade970b')
version('19.3', sha256='324d234b8f6124846b4e390df255cacbe09ce22791c3b714aa1ea6e44a4f2861')
diff --git a/var/spack/repos/builtin/packages/py-pipits/package.py b/var/spack/repos/builtin/packages/py-pipits/package.py
index f1a4067f8d..36b550aa3d 100644
--- a/var/spack/repos/builtin/packages/py-pipits/package.py
+++ b/var/spack/repos/builtin/packages/py-pipits/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pispino/package.py b/var/spack/repos/builtin/packages/py-pispino/package.py
index c216c220a5..bf282e2576 100644
--- a/var/spack/repos/builtin/packages/py-pispino/package.py
+++ b/var/spack/repos/builtin/packages/py-pispino/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pkgconfig/package.py b/var/spack/repos/builtin/packages/py-pkgconfig/package.py
index f519422138..199ead0819 100644
--- a/var/spack/repos/builtin/packages/py-pkgconfig/package.py
+++ b/var/spack/repos/builtin/packages/py-pkgconfig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPkgconfig(PythonPackage):
"""Interface Python with pkg-config."""
homepage = "http://github.com/matze/pkgconfig"
- url = "https://pypi.io/packages/source/p/pkgconfig/pkgconfig-1.2.2.tar.gz"
+ pypi = "pkgconfig/pkgconfig-1.2.2.tar.gz"
version('1.5.1', sha256='97bfe3d981bab675d5ea3ef259045d7919c93897db7d3b59d4e8593cba8d354f')
version('1.4.0', sha256='048c3b457da7b6f686b647ab10bf09e2250e4c50acfe6f215398a8b5e6fcdb52')
@@ -19,7 +19,4 @@ class PyPkgconfig(PythonPackage):
depends_on('python@2.6:2.8,3.3:', type=('build', 'run'))
depends_on('python@2.7:2.8,3.3:', when='@1.5:', type=('build', 'run'))
depends_on('py-setuptools', when='@:1.4', type=('build', 'run'))
-
depends_on('pkgconfig', type=('build', 'run'))
-
- depends_on('py-nose@1.0:', type=('build', 'test'))
diff --git a/var/spack/repos/builtin/packages/py-pkginfo/package.py b/var/spack/repos/builtin/packages/py-pkginfo/package.py
index ed00f37a5d..7d6efa869e 100644
--- a/var/spack/repos/builtin/packages/py-pkginfo/package.py
+++ b/var/spack/repos/builtin/packages/py-pkginfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,8 @@ class PyPkginfo(PythonPackage):
"""Query metadatdata from sdists / bdists / installed packages."""
homepage = "https://code.launchpad.net/~tseaver/pkginfo/trunk"
- url = "https://pypi.io/packages/source/p/pkginfo/pkginfo-1.5.0.1.tar.gz"
+ pypi = "pkginfo/pkginfo-1.5.0.1.tar.gz"
version('1.5.0.1', sha256='7424f2c8511c186cd5424bbf31045b77435b37a8d604990b79d4e70d741148bb')
depends_on('py-setuptools', type=('build', 'run'))
- depends_on('py-nose', type='test')
- depends_on('py-coverage', type='test')
diff --git a/var/spack/repos/builtin/packages/py-plac/package.py b/var/spack/repos/builtin/packages/py-plac/package.py
index 18d18cf5dd..746e8ead71 100644
--- a/var/spack/repos/builtin/packages/py-plac/package.py
+++ b/var/spack/repos/builtin/packages/py-plac/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyPlac(PythonPackage):
"""The smartest command line arguments parser in the world."""
homepage = "https://github.com/micheles/plac"
- url = "https://pypi.io/packages/source/p/plac/plac-1.1.3.tar.gz"
+ pypi = "plac/plac-1.1.3.tar.gz"
version('1.1.3', sha256='398cb947c60c4c25e275e1f1dadf027e7096858fb260b8ece3b33bcff90d985f')
diff --git a/var/spack/repos/builtin/packages/py-planar/package.py b/var/spack/repos/builtin/packages/py-planar/package.py
index b01737828f..ac3cedffd6 100644
--- a/var/spack/repos/builtin/packages/py-planar/package.py
+++ b/var/spack/repos/builtin/packages/py-planar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyPlanar(PythonPackage):
"""2D planar geometry library for Python."""
homepage = "https://bitbucket.org/caseman/planar/src/default/"
- url = "https://pypi.io/packages/source/p/planar/planar-0.4.zip"
+ pypi = "planar/planar-0.4.zip"
version('0.4', sha256='cbfb9cbae8b0e296e6e7e3552b7d685c7ed5cae295b7a61f2b2b096b231dad76')
diff --git a/var/spack/repos/builtin/packages/py-planet/package.py b/var/spack/repos/builtin/packages/py-planet/package.py
index 89b888097e..5f0c89b1fe 100644
--- a/var/spack/repos/builtin/packages/py-planet/package.py
+++ b/var/spack/repos/builtin/packages/py-planet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,10 @@ class PyPlanet(PythonPackage):
"""Python client library and CLI for Planet's public API"""
homepage = "https://github.com/planetlabs/planet-client-python"
- url = "https://pypi.io/packages/source/p/planet/planet-1.4.6.tar.gz"
+ pypi = "planet/planet-1.4.6.tar.gz"
version('1.4.6', sha256='43ff6a765f465302f500aaf65b81a46ac6aad7bb42899e4a7543bdc293d4ca0d')
depends_on('py-setuptools', type='build')
- depends_on('py-mock', type='test')
- depends_on('py-pytest', type='test')
- depends_on('py-requests-mock', type='test')
depends_on('py-click', type=('build', 'run'))
depends_on('py-requests', type=('build', 'run'))
depends_on('py-requests-futures@0.9.7', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-plotly/package.py b/var/spack/repos/builtin/packages/py-plotly/package.py
index 7a62596eea..24666f278f 100644
--- a/var/spack/repos/builtin/packages/py-plotly/package.py
+++ b/var/spack/repos/builtin/packages/py-plotly/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPlotly(PythonPackage):
"""An interactive, browser-based graphing library for Python"""
homepage = "https://plot.ly/python/"
- url = "https://pypi.io/packages/source/p/plotly/plotly-2.2.0.tar.gz"
+ pypi = "plotly/plotly-2.2.0.tar.gz"
version('2.2.0', sha256='ca668911ffb4d11fed6d7fbb12236f8ecc6a7209db192326bcb64bdb41451a58')
diff --git a/var/spack/repos/builtin/packages/py-pluggy/package.py b/var/spack/repos/builtin/packages/py-pluggy/package.py
index 1e2fb3f2bd..7c543bbdd1 100644
--- a/var/spack/repos/builtin/packages/py-pluggy/package.py
+++ b/var/spack/repos/builtin/packages/py-pluggy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,12 @@ class PyPluggy(PythonPackage):
"""Plugin and hook calling mechanisms for python."""
homepage = "https://github.com/pytest-dev/pluggy"
- url = "https://pypi.io/packages/source/p/pluggy/pluggy-0.13.0.tar.gz"
-
- import_modules = ['pluggy']
+ pypi = "pluggy/pluggy-0.13.0.tar.gz"
version('0.13.0', sha256='fa5fa1622fa6dd5c030e9cad086fa19ef6a0cf6d7a2d12318e10cb49d6d68f34')
version('0.12.0', sha256='0825a152ac059776623854c1543d65a4ad408eb3d33ee114dff91e57ec6ae6fc')
+ version('0.9.0', sha256='19ecf9ce9db2fce065a7a0586e07cfb4ac8614fe96edf628a264b1c70116cf8f')
+ version('0.8.1', sha256='8ddc32f03971bfdf900a81961a48ccf2fb677cf7715108f85295c67405798616')
version('0.7.1', sha256='95eb8364a4708392bae89035f45341871286a333f749c3141c20573d2b3876e1')
version('0.6.0', sha256='7f8ae7f5bdf75671a718d2daf0a64b7885f74510bcd98b1a0bb420eb9a9d0cff')
diff --git a/var/spack/repos/builtin/packages/py-ply/package.py b/var/spack/repos/builtin/packages/py-ply/package.py
index 6149a4f9de..b187f50833 100644
--- a/var/spack/repos/builtin/packages/py-ply/package.py
+++ b/var/spack/repos/builtin/packages/py-ply/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pmw/package.py b/var/spack/repos/builtin/packages/py-pmw/package.py
index 3ccc11fef4..c553196f6c 100644
--- a/var/spack/repos/builtin/packages/py-pmw/package.py
+++ b/var/spack/repos/builtin/packages/py-pmw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPmw(PythonPackage):
"""Pmw is a toolkit for building high-level compound widgets, or
megawidgets, constructed using other widgets as component parts."""
- homepage = "https://pypi.python.org/pypi/Pmw"
- url = "https://pypi.io/packages/source/P/Pmw/Pmw-2.0.0.tar.gz"
+ pypi = "Pmw/Pmw-2.0.0.tar.gz"
version('2.0.1', sha256='0b9d28f52755a7a081b44591c3dd912054f896e56c9a627db4dd228306ad1120')
version('2.0.0', sha256='2babb2855feaabeea1003c6908b61c9d39cff606d418685f0559952714c680bb')
diff --git a/var/spack/repos/builtin/packages/py-pomegranate/package.py b/var/spack/repos/builtin/packages/py-pomegranate/package.py
index 91085ba554..14a97f842d 100644
--- a/var/spack/repos/builtin/packages/py-pomegranate/package.py
+++ b/var/spack/repos/builtin/packages/py-pomegranate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPomegranate(PythonPackage):
"""Fast, flexible and easy to use probabilistic modelling in Python."""
homepage = "https://github.com/jmschrei/pomegranate"
- url = "https://pypi.io/packages/source/p/pomegranate/pomegranate-0.12.0.tar.gz"
+ pypi = "pomegranate/pomegranate-0.12.0.tar.gz"
version('0.12.0', sha256='8b00c88f7cf9cad8d38ea00ea5274821376fefb217a1128afe6b1fcac54c975a')
diff --git a/var/spack/repos/builtin/packages/py-pooch/package.py b/var/spack/repos/builtin/packages/py-pooch/package.py
new file mode 100644
index 0000000000..3bdb51c1b6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pooch/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPooch(PythonPackage):
+ """Pooch manages your Python library's sample data files: it automatically
+ downloads and stores them in a local directory, with support for versioning
+ and corruption checks."""
+
+ homepage = "https://github.com/fatiando/pooch"
+ pypi = "pooch/pooch-1.3.0.tar.gz"
+
+ version('1.3.0', sha256='30d448e825904e2d763bbbe418831a788813c32f636b21c8d60ee5f474532898')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-packaging', type=('build', 'run'))
+ depends_on('py-appdirs', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-portalocker/package.py b/var/spack/repos/builtin/packages/py-portalocker/package.py
index f4aa514550..84f964b4a7 100644
--- a/var/spack/repos/builtin/packages/py-portalocker/package.py
+++ b/var/spack/repos/builtin/packages/py-portalocker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-portend/package.py b/var/spack/repos/builtin/packages/py-portend/package.py
index b039fb06aa..eb271ea4a6 100644
--- a/var/spack/repos/builtin/packages/py-portend/package.py
+++ b/var/spack/repos/builtin/packages/py-portend/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPortend(PythonPackage):
"""TCP port monitoring and discovery """
homepage = "https://github.com/jaraco/portend"
- url = "https://pypi.io/packages/source/p/portend/portend-2.5.tar.gz"
+ pypi = "portend/portend-2.5.tar.gz"
version(
'2.5', sha256='19dc27bfb3c72471bd30a235a4d5fbefef8a7e31cab367744b5d87a205e7bfd9')
diff --git a/var/spack/repos/builtin/packages/py-poster/package.py b/var/spack/repos/builtin/packages/py-poster/package.py
index a5fde5f22d..36b90fde28 100644
--- a/var/spack/repos/builtin/packages/py-poster/package.py
+++ b/var/spack/repos/builtin/packages/py-poster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyPoster(PythonPackage):
"""Streaming HTTP uploads and multipart/form-data encoding."""
- homepage = "https://pypi.org/project/poster/"
+ homepage = "https://atlee.ca/software/poster"
url = "https://atlee.ca/software/poster/dist/0.8.1/poster-0.8.1.tar.gz"
version('0.8.1', sha256='af5bf45da4a916db2b638cffd9e9d6668b33020e2b8ca9f864db79b49331c6ff')
diff --git a/var/spack/repos/builtin/packages/py-pox/package.py b/var/spack/repos/builtin/packages/py-pox/package.py
index 5ab43df6b4..ca2debbd75 100644
--- a/var/spack/repos/builtin/packages/py-pox/package.py
+++ b/var/spack/repos/builtin/packages/py-pox/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPox(PythonPackage):
"""Utilities for filesystem exploration and automated builds."""
homepage = "https://github.com/uqfoundation/pox"
- url = "https://pypi.io/packages/source/p/pox/pox-0.2.5.tar.gz"
+ pypi = "pox/pox-0.2.5.tar.gz"
version('0.2.5', sha256='2b53fbdf02596240483dc2cb94f94cc21252ad1b1858c7b1c151afeec9022cc8')
version('0.2.3', sha256='d3e8167a1ebe08ae56262a0b9359118d90bc4648cd284b5d10ae240343100a75')
diff --git a/var/spack/repos/builtin/packages/py-poyo/package.py b/var/spack/repos/builtin/packages/py-poyo/package.py
index a1be8b682f..5e21bf855d 100644
--- a/var/spack/repos/builtin/packages/py-poyo/package.py
+++ b/var/spack/repos/builtin/packages/py-poyo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-ppft/package.py b/var/spack/repos/builtin/packages/py-ppft/package.py
index 810d61c315..b59359b1d6 100644
--- a/var/spack/repos/builtin/packages/py-ppft/package.py
+++ b/var/spack/repos/builtin/packages/py-ppft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPpft(PythonPackage):
"""Distributed and parallel python """
homepage = "https://github.com/uqfoundation/ppft"
- url = "https://pypi.io/packages/source/p/ppft/ppft-1.6.4.9.tar.gz"
+ pypi = "ppft/ppft-1.6.4.9.tar.gz"
version('1.6.4.9', sha256='5537b00afb7b247da0f59cc57ee5680178be61c8b2e21b5a0672b70a3d247791')
version('1.6.4.7.1', sha256='f94b26491b4a36adc975fc51dba7568089a24756007a3a4ef3414a98d7337651')
diff --git a/var/spack/repos/builtin/packages/py-pre-commit/package.py b/var/spack/repos/builtin/packages/py-pre-commit/package.py
index 5a6c381118..502f2adabd 100644
--- a/var/spack/repos/builtin/packages/py-pre-commit/package.py
+++ b/var/spack/repos/builtin/packages/py-pre-commit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPreCommit(PythonPackage):
hooks."""
homepage = "https://github.com/pre-commit/pre-commit"
- url = "https://pypi.io/packages/source/p/pre_commit/pre_commit-1.20.0.tar.gz"
+ pypi = "pre_commit/pre_commit-1.20.0.tar.gz"
version('1.20.0', sha256='9f152687127ec90642a2cc3e4d9e1e6240c4eb153615cb02aa1ad41d331cbb6e')
diff --git a/var/spack/repos/builtin/packages/py-preshed/package.py b/var/spack/repos/builtin/packages/py-preshed/package.py
index cb8cc2ed10..27c70ec90e 100644
--- a/var/spack/repos/builtin/packages/py-preshed/package.py
+++ b/var/spack/repos/builtin/packages/py-preshed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,11 +8,10 @@ class PyPreshed(PythonPackage):
"""preshed: Cython Hash Table for Pre-Hashed Keys."""
homepage = "https://github.com/explosion/preshed"
- url = "https://pypi.io/packages/source/p/preshed/preshed-3.0.2.tar.gz"
+ pypi = "preshed/preshed-3.0.2.tar.gz"
version('3.0.2', sha256='61d73468c97c1d6d5a048de0b01d5a6fd052123358aca4823cdb277e436436cb')
depends_on('py-setuptools', type='build')
depends_on('py-cymem@2.0.2:2.0.999', type=('build', 'run'))
depends_on('py-murmurhash@0.28:1.0', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-prettytable/package.py b/var/spack/repos/builtin/packages/py-prettytable/package.py
index b2969b6e1f..cad349dc3e 100644
--- a/var/spack/repos/builtin/packages/py-prettytable/package.py
+++ b/var/spack/repos/builtin/packages/py-prettytable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyPrettytable(PythonPackage):
"""
homepage = "https://code.google.com/archive/p/prettytable/"
- url = "https://pypi.io/packages/source/p/prettytable/prettytable-0.7.2.tar.gz"
+ pypi = "prettytable/prettytable-0.7.2.tar.gz"
version('0.7.2', sha256='2d5460dc9db74a32bcc8f9f67de68b2c4f4d2f01fa3bd518764c69156d9cacd9')
diff --git a/var/spack/repos/builtin/packages/py-profilehooks/package.py b/var/spack/repos/builtin/packages/py-profilehooks/package.py
index 47b52a455c..af77a67391 100644
--- a/var/spack/repos/builtin/packages/py-profilehooks/package.py
+++ b/var/spack/repos/builtin/packages/py-profilehooks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyProfilehooks(PythonPackage):
"""Python decorators for profiling/tracing/timing a single function"""
homepage = "https://mg.pov.lt/profilehooks/"
- url = "https://pypi.io/packages/source/p/profilehooks/profilehooks-1.11.2.tar.gz"
+ pypi = "profilehooks/profilehooks-1.11.2.tar.gz"
git = "https://github.com/mgedmin/profilehooks.git"
diff --git a/var/spack/repos/builtin/packages/py-proglog/package.py b/var/spack/repos/builtin/packages/py-proglog/package.py
new file mode 100644
index 0000000000..6cf2ba4527
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-proglog/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyProglog(PythonPackage):
+ """Proglog is a progress logging system for Python. It
+ allows to build complex libraries while giving the user
+ control on the management of logs, callbacks and progress
+ bars."""
+
+ homepage = "https://pypi.org/project/proglog/"
+ pypi = "proglog/proglog-0.1.9.tar.gz"
+
+ version('0.1.9', sha256='d8c4ccbf2138e0c5e3f3fc0d80dc51d7e69dcfe8bfde4cacb566725092a5b18d')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-tqdm', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-progress/package.py b/var/spack/repos/builtin/packages/py-progress/package.py
index cff57e9f77..0e0be1a15c 100644
--- a/var/spack/repos/builtin/packages/py-progress/package.py
+++ b/var/spack/repos/builtin/packages/py-progress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyProgress(PythonPackage):
"""Easy progress reporting for Python"""
homepage = "https://github.com/verigak/progress/"
- url = "https://pypi.io/packages/source/p/progress/progress-1.4.tar.gz"
+ pypi = "progress/progress-1.4.tar.gz"
version('1.4', sha256='5e2f9da88ed8236a76fffbee3ceefd259589cf42dfbc2cec2877102189fae58a')
diff --git a/var/spack/repos/builtin/packages/py-progressbar2/package.py b/var/spack/repos/builtin/packages/py-progressbar2/package.py
index 196d303591..b64ab06dff 100644
--- a/var/spack/repos/builtin/packages/py-progressbar2/package.py
+++ b/var/spack/repos/builtin/packages/py-progressbar2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyProgressbar2(PythonPackage):
"""A progress bar for Python 2 and Python 3"""
homepage = "https://github.com/WoLpH/python-progressbar"
- url = "https://pypi.io/packages/source/p/progressbar2/progressbar2-3.50.1.tar.gz"
+ pypi = "progressbar2/progressbar2-3.50.1.tar.gz"
version('3.50.1', sha256='2c21c14482016162852c8265da03886c2b4dea6f84e5a817ad9b39f6bd82a772')
version('3.39.3', sha256='8e5b5419e04193bb7c3fea71579937bbbcd64c26472b929718c2fe7ec420fe39')
diff --git a/var/spack/repos/builtin/packages/py-projectq/package.py b/var/spack/repos/builtin/packages/py-projectq/package.py
index d22a51584f..90e40d6f6f 100644
--- a/var/spack/repos/builtin/packages/py-projectq/package.py
+++ b/var/spack/repos/builtin/packages/py-projectq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,11 +19,6 @@ class PyProjectq(PythonPackage):
homepage = "https://projectq.ch"
git = "https://github.com/projectq-framework/projectq.git"
- # Provided python modules
- import_modules = ['projectq', 'projectq.backends', 'projectq.cengines',
- 'projectq.libs', 'projectq.meta', 'projectq.ops',
- 'projectq.setups', 'projectq.types']
-
# Versions
version('develop', branch='develop')
version('0.3.6', commit='fa484fe037a3a1772127bbd00fe4628ddba34611')
@@ -33,7 +28,6 @@ class PyProjectq(PythonPackage):
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-scipy', type=('build', 'run'))
depends_on('py-future', type=('build', 'run'))
- depends_on('py-pytest@3.1.0:', type=('test'))
depends_on('py-requests', type=('build', 'run'))
# conflict with pybind11@2.2.0 -> see requirements.txt
depends_on('py-pybind11@1.7:2.1,2.2.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-prometheus-client/package.py b/var/spack/repos/builtin/packages/py-prometheus-client/package.py
index 86733359cf..9bd8df3a64 100644
--- a/var/spack/repos/builtin/packages/py-prometheus-client/package.py
+++ b/var/spack/repos/builtin/packages/py-prometheus-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPrometheusClient(PythonPackage):
"""Prometheus instrumentation library for Python applications."""
- homepage = "https://pypi.org/project/prometheus_client/"
- url = "https://pypi.io/packages/source/p/prometheus_client/prometheus_client-0.7.1.tar.gz"
+ pypi = "prometheus_client/prometheus_client-0.7.1.tar.gz"
version('0.7.1', sha256='71cd24a2b3eb335cb800c7159f423df1bd4dcd5171b234be15e3f31ec9f622da')
version('0.7.0', sha256='ee0c90350595e4a9f36591f291e6f9933246ea67d7cd7d1d6139a9781b14eaae')
@@ -20,3 +19,15 @@ class PyPrometheusClient(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-twisted', type=('build', 'run'), when='+twisted')
+
+ @property
+ def import_modules(self):
+ modules = [
+ 'prometheus_client', 'prometheus_client.openmetrics',
+ 'prometheus_client.bridge'
+ ]
+
+ if '+twisted' in self.spec:
+ modules.append('prometheus_client.twisted')
+
+ return modules
diff --git a/var/spack/repos/builtin/packages/py-prompt-toolkit/package.py b/var/spack/repos/builtin/packages/py-prompt-toolkit/package.py
index ea23b23181..38eabe6f30 100644
--- a/var/spack/repos/builtin/packages/py-prompt-toolkit/package.py
+++ b/var/spack/repos/builtin/packages/py-prompt-toolkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,14 +9,18 @@ from spack import *
class PyPromptToolkit(PythonPackage):
"""Library for building powerful interactive command lines in Python"""
- homepage = "https://pypi.python.org/pypi/prompt_toolkit"
- url = "https://pypi.io/packages/source/p/prompt_toolkit/prompt_toolkit-1.0.9.tar.gz"
+ pypi = "prompt_toolkit/prompt_toolkit-1.0.9.tar.gz"
+ version('3.0.17', sha256='9397a7162cf45449147ad6042fa37983a081b8a73363a5253dd4072666333137')
+ version('3.0.16', sha256='0fa02fa80363844a4ab4b8d6891f62dd0645ba672723130423ca4037b80c1974')
version('3.0.7', sha256='822f4605f28f7d2ba6b0b09a31e25e140871e96364d1d377667b547bb3bf4489')
+ version('2.0.10', sha256='f15af68f66e664eaa559d4ac8a928111eebd5feda0c11738b5998045224829db')
version('2.0.9', sha256='2519ad1d8038fd5fc8e770362237ad0364d16a7650fb5724af6997ed5515e3c1')
version('1.0.16', sha256='c1cedd626e08b8ee830ee65897de754113ff3f3035880030c08b01674d85c5b4')
version('1.0.9', sha256='cd6523b36adc174cc10d54b1193eb626b4268609ff6ea92c15bcf1996609599c')
+ depends_on('python@3.6.1:', when='@3:', type=('build', 'run'))
+ depends_on('python@2.6:2.8,3.3:', when='@:2.999', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-six@1.9.0:', type=('build', 'run'))
+ depends_on('py-six@1.9.0:', when='@:2.999', type=('build', 'run'))
depends_on('py-wcwidth', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-protobuf/package.py b/var/spack/repos/builtin/packages/py-protobuf/package.py
index 4876832dcf..4ad2b3a331 100644
--- a/var/spack/repos/builtin/packages/py-protobuf/package.py
+++ b/var/spack/repos/builtin/packages/py-protobuf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyProtobuf(PythonPackage):
and using a variety of languages."""
homepage = 'https://developers.google.com/protocol-buffers/'
- url = 'https://pypi.io/packages/source/p/protobuf/protobuf-3.11.0.tar.gz'
+ pypi = 'protobuf/protobuf-3.11.0.tar.gz'
variant('cpp', default=False,
description='Enable the cpp implementation')
@@ -58,6 +58,11 @@ class PyProtobuf(PythonPackage):
return '.'
@when('+cpp')
+ def setup_build_environment(self, env):
+ protobuf_dir = self.spec['protobuf'].libs.directories[0]
+ env.prepend_path('LIBRARY_PATH', protobuf_dir)
+
+ @when('+cpp')
def build_args(self, spec, prefix):
return ['--cpp_implementation']
diff --git a/var/spack/repos/builtin/packages/py-psutil/package.py b/var/spack/repos/builtin/packages/py-psutil/package.py
index ba64a0e0eb..0684f430e3 100644
--- a/var/spack/repos/builtin/packages/py-psutil/package.py
+++ b/var/spack/repos/builtin/packages/py-psutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,7 @@ class PyPsutil(PythonPackage):
running processes and system utilization (CPU, memory, disks, network)
in Python."""
- homepage = "https://pypi.python.org/pypi/psutil"
- url = "https://pypi.io/packages/source/p/psutil/psutil-5.6.3.tar.gz"
+ pypi = "psutil/psutil-5.6.3.tar.gz"
version('5.7.2', sha256='90990af1c3c67195c44c9a889184f84f5b2320dce3ee3acbd054e3ba0b4a7beb')
version('5.6.3', sha256='863a85c1c0a5103a12c05a35e59d336e1d665747e531256e061213e2e90f63f3')
@@ -23,6 +22,3 @@ class PyPsutil(PythonPackage):
depends_on('python@2.6:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-unittest2', when='^python@:2.6', type='test')
- depends_on('py-mock', when='^python@:2.7', type='test')
- depends_on('py-ipaddress', when='^python@:3.2', type='test')
diff --git a/var/spack/repos/builtin/packages/py-psyclone/package.py b/var/spack/repos/builtin/packages/py-psyclone/package.py
index 0a1510677c..c3c6d766ca 100644
--- a/var/spack/repos/builtin/packages/py-psyclone/package.py
+++ b/var/spack/repos/builtin/packages/py-psyclone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-psycopg2/package.py b/var/spack/repos/builtin/packages/py-psycopg2/package.py
index ff478455fb..5f67ad7cae 100644
--- a/var/spack/repos/builtin/packages/py-psycopg2/package.py
+++ b/var/spack/repos/builtin/packages/py-psycopg2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-ptyprocess/package.py b/var/spack/repos/builtin/packages/py-ptyprocess/package.py
index 2e8c3cd5c6..7fa5f0bbb0 100644
--- a/var/spack/repos/builtin/packages/py-ptyprocess/package.py
+++ b/var/spack/repos/builtin/packages/py-ptyprocess/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPtyprocess(PythonPackage):
"""Run a subprocess in a pseudo terminal"""
- homepage = "https://pypi.python.org/pypi/ptyprocess"
- url = "https://pypi.io/packages/source/p/ptyprocess/ptyprocess-0.5.1.tar.gz"
+ pypi = "ptyprocess/ptyprocess-0.5.1.tar.gz"
version('0.6.0', sha256='923f299cc5ad920c68f2bc0bc98b75b9f838b93b599941a6b63ddbc2476394c0')
version('0.5.1', sha256='0530ce63a9295bfae7bd06edc02b6aa935619f486f0f1dc0972f516265ee81a6')
diff --git a/var/spack/repos/builtin/packages/py-pudb/package.py b/var/spack/repos/builtin/packages/py-pudb/package.py
index 4d7b43b7f0..d9c49a06dd 100644
--- a/var/spack/repos/builtin/packages/py-pudb/package.py
+++ b/var/spack/repos/builtin/packages/py-pudb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPudb(PythonPackage):
"""Full-screen console debugger for Python"""
homepage = "http://mathema.tician.de/software/pudb"
- url = "https://pypi.io/packages/source/p/pudb/pudb-2017.1.1.tar.gz"
+ pypi = "pudb/pudb-2017.1.1.tar.gz"
version('2017.1.1', sha256='87117640902c5f602c8517d0167eb5c953a5bdede97975ba29ff17e3d570442c')
version('2016.2', sha256='e958d7f7b1771cf297714e95054075df3b2a47455d7a740be4abbbd41289505a')
diff --git a/var/spack/repos/builtin/packages/py-pure-eval/package.py b/var/spack/repos/builtin/packages/py-pure-eval/package.py
index 9fcf6b0746..40d9d9315a 100644
--- a/var/spack/repos/builtin/packages/py-pure-eval/package.py
+++ b/var/spack/repos/builtin/packages/py-pure-eval/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pure-sasl/package.py b/var/spack/repos/builtin/packages/py-pure-sasl/package.py
index 81149d3889..845fda74b6 100644
--- a/var/spack/repos/builtin/packages/py-pure-sasl/package.py
+++ b/var/spack/repos/builtin/packages/py-pure-sasl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPureSasl(PythonPackage):
DIGEST-MD5, and GSSAPI are provided."""
homepage = "http://github.com/thobbs/pure-sasl"
- url = "https://pypi.io/packages/source/p/pure-sasl/pure-sasl-0.6.2.tar.gz"
+ pypi = "pure-sasl/pure-sasl-0.6.2.tar.gz"
version('0.6.2', sha256='53c1355f5da95e2b85b2cc9a6af435518edc20c81193faa0eea65fdc835138f4')
diff --git a/var/spack/repos/builtin/packages/py-py-cpuinfo/package.py b/var/spack/repos/builtin/packages/py-py-cpuinfo/package.py
index 9e56235f18..a00121add2 100644
--- a/var/spack/repos/builtin/packages/py-py-cpuinfo/package.py
+++ b/var/spack/repos/builtin/packages/py-py-cpuinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,10 @@ class PyPyCpuinfo(PythonPackage):
"""Get CPU info with pure Python 2 & 3"""
homepage = "https://github.com/workhorsy/py-cpuinfo"
- url = "https://pypi.io/packages/source/p/py-cpuinfo/py-cpuinfo-0.2.3.tar.gz"
+ pypi = "py-cpuinfo/py-cpuinfo-0.2.3.tar.gz"
+ version('8.0.0', sha256='5f269be0e08e33fd959de96b34cd4aeeeacac014dd8305f70eb28d06de2345c5')
+ version('6.0.0', sha256='7ffb31dea845b9f359b99bd5f7eea72dc70f852e0e34547d261a630f2b8c9c61')
version('0.2.3', sha256='f6a016fdbc4e7fadf2d519090fcb4fa9d0831bad4e85245d938e5c2fe7623ca6')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-py-spy/package.py b/var/spack/repos/builtin/packages/py-py-spy/package.py
index 63cd99dfe3..f7c048af10 100644
--- a/var/spack/repos/builtin/packages/py-py-spy/package.py
+++ b/var/spack/repos/builtin/packages/py-py-spy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,3 +17,4 @@ class PyPySpy(PythonPackage):
# Need to figure out how to manage these with Spack once we have a
# CargoPackage base class.
depends_on('rust', type='build')
+ depends_on('unwind')
diff --git a/var/spack/repos/builtin/packages/py-py/package.py b/var/spack/repos/builtin/packages/py-py/package.py
index 995612d20a..f122e5cdb6 100644
--- a/var/spack/repos/builtin/packages/py-py/package.py
+++ b/var/spack/repos/builtin/packages/py-py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,10 @@ class PyPy(PythonPackage):
"""Library with cross-python path, ini-parsing, io, code, log facilities"""
homepage = "http://pylib.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/p/py/py-1.8.0.tar.gz"
-
- import_modules = [
- 'py', 'py._process', 'py._vendored_packages', 'py._path',
- 'py._log', 'py._code', 'py._io'
- ]
+ pypi = "py/py-1.8.0.tar.gz"
+ version('1.9.0', sha256='9ca6883ce56b4e8da7e79ac18787889fa5206c79dcc67fb065376cd2fe03f342')
+ version('1.8.2', sha256='f3b3a4c36512a4c4f024041ab51866f11761cc169670204b235f6b20523d4e6b')
version('1.8.0', sha256='dc639b046a6e2cff5bbe40194ad65936d6ba360b52b3c3fe1d08a82dd50b5e53')
version('1.5.4', sha256='3fd59af7435864e1a243790d322d763925431213b6b8529c6ca71081ace3bbf7')
version('1.5.3', sha256='29c9fab495d7528e80ba1e343b958684f4ace687327e6f789a94bf3d1915f881')
@@ -27,7 +24,3 @@ class PyPy(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-setuptools-scm', type='build')
-
- def build_test(self):
- # Tests require pytest, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-py2bit/package.py b/var/spack/repos/builtin/packages/py-py2bit/package.py
index 7df420e00d..4ec515541a 100644
--- a/var/spack/repos/builtin/packages/py-py2bit/package.py
+++ b/var/spack/repos/builtin/packages/py-py2bit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPy2bit(PythonPackage):
"""A package for accessing 2bit files using lib2bit."""
- homepage = "https://pypi.python.org/pypi/py2bit"
- url = "https://pypi.io/packages/source/p/py2bit/py2bit-0.2.1.tar.gz"
+ pypi = "py2bit/py2bit-0.2.1.tar.gz"
version('0.2.1', sha256='34f7ac22be0eb4b5493063826bcc2016a78eb216bb7130890b50f3572926aeb1')
diff --git a/var/spack/repos/builtin/packages/py-py2cairo/package.py b/var/spack/repos/builtin/packages/py-py2cairo/package.py
index 5c492a9167..82d413398e 100644
--- a/var/spack/repos/builtin/packages/py-py2cairo/package.py
+++ b/var/spack/repos/builtin/packages/py-py2cairo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,8 @@ class PyPy2cairo(WafPackage):
depends_on('py-pytest', type='test')
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def install_test(self):
with working_dir('test'):
pytest = which('py.test')
diff --git a/var/spack/repos/builtin/packages/py-py2neo/package.py b/var/spack/repos/builtin/packages/py-py2neo/package.py
index 69e98d7b0b..7cbd6eae23 100644
--- a/var/spack/repos/builtin/packages/py-py2neo/package.py
+++ b/var/spack/repos/builtin/packages/py-py2neo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPy2neo(PythonPackage):
within Python applications and from the command line."""
homepage = "http://py2neo.org/"
- url = "https://pypi.io/packages/source/p/py2neo/py2neo-2.0.8.tar.gz"
+ pypi = "py2neo/py2neo-2.0.8.tar.gz"
version('4.3.0', sha256='a218ccb4b636e3850faa6b74ebad80f00600217172a57f745cf223d38a219222')
version('2.0.8', sha256='06167f5a91a0d9b9b73431baacd876f2d507650a681fdce1fcf3b383a9b991c1')
diff --git a/var/spack/repos/builtin/packages/py-py4j/package.py b/var/spack/repos/builtin/packages/py-py4j/package.py
index e67f5a3ec7..8260ad5648 100644
--- a/var/spack/repos/builtin/packages/py-py4j/package.py
+++ b/var/spack/repos/builtin/packages/py-py4j/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,12 +11,14 @@ class PyPy4j(PythonPackage):
objects."""
homepage = "https://www.py4j.org/"
- url = "https://pypi.io/packages/source/p/py4j/py4j-0.10.4.zip"
+ pypi = "py4j/py4j-0.10.4.zip"
+ version('0.10.9',
+ url='https://files.pythonhosted.org/packages/10/ed/9dad8808c34bc5b0b1a44b13c0bddeea0c8df59956eb20ac2fecc373f322/py4j-0.10.9.tar.gz',
+ sha256='36ec57f43ff8ced260a18aa9a4e46c3500a730cac8860e259cbaa546c2b9db2f')
version('0.10.7', sha256='721189616b3a7d28212dfb2e7c6a1dd5147b03105f1fc37ff2432acd0e863fa5')
version('0.10.6', sha256='d3e7ac7c2171c290eba87e70aa5095b7eb6d6ad34789c007c88d550d9f575083')
version('0.10.4', sha256='406fbfdbcbbb398739f61fafd25724670a405a668eb08c1721d832eadce06aae')
version('0.10.3', sha256='f4570108ad014dd52a65c2288418e31cb8227b5ecc39ad7fc7fe98314f7a26f2')
depends_on('py-setuptools', type='build')
- depends_on('py-nose@1.3.7:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-py6s/package.py b/var/spack/repos/builtin/packages/py-py6s/package.py
index 4afd65d000..c780284f62 100644
--- a/var/spack/repos/builtin/packages/py-py6s/package.py
+++ b/var/spack/repos/builtin/packages/py-py6s/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyPy6s(PythonPackage):
"""
homepage = "http://py6s.rtwilson.com/"
- url = "https://pypi.io/packages/source/p/py6s/Py6S-1.8.0.tar.gz"
+ pypi = "py6s/Py6S-1.8.0.tar.gz"
version('1.8.0', sha256='256162d2f1f558e601d4f79022c037a0051838ba307b9f4d1f5fcf0b46a0c277')
diff --git a/var/spack/repos/builtin/packages/py-pyaestro/package.py b/var/spack/repos/builtin/packages/py-pyaestro/package.py
new file mode 100644
index 0000000000..7c2858ed58
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyaestro/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPyaestro(PythonPackage):
+ """A collection of data classes, data structures, and other utility classes
+ that are aimed for use in workflow """
+
+ homepage = "https://github.com/FrankD412/pyaestro"
+ pypi = "pyaestro/pyaestro-0.0.1a2.tar.gz"
+ git = "https://github.com/FrankD412/pyaestro"
+
+ maintainers = ['FrankD412']
+
+ # git branches
+ version('main', branch='main')
+ version('0.0.1a2', sha256='1f6a5068ff8dd9fe4838aba43850e51a5b622f379819ae62103617bf9c8aaa31')
+
+ depends_on('python@3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-coloredlogs', type=('build', 'run'))
+ depends_on('py-psutil', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyamg/package.py b/var/spack/repos/builtin/packages/py-pyamg/package.py
new file mode 100644
index 0000000000..24e0d7732c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyamg/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPyamg(PythonPackage):
+ """PyAMG is a library of Algebraic Multigrid (AMG) solvers with
+ a convenient Python interface."""
+
+ homepage = "https://github.com/pyamg/pyamg"
+ url = "https://github.com/pyamg/pyamg/archive/v4.0.0.zip"
+
+ # A list of GitHub accounts to notify when the package is updated.
+ maintainers = ['benc303']
+
+ version('4.0.0', sha256="015d5e706e6e54d3de82e05fdb173c30d8b27cb8a117ab584cd62ad41d9ea042")
+
+ # Dependencies. A generic python dependency is added implicity by the
+ # PythonPackage class.
+ depends_on("py-setuptools", type="build")
+ depends_on("py-numpy", type=("build", "run"))
+ depends_on("py-scipy", type=("build", "run"))
diff --git a/var/spack/repos/builtin/packages/py-pyani/package.py b/var/spack/repos/builtin/packages/py-pyani/package.py
index afa5fdf640..12f3518acc 100644
--- a/var/spack/repos/builtin/packages/py-pyani/package.py
+++ b/var/spack/repos/builtin/packages/py-pyani/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyPyani(PythonPackage):
with SGE/OGE-type job schedulers for the sequence comparisons."""
homepage = "http://widdowquinn.github.io/pyani"
- url = "https://pypi.io/packages/source/p/pyani/pyani-0.2.7.tar.gz"
+ pypi = "pyani/pyani-0.2.7.tar.gz"
version('0.2.7', sha256='dbc6c71c46fbbfeced3f8237b84474221268b51170caf044bec8559987a7deb9')
version('0.2.6', sha256='e9d899bccfefaabe7bfa17d48eef9c713d321d2d15465f7328c8984807c3dd8d')
diff --git a/var/spack/repos/builtin/packages/py-pyarrow/for_aarch64.patch b/var/spack/repos/builtin/packages/py-pyarrow/for_aarch64.patch
new file mode 100644
index 0000000000..b269aa09a6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyarrow/for_aarch64.patch
@@ -0,0 +1,14 @@
+--- spack-src/CMakeLists.txt.bak 2020-05-14 19:42:00.000000000 +0900
++++ spack-src/CMakeLists.txt 2020-12-11 14:02:52.645857641 +0900
+@@ -97,6 +97,11 @@
+ # Cython generated code emits way to many warnings at CHECKIN and EVERYTHING
+ set(BUILD_WARNING_LEVEL "PRODUCTION")
+
++# This must be synchronized with the definition in
++# cmake_modules/DefineOptions.cmake.
++set(ARROW_ARMV8_ARCH
++ "armv8-a"
++ CACHE STRING "Arm64 arch and extensions: armv8-a, armv8-a or armv8-a+crc+crypto")
+ include(SetupCxxFlags)
+
+ # Add common flags
diff --git a/var/spack/repos/builtin/packages/py-pyarrow/package.py b/var/spack/repos/builtin/packages/py-pyarrow/package.py
index 8e4514b8f3..212b5a5eed 100644
--- a/var/spack/repos/builtin/packages/py-pyarrow/package.py
+++ b/var/spack/repos/builtin/packages/py-pyarrow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyPyarrow(PythonPackage, CudaPackage):
"""
homepage = "https://arrow.apache.org"
- url = 'https://pypi.io/packages/source/p/pyarrow/pyarrow-0.17.1.tar.gz'
+ pypi = 'pyarrow/pyarrow-0.17.1.tar.gz'
version('0.17.1', sha256='278d11800c2e0f9bea6314ef718b2368b4046ba24b6c631c14edad5a1d351e49')
version('0.15.1', sha256='7ad074690ba38313067bf3bbda1258966d38e2037c035d08b9ffe3cce07747a5')
@@ -31,11 +31,6 @@ class PyPyarrow(PythonPackage, CudaPackage):
depends_on('py-setuptools-scm', type='build', when='@0.15.0:')
depends_on('py-cython', type='build')
depends_on('py-cython@0.29:', type='build', when='@0.15.0:')
- depends_on('py-pytest-runner', type='test', when='@0.17:')
- depends_on('py-pytest', type='test', when='@0.15.0:')
- depends_on('py-pandas', type='test', when='@0.15.0:')
- depends_on('py-hypothesis', type='test', when='@0.15.0:')
- depends_on('py-pathlib2', type='test', when='@0.15.0: ^python@:3.3.99')
depends_on('py-numpy@1.14:', type=('build', 'run'), when='@0.15.0:')
depends_on('py-six@1.0.0:', type=('build', 'run'), when='@0.15.0:')
depends_on('py-futures', type=('build', 'run'), when='@0.15.0:^python@:3.1.99')
@@ -49,6 +44,8 @@ class PyPyarrow(PythonPackage, CudaPackage):
phases = ['build_ext', 'install']
+ patch('for_aarch64.patch', when='target=aarch64:')
+
def build_ext_args(self, spec, prefix):
args = []
if spec.satisfies('+parquet'):
diff --git a/var/spack/repos/builtin/packages/py-pyasn1-modules/package.py b/var/spack/repos/builtin/packages/py-pyasn1-modules/package.py
index 649d0e367e..e1d4fa7c96 100644
--- a/var/spack/repos/builtin/packages/py-pyasn1-modules/package.py
+++ b/var/spack/repos/builtin/packages/py-pyasn1-modules/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPyasn1Modules(PythonPackage):
structures (X.509, PKCS etc.)."""
homepage = "https://github.com/etingof/pyasn1-modules"
- url = "https://pypi.io/packages/source/p/pyasn1-modules/pyasn1-modules-0.2.6.tar.gz"
+ pypi = "pyasn1-modules/pyasn1-modules-0.2.6.tar.gz"
version('0.2.6', sha256='43c17a83c155229839cc5c6b868e8d0c6041dba149789b6d6e28801c64821722')
version('0.2.5', sha256='ef721f68f7951fab9b0404d42590f479e30d9005daccb1699b0a51bb4177db96')
diff --git a/var/spack/repos/builtin/packages/py-pyasn1/package.py b/var/spack/repos/builtin/packages/py-pyasn1/package.py
index ea95f32844..7b982c014d 100644
--- a/var/spack/repos/builtin/packages/py-pyasn1/package.py
+++ b/var/spack/repos/builtin/packages/py-pyasn1/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPyasn1(PythonPackage):
(X.208)."""
homepage = "https://github.com/etingof/pyasn1"
- url = "https://pypi.io/packages/source/p/pyasn1/pyasn1-0.4.6.tar.gz"
+ pypi = "pyasn1/pyasn1-0.4.6.tar.gz"
version('0.4.6', sha256='b773d5c9196ffbc3a1e13bdf909d446cad80a039aa3340bcad72f395b76ebc86')
version('0.4.5', sha256='da2420fe13a9452d8ae97a0e478adde1dee153b11ba832a95b223a2ba01c10f7')
diff --git a/var/spack/repos/builtin/packages/py-pybedtools/package.py b/var/spack/repos/builtin/packages/py-pybedtools/package.py
index fc8e0fe7c7..f309f9109b 100644
--- a/var/spack/repos/builtin/packages/py-pybedtools/package.py
+++ b/var/spack/repos/builtin/packages/py-pybedtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,12 +12,24 @@ class PyPybedtools(PythonPackage):
homepage = "http://daler.github.io/pybedtools"
url = "https://github.com/daler/pybedtools/archive/v0.6.9.tar.gz"
- version('0.6.9', sha256='2639e80917999e76572017fd93757e8d7ceb384f0b92647ccfdd23a0d60def7c')
+ version('0.8.0', sha256='f0d9f24135d13d6d02d5c0d1bded771848d3642b00a2d3c3d86b2a1fcd5ce532')
+ version('0.7.10', sha256='bc81c1655e998d8090d852f109925fc7fd3dad3ff90371cf80807dd4438a826a')
+ version('0.7.9', sha256='49cdb62b81bb6bf28fecf6fc9519aa31e333d150347ca4ce2d2cd2aa5ec2ca57')
+ version('0.7.8', sha256='0d49d92ba6d6cec85956cc4f947c9f431dc30aeea05125643a1b8786a59dc402')
+ version('0.7.7', sha256='e4f87da5009928046ac233d2c8a7c2121820aa6d74de45922ec1405464c62862')
+ version('0.7.6', sha256='639880a45ef60bd10d4ed31e6e7f7e901a6dbd909373df8f63f5aeccde446754')
+ version('0.7.5', sha256='ef221c38281cb9be1e8014d6513f6fd9b2722306a70e4ac2484d0d7034bc5b03')
+ version('0.7.4', sha256='39172a31c59ccf355fcff885f652cdc825341cabbab4ba78ac03862c42caa9da')
+ version('0.7.3', sha256='ba6875297116b776cb1eb79ddb9fe24db9cbee8f6922940f84984d533ef9000b')
+ version('0.7.2', sha256='0d0a80a42667742d53b1ef1947f4645dc16b060c7aacb4721c48f8028cc33c5e')
+ version('0.6.9', sha256='2639e80917999e76572017fd93757e8d7ceb384f0b92647ccfdd23a0d60def7c')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
depends_on('bedtools2', type='run')
- depends_on('py-cython', type=('build', 'run'))
- depends_on('py-pysam', type=('build', 'run'))
+
+ depends_on('py-numpy', type=('build', 'run'))
depends_on('py-pandas', type=('build', 'run'))
+ depends_on('py-pysam', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
- depends_on('py-numpy', type=('build', 'run'))
- depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pybigwig/package.py b/var/spack/repos/builtin/packages/py-pybigwig/package.py
index 41f6ee7ffa..1a4e198097 100644
--- a/var/spack/repos/builtin/packages/py-pybigwig/package.py
+++ b/var/spack/repos/builtin/packages/py-pybigwig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPybigwig(PythonPackage):
"""A package for accessing bigWig files using libBigWig."""
- homepage = "https://pypi.python.org/pypi/pyBigWig"
- url = "https://pypi.io/packages/source/p/pyBigWig/pyBigWig-0.3.4.tar.gz"
+ pypi = "pyBigWig/pyBigWig-0.3.4.tar.gz"
version('0.3.12', sha256='e01991790ece496bf6d3f00778dcfb136dd9ca0fd28acc1b3fb43051ad9b8403')
version('0.3.4', sha256='8c97a19218023190041c0e426f1544f7a4944a7bb4568faca1d85f1975af9ee2')
diff --git a/var/spack/repos/builtin/packages/py-pybind11-stubgen/package.py b/var/spack/repos/builtin/packages/py-pybind11-stubgen/package.py
new file mode 100644
index 0000000000..b3f9d343a4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pybind11-stubgen/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPybind11Stubgen(PythonPackage):
+ """Generates stubs for pybind11-wrapped python modules"""
+
+ homepage = "https://github.com/sizmailov/pybind11-stubgen"
+ pypi = "pybind11-stubgen/pybind11-stubgen-0.3.0.tar.gz"
+
+ version('0.8.7', sha256='79e24009137cd51ef7201c5b9f4d0d072824b260cff751ec8200a8886e06adbf')
+ version('0.3.0', sha256='fb9bc977df46d7f1aecd33258e34abbbd01f1f461862c8a2a85341b96e6e6bdf')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pybind11/package.py b/var/spack/repos/builtin/packages/py-pybind11/package.py
index 1c07734e6f..94fa5d14b1 100644
--- a/var/spack/repos/builtin/packages/py-pybind11/package.py
+++ b/var/spack/repos/builtin/packages/py-pybind11/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,13 +18,15 @@ class PyPybind11(CMakePackage):
introspection."""
homepage = "https://pybind11.readthedocs.io"
- url = "https://github.com/pybind/pybind11/archive/v2.1.0.tar.gz"
+ url = "https://github.com/pybind/pybind11/archive/v2.6.2.tar.gz"
git = "https://github.com/pybind/pybind11.git"
maintainers = ['ax3l']
version('master', branch='master')
- version('2.5.0', sha256='97504db65640570f32d3fdf701c25a340c8643037c3b69aec469c10c93dc8504')
+ version('2.6.2', sha256='8ff2fff22df038f5cd02cea8af56622bc67f5b64534f1b83b9f133b8366acff2')
+ version('2.6.1', sha256='cdbe326d357f18b83d10322ba202d69f11b2f49e2d87ade0dc2be0c5c34f8e2a')
+ version('2.5.0', sha256='97504db65640570f32d3fdf701c25a340c8643037c3b69aec469c10c93dc8504', preferred=True)
version('2.4.3', sha256='1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d')
version('2.3.0', sha256='0f34838f2c8024a6765168227ba587b3687729ebf03dc912f88ff75c7aa9cfe8')
version('2.2.4', sha256='b69e83658513215b8d1443544d0549b7d231b9f201f6fc787a2b2218b408181e')
@@ -35,8 +37,8 @@ class PyPybind11(CMakePackage):
version('2.1.1', sha256='f2c6874f1ea5b4ad4ffffe352413f7d2cd1a49f9050940805c2a082348621540')
version('2.1.0', sha256='2860f2b8d0c9f65f0698289a161385f59d099b7ead1bf64e8993c486f2b93ee0')
- depends_on('py-pytest', type='test')
depends_on('py-setuptools', type='build')
+ depends_on('py-pytest', type='test')
extends('python')
@@ -50,8 +52,7 @@ class PyPybind11(CMakePackage):
args.append('-DPYTHON_EXECUTABLE:FILEPATH=%s'
% self.spec['python'].command.path)
args += [
- '-DPYBIND11_TEST:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF')
+ self.define('PYBIND11_TEST', self.run_tests)
]
return args
diff --git a/var/spack/repos/builtin/packages/py-pybtex-docutils/package.py b/var/spack/repos/builtin/packages/py-pybtex-docutils/package.py
index ba93a2a994..25d78a99c7 100644
--- a/var/spack/repos/builtin/packages/py-pybtex-docutils/package.py
+++ b/var/spack/repos/builtin/packages/py-pybtex-docutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,13 +9,12 @@ from spack import *
class PyPybtexDocutils(PythonPackage):
"""A docutils backend for pybtex."""
- homepage = "https://pypi.python.org/pypi/pybtex-docutils/"
- url = "https://pypi.io/packages/source/p/pybtex-docutils/pybtex-docutils-0.2.1.tar.gz"
-
- import_modules = ['pybtex_docutils']
+ pypi = "pybtex-docutils/pybtex-docutils-0.2.1.tar.gz"
+ version('0.2.2', sha256='ea90935da188a0f4de2fe6b32930e185c33a0e306154322ccc12e519ebb5fa7d')
version('0.2.1', sha256='e4b075641c1d68a3e98a6d73ad3d029293fcf9e0773512315ef9c8482f251337')
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-docutils@0.8:', type=('build', 'run'))
depends_on('py-pybtex@0.16:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pybtex/package.py b/var/spack/repos/builtin/packages/py-pybtex/package.py
index 56bfb42a50..980393ae07 100644
--- a/var/spack/repos/builtin/packages/py-pybtex/package.py
+++ b/var/spack/repos/builtin/packages/py-pybtex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,19 +12,7 @@ class PyPybtex(PythonPackage):
Python."""
homepage = "https://pybtex.org"
- url = "https://pypi.io/packages/source/P/Pybtex/pybtex-0.21.tar.gz"
-
- import_modules = [
- 'custom_fixers', 'pybtex', 'pybtex.style', 'pybtex.tests',
- 'pybtex.database', 'pybtex.backends', 'pybtex.bibtex',
- 'pybtex.charwidths', 'pybtex.markup', 'pybtex.plugin',
- 'pybtex.style.sorting', 'pybtex.style.names',
- 'pybtex.style.labels', 'pybtex.style.formatting',
- 'pybtex.tests.database_test', 'pybtex.tests.bst_parser_test',
- 'pybtex.tests.data', 'pybtex.database.output',
- 'pybtex.database.input', 'pybtex.database.format',
- 'pybtex.database.convert'
- ]
+ pypi = "Pybtex/pybtex-0.21.tar.gz"
version('0.21', sha256='af8a6c7c74954ad305553b118d2757f68bc77c5dd5d5de2cc1fd16db90046000')
diff --git a/var/spack/repos/builtin/packages/py-pycairo/package.py b/var/spack/repos/builtin/packages/py-pycairo/package.py
index a8838cfa19..6575945cb0 100644
--- a/var/spack/repos/builtin/packages/py-pycairo/package.py
+++ b/var/spack/repos/builtin/packages/py-pycairo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,16 +11,19 @@ class PyPycairo(PythonPackage):
"""Pycairo is a set of Python bindings for the cairo graphics library."""
homepage = "https://www.cairographics.org/pycairo/"
- url = "https://pypi.io/packages/source/p/pycairo/pycairo-1.17.1.tar.gz"
+ pypi = "pycairo/pycairo-1.17.1.tar.gz"
+ version('1.20.0', sha256='5695a10cb7f9ae0d01f665b56602a845b0a8cb17e2123bfece10c2e58552468c')
version('1.18.1', sha256='70172e58b6bad7572a3518c26729b074acdde15e6fee6cbab6d3528ad552b786')
version('1.17.1', sha256='0f0a35ec923d87bc495f6753b1e540fd046d95db56a35250c44089fbce03b698')
- depends_on('cairo@1.13.1:')
+ depends_on('cairo@1.15.10: +pdf', when='@1.20.0:')
+ depends_on('cairo@1.13.1: +pdf', when='@:1.18.1')
depends_on('pkgconfig', type='build')
depends_on('py-setuptools', type='build')
depends_on('python@2.7:2.8,3.3:', when='@:1.17.1', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.4:', when='@1.18.1:', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.4:3.7.999', when='@1.18.1:1.19.999', type=('build', 'run'))
+ depends_on('python@3.6:3.999', when='@1.20.0:', type=('build', 'run'))
@run_after('install')
def post_install(self):
diff --git a/var/spack/repos/builtin/packages/py-pycares/package.py b/var/spack/repos/builtin/packages/py-pycares/package.py
index c782f719b4..96f899802d 100644
--- a/var/spack/repos/builtin/packages/py-pycares/package.py
+++ b/var/spack/repos/builtin/packages/py-pycares/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pycbc/package.py b/var/spack/repos/builtin/packages/py-pycbc/package.py
index d315133885..6f8b4dd64c 100644
--- a/var/spack/repos/builtin/packages/py-pycbc/package.py
+++ b/var/spack/repos/builtin/packages/py-pycbc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyPycbc(PythonPackage):
the flagship analysis of LIGO and Virgo data."""
homepage = "https://pycbc.org/"
- url = "https://pypi.io/packages/source/P/PyCBC/PyCBC-1.14.1.tar.gz"
+ pypi = "PyCBC/PyCBC-1.14.1.tar.gz"
version('1.14.1', sha256='4b0a309cb6209837aaebbd691413a286dd7200ccf4b977ffed1462a65ac35dc0')
diff --git a/var/spack/repos/builtin/packages/py-pychecker/package.py b/var/spack/repos/builtin/packages/py-pychecker/package.py
index 04e06a50fc..6e94a041de 100644
--- a/var/spack/repos/builtin/packages/py-pychecker/package.py
+++ b/var/spack/repos/builtin/packages/py-pychecker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pycifrw/package.py b/var/spack/repos/builtin/packages/py-pycifrw/package.py
index c16a3b2894..0b38275ec2 100644
--- a/var/spack/repos/builtin/packages/py-pycifrw/package.py
+++ b/var/spack/repos/builtin/packages/py-pycifrw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPycifrw(PythonPackage):
Framework (CIF) files."""
homepage = "https://bitbucket.org/jamesrhester/pycifrw/src/development/"
- url = "https://pypi.io/packages/source/P/PyCifRW/PyCifRW-4.4.1.tar.gz"
+ pypi = "PyCifRW/PyCifRW-4.4.1.tar.gz"
version('4.4.1', sha256='cef7662f475e0eb78a55c2d55774d474e888c96b0539e5f08550afa902cdc4e1')
diff --git a/var/spack/repos/builtin/packages/py-pycmd/package.py b/var/spack/repos/builtin/packages/py-pycmd/package.py
index 791852e95b..620fce5c12 100644
--- a/var/spack/repos/builtin/packages/py-pycmd/package.py
+++ b/var/spack/repos/builtin/packages/py-pycmd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyPycmd(PythonPackage):
"""pycmd is a collection of command line tools for helping with Python
development."""
- homepage = "https://pypi.org/project/pycmd/"
- url = "https://pypi.io/packages/source/p/pycmd/pycmd-1.2.tar.gz"
+ pypi = "pycmd/pycmd-1.2.tar.gz"
version('1.2', sha256='adc1976c0106919e9338db20102b91009256dcfec924a66928d7297026f72477')
diff --git a/var/spack/repos/builtin/packages/py-pycocotools/package.py b/var/spack/repos/builtin/packages/py-pycocotools/package.py
new file mode 100644
index 0000000000..1fa3413f8f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pycocotools/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPycocotools(PythonPackage):
+ """Official APIs for the MS-COCO dataset."""
+
+ homepage = "https://github.com/cocodataset/cocoapi"
+ pypi = "pycocotools/pycocotools-2.0.2.tar.gz"
+
+ version('2.0.2', sha256='24717a12799b4471c2e54aa210d642e6cd4028826a1d49fcc2b0e3497e041f1a')
+
+ depends_on('python', type=('build', 'link', 'run'))
+ depends_on('py-setuptools@18.0:', type='build')
+ depends_on('py-cython@0.27.3:', type='build')
+ depends_on('py-numpy', type=('build', 'link', 'run'))
+ depends_on('py-matplotlib@2.1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pycodestyle/package.py b/var/spack/repos/builtin/packages/py-pycodestyle/package.py
index 48e833ec2f..d9bb3ced5d 100644
--- a/var/spack/repos/builtin/packages/py-pycodestyle/package.py
+++ b/var/spack/repos/builtin/packages/py-pycodestyle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pycosat/package.py b/var/spack/repos/builtin/packages/py-pycosat/package.py
index ac10891cef..94bb571b2f 100644
--- a/var/spack/repos/builtin/packages/py-pycosat/package.py
+++ b/var/spack/repos/builtin/packages/py-pycosat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,6 @@ class PyPycosat(PythonPackage):
extracted from the picosat source (picosat-965.tar.gz)."""
homepage = "https://github.com/ContinuumIO/pycosat"
- url = "https://pypi.io/packages/source/p/pycosat/pycosat-0.6.3.zip"
+ pypi = "pycosat/pycosat-0.6.3.zip"
version('0.6.3', sha256='4c99874946a7e939bb941bbb019dd2c20e6068e3107c91366e7779c69d70e0ed')
diff --git a/var/spack/repos/builtin/packages/py-pycparser/package.py b/var/spack/repos/builtin/packages/py-pycparser/package.py
index 6d8c217e91..035b432ad6 100644
--- a/var/spack/repos/builtin/packages/py-pycparser/package.py
+++ b/var/spack/repos/builtin/packages/py-pycparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyPycparser(PythonPackage):
"""A complete parser of the C language, written in pure python."""
homepage = "https://github.com/eliben/pycparser"
- url = "https://pypi.io/packages/source/p/pycparser/pycparser-2.19.tar.gz"
-
- import_modules = ['pycparser', 'pycparser.ply']
+ pypi = "pycparser/pycparser-2.19.tar.gz"
version('2.20', sha256='2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0')
version('2.19', sha256='a988718abfad80b6b157acce7bf130a30876d27603738ac39f140993246b25b3')
diff --git a/var/spack/repos/builtin/packages/py-pycrypto/package.py b/var/spack/repos/builtin/packages/py-pycrypto/package.py
index 4de3bca71f..245095f711 100644
--- a/var/spack/repos/builtin/packages/py-pycrypto/package.py
+++ b/var/spack/repos/builtin/packages/py-pycrypto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPycrypto(PythonPackage):
"""The Python Cryptography Toolkit"""
homepage = "https://www.dlitz.net/software/pycrypto/"
- url = "https://pypi.io/packages/source/p/pycrypto/pycrypto-2.6.1.tar.gz"
+ pypi = "pycrypto/pycrypto-2.6.1.tar.gz"
version('2.6.1', sha256='f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c')
diff --git a/var/spack/repos/builtin/packages/py-pycuda/package.py b/var/spack/repos/builtin/packages/py-pycuda/package.py
index a5f2153d9d..db5a4798ff 100644
--- a/var/spack/repos/builtin/packages/py-pycuda/package.py
+++ b/var/spack/repos/builtin/packages/py-pycuda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,20 +12,33 @@ class PyPycuda(PythonPackage):
"""
homepage = "https://mathema.tician.de/software/pycuda/"
- url = "https://pypi.io/packages/source/p/pycuda/pycuda-2019.1.2.tar.gz"
+ pypi = "pycuda/pycuda-2019.1.2.tar.gz"
+ version('2020.1', sha256='effa3b99b55af67f3afba9b0d1b64b4a0add4dd6a33bdd6786df1aa4cc8761a5')
version('2019.1.2', sha256='ada56ce98a41f9f95fe18809f38afbae473a5c62d346cfa126a2d5477f24cc8a')
version('2016.1.2', sha256='a7dbdac7e2f0c0d2ad98f5f281d5a9d29d6673b3c20210e261b96e9a2d0b6e37')
+ @run_before('build')
+ def configure(self):
+ pyver = self.spec['python'].version.up_to(2).joined
+ boostlib = 'boost_python{0}'.format(pyver)
+ configure_args = [
+ '--no-use-shipped-boost',
+ '--boost-inc-dir={0}'.format(self.spec['boost'].prefix.include),
+ '--boost-lib-dir={0}'.format(self.spec['boost'].libs.directories[0]),
+ '--boost-python-libname={0}'.format(boostlib)
+ ]
+ python('configure.py', *configure_args)
+
depends_on('py-setuptools', type='build')
depends_on('cuda')
- depends_on('boost')
+ depends_on('boost+python')
+ depends_on('python@3.6:3.999', type=('build', 'run'), when='@2020.1:')
depends_on('py-numpy@1.6:', type=('build', 'run'))
+ depends_on('py-pytools@2011.2:', type=('build', 'run'))
depends_on('py-six', type='run')
- depends_on('py-decorator@3.2.0:', type='run')
- depends_on('py-appdirs@1.4.0:', type='run')
- depends_on('py-mako', type='run')
+ depends_on('py-decorator@3.2.0:', type=('build', 'run'))
+ depends_on('py-appdirs@1.4.0:', type=('build', 'run'))
+ depends_on('py-mako', type=('build', 'run'))
depends_on('cuda@:8.0.61', when='@2016.1.2')
-
- depends_on('py-pytest@2:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pycurl/package.py b/var/spack/repos/builtin/packages/py-pycurl/package.py
index ba23c5238a..b82974139b 100644
--- a/var/spack/repos/builtin/packages/py-pycurl/package.py
+++ b/var/spack/repos/builtin/packages/py-pycurl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPycurl(PythonPackage):
objects identified by a URL from a Python program."""
homepage = "http://pycurl.io/"
- url = "https://pypi.io/packages/source/p/pycurl/pycurl-7.43.0.tar.gz"
+ pypi = "pycurl/pycurl-7.43.0.tar.gz"
version('7.43.0', sha256='aa975c19b79b6aa6c0518c0cc2ae33528900478f0b500531dbcdbf05beec584c')
diff --git a/var/spack/repos/builtin/packages/py-pydap/package.py b/var/spack/repos/builtin/packages/py-pydap/package.py
new file mode 100644
index 0000000000..c0c714f4e6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pydap/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPydap(PythonPackage):
+ """An implementation of the Data Access Protocol."""
+
+ homepage = "https://www.pydap.org/en/latest/"
+ pypi = "Pydap/Pydap-3.2.2.tar.gz"
+
+ version('3.2.2', sha256='86326642e24f421595a74b0f9986da76d7932b277768f501fe214d72592bdc40')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-webob', type=('build', 'run'))
+ depends_on('py-jinja2', type=('build', 'run'))
+ depends_on('py-docopt', type=('build', 'run'))
+ depends_on('py-six@1.4.0:', type=('build', 'run'))
+ depends_on('py-beautifulsoup4', type=('build', 'run'))
+ depends_on('py-singledispatch', when='^python@:3.4.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pydatalog/package.py b/var/spack/repos/builtin/packages/py-pydatalog/package.py
index 41b6a26993..fe8f253105 100644
--- a/var/spack/repos/builtin/packages/py-pydatalog/package.py
+++ b/var/spack/repos/builtin/packages/py-pydatalog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,6 @@ from spack import *
class PyPydatalog(PythonPackage):
"""pyDatalog adds logic programming to Python."""
- homepage = 'https://pypi.python.org/pypi/pyDatalog/'
- url = 'https://pypi.io/packages/source/p/pyDatalog/pyDatalog-0.17.1.zip'
+ pypi = 'pyDatalog/pyDatalog-0.17.1.zip'
version('0.17.1', sha256='b3d9cff0b9431e0fd0b2d5eefe4414c3d3c20bd18fdd7d1b42b2f01f25bac808')
diff --git a/var/spack/repos/builtin/packages/py-pydeprecate/package.py b/var/spack/repos/builtin/packages/py-pydeprecate/package.py
new file mode 100644
index 0000000000..1cd50f7151
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pydeprecate/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPydeprecate(PythonPackage):
+ """Simple tooling for marking deprecated functions or classes and re-routing
+ to the new successors' instance."""
+
+ homepage = "https://borda.github.io/pyDeprecate/"
+ pypi = "pyDeprecate/pyDeprecate-0.3.0.tar.gz"
+
+ version('0.3.0', sha256='335742ec53b9d22a0a9ff4f3470300c94935f6e169c74b08aee14d871ca40e00')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pydeps/package.py b/var/spack/repos/builtin/packages/py-pydeps/package.py
index 65eafb46cd..b56662392c 100644
--- a/var/spack/repos/builtin/packages/py-pydeps/package.py
+++ b/var/spack/repos/builtin/packages/py-pydeps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,8 +7,7 @@
class PyPydeps(PythonPackage):
"""Python module dependency visualization."""
- homepage = "https://pypi.python.org/project/pydeps"
- url = "https://pypi.io/packages/source/p/pydeps/pydeps-1.7.1.tar.gz"
+ pypi = "pydeps/pydeps-1.7.1.tar.gz"
version('1.9.0', sha256='ba9b8c7d72cb4dfd3f4dd6b8a250c240d15824850a415fd428f2660ed371361f')
version('1.7.1', sha256='7eeb8d0ec2713befe81dd0d15eac540e843b1daae13613df1c572528552d6340')
diff --git a/var/spack/repos/builtin/packages/py-pydicom/package.py b/var/spack/repos/builtin/packages/py-pydicom/package.py
new file mode 100644
index 0000000000..54e24b5c30
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pydicom/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPydicom(PythonPackage):
+ """Pure python package for DICOM medical file reading and writing
+
+ pydicom is a pure Python package for working with DICOM files. It lets you
+ read, modify and write DICOM data in an easy "pythonic" way."""
+
+ homepage = "https://github.com/pydicom/pydicom"
+ pypi = "pydicom/pydicom-2.1.2.tar.gz"
+
+ version('2.1.2', sha256='65f36820c5fec24b4e7ca45b7dae93e054ed269d55f92681863d39d30459e2fd')
+
+ variant('numpy', default=False, description='Use NumPy for Pixel data')
+
+ depends_on('python@3.6.1:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-numpy', when='+numpy', type='run')
diff --git a/var/spack/repos/builtin/packages/py-pydispatcher/package.py b/var/spack/repos/builtin/packages/py-pydispatcher/package.py
index 8cb0218bd9..b344744e9f 100644
--- a/var/spack/repos/builtin/packages/py-pydispatcher/package.py
+++ b/var/spack/repos/builtin/packages/py-pydispatcher/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPydispatcher(PythonPackage):
"""Multi-producer-multi-consumer signal dispatching mechanism."""
homepage = "http://pydispatcher.sourceforge.net/"
- url = "https://pypi.io/packages/source/P/PyDispatcher/PyDispatcher-2.0.5.tar.gz"
+ pypi = "PyDispatcher/PyDispatcher-2.0.5.tar.gz"
version('2.0.5', sha256='5570069e1b1769af1fe481de6dd1d3a388492acddd2cdad7a3bde145615d5caf')
diff --git a/var/spack/repos/builtin/packages/py-pydmd/isuue-133.patch b/var/spack/repos/builtin/packages/py-pydmd/isuue-133.patch
new file mode 100644
index 0000000000..a7a55260ef
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pydmd/isuue-133.patch
@@ -0,0 +1,31 @@
+diff --git a/pydmd/dmdbase.py b/pydmd/dmdbase.py
+index 17f3662..778a6b8 100644
+--- a/pydmd/dmdbase.py
++++ b/pydmd/dmdbase.py
+@@ -201,7 +201,7 @@ class DMDBase(object):
+ else:
+ input_shapes = [np.asarray(x).shape for x in X]
+
+- if len(set(input_shapes)) is not 1:
++ if len(set(input_shapes)) != 1:
+ raise ValueError('Snapshots have not the same dimension.')
+
+ snapshots_shape = input_shapes[0]
+@@ -235,7 +235,7 @@ class DMDBase(object):
+ https://arxiv.org/pdf/1502.03854.pdf
+ """
+ # Do not perform tlsq
+- if tlsq_rank is 0:
++ if tlsq_rank == 0:
+ return X, Y
+
+ V = np.linalg.svd(np.append(X, Y, axis=0), full_matrices=False)[-1]
+@@ -269,7 +269,7 @@ class DMDBase(object):
+ U, s, V = np.linalg.svd(X, full_matrices=False)
+ V = V.conj().T
+
+- if svd_rank is 0:
++ if svd_rank == 0:
+ omega = lambda x: 0.56 * x ** 3 - 0.95 * x ** 2 + 1.82 * x + 1.43
+ beta = np.divide(*sorted(X.shape))
+ tau = np.median(s) * omega(beta)
diff --git a/var/spack/repos/builtin/packages/py-pydmd/package.py b/var/spack/repos/builtin/packages/py-pydmd/package.py
new file mode 100644
index 0000000000..cc0cee1185
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pydmd/package.py
@@ -0,0 +1,49 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPydmd(PythonPackage):
+ """PyDMD is a Python package that uses Dynamic Mode Decomposition
+ for a data-driven model simplification based on spatiotemporal
+ coherent structures."""
+
+ homepage = "https://mathlab.github.io/PyDMD/"
+ url = "https://github.com/mathLab/PyDMD/archive/v0.3.tar.gz"
+
+ version('0.3', sha256='f490fc139677e4d9fc1240636a2c5992d22879517c9574d13164dc5179b0f785')
+
+ variant('docs', default=False, description='Build HTML documentation')
+
+ depends_on('python@3:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-future', type=('build', 'run'))
+ depends_on('py-nose', type='test')
+ depends_on('texlive', type='build', when='+docs')
+ depends_on('py-sphinx@1.4.0:1.4.99', type='build', when='+docs')
+ depends_on('py-sphinx-rtd-theme', type='build', when='+docs')
+
+ # https://github.com/mathLab/PyDMD/pull/133
+ patch('isuue-133.patch', when='@0.3')
+
+ @run_after('build')
+ def build_docs(self):
+ if '+docs' in self.spec:
+ with working_dir('docs'):
+ make('html')
+
+ @run_after('install')
+ def install_docs(self):
+ if '+docs' in self.spec:
+ install_tree('docs', self.prefix.docs)
+
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def build_test(self):
+ python('test.py')
diff --git a/var/spack/repos/builtin/packages/py-pydot/package.py b/var/spack/repos/builtin/packages/py-pydot/package.py
index a9989cdeab..75c587047e 100644
--- a/var/spack/repos/builtin/packages/py-pydot/package.py
+++ b/var/spack/repos/builtin/packages/py-pydot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPydot(PythonPackage):
"""Python interface to Graphviz's Dot language"""
homepage = "https://github.com/erocarrera/pydot/"
- url = "https://pypi.io/packages/source/p/pydot/pydot-1.2.3.tar.gz"
+ pypi = "pydot/pydot-1.2.3.tar.gz"
version('1.4.1', sha256='d49c9d4dd1913beec2a997f831543c8cbd53e535b1a739e921642fe416235f01')
version('1.2.3', sha256='edb5d3f249f97fbd9c4bb16959e61bc32ecf40eee1a9f6d27abe8d01c0a73502')
diff --git a/var/spack/repos/builtin/packages/py-pydot2/package.py b/var/spack/repos/builtin/packages/py-pydot2/package.py
index 9894d47659..1d9e8a1910 100644
--- a/var/spack/repos/builtin/packages/py-pydot2/package.py
+++ b/var/spack/repos/builtin/packages/py-pydot2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPydot2(PythonPackage):
"""Python interface to Graphviz's Dot"""
- homepage = "https://pypi.org/project/pydot2/"
- url = "https://pypi.io/packages/source/p/pydot2/pydot2-1.0.33.tar.gz"
+ pypi = "pydot2/pydot2-1.0.33.tar.gz"
version('1.0.33', sha256='02c0e681a1c437077e2bb2522fb81fa322e53ba7002cfda8b894db0392a1bc9b')
diff --git a/var/spack/repos/builtin/packages/py-pydotplus/package.py b/var/spack/repos/builtin/packages/py-pydotplus/package.py
index 07370cbc1c..e1119049b1 100644
--- a/var/spack/repos/builtin/packages/py-pydotplus/package.py
+++ b/var/spack/repos/builtin/packages/py-pydotplus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPydotplus(PythonPackage):
"""Python interface to Graphviz's Dot language"""
homepage = "https://pydotplus.readthedocs.io/"
- url = "https://pypi.io/packages/source/p/pydotplus/pydotplus-2.0.2.tar.gz"
+ pypi = "pydotplus/pydotplus-2.0.2.tar.gz"
version('2.0.2', sha256='91e85e9ee9b85d2391ead7d635e3d9c7f5f44fd60a60e59b13e2403fa66505c4')
@@ -18,7 +18,6 @@ class PyPydotplus(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-pyparsing@2.0.1:', type=('build', 'run'))
- depends_on('py-pytest', type='test')
depends_on('py-sphinx', type='build', when='+docs')
depends_on('py-sphinx-rtd-theme', type='build', when='+docs')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pydv/package.py b/var/spack/repos/builtin/packages/py-pydv/package.py
index 147b6374a6..b43ae2a9fd 100644
--- a/var/spack/repos/builtin/packages/py-pydv/package.py
+++ b/var/spack/repos/builtin/packages/py-pydv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pyeda/package.py b/var/spack/repos/builtin/packages/py-pyeda/package.py
index d6f3b4a3f9..df966f50ca 100644
--- a/var/spack/repos/builtin/packages/py-pyeda/package.py
+++ b/var/spack/repos/builtin/packages/py-pyeda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyeda(PythonPackage):
"""PyEDA is a Python library for electronic design automation."""
homepage = "https://github.com/cjdrake/pyeda"
- url = "https://pypi.io//packages/source/p/pyeda/pyeda-0.28.0.tar.gz"
+ pypi = "pyeda/pyeda-0.28.0.tar.gz"
version('0.28.0', sha256='07185f458d5d0b2ba5058da8b95dad6ab7684ceaf41237a25bcd3f005490f59d')
diff --git a/var/spack/repos/builtin/packages/py-pyelftools/package.py b/var/spack/repos/builtin/packages/py-pyelftools/package.py
index 0607560e0b..eeb7144893 100644
--- a/var/spack/repos/builtin/packages/py-pyelftools/package.py
+++ b/var/spack/repos/builtin/packages/py-pyelftools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPyelftools(PythonPackage):
"""A pure-Python library for parsing and analyzing ELF files and DWARF
debugging information"""
- homepage = "https://pypi.python.org/pypi/pyelftools"
- url = "https://pypi.io/packages/source/p/pyelftools/pyelftools-0.26.tar.gz"
+ pypi = "pyelftools/pyelftools-0.26.tar.gz"
version('0.26', sha256='86ac6cee19f6c945e8dedf78c6ee74f1112bd14da5a658d8c9d4103aed5756a2')
version('0.23', sha256='fc57aadd096e8f9b9b03f1a9578f673ee645e1513a5ff0192ef439e77eab21de')
diff --git a/var/spack/repos/builtin/packages/py-pyem/package.py b/var/spack/repos/builtin/packages/py-pyem/package.py
new file mode 100644
index 0000000000..e8940b9722
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyem/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPyem(PythonPackage):
+ """Project-level Python virtual environment management tool.
+
+ PyEM manages multiple virtual environments local to projects.
+ It provides shortcuts to create, remove, switch between, and run
+ commands against virtual environments created against
+ various Python interpreters."""
+
+ pypi = "pyem/pyem-2.1.0.tar.gz"
+
+ version('2.1.0', sha256='5234a20427ab2813a8a0bf1e9112d4d854b1b0502b3e63d17c1b1a3c4be9340e')
+
+ depends_on('python@3.7:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+
+ # distutils does not support entry_points, setuptools needed to install pyem binary
+ def patch(self):
+ filter_file(r'from distutils.core import setup',
+ 'from setuptools import setup', 'setup.py')
diff --git a/var/spack/repos/builtin/packages/py-pyepsg/package.py b/var/spack/repos/builtin/packages/py-pyepsg/package.py
index 2b0ecd21a4..4a41536d43 100644
--- a/var/spack/repos/builtin/packages/py-pyepsg/package.py
+++ b/var/spack/repos/builtin/packages/py-pyepsg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyepsg(PythonPackage):
"""Provides simple access to http://epsg.io/."""
homepage = "https://pyepsg.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/p/pyepsg/pyepsg-0.3.2.tar.gz"
+ pypi = "pyepsg/pyepsg-0.3.2.tar.gz"
version('0.3.2', sha256='597ef8c0e8c1be3db8f68c5985bcfbbc32e22f087e93e81ceb03ff094898e059')
diff --git a/var/spack/repos/builtin/packages/py-pyface/package.py b/var/spack/repos/builtin/packages/py-pyface/package.py
index 197e3d9ab2..2f768975aa 100644
--- a/var/spack/repos/builtin/packages/py-pyface/package.py
+++ b/var/spack/repos/builtin/packages/py-pyface/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPyface(PythonPackage):
care of the details of displaying them."""
homepage = "https://docs.enthought.com/pyface"
- url = "https://pypi.io/packages/source/p/pyface/pyface-6.1.2.tar.gz"
+ pypi = "pyface/pyface-6.1.2.tar.gz"
version('6.1.2', sha256='7c2ac3d5cbec85e8504b3b0b63e9307be12c6d710b46bae372ce6562d41f4fbc')
diff --git a/var/spack/repos/builtin/packages/py-pyfaidx/package.py b/var/spack/repos/builtin/packages/py-pyfaidx/package.py
index 22740a4f83..04093d655f 100644
--- a/var/spack/repos/builtin/packages/py-pyfaidx/package.py
+++ b/var/spack/repos/builtin/packages/py-pyfaidx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPyfaidx(PythonPackage):
"""pyfaidx: efficient pythonic random access to fasta subsequences"""
- homepage = "https://pypi.org/project/pyfaidx/"
- url = "https://pypi.io/packages/source/p/pyfaidx/pyfaidx-0.5.5.2.tar.gz"
+ pypi = "pyfaidx/pyfaidx-0.5.5.2.tar.gz"
version('0.5.5.2', sha256='9ac22bdc7b9c5d995d32eb9dc278af9ba970481636ec75c0d687d38c26446caa')
diff --git a/var/spack/repos/builtin/packages/py-pyfasta/package.py b/var/spack/repos/builtin/packages/py-pyfasta/package.py
index 961bc0f75e..e24e25693f 100644
--- a/var/spack/repos/builtin/packages/py-pyfasta/package.py
+++ b/var/spack/repos/builtin/packages/py-pyfasta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyPyfasta(PythonPackage):
"""Pyfasta: fast, memory-efficient, pythonic (and command-line)
access to fasta sequence files"""
- homepage = "https://pypi.python.org/pypi/pyfasta/"
- url = "https://pypi.io/packages/source/p/pyfasta/pyfasta-0.5.2.tar.gz"
+ pypi = "pyfasta/pyfasta-0.5.2.tar.gz"
version('0.5.2', sha256='ab08d75fa90253bc91933d10567d5d9cca2718f4796ef3bdc36b68df0e45b258')
diff --git a/var/spack/repos/builtin/packages/py-pyfftw/package.py b/var/spack/repos/builtin/packages/py-pyfftw/package.py
index 41d9db5b74..4f55477f84 100644
--- a/var/spack/repos/builtin/packages/py-pyfftw/package.py
+++ b/var/spack/repos/builtin/packages/py-pyfftw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPyfftw(PythonPackage):
presenting a unified interface for all the supported transforms."""
homepage = "http://hgomersall.github.com/pyFFTW"
- url = "https://pypi.io/packages/source/p/pyFFTW/pyFFTW-0.10.4.tar.gz"
+ pypi = "pyFFTW/pyFFTW-0.10.4.tar.gz"
version('0.12.0', sha256='60988e823ca75808a26fd79d88dbae1de3699e72a293f812aa4534f8a0a58cb0')
version('0.11.1', sha256='05ea28dede4c3aaaf5c66f56eb0f71849d0d50f5bc0f53ca0ffa69534af14926')
@@ -22,3 +22,6 @@ class PyPyfftw(PythonPackage):
depends_on('py-cython@0.29:0.999', type='build')
depends_on('py-numpy@1.6:', type=('build', 'run'), when='@:0.10.4')
depends_on('py-numpy@1.10:1.999', type=('build', 'run'), when='@0.11.0:')
+
+ def setup_build_environment(self, env):
+ env.append_flags('LDFLAGS', self.spec['fftw'].libs.search_flags)
diff --git a/var/spack/repos/builtin/packages/py-pyfiglet/package.py b/var/spack/repos/builtin/packages/py-pyfiglet/package.py
new file mode 100644
index 0000000000..8ac1bf87f6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyfiglet/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPyfiglet(PythonPackage):
+ """ pyfiglet is a full port of FIGlet (http://www.figlet.org/)
+ into purepython. It takes ASCII text and renders it in ASCII
+ art font."""
+
+ homepage = "https://github.com/pwaller/pyfiglet"
+ pypi = "pyfiglet/pyfiglet-0.7.tar.gz"
+
+ version('0.8.post1', sha256='c6c2321755d09267b438ec7b936825a4910fec696292139e664ca8670e103639')
+ version('0.8.post0', sha256='2994451ea67c77cd97f81f52087ccae6921d78d9402920995419893a979b5ace')
+ version('0.7.6', sha256='97d59651b40da6ddf7e961157c480a7a04b48214d8c7231adc8c15e43aa5d722')
+ version('0.7.5', sha256='446194e1fc3257ffc8024eafd3b486394847597f6210278d76bd582850205e12')
+
+ depends_on('py-setuptools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyfits/package.py b/var/spack/repos/builtin/packages/py-pyfits/package.py
index f013175d33..dcbddbfe07 100644
--- a/var/spack/repos/builtin/packages/py-pyfits/package.py
+++ b/var/spack/repos/builtin/packages/py-pyfits/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pyflakes/package.py b/var/spack/repos/builtin/packages/py-pyflakes/package.py
index 402a6c525b..5cbd268fdf 100644
--- a/var/spack/repos/builtin/packages/py-pyflakes/package.py
+++ b/var/spack/repos/builtin/packages/py-pyflakes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pygdal/package.py b/var/spack/repos/builtin/packages/py-pygdal/package.py
index 403e020043..2e74f36f34 100644
--- a/var/spack/repos/builtin/packages/py-pygdal/package.py
+++ b/var/spack/repos/builtin/packages/py-pygdal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class PyPygdal(PythonPackage):
"""
homepage = "https://github.com/nextgis/pygdal"
- url = "https://pypi.io/packages/source/p/pygdal/pygdal-3.0.1.5.tar.gz"
+ pypi = "pygdal/pygdal-3.0.1.5.tar.gz"
version('3.0.4.6', sha256='8e39b58cd9465bb5f41786a7cf6a62df93334c104db05a5bfb8181a0be276b86')
version('3.0.1.5', sha256='1222f69fe5e6b632d0d2a42d3acb8fac80fb4577c05e01969d8cd5548192ccaa')
diff --git a/var/spack/repos/builtin/packages/py-pygdbmi/package.py b/var/spack/repos/builtin/packages/py-pygdbmi/package.py
index 8bf181f4a7..13f32c68ee 100644
--- a/var/spack/repos/builtin/packages/py-pygdbmi/package.py
+++ b/var/spack/repos/builtin/packages/py-pygdbmi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPygdbmi(PythonPackage):
"""Parse gdb machine interface output with Python"""
homepage = "https://github.com/cs01/pygdbmi"
- url = "https://pypi.io/packages/source/p/pygdbmi/pygdbmi-0.8.2.0.tar.gz"
+ pypi = "pygdbmi/pygdbmi-0.8.2.0.tar.gz"
version('0.9.0.3', sha256='5bdf2f072e8f2f6471f19f8dcd87d6425c5d8069d47c0a5ffe8d0eff48cb171e')
version('0.8.2.0', sha256='47cece65808ca42edf6966ac48e2aedca7ae1c675c4d2f0d001c7f3a7fa245fe')
diff --git a/var/spack/repos/builtin/packages/py-pygelf/package.py b/var/spack/repos/builtin/packages/py-pygelf/package.py
index c2b20b5703..b7502d2870 100644
--- a/var/spack/repos/builtin/packages/py-pygelf/package.py
+++ b/var/spack/repos/builtin/packages/py-pygelf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,11 +11,12 @@ class PyPygelf(PythonPackage):
support."""
homepage = "https://github.com/keeprocking/pygelf"
- url = "https://pypi.io/packages/source/p/pygelf/pygelf-0.3.6.tar.gz"
+ pypi = "pygelf/pygelf-0.3.6.tar.gz"
# notify when the package is updated.
maintainers = ['victorusu', 'vkarak']
+ version('0.4.0', sha256='3693da38794561d42b0556a78af7dcb22d92ea450125577e58089ab89a890ee5')
version('0.3.6', sha256='3e5bc59e3b5a754556a76ff2c69fcf2003218ad7b5ff8417482fa1f6a7eba5f9')
depends_on('python', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pygeos/package.py b/var/spack/repos/builtin/packages/py-pygeos/package.py
new file mode 100644
index 0000000000..b56981294f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pygeos/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPygeos(PythonPackage):
+ """PyGEOS is a C/Python library with vectorized geometry functions.
+
+ The geometry operations are done in the open-source geometry library GEOS.
+ PyGEOS wraps these operations in NumPy ufuncs providing a performance
+ improvement when operating on arrays of geometries."""
+
+ homepage = "https://github.com/pygeos/pygeos"
+ pypi = "pygeos/pygeos-0.8.tar.gz"
+
+ maintainers = ['adamjstewart']
+
+ version('0.10', sha256='8ad4703cf8f983a6878a885765be975709a2fe300e54bc6c8623ddbca4903b6c')
+ version('0.9', sha256='c0584b20e95f80ee57277a6eb1e5d7f86600f8b1ef3c627d238e243afdcc0cc7')
+ version('0.8', sha256='45b7e1aaa5fc9ff53565ef089fb75c53c419ace8cee18385ec1d7c1515c17cbc')
+
+ depends_on('python@3.6:', when='@0.10:', type=('build', 'link', 'run'))
+ depends_on('python@3:', type=('build', 'link', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-numpy@1.13:', when='@0.9:', type=('build', 'link', 'run'))
+ depends_on('py-numpy@1.10:', type=('build', 'link', 'run'))
+ depends_on('geos@3.5:')
diff --git a/var/spack/repos/builtin/packages/py-pygetwindow/package.py b/var/spack/repos/builtin/packages/py-pygetwindow/package.py
new file mode 100644
index 0000000000..01bd71e179
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pygetwindow/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPygetwindow(PythonPackage):
+ """A simple, cross-platform module for obtaining GUI
+ information on and controlling application's windows."""
+
+ homepage = "https://github.com/asweigart/pygetwindow"
+ pypi = "PyGetWindow/PyGetWindow-0.0.9.tar.gz"
+
+ version('0.0.9', sha256='17894355e7d2b305cd832d717708384017c1698a90ce24f6f7fbf0242dd0a688')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pyrect', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pygit2/package.py b/var/spack/repos/builtin/packages/py-pygit2/package.py
index b90652fa33..8240819fef 100644
--- a/var/spack/repos/builtin/packages/py-pygit2/package.py
+++ b/var/spack/repos/builtin/packages/py-pygit2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,17 +12,28 @@ class PyPygit2(PythonPackage):
"""
homepage = "http://www.pygit2.org/"
- url = "https://pypi.io/packages/source/p/pygit2/pygit2-0.24.1.tar.gz"
+ pypi = "pygit2/pygit2-0.24.1.tar.gz"
+ version('1.4.0', sha256='cbeb38ab1df9b5d8896548a11e63aae8a064763ab5f1eabe4475e6b8a78ee1c8')
+ version('1.3.0', sha256='0be93f6a8d7cbf0cc79ae2f0afb1993fc055fc0018c27e2bd01ba143e51d4452')
+ version('0.28.2', sha256='4d8c3fbbf2e5793a9984681a94e6ac2f1bc91a92cbac762dbdfbea296b917f86')
version('0.24.1', sha256='4d1d0196b38d6012faf0a7c45e235c208315672b6035da504566c605ba494064')
- extends('python')
depends_on('py-setuptools', type='build')
# Version must match with libgit2
# See: http://www.pygit2.org/install.html
- depends_on('libgit2@0.24:', when='@0.24:')
+ depends_on('libgit2@1.1:1.1.99', when='@1.4:')
+ depends_on('libgit2@1.0:1.0.99', when='@1.2:1.3.99')
+ depends_on('libgit2@0.99:1.0.99', when='@1.1:1.1.99')
+ depends_on('libgit2@0.28:0.28.99', when='@0.28:1.0.99')
+ depends_on('libgit2@0.24:0.27.99', when='@0.24:0.27.99')
+ depends_on('python@3.6:', when='@1.4.0:')
+ depends_on('python@3.6:3.8.99', when='@1.2:1.3.99')
+ depends_on('python@3.5:3.8.99', when='@1.0:1.1.99')
+ depends_on('python@2.7:3.7.99', when='@0.28:0.99.99')
depends_on('py-six', type=('build', 'run'))
- depends_on('py-cffi', type=('build', 'run'))
+ depends_on('py-cffi@1.4.0:', type=('build', 'run'))
+ depends_on('py-cached-property', when='@1.1.0:', type=('build', 'run'))
def setup_build_environment(self, env):
spec = self.spec
diff --git a/var/spack/repos/builtin/packages/py-pyglet/package.py b/var/spack/repos/builtin/packages/py-pyglet/package.py
index ff01b7f2d6..a2b2ff7e4f 100644
--- a/var/spack/repos/builtin/packages/py-pyglet/package.py
+++ b/var/spack/repos/builtin/packages/py-pyglet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPyglet(PythonPackage):
"""
homepage = "https://github.com/pyglet/pygle://github.com/pyglet/pyglet"
- url = "https://pypi.io/packages/source/p/pyglet/pyglet-1.4.2.tar.gz"
+ pypi = "pyglet/pyglet-1.4.2.tar.gz"
version('1.4.2', sha256='fda25ae5e99057f05bd339ea7972196d2f44e6fe8fb210951ab01f6609cdbdb7')
version('1.2.1', sha256='d1afb253d6de230e73698377566da333ef42e1c82190216aa7a0c1b729d6ff4d')
diff --git a/var/spack/repos/builtin/packages/py-pygments-pytest/package.py b/var/spack/repos/builtin/packages/py-pygments-pytest/package.py
index 3808bb80b7..59378a4309 100644
--- a/var/spack/repos/builtin/packages/py-pygments-pytest/package.py
+++ b/var/spack/repos/builtin/packages/py-pygments-pytest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPygmentsPytest(PythonPackage):
"""A pygments lexer for pytest output."""
homepage = "https://github.com/asottile/pygments-pytest"
- url = "https://pypi.io/packages/source/P/pygments-pytest-1.2.0.tar.gz"
+ pypi = "pygments-pytest/pygments_pytest-1.2.0.tar.gz"
version('1.2.0', sha256='fc48e2fffd6d3c047a61c1db8b88ab069983f50e733fe70a7846098eb28bc955')
diff --git a/var/spack/repos/builtin/packages/py-pygments/package.py b/var/spack/repos/builtin/packages/py-pygments/package.py
index d7559b36d8..6bd338b88d 100644
--- a/var/spack/repos/builtin/packages/py-pygments/package.py
+++ b/var/spack/repos/builtin/packages/py-pygments/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,7 @@ class PyPygments(PythonPackage):
"""Pygments is a syntax highlighting package written in Python."""
homepage = "http://pygments.org/"
- url = "https://pypi.io/packages/source/P/Pygments/Pygments-2.4.2.tar.gz"
-
- import_modules = [
- 'pygments', 'pygments.filters', 'pygments.formatters',
- 'pygments.lexers', 'pygments.styles'
- ]
+ pypi = "Pygments/Pygments-2.4.2.tar.gz"
version('2.6.1', sha256='647344a061c249a3b74e230c739f434d7ea4d8b1d5f3721bc0f3558049b38f44')
version('2.4.2', sha256='881c4c157e45f30af185c1ffe8d549d48ac9127433f2c380c24b84572ad66297')
@@ -28,7 +23,3 @@ class PyPygments(PythonPackage):
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'), when='@:2.5')
depends_on('python@3.5:', type=('build', 'run'), when='@2.6:')
depends_on('py-setuptools', type=('build', 'run'))
-
- def build_test(self):
- # Unit tests require sphinx, but that creates a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-pygobject/package.py b/var/spack/repos/builtin/packages/py-pygobject/package.py
index 27b41f6c9c..02e283806e 100644
--- a/var/spack/repos/builtin/packages/py-pygobject/package.py
+++ b/var/spack/repos/builtin/packages/py-pygobject/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pygps/package.py b/var/spack/repos/builtin/packages/py-pygps/package.py
index ffb556c007..41657612ca 100644
--- a/var/spack/repos/builtin/packages/py-pygps/package.py
+++ b/var/spack/repos/builtin/packages/py-pygps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPygps(PythonPackage):
Regression and Classification."""
homepage = "https://github.com/marionmari/pyGPs"
- url = "https://pypi.io/packages/source/p/pygps/pyGPs-1.3.5.tar.gz"
+ pypi = "pygps/pyGPs-1.3.5.tar.gz"
version('1.3.5', sha256='5af668415a7bf1666c7c6da3bb09d29e48c395862c6feb23964b476972a015d4')
diff --git a/var/spack/repos/builtin/packages/py-pygpu/package.py b/var/spack/repos/builtin/packages/py-pygpu/package.py
index aea5939995..69da808072 100644
--- a/var/spack/repos/builtin/packages/py-pygpu/package.py
+++ b/var/spack/repos/builtin/packages/py-pygpu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pygresql/package.py b/var/spack/repos/builtin/packages/py-pygresql/package.py
index 9db0bc7d20..250411ff5a 100644
--- a/var/spack/repos/builtin/packages/py-pygresql/package.py
+++ b/var/spack/repos/builtin/packages/py-pygresql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pygtk/package.py b/var/spack/repos/builtin/packages/py-pygtk/package.py
index 661661a39e..db4274a8c9 100644
--- a/var/spack/repos/builtin/packages/py-pygtk/package.py
+++ b/var/spack/repos/builtin/packages/py-pygtk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pygtrie/package.py b/var/spack/repos/builtin/packages/py-pygtrie/package.py
new file mode 100644
index 0000000000..ce1479f46c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pygtrie/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPygtrie(PythonPackage):
+ """A pure Python implementation of a trie data structure."""
+
+ homepage = "https://github.com/mina86/pygtrie"
+ pypi = "pygtrie/pygtrie-2.4.2.tar.gz"
+
+ version('2.4.2', sha256='43205559d28863358dbbf25045029f58e2ab357317a59b11f11ade278ac64692')
+ version('2.4.0', sha256='77700d2fcaab321ac65e86c2969fb4b64c116796baf52ab12d07de2e1f6cfc5d')
+ version('2.3.2', sha256='6299cdedd2cbdfda0895c2dbc43efe8828e698c62b574f3ef7e14b3253f80e23')
diff --git a/var/spack/repos/builtin/packages/py-pyheadtail/package.py b/var/spack/repos/builtin/packages/py-pyheadtail/package.py
index 811bf63b4b..2316cd2dbb 100644
--- a/var/spack/repos/builtin/packages/py-pyheadtail/package.py
+++ b/var/spack/repos/builtin/packages/py-pyheadtail/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPyheadtail(PythonPackage):
macro-particle beam dynamics with collective effects."""
homepage = "https://github.com/PyCOMPLETE/PyHEADTAIL"
- url = "https://pypi.io/packages/source/P/PyHEADTAIL/PyHEADTAIL-1.14.1.tar.gz"
+ pypi = "PyHEADTAIL/PyHEADTAIL-1.14.1.tar.gz"
version('1.14.1', sha256='bf90ac7e8764176c55e82c363cad7ab43543863b6ef482760ced23b78e917bb4')
version('1.13.1', sha256='29c742573a918126b5a9c21806ee0ec6a34ec642a0e6ad200f6d4551bf1bb310')
diff --git a/var/spack/repos/builtin/packages/py-pyinstrument-cext/package.py b/var/spack/repos/builtin/packages/py-pyinstrument-cext/package.py
index 4eb2f799c1..bd1625e9f7 100644
--- a/var/spack/repos/builtin/packages/py-pyinstrument-cext/package.py
+++ b/var/spack/repos/builtin/packages/py-pyinstrument-cext/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,8 @@ class PyPyinstrumentCext(PythonPackage):
"""A CPython extension supporting pyinstrument."""
homepage = "https://github.com/joerick/pyinstrument_cext"
- url = "https://pypi.io/packages/source/p/pyinstrument_cext/pyinstrument_cext-0.2.2.tar.gz"
+ pypi = "pyinstrument_cext/pyinstrument_cext-0.2.2.tar.gz"
version('0.2.2', sha256='f29e25f71d74c0415ca9310e5567fff0f5d29f4240a09a885abf8b0eed71cc5b')
depends_on('py-setuptools', type='build')
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pyinstrument/package.py b/var/spack/repos/builtin/packages/py-pyinstrument/package.py
index ffc4c9ef0b..dbc30c7875 100644
--- a/var/spack/repos/builtin/packages/py-pyinstrument/package.py
+++ b/var/spack/repos/builtin/packages/py-pyinstrument/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,4 +19,3 @@ class PyPyinstrument(PythonPackage):
depends_on('py-pytest-runner', type='build')
depends_on('npm', type='build')
depends_on('py-pyinstrument-cext@0.2.2:', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pyjnius/package.py b/var/spack/repos/builtin/packages/py-pyjnius/package.py
new file mode 100644
index 0000000000..78ee5467a5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyjnius/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPyjnius(PythonPackage):
+ """Pyjnius is a Python library for accessing Java classes."""
+
+ homepage = "https://pyjnius.readthedocs.io/en/stable"
+ pypi = "pyjnius/pyjnius-1.3.0.0.tar.gz"
+
+ version('1.3.0.0', sha256='d20845e75a2d18224e661d0e2bc2ce9141f17472e685cd6579847b0a7b5da6ad')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-six@1.7:', type=('build', 'run'))
+ depends_on('py-cython', type=('build', 'run'))
+ depends_on('java', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyjwt/package.py b/var/spack/repos/builtin/packages/py-pyjwt/package.py
index a8006ef623..e8e86ac83f 100644
--- a/var/spack/repos/builtin/packages/py-pyjwt/package.py
+++ b/var/spack/repos/builtin/packages/py-pyjwt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,15 @@ class PyPyjwt(PythonPackage):
"""JSON Web Token implementation in Python"""
homepage = "https://github.com/jpadilla/pyjwt"
- url = "https://pypi.io/packages/source/P/PyJWT/PyJWT-1.7.1.tar.gz"
+ pypi = "PyJWT/PyJWT-1.7.1.tar.gz"
+ version('2.1.0', sha256='fba44e7898bbca160a2b2b501f492824fc8382485d3a6f11ba5d0c1937ce6130')
version('1.7.1', sha256='8d59a976fb773f3e6a39c85636357c4f0e242707394cadadd9814f5cbaa20e96')
variant('crypto', default=False, description='Build with cryptography support')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('python@3.6:', when='@2.1.0:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-cryptography@1.4:', when='+crypto', type=('build', 'run'))
- depends_on('py-pytest@4.0.1:4.99.99', type='test')
- depends_on('py-pytest-cov@2.6.0:2.99.99', type='test')
- depends_on('py-pytest-runner@4.2:4.99', type='test')
+ depends_on('py-cryptography@3.3.1:3.999', when='@2.1.0:+crypto', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyke/package.py b/var/spack/repos/builtin/packages/py-pyke/package.py
index 634e109e20..88629df9d9 100644
--- a/var/spack/repos/builtin/packages/py-pyke/package.py
+++ b/var/spack/repos/builtin/packages/py-pyke/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pykml/package.py b/var/spack/repos/builtin/packages/py-pykml/package.py
index bfa1359ebf..2f389166cf 100644
--- a/var/spack/repos/builtin/packages/py-pykml/package.py
+++ b/var/spack/repos/builtin/packages/py-pykml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,11 +12,9 @@ class PyPykml(PythonPackage):
XML documents.
"""
- homepage = "https://pypi.org/project/pykml/"
- url = "https://pypi.io/packages/source/p/pykml/pykml-0.1.3.tar.gz"
+ pypi = "pykml/pykml-0.1.3.tar.gz"
version('0.1.3', sha256='e1a133e582f0b4652a6b00bac970b446d90580664e5a634a670731c990ff9f05')
depends_on('py-setuptools', type='build')
depends_on('py-lxml@2.2.6:', type=('build', 'run'))
- depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pykwalify/package.py b/var/spack/repos/builtin/packages/py-pykwalify/package.py
index 4439f1d0f4..46c3195640 100644
--- a/var/spack/repos/builtin/packages/py-pykwalify/package.py
+++ b/var/spack/repos/builtin/packages/py-pykwalify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPykwalify(PythonPackage):
"""
homepage = "https://github.com/grokzen/pykwalify"
- url = "https://pypi.io/packages/source/p/pykwalify/pykwalify-1.7.0.tar.gz"
+ pypi = "pykwalify/pykwalify-1.7.0.tar.gz"
version('1.7.0', sha256='7e8b39c5a3a10bc176682b3bd9a7422c39ca247482df198b402e8015defcceb2')
version('1.6.1', sha256='191fd3f457f23c0aa8538c3a5c0249f70eeb1046e88d0eaaef928e09c44dff8d')
diff --git a/var/spack/repos/builtin/packages/py-pyliblzma/package.py b/var/spack/repos/builtin/packages/py-pyliblzma/package.py
index 5630768af5..5533795e52 100644
--- a/var/spack/repos/builtin/packages/py-pyliblzma/package.py
+++ b/var/spack/repos/builtin/packages/py-pyliblzma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyliblzma(PythonPackage):
"""Python bindings for liblzma"""
homepage = "https://launchpad.net/pyliblzma"
- url = "https://pypi.io/packages/source/p/pyliblzma/pyliblzma-0.5.3.tar.bz2"
+ pypi = "pyliblzma/pyliblzma-0.5.3.tar.bz2"
version('0.5.3', sha256='08d762f36d5e59fb9bb0e22e000c300b21f97e35b713321ee504cfb442667957')
diff --git a/var/spack/repos/builtin/packages/py-pylikwid/package.py b/var/spack/repos/builtin/packages/py-pylikwid/package.py
new file mode 100644
index 0000000000..01869732e1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pylikwid/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPylikwid(PythonPackage):
+ """Python interface to the LIKWID tools library with calls for system
+ topology, process/thread affinity, hardware performance monitoring
+ and the manipulation of system features like frequencies and
+ prefetchers."""
+
+ homepage = "https://github.com/RRZE-HPC/pylikwid"
+ pypi = "pylikwid/pylikwid-0.4.0.tar.gz"
+ git = "https://github.com/RRZE-HPC/pylikwid.git"
+
+ maintainers = ['TomTheBear']
+
+ version('0.4.0', sha256='f7894a6d7ebcea7da133ef639599a314f850f55cd6c5ffdd630bb879bd2aa0b8')
+
+ variant('cuda',
+ default=False,
+ description='with Nvidia GPU profiling support')
+
+ depends_on('likwid', when='~cuda')
+ depends_on('likwid+cuda', when='+cuda')
+
+ def setup_build_environment(self, env):
+ env.set('LIKWID_PREFIX', self.spec['likwid'].prefix)
diff --git a/var/spack/repos/builtin/packages/py-pylint/package.py b/var/spack/repos/builtin/packages/py-pylint/package.py
index 23cbfcf93a..3f2ffce12c 100644
--- a/var/spack/repos/builtin/packages/py-pylint/package.py
+++ b/var/spack/repos/builtin/packages/py-pylint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,9 +9,9 @@ from spack import *
class PyPylint(PythonPackage):
"""python code static checker"""
- homepage = "https://pypi.python.org/pypi/pylint"
- url = "https://pypi.io/packages/source/p/pylint/pylint-1.6.5.tar.gz"
+ pypi = "pylint/pylint-1.6.5.tar.gz"
+ version('2.8.2', sha256='586d8fa9b1891f4b725f587ef267abe2a1bad89d6b184520c7f07a253dd6e217')
version('2.3.1', sha256='723e3db49555abaf9bf79dc474c6b9e2935ad82230b10c1138a71ea41ac0fff1')
version('2.3.0', sha256='ee80c7af4f127b2a480d83010c9f0e97beb8eaa652b78c2837d3ed30b12e1182')
version('1.9.4', sha256='ee1e85575587c5b58ddafa25e1c1b01691ef172e139fc25585e5d3f02451da93')
@@ -22,21 +22,26 @@ class PyPylint(PythonPackage):
extends('python', ignore=r'bin/pytest')
depends_on('python@2.7:2.8,3.4:3.6', when='@:1', type=('build', 'run'))
- depends_on('python@3.4:', when='@2:', type=('build', 'run'))
+ depends_on('python@3.4:', when='@2:2.7.999', type=('build', 'run'))
+ depends_on('python@3.6:', when='@2.8.2:', type=('build', 'run'))
depends_on('py-astroid', type=('build', 'run'))
# note there is no working version of astroid for this
depends_on('py-astroid@1.5.1:', type=('build', 'run'), when='@1.7:')
depends_on('py-astroid@1.6:1.9', type=('build', 'run'), when='@1.9.4')
depends_on('py-astroid@2.0:', type=('build', 'run'), when='@2.2.0:')
- depends_on('py-astroid@2.2.0:2.999.999', type=('build', 'run'), when='@2.3.0:')
- depends_on('py-six', type=('build', 'run'), when='@1:')
+ depends_on('py-astroid@2.2.0:2.999.999', type=('build', 'run'), when='@2.3.0:2.7.999')
+ depends_on('py-astroid@2.5.6:2.6.999', type=('build', 'run'), when='@2.8.0:')
+
+ depends_on('py-six', type=('build', 'run'), when='@1:2.3.1')
depends_on('py-isort@4.2.5:', type=('build', 'run'))
- depends_on('py-isort@4.2.5:4.999', when='@2.3.1:', type=('build', 'run'))
+ depends_on('py-isort@4.2.5:5.999', when='@2.3.1:', type=('build', 'run'))
depends_on('py-mccabe', type=('build', 'run'))
depends_on('py-mccabe@0.6.0:0.6.999', when='@2.3.1:', type=('build', 'run'))
depends_on('py-editdistance', type=('build', 'run'), when='@:1.7')
depends_on('py-setuptools@17.1:', type='build')
+ depends_on('py-setuptools-scm', type='build', when='@2.8.2:')
# depends_on('py-setuptools-scm@1.15.0:', type='build')
depends_on('py-configparser', when='^python@:2.8', type=('build', 'run'))
depends_on('py-backports-functools-lru-cache', when='^python@:2.8', type=('build', 'run'))
depends_on('py-singledispatch', when='^python@:3.3.99', type=('build', 'run'))
+ depends_on('py-toml@0.7.1:', type=('build', 'run'), when='@2.8.2:')
diff --git a/var/spack/repos/builtin/packages/py-pylops/package.py b/var/spack/repos/builtin/packages/py-pylops/package.py
new file mode 100644
index 0000000000..0a4092084b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pylops/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPylops(PythonPackage):
+ """Many useful operators, however, do not lend themselves to an explicit
+ matrix representation when used to solve large-scale problems. PyLops operators,
+ on the other hand, still represent a matrix and can be treated in a similar way,
+ but do not rely on the explicit creation of a dense (or sparse) matrix itself.
+ Conversely, the forward and adjoint operators are represented by small pieces of
+ codes that mimic the effect of the matrix on a vector or another matrix."""
+
+ pypi = "pylops/pylops-1.12.0.tar.gz"
+ git = "https://github.com/PyLops/pylops.git"
+
+ maintainers = ['archxlith']
+
+ version('master', branch='master')
+ version('1.12.0', sha256='0e9caef46bbef9691acd133cb9b6d13e19510e8682aaa8f4eb15d9bd9ff9ebb6')
+ version('1.11.1', sha256='87010358b1119ebe1f8a601b2768d16d7bd26d55bd0c91a6e83db763e5715f7c')
+
+ variant('advanced', default=False, description='Install optional libraries')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-numpy@1.15:', type=('build', 'run'))
+ depends_on('py-scipy@1.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-llvmlite', when='+advanced', type=('build', 'run'))
+ depends_on('py-numba', when='+advanced', type=('build', 'run'))
+ depends_on('py-pyfftw', when='+advanced', type=('build', 'run'))
+ depends_on('py-pywavelets', when='+advanced', type=('build', 'run'))
+ depends_on('py-scikit-fmm', when='+advanced', type=('build', 'run'))
+ depends_on('py-spgl1', when='+advanced', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pymatgen/package.py b/var/spack/repos/builtin/packages/py-pymatgen/package.py
index 5da5c1bee3..c0e8710772 100644
--- a/var/spack/repos/builtin/packages/py-pymatgen/package.py
+++ b/var/spack/repos/builtin/packages/py-pymatgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyPymatgen(PythonPackage):
analysis code powering the Materials Project."""
homepage = "http://www.pymatgen.org/"
- url = "https://pypi.io/packages/source/p/pymatgen/pymatgen-4.7.2.tar.gz"
+ pypi = "pymatgen/pymatgen-4.7.2.tar.gz"
version('4.7.2', sha256='e439b78cc3833a03963c3c3efe349d8a0e52a1550c8a05c56a89aa1b86657436')
version('4.6.2', sha256='f34349090c6f604f7d402cb09cd486830b38523639d7160d7fd282d504036a0e')
diff --git a/var/spack/repos/builtin/packages/py-pymc3/package.py b/var/spack/repos/builtin/packages/py-pymc3/package.py
index 5f4fbce9a6..b329f9b78b 100644
--- a/var/spack/repos/builtin/packages/py-pymc3/package.py
+++ b/var/spack/repos/builtin/packages/py-pymc3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyPymc3(PythonPackage):
extensibility make it applicable to a large suite of problems."""
homepage = "http://github.com/pymc-devs/pymc3"
- url = "https://pypi.io/packages/source/p/pymc3/pymc3-3.8.tar.gz"
+ pypi = "pymc3/pymc3-3.8.tar.gz"
version('3.8', sha256='1bb2915e4a29877c681ead13932b0b7d276f7f496e9c3f09ba96b977c99caf00')
diff --git a/var/spack/repos/builtin/packages/py-pymeeus/package.py b/var/spack/repos/builtin/packages/py-pymeeus/package.py
index 7dc522bd51..7fed1f69c2 100644
--- a/var/spack/repos/builtin/packages/py-pymeeus/package.py
+++ b/var/spack/repos/builtin/packages/py-pymeeus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPymeeus(PythonPackage):
"""Library of astronomical algorithms in Python."""
homepage = "https://github.com/architest/pymeeus"
- url = "https://pypi.io/packages/source/P/PyMeeus/PyMeeus-0.3.6.tar.gz"
+ pypi = "PyMeeus/PyMeeus-0.3.6.tar.gz"
version('0.3.6', sha256='1f1ba0682e1b5c6b0cd6432c966e8bc8acc31737ea6f0ae79917a2189a98bb87')
diff --git a/var/spack/repos/builtin/packages/py-pyminifier/package.py b/var/spack/repos/builtin/packages/py-pyminifier/package.py
index edff48c36c..0bd7e0b272 100644
--- a/var/spack/repos/builtin/packages/py-pyminifier/package.py
+++ b/var/spack/repos/builtin/packages/py-pyminifier/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyminifier(PythonPackage):
"""Pyminifier is a Python code minifier, obfuscator, and compressor."""
homepage = "http://liftoff.github.io/pyminifier/"
- url = "https://pypi.io/packages/source/p/pyminifier/pyminifier-2.1.tar.gz"
+ pypi = "pyminifier/pyminifier-2.1.tar.gz"
version('2.1', sha256='e192618fe901830e9298825b32828bc9555ae8649e05af37bfab2db328546777')
diff --git a/var/spack/repos/builtin/packages/py-pymol/package.py b/var/spack/repos/builtin/packages/py-pymol/package.py
index ba0d0e9275..557caf7692 100644
--- a/var/spack/repos/builtin/packages/py-pymol/package.py
+++ b/var/spack/repos/builtin/packages/py-pymol/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pymongo/package.py b/var/spack/repos/builtin/packages/py-pymongo/package.py
index 41e13d305f..5804ffc1be 100644
--- a/var/spack/repos/builtin/packages/py-pymongo/package.py
+++ b/var/spack/repos/builtin/packages/py-pymongo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,8 +15,7 @@ class PyPymongo(PythonPackage):
PyMongo supports MongoDB 2.6, 3.0, 3.2, 3.4, 3.6, 4.0 and 4.2."""
- homepage = "https://pypi.org/project/pymongo/"
- url = "https://pypi.io/packages/source/p/pymongo/pymongo-3.9.0.tar.gz"
+ pypi = "pymongo/pymongo-3.9.0.tar.gz"
version('3.9.0', sha256='4249c6ba45587b959292a727532826c5032d59171f923f7f823788f413c2a5a3')
version('3.6.0', sha256='c6de26d1e171cdc449745b82f1addbc873d105b8e7335097da991c0fc664a4a8')
diff --git a/var/spack/repos/builtin/packages/py-pymorph/package.py b/var/spack/repos/builtin/packages/py-pymorph/package.py
index 5ef91f7f3f..d17509d76a 100644
--- a/var/spack/repos/builtin/packages/py-pymorph/package.py
+++ b/var/spack/repos/builtin/packages/py-pymorph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPymorph(PythonPackage):
"""
homepage = "http://luispedro.org/software/pymorph/"
- url = "https://pypi.io/packages/source/p/pymorph/pymorph-0.96.tar.gz"
+ pypi = "pymorph/pymorph-0.96.tar.gz"
version('0.96', sha256='5dd648e4cb4c3495ee6031bc8020ed8216f3d6cb8c0dcd0427b215b75d7d29ad')
diff --git a/var/spack/repos/builtin/packages/py-pympler/package.py b/var/spack/repos/builtin/packages/py-pympler/package.py
index 0aa7d03986..35c1abca04 100644
--- a/var/spack/repos/builtin/packages/py-pympler/package.py
+++ b/var/spack/repos/builtin/packages/py-pympler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPympler(PythonPackage):
"""
homepage = "https://github.com/pympler/pympler"
- url = "https://pypi.io/packages/source/P/Pympler/Pympler-0.4.3.tar.gz"
+ pypi = "Pympler/Pympler-0.4.3.tar.gz"
version('0.4.3', sha256='430528fff6cde1bae0a305e8df647b158c3cc4930cff122bf228293829ee1e56')
version('0.4.2', sha256='3c3f9d8eb3dddf4f29c433433ea77c9c3f2f0dcc06575c0c2a9d81b2602893b2')
diff --git a/var/spack/repos/builtin/packages/py-pymsgbox/package.py b/var/spack/repos/builtin/packages/py-pymsgbox/package.py
new file mode 100644
index 0000000000..4d067d5c4e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pymsgbox/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPymsgbox(PythonPackage):
+ """A simple, cross-platform, pure Python module for
+ JavaScript-like message boxes."""
+
+ homepage = "https://github.com/asweigart/pymsgbox"
+ pypi = "PyMsgBox/PyMsgBox-1.0.9.tar.gz"
+
+ version('1.0.9', sha256='2194227de8bff7a3d6da541848705a155dcbb2a06ee120d9f280a1d7f51263ff')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pymumps/package.py b/var/spack/repos/builtin/packages/py-pymumps/package.py
new file mode 100644
index 0000000000..4c457f5be8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pymumps/package.py
@@ -0,0 +1,46 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPymumps(PythonPackage):
+ """Python bindings for MUMPS, a parallel sparse direct solver"""
+
+ homepage = "http://github.com/pymumps/pymumps"
+ pypi = "PyMUMPS/PyMUMPS-0.3.2.tar.gz"
+ git = "https://github.com/PyMumps/pymumps.git"
+
+ # Add a list of GitHub accounts to notify when the
+ # package is updated
+ maintainers = ['payerle']
+
+ version('0.3.2', sha256='f290ec4850098f108fb91cb9e7fa07302ebf5076e4329f8e6ea4924de8ba35df')
+
+ depends_on('py-cython', type='build')
+ depends_on('py-setuptools', type='build')
+ depends_on('mumps', type='link')
+ depends_on('py-mpi4py', type=('build', 'run'))
+
+ # Patch to add libmumps_common.so to library dependencies
+ # See https://github.com/PyMumps/pymumps/issues/13
+ patch('py-pymumps.setup.patch')
+
+ phases = ['build_ext', 'install']
+
+ def build_ext_args(self, spec, prefix):
+ # Requires --library-dirs,
+ # '--libraries', spec['mumps'].prefix.libs, does not cut it
+ args = ['--include-dirs',
+ spec['mumps'].prefix.include,
+ '--library-dirs',
+ spec['mumps'].libs.directories[0],
+ '--rpath',
+ spec['mumps'].libs.directories[0],
+ '-l', 'dmumps',
+ '-l', 'mumps_common',
+ '-l', 'pord',
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/py-pymumps/py-pymumps.setup.patch b/var/spack/repos/builtin/packages/py-pymumps/py-pymumps.setup.patch
new file mode 100644
index 0000000000..c4743ae541
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pymumps/py-pymumps.setup.patch
@@ -0,0 +1,15 @@
+# Add mumps_common to library list
+# This is solution proposed in
+# https://github.com/PyMumps/pymumps/issues/13
+diff -Naur spack-src/setup.py spack-src.patched/setup.py
+--- spack-src/setup.py 2018-11-05 16:57:21.000000000 -0500
++++ spack-src.patched/setup.py 2020-10-26 11:23:41.363767947 -0400
+@@ -35,7 +35,7 @@
+ Extension(
+ 'mumps._dmumps',
+ sources=['mumps/_dmumps.pyx'],
+- libraries=['dmumps'],
++ libraries=['dmumps', 'mumps_common'],
+ ),
+ ],
+ install_requires=['mpi4py'],
diff --git a/var/spack/repos/builtin/packages/py-pymysql/package.py b/var/spack/repos/builtin/packages/py-pymysql/package.py
index 96f23fa088..63f5ed2a42 100644
--- a/var/spack/repos/builtin/packages/py-pymysql/package.py
+++ b/var/spack/repos/builtin/packages/py-pymysql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPymysql(PythonPackage):
"""Pure-Python MySQL client library"""
homepage = "https://github.com/PyMySQL/PyMySQL/"
- url = "https://pypi.io/packages/source/p/pymysql/PyMySQL-0.9.2.tar.gz"
+ pypi = "pymysql/PyMySQL-0.9.2.tar.gz"
version('0.9.2', sha256='9ec760cbb251c158c19d6c88c17ca00a8632bac713890e465b2be01fdc30713f')
diff --git a/var/spack/repos/builtin/packages/py-pynacl/package.py b/var/spack/repos/builtin/packages/py-pynacl/package.py
index a428b3756e..5840ac831e 100644
--- a/var/spack/repos/builtin/packages/py-pynacl/package.py
+++ b/var/spack/repos/builtin/packages/py-pynacl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyPynacl(PythonPackage):
"""Python binding to the Networking and Cryptography (NaCl) library."""
homepage = "https://github.com/pyca/pynacl/"
- url = "https://pypi.io/packages/source/P/PyNaCl/PyNaCl-1.4.0.tar.gz"
+ pypi = "PyNaCl/PyNaCl-1.4.0.tar.gz"
version('1.4.0', sha256='54e9a2c849c742006516ad56a88f5c74bf2ce92c9f67435187c3c5953b346505')
@@ -16,3 +16,4 @@ class PyPynacl(PythonPackage):
depends_on('py-setuptools', type='build')
depends_on('py-six', type=('build', 'run'))
depends_on('py-cffi@1.4.1:', type=('build', 'run'))
+ depends_on('py-wheel', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pynio/package.py b/var/spack/repos/builtin/packages/py-pynio/package.py
index 3f24c7165f..2ff4cd7085 100644
--- a/var/spack/repos/builtin/packages/py-pynio/package.py
+++ b/var/spack/repos/builtin/packages/py-pynio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pynn/package.py b/var/spack/repos/builtin/packages/py-pynn/package.py
index 12304f9c9c..4044ddb940 100644
--- a/var/spack/repos/builtin/packages/py-pynn/package.py
+++ b/var/spack/repos/builtin/packages/py-pynn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPynn(PythonPackage):
"""
homepage = "http://neuralensemble.org/PyNN/"
- url = "https://pypi.io/packages/source/P/PyNN/PyNN-0.8.3.tar.gz"
+ pypi = "PyNN/PyNN-0.8.3.tar.gz"
git = "https://github.com/NeuralEnsemble/PyNN.git"
version('0.9.1', sha256='bbc60fea3235427191feb2daa0e2fa07eb1c3946104c068ac8a2a0501263b0b1')
@@ -30,5 +30,3 @@ class PyPynn(PythonPackage):
depends_on('py-neo@0.3:0.4.1', type=('build', 'run'), when="@:0.8.3")
depends_on('py-neo@0.5.0:', type=('build', 'run'), when="@0.9.0:")
-
- depends_on('py-mock@1.0:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pynvml/package.py b/var/spack/repos/builtin/packages/py-pynvml/package.py
new file mode 100644
index 0000000000..a719194ccc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pynvml/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyPynvml(PythonPackage):
+ """Provides a Python interface to GPU management and monitoring
+ functions. This is a wrapper around the NVML library. For
+ information about the NVML library, see the NVML developer page
+ http://developer.nvidia.com/nvidia-management-library-nvml"""
+
+ homepage = "http://www.nvidia.com/"
+ pypi = "pynvml/pynvml-8.0.4.tar.gz"
+
+ version('8.0.4', sha256='c8d4eadc648c7e12a3c9182a9750afd8481b76412f83747bcc01e2aa829cde5d')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('python@3.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyodbc/package.py b/var/spack/repos/builtin/packages/py-pyodbc/package.py
index 68a83caf2c..459968a038 100644
--- a/var/spack/repos/builtin/packages/py-pyodbc/package.py
+++ b/var/spack/repos/builtin/packages/py-pyodbc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPyodbc(PythonPackage):
decimal."""
homepage = "https://github.com/mkleehammer/pyodbc"
- url = "https://pypi.io/packages/source/p/pyodbc/pyodbc-4.0.26.tar.gz"
+ pypi = "pyodbc/pyodbc-4.0.26.tar.gz"
version('4.0.26', sha256='e52700b5d24a846483b5ab80acd9153f8e593999c9184ffea11596288fb33de3')
diff --git a/var/spack/repos/builtin/packages/py-pyomo/package.py b/var/spack/repos/builtin/packages/py-pyomo/package.py
index c56f5b9d77..32cb85b9f3 100644
--- a/var/spack/repos/builtin/packages/py-pyomo/package.py
+++ b/var/spack/repos/builtin/packages/py-pyomo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pyopencl/package.py b/var/spack/repos/builtin/packages/py-pyopencl/package.py
index 78baa07ea5..d73bc1419d 100644
--- a/var/spack/repos/builtin/packages/py-pyopencl/package.py
+++ b/var/spack/repos/builtin/packages/py-pyopencl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPyopencl(PythonPackage):
"""Python wrapper for OpenCL."""
homepage = "https://documen.tician.de/pyopencl/"
- url = "https://pypi.io/packages/source/p/pyopencl/pyopencl-2020.2.2.tar.gz"
+ pypi = "pyopencl/pyopencl-2020.2.2.tar.gz"
maintainers = ['matthiasdiener']
diff --git a/var/spack/repos/builtin/packages/py-pyopenssl/package.py b/var/spack/repos/builtin/packages/py-pyopenssl/package.py
index 70e0c86c72..424d815685 100644
--- a/var/spack/repos/builtin/packages/py-pyopenssl/package.py
+++ b/var/spack/repos/builtin/packages/py-pyopenssl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyPyopenssl(PythonPackage):
drop your pyOpenSSL dependency."""
homepage = "https://pyopenssl.org/"
- url = "https://pypi.io/packages/source/p/pyOpenSSL/pyOpenSSL-19.0.0.tar.gz"
+ pypi = "pyOpenSSL/pyOpenSSL-19.0.0.tar.gz"
version('19.0.0', sha256='aeca66338f6de19d1aa46ed634c3b9ae519a64b458f8468aec688e7e3c20f200')
diff --git a/var/spack/repos/builtin/packages/py-pypar/package.py b/var/spack/repos/builtin/packages/py-pypar/package.py
index b8ead69dbb..3b5658be05 100644
--- a/var/spack/repos/builtin/packages/py-pypar/package.py
+++ b/var/spack/repos/builtin/packages/py-pypar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pyparsing/package.py b/var/spack/repos/builtin/packages/py-pyparsing/package.py
index ea7efac809..e0bdfbd9df 100644
--- a/var/spack/repos/builtin/packages/py-pyparsing/package.py
+++ b/var/spack/repos/builtin/packages/py-pyparsing/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,10 +9,9 @@ from spack import *
class PyPyparsing(PythonPackage):
"""A Python Parsing Module."""
homepage = "http://pyparsing.wikispaces.com/"
- url = "https://pypi.io/packages/source/p/pyparsing/pyparsing-2.4.2.tar.gz"
-
- import_modules = ['pyparsing']
+ pypi = "pyparsing/pyparsing-2.4.2.tar.gz"
+ version('2.4.7', sha256='c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1')
version('2.4.2', sha256='6f98a7b9397e206d78cc01df10131398f1c8b8510a2f4d97d9abd82e1aacdd80')
version('2.4.0', sha256='1873c03321fc118f4e9746baf201ff990ceb915f433f23b395f5580d1840cb2a')
version('2.3.1', sha256='66c9268862641abcac4a96ba74506e594c884e3f57690a696d21ad8210ed667a')
diff --git a/var/spack/repos/builtin/packages/py-pypeflow/package.py b/var/spack/repos/builtin/packages/py-pypeflow/package.py
index 225ad550fa..444767d2de 100644
--- a/var/spack/repos/builtin/packages/py-pypeflow/package.py
+++ b/var/spack/repos/builtin/packages/py-pypeflow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pypeg2/package.py b/var/spack/repos/builtin/packages/py-pypeg2/package.py
index 344f9cd5c1..3b4d77c881 100644
--- a/var/spack/repos/builtin/packages/py-pypeg2/package.py
+++ b/var/spack/repos/builtin/packages/py-pypeg2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPypeg2(PythonPackage):
"""A PEG Parser-Interpreter in Python"""
homepage = "https://fdik.org/pyPEG2/"
- url = "https://pypi.io/packages/source/p/pypeg2/pyPEG2-2.15.2.tar.gz"
+ pypi = "pypeg2/pyPEG2-2.15.2.tar.gz"
version('2.15.2', sha256='2b2d4f80d8e1a9370b2a91f4a25f4abf7f69b85c8da84cd23ec36451958a1f6d')
diff --git a/var/spack/repos/builtin/packages/py-pyperclip/package.py b/var/spack/repos/builtin/packages/py-pyperclip/package.py
index 441f5fca3a..1d0ac973cf 100644
--- a/var/spack/repos/builtin/packages/py-pyperclip/package.py
+++ b/var/spack/repos/builtin/packages/py-pyperclip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyperclip(PythonPackage):
"""A cross-platform clipboard module for Python."""
homepage = "https://github.com/asweigart/pyperclip"
- url = "https://pypi.io/packages/source/p/pyperclip/pyperclip-1.7.0.tar.gz"
+ pypi = "pyperclip/pyperclip-1.7.0.tar.gz"
version('1.7.0', sha256='979325468ccf682104d5dcaf753f869868100631301d3e72f47babdea5700d1c')
diff --git a/var/spack/repos/builtin/packages/py-pyperf/package.py b/var/spack/repos/builtin/packages/py-pyperf/package.py
index 435e1d8255..802742d63a 100644
--- a/var/spack/repos/builtin/packages/py-pyperf/package.py
+++ b/var/spack/repos/builtin/packages/py-pyperf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPyperf(PythonPackage):
analyze benchmarks.
"""
- homepage = "https://pypi.python.org/pypi/pyperf"
+ homepage = "https://github.com/vstinner/pyperf"
url = "https://github.com/vstinner/pyperf/archive/1.5.1.tar.gz"
version('1.6.1', sha256='fbe793f6f2e036ab4dcca105b5c5aa34fd331dd881e7a3e158e5e218c63cfc32')
diff --git a/var/spack/repos/builtin/packages/py-pyprecice/package.py b/var/spack/repos/builtin/packages/py-pyprecice/package.py
index 36cb9957f5..658173067d 100644
--- a/var/spack/repos/builtin/packages/py-pyprecice/package.py
+++ b/var/spack/repos/builtin/packages/py-pyprecice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,10 +15,12 @@ class PyPyprecice(PythonPackage):
homepage = "https://www.precice.org"
git = "https://github.com/precice/python-bindings.git"
url = "https://github.com/precice/python-bindings/archive/v2.0.0.1.tar.gz"
- maintainers = ["ajaust", "BenjaminRueth"]
+ maintainers = ["ajaust", "BenjaminRodenberg"]
# Always prefer final version of release candidate
version("develop", branch="develop")
+ version('2.2.0.1', sha256='032fa58193cfa69e3be37557977056e8f507d89b40c490a351d17271269b25ad')
+ version('2.1.1.2', sha256='363eb3eeccf964fd5ee87012c1032353dd1518662868f2b51f04a6d8a7154045')
version("2.1.1.1", sha256="972f574549344b6155a8dd415b6d82512e00fa154ca25ae7e36b68d4d2ed2cf4")
version("2.1.0.1", sha256="ac5cb7412c6b96b08a04fa86ea38e52d91ea739a3bd1c209baa93a8275e4e01a")
version("2.0.2.1", sha256="c6fca26332316de041f559aecbf23122a85d6348baa5d3252be4ddcd5e94c09a")
@@ -26,14 +28,13 @@ class PyPyprecice(PythonPackage):
version("2.0.0.2", sha256="5f055d809d65ec2e81f4d001812a250f50418de59990b47d6bcb12b88da5f5d7")
version("2.0.0.1", sha256="96eafdf421ec61ad6fcf0ab1d3cf210831a815272984c470b2aea57d4d0c9e0e")
- # Import module as a test
- import_modules = ["precice"]
+ # Older versions of the bindings checked versions via pip. This patch
+ # removes the pip dependency.
+ # See also https://github.com/spack/spack/pull/19558
+ patch("deactivate-version-check-via-pip.patch", when="@:2.1.1.1")
- patch("deactivate-version-check-via-pip.patch")
-
- variant("mpi", default=True, description="Enables MPI support")
-
- depends_on("mpi", when="+mpi")
+ depends_on("precice@develop", when="@develop")
+ depends_on("precice@2.2.0", when="@2.2.0.1:2.2.0.99")
depends_on("precice@2.1.1", when="@2.1.1.1:2.1.1.99")
depends_on("precice@2.1.0", when="@2.1.0.1:2.1.0.99")
depends_on("precice@2.0.2", when="@2.0.2.1:2.0.2.99")
@@ -42,12 +43,11 @@ class PyPyprecice(PythonPackage):
depends_on("python@3:", type=("build", "run"))
depends_on("py-setuptools", type="build")
- depends_on("py-wheel", type="build")
depends_on("py-numpy", type=("build", "run"))
- depends_on("py-mpi4py", type=("build", "run"), when="+mpi")
+ depends_on("py-mpi4py", type=("build", "run"))
depends_on("py-cython@0.29:", type=("build"))
- phases = ['build_ext', 'install']
+ phases = ['install_lib', 'build_ext', 'install']
def build_ext_args(self, spec, prefix):
return [
@@ -56,4 +56,7 @@ class PyPyprecice(PythonPackage):
]
def install(self, spec, prefix):
- self.setup_py("install", "--prefix={0}".format(prefix))
+ # Older versions of the bindings had a non-standard installation routine
+ # See also https://github.com/spack/spack/pull/19558#discussion_r513123239
+ if self.version <= Version("2.1.1.1"):
+ self.setup_py("install", "--prefix={0}".format(prefix))
diff --git a/var/spack/repos/builtin/packages/py-pyprof2html/package.py b/var/spack/repos/builtin/packages/py-pyprof2html/package.py
index 1ed3728834..df3585369d 100644
--- a/var/spack/repos/builtin/packages/py-pyprof2html/package.py
+++ b/var/spack/repos/builtin/packages/py-pyprof2html/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPyprof2html(PythonPackage):
"""Python cProfile and hotshot profile's data to HTML Converter"""
- homepage = "https://pypi.python.org/pypi/pyprof2html/"
- url = "https://pypi.io/packages/source/p/pyprof2html/pyprof2html-0.3.1.tar.gz"
+ pypi = "pyprof2html/pyprof2html-0.3.1.tar.gz"
version('0.3.1', sha256='db2d37e21d8c76f2fd25fb1ba9273c9b3ff4a98a327e37d943fed1ea225a6720')
diff --git a/var/spack/repos/builtin/packages/py-pyproj/package.py b/var/spack/repos/builtin/packages/py-pyproj/package.py
index dfc0edf924..c7f00b4fc7 100644
--- a/var/spack/repos/builtin/packages/py-pyproj/package.py
+++ b/var/spack/repos/builtin/packages/py-pyproj/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,10 @@ class PyPyproj(PythonPackage):
"""Python interface to the PROJ.4 Library."""
homepage = "https://github.com/pyproj4/pyproj"
- url = "https://pypi.io/packages/source/p/pyproj/pyproj-2.2.0.tar.gz"
+ pypi = "pyproj/pyproj-2.2.0.tar.gz"
git = "https://github.com/pyproj4/pyproj.git"
maintainers = ['citibeth', 'adamjstewart']
- import_modules = ['pyproj']
version('2.6.0', sha256='977542d2f8cf2981cf3ad72cedfebcd6ac56977c7aa830d9b49fa7888b56e83d')
version('2.2.0', sha256='0a4f793cc93539c2292638c498e24422a2ec4b25cb47545addea07724b2a56e5')
diff --git a/var/spack/repos/builtin/packages/py-pyqi/package.py b/var/spack/repos/builtin/packages/py-pyqi/package.py
index 9cca0d591b..dfd1c0e613 100644
--- a/var/spack/repos/builtin/packages/py-pyqi/package.py
+++ b/var/spack/repos/builtin/packages/py-pyqi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPyqi(PythonPackage):
including at the command line, HTML, and API levels."""
homepage = "https://pyqi.readthedocs.io"
- url = "https://pypi.io/packages/source/p/pyqi/pyqi-0.3.2.tar.gz"
+ pypi = "pyqi/pyqi-0.3.2.tar.gz"
version('0.3.2', sha256='8f1711835779704e085e62194833fed9ac2985e398b4ceac6faf6c7f40f5d15f')
diff --git a/var/spack/repos/builtin/packages/py-pyqt4/package.py b/var/spack/repos/builtin/packages/py-pyqt4/package.py
index 5405911401..73a72efcb8 100644
--- a/var/spack/repos/builtin/packages/py-pyqt4/package.py
+++ b/var/spack/repos/builtin/packages/py-pyqt4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,13 +16,6 @@ class PyPyqt4(SIPPackage):
url = "http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.12.3/PyQt4_gpl_x11-4.12.3.tar.gz"
sip_module = 'PyQt4.sip'
- import_modules = [
- 'PyQt4', 'PyQt4.Qt', 'PyQt4.QtCore', 'PyQt4.QtDeclarative',
- 'PyQt4.QtDesigner', 'PyQt4.QtGui', 'PyQt4.QtHelp',
- 'PyQt4.QtMultimedia', 'PyQt4.QtNetwork', 'PyQt4.QtOpenGL',
- 'PyQt4.QtScript', 'PyQt4.QtScriptTools', 'PyQt4.QtSql', 'PyQt4.QtSvg',
- 'PyQt4.QtTest', 'PyQt4.QtWebKit', 'PyQt4.QtXml', 'PyQt4.QtXmlPatterns'
- ]
version('4.12.3', sha256='a00f5abef240a7b5852b7924fa5fdf5174569525dc076cd368a566619e56d472')
version('4.11.3', sha256='853780dcdbe2e6ba785d703d059b096e1fc49369d3e8d41a060be874b8745686',
diff --git a/var/spack/repos/builtin/packages/py-pyqt5/package.py b/var/spack/repos/builtin/packages/py-pyqt5/package.py
index e26c66a891..86493358e9 100644
--- a/var/spack/repos/builtin/packages/py-pyqt5/package.py
+++ b/var/spack/repos/builtin/packages/py-pyqt5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,14 +16,6 @@ class PyPyqt5(SIPPackage):
list_url = "https://www.riverbankcomputing.com/software/pyqt/download5"
sip_module = 'PyQt5.sip'
- import_modules = [
- 'PyQt5', 'PyQt5.QtCore', 'PyQt5.QtGui', 'PyQt5.QtHelp',
- 'PyQt5.QtMultimedia', 'PyQt5.QtMultimediaWidgets', 'PyQt5.QtNetwork',
- 'PyQt5.QtOpenGL', 'PyQt5.QtPrintSupport', 'PyQt5.QtQml',
- 'PyQt5.QtQuick', 'PyQt5.QtSvg', 'PyQt5.QtTest', 'PyQt5.QtWebChannel',
- 'PyQt5.QtWebSockets', 'PyQt5.QtWidgets', 'PyQt5.QtXml',
- 'PyQt5.QtXmlPatterns'
- ]
version('5.13.1', sha256='54b7f456341b89eeb3930e786837762ea67f235e886512496c4152ebe106d4af')
version('5.13.0', sha256='0cdbffe5135926527b61cc3692dd301cd0328dd87eeaf1313e610787c46faff9')
diff --git a/var/spack/repos/builtin/packages/py-pyquaternion/package.py b/var/spack/repos/builtin/packages/py-pyquaternion/package.py
index 82dc26d796..399f7ad994 100644
--- a/var/spack/repos/builtin/packages/py-pyquaternion/package.py
+++ b/var/spack/repos/builtin/packages/py-pyquaternion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPyquaternion(PythonPackage):
"""Python morphology manipulation toolkit"""
homepage = "https://kieranwynn.github.io/pyquaternion/"
- url = "https://pypi.org/packages/source/p/pyquaternion/pyquaternion-0.9.5.tar.gz"
+ pypi = "pyquaternion/pyquaternion-0.9.5.tar.gz"
version('0.9.5', sha256='2d89d19259d62a8fbd25219eee7dacc1f6bb570becb70e1e883f622597c7d81d')
diff --git a/var/spack/repos/builtin/packages/py-pyrad/package.py b/var/spack/repos/builtin/packages/py-pyrad/package.py
index cb16b4296d..758699b0aa 100644
--- a/var/spack/repos/builtin/packages/py-pyrad/package.py
+++ b/var/spack/repos/builtin/packages/py-pyrad/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pyrect/package.py b/var/spack/repos/builtin/packages/py-pyrect/package.py
new file mode 100644
index 0000000000..e77adbb17b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyrect/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPyrect(PythonPackage):
+ """PyRect is a simple module with a Rect class for
+ Pygame-like rectangular areas."""
+
+ homepage = "https://github.com/asweigart/pyrect"
+ pypi = "PyRect/PyRect-0.1.4.tar.gz"
+
+ version('0.1.4', sha256='3b2fa7353ce32a11aa6b0a15495968d2a763423c8947ae248b92c037def4e202')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pyrosar/package.py b/var/spack/repos/builtin/packages/py-pyrosar/package.py
index b0af64b270..5c82d856dc 100644
--- a/var/spack/repos/builtin/packages/py-pyrosar/package.py
+++ b/var/spack/repos/builtin/packages/py-pyrosar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pyrsistent/package.py b/var/spack/repos/builtin/packages/py-pyrsistent/package.py
index 0a1baafdd8..72708b8fab 100644
--- a/var/spack/repos/builtin/packages/py-pyrsistent/package.py
+++ b/var/spack/repos/builtin/packages/py-pyrsistent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPyrsistent(PythonPackage):
Persistent in the sense that they are immutable."""
homepage = "http://github.com/tobgu/pyrsistent/"
- url = "https://pypi.io/packages/source/p/pyrsistent/pyrsistent-0.15.7.tar.gz"
+ pypi = "pyrsistent/pyrsistent-0.15.7.tar.gz"
version('0.15.7', sha256='cdc7b5e3ed77bed61270a47d35434a30617b9becdf2478af76ad2c6ade307280')
diff --git a/var/spack/repos/builtin/packages/py-pysam/package.py b/var/spack/repos/builtin/packages/py-pysam/package.py
index 5459ef0a16..a11b6fd5e7 100644
--- a/var/spack/repos/builtin/packages/py-pysam/package.py
+++ b/var/spack/repos/builtin/packages/py-pysam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,10 @@ class PyPysam(PythonPackage):
"""A python module for reading, manipulating and writing genomic data
sets."""
- homepage = "https://pypi.python.org/pypi/pysam"
+ homepage = "https://github.com/pysam-developers/pysam"
url = "https://github.com/pysam-developers/pysam/archive/v0.14.1.tar.gz"
+ version('0.15.3', sha256='f553d48d0345404b6b103d0b82bad09c8d78420e1cc6bef33040553fc579e284')
version('0.15.2', sha256='8cb3dd70f0d825086ac059ec2445ebd2ec5f14af73e7f1f4bd358966aaee5ed3')
version('0.15.1', sha256='12221285af17e32b8f3fed033f90c6177a798afe41420eb5c3352d4e18ee12ed')
version('0.14.1', sha256='d2bb40cd083c1357768e4683377f03471d160cfe8421136630bfa47f5adb3219')
diff --git a/var/spack/repos/builtin/packages/py-pyscaf/package.py b/var/spack/repos/builtin/packages/py-pyscaf/package.py
index 53a9adfc56..7bcff058f4 100644
--- a/var/spack/repos/builtin/packages/py-pyscaf/package.py
+++ b/var/spack/repos/builtin/packages/py-pyscaf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyPyscaf(PythonPackage):
"""pyScaf orders contigs from genome assemblies utilising several types of
information"""
- homepage = "https://pypi.python.org/pypi/pyScaf"
- url = "https://pypi.io/packages/source/p/pyScaf/pyScaf-0.12a4.tar.gz"
+ pypi = "pyScaf/pyScaf-0.12a4.tar.gz"
version('0.12a4', sha256='3ce3f6fe80bd058831b6a38a56d464ef10f3ebbdd6bc3dcb0d7f127c0b2c1b36')
diff --git a/var/spack/repos/builtin/packages/py-pyscf/package.py b/var/spack/repos/builtin/packages/py-pyscf/package.py
index d0c36d5a79..0afc825828 100644
--- a/var/spack/repos/builtin/packages/py-pyscf/package.py
+++ b/var/spack/repos/builtin/packages/py-pyscf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class PyPyscf(PythonPackage):
maintainers = ['naromero77']
+ version('1.7.5', tag='v1.7.5')
version('1.7.3', tag='v1.7.3')
# dependencies
@@ -27,7 +28,8 @@ class PyPyscf(PythonPackage):
depends_on('blas')
depends_on('libcint+coulomb_erf+f12')
depends_on('libxc')
- depends_on('xcfun@:2.0.0a2') # PySCF does not support recent version of the xcfun API'
+ depends_on('xcfun')
+ depends_on('xcfun@2.0.0a2', when='@:1.7.4')
def setup_build_environment(self, env):
# Tell PSCF where supporting libraries are located."
@@ -36,6 +38,7 @@ class PyPyscf(PythonPackage):
pyscf_search_dir = []
pyscf_search_dir.append(spec['blas'].prefix)
pyscf_search_dir.append(spec['libcint'].prefix)
+ pyscf_search_dir.append(spec['libcint'].prefix.lib64)
pyscf_search_dir.append(spec['libxc'].prefix)
pyscf_search_dir.append(spec['xcfun'].prefix)
pyscf_search_dir.append(spec['xcfun'].prefix.include.XCFun)
diff --git a/var/spack/repos/builtin/packages/py-pyserial/package.py b/var/spack/repos/builtin/packages/py-pyserial/package.py
index 07534b8c6b..43fe374209 100644
--- a/var/spack/repos/builtin/packages/py-pyserial/package.py
+++ b/var/spack/repos/builtin/packages/py-pyserial/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyserial(PythonPackage):
"""Python Serial Port Extension"""
homepage = "https://github.com/pyserial/pyserial"
- url = "https://pypi.io/packages/source/p/pyserial/pyserial-3.1.1.tar.gz"
+ pypi = "pyserial/pyserial-3.1.1.tar.gz"
version('3.1.1', sha256='d657051249ce3cbd0446bcfb2be07a435e1029da4d63f53ed9b4cdde7373364c')
diff --git a/var/spack/repos/builtin/packages/py-pyshp/package.py b/var/spack/repos/builtin/packages/py-pyshp/package.py
index 1c0ff61d21..3ffaaeadd6 100644
--- a/var/spack/repos/builtin/packages/py-pyshp/package.py
+++ b/var/spack/repos/builtin/packages/py-pyshp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPyshp(PythonPackage):
pure Python."""
homepage = "https://github.com/GeospatialPython/pyshp"
- url = "https://pypi.io/packages/source/p/pyshp/pyshp-1.2.12.tar.gz"
+ pypi = "pyshp/pyshp-1.2.12.tar.gz"
version('2.1.0', sha256='e65c7f24d372b97d0920b864bbeb78322bb37b83f2606e2a2212631d5d51e5c0')
version('1.2.12', sha256='8dcd65e0aa2aa2951527ddb7339ea6e69023543d8a20a73fc51e2829b9ed6179')
diff --git a/var/spack/repos/builtin/packages/py-pyside/package.py b/var/spack/repos/builtin/packages/py-pyside/package.py
index f6c86506c1..52c1dcdcaf 100644
--- a/var/spack/repos/builtin/packages/py-pyside/package.py
+++ b/var/spack/repos/builtin/packages/py-pyside/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ import os
class PyPyside(PythonPackage):
"""Python bindings for Qt."""
- homepage = "https://pypi.python.org/pypi/pyside"
- url = "https://pypi.io/packages/source/P/PySide/PySide-1.2.2.tar.gz"
+ pypi = "PySide/PySide-1.2.2.tar.gz"
# More recent versions of PySide2 (for Qt5) have been taken under
# the offical Qt umbrella. For more information, see:
diff --git a/var/spack/repos/builtin/packages/py-pyside2/package.py b/var/spack/repos/builtin/packages/py-pyside2/package.py
index fa70f45b0b..f6d17bf8aa 100644
--- a/var/spack/repos/builtin/packages/py-pyside2/package.py
+++ b/var/spack/repos/builtin/packages/py-pyside2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,8 +8,8 @@ from spack import *
class PyPyside2(PythonPackage):
"""Python bindings for Qt."""
- homepage = "https://pypi.org/project/PySide2/"
- url = "https://code.qt.io/pyside/pyside-setup.git"
+
+ homepage = "https://www.pyside.org/"
git = "https://code.qt.io/pyside/pyside-setup.git"
# More recent versions of PySide2 (for Qt5) have been taken under
diff --git a/var/spack/repos/builtin/packages/py-pysmartdl/package.py b/var/spack/repos/builtin/packages/py-pysmartdl/package.py
index 16ba79f983..0508546226 100644
--- a/var/spack/repos/builtin/packages/py-pysmartdl/package.py
+++ b/var/spack/repos/builtin/packages/py-pysmartdl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPysmartdl(PythonPackage):
"""A Smart Download Manager for Python."""
- homepage = "https://pypi.python.org/pypi/pySmartDL/"
- url = "https://pypi.io/packages/source/p/pySmartDL/pySmartDL-1.3.2.tar.gz"
+ pypi = "pySmartDL/pySmartDL-1.3.2.tar.gz"
version('1.3.2', sha256='9a96deb3ee4f4ab2279b22eb908d506f57215e1fbad290d540adcebff187a52c')
version('1.2.5', sha256='d3968ce59412f99d8e17ca532a1d949d2aa770a914e3f5eb2c0385579dc2b6b8')
diff --git a/var/spack/repos/builtin/packages/py-pysocks/package.py b/var/spack/repos/builtin/packages/py-pysocks/package.py
index 200902f536..80866b0215 100644
--- a/var/spack/repos/builtin/packages/py-pysocks/package.py
+++ b/var/spack/repos/builtin/packages/py-pysocks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPysocks(PythonPackage):
"""A Python SOCKS client module."""
homepage = "https://github.com/Anorov/PySocks"
- url = "https://pypi.io/packages/source/P/PySocks/PySocks-1.7.1.tar.gz"
+ pypi = "PySocks/PySocks-1.7.1.tar.gz"
version('1.7.1', sha256='3f8804571ebe159c380ac6de37643bb4685970655d3bba243530d6558b799aa0')
version('1.6.6', sha256='02419a225ff5dcfc3c9695ef8fc9b4d8cc99658e650c6d4718d4c8f451e63f41')
@@ -18,5 +18,3 @@ class PyPysocks(PythonPackage):
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-psutil', type='test')
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pysolar/package.py b/var/spack/repos/builtin/packages/py-pysolar/package.py
index 54edb7fd87..8208908e14 100644
--- a/var/spack/repos/builtin/packages/py-pysolar/package.py
+++ b/var/spack/repos/builtin/packages/py-pysolar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPysolar(PythonPackage):
for extremely precise ephemeris calculations, and more."""
homepage = "http://pysolar.readthedocs.io"
- url = "https://pypi.io/packages/source/p/pysolar/pysolar-0.8.tar.gz"
+ pypi = "pysolar/pysolar-0.8.tar.gz"
version('0.8', sha256='548c05177acd2845143d9624e670635cd3e5c3a63782449ca35e090ca755c617')
diff --git a/var/spack/repos/builtin/packages/py-pyspark/package.py b/var/spack/repos/builtin/packages/py-pyspark/package.py
index 8b25e54c4b..1dfb3204c1 100644
--- a/var/spack/repos/builtin/packages/py-pyspark/package.py
+++ b/var/spack/repos/builtin/packages/py-pyspark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,15 @@ class PyPyspark(PythonPackage):
"""Python bindings for Apache Spark"""
homepage = "http://spark.apache.org"
- url = "https://pypi.io/packages/source/p/pyspark/pyspark-2.3.0.tar.gz"
+ pypi = "pyspark/pyspark-3.0.1.tar.gz"
+ version('3.0.1', sha256='38b485d3634a86c9a2923c39c8f08f003fdd0e0a3d7f07114b2fb4392ce60479')
version('2.4.4', sha256='13655eb113b8cf5f3f85b24fd92f86c4668a723723bd68949d028fa0df2cf694')
version('2.3.0', sha256='0b3536910e154c36a94239f0ba0a201f476aadc72006409e5787198ffd01986e')
+ depends_on('python@2.7:3.7', when='@:2.999', type=('build', 'run'))
+ depends_on('python@2.7:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-py4j', type=('build', 'run'))
+ depends_on('py-py4j@0.10.9', when='@3.0.1', type=('build', 'run'))
+ depends_on('py-py4j@0.10.7', when='@2.4.4', type=('build', 'run'))
+ depends_on('py-py4j@0.10.6', when='@2.3.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pysqlite/package.py b/var/spack/repos/builtin/packages/py-pysqlite/package.py
index a624f47dd6..ea470f7350 100644
--- a/var/spack/repos/builtin/packages/py-pysqlite/package.py
+++ b/var/spack/repos/builtin/packages/py-pysqlite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPysqlite(PythonPackage):
"""Python DB-API module for SQLite 3."""
homepage = "https://github.com/ghaering/pysqlite"
- url = "https://pypi.io/packages/source/p/pysqlite/pysqlite-2.8.3.tar.gz"
+ pypi = "pysqlite/pysqlite-2.8.3.tar.gz"
version('2.8.3', sha256='17d3335863e8cf8392eea71add33dab3f96d060666fe68ab7382469d307f4490')
diff --git a/var/spack/repos/builtin/packages/py-pytailf/package.py b/var/spack/repos/builtin/packages/py-pytailf/package.py
index 0b08866c12..a5bcdbe68f 100644
--- a/var/spack/repos/builtin/packages/py-pytailf/package.py
+++ b/var/spack/repos/builtin/packages/py-pytailf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytailf(PythonPackage):
"""Simple python tail -f wrapper"""
homepage = "https://bitbucket.org/angry_elf/pytailf/src/default/"
- url = "https://pypi.io/packages/source/p/pytailf/pytailf-1.1.tar.bz2"
+ pypi = "pytailf/pytailf-1.1.tar.bz2"
version('1.1', sha256='d97135ef28ac4a51dfd98887131ce2bffd5d0d6ba757793a4b79740dfb067ace')
diff --git a/var/spack/repos/builtin/packages/py-pytest-arraydiff/package.py b/var/spack/repos/builtin/packages/py-pytest-arraydiff/package.py
new file mode 100644
index 0000000000..3dba597714
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-arraydiff/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPytestArraydiff(PythonPackage):
+ """pytest plugin to help with comparing array output from tests"""
+
+ homepage = "https://github.com/astropy/pytest-arraydiff"
+ pypi = "pytest-arraydiff/pytest-arraydiff-0.3.tar.gz"
+
+ version('0.3', sha256='de2d62f53ecc107ed754d70d562adfa7573677a263216a7f19aa332f20dc6c15')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-pytest', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-benchmark/package.py b/var/spack/repos/builtin/packages/py-pytest-benchmark/package.py
new file mode 100644
index 0000000000..80c0b0c70d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-benchmark/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPytestBenchmark(PythonPackage):
+ """A pytest fixture for benchmarking code."""
+
+ homepage = "https://github.com/ionelmc/pytest-benchmark"
+ pypi = "pytest-benchmark/pytest-benchmark-3.2.3.tar.gz"
+
+ version('3.2.3', sha256='ad4314d093a3089701b24c80a05121994c7765ce373478c8f4ba8d23c9ba9528')
+
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pytest@3.8:', type=('build', 'run'))
+ depends_on('py-py-cpuinfo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-cache/package.py b/var/spack/repos/builtin/packages/py-pytest-cache/package.py
index c74cd44384..b844f356bc 100644
--- a/var/spack/repos/builtin/packages/py-pytest-cache/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-cache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPytestCache(PythonPackage):
"""
homepage = "https://bitbucket.org/hpk42/pytest-cache/src/default/"
- url = "https://pypi.io/packages/source/p/pytest-cache/pytest-cache-1.0.tar.gz"
+ pypi = "pytest-cache/pytest-cache-1.0.tar.gz"
version('1.0', sha256='be7468edd4d3d83f1e844959fd6e3fd28e77a481440a7118d430130ea31b07a9')
diff --git a/var/spack/repos/builtin/packages/py-pytest-check-links/package.py b/var/spack/repos/builtin/packages/py-pytest-check-links/package.py
index 49269ce1f2..64688b7e19 100644
--- a/var/spack/repos/builtin/packages/py-pytest-check-links/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-check-links/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPytestCheckLinks(PythonPackage):
"""pytest plugin that checks URLs for HTML-containing files."""
homepage = "https://github.com/jupyterlab/pytest-check-links"
- url = "https://pypi.io/packages/source/p/pytest-check-links/pytest_check_links-0.3.4.tar.gz"
+ pypi = "pytest-check-links/pytest_check_links-0.3.4.tar.gz"
version('0.3.4', sha256='4b3216548431bf9796557e8ee8fd8e5e77a69a4690b3b2f9bcf6fb5af16a502b')
diff --git a/var/spack/repos/builtin/packages/py-pytest-cov/package.py b/var/spack/repos/builtin/packages/py-pytest-cov/package.py
index 154547cda9..d0cd2f2fe3 100644
--- a/var/spack/repos/builtin/packages/py-pytest-cov/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-cov/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytestCov(PythonPackage):
"""Pytest plugin for measuring coverage."""
homepage = "https://github.com/pytest-dev/pytest-cov"
- url = "https://pypi.io/packages/source/p/pytest-cov/pytest-cov-2.8.1.tar.gz"
+ pypi = "pytest-cov/pytest-cov-2.8.1.tar.gz"
version('2.8.1', sha256='cc6742d8bac45070217169f5f72ceee1e0e55b0221f54bcf24845972d3a47f2b')
version('2.3.1', sha256='fa0a212283cdf52e2eecc24dd6459bb7687cc29adb60cb84258fab73be8dda0f')
diff --git a/var/spack/repos/builtin/packages/py-pytest-cpp/package.py b/var/spack/repos/builtin/packages/py-pytest-cpp/package.py
new file mode 100644
index 0000000000..78bf707499
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-cpp/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPytestCpp(PythonPackage):
+ """Use pytest runner to discover and execute C++ tests."""
+
+ homepage = "https://github.com/pytest-dev/pytest-cpp"
+ pypi = "pytest-cpp/pytest-cpp-1.4.0.tar.gz"
+
+ version('1.5.0', sha256='efb7eaac30f9f61515be181d04b70d80d60ce8871426f726ef1844e2db4f3353')
+ version('1.4.0', sha256='aa3a04fe7906e50094d1a9b8d38bc10eb59d0a8330a11a0f7a660405228b48ca')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-pytest@:5.3.999,5.4.2:', type=('build', 'run'))
+ depends_on('py-colorama', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-doctestplus/package.py b/var/spack/repos/builtin/packages/py-pytest-doctestplus/package.py
new file mode 100644
index 0000000000..bab8fabb89
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-doctestplus/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPytestDoctestplus(PythonPackage):
+ """Pytest plugin with advanced doctest features."""
+
+ homepage = "https://www.astropy.org/"
+ pypi = "pytest-doctestplus/pytest-doctestplus-0.8.0.tar.gz"
+
+ version('0.9.0', sha256='6fe747418461d7b202824a3486ba8f4fa17a9bd0b1eddc743ba1d6d87f03391a')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools@30.3.0:', type=('build', 'run'))
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-pytest@4.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-flake8/package.py b/var/spack/repos/builtin/packages/py-pytest-flake8/package.py
index 108196f7cc..6c3ea2498d 100644
--- a/var/spack/repos/builtin/packages/py-pytest-flake8/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-flake8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytestFlake8(PythonPackage):
"""pytest plugin to check FLAKE8 requirements."""
homepage = "https://github.com/tholo/pytest-flake8"
- url = "https://pypi.io/packages/source/p/pytest-flake8/pytest-flake8-0.8.1.tar.gz"
+ pypi = "pytest-flake8/pytest-flake8-0.8.1.tar.gz"
version('0.8.1', sha256='aa10a6db147485d71dad391d4149388904c3072194d51755f64784ff128845fd')
diff --git a/var/spack/repos/builtin/packages/py-pytest-flakes/package.py b/var/spack/repos/builtin/packages/py-pytest-flakes/package.py
new file mode 100644
index 0000000000..47bfb13ebd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-flakes/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPytestFlakes(PythonPackage):
+ """py.test plugin for efficiently checking python source with pyflakes."""
+
+ homepage = "https://github.com/asmeurer/pytest-flakes"
+ pypi = "pytest-flakes/pytest-flakes-4.0.2.tar.gz"
+
+ version('4.0.3', sha256='bf070c5485dad82d5b5f5d0eb08d269737e378492d9a68f5223b0a90924c7754')
+ version('4.0.2', sha256='6733db47937d9689032876359e5ee0ee6926e3638546c09220e2f86b3581d4c1')
+
+ depends_on('python@3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pytest@5:', type=('build', 'run'))
+ depends_on('py-pyflakes', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-forked/package.py b/var/spack/repos/builtin/packages/py-pytest-forked/package.py
index 9fe5556428..879d1d3e1d 100644
--- a/var/spack/repos/builtin/packages/py-pytest-forked/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-forked/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytestForked(PythonPackage):
"""Run tests in isolated forked subprocesses."""
homepage = "https://github.com/pytest-dev/pytest-forked"
- url = "https://pypi.io/packages/source/p/pytest-forked/pytest-forked-1.1.1.tar.gz"
+ pypi = "pytest-forked/pytest-forked-1.1.1.tar.gz"
version('1.1.1', sha256='e2d46f319c8063a3a0536b18f9cdea6eea3bc9fe2cb16c94e1d6fad3abc37300')
diff --git a/var/spack/repos/builtin/packages/py-pytest-html/package.py b/var/spack/repos/builtin/packages/py-pytest-html/package.py
new file mode 100644
index 0000000000..bf914ce223
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-html/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPytestHtml(PythonPackage):
+ """pytest-html is a plugin for pytest that generates
+ a HTML report for test results
+ """
+
+ homepage = "https://github.com/pytest-dev/pytest-html"
+ pypi = "pytest-html/pytest-html-3.1.1.tar.gz"
+
+ version('3.1.1', sha256='3ee1cf319c913d19fe53aeb0bc400e7b0bc2dbeb477553733db1dad12eb75ee3')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-pytest@5.0:5.999,6.0.1:', type=('build', 'run'))
+ depends_on('py-pytest-metadata', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-httpbin/package.py b/var/spack/repos/builtin/packages/py-pytest-httpbin/package.py
index 5e270bf4df..80c0c68946 100644
--- a/var/spack/repos/builtin/packages/py-pytest-httpbin/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-httpbin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytestHttpbin(PythonPackage):
"""Easily test your HTTP library against a local copy of httpbin"""
homepage = "https://github.com/kevin1024/pytest-httpbin"
- url = "https://pypi.io/packages/source/p/pytest-httpbin/pytest-httpbin-1.0.0.tar.gz"
+ pypi = "pytest-httpbin/pytest-httpbin-1.0.0.tar.gz"
version('1.0.0', sha256='d8ce547f42423026550ed7765f6c6d50c033b43025e8592270a7abf970e19b72')
version('0.2.3', sha256='c5b698dfa474ffc9caebcb35e34346b753eb226aea5c2e1b69fefedbcf161bf8')
@@ -23,4 +23,3 @@ class PyPytestHttpbin(PythonPackage):
depends_on('py-decorator', when='@:0.2', type=('build', 'run'))
depends_on('py-httpbin', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pytest-isort/package.py b/var/spack/repos/builtin/packages/py-pytest-isort/package.py
index d55b9550e2..e51634f8bf 100644
--- a/var/spack/repos/builtin/packages/py-pytest-isort/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-isort/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyPytestIsort(PythonPackage):
"""py.test plugin to check import ordering using isort"""
homepage = "http://github.com/moccu/pytest-isort/"
- url = "https://pypi.io/packages/source/p/pytest-isort/pytest-isort-0.3.1.tar.gz"
- import_modules = ['pytest_isort']
+ pypi = "pytest-isort/pytest-isort-0.3.1.tar.gz"
version('0.3.1', sha256='4bfee60dad1870b51700d55a85f5ceda766bd9d3d2878c1bbabee80e61b1be1a')
diff --git a/var/spack/repos/builtin/packages/py-pytest-metadata/package.py b/var/spack/repos/builtin/packages/py-pytest-metadata/package.py
new file mode 100644
index 0000000000..03e7ab92cf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-metadata/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPytestMetadata(PythonPackage):
+ """pytest plugin for test session metadata"""
+
+ homepage = "https://github.com/pytest-dev/pytest-metadata"
+ pypi = "pytest-metadata/pytest-metadata-1.11.0.tar.gz"
+
+ version('1.11.0', sha256='71b506d49d34e539cc3cfdb7ce2c5f072bea5c953320002c95968e0238f8ecf1')
+
+ depends_on('python@2.7:2.8,3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-pytest@2.9:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-mock/package.py b/var/spack/repos/builtin/packages/py-pytest-mock/package.py
index e5a3240d99..125623ef75 100644
--- a/var/spack/repos/builtin/packages/py-pytest-mock/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-mock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytestMock(PythonPackage):
"""Thin-wrapper around the mock package for easier use with py.test"""
homepage = "https://github.com/pytest-dev/pytest-mock"
- url = "https://pypi.io/packages/source/p/pytest-mock/pytest-mock-1.11.1.tar.gz"
+ pypi = "pytest-mock/pytest-mock-1.11.1.tar.gz"
version('1.11.1', sha256='f1ab8aefe795204efe7a015900296d1719e7bf0f4a0558d71e8599da1d1309d0')
version('1.2', sha256='f78971ed376fcb265255d1e4bb313731b3a1be92d7f3ecb19ea7fedc4a56fd0f',
diff --git a/var/spack/repos/builtin/packages/py-pytest-mypy/package.py b/var/spack/repos/builtin/packages/py-pytest-mypy/package.py
index 1f7cc82af8..6cb84feccb 100644
--- a/var/spack/repos/builtin/packages/py-pytest-mypy/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-mypy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytestMypy(PythonPackage):
"""Mypy static type checker plugin for Pytest."""
homepage = "https://github.com/dbader/pytest-mypy"
- url = "https://pypi.io/packages/source/p/pytest-mypy/pytest-mypy-0.4.2.tar.gz"
+ pypi = "pytest-mypy/pytest-mypy-0.4.2.tar.gz"
version('0.4.2', sha256='5a5338cecff17f005b181546a13e282761754b481225df37f33d37f86ac5b304')
diff --git a/var/spack/repos/builtin/packages/py-pytest-openfiles/package.py b/var/spack/repos/builtin/packages/py-pytest-openfiles/package.py
new file mode 100644
index 0000000000..4707c3cd1a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-openfiles/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPytestOpenfiles(PythonPackage):
+ """A plugin for the pytest framework that allows developers to detect
+ whether any file handles or other file-like objects were inadvertently
+ left open at the end of a unit test"""
+
+ homepage = "https://github.com/astropy/pytest-openfiles"
+ pypi = "pytest-openfiles/pytest-openfiles-0.5.0.tar.gz"
+
+ version('0.5.0', sha256='179c2911d8aee3441fee051aba08e0d9b4dab61b829ae4811906d5c49a3b0a58')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools@30.3.1:', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-pytest@4.6:', type=('build', 'run'))
+ depends_on('py-psutil', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-pep8/package.py b/var/spack/repos/builtin/packages/py-pytest-pep8/package.py
index f365a172eb..e2ff74e2fc 100644
--- a/var/spack/repos/builtin/packages/py-pytest-pep8/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-pep8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyPytestPep8(PythonPackage):
"""pytest plugin for efficiently checking PEP8 compliance"""
homepage = "https://bitbucket.org/pytest-dev/pytest-pep8"
- url = "https://pypi.io/packages/source/p/pytest-pep8/pytest-pep8-1.0.6.tar.gz"
-
- import_modules = ['pytest_pep8']
+ pypi = "pytest-pep8/pytest-pep8-1.0.6.tar.gz"
version('1.0.6', sha256='032ef7e5fa3ac30f4458c73e05bb67b0f036a8a5cb418a534b3170f89f120318')
diff --git a/var/spack/repos/builtin/packages/py-pytest-qt/package.py b/var/spack/repos/builtin/packages/py-pytest-qt/package.py
new file mode 100644
index 0000000000..88b828e0b0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-qt/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPytestQt(PythonPackage):
+ """A pytest plugin that allows programmers to write tests for
+ PySide, PySide2 and PyQt applications."""
+
+ homepage = "https://github.com/pytest-dev/pytest-qt"
+ pypi = "pytest-qt/pytest-qt-3.3.0.tar.gz"
+
+ version('3.3.0', sha256='714b0bf86c5313413f2d300ac613515db3a1aef595051ab8ba2ffe619dbe8925')
+
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-pytest@3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-runner/package.py b/var/spack/repos/builtin/packages/py-pytest-runner/package.py
index d3337bcac9..1221464219 100644
--- a/var/spack/repos/builtin/packages/py-pytest-runner/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-runner/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,10 @@ class PyPytestRunner(PythonPackage):
"""Invoke py.test as distutils command with dependency resolution."""
homepage = "https://github.com/pytest-dev/pytest-runner"
- url = "https://pypi.io/packages/source/p/pytest-runner/pytest-runner-5.1.tar.gz"
-
- import_modules = ['ptr']
+ pypi = "pytest-runner/pytest-runner-5.1.tar.gz"
version('5.1', sha256='25a013c8d84f0ca60bb01bd11913a3bcab420f601f0f236de4423074af656e7a')
version('2.11.1', sha256='983a31eab45e375240e250161a556163bc8d250edaba97960909338c273a89b3')
- depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-setuptools-scm@1.15:', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pytest-timeout/package.py b/var/spack/repos/builtin/packages/py-pytest-timeout/package.py
new file mode 100644
index 0000000000..a9de608856
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-timeout/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PyPytestTimeout(PythonPackage):
+ """A plugin which will terminate tests after a certain timeout,
+ assuming the test session isn't being debugged."""
+
+ homepage = "https://github.com/pytest-dev/pytest-timeout/"
+ pypi = "pytest-timeout/pytest-timeout-1.4.2.tar.gz"
+
+ version('1.4.2', sha256='20b3113cf6e4e80ce2d403b6fb56e9e1b871b510259206d40ff8d609f48bda76')
+
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pytest@3.6.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-xdist/package.py b/var/spack/repos/builtin/packages/py-pytest-xdist/package.py
index 389d7c7689..ed112cc47b 100644
--- a/var/spack/repos/builtin/packages/py-pytest-xdist/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest-xdist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytestXdist(PythonPackage):
"""py.test xdist plugin for distributed testing and loop-on-failing mode"""
homepage = "https://github.com/pytest-dev/pytest-xdist"
- url = "https://pypi.io/packages/source/p/pytest-xdist/pytest-xdist-1.30.0.tar.gz"
+ pypi = "pytest-xdist/pytest-xdist-1.30.0.tar.gz"
version('1.30.0', sha256='5d1b1d4461518a6023d56dab62fb63670d6f7537f23e2708459a557329accf48')
version('1.29.0', sha256='3489d91516d7847db5eaecff7a2e623dba68984835dbe6cedb05ae126c4fb17f')
diff --git a/var/spack/repos/builtin/packages/py-pytest/package.py b/var/spack/repos/builtin/packages/py-pytest/package.py
index b6d2c914c5..4de83b358d 100644
--- a/var/spack/repos/builtin/packages/py-pytest/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,16 +10,17 @@ class PyPytest(PythonPackage):
"""pytest: simple powerful testing with Python."""
homepage = "http://pytest.org/"
- url = "https://pypi.io/packages/source/p/pytest/pytest-5.2.1.tar.gz"
-
- import_modules = ['pytest']
+ pypi = "pytest/pytest-5.2.1.tar.gz"
+ version('6.2.1', sha256='66e419b1899bc27346cb2c993e12c5e5e8daba9073c1fbce33b9807abc95c306')
+ version('6.1.1', sha256='8f593023c1a0f916110285b6efd7f99db07d59546e3d8c36fc60e2ab05d3be92')
version('5.3.4', sha256='1d122e8be54d1a709e56f82e2d85dcba3018313d64647f38a91aec88c239b600')
version('5.2.1', sha256='ca563435f4941d0cb34767301c27bc65c510cb82e90b9ecf9cb52dc2c63caaa0')
version('5.1.1', sha256='c3d5020755f70c82eceda3feaf556af9a341334414a8eca521a18f463bcead88')
version('4.6.9', sha256='19e8f75eac01dd3f211edd465b39efbcbdc8fc5f7866d7dd49fedb30d8adf339')
version('4.6.5', sha256='8fc39199bdda3d9d025d3b1f4eb99a192c20828030ea7c9a0d2840721de7d347')
version('4.6.2', sha256='bea27a646a3d74cbbcf8d3d4a06b2dfc336baf3dc2cc85cf70ad0157e73e8322')
+ version('4.4.0', sha256='f21d2f1fb8200830dcbb5d8ec466a9c9120e20d8b53c7585d180125cce1d297a')
version('4.3.0', sha256='067a1d4bf827ffdd56ad21bd46674703fce77c5957f6c1eef731f6146bfcef1c')
version('3.7.2', sha256='3459a123ad5532852d36f6f4501dfe1acf4af1dd9541834a164666aa40395b02')
version('3.7.1', sha256='86a8dbf407e437351cef4dba46736e9c5a6e3c3ac71b2e942209748e76ff2086')
@@ -27,7 +28,8 @@ class PyPytest(PythonPackage):
version('3.0.7', sha256='b70696ebd1a5e6b627e7e3ac1365a4bc60aaf3495e843c1e70448966c5224cab')
version('3.0.2', sha256='64d8937626dd2a4bc15ef0edd307d26636a72a3f3f9664c424d78e40efb1e339')
- depends_on('python@3.5:', when='@5:', type=('build', 'run'))
+ depends_on('python@3.6:', when='@6.2.0', type=('build', 'run'))
+ depends_on('python@3.5:', when='@5:6.1.999', type=('build', 'run'))
depends_on('python@2.7:2.8,3.4:', when='@3.3:4', type=('build', 'run'))
depends_on('python@2.6:2.8,3.3:', when='@:3.2', type=('build', 'run'))
@@ -35,21 +37,26 @@ class PyPytest(PythonPackage):
# However, pytest requires setuptools during runtime as well.
# FIXME: May no longer be needed at runtime, see:
# https://github.com/pytest-dev/pytest/pull/5063
- depends_on('py-setuptools@40.0:', when='@3.9.2:', type=('build', 'run'))
+ depends_on('py-setuptools@42.0:', when='@6.2:', type=('build', 'run'))
+ depends_on('py-setuptools@40.0:', when='@3.9.2:6.1.999', type=('build', 'run'))
depends_on('py-setuptools@30.3:', when='@3.9.0:3.9.1', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-setuptools-scm@3.4:', when='@6.2:', type=('build', 'run'))
depends_on('py-setuptools-scm', when='@3.1:', type='build')
- depends_on('py-py@1.5.0:', when='@3.3:', type=('build', 'run'))
+ depends_on('py-py@1.8.2:', when='@6:', type=('build', 'run'))
+ depends_on('py-py@1.5.0:', when='@3.3:5.999', type=('build', 'run'))
depends_on('py-py@1.4.33:', when='@3.1.2:3.2.3,3.2.5:3.2.999', type=('build', 'run'))
depends_on('py-py@1.4.33:1.4.999', when='@3.2.4', type=('build', 'run'))
depends_on('py-py@1.4.29:', when='@:3.1.1', type=('build', 'run'))
depends_on('py-six@1.10.0:', when='@3.3:4', type=('build', 'run'))
depends_on('py-packaging', when='@4.6:', type=('build', 'run'))
+ depends_on('py-attrs@19.2.0:', when='@6.2:', type=('build', 'run'))
+ depends_on('py-attrs@17.4.0:', when='@3.5:6.1.999', type=('build', 'run'))
depends_on('py-attrs@17.2.0:', when='@3.3:3.4', type=('build', 'run'))
- depends_on('py-attrs@17.4.0:', when='@3.5:', type=('build', 'run'))
- depends_on('py-more-itertools@4.0.0:', when='@3.5.1:', type=('build', 'run'))
+ depends_on('py-more-itertools@4.0.0:', when='@3.5.1:5.999', type=('build', 'run'))
depends_on('py-more-itertools@4.0.0:6.0.0', when='@4.2.1:4.6.9 ^python@:2', type=('build', 'run'))
depends_on('py-atomicwrites@1.0:', when='@3.6:5.2.999', type=('build', 'run'))
+ depends_on('py-pluggy@0.12:1.0.0', when='@6.2.1.', type=('build', 'run'))
depends_on('py-pluggy@0.12:0.999', when='@4.6:', type=('build', 'run'))
depends_on('py-pluggy@0.9.0:0.9.999,0.11:0.999', when='@4.5.0:4.5.999', type=('build', 'run'))
depends_on('py-pluggy@0.11:', when='@4.4.2:4.4.999', type=('build', 'run'))
@@ -63,4 +70,6 @@ class PyPytest(PythonPackage):
depends_on('py-pathlib2', when='@3.7.0 ^python@:3.5', type=('build', 'run'))
depends_on('py-importlib-metadata@0.12:', when='@4.6:5.0', type=('build', 'run'))
depends_on('py-importlib-metadata@0.12:', when='@5.1: ^python@:3.7', type=('build', 'run'))
- depends_on('py-wcwidth', when='@4.5:', type=('build', 'run'))
+ depends_on('py-wcwidth', when='@4.5:5.999', type=('build', 'run'))
+ depends_on('py-iniconfig', when='@6.0:', type=('build', 'run'))
+ depends_on('py-toml', when='@6.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-python-benedict/package.py b/var/spack/repos/builtin/packages/py-python-benedict/package.py
new file mode 100644
index 0000000000..5f4f0da674
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-python-benedict/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPythonBenedict(PythonPackage):
+ """A dict subclass with keylist/keypath support, I/O shortcuts
+ and many utilities."""
+
+ homepage = "https://github.com/fabiocaccamo/python-benedict"
+ pypi = "python-benedict/python-benedict-0.22.2.tar.gz"
+
+ version('0.23.2', sha256='b7bdffd92ba1c9b9e044bda08ed545a48a45bd7a5207f93b4b2a8eb2660d1b4c')
+
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-ftfy@4.4.3', when='^python@:3.3.999', type=('build', 'run'))
+ depends_on('py-ftfy', when='^python@3.4:', type=('build', 'run'))
+ depends_on('py-mailchecker', type=('build', 'run'))
+ depends_on('py-phonenumbers', type=('build', 'run'))
+ depends_on('py-python-dateutil', type=('build', 'run'))
+ depends_on('py-python-fsutil', type=('build', 'run'))
+ depends_on('py-python-slugify', type=('build', 'run'))
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-toml', type=('build', 'run'))
+ depends_on('py-xmltodict', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-python-box/package.py b/var/spack/repos/builtin/packages/py-python-box/package.py
new file mode 100644
index 0000000000..a80f0f0fa8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-python-box/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPythonBox(PythonPackage):
+ """Advanced Python dictionaries with dot notation access
+
+ Box will automatically make otherwise inaccessible keys safe to access as
+ an attribute. You can always pass conversion_box=False to Box to disable
+ that behavior. Also, all new dict and lists added to a Box or BoxList
+ object are converted automatically."""
+
+ homepage = "https://github.com/cdgriffith/Box"
+ pypi = "python-box/python-box-5.3.0.tar.gz"
+
+ version('5.3.0', sha256='4ed4ef5d34de505a65c01e3f1911de8cdb29484fcae0c035141dce535c6c194a')
+
+ variant('extras',
+ default=False,
+ description='install the "extras" packages')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+
+ depends_on('py-ruamel-yaml', when='+extras')
+ depends_on('py-toml', when='+extras')
+ depends_on('py-msgpack', when='+extras')
diff --git a/var/spack/repos/builtin/packages/py-python-certifi-win32/package.py b/var/spack/repos/builtin/packages/py-python-certifi-win32/package.py
new file mode 100644
index 0000000000..a7588f6612
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-python-certifi-win32/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPythonCertifiWin32(PythonPackage):
+ """This package patches certifi at runtime to also include certificates from the
+ windows certificate store."""
+
+ homepage = "https://gitlab.com/alelec/python-certifi-win32"
+ git = "https://gitlab.com/alelec/python-certifi-win32.git"
+
+ # Tarball missing version information, need to use git checkout
+ version('1.6', tag='v1.6')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+ depends_on('py-wrapt@1.10.4:', type=('build', 'run'))
+ depends_on('py-wincertstore', type=('build', 'run'), when='^python@:3.3.999')
+ depends_on('py-certifi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-python-daemon/package.py b/var/spack/repos/builtin/packages/py-python-daemon/package.py
index 6b70c03234..8185918c75 100644
--- a/var/spack/repos/builtin/packages/py-python-daemon/package.py
+++ b/var/spack/repos/builtin/packages/py-python-daemon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,8 +18,7 @@ class PyPythonDaemon(PythonPackage):
environment for the program; use the instance as a context manager
to enter a daemon state.
"""
- homepage = "https://pypi.python.org/pypi/python-daemon/"
- url = "https://pypi.io/packages/source/p/python-daemon/python-daemon-2.0.5.tar.gz"
+ pypi = "python-daemon/python-daemon-2.0.5.tar.gz"
version('2.0.5', sha256='afde4fa433d94d007206ee31a0941d55b5eb232a5422b670aad628547b46bf68')
diff --git a/var/spack/repos/builtin/packages/py-python-dateutil/package.py b/var/spack/repos/builtin/packages/py-python-dateutil/package.py
index 16bff6858d..263a554959 100644
--- a/var/spack/repos/builtin/packages/py-python-dateutil/package.py
+++ b/var/spack/repos/builtin/packages/py-python-dateutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,9 @@ class PyPythonDateutil(PythonPackage):
"""Extensions to the standard Python datetime module."""
homepage = "https://dateutil.readthedocs.io/"
- url = "https://pypi.io/packages/source/p/python-dateutil/python-dateutil-2.8.0.tar.gz"
-
- import_modules = [
- 'dateutil', 'dateutil.zoneinfo', 'dateutil.parser', 'dateutil.tz'
- ]
+ pypi = "python-dateutil/python-dateutil-2.8.0.tar.gz"
+ version('2.8.1', sha256='73ebfe9dbf22e832286dafa60473e4cd239f8592f699aa5adaf10050e6e1823c')
version('2.8.0', sha256='c89805f6f4d64db21ed966fda138f8a5ed7a4fdbc1a8ee329ce1b74e3c74da9e')
version('2.7.5', sha256='88f9287c0174266bb0d8cedd395cfba9c58e87e5ad86b2ce58859bc11be3cf02')
version('2.5.2', sha256='063907ef47f6e187b8fe0728952e4effb587a34f2dc356888646f9b71fbb2e4b')
@@ -27,13 +24,3 @@ class PyPythonDateutil(PythonPackage):
depends_on('py-setuptools@24.3:', type='build')
depends_on('py-setuptools-scm', type='build', when='@2.7.0:')
depends_on('py-six@1.5:', type=('build', 'run'))
- # depends_on('py-pytest', type='test')
- # depends_on('py-hypothesis', type='test')
- # depends_on('py-freezegun', type='test')
-
- def build_test(self):
- # Tests require freezegun, which depends on python-dateutil,
- # creating circular dependency
- # pytest = which('pytest')
- # pytest()
- pass
diff --git a/var/spack/repos/builtin/packages/py-python-docs-theme/package.py b/var/spack/repos/builtin/packages/py-python-docs-theme/package.py
index 4b1b7232b4..21350e73ab 100644
--- a/var/spack/repos/builtin/packages/py-python-docs-theme/package.py
+++ b/var/spack/repos/builtin/packages/py-python-docs-theme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPythonDocsTheme(PythonPackage):
"""
homepage = "https://docs.python.org/3/"
- url = "https://pypi.io/packages/source/p/python-docs-theme/python-docs-theme-2018.7.tar.gz"
+ pypi = "python-docs-theme/python-docs-theme-2018.7.tar.gz"
version('2020.1', sha256='29c33ba393bdb9377910116a0c1cc329573a4e040227c58a3293d27928d8262a')
version('2018.7', sha256='018a5bf2a7318c9c9a8346303dac8afc6bc212d92e86561c9b95a3372714155a')
diff --git a/var/spack/repos/builtin/packages/py-python-editor/package.py b/var/spack/repos/builtin/packages/py-python-editor/package.py
index 3db92f7a21..1fbc451c5f 100644
--- a/var/spack/repos/builtin/packages/py-python-editor/package.py
+++ b/var/spack/repos/builtin/packages/py-python-editor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyPythonEditor(PythonPackage):
"""python-editor is a library that provides the editor module for
programmatically interfacing with your system's EDITOR variable."""
- homepage = "https://pypi.org/project/python-editor/"
- url = "https://pypi.io/packages/source/p/python-editor/python-editor-1.0.4.tar.gz"
+ pypi = "python-editor/python-editor-1.0.4.tar.gz"
version('1.0.4', sha256='51fda6bcc5ddbbb7063b2af7509e43bd84bfc32a4ff71349ec7847713882327b')
diff --git a/var/spack/repos/builtin/packages/py-python-engineio/package.py b/var/spack/repos/builtin/packages/py-python-engineio/package.py
index 3d6ccca57b..fd7e8c1e22 100644
--- a/var/spack/repos/builtin/packages/py-python-engineio/package.py
+++ b/var/spack/repos/builtin/packages/py-python-engineio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-python-fmask/package.py b/var/spack/repos/builtin/packages/py-python-fmask/package.py
index fe914a5a3b..c0af4d3db9 100644
--- a/var/spack/repos/builtin/packages/py-python-fmask/package.py
+++ b/var/spack/repos/builtin/packages/py-python-fmask/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-python-fsutil/package.py b/var/spack/repos/builtin/packages/py-python-fsutil/package.py
new file mode 100644
index 0000000000..eda87766f2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-python-fsutil/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPythonFsutil(PythonPackage):
+ """file-system utilities for lazy devs."""
+
+ homepage = "https://github.com/fabiocaccamo/python-fsutil"
+ pypi = "python-fsutil/python-fsutil-0.4.0.tar.gz"
+
+ version('0.4.0', sha256='873eceb11fb488fc2d7675cd1bc74a743502f674f0be88f5e7b920c7baeefed6')
+
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-python-gitlab/package.py b/var/spack/repos/builtin/packages/py-python-gitlab/package.py
index e21c10b24d..42b41db0d5 100644
--- a/var/spack/repos/builtin/packages/py-python-gitlab/package.py
+++ b/var/spack/repos/builtin/packages/py-python-gitlab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPythonGitlab(PythonPackage):
"""Python wrapper for the GitLab API"""
homepage = "https://github.com/gpocentek/python-gitlab"
- url = "https://pypi.io/packages/source/p/python-gitlab/python-gitlab-0.19.tar.gz"
+ pypi = "python-gitlab/python-gitlab-0.19.tar.gz"
version('1.8.0', sha256='a6b03bc53f6e2e22b88d5ff9772b1bb360570ec82752f1def3d6eb60cda093e7')
version('0.19', sha256='88b65591db7a10a0d9979797e4e654a113e2b93b3a559309f6092b27ab93934a')
diff --git a/var/spack/repos/builtin/packages/py-python-igraph/package.py b/var/spack/repos/builtin/packages/py-python-igraph/package.py
index 88da5b0656..a437d06f68 100644
--- a/var/spack/repos/builtin/packages/py-python-igraph/package.py
+++ b/var/spack/repos/builtin/packages/py-python-igraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-python-jenkins/package.py b/var/spack/repos/builtin/packages/py-python-jenkins/package.py
index 601951c90e..5a152de56e 100644
--- a/var/spack/repos/builtin/packages/py-python-jenkins/package.py
+++ b/var/spack/repos/builtin/packages/py-python-jenkins/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPythonJenkins(PythonPackage):
"""Python bindings for the remote Jenkins API"""
homepage = "https://opendev.org/jjb/python-jenkins/"
- url = "https://pypi.io/packages/source/p/python-jenkins/python-jenkins-1.5.0.tar.gz"
+ pypi = "python-jenkins/python-jenkins-1.5.0.tar.gz"
version('1.5.0', sha256='0b11f7c1dffc48579afefa8a310cba5b1c98785b9132892ff8cf5312f32ebc90')
version('1.0.2', sha256='54aba30cf49f78f9eb64e9717ad8049dacf090731a3e0c27e6035f9ec52ff78e')
diff --git a/var/spack/repos/builtin/packages/py-python-json-logger/package.py b/var/spack/repos/builtin/packages/py-python-json-logger/package.py
index b3aa3efbca..913f871939 100644
--- a/var/spack/repos/builtin/packages/py-python-json-logger/package.py
+++ b/var/spack/repos/builtin/packages/py-python-json-logger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPythonJsonLogger(PythonPackage):
""""A python library adding a json log formatter."""
homepage = "https://github.com/madzak/python-json-logger"
- url = "https://pypi.io/packages/source/p/python-json-logger/python-json-logger-0.1.11.tar.gz"
+ pypi = "python-json-logger/python-json-logger-0.1.11.tar.gz"
version('0.1.11', sha256='b7a31162f2a01965a5efb94453ce69230ed208468b0bbc7fdfc56e6d8df2e281')
diff --git a/var/spack/repos/builtin/packages/py-python-ldap/package.py b/var/spack/repos/builtin/packages/py-python-ldap/package.py
index e4f8cc1938..ca12163460 100644
--- a/var/spack/repos/builtin/packages/py-python-ldap/package.py
+++ b/var/spack/repos/builtin/packages/py-python-ldap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyPythonLdap(PythonPackage):
"""
homepage = "https://www.python-ldap.org/en/python-ldap-3.2.0/"
- url = "https://pypi.io/packages/source/p/python-ldap/python-ldap-3.2.0.tar.gz"
+ pypi = "python-ldap/python-ldap-3.2.0.tar.gz"
version('3.2.0', sha256='7d1c4b15375a533564aad3d3deade789221e450052b21ebb9720fb822eccdb8e')
version('3.0.0', sha256='86746b912a2cd37a54b06c694f021b0c8556d4caeab75ef50435ada152e2fbe1')
@@ -22,3 +22,4 @@ class PyPythonLdap(PythonPackage):
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-pyasn1@0.3.7:', type=('build', 'run'))
depends_on('py-pyasn1-modules@0.1.5:', type=('build', 'run'))
+ depends_on('cyrus-sasl', type='link')
diff --git a/var/spack/repos/builtin/packages/py-python-levenshtein/package.py b/var/spack/repos/builtin/packages/py-python-levenshtein/package.py
index 5dc3a4305d..83449ca44a 100644
--- a/var/spack/repos/builtin/packages/py-python-levenshtein/package.py
+++ b/var/spack/repos/builtin/packages/py-python-levenshtein/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPythonLevenshtein(PythonPackage):
similarities."""
homepage = "https://github.com/ztane/python-Levenshtein"
- url = "https://pypi.io/packages/source/p/python-Levenshtein/python-Levenshtein-0.12.0.tar.gz"
+ pypi = "python-Levenshtein/python-Levenshtein-0.12.0.tar.gz"
version('0.12.0', sha256='033a11de5e3d19ea25c9302d11224e1a1898fe5abd23c61c7c360c25195e3eb1')
diff --git a/var/spack/repos/builtin/packages/py-python-logstash/package.py b/var/spack/repos/builtin/packages/py-python-logstash/package.py
index 5eb60590d2..73fcc8c617 100644
--- a/var/spack/repos/builtin/packages/py-python-logstash/package.py
+++ b/var/spack/repos/builtin/packages/py-python-logstash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PyPythonLogstash(PythonPackage):
"""Python logging handler for Logstash."""
homepage = "https://github.com/vklochan/python-logstash"
- url = "https://pypi.io/packages/source/p/python-logstash/python-logstash-0.4.6.tar.gz"
+ pypi = "python-logstash/python-logstash-0.4.6.tar.gz"
version('0.4.6', sha256='10943e5df83f592b4d61b63ad1afff855ccc8c9467f78718f0a59809ba1fe68c')
diff --git a/var/spack/repos/builtin/packages/py-python-louvain/package.py b/var/spack/repos/builtin/packages/py-python-louvain/package.py
new file mode 100644
index 0000000000..7e49f607e6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-python-louvain/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyPythonLouvain(PythonPackage):
+ """This module implements community detection.
+ It uses the louvain method described in Fast unfolding of communities
+ in large networks, Vincent D Blondel, Jean-Loup Guillaume, Renaud
+ Lambiotte, Renaud Lefebvre, Journal of Statistical Mechanics: Theory
+ and Experiment 2008(10), P10008 (12pp) """
+
+ homepage = "https://github.com/taynaud/python-louvain"
+ pypi = "python-louvain/python-louvain-0.14.tar.gz"
+
+ version('0.15', sha256='2a856edfbe29952a60a5538a84bb78cca18f6884a88b9325e85a11c8dd4917eb')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-networkx', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-python-lzo/package.py b/var/spack/repos/builtin/packages/py-python-lzo/package.py
index acf60351b7..8a18db57d1 100644
--- a/var/spack/repos/builtin/packages/py-python-lzo/package.py
+++ b/var/spack/repos/builtin/packages/py-python-lzo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPythonLzo(PythonPackage):
library."""
homepage = "https://github.com/jd-boyd/python-lzo"
- url = "https://pypi.io/packages/source/p/python-lzo/python-lzo-1.12.tar.gz"
+ pypi = "python-lzo/python-lzo-1.12.tar.gz"
version('1.12', sha256='97a8e46825e8f1abd84c2a3372bc09adae9745a5be5d3af2692cd850dac35345')
diff --git a/var/spack/repos/builtin/packages/py-python-magic/package.py b/var/spack/repos/builtin/packages/py-python-magic/package.py
index 7fe5bab70c..f3ac87c720 100644
--- a/var/spack/repos/builtin/packages/py-python-magic/package.py
+++ b/var/spack/repos/builtin/packages/py-python-magic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyPythonMagic(PythonPackage):
"""A python wrapper for libmagic"""
homepage = "https://github.com/ahupp/python-magic"
- url = "https://pypi.io/packages/source/p/python-magic/python-magic-0.4.15.tar.gz"
+ pypi = "python-magic/python-magic-0.4.15.tar.gz"
version('0.4.15', sha256='f3765c0f582d2dfc72c15f3b5a82aecfae9498bd29ca840d72f37d7bd38bfcd5')
diff --git a/var/spack/repos/builtin/packages/py-python-mapnik/package.py b/var/spack/repos/builtin/packages/py-python-mapnik/package.py
index 79e2bc41a6..1df131f814 100644
--- a/var/spack/repos/builtin/packages/py-python-mapnik/package.py
+++ b/var/spack/repos/builtin/packages/py-python-mapnik/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-python-meep/package.py b/var/spack/repos/builtin/packages/py-python-meep/package.py
index d7e50e8509..4b8d7b0c2f 100644
--- a/var/spack/repos/builtin/packages/py-python-meep/package.py
+++ b/var/spack/repos/builtin/packages/py-python-meep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-python-memcached/package.py b/var/spack/repos/builtin/packages/py-python-memcached/package.py
index 9347aea117..29f58a19b5 100644
--- a/var/spack/repos/builtin/packages/py-python-memcached/package.py
+++ b/var/spack/repos/builtin/packages/py-python-memcached/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,7 @@ class PyPythonMemcached(PythonPackage):
or more, possibly remote, memcached servers. Search google for memcached
for more information."""
- homepage = "https://pypi.org/project/python-memcached/"
- url = "https://pypi.io/packages/source/p/python-memcached/python-memcached-1.59.tar.gz"
+ pypi = "python-memcached/python-memcached-1.59.tar.gz"
version('1.59', sha256='a2e28637be13ee0bf1a8b6843e7490f9456fd3f2a4cb60471733c7b5d5557e4f')
diff --git a/var/spack/repos/builtin/packages/py-python-oauth2/package.py b/var/spack/repos/builtin/packages/py-python-oauth2/package.py
index 1ced77c542..4214067dbd 100644
--- a/var/spack/repos/builtin/packages/py-python-oauth2/package.py
+++ b/var/spack/repos/builtin/packages/py-python-oauth2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyPythonOauth2(PythonPackage):
"""python-oauth2 is a framework that aims at making it easy to
provide authentication via OAuth 2.0 within an application stack."""
- homepage = "https://pypi.org/project/python-oauth2/"
- url = "https://pypi.io/packages/source/p/python-oauth2/python-oauth2-1.1.1.tar.gz"
+ pypi = "python-oauth2/python-oauth2-1.1.1.tar.gz"
version('1.1.1', sha256='d7a8544927ac18215ba5317edd8f640a5f1f0593921bcf3ce862178312c8c9a4')
diff --git a/var/spack/repos/builtin/packages/py-python-rapidjson/package.py b/var/spack/repos/builtin/packages/py-python-rapidjson/package.py
index 3715c34b64..0df7feb954 100644
--- a/var/spack/repos/builtin/packages/py-python-rapidjson/package.py
+++ b/var/spack/repos/builtin/packages/py-python-rapidjson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPythonRapidjson(PythonPackage):
"""Python wrapper around rapidjson."""
homepage = "https://github.com/python-rapidjson/python-rapidjson"
- url = "https://pypi.io/packages/source/p/python-rapidjson/python-rapidjson-0.9.1.tar.gz"
+ pypi = "python-rapidjson/python-rapidjson-0.9.1.tar.gz"
version('0.9.1', sha256='ad80bd7e4bb15d9705227630037a433e2e2a7982b54b51de2ebabdd1611394a1')
diff --git a/var/spack/repos/builtin/packages/py-python-slugify/package.py b/var/spack/repos/builtin/packages/py-python-slugify/package.py
index 506fb66810..739836c8ae 100644
--- a/var/spack/repos/builtin/packages/py-python-slugify/package.py
+++ b/var/spack/repos/builtin/packages/py-python-slugify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPythonSlugify(PythonPackage):
"""A Python Slugify application that handles Unicode"""
homepage = "https://github.com/un33k/python-slugify"
- url = "https://pypi.io/packages/source/p/python-slugify/python-slugify-4.0.0.tar.gz"
+ pypi = "python-slugify/python-slugify-4.0.0.tar.gz"
version('4.0.0', sha256='a8fc3433821140e8f409a9831d13ae5deccd0b033d4744d94b31fea141bdd84c')
diff --git a/var/spack/repos/builtin/packages/py-python-socketio/package.py b/var/spack/repos/builtin/packages/py-python-socketio/package.py
index dad0618940..311ec2f078 100644
--- a/var/spack/repos/builtin/packages/py-python-socketio/package.py
+++ b/var/spack/repos/builtin/packages/py-python-socketio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPythonSocketio(PythonPackage):
"""Python implementation of the Socket.IO realtime server."""
homepage = "https://github.com/miguelgrinberg/python-socketio"
- url = "https://pypi.io/packages/source/p/python-socketio/python-socketio-1.8.4.tar.gz"
+ pypi = "python-socketio/python-socketio-1.8.4.tar.gz"
version('1.8.4', sha256='13807ce17e85371d15b31295a43b1fac1c0dba1eb5fc233353a3efd53aa122cc')
diff --git a/var/spack/repos/builtin/packages/py-python-subunit/package.py b/var/spack/repos/builtin/packages/py-python-subunit/package.py
index e894ae2b71..8f1a0d3d0a 100644
--- a/var/spack/repos/builtin/packages/py-python-subunit/package.py
+++ b/var/spack/repos/builtin/packages/py-python-subunit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPythonSubunit(PythonPackage):
"""Python implementation of subunit test streaming protocol."""
homepage = "https://launchpad.net/subunit"
- url = "https://pypi.io/packages/source/p/python-subunit/python-subunit-1.3.0.tar.gz"
+ pypi = "python-subunit/python-subunit-1.3.0.tar.gz"
version('1.3.0', sha256='9607edbee4c1e5a30ff88549ce8d9feb0b9bcbcb5e55033a9d76e86075465cbb')
diff --git a/var/spack/repos/builtin/packages/py-python-swiftclient/package.py b/var/spack/repos/builtin/packages/py-python-swiftclient/package.py
index a016686406..5463601695 100644
--- a/var/spack/repos/builtin/packages/py-python-swiftclient/package.py
+++ b/var/spack/repos/builtin/packages/py-python-swiftclient/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,10 @@ class PyPythonSwiftclient(PythonPackage):
"""This is a python client for the Swift API."""
homepage = "https://docs.openstack.org/python-swiftclient"
- url = "https://pypi.io/packages/source/p/python-swiftclient/python-swiftclient-3.9.0.tar.gz"
+ pypi = "python-swiftclient/python-swiftclient-3.9.0.tar.gz"
maintainers = ['ajkotobi']
- import_modules = ['sys', 'setuptools', 'requests']
-
version('3.10.0', sha256='66227eaf29a691c70675fb9982022980b92797c273dd5e6dc7e680425e9a3634')
version('3.9.0', sha256='4f2097492e4c76e948882fc859bfa033ade09bed72f8e6b328e34a3467d9a377')
version('3.8.1', sha256='3a013303643f77a99befa05582dfb93671e1fba1aed9f4a517418129700aedb8')
diff --git a/var/spack/repos/builtin/packages/py-python-utils/package.py b/var/spack/repos/builtin/packages/py-python-utils/package.py
index 6c8e3aa732..9cc0a44d6d 100644
--- a/var/spack/repos/builtin/packages/py-python-utils/package.py
+++ b/var/spack/repos/builtin/packages/py-python-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,12 +12,10 @@ class PyPythonUtils(PythonPackage):
which make common patterns shorter and easier."""
homepage = "https://github.com/WoLpH/python-utils"
- url = "https://pypi.io/packages/source/p/python-utils/python-utils-2.4.0.tar.gz"
+ pypi = "python-utils/python-utils-2.4.0.tar.gz"
version('2.4.0', sha256='f21fc09ff58ea5ebd1fd2e8ef7f63e39d456336900f26bdc9334a03a3f7d8089')
version('2.3.0', sha256='34aaf26b39b0b86628008f2ae0ac001b30e7986a8d303b61e1357dfcdad4f6d3')
depends_on('py-setuptools', type='build')
depends_on('py-six', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-pytest-runner', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pythonqwt/package.py b/var/spack/repos/builtin/packages/py-pythonqwt/package.py
index 8de66c15bb..8f7678a6e3 100644
--- a/var/spack/repos/builtin/packages/py-pythonqwt/package.py
+++ b/var/spack/repos/builtin/packages/py-pythonqwt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPythonqwt(PythonPackage):
"""Qt plotting widgets for Python"""
homepage = "https://github.com/PierreRaybaut/PythonQwt"
- url = "https://pypi.io/packages/source/P/PythonQwt/PythonQwt-0.5.5.zip"
+ pypi = "PythonQwt/PythonQwt-0.5.5.zip"
version('0.5.5', sha256='1f13cc8b555a57f8fe0f806d6c2f6d847050e4d837649503932b81316d12788a')
diff --git a/var/spack/repos/builtin/packages/py-pythonsollya/package.py b/var/spack/repos/builtin/packages/py-pythonsollya/package.py
new file mode 100644
index 0000000000..02decf6b86
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pythonsollya/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPythonsollya(PythonPackage):
+ """Python wrapper for the Sollya library"""
+
+ homepage = "Python wrapper for the Sollya library"
+ url = "https://gitlab.com/metalibm-dev/pythonsollya/-/archive/release-0.4.0-alpha0/pythonsollya-release-0.4.0-alpha0.tar.gz"
+
+ version('0.4.0-alpha0', sha256='faac899744c92b1d20980cadef309cd5610d79722322e97940ff142c207c41b5')
+ version('0.3.0', url='https://gitlab.com/metalibm-dev/pythonsollya/-/archive/0.3/pythonsollya-0.3.tar.gz',
+ sha256='cdccd0c5549247ad7498546095544d8d01e78bcb4a3e55c32d6daea6b845b6b9', preferred=True)
+
+ depends_on('py-cython', type='build')
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('libffi', type='build')
+ depends_on('sollya', type=('build', 'link'))
+ depends_on('py-bigfloat', type=('build', 'run'))
+ depends_on('mpfi', type=('build', 'link'))
diff --git a/var/spack/repos/builtin/packages/py-pytimeparse/package.py b/var/spack/repos/builtin/packages/py-pytimeparse/package.py
index ef2a2e8196..af392a6bd7 100644
--- a/var/spack/repos/builtin/packages/py-pytimeparse/package.py
+++ b/var/spack/repos/builtin/packages/py-pytimeparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPytimeparse(PythonPackage):
"""A small Python library to parse various kinds of time expressions."""
homepage = "https://github.com/wroberts/pytimeparse"
- url = "https://pypi.io/packages/source/p/pytimeparse/pytimeparse-1.1.8.tar.gz"
+ pypi = "pytimeparse/pytimeparse-1.1.8.tar.gz"
version('1.1.8', sha256='e86136477be924d7e670646a98561957e8ca7308d44841e21f5ddea757556a0a')
diff --git a/var/spack/repos/builtin/packages/py-pytools/package.py b/var/spack/repos/builtin/packages/py-pytools/package.py
index 95b33b9707..22a380fa34 100644
--- a/var/spack/repos/builtin/packages/py-pytools/package.py
+++ b/var/spack/repos/builtin/packages/py-pytools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyPytools(PythonPackage):
"""A collection of tools for Python"""
- homepage = "https://pypi.org/project/pytools/"
- url = "https://pypi.io/packages/source/p/pytools/pytools-2019.1.1.tar.gz"
+ pypi = "pytools/pytools-2019.1.1.tar.gz"
version('2019.1.1', sha256='ce2d702ae4ef10a70197b00b93141461140d00578f2a862fa946ca1446a300db')
version('2016.2.6', sha256='6dd49932b8f81a8b622685cff3dd515e351a9290aef0fd5d020e4df00c06aa95')
diff --git a/var/spack/repos/builtin/packages/py-pytorch-gradual-warmup-lr/package.py b/var/spack/repos/builtin/packages/py-pytorch-gradual-warmup-lr/package.py
index d6f7d6cc50..231fee0cff 100644
--- a/var/spack/repos/builtin/packages/py-pytorch-gradual-warmup-lr/package.py
+++ b/var/spack/repos/builtin/packages/py-pytorch-gradual-warmup-lr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pytorch-lightning/package.py b/var/spack/repos/builtin/packages/py-pytorch-lightning/package.py
new file mode 100644
index 0000000000..982362e966
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytorch-lightning/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPytorchLightning(PythonPackage):
+ """PyTorch Lightning is the lightweight PyTorch wrapper for ML researchers."""
+
+ homepage = "https://github.com/PyTorchLightning/pytorch-lightning"
+ pypi = "pytorch-lightning/pytorch-lightning-1.2.10.tar.gz"
+
+ version('1.2.10', sha256='2d8365e30ded0c20e73ce6e5b6028478ae460b8fd33727df2275666df005a301')
+
+ conflicts('py-pyyaml@5.4') # OmegaConf requirement >=5.1
+ conflicts('py-tensorboard@2.5.0') # 2.5.0 GPU CI error: Couldn't build proto file into descriptor pool!
+
+ # requirements from setup.py
+ depends_on('py-setuptools', type='build')
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-torch@1.4:', type=('build', 'run'))
+ depends_on('py-numpy@1.16.6:', type=('build', 'run'))
+ depends_on('py-future@0.17.1:', type=('build', 'run'))
+ depends_on('py-pyyaml@5.1:', type=('build', 'run'))
+ depends_on('py-tqdm@4.41.0:', type=('build', 'run'))
+ depends_on('py-fsspec@0.8.1:+http', type=('build', 'run'))
+ depends_on('py-tensorboard@2.2.0:', type=('build', 'run'))
+ depends_on('py-torchmetrics@0.2.0', type=('build', 'run'))
+ depends_on('py-packaging', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytweening/package.py b/var/spack/repos/builtin/packages/py-pytweening/package.py
new file mode 100644
index 0000000000..339f910e1d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytweening/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyPytweening(PythonPackage):
+ """A collection of tweening / easing functions implemented
+ in Python."""
+
+ homepage = "https://github.com/asweigart/pytweening"
+ pypi = "PyTweening/PyTweening-1.0.3.zip"
+
+ version('1.0.3', sha256='4b608a570f4dccf2201e898f643c2a12372eb1d71a3dbc7e778771b603ca248b')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pytz/package.py b/var/spack/repos/builtin/packages/py-pytz/package.py
index d4d752fdaa..bcc1a8327e 100644
--- a/var/spack/repos/builtin/packages/py-pytz/package.py
+++ b/var/spack/repos/builtin/packages/py-pytz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyPytz(PythonPackage):
"""World timezone definitions, modern and historical."""
homepage = "http://pythonhosted.org/pytz"
- url = "https://pypi.io/packages/source/p/pytz/pytz-2019.3.tar.gz"
-
- import_modules = ['pytz']
+ pypi = "pytz/pytz-2019.3.tar.gz"
version('2020.1', sha256='c35965d010ce31b23eeb663ed3cc8c906275d6be1a34393a1d73a41febf4a048')
version('2019.3', sha256='b02c06db6cf09c12dd25137e563b31700d3b80fcc4ad23abb7a315f2789819be')
diff --git a/var/spack/repos/builtin/packages/py-pyudev/package.py b/var/spack/repos/builtin/packages/py-pyudev/package.py
index 700eec6b62..c9609a223f 100644
--- a/var/spack/repos/builtin/packages/py-pyudev/package.py
+++ b/var/spack/repos/builtin/packages/py-pyudev/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyudev(PythonPackage):
"""Pure Python libudev binding"""
homepage = "https://pyudev.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/p/pyudev/pyudev-0.9.tar.gz"
+ pypi = "pyudev/pyudev-0.9.tar.gz"
version('0.21.0', sha256='094b7a100150114748aaa3b70663485dd360457a709bfaaafe5a977371033f2b')
version('0.15', sha256='12f462b777388c447edaac9e4b423a38a76eeb43f36b1a42288e771309d663c2')
diff --git a/var/spack/repos/builtin/packages/py-pyugrid/package.py b/var/spack/repos/builtin/packages/py-pyugrid/package.py
index c411460ea6..c6e9949797 100644
--- a/var/spack/repos/builtin/packages/py-pyugrid/package.py
+++ b/var/spack/repos/builtin/packages/py-pyugrid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyugrid(PythonPackage):
"""Work with triangular unstructured grids and the data on them."""
homepage = "https://github.com/pyugrid/pyugrid"
- url = "https://pypi.io/packages/source/p/pyugrid/pyugrid-0.3.1.tar.gz"
+ pypi = "pyugrid/pyugrid-0.3.1.tar.gz"
version('0.3.1', sha256='eddadc1e88c0e801f780b1e6f636fbfc00e3d14cdab82b43300fde0918310053')
diff --git a/var/spack/repos/builtin/packages/py-pyutilib/package.py b/var/spack/repos/builtin/packages/py-pyutilib/package.py
index 0fc62c07a4..79318b3deb 100644
--- a/var/spack/repos/builtin/packages/py-pyutilib/package.py
+++ b/var/spack/repos/builtin/packages/py-pyutilib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pyvcf/package.py b/var/spack/repos/builtin/packages/py-pyvcf/package.py
index f1a3f7201d..47ecbb5df9 100644
--- a/var/spack/repos/builtin/packages/py-pyvcf/package.py
+++ b/var/spack/repos/builtin/packages/py-pyvcf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pywavelets/package.py b/var/spack/repos/builtin/packages/py-pywavelets/package.py
index 460c6011e7..a735566afb 100644
--- a/var/spack/repos/builtin/packages/py-pywavelets/package.py
+++ b/var/spack/repos/builtin/packages/py-pywavelets/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,13 +12,11 @@ class PyPywavelets(PythonPackage):
in Python"""
homepage = "https://github.com/PyWavelets"
- url = "https://pypi.io/packages/source/P/PyWavelets/PyWavelets-0.5.2.tar.gz"
+ pypi = "PyWavelets/PyWavelets-0.5.2.tar.gz"
version('1.1.1', sha256='1a64b40f6acb4ffbaccce0545d7fc641744f95351f62e4c6aaa40549326008c9')
version('0.5.2', sha256='ce36e2f0648ea1781490b09515363f1f64446b0eac524603e5db5e180113bed9')
- import_modules = ['pywt', 'pywt.data']
-
depends_on('python@3.5:', type=('build', 'run'), when='@1.1.1:')
depends_on('py-setuptools', type='build')
depends_on('py-cython', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pywcs/package.py b/var/spack/repos/builtin/packages/py-pywcs/package.py
index dea2adb2d9..a7bb6e4fc4 100644
--- a/var/spack/repos/builtin/packages/py-pywcs/package.py
+++ b/var/spack/repos/builtin/packages/py-pywcs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-pyyaml/package.py b/var/spack/repos/builtin/packages/py-pyyaml/package.py
index 00b3d848b7..1c5e7d02eb 100644
--- a/var/spack/repos/builtin/packages/py-pyyaml/package.py
+++ b/var/spack/repos/builtin/packages/py-pyyaml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyPyyaml(PythonPackage):
"""PyYAML is a YAML parser and emitter for Python."""
homepage = "https://pyyaml.org/wiki/PyYAML"
- url = "https://pypi.io/packages/source/P/PyYAML/PyYAML-5.3.1.tar.gz"
+ pypi = "PyYAML/PyYAML-5.3.1.tar.gz"
git = "https://github.com/yaml/pyyaml.git"
maintainers = ['adamjstewart']
@@ -61,8 +61,6 @@ class PyPyyaml(PythonPackage):
return args
# Tests need to be re-added since `phases` was overridden
- run_after('build_ext')(
- PythonPackage._run_default_build_time_test_callbacks)
run_after('install')(
PythonPackage._run_default_install_time_test_callbacks)
run_after('install')(PythonPackage.sanity_check_prefix)
diff --git a/var/spack/repos/builtin/packages/py-pyzmq/package.py b/var/spack/repos/builtin/packages/py-pyzmq/package.py
index 9cd9e46242..9230b285e3 100644
--- a/var/spack/repos/builtin/packages/py-pyzmq/package.py
+++ b/var/spack/repos/builtin/packages/py-pyzmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,14 @@ class PyPyzmq(PythonPackage):
homepage = "https://github.com/zeromq/pyzmq"
url = "https://github.com/zeromq/pyzmq/archive/v14.7.0.tar.gz"
+ import_modules = [
+ 'zmq', 'zmq.green', 'zmq.green.eventloop', 'zmq.sugar', 'zmq.auth',
+ 'zmq.auth.asyncio', 'zmq.utils', 'zmq.backend', 'zmq.backend.cffi',
+ 'zmq.backend.cython', 'zmq.ssh', 'zmq.eventloop',
+ 'zmq.eventloop.minitornado', 'zmq.eventloop.minitornado.platform',
+ 'zmq.log', 'zmq.asyncio', 'zmq.devices'
+ ]
+
version('18.1.0', sha256='32f7618b8104021bc96cbd60be4330bdf37b929e8061dbce362c9f3478a08e21')
version('18.0.1', sha256='7b0107992d8cc4c43d9af1c2e13d573ea761c7feb23d7e0e7da9dc963811e68f')
version('17.1.2', sha256='77a32350440e321466b1748e6063b34a8a73768b62cb674e7d799fbc654b7c45')
@@ -18,9 +26,21 @@ class PyPyzmq(PythonPackage):
version('14.7.0', sha256='809a5fcc720d286c840f7f64696e60322b5b2544795a73db626f09b344d16a15')
depends_on('python@2.7:2.8,3.3:', type=('build', 'run'), when='@18:')
- depends_on('py-cython@0.16:', type=('build', 'run'))
- depends_on('py-cython@0.20:', type=('build', 'run'), when='@18:')
- # these dependencies might only be needed for pypy
+ depends_on('py-cython@0.16:', type='build')
+ depends_on('py-cython@0.20:', type='build', when='@18:')
depends_on('py-py', type=('build', 'run'))
depends_on('py-cffi', type=('build', 'run'))
+ depends_on('py-gevent', type=('build', 'run'))
depends_on('libzmq')
+
+ def setup_build_environment(self, env):
+ # Needed for `spack install --test=root py-pyzmq`
+ # Fixes import failure for zmq.backend.cffi
+ # https://github.com/zeromq/pyzmq/issues/395#issuecomment-22041019
+ env.prepend_path(
+ 'C_INCLUDE_PATH', self.spec['libzmq'].headers.directories[0])
+ env.prepend_path(
+ 'LIBRARY_PATH', self.spec['libzmq'].libs.directories[0])
+
+ # Needed for `spack test run py-pyzmq`
+ setup_run_environment = setup_build_environment
diff --git a/var/spack/repos/builtin/packages/py-qsymm/package.py b/var/spack/repos/builtin/packages/py-qsymm/package.py
new file mode 100644
index 0000000000..7c7f3e5f7f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-qsymm/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyQsymm(PythonPackage):
+ """Qsymm is a symmetry finder and symmetric Hamiltonian generator.
+ It automatically generates model Hamiltonians from symmetry
+ constraints and finds the full symmetry group of your Hamiltonian."""
+
+ homepage = "https://gitlab.kwant-project.org/qt/qsymm"
+ pypi = "qsymm/qsymm-1.2.7.tar.gz"
+ git = "https://gitlab.kwant-project.org/qt/qsymm.git"
+
+ # Add a list of GitHub accounts to notify when the
+ # package is updated
+ maintainers = ['payerle']
+
+ version('1.2.7', sha256='9af92a30c3f72883c744d4717e4ec30c8b48121e208c10553e8e0e428fe43bbc')
+
+ depends_on('python@3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.13:', type=('build', 'run'))
+ depends_on('py-scipy@0.19:', type=('build', 'run'))
+ depends_on('py-sympy@1.1:', type=('build', 'run'))
+ depends_on('py-tinyarray', type=('build', 'run'))
+ depends_on('py-pytest-runner', type='build')
diff --git a/var/spack/repos/builtin/packages/py-qtawesome/package.py b/var/spack/repos/builtin/packages/py-qtawesome/package.py
index 962a74654a..68d7ddb5af 100644
--- a/var/spack/repos/builtin/packages/py-qtawesome/package.py
+++ b/var/spack/repos/builtin/packages/py-qtawesome/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyQtawesome(PythonPackage):
"""FontAwesome icons in PyQt and PySide applications"""
homepage = "https://github.com/spyder-ide/qtawesome"
- url = "https://pypi.io/packages/source/Q/QtAwesome/QtAwesome-0.4.1.tar.gz"
+ pypi = "QtAwesome/QtAwesome-0.4.1.tar.gz"
version('0.4.1', sha256='9ea91efeb83e8b73f814aeca898c29cade0c087acec58e91b4f384595aeb4cfd')
version('0.3.3', sha256='c3c98ee4df0133ae42d202fea20253f8746266b4541c5df4269ca4131792ce0f')
diff --git a/var/spack/repos/builtin/packages/py-qtconsole/package.py b/var/spack/repos/builtin/packages/py-qtconsole/package.py
index 046e04c2e5..ca0e3a0d13 100644
--- a/var/spack/repos/builtin/packages/py-qtconsole/package.py
+++ b/var/spack/repos/builtin/packages/py-qtconsole/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,12 @@ class PyQtconsole(PythonPackage):
"""Jupyter Qt console"""
homepage = "http://ipython.org"
- url = "https://pypi.io/packages/source/q/qtconsole/qtconsole-4.2.1.tar.gz"
+ pypi = "qtconsole/qtconsole-4.2.1.tar.gz"
version('4.5.1', sha256='4af84facdd6f00a6b9b2927255f717bb23ae4b7a20ba1d9ef0a5a5a8dbe01ae2')
version('4.2.1', sha256='25ec7d345528b3e8f3c91be349dd3c699755f206dc4b6ec668e2e5dd60ea18ef')
- variant('doc', default=False, description='Build documentation')
+ variant('docs', default=False, description='Build documentation')
depends_on('python@2.7:2.8,3.3:', type=('build', 'run'))
depends_on('py-ipykernel@4.1:', type=('build', 'run'))
@@ -26,5 +26,3 @@ class PyQtconsole(PythonPackage):
depends_on('py-ipython-genutils', type=('build', 'run'), when='@4.5.1:')
depends_on('py-sphinx@1.3:', type=('build', 'run'), when='+docs')
depends_on('py-pyqt5', type='run')
-
- depends_on('py-mock', type='test', when='^python@2.7:2.8')
diff --git a/var/spack/repos/builtin/packages/py-qtpy/package.py b/var/spack/repos/builtin/packages/py-qtpy/package.py
index 6acb27f6cf..24f28280e2 100644
--- a/var/spack/repos/builtin/packages/py-qtpy/package.py
+++ b/var/spack/repos/builtin/packages/py-qtpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyQtpy(PythonPackage):
"""QtPy: Abtraction layer for PyQt5/PyQt4/PySide/PySide2"""
homepage = "https://github.com/spyder-ide/qtpy"
- url = "https://pypi.io/packages/source/Q/QtPy/QtPy-1.2.1.tar.gz"
+ pypi = "QtPy/QtPy-1.2.1.tar.gz"
version('1.7.1', sha256='e97275750934b3a1f4d8e263f5b889ae817ed36f26867ab0ce52be731ab1ed9e')
version('1.2.1', sha256='5803ce31f50b24295e8e600b76cc91d7f2a3140a5a0d526d40226f9ec5e9097d')
@@ -22,7 +22,7 @@ class PyQtpy(PythonPackage):
depends_on('py-setuptools', type='build')
for api in apis:
- depends_on('py-' + api, when='+' + api, type='run')
+ depends_on('py-' + api, when='api=' + api, type='run')
def setup_run_environment(self, env):
env.set('QT_API', self.spec.variants['api'].value)
diff --git a/var/spack/repos/builtin/packages/py-quantities/package.py b/var/spack/repos/builtin/packages/py-quantities/package.py
index 0f46396aff..1bee1ac00f 100644
--- a/var/spack/repos/builtin/packages/py-quantities/package.py
+++ b/var/spack/repos/builtin/packages/py-quantities/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyQuantities(PythonPackage):
"""Support for physical quantities with units, based on numpy"""
homepage = "http://python-quantities.readthedocs.org"
- url = "https://pypi.io/packages/source/q/quantities/quantities-0.12.1.tar.gz"
+ pypi = "quantities/quantities-0.12.1.tar.gz"
version('0.12.1', sha256='0a03e8511db603c57ca80dee851c43f08d0457f4d592bcac2e154570756cb934')
version('0.11.1', sha256='4382098a501b55bf0fdb3dba2061a161041253697d78811ecfd7c55449836660',
diff --git a/var/spack/repos/builtin/packages/py-quast/package.py b/var/spack/repos/builtin/packages/py-quast/package.py
index 5f8962ab78..e605d1bfb7 100644
--- a/var/spack/repos/builtin/packages/py-quast/package.py
+++ b/var/spack/repos/builtin/packages/py-quast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-queryablelist/package.py b/var/spack/repos/builtin/packages/py-queryablelist/package.py
index f69e621e83..e8bd2b713c 100644
--- a/var/spack/repos/builtin/packages/py-queryablelist/package.py
+++ b/var/spack/repos/builtin/packages/py-queryablelist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyQueryablelist(PythonPackage):
items"""
homepage = "https://github.com/kata198/QueryableList"
- url = "https://pypi.io/packages/source/q/queryablelist/QueryableList-3.1.0.tar.gz"
+ pypi = "queryablelist/QueryableList-3.1.0.tar.gz"
version('3.1.0', sha256='8891dccbadc69a35f5944e1826d8f8db224522aa3af913e301a7a448f5b411e9')
diff --git a/var/spack/repos/builtin/packages/py-questionary/package.py b/var/spack/repos/builtin/packages/py-questionary/package.py
new file mode 100644
index 0000000000..62b21eed9e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-questionary/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyQuestionary(PythonPackage):
+ """Questionary is a Python library for effortlessly building pretty
+ command line interfaces."""
+
+ homepage = "https://github.com/tmbo/questionary"
+ pypi = "questionary/questionary-1.9.0.tar.gz"
+
+ version('1.9.0', sha256='a050fdbb81406cddca679a6f492c6272da90cb09988963817828f697cf091c55')
+
+ depends_on('python@3.6:3.9.999', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-prompt-toolkit@2.0:3.99', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-radical-utils/package.py b/var/spack/repos/builtin/packages/py-radical-utils/package.py
index c0c38ecd40..995dfbfd5d 100644
--- a/var/spack/repos/builtin/packages/py-radical-utils/package.py
+++ b/var/spack/repos/builtin/packages/py-radical-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyRadicalUtils(PythonPackage):
"""Shared code and tools for various RADICAL Projects"""
homepage = "http://radical.rutgers.edu"
- url = "https://pypi.io/packages/source/r/radical.utils/radical.utils-0.45.tar.gz"
+ pypi = "radical.utils/radical.utils-0.45.tar.gz"
version('0.45', sha256='1333cff1a69532e51d4484fbac3fad6b172d415d2055a3141117c7cf8bdee6c5')
version('0.41.1', sha256='582900e0434f49b69885a89bc65dc787362756e1014d52a4afac0bb61bcaa3ce')
diff --git a/var/spack/repos/builtin/packages/py-ranger-fm/package.py b/var/spack/repos/builtin/packages/py-ranger-fm/package.py
index 92485a649b..2b61107f9d 100644
--- a/var/spack/repos/builtin/packages/py-ranger-fm/package.py
+++ b/var/spack/repos/builtin/packages/py-ranger-fm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ from spack import *
class PyRangerFm(PythonPackage):
"""A VIM-inspired filemanager for the console"""
- homepage = "https://pypi.python.org/pypi/ranger-fm"
- url = "https://pypi.io/packages/source/r/ranger-fm/ranger-fm-1.9.2.tar.gz"
+ pypi = "ranger-fm/ranger-fm-1.9.2.tar.gz"
git = "https://github.com/ranger/ranger.git"
version('1.9.2', sha256='0ec62031185ad1f40b9faebd5a2d517c8597019c2eee919e3f1c60ce466d8625')
diff --git a/var/spack/repos/builtin/packages/py-rarfile/package.py b/var/spack/repos/builtin/packages/py-rarfile/package.py
new file mode 100644
index 0000000000..b7d81e5499
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rarfile/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyRarfile(PythonPackage):
+ """RAR archive reader for Python."""
+
+ homepage = "https://github.com/markokr/rarfile"
+ pypi = "rarfile/rarfile-4.0.tar.gz"
+
+ version('4.0', sha256='67548769229c5bda0827c1663dce3f54644f9dbfba4ae86d4da2b2afd3e602a1')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('unrar', type='run')
diff --git a/var/spack/repos/builtin/packages/py-rasterio/package.py b/var/spack/repos/builtin/packages/py-rasterio/package.py
index 8d3b131b4e..32c771a500 100644
--- a/var/spack/repos/builtin/packages/py-rasterio/package.py
+++ b/var/spack/repos/builtin/packages/py-rasterio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,17 +8,20 @@ from spack import *
class PyRasterio(PythonPackage):
"""Rasterio reads and writes geospatial raster data.
+
Geographic information systems use GeoTIFF and other formats to
organize and store gridded, or raster, datasets. Rasterio reads
and writes these formats and provides a Python API based on N-D
arrays."""
homepage = "https://github.com/mapbox/rasterio"
- url = "https://pypi.io/packages/source/r/rasterio/rasterio-1.1.5.tar.gz"
+ pypi = "rasterio/rasterio-1.1.8.tar.gz"
+ git = "https://github.com/mapbox/rasterio.git"
maintainers = ['adamjstewart']
- import_modules = ['rasterio', 'rasterio.rio']
+ version('master', branch='master')
+ version('1.1.8', sha256='f7cac7e2ecf65b4b1eb78c994c63bd429b67dc679b0bc0ecfe487d3d5bf88fd5')
version('1.1.5', sha256='ebe75c71f9257c780615caaec8ef81fa4602702cf9290a65c213e1639284acc9')
version('1.0.24', sha256='4839479621045211f66868ec49625979693450bc2e476f23e7e8ac4804eaf452')
version('1.0a12', sha256='47d460326e04c64590ff56952271a184a6307f814efc34fb319c12e690585f3c')
@@ -26,7 +29,8 @@ class PyRasterio(PythonPackage):
depends_on('python@3.5:', type=('build', 'link', 'run'), when='@1.2:')
depends_on('python@2.7:2.8,3.5:3.8', type=('build', 'link', 'run'), when='@1.1.0:1.1.999')
depends_on('python@2.7:2.8,3.5:3.7', type=('build', 'link', 'run'), when='@:1.0')
- depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-cython', type='build', when='@master')
depends_on('py-affine', type=('build', 'run'))
depends_on('py-attrs', type=('build', 'run'))
depends_on('py-click@4:7', type=('build', 'run'))
@@ -35,12 +39,7 @@ class PyRasterio(PythonPackage):
depends_on('py-snuggs@1.4.1:', type=('build', 'run'))
depends_on('py-click-plugins', type=('build', 'run'))
depends_on('py-enum34', type='run', when='^python@:3.3')
- depends_on('gdal@1.11:3.0', when='@1.0.25:')
+ depends_on('gdal@3.0:', when='@1.2.0:')
+ depends_on('gdal@1.11:3.2', when='@1.1.0:1.1.999')
+ depends_on('gdal@1.11:3.0', when='@1.0.25:1.0.999')
depends_on('gdal@1.11:2', when='@:1.0.24')
- depends_on('py-pytest@2.8.2:', type='test')
- depends_on('py-pytest-cov@2.2.0:', type='test')
- depends_on('py-boto3@1.2.4:', type='test')
- depends_on('py-packaging', type='test')
- depends_on('py-hypothesis', type='test')
- depends_on('py-futures', type='test', when='^python@:3.1')
- depends_on('py-mock', type='test', when='^python@:3.1')
diff --git a/var/spack/repos/builtin/packages/py-ratelim/package.py b/var/spack/repos/builtin/packages/py-ratelim/package.py
index 30653282cb..354739a68d 100644
--- a/var/spack/repos/builtin/packages/py-ratelim/package.py
+++ b/var/spack/repos/builtin/packages/py-ratelim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyRatelim(PythonPackage):
"""Makes it easy to respect rate limits."""
homepage = "https://github.com/themiurgo/ratelim"
- url = "https://pypi.io/packages/source/r/ratelim/ratelim-0.1.6.tar.gz"
+ pypi = "ratelim/ratelim-0.1.6.tar.gz"
version('0.1.6', sha256='826d32177e11f9a12831901c9fda6679fd5bbea3605910820167088f5acbb11d')
diff --git a/var/spack/repos/builtin/packages/py-raven/package.py b/var/spack/repos/builtin/packages/py-raven/package.py
index a78fc59f0a..dc3b40977f 100644
--- a/var/spack/repos/builtin/packages/py-raven/package.py
+++ b/var/spack/repos/builtin/packages/py-raven/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyRaven(PythonPackage):
"""Raven is a client for Sentry."""
homepage = "https://github.com/getsentry/raven-python"
- url = "https://pypi.io/packages/source/r/raven/raven-6.10.0.tar.gz"
+ pypi = "raven/raven-6.10.0.tar.gz"
version('6.10.0', sha256='3fa6de6efa2493a7c827472e984ce9b020797d0da16f1db67197bcc23c8fae54')
diff --git a/var/spack/repos/builtin/packages/py-ray/package.py b/var/spack/repos/builtin/packages/py-ray/package.py
index 8d7b1c2769..7b620d650e 100644
--- a/var/spack/repos/builtin/packages/py-ray/package.py
+++ b/var/spack/repos/builtin/packages/py-ray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,7 @@ class PyRay(PythonPackage):
build_directory = 'python'
depends_on('python@3.6:', type=('build', 'run'))
- depends_on('bazel@3.2.0:', type='build')
+ depends_on('bazel@3.2.0', type='build')
depends_on('py-setuptools', type='build')
depends_on('py-cython@0.29.14:', type='build')
depends_on('py-wheel', type='build')
diff --git a/var/spack/repos/builtin/packages/py-rbtools/package.py b/var/spack/repos/builtin/packages/py-rbtools/package.py
index 4315936c80..1f46324100 100644
--- a/var/spack/repos/builtin/packages/py-rbtools/package.py
+++ b/var/spack/repos/builtin/packages/py-rbtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-rdflib/package.py b/var/spack/repos/builtin/packages/py-rdflib/package.py
index 5e1b8da03a..ae79ffa481 100644
--- a/var/spack/repos/builtin/packages/py-rdflib/package.py
+++ b/var/spack/repos/builtin/packages/py-rdflib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,7 @@ class PyRdflib(PythonPackage):
statements """
homepage = "https://github.com/RDFLib/rdflib"
- url = "https://pypi.io/packages/source/r/rdflib/rdflib-5.0.0.tar.gz"
+ pypi = "rdflib/rdflib-5.0.0.tar.gz"
version('5.0.0', sha256='78149dd49d385efec3b3adfbd61c87afaf1281c30d3fcaf1b323b34f603fb155')
diff --git a/var/spack/repos/builtin/packages/py-readme-renderer/package.py b/var/spack/repos/builtin/packages/py-readme-renderer/package.py
index edfdfa6d46..fc5c2dcb44 100644
--- a/var/spack/repos/builtin/packages/py-readme-renderer/package.py
+++ b/var/spack/repos/builtin/packages/py-readme-renderer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyReadmeRenderer(PythonPackage):
for Warehouse."""
homepage = "https://github.com/pypa/readme_renderer"
- url = "https://pypi.io/packages/source/r/readme_renderer/readme_renderer-24.0.tar.gz"
+ pypi = "readme_renderer/readme_renderer-24.0.tar.gz"
version('24.0', sha256='bb16f55b259f27f75f640acf5e00cf897845a8b3e4731b5c1a436e4b8529202f')
version('16.0', sha256='c46b3418ddef3c3c3f819a4a9cfd56ede15c03d12197962a7e7a89edf1823dd5')
@@ -21,5 +21,3 @@ class PyReadmeRenderer(PythonPackage):
depends_on('py-docutils@0.13.1:', type=('build', 'run'))
depends_on('py-pygments', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-recommonmark/package.py b/var/spack/repos/builtin/packages/py-recommonmark/package.py
index ad27abc0c1..056f448a34 100644
--- a/var/spack/repos/builtin/packages/py-recommonmark/package.py
+++ b/var/spack/repos/builtin/packages/py-recommonmark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyRecommonmark(PythonPackage):
http://recommonmark.readthedocs.org"""
homepage = "https://github.com/readthedocs/recommonmark"
- url = "https://pypi.io/packages/source/r/recommonmark/recommonmark-0.6.0.tar.gz"
+ pypi = "recommonmark/recommonmark-0.6.0.tar.gz"
version('0.6.0', sha256='29cd4faeb6c5268c633634f2d69aef9431e0f4d347f90659fd0aab20e541efeb')
diff --git a/var/spack/repos/builtin/packages/py-redis/package.py b/var/spack/repos/builtin/packages/py-redis/package.py
index 970f97f12e..2d99d04e4b 100644
--- a/var/spack/repos/builtin/packages/py-redis/package.py
+++ b/var/spack/repos/builtin/packages/py-redis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,14 +9,13 @@ from spack import *
class PyRedis(PythonPackage):
"""The Python interface to the Redis key-value store."""
- homepage = "https://pypi.org/project/redis/"
- url = "https://pypi.io/packages/source/r/redis/redis-3.3.8.tar.gz"
+ pypi = "redis/redis-3.3.8.tar.gz"
version('3.5.3', sha256='0e7e0cfca8660dea8b7d5cd8c4f6c5e29e11f31158c0b0ae91a397f00e5a05a2')
version('3.5.0', sha256='7378105cd8ea20c4edc49f028581e830c01ad5f00be851def0f4bc616a83cd89')
version('3.3.8', sha256='98a22fb750c9b9bb46e75e945dc3f61d0ab30d06117cbb21ff9cd1d315fedd3b')
- variant("hiredis", default=False, description="Support for hiredis which speeds up parsing of multi bulk replies")
+ variant("hiredis", default=False, description="Support for hiredis which speeds up parsing of multi bulk replies")
depends_on('python@2.7:2.8,3.4:', when="@3.3.0:3.3.99", type=('build', 'run'))
depends_on('python@2.7:2.8,3.5:', when="@3.4.0:", type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-regex/package.py b/var/spack/repos/builtin/packages/py-regex/package.py
index a6ab78adb7..95046d308b 100644
--- a/var/spack/repos/builtin/packages/py-regex/package.py
+++ b/var/spack/repos/builtin/packages/py-regex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,10 +9,12 @@ from spack import *
class PyRegex(PythonPackage):
"""Alternative regular expression module, to replace re."""
- homepage = "https://pypi.python.org/pypi/regex/"
- url = "https://pypi.io/packages/source/r/regex/regex-2017.07.11.tar.gz"
+ pypi = "regex/regex-2020.11.13.tar.gz"
- version('2019.11.1', sha256='720e34a539a76a1fedcebe4397290604cc2bdf6f81eca44adb9fb2ea071c0c69')
+ version('2020.11.13', sha256='83d6b356e116ca119db8e7c6fc2983289d87b27b3fac238cfe5dca529d884562')
+ version('2019.11.1', sha256='720e34a539a76a1fedcebe4397290604cc2bdf6f81eca44adb9fb2ea071c0c69')
+ version('2019.02.07', sha256='4a1a1d963f462c13722b34ef1f82c4707091b0a3fb9b5fd79b6670c38b734095')
+ version('2018.01.10', sha256='139678fc013b75e486e580c39b4c52d085ed7362e400960f8be1711a414f16b5')
version('2017.07.11', sha256='dbda8bdc31a1c85445f1a1b29d04abda46e5c690f8f933a9cc3a85a358969616')
- depends_on('py-setuptools', type='build', when='@2017.07.11')
+ depends_on('py-setuptools', type='build', when='@:2018,2020:')
diff --git a/var/spack/repos/builtin/packages/py-reindent/package.py b/var/spack/repos/builtin/packages/py-reindent/package.py
new file mode 100644
index 0000000000..09c489faff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-reindent/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyReindent(PythonPackage):
+ """Change Python (.py) files to use 4-space indents and no hard tab
+ characters. Also trim excess spaces and tabs from ends of lines, and remove
+ empty lines at the end of files. Also ensure the last line ends with a
+ newline."""
+
+ pypi = "reindent/reindent-3.5.1.tar.gz"
+
+ version('3.5.1', sha256='59aeb8fbc16e45686f65df23b91896a17eb14ace7a7546860f50d2bb5ec4c9c0')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-reportlab/package.py b/var/spack/repos/builtin/packages/py-reportlab/package.py
index 222890124f..34f7d31169 100644
--- a/var/spack/repos/builtin/packages/py-reportlab/package.py
+++ b/var/spack/repos/builtin/packages/py-reportlab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyReportlab(PythonPackage):
"""The ReportLab Toolkit. An Open Source Python library for generating
PDFs and graphics."""
- homepage = "https://pypi.python.org/pypi/reportlab"
- url = "https://pypi.io/packages/source/r/reportlab/reportlab-3.4.0.tar.gz"
+ pypi = "reportlab/reportlab-3.4.0.tar.gz"
version('3.4.0', sha256='5beaf35e59dfd5ebd814fdefd76908292e818c982bd7332b5d347dfd2f01c343')
diff --git a/var/spack/repos/builtin/packages/py-repoze-lru/package.py b/var/spack/repos/builtin/packages/py-repoze-lru/package.py
index ceec2fcb87..49e6a98d53 100644
--- a/var/spack/repos/builtin/packages/py-repoze-lru/package.py
+++ b/var/spack/repos/builtin/packages/py-repoze-lru/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyRepozeLru(PythonPackage):
"""A tiny LRU cache implementation and decorator"""
- homepage = "https://pypi.org/project/repoze.lru/"
- url = "https://pypi.io/packages/source/r/repoze.lru/repoze.lru-0.7.tar.gz"
+ pypi = "repoze.lru/repoze.lru-0.7.tar.gz"
version('0.7', sha256='0429a75e19380e4ed50c0694e26ac8819b4ea7851ee1fc7583c8572db80aff77')
diff --git a/var/spack/repos/builtin/packages/py-reproject/package.py b/var/spack/repos/builtin/packages/py-reproject/package.py
index 3b73633641..0fea64d769 100644
--- a/var/spack/repos/builtin/packages/py-reproject/package.py
+++ b/var/spack/repos/builtin/packages/py-reproject/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,7 @@ class PyReproject(PythonPackage):
astropy-healpix package."""
homepage = 'https://reproject.readthedocs.io/'
- url = 'https://pypi.io/packages/source/r/reproject/reproject-0.7.1.tar.gz'
+ pypi = 'reproject/reproject-0.7.1.tar.gz'
version('0.7.1', sha256='95c0fa49e6b4e36455b91fa09ad1b71b230c990ad91d948af67ea3509a1a4ccb')
diff --git a/var/spack/repos/builtin/packages/py-requests-futures/package.py b/var/spack/repos/builtin/packages/py-requests-futures/package.py
index a11d577e1c..dd69b2ff03 100644
--- a/var/spack/repos/builtin/packages/py-requests-futures/package.py
+++ b/var/spack/repos/builtin/packages/py-requests-futures/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyRequestsFutures(PythonPackage):
"""Asynchronous Python HTTP Requests for Humans using Futures"""
homepage = "https://github.com/ross/requests-futures"
- url = "https://pypi.io/packages/source/r/requests-futures/requests-futures-1.0.0.tar.gz"
+ pypi = "requests-futures/requests-futures-1.0.0.tar.gz"
version('1.0.0', sha256='35547502bf1958044716a03a2f47092a89efe8f9789ab0c4c528d9c9c30bc148')
diff --git a/var/spack/repos/builtin/packages/py-requests-mock/package.py b/var/spack/repos/builtin/packages/py-requests-mock/package.py
index 94807b5cbd..8b44cbf5f7 100644
--- a/var/spack/repos/builtin/packages/py-requests-mock/package.py
+++ b/var/spack/repos/builtin/packages/py-requests-mock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyRequestsMock(PythonPackage):
"""Mock out responses from the requests package."""
homepage = "https://requests-mock.readthedocs.io/"
- url = "https://pypi.io/packages/source/r/requests-mock/requests-mock-1.7.0.tar.gz"
-
- import_modules = ['requests_mock']
+ pypi = "requests-mock/requests-mock-1.7.0.tar.gz"
version('1.7.0', sha256='88d3402dd8b3c69a9e4f9d3a73ad11b15920c6efd36bc27bf1f701cf4a8e4646')
diff --git a/var/spack/repos/builtin/packages/py-requests-ntlm/package.py b/var/spack/repos/builtin/packages/py-requests-ntlm/package.py
new file mode 100644
index 0000000000..011b219959
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-requests-ntlm/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyRequestsNtlm(PythonPackage):
+ """This package allows for HTTP NTLM authentication using the requests library."""
+
+ homepage = "https://github.com/requests/requests-ntlm"
+ pypi = "requests_ntlm/requests_ntlm-1.1.0.tar.gz"
+
+ version('1.1.0', sha256='9189c92e8c61ae91402a64b972c4802b2457ce6a799d658256ebf084d5c7eb71')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-requests@2.0.0:', type=('build', 'run'))
+ depends_on('py-ntlm-auth@1.0.2:', type=('build', 'run'))
+ depends_on('py-cryptography@1.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-requests-oauthlib/package.py b/var/spack/repos/builtin/packages/py-requests-oauthlib/package.py
index 6c6a633e47..09d8de87e5 100644
--- a/var/spack/repos/builtin/packages/py-requests-oauthlib/package.py
+++ b/var/spack/repos/builtin/packages/py-requests-oauthlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyRequestsOauthlib(PythonPackage):
"""
homepage = "https://github.com/requests/requests-oauthlib"
- url = "https://pypi.io/packages/source/r/requests-oauthlib/requests-oauthlib-1.2.0.tar.gz"
+ pypi = "requests-oauthlib/requests-oauthlib-1.2.0.tar.gz"
version('1.2.0', sha256='bd6533330e8748e94bf0b214775fed487d309b8b8fe823dc45641ebcd9a32f57')
version('0.3.3', sha256='37557b4de3eef50d2a4c65dc9382148b8331f04b1c637c414b3355feb0f007e9')
@@ -20,5 +20,3 @@ class PyRequestsOauthlib(PythonPackage):
depends_on('py-oauthlib@3.0.0:', type=('build', 'run'))
depends_on('py-requests@2.0.0:', type=('build', 'run'))
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
- depends_on('py-mock', type='test')
- depends_on('py-requests-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-requests-toolbelt/package.py b/var/spack/repos/builtin/packages/py-requests-toolbelt/package.py
index e34d1c5a73..100efc5020 100644
--- a/var/spack/repos/builtin/packages/py-requests-toolbelt/package.py
+++ b/var/spack/repos/builtin/packages/py-requests-toolbelt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyRequestsToolbelt(PythonPackage):
python-requests"""
homepage = "https://toolbelt.readthedocs.org/"
- url = "https://pypi.io/packages/source/r/requests-toolbelt/requests-toolbelt-0.9.1.tar.gz"
+ pypi = "requests-toolbelt/requests-toolbelt-0.9.1.tar.gz"
version('0.9.1', sha256='968089d4584ad4ad7c171454f0a5c6dac23971e9472521ea3b6d49d610aa6fc0')
version('0.8.0', sha256='f6a531936c6fa4c6cfce1b9c10d5c4f498d16528d2a54a22ca00011205a187b5')
diff --git a/var/spack/repos/builtin/packages/py-requests/package.py b/var/spack/repos/builtin/packages/py-requests/package.py
index 30af0cd73f..ab0400ca48 100644
--- a/var/spack/repos/builtin/packages/py-requests/package.py
+++ b/var/spack/repos/builtin/packages/py-requests/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,18 +10,7 @@ class PyRequests(PythonPackage):
"""Python HTTP for Humans."""
homepage = "http://python-requests.org"
- url = "https://pypi.io/packages/source/r/requests/requests-2.24.0.tar.gz"
-
- import_modules = [
- 'requests', 'requests.packages', 'requests.packages.chardet',
- 'requests.packages.urllib3', 'requests.packages.idna',
- 'requests.packages.chardet.cli', 'requests.packages.urllib3.util',
- 'requests.packages.urllib3.packages',
- 'requests.packages.urllib3.contrib',
- 'requests.packages.urllib3.packages.ssl_match_hostname',
- 'requests.packages.urllib3.packages.backports',
- 'requests.packages.urllib3.contrib._securetransport'
- ]
+ pypi = "requests/requests-2.24.0.tar.gz"
version('2.24.0', sha256='b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b')
version('2.23.0', sha256='b3f43d496c6daba4493e7c431722aeb7dbc6288f52a6e04e7b6023b0247817e6')
@@ -41,10 +30,3 @@ class PyRequests(PythonPackage):
depends_on('py-idna@2.5:2.999', type=('build', 'run'), when='@2.23.0:')
depends_on('py-urllib3@1.21.1:1.24,1.25.2:1.25.999', type=('build', 'run'), when='@2.16.0:')
depends_on('py-certifi@2017.4.17:', type=('build', 'run'), when='@2.16.0:')
-
- depends_on('py-pytest-httpbin@0.0.7', type='test')
- depends_on('py-pytest-cov', type='test')
- depends_on('py-pytest-mock', type='test')
- depends_on('py-pytest-xdist', type='test')
- depends_on('py-pysocks@1.5.6,1.5.8:', type='test')
- depends_on('py-pytest@2.8.0:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-resampy/package.py b/var/spack/repos/builtin/packages/py-resampy/package.py
index 35249c8acc..d591a22fb4 100644
--- a/var/spack/repos/builtin/packages/py-resampy/package.py
+++ b/var/spack/repos/builtin/packages/py-resampy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyResampy(PythonPackage):
"""Efficient sample rate conversion in python"""
homepage = "https://github.com/bmcfee/resampy"
- url = "https://pypi.io/packages/source/r/resampy/resampy-0.2.2.tar.gz"
+ pypi = "resampy/resampy-0.2.2.tar.gz"
version('0.2.2', sha256='62af020d8a6674d8117f62320ce9470437bb1d738a5d06cd55591b69b463929e')
diff --git a/var/spack/repos/builtin/packages/py-restview/package.py b/var/spack/repos/builtin/packages/py-restview/package.py
index 40d2765aec..48e951944f 100644
--- a/var/spack/repos/builtin/packages/py-restview/package.py
+++ b/var/spack/repos/builtin/packages/py-restview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyRestview(PythonPackage):
"""A viewer for ReStructuredText documents that renders them on the fly."""
homepage = "https://mg.pov.lt/restview/"
- url = "https://pypi.io/packages/source/r/restview/restview-2.6.1.tar.gz"
+ pypi = "restview/restview-2.6.1.tar.gz"
version('2.6.1', sha256='14d261ee0edf30e0ebc1eb320428ef4898e97422b00337863556966b851fb5af')
diff --git a/var/spack/repos/builtin/packages/py-resultsfile/package.py b/var/spack/repos/builtin/packages/py-resultsfile/package.py
index 6f00a3ab1d..0b1b862416 100644
--- a/var/spack/repos/builtin/packages/py-resultsfile/package.py
+++ b/var/spack/repos/builtin/packages/py-resultsfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-retrying/package.py b/var/spack/repos/builtin/packages/py-retrying/package.py
index ef5a7d05ca..401431d860 100644
--- a/var/spack/repos/builtin/packages/py-retrying/package.py
+++ b/var/spack/repos/builtin/packages/py-retrying/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyRetrying(PythonPackage):
about anything."""
homepage = "https://github.com/rholder/retrying"
- url = "https://pypi.io/packages/source/r/retrying/retrying-1.3.3.tar.gz"
+ pypi = "retrying/retrying-1.3.3.tar.gz"
version('1.3.3', sha256='08c039560a6da2fe4f2c426d0766e284d3b736e355f8dd24b37367b0bb41973b')
diff --git a/var/spack/repos/builtin/packages/py-rfc3986/package.py b/var/spack/repos/builtin/packages/py-rfc3986/package.py
index 1650562db2..c7d6353ec7 100644
--- a/var/spack/repos/builtin/packages/py-rfc3986/package.py
+++ b/var/spack/repos/builtin/packages/py-rfc3986/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyRfc3986(PythonPackage):
validation and authority parsing."""
homepage = "http://rfc3986.readthedocs.io/"
- url = "https://pypi.io/packages/source/r/rfc3986/rfc3986-1.4.0.tar.gz"
+ pypi = "rfc3986/rfc3986-1.4.0.tar.gz"
version('1.4.0', sha256='112398da31a3344dc25dbf477d8df6cb34f9278a94fee2625d89e4514be8bb9d')
diff --git a/var/spack/repos/builtin/packages/py-rich/package.py b/var/spack/repos/builtin/packages/py-rich/package.py
new file mode 100644
index 0000000000..28f6f8c5fe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rich/package.py
@@ -0,0 +1,35 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyRich(PythonPackage):
+ """Rich is a Python library for rich text and beautiful formatting
+ in the terminal.
+ """
+
+ homepage = "https://github.com/willmcgugan/rich"
+ pypi = "rich/rich-9.4.0.tar.gz"
+
+ version('9.9.0', sha256='0bd8f42c3a03b7ef5e311d5e37f47bea9d268f541981c169072be5869c007957')
+ version('9.8.2', sha256='c0d5903b463f015b254d6f52da82af3821d266fe516ae05fdc266e6abba5c3a8')
+ version('9.8.1', sha256='0ec853f882613e75a5e46d545ddaa48cad235c616eaeb094792012fe22e8b2c6')
+ version('9.8.0', sha256='c91c2587dba9aa8dd30c5f090e700f54433ccd73e209f4737e10385c4c1cbf19')
+ version('9.7.0', sha256='25583ce533afae71de086ca97cf0aa883a5e1a220dfcc6049a2809a74bc79ca0')
+ version('9.6.2', sha256='b6a7f9ef1a35c248498952d3454fb4f88de415dd989f97c3e5c5e2235d66e3a5')
+ version('9.6.1', sha256='5ac9f4f7f6b0e32e7e412de127f15b94144e22c9a7896551474d640143bbaa7b')
+ version('9.6.0', sha256='ae7f5f24fc90c76ccb54883f4bd633cbd146e0bbe3e070275ca97038ce53cf2f')
+ version('9.5.1', sha256='8b937e2d2c4ff9dcfda8a5910a8cd384bd30f50ec92346d616f62065c662df5f')
+ version('9.5.0', sha256='a65a9d003cb6e87e6fa5d1b53bff6f43a8d7475524c58873acdbf5bba0683fa3')
+ version('9.4.0', sha256='bde23a1761373fed2802502ff98292c5d735a5389ed96f4fe1be5fb4c2cde8ea')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-typing-extensions@3.7.4:3.99', type=('build', 'run'))
+ depends_on('py-dataclasses@0.7:0.8', when='^python@:3.6', type=('build', 'run'))
+ depends_on('py-pygments@2.6:2.99', type=('build', 'run'))
+ depends_on('py-commonmark@0.9.0:0.9.999', type=('build', 'run'))
+ depends_on('py-colorama@0.4.0:0.4.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-rios/package.py b/var/spack/repos/builtin/packages/py-rios/package.py
index a2b56e941a..b4b3ac4a18 100644
--- a/var/spack/repos/builtin/packages/py-rios/package.py
+++ b/var/spack/repos/builtin/packages/py-rios/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-rise/package.py b/var/spack/repos/builtin/packages/py-rise/package.py
index e9eba520ef..596893f274 100644
--- a/var/spack/repos/builtin/packages/py-rise/package.py
+++ b/var/spack/repos/builtin/packages/py-rise/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyRise(PythonPackage):
"""Reveal.js - Jupyter/IPython Slideshow Extension"""
homepage = "http://rise.readthedocs.io/"
- url = "https://pypi.io/packages/source/r/rise/rise-5.6.1.tar.gz"
+ pypi = "rise/rise-5.6.1.tar.gz"
version('5.6.1', sha256='1343f068d01adc4dd0226d9b278ce93fc92f365d827431a57e8d5679eb39f4d6')
diff --git a/var/spack/repos/builtin/packages/py-rmm/package.py b/var/spack/repos/builtin/packages/py-rmm/package.py
index 96631d3fbb..69d88ebb19 100644
--- a/var/spack/repos/builtin/packages/py-rmm/package.py
+++ b/var/spack/repos/builtin/packages/py-rmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-rnacocktail/package.py b/var/spack/repos/builtin/packages/py-rnacocktail/package.py
index 13c05186e4..b8673a0e2a 100644
--- a/var/spack/repos/builtin/packages/py-rnacocktail/package.py
+++ b/var/spack/repos/builtin/packages/py-rnacocktail/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-robotframework/package.py b/var/spack/repos/builtin/packages/py-robotframework/package.py
index 6eaa479102..8db83f3f8b 100644
--- a/var/spack/repos/builtin/packages/py-robotframework/package.py
+++ b/var/spack/repos/builtin/packages/py-robotframework/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,3 @@ class PyRobotframework(PythonPackage):
version('3.2.1', sha256='9805faa0990125ff2c9689b673448d5f47e78470e7a8e95af1606a775fa8379f')
depends_on('py-setuptools', type=('build', 'run'))
- depends_on('py-enum34', type='test')
- depends_on('py-ipaddress', type='test')
- depends_on('py-mock', type='test')
- depends_on('py-unittest2', type='test')
diff --git a/var/spack/repos/builtin/packages/py-rope/package.py b/var/spack/repos/builtin/packages/py-rope/package.py
index 7ea1eea1fc..4ee57419b0 100644
--- a/var/spack/repos/builtin/packages/py-rope/package.py
+++ b/var/spack/repos/builtin/packages/py-rope/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyRope(PythonPackage):
"""a python refactoring library."""
homepage = "https://github.com/python-rope/rope"
- url = "https://pypi.io/packages/source/r/rope/rope-0.10.5.tar.gz"
+ pypi = "rope/rope-0.10.5.tar.gz"
version('0.11.0', sha256='a108c445e1cd897fe19272ab7877d172e7faf3d4148c80e7d20faba42ea8f7b2')
version('0.10.7', sha256='a09edfd2034fd50099a67822f9bd851fbd0f4e98d3b87519f6267b60e50d80d1')
diff --git a/var/spack/repos/builtin/packages/py-rosdep/package.py b/var/spack/repos/builtin/packages/py-rosdep/package.py
new file mode 100644
index 0000000000..83ddbc5ef9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rosdep/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyRosdep(PythonPackage):
+ """rosdep package manager abstraction tool for ROS."""
+
+ homepage = "https://wiki.ros.org/rosdep"
+ pypi = "rosdep/rosdep-0.20.0.tar.gz"
+
+ version('0.20.0', sha256='1de76e41ef17c7289a11d9de594f6c08e8422f26ad09bc855b4f1f4da5e9bfe7')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-catkin-pkg@0.4.0:', type=('build', 'run'))
+ depends_on('py-rospkg@1.2.7:', type=('build', 'run'))
+ depends_on('py-rosdistro@0.7.5:', type=('build', 'run'))
+ depends_on('py-pyyaml@3.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-rosdistro/package.py b/var/spack/repos/builtin/packages/py-rosdistro/package.py
new file mode 100644
index 0000000000..70ba8cd13d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rosdistro/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyRosdistro(PythonPackage):
+ """A tool to work with rosdistro files."""
+
+ homepage = "https://wiki.ros.org/rosdistro"
+ pypi = "rosdistro/rosdistro-0.8.3.tar.gz"
+
+ version('0.8.3', sha256='e14893e0408a2e1fb3ecaef0a9fc978a3675519b828c1fff29ba6a78299b37bd')
+
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-argparse', when='^python@:2.6', type=('build', 'run'))
+ depends_on('py-catkin-pkg', type=('build', 'run'))
+ depends_on('py-rospkg', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-rosinstall-generator/package.py b/var/spack/repos/builtin/packages/py-rosinstall-generator/package.py
new file mode 100644
index 0000000000..e534eacfcc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rosinstall-generator/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyRosinstallGenerator(PythonPackage):
+ """A tool for generating rosinstall files."""
+
+ homepage = "https://wiki.ros.org/rosinstall_generator"
+ pypi = "rosinstall-generator/rosinstall_generator-0.1.22.tar.gz"
+
+ version('0.1.22', sha256='22d22599cd3f08a1f77fb2b1d9464cc8062ede50752a75564d459fcf5447b8c5')
+
+ depends_on('py-catkin-pkg@0.1.28:', type=('build', 'run'))
+ depends_on('py-rosdistro@0.7.3:', type=('build', 'run'))
+ depends_on('py-rospkg', type=('build', 'run'))
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-rosinstall/package.py b/var/spack/repos/builtin/packages/py-rosinstall/package.py
new file mode 100644
index 0000000000..eb5e58b661
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rosinstall/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyRosinstall(PythonPackage):
+ """The installer for ROS."""
+
+ homepage = "https://wiki.ros.org/rosinstall"
+ pypi = "rosinstall/rosinstall-0.7.8.tar.gz"
+
+ version('0.7.8', sha256='2ba808bf8bac2cc3f13af9745184b9714c1426e11d09eb96468611b2ad47ed40')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-vcstools@0.1.38:', type=('build', 'run'))
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-rosdistro@0.3.0:', type=('build', 'run'))
+ depends_on('py-catkin-pkg', type=('build', 'run'))
+ depends_on('py-wstool@0.1.12:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-rospkg/package.py b/var/spack/repos/builtin/packages/py-rospkg/package.py
new file mode 100644
index 0000000000..8ce4dfe107
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rospkg/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyRospkg(PythonPackage):
+ """Library for retrieving information about ROS packages and stacks."""
+
+ homepage = "https://wiki.ros.org/rospkg"
+ pypi = "rospkg/rospkg-1.2.9.tar.gz"
+
+ version('1.2.9', sha256='d57aea0e7fdbf42e8189ef5e21b9fb4f8a70ecb6cd1a56a278eab301f6a2b074')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-catkin-pkg', type=('build', 'run'))
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-distro', type=('build', 'run'))
+ depends_on('py-argparse', when='^python@:2.6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-rpy2/package.py b/var/spack/repos/builtin/packages/py-rpy2/package.py
index ef9b847b00..87a7b9d003 100644
--- a/var/spack/repos/builtin/packages/py-rpy2/package.py
+++ b/var/spack/repos/builtin/packages/py-rpy2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,7 @@ class PyRpy2(PythonPackage):
structures and functions.
"""
- homepage = "https://pypi.python.org/pypi/rpy2"
- url = "https://pypi.io/packages/source/r/rpy2/rpy2-2.5.4.tar.gz"
+ pypi = "rpy2/rpy2-2.5.4.tar.gz"
version('3.0.4', sha256='2af5158a5d56af7f7bf5e54d8d7e87b6f115ff40f056d82f93cad0cbf6acc0cb')
version('3.0.0', sha256='34efc2935d9015527837d6b1de29641863d184b19d39ad415d5384be8a015bce')
diff --git a/var/spack/repos/builtin/packages/py-rq/package.py b/var/spack/repos/builtin/packages/py-rq/package.py
index 13fc0493a3..ac3c01eccb 100644
--- a/var/spack/repos/builtin/packages/py-rq/package.py
+++ b/var/spack/repos/builtin/packages/py-rq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-rsa/package.py b/var/spack/repos/builtin/packages/py-rsa/package.py
index 85e2b84d00..45fbc3fa9e 100644
--- a/var/spack/repos/builtin/packages/py-rsa/package.py
+++ b/var/spack/repos/builtin/packages/py-rsa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyRsa(PythonPackage):
"""Pure-Python RSA implementation"""
homepage = "https://stuvel.eu/rsa"
- url = "https://pypi.io/packages/source/r/rsa/rsa-3.4.2.tar.gz"
-
- import_modules = ['rsa']
+ pypi = "rsa/rsa-3.4.2.tar.gz"
version('4.0', sha256='1a836406405730121ae9823e19c6e806c62bbad73f890574fff50efa4122c487')
version('3.4.2', sha256='25df4e10c263fb88b5ace923dd84bf9aa7f5019687b5e55382ffcdb8bede9db5')
diff --git a/var/spack/repos/builtin/packages/py-rseqc/package.py b/var/spack/repos/builtin/packages/py-rseqc/package.py
index fa9fc581b4..194a3145de 100644
--- a/var/spack/repos/builtin/packages/py-rseqc/package.py
+++ b/var/spack/repos/builtin/packages/py-rseqc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyRseqc(PythonPackage):
data."""
homepage = "http://rseqc.sourceforge.net"
- url = "https://pypi.io/packages/source/R/RSeQC/RSeQC-2.6.4.tar.gz"
+ pypi = "RSeQC/RSeQC-2.6.4.tar.gz"
version('3.0.1', sha256='d5f4cb2c24a7348929f5c4947d84c5869e8cd2cba5ba5248d991ebb37c4c6b3d')
version('2.6.4', sha256='e11df661bda1c24fc950f0bce06f586a68ab5f4a2c356f43e4a0dfdc1e184315')
diff --git a/var/spack/repos/builtin/packages/py-rtree/package.py b/var/spack/repos/builtin/packages/py-rtree/package.py
index 1c62efb500..ea15601698 100644
--- a/var/spack/repos/builtin/packages/py-rtree/package.py
+++ b/var/spack/repos/builtin/packages/py-rtree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyRtree(PythonPackage):
"""Python interface to the RTREE.4 Library."""
homepage = "http://toblerity.org/rtree/"
- url = "https://pypi.io/packages/source/R/Rtree/Rtree-0.8.3.tar.gz"
+ pypi = "Rtree/Rtree-0.8.3.tar.gz"
version('0.8.3', sha256='6cb9cf3000963ea6a3db777a597baee2bc55c4fc891e4f1967f262cc96148649')
diff --git a/var/spack/repos/builtin/packages/py-ruamel-ordereddict/package.py b/var/spack/repos/builtin/packages/py-ruamel-ordereddict/package.py
index 88cdd59914..fcb4529745 100644
--- a/var/spack/repos/builtin/packages/py-ruamel-ordereddict/package.py
+++ b/var/spack/repos/builtin/packages/py-ruamel-ordereddict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyRuamelOrdereddict(PythonPackage):
implements a subset of ordereddict functionality."""
homepage = "https://bitbucket.org/ruamel/ordereddict"
- url = "https://pypi.io/packages/source/r/ruamel.ordereddict/ruamel.ordereddict-0.4.14.tar.gz"
+ pypi = "ruamel.ordereddict/ruamel.ordereddict-0.4.14.tar.gz"
version('0.4.14', sha256='281051d26eb2b18ef3d920e1e260716a52bd058a6b1a2f324102fc6a15cb8d4a')
diff --git a/var/spack/repos/builtin/packages/py-ruamel-yaml-clib/package.py b/var/spack/repos/builtin/packages/py-ruamel-yaml-clib/package.py
index 9724bff0af..6d18dca9a6 100644
--- a/var/spack/repos/builtin/packages/py-ruamel-yaml-clib/package.py
+++ b/var/spack/repos/builtin/packages/py-ruamel-yaml-clib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyRuamelYamlClib(PythonPackage):
libyaml."""
homepage = "https://bitbucket.org/ruamel/yaml.clib"
- url = "https://pypi.io/packages/source/r/ruamel.yaml.clib/ruamel.yaml.clib-0.2.0.tar.gz"
+ pypi = "ruamel.yaml.clib/ruamel.yaml.clib-0.2.0.tar.gz"
version('0.2.0', sha256='b66832ea8077d9b3f6e311c4a53d06273db5dc2db6e8a908550f3c14d67e718c')
diff --git a/var/spack/repos/builtin/packages/py-ruamel-yaml/package.py b/var/spack/repos/builtin/packages/py-ruamel-yaml/package.py
index 68e9348936..3375827faf 100644
--- a/var/spack/repos/builtin/packages/py-ruamel-yaml/package.py
+++ b/var/spack/repos/builtin/packages/py-ruamel-yaml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyRuamelYaml(PythonPackage):
"""
homepage = "https://sourceforge.net/p/ruamel-yaml/code/ci/default/tree"
- url = "https://pypi.io/packages/source/r/ruamel.yaml/ruamel.yaml-0.16.10.tar.gz"
+ pypi = "ruamel.yaml/ruamel.yaml-0.16.10.tar.gz"
version('0.16.10', sha256='099c644a778bf72ffa00524f78dd0b6476bca94a1da344130f4bf3381ce5b954')
version('0.16.5', sha256='412a6f5cfdc0525dee6a27c08f5415c7fd832a7afcb7a0ed7319628aed23d408')
diff --git a/var/spack/repos/builtin/packages/py-s3cmd/package.py b/var/spack/repos/builtin/packages/py-s3cmd/package.py
index 469ee29703..fc8391c561 100644
--- a/var/spack/repos/builtin/packages/py-s3cmd/package.py
+++ b/var/spack/repos/builtin/packages/py-s3cmd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-s3fs/package.py b/var/spack/repos/builtin/packages/py-s3fs/package.py
new file mode 100644
index 0000000000..359b228222
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-s3fs/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyS3fs(PythonPackage):
+ """S3FS builds on aiobotocore to provide a convenient Python filesystem
+ interface for S3."""
+
+ homepage = "https://s3fs.readthedocs.io/en/latest/"
+ pypi = "s3fs/s3fs-0.5.2.tar.gz"
+
+ version('0.5.2', sha256='87e5210415db17b9de18c77bcfc4a301570cc9030ee112b77dc47ab82426bae1')
+
+ depends_on('python@3.7:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-aiobotocore@1.0.1:', type=('build', 'run'))
+ depends_on('py-fsspec@0.8.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-s3transfer/package.py b/var/spack/repos/builtin/packages/py-s3transfer/package.py
index 5db6bd28a3..1c7c71e378 100644
--- a/var/spack/repos/builtin/packages/py-s3transfer/package.py
+++ b/var/spack/repos/builtin/packages/py-s3transfer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,11 @@ class PyS3transfer(PythonPackage):
"""S3transfer is a Python library for managing Amazon S3 transfers."""
homepage = "https://github.com/boto/s3transfer"
- url = "https://pypi.io/packages/source/s/s3transfer/s3transfer-0.2.1.tar.gz"
-
- import_modules = ['s3transfer']
+ pypi = "s3transfer/s3transfer-0.2.1.tar.gz"
+ version('0.3.4', sha256='7fdddb4f22275cf1d32129e21f056337fd2a80b6ccef1664528145b72c49e6d2')
version('0.2.1', sha256='6efc926738a3cd576c2a79725fed9afde92378aa5c6a957e3af010cb019fac9d')
depends_on('py-setuptools', type='build')
depends_on('py-botocore@1.12.36:1.999', type=('build', 'run'))
depends_on('py-futures@2.2:3', type=('build', 'run'), when='^python@:2')
- depends_on('py-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-sacremoses/package.py b/var/spack/repos/builtin/packages/py-sacremoses/package.py
index 35166e245c..4a92ca03e8 100644
--- a/var/spack/repos/builtin/packages/py-sacremoses/package.py
+++ b/var/spack/repos/builtin/packages/py-sacremoses/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PySacremoses(PythonPackage):
"""LGPL MosesTokenizer in Python."""
homepage = "https://github.com/alvations/sacremoses"
- url = "https://pypi.io/packages/source/s/sacremoses/sacremoses-0.0.39.tar.gz"
+ pypi = "sacremoses/sacremoses-0.0.39.tar.gz"
version('0.0.39', sha256='53fad38b93dd5bf1657a68d52bcca5d681d4246477a764b7791a2abd5c7d1f4c')
diff --git a/var/spack/repos/builtin/packages/py-saga-python/package.py b/var/spack/repos/builtin/packages/py-saga-python/package.py
index 96fb39c3f5..2dc7172023 100644
--- a/var/spack/repos/builtin/packages/py-saga-python/package.py
+++ b/var/spack/repos/builtin/packages/py-saga-python/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySagaPython(PythonPackage):
"""A light-weight access layer for distributed computing infrastructure"""
homepage = "http://radical.rutgers.edu"
- url = "https://pypi.io/packages/source/s/saga-python/saga-python-0.41.3.tar.gz"
+ pypi = "saga-python/saga-python-0.41.3.tar.gz"
version('0.41.3', sha256='b30961e634f32f6008e292aa1fe40560f257d5294b0cda95baac1cf5391feb5d')
diff --git a/var/spack/repos/builtin/packages/py-sanic/package.py b/var/spack/repos/builtin/packages/py-sanic/package.py
index e97622a750..facb5a13be 100644
--- a/var/spack/repos/builtin/packages/py-sanic/package.py
+++ b/var/spack/repos/builtin/packages/py-sanic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySanic(PythonPackage):
It is based on the work done by the amazing folks at magicstack"""
homepage = "https://github.com/huge-success/sanic"
- url = "https://pypi.io/packages/source/s/sanic/sanic-20.6.3.tar.gz"
+ pypi = "sanic/sanic-20.6.3.tar.gz"
version('20.6.3', sha256='30e83d9f677b609d6b8ccab7c9551ca7e9a5f19ac0579f5aa10199ab6d4138ed')
diff --git a/var/spack/repos/builtin/packages/py-scandir/package.py b/var/spack/repos/builtin/packages/py-scandir/package.py
index a32b03a06e..e990b80f5d 100644
--- a/var/spack/repos/builtin/packages/py-scandir/package.py
+++ b/var/spack/repos/builtin/packages/py-scandir/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyScandir(PythonPackage):
"""scandir, a better directory iterator and faster os.walk()."""
homepage = "https://github.com/benhoyt/scandir"
- url = "https://pypi.io/packages/source/s/scandir/scandir-1.9.0.tar.gz"
-
- import_modules = ['scandir']
+ pypi = "scandir/scandir-1.9.0.tar.gz"
version('1.10.0', sha256='4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae')
version('1.9.0', sha256='44975e209c4827fc18a3486f257154d34ec6eaec0f90fef0cca1caa482db7064')
diff --git a/var/spack/repos/builtin/packages/py-scientificpython/package.py b/var/spack/repos/builtin/packages/py-scientificpython/package.py
index 58a142ccbd..1ddfbb493f 100644
--- a/var/spack/repos/builtin/packages/py-scientificpython/package.py
+++ b/var/spack/repos/builtin/packages/py-scientificpython/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-scikit-build/package.py b/var/spack/repos/builtin/packages/py-scikit-build/package.py
index 911a6edf15..f6fab07c95 100644
--- a/var/spack/repos/builtin/packages/py-scikit-build/package.py
+++ b/var/spack/repos/builtin/packages/py-scikit-build/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-scikit-fmm/package.py b/var/spack/repos/builtin/packages/py-scikit-fmm/package.py
new file mode 100644
index 0000000000..fb80e46f69
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-scikit-fmm/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyScikitFmm(PythonPackage):
+ """scikit-fmm is a Python extension module which implements the fast marching
+ method."""
+
+ pypi = "scikit-fmm/scikit-fmm-2019.1.30.tar.gz"
+ git = "https://github.com/scikit-fmm/scikit-fmm.git"
+
+ maintainers = ['archxlith']
+
+ version('master', branch='master')
+ version('2019.1.30', sha256='eb64b6d8e30b8df8f8636d5fc4fd7ca6a9b05938ccd62518c80c1d9e823069dd')
+
+ depends_on('py-numpy@1.0.2:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-scikit-image/package.py b/var/spack/repos/builtin/packages/py-scikit-image/package.py
index 90f1470e96..67f57e6a2c 100644
--- a/var/spack/repos/builtin/packages/py-scikit-image/package.py
+++ b/var/spack/repos/builtin/packages/py-scikit-image/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,19 +11,23 @@ class PyScikitImage(PythonPackage):
filtering, warping, color manipulation, object detection, etc."""
homepage = "http://scikit-image.org/"
- url = "https://pypi.io/packages/source/s/scikit-image/scikit-image-0.17.2.tar.gz"
+ pypi = "scikit-image/scikit-image-0.17.2.tar.gz"
+ version('0.18.1', sha256='fbb618ca911867bce45574c1639618cdfb5d94e207432b19bc19563d80d2f171')
version('0.17.2', sha256='bd954c0588f0f7e81d9763dc95e06950e68247d540476e06cb77bcbcd8c2d8b3')
version('0.14.2', sha256='1afd0b84eefd77afd1071c5c1c402553d67be2d7db8950b32d6f773f25850c1f')
version('0.12.3', sha256='82da192f0e524701e89c5379c79200bc6dc21373f48bf7778a864c583897d7c7')
extends('python', ignore=r'bin/.*\.py$')
- depends_on('python@3.6:', when='@0.16.1:')
+ depends_on('python@3.7:', when='@0.18:', type=('build', 'link', 'run'))
+ depends_on('python@3.6:', when='@0.16.1:', type=('build', 'link', 'run'))
+ depends_on('py-setuptools', type='build')
depends_on('py-cython@0.23.4:', type='build')
depends_on('py-numpy', type=('build', 'run'))
- depends_on('py-numpy@1.14.1:', type=('build', 'run'), when='@0.16.1:')
- depends_on('py-numpy@1.15.1:', type=('build', 'run'), when='@0.17.1:')
+ depends_on('py-numpy@1.14.1:', type=('build', 'link', 'run'), when='@0.16.1:')
+ depends_on('py-numpy@1.15.1:', type=('build', 'link', 'run'), when='@0.17.1:')
+ depends_on('py-numpy@1.16.5:', type=('build', 'link', 'run'), when='@0.18:')
depends_on('py-scipy', type=('build', 'run'))
depends_on('py-scipy@0.19.0:', type=('build', 'run'), when='@0.16.1:')
depends_on('py-scipy@1.0.1:', type=('build', 'run'), when='@0.17.1:')
diff --git a/var/spack/repos/builtin/packages/py-scikit-learn/package.py b/var/spack/repos/builtin/packages/py-scikit-learn/package.py
index 0a9bf34523..3da2128a0c 100644
--- a/var/spack/repos/builtin/packages/py-scikit-learn/package.py
+++ b/var/spack/repos/builtin/packages/py-scikit-learn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,30 +7,15 @@
class PyScikitLearn(PythonPackage):
"""A set of python modules for machine learning and data mining."""
- homepage = "https://pypi.python.org/pypi/scikit-learn"
- url = "https://pypi.io/packages/source/s/scikit-learn/scikit-learn-0.23.2.tar.gz"
+ pypi = "scikit-learn/scikit-learn-0.24.0.tar.gz"
git = "https://github.com/scikit-learn/scikit-learn.git"
maintainers = ['adamjstewart']
- install_time_test_callbacks = ['install_test', 'import_module_test']
-
- import_modules = [
- 'sklearn', 'sklearn.tree', 'sklearn.metrics', 'sklearn.ensemble',
- 'sklearn.experimental', 'sklearn.cluster',
- 'sklearn.feature_extraction', 'sklearn.__check_build',
- 'sklearn.semi_supervised', 'sklearn.gaussian_process',
- 'sklearn.compose', 'sklearn.datasets', 'sklearn.externals',
- 'sklearn.linear_model', 'sklearn.impute', 'sklearn.utils',
- 'sklearn.covariance', 'sklearn.neural_network',
- 'sklearn.feature_selection', 'sklearn.inspection', 'sklearn.svm',
- 'sklearn.manifold', 'sklearn.mixture', 'sklearn.preprocessing',
- 'sklearn.model_selection', 'sklearn._build_utils',
- 'sklearn.decomposition', 'sklearn.cross_decomposition',
- 'sklearn.neighbors', 'sklearn.metrics.cluster',
- 'sklearn.ensemble._hist_gradient_boosting'
- ]
version('master', branch='master')
+ version('0.24.2', sha256='d14701a12417930392cd3898e9646cf5670c190b933625ebe7511b1f7d7b8736')
+ version('0.24.1', sha256='a0334a1802e64d656022c3bfab56a73fbd6bf4b1298343f3688af2151810bbdf')
+ version('0.24.0', sha256='076369634ee72b5a5941440661e2f306ff4ac30903802dc52031c7e9199ac640')
version('0.23.2', sha256='20766f515e6cd6f954554387dfae705d93c7b544ec0e6c6a5d8e006f6f7ef480')
version('0.23.1', sha256='e3fec1c8831f8f93ad85581ca29ca1bb88e2da377fb097cf8322aa89c21bc9b8')
version('0.23.0', sha256='639a53df6273acc6a7510fb0c658b94e0c70bb13dafff9d14932c981ff9baff4')
@@ -67,7 +52,7 @@ class PyScikitLearn(PythonPackage):
depends_on('py-threadpoolctl@2.0.0:', when='@0.23:', type=('build', 'run'))
depends_on('py-cython@0.23:', type='build')
depends_on('py-cython@0.28.5:', when='@0.21:', type='build')
- depends_on('py-pytest@3.3.0:', type='test')
+ depends_on('py-pytest@5.0.1:', type='test')
depends_on('py-pandas', type='test')
depends_on('py-setuptools', type='build')
depends_on('llvm-openmp', when='@0.21: %apple-clang +openmp')
@@ -79,6 +64,9 @@ class PyScikitLearn(PythonPackage):
conflicts('~openmp', when='@:999', msg='Only master supports ~openmp')
def setup_build_environment(self, env):
+ # enable parallel builds of the sklearn backend
+ env.append_flags("SKLEARN_BUILD_PARALLEL", str(make_jobs))
+
# https://scikit-learn.org/stable/developers/advanced_installation.html#building-from-source
if self.spec.satisfies('~openmp'):
env.set('SKLEARN_NO_OPENMP', 'True')
@@ -93,6 +81,8 @@ class PyScikitLearn(PythonPackage):
env.append_flags(
'LDFLAGS', self.spec['llvm-openmp'].libs.ld_flags)
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def install_test(self):
# https://scikit-learn.org/stable/developers/advanced_installation.html#testing
with working_dir('spack-test', create=True):
diff --git a/var/spack/repos/builtin/packages/py-scikit-optimize/package.py b/var/spack/repos/builtin/packages/py-scikit-optimize/package.py
index 6f148d5fe1..b3d62fc1d3 100644
--- a/var/spack/repos/builtin/packages/py-scikit-optimize/package.py
+++ b/var/spack/repos/builtin/packages/py-scikit-optimize/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyScikitOptimize(PythonPackage):
The library is built on top of NumPy, SciPy and Scikit-Learn."""
homepage = "https://scikit-optimize.github.io"
- url = "https://pypi.io/packages/source/s/scikit-optimize/scikit-optimize-0.5.2.tar.gz"
+ pypi = "scikit-optimize/scikit-optimize-0.5.2.tar.gz"
version('0.5.2', sha256='1d7657a4b8ef9aa6d81e49b369c677c584e83269f11710557741d3b3f8fa0a75')
@@ -28,4 +28,3 @@ class PyScikitOptimize(PythonPackage):
depends_on('py-scikit-learn@0.19.1:', type=('build', 'run'))
depends_on('py-matplotlib', when='+plots')
- depends_on('py-pytest@3.3.0:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-scipy/package.py b/var/spack/repos/builtin/packages/py-scipy/package.py
index afeae0dd1c..1c2f4a8d8e 100644
--- a/var/spack/repos/builtin/packages/py-scipy/package.py
+++ b/var/spack/repos/builtin/packages/py-scipy/package.py
@@ -1,8 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import platform
+
class PyScipy(PythonPackage):
"""SciPy (pronounced "Sigh Pie") is a Scientific Library for Python.
@@ -10,26 +12,16 @@ class PyScipy(PythonPackage):
as routines for numerical integration and optimization."""
homepage = "https://www.scipy.org/"
- url = "https://pypi.io/packages/source/s/scipy/scipy-1.5.4.tar.gz"
- git = "https://github.com/scipy/scipy.git"
+ pypi = "scipy/scipy-1.5.4.tar.gz"
+ git = "https://github.com/scipy/scipy.git"
maintainers = ['adamjstewart']
- install_time_test_callbacks = ['install_test', 'import_module_test']
-
- import_modules = [
- 'scipy', 'scipy._build_utils', 'scipy._lib', 'scipy.cluster',
- 'scipy.constants', 'scipy.fftpack', 'scipy.integrate',
- 'scipy.interpolate', 'scipy.io', 'scipy.linalg', 'scipy.misc',
- 'scipy.ndimage', 'scipy.odr', 'scipy.optimize', 'scipy.signal',
- 'scipy.sparse', 'scipy.spatial', 'scipy.special', 'scipy.stats',
- 'scipy.io.arff', 'scipy.io.harwell_boeing', 'scipy.io.matlab',
- 'scipy.optimize._lsq', 'scipy.sparse.csgraph', 'scipy.sparse.linalg',
- 'scipy.sparse.linalg.dsolve', 'scipy.sparse.linalg.eigen',
- 'scipy.sparse.linalg.isolve', 'scipy.sparse.linalg.eigen.arpack',
- 'scipy.sparse.linalg.eigen.lobpcg', 'scipy.special._precompute'
- ]
version('master', branch='master')
+ version('1.6.3', sha256='a75b014d3294fce26852a9d04ea27b5671d86736beb34acdfc05859246260707')
+ version('1.6.2', sha256='e9da33e21c9bc1b92c20b5328adb13e5f193b924c9b969cd700c8908f315aa59')
+ version('1.6.1', sha256='c4fceb864890b6168e79b0e714c585dbe2fd4222768ee90bc1aa0f8218691b11')
+ version('1.6.0', sha256='cb6dc9f82dfd95f6b9032a8d7ea70efeeb15d5b5fd6ed4e8537bb3c673580566')
version('1.5.4', sha256='4a453d5e5689de62e5d38edf40af3f17560bfd63c9c5bd228c18c1f99afa155b')
version('1.5.3', sha256='ddae76784574cc4c172f3d5edd7308be16078dd3b977e8746860c76c195fa707')
version('1.5.2', sha256='066c513d90eb3fd7567a9e150828d39111ebd88d3e924cdfc9f8ce19ab6f90c9')
@@ -52,20 +44,26 @@ class PyScipy(PythonPackage):
version('0.15.1', sha256='a212cbc3b79e9a563aa45fc5c517b3499198bd7eb7e7be1e047568a5f48c259a')
version('0.15.0', sha256='0c74e31e08acc8bf9b6ceb9bced73df2ae0cc76003e0366350bc7b26292bf8b1')
- depends_on('python@2.6:2.8,3.2:', type=('build', 'link', 'run'))
- depends_on('python@2.7:2.8,3.4:', when='@0.18:', type=('build', 'link', 'run'))
- depends_on('python@3.5:', when='@1.3:', type=('build', 'link', 'run'))
- depends_on('python@3.6:', when='@1.5:', type=('build', 'link', 'run'))
- depends_on('py-setuptools', type='build')
- depends_on('py-pybind11@2.2.4:', when='@1.4.0:', type=('build', 'link'))
- depends_on('py-pybind11@2.4.0:', when='@1.4.1:', type=('build', 'link'))
- depends_on('py-pybind11@2.4.3:', when='@1.5.0:', type=('build', 'link'))
- depends_on('py-numpy@1.5.1:+blas+lapack', type=('build', 'link', 'run'))
- depends_on('py-numpy@1.6.2:+blas+lapack', when='@0.16:', type=('build', 'link', 'run'))
- depends_on('py-numpy@1.7.1:+blas+lapack', when='@0.18:', type=('build', 'link', 'run'))
- depends_on('py-numpy@1.8.2:+blas+lapack', when='@0.19:', type=('build', 'link', 'run'))
- depends_on('py-numpy@1.13.3:+blas+lapack', when='@1.3:', type=('build', 'link', 'run'))
- depends_on('py-numpy@1.14.5:+blas+lapack', when='@1.5:', type=('build', 'link', 'run'))
+ depends_on('python@2.6:2.8,3.2:', when='@:0.17.999', type=('build', 'link', 'run'))
+ depends_on('python@2.7:2.8,3.4:', when='@0.18:1.2.999', type=('build', 'link', 'run'))
+ depends_on('python@3.5:', when='@1.3:1.4.999', type=('build', 'link', 'run'))
+ depends_on('python@3.6:', when='@1.5:1.5.999', type=('build', 'link', 'run'))
+ depends_on('python@3.7:', when='@1.6:1.6.1', type=('build', 'link', 'run'))
+ depends_on('python@3.7:3.9.999', when='@1.6.2:', type=('build', 'link', 'run'))
+ depends_on('py-setuptools', when='@:1.6.1', type='build')
+ depends_on('py-setuptools@:51.0.0', when='@1.6.2:', type='build')
+ depends_on('py-pybind11@2.2.4:', when='@1.4.0', type=('build', 'link'))
+ depends_on('py-pybind11@2.4.0:', when='@1.4.1:1.4.999', type=('build', 'link'))
+ depends_on('py-pybind11@2.4.3:', when='@1.5:1.6.1', type=('build', 'link'))
+ depends_on('py-pybind11@2.4.3:2.6.999', when='@1.6.2:', type=('build', 'link'))
+ depends_on('py-numpy@1.5.1:+blas+lapack', when='@:0.15.999', type=('build', 'link', 'run'))
+ depends_on('py-numpy@1.6.2:+blas+lapack', when='@0.16:0.17.999', type=('build', 'link', 'run'))
+ depends_on('py-numpy@1.7.1:+blas+lapack', when='@0.18:0.18.999', type=('build', 'link', 'run'))
+ depends_on('py-numpy@1.8.2:+blas+lapack', when='@0.19:1.2.999', type=('build', 'link', 'run'))
+ depends_on('py-numpy@1.13.3:+blas+lapack', when='@1.3:1.4.999', type=('build', 'link', 'run'))
+ depends_on('py-numpy@1.14.5:+blas+lapack', when='@1.5:1.5.999', type=('build', 'link', 'run'))
+ depends_on('py-numpy@1.16.5:+blas+lapack', when='@1.6:1.6.1', type=('build', 'link', 'run'))
+ depends_on('py-numpy@1.16.5:1.22.999+blas+lapack', when='@1.6.2:', type=('build', 'link', 'run'))
depends_on('py-pytest', type='test')
# NOTE: scipy picks up Blas/Lapack from numpy, see
@@ -85,10 +83,16 @@ class PyScipy(PythonPackage):
if self.spec.satisfies('@:1.4 %gcc@10:'):
env.set('FFLAGS', '-fallow-argument-mismatch')
+ # Kluge to get the gfortran linker to work correctly on Big
+ # Sur, at least until a gcc release > 10.2 is out with a fix.
+ # (There is a fix in their development tree.)
+ if platform.mac_ver()[0][0:2] == '11':
+ env.set('MACOSX_DEPLOYMENT_TARGET', '10.15')
+
def build_args(self, spec, prefix):
args = []
if spec.satisfies('%fj'):
- args.extend(['config_fc', '--fcompiler=fj'])
+ args.extend(['config_fc', '--fcompiler=fujitsu'])
# Build in parallel
# Known problems with Python 3.5+
@@ -99,21 +103,8 @@ class PyScipy(PythonPackage):
return args
- def build_test(self):
- # `setup.py test` is not supported. Use one of the following
- # instead:
- #
- # - `python runtests.py` (to build and test)
- # - `python runtests.py --no-build` (to test installed scipy)
- # - `>>> scipy.test()` (run tests for installed scipy
- # from within an interpreter)
- pass
-
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def install_test(self):
- # Change directories due to the following error:
- #
- # ImportError: Error importing scipy: you should not try to import
- # scipy from its source directory; please exit the scipy
- # source tree, and relaunch your python interpreter from there.
with working_dir('spack-test', create=True):
python('-c', 'import scipy; scipy.test("full", verbose=2)')
diff --git a/var/spack/repos/builtin/packages/py-scoop/package.py b/var/spack/repos/builtin/packages/py-scoop/package.py
index e1e25abd01..f47c66c798 100644
--- a/var/spack/repos/builtin/packages/py-scoop/package.py
+++ b/var/spack/repos/builtin/packages/py-scoop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyScoop(PythonPackage):
environments, from heterogeneous grids to supercomputers."""
homepage = "https://github.com/soravux/scoop"
- url = "https://pypi.io/packages/source/s/scoop/scoop-0.7.1.1.tar.gz"
+ pypi = "scoop/scoop-0.7.1.1.tar.gz"
version('0.7.1.1', sha256='d8b6444c7bac901171e3327a97e241dde63f060354e162a65551fd8083ca62b4')
diff --git a/var/spack/repos/builtin/packages/py-scp/package.py b/var/spack/repos/builtin/packages/py-scp/package.py
index 85bb112cd4..e137055426 100644
--- a/var/spack/repos/builtin/packages/py-scp/package.py
+++ b/var/spack/repos/builtin/packages/py-scp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyScp(PythonPackage):
"""scp module for paramiko"""
homepage = "https://github.com/jbardin/scp.py"
- url = "https://pypi.io/packages/source/s/scp/scp-0.13.2.tar.gz"
+ pypi = "scp/scp-0.13.2.tar.gz"
version('0.13.2', sha256='ef9d6e67c0331485d3db146bf9ee9baff8a48f3eb0e6c08276a8584b13bf34b3')
diff --git a/var/spack/repos/builtin/packages/py-scs/package.py b/var/spack/repos/builtin/packages/py-scs/package.py
index 7715349fb3..42fb916091 100644
--- a/var/spack/repos/builtin/packages/py-scs/package.py
+++ b/var/spack/repos/builtin/packages/py-scs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyScs(PythonPackage):
"""SCS: splitting conic solver"""
homepage = "https://github.com/cvxgrp/scs"
- url = "https://www.pypi.io/packages/source/s/scs/scs-2.1.1-2.tar.gz"
+ pypi = "scs/scs-2.1.1-2.tar.gz"
version('2.1.1-2', sha256='f816cfe3d4b4cff3ac2b8b96588c5960ddd2a3dc946bda6b09db04e7bc6577f2')
diff --git a/var/spack/repos/builtin/packages/py-seaborn/package.py b/var/spack/repos/builtin/packages/py-seaborn/package.py
index feaf12abb2..58f0a85fbf 100644
--- a/var/spack/repos/builtin/packages/py-seaborn/package.py
+++ b/var/spack/repos/builtin/packages/py-seaborn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PySeaborn(PythonPackage):
data structures and statistical routines from scipy and statsmodels."""
homepage = "http://seaborn.pydata.org/"
- url = "https://pypi.io/packages/source/s/seaborn/seaborn-0.7.1.tar.gz"
+ pypi = "seaborn/seaborn-0.7.1.tar.gz"
version('0.9.0', sha256='76c83f794ca320fb6b23a7c6192d5e185a5fcf4758966a0c0a54baee46d41e2f')
version('0.7.1', sha256='fa274344b1ee72f723bab751c40a5c671801d47a29ee9b5e69fcf63a18ce5c5d')
diff --git a/var/spack/repos/builtin/packages/py-secretstorage/package.py b/var/spack/repos/builtin/packages/py-secretstorage/package.py
index 36be45cd0e..5d1458a155 100644
--- a/var/spack/repos/builtin/packages/py-secretstorage/package.py
+++ b/var/spack/repos/builtin/packages/py-secretstorage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PySecretstorage(PythonPackage):
"""Python bindings to FreeDesktop.org Secret Service API."""
homepage = "https://github.com/mitya57/secretstorage"
- url = "https://pypi.io/packages/source/S/SecretStorage/SecretStorage-3.1.2.tar.gz"
+ pypi = "SecretStorage/SecretStorage-3.1.2.tar.gz"
version('3.1.2', sha256='15da8a989b65498e29be338b3b279965f1b8f09b9668bd8010da183024c8bff6')
diff --git a/var/spack/repos/builtin/packages/py-selenium/package.py b/var/spack/repos/builtin/packages/py-selenium/package.py
index 33082ec78f..7bd73d39fa 100644
--- a/var/spack/repos/builtin/packages/py-selenium/package.py
+++ b/var/spack/repos/builtin/packages/py-selenium/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PySelenium(PythonPackage):
Python."""
homepage = "https://github.com/SeleniumHQ/selenium/"
- url = "https://pypi.io/packages/source/s/selenium/selenium-3.141.0.tar.gz"
+ pypi = "selenium/selenium-3.141.0.tar.gz"
version('3.141.0', sha256='deaf32b60ad91a4611b98d8002757f29e6f2c2d5fcaf202e1c9ad06d6772300d')
diff --git a/var/spack/repos/builtin/packages/py-semantic-version/package.py b/var/spack/repos/builtin/packages/py-semantic-version/package.py
index d05d902e10..fb0f0940d3 100644
--- a/var/spack/repos/builtin/packages/py-semantic-version/package.py
+++ b/var/spack/repos/builtin/packages/py-semantic-version/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySemanticVersion(PythonPackage):
Python. It follows strictly the 2.0.0 version of the SemVer scheme."""
homepage = "https://github.com/rbarrois/python-semanticversion"
- url = "https://pypi.io/packages/source/s/semantic_version/semantic_version-2.8.2.tar.gz"
+ pypi = "semantic_version/semantic_version-2.8.2.tar.gz"
version('2.8.2', sha256='71c716e99086c44d068262b86e4775aa6db7fabee0743e4e33b00fbf6f672585')
version('2.6.0', sha256='2a4328680073e9b243667b201119772aefc5fc63ae32398d6afafff07c4f54c0')
diff --git a/var/spack/repos/builtin/packages/py-semver/package.py b/var/spack/repos/builtin/packages/py-semver/package.py
index a73401d254..ced20b28e8 100644
--- a/var/spack/repos/builtin/packages/py-semver/package.py
+++ b/var/spack/repos/builtin/packages/py-semver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySemver(PythonPackage):
Simplifies comparing versions."""
homepage = "https://semver.org/"
- url = "https://pypi.io/packages/source/s/semver/semver-2.8.1.tar.gz"
+ pypi = "semver/semver-2.8.1.tar.gz"
version('2.8.1', sha256='5b09010a66d9a3837211bb7ae5a20d10ba88f8cb49e92cb139a69ef90d5060d8')
diff --git a/var/spack/repos/builtin/packages/py-send2trash/package.py b/var/spack/repos/builtin/packages/py-send2trash/package.py
index c4882b8e95..ef8b88a9ed 100644
--- a/var/spack/repos/builtin/packages/py-send2trash/package.py
+++ b/var/spack/repos/builtin/packages/py-send2trash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-sentencepiece/package.py b/var/spack/repos/builtin/packages/py-sentencepiece/package.py
index 9d9552a47b..02c99cc9fe 100644
--- a/var/spack/repos/builtin/packages/py-sentencepiece/package.py
+++ b/var/spack/repos/builtin/packages/py-sentencepiece/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-sentry-sdk/package.py b/var/spack/repos/builtin/packages/py-sentry-sdk/package.py
index 6214b0c7d8..c283ee7f1b 100644
--- a/var/spack/repos/builtin/packages/py-sentry-sdk/package.py
+++ b/var/spack/repos/builtin/packages/py-sentry-sdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySentrySdk(PythonPackage):
"""The new Python SDK for Sentry.io"""
homepage = "https://github.com/getsentry/sentry-python"
- url = "https://pypi.io/packages/source/s/sentry-sdk/sentry-sdk-0.17.6.tar.gz"
+ pypi = "sentry-sdk/sentry-sdk-0.17.6.tar.gz"
version('0.17.6', sha256='1a086486ff9da15791f294f6e9915eb3747d161ef64dee2d038a4d0b4a369b24')
diff --git a/var/spack/repos/builtin/packages/py-seriate/package.py b/var/spack/repos/builtin/packages/py-seriate/package.py
index c1c81e97af..0e2740b7a8 100644
--- a/var/spack/repos/builtin/packages/py-seriate/package.py
+++ b/var/spack/repos/builtin/packages/py-seriate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-setproctitle/package.py b/var/spack/repos/builtin/packages/py-setproctitle/package.py
index 972e595cad..137919dd05 100644
--- a/var/spack/repos/builtin/packages/py-setproctitle/package.py
+++ b/var/spack/repos/builtin/packages/py-setproctitle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySetproctitle(PythonPackage):
displayed by system tools such as ps and top)."""
homepage = "https://github.com/dvarrazzo/py-setproctitle"
- url = "https://pypi.io/packages/source/s/setproctitle/setproctitle-1.1.10.tar.gz"
+ pypi = "setproctitle/setproctitle-1.1.10.tar.gz"
version('1.1.10', sha256='6283b7a58477dd8478fbb9e76defb37968ee4ba47b05ec1c053cb39638bd7398')
diff --git a/var/spack/repos/builtin/packages/py-setuptools-git/package.py b/var/spack/repos/builtin/packages/py-setuptools-git/package.py
index fa8a51908e..b3962c48a1 100644
--- a/var/spack/repos/builtin/packages/py-setuptools-git/package.py
+++ b/var/spack/repos/builtin/packages/py-setuptools-git/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PySetuptoolsGit(PythonPackage):
"""Setuptools revision control system plugin for Git"""
- homepage = "https://pypi.python.org/pypi/setuptools-git"
- url = "https://pypi.io/packages/source/s/setuptools-git/setuptools-git-1.2.tar.gz"
+ pypi = "setuptools-git/setuptools-git-1.2.tar.gz"
version('1.2', sha256='ff64136da01aabba76ae88b050e7197918d8b2139ccbf6144e14d472b9c40445')
diff --git a/var/spack/repos/builtin/packages/py-setuptools-rust/package.py b/var/spack/repos/builtin/packages/py-setuptools-rust/package.py
index 262ea03bbe..b7f36d6b01 100644
--- a/var/spack/repos/builtin/packages/py-setuptools-rust/package.py
+++ b/var/spack/repos/builtin/packages/py-setuptools-rust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-setuptools-scm-git-archive/package.py b/var/spack/repos/builtin/packages/py-setuptools-scm-git-archive/package.py
index 2fb6a9e267..86545dd628 100644
--- a/var/spack/repos/builtin/packages/py-setuptools-scm-git-archive/package.py
+++ b/var/spack/repos/builtin/packages/py-setuptools-scm-git-archive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySetuptoolsScmGitArchive(PythonPackage):
(for example the ones GitHub automatically generates)."""
homepage = "https://github.com/Changaco/setuptools_scm_git_archive/"
- url = "https://pypi.io/packages/source/s/setuptools_scm_git_archive/setuptools_scm_git_archive-1.1.tar.gz"
+ pypi = "setuptools_scm_git_archive/setuptools_scm_git_archive-1.1.tar.gz"
maintainers = ['marcmengel']
diff --git a/var/spack/repos/builtin/packages/py-setuptools-scm/package.py b/var/spack/repos/builtin/packages/py-setuptools-scm/package.py
index eb157f8ef5..058cf9ce79 100644
--- a/var/spack/repos/builtin/packages/py-setuptools-scm/package.py
+++ b/var/spack/repos/builtin/packages/py-setuptools-scm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,10 @@ class PySetuptoolsScm(PythonPackage):
"""The blessed package to manage your versions by scm tags."""
homepage = "https://github.com/pypa/setuptools_scm"
- url = "https://pypi.io/packages/source/s/setuptools_scm/setuptools_scm-4.1.2.tar.gz"
-
- import_modules = ['setuptools_scm']
+ pypi = "setuptools_scm/setuptools_scm-4.1.2.tar.gz"
version('4.1.2', sha256='a8994582e716ec690f33fec70cca0f85bd23ec974e3f783233e4879090a7faa8')
+ version('3.5.0', sha256='5bdf21a05792903cafe7ae0c9501182ab52497614fa6b1750d9dbae7b60c1a87')
version('3.3.3', sha256='bd25e1fb5e4d603dcf490f1fde40fb4c595b357795674c3e5cb7f6217ab39ea5')
version('3.1.0', sha256='1191f2a136b5e86f7ca8ab00a97ef7aef997131f1f6d4971be69a1ef387d8b40')
version('1.15.6', sha256='49ab4685589986a42da85706b3311a2f74f1af567d39fee6cb1e088d7a75fb5f')
diff --git a/var/spack/repos/builtin/packages/py-setuptools/package.py b/var/spack/repos/builtin/packages/py-setuptools/package.py
index 1a2930498b..dfd1c7a4a1 100644
--- a/var/spack/repos/builtin/packages/py-setuptools/package.py
+++ b/var/spack/repos/builtin/packages/py-setuptools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,15 +11,7 @@ class PySetuptools(PythonPackage):
upgrading, installing, and uninstalling Python packages."""
homepage = "https://github.com/pypa/setuptools"
- url = "https://pypi.io/packages/source/s/setuptools/setuptools-49.2.0.zip"
-
- import_modules = [
- 'setuptools', 'pkg_resources', 'setuptools._vendor',
- 'setuptools.command', 'setuptools.extern',
- 'setuptools._vendor.packaging', 'pkg_resources._vendor',
- 'pkg_resources.extern', 'pkg_resources._vendor.packaging',
- 'easy_install'
- ]
+ pypi = "setuptools/setuptools-49.2.0.zip"
version('50.3.2', sha256='ed0519d27a243843b05d82a5e9d01b0b083d9934eaa3d02779a23da18077bd3c')
version('50.1.0', sha256='4a7708dafd2d360ce5e2ac7577374da9fb65fc867bc4cdaf461f9f834dfa6ac3')
@@ -28,6 +20,7 @@ class PySetuptools(PythonPackage):
version('46.1.3', sha256='795e0475ba6cd7fa082b1ee6e90d552209995627a2a227a47c6ea93282f4bfb1')
version('44.1.0', sha256='794a96b0c1dc6f182c36b72ab70d7e90f1d59f7a132e6919bb37b4fd4d424aca')
version('41.4.0', sha256='7eae782ccf36b790c21bde7d86a4f303a441cd77036b25c559a602cf5186ce4d')
+ version('41.3.0', sha256='9f5c54b529b2156c6f288e837e625581bb31ff94d4cfd116b8f271c589749556')
version('41.0.1', sha256='a222d126f5471598053c9a77f4b5d4f26eaa1f150ad6e01dcf1a42e185d05613')
version('41.0.0', sha256='79d30254b6fe7a8e672e43cd85f13a9f3f2a50080bc81d851143e2219ef0dcb1')
version('40.8.0', sha256='6e4eec90337e849ade7103723b9a99631c1f0d19990d6e8412dc42f5ae8b304d')
@@ -35,9 +28,6 @@ class PySetuptools(PythonPackage):
version('40.2.0', sha256='47881d54ede4da9c15273bac65f9340f8929d4f0213193fa7894be384f2dcfa6')
version('39.2.0', sha256='f7cddbb5f5c640311eb00eab6e849f7701fa70bf6a183fc8a2c33dd1d1672fb2')
version('39.0.1', sha256='bec7badf0f60e7fc8153fac47836edc41b74e5d541d7692e614e635720d6a7c7')
- version('35.0.2', sha256='1e55496ca8058db68ae12ac29a985d1ee2c2483a5901f7692fb68fa2f9a250fd')
- version('34.4.1', sha256='704cc0c9fe6c97edd3c6370d165c5a754dfde318b671058523ed3226d944ea1b')
- version('34.2.0', sha256='7b551f5070f9414d48c08dda58bcb879c8d9276199283a99dc8e1362e2f378a2')
version('25.2.0', sha256='b2757ddac2c41173140b111e246d200768f6dd314110e1e40661d0ecf9b4d6a6')
version('20.7.0', sha256='505cdf282c5f6e3a056e79f0244b8945f3632257bba8469386c6b9b396400233')
version('20.6.7', sha256='d20152ee6337323d3b6d95cd733fb719d6b4f3fbc40f61f7a48e5a1bb96478b2')
@@ -50,16 +40,6 @@ class PySetuptools(PythonPackage):
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'), when='@44.0.0:44.99.99')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'), when='@:43.99.99')
- # Previously, setuptools vendored all of its dependencies to allow
- # easy bootstrapping. As of version 34.0.0, this is no longer done
- # and the dependencies need to be installed externally. As of version
- # 36.0.0, setuptools now vendors its dependencies again. See
- # https://github.com/pypa/setuptools/issues/980 for the reason they
- # reverted back to vendoring again.
- depends_on('py-packaging@16.8:', when='@34:35', type=('build', 'run'))
- depends_on('py-six@1.6.0:', when='@34:35', type=('build', 'run'))
- depends_on('py-appdirs@1.4.0:', when='@34:35', type=('build', 'run'))
-
def url_for_version(self, version):
url = 'https://pypi.io/packages/source/s/setuptools/setuptools-{0}'
url = url.format(version)
@@ -70,7 +50,3 @@ class PySetuptools(PythonPackage):
url += '.tar.gz'
return url
-
- def build_test(self):
- # Unit tests require pytest, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-sfepy/package.py b/var/spack/repos/builtin/packages/py-sfepy/package.py
index 579f11b1b7..aa9845c3fe 100644
--- a/var/spack/repos/builtin/packages/py-sfepy/package.py
+++ b/var/spack/repos/builtin/packages/py-sfepy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-sgp4/package.py b/var/spack/repos/builtin/packages/py-sgp4/package.py
index 79af5e7112..e8a563110a 100644
--- a/var/spack/repos/builtin/packages/py-sgp4/package.py
+++ b/var/spack/repos/builtin/packages/py-sgp4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySgp4(PythonPackage):
"""
homepage = "https://github.com/brandon-rhodes/python-sgp4"
- url = "https://pypi.io/packages/source/s/sgp4/sgp4-1.4.tar.gz"
+ pypi = "sgp4/sgp4-1.4.tar.gz"
version('1.4', sha256='1fb3cdbc11981a9ff34a032169f83c1f4a2877d1b6c295aed044e1d890b73892')
diff --git a/var/spack/repos/builtin/packages/py-sh/package.py b/var/spack/repos/builtin/packages/py-sh/package.py
index 7f8b639fbf..ba0fbc8f41 100644
--- a/var/spack/repos/builtin/packages/py-sh/package.py
+++ b/var/spack/repos/builtin/packages/py-sh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySh(PythonPackage):
"""Python subprocess interface"""
homepage = "https://github.com/amoffat/sh"
- url = "https://pypi.io/packages/source/s/sh/sh-1.12.9.tar.gz"
+ pypi = "sh/sh-1.12.9.tar.gz"
version('1.12.9', sha256='579aa19bae7fe86b607df1afaf4e8537c453d2ce3d84e1d3957e099359a51677')
version('1.11', sha256='590fb9b84abf8b1f560df92d73d87965f1e85c6b8330f8a5f6b336b36f0559a4')
diff --git a/var/spack/repos/builtin/packages/py-shapely/package.py b/var/spack/repos/builtin/packages/py-shapely/package.py
index c03106a6be..ec8bd6af9c 100644
--- a/var/spack/repos/builtin/packages/py-shapely/package.py
+++ b/var/spack/repos/builtin/packages/py-shapely/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,26 +12,22 @@ class PyShapely(PythonPackage):
"""
homepage = "https://github.com/Toblerity/Shapely"
- url = "https://pypi.io/packages/source/S/Shapely/Shapely-1.7.1.tar.gz"
+ pypi = "Shapely/Shapely-1.7.1.tar.gz"
git = "https://github.com/Toblerity/Shapely.git"
maintainers = ['adamjstewart']
- import_modules = [
- 'shapely', 'shapely.geometry', 'shapely.algorithms',
- 'shapely.examples', 'shapely.speedups', 'shapely.vectorized',
- ]
version('master', branch='master')
version('1.7.1', sha256='1641724c1055459a7e2b8bbe47ba25bdc89554582e62aec23cb3f3ca25f9b129')
version('1.7.0', sha256='e21a9fe1a416463ff11ae037766fe410526c95700b9e545372475d2361cc951e')
version('1.6.4', sha256='b10bc4199cfefcf1c0e5d932eac89369550320ca4bdf40559328d85f1ca4f655')
- depends_on('python@3.5:', when='@1.8:', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.4:', when='@1.7:', type=('build', 'run'))
- depends_on('python@2.6:', type=('build', 'run'))
+ depends_on('python@3.5:', when='@1.8:', type=('build', 'link', 'run'))
+ depends_on('python@2.7:2.8,3.4:', when='@1.7:', type=('build', 'link', 'run'))
+ depends_on('python@2.6:', type=('build', 'link', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-cython', type='build')
- depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'link', 'run'))
depends_on('geos')
depends_on('geos@3.3:', when='@1.3:')
depends_on('py-pytest', type='test')
@@ -64,5 +60,7 @@ class PyShapely(PythonPackage):
else:
env.prepend_path('LD_LIBRARY_PATH', libs)
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def test_install(self):
python('-m', 'pytest')
diff --git a/var/spack/repos/builtin/packages/py-shiboken/package.py b/var/spack/repos/builtin/packages/py-shiboken/package.py
index e7403bbfd6..af6bfe5669 100644
--- a/var/spack/repos/builtin/packages/py-shiboken/package.py
+++ b/var/spack/repos/builtin/packages/py-shiboken/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ import os
class PyShiboken(PythonPackage):
"""Shiboken generates bindings for C++ libraries using CPython."""
homepage = "https://shiboken.readthedocs.org/"
- url = "https://pypi.io/packages/source/S/Shiboken/Shiboken-1.2.2.tar.gz"
+ pypi = "Shiboken/Shiboken-1.2.2.tar.gz"
version('1.2.2', sha256='0baee03c6244ab56e42e4200d0cb5e234682b11cc296ed0a192fe457d054972f')
diff --git a/var/spack/repos/builtin/packages/py-shortuuid/package.py b/var/spack/repos/builtin/packages/py-shortuuid/package.py
index 4bf5e9d7db..d81c68befa 100644
--- a/var/spack/repos/builtin/packages/py-shortuuid/package.py
+++ b/var/spack/repos/builtin/packages/py-shortuuid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-shroud/package.py b/var/spack/repos/builtin/packages/py-shroud/package.py
index 0e66ca1a23..993a629181 100644
--- a/var/spack/repos/builtin/packages/py-shroud/package.py
+++ b/var/spack/repos/builtin/packages/py-shroud/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-shtab/package.py b/var/spack/repos/builtin/packages/py-shtab/package.py
new file mode 100644
index 0000000000..20d8086edc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-shtab/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyShtab(PythonPackage):
+ """Automatically generate shell tab completion scripts for python CLI apps."""
+
+ homepage = "https://github.com/iterative/shtab"
+ pypi = "shtab/shtab-1.3.3.tar.gz"
+
+ version('1.3.4', sha256='353f2a3a5178cd2df8eb746e7ab26a5039a9989e4386de8fd239d8c1653a8887')
+ version('1.3.3', sha256='1f7f263631acdf0a9e685bbf7126a0fa711c2d663db12441670b1cea3fa431d4')
+
+ # setuptools and setuptools_scm imported in shtab/__init__.py
+ depends_on('python@2.7:2.8,3.2:', type=('build', 'run'))
+ depends_on('py-setuptools@42:', type='build')
+ depends_on('py-setuptools-scm@3.4:+toml', type='build')
diff --git a/var/spack/repos/builtin/packages/py-simplegeneric/package.py b/var/spack/repos/builtin/packages/py-simplegeneric/package.py
index eb92c5d8de..74dac1f7f4 100644
--- a/var/spack/repos/builtin/packages/py-simplegeneric/package.py
+++ b/var/spack/repos/builtin/packages/py-simplegeneric/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PySimplegeneric(PythonPackage):
"""Simple generic functions (similar to Python's own len(),
pickle.dump(), etc.)"""
- homepage = "https://pypi.python.org/pypi/simplegeneric"
- url = "https://pypi.io/packages/source/s/simplegeneric/simplegeneric-0.8.zip"
+ pypi = "simplegeneric/simplegeneric-0.8.zip"
version('0.8.1', sha256='dc972e06094b9af5b855b3df4a646395e43d1c9d0d39ed345b7393560d0b9173')
version('0.8', sha256='8c0c4963da2695ba7c0f953f2cdac31d2c41d619fe9419e9d75432f8a231f966')
diff --git a/var/spack/repos/builtin/packages/py-simplejson/package.py b/var/spack/repos/builtin/packages/py-simplejson/package.py
index 7206102d2e..aef9c8ce0e 100644
--- a/var/spack/repos/builtin/packages/py-simplejson/package.py
+++ b/var/spack/repos/builtin/packages/py-simplejson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySimplejson(PythonPackage):
Python"""
homepage = "https://github.com/simplejson/simplejson"
- url = "https://pypi.io/packages/source/s/simplejson/simplejson-3.10.0.tar.gz"
+ pypi = "simplejson/simplejson-3.10.0.tar.gz"
version('3.16.0', sha256='b1f329139ba647a9548aa05fb95d046b4a677643070dc2afc05fa2e975d09ca5')
version('3.10.0', sha256='953be622e88323c6f43fad61ffd05bebe73b9fd9863a46d68b052d2aa7d71ce2')
diff --git a/var/spack/repos/builtin/packages/py-simplekml/package.py b/var/spack/repos/builtin/packages/py-simplekml/package.py
index 23b309f670..8613346177 100644
--- a/var/spack/repos/builtin/packages/py-simplekml/package.py
+++ b/var/spack/repos/builtin/packages/py-simplekml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PySimplekml(PythonPackage):
"""
homepage = "https://readthedocs.org/projects/simplekml/"
- url = "https://pypi.io/packages/source/s/simplekml/simplekml-1.3.1.tar.gz"
+ pypi = "simplekml/simplekml-1.3.1.tar.gz"
version('1.3.1', sha256='30c121368ce1d73405721730bf766721e580cae6fbb7424884c734c89ec62ad7')
diff --git a/var/spack/repos/builtin/packages/py-singledispatch/package.py b/var/spack/repos/builtin/packages/py-singledispatch/package.py
index 21c91a6465..aba411640f 100644
--- a/var/spack/repos/builtin/packages/py-singledispatch/package.py
+++ b/var/spack/repos/builtin/packages/py-singledispatch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PySingledispatch(PythonPackage):
"""This library brings functools.singledispatch to Python 2.6-3.3."""
- homepage = "https://pypi.python.org/pypi/singledispatch"
- url = "https://pypi.io/packages/source/s/singledispatch/singledispatch-3.4.0.3.tar.gz"
+ pypi = "singledispatch/singledispatch-3.4.0.3.tar.gz"
version('3.4.0.3', sha256='5b06af87df13818d14f08a028e42f566640aef80805c3b50c5056b086e3c2b9c')
diff --git a/var/spack/repos/builtin/packages/py-sip/package.py b/var/spack/repos/builtin/packages/py-sip/package.py
index d454f05740..3c86a2449d 100644
--- a/var/spack/repos/builtin/packages/py-sip/package.py
+++ b/var/spack/repos/builtin/packages/py-sip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,32 +12,32 @@ class PySip(Package):
and C++ libraries."""
homepage = "https://www.riverbankcomputing.com/software/sip/intro"
- url = "https://www.riverbankcomputing.com/static/Downloads/sip/4.19.18/sip-4.19.18.tar.gz"
- list_url = "https://www.riverbankcomputing.com/software/sip/download"
+ url = "https://www.riverbankcomputing.com/hg/sip/archive/4.19.21.tar.gz"
+ list_url = "https://www.riverbankcomputing.com/hg/sip/archive"
hg = "https://www.riverbankcomputing.com/hg/sip"
version('develop', hg=hg) # wasn't actually able to clone this
- version('4.19.21', sha256='6af9979ab41590e8311b8cc94356718429ef96ba0e3592bdd630da01211200ae')
- version('4.19.20', sha256='04cc2f87ac97e8718d8e1ef036e3ec26050ab44c21f9277618d5b67432fcbfd6')
- version('4.19.19', sha256='5436b61a78f48c7e8078e93a6b59453ad33780f80c644e5f3af39f94be1ede44')
- version('4.19.18', sha256='c0bd863800ed9b15dcad477c4017cdb73fa805c25908b0240564add74d697e1e')
- version('4.19.15', sha256='2b5c0b2c0266b467b365c21376d50dde61a3236722ab87ff1e8dacec283eb610')
- version('4.19.13', sha256='e353a7056599bf5fbd5d3ff9842a6ab2ea3cf4e0304a0f925ec5862907c0d15e')
+ version('4.19.21', sha256='3bfd58e875a87471c00e008f25a01d8312885aa01efc4f688e5cac861c8676e4')
+ version('4.19.20', sha256='475f85277a6601c406ade508b6c935b9f2a170c16fd3ae9dd4cdee7a4f7f340d')
+ version('4.19.19', sha256='348cd6229b095a3090e851555814f5147bffcb601cec891f1038eb6b38c9d856')
+ version('4.19.18', sha256='e274a8b9424047c094a40a8e70fc5e596c191cb8820472846d7bf739e461b2e8')
+ version('4.19.15', sha256='02bff1ac89253e12cdf1406ad39f841d0e264b0d96a7de13dfe9e29740df2053')
+ version('4.19.13', sha256='92193fcf990503bf29f03e290efc4ee1812d556efc18acf5c8b88c090177a630')
variant('module', default='sip', description='Name of private SIP module',
values=str, multi=False)
extends('python')
- depends_on('flex', type='build', when='@develop')
- depends_on('bison', type='build', when='@develop')
+ depends_on('flex', type='build')
+ depends_on('bison', type='build')
# https://www.riverbankcomputing.com/static/Docs/sip/installation.html
phases = ['configure', 'build', 'install']
@run_before('configure')
def prepare(self):
- if self.spec.satisfies('@develop'):
+ if not os.path.exists('configure.py'):
python('build.py', 'prepare')
def configure(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/py-six/package.py b/var/spack/repos/builtin/packages/py-six/package.py
index 22490eb9a2..121d71df58 100644
--- a/var/spack/repos/builtin/packages/py-six/package.py
+++ b/var/spack/repos/builtin/packages/py-six/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,11 +9,9 @@ from spack import *
class PySix(PythonPackage):
"""Python 2 and 3 compatibility utilities."""
- homepage = "https://pypi.python.org/pypi/six"
- url = "https://pypi.io/packages/source/s/six/six-1.11.0.tar.gz"
-
- import_modules = ['six']
+ pypi = "six/six-1.11.0.tar.gz"
+ version('1.15.0', sha256='30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259')
version('1.14.0', sha256='236bdbdce46e6e6a3d61a337c0f8b763ca1e8717c03b369e87a7ec7ce1319c0a')
version('1.12.0', sha256='d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73')
version('1.11.0', sha256='70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9')
@@ -22,10 +20,5 @@ class PySix(PythonPackage):
version('1.8.0', sha256='047bbbba41bac37c444c75ddfdf0573dd6e2f1fbd824e6247bb26fa7d8fa3830')
extends('python', ignore=r'bin/pytest')
-
- # Newer versions of setuptools require six. Although setuptools is an
- # optional dependency of six, if it is not found, setup.py will fallback
- # on distutils.core instead. Don't add a setuptools dependency or we
- # won't be able to bootstrap setuptools.
-
- # depends_on('py-setuptools', type='build')
+ depends_on('python@2.7:2.8,3.3:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-slepc4py/ldshared-dev.patch b/var/spack/repos/builtin/packages/py-slepc4py/ldshared-dev.patch
new file mode 100644
index 0000000000..fbe430af1b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-slepc4py/ldshared-dev.patch
@@ -0,0 +1,13 @@
+diff --git a/src/binding/slepc4py/conf/baseconf.py b/src/binding/slepc4py/conf/baseconf.py
+index b0707a65a..44ba8f194 100644
+--- a/src/binding/slepc4py/conf/baseconf.py
++++ b/src/binding/slepc4py/conf/baseconf.py
+@@ -213,7 +213,7 @@ class PetscConfig:
+ ldshared = getenv('LDSHARED', ldshared)
+ ldflags = getenv('LDFLAGS', cflags + ' ' + (ldflags or ''))
+ ldcmd = split_quoted(ld) + split_quoted(ldflags)
+- ldshared = [flg for flg in split_quoted(ldshared) if flg not in ldcmd]
++ ldshared = [flg for flg in split_quoted(ldshared) if flg not in ldcmd and (flg.find('/lib/spack/env')<0)]
+ ldshared = str.join(' ', ldshared)
+ #
+ def get_flags(cmd):
diff --git a/var/spack/repos/builtin/packages/py-slepc4py/ldshared.patch b/var/spack/repos/builtin/packages/py-slepc4py/ldshared.patch
new file mode 100644
index 0000000000..65efde5b84
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-slepc4py/ldshared.patch
@@ -0,0 +1,13 @@
+diff --git a/src/binding/slepc4py/conf/baseconf.py b/src/binding/slepc4py/conf/baseconf.py
+index b0707a65a..44ba8f194 100644
+--- a/conf/baseconf.py
++++ b/conf/baseconf.py
+@@ -213,7 +213,7 @@ class PetscConfig:
+ ldshared = getenv('LDSHARED', ldshared)
+ ldflags = getenv('LDFLAGS', cflags + ' ' + (ldflags or ''))
+ ldcmd = split_quoted(ld) + split_quoted(ldflags)
+- ldshared = [flg for flg in split_quoted(ldshared) if flg not in ldcmd]
++ ldshared = [flg for flg in split_quoted(ldshared) if flg not in ldcmd and (flg.find('/lib/spack/env')<0)]
+ ldshared = str.join(' ', ldshared)
+ #
+ def get_flags(cmd):
diff --git a/var/spack/repos/builtin/packages/py-slepc4py/package.py b/var/spack/repos/builtin/packages/py-slepc4py/package.py
index 58b00ce02b..78425fea1c 100644
--- a/var/spack/repos/builtin/packages/py-slepc4py/package.py
+++ b/var/spack/repos/builtin/packages/py-slepc4py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,11 +11,13 @@ class PySlepc4py(PythonPackage):
"""
homepage = "https://gitlab.com/slepc/slepc4py"
- url = "https://gitlab.com/slepc/slepc4py/-/archive/3.12.0/slepc4py-3.12.0.tar.gz"
- git = "https://gitlab.com/slepc/slepc4py.git"
+ url = "https://slepc.upv.es/download/distrib/slepc4py-3.15.0.tar.gz"
+ git = "https://gitlab.com/slepc/slepc.git"
maintainers = ['dalcinl', 'joseeroman', 'balay']
+ version('main', branch='main')
+ version('3.15.0', sha256='2f5f5cc25ab4dd3782046c65e97265b39be0cf9cc74c5c0100c3c580c3c32395')
version('3.13.0', sha256='780eff0eea1a5217642d23cd563786ef22df27e1d772a1b0bb4ccc5701df5ea5')
version('3.12.0', sha256='d8c06953b7d00f529a9a7fd016dfa8efdf1d05995baeea7688d1d59611f424f7')
version('3.11.0', sha256='1e591056beee209f585cd781e5fe88174cd2a61215716a71d9eaaf9411b6a775')
@@ -24,9 +26,14 @@ class PySlepc4py(PythonPackage):
version('3.8.0', sha256='988815b3650b69373be9abbf2355df512dfd200aa74b1785b50a484d6dfee971')
version('3.7.0', sha256='139f8bb325dad00a0e8dbe5b3e054050c82547936c1b6e7812fb1a3171c9ad0b')
+ patch('ldshared.patch', when='@:99')
+ patch('ldshared-dev.patch', when='@main')
+
+ depends_on('py-cython', type='build', when='@main')
depends_on('py-setuptools', type='build')
depends_on('py-petsc4py', type=('build', 'run'))
+ depends_on('py-petsc4py@3.15:3.15.99', when='@3.15:3.15.99', type=('build', 'run'))
depends_on('py-petsc4py@3.13:3.13.99', when='@3.13:3.13.99', type=('build', 'run'))
depends_on('py-petsc4py@3.12:3.12.99', when='@3.12:3.12.99', type=('build', 'run'))
depends_on('py-petsc4py@3.11:3.11.99', when='@3.11:3.11.99', type=('build', 'run'))
@@ -37,6 +44,8 @@ class PySlepc4py(PythonPackage):
depends_on('py-petsc4py@3.6:3.6.99', when='@3.6:3.6.99', type=('build', 'run'))
depends_on('slepc')
+ depends_on('slepc@3.15:3.15.99', when='@3.15:3.15.99')
+ depends_on('slepc@3.13:3.13.99', when='@3.13:3.13.99')
depends_on('slepc@3.12:3.12.99', when='@3.12:3.12.99')
depends_on('slepc@3.11:3.11.99', when='@3.11:3.11.99')
depends_on('slepc@3.10:3.10.99', when='@3.10:3.10.99')
@@ -44,3 +53,11 @@ class PySlepc4py(PythonPackage):
depends_on('slepc@3.8:3.8.99', when='@3.8:3.8.99')
depends_on('slepc@3.7:3.7.99', when='@3.7:3.7.99')
depends_on('slepc@3.6:3.6.99', when='@3.6:3.6.99')
+
+ @property
+ def build_directory(self):
+ import os
+ if self.spec.satisfies('@main'):
+ return os.path.join(self.stage.source_path, 'src', 'binding', 'slepc4py')
+ else:
+ return self.stage.source_path
diff --git a/var/spack/repos/builtin/packages/py-slurm-pipeline/package.py b/var/spack/repos/builtin/packages/py-slurm-pipeline/package.py
index a04d974aa8..190fcc60ed 100644
--- a/var/spack/repos/builtin/packages/py-slurm-pipeline/package.py
+++ b/var/spack/repos/builtin/packages/py-slurm-pipeline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class PySlurmPipeline(PythonPackage):
"""A Python class for scheduling SLURM jobs"""
homepage = "https://github.com/acorg/slurm-pipeline"
- url = "https://pypi.io/packages/source/s/slurm-pipeline/slurm-pipeline-1.1.13.tar.gz"
+ pypi = "slurm-pipeline/slurm-pipeline-1.1.13.tar.gz"
+ version('3.0.2', sha256='28e07eb93e846b395a16e6778fd3fc8344a82d115a6a8420276ec68f67f7131c')
version('2.0.9', sha256='2360e43965ecfa3701f287b7d597c99b4accd4dc8faf9d55cfdcc2228c4054cc')
version('1.1.13', sha256='6d6ca2e96a16780fd9520957166afd06272c57abd962e76bfe74c4d394b38da1')
diff --git a/var/spack/repos/builtin/packages/py-smart-open/package.py b/var/spack/repos/builtin/packages/py-smart-open/package.py
index f58683af38..5fbf871dc6 100644
--- a/var/spack/repos/builtin/packages/py-smart-open/package.py
+++ b/var/spack/repos/builtin/packages/py-smart-open/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PySmartOpen(PythonPackage):
different formats."""
homepage = "https://github.com/piskvorky/smart_open"
- url = "https://pypi.io/packages/source/s/smart_open/smart_open-1.10.0.tar.gz"
+ pypi = "smart_open/smart_open-1.10.0.tar.gz"
version('1.10.0', sha256='bea5624c0c2e49987c227bdf3596573157eccd96fd1d53198856c8d53948fa2c')
version('1.8.4', sha256='788e07f035defcbb62e3c1e313329a70b0976f4f65406ee767db73ad5d2d04f9')
diff --git a/var/spack/repos/builtin/packages/py-smmap/package.py b/var/spack/repos/builtin/packages/py-smmap/package.py
index f8baa0de0e..589bdf2263 100644
--- a/var/spack/repos/builtin/packages/py-smmap/package.py
+++ b/var/spack/repos/builtin/packages/py-smmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PySmmap(PythonPackage):
"""
homepage = "https://github.com/gitpython-developers/smmap"
- url = "https://pypi.io/packages/source/s/smmap/smmap-3.0.4.tar.gz"
+ pypi = "smmap/smmap-3.0.4.tar.gz"
version('3.0.4', sha256='9c98bbd1f9786d22f14b3d4126894d56befb835ec90cef151af566c7e19b5d24')
diff --git a/var/spack/repos/builtin/packages/py-snappy/package.py b/var/spack/repos/builtin/packages/py-snappy/package.py
index bcb9c5d749..699eb45cf1 100644
--- a/var/spack/repos/builtin/packages/py-snappy/package.py
+++ b/var/spack/repos/builtin/packages/py-snappy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-sncosmo/package.py b/var/spack/repos/builtin/packages/py-sncosmo/package.py
index 3108b961cf..ded2773787 100644
--- a/var/spack/repos/builtin/packages/py-sncosmo/package.py
+++ b/var/spack/repos/builtin/packages/py-sncosmo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySncosmo(PythonPackage):
analysis."""
homepage = "http://sncosmo.readthedocs.io/"
- url = "https://pypi.io/packages/source/s/sncosmo/sncosmo-1.2.0.tar.gz"
+ pypi = "sncosmo/sncosmo-1.2.0.tar.gz"
version('1.2.0', sha256='f3969eec5b25f60c70418dbd64765a2b4735bb53c210c61d0aab68916daea588')
diff --git a/var/spack/repos/builtin/packages/py-sniffio/package.py b/var/spack/repos/builtin/packages/py-sniffio/package.py
index 7ededd453a..280179cf11 100644
--- a/var/spack/repos/builtin/packages/py-sniffio/package.py
+++ b/var/spack/repos/builtin/packages/py-sniffio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySniffio(PythonPackage):
async library your code is running under."""
homepage = "https://github.com/python-trio/sniffio"
- url = "https://pypi.io/packages/source/s/sniffio/sniffio-1.1.0.tar.gz"
+ pypi = "sniffio/sniffio-1.1.0.tar.gz"
version('1.1.0', sha256='8e3810100f69fe0edd463d02ad407112542a11ffdc29f67db2bf3771afb87a21')
diff --git a/var/spack/repos/builtin/packages/py-snowballstemmer/package.py b/var/spack/repos/builtin/packages/py-snowballstemmer/package.py
index 80af93c40a..621becfe68 100644
--- a/var/spack/repos/builtin/packages/py-snowballstemmer/package.py
+++ b/var/spack/repos/builtin/packages/py-snowballstemmer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,7 @@ class PySnowballstemmer(PythonPackage):
English stemmer) generated from Snowball algorithms."""
homepage = "https://github.com/shibukawa/snowball_py"
- url = "https://pypi.io/packages/source/s/snowballstemmer/snowballstemmer-2.0.0.tar.gz"
-
- import_modules = ['snowballstemmer']
+ pypi = "snowballstemmer/snowballstemmer-2.0.0.tar.gz"
version('2.0.0', sha256='df3bac3df4c2c01363f3dd2cfa78cce2840a79b9f1c2d2de9ce8d31683992f52')
version('1.2.1', sha256='919f26a68b2c17a7634da993d91339e288964f93c274f1343e3bbbe2096e1128')
diff --git a/var/spack/repos/builtin/packages/py-snuggs/package.py b/var/spack/repos/builtin/packages/py-snuggs/package.py
index 181ae5d11c..53b746ffb7 100644
--- a/var/spack/repos/builtin/packages/py-snuggs/package.py
+++ b/var/spack/repos/builtin/packages/py-snuggs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class PySnuggs(PythonPackage):
version('1.4.1', sha256='b37ed4e11c5f372695dc6fe66fce6cede124c90a920fe4726c970c9293b71233')
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-click', type=('build', 'run'))
depends_on('py-pyparsing', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sonlib/package.py b/var/spack/repos/builtin/packages/py-sonlib/package.py
index 68710835c7..a6ecbdb2bd 100644
--- a/var/spack/repos/builtin/packages/py-sonlib/package.py
+++ b/var/spack/repos/builtin/packages/py-sonlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-sortedcollections/package.py b/var/spack/repos/builtin/packages/py-sortedcollections/package.py
new file mode 100644
index 0000000000..1024d0d220
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-sortedcollections/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class PySortedcollections(PythonPackage):
+ """Sorted Collections is an Apache2 licensed Python sorted collections library."""
+
+ homepage = "http://www.grantjenks.com/docs/sortedcollections/"
+ pypi = "sortedcollections/sortedcollections-1.2.1.tar.gz"
+
+ version('1.2.1', sha256='58c31f35e3d052ada6a1fbfc235a408e9ec5e2cfc64a02731cf97cac4afd306a')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-sortedcontainers', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sortedcontainers/package.py b/var/spack/repos/builtin/packages/py-sortedcontainers/package.py
index 33ab9ee443..32ca17ca4b 100644
--- a/var/spack/repos/builtin/packages/py-sortedcontainers/package.py
+++ b/var/spack/repos/builtin/packages/py-sortedcontainers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySortedcontainers(PythonPackage):
written in pure-Python, and fast as C-extensions."""
homepage = "http://www.grantjenks.com/docs/sortedcontainers/"
- url = "https://pypi.io/packages/source/s/sortedcontainers/sortedcontainers-2.1.0.tar.gz"
+ pypi = "sortedcontainers/sortedcontainers-2.1.0.tar.gz"
version('2.1.0', sha256='974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a')
diff --git a/var/spack/repos/builtin/packages/py-soundfile/package.py b/var/spack/repos/builtin/packages/py-soundfile/package.py
index aa485deca3..207746fd8c 100644
--- a/var/spack/repos/builtin/packages/py-soundfile/package.py
+++ b/var/spack/repos/builtin/packages/py-soundfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySoundfile(PythonPackage):
"""SoundFile is an audio library based on libsndfile, CFFI and NumPy."""
homepage = "https://github.com/bastibe/PySoundFile"
- url = "https://pypi.io/packages/source/S/SoundFile/SoundFile-0.10.3.post1.tar.gz"
+ pypi = "SoundFile/SoundFile-0.10.3.post1.tar.gz"
version('0.10.3.post1', sha256='490cff42650733d1832728b937fe99fa1802896f5ef4d61bcf78cf7ebecb107b')
diff --git a/var/spack/repos/builtin/packages/py-soupsieve/package.py b/var/spack/repos/builtin/packages/py-soupsieve/package.py
index be9d52e208..4b147e9c0a 100644
--- a/var/spack/repos/builtin/packages/py-soupsieve/package.py
+++ b/var/spack/repos/builtin/packages/py-soupsieve/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySoupsieve(PythonPackage):
"""A modern CSS selector implementation for Beautiful Soup."""
homepage = "https://github.com/facelessuser/soupsieve"
- url = "https://pypi.io/packages/source/s/soupsieve/soupsieve-1.9.3.tar.gz"
+ pypi = "soupsieve/soupsieve-1.9.3.tar.gz"
version('1.9.3', sha256='8662843366b8d8779dec4e2f921bebec9afd856a5ff2e82cd419acc5054a1a92')
diff --git a/var/spack/repos/builtin/packages/py-spacy-models-en-core-web-sm/package.py b/var/spack/repos/builtin/packages/py-spacy-models-en-core-web-sm/package.py
index 24c3af8d74..e0e236fe76 100644
--- a/var/spack/repos/builtin/packages/py-spacy-models-en-core-web-sm/package.py
+++ b/var/spack/repos/builtin/packages/py-spacy-models-en-core-web-sm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-spacy-models-en-vectors-web-lg/package.py b/var/spack/repos/builtin/packages/py-spacy-models-en-vectors-web-lg/package.py
index cbaf1027bc..05409a3901 100644
--- a/var/spack/repos/builtin/packages/py-spacy-models-en-vectors-web-lg/package.py
+++ b/var/spack/repos/builtin/packages/py-spacy-models-en-vectors-web-lg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-spacy/package.py b/var/spack/repos/builtin/packages/py-spacy/package.py
index 74e3a35708..c120ba17fe 100644
--- a/var/spack/repos/builtin/packages/py-spacy/package.py
+++ b/var/spack/repos/builtin/packages/py-spacy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PySpacy(PythonPackage):
Python and Cython."""
homepage = "https://spacy.io/"
- url = "https://pypi.io/packages/source/s/spacy/spacy-2.3.2.tar.gz"
+ pypi = "spacy/spacy-2.3.2.tar.gz"
version('2.3.2', sha256='818de26e0e383f64ccbe3db185574920de05923d8deac8bbb12113b9e33cee1f')
version('2.2.4', sha256='f0f3a67c5841e6e35d62c98f40ebb3d132587d3aba4f4dccac5056c4e90ff5b9')
diff --git a/var/spack/repos/builtin/packages/py-sparse/package.py b/var/spack/repos/builtin/packages/py-sparse/package.py
new file mode 100644
index 0000000000..814b5aa6e5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-sparse/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PySparse(PythonPackage):
+ """This library provides multi-dimensional sparse arrays."""
+
+ homepage = "https://sparse.pydata.org"
+ url = "https://github.com/pydata/sparse/archive/0.11.2.tar.gz"
+
+ version('0.11.2', sha256='365b6f038c4d331b3913e5fb00f5bc5dc5eadc49ef2feef332214f9bf33dbc82')
+
+ depends_on('python@3.6:3.999', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy@0.19:', type=('build', 'run'))
+ depends_on('py-numba@0.49:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-spatialist/package.py b/var/spack/repos/builtin/packages/py-spatialist/package.py
index ff7386fd00..1925711eda 100644
--- a/var/spack/repos/builtin/packages/py-spatialist/package.py
+++ b/var/spack/repos/builtin/packages/py-spatialist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PySpatialist(PythonPackage):
processing using GDAL and OGR."""
homepage = "https://github.com/johntruckenbrodt/spatialist"
- url = "https://pypi.io/packages/source/s/spatialist/spatialist-0.4.tar.gz"
+ pypi = "spatialist/spatialist-0.4.tar.gz"
maintainers = ['adamjstewart']
diff --git a/var/spack/repos/builtin/packages/py-spatialite/package.py b/var/spack/repos/builtin/packages/py-spatialite/package.py
index e78cff81ad..88fd83e183 100644
--- a/var/spack/repos/builtin/packages/py-spatialite/package.py
+++ b/var/spack/repos/builtin/packages/py-spatialite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PySpatialite(PythonPackage):
"""
homepage = "https://github.com/malexer/spatialite"
- url = "https://pypi.io/packages/source/s/spatialite/spatialite-0.0.3.tar.gz"
+ pypi = "spatialite/spatialite-0.0.3.tar.gz"
version('0.0.3', sha256='a0761f239a52f326b14ce41ba61b6614dfcc808b978a0bec4a37c1de9ad9071e')
diff --git a/var/spack/repos/builtin/packages/py-spdlog/package.py b/var/spack/repos/builtin/packages/py-spdlog/package.py
index 2e149b6b30..26886f4d1e 100644
--- a/var/spack/repos/builtin/packages/py-spdlog/package.py
+++ b/var/spack/repos/builtin/packages/py-spdlog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySpdlog(PythonPackage):
to the C++ spdlog library."""
homepage = 'https://github.com/bodgergely/spdlog-python'
- url = 'https://pypi.io/packages/source/s/spdlog/spdlog-2.0.0.tar.gz'
+ pypi = 'spdlog/spdlog-2.0.0.tar.gz'
git = 'https://github.com/bodgergely/spdlog-python.git'
# NOTE: Righ now py-spdlog works with a git submodule containing a copy
@@ -25,4 +25,3 @@ class PySpdlog(PythonPackage):
depends_on('py-pybind11@2.2:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-pytest-runner', type='build')
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-spectra/package.py b/var/spack/repos/builtin/packages/py-spectra/package.py
index 063680bb7c..365c597a00 100644
--- a/var/spack/repos/builtin/packages/py-spectra/package.py
+++ b/var/spack/repos/builtin/packages/py-spectra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PySpectra(PythonPackage):
"""Color scales and color conversion made easy for Python."""
- homepage = "https://pypi.python.org/pypi/spectra/0.0.8"
- url = "https://pypi.io/packages/source/s/spectra/spectra-0.0.8.tar.gz"
+ pypi = "spectra/spectra-0.0.8.tar.gz"
version('0.0.11', sha256='8eb362a5187cb63cee13cd01186799c0c791a3ad3bec57b279132e12521762b8')
version('0.0.8', sha256='851b88c9c0bba84e0be1fce5b9c02a7b4ef139a2b3e590b0d082d679e19f0759')
diff --git a/var/spack/repos/builtin/packages/py-spefile/package.py b/var/spack/repos/builtin/packages/py-spefile/package.py
index 54eec9ff91..6a9a645ea1 100644
--- a/var/spack/repos/builtin/packages/py-spefile/package.py
+++ b/var/spack/repos/builtin/packages/py-spefile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,6 @@ class PySpefile(PythonPackage):
homepage = "https://github.com/conda-forge/spefile-feedstock"
git = "https://github.com/conda-forge/spefile-feedstock.git"
- import_modules = ['spefile']
-
version('1.6', commit='24394e066da8dee5e7608f556ca0203c9db217f9')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-spgl1/package.py b/var/spack/repos/builtin/packages/py-spgl1/package.py
new file mode 100644
index 0000000000..185576f848
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-spgl1/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PySpgl1(PythonPackage):
+ """SPGL1 is a solver for large-scale one-norm regularized least squares. It is
+ designed to solve any of the following three problems: Basis pursuit denoise
+ (BPDN): minimize ||x||_1 subject to ||Ax - b||_2 <= sigma, Basis pursuit (BP):
+ minimize ||x||_1 subject to Ax = b Lasso: minimize ||Ax - b||_2 subject to
+ ||x||_1 <= tau, The matrix A can be defined explicitly, or as an operator that
+ returns both both Ax and A'b. SPGL1 can solve these three problems in both
+ the real and complex domains."""
+
+ pypi = "spgl1/spgl1-0.0.2.tar.gz"
+ git = "https://github.com/drrelyea/spgl1.git"
+
+ maintainers = ['archxlith']
+
+ version('master', branch='master')
+ version('0.0.2', sha256='a2a524724097bad18dd88a306dbcc99124c6c46ffcbb1a96d6ba6dd6fe2f7404')
+ version('0.0.1', sha256='24ff37ab5be57f0ccf14c53090b171e019c3c12799c80f368e628e1cc9ac9a1f')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-numpy@1.15:', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-spglib/package.py b/var/spack/repos/builtin/packages/py-spglib/package.py
index c1b6cf6981..39db973083 100644
--- a/var/spack/repos/builtin/packages/py-spglib/package.py
+++ b/var/spack/repos/builtin/packages/py-spglib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PySpglib(PythonPackage):
crystal symmetries."""
homepage = "http://atztogo.github.io/spglib/"
- url = "https://pypi.io/packages/source/s/spglib/spglib-1.9.9.18.tar.gz"
+ pypi = "spglib/spglib-1.9.9.18.tar.gz"
version('1.9.9.18', sha256='cbbb8383320b500dc6100b83d5e914a26a97ef8fc97c82d8921b10220e4126cd')
diff --git a/var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py b/var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py
index f24af6bbb7..dcffde6815 100644
--- a/var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PySphinxBootstrapTheme(PythonPackage):
"""Sphinx Bootstrap Theme."""
- homepage = "https://pypi.python.org/pypi/sphinx-bootstrap-theme/"
- url = "https://pypi.io/packages/source/s/sphinx-bootstrap-theme/sphinx-bootstrap-theme-0.4.13.tar.gz"
+ pypi = "sphinx-bootstrap-theme/sphinx-bootstrap-theme-0.4.13.tar.gz"
version('0.4.13', sha256='47f7719e56304026f285455bbb115525d227a6e23341d4b7f6f0b48b2eface82')
diff --git a/var/spack/repos/builtin/packages/py-sphinx-copybutton/package.py b/var/spack/repos/builtin/packages/py-sphinx-copybutton/package.py
index 12d4df06dd..2a334adee5 100644
--- a/var/spack/repos/builtin/packages/py-sphinx-copybutton/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinx-copybutton/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySphinxCopybutton(PythonPackage):
"""A small sphinx extension to add a "copy" button to code blocks."""
homepage = "https://github.com/choldgraf/sphinx-copybutton"
- url = "https://files.pythonhosted.org/packages/b7/74/da355d8a909a7934b5f1711fce6f056e0c398094918dec3a23703662a0fe/sphinx-copybutton-0.2.12.tar.gz"
+ pypi = "sphinx-copybutton/sphinx-copybutton-0.2.12.tar.gz"
version('0.2.12', sha256='9492883786984b6179c92c07ab0410237b26efa826adfa792acfd17b91a63e5c')
diff --git a/var/spack/repos/builtin/packages/py-sphinx-gallery/package.py b/var/spack/repos/builtin/packages/py-sphinx-gallery/package.py
index 067ea9b40c..7f4e9b0c8e 100644
--- a/var/spack/repos/builtin/packages/py-sphinx-gallery/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinx-gallery/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PySphinxGallery(PythonPackage):
"""
homepage = "https://sphinx-gallery.github.io"
- url = "https://files.pythonhosted.org/packages/9d/20/79118154e64a5280060b55c7ad025ad16f89b8192a6a9f0ffdbf71717bf0/sphinx-gallery-0.7.0.tar.gz"
+ pypi = "sphinx-gallery/sphinx-gallery-0.7.0.tar.gz"
version('0.7.0', sha256='05ead72c947718ab4183c33a598e29743e771dcf75aec84c53048423bd2f4580')
version('0.4.0', sha256='a286cf2eea47ce838a0754ecef617616afb1f40e41e52fe765723464f52e0c2f')
diff --git a/var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py b/var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py
index bc09b3324b..150450f5b7 100644
--- a/var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,17 +9,17 @@ from spack import *
class PySphinxRtdTheme(PythonPackage):
"""ReadTheDocs.org theme for Sphinx."""
- homepage = "https://github.com/rtfd/sphinx_rtd_theme/"
- url = "https://github.com/readthedocs/sphinx_rtd_theme/archive/0.5.0.tar.gz"
+ homepage = "https://github.com/readthedocs/sphinx_rtd_theme"
+ pypi = "sphinx-rtd-theme/sphinx_rtd_theme-0.5.1.tar.gz"
- import_modules = ['sphinx_rtd_theme']
-
- version('0.5.0', sha256='f5c77e9026e2bd0b3d2530f9f8a6681808b216ba70195fe56e7ad89f641ac447')
- version('0.4.3', sha256='3412195caad06e4537ad741596d57706c3ed29073d1e0e6b46f25e344d0f393b')
- version('0.2.5b1', sha256='31924cdaa5232d1d573423ebebeb1e8f02c8b3cd8cd0662b8a91f3b12efbc12e')
- version('0.1.10-alpha', sha256='a4c120c0d5c87a2541da9d5e48d3c43b96ea7d7867eacbd5dbf125cdeaa0b4f0')
+ version('0.5.1', sha256='eda689eda0c7301a80cf122dad28b1861e5605cbf455558f3775e1e8200e83a5')
+ version('0.5.0', sha256='22c795ba2832a169ca301cd0a083f7a434e09c538c70beb42782c073651b707d')
+ version('0.4.3', sha256='728607e34d60456d736cc7991fd236afb828b21b82f956c5ea75f94c8414040a')
depends_on('py-setuptools', type='build')
- depends_on('npm', when='@0.5.0:', type='build')
depends_on('py-sphinx', when='@0.4.1:', type=('build', 'run'))
- depends_on('py-pytest', when='@0.5.0:', type='test')
+
+ def setup_build_environment(self, env):
+ # Hack to prevent usage of npm in 0.5+
+ # https://github.com/readthedocs/sphinx_rtd_theme/issues/1014
+ env.set('CI', True)
diff --git a/var/spack/repos/builtin/packages/py-sphinx/package.py b/var/spack/repos/builtin/packages/py-sphinx/package.py
index d326c53f4c..873d010532 100644
--- a/var/spack/repos/builtin/packages/py-sphinx/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,17 +10,7 @@ class PySphinx(PythonPackage):
"""Sphinx Documentation Generator."""
homepage = "https://sphinx-doc.org/"
- url = "https://pypi.io/packages/source/S/Sphinx/Sphinx-3.2.0.tar.gz"
-
- import_modules = [
- 'sphinx', 'sphinx.testing', 'sphinx.ext', 'sphinx.pycode',
- 'sphinx.search', 'sphinx.transforms', 'sphinx.builders',
- 'sphinx.directives', 'sphinx.util', 'sphinx.environment',
- 'sphinx.writers', 'sphinx.domains', 'sphinx.locale',
- 'sphinx.ext.napoleon', 'sphinx.ext.autosummary', 'sphinx.pycode.pgen2',
- 'sphinx.transforms.post_transforms', 'sphinx.util.stemmer',
- 'sphinx.environment.collectors', 'sphinx.environment.adapters'
- ]
+ pypi = "Sphinx/Sphinx-3.2.0.tar.gz"
version('3.2.0', sha256='cf2d5bc3c6c930ab0a1fbef3ad8a82994b1bf4ae923f8098a05c7e5516f07177')
version('3.0.0', sha256='6a099e6faffdc3ceba99ca8c2d09982d43022245e409249375edf111caf79ed3')
@@ -64,11 +54,3 @@ class PySphinx(PythonPackage):
depends_on('py-packaging', when='@1.7.4:', type=('build', 'run'))
depends_on('py-typing', when='@1.6.1', type=('build', 'run'))
depends_on('py-typing', when='@1.6.2:^python@2.7:3.4', type=('build', 'run'))
-
- depends_on('py-pytest', type='test')
- depends_on('py-pytest-cov', type='test')
- depends_on('py-html5lib', type='test')
- depends_on('py-flake8@3.5.0:', type='test')
- depends_on('py-flake8-import-order', type='test')
- depends_on('py-mypy@0.720:', type='test')
- depends_on('py-docutils-stubs', type='test')
diff --git a/var/spack/repos/builtin/packages/py-sphinxautomodapi/package.py b/var/spack/repos/builtin/packages/py-sphinxautomodapi/package.py
index 7538121854..503c77d831 100644
--- a/var/spack/repos/builtin/packages/py-sphinxautomodapi/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxautomodapi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySphinxautomodapi(PythonPackage):
"""Provides Sphinx directives to autogenerate API documentation pages"""
homepage = "https://sphinx-automodapi.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/s/sphinx-automodapi/sphinx-automodapi-0.9.tar.gz"
+ pypi = "sphinx-automodapi/sphinx-automodapi-0.9.tar.gz"
version('0.9', sha256='71a69e1a7ab8d849f416d7431db854d7b1925f749ba6345bc7d88f288892871d')
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-applehelp/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-applehelp/package.py
index 67ba38134c..ae12f64e14 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-applehelp/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-applehelp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,13 @@ class PySphinxcontribApplehelp(PythonPackage):
help books."""
homepage = "http://sphinx-doc.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-applehelp/sphinxcontrib-applehelp-1.0.1.tar.gz"
+ pypi = "sphinxcontrib-applehelp/sphinxcontrib-applehelp-1.0.1.tar.gz"
+
+ # Sphinx requires sphinxcontrib-applehelp at build-time, but
+ # sphinxcontrib-applehelp requires sphinx at run-time
+ import_modules = []
version('1.0.1', sha256='edaa0ab2b2bc74403149cb0209d6775c96de797dfd5b5e2a71981309efab3897')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- def build_test(self):
- # Requires sphinx, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py
index d7820786b0..9cfc4e8e65 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,19 +9,23 @@ from spack import *
class PySphinxcontribBibtex(PythonPackage):
"""A Sphinx extension for BibTeX style citations."""
- homepage = "https://pypi.python.org/pypi/sphinxcontrib-bibtex"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-bibtex/sphinxcontrib-bibtex-0.3.5.tar.gz"
-
- import_modules = ['sphinxcontrib', 'sphinxcontrib.bibtex']
+ pypi = "sphinxcontrib-bibtex/sphinxcontrib-bibtex-0.3.5.tar.gz"
+ version('2.0.0', sha256='98e18eb0b088d3f556199f3fbb91d3d48ebb7596fe86b6c37cc4c4dc5419b7a1')
version('1.0.0', sha256='629612b001f86784669d65e662377a482052decfd9a0a17c46860878eef7b9e0')
version('0.3.5', sha256='c93e2b4a0d14f0ab726f95f0a33c1675965e9df3ed04839635577b8f978206cd')
+ depends_on('python@2.7:2.8,3.3:', type=('build', 'run'))
+ depends_on('python@3.5:', type=('build', 'run'), when='@1:')
+ depends_on('python@3.6:', type=('build', 'run'), when='@2:')
depends_on('py-setuptools', type='build')
depends_on('py-latexcodec@0.3.0:', type=('build', 'run'))
- depends_on('py-pybtex@0.17:', type=('build', 'run'))
- depends_on('py-pybtex-docutils@0.2.0:', type=('build', 'run'))
- depends_on('py-six@1.4.1:', type=('build', 'run'))
- depends_on('py-sphinx@1.0:', type=('build', 'run'))
+ depends_on('py-pybtex@0.17:', type=('build', 'run'), when='@:1.9.9')
+ depends_on('py-pybtex@0.20:', type=('build', 'run'), when='@2.0.0:')
+ depends_on('py-pybtex-docutils@0.2.0:', type=('build', 'run'), when='@:1.9.9')
+ depends_on('py-pybtex-docutils@0.2.2:', type=('build', 'run'), when='@2.0.0:')
+ depends_on('py-six@1.4.1:', type=('build', 'run'), when='@0.3.5')
+ depends_on('py-sphinx@1.0:', type=('build', 'run'), when='@:1.9.9')
+ depends_on('py-sphinx@2.0:', type=('build', 'run'), when='@2.0.0:')
depends_on('py-oset@0.1.3:', type=('build', 'run'))
depends_on('py-ordereddict@1.1:', when='^python@:2.6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-devhelp/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-devhelp/package.py
index 1954fc9677..488dd07c08 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-devhelp/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-devhelp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,13 @@ class PySphinxcontribDevhelp(PythonPackage):
Devhelp document."""
homepage = "http://sphinx-doc.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-devhelp/sphinxcontrib-devhelp-1.0.1.tar.gz"
+ pypi = "sphinxcontrib-devhelp/sphinxcontrib-devhelp-1.0.1.tar.gz"
+
+ # Sphinx requires sphinxcontrib-devhelp at build-time, but
+ # sphinxcontrib-devhelp requires sphinx at run-time
+ import_modules = []
version('1.0.1', sha256='6c64b077937330a9128a4da74586e8c2130262f014689b4b89e2d08ee7294a34')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- def build_test(self):
- # Requires sphinx, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-htmlhelp/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-htmlhelp/package.py
index 95f6819d59..1199b88a5a 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-htmlhelp/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-htmlhelp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,13 @@ class PySphinxcontribHtmlhelp(PythonPackage):
document."""
homepage = "http://sphinx-doc.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-htmlhelp/sphinxcontrib-htmlhelp-1.0.2.tar.gz"
+ pypi = "sphinxcontrib-htmlhelp/sphinxcontrib-htmlhelp-1.0.2.tar.gz"
+
+ # Sphinx requires sphinxcontrib-htmlhelp at build-time, but
+ # sphinxcontrib-htmlhelp requires sphinx at run-time
+ import_modules = []
version('1.0.2', sha256='4670f99f8951bd78cd4ad2ab962f798f5618b17675c35c5ac3b2132a14ea8422')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- def build_test(self):
- # Requires sphinx, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-issuetracker/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-issuetracker/package.py
index 2197c3080c..dad1b340c5 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-issuetracker/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-issuetracker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySphinxcontribIssuetracker(PythonPackage):
"""Sphinx integration with different issuetrackers."""
homepage = "https://sphinxcontrib-issuetracker.readthedocs.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-issuetracker/sphinxcontrib-issuetracker-0.11.tar.gz"
+ pypi = "sphinxcontrib-issuetracker/sphinxcontrib-issuetracker-0.11.tar.gz"
version('0.11', sha256='843753d8b5e989116378ab45ecccb368fb78dc56eaa1554ed25e4fbf22745f4e')
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-jsmath/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-jsmath/package.py
index add0160ac8..501cd16fae 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-jsmath/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-jsmath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,13 @@ class PySphinxcontribJsmath(PythonPackage):
"""A sphinx extension which renders display math in HTML via JavaScript."""
homepage = "http://sphinx-doc.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-jsmath/sphinxcontrib-jsmath-1.0.1.tar.gz"
+ pypi = "sphinxcontrib-jsmath/sphinxcontrib-jsmath-1.0.1.tar.gz"
+
+ # Sphinx requires sphinxcontrib-jsmath at build-time, but
+ # sphinxcontrib-jsmath requires sphinx at run-time
+ import_modules = []
version('1.0.1', sha256='a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- def build_test(self):
- # Requires sphinx, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-mermaid/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-mermaid/package.py
index b525971d46..464924247c 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-mermaid/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-mermaid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,9 +12,8 @@ class PySphinxcontribMermaid(PythonPackage):
including general flowcharts, sequence and gantt diagrams."""
homepage = "https://github.com/mgaitan/sphinxcontrib-mermaid"
- url = "https://files.pythonhosted.org/packages/8e/0a/8a97b65608a63c43a99a9d6a37a5baff853f306e8506bf21ce54bb50d4f3/sphinxcontrib-mermaid-0.4.0.tar.gz"
+ pypi = "sphinxcontrib-mermaid/sphinxcontrib-mermaid-0.4.0.tar.gz"
- version('0.4.0', sha256='0ee45ba45b9575505eacdd6212e4e545213f4f93dfa32c7eeca32720dbc3b468')
- version('0.3.1', sha256='649738afc3022d25a742a928f7b4146cf6024b1d8bb49017962713d2de78123c', extension='zip')
+ version('0.4.0', sha256='0ee45ba45b9575505eacdd6212e4e545213f4f93dfa32c7eeca32720dbc3b468')
depends_on('py-sphinx@1.7:')
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py
index 56028f5163..a1425dd44a 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,7 @@ class PySphinxcontribProgramoutput(PythonPackage):
into documents, helping you to keep your command examples up to date."""
homepage = "https://sphinxcontrib-programoutput.readthedocs.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-programoutput/sphinxcontrib-programoutput-0.15.tar.gz"
-
- # FIXME: These import tests don't work for some reason
- # import_modules = ['sphinxcontrib', 'sphinxcontrib.programoutput']
+ pypi = "sphinxcontrib-programoutput/sphinxcontrib-programoutput-0.15.tar.gz"
version('0.15', sha256='80dd5b4eab780a13ff2c23500cac3dbf0e04ef9976b409ef25a47c263ef8ab94')
version('0.10', sha256='fdee94fcebb0d8fddfccac5c4fa560f6177d5340c4349ee447c890bea8857094')
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-qthelp/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-qthelp/package.py
index 19fd328f37..75be7ed6a2 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-qthelp/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-qthelp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,13 @@ class PySphinxcontribQthelp(PythonPackage):
document."""
homepage = "http://sphinx-doc.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-qthelp/sphinxcontrib-qthelp-1.0.2.tar.gz"
+ pypi = "sphinxcontrib-qthelp/sphinxcontrib-qthelp-1.0.2.tar.gz"
+
+ # Sphinx requires sphinxcontrib-qthelp at build-time, but
+ # sphinxcontrib-qthelp requires sphinx at run-time
+ import_modules = []
version('1.0.2', sha256='79465ce11ae5694ff165becda529a600c754f4bc459778778c7017374d4d406f')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- def build_test(self):
- # Requires sphinx, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-serializinghtml/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-serializinghtml/package.py
index 3bad6d661a..555f05a069 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-serializinghtml/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-serializinghtml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,13 @@ class PySphinxcontribSerializinghtml(PythonPackage):
"serialized" HTML files (json and pickle)."""
homepage = "http://sphinx-doc.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-serializinghtml/sphinxcontrib-serializinghtml-1.1.3.tar.gz"
+ pypi = "sphinxcontrib-serializinghtml/sphinxcontrib-serializinghtml-1.1.3.tar.gz"
+
+ # Sphinx requires sphinxcontrib-serializinghtml at build-time, but
+ # sphinxcontrib-serializinghtml requires sphinx at run-time
+ import_modules = []
version('1.1.3', sha256='c0efb33f8052c04fd7a26c0a07f1678e8512e0faec19f4aa8f2473a8b81d5227')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- def build_test(self):
- # Requires sphinx, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-trio/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-trio/package.py
index 191907db4f..fd4aea9243 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-trio/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-trio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PySphinxcontribTrio(PythonPackage):
or ... you get the idea."""
homepage = "https://github.com/python-trio/sphinxcontrib-trio"
- url = "https://files.pythonhosted.org/packages/ca/33/ee48d86e30bb3c5d72a47f49b1ebf5c23dd253b04d8d5fc3e6c68407a03e/sphinxcontrib-trio-1.1.2.tar.gz"
+ pypi = "sphinxcontrib-trio/sphinxcontrib-trio-1.1.2.tar.gz"
version('1.1.2', sha256='9f1ba9c1d5965b534e85258d8b677dd94e9b1a9a2e918b85ccd42590596b47c0')
version('1.1.0', sha256='d90f46d239ba0556e53d9a110989f98c9eb2cea76ab47937a1f39b62f63fe654')
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py
index 1e4d1051a3..97642c20a2 100644
--- a/var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,13 +11,7 @@ class PySphinxcontribWebsupport(PythonPackage):
Sphinx documentation into your Web application."""
homepage = "http://sphinx-doc.org/"
- url = "https://pypi.io/packages/source/s/sphinxcontrib-websupport/sphinxcontrib-websupport-1.1.2.tar.gz"
-
- # FIXME: These import tests don't work for some reason
- # import_modules = [
- # 'sphinxcontrib', 'sphinxcontrib.websupport',
- # 'sphinxcontrib.websupport.storage', 'sphinxcontrib.websupport.search'
- # ]
+ pypi = "sphinxcontrib-websupport/sphinxcontrib-websupport-1.1.2.tar.gz"
version('1.1.2', sha256='1501befb0fdf1d1c29a800fdbf4ef5dc5369377300ddbdd16d2cd40e54c6eefc')
version('1.1.0', sha256='9de47f375baf1ea07cdb3436ff39d7a9c76042c10a769c52353ec46e4e8fc3b9')
@@ -25,7 +19,3 @@ class PySphinxcontribWebsupport(PythonPackage):
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- def build_test(self):
- # Unit tests require sphinx, creating a circular dependency
- pass
diff --git a/var/spack/repos/builtin/packages/py-spyder/package.py b/var/spack/repos/builtin/packages/py-spyder/package.py
index a6ee780dd6..a5ee45024a 100644
--- a/var/spack/repos/builtin/packages/py-spyder/package.py
+++ b/var/spack/repos/builtin/packages/py-spyder/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySpyder(PythonPackage):
"""Scientific PYthon Development EnviRonment"""
homepage = "https://github.com/spyder-ide/spyder"
- url = "https://pypi.io/packages/source/s/spyder/spyder-3.1.3.tar.gz"
+ pypi = "spyder/spyder-3.1.3.tar.gz"
version('3.1.3', sha256='4978872cc5a006803bc8742d0a8fb43c49aef9524f0a9fcb8bd6dfcfdc2d2d6a')
diff --git a/var/spack/repos/builtin/packages/py-spykeutils/package.py b/var/spack/repos/builtin/packages/py-spykeutils/package.py
index bef3f0589d..941a5aa54b 100644
--- a/var/spack/repos/builtin/packages/py-spykeutils/package.py
+++ b/var/spack/repos/builtin/packages/py-spykeutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySpykeutils(PythonPackage):
"""Utilities for analyzing electrophysiological data"""
homepage = "https://github.com/rproepp/spykeutils"
- url = "https://pypi.io/packages/source/s/spykeutils/spykeutils-0.4.3.tar.gz"
+ pypi = "spykeutils/spykeutils-0.4.3.tar.gz"
version('0.4.3', sha256='ff6206d9116d665024109c997377bfed37d953a4cac2859b79a610f395b6b37b')
diff --git a/var/spack/repos/builtin/packages/py-sqlalchemy-utils/package.py b/var/spack/repos/builtin/packages/py-sqlalchemy-utils/package.py
index 1687054ccf..1373f1d2b4 100644
--- a/var/spack/repos/builtin/packages/py-sqlalchemy-utils/package.py
+++ b/var/spack/repos/builtin/packages/py-sqlalchemy-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySqlalchemyUtils(PythonPackage):
"""Various utility functions and custom data types for SQLAlchemy."""
homepage = "https://github.com/kvesteri/sqlalchemy-utils"
- url = "https://pypi.io/packages/source/s/sqlalchemy-utils/SQLAlchemy-Utils-0.36.8.tar.gz"
+ pypi = "sqlalchemy-utils/SQLAlchemy-Utils-0.36.8.tar.gz"
version('0.36.8', sha256='fb66e9956e41340011b70b80f898fde6064ec1817af77199ee21ace71d7d6ab0')
diff --git a/var/spack/repos/builtin/packages/py-sqlalchemy/package.py b/var/spack/repos/builtin/packages/py-sqlalchemy/package.py
index b1497b6da0..b7eb45ec3b 100644
--- a/var/spack/repos/builtin/packages/py-sqlalchemy/package.py
+++ b/var/spack/repos/builtin/packages/py-sqlalchemy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySqlalchemy(PythonPackage):
"""The Python SQL Toolkit and Object Relational Mapper"""
homepage = 'http://www.sqlalchemy.org/'
- url = "https://pypi.io/packages/source/S/SQLAlchemy/SQLAlchemy-1.3.9.tar.gz"
+ pypi = "SQLAlchemy/SQLAlchemy-1.3.9.tar.gz"
version('1.3.19', sha256='3bba2e9fbedb0511769780fe1d63007081008c5c2d7d715e91858c94dbaa260e')
version('1.3.9', sha256='272a835758908412e75e87f75dd0179a51422715c125ce42109632910526b1fd')
@@ -21,9 +21,6 @@ class PySqlalchemy(PythonPackage):
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-pytest@2.5.2:3.9.0,3.9.3:', type='test')
- depends_on('py-mock', type='test')
- depends_on('py-pytest-xdist', type='test')
variant('backend', description='Python modules for database access',
values=any_combination_of('mysql', 'pymysql', 'postgresql'))
diff --git a/var/spack/repos/builtin/packages/py-sqlparse/package.py b/var/spack/repos/builtin/packages/py-sqlparse/package.py
index 73916d40e5..831ecef206 100644
--- a/var/spack/repos/builtin/packages/py-sqlparse/package.py
+++ b/var/spack/repos/builtin/packages/py-sqlparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class PySqlparse(PythonPackage):
homepage = "https://github.com/andialbrecht/sqlparse"
url = "https://github.com/andialbrecht/sqlparse/archive/0.3.1.tar.gz"
+ version('0.4.1', sha256='f75cdec98a4cc8296890279d744e1ae8618bb14dbad77e3d0637f0d7bb5d6535')
version('0.3.1', sha256='344b539482b75c244ac69fbb160d0f4d63a288a392475c8418ca692c594561f9')
version('0.3.0', sha256='a75fddae009fba1d66786203c9dd3a842aa4415475c466d15484139117108474')
version('0.2.4', sha256='7087a2bd385c06ac1a5cf343e2e5ea7ce2bb6386849e59ef214e02af68f73fb4')
diff --git a/var/spack/repos/builtin/packages/py-srsly/package.py b/var/spack/repos/builtin/packages/py-srsly/package.py
index 46b1b50af0..76641befb6 100644
--- a/var/spack/repos/builtin/packages/py-srsly/package.py
+++ b/var/spack/repos/builtin/packages/py-srsly/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PySrsly(PythonPackage):
"""srsly: Modern high-performance serialization utilities for Python."""
homepage = "https://github.com/explosion/srsly"
- url = "https://pypi.io/packages/source/s/srsly/srsly-2.0.1.tar.gz"
+ pypi = "srsly/srsly-2.0.1.tar.gz"
version('2.0.1', sha256='fa3c7375be8fe75f23c27feafbfb5f738d55ffdbf02964c6896fb7684f519a52')
version('2.0.0', sha256='785b00e00406120dbef4ca82925051e6b60fe870c5f84f0d22b3632d574eb870')
@@ -19,11 +19,6 @@ class PySrsly(PythonPackage):
depends_on('py-wheel', when='@2:', type='build')
depends_on('py-cython@0.25:', when='@2:', type='build')
depends_on('py-pathlib@1.0.1', when='^python@:3.3', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-mock', type='test')
- depends_on('py-numpy', type='test')
- depends_on('py-six', when='@:1', type='test')
- depends_on('py-pytz', when='@:1', type='test')
# https://github.com/explosion/srsly/pull/24
patch('subprocess.patch', when='@2.0.0:2.0.1')
diff --git a/var/spack/repos/builtin/packages/py-sshtunnel/package.py b/var/spack/repos/builtin/packages/py-sshtunnel/package.py
index c9a13fa06e..9a88f6042f 100644
--- a/var/spack/repos/builtin/packages/py-sshtunnel/package.py
+++ b/var/spack/repos/builtin/packages/py-sshtunnel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PySshtunnel(PythonPackage):
"""Pure python SSH tunnels."""
homepage = "https://github.com/pahaz/sshtunnel"
- url = "https://pypi.io/packages/source/s/sshtunnel/sshtunnel-0.1.5.tar.gz"
+ pypi = "sshtunnel/sshtunnel-0.1.5.tar.gz"
version('0.1.5', sha256='c813fdcda8e81c3936ffeac47cb69cfb2d1f5e77ad0de656c6dab56aeebd9249')
diff --git a/var/spack/repos/builtin/packages/py-statsmodels/package.py b/var/spack/repos/builtin/packages/py-statsmodels/package.py
index b00e51730b..25920d6ad3 100644
--- a/var/spack/repos/builtin/packages/py-statsmodels/package.py
+++ b/var/spack/repos/builtin/packages/py-statsmodels/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,37 +11,47 @@ class PyStatsmodels(PythonPackage):
"""Statistical computations and models for use with SciPy"""
homepage = "http://www.statsmodels.org"
- url = "https://pypi.io/packages/source/s/statsmodels/statsmodels-0.8.0.tar.gz"
+ pypi = "statsmodels/statsmodels-0.8.0.tar.gz"
+ version('0.12.2', sha256='8ad7a7ae7cdd929095684118e3b05836c0ccb08b6a01fe984159475d174a1b10')
+ version('0.12.1', sha256='a271b4ccec190148dccda25f0cbdcbf871f408fc1394a10a7dc1af4a62b91c8e')
version('0.10.2', sha256='9cd2194c6642a8754e85f9a6e6912cdf996bebf6ff715d3cc67f65dadfd37cc9')
version('0.10.1', sha256='320659a80f916c2edf9dfbe83512d9004bb562b72eedb7d9374562038697fa10')
version('0.8.0', sha256='26431ab706fbae896db7870a0892743bfbb9f5c83231644692166a31d2d86048')
variant('plotting', default=False, description='With matplotlib')
- depends_on('python@:3.6', when='@:0.8.0', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.4:', when='@0.10.1:', type=('build', 'run'))
+ depends_on('python@:3.6', when='@:0.8.0', type=('build', 'link', 'run'))
+ depends_on('python@2.7:2.8,3.4:', when='@0.10.1:', type=('build', 'link', 'run'))
+ depends_on('python@3.6:', when='@0.12.1:', type=('build', 'link', 'run'))
# according to http://www.statsmodels.org/dev/install.html earlier versions
# might work.
depends_on('py-setuptools@0.6c5:', type='build')
+ depends_on('py-cython@0.29:', type='build')
# patsy@0.5.1 works around a Python change
# https://github.com/statsmodels/statsmodels/issues/5343 and
# https://github.com/pydata/patsy/pull/131
- depends_on('py-numpy@1.7.0:', type=('build', 'run'), when='@0.8.0:')
- depends_on('py-numpy@1.11.0:', type=('build', 'run'), when='@0.10.1:')
+ depends_on('py-numpy@1.7.0:', type=('build', 'link', 'run'), when='@0.8.0:')
+ depends_on('py-numpy@1.11.0:', type=('build', 'link', 'run'), when='@0.10.1:')
+ depends_on('py-numpy@1.15.0:', type=('build', 'link', 'run'), when='@0.12.1:')
depends_on('py-pandas@0.12:', type=('build', 'run'), when='@0.8.0:')
depends_on('py-pandas@0.19:', type=('build', 'run'), when='@0.10.1:')
+ depends_on('py-pandas@0.21:', type=('build', 'run'), when='@0.12.1:')
depends_on('py-patsy@0.2.1:', type=('build', 'run'), when='@0.8.0:')
depends_on('py-patsy@0.4.0:', type=('build', 'run'), when='@0.10.1:')
+ depends_on('py-patsy@0.5.0:', type=('build', 'run'), when='@0.12.1:')
depends_on('py-scipy@0.11:', type=('build', 'run'), when='@0.8.0:')
depends_on('py-scipy@0.18:', type=('build', 'run'), when='@0.10.1:')
+ depends_on('py-scipy@1.1:', type=('build', 'run'), when='@0.12.1:')
depends_on('py-matplotlib@1.3:', type=('build', 'run'), when='@0.8.0 +plotting')
depends_on('py-pytest', type='test')
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
def build_test(self):
dirs = glob.glob("build/lib*") # There can be only one...
with working_dir(dirs[0]):
diff --git a/var/spack/repos/builtin/packages/py-stdlib-list/package.py b/var/spack/repos/builtin/packages/py-stdlib-list/package.py
index 3bbe840729..5e815aa3e6 100644
--- a/var/spack/repos/builtin/packages/py-stdlib-list/package.py
+++ b/var/spack/repos/builtin/packages/py-stdlib-list/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ class PyStdlibList(PythonPackage):
for Python, along with the code for scraping the official Python
docs to get said lists."""
- homepage = "https://pypi.python.org/project/stdlib-list"
- url = "https://pypi.io/packages/source/s/stdlib-list/stdlib-list-0.6.0.tar.gz"
+ pypi = "stdlib-list/stdlib-list-0.6.0.tar.gz"
version('0.6.0', sha256='133cc99104f5a4e1604dc88ebb393529bd4c2b99ae7e10d46c0b596f3c67c3f0')
diff --git a/var/spack/repos/builtin/packages/py-stestr/package.py b/var/spack/repos/builtin/packages/py-stestr/package.py
index fbc7259d2c..4aa5ce5ee8 100644
--- a/var/spack/repos/builtin/packages/py-stestr/package.py
+++ b/var/spack/repos/builtin/packages/py-stestr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyStestr(PythonPackage):
"""A parallel Python test runner built around subunit."""
homepage = "https://stestr.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/s/stestr/stestr-2.5.1.tar.gz"
+ pypi = "stestr/stestr-2.5.1.tar.gz"
version('2.5.1', sha256='151479fdf2db9f5f492b5285f4696f2d38960639054835dbdcd4c0687122c0fd')
diff --git a/var/spack/repos/builtin/packages/py-stevedore/package.py b/var/spack/repos/builtin/packages/py-stevedore/package.py
index d57b6f373b..7900375d4e 100644
--- a/var/spack/repos/builtin/packages/py-stevedore/package.py
+++ b/var/spack/repos/builtin/packages/py-stevedore/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyStevedore(PythonPackage):
"""Manage Dynamic Plugins for Python Applications."""
homepage = "https://docs.openstack.org/stevedore/latest/"
- url = "https://pypi.io/packages/source/s/stevedore/stevedore-1.28.0.tar.gz"
+ pypi = "stevedore/stevedore-1.28.0.tar.gz"
version('1.28.0', sha256='f1c7518e7b160336040fee272174f1f7b29a46febb3632502a8f2055f973d60b')
diff --git a/var/spack/repos/builtin/packages/py-stopit/package.py b/var/spack/repos/builtin/packages/py-stopit/package.py
index 5fd754d278..c766c0a139 100644
--- a/var/spack/repos/builtin/packages/py-stopit/package.py
+++ b/var/spack/repos/builtin/packages/py-stopit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,7 @@ class PyStopit(PythonPackage):
blocks or callables with two context managers and two decorators.
"""
- homepage = "https://pypi.org/project/stopit/"
- url = "https://pypi.io/packages/source/s/stopit/stopit-1.1.2.tar.gz"
+ pypi = "stopit/stopit-1.1.2.tar.gz"
version('1.1.2', sha256='f7f39c583fd92027bd9d06127b259aee7a5b7945c1f1fa56263811e1e766996d')
diff --git a/var/spack/repos/builtin/packages/py-storm/package.py b/var/spack/repos/builtin/packages/py-storm/package.py
index 64a631b200..8361f87a90 100644
--- a/var/spack/repos/builtin/packages/py-storm/package.py
+++ b/var/spack/repos/builtin/packages/py-storm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-stratify/package.py b/var/spack/repos/builtin/packages/py-stratify/package.py
index bce0899efe..86e546545b 100644
--- a/var/spack/repos/builtin/packages/py-stratify/package.py
+++ b/var/spack/repos/builtin/packages/py-stratify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyStratify(PythonPackage):
"""
homepage = "https://github.com/SciTools-incubator/python-stratify"
- url = "https://pypi.io/packages/source/s/stratify/stratify-0.1.tar.gz"
+ pypi = "stratify/stratify-0.1.tar.gz"
version('0.1', sha256='5426f3b66e45e1010952d426e5a7be42cd45fe65f1cd73a98fee1eb7c110c6ee')
diff --git a/var/spack/repos/builtin/packages/py-stsci-distutils/package.py b/var/spack/repos/builtin/packages/py-stsci-distutils/package.py
index f14a6ebd46..b8c89349b8 100644
--- a/var/spack/repos/builtin/packages/py-stsci-distutils/package.py
+++ b/var/spack/repos/builtin/packages/py-stsci-distutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-subprocess32/package.py b/var/spack/repos/builtin/packages/py-subprocess32/package.py
index 9c362b30cf..ff277258b3 100644
--- a/var/spack/repos/builtin/packages/py-subprocess32/package.py
+++ b/var/spack/repos/builtin/packages/py-subprocess32/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PySubprocess32(PythonPackage):
"""A backport of the subprocess module from Python 3.2/3.3 for 2.x."""
- homepage = "https://pypi.python.org/pypi/subprocess32"
- url = "https://pypi.io/packages/source/s/subprocess32/subprocess32-3.2.7.tar.gz"
+ pypi = "subprocess32/subprocess32-3.2.7.tar.gz"
version('3.5.4', sha256='eb2937c80497978d181efa1b839ec2d9622cf9600a039a79d0e108d1f9aec79d')
version('3.2.7', sha256='1e450a4a4c53bf197ad6402c564b9f7a53539385918ef8f12bdf430a61036590')
diff --git a/var/spack/repos/builtin/packages/py-subrosa/package.py b/var/spack/repos/builtin/packages/py-subrosa/package.py
index 19420f3574..0120e4e831 100644
--- a/var/spack/repos/builtin/packages/py-subrosa/package.py
+++ b/var/spack/repos/builtin/packages/py-subrosa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-svgpathtools/package.py b/var/spack/repos/builtin/packages/py-svgpathtools/package.py
index b4e23be0a7..fd394d0cb9 100644
--- a/var/spack/repos/builtin/packages/py-svgpathtools/package.py
+++ b/var/spack/repos/builtin/packages/py-svgpathtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,7 @@ class PySvgpathtools(PythonPackage):
"""A collection of tools for manipulating and analyzing SVG Path objects
and Bezier curves."""
- homepage = "https://pypi.org/project/svgpathtools/"
- url = "https://pypi.io/packages/source/s/svgpathtools/svgpathtools-1.3.3.tar.gz"
+ pypi = "svgpathtools/svgpathtools-1.3.3.tar.gz"
version('1.3.3', sha256='e4b3784ae41b725fbce6a33a8981210967b16d0b557cb5d98c0ed0c81f0f89b9')
diff --git a/var/spack/repos/builtin/packages/py-svgwrite/package.py b/var/spack/repos/builtin/packages/py-svgwrite/package.py
index 23373f95e5..e5ebef7780 100644
--- a/var/spack/repos/builtin/packages/py-svgwrite/package.py
+++ b/var/spack/repos/builtin/packages/py-svgwrite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ from spack import *
class PySvgwrite(PythonPackage):
"""A Python library to create SVG drawings."""
- homepage = "https://pypi.org/project/svgwrite/"
- url = "https://pypi.io/packages/source/s/svgwrite/svgwrite-1.1.12.zip"
+ pypi = "svgwrite/svgwrite-1.1.12.zip"
version('1.1.12', sha256='968c99f193f34f0fa7f0b3e82f49b93789c7c45cd89ce190480f16020d41ab79')
diff --git a/var/spack/repos/builtin/packages/py-symengine/package.py b/var/spack/repos/builtin/packages/py-symengine/package.py
index c9eb6078f0..7b5b4d6eda 100644
--- a/var/spack/repos/builtin/packages/py-symengine/package.py
+++ b/var/spack/repos/builtin/packages/py-symengine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySymengine(PythonPackage):
"""Python wrappers for SymEngine, a symbolic manipulation library."""
homepage = "https://github.com/symengine/symengine.py"
- url = "https://pypi.io/packages/source/s/symengine/symengine-0.2.0.tar.gz"
+ pypi = "symengine/symengine-0.2.0.tar.gz"
git = "https://github.com/symengine/symengine.py.git"
version('develop', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-symfit/package.py b/var/spack/repos/builtin/packages/py-symfit/package.py
index 2124792628..ce89747216 100644
--- a/var/spack/repos/builtin/packages/py-symfit/package.py
+++ b/var/spack/repos/builtin/packages/py-symfit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PySymfit(PythonPackage):
"""Symbolic Fitting; fitting as it should be."""
homepage = "http://symfit.readthedocs.org"
- url = "https://pypi.io/packages/source/s/symfit/symfit-0.3.5.tar.gz"
+ pypi = "symfit/symfit-0.3.5.tar.gz"
version('0.3.5', sha256='24c66305895c590249da7e61f62f128ee1c0c43c0a8c8e33b8abd3e0931f0881')
diff --git a/var/spack/repos/builtin/packages/py-sympy/package.py b/var/spack/repos/builtin/packages/py-sympy/package.py
index 8aec875219..2e79949799 100644
--- a/var/spack/repos/builtin/packages/py-sympy/package.py
+++ b/var/spack/repos/builtin/packages/py-sympy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,8 +8,7 @@ from spack import *
class PySympy(PythonPackage):
"""SymPy is a Python library for symbolic mathematics."""
- homepage = "https://pypi.python.org/pypi/sympy"
- url = "https://pypi.io/packages/source/s/sympy/sympy-0.7.6.tar.gz"
+ pypi = "sympy/sympy-0.7.6.tar.gz"
version('1.4', sha256='71a11e5686ae7ab6cb8feb5bd2651ef4482f8fd43a7c27e645a165e4353b23e1')
version('1.3', sha256='e1319b556207a3758a0efebae14e5e52c648fc1db8975953b05fff12b6871b54')
diff --git a/var/spack/repos/builtin/packages/py-syned/package.py b/var/spack/repos/builtin/packages/py-syned/package.py
index 12c1a98343..adedb292c5 100644
--- a/var/spack/repos/builtin/packages/py-syned/package.py
+++ b/var/spack/repos/builtin/packages/py-syned/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-systemd-python/package.py b/var/spack/repos/builtin/packages/py-systemd-python/package.py
index 82a9d44870..cdb531c4b2 100644
--- a/var/spack/repos/builtin/packages/py-systemd-python/package.py
+++ b/var/spack/repos/builtin/packages/py-systemd-python/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,6 @@ class PySystemdPython(PythonPackage):
"""Python interface for libsystemd"""
homepage = "https://github.com/systemd/python-systemd"
- url = "https://pypi.io/packages/source/s/systemd-python/systemd-python-234.tar.gz"
+ pypi = "systemd-python/systemd-python-234.tar.gz"
version('234', sha256='fd0e44bf70eadae45aadc292cb0a7eb5b0b6372cd1b391228047d33895db83e7')
diff --git a/var/spack/repos/builtin/packages/py-tables/package.py b/var/spack/repos/builtin/packages/py-tables/package.py
index 2abece3e51..4daade0be0 100644
--- a/var/spack/repos/builtin/packages/py-tables/package.py
+++ b/var/spack/repos/builtin/packages/py-tables/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,11 +11,7 @@ class PyTables(PythonPackage):
efficiently and easily cope with extremely large amounts of data."""
homepage = "http://www.pytables.org/"
- url = "https://pypi.io/packages/source/t/tables/tables-3.6.1.tar.gz"
-
- import_modules = [
- 'tables', 'tables.misc', 'tables.nodes', 'tables.scripts'
- ]
+ pypi = "tables/tables-3.6.1.tar.gz"
version('3.6.1', sha256='49a972b8a7c27a8a173aeb05f67acb45fe608b64cd8e9fa667c0962a60b71b49')
version('3.6.0', sha256='db3488214864fb313a611fca68bf1c9019afe4e7877be54d0e61c84416603d4d')
@@ -38,7 +34,6 @@ class PyTables(PythonPackage):
depends_on('py-numpy@1.9.3:', type=('build', 'run'))
depends_on('py-numexpr@2.6.2:', type=('build', 'run'))
depends_on('py-six@1.9.0:', when='@:3.5', type=('build', 'run'))
- depends_on('py-mock@2.0:', type='test')
# tables/req_versions.py
depends_on('hdf5@1.8.4:1.8.999', when='@:3.3.99')
depends_on('hdf5@1.8.4:', when='@3.4.0:')
diff --git a/var/spack/repos/builtin/packages/py-tabulate/package.py b/var/spack/repos/builtin/packages/py-tabulate/package.py
index 45cc865bbb..af5b33c314 100644
--- a/var/spack/repos/builtin/packages/py-tabulate/package.py
+++ b/var/spack/repos/builtin/packages/py-tabulate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTabulate(PythonPackage):
"""Pretty-print tabular data"""
homepage = "https://bitbucket.org/astanin/python-tabulate"
- url = "https://pypi.io/packages/source/t/tabulate/tabulate-0.8.6.tar.gz"
+ pypi = "tabulate/tabulate-0.8.6.tar.gz"
version('0.8.7', sha256='db2723a20d04bcda8522165c73eea7c300eda74e0ce852d9022e0159d7895007')
version('0.8.6', sha256='5470cc6687a091c7042cee89b2946d9235fe9f6d49c193a4ae2ac7bf386737c8')
diff --git a/var/spack/repos/builtin/packages/py-tap-py/package.py b/var/spack/repos/builtin/packages/py-tap-py/package.py
index a0c9c84ee6..4af1d074ea 100644
--- a/var/spack/repos/builtin/packages/py-tap-py/package.py
+++ b/var/spack/repos/builtin/packages/py-tap-py/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTapPy(PythonPackage):
"""Python TAP interface module for unit tests"""
homepage = "https://github.com/python-tap/tappy"
- url = "https://pypi.io/packages/source/t/tap.py/tap.py-3.0.tar.gz"
+ pypi = "tap.py/tap.py-3.0.tar.gz"
version('3.0', sha256='f5eeeeebfd64e53d32661752bb4c288589a3babbb96db3f391a4ec29f1359c70')
version('2.6.2', sha256='5f219d92dbad5e378f8f7549cdfe655b0d5fd2a778f9c83bee51b61c6ca40efb')
diff --git a/var/spack/repos/builtin/packages/py-tatsu/package.py b/var/spack/repos/builtin/packages/py-tatsu/package.py
index 8b157932bf..eb831caa2a 100644
--- a/var/spack/repos/builtin/packages/py-tatsu/package.py
+++ b/var/spack/repos/builtin/packages/py-tatsu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyTatsu(PythonPackage):
parsers in Python."""
homepage = "https://github.com/neogeny/tatsu"
- url = "https://pypi.io/packages/source/T/TatSu/TatSu-4.4.0.zip"
+ pypi = "TatSu/TatSu-4.4.0.zip"
version('4.4.0', sha256='80713413473a009f2081148d0f494884cabaf9d6866b71f2a68a92b6442f343d')
@@ -22,6 +22,5 @@ class PyTatsu(PythonPackage):
depends_on('py-setuptools', type='build')
# part of the standard lib in python@3.7.0, required in the current HEAD
depends_on('py-dataclasses@0.6:', type=('build', 'run'), when='@4.5:^python@:3.6.99')
- depends_on('py-pytest-mypy', type='test')
# optional dependency, otherwise falls back to standard implementation
depends_on('py-regex@2018.8:', type=('build', 'run'), when='+future_regex')
diff --git a/var/spack/repos/builtin/packages/py-tblib/package.py b/var/spack/repos/builtin/packages/py-tblib/package.py
index f32e292c12..45474211b3 100644
--- a/var/spack/repos/builtin/packages/py-tblib/package.py
+++ b/var/spack/repos/builtin/packages/py-tblib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyTblib(PythonPackage):
"""Traceback fiddling library. Allows you to pickle tracebacks."""
homepage = "https://github.com/ionelmc/python-tblib"
- url = "https://pypi.io/packages/source/t/tblib/tblib-1.6.0.tar.gz"
+ pypi = "tblib/tblib-1.6.0.tar.gz"
version('1.6.0', sha256='229bee3754cb5d98b4837dd5c4405e80cfab57cb9f93220410ad367f8b352344')
version('1.4.0', sha256='bd1ad564564a158ff62c290687f3db446038f9ac11a0bf6892712e3601af3bcd')
diff --git a/var/spack/repos/builtin/packages/py-tempora/package.py b/var/spack/repos/builtin/packages/py-tempora/package.py
index cb69e148ad..a065b37773 100644
--- a/var/spack/repos/builtin/packages/py-tempora/package.py
+++ b/var/spack/repos/builtin/packages/py-tempora/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTempora(PythonPackage):
"""Objects and routines pertaining to date and time (tempora) """
homepage = "https://github.com/jaraco/tempora"
- url = "https://pypi.io/packages/source/t/tempora/tempora-1.14.1.tar.gz"
+ pypi = "tempora/tempora-1.14.1.tar.gz"
version('1.14.1', sha256='cb60b1d2b1664104e307f8e5269d7f4acdb077c82e35cd57246ae14a3427d2d6')
diff --git a/var/spack/repos/builtin/packages/py-tenacity/package.py b/var/spack/repos/builtin/packages/py-tenacity/package.py
new file mode 100644
index 0000000000..0e6393167c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-tenacity/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyTenacity(PythonPackage):
+ """Retrying library for Python"""
+
+ homepage = "https://github.com/jd/tenacity"
+ pypi = "tenacity/tenacity-6.3.1.tar.gz"
+
+ version('6.3.1', sha256='e14d191fb0a309b563904bbc336582efe2037de437e543b38da749769b544d7f')
+
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build')
+
+ depends_on('py-six@1.9.0:', type=('build', 'run'))
+
+ depends_on('py-futures@3.0:', when='^python@:2.999', type=('build', 'run'))
+ depends_on('py-monotonic@0.6:', when='^python@:2.999', type=('build', 'run'))
+ depends_on('py-typing@3.7.4.1:', when='^python@:2.999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-tensorboard-plugin-wit/package.py b/var/spack/repos/builtin/packages/py-tensorboard-plugin-wit/package.py
index 53f4130e98..cc6fce343a 100644
--- a/var/spack/repos/builtin/packages/py-tensorboard-plugin-wit/package.py
+++ b/var/spack/repos/builtin/packages/py-tensorboard-plugin-wit/package.py
@@ -1,8 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import tempfile
+
class PyTensorboardPluginWit(Package):
"""The What-If Tool makes it easy to efficiently and
@@ -13,16 +15,17 @@ class PyTensorboardPluginWit(Package):
datapoint values. All this and more, in a visual way
that requires minimal code."""
- homepage = "https://pypi.python.org/project/tensorboard-plugin-wit"
+ homepage = "https://pypi.org/project/tensorboard-plugin-wit/"
url = "https://github.com/PAIR-code/what-if-tool/archive/v1.7.0.tar.gz"
git = "https://github.com/pair-code/what-if-tool.git"
maintainers = ['aweits']
version('master', branch='master')
+ version('1.8.0', sha256='1e4de1bbf6ae61c4d27b114ec2e1093bc4765b8c2bbb2cc5d43e2075b08a5fea')
version('1.7.0', sha256='30dcab9065b02c3f1476f4fb92b27f6feb6c00cdb281699c44d8e69c86745247')
- depends_on('bazel@0.26.1:', type='build')
+ depends_on('bazel@:2.1.0', type='build')
depends_on('py-setuptools@36.2.0:', type='build')
depends_on('python@2.7:2.8,3.2:', type=('build', 'run'))
depends_on('py-wheel', type='build')
@@ -34,9 +37,8 @@ class PyTensorboardPluginWit(Package):
phases = ['setup', 'build', 'install']
def setup_build_environment(self, env):
- tmp_path = '/tmp/spack/tb-plugin'
- mkdirp(tmp_path)
- env.set('TEST_TMPDIR', tmp_path)
+ self.tmp_path = tempfile.mkdtemp(dir='/tmp', prefix='spack')
+ env.set('TEST_TMPDIR', self.tmp_path)
def setup(self, spec, prefix):
builddir = join_path(self.stage.source_path, 'spack-build')
@@ -53,18 +55,27 @@ class PyTensorboardPluginWit(Package):
filter_file(r'virtualenv venv',
'',
'tensorboard_plugin_wit/pip_package/build_pip_package.sh')
+ filter_file('unset PYTHON_HOME',
+ 'export PYTHONPATH="{0}"'.format(env['PYTHONPATH']),
+ 'tensorboard_plugin_wit/pip_package/build_pip_package.sh')
+ filter_file('python setup.py',
+ '{0} setup.py'.format(spec['python'].command.path),
+ 'tensorboard_plugin_wit/pip_package/build_pip_package.sh')
def build(self, spec, prefix):
- tmp_path = env['TEST_TMPDIR']
bazel('--nohome_rc',
'--nosystem_rc',
- '--output_user_root=' + tmp_path,
+ '--output_user_root=' + self.tmp_path,
'run',
+ # watch https://github.com/bazelbuild/bazel/issues/7254
+ '--define=EXECUTOR=remote',
'--verbose_failures',
'--subcommands=pretty_print',
+ '--spawn_strategy=local',
'tensorboard_plugin_wit/pip_package:build_pip_package')
def install(self, spec, prefix):
with working_dir('spack-build/release'):
setup_py('install', '--prefix={0}'.format(prefix),
'--single-version-externally-managed', '--root=/')
+ remove_linked_tree(self.tmp_path)
diff --git a/var/spack/repos/builtin/packages/py-tensorboard/package.py b/var/spack/repos/builtin/packages/py-tensorboard/package.py
index 3ce199fb6f..2f043eafd1 100644
--- a/var/spack/repos/builtin/packages/py-tensorboard/package.py
+++ b/var/spack/repos/builtin/packages/py-tensorboard/package.py
@@ -1,42 +1,44 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import tempfile
+
class PyTensorboard(Package):
"""TensorBoard is a suite of web applications for
inspecting and understanding your TensorFlow runs and
graphs."""
- homepage = "https://pypi.python.org/project/tensorboard"
+ homepage = "https://github.com/tensorflow/tensorboard"
url = "https://github.com/tensorflow/tensorboard/archive/2.2.0.tar.gz"
maintainers = ['aweits']
+ version('2.4.1', sha256='736dc204aa292d221f5871077e60994a9a9ea8e33b841f0d754d510fe6cc7635')
+ version('2.4.0', sha256='28a30794c1c797357b2086477394b59afa0b18ca48592ca3c0627f7f10536373')
version('2.3.0', sha256='947a58702c2841eb4559637dbf8639633f79de9a0f422be9737f3563a1725440')
version('2.2.0', sha256='d0dfbf0e4b3b5ebbc3fafa6d281d4b9aa5478eac6bac3330652ab6674278ab77')
depends_on('python@2.7:2.8,3.2:', type=('build', 'run'))
- depends_on('bazel@0.26.1:', type='build')
+ depends_on('bazel@2.1.0:', type='build', when='@2.2.0:')
depends_on('py-setuptools@41.0.0:', type=('build', 'run'))
depends_on('py-absl-py@0.4:', type=('build', 'run'))
depends_on('py-markdown@2.6.8:', type=('build', 'run'))
depends_on('py-requests@2.21.0:2.999', type=('build', 'run'))
depends_on('py-futures@3.1.1:', type=('build', 'run'), when='^python@:2')
- depends_on('py-grpcio@1.24.3:', type=('build', 'run'), when='@2.3.0')
- depends_on('py-grpcio@1.23.3:', type=('build', 'run'), when='@2.2.0')
+ depends_on('py-grpcio@1.24.3:', type=('build', 'run'), when='@2.3:')
+ depends_on('py-grpcio@1.23.3:', type=('build', 'run'), when='@2.2')
depends_on('py-google-auth@1.6.3:1.99.99', type=('build', 'run'))
depends_on('py-numpy@1.12.0:', type=('build', 'run'))
depends_on('py-protobuf@3.6.0:', type=('build', 'run'))
depends_on('py-six@1.10.0:', type=('build', 'run'))
depends_on('py-werkzeug@0.11.15:', type=('build', 'run'))
- depends_on('py-wheel', type='build')
- depends_on('py-wheel@0.26:', type='build', when='@0.6: ^python@3:')
+ depends_on('py-wheel', type=('build', 'run'))
+ depends_on('py-wheel@0.26:', type=('build', 'run'), when='@0.6: ^python@3:')
depends_on('py-google-auth-oauthlib@0.4.1:0.4.999', type=('build', 'run'))
depends_on('py-tensorboard-plugin-wit@1.6.0:', type=('build', 'run'), when='@2.2.0:')
- depends_on('py-tensorflow-estimator@2.2.0', type='run', when='@2.2.0')
- depends_on('py-tensorflow-estimator@2.3.0', type='run', when='@2.3.0')
extends('python')
@@ -53,9 +55,8 @@ class PyTensorboard(Package):
'.bazelrc')
def setup_build_environment(self, env):
- tmp_path = '/tmp/spack/tb'
- mkdirp(tmp_path)
- env.set('TEST_TMPDIR', tmp_path)
+ self.tmp_path = tempfile.mkdtemp(dir='/tmp', prefix='spack')
+ env.set('TEST_TMPDIR', self.tmp_path)
def configure(self, spec, prefix):
builddir = join_path(self.stage.source_path, 'spack-build')
@@ -75,13 +76,25 @@ class PyTensorboard(Package):
filter_file('trap cleanup EXIT',
'',
'tensorboard/pip_package/build_pip_package.sh')
+ filter_file('unset PYTHON_HOME',
+ 'export PYTHONPATH="{0}"'.format(env['PYTHONPATH']),
+ 'tensorboard/pip_package/build_pip_package.sh')
+ filter_file('python setup.py',
+ '{0} setup.py'.format(spec['python'].command.path),
+ 'tensorboard/pip_package/build_pip_package.sh')
+ if self.spec.satisfies('@2.4.0:'):
+ filter_file('"@npm//@polymer/polymer",',
+ '"@npm//@polymer/polymer",\n'
+ '"@npm//@types/d3",',
+ 'tensorboard/plugins/projector/vz_projector/BUILD')
def build(self, spec, prefix):
- tmp_path = env['TEST_TMPDIR']
bazel('--nohome_rc',
'--nosystem_rc',
- '--output_user_root=' + tmp_path,
+ '--output_user_root=' + self.tmp_path,
'build',
+ # watch https://github.com/bazelbuild/bazel/issues/7254
+ '--define=EXECUTOR=remote',
'--verbose_failures',
'--spawn_strategy=local',
'--subcommands=pretty_print',
@@ -91,3 +104,4 @@ class PyTensorboard(Package):
with working_dir('spack-build'):
setup_py('install', '--prefix={0}'.format(prefix),
'--single-version-externally-managed', '--root=/')
+ remove_linked_tree(self.tmp_path)
diff --git a/var/spack/repos/builtin/packages/py-tensorboardx/package.py b/var/spack/repos/builtin/packages/py-tensorboardx/package.py
index 7faba61060..d089c4371f 100644
--- a/var/spack/repos/builtin/packages/py-tensorboardx/package.py
+++ b/var/spack/repos/builtin/packages/py-tensorboardx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,9 @@ class PyTensorboardx(PythonPackage):
histogram, text, embedding, and the route of back-propagation."""
homepage = "https://github.com/lanpa/tensorboardX"
- url = "https://pypi.io/packages/source/t/tensorboardx/tensorboardX-1.8.tar.gz"
+ pypi = "tensorboardx/tensorboardX-1.8.tar.gz"
+ version('2.1', sha256='9e8907cf2ab900542d6cb72bf91aa87b43005a7f0aa43126268697e3727872f9')
version('2.0', sha256='835d85db0aef2c6768f07c35e69a74e3dcb122d6afceaf2b8504d7d16c7209a5')
version('1.9', sha256='2505d0092e6212f04c4522eea7123e8886c4d0a0b2c406e480fa61ca3c1da7ea')
version('1.8', sha256='13fe0abba27f407778a7321937190eedaf12bc8c544d9a4e294fcf0ba177fd76')
diff --git a/var/spack/repos/builtin/packages/py-tensorflow-estimator/package.py b/var/spack/repos/builtin/packages/py-tensorflow-estimator/package.py
index cf227eec27..6b79631bed 100644
--- a/var/spack/repos/builtin/packages/py-tensorflow-estimator/package.py
+++ b/var/spack/repos/builtin/packages/py-tensorflow-estimator/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import tempfile
class PyTensorflowEstimator(Package):
@@ -15,6 +16,7 @@ class PyTensorflowEstimator(Package):
maintainers = ['aweits']
+ version('2.4.0', sha256='e6ea12014c3d8c89a81ace95f8f8b7c39ffcd3e4e4626709e4aee0010eefd962')
version('2.3.0', sha256='75403e7de7e8ec30ec0781ede56ed84cbe5e90daad64a9c242cd489c8fe63a17')
version('2.2.0', sha256='2d68cb6e6442e7dcbfa2e092aa25bdcb0eda420536a829b85d732854a4c85d46')
version('2.1', sha256='1d74c8181b981748976fa33ad97d3434c3cf2b7e29a0b00861365fe8329dbc4e')
@@ -23,34 +25,27 @@ class PyTensorflowEstimator(Package):
extends('python')
- depends_on('py-tensorflow@2.3.0:', when='@2.3.0')
- depends_on('py-tensorflow@2.2.0', when='@2.2.0')
- depends_on('py-tensorflow@2.1.0:2.1.999', when='@2.1')
- depends_on('py-tensorflow@2.0.0:2.0.999', when='@2.0.0')
- depends_on('py-tensorflow@1.13.1', when='@1.13.0')
-
- depends_on('py-absl-py@0.7.0:', type=('build', 'run'), when='@1.12.1,1.14:')
- depends_on('py-numpy@1.16.0:1.18', type=('build', 'run'), when='@1.13.2,1.15:')
- depends_on('py-six@1.12.0:', type=('build', 'run'), when='@2.1:')
- depends_on('py-keras-preprocessing@1.1.1:1.999', type=('build', 'run'), when='@2.3:')
+ depends_on('py-tensorflow@2.4.0:2.4.999', type=('build', 'run'), when='@2.4.0')
+ depends_on('py-tensorflow@2.3.0:2.3.999', type=('build', 'run'), when='@2.3.0')
+ depends_on('py-tensorflow@2.2.0:2.2.999', type=('build', 'run'), when='@2.2.0')
+ depends_on('py-tensorflow@2.1.0:2.1.999', type=('build', 'run'), when='@2.1')
+ depends_on('py-tensorflow@2.0.0:2.0.999', type=('build', 'run'), when='@2.0.0')
+ depends_on('py-tensorflow@1.13.1', type=('build', 'run'), when='@1.13.0')
depends_on('bazel@0.19.0:', type='build')
depends_on('py-funcsigs@1.0.2:', type=('build', 'run'))
def install(self, spec, prefix):
- tmp_path = join_path(env.get('SPACK_TMPDIR', '/tmp/spack'),
- 'tf-estimator',
- self.module.site_packages_dir[1:])
- mkdirp(tmp_path)
- env['TEST_TMPDIR'] = tmp_path
- env['HOME'] = tmp_path
+ self.tmp_path = tempfile.mkdtemp(dir='/tmp', prefix='spack')
+ env['TEST_TMPDIR'] = self.tmp_path
+ env['HOME'] = self.tmp_path
args = [
# Don't allow user or system .bazelrc to override build settings
'--nohome_rc',
'--nosystem_rc',
# Bazel does not work properly on NFS, switch to /tmp
- '--output_user_root=' + tmp_path,
+ '--output_user_root=' + self.tmp_path,
'build',
# Spack logs don't handle colored output well
'--color=no',
@@ -59,6 +54,7 @@ class PyTensorflowEstimator(Package):
'--verbose_failures',
# Show (formatted) subcommands being executed
'--subcommands=pretty_print',
+ '--spawn_strategy=local',
# Ask bazel to explain what it's up to
# Needs a filename as argument
'--explain=explainlogfile.txt',
@@ -79,3 +75,4 @@ class PyTensorflowEstimator(Package):
with working_dir(buildpath):
setup_py('install', '--prefix={0}'.format(prefix),
'--single-version-externally-managed', '--root=/')
+ remove_linked_tree(self.tmp_path)
diff --git a/var/spack/repos/builtin/packages/py-tensorflow-hub/package.py b/var/spack/repos/builtin/packages/py-tensorflow-hub/package.py
new file mode 100644
index 0000000000..f432c8fc8c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-tensorflow-hub/package.py
@@ -0,0 +1,75 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import tempfile
+
+
+class PyTensorflowHub(Package):
+ """TensorFlow Hub is a library to foster the publication, discovery, and
+ consumption of reusable parts of machine learning models."""
+
+ homepage = "https://github.com/tensorflow/hub"
+ url = "https://github.com/tensorflow/hub/archive/refs/tags/v0.12.0.tar.gz"
+
+ maintainers = ['aweits']
+
+ version('0.12.0', sha256='b192ef3a9a6cbeaee46142d64b47b979828dbf41fc56d48c6587e08f6b596446')
+ version('0.11.0', sha256='4715a4212b45531a7c25ada7207d850467d1b5480f1940f16623f8770ad64df4')
+
+ extends('python')
+
+ depends_on('bazel', type='build')
+ depends_on('py-setuptools', type='build')
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-numpy@1.12.0:', type=('build', 'run'))
+ depends_on('py-protobuf@3.8.0:', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ tmp_path = tempfile.mkdtemp(prefix='spack')
+ env['TEST_TMPDIR'] = tmp_path
+ env['HOME'] = tmp_path
+ args = [
+ # Don't allow user or system .bazelrc to override build settings
+ '--nohome_rc',
+ '--nosystem_rc',
+ # Bazel does not work properly on NFS, switch to /tmp
+ '--output_user_root=' + tmp_path,
+ 'build',
+ # Spack logs don't handle colored output well
+ '--color=no',
+ '--jobs={0}'.format(make_jobs),
+ # Enable verbose output for failures
+ '--verbose_failures',
+ # Show (formatted) subcommands being executed
+ '--subcommands=pretty_print',
+ '--spawn_strategy=local',
+ # Ask bazel to explain what it's up to
+ # Needs a filename as argument
+ '--explain=explainlogfile.txt',
+ # Increase verbosity of explanation,
+ '--verbose_explanations',
+ # bazel uses system PYTHONPATH instead of spack paths
+ '--action_env', 'PYTHONPATH={0}'.format(env['PYTHONPATH']),
+ '//tensorflow_hub/pip_package:build_pip_package',
+ ]
+
+ bazel(*args)
+
+ runfiles = join_path('bazel-bin', 'tensorflow_hub', 'pip_package',
+ 'build_pip_package.runfiles', 'org_tensorflow_hub')
+ insttmp_path = tempfile.mkdtemp(prefix='spack')
+ install(join_path('tensorflow_hub', 'pip_package', 'setup.py'), insttmp_path)
+ install(join_path('tensorflow_hub', 'pip_package', 'setup.cfg'), insttmp_path)
+ install('LICENSE', join_path(insttmp_path, 'LICENSE.txt'))
+ mkdirp(join_path(insttmp_path, 'tensorflow_hub'))
+ install_tree(join_path(runfiles, 'tensorflow_hub'),
+ join_path(insttmp_path, 'tensorflow_hub'))
+
+ with working_dir(insttmp_path):
+ setup_py('install', '--prefix={0}'.format(prefix),
+ '--single-version-externally-managed', '--root=/')
+
+ remove_linked_tree(tmp_path)
+ remove_linked_tree(insttmp_path)
diff --git a/var/spack/repos/builtin/packages/py-tensorflow-probability/package.py b/var/spack/repos/builtin/packages/py-tensorflow-probability/package.py
new file mode 100644
index 0000000000..f3a483557a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-tensorflow-probability/package.py
@@ -0,0 +1,84 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import tempfile
+
+
+class PyTensorflowProbability(Package):
+ """TensorFlow Probability (TFP) is a Python library built on
+ TensorFlow that makes it easy to combine probabilistic models and
+ deep learning on modern hardware (TPU, GPU). It's for data
+ scientists, statisticians, ML researchers, and practitioners who
+ want to encode domain knowledge to understand data and make
+ predictions."""
+
+ homepage = "https://www.tensorflow.org/probability"
+ url = "https://github.com/tensorflow/probability/archive/v0.12.1.tar.gz"
+
+ maintainers = ['aweits']
+
+ version('0.12.1', sha256='1fe89e85fd053bf36e8645a5a1a53b729bc254cf1516bc224fcbd1e4ff50083a')
+ version('0.8.0', sha256='f6049549f6d6b82962523a6bf61c40c1d0c7ac685f209c0084a6da81dd78181d',
+ url='https://github.com/tensorflow/probability/archive/0.8.0.tar.gz')
+
+ extends('python')
+ depends_on('py-setuptools', type='build')
+
+ depends_on('py-six@1.10.0:', type=('build', 'run'))
+ depends_on('py-numpy@1.13.3:', type=('build', 'run'))
+ depends_on('py-decorator', type=('build', 'run'))
+
+ depends_on('py-tensorflow@1.14:', type=('build', 'run'), when='@0.8.0')
+ depends_on('py-gast@0.2:0.2.999', type=('build', 'run'), when='@0.8.0')
+ depends_on('py-cloudpickle@1.1.1', type=('build', 'run'), when='@0.8.0')
+
+ depends_on('py-tensorflow@2.4:', type=('build', 'run'), when='@0.12.0:')
+ depends_on('py-cloudpickle@1.3:', type=('build', 'run'), when='@0.12.0:')
+ depends_on('py-gast@0.3.2:', type=('build', 'run'), when='@0.12.0:')
+ depends_on('py-dm-tree', type=('build', 'run'), when='@0.12.0:')
+
+ depends_on('bazel@3.2.0:', type='build')
+
+ def install(self, spec, prefix):
+ self.tmp_path = tempfile.mkdtemp(dir='/tmp', prefix='spack')
+ env['TEST_TMPDIR'] = self.tmp_path
+ env['HOME'] = self.tmp_path
+
+ args = [
+ # Don't allow user or system .bazelrc to override build settings
+ '--nohome_rc',
+ '--nosystem_rc',
+ # Bazel does not work properly on NFS, switch to /tmp
+ '--output_user_root=' + self.tmp_path,
+ 'build',
+ # Spack logs don't handle colored output well
+ '--color=no',
+ '--jobs={0}'.format(make_jobs),
+ # Enable verbose output for failures
+ '--verbose_failures',
+ # Show (formatted) subcommands being executed
+ '--subcommands=pretty_print',
+ '--spawn_strategy=local',
+ # Ask bazel to explain what it's up to
+ # Needs a filename as argument
+ '--explain=explainlogfile.txt',
+ # Increase verbosity of explanation,
+ '--verbose_explanations',
+ # bazel uses system PYTHONPATH instead of spack paths
+ '--action_env', 'PYTHONPATH={0}'.format(env['PYTHONPATH']),
+ '--copt=-O3',
+ '--copt=-march=native',
+ ':pip_pkg',
+ ]
+
+ bazel(*args)
+
+ with working_dir(join_path('bazel-bin',
+ 'pip_pkg.runfiles',
+ 'tensorflow_probability')):
+ setup_py('install', '--prefix={0}'.format(prefix),
+ '--single-version-externally-managed', '--root=/')
+
+ remove_linked_tree(self.tmp_path)
diff --git a/var/spack/repos/builtin/packages/py-tensorflow/package.py b/var/spack/repos/builtin/packages/py-tensorflow/package.py
index a5c285fa01..8fd5390ed2 100644
--- a/var/spack/repos/builtin/packages/py-tensorflow/package.py
+++ b/var/spack/repos/builtin/packages/py-tensorflow/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import sys
+import tempfile
class PyTensorflow(Package, CudaPackage):
@@ -16,17 +17,24 @@ class PyTensorflow(Package, CudaPackage):
maintainers = ['adamjstewart', 'aweits']
import_modules = ['tensorflow']
+ version('2.4.1', sha256='f681331f8fc0800883761c7709d13cda11942d4ad5ff9f44ad855e9dc78387e0')
+ version('2.4.0', sha256='26c833b7e1873936379e810a39d14700281125257ddda8cd822c89111db6f6ae')
+ version('2.3.2', sha256='21a703d2e68cd0677f6f9ce329198c24fd8203125599d791af9f1de61aadf31f')
version('2.3.1', sha256='ee534dd31a811f7a759453567257d1e643f216d8d55a25c32d2fbfff8153a1ac')
version('2.3.0', sha256='2595a5c401521f20a2734c4e5d54120996f8391f00bb62a57267d930bce95350')
+ version('2.2.2', sha256='fb4b5d26c5b983350f7ce8297b71176a86a69e91faf66e6ebb1e58538ad3bb51')
version('2.2.1', sha256='e6a28e64236d729e598dbeaa02152219e67d0ac94d6ed22438606026a02e0f88')
version('2.2.0', sha256='69cd836f87b8c53506c4f706f655d423270f5a563b76dc1cfa60fbc3184185a3')
+ version('2.1.3', sha256='cfa66cce372f486e95a42beb1aacfefdaf0092c5efaaaa92459b381fde931fb8')
version('2.1.2', sha256='3f941cda0ed12dfef5472e46f1d0238ea85da7583d73f1132d2ef050fda6e8ad')
version('2.1.1', sha256='a200bc16e4b630db3ac7225bcb6f239a76841967b0aec1d7d7bbe44dc5661318')
version('2.1.0', sha256='638e541a4981f52c69da4a311815f1e7989bf1d67a41d204511966e1daed14f7')
+ version('2.0.4', sha256='6ca3ce1255da8d655080a89db10da03f72c361d7faecc9a35e6af26ff12c06e6')
version('2.0.3', sha256='6314299a723441bd9892e5c2af182c2be7d2256e20e71026e1cb1264cb497f33')
version('2.0.2', sha256='a548742bbafd302eec51e2794d7687674a64f6b10ce1414073858cb83c0cefc2')
version('2.0.1', sha256='29197d30923b9670992ee4b9c6161f50c7452e9a4158c720746e846080ac245a')
version('2.0.0', sha256='49b5f0495cd681cbcb5296a4476853d4aea19a43bdd9f179c928a977308a0617')
+ version('1.15.5', sha256='4c4d23e311093ded2d2e287b18d7c45b07b5984ab88a1d2f91f8f13c886123db')
version('1.15.4', sha256='e18c55e771ad136f9bf3a70ea8f0e2d36662b2ba7c890f9eaf7950554557c7fa')
version('1.15.3', sha256='9ab1d92e58eb813922b040acc7622b32d73c2d8d971fe6491a06f9df4c778151')
version('1.15.2', sha256='d95d75d26a298211b5e802842e87fda5b8b14f6ad83719377b391e5fb71b8746')
@@ -93,6 +101,9 @@ class PyTensorflow(Package, CudaPackage):
extends('python')
depends_on('python@3:', type=('build', 'run'), when='@2.1:')
+ # python 3.8 support in tensorflow 2.2
+ # see tensorflow issue #33374
+ depends_on('python@:3.7', type=('build', 'run'), when='@:2.2')
# TODO: Older versions of TensorFlow don't list the viable version range,
# just the minimum version of bazel that will work. The latest version of
@@ -127,9 +138,11 @@ class PyTensorflow(Package, CudaPackage):
depends_on('py-future', type='build', when='^python@:2')
# Listed under REQUIRED_PACKAGES in tensorflow/tools/pip_package/setup.py
- depends_on('py-absl-py@0.7.0:', type=('build', 'run'), when='@1.12.1,1.14:')
- depends_on('py-absl-py@0.1.6:', type=('build', 'run'), when='@1.5:')
- depends_on('py-astunparse@1.6.3', type=('build', 'run'), when='@2.2:')
+ depends_on('py-absl-py@0.10:0.999', type=('build', 'run'), when='@2.4.0:')
+ depends_on('py-absl-py@0.7.0:', type=('build', 'run'), when='@1.12.1,1.14:2.3')
+ depends_on('py-absl-py@0.1.6:', type=('build', 'run'), when='@1.5:1.11')
+ depends_on('py-astunparse@1.6.3:1.6.999', type=('build', 'run'), when='@2.4.0:')
+ depends_on('py-astunparse@1.6.3', type=('build', 'run'), when='@2.2:2.3')
depends_on('py-astor@0.6.0:', type=('build', 'run'), when='@1.6:2.1')
depends_on('py-backports-weakref@1.0:', type=('build', 'run'), when='@1.3: ^python@:3.3')
depends_on('py-backports-weakref@1.0rc1', type=('build', 'run'), when='@1.2.0:1.2.1')
@@ -138,66 +151,80 @@ class PyTensorflow(Package, CudaPackage):
depends_on('py-gast@0.3.3', type=('build', 'run'), when='@2.2:')
depends_on('py-gast@0.2.2', type=('build', 'run'), when='@1.15:2.1')
depends_on('py-gast@0.2.0:', type=('build', 'run'), when='@1.6:1.14')
- depends_on('py-google-pasta@0.1.8:', type=('build', 'run'), when='@2.1:')
- depends_on('py-google-pasta@0.1.6:', type=('build', 'run'), when='@1.14:')
+ depends_on('py-google-pasta@0.2:0.999', type=('build', 'run'), when='@2.4.0:')
+ depends_on('py-google-pasta@0.1.8:', type=('build', 'run'), when='@2.1:2.3')
+ depends_on('py-google-pasta@0.1.6:', type=('build', 'run'), when='@1.14:2.0')
depends_on('py-google-pasta@0.1.2:', type=('build', 'run'), when='@1.12.1')
- depends_on('py-h5py@2.10.0:2.10.999', type=('build', 'run'), when='@2.2:')
+ # propagate the mpi variant setting for h5py/hdf5 to avoid unexpected crashes
+ depends_on('py-h5py@2.10.0:2.10.999+mpi', type=('build', 'run'), when='@2.2:+mpi')
+ depends_on('py-h5py@2.10.0:2.10.999~mpi', type=('build', 'run'), when='@2.2:~mpi')
+ depends_on('hdf5+mpi', type='build', when='@2.2:+mpi')
+ depends_on('hdf5~mpi', type='build', when='@2.2:~mpi')
depends_on('py-keras-applications@1.0.8:', type=('build', 'run'), when='@1.15:2.1')
depends_on('py-keras-applications@1.0.6:', type=('build', 'run'), when='@1.12:1.14')
depends_on('py-keras-applications@1.0.5:', type=('build', 'run'), when='@1.11.0:1.11.999')
- depends_on('py-keras-preprocessing@1.1.1:1.999', type=('build', 'run'), when='@2.3:')
- depends_on('py-keras-preprocessing@1.1.0:', type=('build', 'run'), when='@2.1:')
- depends_on('py-keras-preprocessing@1.0.5:', type=('build', 'run'), when='@1.12:')
- depends_on('py-keras-preprocessing@1.0.3:', type=('build', 'run'), when='@1.11:')
+ depends_on('py-keras-preprocessing@1.1.2:1.1.999', type=('build', 'run'), when='@2.4:')
+ depends_on('py-keras-preprocessing@1.1.1:1.999', type=('build', 'run'), when='@2.3:2.3.999')
+ depends_on('py-keras-preprocessing@1.1.0:', type=('build', 'run'), when='@2.1:2.2')
+ depends_on('py-keras-preprocessing@1.0.5:', type=('build', 'run'), when='@1.12:2.0')
+ depends_on('py-keras-preprocessing@1.0.3:', type=('build', 'run'), when='@1.11:1.11.999')
# https://github.com/tensorflow/tensorflow/issues/40688
- depends_on('py-numpy@1.16.0:1.18', type=('build', 'run'), when='@1.13.2,1.15:')
+ depends_on('py-numpy@1.19.2:1.19.999', type=('build', 'run'), when='@2.4.0:')
+ depends_on('py-numpy@1.16.0:1.18', type=('build', 'run'), when='@1.13.2,1.15:2.3')
depends_on('py-numpy@1.14.5:1.18', type=('build', 'run'), when='@1.12.1,1.14.0')
depends_on('py-numpy@1.13.3:1.14.5', type=('build', 'run'), when='@1.10.0:1.10.1')
- depends_on('py-numpy@1.13.3:', type=('build', 'run'), when='@1.6:')
- depends_on('py-numpy@1.12.1:', type=('build', 'run'), when='@1.4:')
- depends_on('py-numpy@1.11.0:', type=('build', 'run'), when='@0.11:')
- depends_on('py-numpy@1.10.1:', type=('build', 'run'), when='@0.7.1: platform=darwin')
- depends_on('py-numpy@1.8.2:', type=('build', 'run'), when='@0.6:')
+ depends_on('py-numpy@1.13.3:', type=('build', 'run'), when='@1.6:1.9')
+ depends_on('py-numpy@1.12.1:', type=('build', 'run'), when='@1.4:1.5')
+ depends_on('py-numpy@1.11.0:', type=('build', 'run'), when='@0.11:1.3')
+ depends_on('py-numpy@1.10.1:', type=('build', 'run'), when='@0.7.1:0.7.999 platform=darwin')
+ depends_on('py-numpy@1.8.2:', type=('build', 'run'), when='@0.6:0.10')
depends_on('py-numpy@1.9.2:', type=('build', 'run'), when='@0.5.0')
- depends_on('py-opt-einsum@2.3.2:', type=('build', 'run'), when='@1.15:')
+ depends_on('py-opt-einsum@3.3.0:3.3.999', type=('build', 'run'), when='@2.4.0:')
+ depends_on('py-opt-einsum@2.3.2:', type=('build', 'run'), when='@1.15:2.3')
depends_on('py-protobuf@3.9.2:', type=('build', 'run'), when='@2.3:')
- depends_on('py-protobuf@3.8.0:', type=('build', 'run'), when='@2.1:')
- depends_on('py-protobuf@3.6.1:', type=('build', 'run'), when='@1.12:')
- depends_on('py-protobuf@3.6.0:', type=('build', 'run'), when='@1.10:')
- depends_on('py-protobuf@3.4.0:', type=('build', 'run'), when='@1.5:')
- depends_on('py-protobuf@3.3.0:', type=('build', 'run'), when='@1.3:')
- depends_on('py-protobuf@3.2.0:', type=('build', 'run'), when='@1.1:')
- depends_on('py-protobuf@3.1.0:', type=('build', 'run'), when='@0.12.1:')
+ depends_on('py-protobuf@3.8.0:', type=('build', 'run'), when='@2.1:2.2')
+ depends_on('py-protobuf@3.6.1:', type=('build', 'run'), when='@1.12:2.0')
+ depends_on('py-protobuf@3.6.0:', type=('build', 'run'), when='@1.10:1.11')
+ depends_on('py-protobuf@3.4.0:', type=('build', 'run'), when='@1.5:1.9')
+ depends_on('py-protobuf@3.3.0:', type=('build', 'run'), when='@1.3:1.4')
+ depends_on('py-protobuf@3.2.0:', type=('build', 'run'), when='@1.1:1.2')
+ depends_on('py-protobuf@3.1.0:', type=('build', 'run'), when='@0.12.1:1.0')
depends_on('py-protobuf@3.1.0', type=('build', 'run'), when='@0.12.0')
depends_on('py-protobuf@3.0.0', type=('build', 'run'), when='@0.11.0')
depends_on('py-protobuf@3.0.0b2', type=('build', 'run'), when='@0.7.1:0.10')
depends_on('py-protobuf@3.0.0a3', type=('build', 'run'), when='@0.6:0.7.0')
depends_on('protobuf')
+ depends_on('flatbuffers+python@1.12.0:1.12.999', type=('build', 'run'), when='@2.4.0:')
# tensorboard
# tensorflow-estimator
- depends_on('py-termcolor@1.1.0:', type=('build', 'run'), when='@1.6:')
- depends_on('py-wrapt@1.11.1:', type=('build', 'run'), when='@1.12.1,1.14:')
- depends_on('py-wheel', type=('build', 'run'), when='@0.6:')
- depends_on('py-wheel@0.26:', type=('build', 'run'), when='@0.6: ^python@3:')
+ depends_on('py-termcolor@1.1.0:1.1.999', type=('build', 'run'), when='@2.4.0:')
+ depends_on('py-termcolor@1.1.0:', type=('build', 'run'), when='@1.6:2.3')
+ depends_on('py-wrapt@1.12.1:1.12.999', type=('build', 'run'), when='@2.4.0:')
+ depends_on('py-wrapt@1.11.1:', type=('build', 'run'), when='@1.12.1,1.14:2.3')
+ depends_on('py-wheel', type=('build', 'run'), when='@0.6:2.3')
+ depends_on('py-wheel@0.26:', type=('build', 'run'), when='@0.6:2.3 ^python@3:')
+ depends_on('py-wheel@0.35:0.999', type=('build', 'run'), when='@2.4.0: ^python@3:')
depends_on('py-mock@2.0.0:', type=('build', 'run'), when='@0.10: ^python@:2')
depends_on('py-functools32@3.2.3:', type=('build', 'run'), when='@1.15: ^python@:2')
- depends_on('py-six@1.12.0:', type=('build', 'run'), when='@2.1:')
+ depends_on('py-six@1.15.0:1.15.999', type=('build', 'run'), when='@2.4.0:')
+ depends_on('py-six@1.12.0:', type=('build', 'run'), when='@2.1:2.3')
depends_on('py-six@1.10.0:', type=('build', 'run'), when='@:2.0')
depends_on('py-scipy@1.2.2', type=('build', 'run'), when='@2.1.0:2.1.1,2.2.0,2.3.0 ^python@:2')
depends_on('py-scipy@1.4.1', type=('build', 'run'), when='@2.1.0:2.1.1,2.2.0,2.3.0 ^python@3:')
depends_on('py-grpcio@1.8.6:', type=('build', 'run'), when='@1.6:1.7')
+ depends_on('py-typing-extensions@3.7.4:3.7.999', type=('build', 'run'), when='@2.4.0:')
if sys.byteorder == 'little':
# Only builds correctly on little-endian machines
- depends_on('py-grpcio@1.8.6:', type=('build', 'run'), when='@1.8:')
-
- # Listed under TEST_PACKAGES in tensorflow/tools/pip_package/setup.py
- depends_on('py-scipy@0.15.1:', type='test')
+ depends_on('py-grpcio@1.8.6:', type=('build', 'run'), when='@1.8:2.3')
+ depends_on('py-grpcio@1.32.0:1.32.999', type=('build', 'run'), when='@2.4:')
# TODO: add packages for some of these dependencies
depends_on('mkl', when='+mkl')
depends_on('curl', when='+gcp')
# depends_on('computecpp', when='+opencl+computecpp')
# depends_on('trisycl', when='+opencl~computepp')
+ depends_on('cuda@:10.2', when='+cuda @:2.3')
+ depends_on('cuda@:11.1', when='+cuda @2.4.0:')
depends_on('cudnn', when='+cuda')
depends_on('cudnn@6.5', when='@0.5:0.6 +cuda')
# depends_on('tensorrt', when='+tensorrt')
@@ -260,7 +287,7 @@ class PyTensorflow(Package, CudaPackage):
# "Remove contrib cloud bigtable and storage ops/kernels."
# Allows 2.0.* releases to build with '--config=nogcp'
patch('0001-Remove-contrib-cloud-bigtable-and-storage-ops-kernel.patch',
- when='@2.0.0:2.0.1')
+ when='@2.0.0:2.0.999')
# for fcc
patch('1-1_fcc_tf_patch.patch', when='@2.1.0:2.1.99%fj')
@@ -523,8 +550,7 @@ class PyTensorflow(Package, CudaPackage):
# ])
# to not be nfs. This is only valid for Linux and we'd like to
# stay at least also OSX compatible
- tmp_path = '/tmp/spack/tf'
- mkdirp(tmp_path)
+ tmp_path = tempfile.mkdtemp(prefix='spack')
env.set('TEST_TMPDIR', tmp_path)
env.set('TF_SYSTEM_LIBS', 'com_google_protobuf')
@@ -533,11 +559,24 @@ class PyTensorflow(Package, CudaPackage):
env.set('INCLUDEDIR', spec['protobuf'].prefix.include)
def patch(self):
- if self.spec.satisfies('@2.3.0:2.3.1'):
+ if self.spec.satisfies('@2.3.0:'):
filter_file('deps = protodeps + well_known_proto_libs(),',
'deps = protodeps,',
'tensorflow/core/platform/default/build_config.bzl',
string=True)
+ if self.spec.satisfies('@2.4.0:'):
+ text = '''
+def protobuf_deps():
+ pass
+'''
+ with open('third_party/systemlibs/protobuf_deps.bzl', 'w') as f:
+ f.write(text)
+ filter_file(
+ '"//third_party/systemlibs:protobuf.bzl": "protobuf.bzl",',
+ '"//third_party/systemlibs:protobuf.bzl": "protobuf.bzl",\n'
+ '"//third_party/systemlibs:protobuf_deps.bzl": "protobuf_deps.bzl",', # noqa: E501
+ 'tensorflow/workspace.bzl',
+ string=True)
def configure(self, spec, prefix):
# NOTE: configure script is interactive. If you set the appropriate
@@ -633,7 +672,7 @@ class PyTensorflow(Package, CudaPackage):
'.tf_configure.bazelrc')
# see tensorflow issue #31187 on github
- if spec.satisfies('@2.0.0:2.0.1'):
+ if spec.satisfies('@2.0.0:2.0.999'):
filter_file(r'\#define RUY_DONOTUSEDIRECTLY_AVX512 1',
'#define RUY_DONOTUSEDIRECTLY_AVX512 0',
'tensorflow/lite/experimental/ruy/platform.h')
@@ -679,11 +718,14 @@ class PyTensorflow(Package, CudaPackage):
# Ask bazel to explain what it's up to
# Needs a filename as argument
'--explain=explainlogfile.txt',
- '--incompatible_no_support_tools_in_action_inputs=false',
# Increase verbosity of explanation,
'--verbose_explanations',
]
+ if spec.satisfies('^bazel@:3.5'):
+ # removed in bazel 3.6
+ args.append('--incompatible_no_support_tools_in_action_inputs=false')
+
# See .bazelrc for when each config flag is supported
if spec.satisfies('@1.12.1:'):
if '+mkl' in spec:
@@ -743,15 +785,21 @@ class PyTensorflow(Package, CudaPackage):
build_pip_package('--src', buildpath)
def install(self, spec, prefix):
+ tmp_path = env['TEST_TMPDIR']
buildpath = join_path(self.stage.source_path, 'spack-build')
with working_dir(buildpath):
setup_py('install', '--prefix={0}'.format(prefix),
'--single-version-externally-managed', '--root=/')
-
- @run_after('install')
- @on_package_attributes(run_tests=True)
- def import_module_test(self):
- with working_dir('spack-test', create=True):
- for module in self.import_modules:
- python('-c', 'import {0}'.format(module))
+ remove_linked_tree(tmp_path)
+
+ def test(self):
+ """Attempts to import modules of the installed package."""
+
+ # Make sure we are importing the installed modules,
+ # not the ones in the source directory
+ for module in self.import_modules:
+ self.run_test(self.spec['python'].command.path,
+ ['-c', 'import {0}'.format(module)],
+ purpose='checking import of {0}'.format(module),
+ work_dir='spack-test')
diff --git a/var/spack/repos/builtin/packages/py-termcolor/package.py b/var/spack/repos/builtin/packages/py-termcolor/package.py
index f6319e6dac..9bd6d5c0d6 100644
--- a/var/spack/repos/builtin/packages/py-termcolor/package.py
+++ b/var/spack/repos/builtin/packages/py-termcolor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,6 @@ from spack import *
class PyTermcolor(PythonPackage):
"""ANSII Color formatting for output in terminal."""
- homepage = "https://pypi.org/project/termcolor/"
- url = "https://pypi.io/packages/source/t/termcolor/termcolor-1.1.0.tar.gz"
+ pypi = "termcolor/termcolor-1.1.0.tar.gz"
version('1.1.0', sha256='1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b')
diff --git a/var/spack/repos/builtin/packages/py-terminado/package.py b/var/spack/repos/builtin/packages/py-terminado/package.py
index dc43118738..0e7c5c605b 100644
--- a/var/spack/repos/builtin/packages/py-terminado/package.py
+++ b/var/spack/repos/builtin/packages/py-terminado/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,8 +7,7 @@
class PyTerminado(PythonPackage):
"""Terminals served to term.js using Tornado websockets"""
- homepage = "https://pypi.python.org/pypi/terminado"
- url = "https://pypi.io/packages/source/t/terminado/terminado-0.8.3.tar.gz"
+ pypi = "terminado/terminado-0.8.3.tar.gz"
version('0.8.3', sha256='4804a774f802306a7d9af7322193c5390f1da0abb429e082a10ef1d46e6fb2c2')
version('0.8.2', sha256='de08e141f83c3a0798b050ecb097ab6259c3f0331b2f7b7750c9075ced2c20c2')
diff --git a/var/spack/repos/builtin/packages/py-testfixtures/package.py b/var/spack/repos/builtin/packages/py-testfixtures/package.py
new file mode 100644
index 0000000000..8e70a3657a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-testfixtures/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyTestfixtures(PythonPackage):
+ """Testfixtures is a collection of helpers and mock objects that are useful
+ when writing automated tests in Python."""
+
+ homepage = "https://github.com/Simplistix/testfixtures"
+ url = "https://github.com/Simplistix/testfixtures/archive/6.16.0.zip"
+
+ version('6.16.0', sha256='6b5bbca4f7d5692ca4566c60c0383b121d9f1cfecbc3de8442c499a63c264eb8')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-testinfra/package.py b/var/spack/repos/builtin/packages/py-testinfra/package.py
index 40e7cd440c..ffee23c864 100644
--- a/var/spack/repos/builtin/packages/py-testinfra/package.py
+++ b/var/spack/repos/builtin/packages/py-testinfra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyTestinfra(PythonPackage):
Chef and so on."""
homepage = "https://testinfra.readthedocs.io"
- url = "https://pypi.io/packages/source/t/testinfra/testinfra-1.11.1.tar.gz"
+ pypi = "testinfra/testinfra-1.11.1.tar.gz"
version('1.18.0', sha256='4a0a70355b007729d78446c86bffd80bcea4ffe9adc9571f9c9779476c49153d')
version('1.13.0', sha256='b5afa23d71ee49ad81aed104e4a0f1c02819ef791291cd308fe27aa7f3d3b01f')
diff --git a/var/spack/repos/builtin/packages/py-testpath/package.py b/var/spack/repos/builtin/packages/py-testpath/package.py
index 717f63dc6b..f5f8cd4a3a 100644
--- a/var/spack/repos/builtin/packages/py-testpath/package.py
+++ b/var/spack/repos/builtin/packages/py-testpath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,6 @@ class PyTestpath(PythonPackage):
files and commands."""
homepage = "https://github.com/jupyter/testpath"
- url = "https://pypi.io/packages/source/t/testpath/testpath-0.4.2.tar.gz"
+ pypi = "testpath/testpath-0.4.2.tar.gz"
version('0.4.2', sha256='b694b3d9288dbd81685c5d2e7140b81365d46c29f5db4bc659de5aa6b98780f8')
diff --git a/var/spack/repos/builtin/packages/py-testrepository/package.py b/var/spack/repos/builtin/packages/py-testrepository/package.py
index 881191bc3f..c8d7806b0a 100644
--- a/var/spack/repos/builtin/packages/py-testrepository/package.py
+++ b/var/spack/repos/builtin/packages/py-testrepository/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,7 @@ class PyTestrepository(PythonPackage):
"""A repository of test results."""
homepage = "https://launchpad.net/testrepository"
- url = "https://pypi.io/packages/source/t/testrepository/testrepository-0.0.20.tar.gz"
-
- import_modules = [
- 'testrepository', 'testrepository.arguments',
- 'testrepository.commands', 'testrepository.repository',
- 'testrepository.tests', 'testrepository.tests.arguments',
- 'testrepository.tests.commands', 'testrepository.tests.repository',
- 'testrepository.tests.ui', 'testrepository.ui',
- ]
+ pypi = "testrepository/testrepository-0.0.20.tar.gz"
version('0.0.20', sha256='752449bc98c20253ec4611c40564aea93d435a5bf3ff672208e01cc10e5858eb')
diff --git a/var/spack/repos/builtin/packages/py-testresources/package.py b/var/spack/repos/builtin/packages/py-testresources/package.py
index 4468655863..563f62087b 100644
--- a/var/spack/repos/builtin/packages/py-testresources/package.py
+++ b/var/spack/repos/builtin/packages/py-testresources/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyTestresources(PythonPackage):
"""
homepage = "https://launchpad.net/testresources"
- url = "https://pypi.io/packages/source/t/testresources/testresources-2.0.1.tar.gz"
+ pypi = "testresources/testresources-2.0.1.tar.gz"
version('2.0.1', sha256='ee9d1982154a1e212d4e4bac6b610800bfb558e4fb853572a827bc14a96e4417')
diff --git a/var/spack/repos/builtin/packages/py-testscenarios/package.py b/var/spack/repos/builtin/packages/py-testscenarios/package.py
index 0dc8a07d46..a528aea218 100644
--- a/var/spack/repos/builtin/packages/py-testscenarios/package.py
+++ b/var/spack/repos/builtin/packages/py-testscenarios/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTestscenarios(PythonPackage):
"""Testscenarios, a pyunit extension for dependency injection"""
homepage = "https://launchpad.net/testscenarios"
- url = "https://pypi.io/packages/source/t/testscenarios/testscenarios-0.5.0.tar.gz"
+ pypi = "testscenarios/testscenarios-0.5.0.tar.gz"
version('0.5.0', sha256='c257cb6b90ea7e6f8fef3158121d430543412c9a87df30b5dde6ec8b9b57a2b6')
diff --git a/var/spack/repos/builtin/packages/py-testtools/package.py b/var/spack/repos/builtin/packages/py-testtools/package.py
index 11a59423ec..161f61ab08 100644
--- a/var/spack/repos/builtin/packages/py-testtools/package.py
+++ b/var/spack/repos/builtin/packages/py-testtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTesttools(PythonPackage):
"""Extensions to the Python standard library unit testing framework."""
homepage = "https://github.com/testing-cabal/testtools"
- url = "https://pypi.io/packages/source/t/testtools/testtools-2.3.0.tar.gz"
+ pypi = "testtools/testtools-2.3.0.tar.gz"
version('2.3.0', sha256='5827ec6cf8233e0f29f51025addd713ca010061204fdea77484a2934690a0559')
diff --git a/var/spack/repos/builtin/packages/py-tetoolkit/package.py b/var/spack/repos/builtin/packages/py-tetoolkit/package.py
index de755e15f3..c2c236d256 100644
--- a/var/spack/repos/builtin/packages/py-tetoolkit/package.py
+++ b/var/spack/repos/builtin/packages/py-tetoolkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyTetoolkit(PythonPackage):
experiments."""
homepage = "http://hammelllab.labsites.cshl.edu/software"
- url = "https://pypi.io/packages/source/T/TEToolkit/TEToolkit-1.5.1.tar.gz"
+ pypi = "TEToolkit/TEToolkit-1.5.1.tar.gz"
version('2.0.3', sha256='1d0f5928b30c6cd9dbef8e092ae0c11e9e707faf92a19af8eed3e360da7d4e46')
version('1.5.1', sha256='22c13ca45bccc89e9d9bf48d59ae6db1fa4c634def64fc56ba9bffd23aa689ac')
diff --git a/var/spack/repos/builtin/packages/py-text-unidecode/package.py b/var/spack/repos/builtin/packages/py-text-unidecode/package.py
index 768b8a3dd8..c665919190 100644
--- a/var/spack/repos/builtin/packages/py-text-unidecode/package.py
+++ b/var/spack/repos/builtin/packages/py-text-unidecode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyTextUnidecode(PythonPackage):
library."""
homepage = "https://github.com/kmike/text-unidecode/"
- url = "https://pypi.io/packages/source/t/text-unidecode/text-unidecode-1.3.tar.gz"
+ pypi = "text-unidecode/text-unidecode-1.3.tar.gz"
version('1.3', sha256='bad6603bb14d279193107714b288be206cac565dfa49aa5b105294dd5c4aab93')
diff --git a/var/spack/repos/builtin/packages/py-textblob/package.py b/var/spack/repos/builtin/packages/py-textblob/package.py
index 57784919e6..ead172d44d 100644
--- a/var/spack/repos/builtin/packages/py-textblob/package.py
+++ b/var/spack/repos/builtin/packages/py-textblob/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-texttable/package.py b/var/spack/repos/builtin/packages/py-texttable/package.py
index 1aec6a03f6..61a442f888 100644
--- a/var/spack/repos/builtin/packages/py-texttable/package.py
+++ b/var/spack/repos/builtin/packages/py-texttable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyTexttable(PythonPackage):
"""Python module for creating simple ASCII tables."""
homepage = "https://github.com/foutaise/texttable/"
- url = "https://pypi.io/packages/source/t/texttable/texttable-1.6.1.tar.gz"
+ pypi = "texttable/texttable-1.6.1.tar.gz"
version('1.6.1', sha256='2b60a5304ccfbeac80ffae7350d7c2f5d7a24e9aab5036d0f82489746419d9b2')
diff --git a/var/spack/repos/builtin/packages/py-tfdlpack/package.py b/var/spack/repos/builtin/packages/py-tfdlpack/package.py
index 678cc2d6db..ce0771a5f4 100644
--- a/var/spack/repos/builtin/packages/py-tfdlpack/package.py
+++ b/var/spack/repos/builtin/packages/py-tfdlpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-theano/package.py b/var/spack/repos/builtin/packages/py-theano/package.py
index c7c95fd0e3..5041acaa62 100644
--- a/var/spack/repos/builtin/packages/py-theano/package.py
+++ b/var/spack/repos/builtin/packages/py-theano/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyTheano(PythonPackage, CudaPackage):
and GPUs."""
homepage = "http://deeplearning.net/software/theano/"
- url = "https://pypi.io/packages/source/T/Theano/Theano-0.8.2.tar.gz"
+ pypi = "Theano/Theano-0.8.2.tar.gz"
git = "https://github.com/Theano/Theano.git"
version('master', branch='master')
@@ -33,7 +33,3 @@ class PyTheano(PythonPackage, CudaPackage):
depends_on('cudnn', when='+cuda')
depends_on('py-pygpu', when='+cuda', type=('build', 'run'))
depends_on('libgpuarray', when='+cuda')
-
- depends_on('py-nose@1.3.0:', type='test')
- depends_on('py-parameterized', type='test')
- depends_on('py-flake8', type='test')
diff --git a/var/spack/repos/builtin/packages/py-thinc/package.py b/var/spack/repos/builtin/packages/py-thinc/package.py
index 8976478000..051833128b 100644
--- a/var/spack/repos/builtin/packages/py-thinc/package.py
+++ b/var/spack/repos/builtin/packages/py-thinc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyThinc(PythonPackage):
"""Thinc: Practical Machine Learning for NLP in Python."""
homepage = "https://github.com/explosion/thinc"
- url = "https://pypi.io/packages/source/t/thinc/thinc-7.4.1.tar.gz"
+ pypi = "thinc/thinc-7.4.1.tar.gz"
version('7.4.1', sha256='0139fa84dc9b8d88af15e648fc4ae13d899b8b5e49cb26a8f4a0604ee9ad8a9e')
version('7.4.0', sha256='523e9be1bfaa3ed1d03d406ce451b6b4793a9719d5b83d2ea6b3398b96bc58b8')
@@ -25,6 +25,3 @@ class PyThinc(PythonPackage):
depends_on('py-plac@0.9.6:1.1', type=('build', 'run'))
depends_on('py-tqdm@4.10:4.999', type=('build', 'run'))
depends_on('py-pathlib@1.0.1', when='^python@:3.3', type=('build', 'run'))
- depends_on('py-pytest', type='test')
- depends_on('py-mock', type='test')
- depends_on('py-hypothesis', type='test')
diff --git a/var/spack/repos/builtin/packages/py-thirdorder/package.py b/var/spack/repos/builtin/packages/py-thirdorder/package.py
index 66b01f0d88..e54747b2c8 100644
--- a/var/spack/repos/builtin/packages/py-thirdorder/package.py
+++ b/var/spack/repos/builtin/packages/py-thirdorder/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-threadpoolctl/package.py b/var/spack/repos/builtin/packages/py-threadpoolctl/package.py
index f28c9a37b5..3f93c470a9 100644
--- a/var/spack/repos/builtin/packages/py-threadpoolctl/package.py
+++ b/var/spack/repos/builtin/packages/py-threadpoolctl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyThreadpoolctl(PythonPackage):
computing and data science (e.g. BLAS and OpenMP)."""
homepage = "https://github.com/joblib/threadpoolctl"
- url = "https://pypi.io/packages/source/t/threadpoolctl/threadpoolctl-2.0.0.tar.gz"
-
- import_modules = ['threadpoolctl']
+ pypi = "threadpoolctl/threadpoolctl-2.0.0.tar.gz"
version('2.0.0', sha256='48b3e3e9ee079d6b5295c65cbe255b36a3026afc6dde3fb49c085cd0c004bbcf')
diff --git a/var/spack/repos/builtin/packages/py-tifffile/package.py b/var/spack/repos/builtin/packages/py-tifffile/package.py
index 905718ec89..fdbfd27233 100644
--- a/var/spack/repos/builtin/packages/py-tifffile/package.py
+++ b/var/spack/repos/builtin/packages/py-tifffile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyTifffile(PythonPackage):
"""Read and write image data from and to TIFF files."""
homepage = "https://github.com/blink1073/tifffile"
- url = "https://pypi.io/packages/source/t/tifffile/tifffile-0.12.1.tar.gz"
-
- import_modules = ['tifffile']
+ pypi = "tifffile/tifffile-0.12.1.tar.gz"
version('2020.10.1', sha256='799feeccc91965b69e1288c51a1d1118faec7f40b2eb89ad2979591b85324830')
version('0.12.1', sha256='802367effe86b0d1e64cb5c2ed886771f677fa63260b945e51a27acccdc08fa1')
diff --git a/var/spack/repos/builtin/packages/py-tinyarray/package.py b/var/spack/repos/builtin/packages/py-tinyarray/package.py
index 6c6bb9b154..00a1cb01af 100644
--- a/var/spack/repos/builtin/packages/py-tinyarray/package.py
+++ b/var/spack/repos/builtin/packages/py-tinyarray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-tokenizers/package.py b/var/spack/repos/builtin/packages/py-tokenizers/package.py
index 20de8c9141..5242d2ac97 100644
--- a/var/spack/repos/builtin/packages/py-tokenizers/package.py
+++ b/var/spack/repos/builtin/packages/py-tokenizers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyTokenizers(PythonPackage):
"""Fast and Customizable Tokenizers."""
homepage = "https://github.com/huggingface/tokenizers"
- url = "https://pypi.io/packages/source/t/tokenizers/tokenizers-0.6.0.tar.gz"
+ pypi = "tokenizers/tokenizers-0.6.0.tar.gz"
version('0.6.0', sha256='1da11fbfb4f73be695bed0d655576097d09a137a16dceab2f66399716afaffac')
version('0.5.2', sha256='b5a235f9c71d04d4925df6c4fa13b13f1d03f9b7ac302b89f8120790c4f742bc')
diff --git a/var/spack/repos/builtin/packages/py-toml/package.py b/var/spack/repos/builtin/packages/py-toml/package.py
index baccd323ef..3e75d2d946 100644
--- a/var/spack/repos/builtin/packages/py-toml/package.py
+++ b/var/spack/repos/builtin/packages/py-toml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,12 +12,11 @@ class PyToml(PythonPackage):
https://github.com/toml-lang/toml.git"""
homepage = "https://github.com/uiri/toml.git"
- url = "https://github.com/uiri/toml/archive/0.9.3.tar.gz"
+ url = "https://github.com/uiri/toml/archive/0.10.2.tar.gz"
+ version('0.10.2', sha256='71d4039bbdec91e3e7591ec5d6c943c58f9a2d17e5f6783acdc378f743fcdd2a')
version('0.10.0', sha256='c3821b94be15da61d631bfff45b5c58074f01149792182e68f8690829cabfcf6')
version('0.9.3', sha256='633a90ecb1f5665b58f0c94153fcf519313ef53e1de0eac90929cd6b6a014235')
depends_on('py-setuptools', type='build')
depends_on('python@2.6:2.8,3.3:', type=('build', 'run'))
-
- phases = ['build', 'check', 'install']
diff --git a/var/spack/repos/builtin/packages/py-tomlkit/package.py b/var/spack/repos/builtin/packages/py-tomlkit/package.py
index c534d7521c..b5614bb648 100644
--- a/var/spack/repos/builtin/packages/py-tomlkit/package.py
+++ b/var/spack/repos/builtin/packages/py-tomlkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTomlkit(PythonPackage):
"""Style preserving TOML library"""
homepage = "https://github.com/sdispater/tomlkit"
- url = "https://pypi.io/packages/source/t/tomlkit/tomlkit-0.7.0.tar.gz"
+ pypi = "tomlkit/tomlkit-0.7.0.tar.gz"
version('0.7.0', sha256='ac57f29693fab3e309ea789252fcce3061e19110085aa31af5446ca749325618')
diff --git a/var/spack/repos/builtin/packages/py-tomopy/package.py b/var/spack/repos/builtin/packages/py-tomopy/package.py
index 0b7f814775..421265ed6b 100644
--- a/var/spack/repos/builtin/packages/py-tomopy/package.py
+++ b/var/spack/repos/builtin/packages/py-tomopy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,11 +14,6 @@ class PyTomopy(PythonPackage):
homepage = "http://tomopy.readthedocs.io/en/latest/index.html"
url = "https://github.com/tomopy/tomopy/archive/1.0.0.tar.gz"
- import_modules = [
- 'tomopy', 'doc', 'tomopy.util', 'tomopy.sim', 'tomopy.recon',
- 'tomopy.prep', 'tomopy.misc', 'tomopy.io', 'doc.demo'
- ]
-
version('1.0.0', sha256='ee45f7a062e5a66d6f18a904d2e204e48d85a1ce1464156f9e2f6353057dfe4c')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-toolz/package.py b/var/spack/repos/builtin/packages/py-toolz/package.py
index 058d1a9283..fe8dbe03a2 100644
--- a/var/spack/repos/builtin/packages/py-toolz/package.py
+++ b/var/spack/repos/builtin/packages/py-toolz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyToolz(PythonPackage):
"""A set of utility functions for iterators, functions, and dictionaries"""
homepage = "http://github.com/pytoolz/toolz/"
- url = "https://pypi.io/packages/source/t/toolz/toolz-0.9.0.tar.gz"
-
- import_modules = ['toolz', 'tlz', 'toolz.curried', 'toolz.sandbox']
+ pypi = "toolz/toolz-0.9.0.tar.gz"
version('0.9.0', sha256='929f0a7ea7f61c178bd951bdae93920515d3fbdbafc8e6caf82d752b9b3b31c9')
diff --git a/var/spack/repos/builtin/packages/py-torch-cluster/package.py b/var/spack/repos/builtin/packages/py-torch-cluster/package.py
index 4d59fce476..d3c965f797 100644
--- a/var/spack/repos/builtin/packages/py-torch-cluster/package.py
+++ b/var/spack/repos/builtin/packages/py-torch-cluster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class PyTorchCluster(PythonPackage):
homepage = "https://github.com/rusty1s/pytorch_cluster"
url = "https://github.com/rusty1s/pytorch_cluster/archive/1.5.7.tar.gz"
+ version('1.5.8', sha256='95c6e81e9c4a6235e1b2152ab917021d2060ad995199f6bd7fb39986d37310f0')
version('1.5.7', sha256='71701d2f7f3e458ebe5904c982951349fdb60e6f1654e19c7e102a226e2de72e')
variant('cuda', default=False, description='Enables CUDA support')
diff --git a/var/spack/repos/builtin/packages/py-torch-geometric/package.py b/var/spack/repos/builtin/packages/py-torch-geometric/package.py
index a8fc7ed366..95fd361020 100644
--- a/var/spack/repos/builtin/packages/py-torch-geometric/package.py
+++ b/var/spack/repos/builtin/packages/py-torch-geometric/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,7 @@ class PyTorchGeometric(PythonPackage):
homepage = "https://github.com/rusty1s/pytorch_geometric"
url = "https://github.com/rusty1s/pytorch_geometric/archive/1.6.0.tar.gz"
+ version('1.6.3', sha256='1907c0f5eb7ab8f6f79a7e43703579b39b514501dd956ed0fc3d33210bcbb4c2')
version('1.6.0', sha256='7d5231cdcc2ebd4444f406cbf1537eb49bf90ab6f446eaf1b7af5cdbe105f3c9')
variant('cuda', default=False, description="Enable CUDA support")
@@ -32,6 +33,7 @@ class PyTorchGeometric(PythonPackage):
depends_on('py-networkx', type=('build', 'run'))
depends_on('py-scikit-learn', type=('build', 'run'))
depends_on('py-numba', type=('build', 'run'))
+ depends_on('py-python-louvain', type=('build', 'run'), when='@1.6.2:')
depends_on('py-requests', type=('build', 'run'))
depends_on('py-pandas', type=('build', 'run'))
depends_on('py-rdflib', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-torch-nvidia-apex/package.py b/var/spack/repos/builtin/packages/py-torch-nvidia-apex/package.py
index 1ba461b5fb..af6666b6c8 100644
--- a/var/spack/repos/builtin/packages/py-torch-nvidia-apex/package.py
+++ b/var/spack/repos/builtin/packages/py-torch-nvidia-apex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-torch-scatter/package.py b/var/spack/repos/builtin/packages/py-torch-scatter/package.py
index 7950abb7b9..b2c84d4969 100644
--- a/var/spack/repos/builtin/packages/py-torch-scatter/package.py
+++ b/var/spack/repos/builtin/packages/py-torch-scatter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-torch-sparse/package.py b/var/spack/repos/builtin/packages/py-torch-sparse/package.py
index 4c16b1d8a7..28d20685a1 100644
--- a/var/spack/repos/builtin/packages/py-torch-sparse/package.py
+++ b/var/spack/repos/builtin/packages/py-torch-sparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class PyTorchSparse(PythonPackage):
homepage = "https://github.com/rusty1s/pytorch_sparse/"
url = "https://github.com/rusty1s/pytorch_sparse/archive/0.6.7.tar.gz"
+ version('0.6.8', sha256='98f7ff1f0f9cd5031bc81c70c11970c3864545ae33677025a6efd2466a97e6f9')
version('0.6.7', sha256='0d038a1502548692972a085cd0496460b5d2050bb7328427add990f081d6c44d')
variant('cuda', default=False, description="Enable CUDA support")
diff --git a/var/spack/repos/builtin/packages/py-torch-spline-conv/package.py b/var/spack/repos/builtin/packages/py-torch-spline-conv/package.py
index 5806f3e958..ad3489686d 100644
--- a/var/spack/repos/builtin/packages/py-torch-spline-conv/package.py
+++ b/var/spack/repos/builtin/packages/py-torch-spline-conv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-torch/package.py b/var/spack/repos/builtin/packages/py-torch/package.py
index 41393899e3..cb40d25f0a 100644
--- a/var/spack/repos/builtin/packages/py-torch/package.py
+++ b/var/spack/repos/builtin/packages/py-torch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,44 +13,16 @@ class PyTorch(PythonPackage, CudaPackage):
homepage = "https://pytorch.org/"
git = "https://github.com/pytorch/pytorch.git"
- install_time_test_callbacks = ['install_test', 'import_module_test']
maintainers = ['adamjstewart']
- import_modules = [
- 'tools', 'caffe2', 'torch', 'tools.cwrap', 'tools.autograd',
- 'tools.setup_helpers', 'tools.shared', 'tools.jit', 'tools.pyi',
- 'tools.nnwrap', 'tools.cwrap.plugins', 'caffe2.core', 'caffe2.proto',
- 'caffe2.python', 'caffe2.distributed', 'caffe2.perfkernels',
- 'caffe2.experiments', 'caffe2.contrib', 'caffe2.quantization',
- 'caffe2.core.nomnigraph', 'caffe2.python.ideep', 'caffe2.python.mint',
- 'caffe2.python.layers', 'caffe2.python.onnx', 'caffe2.python.trt',
- 'caffe2.python.models', 'caffe2.python.docs', 'caffe2.python.modeling',
- 'caffe2.python.mkl', 'caffe2.python.examples',
- 'caffe2.python.predictor', 'caffe2.python.helpers',
- 'caffe2.python.rnn', 'caffe2.python.onnx.bin',
- 'caffe2.python.models.seq2seq', 'caffe2.experiments.python',
- 'caffe2.contrib.nnpack', 'caffe2.contrib.warpctc',
- 'caffe2.contrib.nccl', 'caffe2.contrib.playground',
- 'caffe2.contrib.gloo', 'caffe2.contrib.script', 'caffe2.contrib.prof',
- 'caffe2.contrib.tensorboard', 'caffe2.contrib.aten',
- 'caffe2.contrib.playground.resnetdemo',
- 'caffe2.contrib.script.examples', 'caffe2.contrib.aten.docs',
- 'caffe2.quantization.server', 'torch.nn', 'torch.onnx',
- 'torch.distributed', 'torch.autograd', 'torch.multiprocessing',
- 'torch.cuda', 'torch.backends', 'torch.optim', 'torch.utils',
- 'torch.contrib', 'torch.jit', 'torch.sparse',
- 'torch.for_onnx', 'torch._thnn', 'torch.distributions',
- 'torch.nn.parallel', 'torch.nn._functions', 'torch.nn.backends',
- 'torch.nn.utils', 'torch.nn.modules', 'torch.nn.parallel.deprecated',
- 'torch.nn._functions.thnn', 'torch.distributed.deprecated',
- 'torch.autograd._functions', 'torch.backends.cuda',
- 'torch.backends.mkl', 'torch.backends.mkldnn', 'torch.backends.openmp',
- 'torch.backends.cudnn', 'torch.utils.backcompat',
- 'torch.utils.bottleneck', 'torch.utils.ffi', 'torch.utils.tensorboard',
- 'torch.utils.data', 'torch.utils.data._utils'
- ]
+
+ # Exact set of modules is version- and variant-specific
+ import_modules = ['torch', 'torch.autograd', 'torch.nn', 'torch.utils']
version('master', branch='master', submodules=True)
+ version('1.8.1', tag='v1.8.1', submodules=True)
+ version('1.8.0', tag='v1.8.0', submodules=True)
+ version('1.7.1', tag='v1.7.1', submodules=True)
version('1.7.0', tag='v1.7.0', submodules=True)
version('1.6.0', tag='v1.6.0', submodules=True)
version('1.5.1', tag='v1.5.1', submodules=True)
@@ -123,9 +95,10 @@ class PyTorch(PythonPackage, CudaPackage):
# Use Ninja generator to speed up build times
# Automatically used if found
depends_on('ninja@1.5:', type='build')
- depends_on('python@3.6.1:', when='@1.6:', type=('build', 'run'))
- depends_on('python@3.5:', when='@1.5:', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.5:', type=('build', 'run'))
+ depends_on('python@3.6.2:', when='@1.7.1:', type=('build', 'link', 'run'))
+ depends_on('python@3.6.1:', when='@1.6:', type=('build', 'link', 'run'))
+ depends_on('python@3.5:', when='@1.5:', type=('build', 'link', 'run'))
+ depends_on('python@2.7:2.8,3.5:', type=('build', 'link', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-future', when='@1.5:', type=('build', 'run'))
@@ -135,9 +108,11 @@ class PyTorch(PythonPackage, CudaPackage):
depends_on('py-typing-extensions', when='@1.7:', type=('build', 'run'))
depends_on('py-pybind11', when='@0.4:', type=('build', 'link', 'run'))
depends_on('py-dataclasses', when='@1.7: ^python@3.6.0:3.6.999', type=('build', 'run'))
+ depends_on('py-tqdm', type='run')
depends_on('blas')
depends_on('lapack')
depends_on('protobuf', when='@0.4:')
+ depends_on('py-protobuf', when='@0.4:', type=('build', 'run'))
depends_on('eigen', when='@0.4:')
# TODO: replace all third_party packages with Spack packages
@@ -177,6 +152,11 @@ class PyTorch(PythonPackage, CudaPackage):
depends_on('py-six', type='test')
depends_on('py-psutil', type='test')
+ # Fixes build on older systems with glibc <2.12
+ patch('https://patch-diff.githubusercontent.com/raw/pytorch/pytorch/pull/55063.patch',
+ sha256='e17eaa42f5d7c18bf0d7c37d7b0910127a01ad53fdce3e226a92893356a70395',
+ when='@1.1.0:')
+
# https://github.com/pytorch/pytorch/pull/35607
# https://github.com/pytorch/pytorch/pull/37865
# Fixes CMake configuration error when XNNPACK is disabled
@@ -215,6 +195,13 @@ class PyTorch(PythonPackage, CudaPackage):
headers.directories = [root]
return headers
+ @when('@1.5.0:')
+ def patch(self):
+ # https://github.com/pytorch/pytorch/issues/52208
+ filter_file('torch_global_deps PROPERTIES LINKER_LANGUAGE C',
+ 'torch_global_deps PROPERTIES LINKER_LANGUAGE CXX',
+ 'caffe2/CMakeLists.txt')
+
def setup_build_environment(self, env):
def enable_or_disable(variant, keyword='USE', var=None, newer=False):
"""Set environment variable to enable or disable support for a
@@ -332,6 +319,8 @@ class PyTorch(PythonPackage, CudaPackage):
if '+rocm' in self.spec:
python(os.path.join('tools', 'amd_build', 'build_amd.py'))
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def install_test(self):
with working_dir('test'):
python('run_test.py')
diff --git a/var/spack/repos/builtin/packages/py-torchaudio/package.py b/var/spack/repos/builtin/packages/py-torchaudio/package.py
index 5b17373c66..cfee7f41fd 100644
--- a/var/spack/repos/builtin/packages/py-torchaudio/package.py
+++ b/var/spack/repos/builtin/packages/py-torchaudio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-torchfile/package.py b/var/spack/repos/builtin/packages/py-torchfile/package.py
index e739c065b7..5e4c9fb459 100644
--- a/var/spack/repos/builtin/packages/py-torchfile/package.py
+++ b/var/spack/repos/builtin/packages/py-torchfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyTorchfile(PythonPackage):
including torch.Tensors is preserved."""
homepage = "https://github.com/bshillingford/python-torchfile"
- url = "https://pypi.io/packages/source/t/torchfile/torchfile-0.1.0.tar.gz"
+ pypi = "torchfile/torchfile-0.1.0.tar.gz"
# license = "BSD-3-Clause"
version('0.1.0', sha256='a53dfe134b737845a9f2cb24fe0585317874f965932cebdb0439d13c8da4136e')
diff --git a/var/spack/repos/builtin/packages/py-torchmetrics/package.py b/var/spack/repos/builtin/packages/py-torchmetrics/package.py
new file mode 100644
index 0000000000..c7da4fa0a5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-torchmetrics/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyTorchmetrics(PythonPackage):
+ """Machine learning metrics for distributed, scalable PyTorch applications."""
+
+ homepage = "https://github.com/PyTorchLightning/metrics"
+ pypi = "torchmetrics/torchmetrics-0.3.1.tar.gz"
+
+ version('0.3.1', sha256='78f4057db53f7c219fdf9ec9eed151adad18dd43488a44e5c780806d218e3f1d')
+ version('0.2.0', sha256='481a28759acd2d77cc088acba6bc7dc4a356c7cb767da2e1495e91e612e2d548')
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'), when='@0.3.0:')
+ depends_on('py-torch@1.3.1:', type=('build', 'run'))
+ depends_on('py-packaging', type=('build', 'run'), when='@0.3.0:')
diff --git a/var/spack/repos/builtin/packages/py-torchsummary/package.py b/var/spack/repos/builtin/packages/py-torchsummary/package.py
index af1e39bcfb..27745d48b7 100644
--- a/var/spack/repos/builtin/packages/py-torchsummary/package.py
+++ b/var/spack/repos/builtin/packages/py-torchsummary/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyTorchsummary(PythonPackage):
print(your_model) in PyTorch."""
homepage = "https://github.com/sksq96/pytorch-summary"
- url = "https://pypi.io/packages/source/t/torchsummary/torchsummary-1.5.1.tar.gz"
+ pypi = "torchsummary/torchsummary-1.5.1.tar.gz"
version('1.5.1', sha256='981bf689e22e0cf7f95c746002f20a24ad26aa6b9d861134a14bc6ce92230590')
diff --git a/var/spack/repos/builtin/packages/py-torchtext/package.py b/var/spack/repos/builtin/packages/py-torchtext/package.py
index 6bcae3d1e9..7d22aae920 100644
--- a/var/spack/repos/builtin/packages/py-torchtext/package.py
+++ b/var/spack/repos/builtin/packages/py-torchtext/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyTorchtext(PythonPackage):
"""Text utilities and datasets for PyTorch."""
homepage = "https://github.com/pytorch/text"
- url = "https://pypi.io/packages/source/t/torchtext/torchtext-0.5.0.tar.gz"
+ pypi = "torchtext/torchtext-0.5.0.tar.gz"
maintainers = ['adamjstewart']
diff --git a/var/spack/repos/builtin/packages/py-torchvision/package.py b/var/spack/repos/builtin/packages/py-torchvision/package.py
index aaca507ba9..3e6f4d090a 100644
--- a/var/spack/repos/builtin/packages/py-torchvision/package.py
+++ b/var/spack/repos/builtin/packages/py-torchvision/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,18 +9,15 @@ class PyTorchvision(PythonPackage):
architectures, and common image transformations for computer vision."""
homepage = "https://github.com/pytorch/vision"
- url = "https://github.com/pytorch/vision/archive/v0.8.1.tar.gz"
+ url = "https://github.com/pytorch/vision/archive/v0.8.2.tar.gz"
git = "https://github.com/pytorch/vision.git"
maintainers = ['adamjstewart']
- import_modules = [
- 'torchvision', 'torchvision.datasets', 'torchvision.models',
- 'torchvision.transforms', 'torchvision.ops',
- 'torchvision.models.segmentation',
- 'torchvision.models.detection'
- ]
version('master', branch='master')
+ version('0.9.1', sha256='79964773729880e0eee0e6af13f336041121d4cc8491a3e2c0e5f184cac8a718')
+ version('0.9.0', sha256='9351ed92aded632f8c7f59dfadac13c191a834babe682f5785ea47e6fcf6b472')
+ version('0.8.2', sha256='9a866c3c8feb23b3221ce261e6153fc65a98ce9ceaa71ccad017016945c178bf')
version('0.8.1', sha256='c46734c679c99f93e5c06654f4295a05a6afe6c00a35ebd26a2cce507ae1ccbd')
version('0.8.0', sha256='b5f040faffbfc7bac8d4687d8665bd1196937334589b3fb5fcf15bb69ca25391')
version('0.7.0', sha256='fa0a6f44a50451115d1499b3f2aa597e0092a07afce1068750260fa7dd2c85cb')
@@ -37,10 +34,10 @@ class PyTorchvision(PythonPackage):
values=('pil', 'accimage', 'png', 'jpeg'), multi=False)
# https://github.com/pytorch/vision#installation
- depends_on('python@3.6:', when='@0.7:', type=('build', 'run'))
- depends_on('python@3.5:', when='@0.6.0:0.6.999', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.5:3.8', when='@0.5.0', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.5:3.7', when='@:0.4', type=('build', 'run'))
+ depends_on('python@3.6:', when='@0.7:', type=('build', 'link', 'run'))
+ depends_on('python@3.5:', when='@0.6.0:0.6.999', type=('build', 'link', 'run'))
+ depends_on('python@2.7:2.8,3.5:3.8', when='@0.5.0', type=('build', 'link', 'run'))
+ depends_on('python@2.7:2.8,3.5:3.7', when='@:0.4', type=('build', 'link', 'run'))
depends_on('py-setuptools', type='build')
depends_on('ninja', type='build')
@@ -49,12 +46,15 @@ class PyTorchvision(PythonPackage):
# https://github.com/pytorch/vision#installation
depends_on('py-torch@master', when='@master', type=('build', 'link', 'run'))
+ depends_on('py-torch@1.8.1', when='@0.9.1', type=('build', 'link', 'run'))
+ depends_on('py-torch@1.8.0', when='@0.9.0', type=('build', 'link', 'run'))
+ depends_on('py-torch@1.7.1', when='@0.8.2', type=('build', 'link', 'run'))
depends_on('py-torch@1.7.0', when='@0.8.1', type=('build', 'link', 'run'))
depends_on('py-torch@1.7.0', when='@0.8.0', type=('build', 'link', 'run'))
depends_on('py-torch@1.6.0', when='@0.7.0', type=('build', 'link', 'run'))
depends_on('py-torch@1.5.1', when='@0.6.1', type=('build', 'link', 'run'))
depends_on('py-torch@1.5.0', when='@0.6.0', type=('build', 'link', 'run'))
- depends_on('py-torch@1.4.0', when='@0.5.0', type=('build', 'link', 'run'))
+ depends_on('py-torch@1.4.1', when='@0.5.0', type=('build', 'link', 'run'))
depends_on('py-torch@1.3.1', when='@0.4.2', type=('build', 'link', 'run'))
depends_on('py-torch@1.3.0', when='@0.4.1', type=('build', 'link', 'run'))
depends_on('py-torch@1.2.0', when='@0.4.0', type=('build', 'link', 'run'))
@@ -65,12 +65,11 @@ class PyTorchvision(PythonPackage):
depends_on('pil@4.1.1:6', when='@:0.4 backend=pil', type=('build', 'run'))
depends_on('pil@4.1.1:', when='@0.5: backend=pil', type=('build', 'run'))
depends_on('py-accimage', when='backend=accimage', type=('build', 'run'))
- depends_on('libpng', when='backend=png')
+ depends_on('libpng@1.6.0:', when='backend=png')
depends_on('jpeg', when='backend=jpeg')
# Many of the datasets require additional dependencies to use.
# These can be installed after the fact.
- depends_on('py-scipy', type='test')
depends_on('ffmpeg@3.1:', when='@0.4.2:')
diff --git a/var/spack/repos/builtin/packages/py-tornado/package.py b/var/spack/repos/builtin/packages/py-tornado/package.py
index 0aea05faf0..b6ac7cfc63 100644
--- a/var/spack/repos/builtin/packages/py-tornado/package.py
+++ b/var/spack/repos/builtin/packages/py-tornado/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-tox/package.py b/var/spack/repos/builtin/packages/py-tox/package.py
index 43b4c1e49c..d2f4674529 100644
--- a/var/spack/repos/builtin/packages/py-tox/package.py
+++ b/var/spack/repos/builtin/packages/py-tox/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTox(PythonPackage):
"""tox is a generic virtualenv management and test command line tool."""
homepage = "https://tox.readthedocs.org/"
- url = "https://pypi.io/packages/source/t/tox/tox-3.14.2.tar.gz"
+ pypi = "tox/tox-3.14.2.tar.gz"
version('3.14.2', sha256='7efd010a98339209f3a8292f02909b51c58417bfc6838ab7eca14cf90f96117a')
diff --git a/var/spack/repos/builtin/packages/py-tpot/package.py b/var/spack/repos/builtin/packages/py-tpot/package.py
index 856336b54f..c064797fe6 100644
--- a/var/spack/repos/builtin/packages/py-tpot/package.py
+++ b/var/spack/repos/builtin/packages/py-tpot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,14 +13,13 @@ class PyTpot(PythonPackage):
"""
homepage = "http://epistasislab.github.io/tpot/"
- url = "https://pypi.io/packages/source/t/tpot/TPOT-0.11.5.tar.gz"
+ pypi = "tpot/TPOT-0.11.5.tar.gz"
version('0.11.5', sha256='909be08b29165ce48de5e5d2e3fd73fee9aeeaf1030f2e0912ce0f0bd9c3d2f3')
depends_on('py-setuptools', type='build')
depends_on('python@3.5:', type=('build', 'run'))
depends_on('py-deap@1.2:', type=('build', 'run'))
- depends_on('py-nose', type='test')
depends_on('py-numpy@1.16.3:', type=('build', 'run'))
depends_on('py-scikit-learn@0.22.0:', type=('build', 'run'))
depends_on('py-scipy@1.3.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-tqdm/package.py b/var/spack/repos/builtin/packages/py-tqdm/package.py
index b9e6a5b2a9..ec88deee5f 100644
--- a/var/spack/repos/builtin/packages/py-tqdm/package.py
+++ b/var/spack/repos/builtin/packages/py-tqdm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,14 +10,18 @@ class PyTqdm(PythonPackage):
"""A Fast, Extensible Progress Meter"""
homepage = "https://github.com/tqdm/tqdm"
- url = "https://pypi.io/packages/source/t/tqdm/tqdm-4.45.0.tar.gz"
+ pypi = "tqdm/tqdm-4.45.0.tar.gz"
+ version('4.59.0', sha256='d666ae29164da3e517fcf125e41d4fe96e5bb375cd87ff9763f6b38b5592fe33')
version('4.45.0', sha256='00339634a22c10a7a22476ee946bbde2dbe48d042ded784e4d88e0236eca5d81')
version('4.36.1', sha256='abc25d0ce2397d070ef07d8c7e706aede7920da163c64997585d42d3537ece3d')
version('4.8.4', sha256='bab05f8bb6efd2702ab6c532e5e6a758a66c0d2f443e09784b73e4066e6b3a37')
- depends_on('python@2.6:2.8,3.2:', type=('build', 'run'))
- depends_on('py-setuptools', type=('build', 'run'))
- depends_on('py-nose', type='test')
- depends_on('py-flake8', type='test')
- depends_on('py-coverage', type='test')
+ variant('telegram', default=False, description='Enable Telegram bot support')
+ variant('notebook', default=False, description='Enable Jupyter Notebook support')
+
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ depends_on('py-setuptools@42:', type=('build', 'run'))
+ depends_on('py-setuptools-scm@3.4:+toml', type='build')
+ depends_on('py-requests', when='+telegram', type=('build', 'run'))
+ depends_on('py-ipywidgets@6:', when='+notebook', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-traceback2/package.py b/var/spack/repos/builtin/packages/py-traceback2/package.py
index 766acea59a..23bcc8f60c 100644
--- a/var/spack/repos/builtin/packages/py-traceback2/package.py
+++ b/var/spack/repos/builtin/packages/py-traceback2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,9 @@ class PyTraceback2(PythonPackage):
"""Backports of the traceback module"""
homepage = "https://github.com/testing-cabal/traceback2"
- url = "https://pypi.io/packages/source/t/traceback2/traceback2-1.4.0.tar.gz"
+ pypi = "traceback2/traceback2-1.4.0.tar.gz"
version('1.4.0', sha256='05acc67a09980c2ecfedd3423f7ae0104839eccb55fc645773e1caa0951c3030')
depends_on('py-setuptools', type='build')
depends_on('py-pbr', type='build')
-
- # test-requirements.txt
- depends_on('py-contextlib2', type='test')
- depends_on('py-fixtures', type='test')
- depends_on('py-testtools', type='test')
- depends_on('py-unittest2', type='test')
diff --git a/var/spack/repos/builtin/packages/py-traitlets/package.py b/var/spack/repos/builtin/packages/py-traitlets/package.py
index df854d70c6..3fc0241114 100644
--- a/var/spack/repos/builtin/packages/py-traitlets/package.py
+++ b/var/spack/repos/builtin/packages/py-traitlets/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyTraitlets(PythonPackage):
"""Traitlets Python config system"""
- homepage = "https://pypi.python.org/pypi/traitlets"
- url = "https://pypi.io/packages/source/t/traitlets/traitlets-5.0.4.tar.gz"
+ pypi = "traitlets/traitlets-5.0.4.tar.gz"
version('5.0.4', sha256='86c9351f94f95de9db8a04ad8e892da299a088a64fd283f9f6f18770ae5eae1b')
version('4.3.3', sha256='d023ee369ddd2763310e4c3eae1ff649689440d4ae59d7485eb4cfbbe3e359f7')
@@ -29,4 +28,3 @@ class PyTraitlets(PythonPackage):
depends_on('py-six', when='@:4', type=('build', 'run'))
depends_on('py-decorator', when='@:4', type=('build', 'run'))
depends_on('py-enum34', when='^python@:3.3', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-traits/package.py b/var/spack/repos/builtin/packages/py-traits/package.py
index 868e1de0a2..ad8665e47d 100644
--- a/var/spack/repos/builtin/packages/py-traits/package.py
+++ b/var/spack/repos/builtin/packages/py-traits/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyTraits(PythonPackage):
"""Explicitly typed attributes for Python."""
homepage = "https://docs.enthought.com/traits"
- url = "https://pypi.io/packages/source/t/traits/traits-6.0.0.tar.gz"
+ pypi = "traits/traits-6.0.0.tar.gz"
version('6.0.0', sha256='dbcd70166feca434130a1193284d5819ca72ffbc8dbce8deeecc0cebb41a3bfb')
diff --git a/var/spack/repos/builtin/packages/py-traitsui/package.py b/var/spack/repos/builtin/packages/py-traitsui/package.py
index f77e92cc4f..e9b3dd2125 100644
--- a/var/spack/repos/builtin/packages/py-traitsui/package.py
+++ b/var/spack/repos/builtin/packages/py-traitsui/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyTraitsui(PythonPackage):
the details of displaying them."""
homepage = "https://docs.enthought.com/traitsui"
- url = "https://pypi.io/packages/source/t/traitsui/traitsui-6.1.3.tar.gz"
+ pypi = "traitsui/traitsui-6.1.3.tar.gz"
version('6.1.3', sha256='48381763b181efc58eaf288431d1d92d028d0d97dfdd33eba7809aae8aef814f')
diff --git a/var/spack/repos/builtin/packages/py-transformers/package.py b/var/spack/repos/builtin/packages/py-transformers/package.py
index 0480ed06c2..732347591b 100644
--- a/var/spack/repos/builtin/packages/py-transformers/package.py
+++ b/var/spack/repos/builtin/packages/py-transformers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyTransformers(PythonPackage):
PyTorch"""
homepage = "https://github.com/huggingface/transformers"
- url = "https://pypi.io/packages/source/t/transformers/transformers-2.8.0.tar.gz"
+ pypi = "transformers/transformers-2.8.0.tar.gz"
maintainers = ['adamjstewart']
diff --git a/var/spack/repos/builtin/packages/py-treehash/package.py b/var/spack/repos/builtin/packages/py-treehash/package.py
index 8925504b74..5373ef5179 100644
--- a/var/spack/repos/builtin/packages/py-treehash/package.py
+++ b/var/spack/repos/builtin/packages/py-treehash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,6 @@ class PyTreehash(PythonPackage):
function) "tree" hash, as used by e.g. Amazon Glacier."""
homepage = "https://github.com/jdswinbank/treehash"
- url = "https://pypi.io/packages/source/t/treehash/TreeHash-1.0.2.tar.gz"
+ pypi = "treehash/TreeHash-1.0.2.tar.gz"
version('1.0.2', sha256='fefcadd6a1e8ba2808897d776d5ae8bdae56ec3fe90ed385c1322357269f27a4')
diff --git a/var/spack/repos/builtin/packages/py-tuiview/package.py b/var/spack/repos/builtin/packages/py-tuiview/package.py
index 9757dd2343..e78153d2c1 100644
--- a/var/spack/repos/builtin/packages/py-tuiview/package.py
+++ b/var/spack/repos/builtin/packages/py-tuiview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-twine/package.py b/var/spack/repos/builtin/packages/py-twine/package.py
index 46ca3ae9b8..271f0d7563 100644
--- a/var/spack/repos/builtin/packages/py-twine/package.py
+++ b/var/spack/repos/builtin/packages/py-twine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTwine(PythonPackage):
"""Twine is a utility for publishing Python packages on PyPI."""
homepage = "https://twine.readthedocs.io/"
- url = "https://pypi.io/packages/source/t/twine/twine-2.0.0.tar.gz"
+ pypi = "twine/twine-2.0.0.tar.gz"
version('2.0.0', sha256='9fe7091715c7576df166df8ef6654e61bada39571783f2fd415bdcba867c6993')
diff --git a/var/spack/repos/builtin/packages/py-twisted/package.py b/var/spack/repos/builtin/packages/py-twisted/package.py
index 52f3d4039f..2c6579d48c 100644
--- a/var/spack/repos/builtin/packages/py-twisted/package.py
+++ b/var/spack/repos/builtin/packages/py-twisted/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyTwisted(PythonPackage):
"""An asynchronous networking framework written in Python"""
homepage = "https://twistedmatrix.com/"
- url = "https://pypi.io/packages/source/T/Twisted/Twisted-15.3.0.tar.bz2"
+ pypi = "Twisted/Twisted-15.3.0.tar.bz2"
version('15.4.0', sha256='78862662fa9ae29654bc2b9d349c3f1d887e6b2ed978512c4442d53ea861f05c')
version('15.3.0', sha256='025729751cf898842262375a40f70ae1d246daea88369eab9f6bb96e528bf285')
diff --git a/var/spack/repos/builtin/packages/py-typed-ast/package.py b/var/spack/repos/builtin/packages/py-typed-ast/package.py
index ddbb6ff519..18a28505a8 100644
--- a/var/spack/repos/builtin/packages/py-typed-ast/package.py
+++ b/var/spack/repos/builtin/packages/py-typed-ast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTypedAst(PythonPackage):
"""A fork of Python 2 and 3 ast modules with type comment support."""
homepage = "https://github.com/python/typed_ast"
- url = "https://pypi.io/packages/source/t/typed-ast/typed_ast-1.4.0.tar.gz"
+ pypi = "typed-ast/typed_ast-1.4.0.tar.gz"
version('1.4.0', sha256='66480f95b8167c9c5c5c87f32cf437d585937970f3fc24386f313a4c97b44e34')
diff --git a/var/spack/repos/builtin/packages/py-typesentry/package.py b/var/spack/repos/builtin/packages/py-typesentry/package.py
index 0fbd891ae9..12afda00c3 100644
--- a/var/spack/repos/builtin/packages/py-typesentry/package.py
+++ b/var/spack/repos/builtin/packages/py-typesentry/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-typing-extensions/package.py b/var/spack/repos/builtin/packages/py-typing-extensions/package.py
index 02376449f0..4afb44e756 100644
--- a/var/spack/repos/builtin/packages/py-typing-extensions/package.py
+++ b/var/spack/repos/builtin/packages/py-typing-extensions/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyTypingExtensions(PythonPackage):
details about protocols and static duck typing)."""
homepage = "https://github.com/python/typing/tree/master/typing_extensions"
- url = "https://pypi.io/packages/source/t/typing_extensions/typing_extensions-3.7.4.tar.gz"
+ pypi = "typing_extensions/typing_extensions-3.7.4.tar.gz"
version('3.7.4', sha256='2ed632b30bb54fc3941c382decfd0ee4148f5c591651c9272473fea2c6397d95')
version('3.7.2', sha256='fb2cd053238d33a8ec939190f30cfd736c00653a85a2919415cecf7dc3d9da71')
diff --git a/var/spack/repos/builtin/packages/py-typing/package.py b/var/spack/repos/builtin/packages/py-typing/package.py
index ee713c9213..7b9d339fdc 100644
--- a/var/spack/repos/builtin/packages/py-typing/package.py
+++ b/var/spack/repos/builtin/packages/py-typing/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,14 +11,17 @@ class PyTyping(PythonPackage):
versions older than 3.6."""
homepage = "https://docs.python.org/3/library/typing.html"
- url = "https://pypi.io/packages/source/t/typing/typing-3.7.4.1.tar.gz"
-
- import_modules = ['typing']
+ pypi = "typing/typing-3.7.4.1.tar.gz"
+ version('3.7.4.3', sha256='1187fb9c82fd670d10aa07bbb6cfcfe4bdda42d6fab8d5134f04e8c4d0b71cc9')
version('3.7.4.1', sha256='91dfe6f3f706ee8cc32d38edbbf304e9b7583fb37108fef38229617f8b3eba23')
version('3.6.6', sha256='4027c5f6127a6267a435201981ba156de91ad0d1d98e9ddc2aa173453453492d')
version('3.6.4', sha256='d400a9344254803a2368533e4533a4200d21eb7b6b729c173bc38201a74db3f2')
version('3.6.1', sha256='c36dec260238e7464213dcd50d4b5ef63a507972f5780652e835d0228d0edace')
- depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+ # Don't use this with new versions of python (3.5+)
+ # python 3.7 and later will actively not import
+ # https://github.com/python/typing/issues/573
+ # _abc_registry now private https://bugs.python.org/issue31333
+ depends_on('python@2.7:2.8,3.4:3.6', type=('build', 'run'))
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-tzlocal/package.py b/var/spack/repos/builtin/packages/py-tzlocal/package.py
index 354653f7a5..d6d0b888eb 100644
--- a/var/spack/repos/builtin/packages/py-tzlocal/package.py
+++ b/var/spack/repos/builtin/packages/py-tzlocal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyTzlocal(PythonPackage):
"""tzinfo object for the local timezone."""
homepage = "https://github.com/regebro/tzlocal"
- url = "https://pypi.io/packages/source/t/tzlocal/tzlocal-1.3.tar.gz"
+ pypi = "tzlocal/tzlocal-1.3.tar.gz"
version('2.0.0', sha256='949b9dd5ba4be17190a80c0268167d7e6c92c62b30026cf9764caf3e308e5590')
version('1.3', sha256='d160c2ce4f8b1831dabfe766bd844cf9012f766539cf84139c2faac5201882ce')
diff --git a/var/spack/repos/builtin/packages/py-ucx-py/package.py b/var/spack/repos/builtin/packages/py-ucx-py/package.py
new file mode 100644
index 0000000000..5a6939b769
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ucx-py/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyUcxPy(PythonPackage):
+ """UCX-Py is the Python interface for UCX, a low-level
+ high-performance networking library. UCX and UCX-Py supports
+ several transport methods including InfiniBand and NVLink while
+ still using traditional networking protocols like TCP."""
+
+ homepage = "https://ucx-py.readthedocs.io/en/latest/"
+ url = "https://github.com/rapidsai/ucx-py/archive/v0.16.0.tar.gz"
+
+ version('0.16.0', sha256='12c1c982ee337b8dc026d3a6e8e63d96bf021c5c555fe173642908d3c3bec36e')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-cython@0.29.14:2.999.999', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-psutil', type=('build', 'run'))
+ depends_on('py-pynvml', type=('build', 'run'))
+ depends_on('ucx')
+ depends_on('hwloc')
diff --git a/var/spack/repos/builtin/packages/py-ujson/package.py b/var/spack/repos/builtin/packages/py-ujson/package.py
index 45e9b280e8..3dec146d93 100644
--- a/var/spack/repos/builtin/packages/py-ujson/package.py
+++ b/var/spack/repos/builtin/packages/py-ujson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,11 @@ class PyUjson(PythonPackage):
bindings."""
homepage = "https://github.com/esnme/ultrajson"
- url = "https://pypi.io/packages/source/u/ujson/ujson-1.35.tar.gz"
+ pypi = "ujson/ujson-1.35.tar.gz"
+ version('4.0.2', sha256='c615a9e9e378a7383b756b7e7a73c38b22aeb8967a8bfbffd4741f7ffd043c4d')
version('1.35', sha256='f66073e5506e91d204ab0c614a148d5aa938bdbf104751be66f8ad7a222f5f86')
+ depends_on('python@3.6:', type=('build', 'run'), when='@4:')
depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools-scm', type='build', when='@4:')
diff --git a/var/spack/repos/builtin/packages/py-umalqurra/package.py b/var/spack/repos/builtin/packages/py-umalqurra/package.py
index c96dd625a5..d5cef2ab9a 100644
--- a/var/spack/repos/builtin/packages/py-umalqurra/package.py
+++ b/var/spack/repos/builtin/packages/py-umalqurra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ class PyUmalqurra(PythonPackage):
"""Date Api that support Hijri Umalqurra calendar."""
homepage = "https://github.com/tytkal/python-hijiri-ummalqura"
- url = "https://pypi.io/packages/source/u/umalqurra/umalqurra-0.2.tar.gz"
+ pypi = "umalqurra/umalqurra-0.2.tar.gz"
version('0.2', sha256='719f6a36f908ada1c29dae0d934dd0f1e1f6e3305784edbec23ad719397de678')
diff --git a/var/spack/repos/builtin/packages/py-umi-tools/package.py b/var/spack/repos/builtin/packages/py-umi-tools/package.py
index 3a89b102a1..efbde8be79 100644
--- a/var/spack/repos/builtin/packages/py-umi-tools/package.py
+++ b/var/spack/repos/builtin/packages/py-umi-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-uncertainties/package.py b/var/spack/repos/builtin/packages/py-uncertainties/package.py
index 67a9ee0cc5..8a1d8f0dda 100644
--- a/var/spack/repos/builtin/packages/py-uncertainties/package.py
+++ b/var/spack/repos/builtin/packages/py-uncertainties/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyUncertainties(PythonPackage):
"""
homepage = "https://uncertainties-python-package.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/u/uncertainties/uncertainties-3.1.4.tar.gz"
+ pypi = "uncertainties/uncertainties-3.1.4.tar.gz"
version('3.1.4', sha256='63548a94899f2a51eeb89b640f6ac311f481a8016b37dce157186e44619bc968')
diff --git a/var/spack/repos/builtin/packages/py-unicycler/package.py b/var/spack/repos/builtin/packages/py-unicycler/package.py
index 441f66289a..6d038a858d 100644
--- a/var/spack/repos/builtin/packages/py-unicycler/package.py
+++ b/var/spack/repos/builtin/packages/py-unicycler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-unidecode/package.py b/var/spack/repos/builtin/packages/py-unidecode/package.py
index c5acb2dc4c..842eb2b106 100644
--- a/var/spack/repos/builtin/packages/py-unidecode/package.py
+++ b/var/spack/repos/builtin/packages/py-unidecode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyUnidecode(PythonPackage):
"""ASCII transliterations of Unicode text"""
- homepage = "https://pypi.org/project/Unidecode"
- url = "https://pypi.io/packages/source/u/unidecode/Unidecode-1.1.1.tar.gz"
+ pypi = "unidecode/Unidecode-1.1.1.tar.gz"
version('1.1.1', sha256='2b6aab710c2a1647e928e36d69c21e76b453cd455f4e2621000e54b2a9b8cce8')
version('0.04.21', sha256='280a6ab88e1f2eb5af79edff450021a0d3f0448952847cd79677e55e58bad051')
diff --git a/var/spack/repos/builtin/packages/py-unittest2/package.py b/var/spack/repos/builtin/packages/py-unittest2/package.py
index 1838843874..2510d3739b 100644
--- a/var/spack/repos/builtin/packages/py-unittest2/package.py
+++ b/var/spack/repos/builtin/packages/py-unittest2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ class PyUnittest2(PythonPackage):
"""unittest2 is a backport of the new features added to the unittest
testing framework in Python 2.7 and onwards."""
- homepage = "https://pypi.python.org/pypi/unittest2"
- url = "https://pypi.io/packages/source/u/unittest2/unittest2-1.1.0.tar.gz"
+ pypi = "unittest2/unittest2-1.1.0.tar.gz"
version('1.1.0', sha256='22882a0e418c284e1f718a822b3b022944d53d2d908e1690b319a9d3eb2c0579')
diff --git a/var/spack/repos/builtin/packages/py-unittest2py3k/package.py b/var/spack/repos/builtin/packages/py-unittest2py3k/package.py
index bf20186afd..3dc23c5941 100644
--- a/var/spack/repos/builtin/packages/py-unittest2py3k/package.py
+++ b/var/spack/repos/builtin/packages/py-unittest2py3k/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,7 @@ class PyUnittest2py3k(PythonPackage):
testing framework in Python 2.7 and 3.2. This is a Python 3 compatible
version of unittest2."""
- homepage = "https://pypi.python.org/pypi/unittest2py3k"
- url = "https://pypi.io/packages/source/u/unittest2py3k/unittest2py3k-0.5.1.tar.gz"
+ pypi = "unittest2py3k/unittest2py3k-0.5.1.tar.gz"
version('0.5.1', sha256='78249c5f1ac508a34d9d131d43a89d77bf154186f3ea5f7a6b993d3f3535d403')
diff --git a/var/spack/repos/builtin/packages/py-unshare/package.py b/var/spack/repos/builtin/packages/py-unshare/package.py
new file mode 100644
index 0000000000..03a56e53d2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-unshare/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyUnshare(PythonPackage):
+ """Python extension for Linux kernel's unshare syscall."""
+
+ homepage = "https://github.com/shubham1172/unshare"
+ pypi = "unshare/unshare-0.22.tar.gz"
+
+ version('0.22', sha256='d521d72cca6e876f22cbd5ff5eb51f1beef75e8f9c53b599b55fa05fba1dd3a6')
+
+ depends_on('py-setuptools', type='build')
+
+ conflicts('platform=darwin', msg='unshare is linux-only')
diff --git a/var/spack/repos/builtin/packages/py-update-checker/package.py b/var/spack/repos/builtin/packages/py-update-checker/package.py
index a1fbc7f368..2e203cc860 100644
--- a/var/spack/repos/builtin/packages/py-update-checker/package.py
+++ b/var/spack/repos/builtin/packages/py-update-checker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,12 @@ class PyUpdateChecker(PythonPackage):
"""A python module that will check for package updates."""
homepage = "https://github.com/bboe/update_checker"
- url = "https://pypi.io/packages/source/u/update_checker/update_checker-0.18.0.tar.gz"
+ pypi = "update_checker/update_checker-0.18.0.tar.gz"
version('0.18.0', sha256='6a2d45bb4ac585884a6b03f9eade9161cedd9e8111545141e9aa9058932acb13')
version('0.17', sha256='2def8db7f63bd45c7d19df5df570f3f3dfeb1a1f050869d7036529295db10e62')
depends_on('py-setuptools', type='build')
- depends_on('py-pytest@2.7.3:', type='test')
depends_on('python@3.6:', type=('build', 'run'), when='@0.18.0:')
depends_on('python@2.7:2.8,3.3:', type=('build', 'run'), when='@0.17')
depends_on('py-requests@2.3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-uproot/package.py b/var/spack/repos/builtin/packages/py-uproot/package.py
new file mode 100644
index 0000000000..4cf493f500
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-uproot/package.py
@@ -0,0 +1,48 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyUproot(PythonPackage):
+ """ROOT I/O in pure Python and NumPy.
+
+ Uproot is a reader and a writer of the ROOT file format using only Python
+ and Numpy. Unlike the standard C++ ROOT implementation, Uproot is only an
+ I/O library, primarily intended to stream data into machine learning
+ libraries in Python. Unlike PyROOT and root_numpy, Uproot does not depend
+ on C++ ROOT. Instead, it uses Numpy to cast blocks of data from the ROOT
+ file as Numpy arrays."""
+
+ homepage = "https://github.com/scikit-hep/uproot4"
+ pypi = "uproot/uproot-4.0.6.tar.gz"
+
+ maintainers = ['vvolkl']
+
+ tags = ['hep']
+
+ version('4.0.7', sha256='7adb688601fda1e9ab8eeb9a9de681f645827dac0943c6180cf85f03f73fb789')
+ version('4.0.6', sha256='1bea2ccc899c6959fb2af69d7e5d1e2df210caab30d3510e26f3fc07c143c37e')
+
+ variant('xrootd', default=True,
+ description='Build with xrootd support ')
+ variant('lz4', default=True,
+ description='Build with support for reading '
+ 'lz4-compressed rootfiles ')
+
+ variant('zstd', default=True,
+ description='Build with support for reading '
+ 'zstd-compressed rootfiles ')
+
+ depends_on('python@2.6:2.999,3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+
+ depends_on('xrootd', when="+xrootd")
+
+ depends_on('lz4', when="+lz4")
+ depends_on('xxhash', when="+lz4")
+
+ depends_on('zstd', when="+zstd")
diff --git a/var/spack/repos/builtin/packages/py-uproot3-methods/package.py b/var/spack/repos/builtin/packages/py-uproot3-methods/package.py
new file mode 100644
index 0000000000..b7640cb15d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-uproot3-methods/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyUproot3Methods(PythonPackage):
+ """Pythonic mix-ins for ROOT classes.
+
+ This package is typically used as a dependency for uproot 3.x, to define
+ methods on the classes that are automatically generated from ROOT files.
+ This includes histograms (TH*) and physics objects like TLorentzVectors.
+ The reason it's a separate library is so that we can add physics-specific
+ functionality on a shorter timescale than we can update Uproot 3 itself,
+ which is purely an I/O package."""
+
+ homepage = "https://github.com/scikit-hep/uproot3-methods"
+ pypi = "uproot3-methods/uproot3-methods-0.10.1.tar.gz"
+
+ version('0.10.1', sha256='dd68f90be1ea276360b96369836849df29045f7fe4e534f9ac21ea00798ee358')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.13.1:', type=('build', 'run'))
+ depends_on('py-awkward0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-uproot3/package.py b/var/spack/repos/builtin/packages/py-uproot3/package.py
new file mode 100644
index 0000000000..656c2cd305
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-uproot3/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyUproot3(PythonPackage):
+ """ROOT I/O in pure Python and Numpy.
+
+ uproot is a reader and a writer of the ROOT file format using only Python
+ and Numpy. Unlike the standard C++ ROOT implementation, uproot is only an
+ I/O library, primarily intended to stream data into machine learning
+ libraries in Python. Unlike PyROOT and root_numpy, uproot does not depend
+ on C++ ROOT. Instead, it uses Numpy to cast blocks of data from the ROOT
+ file as Numpy arrays."""
+
+ homepage = "https://github.com/scikit-hep/uproot3"
+ pypi = "uproot3/uproot3-3.14.4.tar.gz"
+
+ version('3.14.4', sha256='4396746ba5ef9071bb0a9da53294e4613a7f4548218940f86496e79d682d20eb')
+
+ depends_on('python@2.7:2.9,3.5:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pytest-runner', type='build')
+ depends_on('py-numpy@1.13.1:', type=('build', 'run'))
+ depends_on('py-awkward0', type=('build', 'run'))
+ depends_on('py-uproot3-methods', type=('build', 'run'))
+ depends_on('py-cachetools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-uproot4/package.py b/var/spack/repos/builtin/packages/py-uproot4/package.py
index 4befa0ee76..e7d6610b3f 100644
--- a/var/spack/repos/builtin/packages/py-uproot4/package.py
+++ b/var/spack/repos/builtin/packages/py-uproot4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class PyUproot4(PythonPackage):
- """ROOT I/O in pure Python and NumPy."""
+ """DEPRECATED! This package was renamed to py-uproot.
+
+ ROOT I/O in pure Python and NumPy."""
homepage = "https://uproot4.readthedocs.io"
git = "https://github.com/scikit-hep/uproot4"
@@ -15,8 +17,18 @@ class PyUproot4(PythonPackage):
maintainers = ['vvolkl']
- version('master', branch='master')
- version('0.0.27', sha256='de87555937332998b476f3e310392962bc983bddc008ed2b3c07a25c0379c4c9')
+ tags = ['hep']
+
+ version('master', branch='master', deprecated=True)
+ version('4.0.2',
+ sha256='8145af29788cbe6bf0ee279a7f176159f3eee801641ead4ad6e627f8c4dff0a9',
+ deprecated=True)
+ version('0.1.2',
+ sha256='b32dbffadc87bc5707ee0093964d2ce4a5ccfd521b17bbf10732afc25b820d82',
+ deprecated=True)
+ version('0.0.27',
+ sha256='de87555937332998b476f3e310392962bc983bddc008ed2b3c07a25c0379c4c9',
+ deprecated=True)
variant('xrootd', default=True,
description='Build with xrootd support ')
diff --git a/var/spack/repos/builtin/packages/py-uritemplate/package.py b/var/spack/repos/builtin/packages/py-uritemplate/package.py
index 9b901e6a2f..1a4e762765 100644
--- a/var/spack/repos/builtin/packages/py-uritemplate/package.py
+++ b/var/spack/repos/builtin/packages/py-uritemplate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyUritemplate(PythonPackage):
"""Simple python library to deal with URI Templates."""
homepage = "https://uritemplate.readthedocs.org/"
- url = "https://pypi.io/packages/source/u/uritemplate/uritemplate-3.0.0.tar.gz"
+ pypi = "uritemplate/uritemplate-3.0.0.tar.gz"
version('3.0.0', sha256='c02643cebe23fc8adb5e6becffe201185bf06c40bda5c0b4028a93f1527d011d')
diff --git a/var/spack/repos/builtin/packages/py-urllib3/package.py b/var/spack/repos/builtin/packages/py-urllib3/package.py
index cbe4577ca4..233e1a65ee 100644
--- a/var/spack/repos/builtin/packages/py-urllib3/package.py
+++ b/var/spack/repos/builtin/packages/py-urllib3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyUrllib3(PythonPackage):
more."""
homepage = "https://urllib3.readthedocs.io/"
- url = "https://pypi.io/packages/source/u/urllib3/urllib3-1.25.6.tar.gz"
+ pypi = "urllib3/urllib3-1.25.6.tar.gz"
version('1.25.6', sha256='9a107b99a5393caf59c7aa3c1249c16e6879447533d0887f4336dde834c7be86')
version('1.25.3', sha256='dbe59173209418ae49d485b87d1681aefa36252ee85884c31346debd19463232')
@@ -21,9 +21,6 @@ class PyUrllib3(PythonPackage):
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-pytest', type='test')
- depends_on('py-mock', type='test')
- depends_on('py-tornado', type='test')
variant('secure', default=False, description='Add SSL/TLS support')
depends_on('py-pyopenssl@0.14:', when='+secure')
diff --git a/var/spack/repos/builtin/packages/py-urwid/package.py b/var/spack/repos/builtin/packages/py-urwid/package.py
index bf606f81b7..b7dfb6ae42 100644
--- a/var/spack/repos/builtin/packages/py-urwid/package.py
+++ b/var/spack/repos/builtin/packages/py-urwid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyUrwid(PythonPackage):
"""A full-featured console UI library"""
homepage = "http://urwid.org/"
- url = "https://pypi.io/packages/source/u/urwid/urwid-1.3.0.tar.gz"
+ pypi = "urwid/urwid-1.3.0.tar.gz"
version('1.3.0', sha256='29f04fad3bf0a79c5491f7ebec2d50fa086e9d16359896c9204c6a92bc07aba2')
diff --git a/var/spack/repos/builtin/packages/py-us/package.py b/var/spack/repos/builtin/packages/py-us/package.py
index 81ea11e9d8..5a1a33d75c 100644
--- a/var/spack/repos/builtin/packages/py-us/package.py
+++ b/var/spack/repos/builtin/packages/py-us/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,7 @@ from spack import *
class PyUs(PythonPackage):
"""US state meta information and other fun stuff."""
- homepage = "https://pypi.org/project/us/"
- url = "https://pypi.io/packages/source/u/us/us-1.0.0.tar.gz"
+ pypi = "us/us-1.0.0.tar.gz"
version('1.0.0', sha256='09dc9ba763e2e4399e6a042104f3e415a7de6bfa4df6f557b4f19e3ba9a22fda')
diff --git a/var/spack/repos/builtin/packages/py-usgs/package.py b/var/spack/repos/builtin/packages/py-usgs/package.py
index 69f2b97056..608e381547 100644
--- a/var/spack/repos/builtin/packages/py-usgs/package.py
+++ b/var/spack/repos/builtin/packages/py-usgs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,13 @@ class PyUsgs(PythonPackage):
"""Client library for interfacing with USGS datasets"""
homepage = "https://github.com/kapadia/usgs"
- url = "https://pypi.io/packages/source/u/usgs/usgs-0.2.7.tar.gz"
+ pypi = "usgs/usgs-0.2.7.tar.gz"
maintainers = ['adamjstewart']
version('0.2.7', sha256='484e569ea1baf9574e11ccf15219957364690dcf06ee3d09afef030df944e79b')
depends_on('py-setuptools', type='build')
- depends_on('py-mock', type='test')
- depends_on('py-pytest@2.8.7', type='test')
depends_on('py-click@4.0:', type=('build', 'run'))
depends_on('py-requests@2.7.0:', type=('build', 'run'))
depends_on('py-requests-futures@0.9.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-utils/package.py b/var/spack/repos/builtin/packages/py-utils/package.py
index e5a6c46989..4a95b7583c 100644
--- a/var/spack/repos/builtin/packages/py-utils/package.py
+++ b/var/spack/repos/builtin/packages/py-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-uvloop/package.py b/var/spack/repos/builtin/packages/py-uvloop/package.py
index 52a7709640..cb64e3df01 100644
--- a/var/spack/repos/builtin/packages/py-uvloop/package.py
+++ b/var/spack/repos/builtin/packages/py-uvloop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyUvloop(PythonPackage):
"""uvloop is a fast, drop-in replacement of the built-in asyncio event"""
homepage = "http://github.com/MagicStack/uvloop"
- url = "https://pypi.io/packages/source/u/uvloop/uvloop-0.14.0.tar.gz"
+ pypi = "uvloop/uvloop-0.14.0.tar.gz"
version('0.14.0', sha256='123ac9c0c7dd71464f58f1b4ee0bbd81285d96cdda8bc3519281b8973e3a461e')
diff --git a/var/spack/repos/builtin/packages/py-uvw/package.py b/var/spack/repos/builtin/packages/py-uvw/package.py
index 0a87855fab..691277d3ee 100644
--- a/var/spack/repos/builtin/packages/py-uvw/package.py
+++ b/var/spack/repos/builtin/packages/py-uvw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyUvw(PythonPackage):
"""
homepage = "https://github.com/prs513rosewood/uvw"
- url = "https://pypi.io/packages/source/u/uvw/uvw-0.3.1.tar.gz"
+ pypi = "uvw/uvw-0.3.1.tar.gz"
maintainers = ['prs513rosewood']
diff --git a/var/spack/repos/builtin/packages/py-uwsgi/package.py b/var/spack/repos/builtin/packages/py-uwsgi/package.py
index fdc990d48d..759fd9c49d 100644
--- a/var/spack/repos/builtin/packages/py-uwsgi/package.py
+++ b/var/spack/repos/builtin/packages/py-uwsgi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyUwsgi(PythonPackage):
"""Web Application framework for low overhead web services"""
homepage = "https://github.com/unbit/uwsgi/"
- url = "https://pypi.io/packages/source/u/uwsgi/uwsgi-2.0.18.tar.gz"
+ pypi = "uwsgi/uwsgi-2.0.18.tar.gz"
version('2.0.18', sha256='4972ac538800fb2d421027f49b4a1869b66048839507ccf0aa2fda792d99f583')
diff --git a/var/spack/repos/builtin/packages/py-vcf-kit/package.py b/var/spack/repos/builtin/packages/py-vcf-kit/package.py
index f3f4b0302b..6875ce7d6a 100644
--- a/var/spack/repos/builtin/packages/py-vcf-kit/package.py
+++ b/var/spack/repos/builtin/packages/py-vcf-kit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-vcstool/package.py b/var/spack/repos/builtin/packages/py-vcstool/package.py
new file mode 100644
index 0000000000..b0e733d70c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-vcstool/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyVcstool(PythonPackage):
+ """vcstool enables batch commands on multiple different vcs repositories.
+
+ Currently it supports git, hg, svn and bzr."""
+
+ homepage = "https://github.com/dirk-thomas/vcstool"
+ pypi = "vcstool/vcstool-0.2.15.tar.gz"
+
+ version('0.2.15', sha256='b1fce6fcef7b117b245a72dc8658a128635749d01dc7e9d1316490f89f9c2fde')
+
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-argparse', when='^python@:2.6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-vcstools/package.py b/var/spack/repos/builtin/packages/py-vcstools/package.py
new file mode 100644
index 0000000000..691e23fb30
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-vcstools/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyVcstools(PythonPackage):
+ """VCS/SCM source control library for svn, git, hg, and bzr."""
+
+ homepage = "https://wiki.ros.org/vcstools"
+ pypi = "vcstools/vcstools-0.1.42.tar.gz"
+
+ version('0.1.42', sha256='9e48d8ed8b0fdda739af56e05bf10da1a509cb7d4950a19c73264c770802777a')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-python-dateutil', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-vcversioner/package.py b/var/spack/repos/builtin/packages/py-vcversioner/package.py
index 7feda4a213..fc9000831e 100644
--- a/var/spack/repos/builtin/packages/py-vcversioner/package.py
+++ b/var/spack/repos/builtin/packages/py-vcversioner/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyVcversioner(PythonPackage):
"""Vcversioner: Take version numbers from version control."""
homepage = "https://github.com/habnabit/vcversioner"
- url = "https://pypi.io/packages/source/v/vcversioner/vcversioner-2.16.0.0.tar.gz"
+ pypi = "vcversioner/vcversioner-2.16.0.0.tar.gz"
version('2.16.0.0', sha256='dae60c17a479781f44a4010701833f1829140b1eeccd258762a74974aa06e19b')
diff --git a/var/spack/repos/builtin/packages/py-vermin/package.py b/var/spack/repos/builtin/packages/py-vermin/package.py
index bff9e0fc57..4c5e14a63d 100644
--- a/var/spack/repos/builtin/packages/py-vermin/package.py
+++ b/var/spack/repos/builtin/packages/py-vermin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,11 +8,13 @@ class PyVermin(PythonPackage):
"""Concurrently detect the minimum Python versions needed to run code."""
homepage = "https://github.com/netromdk/vermin"
- url = "https://github.com/netromdk/vermin/archive/v1.0.3.tar.gz"
+ url = "https://github.com/netromdk/vermin/archive/v1.2.0.tar.gz"
maintainers = ['netromdk']
- import_modules = ['vermin']
+ version('1.2.0', sha256='a3ab6dc6608b859f301b9a77d5cc0d03335aae10c49d47a91b82be5be48c4f1f')
+ version('1.1.1', sha256='d13b2281ba16c9d5b0913646483771789552230a9ed625e2cd92c5a112e4ae80')
+ version('1.1.0', sha256='62d9f1b6694f50c22343cead2ddb6e2b007d24243fb583f61ceed7540fbe660b')
version('1.0.3', sha256='1503be05b55cacde1278a1fe55304d8ee889ddef8ba16e120ac6686259bec95c')
version('1.0.2', sha256='e999d5f5455e1116b366cd1dcc6fecd254c7ae3606549a61bc044216f9bb5b55')
version('1.0.1', sha256='c06183ba653b9d5f6687a6686da8565fb127fab035f9127a5acb172b7c445079')
@@ -24,5 +26,7 @@ class PyVermin(PythonPackage):
depends_on('python@2.7:', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
- def test(self):
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def build_test(self):
make('test')
diff --git a/var/spack/repos/builtin/packages/py-versioneer/package.py b/var/spack/repos/builtin/packages/py-versioneer/package.py
index d98ec6524c..c35990e4ea 100644
--- a/var/spack/repos/builtin/packages/py-versioneer/package.py
+++ b/var/spack/repos/builtin/packages/py-versioneer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-vine/package.py b/var/spack/repos/builtin/packages/py-vine/package.py
index 415276611c..ed2da70383 100644
--- a/var/spack/repos/builtin/packages/py-vine/package.py
+++ b/var/spack/repos/builtin/packages/py-vine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyVine(PythonPackage):
"""Promises, promises, promises."""
- homepage = "https://pypi.org/project/vine/"
- url = "https://pypi.io/packages/source/v/vine/vine-1.2.0.tar.gz"
+ pypi = "vine/vine-1.2.0.tar.gz"
version('5.0.0', sha256='7d3b1624a953da82ef63462013bbd271d3eb75751489f9807598e8f340bd637e')
version('1.3.0', sha256='133ee6d7a9016f177ddeaf191c1f58421a1dcc6ee9a42c58b34bed40e1d2cd87')
diff --git a/var/spack/repos/builtin/packages/py-virtualenv-clone/package.py b/var/spack/repos/builtin/packages/py-virtualenv-clone/package.py
index 287a4152dc..422c6489c8 100644
--- a/var/spack/repos/builtin/packages/py-virtualenv-clone/package.py
+++ b/var/spack/repos/builtin/packages/py-virtualenv-clone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyVirtualenvClone(PythonPackage):
"""A script for cloning a non-relocatable virtualenv."""
homepage = "https://github.com/edwardgeorge/virtualenv-clone"
- url = "https://pypi.io/packages/source/v/virtualenv-clone/virtualenv-clone-0.2.6.tar.gz"
+ pypi = "virtualenv-clone/virtualenv-clone-0.2.6.tar.gz"
version('0.2.6', sha256='6b3be5cab59e455f08c9eda573d23006b7d6fb41fae974ddaa2b275c93cc4405')
diff --git a/var/spack/repos/builtin/packages/py-virtualenv/package.py b/var/spack/repos/builtin/packages/py-virtualenv/package.py
index 3a1c593023..6098c804fe 100644
--- a/var/spack/repos/builtin/packages/py-virtualenv/package.py
+++ b/var/spack/repos/builtin/packages/py-virtualenv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyVirtualenv(PythonPackage):
"""virtualenv is a tool to create isolated Python environments."""
homepage = "https://virtualenv.pypa.io/"
- url = "https://pypi.io/packages/source/v/virtualenv/virtualenv-16.7.6.tar.gz"
+ pypi = "virtualenv/virtualenv-16.7.6.tar.gz"
version('16.7.6', sha256='5d370508bf32e522d79096e8cbea3499d47e624ac7e11e9089f9397a0b3318df')
version('16.4.1', sha256='5a3ecdfbde67a4a3b3111301c4d64a5b71cf862c8c42958d30cf3253df1f29dd')
diff --git a/var/spack/repos/builtin/packages/py-virtualenvwrapper/package.py b/var/spack/repos/builtin/packages/py-virtualenvwrapper/package.py
index 235761f58a..61aab2c210 100644
--- a/var/spack/repos/builtin/packages/py-virtualenvwrapper/package.py
+++ b/var/spack/repos/builtin/packages/py-virtualenvwrapper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyVirtualenvwrapper(PythonPackage):
without introducing conflicts in their dependencies."""
homepage = "https://bitbucket.org/virtualenvwrapper/virtualenvwrapper.git"
- url = "https://pypi.io/packages/source/v/virtualenvwrapper/virtualenvwrapper-4.8.2.tar.gz"
+ pypi = "virtualenvwrapper/virtualenvwrapper-4.8.2.tar.gz"
version('4.8.2', sha256='18d8e4c500c4c4ee794f704e050cf2bbb492537532a4521d1047e7dd1ee4e374')
diff --git a/var/spack/repos/builtin/packages/py-visdom/package.py b/var/spack/repos/builtin/packages/py-visdom/package.py
index b6bd808346..3a24e7f971 100644
--- a/var/spack/repos/builtin/packages/py-visdom/package.py
+++ b/var/spack/repos/builtin/packages/py-visdom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyVisdom(PythonPackage):
experimentation."""
homepage = "https://github.com/facebookresearch/visdom"
- url = "https://pypi.io/packages/source/v/visdom/visdom-0.1.8.9.tar.gz"
+ pypi = "visdom/visdom-0.1.8.9.tar.gz"
version('0.1.8.9', sha256='c73ad23723c24a48156899f78dd76bd4538eba3edf9120b6c65a9528fa677126')
diff --git a/var/spack/repos/builtin/packages/py-voluptuous/package.py b/var/spack/repos/builtin/packages/py-voluptuous/package.py
index 1d497d8ea2..d78bb37699 100644
--- a/var/spack/repos/builtin/packages/py-voluptuous/package.py
+++ b/var/spack/repos/builtin/packages/py-voluptuous/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,7 +9,7 @@ from spack import *
class PyVoluptuous(PythonPackage):
"""Voluptous, despite the name, is a Python data validation library."""
homepage = "https://github.com/alecthomas/voluptuous"
- url = "https://pypi.io/packages/source/v/voluptuous/voluptuous-0.11.5.tar.gz"
+ pypi = "voluptuous/voluptuous-0.11.5.tar.gz"
version('0.11.7', sha256='2abc341dbc740c5e2302c7f9b8e2e243194fb4772585b991931cb5b22e9bf456')
version('0.11.6', sha256='d2ca99ae1d1ed0313e8965720d1d75a780fc7f312fea4e3dbbb56ccfe5a8306d')
diff --git a/var/spack/repos/builtin/packages/py-vsc-base/package.py b/var/spack/repos/builtin/packages/py-vsc-base/package.py
index 159eace26d..6778fbe048 100644
--- a/var/spack/repos/builtin/packages/py-vsc-base/package.py
+++ b/var/spack/repos/builtin/packages/py-vsc-base/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyVscBase(PythonPackage):
"""Common Python libraries tools created by HPC-UGent"""
homepage = 'https://github.com/hpcugent/vsc-base/'
- url = 'https://pypi.io/packages/source/v/vsc-base/vsc-base-2.5.8.tar.gz'
+ pypi = 'vsc-base/vsc-base-2.5.8.tar.gz'
version('2.5.8', sha256='7fcd300f842edf4baade7d0b7a3b462ca7dfb2a411a7532694a90127c6646ee2')
diff --git a/var/spack/repos/builtin/packages/py-vsc-install/package.py b/var/spack/repos/builtin/packages/py-vsc-install/package.py
index fb0e2135d5..a4155ee2d5 100644
--- a/var/spack/repos/builtin/packages/py-vsc-install/package.py
+++ b/var/spack/repos/builtin/packages/py-vsc-install/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,7 +12,7 @@ class PyVscInstall(PythonPackage):
"""
homepage = 'https://github.com/hpcugent/vsc-install/'
- url = 'https://pypi.io/packages/source/v/vsc-install/vsc-install-0.10.25.tar.gz'
+ pypi = 'vsc-install/vsc-install-0.10.25.tar.gz'
version('0.10.25', sha256='744fa52b45577251d94e9298ecb115afd295f2530eba64c524f469b5e283f19c')
diff --git a/var/spack/repos/builtin/packages/py-vsts-cd-manager/package.py b/var/spack/repos/builtin/packages/py-vsts-cd-manager/package.py
index 0e44620e69..5891351a76 100644
--- a/var/spack/repos/builtin/packages/py-vsts-cd-manager/package.py
+++ b/var/spack/repos/builtin/packages/py-vsts-cd-manager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyVstsCdManager(PythonPackage):
"""Python wrapper around some of the VSTS APIs."""
homepage = "https://github.com/microsoft/vsts-cd-manager"
- url = "https://pypi.io/packages/source/v/vsts-cd-manager/vsts-cd-manager-1.0.2.tar.gz"
+ pypi = "vsts-cd-manager/vsts-cd-manager-1.0.2.tar.gz"
version('1.0.2', sha256='0bb09059cd553e1c206e92ef324cb0dcf92334846d646c44c684f6256b86447b')
diff --git a/var/spack/repos/builtin/packages/py-vsts/package.py b/var/spack/repos/builtin/packages/py-vsts/package.py
index ed597e3cbd..75eb7ac9b6 100644
--- a/var/spack/repos/builtin/packages/py-vsts/package.py
+++ b/var/spack/repos/builtin/packages/py-vsts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ class PyVsts(PythonPackage):
"""Python wrapper around the VSTS APIs."""
homepage = "https://github.com/Microsoft/vsts-python-api"
- url = "https://pypi.io/packages/source/v/vsts/vsts-0.1.25.tar.gz"
+ pypi = "vsts/vsts-0.1.25.tar.gz"
version('0.1.25', sha256='da179160121f5b38be061dbff29cd2b60d5d029b2207102454d77a7114e64f97')
diff --git a/var/spack/repos/builtin/packages/py-walinuxagent/package.py b/var/spack/repos/builtin/packages/py-walinuxagent/package.py
index 8d4bf4cb9f..079dd8cb28 100644
--- a/var/spack/repos/builtin/packages/py-walinuxagent/package.py
+++ b/var/spack/repos/builtin/packages/py-walinuxagent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-wand/package.py b/var/spack/repos/builtin/packages/py-wand/package.py
index 17a5af30b3..ae1bf545a2 100644
--- a/var/spack/repos/builtin/packages/py-wand/package.py
+++ b/var/spack/repos/builtin/packages/py-wand/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyWand(PythonPackage):
"""
homepage = "http://docs.wand-py.org"
- url = "https://pypi.io/packages/source/W/Wand/Wand-0.5.6.tar.gz"
+ pypi = "Wand/Wand-0.5.6.tar.gz"
version('0.5.6', sha256='d06b59f36454024ce952488956319eb542d5dc65f1e1b00fead71df94dbfcf88')
version('0.4.2', sha256='a0ded99a9824ddd82617a4b449164e2c5c93853aaff96f9e0bab8b405d62ca7c')
@@ -24,7 +24,3 @@ class PyWand(PythonPackage):
depends_on('python@2.7:2.8,3.3:', type=('build', 'run'))
depends_on('py-sphinx@1:', type='build', when='+docs')
-
- depends_on('py-pytest@2.3.0:', type='test')
- depends_on('py-pytest-xdist@1.8:', type='test')
- depends_on('py-psutil@1.0.1:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-wandb/package.py b/var/spack/repos/builtin/packages/py-wandb/package.py
index 9c3348cca8..5dbb59999d 100644
--- a/var/spack/repos/builtin/packages/py-wandb/package.py
+++ b/var/spack/repos/builtin/packages/py-wandb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-warlock/package.py b/var/spack/repos/builtin/packages/py-warlock/package.py
index 60e36680e3..55177bd0ec 100644
--- a/var/spack/repos/builtin/packages/py-warlock/package.py
+++ b/var/spack/repos/builtin/packages/py-warlock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-warpx/package.py b/var/spack/repos/builtin/packages/py-warpx/package.py
new file mode 100644
index 0000000000..bdd92017a5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-warpx/package.py
@@ -0,0 +1,49 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyWarpx(PythonPackage):
+ """WarpX is an advanced electromagnetic Particle-In-Cell code. It supports
+ many features including Perfectly-Matched Layers (PML) and mesh refinement.
+ In addition, WarpX is a highly-parallel and highly-optimized code and
+ features hybrid OpenMP/MPI parallelization, advanced vectorization
+ techniques and load balancing capabilities.
+
+ These are the Python bindings of WarpX with PICMI input support.
+ See the C++ 'warpx' package for the WarpX application and library.
+ """
+
+ homepage = "https://ecp-warpx.github.io"
+ url = "https://github.com/ECP-WarpX/WarpX/archive/refs/tags/21.04.tar.gz"
+ git = "https://github.com/ECP-WarpX/WarpX.git"
+
+ maintainers = ['ax3l', 'dpgrote', 'RemiLehe']
+
+ version('develop', branch='development')
+ version('21.05', sha256='f835f0ae6c5702550d23191aa0bb0722f981abb1460410e3d8952bc3d945a9fc')
+ version('21.04', sha256='51d2d8b4542eada96216e8b128c0545c4b7527addc2038efebe586c32c4020a0')
+
+ variant('mpi', default=True,
+ description='Enable MPI support')
+
+ for v in ['21.05', '21.04', 'develop']:
+ depends_on('warpx@{0}'.format(v),
+ when='@{0}'.format(v),
+ type=['build', 'link'])
+
+ depends_on('python@3.6:', type=('build', 'run'))
+ depends_on('py-numpy@1.15.0:', type=('build', 'run'))
+ depends_on('py-mpi4py@2.0.0:', type=('build', 'run'), when='+mpi')
+ depends_on('py-periodictable@1.5:', type=('build', 'run'))
+ depends_on('py-picmistandard', type=('build', 'run'))
+ depends_on('py-setuptools@38.6:', type='build')
+ depends_on('py-wheel', type='build')
+ depends_on('warpx +lib ~mpi +shared', type=('build', 'link'), when='~mpi')
+ depends_on('warpx +lib +mpi +shared', type=('build', 'link'), when='+mpi')
+
+ def setup_build_environment(self, env):
+ env.set('PYWARPX_LIB_DIR', self.spec['warpx'].prefix.lib)
diff --git a/var/spack/repos/builtin/packages/py-wasabi/package.py b/var/spack/repos/builtin/packages/py-wasabi/package.py
index c03d14f3e1..9629741e35 100644
--- a/var/spack/repos/builtin/packages/py-wasabi/package.py
+++ b/var/spack/repos/builtin/packages/py-wasabi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,9 +8,8 @@ class PyWasabi(PythonPackage):
"""wasabi: A lightweight console printing and formatting toolkit."""
homepage = "https://ines.io/"
- url = "https://pypi.io/packages/source/w/wasabi/wasabi-0.6.0.tar.gz"
+ pypi = "wasabi/wasabi-0.6.0.tar.gz"
version('0.6.0', sha256='b8dd3e963cd693fde1eb6bfbecf51790171aa3534fa299faf35cf269f2fd6063')
depends_on('py-setuptools', type='build')
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-watchdog/package.py b/var/spack/repos/builtin/packages/py-watchdog/package.py
index c4f5c5b233..cbeaf68879 100644
--- a/var/spack/repos/builtin/packages/py-watchdog/package.py
+++ b/var/spack/repos/builtin/packages/py-watchdog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-wcsaxes/package.py b/var/spack/repos/builtin/packages/py-wcsaxes/package.py
index eff494c3c6..fe73bb354b 100644
--- a/var/spack/repos/builtin/packages/py-wcsaxes/package.py
+++ b/var/spack/repos/builtin/packages/py-wcsaxes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-wcwidth/package.py b/var/spack/repos/builtin/packages/py-wcwidth/package.py
index 150ad6793c..67c05b27c4 100644
--- a/var/spack/repos/builtin/packages/py-wcwidth/package.py
+++ b/var/spack/repos/builtin/packages/py-wcwidth/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyWcwidth(PythonPackage):
"""Measures number of Terminal column cells of wide-character codes"""
- homepage = "https://pypi.python.org/pypi/wcwidth"
- url = "https://pypi.io/packages/source/w/wcwidth/wcwidth-0.1.7.tar.gz"
+ pypi = "wcwidth/wcwidth-0.1.7.tar.gz"
version('0.1.7', sha256='3df37372226d6e63e1b1e1eda15c594bca98a22d33a23832a90998faa96bc65e')
diff --git a/var/spack/repos/builtin/packages/py-weave/package.py b/var/spack/repos/builtin/packages/py-weave/package.py
index bb45340d84..9c448f8119 100644
--- a/var/spack/repos/builtin/packages/py-weave/package.py
+++ b/var/spack/repos/builtin/packages/py-weave/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,7 +15,7 @@ class PyWeave(PythonPackage):
``scipy.weave``. For new code, users are recommended to use Cython."""
homepage = "https://www.github.com/scipy/weave"
- url = "https://pypi.io/packages/source/w/weave/weave-0.17.0.tar.gz"
+ pypi = "weave/weave-0.17.0.tar.gz"
version('0.17.0', sha256='2703f3ae6d23ad47b5f09b6bcb7affd0fb587120a0c973e7be40ef24de709998')
diff --git a/var/spack/repos/builtin/packages/py-webencodings/package.py b/var/spack/repos/builtin/packages/py-webencodings/package.py
index fd65a0655d..328d3dd031 100644
--- a/var/spack/repos/builtin/packages/py-webencodings/package.py
+++ b/var/spack/repos/builtin/packages/py-webencodings/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyWebencodings(PythonPackage):
"""This is a Python implementation of the WHATWG Encoding standard."""
homepage = "https://github.com/gsnedders/python-webencodings"
- url = "https://pypi.io/packages/source/w/webencodings/webencodings-0.5.1.tar.gz"
+ pypi = "webencodings/webencodings-0.5.1.tar.gz"
version('0.5.1', sha256='b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923')
diff --git a/var/spack/repos/builtin/packages/py-webkit-server/package.py b/var/spack/repos/builtin/packages/py-webkit-server/package.py
index c3aebca85e..985c6d511d 100644
--- a/var/spack/repos/builtin/packages/py-webkit-server/package.py
+++ b/var/spack/repos/builtin/packages/py-webkit-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyWebkitServer(PythonPackage):
"""a Webkit-based, headless web client"""
homepage = "https://github.com/niklasb/webkit-server"
- url = "https://pypi.io/packages/source/w/webkit-server/webkit-server-1.0.tar.gz"
+ pypi = "webkit-server/webkit-server-1.0.tar.gz"
git = "https://github.com/niklasb/webkit-server.git"
version('develop', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-weblogo/package.py b/var/spack/repos/builtin/packages/py-weblogo/package.py
index d48fb5b381..e988f2905a 100644
--- a/var/spack/repos/builtin/packages/py-weblogo/package.py
+++ b/var/spack/repos/builtin/packages/py-weblogo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyWeblogo(PythonPackage):
sequence logos as easy and painless as possible."""
homepage = "http://weblogo.threeplusone.com"
- url = "https://pypi.io/packages/source/w/weblogo/weblogo-3.6.0.tar.gz"
+ pypi = "weblogo/weblogo-3.6.0.tar.gz"
version('3.6.0', sha256='af5a9f065581f18d71bd7c22b160c1e443932f22cab992d439d3dc8757c80a85')
diff --git a/var/spack/repos/builtin/packages/py-webob/package.py b/var/spack/repos/builtin/packages/py-webob/package.py
new file mode 100644
index 0000000000..5c16b5ccb1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-webob/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyWebob(PythonPackage):
+ """WebOb provides objects for HTTP requests and responses."""
+
+ homepage = "https://webob.org/"
+ pypi = "WebOb/WebOb-1.8.7.tar.gz"
+
+ version('1.8.7', sha256='b64ef5141be559cfade448f044fa45c2260351edcb6a8ef6b7e00c7dcef0c323')
+
+ depends_on('python@2.7:2.8,3.3:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-websocket-client/package.py b/var/spack/repos/builtin/packages/py-websocket-client/package.py
index c55df5e899..3cdef8b4e9 100644
--- a/var/spack/repos/builtin/packages/py-websocket-client/package.py
+++ b/var/spack/repos/builtin/packages/py-websocket-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,10 +8,11 @@ class PyWebsocketClient(PythonPackage):
"""WebSocket client for Python. hybi13 is supported."""
homepage = "https://github.com/websocket-client/websocket-client.git"
- url = "https://pypi.io/packages/source/w/websocket_client/websocket_client-0.57.0.tar.gz"
+ pypi = "websocket_client/websocket_client-0.57.0.tar.gz"
version('0.57.0', sha256='d735b91d6d1692a6a181f2a8c9e0238e5f6373356f561bb9dc4c7af36f452010')
version('0.56.0', sha256='1fd5520878b68b84b5748bb30e592b10d0a91529d5383f74f4964e72b297fd3a')
+ version('0.48.0', sha256='18f1170e6a1b5463986739d9fd45c4308b0d025c1b2f9b88788d8f69e8a5eb4a')
depends_on('python@2.6:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-websockets/package.py b/var/spack/repos/builtin/packages/py-websockets/package.py
index 891678934c..4e592f4aea 100644
--- a/var/spack/repos/builtin/packages/py-websockets/package.py
+++ b/var/spack/repos/builtin/packages/py-websockets/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-werkzeug/package.py b/var/spack/repos/builtin/packages/py-werkzeug/package.py
index 876deeb445..8d4f3c0e84 100644
--- a/var/spack/repos/builtin/packages/py-werkzeug/package.py
+++ b/var/spack/repos/builtin/packages/py-werkzeug/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,15 +10,18 @@ class PyWerkzeug(PythonPackage):
"""The Swiss Army knife of Python web development"""
homepage = "http://werkzeug.pocoo.org"
- url = "https://pypi.io/packages/source/W/Werkzeug/Werkzeug-0.16.0.tar.gz"
+ pypi = "Werkzeug/Werkzeug-0.16.0.tar.gz"
version('0.16.0', sha256='7280924747b5733b246fe23972186c6b348f9ae29724135a6dfc1e53cea433e7')
+ version('0.15.6', sha256='0a24d43be6a7dce81bae05292356176d6c46d63e42a0dd3f9504b210a9cfaa43')
+ version('0.15.5', sha256='a13b74dd3c45f758d4ebdb224be8f1ab8ef58b3c0ffc1783a8c7d9f4f50227e6')
version('0.15.4', sha256='a0b915f0815982fb2a09161cb8f31708052d0951c3ba433ccc5e1aa276507ca6')
+ version('0.15.3', sha256='cfd1281b1748288e59762c0e174d64d8bcb2b70e7c57bc4a1203c8825af24ac3')
+ version('0.15.2', sha256='0a73e8bb2ff2feecfc5d56e6f458f5b99290ef34f565ffb2665801ff7de6af7a')
+ version('0.15.1', sha256='ca5c2dcd367d6c0df87185b9082929d255358f5391923269335782b213d52655')
+ version('0.15.0', sha256='590abe38f8be026d78457fe3b5200895b3543e58ac3fc1dd792c6333ea11af64')
version('0.11.15', sha256='455d7798ac263266dbd38d4841f7534dd35ca9c3da4a8df303f8488f38f3bcc0')
version('0.11.11', sha256='e72c46bc14405cba7a26bd2ce28df734471bc9016bc8b4cb69466c2c14c2f7e5')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('py-pytest', type='test')
- depends_on('py-hypothesis', type='test')
- depends_on('py-requests', type='test')
diff --git a/var/spack/repos/builtin/packages/py-wget/package.py b/var/spack/repos/builtin/packages/py-wget/package.py
new file mode 100644
index 0000000000..a3deacfadb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-wget/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyWget(PythonPackage):
+ """pure python download utility
+
+ Download the file for your platform. If you're not sure which to choose,
+ learn more about installing packages."""
+
+ homepage = "http://bitbucket.org/techtonik/python-wget/"
+ pypi = "wget/wget-3.2.zip"
+
+ version('3.2', sha256='35e630eca2aa50ce998b9b1a127bb26b30dfee573702782aa982f875e3f16061')
diff --git a/var/spack/repos/builtin/packages/py-whatshap/package.py b/var/spack/repos/builtin/packages/py-whatshap/package.py
index 62ff90ff82..68ac8b9df0 100644
--- a/var/spack/repos/builtin/packages/py-whatshap/package.py
+++ b/var/spack/repos/builtin/packages/py-whatshap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-wheel/package.py b/var/spack/repos/builtin/packages/py-wheel/package.py
index 846d315650..43822ece1d 100644
--- a/var/spack/repos/builtin/packages/py-wheel/package.py
+++ b/var/spack/repos/builtin/packages/py-wheel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,10 @@ class PyWheel(PythonPackage):
"""A built-package format for Python."""
homepage = "https://github.com/pypa/wheel"
- url = "https://pypi.io/packages/source/w/wheel/wheel-0.34.2.tar.gz"
+ pypi = "wheel/wheel-0.34.2.tar.gz"
+ version('0.36.2', sha256='e11eefd162658ea59a60a0f6c7d493a7190ea4b9a85e335b33489d9f17e0245e')
+ version('0.35.1', sha256='99a22d87add3f634ff917310a3d87e499f19e663413a52eb9232c447aa646c9f')
version('0.34.2', sha256='8788e9155fe14f54164c1b9eb0a319d98ef02c160725587ad60f14ddc57b6f96')
version('0.33.4', sha256='62fcfa03d45b5b722539ccbc07b190e4bfff4bb9e3a4d470dd9f6a0981002565')
version('0.33.1', sha256='66a8fd76f28977bb664b098372daef2b27f60dc4d1688cfab7b37a09448f0e9d')
@@ -25,5 +27,3 @@ class PyWheel(PythonPackage):
depends_on('py-setuptools@40.9.0:', when='@0.34.1:', type=('build', 'run'))
depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-setuptools-scm@3.4:', when='@0.34.0', type='build')
- depends_on('py-pytest@3.0.0:', type='test')
- depends_on('py-pytest-cov', type='test')
diff --git a/var/spack/repos/builtin/packages/py-whichcraft/package.py b/var/spack/repos/builtin/packages/py-whichcraft/package.py
index 24dec3f888..2456c4f871 100644
--- a/var/spack/repos/builtin/packages/py-whichcraft/package.py
+++ b/var/spack/repos/builtin/packages/py-whichcraft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-widgetsnbextension/package.py b/var/spack/repos/builtin/packages/py-widgetsnbextension/package.py
index 347641a8da..1650736439 100644
--- a/var/spack/repos/builtin/packages/py-widgetsnbextension/package.py
+++ b/var/spack/repos/builtin/packages/py-widgetsnbextension/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyWidgetsnbextension(PythonPackage):
"""IPython HTML widgets for Jupyter"""
- homepage = "https://pypi.python.org/pypi/widgetsnbextension"
- url = "https://pypi.io/packages/source/w/widgetsnbextension/widgetsnbextension-1.2.6.tar.gz"
+ pypi = "widgetsnbextension/widgetsnbextension-1.2.6.tar.gz"
version('3.5.1', sha256='079f87d87270bce047512400efd70238820751a11d2d8cb137a5a5bdbaf255c7')
version('3.4.2', sha256='fa618be8435447a017fd1bf2c7ae922d0428056cfc7449f7a8641edf76b48265')
diff --git a/var/spack/repos/builtin/packages/py-wincertstore/package.py b/var/spack/repos/builtin/packages/py-wincertstore/package.py
new file mode 100644
index 0000000000..fb2c2fbef1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-wincertstore/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyWincertstore(PythonPackage):
+ """wincertstore provides an interface to access Windows' CA and CRL certificates.
+ It uses ctypes and Windows's sytem cert store API through crypt32.dll."""
+
+ homepage = "https://bitbucket.org/tiran/wincertstore"
+ pypi = "wincertstore/wincertstore-0.2.zip"
+
+ version('0.2', sha256='780bd1557c9185c15d9f4221ea7f905cb20b93f7151ca8ccaed9714dce4b327a')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-word2number/package.py b/var/spack/repos/builtin/packages/py-word2number/package.py
new file mode 100644
index 0000000000..de80d9041f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-word2number/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class PyWord2number(PythonPackage):
+ """This is a Python module to convert number words (eg.
+ twenty one) to numeric digits (21). It works for positive
+ numbers upto the range of 999,999,999,999 (i.e.
+ billions)."""
+
+ homepage = "https://w2n.readthedocs.io"
+ pypi = "word2number/word2number-1.1.zip"
+
+ version('1.1', sha256='70e27a5d387f67b04c71fbb7621c05930b19bfd26efd6851e6e0f9969dcde7d0')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-workload-automation/package.py b/var/spack/repos/builtin/packages/py-workload-automation/package.py
index bc65e210ff..d6ed783527 100644
--- a/var/spack/repos/builtin/packages/py-workload-automation/package.py
+++ b/var/spack/repos/builtin/packages/py-workload-automation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-wradlib/package.py b/var/spack/repos/builtin/packages/py-wradlib/package.py
index 14ae8b347a..f5b9c0455c 100644
--- a/var/spack/repos/builtin/packages/py-wradlib/package.py
+++ b/var/spack/repos/builtin/packages/py-wradlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class PyWradlib(PythonPackage):
attenuation) and visualising the data."""
homepage = "https://docs.wradlib.org"
- url = "https://pypi.io/packages/source/w/wradlib/wradlib-1.5.0.tar.gz"
+ pypi = "wradlib/wradlib-1.5.0.tar.gz"
version('1.5.0', sha256='9bf0742d7235ea830e83c2269f6b5d1afd83d92696efce0a7bcdb0c4f6604784')
diff --git a/var/spack/repos/builtin/packages/py-wrapt/package.py b/var/spack/repos/builtin/packages/py-wrapt/package.py
index bc2a4ae804..6d2aec630e 100644
--- a/var/spack/repos/builtin/packages/py-wrapt/package.py
+++ b/var/spack/repos/builtin/packages/py-wrapt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class PyWrapt(PythonPackage):
"""Module for decorators, wrappers and monkey patching."""
homepage = "https://github.com/GrahamDumpleton/wrapt"
- url = "https://pypi.io/packages/source/w/wrapt/wrapt-1.11.2.tar.gz"
+ pypi = "wrapt/wrapt-1.11.2.tar.gz"
+ version('1.12.1', sha256='b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7')
version('1.11.2', sha256='565a021fd19419476b9362b05eeaa094178de64f8361e44468f9e9d7843901e1')
version('1.11.1', sha256='4aea003270831cceb8a90ff27c4031da6ead7ec1886023b80ce0dfe0adf61533')
version('1.10.10', sha256='42160c91b77f1bc64a955890038e02f2f72986c01d462d53cb6cb039b995cdd9')
diff --git a/var/spack/repos/builtin/packages/py-wstool/package.py b/var/spack/repos/builtin/packages/py-wstool/package.py
new file mode 100644
index 0000000000..9673e97495
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-wstool/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyWstool(PythonPackage):
+ """A tool for managing a workspace of multiple heterogenous SCM
+ repositories."""
+
+ homepage = "https://wiki.ros.org/wstool"
+ pypi = "wstool/wstool-0.1.17.tar.gz"
+
+ version('0.1.17', sha256='c79b4f110ef17004c24972d742d2c5f606b0f6b424295e7ed029a48e857de237')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-vcstools@0.1.38:', type=('build', 'run'))
+ depends_on('py-pyyaml', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-wub/package.py b/var/spack/repos/builtin/packages/py-wub/package.py
index 13e6309667..53681bc0d5 100644
--- a/var/spack/repos/builtin/packages/py-wub/package.py
+++ b/var/spack/repos/builtin/packages/py-wub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,13 +17,13 @@ class PyWub(PythonPackage):
version('0.4.0', sha256='1526aa392bccac71b872211c45f5b403ad3d55f5762e0ed34ff9086bc1dab6fd')
depends_on('py-six', type=('build', 'run'))
- depends_on('py-pytest', type=('build', 'run', 'test'))
- depends_on('py-pycmd', type=('build', 'run', 'test'))
+ depends_on('py-pytest', type=('build', 'run'))
+ depends_on('py-pycmd', type=('build', 'run'))
depends_on('py-biopython', type=('build', 'run'))
- depends_on('py-numpy', type=('build', 'run', 'test'))
+ depends_on('py-numpy', type=('build', 'run'))
depends_on('py-matplotlib', type=('build', 'run'))
depends_on('py-seaborn', type=('build', 'run'))
- depends_on('py-editdistance', type=('build', 'run', 'test'))
+ depends_on('py-editdistance', type=('build', 'run'))
depends_on('py-pandas@0.20.2:', type=('build', 'run'))
depends_on('py-pysam', type=('build', 'run'))
depends_on('py-tqdm', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-wxmplot/package.py b/var/spack/repos/builtin/packages/py-wxmplot/package.py
index 0d88748979..06962e1515 100644
--- a/var/spack/repos/builtin/packages/py-wxmplot/package.py
+++ b/var/spack/repos/builtin/packages/py-wxmplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,9 +10,7 @@ class PyWxmplot(PythonPackage):
"""wxPython plotting widgets using matplotlib."""
homepage = "https://newville.github.io/wxmplot/"
- url = "https://pypi.io/packages/source/w/wxmplot/wxmplot-0.9.38.tar.gz"
-
- import_modules = ['wxmplot']
+ pypi = "wxmplot/wxmplot-0.9.38.tar.gz"
version('0.9.38', sha256='82dc64abb42bdd03ec7067a3aa2a475001f2bc8e4772149bae47facf460c0081')
@@ -21,4 +19,3 @@ class PyWxmplot(PythonPackage):
depends_on('py-six@1.10:', type=('build', 'run'))
depends_on('py-matplotlib@2.0:', type=('build', 'run'))
depends_on('py-wxpython@4.0.3:', type=('build', 'run'))
- depends_on('py-pytest', type='test')
diff --git a/var/spack/repos/builtin/packages/py-wxpython/package.py b/var/spack/repos/builtin/packages/py-wxpython/package.py
index 0eef3935f0..c83bbe1801 100644
--- a/var/spack/repos/builtin/packages/py-wxpython/package.py
+++ b/var/spack/repos/builtin/packages/py-wxpython/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,19 +10,7 @@ class PyWxpython(PythonPackage):
"""Cross platform GUI toolkit for Python."""
homepage = "https://www.wxpython.org/"
- url = "https://pypi.io/packages/source/w/wxPython/wxPython-4.0.6.tar.gz"
-
- import_modules = [
- 'wx', 'wx.tools', 'wx.py', 'wx.lib', 'wx.lib.analogclock',
- 'wx.lib.floatcanvas', 'wx.lib.plot', 'wx.lib.mixins', 'wx.lib.gizmos',
- 'wx.lib.art', 'wx.lib.pdfviewer', 'wx.lib.colourchooser',
- 'wx.lib.masked', 'wx.lib.ogl', 'wx.lib.wxcairo', 'wx.lib.agw',
- 'wx.lib.pubsub', 'wx.lib.editor', 'wx.lib.analogclock.lib_setup',
- 'wx.lib.floatcanvas.Utilities', 'wx.lib.plot.examples',
- 'wx.lib.agw.aui', 'wx.lib.agw.ribbon', 'wx.lib.agw.persist',
- 'wx.lib.pubsub.core', 'wx.lib.pubsub.utils', 'wx.lib.pubsub.core.arg1',
- 'wx.lib.pubsub.core.kwargs'
- ]
+ pypi = "wxPython/wxPython-4.0.6.tar.gz"
version('4.0.6', sha256='35cc8ae9dd5246e2c9861bb796026bbcb9fb083e4d49650f776622171ecdab37')
diff --git a/var/spack/repos/builtin/packages/py-xarray/package.py b/var/spack/repos/builtin/packages/py-xarray/package.py
index 6615247e5c..ff2cfe88c0 100644
--- a/var/spack/repos/builtin/packages/py-xarray/package.py
+++ b/var/spack/repos/builtin/packages/py-xarray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,25 +10,51 @@ class PyXarray(PythonPackage):
"""N-D labeled arrays and datasets in Python"""
homepage = "https://github.com/pydata/xarray"
- url = "https://pypi.io/packages/source/x/xarray/xarray-0.9.1.tar.gz"
+ pypi = "xarray/xarray-0.9.1.tar.gz"
+ # 'xarray.tests' requires pytest
+ import_modules = [
+ 'xarray', 'xarray.core', 'xarray.plot', 'xarray.util',
+ 'xarray.backends', 'xarray.coding'
+ ]
+
+ version('0.17.0', sha256='9c2edad2a4e588f9117c666a4249920b9717fb75703b96998cf65fcd4f60551f')
+ version('0.16.2', sha256='38e8439d6c91bcd5b7c0fca349daf8e0643ac68850c987262d53526e9d7d01e4')
version('0.14.0', sha256='a8b93e1b0af27fa7de199a2d36933f1f5acc9854783646b0f1b37fed9b4da091')
version('0.13.0', sha256='80e5746ffdebb96b997dba0430ff02d98028ef3828e6db6106cbbd6d62e32825')
version('0.12.0', sha256='856fd062c55208a248ac3784cac8d3524b355585387043efc92a4188eede57f3')
version('0.11.0', sha256='636964baccfca0e5d69220ac4ecb948d561addc76f47704064dcbe399e03a818')
version('0.9.1', sha256='89772ed0e23f0e71c3fb8323746374999ecbe79c113e3fadc7ae6374e6dc0525')
+ variant('io', default=False, description='Build io backends')
+
depends_on('python@2.7:2.8,3.5:', when='@0.11:', type=('build', 'run'))
depends_on('python@3.5:', when='@0.12', type=('build', 'run'))
depends_on('python@3.5.3:', when='@0.13', type=('build', 'run'))
depends_on('python@3.6:', when='@0.14:', type=('build', 'run'))
+ depends_on('python@3.7:', when='@0.17:', type=('build', 'run'))
- depends_on('py-setuptools', type='build')
+ depends_on('py-setuptools', when='@:0.15', type='build')
+ depends_on('py-setuptools@38.4:', when='@0.16:', type=('build', 'run'))
+ depends_on('py-setuptools@40.4:', when='@0.17:', type=('build', 'run'))
+ depends_on('py-setuptools-scm', when='@0.15:', type='build')
depends_on('py-pandas@0.15.0:', when='@0.9.1', type=('build', 'run'))
depends_on('py-pandas@0.19.2:', when='@0.11:0.13', type=('build', 'run'))
- depends_on('py-pandas@0.24:', when='@0.14:', type=('build', 'run'))
+ depends_on('py-pandas@0.24:', when='@0.14.0', type=('build', 'run'))
+ depends_on('py-pandas@0.25:', when='@0.15:', type=('build', 'run'))
depends_on('py-numpy@1.7:', when='@0.9.1', type=('build', 'run'))
depends_on('py-numpy@1.12:', when='@0.11:0.13', type=('build', 'run'))
- depends_on('py-numpy@1.14:', when='@0.14:', type=('build', 'run'))
+ depends_on('py-numpy@1.14:', when='@0.14.0', type=('build', 'run'))
+ depends_on('py-numpy@1.15:', when='@0.15:', type=('build', 'run'))
+
+ depends_on('py-netcdf4', when='+io', type=('build', 'run'))
+ depends_on('py-h5netcdf', when='+io', type=('build', 'run'))
+ depends_on('py-scipy', when='+io', type=('build', 'run'))
+ depends_on('py-pydap', when='+io', type=('build', 'run'))
+ depends_on('py-zarr', when='+io', type=('build', 'run'))
+ depends_on('py-fsspec', when='+io', type=('build', 'run'))
+ depends_on('py-cftime', when='+io', type=('build', 'run'))
+ depends_on('py-rasterio', when='+io', type=('build', 'run'))
+ depends_on('py-cfgrib', when='+io', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-xattr/package.py b/var/spack/repos/builtin/packages/py-xattr/package.py
index 8375fa8c09..a40fd278d6 100644
--- a/var/spack/repos/builtin/packages/py-xattr/package.py
+++ b/var/spack/repos/builtin/packages/py-xattr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyXattr(PythonPackage):
"""
homepage = "http://pyxattr.k1024.org/"
- url = "https://pypi.io/packages/source/x/xattr/xattr-0.9.6.tar.gz"
+ pypi = "xattr/xattr-0.9.6.tar.gz"
git = "https://github.com/iustin/pyxattr.git"
version('master', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-xdot/package.py b/var/spack/repos/builtin/packages/py-xdot/package.py
index 684df310d9..12d448eeea 100644
--- a/var/spack/repos/builtin/packages/py-xdot/package.py
+++ b/var/spack/repos/builtin/packages/py-xdot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,12 @@ class PyXdot(PythonPackage):
dot language."""
homepage = "https://github.com/jrfonseca/xdot.py"
- url = "https://pypi.io/packages/source/x/xdot/xdot-1.0.tar.gz"
+ pypi = "xdot/xdot-1.0.tar.gz"
git = "https://github.com/jrfonseca/xdot.py.git"
+ maintainers = ['lee218llnl']
version('master', branch='master')
+ version('1.2', sha256='3df91e6c671869bd2a6b2a8883fa3476dbe2ba763bd2a7646cf848a9eba71b70')
version('1.0', sha256='7e067896d729af82f1fd0758e265f129944d469c30f550e3f15dbdb751cc42a1')
version('0.9', sha256='a33701664ecfefe7c7313a120a587e87334f3a566409bc451538fcde5edd6907')
@@ -28,6 +30,7 @@ class PyXdot(PythonPackage):
depends_on('atk', type=('build', 'run'))
depends_on('gdk-pixbuf', type=('build', 'run'))
depends_on('gtkplus', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'), when='@1.2:')
@run_after('install')
def post_install(self):
diff --git a/var/spack/repos/builtin/packages/py-xenv/package.py b/var/spack/repos/builtin/packages/py-xenv/package.py
index 1ccda61959..cf80182cc7 100644
--- a/var/spack/repos/builtin/packages/py-xenv/package.py
+++ b/var/spack/repos/builtin/packages/py-xenv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyXenv(PythonPackage):
"""Helpers to work with the environment in a platform independent way."""
homepage = "https://gitlab.cern.ch/gaudi/xenv"
- url = "https://pypi.io/packages/source/x/xenv/xenv-1.0.0.tar.gz"
+ pypi = "xenv/xenv-1.0.0.tar.gz"
git = "https://gitlab.cern.ch/gaudi/xenv.git"
version('develop', branch='master')
diff --git a/var/spack/repos/builtin/packages/py-xgboost/package.py b/var/spack/repos/builtin/packages/py-xgboost/package.py
new file mode 100644
index 0000000000..746d58a1f4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-xgboost/package.py
@@ -0,0 +1,90 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import os
+
+from spack import *
+
+
+class PyXgboost(PythonPackage):
+ """XGBoost is an optimized distributed gradient boosting library designed to be
+ highly efficient, flexible and portable."""
+
+ homepage = 'https://xgboost.ai/'
+ pypi = 'xgboost/xgboost-1.3.3.tar.gz'
+
+ maintainers = ['adamjstewart']
+ import_modules = ['xgboost']
+
+ version('1.3.3', sha256='397051647bb837915f3ff24afc7d49f7fca57630ffd00fb5ef66ae2a0881fb43')
+ version('0.90', sha256='d69f90d61a63e8889fd39a31ad00c629bac1ca627f8406b9b6d4594c9e29ab84', deprecated=True)
+
+ variant('pandas', default=False, description='Enable Pandas extensions for training.')
+ variant('scikit-learn', default=False, description='Enable scikit-learn extensions for training.')
+ variant('dask', default=False, description='Enables Dask extensions for distributed training.')
+ variant('plotting', default=False, description='Enables tree and importance plotting.')
+
+ for ver in ['1.3.3']:
+ depends_on('xgboost@' + ver, when='@' + ver)
+
+ depends_on('cmake@3.12:', when='@1.0:1.2.999', type='build')
+ depends_on('llvm-openmp', when='@:1.2.999 %apple-clang')
+ depends_on('python@3.6:', when='@1.2:', type=('build', 'run'))
+ depends_on('python@3.5:', when='@1.0:', type=('build', 'run'))
+ depends_on('python@3.4:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+
+ depends_on('py-pandas', when='+pandas', type=('build', 'run'))
+
+ depends_on('py-scikit-learn', when='+scikit-learn', type=('build', 'run'))
+
+ depends_on('py-dask', when='+dask', type=('build', 'run'))
+ depends_on('py-pandas', when='+dask', type=('build', 'run'))
+ depends_on('py-distributed', when='+dask', type=('build', 'run'))
+
+ depends_on('py-graphviz', when='+plotting', type=('build', 'run'))
+ depends_on('py-matplotlib', when='+plotting', type=('build', 'run'))
+
+ conflicts('+pandas', when='@:0.999')
+ conflicts('+scikit-learn', when='@:0.999')
+ conflicts('+dask', when='@:0.999')
+ conflicts('+plotting', when='@:0.999')
+
+ # `--use-system-libxgboost` is only valid for the 'install' phase, but we want to
+ # skip building of the C++ library and rely on an external dependency
+ phases = ['install']
+
+ @when('@:0.90')
+ def patch(self):
+ # Fix OpenMP support on macOS
+ filter_file("OPENMP_FLAGS = -fopenmp",
+ "OPENMP_FLAGS = {0}".format(self.compiler.openmp_flag),
+ os.path.join("xgboost", "Makefile"), string=True)
+
+ @when('@1.3:')
+ def patch(self):
+ # https://github.com/dmlc/xgboost/issues/6706
+ # 'setup.py' is hard-coded to search in Python installation prefix
+ filter_file("lib_path = os.path.join(sys.prefix, 'lib')",
+ "lib_path = '{0}'".format(self.spec['xgboost'].libs.directories[0]),
+ "setup.py", string=True)
+
+ # Same for run-time search
+ filter_file("os.path.join(curr_path, 'lib'),",
+ "'{0}',".format(self.spec['xgboost'].libs.directories[0]),
+ os.path.join('xgboost', 'libpath.py'), string=True)
+
+ @when('@1.3:')
+ def install_args(self, spec, prefix):
+ args = super(PyXgboost, self).install_args(spec, prefix)
+ args.append('--use-system-libxgboost')
+ return args
+
+ # Tests need to be re-added since `phases` was overridden
+ run_after('install')(
+ PythonPackage._run_default_install_time_test_callbacks)
+ run_after('install')(PythonPackage.sanity_check_prefix)
diff --git a/var/spack/repos/builtin/packages/py-xlrd/package.py b/var/spack/repos/builtin/packages/py-xlrd/package.py
index ae155a964d..a25feef600 100644
--- a/var/spack/repos/builtin/packages/py-xlrd/package.py
+++ b/var/spack/repos/builtin/packages/py-xlrd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,6 +11,6 @@ class PyXlrd(PythonPackage):
spreadsheet files"""
homepage = 'http://www.python-excel.org/'
- url = "https://pypi.io/packages/source/x/xlrd/xlrd-0.9.4.tar.gz"
+ pypi = "xlrd/xlrd-0.9.4.tar.gz"
version('0.9.4', sha256='8e8d3359f39541a6ff937f4030db54864836a06e42988c452db5b6b86d29ea72')
diff --git a/var/spack/repos/builtin/packages/py-xlsxwriter/package.py b/var/spack/repos/builtin/packages/py-xlsxwriter/package.py
index 6989800313..34e93b0606 100644
--- a/var/spack/repos/builtin/packages/py-xlsxwriter/package.py
+++ b/var/spack/repos/builtin/packages/py-xlsxwriter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,6 @@ class PyXlsxwriter(PythonPackage):
"""XlsxWriter is a Python module for writing files in the Excel 2007+ XLSX
file format."""
- homepage = "https://pypi.python.org/pypi/XlsxWriter"
- url = "https://pypi.io/packages/source/X/XlsxWriter/XlsxWriter-1.0.2.tar.gz"
+ pypi = "XlsxWriter/XlsxWriter-1.0.2.tar.gz"
version('1.0.2', sha256='a26bbbafff88abffce592ffd5dfaa4c9f08dc44ef4afbf45c70d3e270325f856')
diff --git a/var/spack/repos/builtin/packages/py-xlwt/package.py b/var/spack/repos/builtin/packages/py-xlwt/package.py
index 981f3e5df7..b393299ef4 100644
--- a/var/spack/repos/builtin/packages/py-xlwt/package.py
+++ b/var/spack/repos/builtin/packages/py-xlwt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,7 @@ class PyXlwt(PythonPackage):
MS Excel 97/2000/XP/2003 XLS files, on any platform,
with Python 2.6, 2.7, 3.3+."""
- homepage = "https://pypi.org/project/xlwt/"
- url = "https://pypi.io/packages/source/x/xlwt/xlwt-1.3.0.tar.gz"
+ pypi = "xlwt/xlwt-1.3.0.tar.gz"
version('1.3.0', sha256='c59912717a9b28f1a3c2a98fd60741014b06b043936dcecbc113eaaada156c88')
diff --git a/var/spack/repos/builtin/packages/py-xmlrunner/package.py b/var/spack/repos/builtin/packages/py-xmlrunner/package.py
index c6e7f3a21f..c27223bcd6 100644
--- a/var/spack/repos/builtin/packages/py-xmlrunner/package.py
+++ b/var/spack/repos/builtin/packages/py-xmlrunner/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyXmlrunner(PythonPackage):
"""PyUnit-based test runner with JUnit like XML reporting."""
homepage = "https://github.com/pycontribs/xmlrunner"
- url = "https://pypi.io/packages/source/x/xmlrunner/xmlrunner-1.7.7.tar.gz"
+ pypi = "xmlrunner/xmlrunner-1.7.7.tar.gz"
version('1.7.7', sha256='5a6113d049eca7646111ee657266966e5bbfb0b5ceb2e83ee0772e16d7110f39')
diff --git a/var/spack/repos/builtin/packages/py-xmltodict/package.py b/var/spack/repos/builtin/packages/py-xmltodict/package.py
index 49a3fd4bd8..2b64e79674 100644
--- a/var/spack/repos/builtin/packages/py-xmltodict/package.py
+++ b/var/spack/repos/builtin/packages/py-xmltodict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyXmltodict(PythonPackage):
you are working with JSON."""
homepage = "https://github.com/martinblech/xmltodict"
- url = "https://pypi.io/packages/source/x/xmltodict/xmltodict-0.12.0.tar.gz"
+ pypi = "xmltodict/xmltodict-0.12.0.tar.gz"
version('0.12.0', sha256='50d8c638ed7ecb88d90561beedbf720c9b4e851a9fa6c47ebd64e99d166d8a21')
diff --git a/var/spack/repos/builtin/packages/py-xopen/package.py b/var/spack/repos/builtin/packages/py-xopen/package.py
index 65bbb0fa73..ecfd23d7eb 100644
--- a/var/spack/repos/builtin/packages/py-xopen/package.py
+++ b/var/spack/repos/builtin/packages/py-xopen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,9 +13,11 @@ class PyXopen(PythonPackage):
recognized by their file extensions .gz, .bz2 or .xz."""
homepage = "https://github.com/marcelm/xopen"
- url = "https://pypi.io/packages/source/x/xopen/xopen-0.1.1.tar.gz"
+ pypi = "xopen/xopen-0.1.1.tar.gz"
+ version('1.0.1', sha256='79d7e425fb0930b0153eb6beba9a540ca3e07ac254ca828577ad2e8fa24105dc')
version('0.9.0', sha256='1e3918c8a5cd2bd128ba05b3b883ee322349219c99c305e10114638478e3162a')
+ version('0.8.4', sha256='dcd8f5ef5da5564f514a990573a48a0c347ee1fdbb9b6374d31592819868f7ba')
version('0.8.2', sha256='003749e09af74103a29e9c64c468c03e084aa6dfe6feff4fe22366679a6534f7')
version('0.5.0', sha256='b097cd25e8afec42b6e1780c1f6315016171b5b6936100cdf307d121e2cbab9f')
version('0.1.1', sha256='d1320ca46ed464a59db4c27c7a44caf5e268301e68319f0295d06bf6a9afa6f3')
diff --git a/var/spack/repos/builtin/packages/py-xpyb/package.py b/var/spack/repos/builtin/packages/py-xpyb/package.py
index 7960870492..8d385c9a4a 100644
--- a/var/spack/repos/builtin/packages/py-xpyb/package.py
+++ b/var/spack/repos/builtin/packages/py-xpyb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,4 +19,4 @@ class PyXpyb(AutotoolsPackage):
depends_on('libxcb@1.5:')
- depends_on('xcb-proto@1.7.1:', type='build')
+ depends_on('xcb-proto@1.7.1:')
diff --git a/var/spack/repos/builtin/packages/py-xvfbwrapper/package.py b/var/spack/repos/builtin/packages/py-xvfbwrapper/package.py
index 766432857c..da791421f3 100644
--- a/var/spack/repos/builtin/packages/py-xvfbwrapper/package.py
+++ b/var/spack/repos/builtin/packages/py-xvfbwrapper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyXvfbwrapper(PythonPackage):
"""run headless display inside X virtual framebuffer (Xvfb)"""
- homepage = "https://pypi.python.org/pypi/xvfbwrapper/0.2.9"
- url = "https://pypi.io/packages/source/x/xvfbwrapper/xvfbwrapper-0.2.9.tar.gz"
+ pypi = "xvfbwrapper/xvfbwrapper-0.2.9.tar.gz"
version('0.2.9', sha256='bcf4ae571941b40254faf7a73432dfc119ad21ce688f1fdec533067037ecfc24')
diff --git a/var/spack/repos/builtin/packages/py-yacs/package.py b/var/spack/repos/builtin/packages/py-yacs/package.py
new file mode 100644
index 0000000000..f0707b8687
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-yacs/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class PyYacs(PythonPackage):
+ """YACS was created as a lightweight library to define and manage
+ system configurations, such as those commonly found in software
+ designed for scientific experimentation."""
+
+ homepage = "https://github.com/rbgirshick/yacs"
+ pypi = "yacs/yacs-0.1.8.tar.gz"
+
+ version('0.1.8', sha256='efc4c732942b3103bea904ee89af98bcd27d01f0ac12d8d4d369f1e7a2914384')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pyyaml', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-yahmm/package.py b/var/spack/repos/builtin/packages/py-yahmm/package.py
index a612930d49..d499107b5e 100644
--- a/var/spack/repos/builtin/packages/py-yahmm/package.py
+++ b/var/spack/repos/builtin/packages/py-yahmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyYahmm(PythonPackage):
"""YAHMM is a HMM package for Python, implemented in Cython for speed."""
- homepage = "http://pypi.python.org/pypi/yahmm/"
- url = "https://pypi.io/packages/source/y/yahmm/yahmm-1.1.3.zip"
+ pypi = "yahmm/yahmm-1.1.3.zip"
version('1.1.3', sha256='fe3614ef96da9410468976756fb93dc8235485242c05df01d8e5ed356a7dfb43')
@@ -19,4 +18,3 @@ class PyYahmm(PythonPackage):
depends_on('py-scipy@0.13.3:', type=('build', 'run'))
depends_on('py-matplotlib@1.3.1:', type=('build', 'run'))
depends_on('py-networkx@1.8.1:', type=('build', 'run'))
- depends_on('py-nose@1.3.3:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-yajl/package.py b/var/spack/repos/builtin/packages/py-yajl/package.py
index b6e95ff8e8..62a59b8a7e 100644
--- a/var/spack/repos/builtin/packages/py-yajl/package.py
+++ b/var/spack/repos/builtin/packages/py-yajl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyYajl(PythonPackage):
"""Python bindings for the Yajl JSON encoder/decoder library."""
homepage = "https://github.com/rtyler/py-yajl"
- url = "https://pypi.io/packages/source/y/yajl/yajl-0.3.5.tar.gz"
+ pypi = "yajl/yajl-0.3.5.tar.gz"
version('0.3.5', sha256='432321ea613692a4782a2368a300f57b59c64a3c8508c7465af3fdc045e7bcc2')
diff --git a/var/spack/repos/builtin/packages/py-yamlreader/package.py b/var/spack/repos/builtin/packages/py-yamlreader/package.py
index 2a11c38345..6674625d68 100644
--- a/var/spack/repos/builtin/packages/py-yamlreader/package.py
+++ b/var/spack/repos/builtin/packages/py-yamlreader/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyYamlreader(PythonPackage):
file glob."""
homepage = "http://pyyaml.org/wiki/PyYAML"
- url = "https://pypi.io/packages/source/y/yamlreader/yamlreader-3.0.4.tar.gz"
+ pypi = "yamlreader/yamlreader-3.0.4.tar.gz"
version('3.0.4', sha256='765688036d57104ac26e4500ab088d42f4f2d06687ce3daa26543d7ae38c2470')
diff --git a/var/spack/repos/builtin/packages/py-yapf/package.py b/var/spack/repos/builtin/packages/py-yapf/package.py
index f9834d8dd2..d0c8e7cc8f 100644
--- a/var/spack/repos/builtin/packages/py-yapf/package.py
+++ b/var/spack/repos/builtin/packages/py-yapf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,7 @@ class PyYapf(PythonPackage):
url = "https://github.com/google/yapf/archive/v0.2.1.tar.gz"
version('0.30.0', sha256='9f561af26f8d27c3a334d3d2ee8947b8826a86691087e447ce483512d834682c')
+ version('0.29.0', sha256='f4bc9924de51d30da0241503d56e9e26a1a583bc58b3a13b2c450c4d16c9920d')
version('0.2.1', sha256='13158055acd8e3c2f3a577528051a1c5057237f699150211a86fb405c4ea3936')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-yarl/package.py b/var/spack/repos/builtin/packages/py-yarl/package.py
index 3b33ac4776..ccd33ef75a 100644
--- a/var/spack/repos/builtin/packages/py-yarl/package.py
+++ b/var/spack/repos/builtin/packages/py-yarl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-yolk3k/package.py b/var/spack/repos/builtin/packages/py-yolk3k/package.py
index d744f93f94..f256b50bb5 100644
--- a/var/spack/repos/builtin/packages/py-yolk3k/package.py
+++ b/var/spack/repos/builtin/packages/py-yolk3k/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,7 @@ class PyYolk3k(PythonPackage):
adds additional features."""
homepage = "https://github.com/myint/yolk"
- url = "https://pypi.io/packages/source/y/yolk3k/yolk3k-0.9.tar.gz"
+ pypi = "yolk3k/yolk3k-0.9.tar.gz"
version('0.9', sha256='cf8731dd0a9f7ef50b5dc253fe0174383e3fed295a653672aa918c059eef86ae')
diff --git a/var/spack/repos/builtin/packages/py-youtube-dl/package.py b/var/spack/repos/builtin/packages/py-youtube-dl/package.py
index 48fdf7dea7..08efb4f523 100644
--- a/var/spack/repos/builtin/packages/py-youtube-dl/package.py
+++ b/var/spack/repos/builtin/packages/py-youtube-dl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class PyYoutubeDl(PythonPackage):
sites."""
homepage = "https://github.com/ytdl-org/youtube-dl"
- url = "https://pypi.io/packages/source/y/youtube_dl/youtube_dl-2020.3.24.tar.gz"
+ pypi = "youtube_dl/youtube_dl-2020.3.24.tar.gz"
version('2020.3.24', sha256='4b03efe439f7cae26eba909821d1df00a9a4eb82741cb2e8b78fe29702bd4633')
diff --git a/var/spack/repos/builtin/packages/py-yt/package.py b/var/spack/repos/builtin/packages/py-yt/package.py
index 461e21217b..9ec95aef2e 100644
--- a/var/spack/repos/builtin/packages/py-yt/package.py
+++ b/var/spack/repos/builtin/packages/py-yt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,9 +19,13 @@ class PyYt(PythonPackage):
url = "https://github.com/yt-project/yt/archive/yt-3.5.0.tar.gz"
git = "https://github.com/yt-project/yt.git"
+ maintainers = ['qobilidop']
+
version("develop", branch="master")
version("develop-4.0", branch="yt-4.0")
+ version('3.6.1', sha256='a1be3ea7e18729d3cd86e9234dc4731bf23200dff3344fa756fe173ea36cc747')
+ version('3.6.0', sha256='4e3bab11766d5950477ba4d6c528a495e12cda1155227361b4579ac4ac0bf975')
version('3.5.1', sha256='cdc0ecb153e737d74820581f311d1be7b6f1a7ee065ad69706470939db88b041')
version('3.5.0', sha256='548598912adba72b782b7422d40d1d12a8c1a6cd064281a9a537fdb2a5af89fc')
version('3.4.1', sha256='b9a73ade3726a8163fc992999c8c1010ca89473131901fe4d48b820ab2ced486')
@@ -40,18 +44,19 @@ class PyYt(PythonPackage):
variant("scipy", default=True, description="enable scipy support")
variant("rockstar", default=False, description="enable rockstar support")
- depends_on("py-astropy", type=('build', 'run'), when="+astropy")
- depends_on("py-cython", type=('build', 'run'))
- depends_on("py-h5py", type=('build', 'run'), when="+h5py")
- depends_on("py-ipython", type=('build', 'run'))
+ depends_on("py-astropy@4.0.1:", type=('build', 'run'), when="+astropy")
+ depends_on("py-cython@0.24:", type=('build', 'run'))
+ depends_on("py-h5py@3.1:", type=('build', 'run'), when="+h5py")
+ depends_on("py-ipython@1.0:", type=('build', 'run'))
depends_on("py-ipython@:6.99", type=('build', 'run'), when="^python@:2.99")
- depends_on("py-matplotlib", type=('build', 'run'))
- depends_on("py-numpy", type=('build', 'run'))
- depends_on("py-scipy", type=('build', 'run'), when="+scipy")
- depends_on("py-setuptools", type=('build', 'run'))
- depends_on("py-sympy", type=('build', 'run'))
+ depends_on("py-matplotlib@1.5.3:", type=('build', 'run'))
+ depends_on("py-matplotlib@:3.2.2", type=('build', 'run'), when="@:3.6.0")
+ depends_on("py-numpy@1.10.4:", type=('build', 'run'))
+ depends_on("py-scipy@1.5.0:", type=('build', 'run'), when="+scipy")
+ depends_on("py-setuptools@19.6:", type=('build', 'run'))
+ depends_on("py-sympy@1.0:", type=('build', 'run'))
depends_on("rockstar@yt", type=('build', 'run'), when="+rockstar")
- depends_on("python@2.7:2.8,3.4:")
+ depends_on("python@2.7.0:2.7.99,3.5:", type=('build', 'run'))
@run_before('install')
def prep_yt(self):
diff --git a/var/spack/repos/builtin/packages/py-ytopt/package.py b/var/spack/repos/builtin/packages/py-ytopt/package.py
index 18cfcac443..f5e33b8f18 100644
--- a/var/spack/repos/builtin/packages/py-ytopt/package.py
+++ b/var/spack/repos/builtin/packages/py-ytopt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/py-zarr/package.py b/var/spack/repos/builtin/packages/py-zarr/package.py
index 0e1dbbeaae..da85cac771 100644
--- a/var/spack/repos/builtin/packages/py-zarr/package.py
+++ b/var/spack/repos/builtin/packages/py-zarr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,15 +11,22 @@ class PyZarr(PythonPackage):
compressed, N-dimensional arrays."""
homepage = "https://zarr.readthedocs.io"
- url = "https://pypi.io/packages/source/z/zarr/zarr-2.3.2.tar.gz"
+ pypi = "zarr/zarr-2.3.2.tar.gz"
+ version('2.6.1', sha256='fa7eac1e4ff47ff82d09c42bb4679e18e8a05a73ee81ce59cee6a441a210b2fd')
+ version('2.5.0', sha256='d54f060739208392494c3dbcbfdf41c8df9fa23d9a32b91aea0549b4c5e2b77f')
+ version('2.4.0', sha256='53aa21b989a47ddc5e916eaff6115b824c0864444b1c6f3aaf4f6cf9a51ed608')
version('2.3.2', sha256='c62d0158fb287151c978904935a177b3d2d318dea3057cfbeac8541915dfa105')
+ depends_on('python@3.5:', type=('build', 'run'), when='@2.4.0:')
+ depends_on('python@3.6:', type=('build', 'run'), when='@2.6.0:')
depends_on('py-asciitree', type=('build', 'run'))
depends_on('py-fasteners', type=('build', 'run'))
- depends_on('py-msgpack', type=('build', 'run'))
- depends_on('py-setuptools@18.1:', type='build')
+ depends_on('py-msgpack', type=('build', 'run'), when='@:2.3.2')
+ depends_on('py-setuptools@18.0:', type='build')
+ depends_on('py-setuptools@38.6.0:', type='build', when='@2.4.0:')
depends_on('py-setuptools-scm@1.5.5:', type='build')
depends_on('py-numcodecs@0.6.2:', type=('build', 'run'))
+ depends_on('py-numcodecs@0.6.4:', type=('build', 'run'), when='@2.4.0:')
depends_on('py-numpy@1.7:', type=('build', 'run'))
- depends_on('py-scandir', type=('build', 'run'), when='^python@:3.4')
+ depends_on('py-scandir', type=('build', 'run'), when='^python@:3.4')
diff --git a/var/spack/repos/builtin/packages/py-zc-buildout/package.py b/var/spack/repos/builtin/packages/py-zc-buildout/package.py
index 6aa1938369..aebafd211a 100644
--- a/var/spack/repos/builtin/packages/py-zc-buildout/package.py
+++ b/var/spack/repos/builtin/packages/py-zc-buildout/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyZcBuildout(PythonPackage):
"""System for managing development buildouts"""
homepage = "http://buildout.org/"
- url = "https://pypi.io/packages/source/z/zc.buildout/zc.buildout-2.13.1.tar.gz"
+ pypi = "zc.buildout/zc.buildout-2.13.1.tar.gz"
version('2.13.1', sha256='3d14d07226963a517295dfad5879d2799e2e3b65b2c61c71b53cb80f5ab11484')
diff --git a/var/spack/repos/builtin/packages/py-zc-lockfile/package.py b/var/spack/repos/builtin/packages/py-zc-lockfile/package.py
index 707448e813..befc4cae6d 100644
--- a/var/spack/repos/builtin/packages/py-zc-lockfile/package.py
+++ b/var/spack/repos/builtin/packages/py-zc-lockfile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,8 +9,7 @@ from spack import *
class PyZcLockfile(PythonPackage):
"""Basic inter-process locks"""
- homepage = "https://www.python.org/pypi/zc.lockfile"
- url = "https://pypi.io/packages/source/z/zc.lockfile/zc.lockfile-1.4.tar.gz"
+ pypi = "zc.lockfile/zc.lockfile-1.4.tar.gz"
version('1.4', sha256='95a8e3846937ab2991b61703d6e0251d5abb9604e18412e2714e1b90db173253')
diff --git a/var/spack/repos/builtin/packages/py-zict/package.py b/var/spack/repos/builtin/packages/py-zict/package.py
index 5830be23cf..58588c26d5 100644
--- a/var/spack/repos/builtin/packages/py-zict/package.py
+++ b/var/spack/repos/builtin/packages/py-zict/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyZict(PythonPackage):
"""Mutable mapping tools"""
homepage = "http://zict.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/z/zict/zict-1.0.0.tar.gz"
+ pypi = "zict/zict-1.0.0.tar.gz"
version('1.0.0', sha256='e34dd25ea97def518fb4c77f2c27078f3a7d6c965b0a3ac8fe5bdb0a8011a310')
diff --git a/var/spack/repos/builtin/packages/py-zipp/package.py b/var/spack/repos/builtin/packages/py-zipp/package.py
index 424062ee6e..38421acc84 100644
--- a/var/spack/repos/builtin/packages/py-zipp/package.py
+++ b/var/spack/repos/builtin/packages/py-zipp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class PyZipp(PythonPackage):
"""Backport of pathlib-compatible object wrapper for zip files."""
homepage = "https://github.com/jaraco/zipp"
- url = "https://pypi.io/packages/source/z/zipp/zipp-0.6.0.tar.gz"
+ pypi = "zipp/zipp-0.6.0.tar.gz"
version('0.6.0', sha256='3718b1cbcd963c7d4c5511a8240812904164b7f381b647143a89d3b98f9bcd8e')
version('0.5.1', sha256='ca943a7e809cc12257001ccfb99e3563da9af99d52f261725e96dfe0f9275bc3')
diff --git a/var/spack/repos/builtin/packages/py-zope-event/package.py b/var/spack/repos/builtin/packages/py-zope-event/package.py
index 6ad1049a89..054e355eac 100644
--- a/var/spack/repos/builtin/packages/py-zope-event/package.py
+++ b/var/spack/repos/builtin/packages/py-zope-event/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,7 @@ class PyZopeEvent(PythonPackage):
"""Very basic event publishing system."""
homepage = "http://github.com/zopefoundation/zope.event"
- url = "https://pypi.io/packages/source/z/zope.event/zope.event-4.3.0.tar.gz"
-
- # FIXME: No idea why this import test fails.
- # Maybe some kind of namespace issue?
- # import_modules = ['zope.event']
+ pypi = "zope.event/zope.event-4.3.0.tar.gz"
version('4.3.0', sha256='e0ecea24247a837c71c106b0341a7a997e3653da820d21ef6c08b32548f733e7')
diff --git a/var/spack/repos/builtin/packages/py-zope-interface/package.py b/var/spack/repos/builtin/packages/py-zope-interface/package.py
index 7a45399ea8..c5545aef0f 100644
--- a/var/spack/repos/builtin/packages/py-zope-interface/package.py
+++ b/var/spack/repos/builtin/packages/py-zope-interface/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,11 +13,7 @@ class PyZopeInterface(PythonPackage):
of the Design By Contract methodology support in Python."""
homepage = "https://github.com/zopefoundation/zope.interface"
- url = "https://pypi.io/packages/source/z/zope.interface/zope.interface-4.5.0.tar.gz"
-
- # FIXME: No idea why these import tests fail.
- # Maybe some kind of namespace issue?
- # import_modules = ['zope.interface', 'zope.interface.common']
+ pypi = "zope.interface/zope.interface-4.5.0.tar.gz"
version('5.1.0', sha256='40e4c42bd27ed3c11b2c983fecfb03356fae1209de10686d03c02c8696a1d90e')
version('4.5.0', sha256='57c38470d9f57e37afb460c399eb254e7193ac7fb8042bd09bdc001981a9c74c')
@@ -26,6 +22,3 @@ class PyZopeInterface(PythonPackage):
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'), when='@5.1.0:')
depends_on('py-setuptools', type=('build', 'run'))
- depends_on('py-zope-event', type='test')
- depends_on('py-nose', type='test')
- depends_on('py-coverage', type='test')
diff --git a/var/spack/repos/builtin/packages/py-zxcvbn/package.py b/var/spack/repos/builtin/packages/py-zxcvbn/package.py
index d95f9d60ab..722a09b8a6 100644
--- a/var/spack/repos/builtin/packages/py-zxcvbn/package.py
+++ b/var/spack/repos/builtin/packages/py-zxcvbn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/pythia6/package.py b/var/spack/repos/builtin/packages/pythia6/package.py
index fee36c1830..80a8ecce09 100644
--- a/var/spack/repos/builtin/packages/pythia6/package.py
+++ b/var/spack/repos/builtin/packages/pythia6/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -33,6 +33,8 @@ class Pythia6(CMakePackage):
homepage = 'https://pythiasix.hepforge.org/'
url = 'http://www.hepforge.org/archive/pythiasix/pythia-6.4.28.tgz'
+ tags = ['hep']
+
version('6.4.28',
sha256='01cbff47e99365b5e46f6d62c1735d3cae1932c4710604850d59f538cb758020')
@@ -131,6 +133,7 @@ class Pythia6(CMakePackage):
# majority of cases. If your case is different, platform- or
# variant-based adjustments should be made.
patch('pythia6.patch', level=0)
+ patch('pythia6-root.patch', level=1, when='+root')
def patch(self):
# Use our provided CMakeLists.txt. The Makefile provided with
diff --git a/var/spack/repos/builtin/packages/pythia6/pythia6-root.patch b/var/spack/repos/builtin/packages/pythia6/pythia6-root.patch
new file mode 100644
index 0000000000..c3c6f1daac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pythia6/pythia6-root.patch
@@ -0,0 +1,8 @@
+--- rootinterface/pythia6_common_address.c.orig 2020-11-12 14:07:37.000000000 +0100
++++ rootinterface/pythia6_common_address.c 2020-11-12 14:08:54.000000000 +0100
+@@ -1,4 +1,5 @@
+ // declaration of PYTHIA6 common clocks
++# include <string.h>
+ #ifndef WIN32
+ # define pyjets pyjets_
+ # define pydat1 pydat1_
diff --git a/var/spack/repos/builtin/packages/pythia6/pythia6.patch b/var/spack/repos/builtin/packages/pythia6/pythia6.patch
index 5d45541e07..c2e62c402f 100644
--- a/var/spack/repos/builtin/packages/pythia6/pythia6.patch
+++ b/var/spack/repos/builtin/packages/pythia6/pythia6.patch
@@ -276,3 +276,16 @@ diff -Naur upveto.f upveto.f
RETURN
END
+
+--- pystrf.f.orig 2014-05-14 18:12:02.000000001 +0200
++++ pystrf.f 2014-05-14 18:10:23.000000001 +0200
+@@ -805,7 +805,9 @@
+
+ C...Closed string: random initial breakup flavour, pT and vertex.
+ ELSE
+- KFL(3)=INT(1D0+(2D0+PARJ(2))*PYR(0))*(-1)**INT(PYR(0)+0.5D0)
++ RNDM1=PYR(0)
++ RNDM2=PYR(0)
++ KFL(3)=INT(1D0+(2D0+PARJ(2))*RNDM1)*(-1)**INT(RNDM2+0.5D0)
+ IBMO=0
+ 770 CALL PYKFDI(KFL(3),0,KFL(1),KDUMP)
+ C.. Closed string: first vertex diq attempt => enforced second
diff --git a/var/spack/repos/builtin/packages/pythia8/package.py b/var/spack/repos/builtin/packages/pythia8/package.py
index 856aa103b5..0973f63d54 100644
--- a/var/spack/repos/builtin/packages/pythia8/package.py
+++ b/var/spack/repos/builtin/packages/pythia8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,8 +15,11 @@ class Pythia8(AutotoolsPackage):
homepage = "http://home.thep.lu.se/Pythia/"
url = "http://home.thep.lu.se/~torbjorn/pythia8/pythia8244.tgz"
+ tags = ['hep']
+
maintainers = ['ChristianTackeGSI']
+ version('8304', sha256='d3897018fb6d545eaf93bf43f32580c984a9bff49259d9dd29dff6edfbe9d9a1')
version('8303', sha256='cd7c2b102670dae74aa37053657b4f068396988ef7da58fd3c318c84dc37913e')
version('8302', sha256='7372e4cc6f48a074e6b7bc426b040f218ec4a64b0a55e89da6af56933b5f5085')
version('8301', sha256='51382768eb9aafb97870dca1909516422297b64ef6a6b94659259b3e4afa7f06')
@@ -56,7 +59,7 @@ class Pythia8(AutotoolsPackage):
if '+fastjet' in self.spec:
args.append('--with-fastjet3=%s' % self.spec["fastjet"].prefix)
else:
- args.append('--without-fastjet')
+ args.append('--without-fastjet3')
if '+evtgen' in self.spec:
args.append('--with-evtgen=%s' % self.spec["evtgen"].prefix)
else:
@@ -64,7 +67,7 @@ class Pythia8(AutotoolsPackage):
if '+root' in self.spec:
args.append('--with-root=%s' % self.spec["root"].prefix)
else:
- args.append('--without-evtgen')
+ args.append('--without-root')
return args
diff --git a/var/spack/repos/builtin/packages/python/package.py b/var/spack/repos/builtin/packages/python/package.py
index 4d0df211e6..86c9361f22 100644
--- a/var/spack/repos/builtin/packages/python/package.py
+++ b/var/spack/repos/builtin/packages/python/package.py
@@ -1,21 +1,16 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-import ast
import os
import platform
import re
-import sys
import llnl.util.tty as tty
from llnl.util.lang import match_predicate
-from llnl.util.filesystem import (force_remove, get_filetype,
- path_contains_subdirectory)
+from llnl.util.filesystem import get_filetype, path_contains_subdirectory
-import spack.store
-import spack.util.spack_json as sjson
from spack.util.environment import is_system_path
from spack.util.prefix import Prefix
from spack import *
@@ -29,16 +24,25 @@ class Python(AutotoolsPackage):
list_url = "https://www.python.org/ftp/python/"
list_depth = 1
- maintainers = ['adamjstewart']
+ maintainers = ['adamjstewart', 'skosukhin']
+ version('3.9.5', sha256='e0fbd5b6e1ee242524430dee3c91baf4cbbaba4a72dd1674b90fda87b713c7ab')
+ version('3.9.4', sha256='66c4de16daa74a825cf9da9ddae1fe020b72c3854b73b1762011cc33f9e4592f')
+ version('3.9.2', sha256='7899e8a6f7946748830d66739f2d8f2b30214dad956e56b9ba216b3de5581519')
+ version('3.9.1', sha256='29cb91ba038346da0bd9ab84a0a55a845d872c341a4da6879f462e94c741f117')
version('3.9.0', sha256='df796b2dc8ef085edae2597a41c1c0a63625ebd92487adaef2fed22b567873e8')
- version('3.8.6', sha256='313562ee9986dc369cd678011bdfd9800ef62fbf7b1496228a18f86b36428c21', preferred=True)
+ version('3.8.10', sha256='b37ac74d2cbad2590e7cd0dd2b3826c29afe89a734090a87bf8c03c45066cb65', preferred=True)
+ version('3.8.9', sha256='9779ec1df000bf86914cdd40860b88da56c1e61db59d37784beca14a259ac9e9')
+ version('3.8.8', sha256='76c0763f048e4f9b861d24da76b7dd5c7a3ba7ec086f40caedeea359263276f7')
+ version('3.8.7', sha256='20e5a04262f0af2eb9c19240d7ec368f385788bba2d8dfba7e74b20bab4d2bac')
+ version('3.8.6', sha256='313562ee9986dc369cd678011bdfd9800ef62fbf7b1496228a18f86b36428c21')
version('3.8.5', sha256='015115023c382eb6ab83d512762fe3c5502fa0c6c52ffebc4831c4e1a06ffc49')
version('3.8.4', sha256='32c4d9817ef11793da4d0d95b3191c4db81d2e45544614e8449255ca9ae3cc18')
version('3.8.3', sha256='6af6d4d2e010f9655518d0fc6738c7ff7069f10a4d2fbd55509e467f092a8b90')
version('3.8.2', sha256='e634a7a74776c2b89516b2e013dda1728c89c8149b9863b8cea21946daf9d561')
version('3.8.1', sha256='c7cfa39a43b994621b245e029769e9126caa2a93571cee2e743b213cceac35fb')
version('3.8.0', sha256='f1069ad3cae8e7ec467aa98a6565a62a48ef196cb8f1455a245a08db5e1792df')
+ version('3.7.10', sha256='c9649ad84dc3a434c8637df6963100b2e5608697f9ba56d82e3809e4148e0975')
version('3.7.9', sha256='39b018bc7d8a165e59aa827d9ae45c45901739b0bbb13721e4f973f3521c166a')
version('3.7.8', sha256='0e25835614dc221e3ecea5831b38fa90788b5389b99b675a751414c858789ab0')
version('3.7.7', sha256='8c8be91cd2648a1a0c251f04ea0bb4c2a5570feb9c45eaaa2241c785585b475a')
@@ -49,6 +53,7 @@ class Python(AutotoolsPackage):
version('3.7.2', sha256='f09d83c773b9cc72421abba2c317e4e6e05d919f9bcf34468e192b6a6c8e328d')
version('3.7.1', sha256='36c1b81ac29d0f8341f727ef40864d99d8206897be96be73dc34d4739c9c9f06')
version('3.7.0', sha256='85bb9feb6863e04fb1700b018d9d42d1caac178559ffa453d7e6a436e259fd0d')
+ version('3.6.13', sha256='614950d3d54f6e78dac651b49c64cfe2ceefea5af3aff3371a9e4b27a53b2669')
version('3.6.12', sha256='12dddbe52385a0f702fb8071e12dcc6b3cb2dde07cd8db3ed60e90d90ab78693')
version('3.6.11', sha256='96621902f89746fffc22f39749c07da7c2917b232e72352e6837d41850f7b90c')
version('3.6.10', sha256='7034dd7cba98d4f94c74f9edd7345bac71c8814c41672c64d9044fa2f96f334d')
@@ -165,14 +170,8 @@ class Python(AutotoolsPackage):
depends_on('libffi', when='+ctypes')
depends_on('tk', when='+tkinter')
depends_on('tcl', when='+tkinter')
+ depends_on('uuid', when='+uuid')
depends_on('tix', when='+tix')
- if sys.platform != 'darwin':
- # On macOS systems, Spack's libuuid conflicts with the system-installed
- # version and breaks anything linked against Cocoa/Carbon. Since the
- # system-provided version is sufficient to build Python's UUID support,
- # the easy solution is to only depend on Spack's libuuid when *not* on
- # a Mac.
- depends_on('libuuid', when='+uuid')
# Python needs to be patched to build extensions w/ mixed C/C++ code:
# https://github.com/NixOS/nixpkgs/pull/19585/files
@@ -226,10 +225,6 @@ class Python(AutotoolsPackage):
conflicts('%nvhpc')
- _DISTUTIL_VARS_TO_SAVE = ['LDSHARED']
- _DISTUTIL_CACHE_FILENAME = 'sysconfig.json'
- _distutil_vars = None
-
# Used to cache home locations, since computing them might be expensive
_homes = {}
@@ -388,6 +383,7 @@ class Python(AutotoolsPackage):
def configure_args(self):
spec = self.spec
config_args = []
+ cflags = []
# setup.py needs to be able to read the CPPFLAGS and LDFLAGS
# as it scans for the library and headers to build
@@ -422,8 +418,8 @@ class Python(AutotoolsPackage):
config_args.append('--disable-toolbox-glue')
if spec.satisfies('%intel', strict=True) and \
- spec.satisfies('@2.7.12:2.8,3.5.2:', strict=True):
- config_args.append('--with-icc')
+ spec.satisfies('@2.7.12:2.8,3.5.2:3.7', strict=True):
+ config_args.append('--with-icc={0}'.format(spack_cc))
if '+debug' in spec:
config_args.append('--with-pydebug')
@@ -449,7 +445,7 @@ class Python(AutotoolsPackage):
config_args.append('--without-ensurepip')
if '+pic' in spec:
- config_args.append('CFLAGS={0}'.format(self.compiler.cc_pic_flag))
+ cflags.append(self.compiler.cc_pic_flag)
if '+ssl' in spec:
if spec.satisfies('@3.7:'):
@@ -484,91 +480,13 @@ class Python(AutotoolsPackage):
if spec.satisfies('@3.2: +sqlite3'):
config_args.append('--enable-loadable-sqlite-extensions')
- return config_args
-
- @run_after('install')
- def _save_distutil_vars(self):
- """
- Run before changing automatically generated contents of the
- _sysconfigdata.py, which is used by distutils to figure out what
- executables to use while compiling and linking extensions. If we build
- extensions with spack those executables should be spack's wrappers.
- Spack partially covers this by setting environment variables that
- are also accounted for by distutils. Currently there is one more known
- variable that must be set, which is LDSHARED, so the method saves its
- autogenerated value to pass it to the dependent package's setup script.
- """
-
- self._distutil_vars = {}
+ if spec.satisfies('%oneapi'):
+ cflags.append('-fp-model=strict')
- input_filename = self.get_sysconfigdata_name()
- input_dict = None
- try:
- with open(input_filename) as input_file:
- match = re.search(r'build_time_vars\s*=\s*(?P<dict>{.*})',
- input_file.read(),
- flags=re.DOTALL)
-
- if match:
- input_dict = ast.literal_eval(match.group('dict'))
- except (IOError, SyntaxError):
- pass
-
- if not input_dict:
- tty.warn("Failed to find 'build_time_vars' dictionary in file "
- "'%s'. This might cause the extensions that are "
- "installed with distutils to call compilers directly "
- "avoiding Spack's wrappers." % input_filename)
- return
-
- for var_name in Python._DISTUTIL_VARS_TO_SAVE:
- if var_name in input_dict:
- self._distutil_vars[var_name] = input_dict[var_name]
- else:
- tty.warn("Failed to find key '%s' in 'build_time_vars' "
- "dictionary in file '%s'. This might cause the "
- "extensions that are installed with distutils to "
- "call compilers directly avoiding Spack's wrappers."
- % (var_name, input_filename))
-
- if len(self._distutil_vars) > 0:
- output_filename = None
- try:
- output_filename = join_path(
- spack.store.layout.metadata_path(self.spec),
- Python._DISTUTIL_CACHE_FILENAME)
- with open(output_filename, 'w') as output_file:
- sjson.dump(self._distutil_vars, output_file)
- except Exception:
- tty.warn("Failed to save metadata for distutils. This might "
- "cause the extensions that are installed with "
- "distutils to call compilers directly avoiding "
- "Spack's wrappers.")
- # We make the cache empty if we failed to save it to file
- # to provide the same behaviour as in the case when the cache
- # is initialized by the method load_distutils_data().
- self._distutil_vars = {}
- if output_filename:
- force_remove(output_filename)
-
- def _load_distutil_vars(self):
- # We update and keep the cache unchanged only if the package is
- # installed.
- if not self._distutil_vars and self.installed:
- try:
- input_filename = join_path(
- spack.store.layout.metadata_path(self.spec),
- Python._DISTUTIL_CACHE_FILENAME)
- if os.path.isfile(input_filename):
- with open(input_filename) as input_file:
- self._distutil_vars = sjson.load(input_file)
- except Exception:
- pass
+ if cflags:
+ config_args.append('CFLAGS={0}'.format(' '.join(cflags)))
- if not self._distutil_vars:
- self._distutil_vars = {}
-
- return self._distutil_vars
+ return config_args
@run_after('install')
def filter_compilers(self):
@@ -618,6 +536,13 @@ class Python(AutotoolsPackage):
os.path.join(prefix.bin, 'python-config'))
@run_after('install')
+ def install_python_gdb(self):
+ # https://devguide.python.org/gdb/
+ src = os.path.join('Tools', 'gdb', 'libpython.py')
+ if os.path.exists(src):
+ install(src, self.command.path + '-gdb.py')
+
+ @run_after('install')
@on_package_attributes(run_tests=True)
def import_tests(self):
"""Test that basic Python functionality works."""
@@ -944,14 +869,76 @@ class Python(AutotoolsPackage):
pythonpath = ':'.join(python_paths)
env.set('PYTHONPATH', pythonpath)
+ # We need to make sure that the extensions are compiled and linked with
+ # the Spack wrapper. Paths to the executables that are used for these
+ # operations are normally taken from the sysconfigdata file, which we
+ # modify after the installation (see method filter compilers). The
+ # modified file contains paths to the real compilers, not the wrappers.
+ # The values in the file, however, can be overridden with environment
+ # variables. The first variable, CC (CXX), which is used for
+ # compilation, is set by Spack for the dependent package by default.
+ # That is not 100% correct because the value for CC (CXX) in the
+ # sysconfigdata file often contains additional compiler flags (e.g.
+ # -pthread), which we lose by simply setting CC (CXX) to the path to the
+ # Spack wrapper. Moreover, the user might try to build an extension with
+ # a compiler that is different from the one that was used to build
+ # Python itself, which might have unexpected side effects. However, the
+ # experience shows that none of the above is a real issue and we will
+ # not try to change the default behaviour. Given that, we will simply
+ # try to modify LDSHARED (LDCXXSHARED), the second variable, which is
+ # used for linking, in a consistent manner.
+
+ for compile_var, link_var in [('CC', 'LDSHARED'),
+ ('CXX', 'LDCXXSHARED')]:
+ # First, we get the values from the sysconfigdata:
+ config_compile = self.get_config_var(compile_var)
+ config_link = self.get_config_var(link_var)
+
+ # The dependent environment will have the compilation command set to
+ # the following:
+ new_compile = join_path(
+ spack.paths.build_env_path,
+ dependent_spec.package.compiler.link_paths[compile_var.lower()])
+
+ # Normally, the link command starts with the compilation command:
+ if config_link.startswith(config_compile):
+ new_link = new_compile + config_link[len(config_compile):]
+ else:
+ # Otherwise, we try to replace the compiler command if it
+ # appears "in the middle" of the link command; to avoid
+ # mistaking some substring of a path for the compiler (e.g. to
+ # avoid replacing "gcc" in "-L/path/to/gcc/"), we require that
+ # the compiler command be surrounded by spaces. Note this may
+ # leave "config_link" unchanged if the compilation command does
+ # not appear in the link command at all, for example if "ld" is
+ # invoked directly (no change would be required in that case
+ # because Spack arranges for the Spack ld wrapper to be the
+ # first instance of "ld" in PATH).
+ new_link = config_link.replace(" {0} ".format(config_compile),
+ " {0} ".format(new_compile))
+
+ # There is logic in the sysconfig module that is sensitive to the
+ # fact that LDSHARED is set in the environment, therefore we export
+ # the variable only if the new value is different from what we got
+ # from the sysconfigdata file:
+ if config_link != new_link:
+ env.set(link_var, new_link)
+
def setup_dependent_run_environment(self, env, dependent_spec):
- # For run time environment set only the path for
- # dependent_spec and prepend it to PYTHONPATH
- if dependent_spec.package.extends(self.spec):
- for lib in ['lib', 'lib64']:
- env.prepend_path('PYTHONPATH', join_path(
- dependent_spec.prefix, lib,
- 'python' + str(self.version.up_to(2)), 'site-packages'))
+ python_paths = []
+ for d in dependent_spec.traverse(deptype='run'):
+ if d.package.extends(self.spec):
+ # Python libraries may be installed in lib or lib64
+ # See issues #18520 and #17126
+ for lib in ['lib', 'lib64']:
+ root = join_path(
+ d.prefix, lib, 'python' + str(self.version.up_to(2)),
+ 'site-packages')
+ if os.path.exists(root):
+ python_paths.append(root)
+
+ pythonpath = ':'.join(python_paths)
+ env.prepend_path('PYTHONPATH', pythonpath)
def setup_dependent_package(self, module, dependent_spec):
"""Called before python modules' install() methods.
@@ -964,12 +951,6 @@ class Python(AutotoolsPackage):
module.setup_py = Executable(
self.command.path + ' setup.py --no-user-cfg')
- distutil_vars = self._load_distutil_vars()
-
- if distutil_vars:
- for key, value in distutil_vars.items():
- module.setup_py.add_default_env(key, value)
-
# Add variables for lib/pythonX.Y and lib/pythonX.Y/site-packages dirs.
module.python_lib_dir = join_path(dependent_spec.prefix,
self.python_lib_dir)
diff --git a/var/spack/repos/builtin/packages/q-e-sirius/package.py b/var/spack/repos/builtin/packages/q-e-sirius/package.py
index 82468ea892..b91235f85a 100644
--- a/var/spack/repos/builtin/packages/q-e-sirius/package.py
+++ b/var/spack/repos/builtin/packages/q-e-sirius/package.py
@@ -1,11 +1,11 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
# adapted from official quantum espresso package
-class QESirius(Package):
+class QESirius(CMakePackage):
"""SIRIUS enabled fork of QuantumESPRESSO. """
homepage = 'https://github.com/electronic-structure/q-e-sirius/'
@@ -14,297 +14,50 @@ class QESirius(Package):
maintainers = ['simonpintarelli']
- version('develop', branch='ristretto')
+ version('develop-ristretto', branch='ristretto', submodules=True)
+ version('6.7-rc1-sirius', tag='v6.7-rc1-sirius', submodules=True)
- version('6.5-rc2-sirius', sha256='460b678406eec36e4ee828c027929cf8720c3965a85c20084c53398b123c9ae9')
- version('6.5-rc3-sirius', sha256='1bfb8c1bba815b5ab2d733f51a8f9aa7b079f2859e6f14e4dcda708ebf172b02')
- version('6.5-rc4-sirius', sha256='be5529d65e4b301d6a6d1235e8d88277171c1732768bf1cf0c7fdeae154c79f1')
+ variant('mpi', default=True, description='Builds with MPI support')
+ variant('openmp', default=True, description='Enables OpenMP support')
+ variant('scalapack', default=False, description='Enables SCALAPACK support')
+ variant('elpa', default=False, description='Uses ELPA as an eigenvalue solver')
+ variant('libxc', default=False, description='Support functionals through libxc')
+ variant('hdf5', default=False, description='Enables HDF5 support')
- variant('mpi', default=True, description='Builds with mpi support')
- variant('openmp', default=True, description='Enables openMP support')
- variant('scalapack', default=True, description='Enables scalapack support')
- variant('elpa', default=False, description='Uses elpa as an eigenvalue solver')
+ depends_on('sirius +fortran ~apps')
+ depends_on('sirius +openmp', when='+openmp')
+ depends_on('sirius@develop', when='@develop')
- # Support for HDF5 has been added starting in version 6.1.0 and is
- # still experimental, therefore we default to False for the variant
- variant(
- 'hdf5', default='none', description='Builds with HDF5 support',
- values=('parallel', 'serial', 'none'), multi=False
- )
-
- # Enables building Electron-phonon Wannier 'epw.x' executable
- # http://epw.org.uk/Main/About
- variant('epw', default=False,
- description='Builds Electron-phonon Wannier executable')
-
- # Apply upstream patches by default. Variant useful for 3rd party
- # patches which are incompatible with upstream patches
- desc = 'Apply recommended upstream patches. May need to be set '
- desc += 'to False for third party patches or plugins'
- variant('patch', default=True, description=desc)
-
- # QMCPACK converter patch
- # https://github.com/QMCPACK/qmcpack/tree/develop/external_codes/quantum_espresso
- variant('qmcpack', default=False,
- description='Build QE-to-QMCPACK wave function converter')
-
- # Dependencies
- depends_on('blas')
- depends_on('lapack')
- depends_on('fftw-api@3')
- depends_on('sirius+fortran+shared')
depends_on('mpi', when='+mpi')
- depends_on('scalapack', when='+scalapack+mpi')
- depends_on('elpa+openmp', when='+elpa+openmp')
- depends_on('elpa~openmp', when='+elpa~openmp')
- # Versions of HDF5 prior to 1.8.16 lead to QE runtime errors
- depends_on('hdf5@1.8.16:+fortran+hl+mpi', when='hdf5=parallel')
- depends_on('hdf5@1.8.16:+fortran+hl~mpi', when='hdf5=serial')
- depends_on('hdf5', when='+qmcpack')
- # TODO: enable building EPW when ~mpi
- depends_on('mpi', when='+epw')
-
- # CONFLICTS SECTION
- # Omitted for now due to concretizer bug
- # MKL with 64-bit integers not supported.
- # conflicts(
- # '^mkl+ilp64',
- # msg='Quantum ESPRESSO does not support MKL 64-bit integer variant'
- # )
-
- # We can't ask for scalapack or elpa if we don't want MPI
- conflicts(
- '+scalapack',
- when='~mpi',
- msg='scalapack is a parallel library and needs MPI support'
- )
-
- conflicts(
- '+elpa',
- when='~mpi',
- msg='elpa is a parallel library and needs MPI support'
- )
-
- # HDF5 support introduced in 6.1.0, but the configure had some limitations.
- # In recent tests (Oct 2019), GCC and Intel work with the HDF5 Spack
- # package for the default variant. This is only for hdf5=parallel variant.
- # Support, for hdf5=serial was introduced in 6.4.1 but required a patch
- # for the serial (no MPI) case. This patch was to work around an issue
- # that only manifested itself inside the Spack environment.
- conflicts(
- 'hdf5=parallel',
- when='@:6.0',
- msg='parallel HDF5 support only in QE 6.1.0 and later'
- )
-
- conflicts(
- 'hdf5=serial',
- when='@:6.4.0',
- msg='serial HDF5 support only in QE 6.4.1 and later'
- )
-
- conflicts(
- 'hdf5=parallel',
- when='~mpi',
- msg='parallel HDF5 requires MPI support'
- )
-
- # Elpa is formally supported by @:5.4.0, but QE configure searches
- # for it in the wrong folders (or tries to download it within
- # the build directory). Instead of patching Elpa to provide the
- # folder QE expects as a link, we issue a conflict here.
- conflicts('+elpa', when='@:5.4.0')
-
- # Some QMCPACK converters are incompatible with upstream patches.
- # HDF5 is a hard requirement. Need to do two HDF5 cases explicitly
- # since Spack lacks support for expressing NOT operation.
- conflicts(
- '@6.4+patch',
- when='+qmcpack',
- msg='QE-to-QMCPACK wave function converter requires '
- 'deactivatation of upstream patches'
- )
- conflicts(
- '@6.3:6.4.0 hdf5=serial',
- when='+qmcpack',
- msg='QE-to-QMCPACK wave function converter only '
- 'supported with parallel HDF5'
- )
- conflicts(
- 'hdf5=none',
- when='+qmcpack',
- msg='QE-to-QMCPACK wave function converter requires HDF5'
- )
-
- # The first version of Q-E to feature integrated EPW is 6.0.0,
- # as per http://epw.org.uk/Main/DownloadAndInstall .
- # Complain if trying to install a version older than this.
- conflicts('+epw', when='@:5',
- msg='EPW only available from version 6.0.0 and on')
-
- # Below goes some constraints as shown in the link above.
- # Constraints may be relaxed as successful reports
- # of different compiler+mpi combinations arrive
-
- # TODO: enable building EPW when ~mpi
- conflicts('+epw', when='~mpi', msg='EPW needs MPI')
-
- # EPW doesn't gets along well with OpenMPI 2.x.x
- conflicts('+epw', when='^openmpi@2.0.0:2.999.999',
- msg='OpenMPI version incompatible with EPW')
-
- # EPW also doesn't gets along well with PGI 17.x + OpenMPI 1.10.7
- conflicts('+epw', when='^openmpi@1.10.7%pgi@17.0:17.12',
- msg='PGI+OpenMPI version combo incompatible with EPW')
-
- # Spurious problems running in parallel the Makefile
- # generated by the configure
- parallel = False
-
- def install(self, spec, prefix):
-
- prefix_path = prefix.bin if '@:5.4.0' in spec else prefix
- options = ['-prefix={0}'.format(prefix_path)]
-
- sirius = spec['sirius']
- options.append('LIBS={0}'.format(sirius.libs[0]))
- options.append('LD_LIBS={0}'.format(sirius.libs[0]))
-
- options.append('--disable-xml')
-
- # QE autoconf compiler variables has some limitations:
- # 1. There is no explicit MPICC variable so we must re-purpose
- # CC for the case of MPI.
- # 2. F90 variable is set to be consistent with MPIF90 wrapper
- # 3. If an absolute path for F90 is set, the build system breaks.
- #
- # Thus, due to 2. and 3. the F90 variable is not explictly set
- # because it would be mostly pointless and could lead to erroneous
- # behaviour.
- if '+mpi' in spec:
- mpi = spec['mpi']
- options.append('--enable-parallel=yes')
- options.append('MPIF90={0}'.format(mpi.mpifc))
- options.append('CC={0}'.format(mpi.mpicc))
- else:
- options.append('--enable-parallel=no')
- options.append('CC={0}'.format(spack_cc))
-
- options.append('F77={0}'.format(spack_f77))
- options.append('F90={0}'.format(spack_fc))
-
- header_dir = sirius.headers.directories[0]
- f90flags = 'F90FLAGS=-cpp -I {0}/sirius'.format(header_dir)
-
- if self.spec.satisfies('%gcc@10:'):
- f90flags += ' -fallow-argument-mismatch'
-
- options.append(f90flags)
-
- if '+openmp' in spec:
- options.append('--enable-openmp')
-
- # QE external BLAS, FFT, SCALAPACK detection is a bit tricky.
- # More predictable to pass in the correct link line to QE.
- # If external detection of BLAS, LAPACK and FFT fails, QE
- # is supposed to revert to internal versions of these libraries
- # instead -- but more likely it will pickup versions of these
- # libraries found in its the system path, e.g. Red Hat or
- # Ubuntu's FFTW3 package.
-
- # FFT
- # FFT detection gets derailed if you pass into the CPPFLAGS, instead
- # you need to pass it in the FFTW_INCLUDE and FFT_LIBS directory.
- # QE supports an internal FFTW2, but only an external FFTW3 interface.
-
- if '^mkl' in spec:
- # A seperate FFT library is not needed when linking against MKL
- options.append(
- 'FFTW_INCLUDE={0}'.format(join_path(env['MKLROOT'],
- 'include/fftw')))
- if '^fftw@3:' in spec:
- fftw_prefix = spec['fftw'].prefix
- options.append('FFTW_INCLUDE={0}'.format(fftw_prefix.include))
- fftw_ld_flags = spec['fftw'].libs.ld_flags
- options.append('FFT_LIBS={0}'.format(fftw_ld_flags))
-
- # External BLAS and LAPACK requires the correct link line into
- # BLAS_LIBS, do no use LAPACK_LIBS as the autoconf scripts indicate
- # that this variable is largely ignored/obsolete.
-
- # For many Spack packages, lapack.libs = blas.libs, hence it will
- # appear twice in in link line but this is harmless
- lapack_blas = spec['lapack'].libs + spec['blas'].libs
-
- # qe-6.5 fails to detect MKL for FFT if BLAS_LIBS is set due to
- # an unfortunate upsteam change in their autoconf/configure:
- # - qe-6.5/install/m4/x_ac_qe_blas.m4 only sets 'have_blas'
- # but no 'have_mkl' if BLAS_LIBS is set (which seems to be o.k.)
- # - however, qe-6.5/install/m4/x_ac_qe_fft.m4 in 6.5 unfortunately
- # relies on x_ac_qe_blas.m4 to detect MKL and set 'have_mkl'
- # - qe-5.4 up to 6.4.1 had a different logic and worked fine with
- # BLAS_LIBS being set
- # However, MKL is correctly picked up by qe-6.5 for BLAS and FFT if
- # MKLROOT is set (which SPACK does automatically for ^mkl)
- if not ('quantum-espresso@6.5' in spec and '^mkl' in spec):
- options.append('BLAS_LIBS={0}'.format(lapack_blas.ld_flags))
-
- if '+scalapack' in spec:
- scalapack_option = 'intel' if '^mkl' in spec else 'yes'
- options.append('--with-scalapack={0}'.format(scalapack_option))
-
- if '+elpa' in spec:
-
- # Spec for elpa
- elpa = spec['elpa']
-
- # Compute the include directory from there: versions
- # of espresso prior to 6.1 requires -I in front of the directory
- elpa_include = '' if '@6.1:' in spec else '-I'
- elpa_include += join_path(
- elpa.headers.directories[0],
- 'modules'
- )
-
- options.extend([
- '--with-elpa-include={0}'.format(elpa_include),
- '--with-elpa-lib={0}'.format(elpa.libs[0])
- ])
-
- if spec.variants['hdf5'].value != 'none':
- options.append('--with-hdf5={0}'.format(spec['hdf5'].prefix))
- if spec.satisfies('@6.4.1,6.5'):
- options.extend([
- '--with-hdf5-include={0}'.format(
- spec['hdf5'].headers.directories[0]
- ),
- '--with-hdf5-libs={0}'.format(
- spec['hdf5:hl,fortran'].libs.ld_flags
- )
- ])
-
- configure(*options)
-
- # Filter file must be applied after configure executes
- # QE 6.1.0 to QE 6.4 have `-L` missing in front of zlib library
- # This issue is backported through an internal patch in 6.4.1, but
- # can't be applied to the '+qmcpack' variant
- if spec.variants['hdf5'].value != 'none':
- if (spec.satisfies('@6.1.0:6.4.0') or
- (spec.satisfies('@6.4.1') and '+qmcpack' in spec)):
- make_inc = join_path(self.stage.source_path, 'make.inc')
- zlib_libs = spec['zlib'].prefix.lib + ' -lz'
- filter_file(
- zlib_libs, format(spec['zlib'].libs.ld_flags), make_inc
- )
-
- if '+epw' in spec:
- make('all', 'epw')
- else:
- make('all')
-
- if 'platform=darwin' in spec:
- mkdirp(prefix.bin)
- install('bin/*.x', prefix.bin)
- else:
- make('install')
+ depends_on('scalapack', when='+scalapack')
+ depends_on('elpa', when='+elpa')
+ depends_on('libxc', when='+libxc')
+ depends_on('hdf5', when='+hdf5')
+
+ depends_on('git', type='build')
+ depends_on('pkgconfig', type='build')
+
+ conflicts('~mpi', when='+scalapack', msg='SCALAPACK requires MPI support')
+ conflicts('~scalapack', when='+elpa', msg='ELPA requires SCALAPACK support')
+
+ def cmake_args(self):
+ args = [
+ '-DQE_ENABLE_SIRIUS=ON',
+ '-DQE_ENABLE_CUDA=OFF',
+ '-DQE_LAPACK_INTERNAL=OFF',
+ '-DQE_ENABLE_DOC=OFF',
+ self.define_from_variant('QE_ENABLE_MPI', 'mpi'),
+ self.define_from_variant('QE_ENABLE_OPENMP', 'openmp'),
+ self.define_from_variant('QE_ENABLE_ELPA', 'elpa'),
+ self.define_from_variant('QE_ENABLE_LIBXC', 'libxc'),
+ self.define_from_variant('QE_ENABLE_HDF5', 'hdf5'),
+ self.define_from_variant('QE_ENABLE_SCALAPACK', 'scalapack')
+ ]
+
+ # Work around spack issue #19970 where spack sets
+ # rpaths for MKL just during make, but cmake removes
+ # them during make install.
+ if '^mkl' in self.spec:
+ args.append('-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=ON')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/qbank/package.py b/var/spack/repos/builtin/packages/qbank/package.py
index 95a3782778..e62e8197ba 100644
--- a/var/spack/repos/builtin/packages/qbank/package.py
+++ b/var/spack/repos/builtin/packages/qbank/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qbox/package.py b/var/spack/repos/builtin/packages/qbox/package.py
index 0233f62956..68179eaf1b 100644
--- a/var/spack/repos/builtin/packages/qbox/package.py
+++ b/var/spack/repos/builtin/packages/qbox/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qca/package.py b/var/spack/repos/builtin/packages/qca/package.py
index 9a040bc667..36da912b04 100644
--- a/var/spack/repos/builtin/packages/qca/package.py
+++ b/var/spack/repos/builtin/packages/qca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qcachegrind/package.py b/var/spack/repos/builtin/packages/qcachegrind/package.py
index ff9c436795..5ef0877126 100644
--- a/var/spack/repos/builtin/packages/qcachegrind/package.py
+++ b/var/spack/repos/builtin/packages/qcachegrind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Qcachegrind(QMakePackage):
homepage = "https://github.com/KDE/kcachegrind"
url = "https://github.com/KDE/kcachegrind/archive/v20.08.0.tar.gz"
+ version('20.12.2', sha256='935cf6665fac274f84af84d0a30cc2fdf27d437234b9accbf8ec0a5dba6ad867')
version('20.08.0', sha256='ffb50a7c536042ff11eed714b359b8bc419cb12402a31ebe78c3d06363f234e6')
depends_on('qt@5.2:')
diff --git a/var/spack/repos/builtin/packages/qd/package.py b/var/spack/repos/builtin/packages/qd/package.py
index 100fa9cc63..e205ccd004 100644
--- a/var/spack/repos/builtin/packages/qd/package.py
+++ b/var/spack/repos/builtin/packages/qd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,8 @@ class Qd(AutotoolsPackage):
homepage = "https://bitbucket.org/njet/qd-library/src/master/"
git = "https://bitbucket.org/njet/qd-library.git"
+ tags = ['hep']
+
version('2.3.13', commit='a57dde9')
depends_on('autoconf', type='build')
diff --git a/var/spack/repos/builtin/packages/qemu/package.py b/var/spack/repos/builtin/packages/qemu/package.py
index a1f745203b..eab99fdb6c 100644
--- a/var/spack/repos/builtin/packages/qemu/package.py
+++ b/var/spack/repos/builtin/packages/qemu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qgis/package.py b/var/spack/repos/builtin/packages/qgis/package.py
index dad5d6ba76..95a45656cf 100644
--- a/var/spack/repos/builtin/packages/qgis/package.py
+++ b/var/spack/repos/builtin/packages/qgis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,14 +17,16 @@ class Qgis(CMakePackage):
maintainers = ['adamjstewart', 'Sinan81']
+ version('3.18.2', sha256='1913e4d5596bbc8b7d143f3defb18bf376f750a71f334f69d76af5deca7ecc5d')
+ # Prefer latest long term release
+ version('3.16.5', sha256='525f469ad6e40dd7a8f09ebab5eb6a2dffc45939b99b7d937750cc04ed78d61c', preferred=True)
version('3.14.16', sha256='c9915c2e577f1812a2b35b678b123c58407e07824d73e5ec0dda13db7ca75c04')
version('3.14.0', sha256='1b76c5278def0c447c3d354149a2afe2562ac26cf0bcbe69b9e0528356d407b8')
version('3.12.3', sha256='c2b53815f9b994e1662995d1f25f90628156b996758f5471bffb74ab29a95220')
version('3.12.2', sha256='501f81715672205afd2c1a289ffc765aff96eaa8ecb49d079a58ef4d907467b8')
version('3.12.1', sha256='a7dc7af768b8960c08ce72a06c1f4ca4664f4197ce29c7fe238429e48b2881a8')
version('3.12.0', sha256='19e9c185dfe88cad7ee6e0dcf5ab7b0bbfe1672307868a53bf771e0c8f9d5e9c')
- # Prefer latest long term release
- version('3.10.10', sha256='e21a778139823fb6cf12e4a38f00984fcc060f41abcd4f0af83642d566883839', preferred=True)
+ version('3.10.10', sha256='e21a778139823fb6cf12e4a38f00984fcc060f41abcd4f0af83642d566883839')
version('3.10.7', sha256='f6c02489e065bae355d2f4374b84a1624379634c34a770b6d65bf38eb7e71564')
version('3.10.6', sha256='a96791bf6615e4f8ecdbbb9a90a8ef14a12459d8c5c374ab22eb5f776f864bb5')
version('3.10.5', sha256='f3e1cc362941ec69cc21062eeaea160354ef71382b21dc4b3191c315447b4ce1')
@@ -71,8 +73,7 @@ class Qgis(CMakePackage):
variant('txt2tags', default=False, description='Generate PDF for txt2tags documentation')
# Ref. for dependencies:
- # http://htmlpreview.github.io/?https://raw.github.com/qgis/QGIS/master/doc/INSTALL.html
- # https://github.com/qgis/QGIS/blob/master/INSTALL
+ # https://github.com/qgis/QGIS/blob/master/INSTALL.md
depends_on('exiv2')
depends_on('expat@1.95:')
depends_on('gdal@2.1.0: +python', type=('build', 'link', 'run'))
@@ -96,6 +97,7 @@ class Qgis(CMakePackage):
depends_on('qwt@5:')
depends_on('qwtpolar')
depends_on('sqlite@3.0.0: +column_metadata')
+ depends_on('protobuf', when='@3.16.4:')
# Runtime python dependencies, not mentioned in install instructions
depends_on('py-pyyaml', type='run')
@@ -126,8 +128,13 @@ class Qgis(CMakePackage):
depends_on('qt@5.9.0:', when='@3.10.0:')
depends_on('qtkeychain@:1.5.99', when='^qt@4')
depends_on('qt@:4', when='@2')
+ # Help concretizer
+ # +qsci_api is implied by qscintilla+python dependency
+ depends_on('py-pyqt4 +qsci_api', when='@2')
+ depends_on('py-pyqt5@5.3: +qsci_api', when='@3')
- patch('pyqt5.patch', when='^qt@5')
+ patch('pyqt5.patch', when='@:3.14 ^qt@5')
+ patch('pyqt5_3165x.patch', when='@3.16.5: ^qt@5')
def cmake_args(self):
spec = self.spec
@@ -184,8 +191,7 @@ class Qgis(CMakePackage):
'TRUE' if '+gui' in spec else 'FALSE'),
'-DWITH_INTERNAL_MDAL={0}'.format(
'TRUE' if '+internal_mdal' in spec else 'FALSE'),
- '-DWITH_INTERNAL_O2={0}'.format(
- 'ON' if '+internal_o2' in spec else 'OFF'),
+ self.define_from_variant('WITH_INTERNAL_O2', 'internal_o2'),
'-DWITH_OAUTH2_PLUGIN={0}'.format(
'TRUE' if '+oauth2_plugin' in spec else 'FALSE'),
'-DWITH_ORACLE={0}'.format(
@@ -196,14 +202,12 @@ class Qgis(CMakePackage):
'TRUE' if '+py_compile' in spec else 'FALSE'),
'-DWITH_QSCIAPI={0}'.format(
'TRUE' if '+qsciapi' in spec else 'FALSE'),
- '-DWITH_QSPATIALITE={0}'.format(
- 'ON' if '+qspatialite' in spec else 'OFF'),
+ self.define_from_variant('WITH_QSPATIALITE', 'qspatialite'),
'-DWITH_QT5SERIALPORT={0}'.format(
'TRUE' if '+qt5serialport' in spec else 'FALSE'),
'-DWITH_QTMOBILITY={0}'.format(
'TRUE' if '+qtmobility' in spec else 'FALSE'),
- '-DWITH_QTWEBKIT={0}'.format(
- 'ON' if '+qtwebkit' in spec else 'OFF'),
+ self.define_from_variant('WITH_QTWEBKIT', 'qtwebkit'),
'-DWITH_QUICK={0}'.format(
'TRUE' if '+quick' in spec else 'FALSE'),
'-DWITH_QWTPOLAR={0}'.format(
diff --git a/var/spack/repos/builtin/packages/qgis/pyqt5_3165x.patch b/var/spack/repos/builtin/packages/qgis/pyqt5_3165x.patch
new file mode 100644
index 0000000000..931dcaee01
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qgis/pyqt5_3165x.patch
@@ -0,0 +1,29 @@
+diff -ru a/cmake/FindPyQt5.py b/cmake/FindPyQt5.py
+--- a/cmake/FindPyQt5.py 2021-04-18 11:12:34.520409268 -0700
++++ b/cmake/FindPyQt5.py 2021-04-18 11:17:56.574204157 -0700
+@@ -41,6 +41,7 @@
+
+ cfg = sipconfig.Configuration()
+ sip_dir = cfg.default_sip_dir
++ pyqt_prefix = os.sep.join(PyQt5.QtCore.__file__.split(os.sep)[0:-5])
+ if sys.platform.startswith('freebsd'):
+ py_version = str(sys.version_info.major) + str(sys.version_info.minor)
+ sip_dir = sip_dir.replace(py_version, '')
+@@ -51,12 +52,12 @@
+ if os.path.exists(os.path.join(p, "QtCore", "QtCoremod.sip")):
+ sip_dir = p
+ break
+- else:
+- sys.exit(1)
++# else:
++# sys.exit(1)
+ cfg = {
+- 'pyqt_mod_dir': os.path.join(cfg.default_mod_dir, "PyQt5"),
+- 'pyqt_sip_dir': sip_dir,
+- 'pyqt_bin_dir': cfg.default_bin_dir,
++ 'pyqt_mod_dir': os.path.dirname(PyQt5.QtCore.__file__),
++ 'pyqt_sip_dir': os.path.join(pyqt_prefix,'share','sip','PyQt5'),
++ 'pyqt_bin_dir': os.path.join(pyqt_prefix,'bin'),
+ }
+ else: # Code for SIP v5
+ from distutils.sysconfig import get_python_lib
diff --git a/var/spack/repos/builtin/packages/qgraf/package.py b/var/spack/repos/builtin/packages/qgraf/package.py
index 5affba785f..6ca1c80480 100644
--- a/var/spack/repos/builtin/packages/qgraf/package.py
+++ b/var/spack/repos/builtin/packages/qgraf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Qgraf(Package):
homepage = "http://cfif.ist.utl.pt/~paulo/qgraf.html"
url = "http://anonymous:anonymous@qgraf.tecnico.ulisboa.pt/v3.4/qgraf-3.4.2.tgz"
+ tags = ['hep']
+
version('3.4.2', sha256='cfc029fb871c78943865ef8b51ebcd3cd4428448b8816714b049669dfdeab8aa')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/qhull/package.py b/var/spack/repos/builtin/packages/qhull/package.py
index 884499fd36..a3887b8ce8 100644
--- a/var/spack/repos/builtin/packages/qhull/package.py
+++ b/var/spack/repos/builtin/packages/qhull/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qjson/package.py b/var/spack/repos/builtin/packages/qjson/package.py
index 389cda9835..655285a7e5 100644
--- a/var/spack/repos/builtin/packages/qjson/package.py
+++ b/var/spack/repos/builtin/packages/qjson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qmcpack/package.py b/var/spack/repos/builtin/packages/qmcpack/package.py
index 07724f63fe..32712a7172 100644
--- a/var/spack/repos/builtin/packages/qmcpack/package.py
+++ b/var/spack/repos/builtin/packages/qmcpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,8 @@ class Qmcpack(CMakePackage, CudaPackage):
# can occasionally change.
# NOTE: 12/19/2017 QMCPACK 3.0.0 does not build properly with Spack.
version('develop')
+ version('3.11.0', tag='v3.11.0')
+ version('3.10.0', tag='v3.10.0')
version('3.9.2', tag='v3.9.2')
version('3.9.1', tag='v3.9.1')
version('3.9.0', tag='v3.9.0')
@@ -40,16 +42,18 @@ class Qmcpack(CMakePackage, CudaPackage):
description='The build type to build',
values=('Debug', 'Release', 'RelWithDebInfo'))
variant('mpi', default=True, description='Build with MPI support')
- variant('phdf5', default=True, description='Build with parallel collective I/O')
+ variant('phdf5', default=False, description='Build with parallel collective I/O')
variant('complex', default=False,
description='Build the complex (general twist/k-point) version')
variant('mixed', default=False,
description='Build the mixed precision (mixture of single and '
'double precision) version')
variant('soa', default=True,
- description='Build with Structure-of-Array instead of '
- 'Array-of-Structure code. Only for CPU code')
- variant('timers', default=False,
+ description='Build with Structure-of-Array (SoA) instead of '
+ 'Array-of-Structure code (AoS). This is a legacy '
+ 'option and the AoS code is not available after '
+ 'v3.10.0. Only affected performance, not results.')
+ variant('timers', default=True,
description='Build with support for timers')
variant('da', default=False,
description='Install with support for basic data analysis tools')
@@ -74,6 +78,11 @@ class Qmcpack(CMakePackage, CudaPackage):
# high-level variant conflicts
conflicts(
+ '~soa',
+ when='@3.10.0:',
+ msg='AoS code path is not available after QMCPACK v3.10.0')
+
+ conflicts(
'+phdf5',
when='~mpi',
msg='Parallel collective I/O requires MPI-enabled QMCPACK. '
@@ -87,17 +96,28 @@ class Qmcpack(CMakePackage, CudaPackage):
conflicts('^openblas+ilp64',
msg='QMCPACK does not support OpenBLAS 64-bit integer variant')
+ conflicts('cuda_arch=none',
+ when='+cuda',
+ msg='A value for cuda_arch must be specified. Add cuda_arch=XX')
+
# Omitted for now due to concretizer bug
# conflicts('^intel-mkl+ilp64',
# msg='QMCPACK does not support MKL 64-bit integer variant')
+ # QMCPACK 3.10.0 increased the minimum requirements for compiler versions
+ newer_compiler_warning = 'QMCPACK v3.10.0 or later requires a newer ' \
+ 'version of this compiler'
+ conflicts('%gcc@:6', when='@3.10.0:', msg=newer_compiler_warning)
+ conflicts('%intel@:18', when='@3.10.0:', msg=newer_compiler_warning)
+ conflicts('%clang@:6', when='@3.10.0:', msg=newer_compiler_warning)
+
# QMCPACK 3.6.0 or later requires support for C++14
- compiler_warning = 'QMCPACK 3.6.0 or later requires a ' \
- 'compiler with support for C++14'
- conflicts('%gcc@:4', when='@3.6.0:', msg=compiler_warning)
- conflicts('%intel@:17', when='@3.6.0:', msg=compiler_warning)
- conflicts('%pgi@:17', when='@3.6.0:', msg=compiler_warning)
- conflicts('%llvm@:3.4', when='@3.6.0:', msg=compiler_warning)
+ cpp14_warning = 'QMCPACK v3.6.0 or later requires a ' \
+ 'compiler with support for C++14'
+ conflicts('%gcc@:4', when='@3.6.0:', msg=cpp14_warning)
+ conflicts('%intel@:17', when='@3.6.0:', msg=cpp14_warning)
+ conflicts('%pgi@:17', when='@3.6.0:', msg=cpp14_warning)
+ conflicts('%clang@:3.4', when='@3.6.0:', msg=cpp14_warning)
conflicts('+afqmc', when='@:3.6.0', msg='AFQMC not recommended before v3.7')
conflicts('+afqmc', when='~mpi', msg='AFQMC requires building with +mpi')
@@ -125,8 +145,9 @@ class Qmcpack(CMakePackage, CudaPackage):
# Essential libraries
depends_on('cmake@3.4.3:', when='@:3.5.0', type='build')
depends_on('cmake@3.6.0:', when='@3.6.0:', type='build')
- depends_on('boost')
- depends_on('boost@1.61.0:', when='@3.6.0:')
+ depends_on('cmake@3.14.0:', when='@3.10.0:', type='build')
+ depends_on('boost', type='build')
+ depends_on('boost@1.61.0:', when='@3.6.0:', type='build')
depends_on('libxml2')
depends_on('mpi', when='+mpi')
depends_on('python@3:', when='@3.9:')
@@ -265,14 +286,7 @@ class Qmcpack(CMakePackage, CudaPackage):
'QMCPACK only supports compilation for a single '
'GPU architecture at a time'
)
- if cuda_arch != 'none':
- args.append('-DCUDA_ARCH=sm_{0}'.format(cuda_arch))
- else:
- # This is the default value set in QMCPACK's CMake
- # Not possible to set default value for cuda_arch,
- # thus this won't be stored in the spec, which is
- # a problem.
- args.append('-DCUDA_ARCH=sm_35')
+ args.append('-DCUDA_ARCH=sm_{0}'.format(cuda_arch))
else:
args.append('-DQMC_CUDA=0')
@@ -352,7 +366,6 @@ class Qmcpack(CMakePackage, CudaPackage):
# We assume cwd is self.stage.source_path, then
# install manual, labs, and nexus
- install_tree('manual', prefix.manual)
install_tree('labs', prefix.labs)
install_tree('nexus', prefix.nexus)
diff --git a/var/spack/repos/builtin/packages/qmd-progress/package.py b/var/spack/repos/builtin/packages/qmd-progress/package.py
index 7d7a6cfda6..ff71f469eb 100644
--- a/var/spack/repos/builtin/packages/qmd-progress/package.py
+++ b/var/spack/repos/builtin/packages/qmd-progress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qnnpack/package.py b/var/spack/repos/builtin/packages/qnnpack/package.py
index a5c1f73e71..eb2110d5dd 100644
--- a/var/spack/repos/builtin/packages/qnnpack/package.py
+++ b/var/spack/repos/builtin/packages/qnnpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qorts/package.py b/var/spack/repos/builtin/packages/qorts/package.py
index 89a4ea2508..280c01365a 100644
--- a/var/spack/repos/builtin/packages/qorts/package.py
+++ b/var/spack/repos/builtin/packages/qorts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qperf/package.py b/var/spack/repos/builtin/packages/qperf/package.py
index 1de0100db0..372bef5b78 100644
--- a/var/spack/repos/builtin/packages/qperf/package.py
+++ b/var/spack/repos/builtin/packages/qperf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qrupdate/package.py b/var/spack/repos/builtin/packages/qrupdate/package.py
index 760500dfa4..cea9590dfb 100644
--- a/var/spack/repos/builtin/packages/qrupdate/package.py
+++ b/var/spack/repos/builtin/packages/qrupdate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,12 +23,22 @@ class Qrupdate(MakefilePackage, SourceforgePackage):
def edit(self, spec, prefix):
# BSD "install" does not understand GNU -D flag.
# We will create the parent directory ourselves.
- makefile = FileFilter('src/Makefile')
if (sys.platform == 'darwin'):
+ makefile = FileFilter('src/Makefile')
makefile.filter('-D', '')
+
+ # Concurrent (parallel) Compilation requires calling $(MAKE) not make
+ makefile = FileFilter('Makefile')
+ makefile.filter('make', '$(MAKE)')
+
+ # We may like to compile with any Forran compiler, not always gfortran
+ makefile = FileFilter('Makeconf')
+ makefile.filter('FC=gfortran', 'FC ?= gfortran')
+
return
- def install(self, spec, prefix):
+ # The Makefile does not take the simple "make" rule
+ def build(self, spec, prefix):
lapack_blas = spec['lapack'].libs + spec['blas'].libs
@@ -41,11 +51,17 @@ class Qrupdate(MakefilePackage, SourceforgePackage):
if (spec.satisfies('^openblas+ilp64') or
spec.satisfies('^intel-mkl+ilp64') or
spec.satisfies('^intel-parallel-studio+mkl+ilp64')):
- make_args.append('FFLAGS=-fdefault-integer-8')
+ if (spec.satisfies('%intel') or spec.satisfies('%oneapi')
+ or spec.satisfies('%nvhpc')):
+ # 64bits integer for ifort and nvfortran are promoted by:
+ make_args.append('FFLAGS=-i8')
+ else:
+ make_args.append('FFLAGS=-fdefault-integer-8')
# Build static and dynamic libraries:
make('lib', 'solib', *make_args)
+ def install(self, spec, prefix):
# "INSTALL" confuses "make install" on case-insensitive filesystems:
if os.path.isfile("INSTALL"):
os.remove("INSTALL")
diff --git a/var/spack/repos/builtin/packages/qscintilla/package.py b/var/spack/repos/builtin/packages/qscintilla/package.py
index ec20257676..30dd0405a3 100644
--- a/var/spack/repos/builtin/packages/qscintilla/package.py
+++ b/var/spack/repos/builtin/packages/qscintilla/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,25 +13,29 @@ class Qscintilla(QMakePackage):
"""
homepage = "https://www.riverbankcomputing.com/software/qscintilla/intro"
- url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/2.11.2/QScintilla_gpl-2.11.2.tar.gz"
+ url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/2.12.0/QScintilla_src-2.12.0.tar.gz"
- version('2.11.2', sha256='029bdc476a069fda2cea3cd937ba19cc7fa614fb90578caef98ed703b658f4a1')
- # Newer versions of Qscintilla won't build, so prefer the following version
- version('2.10.2', sha256='14b31d20717eed95ea9bea4cd16e5e1b72cee7ebac647cba878e0f6db6a65ed0', preferred=True)
+ # Directory structure is changed in latest release, logic is lost
+ version('2.12.0', sha256='a4cc9e7d2130ecfcdb18afb43b813ef122473f6f35deff747415fbc2fe0c60ed', url='https://www.riverbankcomputing.com/static/Downloads/QScintilla/2.12.0/QScintilla_src-2.12.0.tar.gz')
+
+ # Last standard release dates back to 2021/11/23
+ version('2.11.6', sha256='e7346057db47d2fb384467fafccfcb13aa0741373c5d593bc72b55b2f0dd20a7', preferred=True, url='https://www.riverbankcomputing.com/static/Downloads/QScintilla/2.11.6/QScintilla-2.11.6.tar.gz')
+ version('2.11.2', sha256='029bdc476a069fda2cea3cd937ba19cc7fa614fb90578caef98ed703b658f4a1', url='https://www.riverbankcomputing.com/static/Downloads/QScintilla/2.11.2/QScintilla_gpl-2.11.2.tar.gz')
+ version('2.10.2', sha256='14b31d20717eed95ea9bea4cd16e5e1b72cee7ebac647cba878e0f6db6a65ed0', url='https://www.riverbankcomputing.com/static/Downloads/QScintilla/2.10.2/QScintilla-2.10.2.tar.gz')
variant('designer', default=False, description="Enable pluging for Qt-Designer")
variant('python', default=False, description="Build python bindings")
+ depends_on('qt+opengl', when='+python')
depends_on('qt')
depends_on('py-pyqt5 +qsci_api', type=('build', 'run'), when='+python ^qt@5')
depends_on('py-pyqt4 +qsci_api', type=('build', 'run'), when='+python ^qt@4')
depends_on('python', type=('build', 'run'), when='+python')
+ # adter install inquires py-sip variant : so we need to have it
+ depends_on('py-sip', type='build', when='~python')
extends('python', when='+python')
-
- @run_before('qmake')
- def chdir(self):
- os.chdir(str(self.stage.source_path) + '/Qt4Qt5')
+ build_directory = 'Qt4Qt5'
def qmake_args(self):
# below, DEFINES ... gets rid of ...regex...errors during build
@@ -50,7 +54,7 @@ class Qscintilla(QMakePackage):
# Fix install prefix
@run_after('qmake')
def fix_install_path(self):
- makefile = FileFilter('Makefile')
+ makefile = FileFilter(join_path('Qt4Qt5', 'Makefile'))
makefile.filter(r'\$\(INSTALL_ROOT\)' +
self.spec['qt'].prefix, '$(INSTALL_ROOT)')
@@ -128,7 +132,10 @@ class Qscintilla(QMakePackage):
makefile = FileFilter('Qsci/Makefile')
makefile.filter(r'\$\(INSTALL_ROOT\)', '')
- make('install')
+ if '@2.11:' in self.spec:
+ make('install', parallel=False)
+ else:
+ make('install')
@run_after('install')
def extend_path_setup(self):
diff --git a/var/spack/repos/builtin/packages/qt-creator/package.py b/var/spack/repos/builtin/packages/qt-creator/package.py
index 6b37a1a6c7..5d22e208f7 100644
--- a/var/spack/repos/builtin/packages/qt-creator/package.py
+++ b/var/spack/repos/builtin/packages/qt-creator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qt/package.py b/var/spack/repos/builtin/packages/qt/package.py
index de058431da..59082fa3de 100644
--- a/var/spack/repos/builtin/packages/qt/package.py
+++ b/var/spack/repos/builtin/packages/qt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,33 +15,39 @@ MACOS_VERSION = macos_version() if sys.platform == 'darwin' else None
class Qt(Package):
"""Qt is a comprehensive cross-platform C++ application framework."""
- homepage = 'http://qt.io'
- # Alternative location 'http://download.qt.io/official_releases/qt/'
- url = 'http://download.qt.io/archive/qt/5.7/5.7.0/single/qt-everywhere-opensource-src-5.7.0.tar.gz'
+ homepage = 'https://qt.io'
+
+ # Supported releases: 'https://download.qt.io/official_releases/qt/'
+ # Older archives: 'https://download.qt.io/new_archive/qt/'
+ url = 'https://download.qt.io/archive/qt/5.15/5.15.2/single/qt-everywhere-src-5.15.2.tar.xz'
list_url = 'http://download.qt.io/archive/qt/'
list_depth = 3
maintainers = ['sethrj']
phases = ['configure', 'build', 'install']
+ version('5.15.2', sha256='3a530d1b243b5dec00bc54937455471aaa3e56849d2593edb8ded07228202240')
version('5.14.2', sha256='c6fcd53c744df89e7d3223c02838a33309bd1c291fcb6f9341505fe99f7f19fa')
- version('5.14.1', sha256='6f17f488f512b39c2feb57d83a5e0a13dcef32999bea2e2a8f832f54a29badb8')
- version('5.14.0', sha256='be9a77cd4e1f9d70b58621d0753be19ea498e6b0da0398753e5038426f76a8ba')
- version('5.13.1', sha256='adf00266dc38352a166a9739f1a24a1e36f1be9c04bf72e16e142a256436974e')
- version('5.12.7', sha256='873783a0302129d98a8f63de9afe4520fb5f8d5316be8ad7b760c59875cd8a8d')
- version('5.12.5', sha256='a2299e21db7767caf98242767bffb18a2a88a42fee2d6a393bedd234f8c91298')
- version('5.12.2', sha256='59b8cb4e728450b21224dcaaa40eb25bafc5196b6988f2225c394c6b7f881ff5')
- version('5.11.3', sha256='859417642713cee2493ee3646a7fee782c9f1db39e41d7bb1322bba0c5f0ff4d')
- version('5.11.2', sha256='c6104b840b6caee596fa9a35bc5f57f67ed5a99d6a36497b6fe66f990a53ca81')
- version('5.10.0', sha256='936d4cf5d577298f4f9fdb220e85b008ae321554a5fcd38072dc327a7296230e')
- version('5.9.1', sha256='7b41a37d4fe5e120cdb7114862c0153f86c07abbec8db71500443d2ce0c89795')
- version('5.9.0', sha256='f70b5c66161191489fc13c7b7eb69bf9df3881596b183e7f6d94305a39837517')
- version('5.8.0', sha256='9dc5932307ae452855863f6405be1f7273d91173dcbe4257561676a599bd58d3')
- version('5.7.1', sha256='c86684203be61ae7b33a6cf33c23ec377f246d697bd9fb737d16f0ad798f89b7')
- version('5.7.0', sha256='4661905915d6265243e17fe59852930a229cf5b054ce5af5f48b34da9112ab5f')
- version('5.5.1', sha256='c7fad41a009af1996b62ec494e438aedcb072b3234b2ad3eeea6e6b1f64be3b3')
- version('5.4.2', sha256='cfc768c55f0a0cd232bed914a9022528f8f2e50cb010bf0e4f3f62db3dfa17bd')
- version('5.4.0', sha256='1739633424bde3d89164ae6ff1c5c913be38b9997e451558ef873aac4bbc408a')
+ version('5.14.1', sha256='6f17f488f512b39c2feb57d83a5e0a13dcef32999bea2e2a8f832f54a29badb8', deprecated=True)
+ version('5.14.0', sha256='be9a77cd4e1f9d70b58621d0753be19ea498e6b0da0398753e5038426f76a8ba', deprecated=True)
+ version('5.13.1', sha256='adf00266dc38352a166a9739f1a24a1e36f1be9c04bf72e16e142a256436974e', deprecated=True)
+ version('5.12.10', sha256='3e0ee1e57f5cf3eeb038d0b4b22c7eb442285c62639290756b39dc93a1d0e14f')
+ version('5.12.7', sha256='873783a0302129d98a8f63de9afe4520fb5f8d5316be8ad7b760c59875cd8a8d', deprecated=True)
+ version('5.12.5', sha256='a2299e21db7767caf98242767bffb18a2a88a42fee2d6a393bedd234f8c91298', deprecated=True)
+ version('5.12.2', sha256='59b8cb4e728450b21224dcaaa40eb25bafc5196b6988f2225c394c6b7f881ff5', deprecated=True)
+ version('5.11.3', sha256='859417642713cee2493ee3646a7fee782c9f1db39e41d7bb1322bba0c5f0ff4d', deprecated=True)
+ version('5.11.2', sha256='c6104b840b6caee596fa9a35bc5f57f67ed5a99d6a36497b6fe66f990a53ca81', deprecated=True)
+ version('5.10.0', sha256='936d4cf5d577298f4f9fdb220e85b008ae321554a5fcd38072dc327a7296230e', deprecated=True)
+ version('5.9.9', sha256='5ce285209290a157d7f42ec8eb22bf3f1d76f2e03a95fc0b99b553391be01642')
+ version('5.9.1', sha256='7b41a37d4fe5e120cdb7114862c0153f86c07abbec8db71500443d2ce0c89795', deprecated=True)
+ version('5.9.0', sha256='f70b5c66161191489fc13c7b7eb69bf9df3881596b183e7f6d94305a39837517', deprecated=True)
+ version('5.8.0', sha256='0f4c54386d3dbac0606a936a7145cebb7b94b0ca2d29bc001ea49642984824b6', deprecated=True)
+ version('5.7.1', sha256='46ebca977deb629c5e69c2545bc5fe13f7e40012e5e2e451695c583bd33502fa', deprecated=True)
+ version('5.7.0', sha256='a6a2632de7e44bbb790bc3b563f143702c610464a7f537d02036749041fd1800', deprecated=True)
+ version('5.6.3', sha256='2fa0cf2e5e8841b29a4be62062c1a65c4f6f2cf1beaf61a5fd661f520cd776d0')
+ version('5.5.1', sha256='c7fad41a009af1996b62ec494e438aedcb072b3234b2ad3eeea6e6b1f64be3b3', deprecated=True)
+ version('5.4.2', sha256='cfc768c55f0a0cd232bed914a9022528f8f2e50cb010bf0e4f3f62db3dfa17bd', deprecated=True)
+ version('5.4.0', sha256='1739633424bde3d89164ae6ff1c5c913be38b9997e451558ef873aac4bbc408a', deprecated=True)
version('5.3.2', sha256='c8d3fd2ead30705c6673c5e4af6c6f3973346b4fb2bd6079c7be0943a5b0282d')
version('5.2.1', sha256='84e924181d4ad6db00239d87250cc89868484a14841f77fb85ab1f1dbdcd7da1')
version('4.8.7', sha256='e2882295097e47fe089f8ac741a95fef47e0a73a3f3cdf21b56990638f626ea0')
@@ -51,30 +57,32 @@ class Qt(Package):
variant('debug', default=False,
description="Build debug version.")
- variant('gtk', default=False,
- description="Build with gtkplus.")
- variant('webkit', default=False,
- description="Build the Webkit extension")
+ variant('dbus', default=False,
+ description="Build with D-Bus support.")
+ variant('doc', default=False,
+ description="Build QDoc and documentation.")
variant('examples', default=False,
description="Build examples.")
variant('framework', default=bool(MACOS_VERSION),
description="Build as a macOS Framework package.")
- variant('tools', default=True,
- description="Build tools, including Qt Designer.")
- variant('dbus', default=False,
- description="Build with D-Bus support.")
- variant('phonon', default=False,
- description="Build with phonon support.")
+ variant('gtk', default=False,
+ description="Build with gtkplus.")
+ variant('gui', default=True,
+ description='Build the Qt GUI module and dependencies')
variant('opengl', default=False,
description="Build with OpenGL support.")
- variant('sql', default=True,
- description="Build with SQL support.")
+ variant('phonon', default=False,
+ description="Build with phonon support.")
variant('shared', default=True,
description='Build shared libraries.')
+ variant('sql', default=True,
+ description="Build with SQL support.")
variant('ssl', default=True,
description="Build with OpenSSL support.")
- variant('freetype', default='spack', description='Freetype2 support',
- values=('spack', 'qt', 'none'), multi=False)
+ variant('tools', default=True,
+ description="Build tools, including Qt Designer.")
+ variant('webkit', default=False,
+ description="Build the Webkit extension")
# Patches for qt@3
patch('qt3-accept.patch', when='@3')
@@ -103,7 +111,7 @@ class Qt(Package):
# https://bugreports.qt.io/browse/QTBUG-57656
patch('qt5-8-framework.patch', when='@5.8.0 +framework')
# https://bugreports.qt.io/browse/QTBUG-58038
- patch('qt5-8-freetype.patch', when='@5.8.0 freetype=spack')
+ patch('qt5-8-freetype.patch', when='@5.8.0 +gui')
# https://codereview.qt-project.org/c/qt/qtbase/+/245425
patch('https://github.com/qt/qtbase/commit/a52d7861edfb5956de38ba80015c4dd0b596259b.patch',
sha256='c49b228c27e3ad46ec3af4bac0e9985af5b5b28760f238422d32e14f98e49b1e',
@@ -115,7 +123,25 @@ class Qt(Package):
patch('qt5-11-intel-overflow.patch', when='@5.11 %intel')
patch('qt5-12-intel-overflow.patch', when='@5.12:5.14.0 %intel')
# https://bugreports.qt.io/browse/QTBUG-78937
- patch('qt5-12-configure.patch', when='@5.12')
+ patch('qt5-12-configure.patch', when='@5.12.7')
+ # https://bugreports.qt.io/browse/QTBUG-93402
+ patch('qt5-15-gcc-10.patch', when='@5.12.7:5.15 %gcc@8:')
+ patch('qt514.patch', when='@5.14')
+ patch('qt514-isystem.patch', when='@5.14.2')
+ # https://bugreports.qt.io/browse/QTBUG-90395
+ patch('https://src.fedoraproject.org/rpms/qt5-qtbase/raw/6ae41be8260f0f5403367eb01f7cd8319779674a/f/qt5-qtbase-gcc11.patch',
+ sha256='9378afd071ad5c0ec8f7aef48421e4b9fab02f24c856bee9c0951143941913c5',
+ working_dir='qtbase',
+ when='@5.14: %gcc@11:')
+ patch('https://src.fedoraproject.org/rpms/qt5-qtdeclarative/raw/593481a2541d3218f285dd7b46bdc5f4c76075ab/f/qt5-qtdeclarative-gcc11.patch',
+ sha256='2081e9cb85f6712be9b63c70204efa3da954c07d857283eeae16d1b0409704bd',
+ working_dir='qtdeclarative',
+ when='@5.14: %gcc@11:')
+ patch('https://src.fedoraproject.org/rpms/qt5-qtwebsockets/raw/f54f4ce6fa27941e9e6d606103d32056078edc74/f/qt5-qtwebsockets-gcc11.patch',
+ sha256='84b099109d08adf177adf9d3542b6215ec3e42138041d523860dbfdcb59fdaae',
+ working_dir='qtwebsockets',
+ when='@5.14: %gcc@11:')
+ conflicts('%gcc@10:', when='@5.9:5.12.6 +opengl')
# Build-only dependencies
depends_on("pkgconfig", type='build')
@@ -130,10 +156,11 @@ class Qt(Package):
depends_on("libtiff")
depends_on("libxml2")
depends_on("zlib")
- depends_on("freetype", when='freetype=spack')
+ depends_on("freetype", when='+gui')
depends_on("gperf", when='+webkit')
depends_on("gtkplus", when='+gtk')
depends_on("openssl", when='+ssl')
+ depends_on("python@2.7.5:2.999", when='@5.14: +webkit', type='build')
depends_on("sqlite+column_metadata", when='+sql', type=('build', 'run'))
depends_on("libpng@1.2.57", when='@3')
@@ -150,6 +177,7 @@ class Qt(Package):
depends_on("harfbuzz", when='@5:')
depends_on("double-conversion", when='@5.7:')
depends_on("pcre2+multibyte", when='@5.9:')
+ depends_on("llvm", when='@5.11: +doc')
# gcc@4 is not supported as of Qt@5.14
# https://doc.qt.io/qt-5.14/supported-platforms.html
@@ -157,17 +185,17 @@ class Qt(Package):
# Non-macOS dependencies and special macOS constraints
if MACOS_VERSION is None:
- depends_on("fontconfig", when='freetype=spack')
- depends_on("libsm")
- depends_on("libx11")
- depends_on("libxcb")
- depends_on("libxkbcommon")
- depends_on("xcb-util-image")
- depends_on("xcb-util-keysyms")
- depends_on("xcb-util-renderutil")
- depends_on("xcb-util-wm")
- depends_on("libxext")
- depends_on("libxrender")
+ depends_on("fontconfig", when='+gui')
+ depends_on("libsm", when='+gui')
+ depends_on("libx11", when='+gui')
+ depends_on("libxcb", when='+gui')
+ depends_on("libxkbcommon", when='+gui')
+ depends_on("xcb-util-image", when='+gui')
+ depends_on("xcb-util-keysyms", when='+gui')
+ depends_on("xcb-util-renderutil", when='+gui')
+ depends_on("xcb-util-wm", when='+gui')
+ depends_on("libxext", when='+gui')
+ depends_on("libxrender", when='+gui')
conflicts('+framework',
msg="QT cannot be built as a framework except on macOS.")
else:
@@ -185,7 +213,14 @@ class Qt(Package):
def url_for_version(self, version):
# URL keeps getting more complicated with every release
- url = self.list_url
+ url = self.list_url.replace('http:', 'https:')
+
+ if version < Version('5.12') and version.up_to(2) != Version('5.9'):
+ # As of 28 April 2021:
+ # - new_archive contains 1-5.8, 5.10-5.11
+ # - archive contains 1-5.1, 5.9, 5.12-6.0
+ # - official_releases containis 5.9, 5.12, 5.15, 6.0
+ url = url.replace('archive', 'new_archive')
if version >= Version('4.0'):
url += str(version.up_to(2)) + '/'
@@ -212,8 +247,8 @@ class Qt(Package):
elif version >= Version('3'):
url += 'free-'
- # 5.9 only has xz format. From 5.2.1 -> 5.8.0 .gz or .xz were possible
- if version >= Version('5.9'):
+ # 5.6.3 and 5.9 only has xz format. Some older versions have only .gz
+ if version >= Version('5.6'):
url += str(version) + '.tar.xz'
else:
url += str(version) + '.tar.gz'
@@ -222,12 +257,27 @@ class Qt(Package):
def setup_build_environment(self, env):
env.set('MAKEFLAGS', '-j{0}'.format(make_jobs))
+ if self.version >= Version('5.11'):
+ # QDoc uses LLVM as of 5.11; remove the LLVM_INSTALL_DIR to
+ # disable
+ try:
+ llvm_path = self.spec['llvm'].prefix
+ except KeyError:
+ # Prevent possibly incompatible system LLVM from being found
+ llvm_path = "/spack-disable-llvm"
+ env.set('LLVM_INSTALL_DIR', llvm_path)
def setup_run_environment(self, env):
env.set('QTDIR', self.prefix)
+ env.set('QTINC', self.prefix.inc)
+ env.set('QTLIB', self.prefix.lib)
+ env.prepend_path('QT_PLUGIN_PATH', self.prefix.plugins)
def setup_dependent_build_environment(self, env, dependent_spec):
env.set('QTDIR', self.prefix)
+ env.set('QTINC', self.prefix.inc)
+ env.set('QTLIB', self.prefix.lib)
+ env.prepend_path('QT_PLUGIN_PATH', self.prefix.plugins)
def setup_dependent_package(self, module, dependent_spec):
module.qmake = Executable(join_path(self.spec.prefix.bin, 'qmake'))
@@ -365,122 +415,89 @@ class Qt(Package):
@property
def common_config_args(self):
+ spec = self.spec
+ version = self.version
+
# incomplete list is here http://doc.qt.io/qt-5/configure-options.html
config_args = [
'-prefix', self.prefix,
'-v',
'-opensource',
- '-{0}opengl'.format('' if '+opengl' in self.spec else 'no-'),
- '-{0}'.format('debug' if '+debug' in self.spec else 'release'),
+ '-{0}opengl'.format('' if '+opengl' in spec else 'no-'),
+ '-{0}'.format('debug' if '+debug' in spec else 'release'),
'-confirm-license',
'-optimized-qmake',
'-no-pch',
]
- if self.spec.variants['freetype'].value == 'spack':
- config_args.extend([
- '-system-freetype'
- ])
- config_args.extend(
- self.spec['freetype'].headers.include_flags.split()
- )
+ def use_spack_dep(spack_pkg, qt_name=None):
+ pkg = spec[spack_pkg]
+ config_args.append('-system-' + (qt_name or spack_pkg))
+ if not pkg.external:
+ config_args.extend(pkg.libs.search_flags.split())
+ config_args.extend(pkg.headers.include_flags.split())
+
+ if '+gui' in spec:
+ use_spack_dep('freetype')
if not MACOS_VERSION:
config_args.append('-fontconfig')
-
- elif self.spec.variants['freetype'].value == 'qt':
- config_args.append('-qt-freetype')
else:
config_args.append('-no-freetype')
+ config_args.append('-no-gui')
- if '+ssl' in self.spec:
- openssl = self.spec['openssl']
- config_args.extend([
- '-openssl-linked',
- openssl.libs.search_flags,
- openssl.headers.include_flags,
- ])
+ if '+ssl' in spec:
+ pkg = spec['openssl']
+ config_args.append('-openssl-linked')
+ config_args.extend(pkg.libs.search_flags.split())
+ config_args.extend(pkg.headers.include_flags.split())
else:
config_args.append('-no-openssl')
- if '+sql' in self.spec:
- sqlite = self.spec['sqlite']
- config_args.extend([
- '-system-sqlite',
- '-R', sqlite.prefix.lib,
- ])
+ if '+sql' in spec:
+ use_spack_dep('sqlite')
else:
comps = ['db2', 'ibase', 'oci', 'tds', 'mysql', 'odbc', 'psql',
'sqlite', 'sqlite2']
config_args.extend("-no-sql-" + component for component in comps)
- if '+shared' in self.spec:
+ if '+shared' in spec:
config_args.append('-shared')
else:
config_args.append('-static')
- if self.spec.satisfies('@5:'):
- pcre = self.spec['pcre'] if self.spec.satisfies('@5.0:5.8') \
- else self.spec['pcre2']
- harfbuzz = self.spec['harfbuzz']
- config_args.extend([
- '-system-harfbuzz',
- harfbuzz.libs.search_flags,
- harfbuzz.headers.include_flags,
- '-system-pcre',
- pcre.libs.search_flags,
- pcre.headers.include_flags
- ])
+ if version >= Version('5'):
+ use_spack_dep('pcre' if spec.satisfies('@5.0:5.8') else 'pcre2',
+ 'pcre')
+ use_spack_dep('harfbuzz')
- if self.spec.satisfies('@5.7:'):
- dc = self.spec['double-conversion']
- config_args.extend([
- '-system-doubleconversion',
- dc.libs.search_flags,
- dc.headers.include_flags
- ])
+ if version >= Version('5.7'):
+ use_spack_dep('double-conversion', 'doubleconversion')
- if '@:5.7.1' in self.spec:
+ if version <= Version('5.7.1'):
config_args.append('-no-openvg')
else:
# FIXME: those could work for other versions
- png = self.spec['libpng']
- config_args.append('-system-libpng')
- if not png.external:
- config_args.extend([
- png.libs.search_flags,
- png.headers.include_flags
- ])
-
- jpeg = self.spec['jpeg']
- config_args.append('-system-libjpeg')
- if not jpeg.external:
- config_args.extend([
- jpeg.libs.search_flags,
- jpeg.headers.include_flags,
- ])
- zlib = self.spec['zlib']
- config_args.append('-system-zlib')
- if not zlib.external:
- config_args.extend([
- zlib.libs.search_flags,
- zlib.headers.include_flags
- ])
+ use_spack_dep('libpng')
+ use_spack_dep('jpeg', 'libjpeg')
+ use_spack_dep('zlib')
- if '@:5.7.0' in self.spec:
+ if '@:5.7.0' in spec:
config_args.extend([
# NIS is deprecated in more recent glibc,
# but qt-5.7.1 does not recognize this option
'-no-nis',
])
- if '~examples' in self.spec:
+ # COMPONENTS
+
+ if '~examples' in spec:
config_args.extend(['-nomake', 'examples'])
- if '~tools' in self.spec:
+ if '~tools' in spec:
config_args.extend(['-nomake', 'tools'])
- if '+dbus' in self.spec:
- dbus = self.spec['dbus'].prefix
+ if '+dbus' in spec:
+ dbus = spec['dbus'].prefix
config_args.append('-dbus-linked')
config_args.append('-I%s/dbus-1.0/include' % dbus.lib)
config_args.append('-I%s/dbus-1.0' % dbus.include)
@@ -490,7 +507,7 @@ class Qt(Package):
if MACOS_VERSION:
config_args.append('-{0}framework'.format(
- '' if '+framework' in self.spec else 'no-'))
+ '' if '+framework' in spec else 'no-'))
(_, qtplat) = self.get_mkspec()
if qtplat is not None:
@@ -565,7 +582,7 @@ class Qt(Package):
])
if version < Version('5.12'):
config_args.append('-no-xinput2')
- else:
+ elif version < Version('5.15') and '+gui' in spec:
# Linux-only QT5 dependencies
config_args.append('-system-xcb')
@@ -584,16 +601,18 @@ class Qt(Package):
# https://wiki.qt.io/QtWayland
config_args.extend(['-skip', 'wayland'])
- if version >= Version('5.10') and '~opengl' in spec:
- config_args.extend([
- '-skip', 'webglplugin',
- '-skip', 'qt3d',
- ])
+ if '~opengl' in spec:
+ if version >= Version('5.10'):
+ config_args.extend([
+ '-skip', 'webglplugin',
+ '-skip', 'qt3d',
+ ])
- if version >= Version('5.14') and '~opengl' in spec:
- config_args.extend([
- '-skip', 'qtquick3d',
- ])
+ if version >= Version('5.14'):
+ config_args.extend(['-skip', 'qtquick3d'])
+
+ if version >= Version('5.15'):
+ config_args.extend(['-skip', 'qtlocation'])
configure(*config_args)
@@ -602,3 +621,11 @@ class Qt(Package):
def install(self, spec, prefix):
make("install")
+
+ # Documentation generation requires the doc tools to be installed.
+ # @when @run_after currently seems to ignore the 'when' restriction.
+ @run_after('install')
+ def install_docs(self):
+ if '+doc' in self.spec:
+ make('docs')
+ make('install_docs')
diff --git a/var/spack/repos/builtin/packages/qt/qt5-15-gcc-10.patch b/var/spack/repos/builtin/packages/qt/qt5-15-gcc-10.patch
new file mode 100644
index 0000000000..32fbfba130
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qt/qt5-15-gcc-10.patch
@@ -0,0 +1,39 @@
+diff --git a/qtlocation/src/3rdparty/mapbox-gl-native/include/mbgl/util/convert.hpp b/qtlocation/src/3rdparty/mapbox-gl-native/include/mbgl/util/convert.hpp
+index 02ec7fe..6c1284e 100644
+--- a/qtlocation/src/3rdparty/mapbox-gl-native/include/mbgl/util/convert.hpp
++++ b/qtlocation/src/3rdparty/mapbox-gl-native/include/mbgl/util/convert.hpp
+@@ -1,6 +1,7 @@
+ #include <mbgl/util/util.hpp>
+
+ #include <array>
++#include <stdint.h>
+ #include <type_traits>
+ #include <utility>
+
+diff --git a/qtlocation/src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp b/qtlocation/src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp
+index d475c38..6947f0b 100644
+--- a/qtlocation/src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp
++++ b/qtlocation/src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp
+@@ -4,6 +4,7 @@
+ #include <unicode/ubidi.h>
+ #include <unicode/ushape.h>
+
++#include <stdexcept>
+ #include <memory>
+
+ namespace mbgl {
+diff --git a/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/renderer/sources/render_vector_source.cpp b/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/renderer/sources/render_vector_source.cpp
+index 4de4f01..afb639d 100644
+--- a/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/renderer/sources/render_vector_source.cpp
++++ b/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/renderer/sources/render_vector_source.cpp
+@@ -2,6 +2,7 @@
+ #include <mbgl/renderer/render_tile.hpp>
+ #include <mbgl/renderer/paint_parameters.hpp>
+ #include <mbgl/tile/vector_tile.hpp>
++#include <mbgl/tile/tile_loader_impl.hpp>
+
+ #include <mbgl/algorithm/generate_clip_ids.hpp>
+ #include <mbgl/algorithm/generate_clip_ids_impl.hpp>
+--
+2.26.0
+
diff --git a/var/spack/repos/builtin/packages/qt/qt514-isystem.patch b/var/spack/repos/builtin/packages/qt/qt514-isystem.patch
new file mode 100644
index 0000000000..b72717958b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qt/qt514-isystem.patch
@@ -0,0 +1,107 @@
+diff --git a/qtbase/mkspecs/common/clang.conf b/qtbase/mkspecs/common/clang.conf
+index 2499c8b6d88..dad15a22a88 100644
+--- a/qtbase/mkspecs/common/clang.conf
++++ b/qtbase/mkspecs/common/clang.conf
+@@ -18,7 +18,6 @@ QMAKE_PCH_OUTPUT_EXT = .pch
+
+ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Oz
+
+-QMAKE_CFLAGS_ISYSTEM = -isystem
+ QMAKE_CFLAGS_PRECOMPILE = -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+ QMAKE_CFLAGS_USE_PRECOMPILE = -Xclang -include-pch -Xclang ${QMAKE_PCH_OUTPUT}
+ QMAKE_CFLAGS_LTCG = -flto=thin
+diff --git a/qtbase/mkspecs/common/gcc-base.conf b/qtbase/mkspecs/common/gcc-base.conf
+index 3c2d5fdd533..99d77156fd7 100644
+--- a/qtbase/mkspecs/common/gcc-base.conf
++++ b/qtbase/mkspecs/common/gcc-base.conf
+@@ -46,7 +46,6 @@ QMAKE_CFLAGS_DEBUG += -g
+ QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC
+ QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC
+ QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC
+-QMAKE_CFLAGS_ISYSTEM = -isystem
+ QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
+ QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
+ QMAKE_CFLAGS_EXCEPTIONS_OFF += -fno-exceptions
+diff --git a/qtbase/mkspecs/linux-icc/qmake.conf b/qtbase/mkspecs/linux-icc/qmake.conf
+index 75a601b1f1b..09f897d0934 100644
+--- a/qtbase/mkspecs/linux-icc/qmake.conf
++++ b/qtbase/mkspecs/linux-icc/qmake.conf
+@@ -9,7 +9,6 @@ include(../common/icc-base-unix.conf)
+ # modifications to icc-base-unix.conf
+
+ QMAKE_CFLAGS_YACC =
+-QMAKE_CFLAGS_ISYSTEM = -isystem
+ QMAKE_CFLAGS_THREAD = -D_REENTRANT
+
+ QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
+diff --git a/qtbase/qmake/generators/unix/unixmake2.cpp b/qtbase/qmake/generators/unix/unixmake2.cpp
+index 0412b528134..ad6a0e94f2b 100644
+--- a/qtbase/qmake/generators/unix/unixmake2.cpp
++++ b/qtbase/qmake/generators/unix/unixmake2.cpp
+@@ -198,18 +198,13 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
+ t << "CXXFLAGS = " << var("QMAKE_CXXFLAGS") << " $(DEFINES)\n";
+ t << "INCPATH =";
+ {
+- QString isystem = var("QMAKE_CFLAGS_ISYSTEM");
+ const ProStringList &incs = project->values("INCLUDEPATH");
+ for(int i = 0; i < incs.size(); ++i) {
+ const ProString &inc = incs.at(i);
+ if (inc.isEmpty())
+ continue;
+
+- if (!isystem.isEmpty() && isSystemInclude(inc.toQString()))
+- t << ' ' << isystem << ' ';
+- else
+- t << " -I";
+- t << escapeFilePath(inc);
++ t << " -I" << escapeFilePath(inc);
+ }
+ }
+ if(!project->isEmpty("QMAKE_FRAMEWORKPATH_FLAGS"))
+@@ -1393,8 +1388,7 @@ void UnixMakefileGenerator::init2()
+ }
+
+ if (include_deps && project->isActiveConfig("gcc_MD_depends")) {
+- // use -MMD if we know about -isystem too
+- ProString MD_flag(project->values("QMAKE_CFLAGS_ISYSTEM").isEmpty() ? "-MD" : "-MMD");
++ ProString MD_flag("-MD");
+ project->values("QMAKE_CFLAGS") += MD_flag;
+ project->values("QMAKE_CXXFLAGS") += MD_flag;
+ }
+diff --git a/qtbase/qmake/generators/win32/mingw_make.cpp b/qtbase/qmake/generators/win32/mingw_make.cpp
+index d778790f8ac..ee9a41838bc 100644
+--- a/qtbase/qmake/generators/win32/mingw_make.cpp
++++ b/qtbase/qmake/generators/win32/mingw_make.cpp
+@@ -200,17 +200,12 @@ void MingwMakefileGenerator::writeIncPart(QTextStream &t)
+ {
+ t << "INCPATH = ";
+
+- QString isystem = var("QMAKE_CFLAGS_ISYSTEM");
+ const ProStringList &incs = project->values("INCLUDEPATH");
+ for (ProStringList::ConstIterator incit = incs.begin(); incit != incs.end(); ++incit) {
+ QString inc = (*incit).toQString();
+ inc.replace(QRegExp("\\\\$"), "");
+
+- if (!isystem.isEmpty() && isSystemInclude(inc))
+- t << isystem << ' ';
+- else
+- t << "-I";
+- t << escapeFilePath(inc) << ' ';
++ t << "-I" << escapeFilePath(inc) << ' ';
+ }
+ t << Qt::endl;
+ }
+diff --git a/qtbase/src/plugins/platformthemes/gtk3/gtk3.pro b/qtbase/src/plugins/platformthemes/gtk3/gtk3.pro
+index cac6f7054d3..8d217396d34 100644
+--- a/qtbase/src/plugins/platformthemes/gtk3/gtk3.pro
++++ b/qtbase/src/plugins/platformthemes/gtk3/gtk3.pro
+@@ -10,6 +10,8 @@ QT += core-private gui-private theme_support-private
+ CONFIG += X11
+ QMAKE_USE += gtk3
+ DEFINES += GDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_6
++# Needed for GTK < 3.23
++QMAKE_CXXFLAGS_WARN_ON += -Wno-error=parentheses
+
+ HEADERS += \
+ qgtk3dialoghelpers.h \
+
diff --git a/var/spack/repos/builtin/packages/qt/qt514.patch b/var/spack/repos/builtin/packages/qt/qt514.patch
new file mode 100644
index 0000000000..d752a52bf7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qt/qt514.patch
@@ -0,0 +1,9 @@
+diff -ruN qt-everywhere-src-5.14.2.orig/qtimageformats/src/plugins/imageformats/jp2/qjp2handler.cpp qt-everywhere-src-5.14.2/qtimageformats/src/plugins/imageformats/jp2/qjp2handler.cpp
+--- qt-everywhere-src-5.14.2.orig/qtimageformats/src/plugins/imageformats/jp2/qjp2handler.cpp 2020-03-03 13:10:30.000000000 +0000
++++ qt-everywhere-src-5.14.2/qtimageformats/src/plugins/imageformats/jp2/qjp2handler.cpp 2020-11-16 19:57:56.792619032 +0000
+@@ -38,4 +38,5 @@
+ **
+ ****************************************************************************/
+
++#include <math.h>
+ #include "qjp2handler_p.h"
diff --git a/var/spack/repos/builtin/packages/qtgraph/package.py b/var/spack/repos/builtin/packages/qtgraph/package.py
index 01096dbc17..1ab7eae4aa 100644
--- a/var/spack/repos/builtin/packages/qtgraph/package.py
+++ b/var/spack/repos/builtin/packages/qtgraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qthreads/package.py b/var/spack/repos/builtin/packages/qthreads/package.py
index a50acdee81..1ef735f7eb 100644
--- a/var/spack/repos/builtin/packages/qthreads/package.py
+++ b/var/spack/repos/builtin/packages/qthreads/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,6 +29,12 @@ class Qthreads(AutotoolsPackage):
homepage = "http://www.cs.sandia.gov/qthreads/"
url = "https://github.com/Qthreads/qthreads/releases/download/1.10/qthread-1.10.tar.bz2"
+ test_requires_compiler = True
+ test_base_path = 'test/basics/'
+ test_list = ['hello_world_multi', 'hello_world']
+
+ version('1.16', sha256='0a95e20b08cb486de6c33bff16590f41e444ca64ab738aee697ef982fbb021d8')
+ version('1.15', sha256='3ac2dc24debff004a2998933de5724b1e14e1ae262fa9942acbb01f77819a23b')
version("1.14", sha256="16f15e5b2e35b6329a857d24c283a1e43cd49921ee49a1446d4f31bf9c6f5cf9")
version("1.12", sha256="2c13a5f6f45bc2f22038d272be2e748e027649d3343a9f824da9e86a88b594c9")
version("1.11", sha256="dbde6c7cb7de7e89921e47363d09cecaebf775c9d090496c2be8350355055571")
@@ -56,7 +62,8 @@ class Qthreads(AutotoolsPackage):
description='Specify number of bytes to use in a stack',
values=is_integer)
- depends_on("hwloc@1.0:1.99", when="+hwloc")
+ depends_on("hwloc@1.0:1.99", when="@:1.15 +hwloc")
+ depends_on("hwloc@1.5:2.99", when="@1.16: +hwloc")
def configure_args(self):
spec = self.spec
@@ -83,5 +90,52 @@ class Qthreads(AutotoolsPackage):
args.append('--with-scheduler=%s'
% self.spec.variants['scheduler'].value)
-
return args
+
+ @run_after('install')
+ def setup_build_tests(self):
+ """Copy the build test files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ tests = self.test_list
+ relative_test_dir = self.test_base_path
+ files_to_cpy = []
+ header = 'test/argparsing.h'
+ for test in tests:
+ test_path = join_path(relative_test_dir, test + '.c')
+ files_to_cpy.append(test_path)
+ files_to_cpy.append(header)
+ self.cache_extra_test_sources(files_to_cpy)
+
+ def build_tests(self):
+ """Build and run the added smoke (install) test."""
+ tests = self.test_list
+ relative_test_dir = self.test_base_path
+
+ for test in tests:
+ options = [
+ '-I{0}'.format(self.prefix.include),
+ '-I{0}'.format(self.install_test_root + '/test'),
+ join_path(self.install_test_root, relative_test_dir,
+ test + '.c'),
+ '-o',
+ test,
+ '-L{0}'.format(self.prefix.lib),
+ '-lqthread',
+ '{0}{1}'.format(self.compiler.cc_rpath_arg,
+ self.prefix.lib)]
+ reason = 'test:{0}: Checking ability to link to the library.'\
+ .format(test)
+ self.run_test('cc', options, [], installed=False, purpose=reason)
+
+ def run_tests(self):
+ tests = self.test_list
+ # Now run the program
+ for test in tests:
+ reason = 'test:{0}: Checking ability to execute.'.format(test)
+ self.run_test(test, [], purpose=reason)
+
+ def test(self):
+ # Build
+ self.build_tests()
+ # Run test programs pulled from the build
+ self.run_tests()
diff --git a/var/spack/repos/builtin/packages/qtkeychain/package.py b/var/spack/repos/builtin/packages/qtkeychain/package.py
index c7ebfa822e..9d9d4efedd 100644
--- a/var/spack/repos/builtin/packages/qtkeychain/package.py
+++ b/var/spack/repos/builtin/packages/qtkeychain/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/quantum-espresso/configure_aocc.patch b/var/spack/repos/builtin/packages/quantum-espresso/configure_aocc.patch
new file mode 100644
index 0000000000..69d5293ab8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/quantum-espresso/configure_aocc.patch
@@ -0,0 +1,58 @@
+--- spack-src/install/configure.orig 2021-02-11 13:56:58.900212951 +0530
++++ spack-src/install/configure 2021-02-11 15:19:54.726403962 +0530
+@@ -3203,6 +3203,7 @@
+ nagfor_version=`$mpif90 -v 2>&1 | grep "NAG Fortran"`
+ xlf_version=`$mpif90 -v 2>&1 | grep "xlf"`
+ armflang_version=`$mpif90 -v 2>&1 | grep "Arm C/C++/Fortran Compiler version"`
++ aoccflang_version=`$mpif90 -v 2>&1 | grep "AMD clang version"`
+ #
+ if test "$ifort_version" != ""
+ then
+@@ -3227,6 +3228,12 @@
+ f90_minor_version=`echo $version | cut -d. -f2`
+ echo "${ECHO_T}gfortran $f90_major_version.$f90_minor_version"
+ f90_in_mpif90="gfortran"
++ elif test "$aoccflang_version" != ""
++ then
++ version=`echo $aoccflang_version | cut -d" " -f 5`
++ echo "${ECHO_T}mpif90 $version"
++ f90_in_mpif90="mpif90"
++ try_foxflags="-D__PGI"
+ elif test "$nagfor_version" != ""
+ then
+ # NAG 6.0 has the codename attached to version number... annoying
+@@ -3327,6 +3334,8 @@
+ f90_flavor=ifort
+ elif $f90 -V 2>&1 | grep -q "^pgf" ; then
+ f90_flavor=pgf
++ elif $f90 -v 2>&1 | grep -q "AMD clang version" ; then
++ f90_flavor=mpif90
+ elif $f90 -v 2>&1 | grep -q "gcc version" ; then
+ f90_flavor=gfortran
+ elif $f90 -V 2>&1 | grep -q "Cray Fortran" ; then
+@@ -3385,6 +3394,9 @@
+ *:pgf90 )
+ try_cc="pgcc $try_cc"
+ ;;
++*:mpif90 )
++ try_cc="mpicc $try_cc"
++ ;;
+ cray*:* )
+ try_cc="cc"
+ ;;
+@@ -4017,6 +4029,15 @@
+ try_dflags="$try_dflags -D__PGI"
+ have_cpp=1
+ ;;
++*:*mpif90 )
++ try_fflags="-O3 -g"
++ try_fflags_openmp="-fopenmp"
++ try_f90flags="\$(FFLAGS) -cpp"
++ try_fflags_noopt="-O0 -g"
++ try_ldflags="-g"
++ try_ldflags_openmp="-pthread -fopenmp"
++ try_ldflags_static="-static"
++ ;;
+ *:*gfortran )
+ try_fflags="-O3 -g"
+ if test "$f90_major_version" -ge "10"; then
diff --git a/var/spack/repos/builtin/packages/quantum-espresso/fj-fox.patch b/var/spack/repos/builtin/packages/quantum-espresso/fj-fox.patch
new file mode 100644
index 0000000000..d4fb79ab2c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/quantum-espresso/fj-fox.patch
@@ -0,0 +1,10 @@
+--- spack-src/install/extlibs_makefile.org 2021-01-22 10:11:00.527343202 +0900
++++ spack-src/install/extlibs_makefile 2021-01-22 10:15:24.319956918 +0900
+@@ -89,6 +89,7 @@
+ mkdir ../FoX; \
+ (gzip -dc ../archive/fox.tgz | (cd ../FoX; tar -xvf -)); \
+ cd ../FoX/fox/; export FC=$(F90); export FCFLAGS="$(FOX_FLAGS)"; \
++ sed -i 's/"-out " "-o "/"-o " "-out "/' configure; \
+ ./configure --prefix=$(TOPDIR)/FoX ;\
+ $(MAKE) install; cd ../; rm -fr fox;fi
+ # ELPA
diff --git a/var/spack/repos/builtin/packages/quantum-espresso/fj-intent.6.4.1.patch b/var/spack/repos/builtin/packages/quantum-espresso/fj-intent.6.4.1.patch
new file mode 100644
index 0000000000..7266a9b568
--- /dev/null
+++ b/var/spack/repos/builtin/packages/quantum-espresso/fj-intent.6.4.1.patch
@@ -0,0 +1,11 @@
+--- spack-src/PHonon/Gamma/dgradcorr.f90.org 2021-01-27 16:41:04.692204340 +0900
++++ spack-src/PHonon/Gamma/dgradcorr.f90 2021-01-27 16:44:03.877839298 +0900
+@@ -22,7 +22,7 @@
+
+ REAL(DP), INTENT(IN) :: rho (dfft%nnr, nspin), grho (3, dfft%nnr, nspin), &
+ g (3, dfft%ngm)
+- REAL(DP), INTENT(OUT):: drho (dfft%nnr,nspin),&
++ REAL(DP), INTENT(IN):: drho (dfft%nnr,nspin),&
+ dvxc_rr(dfft%nnr, nspin, nspin), dvxc_sr (dfft%nnr, nspin, nspin), &
+ dvxc_ss (dfft%nnr,nspin, nspin), dvxc_s (dfft%nnr, nspin, nspin)
+ REAL(DP), INTENT(INOUT) :: dvxc (dfft%nnr, nspin)
diff --git a/var/spack/repos/builtin/packages/quantum-espresso/fj.6.5.patch b/var/spack/repos/builtin/packages/quantum-espresso/fj.6.5.patch
new file mode 100644
index 0000000000..503a0e9ecf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/quantum-espresso/fj.6.5.patch
@@ -0,0 +1,23 @@
+--- spack-src/install/configure.org 2021-01-22 12:21:20.196915072 +0900
++++ spack-src/install/configure 2021-01-22 12:24:47.562530103 +0900
+@@ -3127,6 +3127,7 @@
+ pgf_version=`$mpif90 -V 2>&1 | grep "^pgf"`
+ gfortran_version=`$mpif90 -v 2>&1 | grep "gcc version"`
+ nagfor_version=`$mpif90 -v 2>&1 | grep "NAG Fortran"`
++ frt_version=`$mpif90 -v 2>&1 | grep "Fujitsu Fortran Compiler"`
+ xlf_version=`$mpif90 -v 2>&1 | grep "xlf"`
+ #
+ if test "$ifort_version" != ""
+@@ -3160,6 +3161,12 @@
+ echo "${ECHO_T}xlf (version unknonw)"
+ f90_in_mpif90="xlf"
+ try_dflags="-D__XLF"
++ elif test "$frt_version" != ""
++ then
++ version=`echo $frt_version | cut -d" " -f 5`
++ echo "${ECHO_T}frt $version"
++ f90_in_mpif90="frt"
++ try_foxflags="-D__FUJITSU"
+ else
+ echo "${ECHO_T}unknown, assuming gfortran"
+ f90_in_mpif90="gfortran"
diff --git a/var/spack/repos/builtin/packages/quantum-espresso/fj.6.6.patch b/var/spack/repos/builtin/packages/quantum-espresso/fj.6.6.patch
new file mode 100644
index 0000000000..7b2db5d8d5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/quantum-espresso/fj.6.6.patch
@@ -0,0 +1,23 @@
+--- spack-src/install/configure.org 2021-01-15 09:27:53.000000000 +0900
++++ spack-src/install/configure 2021-01-15 09:26:53.000000000 +0900
+@@ -3200,6 +3200,7 @@
+ nagfor_version=`$mpif90 -v 2>&1 | grep "NAG Fortran"`
+ xlf_version=`$mpif90 -v 2>&1 | grep "xlf"`
+ armflang_version=`$mpif90 -v 2>&1 | grep "Arm C/C++/Fortran Compiler version"`
++ frt_version=`$mpif90 -v 2>&1 | grep "Fujitsu Fortran Compiler"`
+ #
+ if test "$ifort_version" != ""
+ then
+@@ -3237,6 +3238,12 @@
+ f90_minor_version=`echo $version | cut -d. -f2`
+ f90_in_mpif90="armflang"
+ try_foxflags="-D__PGI"
++ elif test "$frt_version" != ""
++ then
++ version=`echo $frt_version | cut -d" " -f 5`
++ echo "${ECHO_T}frt $version"
++ f90_in_mpif90="frt"
++ try_foxflags="-D__FUJITSU"
+ else
+ echo "${ECHO_T}unknown, assuming gfortran"
+ f90_in_mpif90="gfortran"
diff --git a/var/spack/repos/builtin/packages/quantum-espresso/package.py b/var/spack/repos/builtin/packages/quantum-espresso/package.py
index d3fdbc2bb3..5d87ef6645 100644
--- a/var/spack/repos/builtin/packages/quantum-espresso/package.py
+++ b/var/spack/repos/builtin/packages/quantum-espresso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,10 @@ class QuantumEspresso(Package):
maintainers = ['naromero77']
version('develop', branch='develop')
- version('6.6', sha256='924656cb083f52e5d2fe71ade05881389dac64b45316f1bdd6dee1c6170a672c', preferred=True)
+ version('6.7', sha256='fe0ce74ff736b10d2a20c9d59025c01f88f86b00d229c123b1791f1edd7b4315',
+ url='https://gitlab.com/QEF/q-e/-/archive/qe-6.7MaX-Release/q-e-qe-6.7MaX-Release.tar.gz'
+ )
+ version('6.6', sha256='924656cb083f52e5d2fe71ade05881389dac64b45316f1bdd6dee1c6170a672c')
version('6.5', sha256='258b2a8a6280e86dad779e5c56356d8b35dc96d12ff33dabeee914bc03d6d602')
version('6.4.1', sha256='b0d7e9f617b848753ad923d8c6ca5490d5d82495f82b032b71a0ff2f2e9cfa08')
version('6.4', sha256='781366d03da75516fdcf9100a1caadb26ccdd1dedd942a6f8595ff0edca74bfe')
@@ -30,6 +33,20 @@ class QuantumEspresso(Package):
version('5.4', sha256='e3993fccae9cea04a5c6492e8b961a053a63727051cb5c4eb6008f62cda8f335')
version('5.3', sha256='3b26038efb9e3f8ac7a2b950c31d8c29169a3556c0b68c299eb88a4be8dc9048')
+ resource(name='environ',
+ git='https://github.com/environ-developers/Environ.git',
+ tag='v1.1',
+ when='@6.3:6.4.99 +environ',
+ destination='.'
+ )
+
+ resource(name='environ',
+ git='https://github.com/environ-developers/Environ.git',
+ tag='v1.0',
+ when='@6.2.1:6.2.99 +environ',
+ destination='.'
+ )
+
variant('mpi', default=True, description='Builds with mpi support')
variant('openmp', default=False, description='Enables openMP support')
variant('scalapack', default=True, description='Enables scalapack support')
@@ -58,6 +75,11 @@ class QuantumEspresso(Package):
variant('qmcpack', default=False,
description='Build QE-to-QMCPACK wave function converter')
+ variant('environ', default=False,
+ description='Enables support for introducing environment effects '
+ 'into atomistic first-principles simulations.'
+ 'See http://quantum-environ.org/about.html')
+
# Dependencies
depends_on('blas')
depends_on('lapack')
@@ -171,14 +193,29 @@ class QuantumEspresso(Package):
# NOTE: *SOME* third-party patches will require deactivation of
# upstream patches using `~patch` variant
- # QMCPACK converter patches for QE 6.4.1, 6.4, and 6.3
- conflicts('@:6.2,6.5:', when='+qmcpack',
+ # QMCPACK converter patches for QE 6.7, 6.4.1, 6.4, and 6.3
+ conflicts('@:6.2,6.5:6.6', when='+qmcpack',
msg='QMCPACK converter NOT available for this version of QE')
# Internal compiler error gcc8 and a64fx, I check only 6.5 and 6.6
conflicts('@5.3:', when='%gcc@8 target=a64fx',
msg='Internal compiler error with gcc8 and a64fx')
+ conflicts('@6.5:', when='+environ',
+ msg='6.4.x is the latest QE series supported by Environ')
+
+ # 6.7
+ patch_url = 'https://raw.githubusercontent.com/QMCPACK/qmcpack/develop/external_codes/quantum_espresso/add_pw2qmcpack_to_qe-6.7.0.diff'
+ patch_checksum = '72564c168231dd4a1279a74e76919af701d47cee9a851db6e205753004fe9bb5'
+ patch(patch_url, sha256=patch_checksum, when='@6.7+qmcpack')
+
+ # Need OpenMP threaded FFTW and BLAS libraries when configured
+ # with OpenMP support
+ conflicts('^fftw~openmp', when='+openmp')
+ conflicts('^amdfftw~openmp', when='+openmp')
+ conflicts('^openblas threads=none', when='+openmp')
+ conflicts('^openblas threads=pthreads', when='+openmp')
+
# 6.4.1
patch_url = 'https://raw.githubusercontent.com/QMCPACK/qmcpack/develop/external_codes/quantum_espresso/add_pw2qmcpack_to_qe-6.4.1.diff'
patch_checksum = '57cb1b06ee2653a87c3acc0dd4f09032fcf6ce6b8cbb9677ae9ceeb6a78f85e2'
@@ -201,6 +238,16 @@ class QuantumEspresso(Package):
patch('https://gitlab.com/QEF/q-e/-/commit/cf1fedefc20d39f5cd7551ded700ea4c77ad6e8f.diff',
sha256='8f179663a8d031aff9b1820a32449942281195b6e7b1ceaab1f729651b43fa58',
when='+patch@6.6')
+ # QE 6.5 INTENT(OUT) without settig value in tetra_weights_only(..., ef):
+ # For Fujitsu compiler
+ patch('https://gitlab.com/QEF/q-e/-/commit/8f096b53e75026701c681c508e2c24a9378c0950.diff',
+ sha256='f4f1cce4182b57ac797c8f6ec8460fe375ee96385fcd8f6a61e1460bc957eb67',
+ when='+patch@6.5')
+ # QE 6.5 Fix INTENT
+ # For Fujitsu compiler
+ patch('https://gitlab.com/QEF/q-e/-/commit/c2a86201ed72693ffa50cc99b22f5d3365ae2c2b.diff',
+ sha256='b2dadc0bc008a3ad4b74ae85cc380dd2b63f2ae43a634e6f9d8db8077efcea6c',
+ when='+patch@6.5')
# QE 6.3 requires multiple patches to fix MKL detection
# There may still be problems on Mac with MKL detection
patch('https://gitlab.com/QEF/q-e/commit/0796e1b7c55c9361ecb6515a0979280e78865e36.diff',
@@ -219,12 +266,30 @@ class QuantumEspresso(Package):
sha256='b1aa3179ee1c069964fb9c21f3b832aebeae54947ce8d3cc1a74e7b154c3c10f',
when='+patch@6.4.1:6.5.0')
+ # QE 6.4.1 Fix intent for Fujitsu compiler
+ patch('fj-intent.6.4.1.patch', when='+patch@6.4.1')
+ # QE 6.4.1 Fix intent
+ patch('https://gitlab.com/QEF/q-e/-/commit/c2a86201ed72693ffa50cc99b22f5d3365ae2c2b.diff',
+ sha256='b2dadc0bc008a3ad4b74ae85cc380dd2b63f2ae43a634e6f9d8db8077efcea6c',
+ when='+patch@6.4.1')
+
+ # QE 6.4.1 Small fixes for XLF compilation
+ patch('https://gitlab.com/QEF/q-e/-/commit/cf088926d68792cbaea48960c222e336a3965df6.diff',
+ sha256='bbceba1fb08d01d548d4393bbcaeae966def13f75884268a0f84448457b8eaa3',
+ when='+patch@6.4.1:6.5.0')
+
+ # Configure updated to work with AOCC compilers
+ patch('configure_aocc.patch', when='@6.7 %aocc')
+
# Configure updated to work with NVIDIA compilers
patch('nvhpc.patch', when='@6.5 %nvhpc')
- # Spurious problems running in parallel the Makefile
- # generated by the configure
- parallel = False
+ # Configure updated to work with Fujitsu compilers
+ patch('fj.6.5.patch', when='@6.5+patch %fj')
+ patch('fj.6.6.patch', when='@6.6:6.7+patch %fj')
+
+ # extlibs_makefile updated to work with fujitsu compilers
+ patch('fj-fox.patch', when='+patch %fj')
def install(self, spec, prefix):
@@ -289,7 +354,19 @@ class QuantumEspresso(Package):
if '^fftw@3:' in spec:
fftw_prefix = spec['fftw'].prefix
options.append('FFTW_INCLUDE={0}'.format(fftw_prefix.include))
- fftw_ld_flags = spec['fftw'].libs.ld_flags
+ if '+openmp' in spec:
+ fftw_ld_flags = spec['fftw:openmp'].libs.ld_flags
+ else:
+ fftw_ld_flags = spec['fftw'].libs.ld_flags
+ options.append('FFT_LIBS={0}'.format(fftw_ld_flags))
+
+ if '^amdfftw' in spec:
+ fftw_prefix = spec['amdfftw'].prefix
+ options.append('FFTW_INCLUDE={0}'.format(fftw_prefix.include))
+ if '+openmp' in spec:
+ fftw_ld_flags = spec['amdfftw:openmp'].libs.ld_flags
+ else:
+ fftw_ld_flags = spec['amdfftw'].libs.ld_flags
options.append('FFT_LIBS={0}'.format(fftw_ld_flags))
# External BLAS and LAPACK requires the correct link line into
@@ -310,8 +387,11 @@ class QuantumEspresso(Package):
# BLAS_LIBS being set
# However, MKL is correctly picked up by qe-6.5 for BLAS and FFT if
# MKLROOT is set (which SPACK does automatically for ^mkl)
- if not ('quantum-espresso@6.5' in spec and '^mkl' in spec):
+ if spec.satisfies('@:6.4'): # set even if MKL is selected
options.append('BLAS_LIBS={0}'.format(lapack_blas.ld_flags))
+ else: # behavior changed at 6.5 and later
+ if not spec.satisfies('^mkl'):
+ options.append('BLAS_LIBS={0}'.format(lapack_blas.ld_flags))
if '+scalapack' in spec:
if '^mkl' in spec:
@@ -322,6 +402,8 @@ class QuantumEspresso(Package):
else:
scalapack_option = 'yes'
options.append('--with-scalapack={0}'.format(scalapack_option))
+ scalapack_lib = spec['scalapack'].libs
+ options.append('SCALAPACK_LIBS={0}'.format(scalapack_lib.ld_flags))
if '+elpa' in spec:
@@ -338,9 +420,24 @@ class QuantumEspresso(Package):
options.extend([
'--with-elpa-include={0}'.format(elpa_include),
- '--with-elpa-lib={0}'.format(elpa.libs[0])
+ '--with-elpa-version={0}'.format(elpa.version.version[0]),
])
+ elpa_suffix = '_openmp' if '+openmp' in elpa else ''
+
+ # Currently AOCC support only static libraries of ELPA
+ if '%aocc' in spec:
+ options.extend([
+ '--with-elpa-lib={0}'.format(
+ join_path(elpa.prefix.lib,
+ 'libelpa{elpa_suffix}.a'
+ .format(elpa_suffix=elpa_suffix)))
+ ])
+ else:
+ options.extend([
+ '--with-elpa-lib={0}'.format(elpa.libs[0])
+ ])
+
if spec.variants['hdf5'].value != 'none':
options.append('--with-hdf5={0}'.format(spec['hdf5'].prefix))
if spec.satisfies('@6.4.1,6.5'):
@@ -368,10 +465,29 @@ class QuantumEspresso(Package):
zlib_libs, format(spec['zlib'].libs.ld_flags), make_inc
)
+ # QE 6.6 and later has parallel builds fixed
+ if spec.satisfies('@:6.5'):
+ parallel_build_on = False
+ else:
+ parallel_build_on = True
+
if '+epw' in spec:
- make('all', 'epw')
+ make('all', 'epw', parallel=parallel_build_on)
else:
- make('all')
+ make('all', parallel=parallel_build_on)
+
+ if '+environ' in spec:
+ addsonpatch = Executable('./install/addsonpatch.sh')
+ environpatch = Executable('./Environ/patches/environpatch.sh')
+ makedeps = Executable('./install/makedeps.sh')
+
+ addsonpatch('Environ', 'Environ/src', 'Modules', '-patch')
+
+ environpatch('-patch')
+
+ makedeps()
+
+ make('pw', parallel=parallel_build_on)
if 'platform=darwin' in spec:
mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin/packages/quartz/package.py b/var/spack/repos/builtin/packages/quartz/package.py
index 1ae0cea830..5dfe077da9 100644
--- a/var/spack/repos/builtin/packages/quartz/package.py
+++ b/var/spack/repos/builtin/packages/quartz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/quicksilver/package.py b/var/spack/repos/builtin/packages/quicksilver/package.py
index e39a82337d..8c73ad7152 100644
--- a/var/spack/repos/builtin/packages/quicksilver/package.py
+++ b/var/spack/repos/builtin/packages/quicksilver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/quinoa/package.py b/var/spack/repos/builtin/packages/quinoa/package.py
index e29c953f3e..8b3996181d 100644
--- a/var/spack/repos/builtin/packages/quinoa/package.py
+++ b/var/spack/repos/builtin/packages/quinoa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/quota/package.py b/var/spack/repos/builtin/packages/quota/package.py
index edbe3f7528..af60d07634 100644
--- a/var/spack/repos/builtin/packages/quota/package.py
+++ b/var/spack/repos/builtin/packages/quota/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/qwt/package.py b/var/spack/repos/builtin/packages/qwt/package.py
index be7aba6372..5c4afe43fd 100644
--- a/var/spack/repos/builtin/packages/qwt/package.py
+++ b/var/spack/repos/builtin/packages/qwt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Qwt(QMakePackage):
homepage = "http://qwt.sourceforge.net/"
url = "https://sourceforge.net/projects/qwt/files/qwt/6.1.3/qwt-6.1.3.tar.bz2"
+ version('6.1.6', sha256='99460d31c115ee4117b0175d885f47c2c590d784206f09815dc058fbe5ede1f6')
version('6.1.4', sha256='1529215329e51fc562e0009505a838f427919a18b362afff441f035b2d9b5bd9')
version('6.1.3', sha256='f3ecd34e72a9a2b08422fb6c8e909ca76f4ce5fa77acad7a2883b701f4309733')
version('5.2.2', sha256='36bf2ee51ca9c74fde1322510ffd39baac0db60d5d410bb157968a78d9c1464b')
@@ -25,7 +26,7 @@ class Qwt(QMakePackage):
patch('no-designer.patch', when='~designer')
- depends_on('qt+opengl')
+ depends_on('qt@:5.14.2+opengl')
depends_on('qt+tools', when='+designer')
# Qwt 6.1.1 and older use a constant that was removed in Qt 5.4
# https://bugs.launchpad.net/ubuntu/+source/qwt-qt5/+bug/1485213
diff --git a/var/spack/repos/builtin/packages/qwtpolar/package.py b/var/spack/repos/builtin/packages/qwtpolar/package.py
index 9c70dc162a..4425b7f117 100644
--- a/var/spack/repos/builtin/packages/qwtpolar/package.py
+++ b/var/spack/repos/builtin/packages/qwtpolar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-a4/package.py b/var/spack/repos/builtin/packages/r-a4/package.py
index 07591bc8dd..0ae69276b2 100644
--- a/var/spack/repos/builtin/packages/r-a4/package.py
+++ b/var/spack/repos/builtin/packages/r-a4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,15 @@ from spack import *
class RA4(RPackage):
- """Automated Affymetrix Array Analysis Umbrella Package."""
+ """Automated Affymetrix Array Analysis Umbrella Package
+
+ Umbrella package is available for the entire Automated Affymetrix Array
+ Analysis suite of package."""
homepage = "https://bioconductor.org/packages/a4"
git = "https://git.bioconductor.org/packages/a4.git"
+ version('1.38.0', commit='5b7a9087bab10c55e24707e96e48046995236c94')
version('1.32.0', commit='03770d4e53be4eed1bd0ab8f8cddba66854b4712')
version('1.30.0', commit='771e01ae3aaac1c4db12f781c41d90fa7191b64d')
version('1.28.0', commit='e81a8c15e1062ed9433e2d4d333f0484bc0e8bfb')
diff --git a/var/spack/repos/builtin/packages/r-a4base/package.py b/var/spack/repos/builtin/packages/r-a4base/package.py
index 306d42a273..08f6432e2e 100644
--- a/var/spack/repos/builtin/packages/r-a4base/package.py
+++ b/var/spack/repos/builtin/packages/r-a4base/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,25 +7,29 @@ from spack import *
class RA4base(RPackage):
- """Automated Affymetrix Array Analysis Base Package."""
+ """Automated Affymetrix Array Analysis Base Package
+
+ Base utility functions are available for the Automated Affymetrix Array
+ Analysis set of packages."""
homepage = "https://bioconductor.org/packages/a4Base"
git = "https://git.bioconductor.org/packages/a4Base.git"
+ version('1.38.0', commit='4add242fa9c62795aca5b0dfca34a43484c5aa82')
version('1.32.0', commit='8a1e15d25494c54db8c1de5dbbd69e628569e3d7')
version('1.30.0', commit='fc370b2bd8286acc1e42a10344d91974f5b94229')
version('1.28.0', commit='3918a9ebafa065027c29620ee4d83789cb02f932')
version('1.26.0', commit='9b8ee4a8be90f5035a4b105ecebb8bb5b50cd0d9')
version('1.24.0', commit='f674afe424a508df2c8ee6c87a06fbd4aa410ef6')
+ depends_on('r-a4preproc', type=('build', 'run'))
+ depends_on('r-a4core', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
- depends_on('r-annotationdbi', type=('build', 'run'))
depends_on('r-annaffy', type=('build', 'run'))
depends_on('r-mpm', type=('build', 'run'))
depends_on('r-genefilter', type=('build', 'run'))
depends_on('r-limma', type=('build', 'run'))
depends_on('r-multtest', type=('build', 'run'))
depends_on('r-glmnet', type=('build', 'run'))
- depends_on('r-a4preproc', type=('build', 'run'))
- depends_on('r-a4core', type=('build', 'run'))
depends_on('r-gplots', type=('build', 'run'))
+ depends_on('r-annotationdbi', when='@:1.32.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-a4classif/package.py b/var/spack/repos/builtin/packages/r-a4classif/package.py
index 38cc611b41..9886e0023d 100644
--- a/var/spack/repos/builtin/packages/r-a4classif/package.py
+++ b/var/spack/repos/builtin/packages/r-a4classif/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,16 @@ from spack import *
class RA4classif(RPackage):
- """Automated Affymetrix Array Analysis Classification Package."""
+ """Automated Affymetrix Array Analysis Classification Package
+
+ Functionalities for classification of Affymetrix microarray data,
+ integrating within the Automated Affymetrix Array Analysis set of
+ packages."""
homepage = "https://bioconductor.org/packages/a4Classif"
git = "https://git.bioconductor.org/packages/a4Classif.git"
+ version('1.38.0', commit='c4d058813efb835774813b2d69c52912162f8e75')
version('1.32.0', commit='aa4f22df2da54b71e1a238d2b9cbcb3afa6f7f88')
version('1.30.0', commit='b62841bff2f8894a3011a4e74afc37076d1322a3')
version('1.28.0', commit='3464011f6c3ddb41b78acc47e775539034287be7')
@@ -20,8 +25,9 @@ class RA4classif(RPackage):
depends_on('r-a4core', type=('build', 'run'))
depends_on('r-a4preproc', type=('build', 'run'))
- depends_on('r-mlinterfaces', type=('build', 'run'))
+ depends_on('r-biobase', when='@1.38.0:', type=('build', 'run'))
depends_on('r-rocr', type=('build', 'run'))
depends_on('r-pamr', type=('build', 'run'))
depends_on('r-glmnet', type=('build', 'run'))
depends_on('r-varselrf', type=('build', 'run'))
+ depends_on('r-mlinterfaces', when='@:1.32.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-a4core/package.py b/var/spack/repos/builtin/packages/r-a4core/package.py
index d89db83f1d..0cfe0706ef 100644
--- a/var/spack/repos/builtin/packages/r-a4core/package.py
+++ b/var/spack/repos/builtin/packages/r-a4core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,15 @@ from spack import *
class RA4core(RPackage):
- """Automated Affymetrix Array Analysis Core Package."""
+ """Automated Affymetrix Array Analysis Core Package
+
+ Utility functions for the Automated Affymetrix Array Analysis set of
+ packages."""
homepage = "https://bioconductor.org/packages/a4Core"
git = "https://git.bioconductor.org/packages/a4Core.git"
+ version('1.38.0', commit='a027dcd3486c64950815ec7c7271f1f65ba3d8a1')
version('1.32.0', commit='2916a29723bdd514d5d987f89725d141d1d2dfce')
version('1.30.0', commit='e392b1b4339a34f93d5d9bc520a1a9385ea63141')
version('1.28.0', commit='39b6ee29bc2f2fdc5733438c14dc02f8abc6460b')
diff --git a/var/spack/repos/builtin/packages/r-a4preproc/package.py b/var/spack/repos/builtin/packages/r-a4preproc/package.py
index 934b6b6129..b0d3e8e1b9 100644
--- a/var/spack/repos/builtin/packages/r-a4preproc/package.py
+++ b/var/spack/repos/builtin/packages/r-a4preproc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,21 @@ from spack import *
class RA4preproc(RPackage):
- """Automated Affymetrix Array Analysis Preprocessing Package."""
+ """Automated Affymetrix Array Analysis Preprocessing Package
+
+ Utility functions to pre-process data for the Automated Affymetrix Array
+ Analysis set of packages."""
homepage = "https://bioconductor.org/packages/a4Preproc"
git = "https://git.bioconductor.org/packages/a4Preproc.git"
+ version('1.38.0', commit='c93c223bd531bff090531a109b51f8dcd710d0cb')
version('1.32.0', commit='0da742e500892b682feeb39256906282ad20c558')
version('1.30.0', commit='e6fb9fa2e7c703974e6ca10c0e9681b097b05978')
version('1.28.0', commit='435d66727f1187020d034a1beaf4cd8bd4f76981')
version('1.26.0', commit='be7403acc06670c05ead1adaf60533b0fe3a65ea')
version('1.24.0', commit='651014b8102807aea4f1274e34e083e70b5e7ee7')
- depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-biocgenerics', when='@1.38.0:', type=('build', 'run'))
+ depends_on('r-biobase', when='@1.38.0:', type=('build', 'run'))
+ depends_on('r-annotationdbi', when='@:1.32.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-a4reporting/package.py b/var/spack/repos/builtin/packages/r-a4reporting/package.py
index a99ce79bda..5f132f17ba 100644
--- a/var/spack/repos/builtin/packages/r-a4reporting/package.py
+++ b/var/spack/repos/builtin/packages/r-a4reporting/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,20 @@ from spack import *
class RA4reporting(RPackage):
- """Automated Affymetrix Array Analysis Reporting Package."""
+ """Automated Affymetrix Array Analysis Reporting Package
+
+ Utility functions to facilitate the reporting of the Automated Affymetrix
+ Array Analysis Reporting set of packages."""
homepage = "https://bioconductor.org/packages/a4Reporting"
git = "https://git.bioconductor.org/packages/a4Reporting.git"
+ version('1.38.0', commit='cd3cf244e7a299b2485684ed15519cbbda1c590f')
version('1.32.0', commit='8d781899c625892080eb50f322694dd640d5f792')
version('1.30.0', commit='ae9b9ade45cfac2636d0445a7e0a029dfe3b9390')
version('1.28.0', commit='0fe72f48374353c39479a45e5516d0709f8c9ef7')
version('1.26.0', commit='cce201502e2d3b28fd2823b66d9f81b034dc7eaa')
version('1.24.0', commit='bf22c4d50daf40fc9eaf8c476385bf4a24a5b5ce')
- depends_on('r-annaffy', type=('build', 'run'))
depends_on('r-xtable', type=('build', 'run'))
+ depends_on('r-annaffy', when='@:1.32.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-abadata/package.py b/var/spack/repos/builtin/packages/r-abadata/package.py
index 3fdc18a8c0..d40325e79d 100644
--- a/var/spack/repos/builtin/packages/r-abadata/package.py
+++ b/var/spack/repos/builtin/packages/r-abadata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAbadata(RPackage):
- """Averaged gene expression in human brain regions from Allen Brain Atlas.
+ """Averaged gene expression in human brain regions from Allen Brain Atlas
Provides the data for the gene expression enrichment analysis conducted
in the package 'ABAEnrichment'. The package includes three datasets
@@ -21,6 +21,7 @@ class RAbadata(RPackage):
homepage = "https://bioconductor.org/packages/ABAData"
git = "https://git.bioconductor.org/packages/ABAData.git"
+ version('1.20.0', commit='c08a841ffb54d6555eb80b90a7a8afe7e48201b3')
version('1.14.0', commit='ed7460e7d2948684db69dd4b4f8e135af50198bd')
version('1.12.0', commit='9c2f0fbda75b06a0807bd714528915920899282d')
version('1.10.0', commit='197edb2c3fc733c9e44dde2b9b86ecedcd2c5e1a')
diff --git a/var/spack/repos/builtin/packages/r-abaenrichment/package.py b/var/spack/repos/builtin/packages/r-abaenrichment/package.py
index 13ff668a73..cf00e7def8 100644
--- a/var/spack/repos/builtin/packages/r-abaenrichment/package.py
+++ b/var/spack/repos/builtin/packages/r-abaenrichment/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAbaenrichment(RPackage):
- """Gene expression enrichment in human brain regions.
+ """Gene expression enrichment in human brain regions
The package ABAEnrichment is designed to test for enrichment of user
defined candidate genes in the set of expressed genes in different human
@@ -25,19 +25,19 @@ class RAbaenrichment(RPackage):
homepage = "https://bioconductor.org/packages/ABAEnrichment"
git = "https://git.bioconductor.org/packages/ABAEnrichment.git"
+ version('1.20.0', commit='608433a0b07e6dd99915dc536a038d960f1be1d5')
version('1.14.1', commit='e1ebfb5de816b924af16675a5ba9ed1a6b527b23')
version('1.12.0', commit='1320e932deafd71d67c7a6f758d15b00d6d7f7d7')
version('1.10.0', commit='15f33ccb694a91d2d2067c937682c4bc952def6c')
version('1.8.0', commit='cb8155ee9a04fb55b2a2e8c23df7c0be15bb2624')
version('1.6.0', commit='d2a0467dcb7aa6e103e3b83dccd6510b0e142ac1')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.2:', type=('build', 'run'))
+ depends_on('r@3.4:', when='@1.8.0:', type=('build', 'run'))
depends_on('r-rcpp@0.11.5:', type=('build', 'run'))
depends_on('r-gplots@2.14.2:', type=('build', 'run'))
depends_on('r-gtools@3.5.0:', type=('build', 'run'))
depends_on('r-abadata@0.99.2:', type=('build', 'run'))
-
- depends_on('r@3.4:', when='@1.8.0:', type=('build', 'run'))
depends_on('r-data-table@1.10.4:', when='@1.8.0:', type=('build', 'run'))
-
depends_on('r-gofuncr@1.1.2:', when='@1.12.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-abind/package.py b/var/spack/repos/builtin/packages/r-abind/package.py
index 72e8013b64..3641213a24 100644
--- a/var/spack/repos/builtin/packages/r-abind/package.py
+++ b/var/spack/repos/builtin/packages/r-abind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-absseq/package.py b/var/spack/repos/builtin/packages/r-absseq/package.py
index 13b9c1b7f7..8a89c49be6 100644
--- a/var/spack/repos/builtin/packages/r-absseq/package.py
+++ b/var/spack/repos/builtin/packages/r-absseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RAbsseq(RPackage):
"""ABSSeq: a new RNA-Seq analysis method based on modelling absolute
- expression differences.
+ expression differences
Inferring differential expression genes by absolute counts difference
between two groups, utilizing Negative binomial distribution and
@@ -18,6 +18,7 @@ class RAbsseq(RPackage):
homepage = "https://bioconductor.org/packages/ABSSeq"
git = "https://git.bioconductor.org/packages/ABSSeq.git"
+ version('1.44.0', commit='c202b4a059021ed1228ccee7303c69b0aa4ca1ee')
version('1.38.0', commit='b686d92f0f0efdb835982efe761d059bc24b34ce')
version('1.36.0', commit='bd419072432cba4ef58b4b37b3c69c85d78b1c4a')
version('1.34.1', commit='0c3a2514ef644c6e0de3714bc91959a302c9e006')
diff --git a/var/spack/repos/builtin/packages/r-acde/package.py b/var/spack/repos/builtin/packages/r-acde/package.py
index 83af5e4cc0..47d8a802ed 100644
--- a/var/spack/repos/builtin/packages/r-acde/package.py
+++ b/var/spack/repos/builtin/packages/r-acde/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAcde(RPackage):
- """Artificial Components Detection of Differentially Expressed Genes.
+ """Artificial Components Detection of Differentially Expressed Genes
This package provides a multivariate inferential analysis method for
detecting differentially expressed genes in gene expression data. It
@@ -23,6 +23,7 @@ class RAcde(RPackage):
homepage = "https://bioconductor.org/packages/acde"
git = "https://git.bioconductor.org/packages/acde.git"
+ version('1.20.0', commit='cefb4f2e2b0ef3c5f51944c0ece7a71294020350')
version('1.14.0', commit='6017c7436a46f186b2a3cea9d2b93274f6dd3417')
version('1.12.0', commit='f6ce5926ac915c2d73436f47daf7f9791645dad4')
version('1.10.0', commit='2c303dec45f3c70bf333a6eacae568a08d5ca010')
diff --git a/var/spack/repos/builtin/packages/r-acepack/package.py b/var/spack/repos/builtin/packages/r-acepack/package.py
index e116916827..8b4e29390a 100644
--- a/var/spack/repos/builtin/packages/r-acepack/package.py
+++ b/var/spack/repos/builtin/packages/r-acepack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-acgh/package.py b/var/spack/repos/builtin/packages/r-acgh/package.py
index 7e83884223..edf91d13e5 100644
--- a/var/spack/repos/builtin/packages/r-acgh/package.py
+++ b/var/spack/repos/builtin/packages/r-acgh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAcgh(RPackage):
- """Classes and functions for Array Comparative Genomic Hybridization data..
+ """Classes and functions for Array Comparative Genomic Hybridization data
Functions for reading aCGH data from image analysis output files and
clone information files, creation of aCGH S3 objects for storing these
@@ -17,6 +17,7 @@ class RAcgh(RPackage):
homepage = "https://bioconductor.org/packages/aCGH"
git = "https://git.bioconductor.org/packages/aCGH.git"
+ version('1.68.0', commit='91f41a3917ddce43eb05e11c90eb99c467ba2247')
version('1.62.0', commit='3b68b69c3380fa3b66dfb060457628a4a9c22d4f')
version('1.60.0', commit='ae581758aaa1755448f0cfef5adfb30d1e820b21')
version('1.58.0', commit='2decc79a21bff5a14d708cdc654e351515b20d3e')
diff --git a/var/spack/repos/builtin/packages/r-acme/package.py b/var/spack/repos/builtin/packages/r-acme/package.py
index c3d2e0a7fc..025950a3d8 100644
--- a/var/spack/repos/builtin/packages/r-acme/package.py
+++ b/var/spack/repos/builtin/packages/r-acme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAcme(RPackage):
- """Algorithms for Calculating Microarray Enrichment (ACME).
+ """Algorithms for Calculating Microarray Enrichment (ACME)
ACME (Algorithms for Calculating Microarray Enrichment) is a set of
tools for analysing tiling array ChIP/chip, DNAse hypersensitivity, or
@@ -22,6 +22,7 @@ class RAcme(RPackage):
homepage = "https://bioconductor.org/packages/ACME"
git = "https://git.bioconductor.org/packages/ACME.git"
+ version('2.46.0', commit='68f45c9f7d34c28adf6a0fc4245fdf63881109de')
version('2.40.0', commit='38499e512998d54d874a0bfdc173f4ba5de5f01a')
version('2.38.0', commit='cd03196428e8adf62e84f25c4d4545429e2c908b')
version('2.36.0', commit='39e056435b9775d35e7f7fc5446c2c3cafe15670')
diff --git a/var/spack/repos/builtin/packages/r-ada/package.py b/var/spack/repos/builtin/packages/r-ada/package.py
index e7c860cd65..ee91963925 100644
--- a/var/spack/repos/builtin/packages/r-ada/package.py
+++ b/var/spack/repos/builtin/packages/r-ada/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-adabag/package.py b/var/spack/repos/builtin/packages/r-adabag/package.py
index 9d4986fca6..e80ebe01cb 100644
--- a/var/spack/repos/builtin/packages/r-adabag/package.py
+++ b/var/spack/repos/builtin/packages/r-adabag/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ade4/package.py b/var/spack/repos/builtin/packages/r-ade4/package.py
index d81b2815a0..61c184ce2e 100644
--- a/var/spack/repos/builtin/packages/r-ade4/package.py
+++ b/var/spack/repos/builtin/packages/r-ade4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,15 +8,26 @@ from spack import *
class RAde4(RPackage):
"""Analysis of Ecological Data : Exploratory and Euclidean Methods in
- Environmental Sciences"""
+ Environmental Sciences
+
+ Tools for multivariate data analysis. Several methods are provided for the
+ analysis (i.e., ordination) of one-table (e.g., principal component
+ analysis, correspondence analysis), two-table (e.g., coinertia analysis,
+ redundancy analysis), three-table (e.g., RLQ analysis) and K-table (e.g.,
+ STATIS, multiple coinertia analysis). The philosophy of the package is
+ described in Dray and Dufour (2007) <doi:10.18637/jss.v022.i04>."""
homepage = "http://pbil.univ-lyon1.fr/ADE-4"
url = "https://cloud.r-project.org/src/contrib/ade4_1.7-6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ade4"
+ version('1.7-16', sha256='9bd7a25ff4fe30a32fd8f6b71909f4c638a0e2f002fc8303c0a4795423385590')
version('1.7-13', sha256='f5d0a7356ae63f82d3adb481a39007e7b0d70211b8724aa686af0c89c994e99b')
version('1.7-11', sha256='4ccd799ae99bd625840b866a697c4a48adb751660470bf0d6cf9207b1927a572')
version('1.7-6', sha256='80848e1650dcc0ec921c130efa6f7e9b307f0d107c63e49faa52296eda19cc52')
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-pixmap', when='@1.7-16:', type=('build', 'run'))
+ depends_on('r-sp', when='@1.7-16:', type=('build', 'run'))
+ depends_on('r-progress', when='@1.7-16:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-adegenet/package.py b/var/spack/repos/builtin/packages/r-adegenet/package.py
index 3eac280830..3348afa567 100644
--- a/var/spack/repos/builtin/packages/r-adegenet/package.py
+++ b/var/spack/repos/builtin/packages/r-adegenet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RAdegenet(RPackage):
- """Toolset for the exploration of genetic and genomic data. Adegenet
+ """Exploratory Analysis of Genetic and Genomic Data
+
+ Toolset for the exploration of genetic and genomic data. Adegenet
provides formal (S4) classes for storing and handling various genetic
data, including genetic markers with varying ploidy and hierarchical
population structure ('genind' class), alleles counts by populations
@@ -21,6 +23,7 @@ class RAdegenet(RPackage):
url = "https://cloud.r-project.org/src/contrib/adegenet_2.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/adegenet"
+ version('2.1.3', sha256='0790114ecb22642683b5be1f4b3a6a49856e06dc2f9e21b9cba4390c2257f6c6')
version('2.1.1', sha256='3043fe5d731a38ff0e266f090dcda448640c3d0fd61934c76da32d082e5dce7a')
version('2.1.0', sha256='7ee44061002b41164bbc09256307ab02e536f4f2ac03f36c7dc8f85f6af4639a')
version('2.0.1', sha256='7eddf46e64f680d54d034b68c50900d9bd5bc2e08309d062e230121b7460bb10')
@@ -34,7 +37,7 @@ class RAdegenet(RPackage):
depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-seqinr', type=('build', 'run'))
depends_on('r-spdep', type=('build', 'run'))
+ depends_on('r-boot', type=('build', 'run'))
depends_on('r-reshape2', type=('build', 'run'))
depends_on('r-dplyr@0.4.1:', type=('build', 'run'))
depends_on('r-vegan', type=('build', 'run'))
- depends_on('r-boot', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-adegraphics/package.py b/var/spack/repos/builtin/packages/r-adegraphics/package.py
index d007d6cb97..9be47f468e 100644
--- a/var/spack/repos/builtin/packages/r-adegraphics/package.py
+++ b/var/spack/repos/builtin/packages/r-adegraphics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-adephylo/package.py b/var/spack/repos/builtin/packages/r-adephylo/package.py
index 3527a2fb6f..5259673222 100644
--- a/var/spack/repos/builtin/packages/r-adephylo/package.py
+++ b/var/spack/repos/builtin/packages/r-adephylo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-adespatial/package.py b/var/spack/repos/builtin/packages/r-adespatial/package.py
index aeaaae67f5..4de4296a47 100644
--- a/var/spack/repos/builtin/packages/r-adespatial/package.py
+++ b/var/spack/repos/builtin/packages/r-adespatial/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-adgoftest/package.py b/var/spack/repos/builtin/packages/r-adgoftest/package.py
index 1117c5c986..1e453c4907 100644
--- a/var/spack/repos/builtin/packages/r-adgoftest/package.py
+++ b/var/spack/repos/builtin/packages/r-adgoftest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-adsplit/package.py b/var/spack/repos/builtin/packages/r-adsplit/package.py
index 29dd6a088f..ad1ec8163c 100644
--- a/var/spack/repos/builtin/packages/r-adsplit/package.py
+++ b/var/spack/repos/builtin/packages/r-adsplit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAdsplit(RPackage):
- """Annotation-Driven Clustering.
+ """Annotation-Driven Clustering
This package implements clustering of microarray gene expression
profiles according to functional annotations. For each term genes are
@@ -17,6 +17,7 @@ class RAdsplit(RPackage):
homepage = "https://bioconductor.org/packages/adSplit"
git = "https://git.bioconductor.org/packages/adSplit.git"
+ version('1.60.0', commit='de5abccfe652cbc5b5f49fb6ed77cdd15cc760cd')
version('1.54.0', commit='ce8fb61f4a3d0942294da2baa28be1472acb0652')
version('1.52.0', commit='3bd105dbd76c52798b7d52f60c17de62ef13da19')
version('1.50.0', commit='a02e2c994e78ececd5a248575109c5ed36c969db')
diff --git a/var/spack/repos/builtin/packages/r-aer/package.py b/var/spack/repos/builtin/packages/r-aer/package.py
index 0b9cb5aaf1..2e0c3f6537 100644
--- a/var/spack/repos/builtin/packages/r-aer/package.py
+++ b/var/spack/repos/builtin/packages/r-aer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RAer(RPackage):
- """Functions, data sets, examples, demos, and vignettes
+ """Applied Econometrics with R
+
+ Functions, data sets, examples, demos, and vignettes
for the book Christian Kleiber and Achim Zeileis (2008),
Applied Econometrics with R, Springer-Verlag, New York.
ISBN 978-0-387-77316-2."""
@@ -16,6 +18,7 @@ class RAer(RPackage):
url = "https://cloud.r-project.org/src/contrib/AER_1.2-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/AER"
+ version('1.2-9', sha256='3b79390b14766419fc1e8912689bc462d4beb01aff9dad26d628aed69d04540d')
version('1.2-7', sha256='3aee5c606313710c2dca6c1e9b2c20a145aa33f2a3ecc5cfcec66c8e91838a93')
version('1.2-6', sha256='653c3a2d253819e0ce8c2cf12cff2ab222bf3d19dbf382b7c4b4c3d762469474')
version('1.2-5', sha256='ef0cf14ff9d3de2b97e5855243426cc918808eb1011f0e2253b3b00043927a62')
diff --git a/var/spack/repos/builtin/packages/r-affxparser/package.py b/var/spack/repos/builtin/packages/r-affxparser/package.py
index c2814bbca0..c6b0adc57c 100644
--- a/var/spack/repos/builtin/packages/r-affxparser/package.py
+++ b/var/spack/repos/builtin/packages/r-affxparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffxparser(RPackage):
- """Affymetrix File Parsing SDK.
+ """Affymetrix File Parsing SDK
Package for parsing Affymetrix files (CDF, CEL, CHP, BPMAP, BAR). It
provides methods for fast and memory efficient parsing of Affymetrix
@@ -21,6 +21,7 @@ class RAffxparser(RPackage):
homepage = "https://bioconductor.org/packages/affxparser"
git = "https://git.bioconductor.org/packages/affxparser.git"
+ version('1.62.0', commit='b3e988e5c136c3f1a064e1da13730b403c8704c0')
version('1.56.0', commit='20d27701ad2bdfacf34d857bb8ecb4f505b4d056')
version('1.54.0', commit='dce83d23599a964086a84ced4afd13fc43e7cd4f')
version('1.52.0', commit='8e0c4b89ee1cb4ff95f58a5dd947249dc718bc58')
diff --git a/var/spack/repos/builtin/packages/r-affy/package.py b/var/spack/repos/builtin/packages/r-affy/package.py
index 06d65f113a..47722b3496 100644
--- a/var/spack/repos/builtin/packages/r-affy/package.py
+++ b/var/spack/repos/builtin/packages/r-affy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffy(RPackage):
- """Methods for Affymetrix Oligonucleotide Arrays.
+ """Methods for Affymetrix Oligonucleotide Arrays
The package contains functions for exploratory oligonucleotide array
analysis. The dependence on tkWidgets only concerns few convenience
@@ -16,6 +16,7 @@ class RAffy(RPackage):
homepage = "https://bioconductor.org/packages/affy"
git = "https://git.bioconductor.org/packages/affy.git"
+ version('1.68.0', commit='1664399610c9aa519399445a2ef8bb9ea2233eac')
version('1.62.0', commit='097ab4aa98a1700c5fae65d07bed44a477714605')
version('1.60.0', commit='fcae363e58b322ad53584d9e15e80fa2f9d17206')
version('1.58.0', commit='4698231f45f225228f56c0708cd477ad450b4ee6')
@@ -26,8 +27,7 @@ class RAffy(RPackage):
depends_on('r-biocgenerics@0.1.12:', type=('build', 'run'))
depends_on('r-biobase@2.5.5:', type=('build', 'run'))
depends_on('r-affyio@1.13.3:', type=('build', 'run'))
- depends_on('r-biocinstaller', when='@1.54.0:1.58.0', type=('build', 'run'))
+ depends_on('r-biocmanager', when='@1.60.0:', type=('build', 'run'))
depends_on('r-preprocesscore', type=('build', 'run'))
depends_on('r-zlibbioc', type=('build', 'run'))
-
- depends_on('r-biocmanager', when='@1.60.0:', type=('build', 'run'))
+ depends_on('r-biocinstaller', when='@1.54.0:1.58.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affycomp/package.py b/var/spack/repos/builtin/packages/r-affycomp/package.py
index aa434c3de9..af49dd6212 100644
--- a/var/spack/repos/builtin/packages/r-affycomp/package.py
+++ b/var/spack/repos/builtin/packages/r-affycomp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffycomp(RPackage):
- """Graphics Toolbox for Assessment of Affymetrix Expression Measures.
+ """Graphics Toolbox for Assessment of Affymetrix Expression Measures
The package contains functions that can be used to compare expression
measures for Affymetrix Oligonucleotide Arrays."""
@@ -15,6 +15,7 @@ class RAffycomp(RPackage):
homepage = "https://bioconductor.org/packages/affycomp"
git = "https://git.bioconductor.org/packages/affycomp.git"
+ version('1.66.0', commit='388d01af8b1e6ab11051407f77d0206512df8424')
version('1.60.0', commit='5dbe61fa04941529a0fc70b728021c8e00c4ba0c')
version('1.58.0', commit='99607b2c4aad37e3e63eccbd12d0d533762f28ef')
version('1.56.0', commit='b0994da338be19396e647c680059fd35341b50a2')
diff --git a/var/spack/repos/builtin/packages/r-affycompatible/package.py b/var/spack/repos/builtin/packages/r-affycompatible/package.py
index 0baa5f8bd0..324d239007 100644
--- a/var/spack/repos/builtin/packages/r-affycompatible/package.py
+++ b/var/spack/repos/builtin/packages/r-affycompatible/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffycompatible(RPackage):
- """Affymetrix GeneChip software compatibility.
+ """Affymetrix GeneChip software compatibility
This package provides an interface to Affymetrix chip annotation and
sample attribute files. The package allows an easy way for users to
@@ -19,6 +19,7 @@ class RAffycompatible(RPackage):
homepage = "https://bioconductor.org/packages/AffyCompatible"
git = "https://git.bioconductor.org/packages/AffyCompatible.git"
+ version('1.50.0', commit='3b12d12bd6d1a9f0d45e012817231d137d47089e')
version('1.44.0', commit='98a27fbe880551fd32a5febb6c7bde0807eac476')
version('1.42.0', commit='699303cc20f292591e2faa12e211c588efb9eaa8')
version('1.40.0', commit='44838bdb5e8c26afbd898c49ed327ddd1a1d0301')
diff --git a/var/spack/repos/builtin/packages/r-affycontam/package.py b/var/spack/repos/builtin/packages/r-affycontam/package.py
index 4df3ea750e..22c9ddbf12 100644
--- a/var/spack/repos/builtin/packages/r-affycontam/package.py
+++ b/var/spack/repos/builtin/packages/r-affycontam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffycontam(RPackage):
- """structured corruption of affymetrix cel file data.
+ """structured corruption of affymetrix cel file data
structured corruption of cel file data to demonstrate QA
effectiveness"""
@@ -15,6 +15,7 @@ class RAffycontam(RPackage):
homepage = "https://bioconductor.org/packages/affyContam"
git = "https://git.bioconductor.org/packages/affyContam.git"
+ version('1.48.0', commit='88387a2ad4be4234d36710c65f2ca3a5b06b67da')
version('1.42.0', commit='8a5e94a5ae8c2ecfafa6177b84a6e8ab07e14fbe')
version('1.40.0', commit='dfd5fd6ae04941dddbda03f656540b71b2fbc614')
version('1.38.0', commit='84651e8eade61619afefc83bb290047da101a5bc')
diff --git a/var/spack/repos/builtin/packages/r-affycoretools/package.py b/var/spack/repos/builtin/packages/r-affycoretools/package.py
index bdb1467a9c..822e2a574b 100644
--- a/var/spack/repos/builtin/packages/r-affycoretools/package.py
+++ b/var/spack/repos/builtin/packages/r-affycoretools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RAffycoretools(RPackage):
"""Functions useful for those doing repetitive analyses with Affymetrix
- GeneChips.
+ GeneChips
Various wrapper functions that have been written to streamline the more
common analyses that a core Biostatistician might see."""
@@ -16,12 +16,14 @@ class RAffycoretools(RPackage):
homepage = "https://bioconductor.org/packages/affycoretools"
git = "https://git.bioconductor.org/packages/affycoretools.git"
+ version('1.62.0', commit='c9779e4da648fd174c9bd575c6020be1c03047c4')
version('1.56.0', commit='71eab04056a8d696470420a600b14900186be898')
version('1.54.0', commit='1e1f9680bc3e1fa443f4a81ce5ab81349959b845')
version('1.52.2', commit='2f98c74fad238b94c1e453b972524ab7b573b0de')
version('1.50.6', commit='4be92bcb55d7bace2a110865b7530dcfac14e76e')
version('1.48.0', commit='e0d52e34eead1ac45d3e60c59efd940e4889eb99')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-affy', type=('build', 'run'))
depends_on('r-limma', type=('build', 'run'))
@@ -39,5 +41,5 @@ class RAffycoretools(RPackage):
depends_on('r-edger', type=('build', 'run'))
depends_on('r-rsqlite', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
-
depends_on('r-dbi', when='@1.50.6:', type=('build', 'run'))
+ depends_on('r-glimma', when='@1.62.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affydata/package.py b/var/spack/repos/builtin/packages/r-affydata/package.py
index 720477642f..f43c8e603a 100644
--- a/var/spack/repos/builtin/packages/r-affydata/package.py
+++ b/var/spack/repos/builtin/packages/r-affydata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffydata(RPackage):
- """Affymetrix Data for Demonstration Purpose.
+ """Affymetrix Data for Demonstration Purpose
Example datasets of a slightly large size. They represent 'real world
examples', unlike the artificial examples included in the package
@@ -16,6 +16,7 @@ class RAffydata(RPackage):
homepage = "https://bioconductor.org/packages/affydata"
git = "https://git.bioconductor.org/packages/affydata.git"
+ version('1.38.0', commit='b5e843b2514789d0d87bea44d762c89a95314ee7')
version('1.32.0', commit='c7cef93f6edd23024f4b1985b90e89058874c2bd')
version('1.30.0', commit='d5408d84b37ebae73b40a448dd52baf7b4a13bea')
version('1.28.0', commit='a106a5514c352bf0bbc624ded58a93886d4ce96f')
diff --git a/var/spack/repos/builtin/packages/r-affyexpress/package.py b/var/spack/repos/builtin/packages/r-affyexpress/package.py
index c01d921fa2..7f9ec7dfa0 100644
--- a/var/spack/repos/builtin/packages/r-affyexpress/package.py
+++ b/var/spack/repos/builtin/packages/r-affyexpress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffyexpress(RPackage):
- """Affymetrix Quality Assessment and Analysis Tool.
+ """Affymetrix Quality Assessment and Analysis Tool
The purpose of this package is to provide a comprehensive and easy-to-
use tool for quality assessment and to identify differentially expressed
@@ -16,6 +16,7 @@ class RAffyexpress(RPackage):
homepage = "https://bioconductor.org/packages/AffyExpress"
git = "https://git.bioconductor.org/packages/AffyExpress.git"
+ version('1.56.0', commit='e07085833de2bbf81537410cad526d39f8a82478')
version('1.50.0', commit='8b98703b63396df9692afb0e15b594658125cc96')
version('1.48.0', commit='dbaed516b7529ef4f7588aafaf3c5f1d53a9bb92')
version('1.46.0', commit='2add4a4436e21aa20f1ededbfd5f1365a3d28c85')
diff --git a/var/spack/repos/builtin/packages/r-affyilm/package.py b/var/spack/repos/builtin/packages/r-affyilm/package.py
index 45ea59fb14..aa772ab218 100644
--- a/var/spack/repos/builtin/packages/r-affyilm/package.py
+++ b/var/spack/repos/builtin/packages/r-affyilm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffyilm(RPackage):
- """Linear Model of background subtraction and the Langmuir isotherm.
+ """Linear Model of background subtraction and the Langmuir isotherm
affyILM is a preprocessing tool which estimates gene expression levels
for Affymetrix Gene Chips. Input from physical chemistry is employed to
@@ -17,6 +17,7 @@ class RAffyilm(RPackage):
homepage = "https://bioconductor.org/packages/affyILM"
git = "https://git.bioconductor.org/packages/affyILM.git"
+ version('1.42.0', commit='b97b29786b866de38802ebbb995169be91e90942')
version('1.36.0', commit='619ced931ba72860ce4cb41c841bbca1636a1132')
version('1.34.0', commit='2c02ed2d8fa9a9585d41cf4db0b75d0a07ad8564')
version('1.32.0', commit='860f2ddada80435d309ba334eff3fab503817755')
diff --git a/var/spack/repos/builtin/packages/r-affyio/package.py b/var/spack/repos/builtin/packages/r-affyio/package.py
index 5379253475..df46f43194 100644
--- a/var/spack/repos/builtin/packages/r-affyio/package.py
+++ b/var/spack/repos/builtin/packages/r-affyio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffyio(RPackage):
- """Tools for parsing Affymetrix data files.
+ """Tools for parsing Affymetrix data files
Routines for parsing Affymetrix data files based upon file format
information. Primary focus is on accessing the CEL and CDF file
@@ -16,6 +16,7 @@ class RAffyio(RPackage):
homepage = "https://bioconductor.org/packages/affyio"
git = "https://git.bioconductor.org/packages/affyio.git"
+ version('1.60.0', commit='ee20528b32700e99768da48143d6d45c9a7bbe91')
version('1.54.0', commit='c0e306e1805a556a1074d1af1acdd18e0a04477f')
version('1.52.0', commit='9da725ac1098a22a370fa96eb03e51e4f6d5d963')
version('1.50.0', commit='911ea4f8e4cdf7b649b87ef7ed1a5f5b111ef38a')
diff --git a/var/spack/repos/builtin/packages/r-affypdnn/package.py b/var/spack/repos/builtin/packages/r-affypdnn/package.py
index b78e98745e..f10a0e6a79 100644
--- a/var/spack/repos/builtin/packages/r-affypdnn/package.py
+++ b/var/spack/repos/builtin/packages/r-affypdnn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-affyplm/package.py b/var/spack/repos/builtin/packages/r-affyplm/package.py
index 29ca0119bd..e837d04fea 100644
--- a/var/spack/repos/builtin/packages/r-affyplm/package.py
+++ b/var/spack/repos/builtin/packages/r-affyplm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffyplm(RPackage):
- """Methods for fitting probe-level models.
+ """Methods for fitting probe-level models
A package that extends and improves the functionality of the base affy
package. Routines that make heavy use of compiled code for speed.
@@ -18,6 +18,7 @@ class RAffyplm(RPackage):
homepage = "https://bioconductor.org/packages/affyPLM"
git = "https://git.bioconductor.org/packages/affyPLM.git"
+ version('1.66.0', commit='f0780c3d0e9dccaff83861b98beb5c1d324c4399')
version('1.60.0', commit='b11e377d6af3fd0f28aba8195ebf171003da1a9d')
version('1.58.0', commit='32764c7691d9a72a301d50042a8844112887a1c8')
version('1.56.0', commit='13dfc558281af9a177d4d592c34cf7ace629af0e')
diff --git a/var/spack/repos/builtin/packages/r-affyqcreport/package.py b/var/spack/repos/builtin/packages/r-affyqcreport/package.py
index 17c7fa1661..526f7c2410 100644
--- a/var/spack/repos/builtin/packages/r-affyqcreport/package.py
+++ b/var/spack/repos/builtin/packages/r-affyqcreport/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAffyqcreport(RPackage):
- """QC Report Generation for affyBatch objects.
+ """QC Report Generation for affyBatch objects
This package creates a QC report for an AffyBatch object. The report is
intended to allow the user to quickly assess the quality of a set of
@@ -16,6 +16,7 @@ class RAffyqcreport(RPackage):
homepage = "https://bioconductor.org/packages/affyQCReport"
git = "https://git.bioconductor.org/packages/affyQCReport.git"
+ version('1.68.0', commit='34b42a16f87a90a595146f4a1802ed04f6bfccca')
version('1.62.0', commit='92d4124b688b90a6a9b8a21ab9d13d92b368cee4')
version('1.60.0', commit='d0c15b1c56fc1caf6f114877ea6c1b8483a0dcfa')
version('1.58.0', commit='14be93a1e7a6d1a64c38ed2f53e0c52a389b2a1b')
@@ -26,6 +27,7 @@ class RAffyqcreport(RPackage):
depends_on('r-affy', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-affyplm', type=('build', 'run'))
+ depends_on('r-biobase', when='@1.68.0:', type=('build', 'run'))
depends_on('r-genefilter', type=('build', 'run'))
depends_on('r-rcolorbrewer', type=('build', 'run'))
depends_on('r-simpleaffy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affyrnadegradation/package.py b/var/spack/repos/builtin/packages/r-affyrnadegradation/package.py
index f03e50594f..adb6649f9a 100644
--- a/var/spack/repos/builtin/packages/r-affyrnadegradation/package.py
+++ b/var/spack/repos/builtin/packages/r-affyrnadegradation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RAffyrnadegradation(RPackage):
"""Analyze and correct probe positional bias in microarray data due to RNA
- degradation.
+ degradation
The package helps with the assessment and correction of RNA degradation
effects in Affymetrix 3' expression arrays. The parameter d gives a
@@ -19,6 +19,7 @@ class RAffyrnadegradation(RPackage):
homepage = "https://bioconductor.org/packages/AffyRNADegradation"
git = "https://git.bioconductor.org/packages/AffyRNADegradation.git"
+ version('1.36.0', commit='89662b93076659db2967a526899184c12c156bc5')
version('1.30.0', commit='620c464fb09248e1c7a122828eab59a4fb778cc1')
version('1.28.0', commit='aff91d78fa9e76edaa3ef6a9a43b98b86cc44c24')
version('1.26.0', commit='6ab03ad624701464280bf7dfe345d200e846298a')
diff --git a/var/spack/repos/builtin/packages/r-agdex/package.py b/var/spack/repos/builtin/packages/r-agdex/package.py
index 03aea88d09..4c34d5e317 100644
--- a/var/spack/repos/builtin/packages/r-agdex/package.py
+++ b/var/spack/repos/builtin/packages/r-agdex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAgdex(RPackage):
- """Agreement of Differential Expression Analysis.
+ """Agreement of Differential Expression Analysis
A tool to evaluate agreement of differential expression for cross-
species genomics"""
@@ -15,6 +15,7 @@ class RAgdex(RPackage):
homepage = "https://bioconductor.org/packages/AGDEX"
git = "https://git.bioconductor.org/packages/AGDEX.git"
+ version('1.38.0', commit='7e2c1f5f27ccbea6a7157f5122212e40408b74da')
version('1.32.0', commit='254ad2c876ab9ac48c3c3b395160dccabc084acf')
version('1.30.0', commit='d6cc21ed7e11e6644399495fa5f8b36368625d4b')
version('1.28.0', commit='7d78ee424485018b73cd019ceaed7a2ed53adf3f')
diff --git a/var/spack/repos/builtin/packages/r-agilp/package.py b/var/spack/repos/builtin/packages/r-agilp/package.py
index fdc829b212..66527ad2bd 100644
--- a/var/spack/repos/builtin/packages/r-agilp/package.py
+++ b/var/spack/repos/builtin/packages/r-agilp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RAgilp(RPackage):
- """Agilent expression array processing package.
+ """Agilent expression array processing package
- More about what it does (maybe more than one line)"""
+ More about what it does (maybe more than one line)."""
homepage = "https://bioconductor.org/packages/agilp"
git = "https://git.bioconductor.org/packages/agilp.git"
+ version('3.22.0', commit='7d089d576752e0526f15a1007e94436089954313')
version('3.16.0', commit='2900d6066317f21d076b3a043b16f32eca168c47')
version('3.14.0', commit='8feb047d70216013462ea7806e9227d192b60c61')
version('3.12.0', commit='a86dea1b03b2b56c2c8317d4b10903fb8948ffcb')
diff --git a/var/spack/repos/builtin/packages/r-agimicrorna/package.py b/var/spack/repos/builtin/packages/r-agimicrorna/package.py
index 77444f68a3..01d44cc3d9 100644
--- a/var/spack/repos/builtin/packages/r-agimicrorna/package.py
+++ b/var/spack/repos/builtin/packages/r-agimicrorna/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,17 +8,21 @@ from spack import *
class RAgimicrorna(RPackage):
"""Processing and Differential Expression Analysis of Agilent microRNA
- chips."""
+ chips
+
+ Processing and Analysis of Agilent microRNA data."""
homepage = "https://bioconductor.org/packages/AgiMicroRna"
git = "https://git.bioconductor.org/packages/AgiMicroRna.git"
+ version('2.40.0', commit='cfa4acb2215da44767ab3a45845bcd587c309e74')
version('2.34.0', commit='aaa8cdd70ed2696c313f6240ffbfa044f0d97a7a')
version('2.32.0', commit='681ae17d07e8e533f798a607b761b71a31f407d8')
version('2.30.0', commit='99b5a8284cfe3e93c3ae85a2436e87101b9599dd')
version('2.28.0', commit='62c4a12f1168c7aa1ab46d2c97090ef71478328e')
version('2.26.0', commit='6dd74bae47986f2a23d03e3f1f9f78f701dd8053')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-limma', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-aims/package.py b/var/spack/repos/builtin/packages/r-aims/package.py
index 72bb4bc0b4..e80f9f710a 100644
--- a/var/spack/repos/builtin/packages/r-aims/package.py
+++ b/var/spack/repos/builtin/packages/r-aims/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAims(RPackage):
- """AIMS : Absolute Assignment of Breast Cancer Intrinsic Molecular Subtype.
+ """AIMS : Absolute Assignment of Breast Cancer Intrinsic Molecular Subtype
This package contains the AIMS implementation. It contains necessary
functions to assign the five intrinsic molecular subtypes (Luminal A,
@@ -18,6 +18,7 @@ class RAims(RPackage):
homepage = "https://bioconductor.org/packages/AIMS"
git = "https://git.bioconductor.org/packages/AIMS.git"
+ version('1.22.0', commit='34a38978b24377abb864eff7683bb36344ff171d')
version('1.16.0', commit='86cb8c998ade3003cd34a5405b218ae07d97bf84')
version('1.14.1', commit='4125c4217a7e4f00169b5ba65dcc3778fdd33c6f')
version('1.12.0', commit='d7eaa723d19a6aca37df244fd0b3d5426ed0a626')
diff --git a/var/spack/repos/builtin/packages/r-aldex2/package.py b/var/spack/repos/builtin/packages/r-aldex2/package.py
index 8b8d5635da..a930970424 100644
--- a/var/spack/repos/builtin/packages/r-aldex2/package.py
+++ b/var/spack/repos/builtin/packages/r-aldex2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAldex2(RPackage):
- """Analysis Of Differential Abundance Taking Sample Variation Into Account.
+ """Analysis Of Differential Abundance Taking Sample Variation Into Account
A differential abundance analysis for the comparison of two or more
conditions. Useful for analyzing data from standard RNA-seq or meta-RNA-
@@ -24,16 +24,17 @@ class RAldex2(RPackage):
homepage = "https://bioconductor.org/packages/ALDEx2"
git = "https://git.bioconductor.org/packages/ALDEx2.git"
+ version('1.22.0', commit='ac7f0ab3f094ec52713da7620a27058b14c7181d')
version('1.16.0', commit='bd698a896a5bea91187e3060e56a147bad1d586f')
version('1.14.1', commit='a8b970c594a00a37c064227bf312d5f89dccabe8')
version('1.12.0', commit='9efde428d22a0be1fe7b6655d45ddce8fcded180')
version('1.10.0', commit='e43f99e4009ad4d5ed200cc8a19faf7091c0c98a')
version('1.8.0', commit='24104824ca2402ad4f54fbf1ed9cee7fac2aaaf1')
- depends_on('r-s4vectors', type=('build', 'run'))
- depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-zcompositions', when='@1.22.0:', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
depends_on('r-summarizedexperiment', type=('build', 'run'))
- depends_on('r-biocparallel', type=('build', 'run'))
-
depends_on('r-multtest', when='@1.10.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-allelicimbalance/package.py b/var/spack/repos/builtin/packages/r-allelicimbalance/package.py
index d90389605e..5d97d3081d 100644
--- a/var/spack/repos/builtin/packages/r-allelicimbalance/package.py
+++ b/var/spack/repos/builtin/packages/r-allelicimbalance/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAllelicimbalance(RPackage):
- """Investigates Allele Specific Expression.
+ """Investigates Allele Specific Expression
Provides a framework for allelic specific expression investigation using
RNA-seq data."""
@@ -15,6 +15,7 @@ class RAllelicimbalance(RPackage):
homepage = "https://bioconductor.org/packages/AllelicImbalance"
git = "https://git.bioconductor.org/packages/AllelicImbalance.git"
+ version('1.28.0', commit='ac5d13c9ee0935bf9500ee542792644e752a1fde')
version('1.22.0', commit='04692e367e8c6aac475d06adfd7cfa629baab05a')
version('1.20.0', commit='4cd3a789d872151b0d906ec419677271fecdf7c3')
version('1.18.0', commit='6d6eed7487e9207dba556bc76283bcc7745808ea')
@@ -22,18 +23,29 @@ class RAllelicimbalance(RPackage):
version('1.14.0', commit='35958534945819baafde0e13d1eb4d05a514142c')
depends_on('r@3.2.0:', type=('build', 'run'))
+ depends_on('r@4.0.0:', when='@1.28.0:', type=('build', 'run'))
depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.8:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-summarizedexperiment@0.2.0:', type=('build', 'run'))
depends_on('r-genomicalignments', type=('build', 'run'))
+ depends_on('r-genomicalignments@1.15.6:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
depends_on('r-bsgenome', type=('build', 'run'))
+ depends_on('r-bsgenome@1.47.3:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-variantannotation', type=('build', 'run'))
+ depends_on('r-variantannotation@1.25.11:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-biostrings@2.47.6:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.25:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-iranges@2.13.12:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-rsamtools@1.31.2:', when='@1.18.0:', type=('build', 'run'))
+ depends_on('r-rsamtools@1.99.3:', when='@1.22.0:', type=('build', 'run'))
depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-genomicfeatures@1.31.3:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-gviz', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-latticeextra', type=('build', 'run'))
@@ -41,15 +53,3 @@ class RAllelicimbalance(RPackage):
depends_on('r-seqinr', type=('build', 'run'))
depends_on('r-genomeinfodb', type=('build', 'run'))
depends_on('r-nlme', type=('build', 'run'))
-
- depends_on('r-genomicranges@1.31.8:', when='@1.18.0:', type=('build', 'run'))
- depends_on('r-genomicalignments@1.15.6:', when='@1.18.0:', type=('build', 'run'))
- depends_on('r-bsgenome@1.47.3:', when='@1.18.0:', type=('build', 'run'))
- depends_on('r-variantannotation@1.25.11:', when='@1.18.0:', type=('build', 'run'))
- depends_on('r-biostrings@2.47.6:', when='@1.18.0:', type=('build', 'run'))
- depends_on('r-s4vectors@0.17.25:', when='@1.18.0:', type=('build', 'run'))
- depends_on('r-iranges@2.13.12:', when='@1.18.0:', type=('build', 'run'))
- depends_on('r-rsamtools@1.31.2:', when='@1.18.0:', type=('build', 'run'))
- depends_on('r-genomicfeatures@1.31.3:', when='@1.18.0:', type=('build', 'run'))
-
- depends_on('r-rsamtools@1.99.3:', when='@1.22.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-alpine/package.py b/var/spack/repos/builtin/packages/r-alpine/package.py
index cf8a203975..2be92fe260 100644
--- a/var/spack/repos/builtin/packages/r-alpine/package.py
+++ b/var/spack/repos/builtin/packages/r-alpine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAlpine(RPackage):
- """alpine.
+ """alpine
Fragment sequence bias modeling and correction for RNA-seq transcript
abundance estimation."""
@@ -15,6 +15,7 @@ class RAlpine(RPackage):
homepage = "https://bioconductor.org/packages/alpine"
git = "https://git.bioconductor.org/packages/alpine.git"
+ version('1.16.0', commit='aee397774ac6cd17ad45dc05be14c526647f3c13')
version('1.10.0', commit='bf22597eb2c6c6aaa26900ed4ece96ce7256e77c')
version('1.8.0', commit='ddaa0b4517f0909460aa1bd33c8e43dc6c8d23d4')
version('1.6.0', commit='ea55fcb3cedb5caa20d8264bb29a4975041f5274')
diff --git a/var/spack/repos/builtin/packages/r-als/package.py b/var/spack/repos/builtin/packages/r-als/package.py
index bf696f7123..76e3529ac0 100644
--- a/var/spack/repos/builtin/packages/r-als/package.py
+++ b/var/spack/repos/builtin/packages/r-als/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-alsace/package.py b/var/spack/repos/builtin/packages/r-alsace/package.py
index d039edd0f6..35c04521d1 100644
--- a/var/spack/repos/builtin/packages/r-alsace/package.py
+++ b/var/spack/repos/builtin/packages/r-alsace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAlsace(RPackage):
- """ALS for the Automatic Chemical Exploration of mixtures.
+ """ALS for the Automatic Chemical Exploration of mixtures
Alternating Least Squares (or Multivariate Curve Resolution) for
analytical chemical data, in particular hyphenated data where the first
@@ -19,6 +19,7 @@ class RAlsace(RPackage):
homepage = "https://bioconductor.org/packages/alsace"
git = "https://git.bioconductor.org/packages/alsace.git"
+ version('1.26.0', commit='40a76404acb1466723a78a55d87c67eec3e6f306')
version('1.20.0', commit='47f1cf8daafc864e5e3418009f349ce85d6b0389')
version('1.18.0', commit='c9fc43c7b441de43b14ef1be69926c4c4a566191')
version('1.16.0', commit='5a51a19aeccbba0123222201cb7a228559f29653')
diff --git a/var/spack/repos/builtin/packages/r-altcdfenvs/package.py b/var/spack/repos/builtin/packages/r-altcdfenvs/package.py
index d49a46bff3..0724e52243 100644
--- a/var/spack/repos/builtin/packages/r-altcdfenvs/package.py
+++ b/var/spack/repos/builtin/packages/r-altcdfenvs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RAltcdfenvs(RPackage):
- """alternative CDF environments (aka probeset mappings).
+ """alternative CDF environments (aka probeset mappings)
- Convenience data structures and functions to handle cdfenvs"""
+ Convenience data structures and functions to handle cdfenvs."""
homepage = "https://bioconductor.org/packages/altcdfenvs"
git = "https://git.bioconductor.org/packages/altcdfenvs.git"
+ version('2.52.0', commit='21329abf82eae26f84b7c0270e81c8e089c548ce')
version('2.46.0', commit='90a11e748a5af98cabfd6670a5b7b256420d172b')
version('2.44.0', commit='d804f6432422bd532abab415710f890b36cc8133')
version('2.42.0', commit='00ec6461877a063d938494b8ed0cd273a3b20b85')
diff --git a/var/spack/repos/builtin/packages/r-amap/package.py b/var/spack/repos/builtin/packages/r-amap/package.py
index cfc312a9e9..80eef5e198 100644
--- a/var/spack/repos/builtin/packages/r-amap/package.py
+++ b/var/spack/repos/builtin/packages/r-amap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RAmap(RPackage):
- """Tools for Clustering and Principal Component Analysis
- (With robust methods, and parallelized functions)."""
+ """Another Multidimensional Analysis Package
+
+ Tools for Clustering and Principal Component Analysis (With robust methods,
+ and parallelized functions)."""
homepage = "http://mulcyber.toulouse.inra.fr/projects/amap/"
url = "https://cloud.r-project.org/src/contrib/amap_0.8-16.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/amap/"
+ version('0.8-18', sha256='7afbbdd681a201121374821b733c9000ca1046a2353ee386507604c2c759ec7e')
version('0.8-17', sha256='6b8473d1d35a9cbc611661882c8f681162e8f913f911ccd51629200ae72289c6')
version('0.8-16', sha256='d3775ad7f660581f7d2f070e426be95ae0d6743622943e6f5491988e5217d4e2')
diff --git a/var/spack/repos/builtin/packages/r-amelia/package.py b/var/spack/repos/builtin/packages/r-amelia/package.py
new file mode 100644
index 0000000000..952ee2e9e4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-amelia/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAmelia(RPackage):
+ """Amelia: A Program for Missing Data
+
+ Amelia II "multiply imputes" missing data in a single
+ cross-section (such as a survey), from a time series (like
+ variables collected for each year in a country), or from a
+ time-series-cross-sectional data set (such as collected by
+ years for each of several countries)."""
+
+ homepage = "http://gking.harvard.edu/amelia"
+ url = "https://cloud.r-project.org/src/contrib/Amelia_1.7.6.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/Amelia"
+
+ version('1.7.6', sha256='63c08d374aaf78af46c34dc78da719b3085e58d9fabdc76c6460d5193a621bea')
+
+ depends_on('r@3.0.2:', type=('build', 'run'))
+ depends_on('r-rcpp@0.11:', type=('build', 'run'))
+ depends_on('r-foreign', type=('build', 'run'))
+ depends_on('r-rcpparmadillo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ampliqueso/package.py b/var/spack/repos/builtin/packages/r-ampliqueso/package.py
index 94292707b9..cbd5f7cf4a 100644
--- a/var/spack/repos/builtin/packages/r-ampliqueso/package.py
+++ b/var/spack/repos/builtin/packages/r-ampliqueso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,7 @@ class RAmpliqueso(RPackage):
version('1.16.0', commit='25d2543ff9dedef4f966f999c95cdf87185d3bb3')
version('1.14.0', commit='9a4c26ec594171279aba8ab7fe59c4a2ea09b06b')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@2.15.0:', type=('build', 'run'))
depends_on('r-rnaseqmap@2.17.1:', type=('build', 'run'))
depends_on('r-knitr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-analysispageserver/package.py b/var/spack/repos/builtin/packages/r-analysispageserver/package.py
index d72e3c5a50..a2e425c447 100644
--- a/var/spack/repos/builtin/packages/r-analysispageserver/package.py
+++ b/var/spack/repos/builtin/packages/r-analysispageserver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-anaquin/package.py b/var/spack/repos/builtin/packages/r-anaquin/package.py
index 10a8e15160..ecd641d3cd 100644
--- a/var/spack/repos/builtin/packages/r-anaquin/package.py
+++ b/var/spack/repos/builtin/packages/r-anaquin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAnaquin(RPackage):
- """Statistical analysis of sequins.
+ """Statistical analysis of sequins
The project is intended to support the use of sequins (synthetic
sequencing spike-in controls) owned and made available by the Garvan
@@ -18,6 +18,7 @@ class RAnaquin(RPackage):
homepage = "https://bioconductor.org/packages/Anaquin"
git = "https://git.bioconductor.org/packages/Anaquin.git"
+ version('2.14.0', commit='d0a34c931a0e72080bff91dacb37dbbe26b45386')
version('2.8.0', commit='f591d420740b77881ae0a4c16b208c63d460c601')
version('2.6.1', commit='22b6c71697fe1e2db8f6d18f77728d0fd96fa6d6')
version('2.4.0', commit='0d6ae80ff622151a782e4774ca274f06024a71d2')
diff --git a/var/spack/repos/builtin/packages/r-aneufinder/package.py b/var/spack/repos/builtin/packages/r-aneufinder/package.py
index ece9dc0c9a..31894e53dc 100644
--- a/var/spack/repos/builtin/packages/r-aneufinder/package.py
+++ b/var/spack/repos/builtin/packages/r-aneufinder/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAneufinder(RPackage):
- """Analysis of Copy Number Variation in Single-Cell-Sequencing Data.
+ """Analysis of Copy Number Variation in Single-Cell-Sequencing Data
AneuFinder implements functions for copy-number detection, breakpoint
detection, and karyotype and heterogeneity analysis in single-cell whole
@@ -16,6 +16,7 @@ class RAneufinder(RPackage):
homepage = "https://bioconductor.org/packages/AneuFinder"
git = "https://git.bioconductor.org/packages/AneuFinder.git"
+ version('1.18.0', commit='76ec9af947f97212084ca478e8e82f9e0eb79de9')
version('1.12.1', commit='e788fd0c864f0bf0abd93df44c6d42f82eb37e0e')
version('1.10.2', commit='56578ae69abac93dfea6bcac1fc205b14b6ba9dd')
version('1.8.0', commit='36a729d244add5aafbe21c37a1baaea6a50354d3')
@@ -23,27 +24,26 @@ class RAneufinder(RPackage):
version('1.4.0', commit='e5bdf4d5e4f84ee5680986826ffed636ed853b8e')
depends_on('r@3.3:', type=('build', 'run'))
+ depends_on('r@3.5:', when='@1.10.2:', type=('build', 'run'))
depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-cowplot', type=('build', 'run'))
depends_on('r-aneufinderdata', type=('build', 'run'))
depends_on('r-foreach', type=('build', 'run'))
depends_on('r-doparallel', type=('build', 'run'))
depends_on('r-biocgenerics', when='@1.4.0:1.6.0', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.31.6:', when='@1.18.0:', type=('build', 'run'))
depends_on('r-s4vectors', type=('build', 'run'))
depends_on('r-genomeinfodb', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
depends_on('r-rsamtools', type=('build', 'run'))
depends_on('r-bamsignals', type=('build', 'run'))
depends_on('r-dnacopy', type=('build', 'run'))
+ depends_on('r-ecp', when='@1.8.0:', type=('build', 'run'))
depends_on('r-biostrings', type=('build', 'run'))
depends_on('r-genomicalignments', type=('build', 'run'))
- depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-reshape2', type=('build', 'run'))
depends_on('r-ggdendro', type=('build', 'run'))
depends_on('r-ggrepel', type=('build', 'run'))
depends_on('r-reordercluster', type=('build', 'run'))
depends_on('r-mclust', type=('build', 'run'))
-
- depends_on('r-ecp', when='@1.8.0:', type=('build', 'run'))
-
- depends_on('r@3.5:', when='@1.10.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-aneufinderdata/package.py b/var/spack/repos/builtin/packages/r-aneufinderdata/package.py
index 18d1ec2534..5189efaf29 100644
--- a/var/spack/repos/builtin/packages/r-aneufinderdata/package.py
+++ b/var/spack/repos/builtin/packages/r-aneufinderdata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAneufinderdata(RPackage):
- """WGSCS Data for Demonstration Purposes.
+ """WGSCS Data for Demonstration Purposes
Whole-genome single cell sequencing data for demonstration purposes in
the AneuFinder package."""
@@ -15,6 +15,7 @@ class RAneufinderdata(RPackage):
homepage = "https://bioconductor.org/packages/AneuFinderData"
git = "https://git.bioconductor.org/packages/AneuFinderData.git"
+ version('1.18.0', commit='1bf1657b28fc8c1425e611980a692da952ce3d1e')
version('1.12.0', commit='7350f38856b6278e07eca141f7f3cb24bc60c3a1')
version('1.10.0', commit='ef7fc27f9af4f178fa45a21aba30709e1ebde035')
version('1.8.0', commit='4f00f8d5f2e968fea667a7feafc0a4607d6e0c6e')
diff --git a/var/spack/repos/builtin/packages/r-animation/package.py b/var/spack/repos/builtin/packages/r-animation/package.py
index a60ad02998..6cc3e1bb4e 100644
--- a/var/spack/repos/builtin/packages/r-animation/package.py
+++ b/var/spack/repos/builtin/packages/r-animation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class RAnimation(RPackage):
version('2.6', sha256='90293638920ac436e7e4de76ebfd92e1643ccdb0259b62128f16dd0b13245b0a')
version('2.5', sha256='b232fef1b318c79710e5e1923d87baba4c85ffe2c77ddb188130e0911d8cb55f')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@2.14:', type=('build', 'run'))
depends_on('r-magick', when='@2.6:', type=('build', 'run'))
depends_on('imagemagick')
diff --git a/var/spack/repos/builtin/packages/r-annaffy/package.py b/var/spack/repos/builtin/packages/r-annaffy/package.py
index 596be2a18f..964fbb3b9f 100644
--- a/var/spack/repos/builtin/packages/r-annaffy/package.py
+++ b/var/spack/repos/builtin/packages/r-annaffy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAnnaffy(RPackage):
- """Annotation tools for Affymetrix biological metadata.
+ """Annotation tools for Affymetrix biological metadata
Functions for handling data from Bioconductor Affymetrix annotation data
packages. Produces compact HTML and text reports including experimental
@@ -17,6 +17,7 @@ class RAnnaffy(RPackage):
homepage = "https://bioconductor.org/packages/annaffy"
git = "https://git.bioconductor.org/packages/annaffy.git"
+ version('1.62.0', commit='ad9c37e0e7e45e0f35c208ce528ba48000b37432')
version('1.56.0', commit='8c8e16aa0f3073880c39684fd8e554a052ec6233')
version('1.54.0', commit='e1b3bf10515255eb994cd8bdf85697ea728c3484')
version('1.52.0', commit='ef84030163045f702941c8d5a59fbd4a09f30e2c')
diff --git a/var/spack/repos/builtin/packages/r-annotate/package.py b/var/spack/repos/builtin/packages/r-annotate/package.py
index da58ce0c2a..6544684005 100644
--- a/var/spack/repos/builtin/packages/r-annotate/package.py
+++ b/var/spack/repos/builtin/packages/r-annotate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RAnnotate(RPackage):
- """Annotation for microarrays.
+ """Annotation for microarrays
Using R enviroments for annotation."""
homepage = "https://bioconductor.org/packages/annotate"
git = "https://git.bioconductor.org/packages/annotate.git"
+ version('1.68.0', commit='98cdb12c612b3f3fc06329a89a1ffb0a92b555c0')
version('1.62.0', commit='19af0b39747ea83fe8fe9b8bbb6036363bc815cd')
version('1.60.1', commit='9d8f87db02bf0c1593e79da754335a24d3a8ed16')
version('1.58.0', commit='d1b5dd5feb8793f4f816d9a4aecbebb5ec7df7bc')
@@ -27,4 +28,5 @@ class RAnnotate(RPackage):
depends_on('r-dbi', type=('build', 'run'))
depends_on('r-xtable', type=('build', 'run'))
depends_on('r-biocgenerics@0.13.8:', type=('build', 'run'))
- depends_on('r-rcurl', type=('build', 'run'))
+ depends_on('r-httr', when='@1.68.0:', type=('build', 'run'))
+ depends_on('r-rcurl', when='@:1.62.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-annotationdbi/package.py b/var/spack/repos/builtin/packages/r-annotationdbi/package.py
index 8ffc832848..61a9fa9669 100644
--- a/var/spack/repos/builtin/packages/r-annotationdbi/package.py
+++ b/var/spack/repos/builtin/packages/r-annotationdbi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAnnotationdbi(RPackage):
- """Manipulation of SQLite-based annotations in Bioconductor.
+ """Manipulation of SQLite-based annotations in Bioconductor
Implements a user-friendly interface for querying SQLite-based
annotation data packages."""
@@ -15,6 +15,7 @@ class RAnnotationdbi(RPackage):
homepage = "https://bioconductor.org/packages/AnnotationDbi"
git = "https://git.bioconductor.org/packages/AnnotationDbi.git"
+ version('1.52.0', commit='c4e0ca9bd65362ae9cad6a98d90f54267b0ae838')
version('1.46.1', commit='ff260913741d0fcf9487eeb1f44a6c6968ced5b9')
version('1.44.0', commit='ce191b08cfd612d014431325c26c91b11c5f13ac')
version('1.42.1', commit='71085b47ea2e1ef929bebe8b17eb8e8a573f98e3')
@@ -23,12 +24,10 @@ class RAnnotationdbi(RPackage):
depends_on('r@2.7.0:', type=('build', 'run'))
depends_on('r-biocgenerics@0.15.10:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.23.1:', when='@1.40.0:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.29.2:', when='@1.46.1:', type=('build', 'run'))
depends_on('r-biobase@1.17.0:', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
depends_on('r-dbi', type=('build', 'run'))
depends_on('r-rsqlite', type=('build', 'run'))
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
-
- depends_on('r-biocgenerics@0.23.1:', when='@1.40.0:', type=('build', 'run'))
-
- depends_on('r-biocgenerics@0.29.2:', when='@1.46.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-annotationfilter/package.py b/var/spack/repos/builtin/packages/r-annotationfilter/package.py
index 2705074a7a..ba5ae683ad 100644
--- a/var/spack/repos/builtin/packages/r-annotationfilter/package.py
+++ b/var/spack/repos/builtin/packages/r-annotationfilter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAnnotationfilter(RPackage):
- """Facilities for Filtering Bioconductor Annotation Resources.
+ """Facilities for Filtering Bioconductor Annotation Resources
This package provides class and other infrastructure to implement
filters for manipulating Bioconductor annotation resources. The filters
@@ -16,6 +16,7 @@ class RAnnotationfilter(RPackage):
homepage = "https://bioconductor.org/packages/AnnotationFilter"
git = "https://git.bioconductor.org/packages/AnnotationFilter.git"
+ version('1.14.0', commit='6ee3a13ed93a535ed452cbc8c118151a2cbb732c')
version('1.8.0', commit='9bf70ead899e32e84e2908f2b29cd38250d2d1ed')
version('1.6.0', commit='fa40a7e17e93fac9e85091ff93f256adf145dec3')
version('1.4.0', commit='acbd3309f478843a7899bd9773af5f19f986b829')
diff --git a/var/spack/repos/builtin/packages/r-annotationforge/package.py b/var/spack/repos/builtin/packages/r-annotationforge/package.py
index cffa1d1dbd..6840dedf8f 100644
--- a/var/spack/repos/builtin/packages/r-annotationforge/package.py
+++ b/var/spack/repos/builtin/packages/r-annotationforge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAnnotationforge(RPackage):
- """Tools for building SQLite-based annotation data packages.
+ """Tools for building SQLite-based annotation data packages
Provides code for generating Annotation packages and their databases.
Packages produced are intended to be used with AnnotationDbi."""
@@ -15,6 +15,7 @@ class RAnnotationforge(RPackage):
homepage = "https://bioconductor.org/packages/AnnotationForge"
git = "https://git.bioconductor.org/packages/AnnotationForge.git"
+ version('1.32.0', commit='3d17c2a945951c02fe152e5a8a8e9c6cb41e30f7')
version('1.26.0', commit='5d181f32df1fff6446af64a2538a7d25c23fe46e')
version('1.24.0', commit='3e1fe863573e5b0f69f35a9ad6aebce11ef83d0d')
version('1.22.2', commit='8eafb1690c1c02f6291ccbb38ac633d54b8217f8')
diff --git a/var/spack/repos/builtin/packages/r-annotationhub/package.py b/var/spack/repos/builtin/packages/r-annotationhub/package.py
index 4437ec2c14..457d541d06 100644
--- a/var/spack/repos/builtin/packages/r-annotationhub/package.py
+++ b/var/spack/repos/builtin/packages/r-annotationhub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RAnnotationhub(RPackage):
- """Client to access AnnotationHub resources.
+ """Client to access AnnotationHub resources
This package provides a client for the Bioconductor AnnotationHub web
resource. The AnnotationHub web resource provides a central location
@@ -21,6 +21,7 @@ class RAnnotationhub(RPackage):
homepage = "https://bioconductor.org/packages/AnnotationHub"
git = "https://git.bioconductor.org/packages/AnnotationHub.git"
+ version('2.22.0', commit='3ab7dceebbc31ac14ca931f66c662cf9538b7d0a')
version('2.16.1', commit='f8cefaae603b782e1c1ad277a3fb89d44e3aa1ed')
version('2.14.5', commit='993a98ce3de04a0bbddcbde5b1ab2a9550275a12')
version('2.12.1', commit='471407bd9cdc612e01deb071c91bd9e5f1ea5e55')
@@ -28,18 +29,16 @@ class RAnnotationhub(RPackage):
version('2.8.3', commit='8aa9c64262a8d708d2bf1c82f82dfc3d7d4ccc0c')
depends_on('r-biocgenerics@0.15.10:', type=('build', 'run'))
+ depends_on('r-biocfilecache@1.5.1:', when='@2.16.1:', type=('build', 'run'))
depends_on('r-rsqlite', type=('build', 'run'))
- depends_on('r-biocinstaller', type=('build', 'run'))
+ depends_on('r-biocmanager', when='@2.14.5:', type=('build', 'run'))
+ depends_on('r-biocversion', when='@2.22.0:', type=('build', 'run'))
+ depends_on('r-curl', when='@2.10.1:', type=('build', 'run'))
+ depends_on('r-rappdirs', when='@2.16.1:', type=('build', 'run'))
depends_on('r-annotationdbi@1.31.19:', type=('build', 'run'))
depends_on('r-s4vectors', type=('build', 'run'))
depends_on('r-interactivedisplaybase', type=('build', 'run'))
depends_on('r-httr', type=('build', 'run'))
depends_on('r-yaml', type=('build', 'run'))
-
- depends_on('r-curl', when='@2.10.1:', type=('build', 'run'))
-
- depends_on('r-biocmanager', when='@2.14.5:', type=('build', 'run'))
-
- depends_on('r-biocfilecache@1.5.1:', when='@2.16.1:', type=('build', 'run'))
- depends_on('r-rappdirs', when='@2.16.1:', type=('build', 'run'))
depends_on('r-dplyr', when='@2.16.1:', type=('build', 'run'))
+ depends_on('r-biocinstaller', when='@:2.16.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-anytime/package.py b/var/spack/repos/builtin/packages/r-anytime/package.py
new file mode 100644
index 0000000000..d77250de27
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-anytime/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAnytime(RPackage):
+ """Anything to 'POSIXct' or 'Date' Converter
+
+ Convert input in any one of character, integer, numeric,
+ factor, or ordered type into 'POSIXct' (or 'Date') objects,
+ using one of a number of predefined formats, and relying on
+ Boost facilities for date and time parsing."""
+
+ homepage = "http://dirk.eddelbuettel.com/code/anytime.html"
+ url = "https://cloud.r-project.org/src/contrib/anytime_0.3.9.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/anytime"
+
+ version('0.3.9', sha256='1096c15249ac70997a8a41c37eeb2a6d38530621abeae05d3dcd96a8acc7574a')
+
+ depends_on('r@3.2.0:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.9:', type=('build', 'run'))
+ depends_on('r-bh', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-aod/package.py b/var/spack/repos/builtin/packages/r-aod/package.py
index f221cf661d..e344f49432 100644
--- a/var/spack/repos/builtin/packages/r-aod/package.py
+++ b/var/spack/repos/builtin/packages/r-aod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ape/package.py b/var/spack/repos/builtin/packages/r-ape/package.py
index b67a872986..896f1745e7 100644
--- a/var/spack/repos/builtin/packages/r-ape/package.py
+++ b/var/spack/repos/builtin/packages/r-ape/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RApe(RPackage):
- """Functions for reading, writing, plotting, and manipulating phylogenetic
+ """Analyses of Phylogenetics and Evolution
+
+ Functions for reading, writing, plotting, and manipulating phylogenetic
trees, analyses of comparative data in a phylogenetic framework, ancestral
character analyses, analyses of diversification and macroevolution,
computing distances from DNA sequences, reading and writing nucleotide
@@ -27,6 +29,7 @@ class RApe(RPackage):
url = "https://cloud.r-project.org/src/contrib/ape_4.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ape"
+ version('5.4-1', sha256='f0316c8e74ce900053e8b3e8c9322b9d10e7730f3be2150365f74630bee7eee4')
version('5.3', sha256='08b0df134c523feb00a86896d1aa2a43f0f0dab20a53bc6b5d6268d867988b23')
version('5.2', sha256='27eb02856c130d59de6e06276be4981709923756319e465a7f2d4756d4f46415')
version('5.1', sha256='b7d5dca66881638227a40aa59533904aa5efe0f4b867851b248e8f948a01a26e')
diff --git a/var/spack/repos/builtin/packages/r-argparse/package.py b/var/spack/repos/builtin/packages/r-argparse/package.py
index bfd15a6c08..da88eb8a8b 100644
--- a/var/spack/repos/builtin/packages/r-argparse/package.py
+++ b/var/spack/repos/builtin/packages/r-argparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,17 @@ from spack import *
class RArgparse(RPackage):
- """A command line parser to be used with Rscript to write "#!"
- shebang scripts that gracefully accept positional and optional
- arguments and automatically generate usage."""
+ """Command Line Optional and Positional Argument Parser
+
+ A command line parser to be used with Rscript to write "#!" shebang scripts
+ that gracefully accept positional and optional arguments and automatically
+ generate usage."""
homepage = "https://github.com/trevorld/argparse"
url = "https://cloud.r-project.org/src/contrib/argparse_1.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/argparse"
+ version('2.0.3', sha256='d26139c610ea0adf8d6632699cd34c4595ae3e7963bfc7a00cb3b7504f2059b0')
version('2.0.1', sha256='949843920d14fc7c162aedab331a936499541736e7dafbb103fbfd79be8147ab')
version('1.1.1', sha256='441449f0816411a868fd1b15cf4b2bc45931bbd4b67d6592dbe48875905cf93b')
@@ -23,3 +26,4 @@ class RArgparse(RPackage):
depends_on('r-r6', when='@2.0.0:', type=('build', 'run'))
depends_on('r-findpython', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('python@3.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-aroma-light/package.py b/var/spack/repos/builtin/packages/r-aroma-light/package.py
index a704ac72b4..00be416162 100644
--- a/var/spack/repos/builtin/packages/r-aroma-light/package.py
+++ b/var/spack/repos/builtin/packages/r-aroma-light/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,23 @@ from spack import *
class RAromaLight(RPackage):
- """Methods for microarray analysis that take basic data types such as
+ """Light-Weight Methods for Normalization and Visualization of Microarray
+ Data using Only Basic R Data Types
+
+ Methods for microarray analysis that take basic data types such as
matrices and lists of vectors. These methods can be used standalone, be
utilized in other packages, or be wrapped up in higher-level classes."""
homepage = "https://www.aroma-project.org/"
git = "https://git.bioconductor.org/packages/aroma.light"
+ version('3.20.0', commit='02cde7fa166259bce73c396a87dca2ecc8249c39')
version('3.16.0', commit='fc16179fc4bee8954c5415d7cd13e3112b75b4fd')
depends_on('r@2.15.2:', type=('build', 'run'))
depends_on('r-r-methodss3@1.7.1:', type=('build', 'run'))
depends_on('r-r-oo@1.22.0:', type=('build', 'run'))
+ depends_on('r-r-oo@1.23.0:', when='@3.20.0:', type=('build', 'run'))
depends_on('r-r-utils@2.9.0:', type=('build', 'run'))
depends_on('r-matrixstats@0.54.0:', type=('build', 'run'))
+ depends_on('r-matrixstats@0.55.0:', when='@3.20.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-askpass/package.py b/var/spack/repos/builtin/packages/r-askpass/package.py
index c87c23cc68..8e6d22243b 100644
--- a/var/spack/repos/builtin/packages/r-askpass/package.py
+++ b/var/spack/repos/builtin/packages/r-askpass/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-assertive-base/package.py b/var/spack/repos/builtin/packages/r-assertive-base/package.py
new file mode 100644
index 0000000000..89290be035
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-base/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveBase(RPackage):
+ """assertive.base: A Lightweight Core of the 'assertive' Package
+
+ A minimal set of predicates and assertions used by the assertive package.
+ This is mainly for use by other package developers who want to include run-time
+ testing features in their own packages. End-users will usually want to use
+ assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.base"
+ url = "https://cloud.r-project.org/src/contrib/assertive.base_0.0-7.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.base"
+
+ version('0.0-7', sha256='f02d4eca849f512500abb266a2a751d1fa2cf064f7142e5161a77c20b7f643f7')
+ version('0.0-1', sha256='6a5fb06ad912f01cd8aaf2aa7c8ca03b8ebbb1c5eb2be47fa145930f15f4d258')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-code/package.py b/var/spack/repos/builtin/packages/r-assertive-code/package.py
new file mode 100644
index 0000000000..050f41d1cf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-code/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveCode(RPackage):
+ """assertive.code: Assertions to Check Properties of Code
+
+ A set of predicates and assertions for checking the
+ properties of code. This is mainly for use by other package
+ developers who want to include run-time testing features in
+ their own packages. End-users will usually want to use
+ assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.code"
+ url = "https://cloud.r-project.org/src/contrib/assertive.code_0.0-3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.code"
+
+ version('0.0-3', sha256='ef80e8d1d683d776a7618e78ddccffca7f72ab4a0fcead90c670bb8f8cb90be2')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-properties', type=('build', 'run'))
+ depends_on('r-assertive-types', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-data-uk/package.py b/var/spack/repos/builtin/packages/r-assertive-data-uk/package.py
new file mode 100644
index 0000000000..fa330824ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-data-uk/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveDataUk(RPackage):
+ """assertive.data.uk: Assertions to Check Properties of Strings
+
+ A set of predicates and assertions for checking the
+ properties of UK-specific complex data types. This is
+ mainly for use by other package developers who want to
+ include run-time testing features in their own packages.
+ End-users will usually want to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.data.uk"
+ url = "https://cloud.r-project.org/src/contrib/assertive.data.uk_0.0-2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.data.uk"
+
+ version('0.0-2', sha256='ab48dab6977e8f43d6fffb33228d158865f68dde7026d123c693d77339dcf2bb')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0.2:', type=('build', 'run'))
+ depends_on('r-assertive-strings', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-data-us/package.py b/var/spack/repos/builtin/packages/r-assertive-data-us/package.py
new file mode 100644
index 0000000000..b5b00f8363
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-data-us/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveDataUs(RPackage):
+ """assertive.data.us: Assertions to Check Properties of Strings
+
+ A set of predicates and assertions for checking the
+ properties of US-specific complex data types. This is
+ mainly for use by other package developers who want to
+ include run-time testing features in their own packages.
+ End-users will usually want to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.data.us"
+ url = "https://cloud.r-project.org/src/contrib/assertive.data.us_0.0-2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.data.us"
+
+ version('0.0-2', sha256='180e64dfe6339d25dd27d7fe9e77619ef697ef6e5bb6a3cf4fb732a681bdfaad')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-strings', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-data/package.py b/var/spack/repos/builtin/packages/r-assertive-data/package.py
new file mode 100644
index 0000000000..47479eefe2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-data/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveData(RPackage):
+ """assertive.data: Assertions to Check Properties of Data
+
+ A set of predicates and assertions for checking the
+ properties of (country independent) complex data types.
+ This is mainly for use by other package developers who want
+ to include run-time testing features in their own packages.
+ End-users will usually want to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.data"
+ url = "https://cloud.r-project.org/src/contrib/assertive.data_0.0-3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.data"
+
+ version('0.0-3', sha256='5a00fb48ad870d9b3c872ce3d6aa20a7948687a980f49fe945b455339e789b01')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-strings', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-datetimes/package.py b/var/spack/repos/builtin/packages/r-assertive-datetimes/package.py
new file mode 100644
index 0000000000..b02060640a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-datetimes/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveDatetimes(RPackage):
+ """assertive.datetimes: Assertions to Check Properties of Dates and Times
+
+ A set of predicates and assertions for checking the properties of
+ dates and times. This is mainly for use by other package developers
+ who want to include run-time testing features in their own packages.
+ End-users will usually want to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.datetimes"
+ url = "https://cloud.r-project.org/src/contrib/assertive.datetimes_0.0-3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.datetimes"
+
+ version('0.0-3', sha256='014e2162f5a8d95138ed8330f7477e71c908a29341697c09a1b7198b7e012d94')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-7:', type=('build', 'run'))
+ depends_on('r-assertive-types', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-files/package.py b/var/spack/repos/builtin/packages/r-assertive-files/package.py
new file mode 100644
index 0000000000..4bc9727306
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-files/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveFiles(RPackage):
+ """assertive.files: Assertions to Check Properties of Files
+
+ A set of predicates and assertions for checking the
+ properties of files and connections. This is mainly for use
+ by other package developers who want to include run-time
+ testing features in their own packages. End-users will
+ usually want to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.files"
+ url = "https://cloud.r-project.org/src/contrib/assertive.files_0.0-2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.files"
+
+ version('0.0-2', sha256='be6adda6f18a0427449249e44c2deff4444a123244b16fe82c92f15d24faee0a')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-numbers', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-matrices/package.py b/var/spack/repos/builtin/packages/r-assertive-matrices/package.py
new file mode 100644
index 0000000000..bf2e83fb45
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-matrices/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveMatrices(RPackage):
+ """assertive.matrices: Assertions to Check Properties of
+ Matrices
+
+ A set of predicates and assertions for checking the
+ properties of matrices. This is mainly for use by other
+ package developers who want to include run-time testing
+ features in their own packages. End-users will usually want
+ to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.matrices"
+ url = "https://cloud.r-project.org/src/contrib/assertive.matrices_0.0-2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.matrices"
+
+ version('0.0-2', sha256='3462a7a7e11d7cc24180330d48cc3067cf92eab1699b3e4813deec66d99f5e9b')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-models/package.py b/var/spack/repos/builtin/packages/r-assertive-models/package.py
new file mode 100644
index 0000000000..4d8722e54f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-models/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveModels(RPackage):
+ """assertive.models: Assertions to Check Properties of Models
+
+ A set of predicates and assertions for checking the
+ properties of models. This is mainly for use by other
+ package developers who want to include run-time testing
+ features in their own packages. End-users will usually want
+ to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.models"
+ url = "https://cloud.r-project.org/src/contrib/assertive.models_0.0-2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.models"
+
+ version('0.0-2', sha256='b9a6d8786f352d53371dbe8c5f2f2a62a7866e30313f268e69626d5c3691c42e')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-numbers/package.py b/var/spack/repos/builtin/packages/r-assertive-numbers/package.py
new file mode 100644
index 0000000000..7374d83f0b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-numbers/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveNumbers(RPackage):
+ """assertive.numbers: Assertions to Check Properties of Numbers
+
+ A set of predicates and assertions for checking the
+ properties of numbers. This is mainly for use by other
+ package developers who want to include run-time testing
+ features in their own packages. End-users will usually want
+ to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.numbers"
+ url = "https://cloud.r-project.org/src/contrib/assertive.numbers_0.0-2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.numbers"
+
+ version('0.0-2', sha256='bae18c0b9e5b960a20636e127eb738ecd8a266e5fc29d8bc5ca712498cd68349')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-properties/package.py b/var/spack/repos/builtin/packages/r-assertive-properties/package.py
new file mode 100644
index 0000000000..d297feb5e5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-properties/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveProperties(RPackage):
+ """assertive.properties: Assertions to Check Properties of
+ Variables
+
+ A set of predicates and assertions for checking the
+ properties of variables, such as length, names and
+ attributes. This is mainly for use by other package
+ developers who want to include run-time testing features in
+ their own packages. End-users will usually want to use
+ assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.properties"
+ url = "https://cloud.r-project.org/src/contrib/assertive.properties_0.0-4.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.properties"
+
+ version('0.0-4', sha256='5c0663fecb4b7c30f2e1d65da8644534fcfe97fb3d8b51f74c1327cd14291a6b')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-reflection/package.py b/var/spack/repos/builtin/packages/r-assertive-reflection/package.py
new file mode 100644
index 0000000000..af84a126e2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-reflection/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveReflection(RPackage):
+ """assertive.reflection: Assertions for Checking the State of R
+
+ A set of predicates and assertions for checking the state
+ and capabilities of R, the operating system it is running
+ on, and the IDE being used. This is mainly for use by other
+ package developers who want to include run-time testing
+ features in their own packages. End-users will usually want
+ to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.reflection"
+ url = "https://cloud.r-project.org/src/contrib/assertive.reflection_0.0-5.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.reflection"
+
+ version('0.0-5', sha256='c2ca9b27cdddb9b9876351afd2ebfaf0fbe72c636cd12aa2af5d64e33fbf34bd')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-sets/package.py b/var/spack/repos/builtin/packages/r-assertive-sets/package.py
new file mode 100644
index 0000000000..3433831c0a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-sets/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveSets(RPackage):
+ """assertive.sets: Assertions to Check Properties of Sets
+
+ A set of predicates and assertions for checking the
+ properties of sets. This is mainly for use by other package
+ developers who want to include run-time testing features in
+ their own packages. End-users will usually want to use
+ assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.sets"
+ url = "https://cloud.r-project.org/src/contrib/assertive.sets_0.0-3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.sets"
+
+ version('0.0-3', sha256='876975a16ed911ea1ad12da284111c6eada6abfc0118585033abc0edb5801bb3')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-strings/package.py b/var/spack/repos/builtin/packages/r-assertive-strings/package.py
new file mode 100644
index 0000000000..c964dcfee8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-strings/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveStrings(RPackage):
+ """assertive.strings: Assertions to Check Properties of Strings
+
+ A set of predicates and assertions for checking the
+ properties of strings. This is mainly for use by other
+ package developers who want to include run-time testing
+ features in their own packages. End-users will usually want
+ to use assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.strings"
+ url = "https://cloud.r-project.org/src/contrib/assertive.strings_0.0-3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.strings"
+
+ version('0.0-3', sha256='d541d608a01640347d661cc9a67af8202904142031a20caa270f1c83d0ccd258')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-types', type=('build', 'run'))
+ depends_on('r-stringi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive-types/package.py b/var/spack/repos/builtin/packages/r-assertive-types/package.py
new file mode 100644
index 0000000000..51bda36381
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive-types/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertiveTypes(RPackage):
+ """assertive.types: Assertions to Check Types of Variables
+
+ A set of predicates and assertions for checking the types
+ of variables. This is mainly for use by other package
+ developers who want to include run-time testing features in
+ their own packages. End-users will usually want to use
+ assertive directly."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive.types"
+ url = "https://cloud.r-project.org/src/contrib/assertive.types_0.0-3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive.types"
+
+ version('0.0-3', sha256='ab6db2eb926e7bc885f2043fab679330aa336d07755375282d89bf9f9d0cb87f')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-7:', type=('build', 'run'))
+ depends_on('r-assertive-properties', type=('build', 'run'))
+ depends_on('r-codetools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertive/package.py b/var/spack/repos/builtin/packages/r-assertive/package.py
new file mode 100644
index 0000000000..4468526d76
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-assertive/package.py
@@ -0,0 +1,38 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RAssertive(RPackage):
+ """assertive: Readable Check Functions to Ensure Code Integrity
+
+ Lots of predicates (is_* functions) to check the state of your
+ variables, and assertions (assert_* functions) to throw errors if
+ they aren't in the right form."""
+
+ homepage = "https://bitbucket.org/richierocks/assertive"
+ url = "https://cloud.r-project.org/src/contrib/assertive_0.3-6.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/assertive"
+
+ version('0.3-6', sha256='c403169e83c433b65e911f7fd640b378e2a4a4765a36063584b8458168a4ea0a')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-assertive-base@0.0-4:', type=('build', 'run'))
+ depends_on('r-assertive-properties@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-types@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-numbers', type=('build', 'run'))
+ depends_on('r-assertive-strings', type=('build', 'run'))
+ depends_on('r-assertive-datetimes', type=('build', 'run'))
+ depends_on('r-assertive-files', type=('build', 'run'))
+ depends_on('r-assertive-sets@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-matrices', type=('build', 'run'))
+ depends_on('r-assertive-models', type=('build', 'run'))
+ depends_on('r-assertive-data', type=('build', 'run'))
+ depends_on('r-assertive-data-uk', type=('build', 'run'))
+ depends_on('r-assertive-data-us', type=('build', 'run'))
+ depends_on('r-assertive-reflection@0.0-2:', type=('build', 'run'))
+ depends_on('r-assertive-code', type=('build', 'run'))
+ depends_on('r-knitr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-assertthat/package.py b/var/spack/repos/builtin/packages/r-assertthat/package.py
index d0c0f6a829..ce599c0cad 100644
--- a/var/spack/repos/builtin/packages/r-assertthat/package.py
+++ b/var/spack/repos/builtin/packages/r-assertthat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-backports/package.py b/var/spack/repos/builtin/packages/r-backports/package.py
index c715bafc1e..1d9c9de415 100644
--- a/var/spack/repos/builtin/packages/r-backports/package.py
+++ b/var/spack/repos/builtin/packages/r-backports/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,20 @@ from spack import *
class RBackports(RPackage):
- """Implementations of functions which have been introduced
- in R since version 3.0.0. The backports are conditionally
- exported which results in R resolving the function names to
- the version shipped with R (if available) and uses the
- implemented backports as fallback. This way package developers
- can make use of the new functions without worrying about the
- minimum required R version."""
+ """Reimplementations of Functions Introduced Since R-3.0.0
+
+ Functions introduced or changed since R v3.0.0 are re-implemented in this
+ package. The backports are conditionally exported in order to let R resolve
+ the function name to either the implemented backport, or the respective
+ base version, if available. Package developers can make use of new
+ functions or arguments by selectively importing specific backports to
+ support older installations."""
homepage = "https://cloud.r-project.org/package=backports"
url = "https://cloud.r-project.org/src/contrib/backports_1.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/backports"
+ version('1.2.1', sha256='a2834bbd57e305e5d8010322f1906ea1789b3b5ba5eca77c5ff4248aceb7c2d5')
version('1.1.4', sha256='ee4b5efef22fa7ef27d7983ffcd31db52f81e1fbb7189c6e89ee09b69349ff03')
version('1.1.3', sha256='e41bd146824ec921994f1b176d0e4cca0b36dd3db32ca7a954d872a5ba214cc1')
version('1.1.1', sha256='494e81a4829339c8f1cc3e015daa807e9138b8e21b929965fc7c00b1abbe8897')
diff --git a/var/spack/repos/builtin/packages/r-bamsignals/package.py b/var/spack/repos/builtin/packages/r-bamsignals/package.py
index 59d8dceae2..5deebb1697 100644
--- a/var/spack/repos/builtin/packages/r-bamsignals/package.py
+++ b/var/spack/repos/builtin/packages/r-bamsignals/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBamsignals(RPackage):
- """Extract read count signals from bam files.
+ """Extract read count signals from bam files
This package allows to efficiently obtain count vectors from indexed bam
files. It counts the number of reads in given genomic ranges and it
@@ -17,6 +17,7 @@ class RBamsignals(RPackage):
homepage = "https://bioconductor.org/packages/bamsignals"
git = "https://git.bioconductor.org/packages/bamsignals.git"
+ version('1.22.0', commit='5f533969c84212406bcb3ebf725ebb6d77e9947a')
version('1.16.0', commit='dba9a4ae1613d2700f122ade1e9b90ca8fce5657')
version('1.14.0', commit='3107d3a35830e879eeddf127a81016ea1ca9b53d')
version('1.12.1', commit='06b6282df377cf9db58e8016be4ac8ddcc960939')
@@ -30,7 +31,9 @@ class RBamsignals(RPackage):
depends_on('r-genomicranges', type=('build', 'run'))
depends_on('r-zlibbioc', type=('build', 'run'))
depends_on('r-rhtslib', type=('build', 'run'))
-
depends_on('r-rhtslib@1.12.1:', when='@1.12.1:', type=('build', 'run'))
-
depends_on('r-rhtslib@1.13.1:', when='@1.14.0:', type=('build', 'run'))
+ depends_on('gmake', type='build')
+
+ # this is no listed but is needed
+ depends_on('curl')
diff --git a/var/spack/repos/builtin/packages/r-base64/package.py b/var/spack/repos/builtin/packages/r-base64/package.py
index eb72a27388..7a8c6041aa 100644
--- a/var/spack/repos/builtin/packages/r-base64/package.py
+++ b/var/spack/repos/builtin/packages/r-base64/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-base64enc/package.py b/var/spack/repos/builtin/packages/r-base64enc/package.py
index 3e49d856d8..83c45d7c15 100644
--- a/var/spack/repos/builtin/packages/r-base64enc/package.py
+++ b/var/spack/repos/builtin/packages/r-base64enc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bayesm/package.py b/var/spack/repos/builtin/packages/r-bayesm/package.py
index dd2d009f4a..ac7d1de5a4 100644
--- a/var/spack/repos/builtin/packages/r-bayesm/package.py
+++ b/var/spack/repos/builtin/packages/r-bayesm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,33 @@ from spack import *
class RBayesm(RPackage):
- """Bayesian Inference for Marketing/Micro-Econometrics"""
+ """Bayesian Inference for Marketing/Micro-Econometrics
+
+ Covers many important models used in marketing and micro-econometrics
+ applications. The package includes: Bayes Regression (univariate or
+ multivariate dep var), Bayes Seemingly Unrelated Regression (SUR), Binary
+ and Ordinal Probit, Multinomial Logit (MNL) and Multinomial Probit (MNP),
+ Multivariate Probit, Negative Binomial (Poisson) Regression, Multivariate
+ Mixtures of Normals (including clustering), Dirichlet Process Prior Density
+ Estimation with normal base, Hierarchical Linear Models with normal prior
+ and covariates, Hierarchical Linear Models with a mixture of normals prior
+ and covariates, Hierarchical Multinomial Logits with a mixture of normals
+ prior and covariates, Hierarchical Multinomial Logits with a Dirichlet
+ Process prior and covariates, Hierarchical Negative Binomial Regression
+ Models, Bayesian analysis of choice-based conjoint data, Bayesian treatment
+ of linear instrumental variables models, Analysis of Multivariate Ordinal
+ survey data with scale usage heterogeneity (as in Rossi et al, JASA (01)),
+ Bayesian Analysis of Aggregate Random Coefficient Logit Models as in BLP
+ (see Jiang, Manchanda, Rossi 2009) For further reference, consult our book,
+ Bayesian Statistics and Marketing by Rossi, Allenby and McCulloch (Wiley
+ 2005) and Bayesian Non- and Semi-Parametric Methods and Applications
+ (Princeton U Press 2014)."""
homepage = "https://cloud.r-project.org/package=bayesm"
url = "https://cloud.r-project.org/src/contrib/bayesm_3.1-0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/bayesm"
+ version('3.1-4', sha256='061b216c62bc72eab8d646ad4075f2f78823f9913344a781fa53ea7cf4a48f94')
version('3.1-3', sha256='51e4827eca8cd4cf3626f3c2282543df7c392b3ffb843f4bfb386fe104642a10')
version('3.1-2', sha256='a332f16e998ab10b17a2b1b9838d61660c36e914fe4d2e388a59f031d52ad736')
version('3.1-1', sha256='4854517dec30ab7c994de862aae1998c2d0c5e71265fd9eb7ed36891d4676078')
diff --git a/var/spack/repos/builtin/packages/r-bayesplot/package.py b/var/spack/repos/builtin/packages/r-bayesplot/package.py
new file mode 100644
index 0000000000..1bc82a2a83
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-bayesplot/package.py
@@ -0,0 +1,34 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RBayesplot(RPackage):
+ """Plotting for Bayesian Models:
+
+ Plotting functions for posterior analysis, MCMC diagnostics, prior and
+ posterior predictive checks, and other visualizations to support the
+ applied Bayesian workflow advocated in Gabry, Simpson, Vehtari, Betancourt,
+ and Gelman (2019) <doi:10.1111/rssa.12378>. The package is designed not
+ only to provide convenient functionality for users, but also a common set
+ of functions that can be easily used by developers working on a variety of
+ R packages for Bayesian modeling, particularly (but not exclusively)
+ packages interfacing with 'Stan'."""
+
+ homepage = "https://mc-stan.org/bayesplot/"
+ cran = "bayesplot"
+
+ version('1.8.0', sha256='a605f9929e681593a3ef3ca9c836e713314994aaea00f359f71cfc42d151c948')
+
+ depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('r-dplyr@0.8.0:', type=('build', 'run'))
+ depends_on('r-ggplot2@3.0.0:', type=('build', 'run'))
+ depends_on('r-ggridges', type=('build', 'run'))
+ depends_on('r-glue', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-rlang@0.3.0:', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-tidyselect', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bbmisc/package.py b/var/spack/repos/builtin/packages/r-bbmisc/package.py
index 6bc0688330..885cee7e6b 100644
--- a/var/spack/repos/builtin/packages/r-bbmisc/package.py
+++ b/var/spack/repos/builtin/packages/r-bbmisc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-beachmat/package.py b/var/spack/repos/builtin/packages/r-beachmat/package.py
index 9ba18d7592..2008fd0b69 100644
--- a/var/spack/repos/builtin/packages/r-beachmat/package.py
+++ b/var/spack/repos/builtin/packages/r-beachmat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBeachmat(RPackage):
- """Compiling Bioconductor to Handle Each Matrix Type.
+ """Compiling Bioconductor to Handle Each Matrix Type
Provides a consistent C++ class interface for reading from and writing
data to a variety of commonly used matrix types. Ordinary matrices and
@@ -18,23 +18,24 @@ class RBeachmat(RPackage):
homepage = "https://bioconductor.org/packages/beachmat"
git = "https://git.bioconductor.org/packages/beachmat.git"
+ version('2.6.4', commit='7d9dc6379017d723dda3e8dc9fd1f6de7fd33cdb')
version('2.0.0', commit='2bdac6ce7b636fd16f78641a0bcc2181670107ab')
version('1.4.0', commit='e3b7a21cae0080d077a0d40e35d1d148f088720a')
version('1.2.1', commit='ebae81772045a314e568c2f7d73ea3b27e7bf7d8')
version('1.0.2', commit='6bd57b91d6428ac916f46572d685d3cb01a757f7')
depends_on('r@3.4:', type=('build', 'run'))
- depends_on('r-rhdf5lib', when='@1.0.2:1.4.0', type=('build', 'run'))
- depends_on('r-hdf5array', when='@1.0.2:1.4.0', type=('build', 'run'))
- depends_on('r-delayedarray', type=('build', 'run'))
- depends_on('r-rcpp@0.12.14:', when='@1.0.2:1.4.0', type=('build', 'run'))
- depends_on('r-rhdf5', when='@1.0.2:1.4.0', type=('build', 'run'))
-
depends_on('r@3.5:', when='@1.2.1:1.4.0', type=('build', 'run'))
- depends_on('r-rhdf5lib@1.1.4:', when='@1.2.1', type=('build', 'run'))
- depends_on('r-hdf5array@1.7.3:', when='@1.2.1', type=('build', 'run'))
+ depends_on('r-delayedarray', type=('build', 'run'))
depends_on('r-delayedarray@0.5.30:', when='@1.2.1', type=('build', 'run'))
-
- depends_on('r-hdf5array@1.9.5:', when='@1.4.0', type=('build', 'run'))
depends_on('r-delayedarray@0.7.38:', when='@1.4.0', type=('build', 'run'))
+ depends_on('r-delayedarray@0.15.14:', when='@2.6.4', type=('build', 'run'))
depends_on('r-biocgenerics', when='@1.4.0:', type=('build', 'run'))
+ depends_on('r-matrix', when='@2.6.4:', type=('build', 'run'))
+ depends_on('r-rhdf5lib', when='@1.0.2:1.4.0', type=('build', 'run'))
+ depends_on('r-rhdf5lib@1.1.4:', when='@1.2.1', type=('build', 'run'))
+ depends_on('r-hdf5array', when='@1.0.2:1.4.0', type=('build', 'run'))
+ depends_on('r-hdf5array@1.7.3:', when='@1.2.1', type=('build', 'run'))
+ depends_on('r-hdf5array@1.9.5:', when='@1.4.0', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.14:', when='@1.0.2:1.4.0', type=('build', 'run'))
+ depends_on('r-rhdf5', when='@1.0.2:1.4.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-beanplot/package.py b/var/spack/repos/builtin/packages/r-beanplot/package.py
index 1edacea4a0..06faf068e9 100644
--- a/var/spack/repos/builtin/packages/r-beanplot/package.py
+++ b/var/spack/repos/builtin/packages/r-beanplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-beeswarm/package.py b/var/spack/repos/builtin/packages/r-beeswarm/package.py
index 4b4821e0fa..4cbef7c186 100644
--- a/var/spack/repos/builtin/packages/r-beeswarm/package.py
+++ b/var/spack/repos/builtin/packages/r-beeswarm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bfast/package.py b/var/spack/repos/builtin/packages/r-bfast/package.py
index f2250effb7..7b71cd4aca 100644
--- a/var/spack/repos/builtin/packages/r-bfast/package.py
+++ b/var/spack/repos/builtin/packages/r-bfast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bfastspatial/package.py b/var/spack/repos/builtin/packages/r-bfastspatial/package.py
index 82b751da7a..5ce11f3120 100644
--- a/var/spack/repos/builtin/packages/r-bfastspatial/package.py
+++ b/var/spack/repos/builtin/packages/r-bfastspatial/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bglr/package.py b/var/spack/repos/builtin/packages/r-bglr/package.py
index 267e18d959..2d24967fb4 100644
--- a/var/spack/repos/builtin/packages/r-bglr/package.py
+++ b/var/spack/repos/builtin/packages/r-bglr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bh/package.py b/var/spack/repos/builtin/packages/r-bh/package.py
index 6065f5609f..9c3e58a69e 100644
--- a/var/spack/repos/builtin/packages/r-bh/package.py
+++ b/var/spack/repos/builtin/packages/r-bh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,7 @@ class RBh(RPackage):
url = "https://cloud.r-project.org/src/contrib/BH_1.65.0-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/BH"
+ version('1.72.0-3', sha256='888ec1a3316bb69e1ba749b08ba7e0903ebc4742e3a185de8d148c13cddac8ab')
version('1.69.0-1', sha256='a0fd4364b7e368f09c56dec030823f52c16da0787580af7e4615eddeb99baca2')
version('1.65.0-1', sha256='82baa78afe8f1edc3c7e84e1c9924321047e14c1e990df9b848407baf3f7cb58')
version('1.60.0-2', sha256='e441aede925d760dc0142be77079ebd7a46f2392772b875cde6ca567dd49c48c')
diff --git a/var/spack/repos/builtin/packages/r-biasedurn/package.py b/var/spack/repos/builtin/packages/r-biasedurn/package.py
index 8defc86345..e596009ab8 100644
--- a/var/spack/repos/builtin/packages/r-biasedurn/package.py
+++ b/var/spack/repos/builtin/packages/r-biasedurn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bibtex/package.py b/var/spack/repos/builtin/packages/r-bibtex/package.py
index 840aa5b06c..70ee681a0c 100644
--- a/var/spack/repos/builtin/packages/r-bibtex/package.py
+++ b/var/spack/repos/builtin/packages/r-bibtex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBibtex(RPackage):
- """bibtex: Bibtex Parser
+ """Bibtex Parser
Utility to parse a bibtex file."""
@@ -15,6 +15,7 @@ class RBibtex(RPackage):
url = "https://cloud.r-project.org/src/contrib/bibtex_0.4.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/bibtex/"
+ version('0.4.2.3', sha256='7bad194920b412781ac9754ad41058d52d3cd7186e1851c2bce3640490e9bc6d')
version('0.4.2', sha256='1f06ab3660c940405230ad16ff6e4ba38d4418a59cd9b16d78a4349f8b488372')
depends_on('r@3.0.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bigalgebra/package.py b/var/spack/repos/builtin/packages/r-bigalgebra/package.py
index fdee29e59b..8febbcb0b2 100644
--- a/var/spack/repos/builtin/packages/r-bigalgebra/package.py
+++ b/var/spack/repos/builtin/packages/r-bigalgebra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bigmemory-sri/package.py b/var/spack/repos/builtin/packages/r-bigmemory-sri/package.py
index c03333ab6a..a14d433d27 100644
--- a/var/spack/repos/builtin/packages/r-bigmemory-sri/package.py
+++ b/var/spack/repos/builtin/packages/r-bigmemory-sri/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bigmemory/package.py b/var/spack/repos/builtin/packages/r-bigmemory/package.py
index 1719cd3ad7..2618520329 100644
--- a/var/spack/repos/builtin/packages/r-bigmemory/package.py
+++ b/var/spack/repos/builtin/packages/r-bigmemory/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bindr/package.py b/var/spack/repos/builtin/packages/r-bindr/package.py
index bdb58185b7..83f37760e5 100644
--- a/var/spack/repos/builtin/packages/r-bindr/package.py
+++ b/var/spack/repos/builtin/packages/r-bindr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bindrcpp/package.py b/var/spack/repos/builtin/packages/r-bindrcpp/package.py
index 68347869ad..422a5a274a 100644
--- a/var/spack/repos/builtin/packages/r-bindrcpp/package.py
+++ b/var/spack/repos/builtin/packages/r-bindrcpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bio3d/package.py b/var/spack/repos/builtin/packages/r-bio3d/package.py
index b65ab46afe..e62bcd2733 100644
--- a/var/spack/repos/builtin/packages/r-bio3d/package.py
+++ b/var/spack/repos/builtin/packages/r-bio3d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,26 @@ from spack import *
class RBio3d(RPackage):
- """bio3d: Biological Structure Analysis"""
+ """Biological Structure Analysis
+
+ Utilities to process, organize and explore protein structure, sequence and
+ dynamics data. Features include the ability to read and write structure,
+ sequence and dynamic trajectory data, perform sequence and structure
+ database searches, data summaries, atom selection, alignment,
+ superposition, rigid core identification, clustering, torsion analysis,
+ distance matrix analysis, structure and sequence conservation analysis,
+ normal mode analysis, principal component analysis of heterogeneous
+ structure data, and correlation network analysis from normal mode and
+ molecular dynamics data. In addition, various utility functions are
+ provided to enable the statistical and graphical power of the R environment
+ to work with biological sequence and structural data. Please refer to the
+ URLs below for more information."""
homepage = "http://thegrantlab.org/bio3d/"
url = "https://cloud.r-project.org/src/contrib/bio3d_2.3-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/bio3d"
+ version('2.4-1', sha256='679fbd87fe9fb82a65427d281d3b68906509e411270cd87d2deb95d404333c1f')
version('2.3-4', sha256='f9b39ab242cbedafcd98c1732cb1f5c0dd9ef66e28be39695e3420dd93e2bafe')
depends_on('r@3.1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biobase/package.py b/var/spack/repos/builtin/packages/r-biobase/package.py
index 5481b80cdf..c359050afb 100644
--- a/var/spack/repos/builtin/packages/r-biobase/package.py
+++ b/var/spack/repos/builtin/packages/r-biobase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiobase(RPackage):
- """Biobase: Base functions for Bioconductor.
+ """Biobase: Base functions for Bioconductor
Functions that are needed by many other packages or which replace R
functions."""
@@ -15,6 +15,7 @@ class RBiobase(RPackage):
homepage = "https://bioconductor.org/packages/Biobase"
git = "https://git.bioconductor.org/packages/Biobase.git"
+ version('2.50.0', commit='9927f90d0676382f2f99e099d8d2c8e2e6f1b4de')
version('2.44.0', commit='bde2077f66047986297ec35a688751cdce150dd3')
version('2.42.0', commit='3e5bd466b99e3cc4af1b0c3b32687fa56d6f8e4d')
version('2.40.0', commit='6555edbbcb8a04185ef402bfdea7ed8ac72513a5')
@@ -23,5 +24,4 @@ class RBiobase(RPackage):
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-biocgenerics@0.3.2:', type=('build', 'run'))
-
depends_on('r-biocgenerics@0.27.1:', when='@2.42.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biocfilecache/package.py b/var/spack/repos/builtin/packages/r-biocfilecache/package.py
index 378532e558..4bcdcf7023 100644
--- a/var/spack/repos/builtin/packages/r-biocfilecache/package.py
+++ b/var/spack/repos/builtin/packages/r-biocfilecache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiocfilecache(RPackage):
- """Manage Files Across Sessions.
+ """Manage Files Across Sessions
This package creates a persistent on-disk cache of files that the user
can add, update, and retrieve. It is useful for managing resources (such
@@ -17,6 +17,7 @@ class RBiocfilecache(RPackage):
homepage = "https://bioconductor.org/packages/BiocFileCache"
git = "https://git.bioconductor.org/packages/BiocFileCache.git"
+ version('1.14.0', commit='cdcde4b59ae73dda12aa225948dbd0a058d9be6d')
version('1.8.0', commit='0e3542b6aae849b01240d8055a48da1b267bd5a0')
version('1.6.0', commit='c2de6c1cdef6294e5d0adea31e4ebf25865742ba')
version('1.4.0', commit='a2c473d17f78899c7899b9638faea8c30735eb80')
@@ -24,11 +25,10 @@ class RBiocfilecache(RPackage):
version('1.0.1', commit='dbf4e8dd4d8d9f475066cd033481efe95c56df75')
depends_on('r@3.4.0:', type=('build', 'run'))
- depends_on('r-dbplyr@1.0.0:', type=('build', 'run'))
depends_on('r-dplyr', type=('build', 'run'))
+ depends_on('r-dbplyr@1.0.0:', when='@1.2.3:', type=('build', 'run'))
depends_on('r-rsqlite', type=('build', 'run'))
depends_on('r-dbi', type=('build', 'run'))
depends_on('r-rappdirs', type=('build', 'run'))
- depends_on('r-httr', type=('build', 'run'))
-
depends_on('r-curl', when='@1.6.0:', type=('build', 'run'))
+ depends_on('r-httr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biocgenerics/package.py b/var/spack/repos/builtin/packages/r-biocgenerics/package.py
index 2bee149fb8..6558fb633c 100644
--- a/var/spack/repos/builtin/packages/r-biocgenerics/package.py
+++ b/var/spack/repos/builtin/packages/r-biocgenerics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RBiocgenerics(RPackage):
- """S4 generic functions used in Bioconductor.
+ """S4 generic functions used in Bioconductor
The package defines S4 generic functions used in Bioconductor."""
homepage = "https://bioconductor.org/packages/BiocGenerics"
git = "https://git.bioconductor.org/packages/BiocGenerics.git"
+ version('0.36.0', commit='0d5d169d7d64d648a22f9043837c93bc784e71ed')
version('0.34.0', commit='f7c2020')
version('0.30.0', commit='fc7c3af4a5635a30988a062ed09332c13ca1d1a8')
version('0.28.0', commit='041fc496504f2ab1d4d863fffb23372db214394b')
@@ -22,3 +23,4 @@ class RBiocgenerics(RPackage):
version('0.22.1', commit='9c90bb8926885289d596a81ff318ee3745cbb6ad')
depends_on('r@3.6.0:', when='@0.30.0:', type=('build', 'run'))
+ depends_on('r@4.0.0:', when='@0.36.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biocinstaller/package.py b/var/spack/repos/builtin/packages/r-biocinstaller/package.py
index 09d942279f..9f2fddbcd1 100644
--- a/var/spack/repos/builtin/packages/r-biocinstaller/package.py
+++ b/var/spack/repos/builtin/packages/r-biocinstaller/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-biocmanager/package.py b/var/spack/repos/builtin/packages/r-biocmanager/package.py
index d31929e914..fab2479c8a 100644
--- a/var/spack/repos/builtin/packages/r-biocmanager/package.py
+++ b/var/spack/repos/builtin/packages/r-biocmanager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-biocneighbors/package.py b/var/spack/repos/builtin/packages/r-biocneighbors/package.py
index dd2d8619fe..50cbf21970 100644
--- a/var/spack/repos/builtin/packages/r-biocneighbors/package.py
+++ b/var/spack/repos/builtin/packages/r-biocneighbors/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiocneighbors(RPackage):
- """Nearest Neighbor Detection for Bioconductor Packages.
+ """Nearest Neighbor Detection for Bioconductor Packages
Implements exact and approximate methods for nearest neighbor detection,
in a framework that allows them to be easily switched within
@@ -22,14 +22,15 @@ class RBiocneighbors(RPackage):
homepage = "https://bioconductor.org/packages/BiocNeighbors"
git = "https://git.bioconductor.org/packages/BiocNeighbors.git"
+ version('1.8.2', commit='889bc91f8cb45d210b47ae5c0b9cfb86fb071ca2')
version('1.2.0', commit='f754c6300f835142536a4594ddf750481e0fe273')
version('1.0.0', commit='e252fc04b6d22097f2c5f74406e77d85e7060770')
depends_on('r@3.5:', when='@1.0.0', type=('build', 'run'))
- depends_on('r-biocparallel', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
depends_on('r-s4vectors', type=('build', 'run'))
- depends_on('r-rcppannoy', type=('build', 'run'))
-
- depends_on('r-biocgenerics', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
+ depends_on('r-matrix', when='@1.8.2:', type=('build', 'run'))
depends_on('r-rcpphnsw', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-rcppannoy', when='@:1.2.0', type=('build', 'run'))
+ depends_on('r-biocgenerics', when='@1.2.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biocparallel/package.py b/var/spack/repos/builtin/packages/r-biocparallel/package.py
index 14fd27a8b5..b1849c5420 100644
--- a/var/spack/repos/builtin/packages/r-biocparallel/package.py
+++ b/var/spack/repos/builtin/packages/r-biocparallel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiocparallel(RPackage):
- """Bioconductor facilities for parallel evaluation.
+ """Bioconductor facilities for parallel evaluation
This package provides modified versions and novel implementation of
functions for parallel evaluation, tailored to use with Bioconductor
@@ -16,6 +16,7 @@ class RBiocparallel(RPackage):
homepage = "https://bioconductor.org/packages/BiocParallel"
git = "https://git.bioconductor.org/packages/BiocParallel.git"
+ version('1.24.1', commit='f713caa4314ec0ddeba7fe0eb599ad417efb413f')
version('1.18.1', commit='348264af782d7dcd41a1879400f348f836767f6e')
version('1.16.6', commit='7f7a54c47f4949b600b9fd568289a519496bc4d4')
version('1.14.2', commit='1d5a44960b19e9dbbca04c7290c8c58b0a7fc299')
@@ -24,5 +25,4 @@ class RBiocparallel(RPackage):
depends_on('r-futile-logger', type=('build', 'run'))
depends_on('r-snow', type=('build', 'run'))
-
depends_on('r-bh', when='@1.12.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biocsingular/package.py b/var/spack/repos/builtin/packages/r-biocsingular/package.py
index 5531981958..355aab3563 100644
--- a/var/spack/repos/builtin/packages/r-biocsingular/package.py
+++ b/var/spack/repos/builtin/packages/r-biocsingular/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiocsingular(RPackage):
- """Singular Value Decomposition for Bioconductor Packages.
+ """Singular Value Decomposition for Bioconductor Packages
Implements exact and approximate methods for singular value
decomposition and principal components analysis, in a framework that
@@ -18,6 +18,7 @@ class RBiocsingular(RPackage):
homepage = "https://bioconductor.org/packages/BiocSingular"
git = "https://git.bioconductor.org/packages/BiocSingular.git"
+ version('1.6.0', commit='11baf1080d6f791439cd5d97357589d6451643d9')
version('1.0.0', commit='d2b091c072d0312698c9bb6611eb1bdf8aebf833')
depends_on('r-biocgenerics', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biocstyle/package.py b/var/spack/repos/builtin/packages/r-biocstyle/package.py
index b9ec8c5fe0..a2f0988910 100644
--- a/var/spack/repos/builtin/packages/r-biocstyle/package.py
+++ b/var/spack/repos/builtin/packages/r-biocstyle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiocstyle(RPackage):
- """Standard styles for vignettes and other Bioconductor documents.
+ """Standard styles for vignettes and other Bioconductor documents
Provides standard formatting styles for Bioconductor PDF and HTML
documents. Package vignettes illustrate use and functionality."""
@@ -15,15 +15,17 @@ class RBiocstyle(RPackage):
homepage = "https://bioconductor.org/packages/BiocStyle"
git = "https://git.bioconductor.org/packages/BiocStyle.git"
+ version('2.18.1', commit='956f0654e8e18882ba09305742401128c9c7d47d')
version('2.12.0', commit='0fba3fe6e6a38504f9aadcd3dc95bb83d7e92498')
version('2.10.0', commit='8fc946044c6b6a8a3104ddbc546baed49ee3aa70')
version('2.8.2', commit='3210c19ec1e5e0ed8d5a2d31da990aa47b42dbd8')
version('2.6.1', commit='5ff52cbb439a45575d0f58c4f7a83195a8b7337b')
version('2.4.1', commit='ef10764b68ac23a3a7a8ec3b6a6436187309c138')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-bookdown', type=('build', 'run'))
depends_on('r-knitr@1.12:', type=('build', 'run'))
+ depends_on('r-knitr@1.30:', when='@2.18.1:', type=('build', 'run'))
depends_on('r-rmarkdown@1.2:', type=('build', 'run'))
depends_on('r-yaml', type=('build', 'run'))
-
depends_on('r-biocmanager', when='@2.10.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biocversion/package.py b/var/spack/repos/builtin/packages/r-biocversion/package.py
new file mode 100644
index 0000000000..4d021a161f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-biocversion/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RBiocversion(RPackage):
+ """Set the appropriate version of Bioconductor packages
+
+ This package provides repository information for the appropriate
+ version of Bioconductor."""
+
+ homepage = "https://bioconductor.org/packages/BiocVersion/"
+ git = "https://git.bioconductor.org/packages/BiocVersion"
+
+ version('3.12.0', commit='23b971963c6b73550a7e330dab5a046d58ce0223')
+
+ depends_on('r@4.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biom-utils/package.py b/var/spack/repos/builtin/packages/r-biom-utils/package.py
index bd57636a67..67e7c2fb7a 100644
--- a/var/spack/repos/builtin/packages/r-biom-utils/package.py
+++ b/var/spack/repos/builtin/packages/r-biom-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-biomart/package.py b/var/spack/repos/builtin/packages/r-biomart/package.py
index 6e24a66a41..d1c4387288 100644
--- a/var/spack/repos/builtin/packages/r-biomart/package.py
+++ b/var/spack/repos/builtin/packages/r-biomart/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiomart(RPackage):
- """Interface to BioMart databases (i.e. Ensembl).
+ """Interface to BioMart databases (i.e. Ensembl)
In recent years a wealth of biological data has become available in
public data repositories. Easy access to these valuable data resources
@@ -25,6 +25,7 @@ class RBiomart(RPackage):
homepage = "https://bioconductor.org/packages/biomaRt"
git = "https://git.bioconductor.org/packages/biomaRt.git"
+ version('2.46.2', commit='90d6abfdfa04259006f7b47efb10271ada76aec1')
version('2.40.5', commit='ed9ddafb0d620168ea8e3ab4884f3457b8525c68')
version('2.38.0', commit='16b997aba19a90a1c5fa64c442b1e7fcff99a658')
version('2.36.1', commit='5634e57e20199f9dc1f8b927eb3893143fc02f4f')
@@ -32,9 +33,12 @@ class RBiomart(RPackage):
version('2.32.1', commit='f84d74424fa599f6d08f8db4612ca09914a9087f')
depends_on('r-xml', type=('build', 'run'))
- depends_on('r-rcurl', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
-
depends_on('r-progress', when='@2.34.2:', type=('build', 'run'))
depends_on('r-stringr', when='@2.34.2:', type=('build', 'run'))
depends_on('r-httr', when='@2.34.2:', type=('build', 'run'))
+ depends_on('r-openssl', when='@2.46.2:', type=('build', 'run'))
+ depends_on('r-biocfilecache', when='@2.46.2:', type=('build', 'run'))
+ depends_on('r-rappdirs', when='@2.46.2:', type=('build', 'run'))
+ depends_on('r-xml2', when='@2.46.2:', type=('build', 'run'))
+ depends_on('r-rcurl', when='@:2.40.5', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biomartr/package.py b/var/spack/repos/builtin/packages/r-biomartr/package.py
index 6cb63e979c..7d67c10230 100644
--- a/var/spack/repos/builtin/packages/r-biomartr/package.py
+++ b/var/spack/repos/builtin/packages/r-biomartr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-biomformat/package.py b/var/spack/repos/builtin/packages/r-biomformat/package.py
index 8c3d9a7d63..ba8a137e81 100644
--- a/var/spack/repos/builtin/packages/r-biomformat/package.py
+++ b/var/spack/repos/builtin/packages/r-biomformat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiomformat(RPackage):
- """An interface package for the BIOM file format.
+ """An interface package for the BIOM file format
This is an R package for interfacing with the BIOM format. This package
includes basic tools for reading biom-format files, accessing and
@@ -22,6 +22,7 @@ class RBiomformat(RPackage):
homepage = "https://bioconductor.org/packages/biomformat"
git = "https://git.bioconductor.org/packages/biomformat.git"
+ version('1.18.0', commit='dc18859c139f4d76805adb6f01e199573cdd5a8b')
version('1.12.0', commit='6e946123bb59da262cbb0c17dc5ab49328a89d4a')
version('1.10.1', commit='e67c6f4b70201f748fa49a4938e1af0cd0613f09')
version('1.8.0', commit='acd207377b24e4d8310eaff06c16dcfe6c04509a')
diff --git a/var/spack/repos/builtin/packages/r-biostrings/package.py b/var/spack/repos/builtin/packages/r-biostrings/package.py
index a0bd89cfe0..7ae78acdc4 100644
--- a/var/spack/repos/builtin/packages/r-biostrings/package.py
+++ b/var/spack/repos/builtin/packages/r-biostrings/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiostrings(RPackage):
- """Efficient manipulation of biological strings.
+ """Efficient manipulation of biological strings
Memory efficient string containers, string matching algorithms, and
other utilities, for fast manipulation of large biological sequences or
@@ -16,6 +16,7 @@ class RBiostrings(RPackage):
homepage = "https://bioconductor.org/packages/Biostrings"
git = "https://git.bioconductor.org/packages/Biostrings.git"
+ version('2.58.0', commit='0ec1a5455d5e9eebd14b26228906bb04e2abb197')
version('2.52.0', commit='b78fe7c1f3cdbbb7affb1ca7164fe5a1f8b868f5')
version('2.50.2', commit='025e734641a93f6c5d44243297cb4264ea0e34a2')
version('2.48.0', commit='aa3599a7d259d658014d087b86d71ab1deb5f12b')
@@ -23,18 +24,19 @@ class RBiostrings(RPackage):
version('2.44.2', commit='e4a2b320fb21c5cab3ece7b3c6fecaedfb1e5200')
depends_on('r@2.8.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@2.50.2:', type=('build', 'run'))
depends_on('r-biocgenerics@0.15.6:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.31.5:', when='@2.58.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.13.13:', type=('build', 'run'))
- depends_on('r-iranges@2.9.18:', when='@2.44.2:2.46.0', type=('build', 'run'))
- depends_on('r-xvector@0.11.6:', type=('build', 'run'))
-
depends_on('r-s4vectors@0.17.25:', when='@2.48.0:', type=('build', 'run'))
- depends_on('r-iranges@2.13.24:', when='@2.48.0', type=('build', 'run'))
+ depends_on('r-s4vectors@0.21.13:', when='@2.52.0:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.12:', when='@2.58.0:', type=('build', 'run'))
+ depends_on('r-iranges@2.9.18:', when='@2.44.2:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.24:', when='@2.48.0:', type=('build', 'run'))
+ depends_on('r-iranges@2.23.9:', when='@2.58.0:', type=('build', 'run'))
+ depends_on('r-xvector@0.11.6:', type=('build', 'run'))
depends_on('r-xvector@0.19.8:', when='@2.48.0:', type=('build', 'run'))
-
- depends_on('r@3.5.0:', when='@2.50.2:', type=('build', 'run'))
depends_on('r-xvector@0.21.4:', when='@2.50.2:', type=('build', 'run'))
- depends_on('r-iranges', when='@2.50.2:', type=('build', 'run'))
-
- depends_on('r-s4vectors@0.21.13:', when='@2.52.0:', type=('build', 'run'))
depends_on('r-xvector@0.23.2:', when='@2.52.0:', type=('build', 'run'))
+ depends_on('r-xvector@0.29.2:', when='@2.58.0:', type=('build', 'run'))
+ depends_on('r-crayon', when='@2.58.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-biovizbase/package.py b/var/spack/repos/builtin/packages/r-biovizbase/package.py
index 61ba92c203..0f0dbad6e0 100644
--- a/var/spack/repos/builtin/packages/r-biovizbase/package.py
+++ b/var/spack/repos/builtin/packages/r-biovizbase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RBiovizbase(RPackage):
- """Basic graphic utilities for visualization of genomic data..
+ """Basic graphic utilities for visualization of genomic data.
The biovizBase package is designed to provide a set of utilities, color
schemes and conventions for genomic data. It serves as the base for
@@ -17,6 +17,7 @@ class RBiovizbase(RPackage):
homepage = "https://bioconductor.org/packages/biovizBase"
git = "https://git.bioconductor.org/packages/biovizBase.git"
+ version('1.38.0', commit='d0f3362e0ad0e90b4b1d3e47b13ed57907d03403')
version('1.32.0', commit='de044bf236cdcd71214ae7b77689a8f0ab4f5cc8')
version('1.30.1', commit='b6776d0470e2920f71127652f185f68ca1fd2c82')
version('1.28.2', commit='43d09060028665a237b04bfeb9e2575782b08063')
@@ -24,12 +25,14 @@ class RBiovizbase(RPackage):
version('1.24.0', commit='ae9cd2ff665b74a8f45ed9c1d17fc0a778b4af6c')
depends_on('r@2.10:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-scales', type=('build', 'run'))
depends_on('r-hmisc', type=('build', 'run'))
depends_on('r-rcolorbrewer', type=('build', 'run'))
depends_on('r-dichromat', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.23.19:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-iranges@1.99.28:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.5.14:', type=('build', 'run'))
depends_on('r-genomicranges@1.23.21:', type=('build', 'run'))
@@ -42,5 +45,4 @@ class RBiovizbase(RPackage):
depends_on('r-variantannotation@1.11.4:', type=('build', 'run'))
depends_on('r-ensembldb@1.99.13:', type=('build', 'run'))
depends_on('r-annotationfilter@0.99.8:', type=('build', 'run'))
-
depends_on('r-rlang', when='@1.28.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bit/package.py b/var/spack/repos/builtin/packages/r-bit/package.py
index f792e9e6f9..572f3b4c0b 100644
--- a/var/spack/repos/builtin/packages/r-bit/package.py
+++ b/var/spack/repos/builtin/packages/r-bit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,18 @@ from spack import *
class RBit(RPackage):
- """ A class for vectors of 1-bit booleans."""
+ """Classes and Methods for Fast Memory-Efficient Boolean Selections
+
+ Provided are classes for boolean and skewed boolean vectors, fast boolean
+ methods, fast unique and non-unique integer sorting, fast set operations on
+ sorted and unsorted sets of integers, and foundations for ff (range index,
+ compression, chunked processing)."""
homepage = "https://cloud.r-project.org/package=bit"
url = "https://cloud.r-project.org/src/contrib/bit_1.1-12.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/bit"
+ version('4.0.4', sha256='e404841fbe4ebefe4ecd4392effe673a8c9fa05f97952c4ce6e2f6159bd2f168')
version('1.1-14', sha256='5cbaace1fb643a665a6ca69b90f7a6d624270de82420ca7a44f306753fcef254')
version('1.1-12', sha256='ce281c87fb7602bf1a599e72f3e25f9ff7a13e390c124a4506087f69ad79d128')
diff --git a/var/spack/repos/builtin/packages/r-bit64/package.py b/var/spack/repos/builtin/packages/r-bit64/package.py
index 3f3d71fc74..9ff47e31d5 100644
--- a/var/spack/repos/builtin/packages/r-bit64/package.py
+++ b/var/spack/repos/builtin/packages/r-bit64/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,24 +7,27 @@ from spack import *
class RBit64(RPackage):
- """Package 'bit64' provides serializable S3 atomic 64bit (signed)
- integers. These are useful for handling database keys and exact
- counting in +-2^63. WARNING: do not use them as replacement for 32bit
- integers, integer64 are not supported for subscripting by R-core and
- they have different semantics when combined with double, e.g.
- integer64 + double => integer64. Class integer64 can be used in vectors,
- matrices, arrays and data.frames. Methods are available for coercion
- from and to logicals, integers, doubles, characters and factors
- as well as many elementwise and summary functions. Many fast
- algorithmic operations such as 'match' and 'order' support
- inter- active data exploration
- and manipulation and optionally leverage caching."""
+ """A S3 Class for Vectors of 64bit Integers
+
+ Package 'bit64' provides serializable S3 atomic 64bit (signed) integers.
+ These are useful for handling database keys and exact counting in +-2^63.
+ WARNING: do not use them as replacement for 32bit integers, integer64 are
+ not supported for subscripting by R-core and they have different semantics
+ when combined with double, e.g. integer64 + double => integer64. Class
+ integer64 can be used in vectors, matrices, arrays and data.frames. Methods
+ are available for coercion from and to logicals, integers, doubles,
+ characters and factors as well as many elementwise and summary functions.
+ Many fast algorithmic operations such as 'match' and 'order' support inter-
+ active data exploration and manipulation and optionally leverage
+ caching."""
homepage = "https://cloud.r-project.org/package=bit64"
url = "https://cloud.r-project.org/src/contrib/bit64_0.9-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/bit64"
+ version('4.0.5', sha256='25df6826ea5e93241c4874cad4fa8dadc87a40f4ff74c9107aa12a9e033e1578')
version('0.9-7', sha256='7b9aaa7f971198728c3629f9ba1a1b24d53db5c7e459498b0fdf86bbd3dff61f')
depends_on('r@3.0.1:', type=('build', 'run'))
- depends_on('r-bit@1.1-12:', type=('build', 'run'))
+ depends_on('r-bit@1.1-12:', when='@:9.9-7', type=('build', 'run'))
+ depends_on('r-bit@4.0.0:', when='@4.0.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bitops/package.py b/var/spack/repos/builtin/packages/r-bitops/package.py
index 0c78b1e1b5..2bc64aacf4 100644
--- a/var/spack/repos/builtin/packages/r-bitops/package.py
+++ b/var/spack/repos/builtin/packages/r-bitops/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-blavaan/package.py b/var/spack/repos/builtin/packages/r-blavaan/package.py
new file mode 100644
index 0000000000..1451e52758
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-blavaan/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RBlavaan(RPackage):
+ """Bayesian Latent Variable Analysis:
+
+ Fit a variety of Bayesian latent variable models, including confirmatory
+ factor analysis, structural equation models, and latent growth curve
+ models."""
+
+ cran = "blavaan"
+
+ version('0.3-15', sha256='f73ead024bc3b65bdb0c5e5cd5458845158914eb579c07be2fd697a3573ebe6f')
+
+ depends_on('r@3.5.0:', type=('build', 'run'))
+ depends_on('r-lavaan@0.6-5:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.15:', type=('build', 'run'))
+ depends_on('r-rcppparallel@5.0.1:', type=('build', 'run'))
+ depends_on('r-mcmcpack', type=('build', 'run'))
+ depends_on('r-coda', type=('build', 'run'))
+ depends_on('r-mnormt', type=('build', 'run'))
+ depends_on('r-nonnest2@0.5-5:', type=('build', 'run'))
+ depends_on('r-loo@2.0:', type=('build', 'run'))
+ depends_on('r-rstan@2.19.2:', type=('build', 'run'))
+ depends_on('r-rstantools@1.5.0:', type=('build', 'run'))
+ depends_on('r-bayesplot', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-future-apply', type=('build', 'run'))
+ depends_on('r-stanheaders@2.18.1:', type=('build', 'run'))
+ depends_on('r-bh@1.69.0:', type=('build', 'run'))
+ depends_on('r-rcppeigen@0.3.3.4.0:', type=('build', 'run'))
+ depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-blob/package.py b/var/spack/repos/builtin/packages/r-blob/package.py
index af2c39362d..a56c0a5642 100644
--- a/var/spack/repos/builtin/packages/r-blob/package.py
+++ b/var/spack/repos/builtin/packages/r-blob/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RBlob(RPackage):
- """R's raw vector is useful for storing a single binary object.
+ """A Simple S3 Class for Representing Vectors of Binary Data ('BLOBS')
+
+ R's raw vector is useful for storing a single binary object.
What if you want to put a vector of them in a data frame? The blob
package provides the blob object, a list of raw vectors, suitable
for use as a column in data frame."""
@@ -16,10 +18,12 @@ class RBlob(RPackage):
url = "https://cloud.r-project.org/src/contrib/blob_1.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/blob"
+ version('1.2.1', sha256='ef54bc7a9646c1b73f4d2f60c869b4f1940bc3505874175114297ad7772d8bea')
version('1.2.0', sha256='1af1cfa28607bc0e2f1f01598a00a7d5d1385ef160a9e79e568f30f56538e023')
version('1.1.0', sha256='16d6603df3ddba177f0ac4d9469c938f89131c4bf8834345db838defd9ffea16')
depends_on('r-tibble', when='@:1.1.0', type=('build', 'run'))
- depends_on('r-prettyunits', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-prettyunits', when='@1.2.0', type=('build', 'run'))
depends_on('r-rlang', when='@1.2.0:', type=('build', 'run'))
depends_on('r-vctrs@0.2.0:', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-vctrs@0.2.1:', when='@1.2.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-blockmodeling/package.py b/var/spack/repos/builtin/packages/r-blockmodeling/package.py
index 08257860f6..1ce04a935c 100644
--- a/var/spack/repos/builtin/packages/r-blockmodeling/package.py
+++ b/var/spack/repos/builtin/packages/r-blockmodeling/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,21 @@ from spack import *
class RBlockmodeling(RPackage):
- """blockmodeling: Generalized and Classical
- Blockmodeling of Valued Networks"""
+ """Generalized and Classical Blockmodeling of Valued Networks
+
+ This is primarily meant as an implementation of generalized blockmodeling
+ for valued networks."""
homepage = "https://cloud.r-project.org/package=blockmodeling"
url = "https://cloud.r-project.org/src/contrib/blockmodeling_0.3.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/blockmodeling/"
+ version('1.0.0', sha256='f10c41fff56dc7dc46dffbceacb8ff905eca06578d610a5a590fb408f0149cfc')
version('0.3.4', sha256='a269c83669dd5294cff0adddab36bc023db6a276a06b74b1fa94b7e407486987')
version('0.3.1', sha256='39e8360400cec6baa920d5589d4e779568bdf2954f7331be0e3cadf22a217d31')
+ depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
- depends_on('r-doparallel', type=('build', 'run'))
- depends_on('r-dorng', type=('build', 'run'))
- depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-doparallel', when='@:0.3.4', type=('build', 'run'))
+ depends_on('r-dorng', when='@:0.3.4', type=('build', 'run'))
+ depends_on('r-foreach', when='@:0.3.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bmp/package.py b/var/spack/repos/builtin/packages/r-bmp/package.py
index 6f6a37b7c3..59dfd71ea6 100644
--- a/var/spack/repos/builtin/packages/r-bmp/package.py
+++ b/var/spack/repos/builtin/packages/r-bmp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bookdown/package.py b/var/spack/repos/builtin/packages/r-bookdown/package.py
index a1df872699..f22be5a417 100644
--- a/var/spack/repos/builtin/packages/r-bookdown/package.py
+++ b/var/spack/repos/builtin/packages/r-bookdown/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,27 @@ from spack import *
class RBookdown(RPackage):
- """Output formats and utilities for authoring books and technical
+ """Authoring Books and Technical Documents with R Markdown
+
+ Output formats and utilities for authoring books and technical
documents with R Markdown."""
homepage = "https://cloud.r-project.org/package=bookdown"
url = "https://cloud.r-project.org/src/contrib/bookdown_0.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/bookdown"
+ version('0.21', sha256='47c0fa7a65da83753c2f445e0e972913f9203460f1daae3ab255d0d4b30eba76')
version('0.12', sha256='38eb4c5b877ccd85b16cfe74a48c3bc53de2f276da98e5515f37e7a06e065bb0')
version('0.5', sha256='b7331fd56f64bd2bddc34e2a188fc491f9ff5308f44f7e3151721247f21ca67e')
- depends_on('r-yaml@2.1.14:', when='@:0.10', type=('build', 'run'))
- depends_on('r-rmarkdown@1.12:', type=('build', 'run'))
- depends_on('r-knitr@1.22:', type=('build', 'run'))
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-htmltools@0.3.6:', type=('build', 'run'))
- depends_on('r-xfun@0.6:', when='@0.12:', type=('build', 'run'))
+ depends_on('r-knitr@1.22:', type=('build', 'run'))
+ depends_on('r-rmarkdown@1.12:', when='@:0.12', type=('build', 'run'))
+ depends_on('r-rmarkdown@2.4:', when='@0.21:', type=('build', 'run'))
+ depends_on('r-xfun@0.6:', when='@:0.12', type=('build', 'run'))
+ depends_on('r-xfun@0.13:', when='@0.21:', type=('build', 'run'))
depends_on('r-tinytex@0.12:', when='@0.12:', type=('build', 'run'))
+ depends_on('r-yaml@2.1.14:', when='@:0.12', type=('build', 'run'))
+ depends_on('r-yaml@2.1.19:', when='@0.21:', type=('build', 'run'))
depends_on('pandoc@1.17.2:')
diff --git a/var/spack/repos/builtin/packages/r-boot/package.py b/var/spack/repos/builtin/packages/r-boot/package.py
index 1db6349b5b..1b1259e520 100644
--- a/var/spack/repos/builtin/packages/r-boot/package.py
+++ b/var/spack/repos/builtin/packages/r-boot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RBoot(RPackage):
- """Functions and datasets for bootstrapping from the book "Bootstrap
+ """Bootstrap Functions (Originally by Angelo Canty for S)
+
+ Functions and datasets for bootstrapping from the book "Bootstrap
Methods and Their Application" by A. C. Davison and D. V. Hinkley (1997,
CUP), originally written by Angelo Canty for S."""
@@ -15,6 +17,7 @@ class RBoot(RPackage):
url = "https://cloud.r-project.org/src/contrib/boot_1.3-18.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/boot"
+ version('1.3-25', sha256='464835fcb453072346ce49e4ae318e04c9dba682349be49db616623b6088fbbe')
version('1.3-23', sha256='79236a5a770dc8bf5ce25d9aa303c5dc0574d94aa043fd00b8b4c8ccc877357f')
version('1.3-22', sha256='cf1f0cb1e0a7a36dcb6ae038f5d0211a0e7a009c149bc9d21acb9c58c38b4dfc')
version('1.3-20', sha256='adcb90b72409705e3f9c69ea6c15673dcb649b464fed06723fe0930beac5212a')
diff --git a/var/spack/repos/builtin/packages/r-boruta/package.py b/var/spack/repos/builtin/packages/r-boruta/package.py
index 45b4f22d57..bc95b2c611 100644
--- a/var/spack/repos/builtin/packages/r-boruta/package.py
+++ b/var/spack/repos/builtin/packages/r-boruta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-brew/package.py b/var/spack/repos/builtin/packages/r-brew/package.py
index 80d075c547..0bb431eb49 100644
--- a/var/spack/repos/builtin/packages/r-brew/package.py
+++ b/var/spack/repos/builtin/packages/r-brew/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-bridgesampling/package.py b/var/spack/repos/builtin/packages/r-bridgesampling/package.py
new file mode 100644
index 0000000000..f6a0002589
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-bridgesampling/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RBridgesampling(RPackage):
+ """Bridge Sampling for Marginal Likelihoods and Bayes Factors:
+
+ Provides functions for estimating marginal likelihoods, Bayes factors,
+ posterior model probabilities, and normalizing constants in general, via
+ different versions of bridge sampling (Meng & Wong, 1996,
+ <http://www3.stat.sinica.edu.tw/statistica/j6n4/j6n43/j6n43.htm>). Gronau,
+ Singmann, & Wagenmakers (2020) <doi:10.18637/jss.v092.i10>."""
+
+ homepage = "https://github.com/quentingronau/bridgesampling"
+ cran = "bridgesampling"
+
+ version('1.1-2', sha256='54ecd39aa2e36d4d521d3d36425f9fe56a3f8547df6048c814c5931d790f3e6b')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-mvtnorm', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-brobdingnag', type=('build', 'run'))
+ depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-coda', type=('build', 'run'))
+ depends_on('r-scales', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-brio/package.py b/var/spack/repos/builtin/packages/r-brio/package.py
new file mode 100644
index 0000000000..4042b85592
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-brio/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RBrio(RPackage):
+ """Basic R Input Output
+
+ Functions to handle basic input output, these functions always read and
+ write UTF-8 (8-bit Unicode Transformation Format) files and provide more
+ explicit control over line endings."""
+
+ homepage = "https://github.com/r-lib/brio"
+ url = "https://cloud.r-project.org/src/contrib/brio_1.1.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/brio"
+
+ version('1.1.0', sha256='6bb3a3b47bea13f1a1e3dcdc8b9f688502643e4b40a481a34aa04a261aabea38')
diff --git a/var/spack/repos/builtin/packages/r-brms/package.py b/var/spack/repos/builtin/packages/r-brms/package.py
new file mode 100644
index 0000000000..7da8d8fa12
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-brms/package.py
@@ -0,0 +1,52 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RBrms(RPackage):
+ """Bayesian Regression Models using 'Stan':
+
+ Fit Bayesian generalized (non-)linear multivariate multilevel models using
+ 'Stan' for full Bayesian inference. A wide range of distributions and link
+ functions are supported, allowing users to fit - among others - linear,
+ robust linear, count data, survival, response times, ordinal,
+ zero-inflated, hurdle, and even self-defined mixture models all in a
+ multilevel context. Further modeling options include non-linear and smooth
+ terms, auto-correlation structures, censored data, meta-analytic standard
+ errors, and quite a few more. In addition, all parameters of the response
+ distribution can be predicted in order to perform distributional
+ regression. Prior specifications are flexible and explicitly encourage
+ users to apply prior distributions that actually reflect their beliefs.
+ Model fit can easily be assessed and compared with posterior predictive
+ checks and leave-one-out cross-validation. References: Burkner (2017)
+ <doi:10.18637/jss.v080.i01>; Burkner (2018) <doi:10.32614/RJ-2018-017>;
+ Carpenter et al. (2017) <doi:10.18637/jss.v076.i01>."""
+
+ homepage = "https://github.com/paul-buerkner/brms"
+ cran = "brms"
+
+ version('2.15.0', sha256='c11701d1d8758590b74bb845b568b736e4455a81b114c7dfde0b27b7bd1bcc2f')
+
+ depends_on('r@3.5.0:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.0:', type=('build', 'run'))
+ depends_on('r-rstan@2.19.2:', type=('build', 'run'))
+ depends_on('r-ggplot2@2.0.0:', type=('build', 'run'))
+ depends_on('r-loo@2.3.1:', type=('build', 'run'))
+ depends_on('r-matrix@1.1.1:', type=('build', 'run'))
+ depends_on('r-mgcv@1.8-13:', type=('build', 'run'))
+ depends_on('r-rstantools@2.1.1:', type=('build', 'run'))
+ depends_on('r-bayesplot@1.5.0:', type=('build', 'run'))
+ depends_on('r-shinystan@2.4.0:', type=('build', 'run'))
+ depends_on('r-projpred@2.0.0:', type=('build', 'run'))
+ depends_on('r-bridgesampling@0.3-0:', type=('build', 'run'))
+ depends_on('r-glue@1.3.0:', type=('build', 'run'))
+ depends_on('r-future@1.19.0:', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
+ depends_on('r-nleqslv', type=('build', 'run'))
+ depends_on('r-nlme', type=('build', 'run'))
+ depends_on('r-coda', type=('build', 'run'))
+ depends_on('r-abind', type=('build', 'run'))
+ depends_on('r-backports', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-brobdingnag/package.py b/var/spack/repos/builtin/packages/r-brobdingnag/package.py
new file mode 100644
index 0000000000..ad32d3bca8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-brobdingnag/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RBrobdingnag(RPackage):
+ """Very Large Numbers in R:
+
+ Handles very large numbers in R. Real numbers are held using their natural
+ logarithms, plus a logical flag indicating sign. The package includes a
+ vignette that gives a step-by-step introduction to using S4 methods."""
+
+ homepage = "https://github.com/RobinHankin/Brobdingnag.git"
+ cran = "Brobdingnag"
+
+ version('1.2-6', sha256='19eccaed830ce9d93b70642f6f126ac66722a98bbd48586899cc613dd9966ad4')
+
+ depends_on('r@2.13.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-broom/package.py b/var/spack/repos/builtin/packages/r-broom/package.py
index bd0f70b070..68e1dda72a 100644
--- a/var/spack/repos/builtin/packages/r-broom/package.py
+++ b/var/spack/repos/builtin/packages/r-broom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,32 +7,41 @@ from spack import *
class RBroom(RPackage):
- """Convert statistical analysis objects from R into tidy data frames, so
- that they can more easily be combined, reshaped and otherwise processed
- with tools like 'dplyr', 'tidyr' and 'ggplot2'. The package provides
- three S3 generics: tidy, which summarizes a model's statistical
- findings such as coefficients of a regression; augment, which adds
- columns to the original data such as predictions, residuals and cluster
- assignments; and glance, which provides a one-row summary of
- model-level statistics."""
+ """Convert Statistical Objects into Tidy Tibbles
+
+ Summarizes key information about statistical objects in tidy tibbles. This
+ makes it easy to report results, create plots and consistently work with
+ large numbers of models at once. Broom provides three verbs that each
+ provide different types of information about a model. tidy() summarizes
+ information about model components such as coefficients of a regression.
+ glance() reports information about an entire model, such as goodness of fit
+ measures like AIC and BIC. augment() adds information about individual
+ observations to a dataset, such as fitted values or influence measures."""
homepage = "http://github.com/tidyverse/broom"
url = "https://cloud.r-project.org/src/contrib/broom_0.4.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/broom"
+ version('0.7.3', sha256='de5650e46ca6884876b63bc401d22bef9eace671147774466406d43324aebc2f')
version('0.5.2', sha256='16af7b446b24bc14461efbda9bea1521cf738c778c5e48fcc7bad45660a4ac62')
version('0.5.1', sha256='da9e6bf7cb8f960b83309cf107743976cc32b54524675f6471982abe3d1aae2e')
version('0.4.2', sha256='9f409413623cf25e7110452e6215353af5114f7044d73af182bd6c10971c5a44')
depends_on('r@3.1:', type=('build', 'run'))
- depends_on('r-plyr', when='@:0.4.2', type=('build', 'run'))
- depends_on('r-dplyr', type=('build', 'run'))
- depends_on('r-tidyr', type=('build', 'run'))
- depends_on('r-psych', when='@:0.4.2', type=('build', 'run'))
- depends_on('r-stringr', type=('build', 'run'))
- depends_on('r-reshape2', type=('build', 'run'))
- depends_on('r-nlme', type=('build', 'run'))
depends_on('r-backports', when='@0.5.0:', type=('build', 'run'))
+ depends_on('r-dplyr', type=('build', 'run'))
+ depends_on('r-dplyr@1.0.0:', when='@0.7.3:', type=('build', 'run'))
+ depends_on('r-ellipsis', when='@0.7.3:', type=('build', 'run'))
depends_on('r-generics@0.0.2:', when='@0.5.1:', type=('build', 'run'))
+ depends_on('r-glue', when='@0.7.3:', type=('build', 'run'))
depends_on('r-purrr', when='@0.5.0:', type=('build', 'run'))
+ depends_on('r-rlang', when='@0.7.3:', type=('build', 'run'))
+ depends_on('r-stringr', type=('build', 'run'))
depends_on('r-tibble', when='@0.5.0:', type=('build', 'run'))
+ depends_on('r-tibble@3.0.0:', when='@0.7.3:', type=('build', 'run'))
+ depends_on('r-tidyr', type=('build', 'run'))
+ depends_on('r-tidyr@1.0.0:', when='@0.7.3:', type=('build', 'run'))
+ depends_on('r-plyr', when='@:0.4.2', type=('build', 'run'))
+ depends_on('r-psych', when='@:0.4.2', type=('build', 'run'))
+ depends_on('r-reshape2', when='@:0.5.2', type=('build', 'run'))
+ depends_on('r-nlme', when='@:0.5.2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bsgenome-hsapiens-ucsc-hg19/package.py b/var/spack/repos/builtin/packages/r-bsgenome-hsapiens-ucsc-hg19/package.py
index bc536f9ccd..bd6f8ee30a 100644
--- a/var/spack/repos/builtin/packages/r-bsgenome-hsapiens-ucsc-hg19/package.py
+++ b/var/spack/repos/builtin/packages/r-bsgenome-hsapiens-ucsc-hg19/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,22 @@ from spack import *
class RBsgenomeHsapiensUcscHg19(RPackage):
- """Full genome sequences for Homo sapiens (Human) as provided by UCSC
+ """Full genome sequences for Homo sapiens (UCSC version hg19, based on
+ GRCh37.p13)
+
+ Full genome sequences for Homo sapiens (Human) as provided by UCSC
(hg19, Feb. 2009) and stored in Biostrings objects."""
# This is a bioconductor package but there is no available git repo.
- homepage = "http://www.bioconductor.org/packages/release/data/annotation/html/BSgenome.Hsapiens.UCSC.hg19.html"
+ homepage = "https://bioconductor.org/packages/BSgenome.Hsapiens.UCSC.hg19/"
url = "http://www.bioconductor.org/packages/release/data/annotation/src/contrib/BSgenome.Hsapiens.UCSC.hg19_1.4.0.tar.gz"
- version('1.4.0', sha256='88f515e5c27dd11d10654250e3a0a9389e4dfeb0b1c2d43419aa7086e6c516f8')
+ version('1.4.3',
+ sha256='5bfa65d7836449d9b30c356968497cdfaa98be48c4e329e71e8f8a120f3e9d1a',
+ url='https://bioconductor.org/packages/3.12/data/annotation/src/contrib/BSgenome.Hsapiens.UCSC.hg19_1.4.3.tar.gz')
+ version('1.4.0',
+ sha256='88f515e5c27dd11d10654250e3a0a9389e4dfeb0b1c2d43419aa7086e6c516f8',
+ url='https://bioconductor.org/packages/3.10/data/annotation/src/contrib/BSgenome.Hsapiens.UCSC.hg19_1.4.0.tar.gz')
depends_on('r-bsgenome@1.33.5:', type=('build', 'run'))
+ depends_on('r-bsgenome@1.54.0:', when='@1.4.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bsgenome/package.py b/var/spack/repos/builtin/packages/r-bsgenome/package.py
index afbc8225dd..bf23766f83 100644
--- a/var/spack/repos/builtin/packages/r-bsgenome/package.py
+++ b/var/spack/repos/builtin/packages/r-bsgenome/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,11 +8,14 @@ from spack import *
class RBsgenome(RPackage):
"""Software infrastructure for efficient representation of full genomes and
- their SNPs."""
+ their SNPs
+
+ Infrastructure shared by all the Biostrings-based genome data packages."""
homepage = "https://bioconductor.org/packages/BSgenome"
git = "https://git.bioconductor.org/packages/BSgenome.git"
+ version('1.58.0', commit='3a4926e03a7a1d7140a10c1b2bf6090808470145')
version('1.52.0', commit='5398eba1cb56a873b29c04a7ce6858d5d60ff75b')
version('1.50.0', commit='43910755f7477e4fe9bb968f186fddbb2f7355f9')
version('1.48.0', commit='092a1b90482ace329cbd8ca2a338e91449acb93e')
@@ -22,21 +25,22 @@ class RBsgenome(RPackage):
depends_on('r@2.8.0:', type=('build', 'run'))
depends_on('r-biocgenerics@0.13.8:', type=('build', 'run'))
depends_on('r-s4vectors@0.9.36:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.28:', when='@1.48.0:', type=('build', 'run'))
depends_on('r-iranges@2.1.33:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.11.4:', type=('build', 'run'))
- depends_on('r-genomicranges@1.27.6:', type=('build', 'run'))
- depends_on('r-biostrings@2.35.3:', type=('build', 'run'))
- depends_on('r-rtracklayer@1.25.8:', type=('build', 'run'))
- depends_on('r-xvector', type=('build', 'run'))
- depends_on('r-rsamtools', type=('build', 'run'))
-
depends_on('r-iranges@2.11.16:', when='@1.46.0:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.13.1:', when='@1.46.0:', type=('build', 'run'))
- depends_on('r-genomicranges@1.29.14:', when='@1.46.0:', type=('build', 'run'))
-
- depends_on('r-s4vectors@0.17.28:', when='@1.48.0:', type=('build', 'run'))
depends_on('r-iranges@2.13.16:', when='@1.48.0:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.11.4:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.13.1:', when='@1.46.0:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.15.2:', when='@1.48.0:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.25.6:', when='@1.58.0:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.27.6:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.29.14:', when='@1.46.0:', type=('build', 'run'))
depends_on('r-genomicranges@1.31.10:', when='@1.48.0:', type=('build', 'run'))
+ depends_on('r-biostrings@2.35.3:', type=('build', 'run'))
depends_on('r-biostrings@2.47.6:', when='@1.48.0:', type=('build', 'run'))
+ depends_on('r-rtracklayer@1.25.8:', type=('build', 'run'))
depends_on('r-rtracklayer@1.39.7:', when='@1.48.0:', type=('build', 'run'))
+ depends_on('r-matrixstats', when='@1.58.0:', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-xvector@0.29.3:', when='@1.58.0:', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bsseq/package.py b/var/spack/repos/builtin/packages/r-bsseq/package.py
index c753c549a0..fe8cebe8fd 100644
--- a/var/spack/repos/builtin/packages/r-bsseq/package.py
+++ b/var/spack/repos/builtin/packages/r-bsseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,49 +7,52 @@ from spack import *
class RBsseq(RPackage):
- """A collection of tools for analyzing and visualizing bisulfite sequencing
+ """Analyze, manage and store bisulfite sequencing data
+
+ A collection of tools for analyzing and visualizing bisulfite sequencing
data."""
homepage = "https://github.com/kasperdanielhansen/bsseq"
git = "https://git.bioconductor.org/packages/bsseq"
+ version('1.26.0', commit='fae32292687625012a2938a48c93df55ad4257b5')
version('1.24.4', commit='8fe7a03')
version('1.22.0', commit='d4f7301')
version('1.20.0', commit='07e398b')
depends_on('r@3.5:', type=('build', 'run'))
-
+ depends_on('r@4.0:', when='@1.26.0:', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
-
depends_on('r-genomicranges@1.29.14:', type=('build', 'run'))
depends_on('r-genomicranges@1.33.6:', when='@1.24.4:', type=('build', 'run'))
-
+ depends_on('r-genomicranges@1.41.5:', when='@1.26.0:', type=('build', 'run'))
depends_on('r-summarizedexperiment@1.9.18:', type=('build', 'run'))
depends_on('r-summarizedexperiment@1.17.4:', when='@1.24.4:', type=('build', 'run'))
-
+ depends_on('r-summarizedexperiment@1.19.5:', when='@1.26.0:', type=('build', 'run'))
depends_on('r-iranges@2.11.16:', type=('build', 'run'))
depends_on('r-iranges@2.22.2:', when='@1.24.4:', type=('build', 'run'))
-
+ depends_on('r-iranges@2.23.9:', when='@1.26.0:', type=('build', 'run'))
depends_on('r-genomeinfodb', type=('build', 'run'))
depends_on('r-scales', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-locfit', type=('build', 'run'))
depends_on('r-gtools', type=('build', 'run'))
depends_on('r-data-table@1.11.8:', type=('build', 'run'))
-
depends_on('r-s4vectors', type=('build', 'run'))
depends_on('r-s4vectors@0.23.11:', when='@1.22.0:', type=('build', 'run'))
- depends_on('r-s4vectors@0.25.14:', when='@1.24.4', type=('build', 'run'))
-
+ depends_on('r-s4vectors@0.25.14:', when='@1.24.4:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.12:', when='@1.26.0:', type=('build', 'run'))
depends_on('r-r-utils@2.0.0:', type=('build', 'run'))
depends_on('r-delayedmatrixstats@1.5.2:', type=('build', 'run'))
depends_on('r-permute', type=('build', 'run'))
depends_on('r-limma', type=('build', 'run'))
depends_on('r-delayedarray@0.9.8:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.15.16:', when='@1.26.0:', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
depends_on('r-biocparallel', type=('build', 'run'))
depends_on('r-bsgenome', type=('build', 'run'))
depends_on('r-biostrings', type=('build', 'run'))
depends_on('r-hdf5array@1.11.9:', type=('build', 'run'))
+ depends_on('r-hdf5array@1.15.19:', when='@1.26.0:', type=('build', 'run'))
depends_on('r-rhdf5', type=('build', 'run'))
depends_on('r-beachmat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bumphunter/package.py b/var/spack/repos/builtin/packages/r-bumphunter/package.py
index e40d70fc88..0768927a8c 100644
--- a/var/spack/repos/builtin/packages/r-bumphunter/package.py
+++ b/var/spack/repos/builtin/packages/r-bumphunter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RBumphunter(RPackage):
- """Bump Hunter.
+ """Bump Hunter
Tools for finding bumps in genomic data"""
homepage = "https://bioconductor.org/packages/bumphunter"
git = "https://git.bioconductor.org/packages/bumphunter.git"
+ version('1.32.0', commit='b7d39c2a6385ca217dceefc918b3ccd5c31bbaa0')
version('1.26.0', commit='606bee8708a0911ced3efb197970b4c9fa52f2fa')
version('1.24.5', commit='29b874033a38e86103b58ef2d4a55f285758147b')
version('1.22.0', commit='fb71b193f4ef7fa12d100441e6eb498765f7afde')
@@ -21,6 +22,8 @@ class RBumphunter(RPackage):
version('1.16.0', commit='1c3ab4d1fd2d75b1586ccef12665960b3602080a')
depends_on('r@2.10:', type=('build', 'run'))
+ depends_on('r@3.4:', when='@1.20.0:', type=('build', 'run'))
+ depends_on('r@3.5:', when='@1.24.5:', type=('build', 'run'))
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
depends_on('r-iranges@2.3.23:', type=('build', 'run'))
depends_on('r-genomeinfodb', type=('build', 'run'))
@@ -34,7 +37,3 @@ class RBumphunter(RPackage):
depends_on('r-biocgenerics', type=('build', 'run'))
depends_on('r-genomicfeatures', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
-
- depends_on('r@3.4:', when='@1.20.0:', type=('build', 'run'))
-
- depends_on('r@3.5:', when='@1.24.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-c50/package.py b/var/spack/repos/builtin/packages/r-c50/package.py
index f92f57de8d..29556a3d10 100644
--- a/var/spack/repos/builtin/packages/r-c50/package.py
+++ b/var/spack/repos/builtin/packages/r-c50/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,16 +8,21 @@ from spack import *
class RC50(RPackage):
- """C5.0 decision trees and rule-based models for pattern recognition."""
+ """C5.0 Decision Trees and Rule-Based Models
+
+ C5.0 decision trees and rule-based models for pattern recognition that
+ extend the work of Quinlan (1993, ISBN:1-55860-238-0)."""
homepage = "https://cloud.r-project.org/package=C50"
url = "https://cloud.r-project.org/src/contrib/C50_0.1.0-24.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/C50"
+ version('0.1.3.1', sha256='0b151ba8deef50ab2e2ad8469d87f54f0c6ab862f5c790ed8bb16cb3b8027546')
version('0.1.2', sha256='8f459856e0309274bee24462b7145db4eba1d71031c236db39000a5375bdfaba')
version('0.1.1', sha256='03bc1fc2f64bcd5c680568a24902deafab1965074a66f8802bc4cd0335bd01df')
version('0.1.0-24', sha256='617ee8ae617a075213414c07739ce92d9e6927783d01588fd0e2315157065e9d')
depends_on('r@2.10.0:', type=('build', 'run'))
depends_on('r-partykit', type=('build', 'run'))
- depends_on('r-cubist@0.2.1:', type=('build', 'run'))
+ depends_on('r-cubist@0.2.1:', when='@:0.1.2', type=('build', 'run'))
+ depends_on('r-cubist@0.2.3:', when='@0.1.3.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ca/package.py b/var/spack/repos/builtin/packages/r-ca/package.py
new file mode 100644
index 0000000000..48ef681659
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ca/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+# ----------------------------------------------------------------------------
+
+from spack import *
+
+
+class RCa(RPackage):
+ """Simple, Multiple and Joint Correspondence Analysis
+
+ Computation and visualization of simple, multiple and joint
+ correspondence analysis."""
+
+ homepage = "http://www.carme-n.org/?sec=ca"
+ url = "https://cloud.r-project.org/src/contrib/ca_0.71.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/ca"
+
+ version('0.71.1', sha256='040c2fc94c356075f116cc7cd880530b3c9e02206c0035182c03a525ee99b424')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cairo/package.py b/var/spack/repos/builtin/packages/r-cairo/package.py
index d6cb5c93a2..c2a48a953c 100644
--- a/var/spack/repos/builtin/packages/r-cairo/package.py
+++ b/var/spack/repos/builtin/packages/r-cairo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,26 @@ from spack import *
class RCairo(RPackage):
"""R graphics device using cairo graphics library for creating high-quality
- bitmap (PNG, JPEG, TIFF), vector (PDF, SVG, PostScript) and display
- (X11 and Win32) output"""
+ bitmap (PNG, JPEG, TIFF), vector (PDF, SVG, PostScript) and display (X11
+ and Win32) output
+
+ R graphics device using cairographics library that can be used to create
+ high-quality vector (PDF, PostScript and SVG) and bitmap output
+ (PNG,JPEG,TIFF), and high-quality rendering in displays (X11 and Win32).
+ Since it uses the same back-end for all output, copying across formats is
+ WYSIWYG. Files are created without the dependence on X11 or other external
+ programs. This device supports alpha channel (semi-transparent drawing) and
+ resulting images can contain transparent and semi-transparent regions. It
+ is ideal for use in server environments (file output) and as a replacement
+ for other devices that don't have Cairo's capabilities such as alpha
+ support or anti-aliasing. Backends are modular such that any subset of
+ backends is supported."""
homepage = "https://cloud.r-project.org/package=Cairo"
url = "https://cloud.r-project.org/src/contrib/Cairo_1.5-9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Cairo"
+ version('1.5-12.2', sha256='dd524105c83b82b5c3b3ee2583ef90d4cafa54b0c29817dac48b425b79f90f92')
version('1.5-10', sha256='7837f0c384cd49bb3342cb39a916d7a80b02fffbf123913a58014e597f69b5d5')
version('1.5-9', sha256='2a867b6cae96671d6bc3acf9334d6615dc01f6ecf1953a27cde8a43c724a38f4')
diff --git a/var/spack/repos/builtin/packages/r-callr/package.py b/var/spack/repos/builtin/packages/r-callr/package.py
index 22122f8030..367cc88a08 100644
--- a/var/spack/repos/builtin/packages/r-callr/package.py
+++ b/var/spack/repos/builtin/packages/r-callr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,17 @@ from spack import *
class RCallr(RPackage):
- """It is sometimes useful to perform a computation in a separate R
- process, without affecting the current R process at all. This packages
- does exactly that."""
+ """Call R from R
+
+ It is sometimes useful to perform a computation in a separate R process,
+ without affecting the current R process at all. This packages does exactly
+ that."""
homepage = "https://github.com/MangoTheCat/callr"
url = "https://cloud.r-project.org/src/contrib/callr_1.0.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/callr/"
+ version('3.5.1', sha256='ce338c648cc9ab501168a55f93e68fc81e31dc5ec881e908b5b4a9d6f5bd8696')
version('3.4.3', sha256='01b7277f20c1d662c6bebbfa2798d179922b36d4148b4298853579aeda0382b5')
version('3.3.1', sha256='bf60da47357d3336aa395b0c9643235a621763c80d28bc9bb2257767d0a37967')
version('3.2.0', sha256='4bb47b1018e8eb5c683a86c05d0d9b8b25848db1f1b30e92cfebedc0ce14b0e8')
diff --git a/var/spack/repos/builtin/packages/r-car/package.py b/var/spack/repos/builtin/packages/r-car/package.py
index eab030ef3c..74c38972d5 100644
--- a/var/spack/repos/builtin/packages/r-car/package.py
+++ b/var/spack/repos/builtin/packages/r-car/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RCar(RPackage):
- """Functions and Datasets to Accompany J. Fox and S. Weisberg, An R
+ """Companion to Applied Regression
+
+ Functions and Datasets to Accompany J. Fox and S. Weisberg, An R
Companion to Applied Regression, Second Edition, Sage, 2011."""
homepage = "https://r-forge.r-project.org/projects/car/"
url = "https://cloud.r-project.org/src/contrib/car_2.1-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/car"
+ version('3.0-10', sha256='1ce316d2fee9b47c951d25d096be732489a3c9f6fc9e612a1eca2e50fb5925f1')
version('3.0-3', sha256='fa807cb12f6e7fb38ec534cac4eef54747945c2119a7d51155a2492ad778c36f')
version('3.0-2', sha256='df59a9ba8fed67eef5ddb8f92f2b41745df715d5695c71d562d7031513f37c50')
version('2.1-4', sha256='fd39cf1750cb560a66623fea3fa9e6a94fc24e3dc36367aff24df7d0743edb28')
diff --git a/var/spack/repos/builtin/packages/r-caracas/package.py b/var/spack/repos/builtin/packages/r-caracas/package.py
index 74f9c77e54..0d02a1465a 100644
--- a/var/spack/repos/builtin/packages/r-caracas/package.py
+++ b/var/spack/repos/builtin/packages/r-caracas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,17 @@ from spack import *
class RCaracas(RPackage):
- """Computer algebra via the 'SymPy' library (<https://www.sympy.org/>).
- This makes it possible to solve equations symbolically, find symbolic
- integrals, symbolic sums and other important quantities.
- """
+ """Computer Algebra
+
+ Computer algebra via the 'SymPy' library (<https://www.sympy.org/>). This
+ makes it possible to solve equations symbolically, find symbolic integrals,
+ symbolic sums and other important quantities."""
homepage = "https://cloud.r-project.org/package=caracas"
url = "https://cloud.r-project.org/src/contrib/caracas_1.0.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/caracas"
+ version('1.0.1', sha256='2482dd7b77791243b8174cb41b80b735c3ebd7db837bbf991127514f492af594')
version('1.0.0', sha256='0da6f1d94d1dacb1c11a3635bdff8f7cd8f84373deffa7126636d0876d48e42b')
depends_on('r@3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cardata/package.py b/var/spack/repos/builtin/packages/r-cardata/package.py
index c2b3d3b7c2..50b56ac8e4 100644
--- a/var/spack/repos/builtin/packages/r-cardata/package.py
+++ b/var/spack/repos/builtin/packages/r-cardata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,17 @@ from spack import *
class RCardata(RPackage):
- """Datasets to Accompany J. Fox and S. Weisberg, An R Companion to Applied
- Regression, Third Edition, Sage (forthcoming)."""
+ """Companion to Applied Regression Data Sets
+
+ Datasets to Accompany J. Fox and S. Weisberg, An R Companion to Applied
+ Regression, Third Edition, Sage (2019)."""
homepage = "https://r-forge.r-project.org/projects/car/"
url = "https://cloud.r-project.org/src/contrib/carData_3.0-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/carData"
+ version('3.0-4', sha256='cda6f5e3efc1d955a4a0625e9c33f90d49f5455840e88b3bd757129b86044724')
version('3.0-2', sha256='3b5c4eff1cc1e456a5331084774503eaa06cf61fb7acf6b9e8a6bfabd5735494')
depends_on('r@3.0:', type=('build', 'run'))
+ depends_on('r@3.5:', when='@3.0-4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-caret/package.py b/var/spack/repos/builtin/packages/r-caret/package.py
index 7d7631c66d..8d49232086 100644
--- a/var/spack/repos/builtin/packages/r-caret/package.py
+++ b/var/spack/repos/builtin/packages/r-caret/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,27 +7,33 @@ from spack import *
class RCaret(RPackage):
- """Misc functions for training and plotting classification and regression
+ """Classification and Regression Training
+
+ Misc functions for training and plotting classification and regression
models."""
homepage = "https://github.com/topepo/caret/"
url = "https://cloud.r-project.org/src/contrib/caret_6.0-73.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/caret"
+ version('6.0-86', sha256='da4a1c7c3fbf645c5b02871e563a77404622b83623f0d1c5dc1425de7aa4ce37')
version('6.0-84', sha256='a1831c086a9c71b469f7405649ba04517683cdf229e119c005189cf57244090d')
version('6.0-83', sha256='9bde5e4da1f0b690bfe06c2439c0136504e851a8d360bf56b644f171fe20dcef')
version('6.0-73', sha256='90a0a4a10f1a3b37502cb0ed7d8830063d059a548faabb9cc5d8d34736c7eacb')
version('6.0-70', sha256='21c5bdf7cf07bece38729465366564d8ca104c2466ee9fd800ca1fd88eb82f38')
- depends_on('r@2.10:', when='@:6.0-81', type=('build', 'run'))
+ depends_on('r@2.10:', type=('build', 'run'))
depends_on('r@3.2.0:', when='@6.0-82:', type=('build', 'run'))
depends_on('r-lattice@0.20:', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-car', when='@:6.0-73', type=('build', 'run'))
depends_on('r-foreach', type=('build', 'run'))
depends_on('r-plyr', type=('build', 'run'))
depends_on('r-modelmetrics@1.1.0:', type=('build', 'run'))
+ depends_on('r-modelmetrics@1.2.2.2:', when='@6.0-86:', type=('build', 'run'))
depends_on('r-nlme', type=('build', 'run'))
depends_on('r-reshape2', type=('build', 'run'))
- depends_on('r-recipes@0.1.4:', when='@6.0-83:', type=('build', 'run'))
+ depends_on('r-recipes@0.1.4:', when='@6.0-83:6.0-84', type=('build', 'run'))
+ depends_on('r-recipes@0.1.10:', when='@6.0-86:', type=('build', 'run'))
depends_on('r-withr@2.0.0:', when='@6.0-83:', type=('build', 'run'))
+ depends_on('r-proc', when='@6.0-86:', type=('build', 'run'))
+ depends_on('r-car', when='@:6.0-73', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-caretensemble/package.py b/var/spack/repos/builtin/packages/r-caretensemble/package.py
new file mode 100644
index 0000000000..986dedf4b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-caretensemble/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RCaretensemble(RPackage):
+ """caretEnsemble: Ensembles of Caret Models
+
+ Functions for creating ensembles of caret models: caretList() and
+ caretStack(). caretList() is a convenience function for fitting multiple
+ caret::train() models to the same dataset. caretStack() will make linear or
+ non-linear combinations of these models, using a caret::train() model as a
+ meta-model, and caretEnsemble() will make a robust linear combination of
+ models using a GLM."""
+
+ homepage = "https://github.com/zachmayer/caretEnsemble"
+ url = "https://cloud.r-project.org/src/contrib/caretEnsemble_2.0.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/caretEnsemble"
+
+ version('2.0.1', sha256='7e595e604ce2d9d32afbc5404e6fcbcd7f80e687316e9ca3303aca3e44c3ef88')
+
+ depends_on('r@3.2.0:', type=('build', 'run'))
+ depends_on('r-pbapply', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-digest', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-data-table', type=('build', 'run'))
+ depends_on('r-caret', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-caroline/package.py b/var/spack/repos/builtin/packages/r-caroline/package.py
index 13d6771f3e..5678a465e5 100644
--- a/var/spack/repos/builtin/packages/r-caroline/package.py
+++ b/var/spack/repos/builtin/packages/r-caroline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-category/package.py b/var/spack/repos/builtin/packages/r-category/package.py
index 3e933e3ecb..f5546a2da3 100644
--- a/var/spack/repos/builtin/packages/r-category/package.py
+++ b/var/spack/repos/builtin/packages/r-category/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RCategory(RPackage):
- """Category Analysis.
+ """Category Analysis
A collection of tools for performing category (gene set enrichment)
analysis."""
@@ -15,6 +15,7 @@ class RCategory(RPackage):
homepage = "https://bioconductor.org/packages/Category"
git = "https://git.bioconductor.org/packages/Category.git"
+ version('2.56.0', commit='ad478caa9d693dbc2770608e79dd852375b9a223')
version('2.50.0', commit='d96f0b29cb778f6697b44d7ba7b0abd7086074a9')
version('2.48.1', commit='941819a3d9dd129f47b4ea00fa74032e405be3a5')
version('2.46.0', commit='c8aeee4dee3fb120f25e0647dd06e895a3ffbc2a')
diff --git a/var/spack/repos/builtin/packages/r-catools/package.py b/var/spack/repos/builtin/packages/r-catools/package.py
index c8a2b9a5f0..a99cee38af 100644
--- a/var/spack/repos/builtin/packages/r-catools/package.py
+++ b/var/spack/repos/builtin/packages/r-catools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,9 @@ from spack import *
class RCatools(RPackage):
- """Contains several basic utility functions including: moving (rolling,
+ """Tools: Moving Window Statistics, GIF, Base64, ROC AUC, etc
+
+ Contains several basic utility functions including: moving (rolling,
running) window statistic functions, read/write for GIF and ENVI binary
files, fast calculation of AUC, LogitBoost classifier, base64
encoder/decoder, round-off-error-free sum and cumsum, etc."""
@@ -17,9 +19,11 @@ class RCatools(RPackage):
url = "https://cloud.r-project.org/src/contrib/caTools_1.17.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/caTools"
+ version('1.18.1', sha256='ffeba4ffbeed5d491bf79b1fde3477f413341e412f77316af20439f54447c9f9')
version('1.17.1.2', sha256='69cc542fab5677462b1a768709d0c4a0a0790f5db53e1fe9ae7123787c18726b')
version('1.17.1.1', sha256='d53e2c5c77f1bd4744703d7196dbc9b4671a120bbb5b9b3edc45fc57c0650c06')
version('1.17.1', sha256='d32a73febf00930355cc00f3e4e71357412e0f163faae6a4bf7f552cacfe9af4')
depends_on('r@2.2.0:', type=('build', 'run'))
+ depends_on('r@3.6.0:', when='@1.18.1:', type=('build', 'run'))
depends_on('r-bitops', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cdcfluview/package.py b/var/spack/repos/builtin/packages/r-cdcfluview/package.py
index d00215eb28..65213e4e25 100644
--- a/var/spack/repos/builtin/packages/r-cdcfluview/package.py
+++ b/var/spack/repos/builtin/packages/r-cdcfluview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,10 @@ from spack import *
class RCdcfluview(RPackage):
- """The 'U.S.' Centers for Disease Control ('CDC') maintains a portal
+ """Retrieve Flu Season Data from the United States Centers for Disease
+ Control and Prevention ('CDC') 'FluView' Portal
+
+ The 'U.S.' Centers for Disease Control ('CDC') maintains a portal
<http://gis.cdc.gov/grasp/fluview/fluportaldashboard.html> for accessing
state, regional and national influenza statistics as well as Mortality
Surveillance Data. The web interface makes it difficult and time-consuming
@@ -18,13 +21,17 @@ class RCdcfluview(RPackage):
url = "https://cloud.r-project.org/src/contrib/cdcfluview_0.7.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/cdcfluview"
+ version('0.9.2', sha256='f2080fc80c5e0241f8b657f5ac3a251ea89dfc26c1ab13bdfaed4d4e97495015')
version('0.9.0', sha256='1b2064886858cbb1790ef808d88fbab75d3a9cf55e720638221a3377ff8dd244')
version('0.7.0', sha256='8c8978d081f8472a6ed5ec54c4e6dd906f97ee28d0f88eef1514088f041ecc03')
- depends_on('r@3.2.0:', type=('build', 'run'))
+ depends_on('r@3.2.0:', when='@:0.9.0', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.9.2:', type=('build', 'run'))
depends_on('r-httr', type=('build', 'run'))
+ depends_on('r-progress', when='@0.9.2:', type=('build', 'run'))
depends_on('r-dplyr', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-tibble', when='@0.9.2:', type=('build', 'run'))
depends_on('r-sf', type=('build', 'run'))
depends_on('r-xml2', type=('build', 'run'))
depends_on('r-purrr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cellranger/package.py b/var/spack/repos/builtin/packages/r-cellranger/package.py
index d2a6aeeb4d..8ca00b70cb 100644
--- a/var/spack/repos/builtin/packages/r-cellranger/package.py
+++ b/var/spack/repos/builtin/packages/r-cellranger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-champ/package.py b/var/spack/repos/builtin/packages/r-champ/package.py
new file mode 100644
index 0000000000..478030a7c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-champ/package.py
@@ -0,0 +1,60 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RChamp(RPackage):
+ """Chip Analysis Methylation Pipeline for Illumina HumanMethylation450 and
+ EPIC:
+
+ The package includes quality control metrics, a selection of
+ normalization methods and novel methods to identify differentially
+ methylated regions and to highlight copy number alterations."""
+
+ bioc = "ChAMP"
+
+ version('2.20.1', commit='99ea0463bce59f5b06bcc91f479dcd4065074896')
+
+ depends_on('r@3.3:', type=('build', 'run'))
+ depends_on('r-minfi', type=('build', 'run'))
+ depends_on('r-champdata@2.6.0:', type=('build', 'run'))
+ depends_on('r-dmrcate', type=('build', 'run'))
+ depends_on('r-illumina450probevariants-db', type=('build', 'run'))
+ depends_on('r-illuminahumanmethylationepicmanifest', type=('build', 'run'))
+ depends_on('r-dt', type=('build', 'run'))
+ depends_on('r-rpmm', type=('build', 'run'))
+ depends_on('r-prettydoc', type=('build', 'run'))
+ depends_on('r-hmisc', type=('build', 'run'))
+ depends_on('r-globaltest', type=('build', 'run'))
+ depends_on('r-sva', type=('build', 'run'))
+ depends_on('r-illuminaio', type=('build', 'run'))
+ depends_on('r-rmarkdown', type=('build', 'run'))
+ depends_on('r-illuminahumanmethylation450kmanifest', type=('build', 'run'))
+ depends_on('r-illuminahumanmethylationepicanno-ilm10b4-hg19', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-dnacopy', type=('build', 'run'))
+ depends_on('r-preprocesscore', type=('build', 'run'))
+ depends_on('r-impute', type=('build', 'run'))
+ depends_on('r-marray', type=('build', 'run'))
+ depends_on('r-watermelon', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-goseq', type=('build', 'run'))
+ depends_on('r-missmethyl', type=('build', 'run'))
+ depends_on('r-kpmt', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-qvalue', type=('build', 'run'))
+ depends_on('r-isva', type=('build', 'run'))
+ depends_on('r-doparallel', type=('build', 'run'))
+ depends_on('r-bumphunter', type=('build', 'run'))
+ depends_on('r-quadprog', type=('build', 'run'))
+ depends_on('r-shiny', type=('build', 'run'))
+ depends_on('r-shinythemes', type=('build', 'run'))
+ depends_on('r-plotly@4.5.6:', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-dendextend', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
+ depends_on('r-combinat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-champdata/package.py b/var/spack/repos/builtin/packages/r-champdata/package.py
new file mode 100644
index 0000000000..261463286d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-champdata/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RChampdata(RPackage):
+ """Packages for ChAMP package:
+
+ Provides datasets needed for ChAMP including a test dataset and blood
+ controls for CNA analysis."""
+
+ bioc = "ChAMPdata"
+
+ version('2.22.0', commit='eeedd4c477fac79f00743da8ff7da064221c5f3d')
+
+ depends_on('r@3.3:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.22.4:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.16.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-checkmate/package.py b/var/spack/repos/builtin/packages/r-checkmate/package.py
index 7904ee365b..e1e145590a 100644
--- a/var/spack/repos/builtin/packages/r-checkmate/package.py
+++ b/var/spack/repos/builtin/packages/r-checkmate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RCheckmate(RPackage):
- """Tests and assertions to perform frequent argument checks.
+ """Fast and Versatile Argument Checks
+
+ Tests and assertions to perform frequent argument checks.
A substantial part of the package was written in C to
minimize any worries about execution time overhead."""
@@ -15,6 +17,7 @@ class RCheckmate(RPackage):
url = "https://cloud.r-project.org/src/contrib/checkmate_1.8.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/checkmate"
+ version('2.0.0', sha256='0dc25b0e20c04836359df1885d099c6e4ad8ae0e585a9e4107f7ea945d9c6fa4')
version('1.9.4', sha256='faa25754b757fe483b876f5d07b73f76f69a1baa971420892fadec4af4bbad21')
version('1.8.4', sha256='6f948883e5a885a1c409d997f0c782e754a549227ec3c8eb18318deceb38f8f6')
diff --git a/var/spack/repos/builtin/packages/r-checkpoint/package.py b/var/spack/repos/builtin/packages/r-checkpoint/package.py
index 4bed14e6e1..6b5da99426 100644
--- a/var/spack/repos/builtin/packages/r-checkpoint/package.py
+++ b/var/spack/repos/builtin/packages/r-checkpoint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,29 @@ from spack import *
class RCheckpoint(RPackage):
- """The goal of checkpoint is to solve the problem of package
- reproducibility in R. Specifically, checkpoint allows you to
- install packages as they existed on CRAN on a specific snapshot
- date as if you had a CRAN time machine."""
+ """Install Packages from Snapshots on the Checkpoint Server for Reproducibility
+
+ The goal of checkpoint is to solve the problem of package reproducibility
+ in R. Specifically, checkpoint allows you to install packages as they
+ existed on CRAN on a specific snapshot date as if you had a CRAN time
+ machine. To achieve reproducibility, the checkpoint() function installs the
+ packages required or called by your project and scripts to a local library
+ exactly as they existed at the specified point in time. Only those packages
+ are available to your project, thereby avoiding any package updates that
+ came later and may have altered your results. In this way, anyone using
+ checkpoint's checkpoint() can ensure the reproducibility of your scripts or
+ projects at any time. To create the snapshot archives, once a day (at
+ midnight UTC) Microsoft refreshes the Austria CRAN mirror on the "Microsoft
+ R Archived Network" server (<https://mran.microsoft.com/>). Immediately
+ after completion of the rsync mirror process, the process takes a snapshot,
+ thus creating the archive. Snapshot archives exist starting from
+ 2014-09-17."""
homepage = "https://cloud.r-project.org/package=checkpoint"
url = "https://cloud.r-project.org/src/contrib/checkpoint_0.4.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/checkpoint"
+ version('0.4.10', sha256='7362ae9703763fe4652d0b592cd913ce506f072a18e5cf5970d08d7cdf4d126a')
version('0.4.6', sha256='fd1a5edb5cb1a40d7ed26bb196de566110fe2ef62e70b4e947c003576a03ebb2')
version('0.4.3', sha256='c3e862f89f8838183d6028f7ed13683aec562e6dab77ad4b6a5e24ec653cfb64')
version('0.3.15', sha256='09f1feeb2b5b8b409a2e16a9185827b8da5e555f1aa84442a287f15e452beed7')
diff --git a/var/spack/repos/builtin/packages/r-chemometrics/package.py b/var/spack/repos/builtin/packages/r-chemometrics/package.py
index b4b8f01804..ee97cbaa49 100644
--- a/var/spack/repos/builtin/packages/r-chemometrics/package.py
+++ b/var/spack/repos/builtin/packages/r-chemometrics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-chipseq/package.py b/var/spack/repos/builtin/packages/r-chipseq/package.py
new file mode 100644
index 0000000000..60e87f7c40
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-chipseq/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RChipseq(RPackage):
+ """A package for analyzing chipseq data"""
+
+ homepage = "https://bioconductor.org/packages/release/bioc/html/chipseq.html"
+ url = "https://bioconductor.org/packages/release/bioc/src/contrib/chipseq_1.40.0.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('1.40.0', sha256='5b48721a9eae6ebaf57a57af13f76eb887925ea1a02906abeb6f67a588c0ff8a')
+
+ depends_on('r@2.10:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.1.0:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.25:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.12:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.8:', type=('build', 'run'))
+ depends_on('r-shortread', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-chron/package.py b/var/spack/repos/builtin/packages/r-chron/package.py
index f47ab66c6f..33cf9edf8e 100644
--- a/var/spack/repos/builtin/packages/r-chron/package.py
+++ b/var/spack/repos/builtin/packages/r-chron/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,16 @@ from spack import *
class RChron(RPackage):
- """Chronological objects which can handle dates and times."""
+ """Chronological objects which can handle dates and times.
+
+ Provides chronological objects which can handle dates and times.
+ """
homepage = "https://cloud.r-project.org/package=chron"
url = "https://cloud.r-project.org/src/contrib/chron_2.3-47.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/chron"
+ version('2.3-56', sha256='863ecbb951a3da994761ea9062fa96d34e94e19fbc4122521ac179274dfa3f5d')
version('2.3-53', sha256='521814b46ba958eae28e29d8766aebd285da5e6fa16c5806603df3ae39f77309')
version('2.3-52', sha256='c47fcf4abb635babe6337604c876d4853d8a24639a98b71523746c56ce75b4a0')
version('2.3-47', sha256='9a8c771021165de517e54c3369c622aaac1bf3e220a2fbf595aba285e60445f6')
diff --git a/var/spack/repos/builtin/packages/r-circlize/package.py b/var/spack/repos/builtin/packages/r-circlize/package.py
index ea9dc2e012..14af2b7475 100644
--- a/var/spack/repos/builtin/packages/r-circlize/package.py
+++ b/var/spack/repos/builtin/packages/r-circlize/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,26 +7,31 @@ from spack import *
class RCirclize(RPackage):
- """Circular layout is an efficient way for the visualization of huge
- amounts of information. Here this package provides an implementation
- of circular layout generation in R as well as an enhancement of
- available software. The flexibility of the package is based on the
- usage of low-level graphics functions such that self-defined
- high-level graphics can be easily implemented by users for specific
- purposes. Together with the seamless connection between the powerful
- computational and visual environment in R, it gives users more
- convenience and freedom to design figures for better understanding
- complex patterns behind multiple dimensional data."""
+ """Circular Visualization
+
+ Circular layout is an efficient way for the visualization of huge amounts
+ of information. Here this package provides an implementation of circular
+ layout generation in R as well as an enhancement of available software. The
+ flexibility of the package is based on the usage of low-level graphics
+ functions such that self-defined high-level graphics can be easily
+ implemented by users for specific purposes. Together with the seamless
+ connection between the powerful computational and visual environment in R,
+ it gives users more convenience and freedom to design figures for better
+ understanding complex patterns behind multiple dimensional data. The
+ package is described in Gu et al. 2014
+ <doi:10.1093/bioinformatics/btu393>."""
homepage = "https://cloud.r-project.org/package=circlize"
url = "https://cloud.r-project.org/src/contrib/circlize_0.4.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/circlize"
+ version('0.4.12', sha256='b3b60caa5292cf980cf474c85f59582f6862925631a4da86a78eac05903252f4')
version('0.4.6', sha256='cec88cfc5e512a111cc37177552c25698ccc0e9bbecb0d6e60657e7b115a56fa')
version('0.4.1', sha256='204a170ae3b982f09b652c4583189907cfa42a29bc7efaba02a1e0d79f1cf1f0')
version('0.4.0', sha256='abdc1bbe264be42c1d7b65869979da7cd131032fd6fd3f11f9744dae54e83f5c')
depends_on('r@3.0.0:', type=('build', 'run'))
- depends_on('r-globaloptions@0.1.0:', type=('build', 'run'))
+ depends_on('r-globaloptions@0.1.0:', when='@:0.4.6', type=('build', 'run'))
+ depends_on('r-globaloptions@0.1.2:', when='@0.4.12:', type=('build', 'run'))
depends_on('r-shape', type=('build', 'run'))
depends_on('r-colorspace', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-circstats/package.py b/var/spack/repos/builtin/packages/r-circstats/package.py
new file mode 100644
index 0000000000..dad3b152f6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-circstats/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RCircstats(RPackage):
+ """Circular Statistics, from "Topics in Circular Statistics" (2001)
+
+ Circular Statistics, from "Topics in Circular Statistics" (2001) S.
+ Rao Jammalamadaka and A. SenGupta, World Scientific."""
+
+ homepage = "https://cloud.r-project.org/package=CircStats"
+ url = "https://cloud.r-project.org/src/contrib/CircStats_0.2-6.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/CircStats"
+
+ maintainers = ['dorton21']
+
+ version('0.2-6', sha256='8efed93b75b314577341effea214e3dd6e0a515cfe1212eb051047a1f3276f1d')
+
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-boot', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-class/package.py b/var/spack/repos/builtin/packages/r-class/package.py
index d15932eae2..0dfbb3fafa 100644
--- a/var/spack/repos/builtin/packages/r-class/package.py
+++ b/var/spack/repos/builtin/packages/r-class/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RClass(RPackage):
- """Various functions for classification, including k-nearest neighbour,
+ """Functions for Classification
+
+ Various functions for classification, including k-nearest neighbour,
Learning Vector Quantization and Self-Organizing Maps."""
homepage = "http://www.stats.ox.ac.uk/pub/MASS4/"
url = "https://cloud.r-project.org/src/contrib/class_7.3-14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/class"
+ version('7.3-17', sha256='be1f85b6df7556db93f50cb08106aac6620d4b5bb3fee846422863a022461313')
version('7.3-15', sha256='f6bf33d610c726d58622b6cea78a808c7d6a317d02409d27c17741dfd1c730f4')
version('7.3-14', sha256='18b876dbc18bebe6a00890eab7d04ef72b903ba0049d5ce50731406a82426b9c')
diff --git a/var/spack/repos/builtin/packages/r-classint/package.py b/var/spack/repos/builtin/packages/r-classint/package.py
index 66f2e095a9..a39327aa88 100644
--- a/var/spack/repos/builtin/packages/r-classint/package.py
+++ b/var/spack/repos/builtin/packages/r-classint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RClassint(RPackage):
- """Selected commonly used methods for choosing univariate class intervals
- for mapping or other graphics purposes."""
+ """Choose Univariate Class Intervals
+
+ Selected commonly used methods for choosing univariate class intervals for
+ mapping or other graphics purposes."""
homepage = "https://cloud.r-project.org/package=classInt"
url = "https://cloud.r-project.org/src/contrib/classInt_0.1-24.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/classInt"
+ version('0.4-3', sha256='9ede7a2a7a6b6c114919a3315a884fb592e33b037a50a4fe45cbd4fe2fc434ac')
version('0.4-1', sha256='39c63f8e37b379033d73d57929b5b8ea41b0023626cc1cec648d66bade5d0103')
version('0.3-3', sha256='a93e685ef9c40d5977bb91d7116505a25303b229897a20544722a94ea1365f30')
version('0.3-1', sha256='e2e6f857b544dfecb482b99346aa3ecfdc27b4d401c3537ee8fbaf91caca92b9')
diff --git a/var/spack/repos/builtin/packages/r-cli/package.py b/var/spack/repos/builtin/packages/r-cli/package.py
index d8a169c779..8f5f73ed25 100644
--- a/var/spack/repos/builtin/packages/r-cli/package.py
+++ b/var/spack/repos/builtin/packages/r-cli/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,20 @@ from spack import *
class RCli(RPackage):
- """A suite of tools designed to build attractive command line interfaces
- ('CLIs'). Includes tools for drawing rules, boxes, trees, and
- 'Unicode' symbols with 'ASCII' alternatives."""
+ """Helpers for Developing Command Line Interfaces
+
+ A suite of tools to build attractive command line interfaces ('CLIs'), from
+ semantic elements: headings, lists, alerts, paragraphs, etc. Supports
+ custom themes via a 'CSS'-like language. It also contains a number of lower
+ level 'CLI' elements: rules, boxes, trees, and 'Unicode' symbols with
+ 'ASCII' alternatives. It integrates with the 'crayon' package to support
+ 'ANSI' terminal colors."""
homepage = "https://github.com/r-lib/cli#readme"
url = "https://cloud.r-project.org/src/contrib/cli_1.0.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/cli"
+ version('2.2.0', sha256='39a77af61724f8cc1f5117011e17bb2a488cbac61a7c112db078a675d3ac40b8')
version('2.0.2', sha256='490834e5b80eb036befa0e150996bcab1c4d5d168c3d45209926e52d0d5413b6')
version('1.1.0', sha256='4fc00fcdf4fdbdf9b5792faee8c7cf1ed5c4f45b1221d961332cda82dbe60d0a')
version('1.0.1', sha256='ef80fbcde15760fd55abbf9413b306e3971b2a7034ab8c415fb52dc0088c5ee4')
diff --git a/var/spack/repos/builtin/packages/r-clipr/package.py b/var/spack/repos/builtin/packages/r-clipr/package.py
index 7ea728fe97..e97fd95623 100644
--- a/var/spack/repos/builtin/packages/r-clipr/package.py
+++ b/var/spack/repos/builtin/packages/r-clipr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RClipr(RPackage):
- """Simple utility functions to read from and write to the Windows, OS X,
- and X11 clipboards."""
+ """Read and Write from the System Clipboard
+
+ Simple utility functions to read from and write to the Windows, OS X, and
+ X11 clipboards."""
homepage = "https://github.com/mdlincoln/clipr"
url = "https://cloud.r-project.org/src/contrib/clipr_0.4.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/clipr"
+ version('0.7.1', sha256='ffad477b07847e3b68f7e4406bbd323025a8dae7e3c768943d4d307ee3248afb')
version('0.7.0', sha256='03a4e4b72ec63bd08b53fe62673ffc19a004cc846957a335be2b30d046b8c2e2')
version('0.5.0', sha256='fd303f8b7f29badcdf490bb2d579acdfc4f4e1aa9c90ac77ab9d05ce3d053dbf')
version('0.4.0', sha256='44a2f1ab4fde53e4fe81cf5800aa6ad45b72b5da93d6fe4d3661d7397220e8af')
diff --git a/var/spack/repos/builtin/packages/r-clisymbols/package.py b/var/spack/repos/builtin/packages/r-clisymbols/package.py
index c5ed8c3e9f..1834c6111c 100644
--- a/var/spack/repos/builtin/packages/r-clisymbols/package.py
+++ b/var/spack/repos/builtin/packages/r-clisymbols/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-clue/package.py b/var/spack/repos/builtin/packages/r-clue/package.py
index 30893dccaf..c442e863d5 100644
--- a/var/spack/repos/builtin/packages/r-clue/package.py
+++ b/var/spack/repos/builtin/packages/r-clue/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,13 @@ from spack import *
class RClue(RPackage):
- """clue: Cluster Ensembles"""
+ """Cluster Ensembles"""
homepage = "https://cloud.r-project.org/package=clue"
url = "https://cloud.r-project.org/src/contrib/clue_0.3-57.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/clue"
+ version('0.3-58', sha256='2ab6662eaa1103a7b633477e8ebd266b262ed54fac6f9326b160067a2ded9ce7')
version('0.3-57', sha256='6e369d07b464a9624209a06b5078bf988f01f7963076e946649d76aea0622d17')
depends_on('r@3.2.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cluster/package.py b/var/spack/repos/builtin/packages/r-cluster/package.py
index 34a504e751..20c0ff716c 100644
--- a/var/spack/repos/builtin/packages/r-cluster/package.py
+++ b/var/spack/repos/builtin/packages/r-cluster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-clustergeneration/package.py b/var/spack/repos/builtin/packages/r-clustergeneration/package.py
index c7cd14d97c..6e9fb3fd73 100644
--- a/var/spack/repos/builtin/packages/r-clustergeneration/package.py
+++ b/var/spack/repos/builtin/packages/r-clustergeneration/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,24 @@ from spack import *
class RClustergeneration(RPackage):
- """Random Cluster Generation (with Specified Degree of Separation)"""
+ """Random Cluster Generation (with Specified Degree of Separation)
+
+ We developed the clusterGeneration package to provide functions for
+ generating random clusters, generating random covariance/correlation
+ matrices, calculating a separation index (data and population version) for
+ pairs of clusters or cluster distributions, and 1-D and 2-D projection
+ plots to visualize clusters. The package also contains a function to
+ generate random clusters based on factorial designs with factors such as
+ degree of separation, number of clusters, number of variables, number of
+ noisy variables."""
homepage = "https://cloud.r-project.org/package=clusterGeneration"
url = "https://cloud.r-project.org/src/contrib/clusterGeneration_1.3.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/clusterGeneration/"
+ version('1.3.7', sha256='534f29d8f7ed11e6e9a496f15845b588ec7133f3da5e6def8140b88500e52d5c')
version('1.3.4', sha256='7c591ad95a8a9d7fb0e4d5d80dfd78f7d6a63cf7d11eb53dd3c98fdfb5b868aa')
depends_on('r@2.9.1:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.3.7:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-clusterprofiler/package.py b/var/spack/repos/builtin/packages/r-clusterprofiler/package.py
index 2f71d6df7a..7f6c6be3eb 100644
--- a/var/spack/repos/builtin/packages/r-clusterprofiler/package.py
+++ b/var/spack/repos/builtin/packages/r-clusterprofiler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RClusterprofiler(RPackage):
"""statistical analysis and visualization of functional profiles for genes
- and gene clusters.
+ and gene clusters
This package implements methods to analyze and visualize functional
profiles (GO and KEGG) of gene and gene clusters."""
@@ -16,6 +16,7 @@ class RClusterprofiler(RPackage):
homepage = "https://bioconductor.org/packages/clusterProfiler"
git = "https://git.bioconductor.org/packages/clusterProfiler.git"
+ version('3.18.0', commit='064a6e612ce27e260e33af78b907bee4065ff821')
version('3.12.0', commit='6ec88d10832bdfd938e9c065b377015eedb7eee2')
version('3.10.1', commit='39927ef7ff6f97e27557bcf4147e2133b364fd3c')
version('3.8.1', commit='81e1a7ac49e4713703c55f87f945b20de5e7ab36')
@@ -23,20 +24,23 @@ class RClusterprofiler(RPackage):
version('3.4.4', commit='b86b00e8405fe130e439362651a5567736e2d9d7')
depends_on('r@3.3.1:', type=('build', 'run'))
- depends_on('r-dose@3.1.3:', type=('build', 'run'))
+ depends_on('r@3.4.0:', when='@3.8.1:', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
- depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-downloader', when='@3.18.0:', type=('build', 'run'))
+ depends_on('r-dose@3.1.3:', type=('build', 'run'))
+ depends_on('r-dose@3.3.2:', when='@3.6.0:', type=('build', 'run'))
+ depends_on('r-dose@3.5.1:', when='@3.8.1:', type=('build', 'run'))
+ depends_on('r-dose@3.13.1:', when='@3.18.0:', type=('build', 'run'))
+ depends_on('r-dplyr', when='@3.18.0:', type=('build', 'run'))
+ depends_on('r-enrichplot@0.99.7:', when='@3.8.1:', type=('build', 'run'))
+ depends_on('r-enrichplot@1.9.3:', when='@3.18.0:', type=('build', 'run'))
depends_on('r-go-db', type=('build', 'run'))
- depends_on('r-gosemsim@2.0.0:', when='@3.4.4:3.6.0', type=('build', 'run'))
depends_on('r-gosemsim', type=('build', 'run'))
+ depends_on('r-gosemsim@2.0.0:', when='@3.4.4:3.6.0', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-plyr', type=('build', 'run'))
depends_on('r-qvalue', type=('build', 'run'))
+ depends_on('r-rlang', when='@3.18.0:', type=('build', 'run'))
depends_on('r-rvcheck', type=('build', 'run'))
depends_on('r-tidyr', type=('build', 'run'))
-
- depends_on('r-dose@3.3.2:', when='@3.6.0:', type=('build', 'run'))
-
- depends_on('r@3.4.0:', when='@3.8.1:', type=('build', 'run'))
- depends_on('r-dose@3.5.1:', when='@3.8.1:', type=('build', 'run'))
- depends_on('r-enrichplot@0.99.7:', when='@3.8.1:', type=('build', 'run'))
+ depends_on('r-ggplot2', when='@:3.12.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cner/package.py b/var/spack/repos/builtin/packages/r-cner/package.py
index 1eadf7f279..6f652c74b1 100644
--- a/var/spack/repos/builtin/packages/r-cner/package.py
+++ b/var/spack/repos/builtin/packages/r-cner/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RCner(RPackage):
- """CNE Detection and Visualization.
+ """CNE Detection and Visualization
Large-scale identification and advanced visualization of sets of
conserved noncoding elements."""
@@ -15,6 +15,7 @@ class RCner(RPackage):
homepage = "https://bioconductor.org/packages/CNEr"
git = "https://git.bioconductor.org/packages/CNEr.git"
+ version('1.26.0', commit='e5e582da6feeae0618c4460f16ece724215e3b20')
version('1.20.0', commit='9c25d8e8f6f5fd8a5311f554c86e7ca1140a4ca5')
version('1.18.1', commit='66aa88af04364c81832f3b09bad898f3c117f606')
version('1.16.1', commit='a2bec4b98d5938709f959a69c151f553ef357941')
@@ -22,14 +23,16 @@ class RCner(RPackage):
version('1.12.1', commit='90d611f9cd19a73d0fe92ab03ef428519d64c017')
depends_on('r@3.2.2:', type=('build', 'run'))
+ depends_on('r@3.4:', when='@1.14.0:', type=('build', 'run'))
depends_on('r-biostrings@2.33.4:', type=('build', 'run'))
+ depends_on('r-dbi@0.6:', type=('build', 'run'))
+ depends_on('r-dbi@0.7:', when='@1.14.0:', type=('build', 'run'))
depends_on('r-rsqlite@0.11.4:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.1.3:', type=('build', 'run'))
depends_on('r-genomicranges@1.23.16:', type=('build', 'run'))
depends_on('r-rtracklayer@1.25.5:', type=('build', 'run'))
depends_on('r-xvector@0.5.4:', type=('build', 'run'))
depends_on('r-genomicalignments@1.1.9:', type=('build', 'run'))
- depends_on('r-dbi@0.6:', type=('build', 'run'))
depends_on('r-s4vectors@0.13.13:', type=('build', 'run'))
depends_on('r-iranges@2.5.27:', type=('build', 'run'))
depends_on('r-readr@0.2.2:', type=('build', 'run'))
@@ -41,6 +44,3 @@ class RCner(RPackage):
depends_on('r-go-db@3.3.0:', type=('build', 'run'))
depends_on('r-r-utils@2.3.0:', type=('build', 'run'))
depends_on('r-keggrest@1.14.0:', type=('build', 'run'))
-
- depends_on('r@3.4:', when='@1.14.0:', type=('build', 'run'))
- depends_on('r-dbi@0.7:', when='@1.14.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-coda/package.py b/var/spack/repos/builtin/packages/r-coda/package.py
index 98397e80af..228d511951 100644
--- a/var/spack/repos/builtin/packages/r-coda/package.py
+++ b/var/spack/repos/builtin/packages/r-coda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,17 @@ from spack import *
class RCoda(RPackage):
- """Provides functions for summarizing and plotting the output from
- Markov Chain Monte Carlo (MCMC) simulations, as well as
- diagnostic tests of convergence to the equilibrium distribution
- of the Markov chain."""
+ """Output Analysis and Diagnostics for MCMC
+
+ Provides functions for summarizing and plotting the output from Markov
+ Chain Monte Carlo (MCMC) simulations, as well as diagnostic tests of
+ convergence to the equilibrium distribution of the Markov chain."""
homepage = "https://cloud.r-project.org/package=coda"
url = "https://cloud.r-project.org/src/contrib/coda_0.19-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/coda"
+ version('0.19-4', sha256='422d3cfd34797a3631e9c4812431940599c0ca4bb9937797bed07b7b1d6fe58f')
version('0.19-3', sha256='d3df1fc848bcf1af8fae13d61eeab60e99a3d4b4db384bec4326f909f502c5d6')
version('0.19-2', sha256='678a7e6a87a2723089daeb780ea37ac3d4319b37eabe26928ea3fa9c9b1eda0d')
version('0.19-1', sha256='d41ff5731da6805170769dba75dd011ab33f916d15b2336001f279e21a524491')
diff --git a/var/spack/repos/builtin/packages/r-codetools/package.py b/var/spack/repos/builtin/packages/r-codetools/package.py
index a1e189a942..1b8d808491 100644
--- a/var/spack/repos/builtin/packages/r-codetools/package.py
+++ b/var/spack/repos/builtin/packages/r-codetools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,8 @@ class RCodetools(RPackage):
url = "https://cloud.r-project.org/src/contrib/codetools_0.2-15.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/codetools"
- version('0.2-16', sha256='f67a66175cb5d8882457d1e9b91ea2f16813d554fa74f80c1fd6e17cf1877501')
+ version('0.2-18', sha256='1a9ea6b9792dbd1688078455929385acc3a5e4bef945c77bec1261fa4a084c28')
+ version('0.2-16', sha256='c276757c3adabaf700f2ea25835892b09bc1bd438ebd17c805ea9073ed8a74b6')
version('0.2-15', sha256='4e0798ed79281a614f8cdd199e25f2c1bd8f35ecec902b03016544bd7795fa40')
version('0.2-14', sha256='270d603b89076081af8d2db0256927e55ffeed4c27309d50deea75b444253979')
diff --git a/var/spack/repos/builtin/packages/r-codex/package.py b/var/spack/repos/builtin/packages/r-codex/package.py
index 11b161ce43..02ad9e9496 100644
--- a/var/spack/repos/builtin/packages/r-codex/package.py
+++ b/var/spack/repos/builtin/packages/r-codex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,10 @@ from spack import *
class RCodex(RPackage):
- """A normalization and copy number variation calling procedure for whole
+ """A Normalization and Copy Number Variation Detection Method for Whole
+ Exome Sequencing
+
+ A normalization and copy number variation calling procedure for whole
exome DNA sequencing data. CODEX relies on the availability of multiple
samples processed using the same sequencing pipeline for normalization, and
does not require matched controls. The normalization model in CODEX
@@ -20,6 +23,7 @@ class RCodex(RPackage):
homepage = "http://www.bioconductor.org/packages/release/bioc/html/CODEX.html"
git = "https://git.bioconductor.org/packages/CODEX"
+ version('1.22.0', commit='aa0ee4278111a46e0c790312b0526ba07aab22eb')
version('1.18.0', commit='9a95cccc7ff3fe587636317e21e39a07dddf80bc')
depends_on('r@3.2.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-coin/package.py b/var/spack/repos/builtin/packages/r-coin/package.py
index 5e65ba4922..91fe394026 100644
--- a/var/spack/repos/builtin/packages/r-coin/package.py
+++ b/var/spack/repos/builtin/packages/r-coin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RCoin(RPackage):
- """Conditional inference procedures for the general independence problem
+ """Conditional Inference Procedures in a Permutation Test Framework
+
+ Conditional inference procedures for the general independence problem
including two-sample, K-sample (non-parametric ANOVA), correlation,
censored, ordered and multivariate problems."""
@@ -15,6 +17,7 @@ class RCoin(RPackage):
url = "https://cloud.r-project.org/src/contrib/coin_1.1-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/coin"
+ version('1.3-1', sha256='5de2519a6e2b059bba9d74c58085cccaff1aaaa0454586ed164a108ebd1b2062')
version('1.3-0', sha256='adcebb37e0a7dfddbf8ec1e09c12a809bd76d90b5b8ff2b1048a75252ba11ef8')
version('1.2-2', sha256='d518065d3e1eb00121cb4e0200e1e4ae6b68eca6e249afc38bbffa35d24105bb')
version('1.1-3', sha256='8b88ecc25903c83539dfc73cdc31a160e2aa4a7bea1773b22c79133d2f006035')
@@ -22,8 +25,8 @@ class RCoin(RPackage):
depends_on('r@2.14.0:', when='@:1.2-2', type=('build', 'run'))
depends_on('r@3.4.0:', when='@1.3-0:', type=('build', 'run'))
depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-libcoin@1.0-0:', when='@1.3-0:', type=('build', 'run'))
+ depends_on('r-matrixstats@0.54.0:', when='@1.3-0:', type=('build', 'run'))
depends_on('r-modeltools@0.2-9:', type=('build', 'run'))
depends_on('r-mvtnorm@1.0-5:', type=('build', 'run'))
depends_on('r-multcomp', type=('build', 'run'))
- depends_on('r-libcoin@1.0-0:', when='@1.3-0:', type=('build', 'run'))
- depends_on('r-matrixstats@0.54.0:', when='@1.3-0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-colorspace/package.py b/var/spack/repos/builtin/packages/r-colorspace/package.py
index 8e1d6a700b..725591c3b2 100644
--- a/var/spack/repos/builtin/packages/r-colorspace/package.py
+++ b/var/spack/repos/builtin/packages/r-colorspace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,29 @@ from spack import *
class RColorspace(RPackage):
- """Carries out mapping between assorted color spaces including RGB, HSV,
- HLS, CIEXYZ, CIELUV, HCL (polar CIELUV), CIELAB and polar CIELAB.
- Qualitative, sequential, and diverging color palettes based on HCL colors
- are provided."""
+ """A Toolbox for Manipulating and Assessing Colors and Palettes
+
+ Carries out mapping between assorted color spaces including RGB, HSV, HLS,
+ CIEXYZ, CIELUV, HCL (polar CIELUV), CIELAB, and polar CIELAB. Qualitative,
+ sequential, and diverging color palettes based on HCL colors are provided
+ along with corresponding ggplot2 color scales. Color palette choice is
+ aided by an interactive app (with either a Tcl/Tk or a shiny graphical user
+ interface) and shiny apps with an HCL color picker and a color vision
+ deficiency emulator. Plotting functions for displaying and assessing
+ palettes include color swatches, visualizations of the HCL space, and
+ trajectories in HCL and/or RGB spectrum. Color manipulation functions
+ include: desaturation, lightening/darkening, mixing, and simulation of
+ color vision deficiencies (deutanomaly, protanomaly, tritanomaly). Details
+ can be found on the project web page at
+ <http://colorspace.R-Forge.R-project.org/> and in the accompanying
+ scientific paper: Zeileis et al. (2020, Journal of Statistical Software,
+ <doi:10.18637/jss.v096.i01>)."""
homepage = "https://cloud.r-project.org/package=colorspace"
url = "https://cloud.r-project.org/src/contrib/colorspace_1.3-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/colorspace"
+ version('2.0-0', sha256='4e6a53af9918db282cefdc71eaa30f507d4d1d682bcfb74cb0dd68a0b282018e')
version('1.4-1', sha256='693d713a050f8bfecdb7322739f04b40d99b55aed168803686e43401d5f0d673')
version('1.4-0', sha256='ce003c5958dd704697959e9dc8a108c8cb568f8d78ece113235732afc5dff556')
version('1.3-2', sha256='dd9fd2342b650456901d014e7ff6d2e201f8bec0b555be63b1a878d2e1513e34')
diff --git a/var/spack/repos/builtin/packages/r-colourpicker/package.py b/var/spack/repos/builtin/packages/r-colourpicker/package.py
new file mode 100644
index 0000000000..97620f0d7c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-colourpicker/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RColourpicker(RPackage):
+ """A Colour Picker Tool for Shiny and for Selecting Colours in Plots:
+
+ A colour picker that can be used as an input in 'Shiny' apps or Rmarkdown
+ documents. The colour picker supports alpha opacity, custom colour
+ palettes, and many more options. A Plot Colour Helper tool is available as
+ an 'RStudio' Addin, which helps you pick colours to use in your plots. A
+ more generic Colour Picker 'RStudio' Addin is also provided to let you
+ select colours to use in your R code."""
+
+ homepage = "https://github.com/daattali/colourpicker"
+ cran = "colourpicker"
+
+ version('1.1.0', sha256='2dfbb6262d187d3b17357ff9c22670ced3621feda5b2a2a500558478e4d551e2')
+
+ depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-htmltools', type=('build', 'run'))
+ depends_on('r-htmlwidgets@0.7:', type=('build', 'run'))
+ depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-miniui@0.1.1:', type=('build', 'run'))
+ depends_on('r-shiny@0.11.1:', type=('build', 'run'))
+ depends_on('r-shinyjs@2.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-combinat/package.py b/var/spack/repos/builtin/packages/r-combinat/package.py
index 25323c66c5..ee3cfd134a 100644
--- a/var/spack/repos/builtin/packages/r-combinat/package.py
+++ b/var/spack/repos/builtin/packages/r-combinat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-commonmark/package.py b/var/spack/repos/builtin/packages/r-commonmark/package.py
index 79d831d895..b2ff563661 100644
--- a/var/spack/repos/builtin/packages/r-commonmark/package.py
+++ b/var/spack/repos/builtin/packages/r-commonmark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-complexheatmap/package.py b/var/spack/repos/builtin/packages/r-complexheatmap/package.py
index 6d4469ed09..71309ea39f 100644
--- a/var/spack/repos/builtin/packages/r-complexheatmap/package.py
+++ b/var/spack/repos/builtin/packages/r-complexheatmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RComplexheatmap(RPackage):
- """Make Complex Heatmaps.
+ """Make Complex Heatmaps
Complex heatmaps are efficient to visualize associations between
different sources of data sets and reveal potential patterns. Here the
@@ -17,6 +17,7 @@ class RComplexheatmap(RPackage):
homepage = "https://bioconductor.org/packages/ComplexHeatmap"
git = "https://git.bioconductor.org/packages/ComplexHeatmap.git"
+ version('2.6.2', commit='0383bada2c76dc3dde71cf6a625016b619aec4d3')
version('2.0.0', commit='97863d8ddfe36a52df0149b0b040dc386a03d2e4')
version('1.20.0', commit='1501ecc92fda07efa3652e41626b21741951ce0f')
version('1.18.1', commit='be0dd9d666a219c61335efe0dac50b2eed2a8825')
@@ -25,16 +26,18 @@ class RComplexheatmap(RPackage):
depends_on('r@3.1.2:', type=('build', 'run'))
depends_on('r-circlize@0.3.4:', type=('build', 'run'))
+ depends_on('r-circlize@0.4.1:', when='@1.17.1:', type=('build', 'run'))
+ depends_on('r-circlize@0.4.5:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-getoptlong', type=('build', 'run'))
depends_on('r-colorspace', type=('build', 'run'))
+ depends_on('r-clue', when='@2.0.0:', type=('build', 'run'))
depends_on('r-rcolorbrewer', type=('build', 'run'))
- depends_on('r-dendextend@1.0.1:', when='@1.14.0:1.17.1', type=('build', 'run'))
depends_on('r-globaloptions@0.0.10:', type=('build', 'run'))
-
- depends_on('r-circlize@0.4.1:', when='@1.17.1:', type=('build', 'run'))
-
depends_on('r-globaloptions@0.1.0:', when='@1.20.0:', type=('build', 'run'))
-
- depends_on('r-circlize@0.4.5:', when='@2.0.0:', type=('build', 'run'))
- depends_on('r-clue', when='@2.0.0:', type=('build', 'run'))
depends_on('r-png', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-cairo', when='@2.6.2:', type=('build', 'run'))
+ depends_on('r-digest', when='@2.6.2:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.26.1:', when='@2.6.2:', type=('build', 'run'))
+ depends_on('r-iranges', when='@2.6.2:', type=('build', 'run'))
+ depends_on('r-matrixstats', when='@2.6.2:', type=('build', 'run'))
+ depends_on('r-dendextend@1.0.1:', when='@1.14.0:1.17.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-compositions/package.py b/var/spack/repos/builtin/packages/r-compositions/package.py
index 49c8c48e9c..4f6c43359f 100644
--- a/var/spack/repos/builtin/packages/r-compositions/package.py
+++ b/var/spack/repos/builtin/packages/r-compositions/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,22 @@ from spack import *
class RCompositions(RPackage):
- """Compositional Data Analysis"""
+ """Compositional Data Analysis
+
+ Provides functions for the consistent analysis of compositional data (e.g.
+ portions of substances) and positive numbers (e.g. concentrations) in the
+ way proposed by J. Aitchison and V. Pawlowsky-Glahn."""
homepage = "https://cloud.r-project.org/package=compositions"
url = "https://cloud.r-project.org/src/contrib/compositions_1.40-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/compositions"
+ version('2.0-1', sha256='84a291308faf858e5a9d9570135c2da5e57b0887f407903485fa85d09da61a0f')
version('1.40-2', sha256='110d71ae000561987cb73fc76cd953bd69d37562cb401ed3c36dca137d01b78a')
depends_on('r@2.2.0:', type=('build', 'run'))
depends_on('r-tensora', type=('build', 'run'))
depends_on('r-robustbase', type=('build', 'run'))
- depends_on('r-energy', type=('build', 'run'))
depends_on('r-bayesm', type=('build', 'run'))
+ depends_on('r-mass', when='@2.0-1:', type=('build', 'run'))
+ depends_on('r-energy', when='@:1.40-2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-compquadform/package.py b/var/spack/repos/builtin/packages/r-compquadform/package.py
new file mode 100644
index 0000000000..2cd7184238
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-compquadform/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RCompquadform(RPackage):
+ """Distribution Function of Quadratic Forms in Normal Variables:
+
+ Computes the distribution function of quadratic forms in normal variables
+ using Imhof's method, Davies's algorithm, Farebrother's algorithm or Liu et
+ al.'s algorithm."""
+
+ cran = "CompQuadForm"
+
+ version('1.4.3', sha256='042fc56c800dd8f5f47a017e2efa832caf74f0602824abf7099898d9708660c4')
diff --git a/var/spack/repos/builtin/packages/r-condop/package.py b/var/spack/repos/builtin/packages/r-condop/package.py
index 2a51e5f3db..bc15240ddd 100644
--- a/var/spack/repos/builtin/packages/r-condop/package.py
+++ b/var/spack/repos/builtin/packages/r-condop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-conquer/package.py b/var/spack/repos/builtin/packages/r-conquer/package.py
new file mode 100644
index 0000000000..9051a0de80
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-conquer/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RConquer(RPackage):
+ """Convolution-Type Smoothed Quantile Regression
+
+ Fast and accurate convolution-type smoothed quantile regression.
+ Implemented using Barzilai-Borwein gradient descent with a Huber regression
+ warm start. Construct confidence intervals for regression coefficients
+ using multiplier bootstrap."""
+
+ homepage = "https://github.com/XiaoouPan/conquer"
+ url = "https://cloud.r-project.org/src/contrib/conquer_1.0.2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/conquer"
+
+ version('1.0.2', sha256='542f6154ce1ffec0c1b4dd4e1f5b86545015f4b378c4c66a0840c65c57d674ff')
+
+ depends_on('r@3.5.0:', type=('build', 'run'))
+ depends_on('r-rcpp@1.0.3:', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
+ depends_on('r-rcpparmadillo@0.9.850.1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-construct/package.py b/var/spack/repos/builtin/packages/r-construct/package.py
index 04ca748153..130fc7e8d8 100644
--- a/var/spack/repos/builtin/packages/r-construct/package.py
+++ b/var/spack/repos/builtin/packages/r-construct/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,24 +7,32 @@ from spack import *
class RConstruct(RPackage):
- """conStruct: Models Spatially Continuous and Discrete Population
- GeneticStructure"""
+ """Models Spatially Continuous and Discrete Population GeneticStructure
+
+ A method for modeling genetic data as a combination of discrete layers,
+ within each of which relatedness may decay continuously with geographic
+ distance. This package contains code for running analyses (which are
+ implemented in the modeling language 'rstan') and visualizing and
+ interpreting output. See the paper for more details on the model and its
+ utility."""
homepage = "https://cloud.r-project.org/package=conStruct"
url = "https://cloud.r-project.org/src/contrib/conStruct_1.0.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/conStruct"
+ version('1.0.4', sha256='4e585b718a361061bc1432cea46fc65f802fb0ef58e4516d33e1af99bbfe90ce')
version('1.0.3', sha256='b449c133a944ad05a28f84f312ed4ccbc1574c4659aa09c678618d2ae9008310')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.4.0:', type=('build', 'run'))
- depends_on('r-bh@1.66.0:', type=('build', 'run'))
- depends_on('r-caroline', type=('build', 'run'))
- depends_on('r-doparallel', type=('build', 'run'))
- depends_on('r-foreach', type=('build', 'run'))
- depends_on('r-gtools', type=('build', 'run'))
depends_on('r-rcpp@0.12.0:', type=('build', 'run'))
- depends_on('r-rcppeigen@0.3.3.3.0:', type=('build', 'run'))
depends_on('r-rstan@2.18.1:', type=('build', 'run'))
depends_on('r-rstantools@1.5.0:', type=('build', 'run'))
+ depends_on('r-caroline', type=('build', 'run'))
+ depends_on('r-gtools', type=('build', 'run'))
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-doparallel', type=('build', 'run'))
depends_on('r-stanheaders@2.18.0:', type=('build', 'run'))
+ depends_on('r-bh@1.66.0:', type=('build', 'run'))
+ depends_on('r-rcppeigen@0.3.3.3.0:', type=('build', 'run'))
depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-convevol/package.py b/var/spack/repos/builtin/packages/r-convevol/package.py
index e3771856a3..ca5c6b2c5b 100644
--- a/var/spack/repos/builtin/packages/r-convevol/package.py
+++ b/var/spack/repos/builtin/packages/r-convevol/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-copula/package.py b/var/spack/repos/builtin/packages/r-copula/package.py
index 0090a65a79..7a55eef570 100644
--- a/var/spack/repos/builtin/packages/r-copula/package.py
+++ b/var/spack/repos/builtin/packages/r-copula/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RCopula(RPackage):
- """Classes (S4) of commonly used elliptical, Archimedean, extreme-value and
+ """Multivariate Dependence with Copulas
+
+ Classes (S4) of commonly used elliptical, Archimedean, extreme-value and
other copula families, as well as their rotations, mixtures and
asymmetrizations. Nested Archimedean copulas, related tools and special
functions. Methods for density, distribution, random number generation,
@@ -24,9 +26,11 @@ class RCopula(RPackage):
url = "https://cloud.r-project.org/src/contrib/copula_0.999-20.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/copula"
+ version('1.0-1', sha256='d09b2ccffc7379e48b00952aa6b282baf502feebaf55cc44e93f881d7b909742')
version('0.999-20', sha256='7d3d47bce2dacb05b94a772f84dbf3d83c99ac2ac11e5f1b4b03d50d9d5c0fb0')
depends_on('r@3.2.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.0-1:', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-colorspace', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-corhmm/package.py b/var/spack/repos/builtin/packages/r-corhmm/package.py
index d4c8d6d5e0..ee1701b3f9 100644
--- a/var/spack/repos/builtin/packages/r-corhmm/package.py
+++ b/var/spack/repos/builtin/packages/r-corhmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,17 @@ from spack import *
class RCorhmm(RPackage):
- """corHMM: Analysis of Binary Character Evolution
+ """Hidden Markov Models of Character Evolution
- Fits a hidden rates model that allows different transition rate classes
- on different portions of a phylogeny by treating rate classes as hidden
- states in a Markov process and various other functions for evaluating
- models of binary character evolution."""
+ Fits hidden Markov models of discrete character evolution which allow
+ different transition rate classes on different portions of a phylogeny.
+ Beaulieu et al (2013) <doi:10.1093/sysbio/syt034>."""
homepage = "https://cloud.r-project.org/package=corHMM"
url = "https://cloud.r-project.org/src/contrib/corHMM_1.22.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/corHMM/"
+ version('2.6', sha256='726de9707ede8ef447915171a3abe1003a0e42fe8e17eb440442cac9adf8cdcf')
version('1.22', sha256='d262fa1183eab32087afb70f1789fabae6fb49bec01d627974c54a088a48b10d')
depends_on('r-ape', type=('build', 'run'))
@@ -25,7 +25,11 @@ class RCorhmm(RPackage):
depends_on('r-gensa', type=('build', 'run'))
depends_on('r-expm', type=('build', 'run'))
depends_on('r-numderiv', type=('build', 'run'))
- depends_on('r-nnet', type=('build', 'run'))
depends_on('r-corpcor', type=('build', 'run'))
+ depends_on('r-mass', when='@2.6:', type=('build', 'run'))
+ depends_on('r-nnet', type=('build', 'run'))
depends_on('r-phangorn', type=('build', 'run'))
+ depends_on('r-viridis', when='@2.6:', type=('build', 'run'))
depends_on('r-rmpfr', type=('build', 'run'))
+ depends_on('r-igraph', when='@2.6:', type=('build', 'run'))
+ depends_on('r-phytools', when='@2.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-corpcor/package.py b/var/spack/repos/builtin/packages/r-corpcor/package.py
index 2ecc478894..d92acc0e6d 100644
--- a/var/spack/repos/builtin/packages/r-corpcor/package.py
+++ b/var/spack/repos/builtin/packages/r-corpcor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-corrplot/package.py b/var/spack/repos/builtin/packages/r-corrplot/package.py
index 0cf25830ed..2e39e92df1 100644
--- a/var/spack/repos/builtin/packages/r-corrplot/package.py
+++ b/var/spack/repos/builtin/packages/r-corrplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-countrycode/package.py b/var/spack/repos/builtin/packages/r-countrycode/package.py
index b2b07ff2e4..f8b03108db 100644
--- a/var/spack/repos/builtin/packages/r-countrycode/package.py
+++ b/var/spack/repos/builtin/packages/r-countrycode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-covr/package.py b/var/spack/repos/builtin/packages/r-covr/package.py
index e2c60194db..f6b0c7332f 100644
--- a/var/spack/repos/builtin/packages/r-covr/package.py
+++ b/var/spack/repos/builtin/packages/r-covr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RCovr(RPackage):
- """Track and report code coverage for your package and (optionally)
+ """Test Coverage for Packages
+
+ Track and report code coverage for your package and (optionally)
upload the results to a coverage service like 'Codecov'
<http://codecov.io> or 'Coveralls' <http://coveralls.io>. Code
coverage is a measure of the amount of code being exercised by a
@@ -20,6 +22,7 @@ class RCovr(RPackage):
url = "https://cloud.r-project.org/src/contrib/covr_3.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/covr"
+ version('3.5.1', sha256='a54cfc3623ea56084158ac5d7fe33f216f45191f6dcddab9c9ed4ec1d9d8ac6c')
version('3.5.0', sha256='cb919912018130164a40803ac573a37dde2186678c058c03c6303d79604979df')
version('3.3.0', sha256='c0aa0bd7b2dc05effdc2367c59d45294f46858930d1b14efb393b205021fc65a')
version('3.2.1', sha256='ea90daa48011e4ac4431ae47ee02fad98f54b529fc3900281cbeef7a2edef0a0')
diff --git a/var/spack/repos/builtin/packages/r-cowplot/package.py b/var/spack/repos/builtin/packages/r-cowplot/package.py
index 8b5ba4e174..16fb5234cf 100644
--- a/var/spack/repos/builtin/packages/r-cowplot/package.py
+++ b/var/spack/repos/builtin/packages/r-cowplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,21 @@ from spack import *
class RCowplot(RPackage):
- """Some helpful extensions and modifications to the 'ggplot2'
- package. In particular, this package makes it easy to combine
- multiple 'ggplot2' plots into one and label them with letters,
- e.g. A, B, C, etc., as is often required for scientific
- publications. The package also provides a streamlined and clean
- theme that is used in the Wilke lab, hence the package name,
- which stands for Claus O. Wilke's plot package."""
+ """Streamlined Plot Theme and Plot Annotations for 'ggplot2'
+
+ Provides various features that help with creating publication-quality
+ figures with 'ggplot2', such as a set of themes, functions to align plots
+ and arrange them into complex compound figures, and functions that make it
+ easy to annotate plots and or mix plots with images. The package was
+ originally written for internal use in the Wilke lab, hence the name (Claus
+ O. Wilke's plot package). It has also been used extensively in the book
+ Fundamentals of Data Visualization."""
homepage = "https://cloud.r-project.org/package=cowplot"
url = "https://cloud.r-project.org/src/contrib/cowplot_0.8.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/cowplot"
+ version('1.1.1', sha256='c7dce625b456dffc59ba100c816e16226048d12fdd29a7335dc1f6f6e12eed48')
version('1.0.0', sha256='70f9a7c46d10f409d1599f1afc9fd3c947051cf2b430f01d903c64ef1e6c98a5')
version('0.9.3', sha256='3e10475fd7506ea9297ed72eb1a3acf858c6fa99d26e46fc39654eba000c3dcb')
version('0.9.2', sha256='8b92ce7f92937fde06b0cfb86c7634a39b3b2101e362cc55c4bec6b3fde1d28f')
@@ -28,8 +31,9 @@ class RCowplot(RPackage):
depends_on('r@3.3.0:', when='@:0.9.4', type=('build', 'run'))
depends_on('r@3.5.0:', when='@1.0.0:', type=('build', 'run'))
- depends_on('r-ggplot2@2.1.1:', type=('build', 'run'))
+ depends_on('r-ggplot2@2.1.1:', when='@:1.0.0', type=('build', 'run'))
+ depends_on('r-ggplot2@2.2.1:', when='@1.1.1:', type=('build', 'run'))
depends_on('r-gtable', type=('build', 'run'))
- depends_on('r-plyr@1.8.2:', when='@:0.9.9', type=('build', 'run'))
- depends_on('r-scales', type=('build', 'run'))
depends_on('r-rlang', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-plyr@1.8.2:', when='@:0.9.9', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cpp11/package.py b/var/spack/repos/builtin/packages/r-cpp11/package.py
new file mode 100644
index 0000000000..3177c36021
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-cpp11/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RCpp11(RPackage):
+ """cpp11: A C++11 Interface for R's C Interface
+
+ Provides a header only, C++11 interface to R's C interface. Compared to
+ other approaches 'cpp11' strives to be safe against long jumps from the C
+ API as well as C++ exceptions, conform to normal R function semantics and
+ supports interaction with 'ALTREP' vectors."""
+
+ homepage = "https://github.com/r-lib/cpp11"
+ url = "https://cloud.r-project.org/src/contrib/cpp11_0.2.5.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/cpp11"
+
+ version('0.2.5', sha256='6fef9306c0c3043252c987e77c99ef679b2ea46dffafae318dbeb38ad21a2e20')
diff --git a/var/spack/repos/builtin/packages/r-crayon/package.py b/var/spack/repos/builtin/packages/r-crayon/package.py
index ebb0aa75be..3c17bf51ea 100644
--- a/var/spack/repos/builtin/packages/r-crayon/package.py
+++ b/var/spack/repos/builtin/packages/r-crayon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-credentials/package.py b/var/spack/repos/builtin/packages/r-credentials/package.py
new file mode 100644
index 0000000000..3484a84368
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-credentials/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RCredentials(RPackage):
+ """Tools for Managing SSH and Git Credentials
+
+ Setup and retrieve HTTPS and SSH credentials for use with 'git' and other
+ services. For HTTPS remotes the package interfaces the 'git-credential'
+ utility which 'git' uses to store HTTP usernames and passwords. For SSH
+ remotes we provide convenient functions to find or generate appropriate SSH
+ keys. The package both helps the user to setup a local git installation,
+ and also provides a back-end for git/ssh client libraries to authenticate
+ with existing user credentials."""
+
+ homepage = "https://docs.ropensci.org/credentials"
+ url = "https://cloud.r-project.org/src/contrib/credentials_1.3.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/credentials"
+
+ version('1.3.0', sha256='c119ec26fd97b977c3b0cd1eb8fad3c59b84df6262c3adbf5ee9f3d6c9903ff1')
+
+ depends_on('r-openssl@1.3:', type=('build', 'run'))
+ depends_on('r-sys@2.1:', type=('build', 'run'))
+ depends_on('r-curl', type=('build', 'run'))
+ depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-askpass', type=('build', 'run'))
+ depends_on('git', type='run')
diff --git a/var/spack/repos/builtin/packages/r-crosstalk/package.py b/var/spack/repos/builtin/packages/r-crosstalk/package.py
index 63d29bda13..ad3abb0342 100644
--- a/var/spack/repos/builtin/packages/r-crosstalk/package.py
+++ b/var/spack/repos/builtin/packages/r-crosstalk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,23 @@ from spack import *
class RCrosstalk(RPackage):
- """Provides building blocks for allowing HTML widgets to communicate with
- each other, with Shiny or without (i.e. static .html files)."""
+ """Inter-Widget Interactivity for HTML Widgets
+
+ Provides building blocks for allowing HTML widgets to communicate with each
+ other, with Shiny or without (i.e. static .html files). Currently supports
+ linked brushing and filtering."""
homepage = "https://cloud.r-project.org/package=crosstalk"
url = "https://cloud.r-project.org/src/contrib/crosstalk_1.0.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/crosstalk"
+ version('1.1.0.1', sha256='36a70b10bc11826e314c05f9579fd791b9ac3b3a2cfed4d4ca74ce1ad991300e')
version('1.0.0', sha256='b31eada24cac26f24c9763d9a8cbe0adfd87b264cf57f8725027fe0c7742ca51')
depends_on('r-htmltools@0.3.5:', type=('build', 'run'))
+ depends_on('r-htmltools@0.3.6:', when='@1.1.0.1:', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
depends_on('r-lazyeval', type=('build', 'run'))
- depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-shiny@0.11:', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-ggplot2', when='@:1.0.0', type=('build', 'run'))
+ depends_on('r-shiny@0.11:', when='@:1.0.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-crul/package.py b/var/spack/repos/builtin/packages/r-crul/package.py
index 1f68e69287..7fa9254273 100644
--- a/var/spack/repos/builtin/packages/r-crul/package.py
+++ b/var/spack/repos/builtin/packages/r-crul/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,26 @@ from spack import *
class RCrul(RPackage):
- """crul: HTTP Client"""
+ """HTTP Client
+
+ A simple HTTP client, with tools for making HTTP requests, and mocking HTTP
+ requests. The package is built on R6, and takes inspiration from Ruby's
+ 'faraday' gem (<https://rubygems.org/gems/faraday>). The package name is a
+ play on curl, the widely used command line tool for HTTP, and this package
+ is built on top of the R package 'curl', an interface to 'libcurl'
+ (<https://curl.haxx.se/libcurl>)."""
homepage = "https://cloud.r-project.org/package=crul"
url = "https://cloud.r-project.org/src/contrib/crul_0.7.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/crul"
+ version('1.0.0', sha256='2ade500f6cf89b2d0ca8496b8d4df9937d6f802a35c9ad10d9fab8632cdb1027')
version('0.8.4', sha256='dbd950ad3b68402e5a5955615b1abcb5c9bdc846c93aa25f96a7a58913d04c8b')
version('0.7.4', sha256='c963dd666ae3fc89b661ce19fce2fa19a16fc3825e1502105cae98ceb92c6014')
depends_on('r-curl@3.3:', type=('build', 'run'))
- depends_on('r-httpcode@0.2.0:', type=('build', 'run'))
- depends_on('r-mime', type=('build', 'run'))
depends_on('r-r6@2.2.0:', type=('build', 'run'))
depends_on('r-urltools@1.6.0:', type=('build', 'run'))
+ depends_on('r-httpcode@0.2.0:', type=('build', 'run'))
depends_on('r-jsonlite', when='@0.8.4:', type=('build', 'run'))
+ depends_on('r-mime', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ctc/package.py b/var/spack/repos/builtin/packages/r-ctc/package.py
index 7fbe647f6c..2eedb9d528 100644
--- a/var/spack/repos/builtin/packages/r-ctc/package.py
+++ b/var/spack/repos/builtin/packages/r-ctc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RCtc(RPackage):
- """Cluster and Tree Conversion..
+ """Cluster and Tree Conversion.
Tools for export and import classification trees and clusters to other
programs"""
@@ -15,6 +15,7 @@ class RCtc(RPackage):
homepage = "https://bioconductor.org/packages/ctc"
git = "https://git.bioconductor.org/packages/ctc.git"
+ version('1.64.0', commit='35dbe620a21056b8f69890e6f9a7c320528d8621')
version('1.58.0', commit='c41df03ac149db20c5e337142142d61cfb9b43fb')
version('1.56.0', commit='cbd5befdda4630799f8fe0d868d83b094e3d352f')
version('1.54.0', commit='0c3df81dfc8fabe12e11884bed44b64e11fd6d4e')
diff --git a/var/spack/repos/builtin/packages/r-cubature/package.py b/var/spack/repos/builtin/packages/r-cubature/package.py
index e137d8bc59..7536a7d92a 100644
--- a/var/spack/repos/builtin/packages/r-cubature/package.py
+++ b/var/spack/repos/builtin/packages/r-cubature/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,21 @@ from spack import *
class RCubature(RPackage):
- """Adaptive multivariate integration over hypercubes"""
+ """Adaptive multivariate integration over hypercubes
+
+ R wrappers around the cubature C library of Steven G. Johnson for adaptive
+ multivariate integration over hypercubes and the Cuba C library of Thomas
+ Hahn for deterministic and Monte Carlo integration. Scalar and vector
+ interfaces for cubature and Cuba routines are provided"""
homepage = "https://cloud.r-project.org/package=cubature"
url = "https://cloud.r-project.org/src/contrib/cubature_1.1-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/cubature"
+ version('2.0.4.1', sha256='383fbdf49d1cdf760ad5d88d353e69118c7c663cde126c5bdd33b6fecc50d400')
version('2.0.3', sha256='79bf03ebdb64b0de1ef19d24051b9d922df9310254bee459bb47764522407a73')
version('2.0.2', sha256='641165c665ff490c523bccc05c42bb6851e42676b6b366b55fc442a51a8fbe8c')
version('1.1-2', sha256='0a05469bdc85d6bd8165a42a3fc5c35a06700d279e4e8b3cf4669df19edffeed')
depends_on('r-rcpp', when='@2.0.3:', type=('build', 'run'))
+ depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-cubist/package.py b/var/spack/repos/builtin/packages/r-cubist/package.py
index 9738b682ad..24ef01f6e4 100644
--- a/var/spack/repos/builtin/packages/r-cubist/package.py
+++ b/var/spack/repos/builtin/packages/r-cubist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RCubist(RPackage):
- """Regression modeling using rules with added instance-based corrections"""
+ """Rule- And Instance-Based Regression Modeling
+
+ Regression modeling using rules with added instance-based corrections"""
homepage = "https://cloud.r-project.org/package=Cubist"
url = "https://cloud.r-project.org/src/contrib/Cubist_0.0.19.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Cubist"
+ version('0.2.3', sha256='19845f585e073f316bb4bdf74b28a624e839561faeedd40ef5548960c5b1e1f4')
version('0.2.2', sha256='cd3e152cc72ab33f720a8fb6b8b6787171e1c037cfda48f1735ab692ed6d85d4')
version('0.2.1', sha256='b310c3f166f15fa3e16f8d110d39931b0bb1b0aa8d0c9ac2af5a9a45081588a3')
version('0.0.19', sha256='101379979acb12a58bcf32a912fef32d497b00263ebea918f2b85a2c32934aae')
diff --git a/var/spack/repos/builtin/packages/r-curl/package.py b/var/spack/repos/builtin/packages/r-curl/package.py
index f1a7a2de60..948410fb08 100644
--- a/var/spack/repos/builtin/packages/r-curl/package.py
+++ b/var/spack/repos/builtin/packages/r-curl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-dada2/package.py b/var/spack/repos/builtin/packages/r-dada2/package.py
index da4be89f98..b4b82ae150 100644
--- a/var/spack/repos/builtin/packages/r-dada2/package.py
+++ b/var/spack/repos/builtin/packages/r-dada2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-data-table/package.py b/var/spack/repos/builtin/packages/r-data-table/package.py
index 87d5735541..000f1d802e 100644
--- a/var/spack/repos/builtin/packages/r-data-table/package.py
+++ b/var/spack/repos/builtin/packages/r-data-table/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RDataTable(RPackage):
- """Fast aggregation of large data (e.g. 100GB in RAM), fast ordered joins,
+ """Extension of `data.frame`
+
+ Fast aggregation of large data (e.g. 100GB in RAM), fast ordered joins,
fast add/modify/delete of columns by group using no copies at all, list
columns and a fast file reader (fread). Offers a natural and flexible
syntax, for faster development."""
@@ -16,6 +18,7 @@ class RDataTable(RPackage):
url = "https://cloud.r-project.org/src/contrib/data.table_1.10.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/data.table"
+ version('1.13.6', sha256='d50cdd4c4f89cabf83baa9114e49a3b8179f403c499d6e0be7791a44ffcd3e9b')
version('1.12.8', sha256='d3a75f3a355ff144cc20a476041617e21fcf2a9f79265fd9bbd4693f3671f9dc')
version('1.12.2', sha256='db55c18f0d703a8bc1c806dd1f7551bb405cb867717f52ef9dd64405394d22f5')
version('1.12.0', sha256='611b112123dbd4ebd5200770fcdfaaeaab622adeb2b290d36018d3092742e3f7')
@@ -34,3 +37,4 @@ class RDataTable(RPackage):
version('1.9.6', sha256='6f74c349c1731823aef6899edcf18418454167d04eba983e3a6fe17ee9fd236e')
depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/r-dbi/package.py b/var/spack/repos/builtin/packages/r-dbi/package.py
index cca20df5ec..e62a09ed2d 100644
--- a/var/spack/repos/builtin/packages/r-dbi/package.py
+++ b/var/spack/repos/builtin/packages/r-dbi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-dbplyr/package.py b/var/spack/repos/builtin/packages/r-dbplyr/package.py
index b73d44a34f..3ed51d78cc 100644
--- a/var/spack/repos/builtin/packages/r-dbplyr/package.py
+++ b/var/spack/repos/builtin/packages/r-dbplyr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,18 @@ from spack import *
class RDbplyr(RPackage):
- """A 'dplyr' back end for databases that allows you to work with remote
- database tables as if they are in-memory data frames. Basic features
- works with any database that has a 'DBI' back end; more advanced
- features require 'SQL' translation to be provided by the package
- author."""
+ """A 'dplyr' Back End for Databases
+
+ A 'dplyr' back end for databases that allows you to work with remote
+ database tables as if they are in-memory data frames. Basic features works
+ with any database that has a 'DBI' back end; more advanced features require
+ 'SQL' translation to be provided by the package author."""
homepage = "https://github.com/tidyverse/dbplyr"
url = "https://cloud.r-project.org/src/contrib/dbplyr_1.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/dbplyr"
+ version('2.0.0', sha256='ecd71936ecfefbdda0fad24e52653ac9c0913e01126e467c92c8ba9de37b4069')
version('1.4.2', sha256='b783f0da2c09a1e63f41168b02c0715b08820f02a351f7ab0aaa688432754de0')
version('1.4.1', sha256='cfe829f56acdc785c5af21bf3927cf08327504d78c4ae1477c405c81b131da95')
version('1.2.2', sha256='9d410bb0055fffe10f1f8da55a5b24d98322c7b571d74df61427d5888332bc48')
@@ -29,8 +31,12 @@ class RDbplyr(RPackage):
depends_on('r-dbi@1.0.0:', type=('build', 'run'))
depends_on('r-dplyr@0.8.0:', type=('build', 'run'))
depends_on('r-glue@1.2.0:', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-magrittr', when='@2.0.0:', type=('build', 'run'))
depends_on('r-purrr@0.2.5:', type=('build', 'run'))
depends_on('r-r6@2.2.2:', type=('build', 'run'))
depends_on('r-rlang@0.2.0:', type=('build', 'run'))
depends_on('r-tibble@1.4.2:', type=('build', 'run'))
depends_on('r-tidyselect@0.2.4:', type=('build', 'run'))
+ depends_on('r-blob@1.2.0:', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-withr', when='@2.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-debugme/package.py b/var/spack/repos/builtin/packages/r-debugme/package.py
index 9d8146d31b..22f591021a 100644
--- a/var/spack/repos/builtin/packages/r-debugme/package.py
+++ b/var/spack/repos/builtin/packages/r-debugme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-decipher/package.py b/var/spack/repos/builtin/packages/r-decipher/package.py
index d4d2a881b8..4da3f90c1f 100644
--- a/var/spack/repos/builtin/packages/r-decipher/package.py
+++ b/var/spack/repos/builtin/packages/r-decipher/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,14 @@ from spack import *
class RDecipher(RPackage):
- """Tools for curating, analyzing, and manipulating biological sequences."""
+ """Tools for curating, analyzing, and manipulating biological sequences
+
+ A toolset for deciphering and managing biological sequences."""
homepage = "https://bioconductor.org/packages/DECIPHER"
git = "https://git.bioconductor.org/packages/DECIPHER.git"
+ version('2.18.1', commit='6a708421550e6705d05e2fb50a0f5ab4f9041cb0')
version('2.12.0', commit='658ae23870383b25b96a03a18d4ecac228a2650f')
version('2.10.2', commit='db7b017c9050a7ec1d4daa15352994890095e9c3')
version('2.8.1', commit='35aa66f48e06b93a98d1060c90c44d34ce05ccd9')
@@ -19,6 +22,7 @@ class RDecipher(RPackage):
version('2.4.0', commit='1a57b8e4c7d7dec1c233f79c9a88d3705e0ad432')
depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@2.18.1:', type=('build', 'run'))
depends_on('r-biostrings@2.35.12:', type=('build', 'run'))
depends_on('r-rsqlite@1.1:', type=('build', 'run'))
depends_on('r-dbi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-delayedarray/package.py b/var/spack/repos/builtin/packages/r-delayedarray/package.py
index b4f79d524c..ad8c4f0f60 100644
--- a/var/spack/repos/builtin/packages/r-delayedarray/package.py
+++ b/var/spack/repos/builtin/packages/r-delayedarray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RDelayedarray(RPackage):
"""A unified framework for working transparently with on-disk and in-memory
- array-like datasets.
+ array-like datasets
Wrapping an array-like object (typically an on-disk object) in a
DelayedArray object allows one to perform common array operations on it
@@ -21,6 +21,7 @@ class RDelayedarray(RPackage):
homepage = "https://bioconductor.org/packages/DelayedArray"
git = "https://git.bioconductor.org/packages/DelayedArray.git"
+ version('0.16.1', commit='c95eba771ad3fee1b49ec38c51cd8fd1486feadc')
version('0.10.0', commit='4781d073110a3fd1e20c4083b6b2b0f260d0cb0a')
version('0.8.0', commit='7c23cf46558de9dbe7a42fba516a9bb660a0f19f')
version('0.6.6', commit='bdb0ac0eee71edd40ccca4808f618fa77f595a64')
@@ -28,21 +29,20 @@ class RDelayedarray(RPackage):
version('0.2.7', commit='909c2ce1665ebae2543172ead50abbe10bd42bc4')
depends_on('r@3.4:', type=('build', 'run'))
+ depends_on('r-matrix', when='@0.10.0:', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.25.1:', when='@0.6.6:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.27.1:', when='@0.8.0:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.31.5:', when='@0.16.1:', type=('build', 'run'))
+ depends_on('r-matrixgenerics@1.1.3:', when='@0.16.1:', type=('build', 'run'))
depends_on('r-s4vectors@0.14.3:', type=('build', 'run'))
- depends_on('r-iranges', type=('build', 'run'))
- depends_on('r-matrixstats', type=('build', 'run'))
-
depends_on('r-s4vectors@0.15.3:', when='@0.4.1:', type=('build', 'run'))
- depends_on('r-iranges@2.11.17:', when='@0.4.1:', type=('build', 'run'))
-
- depends_on('r-biocgenerics@0.25.1:', when='@0.6.6:', type=('build', 'run'))
depends_on('r-s4vectors@0.17.43:', when='@0.6.6:', type=('build', 'run'))
- depends_on('r-biocparallel', when='@0.6.6:', type=('build', 'run'))
-
- depends_on('r-biocgenerics@0.27.1:', when='@0.8.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.19.15:', when='@0.8.0:', type=('build', 'run'))
-
depends_on('r-s4vectors@0.21.7:', when='@0.10.0:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.2:', when='@0.16.1:', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-iranges@2.11.17:', when='@0.4.1:', type=('build', 'run'))
depends_on('r-iranges@2.17.3:', when='@0.10.0:', type=('build', 'run'))
- depends_on('r-matrix', when='@0.10.0:', type=('build', 'run'))
+ depends_on('r-matrixstats', when='@:0.10.0', type=('build', 'run'))
+ depends_on('r-biocparallel', when='@0.6.6:0.10.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-delayedmatrixstats/package.py b/var/spack/repos/builtin/packages/r-delayedmatrixstats/package.py
index 3898c8d15f..4f8ac5e4cd 100644
--- a/var/spack/repos/builtin/packages/r-delayedmatrixstats/package.py
+++ b/var/spack/repos/builtin/packages/r-delayedmatrixstats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RDelayedmatrixstats(RPackage):
- """Functions that Apply to Rows and Columns of 'DelayedMatrix' Objects.
+ """Functions that Apply to Rows and Columns of 'DelayedMatrix' Objects
A port of the 'matrixStats' API for use with DelayedMatrix objects from
the 'DelayedArray' package. High-performing functions operating on rows
@@ -16,26 +16,29 @@ class RDelayedmatrixstats(RPackage):
for subsetted calculations such that both memory usage and processing
time is minimized."""
- homepage = "https://bioconductor.org/packages/DelayedMatrixStats"
+ homepage = "https://github.com/PeteHaitch/DelayedMatrixStats"
git = "https://git.bioconductor.org/packages/DelayedMatrixStats.git"
+ version('1.12.3', commit='2b3091dfa9b3bab914e3a4157182063714ba86ae')
version('1.6.1', commit='4378d1898a403305a94b122c4f36d1215fa7708d')
version('1.4.0', commit='eb5b390ef99651fe87a346848f807de95afe8971')
version('1.2.0', commit='de868e730be6280dfad41a280ab09f4d3083c9ac')
version('1.0.3', commit='e29a3444980ff727c5b12286884b06dfaebf5b5b')
+ depends_on('r-matrixgenerics', when='@1.12.2:', type=('build', 'run'))
depends_on('r-delayedarray', type=('build', 'run'))
+ depends_on('r-delayedarray@0.5.27:', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.7.37:', when='@1.4.0:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.9.8:', when='@1.6.1:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.15.3:', when='@1.12.2:', type=('build', 'run'))
depends_on('r-matrixstats@0.53.1:', type=('build', 'run'))
+ depends_on('r-matrixstats@0.55.0:', when='@1.6.1:', type=('build', 'run'))
+ depends_on('r-matrixstats@0.56.0:', when='@1.12.2:', type=('build', 'run'))
+ depends_on('r-sparsematrixstats', when='@1.12.2:', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
depends_on('r-s4vectors', type=('build', 'run'))
- depends_on('r-iranges', type=('build', 'run'))
-
- depends_on('r-delayedarray@0.5.27:', when='@1.2.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.17.5:', when='@1.2.0:', type=('build', 'run'))
-
- depends_on('r-delayedarray@0.7.37:', when='@1.4.0:', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
depends_on('r-hdf5array@1.7.10:', when='@1.4.0:', type=('build', 'run'))
+ depends_on('r-hdf5array@1.17.2:', when='@1.12.2:', type=('build', 'run'))
depends_on('r-biocparallel', when='@1.4.0:', type=('build', 'run'))
-
- depends_on('r-delayedarray@0.9.8:', when='@1.6.1:', type=('build', 'run'))
- depends_on('r-matrixstats@0.55.0:', when='@1.6.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-deldir/package.py b/var/spack/repos/builtin/packages/r-deldir/package.py
index 5654a5c403..eed65df65e 100644
--- a/var/spack/repos/builtin/packages/r-deldir/package.py
+++ b/var/spack/repos/builtin/packages/r-deldir/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RDeldir(RPackage):
- """Calculates the Delaunay triangulation and the Dirichlet or Voronoi
+ """Delaunay Triangulation and Dirichlet (Voronoi) Tessellation
+
+ Calculates the Delaunay triangulation and the Dirichlet or Voronoi
tessellation (with respect to the entire plane) of a planar point set.
Plots triangulations and tessellations in various ways. Clips
tessellations to sub-windows. Calculates perimeters of tessellations.
@@ -17,8 +19,10 @@ class RDeldir(RPackage):
url = "https://cloud.r-project.org/src/contrib/deldir_0.1-14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/deldir"
+ version('0.2-3', sha256='2d24800f5ec6ad9dc57b9b265365b29c07717f4562d8f3e6344336d3340c364e')
version('0.1-23', sha256='e0112bce9fc94daf73596a0fff9b3958b80872e3bbb487be73e157b13a6f201d')
version('0.1-21', sha256='b9dabcc1813c7a0f8edaf720a94bdd611a83baf3d3e52e861d352369e815690c')
version('0.1-14', sha256='89d365a980ef8589971e5d311c6bd59fe32c48dbac8000a880b9655032c99289')
depends_on('r@0.99:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.2-3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dendextend/package.py b/var/spack/repos/builtin/packages/r-dendextend/package.py
index d5bd7f4af0..7e036cbd24 100644
--- a/var/spack/repos/builtin/packages/r-dendextend/package.py
+++ b/var/spack/repos/builtin/packages/r-dendextend/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,19 @@ from spack import *
class RDendextend(RPackage):
- """dendextend: Extending 'Dendrogram' Functionality in R"""
+ """Extending 'Dendrogram' Functionality in R
+
+ Offers a set of functions for extending 'dendrogram' objects in R, letting
+ you visualize and compare trees of 'hierarchical clusterings'. You can (1)
+ Adjust a tree's graphical parameters - the color, size, type, etc of its
+ branches, nodes and labels. (2) Visually and statistically compare
+ different 'dendrograms' to one another."""
homepage = "https://cloud.r-project.org/package=dendextend"
url = "https://cloud.r-project.org/src/contrib/dendextend_1.5.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/dendextend"
+ version('1.14.0', sha256='3789461bc474e146b077ad26566b1fa05be32fc7e57ab1fb5e78bdabcc797858')
version('1.12.0', sha256='b487fed8c1878a23b9e28394ee11f16a1831b76c90793eb486e6963c7162fa55')
version('1.10.0', sha256='88f0fb3362d69144daf4f35d0ea09f32c2df1adf614e040327a42552a8fd3224')
version('1.5.2', sha256='8228cf9cfd31ec30038aaa61a35959179bad748582d796999cd9ad78152a5f12')
@@ -20,6 +27,6 @@ class RDendextend(RPackage):
depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r-magrittr@1.0.1:', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-viridis', type=('build', 'run'))
depends_on('r-fpc', when='@:1.10.0', type=('build', 'run'))
depends_on('r-whisker', when='@:1.5.2', type=('build', 'run'))
- depends_on('r-viridis', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-deoptim/package.py b/var/spack/repos/builtin/packages/r-deoptim/package.py
index e4dc1f87a6..6fd5364b31 100644
--- a/var/spack/repos/builtin/packages/r-deoptim/package.py
+++ b/var/spack/repos/builtin/packages/r-deoptim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,12 +8,15 @@ from spack import *
class RDeoptim(RPackage):
- """Implements the differential evolution algorithm for global optimization
+ """Global Optimization by Differential Evolution
+
+ Implements the differential evolution algorithm for global optimization
of a real-valued function of a real-valued parameter vector."""
homepage = "https://cloud.r-project.org/package=DEoptim"
url = "https://cloud.r-project.org/src/contrib/DEoptim_2.2-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/DEoptim"
+ version('2.2-5', sha256='ae12dedcd4a43994e811e7285f8c12bfdb688e7c99d65515cf7e8cb6db13955a')
version('2.2-4', sha256='0a547784090d1e9b93efc53768110621f35bed3692864f6ce5c0dda2ebd6d482')
version('2.2-3', sha256='af2120feea3a736ee7a5a93c6767d464abc0d45ce75568074b233405e73c9a5d')
diff --git a/var/spack/repos/builtin/packages/r-deoptimr/package.py b/var/spack/repos/builtin/packages/r-deoptimr/package.py
index 5531bc894b..ea7855b29b 100644
--- a/var/spack/repos/builtin/packages/r-deoptimr/package.py
+++ b/var/spack/repos/builtin/packages/r-deoptimr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-deriv/package.py b/var/spack/repos/builtin/packages/r-deriv/package.py
new file mode 100644
index 0000000000..521ac66fec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-deriv/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RDeriv(RPackage):
+ """Deriv: Symbolic Differentiation
+
+ R-based solution for symbolic differentiation. It admits user-defined
+ function as well as function substitution in arguments of functions to be
+ differentiated. Some symbolic simplification is part of the work."""
+
+ homepage = "https://cloud.r-project.org/package=Deriv"
+ url = "https://cloud.r-project.org/src/contrib/Deriv_4.1.3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/Deriv"
+
+ version('4.1.3', sha256='dbdbf5ed8babf706373ae33a937d013c46110a490aa821bcd158a70f761d0f8c')
+ version('4.1.2', sha256='c4b0c3f351f6df53778d48033460cf8674e7a7878fbc542085d66a9a78803ac9')
diff --git a/var/spack/repos/builtin/packages/r-desc/package.py b/var/spack/repos/builtin/packages/r-desc/package.py
index b3b61283ed..da96469f53 100644
--- a/var/spack/repos/builtin/packages/r-desc/package.py
+++ b/var/spack/repos/builtin/packages/r-desc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-deseq/package.py b/var/spack/repos/builtin/packages/r-deseq/package.py
index 107d581494..169828fc00 100644
--- a/var/spack/repos/builtin/packages/r-deseq/package.py
+++ b/var/spack/repos/builtin/packages/r-deseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RDeseq(RPackage):
"""Differential gene expression analysis based on the negative binomial
- distribution.
+ distribution
Estimate variance-mean dependence in count data from high-throughput
sequencing assays and test for differential expression based on a model
@@ -17,6 +17,7 @@ class RDeseq(RPackage):
homepage = "https://bioconductor.org/packages/DESeq"
git = "https://git.bioconductor.org/packages/DESeq.git"
+ version('1.42.0', commit='da76bc64e8c4073b58eaf1c93aa4e89bec5c4e50')
version('1.36.0', commit='db4af67b49d3bd8c321d19efbe9415cd2e4ddb7e')
version('1.34.1', commit='e86f1b03a30bc02de4bfd4a0759af2f65cb48c62')
version('1.32.0', commit='e3d623b815b53d79eae7cdd09d097cc6098d28c9')
diff --git a/var/spack/repos/builtin/packages/r-deseq2/package.py b/var/spack/repos/builtin/packages/r-deseq2/package.py
index 8d0fbc2900..a547f1cd9c 100644
--- a/var/spack/repos/builtin/packages/r-deseq2/package.py
+++ b/var/spack/repos/builtin/packages/r-deseq2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RDeseq2(RPackage):
"""Differential gene expression analysis based on the negative binomial
- distribution.
+ distribution
Estimate variance-mean dependence in count data from high-throughput
sequencing assays and test for differential expression based on a model
@@ -17,6 +17,7 @@ class RDeseq2(RPackage):
homepage = "https://bioconductor.org/packages/DESeq2"
git = "https://git.bioconductor.org/packages/DESeq2.git"
+ version('1.30.0', commit='f4b47b208ee26ab23fe65c345f907fcfe70b3f77')
version('1.24.0', commit='3ce7fbbebac526b726a6f85178063d02eb0314bf')
version('1.22.2', commit='3c6a89b61add635d6d468c7fa00192314f8ca4ce')
version('1.20.0', commit='7e88ea5c5e68473824ce0af6e10f19e22374cb7c')
@@ -24,6 +25,7 @@ class RDeseq2(RPackage):
version('1.16.1', commit='f41d9df2de25fb57054480e50bc208447a6d82fb')
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.23.18:', when='@1.30.0:', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
depends_on('r-genomicranges', type=('build', 'run'))
depends_on('r-summarizedexperiment@1.1.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-desolve/package.py b/var/spack/repos/builtin/packages/r-desolve/package.py
index 88918d33f5..df56b54656 100644
--- a/var/spack/repos/builtin/packages/r-desolve/package.py
+++ b/var/spack/repos/builtin/packages/r-desolve/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,28 @@ from spack import *
class RDesolve(RPackage):
- """Functions that solve initial value problems of a system of first-order
- ordinary differential equations ('ODE'), of partial differential
- equations ('PDE'), of differential algebraic equations ('DAE'), and of
- delay differential equations."""
+ """Solvers for Initial Value Problems of Differential Equations ('ODE',
+ 'DAE', 'DDE')
+
+ Functions that solve initial value problems of a system of first-order
+ ordinary differential equations ('ODE'), of partial differential equations
+ ('PDE'), of differential algebraic equations ('DAE'), and of delay
+ differential equations. The functions provide an interface to the FORTRAN
+ functions 'lsoda', 'lsodar', 'lsode', 'lsodes' of the 'ODEPACK' collection,
+ to the FORTRAN functions 'dvode', 'zvode' and 'daspk' and a
+ C-implementation of solvers of the 'Runge-Kutta' family with fixed or
+ variable time steps. The package contains routines designed for solving
+ 'ODEs' resulting from 1-D, 2-D and 3-D partial differential equations
+ ('PDE') that have been converted to 'ODEs' by numerical differencing."""
homepage = "https://cloud.r-project.org/package=deSolve"
url = "https://cloud.r-project.org/src/contrib/deSolve_1.20.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/deSolve"
+ version('1.28', sha256='4c55ef4cae841df91034382d277b483985af120240f87af587ff82177fdb5a49')
version('1.24', sha256='3aa52c822abb0348a904d5bbe738fcea2b2ba858caab9f2831125d07f0d57b42')
version('1.21', sha256='45c372d458fe4c7c11943d4c409517849b1be6782dc05bd9a74b066e67250c63')
version('1.20', sha256='56e945835b0c66d36ebc4ec8b55197b616e387d990788a2e52e924ce551ddda2')
depends_on('r@2.15.0:', type=('build', 'run'))
+ depends_on('r@3.3.0:', when='@1.28:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-devtools/package.py b/var/spack/repos/builtin/packages/r-devtools/package.py
index 385be67559..0241f11b64 100644
--- a/var/spack/repos/builtin/packages/r-devtools/package.py
+++ b/var/spack/repos/builtin/packages/r-devtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RDevtools(RPackage):
- """Collection of package development tools."""
+ """Tools to Make Developing R Packages Easier
+
+ Collection of package development tools."""
homepage = "https://github.com/hadley/devtools"
url = "https://cloud.r-project.org/src/contrib/devtools_1.12.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/devtools"
+ version('2.3.2', sha256='e5086106baef6bb925445dfdddb3cd5ff4f8fff96353365b135aba5618d1986d')
version('2.3.0', sha256='4fc375c171335c67bd71df4e0b1b3dff2ae3aa17b3e0566b790ba0808b39dcd0')
version('2.1.0', sha256='c1f75346a90adf0669b5508fe68cc78bd3b114c1303fa7d22bf90991edd9230d')
version('2.0.2', sha256='99a2fa957068254b8ecdb3fc2d50e2950230910ea31c314fc0e7d934e4bd1709')
@@ -22,41 +25,55 @@ class RDevtools(RPackage):
depends_on('r@3.0.2:', type=('build', 'run'))
depends_on('r-usethis@1.5.0:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-usethis@1.6.0:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-usethis@1.6.3:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-callr', when='@2.0.0:', type=('build', 'run'))
depends_on('r-callr@3.4.3:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-callr@3.4.4:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-cli', when='@2.0.0:', type=('build', 'run'))
depends_on('r-cli@2.0.2:', when='@2.3.0:', type=('build', 'run'))
depends_on('r-covr@3.5.0:', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-crayon@1.3.4:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-covr@3.5.1:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-desc@1.2.0:', when='@2.3.0:', type=('build', 'run'))
depends_on('r-dt@0.13:', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-digest', type=('build', 'run'))
- depends_on('r-digest@0.6.25:', when='@3.2.0:', type=('build', 'run'))
+ depends_on('r-dt@0.15:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-ellipsis@0.3.0:', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-glue@1.4.0:', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-git2r@0.23.0:', type=('build', 'run'))
- depends_on('r-git2r@0.26.1:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-ellipsis@0.3.1:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-httr@0.4:', type=('build', 'run'))
depends_on('r-httr@1.4.1:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-httr@1.4.2:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
depends_on('r-jsonlite@1.6.1:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-jsonlite@1.7.1:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-memoise@1.0.0:', type=('build', 'run'))
depends_on('r-memoise@1.1.0:', when='@2.3.0:', type=('build', 'run'))
depends_on('r-pkgbuild@1.0.3:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-pkgbuild@1.0.6:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-pkgbuild@1.1.0:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-pkgload@1.0.2:', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-pkgload@1.1.0:', when='@2.0.2:', type=('build', 'run'))
depends_on('r-rcmdcheck@1.3.3:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-remotes@2.1.0:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-remotes@2.1.1:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-remotes@2.2.0:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-rlang@0.4.5:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-rlang@0.4.7:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-roxygen2@6.1.1:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-roxygen2@7.1.0:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-roxygen2@7.1.1:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-rstudioapi@0.7.0:', type=('build', 'run'))
depends_on('r-rstudioapi@0.11:', when='@2.3.0:', type=('build', 'run'))
depends_on('r-rversions@2.0.1:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-rversions@2.0.2:', when='@2.3.2:', type=('build', 'run'))
depends_on('r-sessioninfo@1.1.1:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-testthat@2.1.1:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-testthat@2.3.2:', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-whisker', when='@:1.9.9', type=('build', 'run'))
depends_on('r-withr', type=('build', 'run'))
depends_on('r-withr@2.1.2:', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-withr@2.2.0:', when='@2.3.2:', type=('build', 'run'))
+ depends_on('r-crayon@1.3.4:', when='@2.3.0', type=('build', 'run'))
+ depends_on('r-digest', when='@:2.3.0', type=('build', 'run'))
+ depends_on('r-digest@0.6.25:', when='@2.3.0', type=('build', 'run'))
+ depends_on('r-glue@1.4.0:', when='@2.3.0', type=('build', 'run'))
+ depends_on('r-git2r@0.23.0:', when='@:2.3.0', type=('build', 'run'))
+ depends_on('r-git2r@0.26.1:', when='@2.3.0', type=('build', 'run'))
+ depends_on('r-whisker', when='@:1.9.9', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dexseq/package.py b/var/spack/repos/builtin/packages/r-dexseq/package.py
new file mode 100644
index 0000000000..f3f584c8e3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-dexseq/package.py
@@ -0,0 +1,42 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RDexseq(RPackage):
+ """Inference of differential exon usage in RNA-Seq
+
+ The package is focused on finding differential exon usage using RNA-seq
+ exon counts between samples with different experimental designs. It
+ provides functions that allows the user to make the necessary
+ statistical tests based on a model that uses the negative binomial
+ distribution to estimate the variance between biological replicates
+ and generalized linear models for testing. The package also provides
+ functions for the visualization and exploration of the results."""
+
+ bioc = "DEXSeq"
+
+ maintainers = ['dorton21']
+
+ version('1.36.0', commit='f0a361af6954fcc2abb2db801c26e303570669b2')
+
+ depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-geneplotter', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biomart', type=('build', 'run'))
+ depends_on('r-hwriter', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-statmod', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-iranges@2.5.17:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.23.7:', type=('build', 'run'))
+ depends_on('r-deseq2@1.9.11:', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-s4vectors@0.23.18:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-diagrammer/package.py b/var/spack/repos/builtin/packages/r-diagrammer/package.py
index 08bcb255c5..fe6657b91c 100644
--- a/var/spack/repos/builtin/packages/r-diagrammer/package.py
+++ b/var/spack/repos/builtin/packages/r-diagrammer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,34 +7,53 @@ from spack import *
class RDiagrammer(RPackage):
- """Create graph diagrams and flowcharts using R."""
+ """Graph/Network Visualization
+
+ Build graph/network structures using functions for stepwise addition and
+ deletion of nodes and edges. Work with data available in tables for bulk
+ addition of nodes, edges, and associated metadata. Use graph selections and
+ traversals to apply changes to specific nodes or edges. A wide selection of
+ graph algorithms allow for the analysis of graphs. Visualize the graphs and
+ take advantage of any aesthetic properties assigned to nodes and edges."""
homepage = "https://github.com/rich-iannone/DiagrammeR"
url = "https://cloud.r-project.org/src/contrib/DiagrammeR_0.8.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/DiagrammeR"
+ version('1.0.6.1', sha256='be4e4c520a3692902ce405e8225aef9f3d5f0cd11fcde614f6541e981b63673d')
version('1.0.1', sha256='ccee8acf608fc909e73c6de4374cef5a570cb62e5f454ac55dda736f22f3f013')
version('1.0.0', sha256='2b186dae1b19018681b979e9444bf16559c42740d8382676fbaf3b0f8a44337e')
version('0.8.4', sha256='0503935fa120c7c7cdcfd4dce85558b23fd0bcb7e6b32fa6989087d3c88ec404')
depends_on('r@3.2.0:', when='@0.9.2:', type=('build', 'run'))
- depends_on('r-htmlwidgets@1.0:', type=('build', 'run'))
- depends_on('r-igraph@1.1.2:', type=('build', 'run'))
- depends_on('r-influencer@0.1.0:', type=('build', 'run'))
- depends_on('r-rstudioapi@0.7:', type=('build', 'run'))
- depends_on('r-stringr@1.3.0:', type=('build', 'run'))
- depends_on('r-visnetwork@2.0.3:', type=('build', 'run'))
- depends_on('r-scales@0.5.0:', type=('build', 'run'))
depends_on('r-dplyr@0.7.4:', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-dplyr@0.7.6:', when='@1.0.6.1:', type=('build', 'run'))
depends_on('r-downloader@0.4:', when='@1.0.0:', type=('build', 'run'))
depends_on('r-glue@1.2.0:', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-glue@1.3.0:', when='@1.0.6.1:', type=('build', 'run'))
depends_on('r-htmltools@0.3.6:', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-htmlwidgets@1.0:', type=('build', 'run'))
+ depends_on('r-htmlwidgets@1.2:', when='@1.0.6.1:', type=('build', 'run'))
+ depends_on('r-igraph@1.1.2:', type=('build', 'run'))
+ depends_on('r-igraph@1.2.2:', when='@1.0.6.1:', type=('build', 'run'))
+ depends_on('r-influencer@0.1.0:', type=('build', 'run'))
depends_on('r-magrittr@1.5:', when='@1.0.0:', type=('build', 'run'))
depends_on('r-purrr@0.2.4:', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-purrr@0.2.5:', when='@1.0.6.1:', type=('build', 'run'))
depends_on('r-rcolorbrewer@1.1-2:', when='@1.0.0:', type=('build', 'run'))
depends_on('r-readr@1.1.1:', when='@1.0.0:', type=('build', 'run'))
depends_on('r-rlang@0.2.0:', when='@1.0.0:', type=('build', 'run'))
- depends_on('r-rgexf@0.15.3:', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-rlang@0.2.2:', when='@1.0.6.1:', type=('build', 'run'))
+ depends_on('r-rstudioapi@0.7:', type=('build', 'run'))
+ depends_on('r-scales@0.5.0:', type=('build', 'run'))
+ depends_on('r-scales@1.0.0:', when='@1.0.6.1:', type=('build', 'run'))
+ depends_on('r-stringr@1.3.0:', type=('build', 'run'))
+ depends_on('r-stringr@1.3.1:', when='@1.0.6.1:', type=('build', 'run'))
depends_on('r-tibble@1.4.2:', when='@1.0.0:', type=('build', 'run'))
depends_on('r-tidyr@0.8.0:', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-tidyr@0.8.1:', when='@1.0.6.1:', type=('build', 'run'))
depends_on('r-viridis@0.5.0:', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-viridis@0.5.1:', when='@1.0.6.1:', type=('build', 'run'))
+ depends_on('r-visnetwork@2.0.3:', type=('build', 'run'))
+ depends_on('r-visnetwork@2.0.4:', when='@1.0.6.1:', type=('build', 'run'))
+ depends_on('r-rgexf@0.15.3:', when='@1.0.0:1.0.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dicekriging/package.py b/var/spack/repos/builtin/packages/r-dicekriging/package.py
index ace01e38a4..3972f40e5c 100644
--- a/var/spack/repos/builtin/packages/r-dicekriging/package.py
+++ b/var/spack/repos/builtin/packages/r-dicekriging/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RDicekriging(RPackage):
- """Estimation, validation and prediction of kriging models. Important
- functions : km, print.km, plot.km, predict.km."""
+ """Kriging Methods for Computer Experiments
+
+ Estimation, validation and prediction of kriging models. Important
+ functions : km, print.km, plot.km, predict.km."""
homepage = "http://dice.emse.fr/"
url = "https://cloud.r-project.org/src/contrib/DiceKriging_1.5.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/DiceKriging"
+ version('1.5.8', sha256='11d02b894cb509dbb8887ae27b6d08ba25aa52ac3ece134c3759c2b3b1bf4d77')
version('1.5.6', sha256='25466d2db9f17083d1c7b9545e5ec88f630be934f9373c2f7b36c38de4e64e92')
version('1.5.5', sha256='55fe161f867a0c3772023c3047041b877aa54d29cb474ec87293ec31cc5cb30c')
diff --git a/var/spack/repos/builtin/packages/r-dichromat/package.py b/var/spack/repos/builtin/packages/r-dichromat/package.py
index 5fbadf1af3..d7bd5fc364 100644
--- a/var/spack/repos/builtin/packages/r-dichromat/package.py
+++ b/var/spack/repos/builtin/packages/r-dichromat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-diffobj/package.py b/var/spack/repos/builtin/packages/r-diffobj/package.py
new file mode 100644
index 0000000000..6445949014
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-diffobj/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RDiffobj(RPackage):
+ """Diffs for R Objects
+
+ Generate a colorized diff of two R objects for an intuitive visualization
+ of their differences."""
+
+ homepage = "https://github.com/brodieG/diffobj"
+ url = "https://cloud.r-project.org/src/contrib/diffobj_0.3.3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/diffobj"
+
+ version('0.3.3', sha256='414e5573470b9565b9149a0a61c7e8344fb37f889d23dc4e131acc8aa62e6df4')
+
+ depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('r-crayon@1.3.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-diffusionmap/package.py b/var/spack/repos/builtin/packages/r-diffusionmap/package.py
index 3002ec28cb..1d51bb74aa 100644
--- a/var/spack/repos/builtin/packages/r-diffusionmap/package.py
+++ b/var/spack/repos/builtin/packages/r-diffusionmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,18 @@ from spack import *
class RDiffusionmap(RPackage):
- """Allows to display a progress bar in the R console for long running
- computations taking place in c++ code, and support for interrupting those
- computations even in multithreaded code, typically using OpenMP."""
+ """Diffusion Map
+
+ Implements diffusion map method of data parametrization, including creation
+ and visualization of diffusion map, clustering with diffusion K-means and
+ regression using adaptive regression model. Richards (2009)
+ <doi:10.1088/0004-637X/691/1/32>."""
homepage = "https://cloud.r-project.org/package=diffusionMap"
url = "https://cloud.r-project.org/src/contrib/diffusionMap_1.1-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/diffusionMap"
+ version('1.2.0', sha256='523847592fbc3a29252bc92b5821e17564ce6b188c483c930e95e6950c3873e7')
version('1.1-0.1', sha256='b24cf841af2566ac36f4ede2885f2ff355a7905398444d6d89747315d99a8486')
version('1.1-0', sha256='637b810140145fa0cbafb1c13da347c2f456c425334ae554d11a3107052e28d1')
version('1.0-0', sha256='1e3c54f72cbb2bce1b06b85fda33242b9041d30d4ac8c12df4dc9a3a95a44044')
@@ -22,6 +26,7 @@ class RDiffusionmap(RPackage):
version('0.0-1', sha256='38c4af2d2a4fa4116c2e01a5e67ba313e7a8e76f724a3312a3c12b26e299f844')
depends_on('r@2.4.0:', type=('build', 'run'))
- depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r@2.10:', when='@1.2.0:', type=('build', 'run'))
depends_on('r-scatterplot3d', type=('build', 'run'))
depends_on('r-igraph', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-digest/package.py b/var/spack/repos/builtin/packages/r-digest/package.py
index 6d02efcbdf..ee27fc8af1 100644
--- a/var/spack/repos/builtin/packages/r-digest/package.py
+++ b/var/spack/repos/builtin/packages/r-digest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RDigest(RPackage):
- """Implementation of a function 'digest()' for the creation of hash digests
+ """Create Compact Hash Digests of R Objects
+
+ Implementation of a function 'digest()' for the creation of hash digests
of arbitrary R objects (using the md5, sha-1, sha-256, crc32, xxhash and
murmurhash algorithms) permitting easy comparison of R language objects, as
well as a function 'hmac()' to create hash-based message authentication
@@ -28,6 +30,7 @@ class RDigest(RPackage):
url = "https://cloud.r-project.org/src/contrib/digest_0.6.12.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/digest"
+ version('0.6.27', sha256='f485f75122907da24c41d4a62c91a232f0c371befd2f77e973342a1bef00253f')
version('0.6.25', sha256='15ccadb7b8bccaa221b6700bb549011719d0f4b38dbd3a1f29face3e019e2de5')
version('0.6.20', sha256='05674b0b5d888461ff770176c67b10a11be062b0fee5dbd9298f25a9a49830c7')
version('0.6.19', sha256='28d159bd589ecbd01b8da0826eaed417f5c1bf5a11b79e76bf67ce8d935cccf4')
@@ -35,5 +38,6 @@ class RDigest(RPackage):
version('0.6.11', sha256='edab2ca2a38bd7ee19482c9d2531cd169d5123cde4aa2a3dd65c0bcf3d1d5209')
version('0.6.9', sha256='95fdc36011869fcfe21b40c3b822b931bc01f8a531e2c9260582ba79560dbe47')
- depends_on('r@2.4.1:', when='@:0.6.15', type=('build', 'run'))
+ depends_on('r@2.4.1:', type=('build', 'run'))
depends_on('r@3.1.0:', when='@0.6.16:', type=('build', 'run'))
+ depends_on('r@3.3.0:', when='@0.6.27:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-diptest/package.py b/var/spack/repos/builtin/packages/r-diptest/package.py
index 6a13308a66..7cd11956b8 100644
--- a/var/spack/repos/builtin/packages/r-diptest/package.py
+++ b/var/spack/repos/builtin/packages/r-diptest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-dirichletmultinomial/package.py b/var/spack/repos/builtin/packages/r-dirichletmultinomial/package.py
index 8b692dc475..9b5fcf2d35 100644
--- a/var/spack/repos/builtin/packages/r-dirichletmultinomial/package.py
+++ b/var/spack/repos/builtin/packages/r-dirichletmultinomial/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RDirichletmultinomial(RPackage):
"""Dirichlet-Multinomial Mixture Model Machine Learning for Microbiome
- Data.
+ Data
Dirichlet-multinomial mixture models can be used to describe variability
in microbial metagenomic data. This package is an interface to code
@@ -19,6 +19,7 @@ class RDirichletmultinomial(RPackage):
homepage = "https://bioconductor.org/packages/DirichletMultinomial"
git = "https://git.bioconductor.org/packages/DirichletMultinomial.git"
+ version('1.32.0', commit='6949abab2462b2c09f7a0ca5b5cbf0c95a40ad16')
version('1.26.0', commit='7daa84948020811bb8a27d2e633fccfdcdd1018f')
version('1.24.1', commit='50195d9b1986852da29100e77f6f09df5d6e2a35')
version('1.22.0', commit='5864f4298105d12f345f27df77ad13bae4061ca5')
diff --git a/var/spack/repos/builtin/packages/r-dismo/package.py b/var/spack/repos/builtin/packages/r-dismo/package.py
index 9564211ed1..7b0010a58e 100644
--- a/var/spack/repos/builtin/packages/r-dismo/package.py
+++ b/var/spack/repos/builtin/packages/r-dismo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,20 @@ from spack import *
class RDismo(RPackage):
- """Functions for species distribution modeling, that is, predicting
- entire geographic distributions form occurrences at a number of sites
- and the environment at these sites."""
+ """Species Distribution Modeling
+
+ Methods for species distribution modeling, that is, predicting the
+ environmental similarity of any site to that of the locations of known
+ occurrences of a species."""
homepage = "https://cloud.r-project.org/package=dismo"
url = "https://cloud.r-project.org/src/contrib/dismo_1.1-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/dismo"
+ version('1.3-3', sha256='fd65331ac18a4287ba0856b90508ddd0e2738c653eecc5f3eb2b14e1d06949ca')
version('1.1-4', sha256='f2110f716cd9e4cca5fd2b22130c6954658aaf61361d2fe688ba22bbfdfa97c8')
depends_on('r@3.2.0:', type=('build', 'run'))
depends_on('r-raster@2.5-2:', type=('build', 'run'))
depends_on('r-sp@1.2-0:', type=('build', 'run'))
+ depends_on('java@8:', when='@1.3-3:')
diff --git a/var/spack/repos/builtin/packages/r-diversitree/package.py b/var/spack/repos/builtin/packages/r-diversitree/package.py
index d661a11453..ddad9ee891 100644
--- a/var/spack/repos/builtin/packages/r-diversitree/package.py
+++ b/var/spack/repos/builtin/packages/r-diversitree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RDiversitree(RPackage):
- """Contains a number of comparative 'phylogenetic' methods.
+ """Comparative 'Phylogenetic' Analyses of Diversification
Mostly focusing on analysing diversification and character
evolution. Contains implementations of 'BiSSE' (Binary State
@@ -22,10 +22,11 @@ class RDiversitree(RPackage):
url = "https://cloud.r-project.org/src/contrib/diversitree_0.9-10.tar.gz"
list_url = "https://cron.r-project.org/src/contrib/Archive/diversitree"
+ version('0.9-15', sha256='c739ef3d4fcc24fd6855b1d297d31e0f89fbaff1efe8a2d149044458ecd363ea')
version('0.9-11', sha256='4caa6a468f93de9f1c8c30e4457f34bb8346e1acdaf74f684005bfa86a950ecb')
version('0.9-10', sha256='e7df5910c8508a5c2c2d6d3deea53dd3f947bb762196901094c32a7033cb043e')
- depends_on('r@2.1.0:', type=('build', 'run'))
+ depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-ape', type=('build', 'run'))
depends_on('r-desolve@1.7:', type=('build', 'run'))
depends_on('r-subplex', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dmrcate/package.py b/var/spack/repos/builtin/packages/r-dmrcate/package.py
new file mode 100644
index 0000000000..5f04590e15
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-dmrcate/package.py
@@ -0,0 +1,36 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RDmrcate(RPackage):
+ """Methylation array and sequencing spatial analysis methods:
+
+ De novo identification and extraction of differentially methylated regions
+ (DMRs) from the human genome using Whole Genome Bisulfite Sequencing (WGBS)
+ and Illumina Infinium Array (450K and EPIC) data. Provides functionality
+ for filtering probes possibly confounded by SNPs and cross-hybridisation.
+ Includes GRanges generation and plotting functions."""
+
+ bioc = "DMRcate"
+
+ version('2.4.1', commit='bc6242a0291a9b997872f575a4417d38550c9550')
+
+ depends_on('r@3.6.0:', type=('build', 'run'))
+ depends_on('r-minfi', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-experimenthub', type=('build', 'run'))
+ depends_on('r-bsseq', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-edger', type=('build', 'run'))
+ depends_on('r-dss', type=('build', 'run'))
+ depends_on('r-missmethyl', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-gviz', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dnacopy/package.py b/var/spack/repos/builtin/packages/r-dnacopy/package.py
index 4ddea98cdc..00358abc46 100644
--- a/var/spack/repos/builtin/packages/r-dnacopy/package.py
+++ b/var/spack/repos/builtin/packages/r-dnacopy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RDnacopy(RPackage):
- """DNA copy number data analysis.
+ """DNA copy number data analysis
Implements the circular binary segmentation (CBS) algorithm to segment
DNA copy number data and identify genomic regions with abnormal copy
@@ -16,6 +16,7 @@ class RDnacopy(RPackage):
homepage = "https://bioconductor.org/packages/DNAcopy"
git = "https://git.bioconductor.org/packages/DNAcopy.git"
+ version('1.64.0', commit='01650266ea7a4e5c600de545fe70a1103e79b2d8')
version('1.58.0', commit='1954745eafca990d6ddeefe84059c54a8c37df23')
version('1.56.0', commit='e521826f2515b309921272f65db421cbe2ff961a')
version('1.54.0', commit='fe2657936afbce8ee03221461dff4265e3ded4c4')
diff --git a/var/spack/repos/builtin/packages/r-do-db/package.py b/var/spack/repos/builtin/packages/r-do-db/package.py
index be152d3049..5b09a3e727 100644
--- a/var/spack/repos/builtin/packages/r-do-db/package.py
+++ b/var/spack/repos/builtin/packages/r-do-db/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RDoDb(RPackage):
- """A set of annotation maps describing the entire Disease
+ """A set of annotation maps describing the entire Disease Ontology
+
+ A set of annotation maps describing the entire Disease
Ontology assembled using data from DO."""
homepage = "https://bioconductor.org/packages/DO.db/"
@@ -15,4 +17,5 @@ class RDoDb(RPackage):
version('2.9', sha256='762bcb9b5188274fd81d82f785cf2846a5acc61fad55e2ff8ec1502282c27881')
+ depends_on('r@2.7.0:', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-domc/package.py b/var/spack/repos/builtin/packages/r-domc/package.py
index 8df8cbf523..46a7cbe2e3 100644
--- a/var/spack/repos/builtin/packages/r-domc/package.py
+++ b/var/spack/repos/builtin/packages/r-domc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RDomc(RPackage):
- """Provides a parallel backend for the %dopar% function using
+ """Foreach Parallel Adaptor for 'parallel'
+
+ Provides a parallel backend for the %dopar% function using
the multicore functionality of the parallel package."""
homepage = "https://cloud.r-project.org/package=doMC"
url = "https://cloud.r-project.org/src/contrib/doMC_1.3.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/doMC"
+ version('1.3.7', sha256='defab27adc298a6746896d83251f8355d62c01012d51ef96d491875a2e74b54d')
version('1.3.6', sha256='2977fc9e2dc54d85d45b4a36cd286dff72834fbc73f38b6ee45a6eb8557fc9b2')
version('1.3.4', sha256='76a1092fca59b441e6f89eb7e2fb3a12de807f736a217949c80339f20c958778')
diff --git a/var/spack/repos/builtin/packages/r-doparallel/package.py b/var/spack/repos/builtin/packages/r-doparallel/package.py
index fc06d2f142..6e6bb023fb 100644
--- a/var/spack/repos/builtin/packages/r-doparallel/package.py
+++ b/var/spack/repos/builtin/packages/r-doparallel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RDoparallel(RPackage):
- """Provides a parallel backend for the %dopar% function using the parallel
+ """Foreach Parallel Adaptor for the 'parallel' Package
+
+ Provides a parallel backend for the %dopar% function using the parallel
package."""
homepage = "https://cloud.r-project.org/package=doParallel"
url = "https://cloud.r-project.org/src/contrib/doParallel_1.0.10.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/doParallel"
+ version('1.0.16', sha256='f1bb26f964f30d47ae4d6cf2b0a2ca0c2122d376424875e82d9abe9e7b054eb2')
version('1.0.15', sha256='71ad7ea69616468996aefdd8d02a4a234759a21ddde9ed1657e3c537145cd86e')
version('1.0.11', sha256='4ccbd2eb46d3e4f5251b0c3de4d93d9168b02bb0be493656d6aea236667ff76a')
version('1.0.10', sha256='70024b6950025cc027022ee409f382e5ad3680c0a25bcd404bfc16418be8add5')
diff --git a/var/spack/repos/builtin/packages/r-dorng/package.py b/var/spack/repos/builtin/packages/r-dorng/package.py
index 5c4f0fbc78..637128a31f 100644
--- a/var/spack/repos/builtin/packages/r-dorng/package.py
+++ b/var/spack/repos/builtin/packages/r-dorng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,25 +7,27 @@ from spack import *
class RDorng(RPackage):
- """Provides functions to perform reproducible parallel foreach loops,
- using independent random streams as generated by L'Ecuyer's combined
- multiple-recursive generator (L'Ecuyer (1999),
- <doi:10.1287/opre.47.1.159>).
+ """Generic Reproducible Parallel Backend for 'foreach' Loops
- It enables to easily convert standard %dopar% loops into fully
- reproducible loops, independently of the number of workers, the task
- scheduling strategy, or the chosen parallel environment and associated
- foreach backend."""
+ Provides functions to perform reproducible parallel foreach loops, using
+ independent random streams as generated by L'Ecuyer's combined
+ multiple-recursive generator (L'Ecuyer (1999),
+ <doi:10.1287/opre.47.1.159>). It enables to easily convert standard
+ %dopar% loops into fully reproducible loops, independently of the number of
+ workers, the task scheduling strategy, or the chosen parallel environment
+ and associated foreach backend."""
homepage = "https://cloud.r-project.org/package=doRNG"
url = "https://cloud.r-project.org/src/contrib/doRNG_1.6.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/doRNG"
+ version('1.8.2', sha256='33e9d45b91b0fde2e35e911b9758d0c376049121a98a1e4c73a1edfcff11cec9')
version('1.7.1', sha256='27533d54464889d1c21301594137fc0f536574e3a413d61d7df9463ab12a67e9')
version('1.6.6', sha256='939c2282c72c0b89fc7510f4bff901a4e99007dc006f46762c8f594c0ecbd876')
depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r-foreach', type=('build', 'run'))
depends_on('r-rngtools@1.3:', type=('build', 'run'))
+ depends_on('r-rngtools@1.5:', when='@1.8.2:', type=('build', 'run'))
depends_on('r-iterators', type=('build', 'run'))
- depends_on('r-pkgmaker@0.20:', type=('build', 'run'))
+ depends_on('r-pkgmaker@0.20:', when='@:1.7.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dose/package.py b/var/spack/repos/builtin/packages/r-dose/package.py
index 70e5f103d9..0de5b437e1 100644
--- a/var/spack/repos/builtin/packages/r-dose/package.py
+++ b/var/spack/repos/builtin/packages/r-dose/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RDose(RPackage):
- """Disease Ontology Semantic and Enrichment analysis.
+ """Disease Ontology Semantic and Enrichment analysis
This package implements five methods proposed by Resnik, Schlicker,
Jiang, Lin and Wang respectively for measuring semantic similarities
@@ -19,6 +19,7 @@ class RDose(RPackage):
homepage = "https://bioconductor.org/packages/DOSE"
git = "https://git.bioconductor.org/packages/DOSE.git"
+ version('3.16.0', commit='a534a4f2ef1e54e8b92079cf1bbedb5042fd90cd')
version('3.10.2', commit='5ea51a2e2a04b4f3cc974cecb4537e14efd6a7e3')
version('3.8.2', commit='4d3d1ca710aa7e4288a412c8d52b054b86a57639')
version('3.6.1', commit='f2967f0482cea39222bfd15767d0f4a5994f241b')
@@ -26,18 +27,17 @@ class RDose(RPackage):
version('3.2.0', commit='71f563fc39d02dfdf65184c94e0890a63b96b86b')
depends_on('r@3.3.1:', type=('build', 'run'))
+ depends_on('r@3.4.0:', when='@3.6.1:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@3.16.0:', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
depends_on('r-biocparallel', type=('build', 'run'))
depends_on('r-do-db', type=('build', 'run'))
depends_on('r-fgsea', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-gosemsim@2.0.0:', type=('build', 'run'))
- depends_on('r-igraph', when='@3.2.0:3.4.0', type=('build', 'run'))
depends_on('r-qvalue', type=('build', 'run'))
depends_on('r-reshape2', type=('build', 'run'))
- depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-s4vectors', when='@:3.10.2', type=('build', 'run'))
depends_on('r-scales', when='@3.2.0:3.4.0', type=('build', 'run'))
-
depends_on('r-rvcheck', when='@3.4.0', type=('build', 'run'))
-
- depends_on('r@3.4.0:', when='@3.6.1:', type=('build', 'run'))
+ depends_on('r-igraph', when='@3.2.0:3.4.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dosnow/package.py b/var/spack/repos/builtin/packages/r-dosnow/package.py
index 18de14a737..3d9addb2fc 100644
--- a/var/spack/repos/builtin/packages/r-dosnow/package.py
+++ b/var/spack/repos/builtin/packages/r-dosnow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RDosnow(RPackage):
- """Provides a parallel backend for the %dopar% function using the snow
+ """Foreach Parallel Adaptor for the 'snow' Package
+
+ Provides a parallel backend for the %dopar% function using the snow
package of Tierney, Rossini, Li, and Sevcikova."""
homepage = "https://cloud.r-project.org/package=doSNOW"
url = "https://cloud.r-project.org/src/contrib/doSNOW_1.0.18.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/doSNOW"
+ version('1.0.19', sha256='4cd2d080628482f4c6ecab593313d7e42516f5ff13fbf9f90e461fcad0580738')
version('1.0.18', sha256='70e7bd82186e477e3d1610676d4c6a75258ac08f104ecf0dcc971550ca174766')
depends_on('r@2.5.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dotcall64/package.py b/var/spack/repos/builtin/packages/r-dotcall64/package.py
index b9214c5a95..3c92545fdc 100644
--- a/var/spack/repos/builtin/packages/r-dotcall64/package.py
+++ b/var/spack/repos/builtin/packages/r-dotcall64/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-downloader/package.py b/var/spack/repos/builtin/packages/r-downloader/package.py
index ecf053e698..f6dc6783be 100644
--- a/var/spack/repos/builtin/packages/r-downloader/package.py
+++ b/var/spack/repos/builtin/packages/r-downloader/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-dplyr/package.py b/var/spack/repos/builtin/packages/r-dplyr/package.py
index d6936c182c..956bc1c36e 100644
--- a/var/spack/repos/builtin/packages/r-dplyr/package.py
+++ b/var/spack/repos/builtin/packages/r-dplyr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RDplyr(RPackage):
- """A fast, consistent tool for working with data frame like objects, both
+ """A Grammar of Data Manipulation
+
+ A fast, consistent tool for working with data frame like objects, both
in memory and out of memory."""
homepage = "https://cloud.r-project.org/package=dplyr"
url = "https://cloud.r-project.org/src/contrib/dplyr_0.7.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/dplyr"
+ version('1.0.3', sha256='28a1a9d87e99154d4d1542ef9da9fd70f869a173dc9709f4583a5770bae58441')
version('0.8.3', sha256='68b4aac65a69ea6390e90991d9c7ce7a011a07e5db439d60cce911a078424c0c')
version('0.8.2', sha256='e2b6d5b30d04d86f270374623da426541cee8e33ce446fcab6cd7862abf8e18b')
version('0.7.7', sha256='0553db5a55f0e6f5d2d111e88422c6d26e9d54cb36b860ad2ca28e3826e3d4a4')
@@ -26,17 +29,26 @@ class RDplyr(RPackage):
version('0.7.0', sha256='27b3593c09da5e99c0c4fb19ea826edd2cab619f8aaefd0cfd2a4140a0bd9410')
version('0.5.0', sha256='93d3b829f1c2d38e14a4f2fa7d6398fc6c1a9e4189b3e78bc38a0eb0e864454f')
- depends_on('r@3.1.2:', when='@:0.8.0.1', type=('build', 'run'))
+ depends_on('r@3.1.2:', type=('build', 'run'))
depends_on('r@3.2.0:', when='@0.8.1:', type=('build', 'run'))
- depends_on('r-assertthat@0.2.0:', type=('build', 'run'))
- depends_on('r-bindrcpp@0.2.0:', when='@:0.7.9', type=('build', 'run'))
+ depends_on('r@3.3.0:', when='@1.0.3:', type=('build', 'run'))
+ depends_on('r-ellipsis', when='@1.0.3:', type=('build', 'run'))
+ depends_on('r-generics', when='@1.0.3:', type=('build', 'run'))
depends_on('r-glue@1.3.0:', type=('build', 'run'))
+ depends_on('r-glue@1.3.2:', when='@1.0.3:', type=('build', 'run'))
+ depends_on('r-lifecycle@0.2.0:', when='@1.0.3:', type=('build', 'run'))
depends_on('r-magrittr@1.5:', type=('build', 'run'))
- depends_on('r-pkgconfig', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
- depends_on('r-rcpp@1.0.1:', type=('build', 'run'))
depends_on('r-rlang@0.4.0:', type=('build', 'run'))
+ depends_on('r-rlang@0.4.9:', when='@1.0.3:', type=('build', 'run'))
depends_on('r-tibble@2.0.0:', type=('build', 'run'))
+ depends_on('r-tibble@2.1.3:', when='@1.0.3:', type=('build', 'run'))
depends_on('r-tidyselect@0.2.5:', type=('build', 'run'))
- depends_on('r-bh', type=('build', 'run'))
- depends_on('r-plogr@0.2.0:', when='@0.7.0:', type=('build', 'run'))
+ depends_on('r-tidyselect@1.1.0:', when='@1.0.3:', type=('build', 'run'))
+ depends_on('r-vctrs@0.3.5:', when='@1.0.3:', type=('build', 'run'))
+ depends_on('r-assertthat@0.2.0:', when='@:0.8.3', type=('build', 'run'))
+ depends_on('r-bindrcpp@0.2.0:', when='@:0.7.9', type=('build', 'run'))
+ depends_on('r-pkgconfig', when='@:0.8.3', type=('build', 'run'))
+ depends_on('r-rcpp@1.0.1:', when='@:0.8.3', type=('build', 'run'))
+ depends_on('r-bh', when='@:0.8.3', type=('build', 'run'))
+ depends_on('r-plogr@0.2.0:', when='@0.7.0:0.8.3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dqrng/package.py b/var/spack/repos/builtin/packages/r-dqrng/package.py
index 07109336c3..42ff453a5e 100644
--- a/var/spack/repos/builtin/packages/r-dqrng/package.py
+++ b/var/spack/repos/builtin/packages/r-dqrng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-dss/package.py b/var/spack/repos/builtin/packages/r-dss/package.py
index 7d4f8f2318..02de075e17 100644
--- a/var/spack/repos/builtin/packages/r-dss/package.py
+++ b/var/spack/repos/builtin/packages/r-dss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RDss(RPackage):
- """Dispersion shrinkage for sequencing data.
+ """Dispersion shrinkage for sequencing data
DSS is an R library performing differntial analysis for count-based
sequencing data. It detectes differentially expressed genes (DEGs) from
@@ -19,12 +19,13 @@ class RDss(RPackage):
homepage = "http://bioconductor.org/packages/DSS/"
git = "https://git.bioconductor.org/packages/DSS"
+ version('2.38.0', commit='82e65b92e6e227f1f99620362db8b03059e07e98')
version('2.36.0', commit='841c7ed')
version('2.34.0', commit='f9819c7')
version('2.32.0', commit='ffb502d')
depends_on('r@3.3:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
- depends_on('r-bsseq', type=('build', 'run'))
depends_on('r-biocparallel', when='@2.36.0:', type=('build', 'run'))
+ depends_on('r-bsseq', type=('build', 'run'))
depends_on('r-delayedarray', when='@2.36.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dt/package.py b/var/spack/repos/builtin/packages/r-dt/package.py
index b1e899093a..3b92048565 100644
--- a/var/spack/repos/builtin/packages/r-dt/package.py
+++ b/var/spack/repos/builtin/packages/r-dt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RDt(RPackage):
- """Data objects in R can be rendered as HTML tables using the JavaScript
+ """A Wrapper of the JavaScript Library 'DataTables'
+
+ Data objects in R can be rendered as HTML tables using the JavaScript
library 'DataTables' (typically via R Markdown or Shiny). The 'DataTables'
library has been included in this R package. The package name 'DT' is an
abbreviation of 'DataTables'."""
@@ -16,6 +18,7 @@ class RDt(RPackage):
url = "https://cloud.r-project.org/src/contrib/DT_0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/DT"
+ version('0.17', sha256='e3430292421dcc2b6ad5f2deda729f0603da4eb31f86d071833e6e11abf3fb56')
version('0.13', sha256='79a073fe96980ce150d790ab76133c9e80bd463270c34d149c03934a622d63b5')
version('0.8', sha256='90195054148806cf31c7db5c41f72d5389c75adc0b1183606a9babd2c6ae8e21')
version('0.7', sha256='1de3f170deccd9e3aaefc057dd87c498e3b3f7f88eff645cf165ac34ffe3de2c')
@@ -27,7 +30,7 @@ class RDt(RPackage):
depends_on('r-htmltools@0.3.6:', type=('build', 'run'))
depends_on('r-htmlwidgets@1.3:', type=('build', 'run'))
+ depends_on('r-jsonlite@0.9.16:', when='@0.8:', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-crosstalk', type=('build', 'run'))
depends_on('r-promises', when='@0.5:', type=('build', 'run'))
- depends_on('r-jsonlite@0.9.16:', when='@0.8:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dtw/package.py b/var/spack/repos/builtin/packages/r-dtw/package.py
index ea6af863ee..3bb9f24b6e 100644
--- a/var/spack/repos/builtin/packages/r-dtw/package.py
+++ b/var/spack/repos/builtin/packages/r-dtw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,21 @@ from spack import *
class RDtw(RPackage):
- """A comprehensive implementation of dynamic time warping (DTW) algorithms
- in R. DTW computes the optimal (least cumulative distance) alignment
- between points of two time series."""
+ """Dynamic Time Warping Algorithms
+
+ A comprehensive implementation of dynamic time warping (DTW) algorithms in
+ R. DTW computes the optimal (least cumulative distance) alignment between
+ points of two time series. Common DTW variants covered include local
+ (slope) and global (window) constraints, subsequence matches, arbitrary
+ distance definitions, normalizations, minimum variance matching, and so on.
+ Provides cumulative distances, alignments, specialized plot styles, etc.,
+ as described in Giorgino (2009) <doi:10.18637/jss.v031.i07>."""
homepage = "https://cloud.r-project.org/package=dtw"
url = "https://cloud.r-project.org/src/contrib/dtw_1.18-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/dtw"
+ version('1.22-3', sha256='df7cf9adf613422ddb22a160597eb5f5475ab6c67c0d790092edb7f72ba98f00')
version('1.20-1', sha256='43ca1a47a7c81a2b5d5054da1be8b8af79a85d6f9ce7b4512e9ed91f790f60f0')
version('1.18-1', sha256='d9dab25bdf61705f9f28dc5ca1c96a7465b269233e878516c52c01b5a0da21ad')
version('1.17-1', sha256='0fc3afcebc58135c78abd7545a3549466ac051a058f913db16214c12141a6e4d')
diff --git a/var/spack/repos/builtin/packages/r-dygraphs/package.py b/var/spack/repos/builtin/packages/r-dygraphs/package.py
index f4b659eeed..16ff6911d9 100644
--- a/var/spack/repos/builtin/packages/r-dygraphs/package.py
+++ b/var/spack/repos/builtin/packages/r-dygraphs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-dynamictreecut/package.py b/var/spack/repos/builtin/packages/r-dynamictreecut/package.py
index d3da482416..cae54847b8 100644
--- a/var/spack/repos/builtin/packages/r-dynamictreecut/package.py
+++ b/var/spack/repos/builtin/packages/r-dynamictreecut/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-e1071/package.py b/var/spack/repos/builtin/packages/r-e1071/package.py
index b853a44f65..fd2d77dd9e 100644
--- a/var/spack/repos/builtin/packages/r-e1071/package.py
+++ b/var/spack/repos/builtin/packages/r-e1071/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,10 @@ from spack import *
class RE1071(RPackage):
- """Functions for latent class analysis, short time Fourier transform, fuzzy
+ """Misc Functions of the Department of Statistics, Probability Theory Group
+ (Formerly: E1071), TU Wien
+
+ Functions for latent class analysis, short time Fourier transform, fuzzy
clustering, support vector machines, shortest path computation, bagged
clustering, naive Bayes classifier, ..."""
@@ -15,6 +18,7 @@ class RE1071(RPackage):
url = "https://cloud.r-project.org/src/contrib/e1071_1.6-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/e1071"
+ version('1.7-4', sha256='e6ab871b06f500dc65f8f781cc7253f43179698784c06dab040b4aa6592f2309')
version('1.7-2', sha256='721c299ce83047312acfa3e0c4b3d4c223d84a4c53400c73465cca2c92913752')
version('1.7-1', sha256='5c5f04a51c1cd2c7dbdf69987adef9bc07116804c63992cd36d804a1daf89dfe')
version('1.6-7', sha256='7048fbc0ac17d7e3420fe68081d0e0a2176b1154ee3191d53558ea9724c7c980')
diff --git a/var/spack/repos/builtin/packages/r-earth/package.py b/var/spack/repos/builtin/packages/r-earth/package.py
index e1dc5b293d..69e0c81ae0 100644
--- a/var/spack/repos/builtin/packages/r-earth/package.py
+++ b/var/spack/repos/builtin/packages/r-earth/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class REarth(RPackage):
- """earth: Multivariate Adaptive Regression Splines.
+ """Multivariate Adaptive Regression Splines.
Build regression models using the techniques in Friedman's papers
"Fast MARS" and "Multivariate Adaptive Regression Splines"
@@ -17,9 +17,11 @@ class REarth(RPackage):
url = "https://cloud.r-project.org/src/contrib/earth_5.1.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/earth"
+ version('5.3.0', sha256='05ace806271a74b3ddf8718a93237fe2a8550a8659ebd87f8079c0bda5e02437')
version('5.1.2', sha256='326f98e8c29365ca3cd5584cf2bd6529358f5ef81664cbd494162f92b6c3488d')
depends_on('r@3.4.0:', type=('build', 'run'))
depends_on('r-formula@1.2-3:', type=('build', 'run'))
depends_on('r-plotmo@3.5.4:', type=('build', 'run'))
+ depends_on('r-plotmo@3.6.0:', when='@5.3.0', type=('build', 'run'))
depends_on('r-teachingdemos@2.10:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ecp/package.py b/var/spack/repos/builtin/packages/r-ecp/package.py
index 700c1780e0..e3a6a16376 100644
--- a/var/spack/repos/builtin/packages/r-ecp/package.py
+++ b/var/spack/repos/builtin/packages/r-ecp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,21 @@ from spack import *
class REcp(RPackage):
- """ecp: Non-Parametric Multiple Change-Point Analysis of
- MultivariateData"""
+ """Non-Parametric Multiple Change-Point Analysis of MultivariateData
+
+ Implements various procedures for finding multiple change-points from
+ Matteson D. et al (2013) <doi:10.1080/01621459.2013.849605>, Zhang W. et al
+ (2017) <doi:10.1109/ICDMW.2017.44>, Arlot S. et al (2019). Two methods make
+ use of dynamic programming and pruning, with no distributional assumptions
+ other than the existence of certain absolute moments in one method.
+ Hierarchical and exact search methods are included. All methods return the
+ set of estimated change-points as well as other summary information."""
homepage = "https://cloud.r-project.org/package=ecp"
url = "https://cloud.r-project.org/src/contrib/ecp_3.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ecp"
+ version('3.1.3', sha256='a80ab10bafe30cc96287b9220e44c4b4eda40f5dd0546e4d2a2e1baab514c058')
version('3.1.1', sha256='d2ab194e22e6ab0168222fbccfcf2e25c6cd51a73edc959086b0c6e0a7410268')
depends_on('r@3.00:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-edger/package.py b/var/spack/repos/builtin/packages/r-edger/package.py
index 5d7f481a70..f8cc2dbf8e 100644
--- a/var/spack/repos/builtin/packages/r-edger/package.py
+++ b/var/spack/repos/builtin/packages/r-edger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class REdger(RPackage):
- """Empirical Analysis of Digital Gene Expression Data in R.
+ """Empirical Analysis of Digital Gene Expression Data in R
Differential expression analysis of RNA-seq expression profiles with
biological replication. Implements a range of statistical methodology
@@ -20,6 +20,7 @@ class REdger(RPackage):
homepage = "https://bioconductor.org/packages/edgeR"
git = "https://git.bioconductor.org/packages/edgeR.git"
+ version('3.32.1', commit='b881d801d60e5b38413d27f149384c218621c55a')
version('3.26.8', commit='836809e043535f2264e5db8b5c0eabcffe85613f')
version('3.24.3', commit='d1260a2aeba67b9ab7a9b8b197b746814ad0716d')
version('3.22.5', commit='44461aa0412ef4a0d955730f365e44fc64fe1902')
@@ -27,10 +28,9 @@ class REdger(RPackage):
version('3.18.1', commit='101106f3fdd9e2c45d4a670c88f64c12e97a0495')
depends_on('r@2.15.0:', type=('build', 'run'))
+ depends_on('r@3.6.0:', when='@3.26.8:', type=('build', 'run'))
depends_on('r-limma', type=('build', 'run'))
- depends_on('r-locfit', type=('build', 'run'))
-
depends_on('r-limma@3.34.5:', when='@3.20.9:', type=('build', 'run'))
+ depends_on('r-limma@3.41.5:', when='@3.32.1:', type=('build', 'run'))
+ depends_on('r-locfit', type=('build', 'run'))
depends_on('r-rcpp', when='@3.20.9:', type=('build', 'run'))
-
- depends_on('r@3.6.0:', when='@3.26.8:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ellipse/package.py b/var/spack/repos/builtin/packages/r-ellipse/package.py
index bbeec79275..bbb1684d2f 100644
--- a/var/spack/repos/builtin/packages/r-ellipse/package.py
+++ b/var/spack/repos/builtin/packages/r-ellipse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,20 @@ from spack import *
class REllipse(RPackage):
- """This package contains various routines for drawing ellipses and
- ellipse-like confidence regions."""
+ """Functions for Drawing Ellipses and Ellipse-Like Confidence Regions
+
+ Contains various routines for drawing ellipses and ellipse-like confidence
+ regions, implementing the plots described in Murdoch and Chow (1996), A
+ graphical display of large correlation matrices, The American Statistician
+ 50, 178-180. There are also routines implementing the profile plots
+ described in Bates and Watts (1988), Nonlinear Regression Analysis and its
+ Applications."""
homepage = "https://cloud.r-project.org/package=ellipse"
url = "https://cloud.r-project.org/src/contrib/ellipse_0.3-8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ellipse"
+ version('0.4.2', sha256='1719ce9a00b9ac4d56dbf961803085b892d3359726fda3567bb989ddfed9a5f2')
version('0.4.1', sha256='1a9a9c52195b26c2b4d51ad159ab98aff7aa8ca25fdc6b2198818d1a0adb023d')
version('0.3-8', sha256='508d474c142f0770c25763d6c8f8f8c9dcf8205afd42ffa22e6be1e0360e7f45')
diff --git a/var/spack/repos/builtin/packages/r-ellipsis/package.py b/var/spack/repos/builtin/packages/r-ellipsis/package.py
index 3c583459f8..99af59d4c9 100644
--- a/var/spack/repos/builtin/packages/r-ellipsis/package.py
+++ b/var/spack/repos/builtin/packages/r-ellipsis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class REllipsis(RPackage):
- """The ellipsis is a powerful tool for extending functions. Unfortunately
+ """Tools for Working with ...
+
+ The ellipsis is a powerful tool for extending functions. Unfortunately
this power comes at a cost: misspelled arguments will be silently ignored.
The ellipsis package provides a collection of functions to catch problems
and alert the user."""
@@ -16,6 +18,7 @@ class REllipsis(RPackage):
url = "https://cloud.r-project.org/src/contrib/ellipsis_0.2.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ellipsis"
+ version('0.3.1', sha256='4f8a15158dfc27cdc0f7554c7a61e92b02e4d70bfc3d968f01a99da2189b75db')
version('0.3.0', sha256='0bf814cb7a1f0ee1f2949bdc98752a0d535f2a9489280dd4d8fcdb10067ee907')
version('0.2.0.1', sha256='0e6528c5e8016c3617cc1cfcdb5a4bfeb073e0bd5ea76b43e56b0c3208a0a943')
diff --git a/var/spack/repos/builtin/packages/r-emmli/package.py b/var/spack/repos/builtin/packages/r-emmli/package.py
index 1144e2d105..f01b09d31b 100644
--- a/var/spack/repos/builtin/packages/r-emmli/package.py
+++ b/var/spack/repos/builtin/packages/r-emmli/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-energy/package.py b/var/spack/repos/builtin/packages/r-energy/package.py
index db396a6bf5..dd354e1c56 100644
--- a/var/spack/repos/builtin/packages/r-energy/package.py
+++ b/var/spack/repos/builtin/packages/r-energy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,23 @@ from spack import *
class REnergy(RPackage):
- """E-Statistics: Multivariate Inference via the Energy of Data"""
+ """Statistics: Multivariate Inference via the Energy of Data
+
+ E-statistics (energy) tests and statistics for multivariate and univariate
+ inference, including distance correlation, one-sample, two-sample, and
+ multi-sample tests for comparing multivariate distributions, are
+ implemented. Measuring and testing multivariate independence based on
+ distance correlation, partial distance correlation, multivariate
+ goodness-of-fit tests, k-groups and hierarchical clustering based on energy
+ distance, testing for multivariate normality, distance components (disco)
+ for non-parametric analysis of structured data, and other energy
+ statistics/methods are implemented."""
homepage = "https://cloud.r-project.org/package=energy"
url = "https://cloud.r-project.org/src/contrib/energy_1.7-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/energy"
+ version('1.7-7', sha256='67b88fb33ee6e7bec2e4fe356a4efd36f70c3cf9b0ebe2f6d9da9ec96de9968f')
version('1.7-6', sha256='900edbb28e1f1bccd78580828470628cf75eb6333b63e1a58e4da7fc5c5fa89a')
version('1.7-5', sha256='24c2cf080939f8f56cd9cda06d2dfc30d0389cd3ec7250af4f9a09a4c06b6996')
diff --git a/var/spack/repos/builtin/packages/r-enrichplot/package.py b/var/spack/repos/builtin/packages/r-enrichplot/package.py
index 8a30292b50..4521f4b953 100644
--- a/var/spack/repos/builtin/packages/r-enrichplot/package.py
+++ b/var/spack/repos/builtin/packages/r-enrichplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class REnrichplot(RPackage):
- """Visualization of Functional Enrichment Result.
+ """Visualization of Functional Enrichment Result
The 'enrichplot' package implements several visualization methods for
interpreting functional enrichment results obtained from ORA or GSEA
@@ -17,24 +17,30 @@ class REnrichplot(RPackage):
homepage = "https://bioconductor.org/packages/enrichplot"
git = "https://git.bioconductor.org/packages/enrichplot.git"
+ version('1.10.2', commit='77ee04f60a07cc31151f8f47f8ee64f3a43c9760')
version('1.4.0', commit='6ffe5d9c5dbe5cbea29f2e0941595475bbbcea0e')
version('1.2.0', commit='2eeaafb571d35a106eba8ae7df014f3201066e8b')
version('1.0.2', commit='ba7726fa0d4b581b7514dcbb04889cdbdd75ff29')
depends_on('r@3.4.0:', type=('build', 'run'))
- depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.10.2:', type=('build', 'run'))
depends_on('r-cowplot', type=('build', 'run'))
- depends_on('r-dose@3.5.1:', type=('build', 'run'))
+ depends_on('r-dose', type=('build', 'run'))
+ depends_on('r-dose@3.5.1:', when='@:1.4.0', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-ggraph', type=('build', 'run'))
- depends_on('r-ggridges', type=('build', 'run'))
- depends_on('r-gosemsim', type=('build', 'run'))
depends_on('r-igraph', type=('build', 'run'))
- depends_on('r-reshape2', type=('build', 'run'))
- depends_on('r-upsetr', type=('build', 'run'))
-
- depends_on('r-europepmc', when='@1.2.0:', type=('build', 'run'))
- depends_on('r-ggplotify', when='@1.2.0:', type=('build', 'run'))
- depends_on('r-gridextra', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-plyr', when='@1.10.2:', type=('build', 'run'))
depends_on('r-purrr', when='@1.2.0:', type=('build', 'run'))
depends_on('r-rcolorbrewer', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-scatterpie', when='@1.10.2:', type=('build', 'run'))
+ depends_on('r-shadowtext', when='@1.10.2:', type=('build', 'run'))
+ depends_on('r-gosemsim', type=('build', 'run'))
+ depends_on('r-magrittr', when='@1.10.2:', type=('build', 'run'))
+ depends_on('r-ggridges', when='@:1.4.0', type=('build', 'run'))
+ depends_on('r-upsetr', when='@:1.4.0', type=('build', 'run'))
+ depends_on('r-annotationdbi', when='@:1.4.0', type=('build', 'run'))
+ depends_on('r-europepmc', when='@1.2.0:1.4.0', type=('build', 'run'))
+ depends_on('r-ggplotify', when='@1.2.0:1.4.0', type=('build', 'run'))
+ depends_on('r-gridextra', when='@1.2.0:1.4.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ensembldb/package.py b/var/spack/repos/builtin/packages/r-ensembldb/package.py
index 71aaf50c22..03f782030e 100644
--- a/var/spack/repos/builtin/packages/r-ensembldb/package.py
+++ b/var/spack/repos/builtin/packages/r-ensembldb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class REnsembldb(RPackage):
- """Utilities to create and use Ensembl-based annotation databases.
+ """Utilities to create and use Ensembl-based annotation databases
The package provides functions to create and use transcript centric
annotation databases/packages. The annotation for the databases are
@@ -25,6 +25,7 @@ class REnsembldb(RPackage):
homepage = "https://bioconductor.org/packages/ensembldb"
git = "https://git.bioconductor.org/packages/ensembldb.git"
+ version('2.14.0', commit='c7150519ed4ef38e5eac1043209863dbc7be43a1')
version('2.8.1', commit='a4d8d89c143dca86b364d59dff8e46cc81c41ac0')
version('2.6.8', commit='c2c4f41b4ecc81d5328ce1d380065dfcb5e0c54c')
version('2.4.1', commit='b5b6b94826a2f46a4faecb9dde750ecd3bfaf327')
@@ -33,8 +34,12 @@ class REnsembldb(RPackage):
depends_on('r-biocgenerics@0.15.10:', type=('build', 'run'))
depends_on('r-genomicranges@1.23.21:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.18:', when='@2.4.1:', type=('build', 'run'))
depends_on('r-genomicfeatures@1.23.18:', type=('build', 'run'))
+ depends_on('r-genomicfeatures@1.29.10:', when='@2.2.2:', type=('build', 'run'))
depends_on('r-annotationfilter@0.99.7:', type=('build', 'run'))
+ depends_on('r-annotationfilter@1.1.9:', when='@2.2.2:', type=('build', 'run'))
+ depends_on('r-annotationfilter@1.5.2:', when='@2.6.8:', type=('build', 'run'))
depends_on('r-rsqlite@1.1:', type=('build', 'run'))
depends_on('r-dbi', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
@@ -42,19 +47,13 @@ class REnsembldb(RPackage):
depends_on('r-annotationdbi@1.31.19:', type=('build', 'run'))
depends_on('r-rtracklayer', type=('build', 'run'))
depends_on('r-s4vectors', type=('build', 'run'))
- depends_on('r-annotationhub', when='@2.0.4:2.2.2', type=('build', 'run'))
+ depends_on('r-s4vectors@0.23.10:', when='@2.14.0:', type=('build', 'run'))
depends_on('r-rsamtools', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
- depends_on('r-protgenerics', type=('build', 'run'))
- depends_on('r-biostrings', type=('build', 'run'))
- depends_on('r-curl', type=('build', 'run'))
-
- depends_on('r-genomicfeatures@1.29.10:', when='@2.2.2:', type=('build', 'run'))
- depends_on('r-annotationfilter@1.1.9:', when='@2.2.2:', type=('build', 'run'))
depends_on('r-iranges@2.11.16:', when='@2.2.2:', type=('build', 'run'))
-
- depends_on('r-genomicranges@1.31.18:', when='@2.4.1:', type=('build', 'run'))
depends_on('r-iranges@2.13.24:', when='@2.4.1:', type=('build', 'run'))
+ depends_on('r-protgenerics', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
depends_on('r-biostrings@2.47.9:', when='@2.4.1:', type=('build', 'run'))
-
- depends_on('r-annotationfilter@1.5.2:', when='@2.6.8:', type=('build', 'run'))
+ depends_on('r-curl', type=('build', 'run'))
+ depends_on('r-annotationhub', when='@2.0.4:2.2.2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-envstats/package.py b/var/spack/repos/builtin/packages/r-envstats/package.py
index 42e1726959..6090df3b6e 100644
--- a/var/spack/repos/builtin/packages/r-envstats/package.py
+++ b/var/spack/repos/builtin/packages/r-envstats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,25 @@ from spack import *
class REnvstats(RPackage):
- """Graphical and statistical analyses of environmental data, with focus
- on analyzing chemical concentrations and physical parameters, usually
- in the context of mandated environmental monitoring.
- """
+ """Package for Environmental Statistics, Including US EPA Guidance
+
+ Graphical and statistical analyses of environmental data, with focus on
+ analyzing chemical concentrations and physical parameters, usually in the
+ context of mandated environmental monitoring. Major environmental
+ statistical methods found in the literature and regulatory guidance
+ documents, with extensive help that explains what these methods do, how to
+ use them, and where to find them in the literature. Numerous built-in
+ data sets from regulatory guidance documents and environmental statistics
+ literature. Includes scripts reproducing analyses presented in the book
+ "EnvStats: An R Package for Environmental Statistics" (Millard, 2013,
+ Springer, ISBN 978-1-4614-8455-4,
+ <https://www.springer.com/book/9781461484554>)."""
homepage = "https://cloud.r-project.org/package=EnvStats"
url = "https://cloud.r-project.org/src/contrib/EnvStats_2.3.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/EnvStats"
+ version('2.4.0', sha256='49459e76412037b3d8021bd83ee93d140bc3e715a2a2282a347ef60061900514')
version('2.3.1', sha256='d753d42b42ff28c1cd25c63916fb2aa9e325941672fb16f7dfd97e218416cf2a')
version('2.3.0', sha256='51b7c982b4ffc6506579ec6933c817b780b8dade9f5e7754122e4132cb677a75')
version('2.2.1', sha256='bbad7736272a404302190ccf1095abd8674d4366f3827a1c0a9540bcafe0523e')
diff --git a/var/spack/repos/builtin/packages/r-ergm/package.py b/var/spack/repos/builtin/packages/r-ergm/package.py
index 0b853f1fbd..8314f66bfa 100644
--- a/var/spack/repos/builtin/packages/r-ergm/package.py
+++ b/var/spack/repos/builtin/packages/r-ergm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,22 @@ from spack import *
class RErgm(RPackage):
- """An integrated set of tools to analyze and simulate networks based
- on exponential-family random graph models (ERGM). "ergm" is a
- part of the "statnet" suite of packages for network analysis."""
+ """Fit, Simulate and Diagnose Exponential-Family Models for Networks
+
+ An integrated set of tools to analyze and simulate networks based on
+ exponential-family random graph models (ERGM). "ergm" is a part of the
+ "statnet" suite of packages for network analysis."""
homepage = "http://statnet.org"
url = "https://cloud.r-project.org/src/contrib/ergm_3.7.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ergm"
+ version('3.11.0', sha256='4e5506b44badc2343be3657acbf2bca51b47d7c187ff499d5a5e70a9811fe9f2')
version('3.10.4', sha256='885f0b1a23c5a2c1947962350cfab66683dfdfd1db173c115e90396d00831f22')
version('3.10.1', sha256='a2ac249ff07ba55b3359242f20389a892543b4fff5956d74143d2d41fa6d4beb')
version('3.7.1', sha256='91dd011953b93ecb2b84bb3ababe7bddae25d9d86e69337156effd1da84b54c3')
+ depends_on('r-network@1.15:', type=('build', 'run'))
depends_on('r-robustbase@0.93-5:', type=('build', 'run'))
depends_on('r-coda@0.19-2:', type=('build', 'run'))
depends_on('r-trust@0.1.7:', type=('build', 'run'))
@@ -26,11 +30,12 @@ class RErgm(RPackage):
depends_on('r-lpsolve@5.6.13:', type=('build', 'run'))
depends_on('r-mass@7.3-51.4:', type=('build', 'run'))
depends_on('r-statnet-common@4.3.0:', type=('build', 'run'))
- depends_on('r-network@1.15:', type=('build', 'run'))
+ depends_on('r-statnet-common@4.4.0:', when='@3.11.0:', type=('build', 'run'))
+ depends_on('r-rle', when='@3.11.0:', type=('build', 'run'))
depends_on('r-purrr@0.3.2:', when='@3.10.0:', type=('build', 'run'))
depends_on('r-rlang@0.3.4:', when='@3.10.0:', type=('build', 'run'))
depends_on('r-tibble@2.1.1:', when='@3.10.0:', type=('build', 'run'))
- depends_on('r-dplyr@0.8.0.1:', when='@3.10.0:', type=('build', 'run'))
+ depends_on('r-dplyr@0.8.0.1:', when='@3.10.0:3.10.4', type=('build', 'run'))
# The CRAN page list OpenMPI as a dependency but this is not a dependency
# for using the package. If one wishes to use MPI, simply load an MPI
# package, along with r-dosnow and r-rmpi when using r-ergm, and set the
diff --git a/var/spack/repos/builtin/packages/r-europepmc/package.py b/var/spack/repos/builtin/packages/r-europepmc/package.py
index 27480f7787..dae036aac9 100644
--- a/var/spack/repos/builtin/packages/r-europepmc/package.py
+++ b/var/spack/repos/builtin/packages/r-europepmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,36 @@ from spack import *
class REuropepmc(RPackage):
- """europepmc: R Interface to the Europe PubMed Central RESTful Web
- Service"""
+ """R Interface to the Europe PubMed Central RESTful Web Service
+
+ An R Client for the Europe PubMed Central RESTful Web Service (see
+ <https://europepmc.org/RestfulWebService> for more information). It gives
+ access to both metadata on life science literature and open access full
+ texts. Europe PMC indexes all PubMed content and other literature sources
+ including Agricola, a bibliographic database of citations to the
+ agricultural literature, or Biological Patents. In addition to
+ bibliographic metadata, the client allows users to fetch citations and
+ reference lists. Links between life-science literature and other EBI
+ databases, including ENA, PDB or ChEMBL are also accessible. No
+ registration or API key is required. See the vignettes for usage
+ examples."""
homepage = "http://github.com/ropensci/europepmc/"
url = "https://cloud.r-project.org/src/contrib/europepmc_0.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/europepmc"
+ version('0.4', sha256='d55f62963d0ee84830654bbc78f4ad8285e376b04be137cbeaf8ad2a98b7969c')
version('0.3', sha256='5044a253d223e2bb8502063cd03c0fe4db856467e497d650da7ccd8f75d0f8d9')
depends_on('r@3.00:', type=('build', 'run'))
- depends_on('r-dplyr', type=('build', 'run'))
depends_on('r-httr', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-dplyr', type=('build', 'run'))
depends_on('r-progress', type=('build', 'run'))
- depends_on('r-purrr', type=('build', 'run'))
depends_on('r-urltools', type=('build', 'run'))
+ depends_on('r-purrr', type=('build', 'run'))
depends_on('r-xml2', type=('build', 'run'))
+ depends_on('r-tibble', when='@0.4:', type=('build', 'run'))
+ depends_on('r-tidyr', when='@0.4:', type=('build', 'run'))
+ depends_on('r-rlang', when='@0.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-evaluate/package.py b/var/spack/repos/builtin/packages/r-evaluate/package.py
index d946976bf1..05ec1a4727 100644
--- a/var/spack/repos/builtin/packages/r-evaluate/package.py
+++ b/var/spack/repos/builtin/packages/r-evaluate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-evd/package.py b/var/spack/repos/builtin/packages/r-evd/package.py
index c30bac399c..0d0d5fa4e5 100644
--- a/var/spack/repos/builtin/packages/r-evd/package.py
+++ b/var/spack/repos/builtin/packages/r-evd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-exactextractr/package.py b/var/spack/repos/builtin/packages/r-exactextractr/package.py
index 8374c5dcea..2adb6e73bc 100644
--- a/var/spack/repos/builtin/packages/r-exactextractr/package.py
+++ b/var/spack/repos/builtin/packages/r-exactextractr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,21 @@ from spack import *
class RExactextractr(RPackage):
- """Provides a replacement for the 'extract' function from the 'raster'
- package that is suitable for extracting raster values using 'sf'
- polygons.
- """
+ """Fast Extraction from Raster Datasets using Polygons
+
+ Provides a replacement for the 'extract' function from the 'raster' package
+ that is suitable for extracting raster values using 'sf' polygons."""
homepage = "https://cloud.r-project.org/package=exactextractr"
url = "https://cloud.r-project.org/src/contrib/exactextractr_0.3.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/exactextractr"
+ version('0.5.1', sha256='47ddfb4b9e42e86957e03b1c745d657978d7c4bed12ed3aa053e1bc89f20616d')
version('0.3.0', sha256='c7fb38b38b9dc8b3ca5b8f1f84f4ba3256efd331f2b4636b496d42689ffc3fb0')
version('0.2.1', sha256='d0b998c77c3fd9265a600a0e08e9bf32a2490a06c19df0d0c0dea4b5c9ab5773')
- depends_on('r@3.4:', type=('build', 'run'))
+ depends_on('r@3.4.0:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.12:', type=('build', 'run'))
depends_on('r-raster', type=('build', 'run'))
depends_on('r-sf', type=('build', 'run'))
- depends_on('r-rcpp@0.12.12:', type=('build', 'run'))
- depends_on('geos@3.5:', type=('build', 'run', 'link'))
+ depends_on('geos@3.5.0:', type=('build', 'run', 'link'))
diff --git a/var/spack/repos/builtin/packages/r-exomecopy/package.py b/var/spack/repos/builtin/packages/r-exomecopy/package.py
index dbdcba29cd..63cea83434 100644
--- a/var/spack/repos/builtin/packages/r-exomecopy/package.py
+++ b/var/spack/repos/builtin/packages/r-exomecopy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RExomecopy(RPackage):
- """Detection of copy number variants (CNV) from exome sequencing samples,
+ """Copy number variant detection from exome sequencing read depth
+
+ Detection of copy number variants (CNV) from exome sequencing samples,
including unpaired samples. The package implements a hidden Markov model
which uses positional covariates, such as background read depth and
GC-content, to simultaneously normalize and segment the samples into
@@ -16,6 +18,7 @@ class RExomecopy(RPackage):
homepage = "http://www.bioconductor.org/packages/release/bioc/html/exomeCopy.html"
git = "https://git.bioconductor.org/packages/exomeCopy"
+ version('1.36.0', commit='cbe3134acbbc9b7d5426ae2f142dc64cadb3fc26')
version('1.32.0', commit='c9a884427d91b6d62ddc16a939bd808e389d3ea6')
depends_on('r-iranges@2.5.27:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-exomedepth/package.py b/var/spack/repos/builtin/packages/r-exomedepth/package.py
index 972c92c0b4..69da92775b 100644
--- a/var/spack/repos/builtin/packages/r-exomedepth/package.py
+++ b/var/spack/repos/builtin/packages/r-exomedepth/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-experimenthub/package.py b/var/spack/repos/builtin/packages/r-experimenthub/package.py
new file mode 100644
index 0000000000..c3b76f2435
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-experimenthub/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RExperimenthub(RPackage):
+ """Client to access ExperimentHub resources:
+
+ This package provides a client for the Bioconductor ExperimentHub web
+ resource. ExperimentHub provides a central location where curated data from
+ experiments, publications or training courses can be accessed. Each
+ resource has associated metadata, tags and date of modification. The client
+ creates and manages a local cache of files retrieved enabling quick and
+ reproducible access."""
+
+ bioc = "ExperimentHub"
+
+ version('1.16.1', commit='61d51b7ca968d6cc1befe299e0784d9a19ca51f6')
+
+ depends_on('r-biocgenerics@0.15.10:', type=('build', 'run'))
+ depends_on('r-annotationhub@2.19.3:', type=('build', 'run'))
+ depends_on('r-biocfilecache@1.5.1:', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-biocmanager', type=('build', 'run'))
+ depends_on('r-curl', type=('build', 'run'))
+ depends_on('r-rappdirs', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-expint/package.py b/var/spack/repos/builtin/packages/r-expint/package.py
index 7fc6486a17..cae67e7a86 100644
--- a/var/spack/repos/builtin/packages/r-expint/package.py
+++ b/var/spack/repos/builtin/packages/r-expint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,12 +8,21 @@ from spack import *
class RExpint(RPackage):
- """expint: Exponential Integral and Incomplete Gamma Function"""
+ """Exponential Integral and Incomplete Gamma Function
+
+ The exponential integrals E_1(x), E_2(x), E_n(x) and Ei(x), and the
+ incomplete gamma function G(a, x) defined for negative values of its first
+ argument. The package also gives easy access to the underlying C routines
+ through an API; see the package vignette for details. A test package
+ included in sub-directory example_API provides an implementation. C
+ routines derived from the GNU Scientific Library
+ <https://www.gnu.org/software/gsl/>."""
homepage = "https://cloud.r-project.org/package=expint"
url = "https://cloud.r-project.org/src/contrib/expint_0.1-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/expint"
+ version('0.1-6', sha256='c7d13a8e299a91e94622047fe22b0006137e7bf82e34d10871b631fa58115145')
version('0.1-5', sha256='b03d60938cd6cf615aa3a02b1bf73436785eca89eaff56059ee0807b8244718a')
depends_on('r@3.3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-expm/package.py b/var/spack/repos/builtin/packages/r-expm/package.py
index af64603e2c..3e005d7196 100644
--- a/var/spack/repos/builtin/packages/r-expm/package.py
+++ b/var/spack/repos/builtin/packages/r-expm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RExpm(RPackage):
- """Computation of the matrix exponential, logarithm, sqrt, and related
+ """Matrix Exponential, Log, 'etc'
+
+ Computation of the matrix exponential, logarithm, sqrt, and related
quantities."""
homepage = "http://r-forge.r-project.org/projects/expm"
url = "https://cloud.r-project.org/src/contrib/expm_0.999-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/expm"
+ version('0.999-6', sha256='2c79912fd2e03fcf89c29f09555880934402fcb2359af8b4579d79b4f955addc')
version('0.999-4', sha256='58d06427a08c9442462b00a5531e2575800be13ed450c5a1546261251e536096')
version('0.999-3', sha256='511bac5860cc5b3888bca626cdf23241b6118eabcc82d100935386039e516412')
version('0.999-2', sha256='38f1e5bfa90f794486789695d0d9e49158c7eb9445dc171dd83dec3d8fa130d6')
diff --git a/var/spack/repos/builtin/packages/r-factoextra/package.py b/var/spack/repos/builtin/packages/r-factoextra/package.py
index b5b4caf941..48e4884a14 100644
--- a/var/spack/repos/builtin/packages/r-factoextra/package.py
+++ b/var/spack/repos/builtin/packages/r-factoextra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,22 @@ from spack import *
class RFactoextra(RPackage):
- """factoextra: Extract and Visualize the Results of Multivariate Data
- Analyses"""
+ """Extract and Visualize the Results of Multivariate Data Analyses
+
+ Provides some easy-to-use functions to extract and visualize the output of
+ multivariate data analyses, including 'PCA' (Principal Component Analysis),
+ 'CA' (Correspondence Analysis), 'MCA' (Multiple Correspondence Analysis),
+ 'FAMD' (Factor Analysis of Mixed Data), 'MFA' (Multiple Factor Analysis)
+ and 'HMFA' (Hierarchical Multiple Factor Analysis) functions from different
+ R packages. It contains also functions for simplifying some clustering
+ analysis steps and provides 'ggplot2' - based elegant data
+ visualization."""
homepage = "http://www.sthda.com/english/rpkgs/factoextra"
url = "https://cloud.r-project.org/src/contrib/factoextra_1.0.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/factoextra"
+ version('1.0.7', sha256='624ff01c74933352aca55966f8a052b1ccc878f52c2c307e47f88e0665db94aa')
version('1.0.5', sha256='8177a3f5107883ae248b2cd0afa388a1794741f5155a9455b3883788cf44d5d0')
version('1.0.4', sha256='e4a000a04ef5b9aa0790dc6e5277451c482a19ba10dda9474f6c6982424aeed3')
diff --git a/var/spack/repos/builtin/packages/r-factominer/package.py b/var/spack/repos/builtin/packages/r-factominer/package.py
index dbae32d420..4ec3de8676 100644
--- a/var/spack/repos/builtin/packages/r-factominer/package.py
+++ b/var/spack/repos/builtin/packages/r-factominer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,22 @@ from spack import *
class RFactominer(RPackage):
- """FactoMineR: Multivariate Exploratory Data Analysis and Data Mining"""
+ """Multivariate Exploratory Data Analysis and Data Mining
+
+ Exploratory data analysis methods to summarize, visualize and describe
+ datasets. The main principal component methods are available, those with
+ the largest potential in terms of applications: principal component
+ analysis (PCA) when variables are quantitative, correspondence analysis
+ (CA) and multiple correspondence analysis (MCA) when variables are
+ categorical, Multiple Factor Analysis when variables are structured in
+ groups, etc. and hierarchical cluster analysis. F. Husson, S. Le and J.
+ Pages (2017)."""
homepage = "http://factominer.free.fr"
url = "https://cloud.r-project.org/src/contrib/FactoMineR_1.35.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/FactoMineR"
+ version('2.4', sha256='b9e3adce9a66b4daccc85fa67cb0769d6be230beeb126921b386ccde5db2e851')
version('1.42', sha256='4cd9efb3681767c3bd48ddc3504ebead1493fcbbc0a9f759a00955b16c3481fa')
version('1.41', sha256='a9889d69e298b8a01e8d0a5a54260730e742c95681e367d759829aad9a8740c0')
version('1.40', sha256='68cb778fe7581b55666a5ae4aa7a5e7fa3ecbd133ae8cff1b2371a737b6d95e8')
@@ -22,11 +32,15 @@ class RFactominer(RPackage):
version('1.35', sha256='afe176fe561d1d16c5965ecb2b80ec90a56d0fbcd75c43ec8025a401a5b715a9')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@2.4:', type=('build', 'run'))
depends_on('r-car', type=('build', 'run'))
depends_on('r-cluster', type=('build', 'run'))
+ depends_on('r-dt', when='@2.4:', type=('build', 'run'))
depends_on('r-ellipse', type=('build', 'run'))
depends_on('r-flashclust', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-leaps', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-scatterplot3d', type=('build', 'run'))
+ depends_on('r-ggplot2', when='@2.4:', type=('build', 'run'))
+ depends_on('r-ggrepel', when='@2.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-fansi/package.py b/var/spack/repos/builtin/packages/r-fansi/package.py
index 7e25449302..a6312bb4d1 100644
--- a/var/spack/repos/builtin/packages/r-fansi/package.py
+++ b/var/spack/repos/builtin/packages/r-fansi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,9 +11,10 @@ class RFansi(RPackage):
for the effects of ANSI text formatting control sequences."""
homepage = "https://cloud.r-project.org/package=fansi"
- url = "https://cloud.r-project.org/src/contrib/fansi_0.4.0.tar.gz"
+ url = "https://cloud.r-project.org/src/contrib/fansi_0.4.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/fansi"
+ version('0.4.1', sha256='3c69eec803a3827e5227f9cf084976eeb738b22c7eb7665bb5faa251bce41e09')
version('0.4.0', sha256='e104e9d01c7ff8a847f6b332ef544c0ef912859f9c6a514fe2e6f3b34fcfc209')
version('0.3.0', sha256='dd6401d5c91ff4c45d752cceddd5379d1ae39a8a1196f236b0bc0ec6d691b88c')
version('0.2.3', sha256='db6dfef8bfe6682d58b654b6a6a1d59cb07225ca41755176b465ab8611fd96c9')
diff --git a/var/spack/repos/builtin/packages/r-farver/package.py b/var/spack/repos/builtin/packages/r-farver/package.py
index db4d14228a..868e2e216b 100644
--- a/var/spack/repos/builtin/packages/r-farver/package.py
+++ b/var/spack/repos/builtin/packages/r-farver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,19 @@ from spack import *
class RFarver(RPackage):
- """farver: High Performance Colour Space Manipulation"""
+ """High Performance Colour Space Manipulation
+
+ The encoding of colour can be handled in many different ways, using
+ different colour spaces. As different colour spaces have different uses,
+ efficient conversion between these representations are important. The
+ 'farver' package provides a set of functions that gives access to very fast
+ colour space conversion and comparisons implemented in C++, and offers
+ speed improvements over the 'convertColor' function in the 'grDevices'
+ package."""
homepage = "https://github.com/thomasp85/farver"
url = "https://cloud.r-project.org/src/contrib/farver_2.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/farver"
- version('2.0.1', sha256='1642ca1519ef80616ab044ae7f6eaf464118356f2a7875e9d0e3df60ca84012b')
+ version('2.0.3', sha256='0e1590df79ec6078f10426411b96216b70568a4eaf3ffd84ca723add0ed8e5cc')
+ version('2.0.1', sha256='71473e21727357084c6aec4bb9bb258a6797a0f676b4b27504a03f16aa2f4e54')
diff --git a/var/spack/repos/builtin/packages/r-fastcluster/package.py b/var/spack/repos/builtin/packages/r-fastcluster/package.py
index 2848a10923..1a11c60cf9 100644
--- a/var/spack/repos/builtin/packages/r-fastcluster/package.py
+++ b/var/spack/repos/builtin/packages/r-fastcluster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-fastdigest/package.py b/var/spack/repos/builtin/packages/r-fastdigest/package.py
new file mode 100644
index 0000000000..35ad430ffb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-fastdigest/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RFastdigest(RPackage):
+ """Fast, Low Memory-Footprint Digests of R Objects
+
+ Provides an R interface to Bob Jenkin's streaming, non-cryptographic
+ 'SpookyHash' hash algorithm for use in digest-based comparisons of R
+ objects. 'fastdigest' plugs directly into R's internal serialization
+ machinery, allowing digests of all R objects the serialize() function
+ supports, including reference-style objects via custom hooks. Speed is
+ high and scales linearly by object size;
+ memory usage is constant and negligible."""
+
+ homepage = "https://cloud.r-project.org/web/packages/fastdigest/index.html"
+ url = "https://cloud.r-project.org/src/contrib/fastdigest_0.6-3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/fastdigest"
+
+ maintainers = ['dorton21']
+
+ version('0.6-3', sha256='62a04aa39f751cf9bb7ff43cadb3c1a8d2270d7f3e8550a2d6ca9e1d8ca09a09')
diff --git a/var/spack/repos/builtin/packages/r-fastica/package.py b/var/spack/repos/builtin/packages/r-fastica/package.py
new file mode 100644
index 0000000000..03e8c56193
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-fastica/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RFastica(RPackage):
+ """FastICA Algorithms to Perform ICA and Projection Pursuit:
+
+ Implementation of FastICA algorithm to perform Independent Component
+ Analysis (ICA) and Projection Pursuit."""
+
+ cran = "fastICA"
+
+ version('1.2-2', sha256='32223593374102bf54c8fdca7b57231e4f4d0dd0be02d9f3500ad41b1996f1fe')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-fastmap/package.py b/var/spack/repos/builtin/packages/r-fastmap/package.py
new file mode 100644
index 0000000000..52dd7db5b1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-fastmap/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RFastmap(RPackage):
+ """Fast Implementation of a Key-Value Store
+
+ Fast implementation of a key-value store. Environments are commonly used as
+ key-value stores, but every time a new key is used, it is added to R's
+ global symbol table, causing a small amount of memory leakage. This can be
+ problematic in cases where many different keys are used. Fastmap avoids
+ this memory leak issue by implementing the map using data structures in
+ C++."""
+
+ homepage = "https://r-lib.github.io/fastmap/"
+ url = "https://cloud.r-project.org/src/contrib/fastmap_1.0.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/fastmap"
+
+ version('1.0.1', sha256='4778b05dfebd356f8df980dfeff3b973a72bca14898f870e5c40c1d84db9faec')
diff --git a/var/spack/repos/builtin/packages/r-fastmatch/package.py b/var/spack/repos/builtin/packages/r-fastmatch/package.py
index 5c4c5a4895..4b4fe3f9fa 100644
--- a/var/spack/repos/builtin/packages/r-fastmatch/package.py
+++ b/var/spack/repos/builtin/packages/r-fastmatch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-fastmatrix/package.py b/var/spack/repos/builtin/packages/r-fastmatrix/package.py
new file mode 100644
index 0000000000..2a69b92f64
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-fastmatrix/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RFastmatrix(RPackage):
+ """Fast Computation of some Matrices Useful in Statistics
+
+ Small set of functions to fast computation of some matrices and operations
+ useful in statistics."""
+
+ homepage = "https://faosorios.github.io/fastmatrix/"
+ url = "https://cloud.r-project.org/src/contrib/fastmatrix_0.3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/fastmatrix"
+
+ version('0.3', sha256='d92e789454a129db5f6f5b23e0d2245f3d55ff34b167427af265b9a6331e7c21')
+
+ depends_on('r@3.5.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg18/package.py b/var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg18/package.py
index 98b09d0353..59907838af 100644
--- a/var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg18/package.py
+++ b/var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg18/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RFdbInfiniummethylationHg18(RPackage):
- """Compiled HumanMethylation27 and HumanMethylation450 annotations"""
+ """Annotation package for Illumina Infinium DNA methylation probes
+
+ Compiled HumanMethylation27 and HumanMethylation450 annotations"""
# This is a bioconductor package but there is no available git repository
homepage = "http://bioconductor.org/packages/release/data/annotation/html/FDb.InfiniumMethylation.hg18.html"
diff --git a/var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg19/package.py b/var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg19/package.py
index ae6749434a..0c9d2459b5 100644
--- a/var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg19/package.py
+++ b/var/spack/repos/builtin/packages/r-fdb-infiniummethylation-hg19/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RFdbInfiniummethylationHg19(RPackage):
- """Compiled HumanMethylation27 and HumanMethylation450 annotations."""
+ """Annotation package for Illumina Infinium DNA methylation probes
+
+ Compiled HumanMethylation27 and HumanMethylation450 annotations."""
# No available git repository
homepage = "https://bioconductor.org/packages/release/data/annotation/html/FDb.InfiniumMethylation.hg19.html"
diff --git a/var/spack/repos/builtin/packages/r-ff/package.py b/var/spack/repos/builtin/packages/r-ff/package.py
index 72eb021612..8e0552852f 100644
--- a/var/spack/repos/builtin/packages/r-ff/package.py
+++ b/var/spack/repos/builtin/packages/r-ff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,60 @@ from spack import *
class RFf(RPackage):
- """memory-efficient storage of large data on disk and
- fast access functions."""
+ """Memory-Efficient Storage of Large Data on Disk and Fast Access Functions
+
+ The ff package provides data structures that are stored on disk but behave
+ (almost) as if they were in RAM by transparently mapping only a section
+ (pagesize) in main memory - the effective virtual memory consumption per
+ ff object. ff supports R's standard atomic data types 'double', 'logical',
+ 'raw' and 'integer' and non-standard atomic types boolean (1 bit), quad (2
+ bit unsigned), nibble (4 bit unsigned), byte (1 byte signed with NAs),
+ ubyte (1 byte unsigned), short (2 byte signed with NAs), ushort (2 byte
+ unsigned), single (4 byte float with NAs). For example 'quad' allows
+ efficient storage of genomic data as an 'A','T','G','C' factor. The
+ unsigned types support 'circular' arithmetic. There is also support for
+ close-to-atomic types 'factor', 'ordered', 'POSIXct', 'Date' and custom
+ close-to-atomic types. ff not only has native C-support for vectors,
+ matrices and arrays with flexible dimorder (major column-order, major
+ row-order and generalizations for arrays). There is also a ffdf class not
+ unlike data.frames and import/export filters for csv files. ff objects
+ store raw data in binary flat files in native encoding, and complement this
+ with metadata stored in R as physical and virtual attributes. ff objects
+ have well-defined hybrid copying semantics, which gives rise to certain
+ performance improvements through virtualization. ff objects can be stored
+ and reopened across R sessions. ff files can be shared by multiple ff R
+ objects (using different data en/de-coding schemes) in the same process
+ or from multiple R processes to exploit parallelism. A wide choice of
+ finalizer options allows to work with 'permanent' files as well as
+ creating/removing 'temporary' ff files completely transparent to the user.
+ On certain OS/Filesystem combinations, creating the ff files works without
+ notable delay thanks to using sparse file allocation. Several access
+ optimization techniques such as Hybrid Index Preprocessing and
+ Virtualization are implemented to achieve good performance even with large
+ datasets, for example virtual matrix transpose without touching a single
+ byte on disk. Further, to reduce disk I/O, 'logicals' and non-standard
+ data types get stored native and compact on binary flat files i.e.
+ logicals take up exactly 2 bits to represent TRUE, FALSE and NA. Beyond
+ basic access functions, the ff package also provides compatibility
+ functions that facilitate writing code for ff and ram objects and support
+ for batch processing on ff objects (e.g. as.ram, as.ff, ffapply). ff
+ interfaces closely with functionality from package 'bit': chunked looping,
+ fast bit operations and coercions between different objects that can store
+ subscript information ('bit', 'bitwhich', ff 'boolean', ri range index, hi
+ hybrid index). This allows to work interactively with selections of large
+ datasets and quickly modify selection criteria. Further high-performance
+ enhancements can be made available upon request.x """
homepage = "http://ff.r-forge.r-project.org/"
url = "https://cloud.r-project.org/src/contrib/ff_2.2-13.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ff"
+ version('4.0.4', sha256='22ecf1811263f27c9fd9f7e13e77f97dcbc0b8ae6f59b76dbaed77569c13d2e5')
version('2.2-14', sha256='1c6307847275b1b8ad9e2ffdce3f4df3c9d955dc2e8a45e3fd7bfd2b0926e2f0')
version('2.2-13', sha256='8bfb08afe0651ef3c23aaad49208146d5f929af5af12a25262fe7743fa346ddb')
depends_on('r@2.10.1:', type=('build', 'run'))
depends_on('r-bit@1.1-13:', type=('build', 'run'))
+ depends_on('r-bit@4.0.0:', when='@4.0.4:', type=('build', 'run'))
patch('utk_platform_macros.hpp.patch', when='target=aarch64:')
diff --git a/var/spack/repos/builtin/packages/r-fftwtools/package.py b/var/spack/repos/builtin/packages/r-fftwtools/package.py
index 4f3074e7c4..831037cf1c 100644
--- a/var/spack/repos/builtin/packages/r-fftwtools/package.py
+++ b/var/spack/repos/builtin/packages/r-fftwtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,22 @@ from spack import *
class RFftwtools(RPackage):
- """Provides a wrapper for several 'FFTW' functions. This package provides
- access to the two-dimensional 'FFT', the multivariate 'FFT', and the
- one-dimensional real to complex 'FFT' using the 'FFTW3' library. The
- package includes the functions fftw() and mvfftw() which are designed
- to mimic the functionality of the R functions fft() and mvfft().
- The 'FFT' functions have a parameter that allows them to not return
- the redundant complex conjugate when the input is real data."""
+ """Wrapper for 'FFTW3' Includes: One-Dimensional Univariate,
+ One-Dimensional Multivariate, and Two-Dimensional Transform
+
+ Provides a wrapper for several 'FFTW' functions. This package provides
+ access to the two-dimensional 'FFT', the multivariate 'FFT', and the
+ one-dimensional real to complex 'FFT' using the 'FFTW3' library. The
+ package includes the functions fftw() and mvfftw() which are designed to
+ mimic the functionality of the R functions fft() and mvfft(). The 'FFT'
+ functions have a parameter that allows them to not return the redundant
+ complex conjugate when the input is real data."""
homepage = "https://github.com/krahim/fftwtools"
url = "https://cloud.r-project.org/src/contrib/fftwtools_0.9-8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/fftwtools"
+ version('0.9-9', sha256='a9273b7e495d228d740ab4525467e4bbefe8614bd2d97e7234017f1305f51441')
version('0.9-8', sha256='4641c8cd70938c2a8bde0b6da6cf7f83e96175ef52f1ca42ec3920a1dabf1bdb')
depends_on('r@2.15.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-fgsea/package.py b/var/spack/repos/builtin/packages/r-fgsea/package.py
index 6787e4d33f..80ab4145c8 100644
--- a/var/spack/repos/builtin/packages/r-fgsea/package.py
+++ b/var/spack/repos/builtin/packages/r-fgsea/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RFgsea(RPackage):
- """Fast Gene Set Enrichment Analysis.
+ """Fast Gene Set Enrichment Analysis
The package implements an algorithm for fast gene set enrichment
analysis. Using the fast algorithm allows to make more permutations and
@@ -17,6 +17,7 @@ class RFgsea(RPackage):
homepage = "https://bioconductor.org/packages/fgsea"
git = "https://git.bioconductor.org/packages/fgsea.git"
+ version('1.16.0', commit='9d9df596c7e160afa18e067b7637cfc465494318')
version('1.10.1', commit='fb06a6ebfb4a195e77e37226d100a2148b90c5f3')
version('1.8.0', commit='bb2898aca9fb23e90770671a83fe23f79bb1841b')
version('1.6.0', commit='52b801b7c2dfd8238fa8f2b402fddb4fda60271d')
@@ -30,7 +31,5 @@ class RFgsea(RPackage):
depends_on('r-ggplot2@2.2.0:', type=('build', 'run'))
depends_on('r-gridextra', type=('build', 'run'))
depends_on('r-fastmatch', type=('build', 'run'))
-
depends_on('r-matrix', when='@1.6.0:', type=('build', 'run'))
-
depends_on('r-bh', when='@1.10.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-fields/package.py b/var/spack/repos/builtin/packages/r-fields/package.py
index 9d1aae306a..44dd2fc8ba 100644
--- a/var/spack/repos/builtin/packages/r-fields/package.py
+++ b/var/spack/repos/builtin/packages/r-fields/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,40 @@ from spack import *
class RFields(RPackage):
- """fields: Tools for Spatial Data"""
+ """Tools for Spatial Data
+
+ For curve, surface and function fitting with an emphasis; on splines,
+ spatial data, geostatistics, and spatial statistics. The major methods;
+ include cubic, and thin plate splines, Kriging, and compactly supported;
+ covariance functions for large data sets. The splines and Kriging methods
+ are; supported by functions that can determine the smoothing parameter;
+ (nugget and sill variance) and other covariance function parameters by
+ cross; validation and also by restricted maximum likelihood. For Kriging;
+ there is an easy to use function that also estimates the correlation; scale
+ (range parameter). A major feature is that any covariance function;
+ implemented in R and following a simple format can be used for; spatial
+ prediction. There are also many useful functions for plotting; and working
+ with spatial data as images. This package also contains; an implementation
+ of sparse matrix methods for large spatial data; sets and currently
+ requires the sparse matrix (spam) package. Use; help(fields) to get started
+ and for an overview. The fields source; code is deliberately commented and
+ provides useful explanations of; numerical details as a companion to the
+ manual pages. The commented; source code can be viewed by expanding the
+ source code version; and looking in the R subdirectory. The reference for
+ fields can be generated; by the citation function in R and has DOI
+ <doi:10.5065/D6W957CT>. Development; of this package was supported in part
+ by the National Science Foundation Grant; 1417857, the National Center
+ for Atmospheric Research, and Colorado School of Mines.; See the Fields
+ URL; for a vignette on using this package and some background on spatial
+ statistics."""
homepage = "https://github.com/NCAR/Fields"
url = "https://cloud.r-project.org/src/contrib/fields_9.9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/fields"
+ version('11.6', sha256='8600d1d992c40668cc2ab01b3c17d0e1bd44a001ec7ba9f468bc0e9ef87c59db')
version('9.9', sha256='262f03c630773b580c7162ab2a031c894ca489fd83989fd8a2f67573306e78e1')
depends_on('r@3.0:', type=('build', 'run'))
- depends_on('r-maps', type=('build', 'run'))
depends_on('r-spam', type=('build', 'run'))
+ depends_on('r-maps', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-filehash/package.py b/var/spack/repos/builtin/packages/r-filehash/package.py
index 5a5c60a782..a9926f0a60 100644
--- a/var/spack/repos/builtin/packages/r-filehash/package.py
+++ b/var/spack/repos/builtin/packages/r-filehash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-findpython/package.py b/var/spack/repos/builtin/packages/r-findpython/package.py
index c6e0754c3c..406bd11cbc 100644
--- a/var/spack/repos/builtin/packages/r-findpython/package.py
+++ b/var/spack/repos/builtin/packages/r-findpython/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-fit-models/package.py b/var/spack/repos/builtin/packages/r-fit-models/package.py
index c7809293a6..ae80f1946e 100644
--- a/var/spack/repos/builtin/packages/r-fit-models/package.py
+++ b/var/spack/repos/builtin/packages/r-fit-models/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,23 @@ from spack import *
class RFitModels(RPackage):
- """Compare Fitted Models"""
+ """Compare Fitted Models
+
+ The fit.models function and its associated methods (coefficients, print,
+ summary, plot, etc.) were originally provided in the robust package to
+ compare robustly and classically fitted model objects. See chapters 2, 3,
+ and 5 in Insightful (2002) 'Robust Library User's Guide'
+ <http://robust.r-forge.r-project.org/Robust.pdf>). The aim of the
+ fit.models package is to separate this fitted model object comparison
+ functionality from the robust package and to extend it to support fitting
+ methods (e.g., classical, robust, Bayesian, regularized, etc.) more
+ generally."""
homepage = "https://cloud.r-project.org/package=fit.models"
url = "https://cloud.r-project.org/src/contrib/fit.models_0.5-14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/fit.models"
+ version('0.64', sha256='f70806bfa85a05337fa5a665264d640e307584714a07a329fbe96c86b0e864da')
version('0.5-14', sha256='93b9d119e97b36c648a19c891fc5e69f5306eb5b9bac16bf377555057afd4b6e')
version('0.5-13', sha256='7df545fce135159e9abf0a19076628d3ec2999e89f018e142a7a970428823d48')
diff --git a/var/spack/repos/builtin/packages/r-fitdistrplus/package.py b/var/spack/repos/builtin/packages/r-fitdistrplus/package.py
index bef9620500..935c3784af 100644
--- a/var/spack/repos/builtin/packages/r-fitdistrplus/package.py
+++ b/var/spack/repos/builtin/packages/r-fitdistrplus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RFitdistrplus(RPackage):
- """Extends the fitdistr() function (of the MASS package) with several
+ """Help to Fit of a Parametric Distribution to Non-Censored or Censored Data
+
+ Extends the fitdistr() function (of the MASS package) with several
functions to help the fit of a parametric distribution to non-censored or
censored data. Censored data may contain left censored, right censored and
interval censored values, with several lower and upper bounds. In addition
@@ -21,9 +23,10 @@ class RFitdistrplus(RPackage):
url = "https://cloud.r-project.org/src/contrib/fitdistrplus_1.0-14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/fitdistrplus"
+ version('1.1-3', sha256='776d5456e14398e44b78b3d7db526559bb7a3537e546a29c88aa192141c756de')
version('1.0-14', sha256='85082590f62aa08d99048ea3414c5cc1e5b780d97b3779d2397c6cb435470083')
depends_on('r@3.2.0:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-survival', type=('build', 'run'))
- depends_on('r-npsurv', type=('build', 'run'))
+ depends_on('r-npsurv', when='@:1.0-14', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-flashclust/package.py b/var/spack/repos/builtin/packages/r-flashclust/package.py
index 091175742e..9952dd0075 100644
--- a/var/spack/repos/builtin/packages/r-flashclust/package.py
+++ b/var/spack/repos/builtin/packages/r-flashclust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-flexclust/package.py b/var/spack/repos/builtin/packages/r-flexclust/package.py
index df2e3bc286..321c940cc5 100644
--- a/var/spack/repos/builtin/packages/r-flexclust/package.py
+++ b/var/spack/repos/builtin/packages/r-flexclust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-flexmix/package.py b/var/spack/repos/builtin/packages/r-flexmix/package.py
index 8cced441c5..c44c6213a3 100644
--- a/var/spack/repos/builtin/packages/r-flexmix/package.py
+++ b/var/spack/repos/builtin/packages/r-flexmix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,19 @@ from spack import *
class RFlexmix(RPackage):
- """flexmix: Flexible Mixture Modeling"""
+ """Flexible Mixture Modeling
+
+ A general framework for finite mixtures of regression models using the EM
+ algorithm is implemented. The E-step and all data handling are provided,
+ while the M-step can be supplied by the user to easily define new models.
+ Existing drivers implement mixtures of standard linear models, generalized
+ linear models and model-based clustering."""
homepage = "https://cloud.r-project.org/package=flexmix"
url = "https://cloud.r-project.org/src/contrib/flexmix_2.3-14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/flexmix"
+ version('2.3-17', sha256='36019b7833032409ac61720dd625fa5a581a1d8bcba9045b04979c90907b5649')
version('2.3-15', sha256='ba444c0bfe33ab87d440ab590c06b03605710acd75811c1622253171bb123f43')
version('2.3-14', sha256='837c7f175a211b3c484b2c7b81ec9729889a614c5c6e7d70c95a2c1d60ff846a')
diff --git a/var/spack/repos/builtin/packages/r-fnn/package.py b/var/spack/repos/builtin/packages/r-fnn/package.py
index b41b878476..85955c4dd7 100644
--- a/var/spack/repos/builtin/packages/r-fnn/package.py
+++ b/var/spack/repos/builtin/packages/r-fnn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-forcats/package.py b/var/spack/repos/builtin/packages/r-forcats/package.py
index f9d2b3858c..f4fdea8b4e 100644
--- a/var/spack/repos/builtin/packages/r-forcats/package.py
+++ b/var/spack/repos/builtin/packages/r-forcats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,25 @@ from spack import *
class RForcats(RPackage):
- """Helpers for reordering factor levels (including moving specified levels
- to front, ordering by first appearance, reversing, and randomly
- shuffling), and tools for modifying factor levels (including collapsing
- rare levels into other, 'anonymising', and manually 'recoding')."""
+ """Tools for Working with Categorical Variables (Factors)
+
+ Helpers for reordering factor levels (including moving specified levels to
+ front, ordering by first appearance, reversing, and randomly shuffling),
+ and tools for modifying factor levels (including collapsing rare levels
+ into other, 'anonymising', and manually 'recoding')."""
homepage = "http://forcats.tidyverse.org/"
url = "https://cloud.r-project.org/src/contrib/forcats_0.2.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/forcats"
+ version('0.5.0', sha256='8f960e789333ec597ddf2d653a64e330f03b86f465e9b71f6779f227355d90c4')
version('0.4.0', sha256='7c83cb576aa6fe1379d7506dcc332f7560068b2025f9e3ab5cd0a5f28780d2b2')
version('0.3.0', sha256='95814610ec18b8a8830eba63751954387f9d21400d6ab40394ed0ff22c0cb657')
version('0.2.0', sha256='b5bce370422d4c0ec9509249ae645373949bfbe9217cdf50dce2bfbdad9f7cd7')
depends_on('r@3.1:', type=('build', 'run'))
- depends_on('r-tibble', type=('build', 'run'))
- depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r@3.2:', when='@0.5.0:', type=('build', 'run'))
depends_on('r-ellipsis', when='@0.4.0:', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-rlang', when='@0.4.0:', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-foreach/package.py b/var/spack/repos/builtin/packages/r-foreach/package.py
index d87d126173..32eabf22a8 100644
--- a/var/spack/repos/builtin/packages/r-foreach/package.py
+++ b/var/spack/repos/builtin/packages/r-foreach/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RForeach(RPackage):
- """Support for the foreach looping construct. Foreach is an idiom that
+ """Provides Foreach Looping Construct
+
+ Support for the foreach looping construct. Foreach is an idiom that
allows for iterating over elements in a collection, without the use of an
explicit loop counter. This package in particular is intended to be used
for its return value, rather than for its side effects. In that sense, it
@@ -19,6 +21,7 @@ class RForeach(RPackage):
url = "https://cloud.r-project.org/src/contrib/foreach_1.4.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/foreach"
+ version('1.5.1', sha256='fb5ad69e295618c52b2ac7dff84a0771462870a97345374d43b3de2dc31a68e1')
version('1.4.7', sha256='95632c0b1182fc01490718d82fa3b2bce864f2a011ae53282431c7c2a3f5f160')
version('1.4.3', sha256='1ef03f770f726a62e3753f2402eb26b226245958fa99d570d003fc9e47d35881')
diff --git a/var/spack/repos/builtin/packages/r-forecast/package.py b/var/spack/repos/builtin/packages/r-forecast/package.py
index 7b51195eb2..cc307f472e 100644
--- a/var/spack/repos/builtin/packages/r-forecast/package.py
+++ b/var/spack/repos/builtin/packages/r-forecast/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RForecast(RPackage):
- """Methods and tools for displaying and analysing univariate time
+ """Forecasting Functions for Time Series and Linear Models
+
+ Methods and tools for displaying and analysing univariate time
series forecasts including exponential smoothing via state space
models and automatic ARIMA modelling."""
@@ -15,20 +17,21 @@ class RForecast(RPackage):
url = "https://cloud.r-project.org/src/contrib/forecast_8.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/forecast"
+ version('8.13', sha256='490e3a2beb71c238dd26e7afa0b33394b9906dd0dc54712d4808894d5aa1386f')
version('8.8', sha256='d077074d77d3ea00e9215c828b3689a8c841a16af1e6859bb2dfdede081c2c1d')
version('8.6', sha256='4279e4f700e26310bae39419ab4a9b5918a850148667a5e577a4807d53eb4d02')
version('8.2', sha256='eb3fab64ed139d068e7d026cd3880f1b623f4153a832fb71845488fa75e8b812')
depends_on('r@3.0.2:', type=('build', 'run'))
- depends_on('r-magrittr', type=('build', 'run'))
- depends_on('r-ggplot2@2.2.1:', type=('build', 'run'))
depends_on('r-colorspace', type=('build', 'run'))
+ depends_on('r-fracdiff', type=('build', 'run'))
+ depends_on('r-ggplot2@2.2.1:', type=('build', 'run'))
+ depends_on('r-lmtest', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-nnet', type=('build', 'run'))
depends_on('r-rcpp@0.11.0:', type=('build', 'run'))
- depends_on('r-fracdiff', type=('build', 'run'))
+ depends_on('r-timedate', type=('build', 'run'))
depends_on('r-tseries', type=('build', 'run'))
- depends_on('r-lmtest', type=('build', 'run'))
+ depends_on('r-urca', when='@8.6:', type=('build', 'run'))
depends_on('r-zoo', type=('build', 'run'))
- depends_on('r-timedate', type=('build', 'run'))
depends_on('r-rcpparmadillo@0.2.35:', type=('build', 'run'))
- depends_on('r-urca', when='@8.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-foreign/package.py b/var/spack/repos/builtin/packages/r-foreign/package.py
index a7f322cfc0..af628204fc 100644
--- a/var/spack/repos/builtin/packages/r-foreign/package.py
+++ b/var/spack/repos/builtin/packages/r-foreign/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,21 @@ from spack import *
class RForeign(RPackage):
- """Functions for reading and writing data stored by some versions of Epi
- Info, Minitab, S, SAS, SPSS, Stata, Systat and Weka and for reading and
- writing some dBase files."""
+ """Read Data Stored by 'Minitab', 'S', 'SAS', 'SPSS', 'Stata', 'Systat',
+ 'Weka', 'dBase', ...
+
+ Reading and writing data stored by some versions of 'Epi Info', 'Minitab',
+ 'S', 'SAS', 'SPSS', 'Stata', 'Systat', 'Weka', and for reading and writing
+ some 'dBase' files."""
homepage = "https://cloud.r-project.org/package=foreign"
url = "https://cloud.r-project.org/src/contrib/foreign_0.8-66.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/foreign"
+ version('0.8-81', sha256='1ae8f9f18f2a037697fa1a9060417ff255c71764f0145080b2bd23ba8262992c')
version('0.8-72', sha256='439c17c9cd387e180b1bb640efff3ed1696b1016d0f7b3b3b884e89884488c88')
version('0.8-70.2', sha256='ae82fad68159860b8ca75b49538406ef3d2522818e649d7ccc209c18085ef179')
version('0.8-66', sha256='d7401e5fcab9ce6e697d3520dbb8475e229c30341c0004c4fa489c82aa4447a4')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r@4.0.0:', when='@0.8-81:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-formatr/package.py b/var/spack/repos/builtin/packages/r-formatr/package.py
index 2286379cfb..0a4ff03258 100644
--- a/var/spack/repos/builtin/packages/r-formatr/package.py
+++ b/var/spack/repos/builtin/packages/r-formatr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-formula/package.py b/var/spack/repos/builtin/packages/r-formula/package.py
index 575a11f0ab..41fa4abc93 100644
--- a/var/spack/repos/builtin/packages/r-formula/package.py
+++ b/var/spack/repos/builtin/packages/r-formula/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,17 @@ from spack import *
class RFormula(RPackage):
- """Infrastructure for extended formulas with multiple parts on the right-hand
- side and/or multiple responses on the left-hand side."""
+ """Extended Model Formulas
+
+ Infrastructure for extended formulas with multiple parts on the right-hand
+ side and/or multiple responses on the left-hand side (see
+ <doi:10.18637/jss.v034.i01>)."""
homepage = "https://cloud.r-project.org/package=Formula"
url = "https://cloud.r-project.org/src/contrib/Formula_1.2-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Formula"
+ version('1.2-4', sha256='cb70e373b5ed2fc8450937fb3321d37dfd22dcc6f07cb872a419d51205125caf')
version('1.2-3', sha256='1411349b20bd09611a9fd0ee6d15f780c758ad2b0e490e908facb49433823872')
version('1.2-2', sha256='8def4600fb7457d38db8083733477501b54528974aa216e4adf8871bff4aa429')
version('1.2-1', sha256='5db1ef55119b299c9d291e1c5c08e2d51b696303daf4e7295c38ff5fc428360a')
diff --git a/var/spack/repos/builtin/packages/r-fpc/package.py b/var/spack/repos/builtin/packages/r-fpc/package.py
index adec9cd72b..5ed8efa025 100644
--- a/var/spack/repos/builtin/packages/r-fpc/package.py
+++ b/var/spack/repos/builtin/packages/r-fpc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,30 @@ from spack import *
class RFpc(RPackage):
- """fpc: Flexible Procedures for Clustering"""
+ """Flexible Procedures for Clustering
+
+ Various methods for clustering and cluster validation. Fixed point
+ clustering. Linear regression clustering. Clustering by merging Gaussian
+ mixture components. Symmetric and asymmetric discriminant projections for
+ visualisation of the separation of groupings. Cluster validation
+ statistics for distance based clustering including corrected Rand index.
+ Standardisation of cluster validation statistics by random clusterings and
+ comparison between many clustering methods and numbers of clusters based on
+ this. Cluster-wise cluster stability assessment. Methods for estimation
+ of the number of clusters: Calinski-Harabasz, Tibshirani and Walther's
+ prediction strength, Fang and Wang's bootstrap stability.
+ Gaussian/multinomial mixture fitting for mixed continuous/categorical
+ variables. Variable-wise statistics for cluster interpretation. DBSCAN
+ clustering. Interface functions for many clustering methods implemented in
+ R, including estimating the number of clusters with kmeans, pam and clara.
+ Modality diagnosis for Gaussian mixtures. For an overview see
+ package?fpc."""
homepage = "http://www.homepages.ucl.ac.uk/~ucakche"
url = "https://cloud.r-project.org/src/contrib/fpc_2.1-10.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/fpc"
+ version('2.2-9', sha256='29b0006e96c8645645d215d3378551bd6525aaf45abde2d9f12933cf6e75fa38')
version('2.2-3', sha256='8100a74e6ff96b1cd65fd22494f2d200e54ea5ea533cfca321fa494914bdc3b7')
version('2.2-2', sha256='b6907019eb161d5c8c814cf02a4663cc8aae6322699932881ce5b02f45ecf8d3')
version('2.1-10', sha256='5d17c5f475c3f24a4809678cbc6186a357276240cf7fcb00d5670b9e68baa096')
@@ -25,7 +43,7 @@ class RFpc(RPackage):
depends_on('r-prabclus', type=('build', 'run'))
depends_on('r-class', type=('build', 'run'))
depends_on('r-diptest', type=('build', 'run'))
- depends_on('r-mvtnorm', when='@:2.2-2', type=('build', 'run'))
depends_on('r-robustbase', type=('build', 'run'))
depends_on('r-kernlab', type=('build', 'run'))
depends_on('r-trimcluster', when='@:2.1-10', type=('build', 'run'))
+ depends_on('r-mvtnorm', when='@:2.2-2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-fpcompare/package.py b/var/spack/repos/builtin/packages/r-fpcompare/package.py
new file mode 100644
index 0000000000..95f96fcacc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-fpcompare/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RFpcompare(RPackage):
+ """Reliable Comparison of Floating Point Numbers
+
+ Comparisons of floating point numbers are problematic due to errors
+ associated with the binary representation of decimal numbers. Despite
+ being aware of these problems, people still use numerical methods
+ that fail to account for these and other rounding errors (this pitfall
+ is the first to be highlighted in Circle 1 of Burns (2012) 'The R
+ Inferno' <http://www.burns-stat.com/pages/Tutor/R_inferno.pdf>). This
+ package provides new relational operators useful for performing
+ floating point number comparisons with a set tolerance."""
+
+ homepage = "https://github.com/PredictiveEcology/fpCompare"
+ url = "https://cloud.r-project.org/src/contrib/fpCompare_0.2.3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/fpCompare"
+
+ maintainers = ['dorton21']
+
+ version('0.2.3', sha256='f89be3568544a3a44e4f01b5050ed03705805308ec1aa4add9a5e1b5b328dbdf')
+
+ depends_on('r@3.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-fracdiff/package.py b/var/spack/repos/builtin/packages/r-fracdiff/package.py
index 8353598e0e..25c8a161fb 100644
--- a/var/spack/repos/builtin/packages/r-fracdiff/package.py
+++ b/var/spack/repos/builtin/packages/r-fracdiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,16 @@ from spack import *
class RFracdiff(RPackage):
- """Maximum likelihood estimation of the parameters of a
- fractionally differenced ARIMA(p,d,q) model (Haslett and
- Raftery, Appl.Statistics, 1989)."""
+ """Fractionally Differenced ARIMA aka ARFIMA(P,d,q) Models
+
+ Maximum likelihood estimation of the parameters of a fractionally
+ differenced ARIMA(p,d,q) model (Haslett and Raftery, Appl.Statistics,
+ 1989); including inference and basic methods. Some alternative algorithms
+ to estimate "H"."""
homepage = "https://cloud.r-project.org/package=fracdiff"
url = "https://cloud.r-project.org/src/contrib/fracdiff_1.4-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/fracdiff"
+ version('1.5-1', sha256='b8103b32a4ca3a59dda1624c07da08ecd144c7a91a747d1f4663e99421950eb6')
version('1.4-2', sha256='983781cedc2b4e3ba9fa020213957d5133ae9cd6710bc61d6225728e2f6e850e')
diff --git a/var/spack/repos/builtin/packages/r-fs/package.py b/var/spack/repos/builtin/packages/r-fs/package.py
index 9f48c24270..16efd88e37 100644
--- a/var/spack/repos/builtin/packages/r-fs/package.py
+++ b/var/spack/repos/builtin/packages/r-fs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,18 @@ from spack import *
class RFs(RPackage):
- """A cross-platform interface to file system operations, built on top of
+ """Cross-Platform File System Operations Based on 'libuv'
+
+ A cross-platform interface to file system operations, built on top of
the 'libuv' C library."""
homepage = "http://fs.r-lib.org/"
url = "https://cloud.r-project.org/src/contrib/fs_1.3.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/fs"
+ version('1.5.0', sha256='36df1653571de3c628a4f769c4627f6ac53d0f9e4106d9d476afb22ae9603897')
version('1.3.1', sha256='d6934dca8f835d8173e3fb9fd4d5e2740c8c04348dd2bcc57df1b711facb46bc')
depends_on('r@3.1:', type=('build', 'run'))
- depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-rcpp', when='@:1.3.1', type=('build', 'run'))
depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-futile-logger/package.py b/var/spack/repos/builtin/packages/r-futile-logger/package.py
index 0925af275f..fda161da16 100644
--- a/var/spack/repos/builtin/packages/r-futile-logger/package.py
+++ b/var/spack/repos/builtin/packages/r-futile-logger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-futile-options/package.py b/var/spack/repos/builtin/packages/r-futile-options/package.py
index feca56c4ae..2108bd0acc 100644
--- a/var/spack/repos/builtin/packages/r-futile-options/package.py
+++ b/var/spack/repos/builtin/packages/r-futile-options/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-future-apply/package.py b/var/spack/repos/builtin/packages/r-future-apply/package.py
index 025d406ff5..6a436a1514 100644
--- a/var/spack/repos/builtin/packages/r-future-apply/package.py
+++ b/var/spack/repos/builtin/packages/r-future-apply/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RFutureApply(RPackage):
- """Implementations of apply(), by(), eapply(), lapply(), Map(), mapply(),
+ """Apply Function to Elements in Parallel using Futures
+
+ Implementations of apply(), by(), eapply(), lapply(), Map(), mapply(),
replicate(), sapply(), tapply(), and vapply() that can be resolved using
any future-supported backend, e.g. parallel on the local machine or
distributed on a compute cluster. These future_*apply() functions come with
@@ -19,8 +21,11 @@ class RFutureApply(RPackage):
url = "https://cloud.r-project.org/src/contrib/future.apply_1.3.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/future.apply"
+ version('1.7.0', sha256='2ffa6adb55f239918ce9679b7eac8dcc4bf2e6bed35c9cbedf4bf90d906345db')
version('1.3.0', sha256='6374eca49bb81e05c013509c8e324cf9c5d023f9f8217b29ce7b7e12025ca371')
depends_on('r@3.2.0:', type=('build', 'run'))
depends_on('r-future@1.13.0:', type=('build', 'run'))
+ depends_on('r-future@1.17.0:', when='@1.7.0:', type=('build', 'run'))
depends_on('r-globals@0.12.4:', type=('build', 'run'))
+ depends_on('r-globals@0.12.5:', when='@1.7.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-future/package.py b/var/spack/repos/builtin/packages/r-future/package.py
index a8214cd9ea..d7a943e8f4 100644
--- a/var/spack/repos/builtin/packages/r-future/package.py
+++ b/var/spack/repos/builtin/packages/r-future/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RFuture(RPackage):
- """The purpose of this package is to provide a lightweight and unified
+ """Unified Parallel and Distributed Processing in R for Everyone
+
+ The purpose of this package is to provide a lightweight and unified
Future API for sequential and parallel processing of R expression via
futures. The simplest way to evaluate an expression in parallel is to use
'x %<-% { expression }' with 'plan(multiprocess)'. This package implements
@@ -26,8 +28,12 @@ class RFuture(RPackage):
url = "https://cloud.r-project.org/src/contrib/future_1.14.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/future"
+ version('1.21.0', sha256='909e6602068eba543a6d2e464b911123cc29efdb600a7000eff0e5624ff0d12d')
version('1.14.0', sha256='0a535010d97a01b21aaf9d863603e44359335e273019c1e1980bbb5b2917dbcb')
depends_on('r-digest', type=('build', 'run'))
depends_on('r-globals@0.12.4:', type=('build', 'run'))
+ depends_on('r-globals@0.13.1:', when='@1.21.0:', type=('build', 'run'))
depends_on('r-listenv@0.7.0:', type=('build', 'run'))
+ depends_on('r-listenv@0.8.0:', when='@1.21.0:', type=('build', 'run'))
+ depends_on('r-parallelly@1.21.0:', when='@1.21.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gamlss-data/package.py b/var/spack/repos/builtin/packages/r-gamlss-data/package.py
index 2cfe4008f5..f12d359a00 100644
--- a/var/spack/repos/builtin/packages/r-gamlss-data/package.py
+++ b/var/spack/repos/builtin/packages/r-gamlss-data/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gamlss-dist/package.py b/var/spack/repos/builtin/packages/r-gamlss-dist/package.py
index 49a2e5fc56..ad5fbbd4ce 100644
--- a/var/spack/repos/builtin/packages/r-gamlss-dist/package.py
+++ b/var/spack/repos/builtin/packages/r-gamlss-dist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,23 @@ from spack import *
class RGamlssDist(RPackage):
- """gamlss.dist: Distributions for Generalized Additive Models for
- Location Scale and Shape"""
+ """dist: Distributions for Generalized Additive Models for Location Scale
+ and Shape
+
+ A set of distributions which can be used for modelling the response
+ variables in Generalized Additive Models for Location Scale and Shape,
+ Rigby and Stasinopoulos (2005), <doi:10.1111/j.1467-9876.2005.00510.x>. The
+ distributions can be continuous, discrete or mixed distributions. Extra
+ distributions can be created, by transforming, any continuous distribution
+ defined on the real line, to a distribution defined on ranges 0 to
+ infinity or 0 to 1, by using a ''log'' or a ''logit' transformation
+ respectively."""
homepage = "https://cloud.r-project.org/package=gamlss.dist"
url = "https://cloud.r-project.org/src/contrib/gamlss.dist_5.1-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gamlss.dist/"
+ version('5.1-7', sha256='9871c38c893a8df7874c533351858dfe4e7587c71021dbbf88c0c76ff3c0ef5b')
version('5.1-4', sha256='343c6ca0fd8a1c1dfdf9ffc65c95d4dae0c6c80b3e60fccba003e5171f3d287e')
version('5.1-3', sha256='87fd643c82579519b67c66c1d87383fa1e203e8b09f607649ee7bce142bda404')
version('5.1-1', sha256='44f999ff74ee516757eb39c8308c48aa850523aad2f38e622268313a13dda0b1')
diff --git a/var/spack/repos/builtin/packages/r-gamlss/package.py b/var/spack/repos/builtin/packages/r-gamlss/package.py
index fbec727878..7b9291c98b 100644
--- a/var/spack/repos/builtin/packages/r-gamlss/package.py
+++ b/var/spack/repos/builtin/packages/r-gamlss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,20 @@ from spack import *
class RGamlss(RPackage):
- """gamlss: Generalised Additive Models for Location Scale and Shape"""
+ """Generalised Additive Models for Location Scale and Shape
+
+ Functions for fitting the Generalized Additive Models for Location Scale
+ and Shape introduced by Rigby and Stasinopoulos (2005),
+ <doi:10.1111/j.1467-9876.2005.00510.x>. The models use a distributional
+ regression approach where all the parameters of the conditional
+ distribution of the response variable are modelled using explanatory
+ variables."""
homepage = "https://cloud.r-project.org/package=gamlss"
url = "https://cloud.r-project.org/src/contrib/gamlss_5.1-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gamlss/"
+ version('5.2-0', sha256='d3927547109064cbe7b0f955144f53204b5dc86c6b2dbc8f0551a74140ab02e1')
version('5.1-4', sha256='e2fc36fe6ca3a69d69cdafd9533a4ff35090fdfb01df126f6a49156f4aa3376c')
version('5.1-3', sha256='d37d121bc2acdbacc20cea04a1ed4489a575079e2a7b17b4a9823ee283857317')
version('5.1-2', sha256='0d404e74768a8f98c6a5e9a48bd2cf4280125831a5dcd8c7f7b57922f57e016b')
@@ -20,6 +28,6 @@ class RGamlss(RPackage):
depends_on('r@3.3.0:', type=('build', 'run'))
depends_on('r-gamlss-data@5.0-0:', type=('build', 'run'))
depends_on('r-gamlss-dist@4.3.1:', type=('build', 'run'))
+ depends_on('r-nlme', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-survival', type=('build', 'run'))
- depends_on('r-nlme', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gamm4/package.py b/var/spack/repos/builtin/packages/r-gamm4/package.py
new file mode 100644
index 0000000000..6212ee8e3b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gamm4/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RGamm4(RPackage):
+ """Generalized Additive Mixed Models using 'mgcv' and 'lme4':
+
+ Estimate generalized additive mixed models via a version of function gamm()
+ from 'mgcv', using 'lme4' for estimation."""
+
+ cran = "gamm4"
+
+ version('0.2-6', sha256='57c5b66582b2adc32f6a3bb6a259f5b95198e283a96d966a6007e8e48b380c89')
+
+ depends_on('r@2.9.0:', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-lme4@1.0:', type=('build', 'run'))
+ depends_on('r-mgcv@1.7-23:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gbm/package.py b/var/spack/repos/builtin/packages/r-gbm/package.py
index 079e4aed67..01e0ba8db6 100644
--- a/var/spack/repos/builtin/packages/r-gbm/package.py
+++ b/var/spack/repos/builtin/packages/r-gbm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,25 @@ from spack import *
class RGbm(RPackage):
- """Generalized Boosted Regression Models."""
+ """Generalized Boosted Regression Models
+
+ An implementation of extensions to Freund and Schapire's AdaBoost
+ algorithm and Friedman's gradient boosting machine. Includes regression
+ methods for least squares, absolute loss, t-distribution loss, quantile
+ regression, logistic, multinomial logistic, Poisson, Cox proportional
+ hazards partial likelihood, AdaBoost exponential loss, Huberized hinge
+ loss, and Learning to Rank measures (LambdaMart). Originally developed by
+ Greg Ridgeway."""
homepage = "https://cloud.r-project.org/package=gbm"
url = "https://cloud.r-project.org/src/contrib/gbm_2.1.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gbm"
+ version('2.1.8', sha256='7d5de3b980b8f23275e86ac9bed48a497c9aa53c58e407dfd676309f38272ec1')
version('2.1.5', sha256='06fbde10639dfa886554379b40a7402d1f1236a9152eca517e97738895a4466f')
version('2.1.3', sha256='eaf24be931d762f1ccca4f90e15997719d01005f152160a3d20d858a0bbed92b')
depends_on('r@2.9.0:', type=('build', 'run'))
- depends_on('r-gridextra', when='@2.1.5:', type=('build', 'run'))
- depends_on('r-survival', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-gridextra', when='@2.1.5', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gbrd/package.py b/var/spack/repos/builtin/packages/r-gbrd/package.py
index 5f6b9c55c1..af3416760f 100644
--- a/var/spack/repos/builtin/packages/r-gbrd/package.py
+++ b/var/spack/repos/builtin/packages/r-gbrd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gcrma/package.py b/var/spack/repos/builtin/packages/r-gcrma/package.py
index f37c63dc68..2ef16bbdd4 100644
--- a/var/spack/repos/builtin/packages/r-gcrma/package.py
+++ b/var/spack/repos/builtin/packages/r-gcrma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,14 @@ from spack import *
class RGcrma(RPackage):
- """Background Adjustment Using Sequence Information."""
+ """Background Adjustment Using Sequence Information
+
+ Background adjustment using sequence information."""
homepage = "https://bioconductor.org/packages/gcrma"
git = "https://git.bioconductor.org/packages/gcrma.git"
+ version('2.62.0', commit='b91bdf5bf4e875defedb4d4e3e1e75867773287a')
version('2.56.0', commit='1f37bbfb4d3ed542b1e90704ab0fa8914d5e0224')
version('2.54.0', commit='9515fdbbc766a2a3b2ec61cf530c57bbded77ccc')
version('2.52.0', commit='d6e90b05432d2a8b0583d3fed001811ecdf49d7d')
@@ -24,6 +27,5 @@ class RGcrma(RPackage):
depends_on('r-affyio@1.13.3:', type=('build', 'run'))
depends_on('r-xvector', type=('build', 'run'))
depends_on('r-biostrings@2.11.32:', type=('build', 'run'))
- depends_on('r-biocinstaller', type=('build', 'run'))
-
depends_on('r-biocmanager', when='@2.54.0:', type=('build', 'run'))
+ depends_on('r-biocinstaller', when='@:2.52.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gdalutils/package.py b/var/spack/repos/builtin/packages/r-gdalutils/package.py
index 7488b2813d..884ca695b5 100644
--- a/var/spack/repos/builtin/packages/r-gdalutils/package.py
+++ b/var/spack/repos/builtin/packages/r-gdalutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,13 @@ from spack import *
class RGdalutils(RPackage):
- """gdalUtils: Wrappers for the Geospatial Data Abstraction Library"""
+ """Wrappers for the Geospatial Data Abstraction Library (GDAL) Utilities"""
homepage = "https://cloud.r-project.org/package=gdalUtils"
url = "https://cloud.r-project.org/src/contrib/gdalUtils_2.0.1.14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gdalUtils"
+ version('2.0.3.2', sha256='4c6faabee2db8a87b7ea0f8e67e9fce3c5db7f4be353d7d86ea559507cbb2a4f')
version('2.0.1.14', sha256='890a502b2eb5f1b23655fab94caad5d32adca05b93f5db1d96d9dcde3f0e7737')
depends_on('r@2.14.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gdata/package.py b/var/spack/repos/builtin/packages/r-gdata/package.py
index 5750daf212..1ac8da437d 100644
--- a/var/spack/repos/builtin/packages/r-gdata/package.py
+++ b/var/spack/repos/builtin/packages/r-gdata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gdsfmt/package.py b/var/spack/repos/builtin/packages/r-gdsfmt/package.py
index 3bf613dda2..c4cd3e9ae4 100644
--- a/var/spack/repos/builtin/packages/r-gdsfmt/package.py
+++ b/var/spack/repos/builtin/packages/r-gdsfmt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGdsfmt(RPackage):
- """R Interface to CoreArray Genomic Data Structure (GDS) Files.
+ """R Interface to CoreArray Genomic Data Structure (GDS) Files
This package provides a high-level R interface to CoreArray Genomic Data
Structure (GDS) data files, which are portable across platforms with
@@ -25,6 +25,7 @@ class RGdsfmt(RPackage):
homepage = "https://bioconductor.org/packages/gdsfmt"
git = "https://git.bioconductor.org/packages/gdsfmt.git"
+ version('1.26.1', commit='bd180b21b1ace120035f0da255cbf6f13088f069')
version('1.20.0', commit='b1fbaba0a5ace3dc45daecc85168651cd85dce00')
version('1.18.1', commit='b911b953e9db7988e93ec2010b0ab1e384d073c9')
version('1.16.0', commit='49b011452585e432b983b68466a230c9b71d8a95')
diff --git a/var/spack/repos/builtin/packages/r-geiger/package.py b/var/spack/repos/builtin/packages/r-geiger/package.py
index fb5aa1b76c..ba32471a54 100644
--- a/var/spack/repos/builtin/packages/r-geiger/package.py
+++ b/var/spack/repos/builtin/packages/r-geiger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,23 @@ from spack import *
class RGeiger(RPackage):
- """Methods for fitting macroevolutionary models to phylogenetic trees."""
+ """Analysis of Evolutionary Diversification
+
+ Methods for fitting macroevolutionary models to phylogenetic trees Pennell
+ (2014) <doi:10.1093/bioinformatics/btu181>."""
homepage = "https://cloud.r-project.org/package=geiger"
url = "https://cloud.r-project.org/src/contrib/geiger_2.0.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/geiger"
+ version('2.0.7', sha256='d200736c4ad7ed4bc55a13e7d0126ddc7fed88e245cd5706d4692aaa437e9596')
version('2.0.6.2', sha256='9153047b608d652821251206d1450bb3f517c8884379f498a695315574ae001d')
version('2.0.6.1', sha256='2a95e20a3a90c096343b014344dd97e699e954da99c151c17fc6c245c77dba0b')
version('2.0.6', sha256='e13b2c526378eaf9356b00bbe21b3c2c956327f8062fed638ccc1f49591c3eff')
depends_on('r@2.15.0:', type=('build', 'run'))
depends_on('r-ape@3.0-6:', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
depends_on('r-mvtnorm', type=('build', 'run'))
depends_on('r-subplex', type=('build', 'run'))
depends_on('r-desolve@1.7:', type=('build', 'run'))
@@ -27,4 +32,4 @@ class RGeiger(RPackage):
depends_on('r-coda', type=('build', 'run'))
depends_on('r-ncbit', type=('build', 'run'))
depends_on('r-colorspace', type=('build', 'run'))
- depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-phytools@0.7.31:', when='@2.0.7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-genefilter/package.py b/var/spack/repos/builtin/packages/r-genefilter/package.py
index 3be80d3bae..a50b89da99 100644
--- a/var/spack/repos/builtin/packages/r-genefilter/package.py
+++ b/var/spack/repos/builtin/packages/r-genefilter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,24 @@ from spack import *
class RGenefilter(RPackage):
- """genefilter: methods for filtering genes from high-throughput
- experiments."""
+ """genefilter: methods for filtering genes from high-throughput experiments
+
+ Some basic functions for filtering genes."""
homepage = "https://bioconductor.org/packages/genefilter"
git = "https://git.bioconductor.org/packages/genefilter.git"
+ version('1.72.1', commit='b01b00a766982ef7d80b90a252085c8c4f085e1b')
+ version('1.72.0', commit='8cb0b2e73531a417d53e5625bcf436265cdbe101')
version('1.66.0', commit='1c4c471ccca873bf92dcf0b50f611eaa64c4f0cf')
version('1.64.0', commit='82e91b7751bae997b9c898c219ea201fd02a8512')
version('1.62.0', commit='eb119894f015c759f93f458af7733bdb770a22ad')
version('1.60.0', commit='c98f695253c330a9380b2b4ffa27f3b7d66773e4')
version('1.58.1', commit='ace2556049677f60882adfe91f8cc96791556fc2')
- depends_on('r-s4vectors@0.9.42:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.31.2:', when='@1.68.0:', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
depends_on('r-annotate', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-s4vectors@0.9.42:', when='@:1.66.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-genelendatabase/package.py b/var/spack/repos/builtin/packages/r-genelendatabase/package.py
index 44559a0ff6..b9f00c16cc 100644
--- a/var/spack/repos/builtin/packages/r-genelendatabase/package.py
+++ b/var/spack/repos/builtin/packages/r-genelendatabase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGenelendatabase(RPackage):
- """Lengths of mRNA transcripts for a number of genomes.
+ """Lengths of mRNA transcripts for a number of genomes
Length of mRNA transcripts for a number of genomes and gene ID formats,
largely based on UCSC table browser"""
@@ -15,6 +15,7 @@ class RGenelendatabase(RPackage):
homepage = "https://bioconductor.org/packages/geneLenDataBase"
git = "https://git.bioconductor.org/packages/geneLenDataBase.git"
+ version('1.26.0', commit='2724715ae23a6647d1c0c6e934720aad9377d65e')
version('1.20.0', commit='70a1abed00ee68f7bfa07c42c011f9edae9915e4')
version('1.18.0', commit='77db87e5a4819bf94761fabef0d2ff741a1c5d07')
version('1.16.0', commit='c2a8b2359c6c59388853d6f6d15d71dffb17a198')
diff --git a/var/spack/repos/builtin/packages/r-genemeta/package.py b/var/spack/repos/builtin/packages/r-genemeta/package.py
index b8eb41c46b..2a9f67c3b8 100644
--- a/var/spack/repos/builtin/packages/r-genemeta/package.py
+++ b/var/spack/repos/builtin/packages/r-genemeta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGenemeta(RPackage):
- """MetaAnalysis for High Throughput Experiments.
+ """MetaAnalysis for High Throughput Experiments
A collection of meta-analysis tools for analysing high throughput
experimental data"""
@@ -15,6 +15,7 @@ class RGenemeta(RPackage):
homepage = "https://bioconductor.org/packages/GeneMeta"
git = "https://git.bioconductor.org/packages/GeneMeta.git"
+ version('1.62.0', commit='eb4273ff5867e39592f50b97b454fa5e32b4a9bf')
version('1.56.0', commit='cb2c9e353d34ea9f3db06cb236c7a89674f2682d')
version('1.54.0', commit='932553cd8df82b7df804fccda9bfd4b0f36d79d7')
version('1.52.0', commit='1f21759984a5852c42a19e89ee53ffd72053d49c')
diff --git a/var/spack/repos/builtin/packages/r-geneplotter/package.py b/var/spack/repos/builtin/packages/r-geneplotter/package.py
index 460dc46b0d..d52bce1c6f 100644
--- a/var/spack/repos/builtin/packages/r-geneplotter/package.py
+++ b/var/spack/repos/builtin/packages/r-geneplotter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,14 @@ from spack import *
class RGeneplotter(RPackage):
- """Graphics related functions for Bioconductor."""
+ """Graphics related functions for Bioconductor
+
+ Functions for plotting genomic data."""
homepage = "https://bioconductor.org/packages/geneplotter"
git = "https://git.bioconductor.org/packages/geneplotter.git"
+ version('1.68.0', commit='f1fea7e468fb24fdfa93ef4493600a4d8d183f69')
version('1.62.0', commit='1fbaddde11014b453b131860409f89cd784e8e48')
version('1.60.0', commit='6723a9fc0730e146187e79c2ddab6a68186dc5ad')
version('1.58.0', commit='2b3f44804d61a40cfe7eaedf74ac9f5a054f7fde')
diff --git a/var/spack/repos/builtin/packages/r-generics/package.py b/var/spack/repos/builtin/packages/r-generics/package.py
index 6886d22757..6da6887c8a 100644
--- a/var/spack/repos/builtin/packages/r-generics/package.py
+++ b/var/spack/repos/builtin/packages/r-generics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RGenerics(RPackage):
- """In order to reduce potential package dependencies and conflicts,
+ """Common S3 Generics not Provided by Base R Methods Related to Model Fitting
+
+ In order to reduce potential package dependencies and conflicts,
generics provides a number of commonly used S3 generics."""
homepage = "https://github.com/r-lib/generics"
url = "https://cloud.r-project.org/src/contrib/generics_0.0.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/generics"
+ version('0.1.0', sha256='ab71d1bdbb66c782364c61cede3c1186d6a94c03635f9af70d926e2c1ac88763')
version('0.0.2', sha256='71b3d1b719ce89e71dd396ac8bc6aa5f1cd99bbbf03faff61dfbbee32fec6176')
depends_on('r@3.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-genetics/package.py b/var/spack/repos/builtin/packages/r-genetics/package.py
index 1ef79e4ea0..df820cc1c3 100644
--- a/var/spack/repos/builtin/packages/r-genetics/package.py
+++ b/var/spack/repos/builtin/packages/r-genetics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-genie3/package.py b/var/spack/repos/builtin/packages/r-genie3/package.py
index 14e7abf982..819983efa9 100644
--- a/var/spack/repos/builtin/packages/r-genie3/package.py
+++ b/var/spack/repos/builtin/packages/r-genie3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGenie3(RPackage):
- """GEne Network Inference with Ensemble of trees.
+ """GEne Network Inference with Ensemble of trees
This package implements the GENIE3 algorithm for inferring gene
regulatory networks from expression data."""
@@ -15,6 +15,7 @@ class RGenie3(RPackage):
homepage = "https://bioconductor.org/packages/GENIE3"
git = "https://git.bioconductor.org/packages/GENIE3.git"
+ version('1.12.0', commit='14289cee9bed113ab35ba03bcaac4a30e5784497')
version('1.6.0', commit='d6a49182e098342afe77f01c322dfc7b72450502')
version('1.4.3', commit='ae719c759f23f09d28fcf1acc45b860cd7761f08')
version('1.2.1', commit='1b56fe8184d521d1bb247f000efe9e2b540604c9')
diff --git a/var/spack/repos/builtin/packages/r-genomeinfodb/package.py b/var/spack/repos/builtin/packages/r-genomeinfodb/package.py
index dc4b314142..3b45b55f0b 100644
--- a/var/spack/repos/builtin/packages/r-genomeinfodb/package.py
+++ b/var/spack/repos/builtin/packages/r-genomeinfodb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RGenomeinfodb(RPackage):
"""Utilities for manipulating chromosome names, including modifying them to
- follow a particular naming style.
+ follow a particular naming style
Contains data and functions that define and allow translation between
different chromosome sequence naming conventions (e.g., "chr1" versus
@@ -18,6 +18,7 @@ class RGenomeinfodb(RPackage):
homepage = "https://bioconductor.org/packages/GenomeInfoDb"
git = "https://git.bioconductor.org/packages/GenomeInfoDb.git"
+ version('1.26.2', commit='96dd27a7e3ef476790b1475aab50dbbed7df67a2')
version('1.20.0', commit='ea771e3b429ef17fb912fb37333556c6f77f2265')
version('1.18.2', commit='557b75ea7734749a2650d30f5c5d52c57a6bcc6f')
version('1.16.0', commit='6543dad89bbc2c275010b329eb114b237fd712fa')
@@ -27,9 +28,9 @@ class RGenomeinfodb(RPackage):
depends_on('r@3.1:', type=('build', 'run'))
depends_on('r-biocgenerics@0.13.8:', type=('build', 'run'))
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.25:', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.25.12:', when='@1.26.2:', type=('build', 'run'))
depends_on('r-iranges@1.99.26:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.12:', when='@1.16.0:', type=('build', 'run'))
depends_on('r-rcurl', type=('build', 'run'))
depends_on('r-genomeinfodbdata', type=('build', 'run'))
-
- depends_on('r-s4vectors@0.17.25:', when='@1.16.0:', type=('build', 'run'))
- depends_on('r-iranges@2.13.12:', when='@1.16.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py b/var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py
index 93d621e2dc..572c15c9d6 100644
--- a/var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py
+++ b/var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-genomicalignments/package.py b/var/spack/repos/builtin/packages/r-genomicalignments/package.py
index 99292cd505..fb3a12639c 100644
--- a/var/spack/repos/builtin/packages/r-genomicalignments/package.py
+++ b/var/spack/repos/builtin/packages/r-genomicalignments/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGenomicalignments(RPackage):
- """Representation and manipulation of short genomic alignments.
+ """Representation and manipulation of short genomic alignments
Provides efficient containers for storing and manipulating short genomic
alignments (typically obtained by aligning short reads to a reference
@@ -17,6 +17,7 @@ class RGenomicalignments(RPackage):
homepage = "https://bioconductor.org/packages/GenomicAlignments"
git = "https://git.bioconductor.org/packages/GenomicAlignments.git"
+ version('1.26.0', commit='6c74c74ee53efcd880171126366fee4bd72357bc')
version('1.20.1', commit='9dce402071e4cd945de7ff82ea574c79993625fd')
version('1.18.1', commit='8ac41e5981cf343076044f451a984afb651688ab')
version('1.16.0', commit='db032a459e5cf05a2a5c2059662a541827112974')
@@ -26,25 +27,26 @@ class RGenomicalignments(RPackage):
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-biocgenerics@0.15.3:', type=('build', 'run'))
depends_on('r-s4vectors@0.13.13:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.28:', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.19.11:', when='@1.18.1:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.12:', when='@1.26.0:', type=('build', 'run'))
depends_on('r-iranges@2.5.36:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.11.5:', type=('build', 'run'))
- depends_on('r-genomicranges@1.27.19:', type=('build', 'run'))
- depends_on('r-summarizedexperiment@1.5.3:', type=('build', 'run'))
- depends_on('r-biostrings@2.37.1:', type=('build', 'run'))
- depends_on('r-rsamtools@1.21.4:', type=('build', 'run'))
- depends_on('r-biocparallel', type=('build', 'run'))
-
depends_on('r-iranges@2.11.16:', when='@1.14.2:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.25:', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-iranges@2.15.12:', when='@1.18.1:', type=('build', 'run'))
+ depends_on('r-iranges@2.23.9:', when='@1.26.0:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.11.5:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.13.1:', when='@1.14.2:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.27.19:', type=('build', 'run'))
depends_on('r-genomicranges@1.29.14:', when='@1.14.2:', type=('build', 'run'))
-
- depends_on('r-s4vectors@0.17.28:', when='@1.16.0:', type=('build', 'run'))
- depends_on('r-iranges@2.13.25:', when='@1.16.0:', type=('build', 'run'))
depends_on('r-genomicranges@1.31.19:', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.33.4:', when='@1.18.1:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.41.5:', when='@1.26.0:', type=('build', 'run'))
+ depends_on('r-summarizedexperiment@1.5.3:', type=('build', 'run'))
depends_on('r-summarizedexperiment@1.9.13:', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-biostrings@2.37.1:', type=('build', 'run'))
depends_on('r-biostrings@2.47.6:', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-biostrings@2.55.7:', when='@1.26.0:', type=('build', 'run'))
+ depends_on('r-rsamtools@1.21.4:', type=('build', 'run'))
depends_on('r-rsamtools@1.31.2:', when='@1.16.0:', type=('build', 'run'))
-
- depends_on('r-s4vectors@0.19.11:', when='@1.18.1:', type=('build', 'run'))
- depends_on('r-iranges@2.15.12:', when='@1.18.1:', type=('build', 'run'))
- depends_on('r-genomicranges@1.33.4:', when='@1.18.1:', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-genomicfeatures/package.py b/var/spack/repos/builtin/packages/r-genomicfeatures/package.py
index b232e467f9..ce4c878c18 100644
--- a/var/spack/repos/builtin/packages/r-genomicfeatures/package.py
+++ b/var/spack/repos/builtin/packages/r-genomicfeatures/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGenomicfeatures(RPackage):
- """Conveniently import and query gene models.
+ """Conveniently import and query gene models
A set of tools and methods for making and manipulating transcript
centric annotations. With these tools the user can easily download the
@@ -21,6 +21,7 @@ class RGenomicfeatures(RPackage):
homepage = "https://bioconductor.org/packages/GenomicFeatures"
git = "https://git.bioconductor.org/packages/GenomicFeatures.git"
+ version('1.42.1', commit='2e82891974138b0e976799d64a8938f0be61284d')
version('1.36.4', commit='28082ec465c91ccaec6881ff348b380edac1b555')
version('1.34.8', commit='c798b3bb111f4de30632303540074ec1875c1387')
version('1.32.3', commit='80807d88048858846de3750cecb9431a0e5e69e1')
@@ -29,29 +30,28 @@ class RGenomicfeatures(RPackage):
depends_on('r-biocgenerics@0.1.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.9.47:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.29:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-iranges@2.9.19:', type=('build', 'run'))
+ depends_on('r-iranges@2.11.16:', when='@1.30.3:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.23:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.11.4:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.13.1:', when='@1.30.3:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.15.4:', when='@1.32.3:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.25.7:', when='@1.42.1:', type=('build', 'run'))
depends_on('r-genomicranges@1.27.6:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.29.14:', when='@1.30.3:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.17:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-annotationdbi@1.33.15:', type=('build', 'run'))
+ depends_on('r-annotationdbi@1.41.4:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-dbi', type=('build', 'run'))
depends_on('r-rsqlite@2.0:', type=('build', 'run'))
depends_on('r-rcurl', type=('build', 'run'))
depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-xvector@0.19.7:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-biostrings@2.23.3:', type=('build', 'run'))
+ depends_on('r-biostrings@2.47.6:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-rtracklayer@1.29.24:', type=('build', 'run'))
+ depends_on('r-rtracklayer@1.39.7:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-biomart@2.17.1:', type=('build', 'run'))
depends_on('r-biobase@2.15.1:', type=('build', 'run'))
-
- depends_on('r-iranges@2.11.16:', when='@1.30.3:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.13.1:', when='@1.30.3:', type=('build', 'run'))
- depends_on('r-genomicranges@1.29.14:', when='@1.30.3:', type=('build', 'run'))
depends_on('r-rmysql', when='@1.30.3', type=('build', 'run'))
-
- depends_on('r-s4vectors@0.17.29:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-iranges@2.13.23:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.15.4:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-genomicranges@1.31.17:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-annotationdbi@1.41.4:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-xvector@0.19.7:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-biostrings@2.47.6:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-rtracklayer@1.39.7:', when='@1.32.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-genomicranges/package.py b/var/spack/repos/builtin/packages/r-genomicranges/package.py
index 9ca2058064..ad364e78c1 100644
--- a/var/spack/repos/builtin/packages/r-genomicranges/package.py
+++ b/var/spack/repos/builtin/packages/r-genomicranges/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGenomicranges(RPackage):
- """Representation and manipulation of genomic intervals.
+ """Representation and manipulation of genomic intervals
The ability to efficiently represent and manipulate genomic annotations
and alignments is playing a central role when it comes to analyzing
@@ -23,6 +23,7 @@ class RGenomicranges(RPackage):
homepage = "https://bioconductor.org/packages/GenomicRanges"
git = "https://git.bioconductor.org/packages/GenomicRanges.git"
+ version('1.42.0', commit='32baca734b599d60fa13bdbe31c5712e648f538d')
version('1.36.1', commit='418e7e5647dd54d81b804455ddfcbc027fd0164a')
version('1.34.0', commit='ebaad5ca61abb67c2c30c132e07531ba4257bccd')
version('1.32.7', commit='4c56dc836dbfd0d228dc810e8d401811cdbc267c')
@@ -31,21 +32,20 @@ class RGenomicranges(RPackage):
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-biocgenerics@0.21.2:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.25.3:', when='@1.32.7:', type=('build', 'run'))
depends_on('r-s4vectors@0.9.47:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.32:', when='@1.32.7:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.19.11:', when='@1.34.0:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.12:', when='@1.42.0:', type=('build', 'run'))
depends_on('r-iranges@2.9.11:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.11.5:', type=('build', 'run'))
- depends_on('r-xvector', type=('build', 'run'))
-
depends_on('r-iranges@2.11.16:', when='@1.30.3:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.13.1:', when='@1.30.3:', type=('build', 'run'))
-
- depends_on('r-biocgenerics@0.25.3:', when='@1.32.7:', type=('build', 'run'))
- depends_on('r-s4vectors@0.17.32:', when='@1.32.7:', type=('build', 'run'))
depends_on('r-iranges@2.14.4:', when='@1.32.7:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.15.2:', when='@1.32.7:', type=('build', 'run'))
- depends_on('r-xvector@0.19.8:', when='@1.32.7:', type=('build', 'run'))
-
- depends_on('r-s4vectors@0.19.11:', when='@1.34.0:', type=('build', 'run'))
depends_on('r-iranges@2.15.12:', when='@1.34.0:', type=('build', 'run'))
-
depends_on('r-iranges@2.17.1:', when='@1.36.1:', type=('build', 'run'))
+ depends_on('r-iranges@2.23.9:', when='@1.42.0:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.11.5:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.13.1:', when='@1.30.3:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.15.2:', when='@1.32.7:', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-xvector@0.19.8:', when='@1.32.7:', type=('build', 'run'))
+ depends_on('r-xvector@0.29.2:', when='@1.42.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gensa/package.py b/var/spack/repos/builtin/packages/r-gensa/package.py
index aa055f07df..7f945455f4 100644
--- a/var/spack/repos/builtin/packages/r-gensa/package.py
+++ b/var/spack/repos/builtin/packages/r-gensa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-geomorph/package.py b/var/spack/repos/builtin/packages/r-geomorph/package.py
index d0be730b65..849cf0fa41 100644
--- a/var/spack/repos/builtin/packages/r-geomorph/package.py
+++ b/var/spack/repos/builtin/packages/r-geomorph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,24 +7,29 @@ from spack import *
class RGeomorph(RPackage):
- """Read, manipulate, and digitize landmark data, generate shape variables
- via Procrustes analysis for points, curves and surfaces, perform shape
- analyses, and provide graphical depictions of shapes and patterns of
- shape variation."""
+ """Geometric Morphometric Analyses of 2D/3D Landmark Data
+
+ Read, manipulate, and digitize landmark data, generate shape variables via
+ Procrustes analysis for points, curves and surfaces, perform shape
+ analyses, and provide graphical depictions of shapes and patterns of shape
+ variation."""
homepage = "https://cloud.r-project.org/package=geomorph"
url = "https://cloud.r-project.org/src/contrib/geomorph_3.0.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/geomorph"
+ version('3.3.2', sha256='5f1d17cb98c54e40c4bbc650f7ccb5cb26e8d63934f810644facc69e91c1b7b7')
version('3.1.2', sha256='29cf1c484f756cb44808cfdbc20137a6fbc4bd0c5c6f98c6c3f397c5aebda8f1')
version('3.1.1', sha256='8eb222011433100860b308beef6f02ade7c421785f575ab4461ee25e38dfa1bd')
version('3.0.7', sha256='68f8942e1a5bc3f0298c9f5b8f69c4702c8e12ecb2275d740fda4d04d66d38e1')
version('3.0.5', sha256='7a3a587b253770a5e7e70536234dee13e6a073f1fdf1d644ae4f11d2eb95b104')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@3.3.2:', type=('build', 'run'))
+ depends_on('r-rrpp', type=('build', 'run'), when='@3.0.7:')
depends_on('r-rgl', type=('build', 'run'))
- depends_on('r-ape', type=('build', 'run'))
depends_on('r-jpeg', type=('build', 'run'))
+ depends_on('r-ape', type=('build', 'run'))
depends_on('r-geiger', when='@:3.1.1', type=('build', 'run'))
depends_on('r-matrix', when='@:3.1.1', type=('build', 'run'))
- depends_on('r-rrpp', type=('build', 'run'), when='@3.0.7:')
diff --git a/var/spack/repos/builtin/packages/r-geonames/package.py b/var/spack/repos/builtin/packages/r-geonames/package.py
index 23b82a6b44..3b8a0c2585 100644
--- a/var/spack/repos/builtin/packages/r-geonames/package.py
+++ b/var/spack/repos/builtin/packages/r-geonames/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-geoquery/package.py b/var/spack/repos/builtin/packages/r-geoquery/package.py
index 1a89aba6bb..60a02bedcc 100644
--- a/var/spack/repos/builtin/packages/r-geoquery/package.py
+++ b/var/spack/repos/builtin/packages/r-geoquery/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGeoquery(RPackage):
- """Get data from NCBI Gene Expression Omnibus (GEO).
+ """Get data from NCBI Gene Expression Omnibus (GEO)
The NCBI Gene Expression Omnibus (GEO) is a public repository of
microarray data. Given the rich and varied nature of this resource, it
@@ -17,6 +17,7 @@ class RGeoquery(RPackage):
homepage = "https://bioconductor.org/packages/GEOquery"
git = "https://git.bioconductor.org/packages/GEOquery.git"
+ version('2.58.0', commit='6332ca3791ddcfb233b9ad75b5904b3d60f49b93')
version('2.52.0', commit='3059331eb82ad4947c2d1bef86ff9526e70af643')
version('2.50.5', commit='135c17f8fe535acda14f95a37d1be1ff2bd80f97')
version('2.48.0', commit='6a8d1ca195b5c26fb717ae93beb1a8d9b7031c5e')
@@ -24,15 +25,13 @@ class RGeoquery(RPackage):
version('2.42.0', commit='c26adef8d3ddbd6932a3170f2f84f6e4327641fb')
depends_on('r-biobase', type=('build', 'run'))
- depends_on('r-xml', when='@2.42.0', type=('build', 'run'))
- depends_on('r-rcurl', when='@2.42.0', type=('build', 'run'))
depends_on('r-httr', type=('build', 'run'))
-
depends_on('r-readr', when='@2.46.15:', type=('build', 'run'))
+ depends_on('r-readr@1.3.1:', when='@2.50.5:', type=('build', 'run'))
depends_on('r-xml2', when='@2.46.15:', type=('build', 'run'))
depends_on('r-dplyr', when='@2.46.15:', type=('build', 'run'))
depends_on('r-tidyr', when='@2.46.15:', type=('build', 'run'))
depends_on('r-magrittr', when='@2.46.15:', type=('build', 'run'))
depends_on('r-limma', when='@2.46.15:', type=('build', 'run'))
-
- depends_on('r-readr@1.3.1:', when='@2.50.5:', type=('build', 'run'))
+ depends_on('r-xml', when='@2.42.0', type=('build', 'run'))
+ depends_on('r-rcurl', when='@2.42.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-geor/package.py b/var/spack/repos/builtin/packages/r-geor/package.py
index 5f1cface6d..916a061b0c 100644
--- a/var/spack/repos/builtin/packages/r-geor/package.py
+++ b/var/spack/repos/builtin/packages/r-geor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,20 @@ from spack import *
class RGeor(RPackage):
- """Geostatistical analysis including traditional, likelihood-based
- and Bayesian methods."""
+ """Analysis of Geostatistical Data
+
+ Geostatistical analysis including variogram-based, likelihood-based and
+ Bayesian methods. Software companion for Diggle and Ribeiro (2007)
+ <doi:10.1007/978-0-387-48536-2>."""
homepage = "https://cloud.r-project.org/package=geoR"
url = "https://cloud.r-project.org/src/contrib/geoR_1.7-5.2.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/geoR"
+ version('1.8-1', sha256='990647804590b925a50f72897b24bbabd331cebef0be1696a60528b2f79d6fd3')
version('1.7-5.2.1', sha256='3895e49c005a5745738d190ccaad43bb0aa49c74465d4d0b4dd88c5850ed63b9')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-sp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-geosphere/package.py b/var/spack/repos/builtin/packages/r-geosphere/package.py
index afea256fd6..db03650ad1 100644
--- a/var/spack/repos/builtin/packages/r-geosphere/package.py
+++ b/var/spack/repos/builtin/packages/r-geosphere/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gert/package.py b/var/spack/repos/builtin/packages/r-gert/package.py
new file mode 100644
index 0000000000..ee7c83abbe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gert/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RGert(RPackage):
+ """Simple Git Client for R
+
+ Simple git client for R based on 'libgit2' with support for SSH and HTTPS
+ remotes. All functions in 'gert' use basic R data types (such as vectors
+ and data-frames) for their arguments and return values. User credentials
+ are shared with command line 'git' through the git-credential store and ssh
+ keys stored on disk or ssh-agent. On Linux, a somewhat recent version of
+ 'libgit2' is required; we provide a 'PPA' for older Ubuntu 'LTS'
+ versions."""
+
+ homepage = "https://docs.ropensci.org/gert/"
+ url = "https://cloud.r-project.org/src/contrib/gert_1.0.2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/gert"
+
+ version('1.0.2', sha256='36687ab98291d50a35752fcb2e734a926a6b845345c18d36e3f48823f68304d3')
+
+ depends_on('r-askpass', type=('build', 'run'))
+ depends_on('r-credentials@1.2.1:', type=('build', 'run'))
+ depends_on('r-openssl@1.4.1:', type=('build', 'run'))
+ depends_on('r-rstudioapi@0.11:', type=('build', 'run'))
+ depends_on('r-zip@2.1.0:', type=('build', 'run'))
+ depends_on('libgit2@0.26:')
diff --git a/var/spack/repos/builtin/packages/r-getopt/package.py b/var/spack/repos/builtin/packages/r-getopt/package.py
index b8d7a9bf46..a1c72d229e 100644
--- a/var/spack/repos/builtin/packages/r-getopt/package.py
+++ b/var/spack/repos/builtin/packages/r-getopt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-getoptlong/package.py b/var/spack/repos/builtin/packages/r-getoptlong/package.py
index d732f50d08..9558f9b725 100644
--- a/var/spack/repos/builtin/packages/r-getoptlong/package.py
+++ b/var/spack/repos/builtin/packages/r-getoptlong/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,25 @@ from spack import *
class RGetoptlong(RPackage):
- """This is yet another command-line argument parser which wraps the
- powerful Perl module Getopt::Long and with some adaptation for easier
- use in R. It also provides a simple way for variable interpolation in
- R."""
+ """Parsing Command-Line Arguments and Simple Variable Interpolation
+
+ This is yet another command-line argument parser which wraps the powerful
+ Perl module Getopt::Long and with some adaptation for easier use in R. It
+ also provides a simple way for variable interpolation in R."""
homepage = "https://cloud.r-project.org/package=GetoptLong"
url = "https://cloud.r-project.org/src/contrib/GetoptLong_0.1.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/GetoptLong"
+ version('1.0.5', sha256='8c237986ed3dfb72d956ad865ef7768644eebf144675ad66140acfd1aca9d701')
version('0.1.7', sha256='b9a98881db407eae9b711c4fa9170168fd5f3be1f8485cd8f28d0a60ace083ba')
version('0.1.6', sha256='f526f006e3ed8507f1f236430ac9e97341c1ee9c207fbb68f936dd4d377b28b5')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r@3.3.0:', when='@1.0.5:', type=('build', 'run'))
depends_on('r-rjson', type=('build', 'run'))
depends_on('r-globaloptions@0.1.0:', type=('build', 'run'))
+ depends_on('r-crayon', when='@1.0.5:', type=('build', 'run'))
# The CRAN site lists SystemRequirments as: Perl, Getopt::Long. The
# Getop::Long package will be installed with Perl so just depend on perl.
diff --git a/var/spack/repos/builtin/packages/r-ggally/package.py b/var/spack/repos/builtin/packages/r-ggally/package.py
index 1bcc024793..19b24c68df 100644
--- a/var/spack/repos/builtin/packages/r-ggally/package.py
+++ b/var/spack/repos/builtin/packages/r-ggally/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,26 +7,35 @@ from spack import *
class RGgally(RPackage):
- """The R package 'ggplot2' is a plotting system based on the grammar of
- graphics. 'GGally' extends 'ggplot2' by adding several functions to
- reduce the complexity of combining geometric objects with transformed
- data. Some of these functions include a pairwise plot matrix, a two
- group pairwise plot matrix, a parallel coordinates plot, a survival
- plot, and several functions to plot networks."""
+ """Extension to 'ggplot2'
+
+ The R package 'ggplot2' is a plotting system based on the grammar of
+ graphics. 'GGally' extends 'ggplot2' by adding several functions to reduce
+ the complexity of combining geometric objects with transformed data. Some
+ of these functions include a pairwise plot matrix, a two group pairwise
+ plot matrix, a parallel coordinates plot, a survival plot, and several
+ functions to plot networks."""
homepage = "https://cloud.r-project.org/package=GGally"
url = "https://cloud.r-project.org/src/contrib/GGally_1.3.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/GGally"
+ version('2.1.0', sha256='7ffb86b8a4e79543cf7e6bb1e3684d738ecd8e0ba89e8ef38991898b18dd6c53')
version('1.4.0', sha256='9a47cdf004c41f5e4024327b94227707f4dad3a0ac5556d8f1fba9bf0a6355fe')
version('1.3.2', sha256='f4143f45254fed794be991180aeffe459f6756bfa08acad963707d8e843cfd0a')
depends_on('r@3.1:', type=('build', 'run'))
depends_on('r-ggplot2@2.2.0:', type=('build', 'run'))
+ depends_on('r-ggplot2@3.3.0:', when='@2.1.0:', type=('build', 'run'))
+ depends_on('r-dplyr@1.0.0:', when='@2.1.0:', type=('build', 'run'))
+ depends_on('r-forcats', when='@2.1.0:', type=('build', 'run'))
depends_on('r-gtable@0.2.0:', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@2.1.0:', type=('build', 'run'))
depends_on('r-plyr@1.8.3:', type=('build', 'run'))
depends_on('r-progress', type=('build', 'run'))
depends_on('r-rcolorbrewer', type=('build', 'run'))
depends_on('r-reshape@0.8.5:', type=('build', 'run'))
depends_on('r-rlang', when='@1.4.0:', type=('build', 'run'))
+ depends_on('r-scales@1.1.0:', when='@2.1.0:', type=('build', 'run'))
+ depends_on('r-tidyr', when='@2.1.0:', type=('build', 'run'))
depends_on('openssl', when='@1.4.0:')
diff --git a/var/spack/repos/builtin/packages/r-ggbeeswarm/package.py b/var/spack/repos/builtin/packages/r-ggbeeswarm/package.py
index 22d8e8bd5e..4c88a61a25 100644
--- a/var/spack/repos/builtin/packages/r-ggbeeswarm/package.py
+++ b/var/spack/repos/builtin/packages/r-ggbeeswarm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ggbio/package.py b/var/spack/repos/builtin/packages/r-ggbio/package.py
index 2e52e4edf4..f285243cf6 100644
--- a/var/spack/repos/builtin/packages/r-ggbio/package.py
+++ b/var/spack/repos/builtin/packages/r-ggbio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGgbio(RPackage):
- """Visualization tools for genomic data.
+ """Visualization tools for genomic data
The ggbio package extends and specializes the grammar of graphics for
biological data. The graphics are designed to answer common scientific
@@ -22,6 +22,7 @@ class RGgbio(RPackage):
homepage = "https://bioconductor.org/packages/ggbio"
git = "https://git.bioconductor.org/packages/ggbio.git"
+ version('1.38.0', commit='c39c51993f419cfc2f094e664477f25f5212a242')
version('1.32.0', commit='04bd12fbe0b1c5c6b721a5f927e1352765f9bf88')
version('1.30.0', commit='8b05258b089b06a743352e92058edda06c24cfb7')
version('1.28.5', commit='594521ca556ef7d97cf4882ecfa54d22c2a2faba')
@@ -36,11 +37,15 @@ class RGgbio(RPackage):
depends_on('r-gtable', type=('build', 'run'))
depends_on('r-hmisc', type=('build', 'run'))
depends_on('r-biovizbase@1.23.3:', type=('build', 'run'))
+ depends_on('r-biovizbase@1.28.2:', when='@1.28.5:', type=('build', 'run'))
+ depends_on('r-biovizbase@1.29.2:', when='@1.30.0:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-s4vectors@0.13.13:', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-iranges@2.11.16:', when='@1.26.1:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.1.3:', type=('build', 'run'))
depends_on('r-genomicranges@1.21.10:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.29.14:', when='@1.26.1:', type=('build', 'run'))
depends_on('r-summarizedexperiment', type=('build', 'run'))
depends_on('r-biostrings', type=('build', 'run'))
depends_on('r-rsamtools@1.17.28:', type=('build', 'run'))
@@ -49,17 +54,10 @@ class RGgbio(RPackage):
depends_on('r-variantannotation@1.11.4:', type=('build', 'run'))
depends_on('r-rtracklayer@1.25.16:', type=('build', 'run'))
depends_on('r-genomicfeatures@1.17.13:', type=('build', 'run'))
+ depends_on('r-genomicfeatures@1.29.11:', when='@1.26.1:', type=('build', 'run'))
depends_on('r-organismdbi', type=('build', 'run'))
depends_on('r-ggally', type=('build', 'run'))
depends_on('r-ensembldb@1.99.13:', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
depends_on('r-annotationfilter', type=('build', 'run'))
-
- depends_on('r-iranges@2.11.16:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-genomicranges@1.29.14:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-genomicfeatures@1.29.11:', when='@1.26.1:', type=('build', 'run'))
-
- depends_on('r-biovizbase@1.28.2:', when='@1.28.5:', type=('build', 'run'))
depends_on('r-rlang', when='@1.28.5:', type=('build', 'run'))
-
- depends_on('r-biovizbase@1.29.2:', when='@1.30.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggdendro/package.py b/var/spack/repos/builtin/packages/r-ggdendro/package.py
index 90b9b787e0..7b7a0dc06a 100644
--- a/var/spack/repos/builtin/packages/r-ggdendro/package.py
+++ b/var/spack/repos/builtin/packages/r-ggdendro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RGgdendro(RPackage):
- """This is a set of tools for dendrograms and tree plots using
+ """Create Dendrograms and Tree Diagrams Using 'ggplot2'
+
+ This is a set of tools for dendrograms and tree plots using
'ggplot2'. The 'ggplot2' philosophy is to clearly separate data
from the presentation. Unfortunately the plot method for
dendrograms plots directly to a plot device without exposing
@@ -20,7 +22,8 @@ class RGgdendro(RPackage):
url = "https://cloud.r-project.org/src/contrib/ggdendro_0.1-20.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggdendro"
+ version('0.1.22', sha256='f0a65f3498c1abc3076df0fb56364b63bdf5d212d8931f85bcc6997510916b6a')
version('0.1-20', sha256='125cae904fa5d426cccaf32ebe9c6297e9ef0c6fd3f19f61513834d03a0cf8ff')
- depends_on('r-ggplot2@0.9.2:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-ggplot2@0.9.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggforce/package.py b/var/spack/repos/builtin/packages/r-ggforce/package.py
index d36d2dbead..4aa2e4be79 100644
--- a/var/spack/repos/builtin/packages/r-ggforce/package.py
+++ b/var/spack/repos/builtin/packages/r-ggforce/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,23 +7,30 @@ from spack import *
class RGgforce(RPackage):
- """ggforce: Accelerating 'ggplot2'"""
+ """Accelerating 'ggplot2'
+
+ The aim of 'ggplot2' is to aid in visual data investigations. This focus
+ has led to a lack of facilities for composing specialised plots. 'ggforce'
+ aims to be a collection of mainly new stats and geoms that fills this gap.
+ All additional functionality is aimed to come through the official
+ extension system so using 'ggforce' should be a stable experience."""
homepage = "https://ggforce.data-imaginist.com"
url = "https://cloud.r-project.org/src/contrib/ggforce_0.3.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggforce"
+ version('0.3.2', sha256='4cce8acb60ce06af44c1c76bbacd7de129eed9b51ed6a85e03a9bf55b0eff4d2')
version('0.3.1', sha256='a05271da9b226c12ae5fe6bc6eddb9ad7bfe19e1737e2bfcd6d7a89631332211')
depends_on('r@3.3.0:', type=('build', 'run'))
depends_on('r-ggplot2@3.0.0:', type=('build', 'run'))
- depends_on('r-gtable', type=('build', 'run'))
- depends_on('r-mass', type=('build', 'run'))
- depends_on('r-polyclip', type=('build', 'run'))
depends_on('r-rcpp@0.12.2:', type=('build', 'run'))
- depends_on('r-rcppeigen', type=('build', 'run'))
- depends_on('r-rlang', type=('build', 'run'))
depends_on('r-scales', type=('build', 'run'))
- depends_on('r-tidyselect', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
depends_on('r-tweenr@0.1.5:', type=('build', 'run'))
+ depends_on('r-gtable', type=('build', 'run'))
+ depends_on('r-rlang', type=('build', 'run'))
+ depends_on('r-polyclip', type=('build', 'run'))
+ depends_on('r-tidyselect', type=('build', 'run'))
depends_on('r-withr', type=('build', 'run'))
+ depends_on('r-rcppeigen', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggjoy/package.py b/var/spack/repos/builtin/packages/r-ggjoy/package.py
index 1d5390f0aa..b522deaa08 100644
--- a/var/spack/repos/builtin/packages/r-ggjoy/package.py
+++ b/var/spack/repos/builtin/packages/r-ggjoy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ggmap/package.py b/var/spack/repos/builtin/packages/r-ggmap/package.py
index fa44828b08..4a7c3edf85 100644
--- a/var/spack/repos/builtin/packages/r-ggmap/package.py
+++ b/var/spack/repos/builtin/packages/r-ggmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ggplot2/package.py b/var/spack/repos/builtin/packages/r-ggplot2/package.py
index 4c44ac0468..7802a5831f 100644
--- a/var/spack/repos/builtin/packages/r-ggplot2/package.py
+++ b/var/spack/repos/builtin/packages/r-ggplot2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,18 @@ from spack import *
class RGgplot2(RPackage):
- """An implementation of the grammar of graphics in R. It combines the
- advantages of both base and lattice graphics: conditioning and shared axes
- are handled automatically, and you can still build up a plot step by step
- from multiple data sources. It also implements a sophisticated
- multidimensional conditioning system and a consistent interface to map data
- to aesthetic attributes. See http://ggplot2.org for more information,
- documentation and examples."""
+ """Create Elegant Data Visualisations Using the Grammar of Graphics
+
+ A system for 'declaratively' creating graphics, based on "The Grammar of
+ Graphics". You provide the data, tell 'ggplot2' how to map variables to
+ aesthetics, what graphical primitives to use, and it takes care of the
+ details."""
homepage = "http://ggplot2.org/"
url = "https://cloud.r-project.org/src/contrib/ggplot2_2.2.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggplot2"
+ version('3.3.3', sha256='45c29e2348dbd195bbde1197a52db7764113e57f463fd3770fb899acc33423cc')
version('3.2.0', sha256='31b6897fb65acb37913ff6e2bdc1b57f652360098ae3aa660abdcf54f84d73b3')
version('3.1.1', sha256='bfde297f3b4732e7f560078f4ce131812a70877e6b5b1d41a772c394939e0c79')
version('2.2.1', sha256='5fbc89fec3160ad14ba90bd545b151c7a2e7baad021c0ab4b950ecd6043a8314')
@@ -27,14 +27,16 @@ class RGgplot2(RPackage):
depends_on('r@3.1:', when='@:3.1.1', type=('build', 'run'))
depends_on('r@3.2:', when='@3.2.0:', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
+ depends_on('r-glue', when='@3.3.3:', type=('build', 'run'))
depends_on('r-gtable@0.1.1:', type=('build', 'run'))
+ depends_on('r-isoband', when='@3.3.3:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
- depends_on('r-plyr@1.7.1:', when='@:3.1.1', type=('build', 'run'))
- depends_on('r-reshape2', type=('build', 'run'))
- depends_on('r-scales@0.5.0:', type=('build', 'run'))
- depends_on('r-tibble', type=('build', 'run'))
- depends_on('r-lazyeval', type=('build', 'run'))
depends_on('r-mgcv', when='@3.2.0:', type=('build', 'run'))
depends_on('r-rlang@0.3.0:', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-viridislite', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-scales@0.5.0:', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
depends_on('r-withr@2.0.0:', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-plyr@1.7.1:', when='@:3.1.1', type=('build', 'run'))
+ depends_on('r-reshape2', when='@:3.2.0', type=('build', 'run'))
+ depends_on('r-lazyeval', when='@:3.2.0', type=('build', 'run'))
+ depends_on('r-viridislite', when='@3.0.0:3.2.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggplotify/package.py b/var/spack/repos/builtin/packages/r-ggplotify/package.py
index f1ef249a66..765c293a8b 100644
--- a/var/spack/repos/builtin/packages/r-ggplotify/package.py
+++ b/var/spack/repos/builtin/packages/r-ggplotify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,19 @@ from spack import *
class RGgplotify(RPackage):
- """ggplotify: Convert Plot to 'grob' or 'ggplot' Object"""
+ """Convert Plot to 'grob' or 'ggplot' Object
+
+ Convert plot function call (using expression or formula) to 'grob' or
+ 'ggplot' object that compatible to the 'grid' and 'ggplot2' ecosystem. With
+ this package, we are able to e.g. using 'cowplot' to align plots produced
+ by 'base' graphics, 'ComplexHeatmap', 'eulerr', 'grid', 'lattice',
+ 'magick', 'pheatmap', 'vcd' etc. by converting them to 'ggplot' objects."""
homepage = "https://github.com/GuangchuangYu/ggplotify"
url = "https://cloud.r-project.org/src/contrib/ggplotify_0.0.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggplotify"
+ version('0.0.5', sha256='035ea6a70023c4819c8a486d0fd94c2765aa4d6df318747e104eeb9829b9d65d')
version('0.0.3', sha256='7e7953a2933aa7127a0bac54375e3e0219a0744cfc3249c3d7b76065f7a51892')
depends_on('r@3.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggpubr/package.py b/var/spack/repos/builtin/packages/r-ggpubr/package.py
index a746f292b3..481a70321e 100644
--- a/var/spack/repos/builtin/packages/r-ggpubr/package.py
+++ b/var/spack/repos/builtin/packages/r-ggpubr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,21 @@ from spack import *
class RGgpubr(RPackage):
- """ggpubr: 'ggplot2' Based Publication Ready Plots"""
+ """'ggplot2' Based Publication Ready Plots
+
+ The 'ggplot2' package is excellent and flexible for elegant data
+ visualization in R. However the default generated plots requires some
+ formatting before we can send them for publication. Furthermore, to
+ customize a 'ggplot', the syntax is opaque and this raises the level of
+ difficulty for researchers with no advanced R programming skills. 'ggpubr'
+ provides some easy-to-use functions for creating and customizing 'ggplot2'-
+ based publication ready plots."""
homepage = "http://www.sthda.com/english/rpkgs/ggpubr"
url = "https://cloud.r-project.org/src/contrib/ggpubr_0.1.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggpubr"
+ version('0.4.0', sha256='abb21ec0b1ae3fa1c58eedca2d59b9b009621b30e3660f1247b3880c5fa50675')
version('0.2.2', sha256='1c93dc6d1f08680dd00a10b6842445700d1fccb11f18599fbdf51e70c6b6b364')
version('0.2.1', sha256='611e650da9bd15d7157fdcdc4e926fee3b88df3aba87410fdb1c8a7294d98d28')
version('0.2', sha256='06c3075d8c452840662f5d041c3d966494b87254a52a858c849b9e1e96647766')
@@ -20,11 +29,10 @@ class RGgpubr(RPackage):
depends_on('r@3.1.0:', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-ggrepel', type=('build', 'run'))
depends_on('r-ggsci', type=('build', 'run'))
- depends_on('r-plyr', when='@:0.1.2', type=('build', 'run'))
depends_on('r-tidyr', when='@0.2:', type=('build', 'run'))
+ depends_on('r-plyr', when='@:0.1.2', type=('build', 'run'))
depends_on('r-purrr', when='@0.2:', type=('build', 'run'))
depends_on('r-dplyr@0.7.1:', when='@0.2:', type=('build', 'run'))
depends_on('r-cowplot', when='@0.2:', type=('build', 'run'))
@@ -34,3 +42,6 @@ class RGgpubr(RPackage):
depends_on('r-glue', when='@0.2:', type=('build', 'run'))
depends_on('r-polynom', when='@0.2:', type=('build', 'run'))
depends_on('r-rlang', when='@0.2.2:', type=('build', 'run'))
+ depends_on('r-rstatix@0.6.0:', when='@0.4.0:', type=('build', 'run'))
+ depends_on('r-tibble', when='@0.4.0:', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggraph/package.py b/var/spack/repos/builtin/packages/r-ggraph/package.py
index c4cbed3c91..bc158d924b 100644
--- a/var/spack/repos/builtin/packages/r-ggraph/package.py
+++ b/var/spack/repos/builtin/packages/r-ggraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,24 @@ from spack import *
class RGgraph(RPackage):
- """ggraph: An Implementation of Grammar of Graphics for Graphs and
- Networks"""
+ """An Implementation of Grammar of Graphics for Graphs and Networks
+
+ The grammar of graphics as implemented in ggplot2 is a poor fit for graph
+ and network visualizations due to its reliance on tabular data input.
+ ggraph is an extension of the ggplot2 API tailored to graph visualizations
+ and provides the same flexible approach to building up plots layer by
+ layer."""
homepage = "https://github.com/thomasp85/ggraph"
url = "https://cloud.r-project.org/src/contrib/ggraph_2.0.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggraph"
+ version('2.0.4', sha256='9c6092d9a98b7b116f9c765ba44de7a34ceff2f584e776ef7a2082ad1d717dc8')
version('2.0.0', sha256='4307efe85bfc6a0496797f6b86d6b174ba196538c51b1a6b6af55de0d4e04762')
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-ggplot2@3.0.0:', type=('build', 'run'))
- depends_on('r-rcpp@0.12.2', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.2:', type=('build', 'run'))
depends_on('r-dplyr', type=('build', 'run'))
depends_on('r-ggforce@0.3.1:', type=('build', 'run'))
depends_on('r-igraph@1.0.0:', type=('build', 'run'))
@@ -31,3 +37,4 @@ class RGgraph(RPackage):
depends_on('r-rlang', type=('build', 'run'))
depends_on('r-tidygraph', type=('build', 'run'))
depends_on('r-graphlayouts@0.5.0:', type=('build', 'run'))
+ depends_on('r-withr', when='@2.0.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggrepel/package.py b/var/spack/repos/builtin/packages/r-ggrepel/package.py
index affb69a321..1fb6aa1278 100644
--- a/var/spack/repos/builtin/packages/r-ggrepel/package.py
+++ b/var/spack/repos/builtin/packages/r-ggrepel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,17 @@ from spack import *
class RGgrepel(RPackage):
- """ggrepel: Repulsive Text and Label Geoms for 'ggplot2'"""
+ """Repulsive Text and Label Geoms for 'ggplot2'
+
+ Provides text and label geoms for 'ggplot2' that help to avoid overlapping
+ text labels. Labels repel away from each other and away from the data
+ points."""
homepage = "http://github.com/slowkow/ggrepel"
url = "https://cloud.r-project.org/src/contrib/ggrepel_0.6.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggrepel"
+ version('0.9.0', sha256='4f7ca3da7dc08902487c961c539ef43516263c30abcc4ce303ff3c5580f42fda')
version('0.8.1', sha256='d5d03a77ab6d8c831934bc46e840cc4e3df487272ab591fa72767ad42bcb7283')
version('0.8.0', sha256='6386606e716d326354a29fcb6cd09f9b3d3b5e7c5ba0d5f7ff35416b1a4177d4')
version('0.6.5', sha256='360ae9d199755f9e260fefbd3baba3448fad3f024f20bcd9942a862b8c41a752')
@@ -20,4 +25,6 @@ class RGgrepel(RPackage):
depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r-ggplot2@2.2.0:', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-rlang@0.3.0:', when='@0.9.0:', type=('build', 'run'))
depends_on('r-scales@0.3.0:', type=('build', 'run'))
+ depends_on('r-scales@0.5.0:', when='@0.9.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggridges/package.py b/var/spack/repos/builtin/packages/r-ggridges/package.py
index 22fc773bbe..30824a95a2 100644
--- a/var/spack/repos/builtin/packages/r-ggridges/package.py
+++ b/var/spack/repos/builtin/packages/r-ggridges/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,17 @@ from spack import *
class RGgridges(RPackage):
- """Ridgeline plots provide a convenient way of visualizing changes in
- distributions over time or space."""
+ """Ridgeline Plots in 'ggplot2'
+
+ Ridgeline plots provide a convenient way of visualizing changes in
+ distributions over time or space. This package enables the creation of such
+ plots in 'ggplot2'."""
homepage = "https://cloud.r-project.org/package=ggridges"
url = "https://cloud.r-project.org/src/contrib/ggridges_0.4.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggridges"
+ version('0.5.3', sha256='f5eafab17f2d4a8a2a83821ad3e96ae7c26b62bbce9de414484c657383c7b42e')
version('0.5.1', sha256='01f87cdcdf2052ed9c078d9352465cdeda920a41e2ca55bc154c1574fc651c36')
version('0.5.0', sha256='124bc84044e56728fa965682f8232fc868f2af7d3eb7276f6b0df53be8d2dbfe')
version('0.4.1', sha256='03d2013df6adf07c9741d4476df96865b878a88359763ac36b98aa86591cca4d')
@@ -21,6 +25,7 @@ class RGgridges(RPackage):
depends_on('r@3.2:', type=('build', 'run'))
depends_on('r-ggplot2@2.2.0:', type=('build', 'run'))
+ depends_on('r-ggplot2@3.0.0:', when='@0.5.3:', type=('build', 'run'))
depends_on('r-plyr@1.8.0:', type=('build', 'run'))
depends_on('r-scales@0.4.1:', type=('build', 'run'))
depends_on('r-withr@2.1.1:', when='@0.5.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggsci/package.py b/var/spack/repos/builtin/packages/r-ggsci/package.py
index f8dc21d11e..e2a83710a1 100644
--- a/var/spack/repos/builtin/packages/r-ggsci/package.py
+++ b/var/spack/repos/builtin/packages/r-ggsci/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ggsignif/package.py b/var/spack/repos/builtin/packages/r-ggsignif/package.py
index 142dd9e1ef..a77fca4454 100644
--- a/var/spack/repos/builtin/packages/r-ggsignif/package.py
+++ b/var/spack/repos/builtin/packages/r-ggsignif/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ggthemes/package.py b/var/spack/repos/builtin/packages/r-ggthemes/package.py
new file mode 100644
index 0000000000..386f86bb30
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ggthemes/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RGgthemes(RPackage):
+ """ggthemes: Extra Themes, Scales and Geoms for
+ 'ggplot2'
+
+ Some extra themes, geoms, and scales for 'ggplot2'. Provides 'ggplot2' themes
+ and scales that replicate the look of plots by Edward Tufte, Stephen Few,
+ 'Fivethirtyeight', 'The Economist', 'Stata', 'Excel', and 'The Wall Street
+ Journal', among others. Provides 'geoms' for Tufte's box plot and range
+ frame."""
+
+ homepage = "https://jrnold.github.io/ggthemes/"
+ url = "https://cloud.r-project.org/src/contrib/ggthemes_4.2.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/ggthemes"
+
+ version('4.2.4', sha256='7b35168cf5b68f6f52dd533a1b345ec87e09d1a85ca68e8dc5377cdf95718567')
+ version('4.2.0', sha256='5bb3fe94819fe2cce7865f07a6e6ea5c59d3996f78d1c0836ad406f69efb3367')
+
+ depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r-ggplot2@3.0.0:', type=('build', 'run'))
+ depends_on('r-purrr', type=('build', 'run'))
+ depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggvis/package.py b/var/spack/repos/builtin/packages/r-ggvis/package.py
index 53f26ba5ed..7319358c50 100644
--- a/var/spack/repos/builtin/packages/r-ggvis/package.py
+++ b/var/spack/repos/builtin/packages/r-ggvis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RGgvis(RPackage):
- """An implementation of an interactive grammar of graphics, taking the best
+ """Interactive Grammar of Graphics
+
+ An implementation of an interactive grammar of graphics, taking the best
parts of 'ggplot2', combining them with the reactive framework from 'shiny'
and web graphics from 'vega'."""
@@ -15,6 +17,7 @@ class RGgvis(RPackage):
url = "https://cloud.r-project.org/src/contrib/ggvis_0.4.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ggvis"
+ version('0.4.7', sha256='9e6b067e11d497c796d42156570e2481afb554c5db265f42afbb74d2ae0865e3')
version('0.4.4', sha256='1332ea122b768688c8a407a483be80febc4576de0ec8929077738421b27cafaf')
version('0.4.3', sha256='34d517783016aaa1c4bef8972f4c06df5cd9ca0568035b647e60a8369043ecdc')
version('0.4.2', sha256='2fcc2b6ca4fbdc69fe75a2c58c12cb43096ab418160c98367e5ac0fd19fc591d')
@@ -25,5 +28,7 @@ class RGgvis(RPackage):
depends_on('r-shiny@0.11.1:', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-dplyr@0.4.0:', type=('build', 'run'))
- depends_on('r-lazyeval', type=('build', 'run'))
+ depends_on('r-dplyr@0.5.0:', when='@0.4.7:', type=('build', 'run'))
+ depends_on('r-rlang', when='@0.4.7:', type=('build', 'run'))
depends_on('r-htmltools@0.2.4:', type=('build', 'run'))
+ depends_on('r-lazyeval', when='@:0.4.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gh/package.py b/var/spack/repos/builtin/packages/r-gh/package.py
index d7d6fc6fb2..b3d39918db 100644
--- a/var/spack/repos/builtin/packages/r-gh/package.py
+++ b/var/spack/repos/builtin/packages/r-gh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,22 @@ from spack import *
class RGh(RPackage):
- """Minimal client to access the 'GitHub' 'API'."""
+ """'GitHub' 'API'
+
+ Minimal client to access the 'GitHub' 'API'."""
homepage = "https://github.com/r-lib/gh#readme"
url = "https://cloud.r-project.org/src/contrib/gh_1.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gh"
+ version('1.2.0', sha256='2988440ed2ba4b241c8ffbafbfdad29493574980a9aeba210521dadda91f7eff')
version('1.1.0', sha256='de9faf383c3fe5e87a75391d82cf71b1331b3c80cd00c4203146a303825d89ad')
version('1.0.1', sha256='f3c02b16637ae390c3599265852d94b3de3ef585818b260d00e7812595b391d2')
- depends_on('r-ini', type=('build', 'run'))
- depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-cli', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-cli@2.0.1:', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-gitcreds', when='@1.2.0:', type=('build', 'run'))
depends_on('r-httr', type=('build', 'run'))
depends_on('r-httr@1.2:', when='@1.1.0:', type=('build', 'run'))
- depends_on('r-cli', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-ini', type=('build', 'run'))
+ depends_on('r-jsonlite', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gistr/package.py b/var/spack/repos/builtin/packages/r-gistr/package.py
index b171fe1399..85850df0fb 100644
--- a/var/spack/repos/builtin/packages/r-gistr/package.py
+++ b/var/spack/repos/builtin/packages/r-gistr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,22 +8,31 @@ from spack import *
class RGistr(RPackage):
- """Work with 'GitHub' 'gists' from 'R'. This package allows the user to
- create new 'gists', update 'gists' with new files, rename files, delete
- files, get and delete 'gists', star and 'un-star' 'gists', fork 'gists',
- open a 'gist' in your default browser, get embed code for a 'gist', list
- 'gist' 'commits', and get rate limit information when 'authenticated'. Some
- requests require authentication and some do not."""
+ """Work with 'GitHub' 'Gists'
+
+ Work with 'GitHub' 'gists' from 'R' (e.g.,
+ <https://en.wikipedia.org/wiki/GitHub#Gist>,
+ <https://docs.github.com/en/github/writing-on-github/creating-gists/>). A
+ 'gist' is simply one or more files with code/text/images/etc. This package
+ allows the user to create new 'gists', update 'gists' with new files,
+ rename files, delete files, get and delete 'gists', star and 'un-star'
+ 'gists', fork 'gists', open a 'gist' in your default browser, get embed
+ code for a 'gist', list 'gist' 'commits', and get rate limit information
+ when 'authenticated'. Some requests require authentication and some do not.
+ 'Gists' website: <https://gist.github.com/>."""
homepage = "https://github.com/ropensci/gistr"
url = "https://cloud.r-project.org/src/contrib/gistr_0.3.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gistr"
+ version('0.9.0', sha256='170ae025151ee688e7d31b9e49112086a8ddf4fef10155e9ee289ad7f28c8929')
version('0.4.2', sha256='43c00c7f565732125f45f6c067724771ba1b337d6dd3a6e301639fe16e11032e')
version('0.4.0', sha256='51771a257379a17552d0c88ada72ca6263954bbe896997f8a66cde3bf0b83ce0')
version('0.3.6', sha256='ab22523b79510ec03be336e1d4600ec8a3a65afe57c5843621a4cf8f966b52e5')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-jsonlite@1.4:', type=('build', 'run'))
+ depends_on('r-crul', when='@0.9.0:', type=('build', 'run'))
depends_on('r-httr@1.2.0:', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-assertthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-git2r/package.py b/var/spack/repos/builtin/packages/r-git2r/package.py
index dff31b8318..9819f7bc99 100644
--- a/var/spack/repos/builtin/packages/r-git2r/package.py
+++ b/var/spack/repos/builtin/packages/r-git2r/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RGit2r(RPackage):
- """Interface to the 'libgit2' library, which is a pure C implementation of
+ """Provides Access to Git Repositories
+
+ Interface to the 'libgit2' library, which is a pure C implementation of
the 'Git' core methods. Provides access to 'Git' repositories to extract
data and running some basic 'Git' commands."""
@@ -15,6 +17,7 @@ class RGit2r(RPackage):
url = "https://cloud.r-project.org/src/contrib/git2r_0.18.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/git2r"
+ version('0.28.0', sha256='ce6d148d21d2c87757e98ef4474b2d09faded9b9b866f046bd26d4ca925e55f2')
version('0.27.1', sha256='099207f180aa45ddcc443cbb22487eafd14e1cd8e5979b3476214253fd773bc0')
version('0.26.1', sha256='13d609286a0af4ef75ba76f2c2f856593603b8014e311b88896243a50b417435')
version('0.26.0', sha256='56671389c3a50591e1dae3be8c3b0112d06d291f897d7fe14db17aea175616cf')
diff --git a/var/spack/repos/builtin/packages/r-gitcreds/package.py b/var/spack/repos/builtin/packages/r-gitcreds/package.py
new file mode 100644
index 0000000000..1760cd89c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gitcreds/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RGitcreds(RPackage):
+ """Query 'git' Credentials from 'R'
+
+ Query, set, delete credentials from the 'git' credential store. Manage
+ 'GitHub' tokens and other 'git' credentials. This package is to be used by
+ other packages that need to authenticate to 'GitHub' and/or other 'git'
+ repositories."""
+
+ homepage = "https://github.com/r-lib/gitcreds"
+ url = "https://cloud.r-project.org/src/contrib/gitcreds_0.1.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/gitcreds"
+
+ version('0.1.1', sha256='b14aaf4e910a9d2d6c65c93e645f0b0159c00898e669f917f83c03dfedb1dfea')
+
+ depends_on('git', type='run')
diff --git a/var/spack/repos/builtin/packages/r-glimma/package.py b/var/spack/repos/builtin/packages/r-glimma/package.py
index 302afa62ae..7d59544072 100644
--- a/var/spack/repos/builtin/packages/r-glimma/package.py
+++ b/var/spack/repos/builtin/packages/r-glimma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGlimma(RPackage):
- """Interactive HTML graphics.
+ """Interactive HTML graphics
This package generates interactive visualisations for analysis of RNA-
sequencing data using output from limma, edgeR or DESeq2 packages in an
@@ -18,6 +18,7 @@ class RGlimma(RPackage):
homepage = "https://bioconductor.org/packages/Glimma"
git = "https://git.bioconductor.org/packages/Glimma.git"
+ version('2.0.0', commit='40bebaa79e8c87c5686cff7285def4461c11bca9')
version('1.12.0', commit='d02174239fe0b47983d6947ed42a1a53b24caecb')
version('1.10.1', commit='ffc7abc36190396598fadec5e9c653441e47be72')
version('1.8.2', commit='7696aca2c023f74d244b6c908a6e7ba52bfcb34b')
@@ -25,10 +26,14 @@ class RGlimma(RPackage):
version('1.4.0', commit='c613c5334ed7868f36d5716b97fdb6234fb291f8')
depends_on('r@3.3.0:', type=('build', 'run'))
- depends_on('r-biobase', when='@1.4.0:1.6.0', type=('build', 'run'))
+ depends_on('r@3.4.0:', when='@1.6.0:', type=('build', 'run'))
+ depends_on('r@4.0.0:', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-htmlwidgets', when='@2.0.0:', type=('build', 'run'))
depends_on('r-edger', type=('build', 'run'))
+ depends_on('r-deseq2', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-limma', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', when='@2.0.0:', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
- depends_on('r-scater', when='@1.4.0', type=('build', 'run'))
depends_on('r-s4vectors', type=('build', 'run'))
-
- depends_on('r@3.4.0:', when='@1.6.0:', type=('build', 'run'))
+ depends_on('r-biobase', when='@1.4.0:1.6.0', type=('build', 'run'))
+ depends_on('r-scater', when='@1.4.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-glmnet/package.py b/var/spack/repos/builtin/packages/r-glmnet/package.py
index 0df0d76583..c0a33c48a7 100644
--- a/var/spack/repos/builtin/packages/r-glmnet/package.py
+++ b/var/spack/repos/builtin/packages/r-glmnet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RGlmnet(RPackage):
- """Extremely efficient procedures for fitting the entire lasso or
+ """Lasso and Elastic-Net Regularized Generalized Linear Models
+
+ Extremely efficient procedures for fitting the entire lasso or
elastic-net regularization path for linear regression, logistic and
multinomial regression models, Poisson regression and the Cox model. Two
recent additions are the multiple-response Gaussian, and the grouped
@@ -18,9 +20,13 @@ class RGlmnet(RPackage):
url = "https://cloud.r-project.org/src/contrib/glmnet_2.0-13.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/glmnet"
+ version('4.1', sha256='8f0af50919f488789ecf261f6e0907f367d89fca812baa2f814054fb2d0e40cb')
version('2.0-18', sha256='e8dce9d7b8105f9cc18ba981d420de64a53b09abee219660d3612915d554256b')
version('2.0-13', sha256='f3288dcaddb2f7014d42b755bede6563f73c17bc87f8292c2ef7776cb9b9b8fd')
version('2.0-5', sha256='2ca95352c8fbd93aa7800f3d972ee6c1a5fcfeabc6be8c10deee0cb457fd77b1')
+ depends_on('r@3.6.0:', when='@4.1:', type=('build', 'run'))
depends_on('r-matrix@1.0-6:', type=('build', 'run'))
depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-shape', when='@4.1:', type=('build', 'run'))
+ depends_on('r-survival', when='@4.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-globaloptions/package.py b/var/spack/repos/builtin/packages/r-globaloptions/package.py
index 3f5b8d20e0..5e81ed3e74 100644
--- a/var/spack/repos/builtin/packages/r-globaloptions/package.py
+++ b/var/spack/repos/builtin/packages/r-globaloptions/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RGlobaloptions(RPackage):
- """It provides more controls on the option values such as validation and
- filtering on the values, making options invisible or private."""
+ """Generate Functions to Get or Set Global Options
+
+ It provides more controls on the option values such as validation and
+ filtering on the values, making options invisible or private."""
homepage = "https://cloud.r-project.org/package=GlobalOptions"
url = "https://cloud.r-project.org/src/contrib/GlobalOptions_0.0.12.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/GlobalOptions"
+ version('0.1.2', sha256='47890699668cfa9900a829c51f8a32e02a7a7764ad07cfac972aad66f839753e')
version('0.1.0', sha256='567a0a51f6b7b14127302f00e6e4944befd4964c069f96a9e61256e8c3c79ef2')
version('0.0.12', sha256='c09da3f9b1646d0f815056cdbeb5fff7dda29f7dd8742d245f5f6dc7066077a9')
diff --git a/var/spack/repos/builtin/packages/r-globals/package.py b/var/spack/repos/builtin/packages/r-globals/package.py
index 12b2f974cb..70fb9fa942 100644
--- a/var/spack/repos/builtin/packages/r-globals/package.py
+++ b/var/spack/repos/builtin/packages/r-globals/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RGlobals(RPackage):
- """Identifies global ("unknown" or "free") objects in R expressions by code
+ """Identify Global Objects in R Expressions
+
+ Identifies global ("unknown" or "free") objects in R expressions by code
inspection using various strategies, e.g. conservative or liberal. The
objective of this package is to make it as simple as possible to identify
global objects for the purpose of exporting them in distributed compute
@@ -17,6 +19,7 @@ class RGlobals(RPackage):
url = "https://cloud.r-project.org/src/contrib/globals_0.12.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/globals"
+ version('0.14.0', sha256='203dbccb829ca9cc6aedb6f5e79cb126ea31f8dd379dff9111ec66e3628c32f3')
version('0.12.4', sha256='7985356ad75afa1f795f8267a20dee847020c0207252dc075c614cef55d8fe6b')
depends_on('r@3.1.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-globaltest/package.py b/var/spack/repos/builtin/packages/r-globaltest/package.py
new file mode 100644
index 0000000000..3d45b6648e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-globaltest/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RGlobaltest(RPackage):
+ """Testing Groups of Covariates/Features for Association with a Response
+ Variable, with Applications to Gene Set Testing:
+
+ The global test tests groups of covariates (or features) for association
+ with a response variable. This package implements the test with diagnostic
+ plots and multiple testing utilities, along with several functions to
+ facilitate the use of this test for gene set testing of GO and KEGG
+ terms."""
+
+ bioc = "globaltest"
+
+ version('5.44.0', commit='571933d5c779a241740be913ff49ecdd59bcbc45')
+
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-annotate', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-glue/package.py b/var/spack/repos/builtin/packages/r-glue/package.py
index 20371a9740..8d25829f50 100644
--- a/var/spack/repos/builtin/packages/r-glue/package.py
+++ b/var/spack/repos/builtin/packages/r-glue/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,19 @@ from spack import *
class RGlue(RPackage):
- """An implementation of interpreted string literals, inspired by Python's
- Literal String Interpolation <https://www.python.org/dev/peps/pep-0498/>
- and Docstrings <https://www.python.org/dev/peps/pep-0257/> and Julia's
- Triple-Quoted String Literals <https://docs.julialang.org/en/stable/
- manual/strings/#triple-quoted-string-literals>."""
+ """Interpreted String Literals
+
+ An implementation of interpreted string literals, inspired by Python's
+ Literal String Interpolation <https://www.python.org/dev/peps/pep-0498/>
+ and Docstrings <https://www.python.org/dev/peps/pep-0257/> and Julia's
+ Triple-Quoted String Literals <https://docs.julialang.org/en/stable/
+ manual/strings/#triple-quoted-string-literals>."""
homepage = "https://github.com/tidyverse/glue"
url = "https://cloud.r-project.org/src/contrib/glue_1.2.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/glue"
+ version('1.4.2', sha256='9f7354132a26e9a876428fa87629b9aaddcd558f9932328e6ac065b95b8ef7ad')
version('1.4.1', sha256='f8b687d35cacb5ee7fcada6e9c26ea20c04d0bdc9d37e919a03abd1137513bc8')
version('1.4.0', sha256='ea6c409f7141754baa090deba96cff270a11b185452cf9e6fb69cb148a9069c1')
version('1.3.1', sha256='4fc1f2899d71a634e1f0adb7942772feb5ac73223891abe30ea9bd91d3633ea8')
@@ -24,3 +27,4 @@ class RGlue(RPackage):
version('1.2.0', sha256='19275b34ee6a1bcad05360b7eb996cebaa1402f189a5dfb084e695d423f2296e')
depends_on('r@3.1:', type=('build', 'run'))
+ depends_on('r@3.2:', when='@1.4.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gmodels/package.py b/var/spack/repos/builtin/packages/r-gmodels/package.py
index c11d4b2e18..2244cfdb07 100644
--- a/var/spack/repos/builtin/packages/r-gmodels/package.py
+++ b/var/spack/repos/builtin/packages/r-gmodels/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gmp/package.py b/var/spack/repos/builtin/packages/r-gmp/package.py
index 871dea5847..49d9863378 100644
--- a/var/spack/repos/builtin/packages/r-gmp/package.py
+++ b/var/spack/repos/builtin/packages/r-gmp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,21 @@ from spack import *
class RGmp(RPackage):
- """Multiple Precision Arithmetic (big integers and rationals, prime
- number tests, matrix computation), "arithmetic without limitations"
- using the C library GMP (GNU Multiple Precision Arithmetic)."""
+ """Multiple Precision Arithmetic
+
+ Multiple Precision Arithmetic (big integers and rationals, prime number
+ tests, matrix computation), "arithmetic without limitations" using the C
+ library GMP (GNU Multiple Precision Arithmetic)."""
homepage = "http://mulcyber.toulouse.inra.fr/projects/gmp"
url = "https://cloud.r-project.org/src/contrib/gmp_0.5-13.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gmp"
+ version('0.6-2', sha256='6bfcb45b3f1e7da27d8773f911027355cab371d150c3dabf7dbaf8fba85b7f0e')
version('0.5-13.5', sha256='f681ab2ff3d1e379ba8ac44a8abddd08d08170723e885abc0b469b6fa8fe5510')
version('0.5-13.4', sha256='f05605b40fc39fc589e3a4d2f526a591a649faa45eef7f95c096e1bff8775196')
version('0.5-13.1', sha256='2f805374a26742cd43f6b2054130d8670eda1940070aabb9971e9e48226d0976')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.6-2:', type=('build', 'run'))
depends_on('gmp@4.2.3:')
diff --git a/var/spack/repos/builtin/packages/r-go-db/package.py b/var/spack/repos/builtin/packages/r-go-db/package.py
index 1a91053392..e15bf99802 100644
--- a/var/spack/repos/builtin/packages/r-go-db/package.py
+++ b/var/spack/repos/builtin/packages/r-go-db/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,21 @@ from spack import *
class RGoDb(RPackage):
- """A set of annotation maps describing the entire Gene
+ """A set of annotation maps describing the entire Gene Ontology
+
+ A set of annotation maps describing the entire Gene
Ontology assembled using data from GO."""
homepage = "https://www.bioconductor.org/packages/GO.db/"
- url = "https://www.bioconductor.org/packages/3.5/data/annotation/src/contrib/GO.db_3.4.1.tar.gz"
+ url = "https://www.bioconductor.org/packages/3.5/data/annotation/src/contrib/GO.db_3.4.1.tar.gz"
+
+ version('3.12.1',
+ sha256='e0316959d3d32096f9432c897413dff74fce53e15ead7917a7724467d971dab9',
+ url='https://bioconductor.org/packages/3.12/data/annotation/src/contrib/GO.db_3.12.1.tar.gz')
+ version('3.4.1',
+ sha256='2fc2048e9d26edb98e35e4adc4d18c6df54f44836b5cc4a482d36ed99e058cc1',
+ url='https://bioconductor.org/packages/3.5/data/annotation/src/contrib/GO.db_3.4.1.tar.gz')
- version('3.4.1', sha256='2fc2048e9d26edb98e35e4adc4d18c6df54f44836b5cc4a482d36ed99e058cc1')
- depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r@2.7.0:', type=('build', 'run'))
+ depends_on('r-annotationdbi@1.37.4:', type=('build', 'run'))
+ depends_on('r-annotationdbi@1.51.3:', when='@3.12.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-goftest/package.py b/var/spack/repos/builtin/packages/r-goftest/package.py
index feaa0724b3..535e2b084a 100644
--- a/var/spack/repos/builtin/packages/r-goftest/package.py
+++ b/var/spack/repos/builtin/packages/r-goftest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gofuncr/package.py b/var/spack/repos/builtin/packages/r-gofuncr/package.py
index 22fdb5745f..8df9f00ff0 100644
--- a/var/spack/repos/builtin/packages/r-gofuncr/package.py
+++ b/var/spack/repos/builtin/packages/r-gofuncr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGofuncr(RPackage):
- """Gene ontology enrichment using FUNC.
+ """Gene ontology enrichment using FUNC
GOfuncR performs a gene ontology enrichment analysis based on the
ontology enrichment software FUNC. GO-annotations are obtained from
@@ -29,16 +29,17 @@ class RGofuncr(RPackage):
homepage = "https://bioconductor.org/packages/GOfuncR"
git = "https://git.bioconductor.org/packages/GOfuncR.git"
+ version('1.10.0', commit='51b01a2b9afa03fde2e1628036096cbeafaa2ef4')
version('1.4.0', commit='2f633dc28e3faeddc5346fcdcadf1c29e3fcf709')
version('1.2.0', commit='140a3cea4fe34d32fef9be756f85e337ce3deded')
version('1.0.0', commit='becd4ddde085c5477042adb856e7a4f40dbd648e')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.4:', type=('build', 'run'))
depends_on('r-vioplot@0.2:', type=('build', 'run'))
depends_on('r-rcpp@0.11.5:', type=('build', 'run'))
depends_on('r-mapplots@1.5:', type=('build', 'run'))
depends_on('r-gtools@3.5.0:', type=('build', 'run'))
depends_on('r-genomicranges@1.28.4:', type=('build', 'run'))
- depends_on('r-annotationdbi', type=('build', 'run'))
-
depends_on('r-iranges', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-googlevis/package.py b/var/spack/repos/builtin/packages/r-googlevis/package.py
index dc8f3659f6..d8b746c591 100644
--- a/var/spack/repos/builtin/packages/r-googlevis/package.py
+++ b/var/spack/repos/builtin/packages/r-googlevis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RGooglevis(RPackage):
- """R interface to Google Charts API, allowing users to create interactive
+ """R Interface to Google Charts
+
+ R interface to Google Charts API, allowing users to create interactive
charts based on data frames. Charts are displayed locally via the R HTTP
help server. A modern browser with an Internet connection is required and
for some charts a Flash player. The data remains local and is not uploaded
@@ -17,6 +19,7 @@ class RGooglevis(RPackage):
url = "https://cloud.r-project.org/src/contrib/googleVis_0.6.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/googleVis"
+ version('0.6.9', sha256='0739d0a3382a73a824b5ff9a6fe329198dd05c9da5855ac051ed022d7b41b7ea')
version('0.6.4', sha256='7dcaf0e9d5e5598c17e8bd474141708de37eeb2578b09788431b9d871edb7eb8')
version('0.6.3', sha256='17d104c5d4e6ab7b984df229cd51be19681e4726077afec7c61a33f6e4c0b6ef')
version('0.6.0', sha256='862708097fbb5d4e83193777f40979d7848f9841d94d48ee8a74106266acc440')
diff --git a/var/spack/repos/builtin/packages/r-goplot/package.py b/var/spack/repos/builtin/packages/r-goplot/package.py
index d748b99af6..16ad099afe 100644
--- a/var/spack/repos/builtin/packages/r-goplot/package.py
+++ b/var/spack/repos/builtin/packages/r-goplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gosemsim/package.py b/var/spack/repos/builtin/packages/r-gosemsim/package.py
index b7468c9c84..9c5c0c7cee 100644
--- a/var/spack/repos/builtin/packages/r-gosemsim/package.py
+++ b/var/spack/repos/builtin/packages/r-gosemsim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGosemsim(RPackage):
- """GO-terms Semantic Similarity Measures.
+ """GO-terms Semantic Similarity Measures
The semantic comparisons of Gene Ontology (GO) annotations provide
quantitative ways to compute similarities between genes and gene groups,
@@ -20,6 +20,7 @@ class RGosemsim(RPackage):
homepage = "https://bioconductor.org/packages/GOSemSim"
git = "https://git.bioconductor.org/packages/GOSemSim.git"
+ version('2.16.1', commit='92f1d567f3584fe488f434abce87c2e1950081c0')
version('2.10.0', commit='5db1ecbf2f8d870430d6e587609327d05ba3ad7b')
version('2.8.0', commit='c8c985b2a814cc2365c7f05b2509205e1b6b7f58')
version('2.6.2', commit='2ffe78e89276e804306554965fc0799318ec56ed')
@@ -27,8 +28,8 @@ class RGosemsim(RPackage):
version('2.2.0', commit='247434790e6c8cf99e5643f569390362b8c87c52')
depends_on('r@3.3.2:', type=('build', 'run'))
+ depends_on('r@3.4.0:', when='@2.8.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@2.16.1:', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
depends_on('r-go-db', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
-
- depends_on('r@3.4.0:', when='@2.8.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-goseq/package.py b/var/spack/repos/builtin/packages/r-goseq/package.py
index 58f1c71711..56139b3caf 100644
--- a/var/spack/repos/builtin/packages/r-goseq/package.py
+++ b/var/spack/repos/builtin/packages/r-goseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGoseq(RPackage):
- """Gene Ontology analyser for RNA-seq and other length biased data.
+ """Gene Ontology analyser for RNA-seq and other length biased data
Detects Gene Ontology and/or other user defined categories which are
over/under represented in RNA-seq data"""
@@ -15,6 +15,7 @@ class RGoseq(RPackage):
homepage = "https://bioconductor.org/packages/goseq"
git = "https://git.bioconductor.org/packages/goseq.git"
+ version('1.42.0', commit='8164b90e7505bbc1035105fdc15219c764ef8b8d')
version('1.36.0', commit='26c9f7de18889afeee1b571ca1c4ab4d2877ab80')
version('1.34.1', commit='bad217b42cc34423698fbcf701d4e3591aac4474')
version('1.32.0', commit='32fcbe647eea17d7d0d7a262610811502c421d36')
diff --git a/var/spack/repos/builtin/packages/r-gostats/package.py b/var/spack/repos/builtin/packages/r-gostats/package.py
index 46185bcc36..e14654376d 100644
--- a/var/spack/repos/builtin/packages/r-gostats/package.py
+++ b/var/spack/repos/builtin/packages/r-gostats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGostats(RPackage):
- """Tools for manipulating GO and microarrays.
+ """Tools for manipulating GO and microarrays
A set of tools for interacting with GO and microarray data. A variety of
basic manipulation tools for graphs, hypothesis testing and other simple
@@ -16,22 +16,23 @@ class RGostats(RPackage):
homepage = "https://bioconductor.org/packages/GOstats"
git = "https://git.bioconductor.org/packages/GOstats.git"
+ version('2.56.0', commit='8f988c3b4b1ce7e05626aae8956004c7bbdd6f3a')
version('2.50.0', commit='ee13f84341988d537a5485dcdcfb71f69e6e4930')
version('2.48.0', commit='5db7020f4bab725cd729b32bd1d5e819b31f2485')
version('2.46.0', commit='489d7a437488f77c3010f6212f3b81f4e240cd17')
version('2.44.0', commit='fc64ca2aa37c52656d396d6e46611f39d6efd48a')
version('2.42.0', commit='8b29709064a3b66cf1d963b2be0c996fb48c873e')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-biobase@1.15.29:', type=('build', 'run'))
depends_on('r-category@2.3.26:', type=('build', 'run'))
+ depends_on('r-category@2.43.2:', when='@2.44.0:', type=('build', 'run'))
depends_on('r-graph@1.15.15:', when='@2.42.0', type=('build', 'run'))
+ depends_on('r-graph', when='@2.44.0:', type=('build', 'run'))
depends_on('r-annotationdbi@0.0.89:', type=('build', 'run'))
depends_on('r-go-db@1.13.0:', type=('build', 'run'))
depends_on('r-rbgl', type=('build', 'run'))
depends_on('r-annotate@1.13.2:', type=('build', 'run'))
depends_on('r-annotationforge', type=('build', 'run'))
-
- depends_on('r-category@2.43.2:', when='@2.44.0:', type=('build', 'run'))
depends_on('r-rgraphviz', when='@2.44.0:', type=('build', 'run'))
- depends_on('r-graph', when='@2.44.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gower/package.py b/var/spack/repos/builtin/packages/r-gower/package.py
index bee0ec5ba3..eaa7d07dc2 100644
--- a/var/spack/repos/builtin/packages/r-gower/package.py
+++ b/var/spack/repos/builtin/packages/r-gower/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RGower(RPackage):
- """Compute Gower's distance (or similarity) coefficient between records.
+ """Gower's Distance
+
+ Compute Gower's distance (or similarity) coefficient between records.
Compute the top-n matches between records. Core algorithms are executed in
parallel on systems supporting OpenMP."""
@@ -15,4 +17,5 @@ class RGower(RPackage):
url = "https://cloud.r-project.org/src/contrib/gower_0.2.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gower"
+ version('0.2.2', sha256='3f022010199fafe34f6e7431730642a76893e6b4249b84e5a61012cb83483631')
version('0.2.1', sha256='af3fbe91cf818c0841b2c0ec4ddf282c182a588031228c8d88f7291b2cdff100')
diff --git a/var/spack/repos/builtin/packages/r-gplots/package.py b/var/spack/repos/builtin/packages/r-gplots/package.py
index dd74ebd46b..63cfedcf00 100644
--- a/var/spack/repos/builtin/packages/r-gplots/package.py
+++ b/var/spack/repos/builtin/packages/r-gplots/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,17 +9,34 @@ from spack import *
class RGplots(RPackage):
- """Various R Programming Tools for Plotting Data."""
+ """Various R Programming Tools for Plotting Data
+
+ Various R programming tools for plotting data, including: - calculating and
+ plotting locally smoothed summary function as ('bandplot', 'wapply'), -
+ enhanced versions of standard plots ('barplot2', 'boxplot2', 'heatmap.2',
+ 'smartlegend'), - manipulating colors ('col2hex', 'colorpanel', 'redgreen',
+ 'greenred', 'bluered', 'redblue', 'rich.colors'), - calculating and
+ plotting two-dimensional data summaries ('ci2d', 'hist2d'), - enhanced
+ regression diagnostic plots ('lmplot2', 'residplot'), - formula-enabled
+ interface to 'stats::lowess' function ('lowess'), - displaying textual data
+ in plots ('textplot', 'sinkplot'), - plotting a matrix where each cell
+ contains a dot whose size reflects the relative magnitude of the elements
+ ('balloonplot'), - plotting "Venn" diagrams ('venn'), - displaying
+ Open-Office style plots ('ooplot'), - plotting multiple data on same
+ region, with separate axes ('overplot'), - plotting means and confidence
+ intervals ('plotCI', 'plotmeans'), - spacing points in an x-y plot so they
+ don't overlap ('space')."""
homepage = "https://cloud.r-project.org/package=gplots"
url = "https://cloud.r-project.org/src/contrib/gplots_3.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gplots"
+ version('3.1.1', sha256='f9ae19c2574b6d41adbeccaf7bc66cf56d7b2769004daba7e0038d5fbd821339')
version('3.0.1.1', sha256='7db103f903a25d174cddcdfc7b946039b61e236c95084b90ad17f1a41da3770c')
version('3.0.1', sha256='343df84327ac3d03494992e79ee3afc78ba3bdc08af9a305ee3fb0a38745cb0a')
depends_on('r@3.0:', type=('build', 'run'))
depends_on('r-gtools', type=('build', 'run'))
- depends_on('r-gdata', type=('build', 'run'))
depends_on('r-catools', type=('build', 'run'))
depends_on('r-kernsmooth', type=('build', 'run'))
+ depends_on('r-gdata', when='@:3.0.1.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-graph/package.py b/var/spack/repos/builtin/packages/r-graph/package.py
index 057e27a4b2..e13346800e 100644
--- a/var/spack/repos/builtin/packages/r-graph/package.py
+++ b/var/spack/repos/builtin/packages/r-graph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RGraph(RPackage):
- """graph: A package to handle graph data structures.
+ """graph: A package to handle graph data structures
A package that implements some simple graph handling capabilities."""
homepage = "https://bioconductor.org/packages/graph"
git = "https://git.bioconductor.org/packages/graph.git"
+ version('1.68.0', commit='03ad9ed088095605e317510b8234501318994e94')
version('1.62.0', commit='95223bd63ceb66cfe8d881f992a441de8b8c89a3')
version('1.60.0', commit='e2aecb0a862f32091b16e0036f53367d3edf4c1d')
version('1.58.2', commit='6455d8e7a5a45dc733915942cb71005c1016b6a0')
diff --git a/var/spack/repos/builtin/packages/r-graphlayouts/package.py b/var/spack/repos/builtin/packages/r-graphlayouts/package.py
index 382ccc8077..378eccdff0 100644
--- a/var/spack/repos/builtin/packages/r-graphlayouts/package.py
+++ b/var/spack/repos/builtin/packages/r-graphlayouts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGraphlayouts(RPackage):
- """graphlayouts: Additional Layout Algorithms for Network Visualizations.
+ """Additional Layout Algorithms for Network Visualizations.
Several new layout algorithms to visualize networks are provided which are
not part of 'igraph'. Most are based on the concept of stress majorization
@@ -19,6 +19,7 @@ class RGraphlayouts(RPackage):
url = "https://cloud.r-project.org/src/contrib/graphlayouts_0.5.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/graphlayouts"
+ version('0.7.1', sha256='380f8ccb0b08735694e83f661fd56a0d592a78448ae91b89c290ba8582d66717')
version('0.5.0', sha256='83f61ce07580c5a64c7044c12b20d98ccf138c7e78ff12855cdfc206e1fab10d')
depends_on('r@3.2.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-grbase/package.py b/var/spack/repos/builtin/packages/r-grbase/package.py
index 5d56958f23..05fd96d5a1 100644
--- a/var/spack/repos/builtin/packages/r-grbase/package.py
+++ b/var/spack/repos/builtin/packages/r-grbase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,39 @@ from spack import *
class RGrbase(RPackage):
- """gRbase: A Package for Graphical Modelling in R"""
+ """A Package for Graphical Modelling in R
+
+ The 'gRbase' package provides graphical modelling features used by e.g. the
+ packages 'gRain', 'gRim' and 'gRc'. 'gRbase' implements graph algorithms
+ including (i) maximum cardinality search (for marked and unmarked graphs).
+ (ii) moralization, (iii) triangulation, (iv) creation of junction tree.
+ 'gRbase' facilitates array operations, 'gRbase' implements functions for
+ testing for conditional independence. 'gRbase' illustrates how hierarchical
+ log-linear models may be implemented and describes concept of graphical
+ meta data. The facilities of the package are documented in the book by
+ Hojsgaard, Edwards and Lauritzen (2012, <doi:10.1007/978-1-4614-2299-0>)
+ and in the paper by Dethlefsen and Hojsgaard, (2005,
+ <doi:10.18637/jss.v014.i17>). Please see 'citation("gRbase")' for citation
+ details. NOTICE 'gRbase' requires that the packages graph, 'Rgraphviz'
+ and 'RBGL' are installed from 'bioconductor'; for installation instructions
+ please refer to the web page given below."""
homepage = "http://people.math.aau.dk/~sorenh/software/gR/"
url = "https://cloud.r-project.org/src/contrib/gRbase_1.8-3.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gRbase"
+ version('1.8-6.7', sha256='aaafc7e1b521de60e1a57c0175ac64d4283850c3273bd14774cf24dabc743388')
version('1.8-3.4', sha256='d35f94c2fb7cbd4ce3991570424dfe6723a849658da32e13df29f53b6ea2cc2c')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.0.2:', type=('build', 'run'))
+ depends_on('r@3.6.0:', when='@1.8-6.7:', type=('build', 'run'))
depends_on('r-graph', type=('build', 'run'))
+ depends_on('r-rgraphviz', when='@1.8-6.7:', type=('build', 'run'))
+ depends_on('r-rbgl', type=('build', 'run'))
depends_on('r-igraph', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
- depends_on('r-rbgl', type=('build', 'run'))
depends_on('r-rcpp@0.11.1:', type=('build', 'run'))
- depends_on('r-rcpparmadillo', type=('build', 'run'))
depends_on('r-rcppeigen', type=('build', 'run'))
+ depends_on('r-rcpparmadillo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gridbase/package.py b/var/spack/repos/builtin/packages/r-gridbase/package.py
index d32c6dd479..fee64ce69a 100644
--- a/var/spack/repos/builtin/packages/r-gridbase/package.py
+++ b/var/spack/repos/builtin/packages/r-gridbase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gridextra/package.py b/var/spack/repos/builtin/packages/r-gridextra/package.py
index 36ce99c75c..931c279044 100644
--- a/var/spack/repos/builtin/packages/r-gridextra/package.py
+++ b/var/spack/repos/builtin/packages/r-gridextra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gridgraphics/package.py b/var/spack/repos/builtin/packages/r-gridgraphics/package.py
index 7a0485d22d..23c2dcffea 100644
--- a/var/spack/repos/builtin/packages/r-gridgraphics/package.py
+++ b/var/spack/repos/builtin/packages/r-gridgraphics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,17 @@ from spack import *
class RGridgraphics(RPackage):
- """gridGraphics: Redraw Base Graphics Using 'grid' Graphics"""
+ """Redraw Base Graphics Using 'grid' Graphics
+
+ Functions to convert a page of plots drawn with the 'graphics' package into
+ identical output drawn with the 'grid' package. The result looks like the
+ original 'graphics'-based plot, but consists of 'grid' grobs and viewports
+ that can then be manipulated with 'grid' functions (e.g., edit grobs and
+ revisit viewports)."""
homepage = "https://github.com/pmur002/gridgraphics"
url = "https://cloud.r-project.org/src/contrib/gridGraphics_0.4-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gridGraphics"
+ version('0.5-1', sha256='29086e94e63891884c933b186b35511aac2a2f9c56967a72e4050e2980e7da8b')
version('0.4-1', sha256='b770127b71664bbf67f8853a2666c071f2b9920743eddc9f3a58ecb948b923cf')
diff --git a/var/spack/repos/builtin/packages/r-gsa/package.py b/var/spack/repos/builtin/packages/r-gsa/package.py
index 34721c7fc3..a94a26fb00 100644
--- a/var/spack/repos/builtin/packages/r-gsa/package.py
+++ b/var/spack/repos/builtin/packages/r-gsa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gsalib/package.py b/var/spack/repos/builtin/packages/r-gsalib/package.py
index fe105aa14d..b77f0636fc 100644
--- a/var/spack/repos/builtin/packages/r-gsalib/package.py
+++ b/var/spack/repos/builtin/packages/r-gsalib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gseabase/package.py b/var/spack/repos/builtin/packages/r-gseabase/package.py
index 631de6ca4a..97c7dc3ac8 100644
--- a/var/spack/repos/builtin/packages/r-gseabase/package.py
+++ b/var/spack/repos/builtin/packages/r-gseabase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGseabase(RPackage):
- """Gene set enrichment data structures and methods.
+ """Gene set enrichment data structures and methods
This package provides classes and methods to support Gene Set Enrichment
Analysis (GSEA)."""
@@ -15,6 +15,7 @@ class RGseabase(RPackage):
homepage = "https://bioconductor.org/packages/GSEABase"
git = "https://git.bioconductor.org/packages/GSEABase.git"
+ version('1.52.1', commit='257dfccbc5b507d82099fac6b06bb03825e995e8')
version('1.46.0', commit='edce83a9256a0c03206c2bce7c90ada0d90f6622')
version('1.44.0', commit='7042ff64a98b05b9572231ee1b4f3ae4fc9c768e')
version('1.42.0', commit='5e40ce0fdd4dc0cff7601b169bbf6aa1430ae33e')
diff --git a/var/spack/repos/builtin/packages/r-gsl/package.py b/var/spack/repos/builtin/packages/r-gsl/package.py
index 8aa7f77859..86c6fb101f 100644
--- a/var/spack/repos/builtin/packages/r-gsl/package.py
+++ b/var/spack/repos/builtin/packages/r-gsl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gsodr/package.py b/var/spack/repos/builtin/packages/r-gsodr/package.py
index 8f1fa82e4d..f72a4f6721 100644
--- a/var/spack/repos/builtin/packages/r-gsodr/package.py
+++ b/var/spack/repos/builtin/packages/r-gsodr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,31 @@ from spack import *
class RGsodr(RPackage):
- """A Global Surface Summary of the Day (GSOD) Weather Data Client for R"""
+ """A Global Surface Summary of the Day (GSOD) Weather Data Client for R
+
+ Provides automated downloading, parsing, cleaning, unit conversion and
+ formatting of Global Surface Summary of the Day ('GSOD') weather data from
+ the from the USA National Centers for Environmental Information ('NCEI').
+ Units are converted from from United States Customary System ('USCS') units
+ to International System of Units ('SI'). Stations may be individually
+ checked for number of missing days defined by the user, where stations with
+ too many missing observations are omitted. Only stations with valid
+ reported latitude and longitude values are permitted in the final data.
+ Additional useful elements, saturation vapour pressure ('es'), actual
+ vapour pressure ('ea') and relative humidity ('RH') are calculated from the
+ original data using the improved August-Roche-Magnus approximation
+ (Alduchov & Eskridge 1996) and included in the final data set. The
+ resulting metadata include station identification information, country,
+ state, latitude, longitude, elevation, weather observations and associated
+ flags. For information on the 'GSOD' data from 'NCEI', please see the
+ 'GSOD' 'readme.txt' file available from,
+ <https://www1.ncdc.noaa.gov/pub/data/gsod/readme.txt>."""
homepage = "https://docs.ropensci.org/GSODR/"
url = "https://cloud.r-project.org/src/contrib/GSODR_2.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/GSODR"
+ version('2.1.2', sha256='4fc1d084b6c21055d8cc17a6a6dc412261aa0d4ef4079bcd73b580a8c16bf74e')
version('2.1.1', sha256='dba732e5bd1e367b9d710e6b8924f0c02fa4546202f049124dba02bc2e3329f5')
depends_on('r@3.5.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gss/package.py b/var/spack/repos/builtin/packages/r-gss/package.py
index 76858c9c26..5903285ba1 100644
--- a/var/spack/repos/builtin/packages/r-gss/package.py
+++ b/var/spack/repos/builtin/packages/r-gss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,18 @@ from spack import *
class RGss(RPackage):
- """A comprehensive package for structural multivariate function
+ """General Smoothing Splines
+
+ A comprehensive package for structural multivariate function
estimation using smoothing splines."""
homepage = "https://cloud.r-project.org/package=gss"
url = "https://cloud.r-project.org/src/contrib/gss_2.1-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gss"
+ version('2.2-2', sha256='1da4da894378ee730cff9628e8b4d2a0d7dfa344b94e5bce6953e66723c21fe4')
version('2.1-10', sha256='26c47ecae6a9b7854a1b531c09f869cf8b813462bd8093e3618e1091ace61ee2')
version('2.1-7', sha256='0405bb5e4c4d60b466335e5da07be4f9570045a24aed09e7bc0640e1a00f3adb')
depends_on('r@2.14.0:', type=('build', 'run'))
+ depends_on('r@3.0.0:', when='@2.2-2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gstat/package.py b/var/spack/repos/builtin/packages/r-gstat/package.py
index 5ef91125c1..5a29741d91 100644
--- a/var/spack/repos/builtin/packages/r-gstat/package.py
+++ b/var/spack/repos/builtin/packages/r-gstat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,24 @@ from spack import *
class RGstat(RPackage):
- """gstat: Spatial and Spatio-Temporal Geostatistical Modelling,
- Predictionand Simulation"""
+ """Spatial and Spatio-Temporal Geostatistical Modelling, Predictionand
+ Simulation
+
+ Variogram modelling; simple, ordinary and universal point or block
+ (co)kriging; spatio-temporal kriging; sequential Gaussian or indicator
+ (co)simulation; variogram and variogram map plotting utility functions;
+ supports sf and stars."""
homepage = "https://github.com/r-spatial/gstat/"
url = "https://cloud.r-project.org/src/contrib/gstat_2.0-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gstat"
+ version('2.0-6', sha256='6711e68aa2444cf2927879a03a976d8caeca5eac98d806b19a6a7178b90bfcab')
version('2.0-3', sha256='20a93fe6bf89221a5888de273bddf9a98187806d507cd3cd6297c2b13e7acce1')
depends_on('r@2.10:', type=('build', 'run'))
- depends_on('r-fnn', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-sp@0.9-72:', type=('build', 'run'))
- depends_on('r-spacetime@1.0-0:', type=('build', 'run'))
depends_on('r-zoo', type=('build', 'run'))
+ depends_on('r-spacetime@1.0-0:', type=('build', 'run'))
+ depends_on('r-fnn', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gsubfn/package.py b/var/spack/repos/builtin/packages/r-gsubfn/package.py
index 080214e0d8..68cd7dc5f4 100644
--- a/var/spack/repos/builtin/packages/r-gsubfn/package.py
+++ b/var/spack/repos/builtin/packages/r-gsubfn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gtable/package.py b/var/spack/repos/builtin/packages/r-gtable/package.py
index a0a412eddb..9c31529f91 100644
--- a/var/spack/repos/builtin/packages/r-gtable/package.py
+++ b/var/spack/repos/builtin/packages/r-gtable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-gtools/package.py b/var/spack/repos/builtin/packages/r-gtools/package.py
index 905bb5dd1d..734949715d 100644
--- a/var/spack/repos/builtin/packages/r-gtools/package.py
+++ b/var/spack/repos/builtin/packages/r-gtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,42 +7,44 @@ from spack import *
class RGtools(RPackage):
- """Functions to assist in R programming.
+ """Various R Programming Tools
+ Functions to assist in R programming.
Including:
- - assist in developing, updating, and maintaining R and R packages
- ('ask', 'checkRVersion', 'getDependencies', 'keywords', 'scat')
- - calculate the logit and inverse logit transformations
- ('logit', 'inv.logit')
- - test if a value is missing, empty or contains only NA and NULL values
- ('invalid')
- - manipulate R's .Last function ('addLast')
- - define macros ('defmacro')
- - detect odd and even integers ('odd', 'even')
- - convert strings containing non-ASCII characters (like single
- quotes) to plain ASCII ('ASCIIfy')
- - perform a binary search ('binsearch')
- - sort strings containing both numeric and character components
- ('mixedsort')
- - create a factor variable from the quantiles of a continuous variable
- ('quantcut')
- - enumerate permutations and combinations ('combinations', 'permutation')
- - calculate and convert between fold-change and log-ratio
- ('foldchange', 'logratio2foldchange', 'foldchange2logratio')
- - calculate probabilities and generate random numbers from Dirichlet
- distributions ('rdirichlet', 'ddirichlet')
- - apply a function over adjacent subsets of a vector ('running')
- - modify the TCP_NODELAY ('de-Nagle') flag for socket objects
- - efficient 'rbind' of data frames, even if the column names don't
- match ('smartbind')
- - generate significance stars from p-values ('stars.pval')
- - convert characters to/from ASCII codes.
-
+ [1] assist in developing, updating, and maintaining R and R packages
+ ('ask', 'checkRVersion', 'getDependencies', 'keywords', 'scat');
+ [2] calculate the logit and inverse logit transformations ('logit',
+ 'inv.logit');
+ [3] test if a value is missing, empty or contains only NA and NULL values
+ ('invalid');
+ [4] manipulate R's .Last function ('addLast');
+ [5] define macros ('defmacro');
+ [6] detect odd and even integers ('odd', 'even');
+ [7] convert strings containing non-ASCII characters (like single
+ quotes) to plain ASCII ('ASCIIfy');
+ [8] perform a binary search ('binsearch');
+ [9] sort strings containing both numeric and character components
+ ('mixedsort');
+ [10] create a factor variable from the quantiles of a continuous variable
+ ('quantcut');
+ [11] enumerate permutations and combinations ('combinations',
+ 'permutation');
+ [12] calculate and convert between fold-change and log-ratio ('foldchange',
+ 'logratio2foldchange', 'foldchange2logratio');
+ [13] calculate probabilities and generate random numbers from Dirichlet
+ distributions ('rdirichlet', 'ddirichlet');
+ [14] apply a function over adjacent subsets of a vector ('running');
+ [15] modify the TCP_NODELAY ('de-Nagle') flag for socket objects;
+ [16] efficient 'rbind' of data frames, even if the column names don't match
+ ('smartbind');
+ [17] generate significance stars from p-values ('stars.pval');
+ [18] convert characters to/from ASCII codes;
"""
homepage = "https://cloud.r-project.org/package=gtools"
url = "https://cloud.r-project.org/src/contrib/gtools_3.5.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/gtools"
+ version('3.8.2', sha256='503ba60a41f3c61b8129c25de62c74dab29761d2e661d4addd106e2e02f1dcde')
version('3.8.1', sha256='051484459bd8ad1b03425b8843d24f6828fea18f7357cfa1c192198cc3f4ba38')
version('3.5.0', sha256='86b6a51a92ddb3c78095e0c5dc20414c67f6e28f915bf0ee11406adad3e476f6')
diff --git a/var/spack/repos/builtin/packages/r-gtrellis/package.py b/var/spack/repos/builtin/packages/r-gtrellis/package.py
index 88a7b84b33..7493244f6f 100644
--- a/var/spack/repos/builtin/packages/r-gtrellis/package.py
+++ b/var/spack/repos/builtin/packages/r-gtrellis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGtrellis(RPackage):
- """Genome Level Trellis Layout.
+ """Genome Level Trellis Layout
Genome level Trellis graph visualizes genomic data conditioned by
genomic categories (e.g. chromosomes). For each genomic category,
@@ -19,6 +19,7 @@ class RGtrellis(RPackage):
homepage = "https://bioconductor.org/packages/gtrellis"
git = "https://git.bioconductor.org/packages/gtrellis.git"
+ version('1.22.0', commit='c071c5631f3dedda212aed87d9c02954b5ed6611')
version('1.16.1', commit='a9003ededc8f2a48c78d4545e2f214023c13a7da')
version('1.14.0', commit='93935fb34211d12b250e22291712e18a31b0208d')
version('1.12.1', commit='7f3941adddbbfa17f4cf474b703568678a38272d')
@@ -29,6 +30,5 @@ class RGtrellis(RPackage):
depends_on('r-iranges', type=('build', 'run'))
depends_on('r-genomicranges', type=('build', 'run'))
depends_on('r-circlize@0.3.3:', type=('build', 'run'))
- depends_on('r-getoptlong', type=('build', 'run'))
-
depends_on('r-circlize@0.4.8:', when='@1.16.1', type=('build', 'run'))
+ depends_on('r-getoptlong', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gviz/package.py b/var/spack/repos/builtin/packages/r-gviz/package.py
index 3047086747..3e2ac772b4 100644
--- a/var/spack/repos/builtin/packages/r-gviz/package.py
+++ b/var/spack/repos/builtin/packages/r-gviz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RGviz(RPackage):
- """Plotting data and annotation information along genomic coordinates.
+ """Plotting data and annotation information along genomic coordinates
Genomic data analyses requires integrated visualization of known genomic
information and new experimental data. Gviz uses the biomaRt and the
@@ -19,6 +19,7 @@ class RGviz(RPackage):
homepage = "https://bioconductor.org/packages/Gviz"
git = "https://git.bioconductor.org/packages/Gviz.git"
+ version('1.34.0', commit='445fadff2aedd8734580fa908aa47ff1216a8182')
version('1.28.3', commit='20b9825af144cfc888629c34aa980b5bbd65bf86')
version('1.26.5', commit='430310b9d2e098f9757a71d26a2f69871071f30c')
version('1.24.0', commit='3ee1eec97a56653c07c434a97f82cfe3c4281841')
@@ -26,6 +27,7 @@ class RGviz(RPackage):
version('1.20.0', commit='299b8255e1b03932cebe287c3690d58c88f5ba5c')
depends_on('r@2.10.0:', type=('build', 'run'))
+ depends_on('r@4.0:', when='@1.34.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
depends_on('r-iranges@1.99.18:', type=('build', 'run'))
depends_on('r-genomicranges@1.17.20:', type=('build', 'run'))
@@ -37,6 +39,7 @@ class RGviz(RPackage):
depends_on('r-annotationdbi@1.27.5:', type=('build', 'run'))
depends_on('r-biobase@2.15.3:', type=('build', 'run'))
depends_on('r-genomicfeatures@1.17.22:', type=('build', 'run'))
+ depends_on('r-ensembldb@2.11.3:', when='@1.34.0:', type=('build', 'run'))
depends_on('r-bsgenome@1.33.1:', type=('build', 'run'))
depends_on('r-biostrings@2.33.11:', type=('build', 'run'))
depends_on('r-biovizbase@1.13.8:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gwmodel/package.py b/var/spack/repos/builtin/packages/r-gwmodel/package.py
index e1577f8f61..8e1e81dc20 100644
--- a/var/spack/repos/builtin/packages/r-gwmodel/package.py
+++ b/var/spack/repos/builtin/packages/r-gwmodel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,23 +7,39 @@ from spack import *
class RGwmodel(RPackage):
- """GWmodel: Geographically-Weighted Models"""
+ """Geographically-Weighted Models
+
+ Techniques from a particular branch of spatial statistics,termed
+ geographically-weighted (GW) models. GW models suit situations when data
+ are not described well by some global model, but where there are spatial
+ regions where a suitably localised calibration provides a better
+ description. 'GWmodel' includes functions to calibrate: GW summary
+ statistics (Brunsdon et al., 2002) <doi:10.1016/s0198-9715(01)00009-6>, GW
+ principal components analysis (Harris et al., 2011)
+ <doi:10.1080/13658816.2011.554838>, GW discriminant analysis (Brunsdon et
+ al., 2007) <doi:10.1111/j.1538-4632.2007.00709.x> and various forms of GW
+ regression (Brunsdon et al., 1996)
+ <doi:10.1111/j.1538-4632.1996.tb00936.x>; some of which are provided in
+ basic and robust (outlier resistant) forms."""
homepage = "http://gwr.nuim.ie/"
url = "https://cloud.r-project.org/src/contrib/GWmodel_2.0-9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/GWmodel"
+ version('2.2-2', sha256='4e2b221b85fbc828ffc4f057c137ded849afcaac2a75c27d2d6d0a6db17f8a06')
version('2.1-3', sha256='3e1a36fddf8e64f61d548067bb043216f8d12069d814a4cbf07a9cae0b310af6')
version('2.1-1', sha256='91241b4e26d423a54c7c6784ef5159759058a5dafdff18a1ea8451faf979d1f3')
version('2.0-9', sha256='b479af2c19d4aec30f1883d00193d52e342c609c1badcb51cc0344e4404cffa7')
depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r-maptools@0.5-2:', type=('build', 'run'))
- depends_on('r-rcpp', type=('build', 'run'))
- depends_on('r-rcpparmadillo', type=('build', 'run'))
depends_on('r-robustbase', type=('build', 'run'))
depends_on('r-sp', type=('build', 'run'))
- depends_on('r-spacetime', type=('build', 'run'))
+ depends_on('r-sp@1.4-0:', when='@2.2-2:', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
depends_on('r-spatialreg', type=('build', 'run'))
+ depends_on('r-spacetime', type=('build', 'run'))
depends_on('r-spdep', type=('build', 'run'))
depends_on('r-fnn', when='@2.1-1:', type=('build', 'run'))
+ depends_on('r-rcpparmadillo', type=('build', 'run'))
+ depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-haven/package.py b/var/spack/repos/builtin/packages/r-haven/package.py
index 05c1bf2e65..93b7b4cdde 100644
--- a/var/spack/repos/builtin/packages/r-haven/package.py
+++ b/var/spack/repos/builtin/packages/r-haven/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,22 +7,28 @@ from spack import *
class RHaven(RPackage):
- """Import foreign statistical formats into R via the embedded 'ReadStat' C
- library, <https://github.com/WizardMac/ReadStat>."""
+ """Import and Export 'SPSS', 'Stata' and 'SAS' Files
+
+ Import foreign statistical formats into R via the embedded 'ReadStat' C
+ library, <https://github.com/WizardMac/ReadStat>."""
homepage = "http://haven.tidyverse.org/"
url = "https://cloud.r-project.org/src/contrib/haven_1.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/haven"
+ version('2.3.1', sha256='6eee9f3297aab4cae2e4a4181ea65af933eacee2a2fb40af5b2ecf06f1bb9e0d')
version('2.1.1', sha256='90bcb4e7f24960e7aa3e15c06b95cd897f08de149cec43fd8ba110b14526068a')
version('2.1.0', sha256='c0a1cf1b039549fb3ad833f9644ed3f142790236ad755d2ee7bd3d8109e3ae74')
version('1.1.0', sha256='089fb4d0955f320abc48d0a3031799f96f3a20b82492474743903fdf12001d19')
depends_on('r@3.1:', when='@:2.1.0', type=('build', 'run'))
depends_on('r@3.2:', when='@2.1.1:', type=('build', 'run'))
+ depends_on('r-forcats@0.2.0:', type=('build', 'run'))
+ depends_on('r-hms', type=('build', 'run'))
depends_on('r-rcpp@0.11.4:', type=('build', 'run'))
depends_on('r-readr@0.1.0:', type=('build', 'run'))
- depends_on('r-hms', type=('build', 'run'))
+ depends_on('r-rlang@0.4.0:', when='@2.3.1:', type=('build', 'run'))
depends_on('r-tibble', type=('build', 'run'))
- depends_on('r-forcats@0.2.0:', type=('build', 'run'))
+ depends_on('r-tidyselect', when='@2.3.1:', type=('build', 'run'))
+ depends_on('r-vctrs@0.3.0:', when='@2.3.1:', type=('build', 'run'))
depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-hdf5array/package.py b/var/spack/repos/builtin/packages/r-hdf5array/package.py
index 0a7ed13742..7c2400d9a6 100644
--- a/var/spack/repos/builtin/packages/r-hdf5array/package.py
+++ b/var/spack/repos/builtin/packages/r-hdf5array/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RHdf5array(RPackage):
- """HDF5 backend for DelayedArray objects.
+ """HDF5 backend for DelayedArray objects
Implements the HDF5Array and TENxMatrix classes, 2 convenient and
memory-efficient array-like containers for on-disk representation of
@@ -21,6 +21,7 @@ class RHdf5array(RPackage):
homepage = "https://bioconductor.org/packages/HDF5Array"
git = "https://git.bioconductor.org/packages/HDF5Array.git"
+ version('1.18.0', commit='d5bd55d170cb384fdebdf60751e1e28483782caa')
version('1.12.3', commit='21c6077f3f789748a18f2e579110576c5522e975')
version('1.10.1', commit='0b8ae1dfb56e4203dd8e14781850370df46a5e2c')
version('1.8.1', commit='3c9aa23d117bf489b6341708dc80c943bd1af11a')
@@ -29,21 +30,21 @@ class RHdf5array(RPackage):
depends_on('r@3.4:', type=('build', 'run'))
depends_on('r-delayedarray@0.2.4:', type=('build', 'run'))
- depends_on('r-rhdf5', type=('build', 'run'))
- depends_on('r-biocgenerics', type=('build', 'run'))
- depends_on('r-s4vectors', type=('build', 'run'))
- depends_on('r-iranges', type=('build', 'run'))
-
depends_on('r-delayedarray@0.3.18:', when='@1.6.0:', type=('build', 'run'))
-
depends_on('r-delayedarray@0.5.32:', when='@1.8.1:', type=('build', 'run'))
- depends_on('r-biocgenerics@0.25.1:', when='@1.8.1:', type=('build', 'run'))
-
depends_on('r-delayedarray@0.7.41:', when='@1.10.1:', type=('build', 'run'))
- depends_on('r-rhdf5@2.25.6:', when='@1.10.1:', type=('build', 'run'))
-
depends_on('r-delayedarray@0.9.3:', when='@1.12.3:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.15.16:', when='@1.18.0:', type=('build', 'run'))
+ depends_on('r-rhdf5', type=('build', 'run'))
+ depends_on('r-rhdf5@2.25.6:', when='@1.10.1:', type=('build', 'run'))
+ depends_on('r-rhdf5@2.31.6:', when='@1.18.0:', type=('build', 'run'))
+ depends_on('r-matrix', when='@1.18.0:', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.25.1:', when='@1.8.1:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.31.5:', when='@1.18.0:', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
depends_on('r-s4vectors@0.21.6:', when='@1.12.3:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.13:', when='@1.18.0:', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
depends_on('r-rhdf5lib', when='@1.12.3:', type=('build', 'run'))
-
depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-hdf5r/package.py b/var/spack/repos/builtin/packages/r-hdf5r/package.py
index 29baf0193c..860270bafe 100644
--- a/var/spack/repos/builtin/packages/r-hdf5r/package.py
+++ b/var/spack/repos/builtin/packages/r-hdf5r/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RHdf5r(RPackage):
- """'HDF5' is a data model, library and file format for storing and managing
+ """Interface to the 'HDF5' Binary Data Format
+
+ 'HDF5' is a data model, library and file format for storing and managing
large amounts of data. This package provides a nearly feature complete,
object oriented wrapper for the 'HDF5' API
<https://support.hdfgroup.org/HDF5/doc/RM/RM_H5Front.html> using R6
@@ -18,6 +20,7 @@ class RHdf5r(RPackage):
url = "https://cloud.r-project.org/src/contrib/hdf5r_1.2.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/hdf5r"
+ version('1.3.3', sha256='a0f83cbf21563e81dbd1a1bd8379623ed0c9c4df4e094c75013abfd7a5271545')
version('1.2.0', sha256='58813e334fd3f9040038345a7186e5cb02090898883ac192477a76a5b8b4fe81')
depends_on('r@3.2.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-hexbin/package.py b/var/spack/repos/builtin/packages/r-hexbin/package.py
index d1534b02ea..85d78bb71d 100644
--- a/var/spack/repos/builtin/packages/r-hexbin/package.py
+++ b/var/spack/repos/builtin/packages/r-hexbin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,16 @@ from spack import *
class RHexbin(RPackage):
- """Binning and plotting functions for hexagonal bins. Now uses and relies
+ """Hexagonal Binning Routines
+
+ Binning and plotting functions for hexagonal bins. Now uses and relies
on grid graphics and formal (S4) classes and methods."""
homepage = "http://github.com/edzer/hexbin"
url = "https://cloud.r-project.org/src/contrib/hexbin_1.27.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/hexbin"
+ version('1.28.2', sha256='6241f8d3a6c6be2c1c693c3ddb99554bc103e3c6cf602d0c2787c0ce6fd1702d')
version('1.27.3', sha256='7ea422a76542c2fc2840df601af1b7803aa96df4fee6d51dec456ac36940c191')
version('1.27.2', sha256='46d47b1efef75d6f126af686a4dd614228b60418b9a5bde9e9e5d11200a0ee52')
version('1.27.1', sha256='075935a3ae2d90e44aca6ebbd368dc6f7e59d322e36e0e0932dedbf01330ad08')
diff --git a/var/spack/repos/builtin/packages/r-hh/package.py b/var/spack/repos/builtin/packages/r-hh/package.py
index 1f455fcac1..7b7266998a 100644
--- a/var/spack/repos/builtin/packages/r-hh/package.py
+++ b/var/spack/repos/builtin/packages/r-hh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RHh(RPackage):
- """HH: Statistical Analysis and Data Display: Heiberger and Holland.
+ """Statistical Analysis and Data Display: Heiberger and Holland.
Support software for Statistical Analysis and Data Display (Second
Edition, Springer, ISBN 978-1-4939-2121-8, 2015) and (First Edition,
@@ -28,6 +28,7 @@ class RHh(RPackage):
url = "https://cloud.r-project.org/src/contrib/HH_3.1-40.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/HH"
+ version('3.1-43', sha256='2ed35c8fc97092e9d2ce3439a2ec342d5d7bd93ad8f5266995cc80d88cd2235b')
version('3.1-40', sha256='795924d900a98ae367e6697b2c951c3b4910a54931aebcad5024eda083d4a8a2')
depends_on('r@3.0.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-highr/package.py b/var/spack/repos/builtin/packages/r-highr/package.py
index c83f5a6427..867559039c 100644
--- a/var/spack/repos/builtin/packages/r-highr/package.py
+++ b/var/spack/repos/builtin/packages/r-highr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-hmisc/package.py b/var/spack/repos/builtin/packages/r-hmisc/package.py
index 678816277c..6327f9207a 100644
--- a/var/spack/repos/builtin/packages/r-hmisc/package.py
+++ b/var/spack/repos/builtin/packages/r-hmisc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RHmisc(RPackage):
- """Contains many functions useful for data analysis, high-level
+ """Harrell Miscellaneous
+
+ Contains many functions useful for data analysis, high-level
graphics, utility operations, functions for computing sample size
and power, importing and annotating datasets, imputing missing
values, advanced table making, variable clustering, character
@@ -18,6 +20,7 @@ class RHmisc(RPackage):
url = "https://cloud.r-project.org/src/contrib/Hmisc_4.1-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Hmisc"
+ version('4.4-2', sha256='490ac64dd8558868e7c6fdd9523af102e17ea536c450d62c48b04155279bfbc8')
version('4.4-0', sha256='f16ecf4c5ee2202d51f426282a54f8000ffa8b9747c3e910205f34f878556ec7')
version('4.2-0', sha256='9e9614673288dd00295f250fa0bf96fc9e9fed692c69bf97691081c1a01411d9')
version('4.1-1', sha256='991db21cdf73ffbf5b0239a4876b2e76fd243ea33528afd88dc968792f281498')
@@ -28,15 +31,15 @@ class RHmisc(RPackage):
depends_on('r-formula', type=('build', 'run'))
depends_on('r-ggplot2@2.2:', type=('build', 'run'))
depends_on('r-latticeextra', type=('build', 'run'))
- depends_on('r-acepack', type=('build', 'run'))
- depends_on('r-gridextra', type=('build', 'run'))
- depends_on('r-data-table', type=('build', 'run'))
- depends_on('r-htmltools', type=('build', 'run'))
- depends_on('r-base64enc', type=('build', 'run'))
- depends_on('r-htmltable@1.11.0:', type=('build', 'run'))
- depends_on('r-viridis', type=('build', 'run'))
depends_on('r-cluster', type=('build', 'run'))
depends_on('r-rpart', type=('build', 'run'))
depends_on('r-nnet', type=('build', 'run'))
depends_on('r-foreign', type=('build', 'run'))
depends_on('r-gtable', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-data-table', type=('build', 'run'))
+ depends_on('r-htmltable@1.11.0:', type=('build', 'run'))
+ depends_on('r-viridis', type=('build', 'run'))
+ depends_on('r-htmltools', type=('build', 'run'))
+ depends_on('r-base64enc', type=('build', 'run'))
+ depends_on('r-acepack', when='@:4.4-0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-hms/package.py b/var/spack/repos/builtin/packages/r-hms/package.py
index 0ebcc5fbde..b0c24234a2 100644
--- a/var/spack/repos/builtin/packages/r-hms/package.py
+++ b/var/spack/repos/builtin/packages/r-hms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,22 @@ from spack import *
class RHms(RPackage):
- """Implements an S3 class for storing and formatting time-of-day values,
- based on the 'difftime' class."""
+ """Pretty Time of Day
+
+ Implements an S3 class for storing and formatting time-of-day values, based
+ on the 'difftime' class."""
homepage = "https://cloud.r-project.org/package=hms"
url = "https://cloud.r-project.org/src/contrib/hms_0.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/hms"
+ version('1.0.0', sha256='9704e903d724f0911d46e5ad18b469a7ed419c5b1f388bd064fd663cefa6c962')
version('0.5.0', sha256='a87872665c3bf3901f597d78c152e7805f7129e4dbe27397051de4cf1a76561b')
version('0.3', sha256='9368259cbc1094ce0e4cf61544875ec30088ef690d6667e6b0b564218ab3ff88')
+ depends_on('r-ellipsis', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@1.0.0:', type=('build', 'run'))
depends_on('r-pkgconfig', when='@0.5.0:', type=('build', 'run'))
depends_on('r-rlang', when='@0.5.0:', type=('build', 'run'))
depends_on('r-vctrs@0.2.0:', when='@0.5.0:', type=('build', 'run'))
+ depends_on('r-vctrs@0.2.1:', when='@1.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-hoardr/package.py b/var/spack/repos/builtin/packages/r-hoardr/package.py
index 2c6f222d64..7de77d1955 100644
--- a/var/spack/repos/builtin/packages/r-hoardr/package.py
+++ b/var/spack/repos/builtin/packages/r-hoardr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-htmltable/package.py b/var/spack/repos/builtin/packages/r-htmltable/package.py
index d3876cc174..73abf4d89c 100644
--- a/var/spack/repos/builtin/packages/r-htmltable/package.py
+++ b/var/spack/repos/builtin/packages/r-htmltable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RHtmltable(RPackage):
- """Tables with state-of-the-art layout elements such as row
+ """Advanced Tables for Markdown/HTML
+
+ Tables with state-of-the-art layout elements such as row
spanners, column spanners, table spanners, zebra striping, and
more. While allowing advanced layout, the underlying css-structure
is simple in order to maximize compatibility with word processors
@@ -19,6 +21,7 @@ class RHtmltable(RPackage):
url = "https://cloud.r-project.org/src/contrib/htmlTable_1.11.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/htmlTable"
+ version('2.1.0', sha256='4049339b317cbec1c8c7930e2e36cf0fc8b002516092dd270bb794d8db02f0bf')
version('1.13.1', sha256='689f32b65da6a57ad500e8d9ef3309d346401dca277c6b264a46c8d7c75884d0')
version('1.11.2', sha256='64a273b1cdf07a7c57b9031315ca665f95d78e70b4320d020f64a139278877d1')
version('1.9', sha256='5b487a7f33af77db7d987bf61f3ef2ba18bb629fe7b9802409f8b3485c603132')
diff --git a/var/spack/repos/builtin/packages/r-htmltools/package.py b/var/spack/repos/builtin/packages/r-htmltools/package.py
index 18786d763e..4a6df7580c 100644
--- a/var/spack/repos/builtin/packages/r-htmltools/package.py
+++ b/var/spack/repos/builtin/packages/r-htmltools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,20 @@ from spack import *
class RHtmltools(RPackage):
- """Tools for HTML generation and output."""
+ """Tools for HTML
+
+ Tools for HTML generation and output."""
homepage = "https://github.com/rstudio/htmltools"
url = "https://cloud.r-project.org/src/contrib/htmltools_0.3.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/htmltools"
+ version('0.5.1', sha256='6ac82e4451f9558ceb541ea659a736b2ab3245827832b44d3661e7a4d91f6307')
version('0.3.6', sha256='44affb82f9c2fd76c9e2b58f9229adb003217932b68c3fdbf1327c8d74c868a2')
version('0.3.5', sha256='29fb7e075744bbffdff8ba4fce3860076de66f39a59a100ee4cfb4fc00722b49')
depends_on('r@2.14.1:', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
- depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-base64enc', when='@0.5.1:', type=('build', 'run'))
+ depends_on('r-rlang', when='@0.5.1:', type=('build', 'run'))
+ depends_on('r-rcpp', when=' @:0.3.6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-htmlwidgets/package.py b/var/spack/repos/builtin/packages/r-htmlwidgets/package.py
index 9466528f4a..1867fc96dc 100644
--- a/var/spack/repos/builtin/packages/r-htmlwidgets/package.py
+++ b/var/spack/repos/builtin/packages/r-htmlwidgets/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RHtmlwidgets(RPackage):
- """A framework for creating HTML widgets that render in various contexts
+ """HTML Widgets for R
+
+ A framework for creating HTML widgets that render in various contexts
including the R console, 'R Markdown' documents, and 'Shiny' web
applications."""
@@ -15,6 +17,7 @@ class RHtmlwidgets(RPackage):
url = "https://cloud.r-project.org/src/contrib/htmlwidgets_0.9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/htmlwidgets"
+ version('1.5.3', sha256='01a5833182cc224bd100be2815e57e67b524de9f2bb1542787b6e3d1303f0f29')
version('1.3', sha256='f1e4ffabc29e6cfe857f627da095be3cfcbe0e1f02ae75e572f10b4a026c5a12')
version('0.9', sha256='1154b541ccd868e41d3cf0d7f188f7275ec99f61fe2c7de21c8a05edb19b985e')
version('0.8', sha256='9232b78727c1ecd006cd8e607ef76417d795f011b0e4a7535e6d673228bfc3b5')
diff --git a/var/spack/repos/builtin/packages/r-httpcode/package.py b/var/spack/repos/builtin/packages/r-httpcode/package.py
index 52b847fda6..d95b8ce4da 100644
--- a/var/spack/repos/builtin/packages/r-httpcode/package.py
+++ b/var/spack/repos/builtin/packages/r-httpcode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,15 @@ from spack import *
class RHttpcode(RPackage):
- """httpcode: 'HTTP' Status Code Helper"""
+ """httpcode: 'HTTP' Status Code Helper
+
+ Find and explain the meaning of 'HTTP' status codes. Functions included for
+ searching for codes by full or partial number, by message, and get
+ appropriate dog and cat images for many status codes."""
homepage = "https://github.com/sckott/httpcode"
url = "https://cloud.r-project.org/src/contrib/httpcode_0.2.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/httpcode"
+ version('0.3.0', sha256='593a030a4f94c3df8c15576837c17344701bac023ae108783d0f06c476062f76')
version('0.2.0', sha256='fbc1853db742a2cc1df11285cf27ce2ea43bc0ba5f7d393ee96c7e0ee328681a')
diff --git a/var/spack/repos/builtin/packages/r-httpuv/package.py b/var/spack/repos/builtin/packages/r-httpuv/package.py
index f910d16e2f..b4acb7550d 100644
--- a/var/spack/repos/builtin/packages/r-httpuv/package.py
+++ b/var/spack/repos/builtin/packages/r-httpuv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RHttpuv(RPackage):
- """Provides low-level socket and protocol support for handling HTTP and
+ """HTTP and WebSocket Server Library
+
+ Provides low-level socket and protocol support for handling HTTP and
WebSocket requests directly from within R. It is primarily intended as a
building block for other packages, rather than making it particularly easy
to create complete web applications using httpuv alone. httpuv is built on
@@ -19,6 +21,7 @@ class RHttpuv(RPackage):
url = "https://cloud.r-project.org/src/contrib/httpuv_1.3.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/httpuv"
+ version('1.5.5', sha256='0be6c98927c7859d4bbfbbec8822c9f5e95352077d87640a76bc2ade07c83117')
version('1.5.1', sha256='b5bb6b3b2f1a6d792568a70f3f357d6b3a35a5e26dd0c668c61a31f2ae8f5710')
version('1.3.5', sha256='4336b993afccca2a194aca577b1975b89a35ac863423b18a11cdbb3f8470e4e9')
version('1.3.3', sha256='bb37452ddc4d9381bee84cdf524582859af6a988e291debb71c8a2e120d02b2a')
@@ -28,4 +31,5 @@ class RHttpuv(RPackage):
depends_on('r-r6', when='@1.5.0:', type=('build', 'run'))
depends_on('r-promises', when='@1.5.0:', type=('build', 'run'))
depends_on('r-later@0.8.0:', when='@1.5.0:', type=('build', 'run'))
+ depends_on('r-bh', when='@1.5.5:', type=('build', 'run'))
depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-httr/package.py b/var/spack/repos/builtin/packages/r-httr/package.py
index 3d7a2e2dbc..496b9d1465 100644
--- a/var/spack/repos/builtin/packages/r-httr/package.py
+++ b/var/spack/repos/builtin/packages/r-httr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RHttr(RPackage):
- """Useful tools for working with HTTP organised by HTTP verbs (GET(),
+ """Tools for Working with URLs and HTTP
+
+ Useful tools for working with HTTP organised by HTTP verbs (GET(),
POST(), etc). Configuration functions make it easy to control additional
request components (authenticate(), add_headers() and so on)."""
@@ -15,17 +17,18 @@ class RHttr(RPackage):
url = "https://cloud.r-project.org/src/contrib/httr_1.2.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/httr"
+ version('1.4.2', sha256='462bed6ed0d92f811d5df4d294336025f1dbff357286999d9269bfd9c20b1ef9')
version('1.4.1', sha256='675c7e07bbe82c48284ee1ab929bb14a6e653abae2860d854dc41a3c028de156')
version('1.4.0', sha256='d633f1425da514f65f3b8c034ae0a8b6911995009840c6bb9657ceedb99ddb48')
version('1.3.1', sha256='22134d7426b2eba37f0cc34b99285499b8bac9fe75a7bc3222fbad179bf8f258')
version('1.2.1', sha256='e7b90b90ee52c826e152efcfadf98e078fa75b65a6baaeb8fd25eeed2195730e')
version('1.1.0', sha256='d7c0cdc11b2ded3132544580f52ebe5dad2a426cde1a5029f2cc693b2f195823')
- depends_on('r@3.0.0:', when='@:1.3.1', type=('build', 'run'))
+ depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r@3.1:', when='@1.4.0', type=('build', 'run'))
depends_on('r@3.2:', when='@1.4.1:', type=('build', 'run'))
+ depends_on('r-curl@3.0.0:', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
depends_on('r-mime', type=('build', 'run'))
- depends_on('r-curl@3.0.0:', type=('build', 'run'))
depends_on('r-openssl@0.8:', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-hwriter/package.py b/var/spack/repos/builtin/packages/r-hwriter/package.py
index 57d41cc87e..11c1d8b586 100644
--- a/var/spack/repos/builtin/packages/r-hwriter/package.py
+++ b/var/spack/repos/builtin/packages/r-hwriter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-hypergraph/package.py b/var/spack/repos/builtin/packages/r-hypergraph/package.py
index 3240ab0c23..5296cde4c8 100644
--- a/var/spack/repos/builtin/packages/r-hypergraph/package.py
+++ b/var/spack/repos/builtin/packages/r-hypergraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RHypergraph(RPackage):
- """A package providing hypergraph data structures.
+ """A package providing hypergraph data structures
A package that implements some simple capabilities for representing and
manipulating hypergraphs."""
@@ -15,6 +15,7 @@ class RHypergraph(RPackage):
homepage = "https://bioconductor.org/packages/hypergraph"
git = "https://git.bioconductor.org/packages/hypergraph.git"
+ version('1.62.0', commit='a286bbb70289e9f3cdf41407d52e5976bd6ed11e')
version('1.56.0', commit='f8b977fe068f15ecea49d30e77a871a35afcb97b')
version('1.54.0', commit='cf134b9221e9b5f6329a6786a366f57426c49e7c')
version('1.52.0', commit='3e28d8e8ab4c3facb79857b4e4cfffd65e064aca')
diff --git a/var/spack/repos/builtin/packages/r-ica/package.py b/var/spack/repos/builtin/packages/r-ica/package.py
index 7905de86b1..841ae34f60 100644
--- a/var/spack/repos/builtin/packages/r-ica/package.py
+++ b/var/spack/repos/builtin/packages/r-ica/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-igraph/package.py b/var/spack/repos/builtin/packages/r-igraph/package.py
index 9ceec19052..100ea007a9 100644
--- a/var/spack/repos/builtin/packages/r-igraph/package.py
+++ b/var/spack/repos/builtin/packages/r-igraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RIgraph(RPackage):
- """Routines for simple graphs and network analysis. It can handle large
+ """Network Analysis and Visualization
+
+ Routines for simple graphs and network analysis. It can handle large
graphs very well and provides functions for generating random and regular
graphs, graph visualization, centrality methods and much more."""
@@ -15,13 +17,14 @@ class RIgraph(RPackage):
url = "https://cloud.r-project.org/src/contrib/igraph_1.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/igraph"
+ version('1.2.6', sha256='640da72166fda84bea2c0e5eee374f1ed80cd9439c1171d056b1b1737ae6c76d')
version('1.2.4.1', sha256='891acc763b5a4a4a245358a95dee69280f4013c342f14dd6a438e7bb2bf2e480')
version('1.2.4', sha256='1048eb26ab6b592815bc269c1d91e974c86c9ab827ccb80ae0a40042019592cb')
version('1.1.2', sha256='89b16b41bc77949ea208419e52a18b78b5d418c7fedc52cd47d06a51a6e746ec')
version('1.0.1', sha256='dc64ed09b8b5f8d66ed4936cde3491974d6bc5178dd259b6eab7ef3936aa5602')
- depends_on('r-matrix', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
depends_on('r-pkgconfig@2.0.0:', type=('build', 'run'))
depends_on('r-irlba', when='@:1.1.9', type=('build', 'run'))
depends_on('gmp')
diff --git a/var/spack/repos/builtin/packages/r-illumina450probevariants-db/package.py b/var/spack/repos/builtin/packages/r-illumina450probevariants-db/package.py
new file mode 100644
index 0000000000..2df7d0a602
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-illumina450probevariants-db/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RIllumina450probevariantsDb(RPackage):
+ """Annotation Package combining variant data from 1000 Genomes Project for
+ Illumina HumanMethylation450 Bead Chip probes:
+
+ Includes details on variants for each probe on the 450k bead chip for each
+ of the four populations (Asian, American, African and European)."""
+
+ bioc = "Illumina450ProbeVariants.db"
+
+ version('1.26.0', commit='fffe6033cc8d87354078c14de1e29976eaedd611')
+
+ depends_on('r@3.0.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-illuminahumanmethylation450kanno-ilmn12-hg19/package.py b/var/spack/repos/builtin/packages/r-illuminahumanmethylation450kanno-ilmn12-hg19/package.py
index 3442430964..e99aa99d8e 100644
--- a/var/spack/repos/builtin/packages/r-illuminahumanmethylation450kanno-ilmn12-hg19/package.py
+++ b/var/spack/repos/builtin/packages/r-illuminahumanmethylation450kanno-ilmn12-hg19/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RIlluminahumanmethylation450kannoIlmn12Hg19(RPackage):
- """Manifests and annotation for Illumina's 450k array data."""
+ """Annotation for Illumina's 450k methylation arrays
+
+ Manifests and annotation for Illumina's 450k array data."""
# This package is available via bioconductor but there is no available git
# repository.
diff --git a/var/spack/repos/builtin/packages/r-illuminahumanmethylation450kmanifest/package.py b/var/spack/repos/builtin/packages/r-illuminahumanmethylation450kmanifest/package.py
new file mode 100644
index 0000000000..1824d082f9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-illuminahumanmethylation450kmanifest/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RIlluminahumanmethylation450kmanifest(RPackage):
+ """Annotation for Illumina's 450k methylation arrays"""
+
+ url = "https://bioconductor.org/packages/release/data/annotation/src/contrib/IlluminaHumanMethylation450kmanifest_0.4.0.tar.gz"
+ bioc = "IlluminaHumanMethylation450kmanifest"
+
+ version('0.4.0', sha256='41b2e54bac3feafc7646fe40bce3aa2b92c10871b0a13657c5736517792fa763')
+
+ depends_on('r@2.13.0:', type=('build', 'run'))
+ depends_on('r-minfi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-illuminahumanmethylationepicanno-ilm10b4-hg19/package.py b/var/spack/repos/builtin/packages/r-illuminahumanmethylationepicanno-ilm10b4-hg19/package.py
new file mode 100644
index 0000000000..a04f1c5507
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-illuminahumanmethylationepicanno-ilm10b4-hg19/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RIlluminahumanmethylationepicannoIlm10b4Hg19(RPackage):
+ """Annotation for Illumina's EPIC methylation arrays"""
+
+ homepage = "https://bitbucket.com/kasperdanielhansen/Illumina_EPIC"
+ url = "https://bioconductor.org/packages/release/data/annotation/src/contrib/IlluminaHumanMethylationEPICanno.ilm10b4.hg19_0.6.0.tar.gz"
+ bioc = "IlluminaHumanMethylationEPICanno.ilm10b4.hg19"
+
+ version('0.6.0', sha256='2c8128126b63e7fa805a5f3b02449367dca9c3be3eb5f6300acc718826590719')
+
+ depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r-minfi@1.19.15:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-illuminahumanmethylationepicmanifest/package.py b/var/spack/repos/builtin/packages/r-illuminahumanmethylationepicmanifest/package.py
new file mode 100644
index 0000000000..a23c17ee12
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-illuminahumanmethylationepicmanifest/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RIlluminahumanmethylationepicmanifest(RPackage):
+ """Manifest for Illumina's EPIC methylation arrays"""
+
+ homepage = "https://bitbucket.com/kasperdanielhansen/Illumina_EPIC"
+ url = "https://bioconductor.org/packages/release/data/annotation/src/contrib/IlluminaHumanMethylationEPICmanifest_0.3.0.tar.gz"
+ bioc = "IlluminaHumanMethylationEPICmanifest"
+
+ version('0.3.0', sha256='e39a69d98486cec981e97c56f45bbe47d2ccb5bbb66a1b16fa0685575493902a')
+
+ depends_on('r@3.2.0:', type=('build', 'run'))
+ depends_on('r-minfi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-illuminaio/package.py b/var/spack/repos/builtin/packages/r-illuminaio/package.py
index 01d0f06d20..0d2d87cfab 100644
--- a/var/spack/repos/builtin/packages/r-illuminaio/package.py
+++ b/var/spack/repos/builtin/packages/r-illuminaio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RIlluminaio(RPackage):
- """Parsing Illumina Microarray Output Files.
+ """Parsing Illumina Microarray Output Files
Tools for parsing Illumina's microarray output files, including IDAT."""
homepage = "https://bioconductor.org/packages/illuminaio"
git = "https://git.bioconductor.org/packages/illuminaio.git"
+ version('0.32.0', commit='e1322c781dd475a5e8ff6c0422bebb3deb47fa80')
version('0.26.0', commit='40c2f94df2ea64d745d25aadd2bfb33ac3e02f81')
version('0.24.0', commit='47953c77713c2da00a610f39308f86c5b44f6c59')
version('0.22.0', commit='dbd842340999569975ea593f47d70a729b3f68f2')
diff --git a/var/spack/repos/builtin/packages/r-imager/package.py b/var/spack/repos/builtin/packages/r-imager/package.py
index cd0f851054..8819f01f05 100644
--- a/var/spack/repos/builtin/packages/r-imager/package.py
+++ b/var/spack/repos/builtin/packages/r-imager/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RImager(RPackage):
- """Fast image processing for images in up to 4 dimensions (two spatial
+ """Image Processing Library Based on 'CImg'
+
+ Fast image processing for images in up to 4 dimensions (two spatial
dimensions, one time/depth dimension, one colour dimension). Provides most
traditional image processing tools (filtering, morphology, transformations,
etc.) as well as various functions for easily analysing image data using R.
@@ -18,6 +20,7 @@ class RImager(RPackage):
url = "https://cloud.r-project.org/src/contrib/imager_0.41.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/imager"
+ version('0.42.3', sha256='6fc308153df8251cef48f1e13978abd5d29ec85046fbe0b27c428801d05ebbf3')
version('0.41.2', sha256='9be8bc8b3190d469fcb2883045a404d3b496a0380f887ee3caea11f0a07cd8a5')
depends_on('r@2.10.0:', type=('build', 'run'))
@@ -28,10 +31,9 @@ class RImager(RPackage):
depends_on('r-jpeg', type=('build', 'run'))
depends_on('r-readbitmap', type=('build', 'run'))
depends_on('r-purrr', type=('build', 'run'))
- depends_on('r-cairo', type=('build', 'run'))
depends_on('r-downloader', type=('build', 'run'))
depends_on('r-igraph', type=('build', 'run'))
- depends_on('r-plyr', type=('build', 'run'))
-
+ depends_on('r-cairo', when='@:0.41.2', type=('build', 'run'))
+ depends_on('r-plyr', when='@:0.41.2', type=('build', 'run'))
depends_on('fftw')
depends_on('libtiff')
diff --git a/var/spack/repos/builtin/packages/r-impute/package.py b/var/spack/repos/builtin/packages/r-impute/package.py
index 805a552262..7629e3e406 100644
--- a/var/spack/repos/builtin/packages/r-impute/package.py
+++ b/var/spack/repos/builtin/packages/r-impute/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RImpute(RPackage):
- """impute: Imputation for microarray data.
+ """impute: Imputation for microarray data
Imputation for microarray data (currently KNN only)"""
homepage = "https://bioconductor.org/packages/impute"
git = "https://git.bioconductor.org/packages/impute.git"
+ version('1.64.0', commit='31a5636f4dfbb1fd61386738786a0de048a620c2')
version('1.58.0', commit='dc17173df08d965a0d0aac9fa4ad519bd99d127e')
version('1.56.0', commit='6c037ed4dffabafceae684265f86f2a18751b559')
version('1.54.0', commit='efc61f5197e8c4baf4ae881fb556f0312beaabd8')
diff --git a/var/spack/repos/builtin/packages/r-influencer/package.py b/var/spack/repos/builtin/packages/r-influencer/package.py
index 3fc0e7aa5e..c88e43b2e8 100644
--- a/var/spack/repos/builtin/packages/r-influencer/package.py
+++ b/var/spack/repos/builtin/packages/r-influencer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ini/package.py b/var/spack/repos/builtin/packages/r-ini/package.py
index c52e76ea7f..5f9bd41bc2 100644
--- a/var/spack/repos/builtin/packages/r-ini/package.py
+++ b/var/spack/repos/builtin/packages/r-ini/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-inline/package.py b/var/spack/repos/builtin/packages/r-inline/package.py
index 14d733c157..13d5eed74a 100644
--- a/var/spack/repos/builtin/packages/r-inline/package.py
+++ b/var/spack/repos/builtin/packages/r-inline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RInline(RPackage):
- """Functionality to dynamically define R functions and S4 methods with
+ """Functions to Inline C, C++, Fortran Function Calls from R
+
+ Functionality to dynamically define R functions and S4 methods with
inlined C, C++ or Fortran code supporting .C and .Call calling
conventions."""
@@ -15,7 +17,6 @@ class RInline(RPackage):
url = "https://cloud.r-project.org/src/contrib/inline_0.3.14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/inline"
+ version('0.3.17', sha256='792857b2ebd408d6523424d2f6bb7297e241d4b28ab32372f6a9240c8cd554f3')
version('0.3.15', sha256='ff043fe13c1991a3b285bed256ff4a9c0ba10bee764225a34b285875b7d69c68')
version('0.3.14', sha256='fd34d6bf965148d26d983a022a0ff7bc1a5831f6ca066deee3f6139894dfc931')
-
- depends_on('r@2.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py b/var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py
index 0d69e46c2d..ce45cce7d1 100644
--- a/var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py
+++ b/var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RInteractivedisplaybase(RPackage):
"""Base package for enabling powerful shiny web displays of Bioconductor
- objects.
+ objects
The interactiveDisplayBase package contains the the basic methods needed
to generate interactive Shiny based display methods for Bioconductor
@@ -17,6 +17,7 @@ class RInteractivedisplaybase(RPackage):
homepage = "https://bioconductor.org/packages/interactiveDisplayBase"
git = "https://git.bioconductor.org/packages/interactiveDisplayBase.git"
+ version('1.28.0', commit='a74c02c971c4f9c7086e14abd23f1a4190da4599')
version('1.22.0', commit='4ce3cde1dabc01375c153ad614d77a5e28b96916')
version('1.20.0', commit='f40912c8af7afbaaf68c003a6e148d81cbe84df6')
version('1.18.0', commit='d07ea72a595877f27bf054f664f23e8f0304def8')
@@ -26,3 +27,4 @@ class RInteractivedisplaybase(RPackage):
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
depends_on('r-shiny', type=('build', 'run'))
+ depends_on('r-dt', when='@1.28.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-intervals/package.py b/var/spack/repos/builtin/packages/r-intervals/package.py
index f76684b3d1..76acf9fee7 100644
--- a/var/spack/repos/builtin/packages/r-intervals/package.py
+++ b/var/spack/repos/builtin/packages/r-intervals/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RIntervals(RPackage):
- """intervals: Tools for Working with Points and Intervals"""
+ """Tools for Working with Points and Intervals
+
+ Tools for working with and comparing sets of points and intervals."""
homepage = "http://github.com/edzer/intervals"
url = "https://cloud.r-project.org/src/contrib/intervals_0.15.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/intervals"
+ version('0.15.2', sha256='0bd23b0ce817ddd851238233d8a5420bf3a6d29e75fd361418cbc50118777c57')
version('0.15.1', sha256='9a8b3854300f2055e1492c71932cc808b02feac8c4d3dbf6cba1c7dbd09f4ae4')
depends_on('r@2.9.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-inum/package.py b/var/spack/repos/builtin/packages/r-inum/package.py
index 0b3cfead7f..a9a82acb75 100644
--- a/var/spack/repos/builtin/packages/r-inum/package.py
+++ b/var/spack/repos/builtin/packages/r-inum/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ipred/package.py b/var/spack/repos/builtin/packages/r-ipred/package.py
index ad73ee0ddb..6fb6dd1292 100644
--- a/var/spack/repos/builtin/packages/r-ipred/package.py
+++ b/var/spack/repos/builtin/packages/r-ipred/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-iranges/package.py b/var/spack/repos/builtin/packages/r-iranges/package.py
index 581d613875..3c600ed71b 100644
--- a/var/spack/repos/builtin/packages/r-iranges/package.py
+++ b/var/spack/repos/builtin/packages/r-iranges/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RIranges(RPackage):
- """Foundation of integer range manipulation in Bioconductor.
+ """Foundation of integer range manipulation in Bioconductor
Provides efficient low-level and highly reusable S4 classes for storing,
manipulating and aggregating over annotated ranges of integers.
@@ -19,6 +19,7 @@ class RIranges(RPackage):
homepage = "https://bioconductor.org/packages/IRanges"
git = "https://git.bioconductor.org/packages/IRanges.git"
+ version('2.24.1', commit='6c61fddf4c5830f69a0f7f108888c67cd0a12b19')
version('2.22.2', commit='8c5e991')
version('2.18.3', commit='c98a7ba074e72f2e5ec98252dffe9d3392711972')
version('2.16.0', commit='26834c6868d7c279dd8ac1bb9daa16e6fef273c2')
@@ -27,17 +28,15 @@ class RIranges(RPackage):
version('2.10.5', commit='b00d1d5025e3c480d17c13100f0da5a0132b1614')
depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('r@4.0.0:', when='@2.24.1:', type=('build', 'run'))
depends_on('r-biocgenerics@0.21.1:', type=('build', 'run'))
- depends_on('r-s4vectors@0.13.17:', type=('build', 'run'))
-
depends_on('r-biocgenerics@0.23.3:', when='@2.12.0:', type=('build', 'run'))
- depends_on('r-s4vectors@0.15.5:', when='@2.12.0:', type=('build', 'run'))
-
depends_on('r-biocgenerics@0.25.3:', when='@2.14.12:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.36.0:', when='@2.24.1:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.13.17:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.15.5:', when='@2.12.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.18.2:', when='@2.14.12:', type=('build', 'run'))
-
depends_on('r-s4vectors@0.19.11:', when='@2.16.0:', type=('build', 'run'))
-
depends_on('r-s4vectors@0.21.9:', when='@2.18.3:', type=('build', 'run'))
-
depends_on('r-s4vectors@0.25.14:', when='@2.22.2:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.12:', when='@2.24.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-irdisplay/package.py b/var/spack/repos/builtin/packages/r-irdisplay/package.py
index 2786e6bb91..30c97d0230 100644
--- a/var/spack/repos/builtin/packages/r-irdisplay/package.py
+++ b/var/spack/repos/builtin/packages/r-irdisplay/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-irkernel/package.py b/var/spack/repos/builtin/packages/r-irkernel/package.py
index 9089347e3c..89e722cf1a 100644
--- a/var/spack/repos/builtin/packages/r-irkernel/package.py
+++ b/var/spack/repos/builtin/packages/r-irkernel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-irlba/package.py b/var/spack/repos/builtin/packages/r-irlba/package.py
index 5e9711f74f..8133c70814 100644
--- a/var/spack/repos/builtin/packages/r-irlba/package.py
+++ b/var/spack/repos/builtin/packages/r-irlba/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-isdparser/package.py b/var/spack/repos/builtin/packages/r-isdparser/package.py
index cb7065ff23..5c22277f38 100644
--- a/var/spack/repos/builtin/packages/r-isdparser/package.py
+++ b/var/spack/repos/builtin/packages/r-isdparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,23 @@ from spack import *
class RIsdparser(RPackage):
- """isdparser: Parse 'NOAA' Integrated Surface Data Files"""
+ """Parse 'NOAA' Integrated Surface Data Files
+
+ Tools for parsing 'NOAA' Integrated Surface Data ('ISD') files, described
+ at <https://www.ncdc.noaa.gov/isd>. Data includes for example, wind speed
+ and direction, temperature, cloud data, sea level pressure, and more.
+ Includes data from approximately 35,000 stations worldwide, though best
+ coverage is in North America/Europe/Australia. Data is stored as variable
+ length ASCII character strings, with most fields optional. Included are
+ tools for parsing entire files, or individual lines of data."""
homepage = "https://github.com/ropensci/isdparser"
url = "https://cloud.r-project.org/src/contrib/isdparser_0.3.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/isdparser"
+ version('0.4.0', sha256='6f609e8f5ae4ce2e7904401f289d60d219b8f3a2bec9f661d10afa18ab73b317')
version('0.3.0', sha256='6c9e1d7f3661802838010d659d7c77b964423dcc9a6623402df1fe3be627b7b9')
- depends_on('r-data-table@1.10.0:', type=('build', 'run'))
depends_on('r-tibble@1.2:', type=('build', 'run'))
+ depends_on('r-data-table@1.10.0:', type=('build', 'run'))
+ depends_on('r-lubridate', when='@0.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-iso/package.py b/var/spack/repos/builtin/packages/r-iso/package.py
index 4d7057b871..6283e0296e 100644
--- a/var/spack/repos/builtin/packages/r-iso/package.py
+++ b/var/spack/repos/builtin/packages/r-iso/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RIso(RPackage):
- """Linear order and unimodal order (univariate) isotonic regression;
+ """Functions to Perform Isotonic Regression
+
+ Linear order and unimodal order (univariate) isotonic regression;
bivariate isotonic regression with linear order on both variables."""
homepage = "https://cloud.r-project.org/package=Iso"
url = "https://cloud.r-project.org/src/contrib/Iso_0.0-17.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Iso"
+ version('0.0-18.1', sha256='2fa5f78a7603cbae94a5e38e791938596a053d48c609a7c120a19cbb7d93c66f')
version('0.0-18', sha256='2d7e8c4452653364ee086d95cea620c50378e30acfcff129b7261e1756a99504')
version('0.0-17', sha256='c007d6eaf6335a15c1912b0804276ff39abce27b7a61539a91b8fda653629252')
diff --git a/var/spack/repos/builtin/packages/r-isoband/package.py b/var/spack/repos/builtin/packages/r-isoband/package.py
new file mode 100644
index 0000000000..e8ed5f19e9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-isoband/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RIsoband(RPackage):
+ """Generate Isolines and Isobands from Regularly Spaced Elevation Grids
+
+ A fast C++ implementation to generate contour lines (isolines) and contour
+ polygons (isobands) from regularly spaced grids containing elevation
+ data."""
+
+ homepage = "https://github.com/wilkelab/isoband"
+ url = "https://cloud.r-project.org/src/contrib/isoband_0.2.3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/isoband"
+
+ version('0.2.3', sha256='f9d3318fdf6d147dc2e2c7015ea7de42a55fa33d6232b952f982df96066b7ffe')
+
+ depends_on('r-testthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-isva/package.py b/var/spack/repos/builtin/packages/r-isva/package.py
new file mode 100644
index 0000000000..eb39fb2cc1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-isva/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RIsva(RPackage):
+ """Independent Surrogate Variable Analysis:
+
+ Independent Surrogate Variable Analysis is an algorithm for feature
+ selection in the presence of potential confounding factors (see
+ Teschendorff AE et al 2011, <doi:10.1093/bioinformatics/btr171>)."""
+
+ cran = "isva"
+
+ version('1.9', sha256='9fd016e0b34034d271d45f8a0d0db62780bf0187112e45f610aa9237014e1d17')
+
+ depends_on('r-qvalue', type=('build', 'run'))
+ depends_on('r-fastica', type=('build', 'run'))
+ depends_on('r-jade', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-iterators/package.py b/var/spack/repos/builtin/packages/r-iterators/package.py
index 4d59c50faa..727e20a0ea 100644
--- a/var/spack/repos/builtin/packages/r-iterators/package.py
+++ b/var/spack/repos/builtin/packages/r-iterators/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RIterators(RPackage):
- """Support for iterators, which allow a programmer to traverse through all
+ """Provides Iterator Construct
+
+ Support for iterators, which allow a programmer to traverse through all
the elements of a vector, list, or other collection of data."""
homepage = "https://cloud.r-project.org/package=iterators"
url = "https://cloud.r-project.org/src/contrib/iterators_1.0.8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/iterators"
+ version('1.0.13', sha256='778e30e4c292da9f94d62acc637cf55273dae258199d847e62658f44840f11a4')
version('1.0.12', sha256='96bf31d60ebd23aefae105d9b7790715e63327eec0deb2ddfb3d543994ea9f4b')
version('1.0.9', sha256='de001e063805fdd124953b571ccb0ed2838c55e40cca2e9d283d8a90b0645e9b')
version('1.0.8', sha256='ae4ea23385776eb0c06c992a3da6b0256a6c84558c1061034c5a1fbdd43d05b8')
diff --git a/var/spack/repos/builtin/packages/r-jade/package.py b/var/spack/repos/builtin/packages/r-jade/package.py
new file mode 100644
index 0000000000..63bd525256
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-jade/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RJade(RPackage):
+ """Blind Source Separation Methods Based on Joint Diagonalization and Some
+ BSS Performance Criteria:
+
+ Cardoso's JADE algorithm as well as his functions for joint diagonalization
+ are ported to R. Also several other blind source separation (BSS) methods,
+ like AMUSE and SOBI, and some criteria for performance evaluation of BSS
+ algorithms, are given. The package is described in Miettinen, Nordhausen
+ and Taskinen (2017) <doi:10.18637/jss.v076.i02>."""
+
+ cran = "JADE"
+
+ version('2.0-3', sha256='56d68a993fa16fc6dec758c843960eee840814c4ca2271e97681a9d2b9e242ba')
+
+ depends_on('r-clue', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-janitor/package.py b/var/spack/repos/builtin/packages/r-janitor/package.py
index 79c92f08d4..6166db41e0 100644
--- a/var/spack/repos/builtin/packages/r-janitor/package.py
+++ b/var/spack/repos/builtin/packages/r-janitor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,30 +7,38 @@ from spack import *
class RJanitor(RPackage):
- """The main janitor functions can: perfectly format data.frame column
- names; provide quick one- and two-variable tabulations (i.e., frequency
- tables and crosstabs); and isolate duplicate records. Other janitor
- functions nicely format the tabulation results. These
- tabulate-and-report functions approximate popular features of SPSS and
- Microsoft Excel. This package follows the principles of the "tidyverse"
- and works well with the pipe function %>%. janitor was built with
- beginning-to-intermediate R users in mind and is optimized for
- user-friendliness. Advanced R users can already do everything covered
- here, but with janitor they can do it faster and save their thinking
- for the fun stuff."""
+ """Simple Tools for Examining and Cleaning Dirty Data
+
+ The main janitor functions can: perfectly format data.frame column names;
+ provide quick one- and two-variable tabulations (i.e., frequency tables and
+ crosstabs); and isolate duplicate records. Other janitor functions nicely
+ format the tabulation results. These tabulate-and-report functions
+ approximate popular features of SPSS and Microsoft Excel. This package
+ follows the principles of the "tidyverse" and works well with the pipe
+ function %>%. janitor was built with beginning-to-intermediate R users in
+ mind and is optimized for user-friendliness. Advanced R users can already
+ do everything covered here, but with janitor they can do it faster and save
+ their thinking for the fun stuff."""
homepage = "https://github.com/sfirke/janitor"
url = "https://cloud.r-project.org/src/contrib/janitor_0.3.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/janitor"
+ version('2.1.0', sha256='d60615940fbe174f67799c8abc797f27928eca4ac180418527c5897a4aaad826')
version('1.2.0', sha256='5e15a2292c65c5ddd6160289dec2604b05a813651a2be0d7854ace4548a32b8c')
version('1.1.1', sha256='404b41f56e571fab4c95ef62e79cb4f3bb34d5bb6e4ea737e748ff269536176b')
version('0.3.0', sha256='5e4d8ef895ed9c7b8fa91aeb93e25c009366b4c5faaf3d02265f64b33d4a45f4')
depends_on('r@3.1.2:', type=('build', 'run'))
depends_on('r-dplyr@0.7.0:', type=('build', 'run'))
- depends_on('r-tidyr@0.7.0:', type=('build', 'run'))
+ depends_on('r-dplyr@1.0.0:', when='@2.1.0:', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@2.1.0:', type=('build', 'run'))
+ depends_on('r-lubridate', when='@2.1.0:', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
- depends_on('r-snakecase@0.9.2:', when='@1.1.0:', type=('build', 'run'))
depends_on('r-purrr', when='@1.1.0:', type=('build', 'run'))
depends_on('r-rlang', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-stringi', when='@2.1.0:', type=('build', 'run'))
+ depends_on('r-stringr', when='@2.1.0:', type=('build', 'run'))
+ depends_on('r-snakecase@0.9.2:', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-tidyselect@1.0.0:', when='@2.1.0:', type=('build', 'run'))
+ depends_on('r-tidyr@0.7.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-jaspar2018/package.py b/var/spack/repos/builtin/packages/r-jaspar2018/package.py
index 3edc15acc1..faf07ab8bc 100644
--- a/var/spack/repos/builtin/packages/r-jaspar2018/package.py
+++ b/var/spack/repos/builtin/packages/r-jaspar2018/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-jomo/package.py b/var/spack/repos/builtin/packages/r-jomo/package.py
index 5a3a40f09e..5b47657f7e 100644
--- a/var/spack/repos/builtin/packages/r-jomo/package.py
+++ b/var/spack/repos/builtin/packages/r-jomo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,20 @@ from spack import *
class RJomo(RPackage):
- """Similarly to Schafer's package 'pan', 'jomo' is a package for multilevel
+ """Multilevel Joint Modelling Multiple Imputation
+
+ Similarly to Schafer's package 'pan', 'jomo' is a package for multilevel
joint modelling multiple imputation (Carpenter and Kenward, 2013)
<doi:10.1002/9781119942283>. Novel aspects of 'jomo' are the possibility of
handling binary and categorical data through latent normal variables, the
option to use cluster-specific covariance matrices and to impute compatibly
- with the substantive model.
- """
+ with the substantive model."""
homepage = "https://cloud.r-project.org/package=jomo"
url = "https://cloud.r-project.org/src/contrib/jomo_2.6-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/jomo"
+ version('2.7-2', sha256='3962d5cbecc60e72670329dbef0dd74303080f5ea2a79c91e27f75db99ba6ce9')
version('2.6-9', sha256='b90f47071e62b8863b00b1ae710a56ae6efbfe2baeb9963f8a91a10d6183cc9b')
version('2.6-7', sha256='6e83dab51103511038a3e9a3c762e00cc45ae7080c0a0f64e37bcea8c488db53')
version('2.6-2', sha256='67496d6d69ddbe9a796789fd8b3ac32cada09a81cf5a8e7b925a21e085e2d87f')
diff --git a/var/spack/repos/builtin/packages/r-jpeg/package.py b/var/spack/repos/builtin/packages/r-jpeg/package.py
index 4e3d78e414..b1006752dc 100644
--- a/var/spack/repos/builtin/packages/r-jpeg/package.py
+++ b/var/spack/repos/builtin/packages/r-jpeg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RJpeg(RPackage):
- """This package provides an easy and simple way to read, write and display
+ """Read and write JPEG images
+
+ This package provides an easy and simple way to read, write and display
bitmap images stored in the JPEG format. It can read and write both files
and in-memory raw vectors."""
@@ -15,6 +17,7 @@ class RJpeg(RPackage):
url = "https://cloud.r-project.org/src/contrib/jpeg_0.1-8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/jpeg"
+ version('0.1-8.1', sha256='1db0a4976fd9b2ae27a37d3e856cca35bc2909323c7a40724846a5d3c18915a9')
version('0.1-8', sha256='d032befeb3a414cefdbf70ba29a6c01541c54387cc0a1a98a4022d86cbe60a16')
depends_on('r@2.9.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-jsonlite/package.py b/var/spack/repos/builtin/packages/r-jsonlite/package.py
index 590134065a..b3a74af8e3 100644
--- a/var/spack/repos/builtin/packages/r-jsonlite/package.py
+++ b/var/spack/repos/builtin/packages/r-jsonlite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RJsonlite(RPackage):
- """A fast JSON parser and generator optimized for statistical data and the
+ """A Simple and Robust JSON Parser and Generator for R
+
+ A fast JSON parser and generator optimized for statistical data and the
web. Started out as a fork of 'RJSONIO', but has been completely rewritten
in recent versions. The package offers flexible, robust, high performance
tools for working with JSON in R and is particularly powerful for building
@@ -22,6 +24,7 @@ class RJsonlite(RPackage):
url = "https://cloud.r-project.org/src/contrib/jsonlite_1.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/jsonlite"
+ version('1.7.2', sha256='06354b50435942f67ba264f79831e577809ef89e5f9a5a2201985396fe651fd2')
version('1.6.1', sha256='74921dd249857a23afabc1ad1485a63a48828e57f240f0619deb04c60f883377')
version('1.6', sha256='88c5b425229966b7409145a6cabc72db9ed04f8c37ee95901af0146bb285db53')
version('1.5', sha256='6490371082a387cb1834048ad8cdecacb8b6b6643751b50298c741490c798e02')
diff --git a/var/spack/repos/builtin/packages/r-kegg-db/package.py b/var/spack/repos/builtin/packages/r-kegg-db/package.py
index 693fcc7f27..4b3bf9695b 100644
--- a/var/spack/repos/builtin/packages/r-kegg-db/package.py
+++ b/var/spack/repos/builtin/packages/r-kegg-db/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,21 @@ from spack import *
class RKeggDb(RPackage):
- """A set of annotation maps for KEGG assembled using data from KEGG."""
+ """A set of annotation maps for KEGG
+
+ A set of annotation maps for KEGG assembled using data from KEGG."""
+
+ # NOTE: The KEGG.db package is deprecated
homepage = "https://www.bioconductor.org/packages/KEGG.db/"
url = "https://www.bioconductor.org/packages/release/data/annotation/src/contrib/KEGG.db_3.2.3.tar.gz"
- version('3.2.3', sha256='02ea4630a3ec06a8d9a6151627c96d3f71dfc7e8857800bb5c0cdb6a838d6963')
- depends_on('r-annotationdbi', type=('build', 'run'))
+ version('3.2.4',
+ sha256='2e60d1b664cbd1491cc00ed13a22904706c5a4651150f70daca04bf3ba9ead88',
+ url='https://bioconductor.org/packages/3.12/data/annotation/src/contrib/KEGG.db_3.2.4.tar.gz')
+ version('3.2.3',
+ sha256='02ea4630a3ec06a8d9a6151627c96d3f71dfc7e8857800bb5c0cdb6a838d6963',
+ url='https://bioconductor.org/packages/3.10/data/annotation/src/contrib/KEGG.db_3.2.3.tar.gz')
+
+ depends_on('r@2.7.0:', type=('build', 'run'))
+ depends_on('r-annotationdbi@1.34.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-kegggraph/package.py b/var/spack/repos/builtin/packages/r-kegggraph/package.py
index 9feefead29..21f7c27ed3 100644
--- a/var/spack/repos/builtin/packages/r-kegggraph/package.py
+++ b/var/spack/repos/builtin/packages/r-kegggraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RKegggraph(RPackage):
- """KEGGgraph: A graph approach to KEGG PATHWAY in R and Bioconductor.
+ """KEGGgraph: A graph approach to KEGG PATHWAY in R and Bioconductor
KEGGGraph is an interface between KEGG pathway and graph object as well
as a collection of tools to analyze, dissect and visualize these graphs.
@@ -19,6 +19,7 @@ class RKegggraph(RPackage):
homepage = "https://bioconductor.org/packages/KEGGgraph"
git = "https://git.bioconductor.org/packages/KEGGgraph.git"
+ version('1.50.0', commit='3335e85cdba264c04e6e36378578cf6c83a30eb8')
version('1.44.0', commit='2c24e8ec53fe34c72ea65f34e3c09905ab2e5c62')
version('1.42.0', commit='7d907e22a3ad7b4829a7cbaba5a8f8dc8013a609')
version('1.40.0', commit='6351a1637276f71697b01a994ebda0d3d1cf6d7a')
@@ -28,5 +29,4 @@ class RKegggraph(RPackage):
depends_on('r@2.10.0:', type=('build', 'run'))
depends_on('r-xml@2.3-0:', type=('build', 'run'))
depends_on('r-graph', type=('build', 'run'))
-
depends_on('r-rcurl', when='@1.44.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-keggrest/package.py b/var/spack/repos/builtin/packages/r-keggrest/package.py
index a422dfad36..d2ff44714b 100644
--- a/var/spack/repos/builtin/packages/r-keggrest/package.py
+++ b/var/spack/repos/builtin/packages/r-keggrest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RKeggrest(RPackage):
- """Client-side REST access to KEGG.
+ """Client-side REST access to KEGG
A package that provides a client interface to the KEGG REST server.
Based on KEGGSOAP by J. Zhang, R. Gentleman, and Marc Carlson, and KEGG
@@ -16,12 +16,14 @@ class RKeggrest(RPackage):
homepage = "https://bioconductor.org/packages/KEGGREST"
git = "https://git.bioconductor.org/packages/KEGGREST.git"
+ version('1.30.1', commit='fd9970ea9df117d625257b8c6351cf85098cfbc1')
version('1.24.1', commit='bbc3ef476e02147aad8e1f33178136cc797c1b3f')
version('1.22.0', commit='4374507376be811d29416d0cbbfd9115a50494d9')
version('1.20.2', commit='62b4519367841f3548536c117e7e2bfe3fa4bf72')
version('1.18.1', commit='580c126eabc3c52145967708f67a428ca46b23b2')
version('1.16.1', commit='ed48de0def57a909894e237fa4731c4a052d8849')
+ depends_on('r@3.5.0:', when='@1.30.1:', type=('build', 'run'))
depends_on('r-httr', type=('build', 'run'))
depends_on('r-png', type=('build', 'run'))
depends_on('r-biostrings', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-kernlab/package.py b/var/spack/repos/builtin/packages/r-kernlab/package.py
index 2c7ce6bad2..c798643950 100644
--- a/var/spack/repos/builtin/packages/r-kernlab/package.py
+++ b/var/spack/repos/builtin/packages/r-kernlab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RKernlab(RPackage):
- """Kernel-based machine learning methods for classification, regression,
+ """Kernel-Based Machine Learning Lab
+
+ Kernel-based machine learning methods for classification, regression,
clustering, novelty detection, quantile regression and dimensionality
reduction. Among other methods 'kernlab' includes Support Vector Machines,
Spectral Clustering, Kernel PCA, Gaussian Processes and a QP solver."""
@@ -16,6 +18,7 @@ class RKernlab(RPackage):
url = "https://cloud.r-project.org/src/contrib/kernlab_0.9-25.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/kernlab"
+ version('0.9-29', sha256='c3da693a0041dd34f869e7b63a8d8cf7d4bc588ac601bcdddcf7d44f68b3106f')
version('0.9-27', sha256='f6add50ed4097f04d09411491625f8d46eafc4f003b1c1cff78a6fff8cc31dd4')
version('0.9-26', sha256='954940478c6fcf60433e50e43cf10d70bcb0a809848ca8b9d683bf371cd56077')
version('0.9-25', sha256='b9de072754bb03c02c4d6a5ca20f2290fd090de328b55ab334ac0b397ac2ca62')
diff --git a/var/spack/repos/builtin/packages/r-kernsmooth/package.py b/var/spack/repos/builtin/packages/r-kernsmooth/package.py
index ecbf325df0..aaff9bd348 100644
--- a/var/spack/repos/builtin/packages/r-kernsmooth/package.py
+++ b/var/spack/repos/builtin/packages/r-kernsmooth/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,16 @@ from spack import *
class RKernsmooth(RPackage):
- """Functions for kernel smoothing (and density estimation)."""
+ """Functions for kernel smoothing (and density estimation)
+
+ Functions for kernel smoothing (and density estimation) corresponding to
+ the book: Wand, M.P. and Jones, M.C. (1995) "Kernel Smoothing"."""
homepage = "https://cloud.r-project.org/package=KernSmooth"
url = "https://cloud.r-project.org/src/contrib/KernSmooth_2.23-15.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/KernSmooth"
+ version('2.23-18', sha256='8334800c5ad2305539d2731b929ea34f50fa4269ba87277b699fd5be5b03c490')
version('2.23-15', sha256='8b72d23ed121a54af188b2cda4441e3ce2646359309885f6455b82c0275210f6')
depends_on('r@2.5.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-kknn/package.py b/var/spack/repos/builtin/packages/r-kknn/package.py
index 9aa4c0af14..5b1cbf30f0 100644
--- a/var/spack/repos/builtin/packages/r-kknn/package.py
+++ b/var/spack/repos/builtin/packages/r-kknn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-knitr/package.py b/var/spack/repos/builtin/packages/r-knitr/package.py
index c3af15f155..ff3fe39149 100644
--- a/var/spack/repos/builtin/packages/r-knitr/package.py
+++ b/var/spack/repos/builtin/packages/r-knitr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,16 @@ from spack import *
class RKnitr(RPackage):
- """Provides a general-purpose tool for dynamic report generation in R using
+ """A General-Purpose Package for Dynamic Report Generation in R
+
+ Provides a general-purpose tool for dynamic report generation in R using
Literate Programming techniques."""
homepage = "https://cloud.r-project.org/package=knitr"
url = "https://cloud.r-project.org/src/contrib/knitr_1.14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/knitr"
+ version('1.30', sha256='3aabb13566a234131ba18b78d690104f9468a982dc711f81344a985318c7c93e')
version('1.28', sha256='05ee01da31d715bf24793efb3e4ef3bb3101ef1e1ab2d760c645fc5b9d40232a')
version('1.24', sha256='e80c2043b445a7e576b62ae8510cce89322660fe388881d799a706d35cd27b89')
version('1.23', sha256='063bfb3300fc9f3e7d223c346e19b93beced0e6784470b9bef2524868a206a99')
@@ -26,10 +29,11 @@ class RKnitr(RPackage):
depends_on('r@3.1.0:', when='@1.15:1.22', type=('build', 'run'))
depends_on('r@3.2.3:', when='@1.23:', type=('build', 'run'))
depends_on('r-evaluate@0.10:', type=('build', 'run'))
- depends_on('r-digest@:1.17', when='@:1.24', type=('build', 'run'))
- depends_on('r-formatr@:1.14', when='@:1.24', type=('build', 'run'))
depends_on('r-highr', type=('build', 'run'))
- depends_on('r-stringr@0.6:', type=('build', 'run'))
depends_on('r-markdown', type=('build', 'run'))
+ depends_on('r-stringr@0.6:', type=('build', 'run'))
depends_on('r-yaml@2.1.19:', type=('build', 'run'))
depends_on('r-xfun', when='@1.23:', type=('build', 'run'))
+ depends_on('r-xfun@0.15:', when='@1.30:', type=('build', 'run'))
+ depends_on('r-digest', when='@:1.17', type=('build', 'run'))
+ depends_on('r-formatr', when='@:1.14', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-kpmt/package.py b/var/spack/repos/builtin/packages/r-kpmt/package.py
new file mode 100644
index 0000000000..da2d416ba6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-kpmt/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RKpmt(RPackage):
+ """Known Population Median Test:
+
+ Functions that implement the known population median test."""
+
+ cran = "kpmt"
+
+ version('0.1.0', sha256='6342ad02c93bfa7a764d028821bb6115bb8bc8c55b057a5860736cc0e034a295')
+
+ depends_on('r@2.10:', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ks/package.py b/var/spack/repos/builtin/packages/r-ks/package.py
index 1fef11ef52..07a4324975 100644
--- a/var/spack/repos/builtin/packages/r-ks/package.py
+++ b/var/spack/repos/builtin/packages/r-ks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,18 @@ from spack import *
class RKs(RPackage):
- """Kernel smoothers for univariate and multivariate data."""
+ """Kernel Smoothing
+
+ Kernel smoothers for univariate and multivariate data, including densities,
+ density derivatives, cumulative distributions, clustering, classification,
+ density ridges, significant modal regions, and two-sample hypothesis tests.
+ Chacon & Duong (2018) <doi:10.1201/9780429485572>."""
homepage = "https://cloud.r-project.org/package=ks"
url = "https://cloud.r-project.org/src/contrib/ks_1.11.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ks"
+ version('1.11.7', sha256='6a6d9c2366e85a4c6af39b798f3798d20a42615ddfcebcedf6cf56087cdfd2b8')
version('1.11.5', sha256='4f65565376391b8a6dcce76168ef628fd4859dba8496910cbdd54e4f88e8d51b')
version('1.11.4', sha256='0beffaf8694819fba8c93af07a8782674a15fe00a04ad1d94d31238d0a41b134')
version('1.11.2', sha256='9dfd485096e1e67abc7dfcb7b76a83de110dd15bcfeffe5c899605b3a5592961')
@@ -20,9 +26,9 @@ class RKs(RPackage):
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-fnn@1.1:', type=('build', 'run'))
depends_on('r-kernlab', type=('build', 'run'))
- depends_on('r-mclust', type=('build', 'run'))
- depends_on('r-multicool', type=('build', 'run'))
- depends_on('r-mvtnorm@1.0:', type=('build', 'run'))
depends_on('r-kernsmooth@2.22:', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-mclust', type=('build', 'run'))
depends_on('r-mgcv', type=('build', 'run'))
+ depends_on('r-multicool', type=('build', 'run'))
+ depends_on('r-mvtnorm@1.0-0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-labeling/package.py b/var/spack/repos/builtin/packages/r-labeling/package.py
index f3b5a3c45c..5b598c519f 100644
--- a/var/spack/repos/builtin/packages/r-labeling/package.py
+++ b/var/spack/repos/builtin/packages/r-labeling/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,13 @@ from spack import *
class RLabeling(RPackage):
- """Provides a range of axis labeling algorithms."""
+ """Axis Labeling
+
+ Provides a range of axis labeling algorithms."""
homepage = "https://cloud.r-project.org/package=labeling"
url = "https://cloud.r-project.org/src/contrib/labeling_0.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/labeling"
+ version('0.4.2', sha256='e022d79276173e0d62bf9e37d7574db65ab439eb2ae1833e460b1cff529bd165')
version('0.3', sha256='0d8069eb48e91f6f6d6a9148f4e2dc5026cabead15dd15fc343eff9cf33f538f')
diff --git a/var/spack/repos/builtin/packages/r-lambda-r/package.py b/var/spack/repos/builtin/packages/r-lambda-r/package.py
index 1ea85260d1..0cd4c46a4c 100644
--- a/var/spack/repos/builtin/packages/r-lambda-r/package.py
+++ b/var/spack/repos/builtin/packages/r-lambda-r/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,17 @@ from spack import *
class RLambdaR(RPackage):
- """A language extension to efficiently write functional programs in R.
- Syntax extensions include multi-part function definitions, pattern
- matching, guard statements, built-in (optional) type safety."""
+ """Modeling Data with Functional Programming
+
+ A language extension to efficiently write functional programs in R. Syntax
+ extensions include multi-part function definitions, pattern matching, guard
+ statements, built-in (optional) type safety."""
homepage = "https://cloud.r-project.org/package=lambda.r"
url = "https://cloud.r-project.org/src/contrib/lambda.r_1.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lambda.r"
+ version('1.2.4', sha256='d252fee39065326c6d9f45ad798076522cec05e73b8905c1b30f95a61f7801d6')
version('1.2.3', sha256='0cd8e37ba1a0960888016a85d492da51a57df54bd65ff920b08c79a3bfbe8631')
version('1.2', sha256='7dc4188ce1d4a6b026a1b128719ff60234ae1e3ffa583941bbcd8473ad18146f')
diff --git a/var/spack/repos/builtin/packages/r-laplacesdemon/package.py b/var/spack/repos/builtin/packages/r-laplacesdemon/package.py
index f11f635ac1..e2360e6c5e 100644
--- a/var/spack/repos/builtin/packages/r-laplacesdemon/package.py
+++ b/var/spack/repos/builtin/packages/r-laplacesdemon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,17 @@ from spack import *
class RLaplacesdemon(RPackage):
- """Provides a complete environment for Bayesian inference using a variety
- of different samplers (see ?LaplacesDemon for an overview). The README
- describes the history of the package development process."""
+ """Complete Environment for Bayesian Inference
+
+ Provides a complete environment for Bayesian inference using a variety of
+ different samplers (see ?LaplacesDemon for an overview). The README
+ describes the history of the package development process."""
homepage = "https://github.com/LaplacesDemonR/LaplacesDemon"
url = "https://cloud.r-project.org/src/contrib/LaplacesDemon_16.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/LaplacesDemon"
+ version('16.1.4', sha256='4152a1c3c652979e97870e5c50c45a243d0ad8d4ff968091160e3d66509f61db')
version('16.1.1', sha256='779ed1dbfed523a15701b4d5d891d4f1f11ab27518826a8a7725807d4c42bd77')
version('16.1.0', sha256='41d99261e8fc33c977b43ecf66ebed8ef1c84d9bd46b271609e9aadddc2ca8bb')
version('16.0.1', sha256='be21eff3c821b4fe0b4724f03c9221c2456257f93d91f864de11e95dc35e8679')
diff --git a/var/spack/repos/builtin/packages/r-lars/package.py b/var/spack/repos/builtin/packages/r-lars/package.py
index 1eddbea773..b28a4f655d 100644
--- a/var/spack/repos/builtin/packages/r-lars/package.py
+++ b/var/spack/repos/builtin/packages/r-lars/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-later/package.py b/var/spack/repos/builtin/packages/r-later/package.py
index cca8c10739..00dd51269b 100644
--- a/var/spack/repos/builtin/packages/r-later/package.py
+++ b/var/spack/repos/builtin/packages/r-later/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RLater(RPackage):
- """Executes arbitrary R or C functions some time after the current time,
+ """Utilities for Scheduling Functions to Execute Later with Event Loops
+
+ Executes arbitrary R or C functions some time after the current time,
after the R execution stack has emptied."""
homepage = "https://github.com/r-lib/later"
url = "https://cloud.r-project.org/src/contrib/later_0.8.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/later"
+ version('1.1.0.1', sha256='71baa7beae774a35a117e01d7b95698511c3cdc5eea36e29732ff1fe8f1436cd')
version('0.8.0', sha256='6b2a28b43c619b2c7890840c62145cd3a34a7ed65b31207fdedde52efb00e521')
depends_on('r-rcpp@0.12.9:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lattice/package.py b/var/spack/repos/builtin/packages/r-lattice/package.py
index 22110c6587..aca09efad1 100644
--- a/var/spack/repos/builtin/packages/r-lattice/package.py
+++ b/var/spack/repos/builtin/packages/r-lattice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RLattice(RPackage):
- """A powerful and elegant high-level data visualization system inspired by
+ """Trellis Graphics for R
+
+ A powerful and elegant high-level data visualization system inspired by
Trellis graphics, with an emphasis on multivariate data. Lattice is
sufficient for typical graphics needs, and is also flexible enough to
handle most nonstandard requirements. See ?Lattice for an introduction."""
@@ -16,6 +18,7 @@ class RLattice(RPackage):
url = "https://cloud.r-project.org/src/contrib/lattice_0.20-35.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lattice"
+ version('0.20-41', sha256='54ca557f0cb33df60eb10b883c2ed2847e061ddd57ed9b5dd7695149609d57b5')
version('0.20-38', sha256='fdeb5e3e50dbbd9d3c5e2fa3eef865132b3eef30fbe53a10c24c7b7dfe5c0a2d')
version('0.20-35', sha256='0829ab0f4dec55aac6a73bc3411af68441ddb1b5b078d680a7c2643abeaa965d')
version('0.20-34', sha256='4a1a1cafa9c6660fb9a433b3a51898b8ec8e83abf143c80f99e3e4cf92812518')
diff --git a/var/spack/repos/builtin/packages/r-latticeextra/package.py b/var/spack/repos/builtin/packages/r-latticeextra/package.py
index ae74ac2c9b..62303a26c2 100644
--- a/var/spack/repos/builtin/packages/r-latticeextra/package.py
+++ b/var/spack/repos/builtin/packages/r-latticeextra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RLatticeextra(RPackage):
- """Building on the infrastructure provided by the lattice package,
+ """Extra Graphical Utilities Based on Lattice
+
+ Building on the infrastructure provided by the lattice package,
this package provides several new high-level functions and methods,
as well as additional utilities such as panel and axis annotation
functions."""
@@ -16,8 +18,12 @@ class RLatticeextra(RPackage):
url = "https://cloud.r-project.org/src/contrib/latticeExtra_0.6-28.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/latticeExtra"
+ version('0.6-29', sha256='6cadc31d56f73d926e2e8d72e43ae17ac03607a4d1a374719999a4a231e3df11')
version('0.6-28', sha256='780695323dfadac108fb27000011c734e2927b1e0f069f247d65d27994c67ec2')
depends_on('r@2.10.0:', type=('build', 'run'))
+ depends_on('r@3.6.0:', when='@0.6-29:', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-png', when='@0.6-29:', type=('build', 'run'))
+ depends_on('r-jpeg', when='@0.6-29:', type=('build', 'run'))
depends_on('r-rcolorbrewer', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lava/package.py b/var/spack/repos/builtin/packages/r-lava/package.py
index 2a7a1d2271..81d87cb156 100644
--- a/var/spack/repos/builtin/packages/r-lava/package.py
+++ b/var/spack/repos/builtin/packages/r-lava/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,23 @@ from spack import *
class RLava(RPackage):
- """Estimation and simulation of latent variable models."""
+ """Latent Variable Models
+
+ A general implementation of Structural Equation Models with latent
+ variables (MLE, 2SLS, and composite likelihood estimators) with both
+ continuous, censored, and ordinal outcomes (Holst and Budtz-Joergensen
+ (2013) <doi:10.1007/s00180-012-0344-y>). Mixture latent variable models and
+ non-linear latent variable models (Holst and Budtz-Joergensen (2019)
+ <doi:10.1093/biostatistics/kxy082>). The package also provides methods for
+ graph exploration (d-separation, back-door criterion), simulation of
+ general non-linear latent variable models, and estimation of influence
+ functions for a broad range of statistical models."""
homepage = "https://cloud.r-project.org/package=lava"
url = "https://cloud.r-project.org/src/contrib/lava_1.4.7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lava"
+ version('1.6.8.1', sha256='6d243fc86c67c78ff4763502d84ff2f0889c2e55d1a59afefb7a762887473ffa')
version('1.6.6', sha256='7abc84dd99cce450a45ac4f232812cde3a322e432da3472f43b057fb5c59ca59')
version('1.6.4', sha256='41c6eeb96eaef9e1bfb04b31f7203e250a5ea7e7860be4d95f7f96f2a8644718')
version('1.4.7', sha256='d5cbd4835a94855478efb93051eece965db116ead203f4dd4e09d9a12d52f4bf')
diff --git a/var/spack/repos/builtin/packages/r-lavaan/package.py b/var/spack/repos/builtin/packages/r-lavaan/package.py
new file mode 100644
index 0000000000..34c24fd3b8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-lavaan/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RLavaan(RPackage):
+ """Latent Variable Analysis:
+
+ Fit a variety of latent variable models, including confirmatory factor
+ analysis, structural equation modeling and latent growth curve models."""
+
+ homepage = "https://lavaan.ugent.be/"
+ cran = "lavaan"
+
+ version('0.6-8', sha256='40e204909100b7338619ae23cd87e0a4058e581c286da2327f36dbb3834b84a2')
+
+ depends_on('r@3.4:', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-mnormt', type=('build', 'run'))
+ depends_on('r-pbivnorm', type=('build', 'run'))
+ depends_on('r-numderiv', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lazyeval/package.py b/var/spack/repos/builtin/packages/r-lazyeval/package.py
index 7555a0890d..804907f7f5 100644
--- a/var/spack/repos/builtin/packages/r-lazyeval/package.py
+++ b/var/spack/repos/builtin/packages/r-lazyeval/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ldheatmap/package.py b/var/spack/repos/builtin/packages/r-ldheatmap/package.py
index df4d181882..4f6b2a554b 100644
--- a/var/spack/repos/builtin/packages/r-ldheatmap/package.py
+++ b/var/spack/repos/builtin/packages/r-ldheatmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,26 @@ from spack import *
class RLdheatmap(RPackage):
- """LDheatmap: Graphical Display of Pairwise Linkage Disequilibria Between
- SNPs"""
+ """Graphical Display of Pairwise Linkage Disequilibria Between SNPs
+
+ Produces a graphical display, as a heat map, of measures of pairwise
+ linkage disequilibria between single nucleotide polymorphisms (SNPs). Users
+ may optionally include the physical locations or genetic map distances of
+ each SNP on the plot. The methods are described in Shin et al. (2006)
+ <doi:10.18637/jss.v016.c03>. Users should note that the imported package
+ 'snpStats' and the suggested packages 'rtracklayer', 'GenomicRanges',
+ 'GenomInfoDb' and 'IRanges' are all BioConductor packages
+ <https://bioconductor.org>."""
homepage = "https://sfustatgen.github.io/LDheatmap/"
url = "https://cloud.r-project.org/src/contrib/LDheatmap_0.99-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/LDheatmap"
+ version('1.0-4', sha256='07eb385f19e6a195e8e4d75be0b47c57744eabbf14045e527f0c27e1183ae5ca')
version('0.99-7', sha256='aca54c839a424506d8be7153bf03b32026aeefe7ed38f534e8e19708e34212e4')
depends_on('r@2.14.0:', type=('build', 'run'))
+ depends_on('r@4.0:', when='@1.0-4:', type=('build', 'run'))
depends_on('r-genetics', type=('build', 'run'))
- depends_on('r-rcpp', type=('build', 'run'))
depends_on('r-snpstats', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-leafem/package.py b/var/spack/repos/builtin/packages/r-leafem/package.py
new file mode 100644
index 0000000000..481a4dd957
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-leafem/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RLeafem(RPackage):
+ """'leaflet' Extensions for 'mapview'
+
+ Provides extensions for packages 'leaflet' & 'mapdeck', many of which are
+ used by package 'mapview'. Focus is on functionality readily available in
+ Geographic Information Systems such as 'Quantum GIS'. Includes functions to
+ display coordinates of mouse pointer position, query image values via mouse
+ pointer and zoom-to-layer buttons. Additionally, provides a feature type
+ agnostic function to add points, lines, polygons to a map."""
+
+ homepage = "https://github.com/r-spatial/leafem"
+ cran = "leafem"
+
+ version('0.1.3', sha256='6f123fc15efadb85d317c01003e3b7af5dc925cffe0bbe774b1b39b6bd67f304')
+
+ depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('r-base64enc', type=('build', 'run'))
+ depends_on('r-htmltools@0.3:', type=('build', 'run'))
+ depends_on('r-htmlwidgets', type=('build', 'run'))
+ depends_on('r-leaflet@2.0.1:', type=('build', 'run'))
+ depends_on('r-raster', type=('build', 'run'))
+ depends_on('r-sf', type=('build', 'run'))
+ depends_on('r-png', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-leaflet-providers/package.py b/var/spack/repos/builtin/packages/r-leaflet-providers/package.py
new file mode 100644
index 0000000000..e806a4ed67
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-leaflet-providers/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RLeafletProviders(RPackage):
+ """Leaflet Providers
+
+ Contains third-party map tile provider information from 'Leaflet.js',
+ <https://github.com/leaflet-extras/leaflet-providers>, to be used with the
+ 'leaflet' R package. Additionally, 'leaflet.providers' enables users to
+ retrieve up-to-date provider information between package updates."""
+
+ homepage = "https://github.com/rstudio/leaflet.providers"
+ url = "https://cloud.r-project.org/src/contrib/leaflet.providers_1.9.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/leaflet.providers"
+
+ version('1.9.0', sha256='9e8fc75c83313ab24663c2e718135459599549ed6e7396086cacb44e36cfd67b')
+
+ depends_on('r@2.10:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-leaflet/package.py b/var/spack/repos/builtin/packages/r-leaflet/package.py
index 0a8bcdf638..810c6e4e8a 100644
--- a/var/spack/repos/builtin/packages/r-leaflet/package.py
+++ b/var/spack/repos/builtin/packages/r-leaflet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RLeaflet(RPackage):
- """Create and customize interactive maps using the 'Leaflet' JavaScript
+ """Create Interactive Web Maps with the JavaScript 'Leaflet' Library
+
+ Create and customize interactive maps using the 'Leaflet' JavaScript
library and the 'htmlwidgets' package. These maps can be used directly from
the R console, from 'RStudio', in Shiny apps and R Markdown documents."""
@@ -15,6 +17,7 @@ class RLeaflet(RPackage):
url = "https://cloud.r-project.org/src/contrib/leaflet_1.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/leaflet"
+ version('2.0.4.1', sha256='b0f038295f1de5d32d9ffa1d0dbc1562320190f2f1365f3a5e95863fff88901f')
version('2.0.2', sha256='fa448d20940e01e953e0706fc5064b0fa347e69fa967792599eb03c52b2e3114')
version('2.0.1', sha256='9876d5adf3235ea5683db79ec2435d3997c626774e8c4ec4ef14022e24dfcf06')
version('1.0.1', sha256='f25a8e10c9616ccb5504bb874c533bc44fb7e438e073d4fe4484dee0951a9bc3')
@@ -32,3 +35,4 @@ class RLeaflet(RPackage):
depends_on('r-scales@1.0.0:', type=('build', 'run'))
depends_on('r-sp', type=('build', 'run'))
depends_on('r-viridis@0.5.1:', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-leaflet-providers@1.8.0:', when='@2.0.4.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-leafpop/package.py b/var/spack/repos/builtin/packages/r-leafpop/package.py
new file mode 100644
index 0000000000..853de99735
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-leafpop/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+# ----------------------------------------------------------------------------
+from spack import *
+
+
+class RLeafpop(RPackage):
+ """Include Tables, Images and Graphs in Leaflet Pop-Ups
+
+ Creates 'HTML' strings to embed tables, images or graphs in pop-ups of
+ interactive maps created with packages like 'leaflet' or 'mapview'. Handles
+ local images located on the file system or via remote URL. Handles graphs
+ created with 'lattice' or 'ggplot2' as well as interactive plots created
+ with 'htmlwidgets'."""
+
+ homepage = "https://github.com/r-spatial/leafpop"
+ cran = "leafpop"
+
+ version('0.0.6', sha256='3d9ca31d081ce8540a87790786840bde5f833543af608c53a26623c7874e722f')
+
+ depends_on('r-base64enc', type=('build', 'run'))
+ depends_on('r-brew', type=('build', 'run'))
+ depends_on('r-htmltools', type=('build', 'run'))
+ depends_on('r-htmlwidgets', type=('build', 'run'))
+ depends_on('r-sf', type=('build', 'run'))
+ depends_on('r-svglite', type=('build', 'run'))
+ depends_on('r-uuid', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-leaps/package.py b/var/spack/repos/builtin/packages/r-leaps/package.py
index 9697c64cd3..e42a226656 100644
--- a/var/spack/repos/builtin/packages/r-leaps/package.py
+++ b/var/spack/repos/builtin/packages/r-leaps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,14 @@ from spack import *
class RLeaps(RPackage):
- """leaps: Regression Subset Selection"""
+ """Regression Subset Selection
+
+ Regression subset selection, including exhaustive search.
+ """
homepage = "https://cloud.r-project.org/package=leaps"
url = "https://cloud.r-project.org/src/contrib/leaps_3.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/leaps"
+ version('3.1', sha256='3d7c3a102ce68433ecf167ece96a7ebb4207729e4defd0ac8fc00e7003f5c3b6')
version('3.0', sha256='55a879cdad5a4c9bc3b5697dd4d364b3a094a49d8facb6692f5ce6af82adf285')
diff --git a/var/spack/repos/builtin/packages/r-learnbayes/package.py b/var/spack/repos/builtin/packages/r-learnbayes/package.py
index 542f02585e..a0da3a3998 100644
--- a/var/spack/repos/builtin/packages/r-learnbayes/package.py
+++ b/var/spack/repos/builtin/packages/r-learnbayes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-leiden/package.py b/var/spack/repos/builtin/packages/r-leiden/package.py
index caee6431bf..48012c4a08 100644
--- a/var/spack/repos/builtin/packages/r-leiden/package.py
+++ b/var/spack/repos/builtin/packages/r-leiden/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RLeiden(RPackage):
- """Implements the 'Python leidenalg' module to be called in R. Enables
+ """R Implementation of Leiden Clustering Algorithm
+
+ Implements the 'Python leidenalg' module to be called in R. Enables
clustering using the leiden algorithm for partition a graph into
communities. See the 'Python' repository for more details:
<https://github.com/vtraag/leidenalg> Traag et al (2018) From Louvain
@@ -18,6 +20,7 @@ class RLeiden(RPackage):
url = "https://cloud.r-project.org/src/contrib/leiden_0.3.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/leiden"
+ version('0.3.6', sha256='a7096e38c4010b1f0baf6a7e1139362520b44c0e548b0b79584cb827172822cc')
version('0.3.1', sha256='17fa1e49667fdd30ef5166506181c8514ae406f68f0878a026ee111bff11f8a5')
depends_on('r-reticulate', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lfe/package.py b/var/spack/repos/builtin/packages/r-lfe/package.py
index 08d061330d..34c0d756ae 100644
--- a/var/spack/repos/builtin/packages/r-lfe/package.py
+++ b/var/spack/repos/builtin/packages/r-lfe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,13 +6,25 @@
from spack import *
-class RLfe(AutotoolsPackage):
- """Transforms away factors with many levels prior to doing an OLS"""
+class RLfe(RPackage):
+ """Linear Group Fixed Effects
+
+ Transforms away factors with many levels prior to doing an OLS. Useful for
+ estimating linear models with multiple group fixed effects, and for
+ estimating linear models which uses factors with many levels as pure
+ control variables. See Gaure (2013) <doi:10.1016/j.csda.2013.03.024>
+ Includes support for instrumental variables, conditional F statistics for
+ weak instruments, robust and multi-way clustered standard errors, as well
+ as limited mobility bias correction (Gaure 2014 <doi:10.1002/sta4.68>).
+ WARNING: This package is NOT under active development anymore, no further
+ improvements are to be expected, and the package is at risk of being
+ removed from CRAN."""
homepage = "https://cloud.r-project.org/package=lfe"
url = "https://cloud.r-project.org/src/contrib/lfe_2.8-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lfe"
+ version('2.8-6', sha256='bf5fd362e9722e871a5236f30da562c489ae6506b667609b9465eefa8f101612')
version('2.8-5', sha256='fd80c573d334594db933ff38f67bd4c9f899aaf648c3bd68f19477a0059723c2')
version('2.8-4', sha256='ee5f6e312214aa73e285ae84a6bdf49ba10e830f1a68ffded2fea2e532f2cd6a')
diff --git a/var/spack/repos/builtin/packages/r-lhs/package.py b/var/spack/repos/builtin/packages/r-lhs/package.py
index ac3ff14dba..5345e696d1 100644
--- a/var/spack/repos/builtin/packages/r-lhs/package.py
+++ b/var/spack/repos/builtin/packages/r-lhs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RLhs(RPackage):
- """Provides a number of methods for creating and augmenting Latin Hypercube
- Samples."""
+ """Latin Hypercube Samples
+
+ Provides a number of methods for creating and augmenting Latin Hypercube
+ Samples."""
homepage = "http://lhs.r-forge.r-project.org/"
url = "https://cloud.r-project.org/src/contrib/lhs_0.16.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lhs"
+ version('1.1.1', sha256='903e9f2adde87f6f9ad41dd52ff83d28a645dba69934c7535142cb48f10090dc')
version('1.0.1', sha256='a4d5ac0c6f585f2880364c867fa94e6554698beb65d3678ba5938dd84fc6ea53')
version('1.0', sha256='38c53482b360bdea89ddcfadf6d45476c80b99aee8902f97c5e97975903e2745')
version('0.16', sha256='9cd199c3b5b2be1736d585ef0fd39a00e31fc015a053333a7a319668d0809425')
diff --git a/var/spack/repos/builtin/packages/r-libcoin/package.py b/var/spack/repos/builtin/packages/r-libcoin/package.py
index 7fab441ea2..ee39d155db 100644
--- a/var/spack/repos/builtin/packages/r-libcoin/package.py
+++ b/var/spack/repos/builtin/packages/r-libcoin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RLibcoin(RPackage):
- """Basic infrastructure for linear test statistics and permutation
+ """Linear Test Statistics for Permutation Inference
+
+ Basic infrastructure for linear test statistics and permutation
inference in the framework of Strasser and Weber (1999)
<http://epub.wu.ac.at/102/>. This package must not be used by end-users.
CRAN package 'coin' implements all user interfaces and is ready to be used
@@ -17,6 +19,7 @@ class RLibcoin(RPackage):
url = "https://cloud.r-project.org/src/contrib/libcoin_1.0-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/libcoin"
+ version('1.0-6', sha256='48afc1415fc89b29e4f2c8b6f6db3cffef1531580e5c806ad7cacf4afe6a4e5a')
version('1.0-4', sha256='91dcbaa0ab8c2109aa54c3eda29ad0acd67c870efcda208e27acce9d641c09c5')
depends_on('r@3.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lifecycle/package.py b/var/spack/repos/builtin/packages/r-lifecycle/package.py
new file mode 100644
index 0000000000..32cf89d8cb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-lifecycle/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RLifecycle(RPackage):
+ """Manage the Life Cycle of your Package Functions
+
+ Manage the life cycle of your exported functions with shared conventions,
+ documentation badges, and non-invasive deprecation warnings. The
+ 'lifecycle' package defines four development stages (experimental,
+ maturing, stable, and questioning) and three deprecation stages
+ (soft-deprecated, deprecated, and defunct). It makes it easy to insert
+ badges corresponding to these stages in your documentation. Usage of
+ deprecated functions are signalled with increasing levels of non-invasive
+ verbosity."""
+
+ homepage = "https://lifecycle.r-lib.org/"
+ url = "https://cloud.r-project.org/src/contrib/lifecycle_0.2.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/lifecycle"
+
+ version('0.2.0', sha256='29746e8dee05d4e36f9c612e8c7a903a4f648a36b3b94c9776e518c38a412224')
+
+ depends_on('r@3.2:', type=('build', 'run'))
+ depends_on('r-glue', type=('build', 'run'))
+ depends_on('r-rlang@0.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-limma/package.py b/var/spack/repos/builtin/packages/r-limma/package.py
index fcefd3ec67..f0fe8822f4 100644
--- a/var/spack/repos/builtin/packages/r-limma/package.py
+++ b/var/spack/repos/builtin/packages/r-limma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RLimma(RPackage):
- """Linear Models for Microarray Data.
+ """Linear Models for Microarray Data
Data analysis, linear models and differential expression for microarray
data."""
@@ -15,6 +15,7 @@ class RLimma(RPackage):
homepage = "https://bioconductor.org/packages/limma"
git = "https://git.bioconductor.org/packages/limma.git"
+ version('3.46.0', commit='ff03542231827f39ebde6464cdbba0110e24364e')
version('3.40.6', commit='3ae0767ecf7a764030e7b7d0b1d0f292c0b24055')
version('3.38.3', commit='77b292eb150cdedaa1db704bcfb01f0bb29e9849')
version('3.36.5', commit='3148d1cb7eea9c6bdd60351d51abcfd665332d44')
@@ -22,5 +23,4 @@ class RLimma(RPackage):
version('3.32.10', commit='593edf28e21fe054d64137ae271b8a52ab05bc60')
depends_on('r@2.3.0:', type=('build', 'run'))
-
depends_on('r@3.6.0:', when='@3.40.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-limsolve/package.py b/var/spack/repos/builtin/packages/r-limsolve/package.py
new file mode 100644
index 0000000000..f7b6208dd0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-limsolve/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RLimsolve(RPackage):
+ """Solving Linear Inverse Models
+
+ Functions that (1) find the minimum/maximum of a linear or quadratic
+ function: min or max (f(x)), where f(x) = ||Ax-b||^2 or f(x) = sum(a_i*x_i)
+ subject to equality constraints Ex=f and/or inequality constraints Gx>=h,
+ (2) sample an underdetermined- or overdetermined system Ex=f subject to
+ Gx>=h, and if applicable Ax~=b, (3) solve a linear system Ax=B for the
+ unknown x. It includes banded and tridiagonal linear systems."""
+
+ homepage = "https://cloud.r-project.org/package=limSolve"
+ url = "https://cloud.r-project.org/src/contrib/limSolve_1.5.6.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/limSolve"
+
+ version('1.5.6', sha256='b97ea9930383634c8112cdbc42f71c4e93fe0e7bfaa8f401921835cb44cb49a0')
+
+ depends_on('r@2.10:', type=('build', 'run'))
+ depends_on('r-quadprog', type=('build', 'run'))
+ depends_on('r-lpsolve', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-listenv/package.py b/var/spack/repos/builtin/packages/r-listenv/package.py
index 962fc1bf6a..f69f469521 100644
--- a/var/spack/repos/builtin/packages/r-listenv/package.py
+++ b/var/spack/repos/builtin/packages/r-listenv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RListenv(RPackage):
- """List environments are environments that have list-like properties. For
+ """Environments Behaving (Almost) as Lists
+
+ List environments are environments that have list-like properties. For
instance, the elements of a list environment are ordered and can be
accessed and iterated over using index subsetting."""
@@ -15,6 +17,7 @@ class RListenv(RPackage):
url = "https://cloud.r-project.org/src/contrib/listenv_0.7.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/listenv"
+ version('0.8.0', sha256='fd2aaf3ff2d8d546ce33d1cb38e68401613975117c1f9eb98a7b41facf5c485f')
version('0.7.0', sha256='6126020b111870baea08b36afa82777cd578e88c17db5435cd137f11b3964555')
depends_on('r@3.1.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lme4/package.py b/var/spack/repos/builtin/packages/r-lme4/package.py
index 32fd1565c0..e8a500f68b 100644
--- a/var/spack/repos/builtin/packages/r-lme4/package.py
+++ b/var/spack/repos/builtin/packages/r-lme4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RLme4(RPackage):
- """Fit linear and generalized linear mixed-effects models. The models and
+ """Linear Mixed-Effects Models using 'Eigen' and S4
+
+ Fit linear and generalized linear mixed-effects models. The models and
their components are represented using S4 classes and methods. The core
computational algorithms are implemented using the 'Eigen' C++ library for
numerical linear algebra and 'RcppEigen' "glue"."""
@@ -16,6 +18,7 @@ class RLme4(RPackage):
url = "https://cloud.r-project.org/src/contrib/lme4_1.1-12.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lme4"
+ version('1.1-26', sha256='364b6d6fb0a574dfed2d75cfdc79411aa53e2c1dd625b70bb1d25d026f9e4253')
version('1.1-21', sha256='7f5554b69ff8ce9bac21e8842131ea940fb7a7dfa2de03684f236d3e3114b20c')
version('1.1-20', sha256='44f45f5cd20ec6a50bf96a939b1db44b1a180dbc871a5e3042baf7a107016b2c')
version('1.1-12', sha256='2976b567a4a2144814ff9db987b0aa55c16122c78ecb51b9e09b87fe66a1c048')
@@ -25,9 +28,10 @@ class RLme4(RPackage):
depends_on('r-matrix@1.2-1:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-boot', when='@1.1-21:', type=('build', 'run'))
depends_on('r-nlme@3.1-123:', type=('build', 'run'))
depends_on('r-minqa@1.1.15:', type=('build', 'run'))
depends_on('r-nloptr@1.0.4:', type=('build', 'run'))
+ depends_on('r-statmod', when='@1.1-26:', type=('build', 'run'))
depends_on('r-rcpp@0.10.5:', type=('build', 'run'))
depends_on('r-rcppeigen', type=('build', 'run'))
- depends_on('r-boot', when='@1.1-21:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lmtest/package.py b/var/spack/repos/builtin/packages/r-lmtest/package.py
index 29bda06982..b55afed4de 100644
--- a/var/spack/repos/builtin/packages/r-lmtest/package.py
+++ b/var/spack/repos/builtin/packages/r-lmtest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RLmtest(RPackage):
- """A collection of tests, data sets, and examples for diagnostic checking
+ """Testing Linear Regression Models
+
+ A collection of tests, data sets, and examples for diagnostic checking
in linear regression models. Furthermore, some generic tools for inference
in parametric models are provided."""
@@ -15,6 +17,7 @@ class RLmtest(RPackage):
url = "https://cloud.r-project.org/src/contrib/lmtest_0.9-34.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lmtest"
+ version('0.9-38', sha256='32a22cea45398ffc5732d9f5c0391431d0cdd3a9e29cc7b77bea32c1eb4a216b')
version('0.9-37', sha256='ddc929f94bf055974832fa4a20fdd0c1eb3a84ee11f716c287936f2141d5ca0a')
version('0.9-36', sha256='be9f168d6554e9cd2be0f9d8fc3244f055dce90d1fca00f05bcbd01daa4ed56b')
version('0.9-34', sha256='86eead67ed6d6c6be3fbee97d5ce45e6ca06a981f974ce01a7754a9e33770d2e')
diff --git a/var/spack/repos/builtin/packages/r-lobstr/package.py b/var/spack/repos/builtin/packages/r-lobstr/package.py
new file mode 100644
index 0000000000..11631adf5f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-lobstr/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RLobstr(RPackage):
+ """A set of tools for inspecting and understanding R data structures
+ inspired by str(). Includes ast() for visualizing abstract syntax trees,
+ ref() for showing shared references, cst() for showing call stack trees,
+ and obj_size() for computing object sizes."""
+
+ homepage = "https://lobstr.r-lib.org"
+ url = "https://cloud.r-project.org/src/contrib/lobstr_1.1.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/lobstr"
+
+ version('1.1.1', sha256='923a384d9239d44b63dfc57f5a0309a1e59b9698ef05183f598f6f4fffb1e0fd')
+ version('1.0.1', sha256='f94d0a207f1b44097907d761c45130be386e908aec4ac472bf2fec6d36c74a69')
+ version('1.0.0', sha256='b9d5dcda36a1c1bd208ddf814f9b5a9c2c8b07730647b98505be7e296b14c883')
+
+ depends_on('r-rlang@0.3.0:', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-crayon', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-locfit/package.py b/var/spack/repos/builtin/packages/r-locfit/package.py
index 1e9b23f275..e1d0518687 100644
--- a/var/spack/repos/builtin/packages/r-locfit/package.py
+++ b/var/spack/repos/builtin/packages/r-locfit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,19 @@ from spack import *
class RLocfit(RPackage):
- """Local regression, likelihood and density estimation."""
+ """Local regression, likelihood and density estimation
+
+ Local regression, likelihood and density estimation methods as described in
+ the 1999 book by Loader.
+ """
homepage = "https://cloud.r-project.org/package=locfit"
url = "https://cloud.r-project.org/src/contrib/locfit_1.5-9.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/locfit"
+ version('1.5-9.4', sha256='d9d3665c5f3d49f698fb4675daf40a0550601e86db3dc00f296413ceb1099ced')
version('1.5-9.1', sha256='f524148fdb29aac3a178618f88718d3d4ac91283014091aa11a01f1c70cd4e51')
depends_on('r@2.0.1:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.5-9.4:', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-log4r/package.py b/var/spack/repos/builtin/packages/r-log4r/package.py
index 194b9c0c71..7937cb223f 100644
--- a/var/spack/repos/builtin/packages/r-log4r/package.py
+++ b/var/spack/repos/builtin/packages/r-log4r/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RLog4r(RPackage):
- """logr4 provides an object-oriented logging system that uses an
+ """A Fast and Lightweight Logging System for R, Based on 'log4j'
+
+ logr4 provides an object-oriented logging system that uses an
API roughly equivalent to log4j and its related variants."""
homepage = "https://cloud.r-project.org/package=log4r"
url = "https://cloud.r-project.org/src/contrib/log4r_0.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/log4r"
+ version('0.3.2', sha256='14ba6b096283279f0accbde26a600771ab2df271db6c8eeb04d6f113107825a3')
version('0.3.0', sha256='8e5d0221298410e48bee9d9a983a23e1834ce88592f9d931471bfdb05f37a691')
version('0.2', sha256='321bee6babb92376b538624027a36e7d2a6c8edb360aa38ab0a6762dfea9081f')
diff --git a/var/spack/repos/builtin/packages/r-loo/package.py b/var/spack/repos/builtin/packages/r-loo/package.py
index 9bbef0ee79..dd5fb9c4e6 100644
--- a/var/spack/repos/builtin/packages/r-loo/package.py
+++ b/var/spack/repos/builtin/packages/r-loo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,28 @@ from spack import *
class RLoo(RPackage):
- """loo: Efficient Leave-One-Out Cross-Validation and WAIC for
- BayesianModels"""
+ """Efficient Leave-One-Out Cross-Validation and WAIC for BayesianModels
+
+ Efficient approximate leave-one-out cross-validation (LOO) for Bayesian
+ models fit using Markov chain Monte Carlo, as described in Vehtari,
+ Gelman, and Gabry (2017) <doi:10.1007/s11222-016-9696-4>. The
+ approximation uses Pareto smoothed importance sampling (PSIS), a new
+ procedure for regularizing importance weights. As a byproduct of the
+ calculations, we also obtain approximate standard errors for estimated
+ predictive errors and for the comparison of predictive errors between
+ models. The package also provides methods for using stacking and other
+ model weighting techniques to average Bayesian predictive
+ distributions."""
homepage = "https://mc-stan.org/loo"
url = "https://cloud.r-project.org/src/contrib/loo_2.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/loo"
+ version('2.4.1', sha256='bc21fb6b4a93a7e95ee1be57e4e787d731895fb8b4743c26b30b43adee475b50')
+ version('2.3.1', sha256='d98de21b71d9d9386131ae5ba4da051362c3ad39e0305af4f33d830f299ae08b')
version('2.1.0', sha256='1bf4a1ef85d151577ff96d4cf2a29c9ef24370b0b1eb08c70dcf45884350e87d')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.1.2:', type=('build', 'run'))
depends_on('r-checkmate', type=('build', 'run'))
depends_on('r-matrixstats@0.52:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lpsolve/package.py b/var/spack/repos/builtin/packages/r-lpsolve/package.py
index ec40ba1553..df8da2622e 100644
--- a/var/spack/repos/builtin/packages/r-lpsolve/package.py
+++ b/var/spack/repos/builtin/packages/r-lpsolve/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,19 @@ from spack import *
class RLpsolve(RPackage):
- """Lp_solve is freely available (under LGPL 2) software for solving
- linear, integer and mixed integer programs. In this
- implementation we supply a "wrapper" function in C and some R
- functions that solve general linear/integer problems, assignment
- problems, and transportation problems. This version calls
- lp_solve"""
+ """Interface to 'Lp_solve' v. 5.5 to Solve Linear/Integer Programs
+
+ Lp_solve is freely available (under LGPL 2) software for solving linear,
+ integer and mixed integer programs. In this implementation we supply a
+ "wrapper" function in C and some R functions that solve general
+ linear/integer problems, assignment problems, and transportation problems.
+ This version calls lp_solve"""
homepage = "https://cloud.r-project.org/package=lpSolve"
url = "https://cloud.r-project.org/src/contrib/lpSolve_5.6.13.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lpSolve"
+ version('5.6.15', sha256='4627be4178abad34fc85a7d264c2eb5e27506f007e46687b0b8a4f8fbdf4f3ba')
version('5.6.13.2', sha256='75f0c0af5cbdc219ac29c792342ecd625903632ad86e581c408879958aa88539')
version('5.6.13.1', sha256='6ad8dc430f72a4698fc4a615bb5ecb73690b3c4520e84d9094af51a528f720b8')
version('5.6.13', sha256='d5d41c53212dead4fd8e6425a9d3c5767cdc5feb19d768a4704116d791cf498d')
diff --git a/var/spack/repos/builtin/packages/r-lsei/package.py b/var/spack/repos/builtin/packages/r-lsei/package.py
index 0b69b60b3e..83660f47d1 100644
--- a/var/spack/repos/builtin/packages/r-lsei/package.py
+++ b/var/spack/repos/builtin/packages/r-lsei/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,18 @@ from spack import *
class RLsei(RPackage):
- """It contains functions that solve least squares linear regression
- problems under linear equality/inequality constraints. Functions for
- solving quadratic programming problems are also available, which
- transform such problems into least squares ones first. It is developed
- based on the 'Fortran' program of Lawson and Hanson (1974, 1995), which
- is public domain and available at
- <http://www.netlib.org/lawson-hanson>."""
+ """Solving Least Squares or Quadratic Programming Problems under Equality/Inequality Constraints
+
+ It contains functions that solve least squares linear regression problems
+ under linear equality/inequality constraints. Functions for solving
+ quadratic programming problems are also available, which transform such
+ problems into least squares ones first. It is developed based on the
+ 'Fortran' program of Lawson and Hanson (1974, 1995), which is public domain
+ and available at <http://www.netlib.org/lawson-hanson>."""
homepage = "https://cloud.r-project.org/package=lsei"
url = "https://cloud.r-project.org/src/contrib/lsei_1.2-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lsei"
+ version('1.3-0', sha256='6289058f652989ca8a5ad6fa324ce1762cc9e36c42559c00929b70f762066ab6')
version('1.2-0', sha256='4781ebd9ef93880260d5d5f23066580ac06061e95c1048fb25e4e838963380f6')
diff --git a/var/spack/repos/builtin/packages/r-lubridate/package.py b/var/spack/repos/builtin/packages/r-lubridate/package.py
index 3fb1f2ddd2..621945e1fb 100644
--- a/var/spack/repos/builtin/packages/r-lubridate/package.py
+++ b/var/spack/repos/builtin/packages/r-lubridate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RLubridate(RPackage):
- """Functions to work with date-times and timespans: fast and user friendly
+ """Make Dealing with Dates a Little Easier
+
+ Functions to work with date-times and timespans: fast and user friendly
parsing of date-time data, extraction and updating of components of a
date-time (years, months, days, hours, minutes, and seconds), algebraic
manipulation on date-time and timespan objects. The 'lubridate' package has
@@ -18,11 +20,14 @@ class RLubridate(RPackage):
url = "https://cloud.r-project.org/src/contrib/lubridate_1.7.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/lubridate"
+ version('1.7.9.2', sha256='ee6a2d68faca51646477acd1898ba774bf2b6fd474a0abf351b16aa5e7a3db79')
version('1.7.4', sha256='510ca87bd91631c395655ee5029b291e948b33df09e56f6be5839f43e3104891')
version('1.7.3', sha256='2cffbf54afce1d068e65241fb876a77b10ee907d5a19d2ffa84d5ba8a2c3f3df')
version('1.7.1', sha256='898c3f482ab8f5e5b415eecd13d1238769c88faed19b63fcb074ffe5ff57fb5f')
version('1.5.6', sha256='9b1627ba3212e132ce2b9a29d7513e250cc682ab9b4069f6788a22e84bf8d2c4')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r@3.2:', when='@1.7.9.2:', type=('build', 'run'))
+ depends_on('r-generics', when='@1.7.9.2:', type=('build', 'run'))
depends_on('r-rcpp@0.12.13:', type=('build', 'run'))
- depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-stringr', when='@:1.7.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lumi/package.py b/var/spack/repos/builtin/packages/r-lumi/package.py
index d79de8d662..d12eb1de9a 100644
--- a/var/spack/repos/builtin/packages/r-lumi/package.py
+++ b/var/spack/repos/builtin/packages/r-lumi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,10 @@ from spack import *
class RLumi(RPackage):
- """The lumi package provides an integrated solution for the Illumina
+ """BeadArray Specific Methods for Illumina Methylation and Expression
+ Microarrays
+
+ The lumi package provides an integrated solution for the Illumina
microarray data analysis. It includes functions of Illumina BeadStudio
(GenomeStudio) data input, quality control, BeadArray-specific variance
stabilization, normalization and gene annotation at the probe level. It
@@ -17,6 +20,7 @@ class RLumi(RPackage):
homepage = "https://bioconductor.org/packages/release/bioc/html/lumi.html"
git = "https://git.bioconductor.org/packages/lumi"
+ version('2.42.0', commit='a643b3ba46fee951b8566ddd8216af7e6c92f6f6')
version('2.38.0', commit='321d480d44ce9a0c02ce5af1bddc1f549abdea59')
depends_on('r@2.10:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lwgeom/package.py b/var/spack/repos/builtin/packages/r-lwgeom/package.py
new file mode 100644
index 0000000000..140bd6113e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-lwgeom/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RLwgeom(RPackage):
+ """Bindings to Selected 'liblwgeom' Functions for Simple Features
+
+ Access to selected functions found in 'liblwgeom'
+ <https://github.com/postgis/postgis/tree/master/liblwgeom>, the
+ light-weight geometry library used by 'PostGIS' <http://postgis.net/>."""
+
+ homepage = "https://github.com/r-spatial/lwgeom/"
+ cran = "lwgeom"
+
+ version('0.2-5', sha256='4a1d93f96c10c2aac173d8186cf7d7bef7febcb3cf066a7f45da32251496d02f')
+
+ depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-units', type=('build', 'run'))
+ depends_on('r-sf@0.9-3:', type=('build', 'run'))
+ depends_on('geos@3.5.0:')
+ depends_on('proj@4.8.0:6.999')
diff --git a/var/spack/repos/builtin/packages/r-magic/package.py b/var/spack/repos/builtin/packages/r-magic/package.py
index 58d39c239f..1f98d82853 100644
--- a/var/spack/repos/builtin/packages/r-magic/package.py
+++ b/var/spack/repos/builtin/packages/r-magic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-magick/package.py b/var/spack/repos/builtin/packages/r-magick/package.py
index 7c314ad081..5488cb463f 100644
--- a/var/spack/repos/builtin/packages/r-magick/package.py
+++ b/var/spack/repos/builtin/packages/r-magick/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RMagick(RPackage):
- """Bindings to 'ImageMagick': the most comprehensive open-source image
+ """Advanced Graphics and Image-Processing in R
+
+ Bindings to 'ImageMagick': the most comprehensive open-source image
processing library available. Supports many common formats (png, jpeg,
tiff, pdf, etc) and manipulations (rotate, scale, crop, trim, flip, blur,
etc). All operations are vectorized via the Magick++ STL meaning they
@@ -22,8 +24,10 @@ class RMagick(RPackage):
url = "https://cloud.r-project.org/src/contrib/magick_2.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/magick"
+ version('2.6.0', sha256='66585336e3ff18793ae9e2726af67a6672622f270468670ab5fe5e013bc48ecc')
version('2.1', sha256='ef4fb8fc1c5a9cfcc36b22485a0e17d622f61e55803b1e7423fd15f0550de7df')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-rcpp@0.12.12:', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-curl', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-magrittr/package.py b/var/spack/repos/builtin/packages/r-magrittr/package.py
index 1e3c697da9..a0d2f4fecc 100644
--- a/var/spack/repos/builtin/packages/r-magrittr/package.py
+++ b/var/spack/repos/builtin/packages/r-magrittr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RMagrittr(RPackage):
- """Provides a mechanism for chaining commands with a new forward-pipe
+ """A Forward-Pipe Operator for R
+
+ Provides a mechanism for chaining commands with a new forward-pipe
operator, %>%. This operator will forward a value, or the result of an
expression, into the next function call/expression. There is flexible
support for the type of right-hand side expressions. For more information,
@@ -17,4 +19,5 @@ class RMagrittr(RPackage):
url = "https://cloud.r-project.org/src/contrib/magrittr_1.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/magrittr"
+ version('2.0.1', sha256='75c265d51cc2b34beb27040edb09823c7b954d3990a7a931e40690b75d4aad5f')
version('1.5', sha256='05c45943ada9443134caa0ab24db4a962b629f00b755ccf039a2a2a7b2c92ae8')
diff --git a/var/spack/repos/builtin/packages/r-makecdfenv/package.py b/var/spack/repos/builtin/packages/r-makecdfenv/package.py
index 8687d61be7..1d3b968b8c 100644
--- a/var/spack/repos/builtin/packages/r-makecdfenv/package.py
+++ b/var/spack/repos/builtin/packages/r-makecdfenv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RMakecdfenv(RPackage):
- """CDF Environment Maker.
+ """CDF Environment Maker
This package has two functions. One reads a Affymetrix chip description
file (CDF) and creates a hash table environment containing the
@@ -17,6 +17,7 @@ class RMakecdfenv(RPackage):
homepage = "https://bioconductor.org/packages/makecdfenv"
git = "https://git.bioconductor.org/packages/makecdfenv.git"
+ version('1.66.0', commit='02aa975d543089f5495cb3b4e8edbcf0ff05148a')
version('1.60.0', commit='900ece3ecd7a0ade9f8a0374e5a03def4e079cb3')
version('1.58.0', commit='6f513e39c4920a6da10d22718fc3bf278fe5ffe2')
version('1.56.0', commit='f6b48e9a9f18598653d05bc0bdffeae7fefbb327')
diff --git a/var/spack/repos/builtin/packages/r-maldiquant/package.py b/var/spack/repos/builtin/packages/r-maldiquant/package.py
index c032ea5d3b..3175d8f362 100644
--- a/var/spack/repos/builtin/packages/r-maldiquant/package.py
+++ b/var/spack/repos/builtin/packages/r-maldiquant/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-manipulatewidget/package.py b/var/spack/repos/builtin/packages/r-manipulatewidget/package.py
index 225688abae..1d64cd2566 100644
--- a/var/spack/repos/builtin/packages/r-manipulatewidget/package.py
+++ b/var/spack/repos/builtin/packages/r-manipulatewidget/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,18 @@ from spack import *
class RManipulatewidget(RPackage):
- """Like package 'manipulate' does for static graphics, this package helps
- to easily add controls like sliders, pickers, checkboxes, etc. that can
- be used to modify the input data or the parameters of an interactive
- chart created with package 'htmlwidgets'."""
+ """Add Even More Interactivity to Interactive Charts
+
+ Like package 'manipulate' does for static graphics, this package helps to
+ easily add controls like sliders, pickers, checkboxes, etc. that can be
+ used to modify the input data or the parameters of an interactive chart
+ created with package 'htmlwidgets'."""
homepage = "https://github.com/rte-antares-rpackage/manipulateWidget"
url = "https://cloud.r-project.org/src/contrib/manipulateWidget_0.10.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/manipulateWidget/"
+ version('0.10.1', sha256='9d621192121f6b516bc7f1a18305995bfb7838c6683ac701422afc03a50e27ee')
version('0.10.0', sha256='3d61a3d0cedf5c8a850a3e62ed6af38c600dc3f25b44c4ff07a5093bf9ca4ffd')
version('0.9.0', sha256='5bf4bdb702263b0e156f40f3354922a06db7db544e497addcd6c98d9860bf3a3')
version('0.8.0', sha256='e7e6351b1fb8f39b9895e2536fa7c149cbc5d63d7022f67c1b25232cf0706ca7')
@@ -25,11 +28,12 @@ class RManipulatewidget(RPackage):
version('0.5.0', sha256='2599e25f78bb0d748705160e1dfe62a673f5bb388ac5f415f3d649d2511737c8')
version('0.4.0', sha256='65cc7d28c2b2efc81fda35da019ac6e6058580cf0fdf5e31458cc96386c0c599')
- depends_on('r-base64enc', type=('build', 'run'))
- depends_on('r-codetools', type=('build', 'run'))
+ depends_on('r+X', type=('build', 'run'))
+ depends_on('r-shiny@1.0.3:', type=('build', 'run'))
+ depends_on('r-miniui', type=('build', 'run'))
depends_on('r-htmltools', type=('build', 'run'))
depends_on('r-htmlwidgets', type=('build', 'run'))
depends_on('r-knitr', type=('build', 'run'))
- depends_on('r-miniui', type=('build', 'run'))
- depends_on('r-shiny@1.0.3:', type=('build', 'run'))
+ depends_on('r-base64enc', type=('build', 'run'))
+ depends_on('r-codetools', type=('build', 'run'))
depends_on('r-webshot', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mapplots/package.py b/var/spack/repos/builtin/packages/r-mapplots/package.py
index 4417d0ed14..e9e188c074 100644
--- a/var/spack/repos/builtin/packages/r-mapplots/package.py
+++ b/var/spack/repos/builtin/packages/r-mapplots/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-mapproj/package.py b/var/spack/repos/builtin/packages/r-mapproj/package.py
index 095f251306..d0213bf791 100644
--- a/var/spack/repos/builtin/packages/r-mapproj/package.py
+++ b/var/spack/repos/builtin/packages/r-mapproj/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,18 @@ from spack import *
class RMapproj(RPackage):
- """Converts latitude/longitude into projected coordinates."""
+ """Map Projections
+
+ Converts latitude/longitude into projected coordinates."""
homepage = "https://cloud.r-project.org/package=mapproj"
url = "https://cloud.r-project.org/src/contrib/mapproj_1.2-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mapproj"
+ version('1.2.7', sha256='f0081281b08bf3cc7052c4f1360d6d3c20d9063be57754448ad9b48ab0d34c5b')
version('1.2.6', sha256='62a5aa97837ae95ef9f973d95fe45fe43dbbf482dfa922e9df60f3c510e7efe5')
version('1.2-5', sha256='f3026a3a69a550c923b44c18b1ccc60d98e52670a438250d13f3c74cf2195f66')
version('1.2-4', sha256='cf8a1535f57e7cca0a71b3a551e77ad3e7a78f61a94bb19effd3de19dbe7dceb')
depends_on('r@3.0.0:', type=('build', 'run'))
- depends_on('r-maps@2.3:', type=('build', 'run'))
+ depends_on('r-maps@2.3-0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-maps/package.py b/var/spack/repos/builtin/packages/r-maps/package.py
index 2f8132ded3..bdd81fa51b 100644
--- a/var/spack/repos/builtin/packages/r-maps/package.py
+++ b/var/spack/repos/builtin/packages/r-maps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-maptools/package.py b/var/spack/repos/builtin/packages/r-maptools/package.py
index e9c930e3e4..a749d93753 100644
--- a/var/spack/repos/builtin/packages/r-maptools/package.py
+++ b/var/spack/repos/builtin/packages/r-maptools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RMaptools(RPackage):
- """Set of tools for manipulating and reading geographic data, in particular
+ """Tools for Handling Spatial Objects
+
+ Set of tools for manipulating and reading geographic data, in particular
ESRI shapefiles; C code used from shapelib. It includes binary access to
GSHHG shoreline files. The package also provides interface wrappers for
exchanging spatial objects with packages such as PBSmapping, spatstat,
@@ -17,6 +19,7 @@ class RMaptools(RPackage):
url = "https://cloud.r-project.org/src/contrib/maptools_0.8-39.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/maptools"
+ version('1.0-2', sha256='daac6da5817cf0cff17b9e7d4a7cdc7c329574249bd9b1bafdb6c9431e1fee49')
version('0.9-5', sha256='5d9511f09fb49d57a51f28495b02239800596a4fcfad7b03ee1074d793657bdd')
version('0.9-4', sha256='930875f598a516f0f9049fa2fae7391bc9bdf7e3e5db696059ab4ec2fc9ba39c')
version('0.8-39', sha256='4b81e313e45dbb75e0fbb180b02985d1c34aaa5669e483283b632788e6a67dd2')
diff --git a/var/spack/repos/builtin/packages/r-mapview/package.py b/var/spack/repos/builtin/packages/r-mapview/package.py
new file mode 100644
index 0000000000..1faff97e73
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mapview/package.py
@@ -0,0 +1,38 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMapview(RPackage):
+ """Interactive Viewing of Spatial Data in R
+
+ Quickly and conveniently create interactive visualisations of spatial data
+ with or without background maps. Attributes of displayed features are fully
+ queryable via pop-up windows. Additional functionality includes methods to
+ visualise true- and false-color raster images and bounding boxes."""
+
+ homepage = "https://github.com/r-spatial/mapview"
+ cran = "mapview"
+
+ version('2.9.0', sha256='170cb2b5e67cbeb177f87bd2eab1ecabc44a1042addbcd95a85b2ec4a00eb690')
+
+ depends_on('r+X', type=('build', 'run'))
+ depends_on('r@3.6.0:', type=('build', 'run'))
+ depends_on('r-base64enc', type=('build', 'run'))
+ depends_on('r-htmltools', type=('build', 'run'))
+ depends_on('r-htmlwidgets', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-leafem', type=('build', 'run'))
+ depends_on('r-leaflet@2.0.0:', type=('build', 'run'))
+ depends_on('r-leafpop', type=('build', 'run'))
+ depends_on('r-png', type=('build', 'run'))
+ depends_on('r-raster', type=('build', 'run'))
+ depends_on('r-satellite', type=('build', 'run'))
+ depends_on('r-scales@0.2.5:', type=('build', 'run'))
+ depends_on('r-sf', type=('build', 'run'))
+ depends_on('r-sp', type=('build', 'run'))
+ depends_on('r-webshot', type=('build', 'run'))
+ depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-markdown/package.py b/var/spack/repos/builtin/packages/r-markdown/package.py
index ad966e7486..d50178b1e5 100644
--- a/var/spack/repos/builtin/packages/r-markdown/package.py
+++ b/var/spack/repos/builtin/packages/r-markdown/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-marray/package.py b/var/spack/repos/builtin/packages/r-marray/package.py
new file mode 100644
index 0000000000..1a994b5d5c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-marray/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMarray(RPackage):
+ """Exploratory analysis for two-color spotted microarray data:
+
+ Class definitions for two-color spotted microarray data. Fuctions for data
+ input, diagnostic plots, normalization and quality checking."""
+
+ homepage = "http://www.maths.usyd.edu.au/u/jeany/"
+ bioc = "marray"
+
+ version('1.68.0', commit='67b3080486abdba7dd19fccd7fb731b0e8b5b3f9')
+
+ depends_on('r@2.10.0:', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mass/package.py b/var/spack/repos/builtin/packages/r-mass/package.py
index 96cac84566..d913a4a7ef 100644
--- a/var/spack/repos/builtin/packages/r-mass/package.py
+++ b/var/spack/repos/builtin/packages/r-mass/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RMass(RPackage):
- """Functions and datasets to support Venables and Ripley, "Modern Applied
+ """Support Functions and Datasets for Venables and Ripley's MASS
+
+ Functions and datasets to support Venables and Ripley, "Modern Applied
Statistics with S" (4th edition, 2002)."""
homepage = "https://cloud.r-project.org/package=MASS"
url = "https://cloud.r-project.org/src/contrib/MASS_7.3-47.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/MASS"
+ version('7.3-53', sha256='41824e70ada302a620226c0f17b1b2c880c6d1a3a100b53bd6df8e8c97e64b38')
version('7.3-51.5', sha256='464c0615cef01820cde2bb8457e81575d6755ae9b3ac99f3bfaaac47d43d15cc')
version('7.3-51.4', sha256='844270a2541eaed420871dfb61d681aa67ee57126645fb6b144b436c25698eeb')
version('7.3-51.3', sha256='5b0e0e7704d43a94b08dcc4b3fe600b9723d1b3e446dd393e82d39ddf66608b6')
diff --git a/var/spack/repos/builtin/packages/r-mathjaxr/package.py b/var/spack/repos/builtin/packages/r-mathjaxr/package.py
new file mode 100644
index 0000000000..455a3ef32c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mathjaxr/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMathjaxr(RPackage):
+ """Using 'Mathjax' in Rd Files
+
+ Provides 'MathJax' and macros to enable its use within Rd files for
+ rendering equations in the HTML help files."""
+
+ homepage = "https://github.com/wviechtb/mathjaxr"
+ url = "https://cloud.r-project.org/src/contrib/mathjaxr_1.0-1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/mathjaxr"
+
+ version('1.0-1', sha256='0d3d370c4d0c7c7c6d5541d4e0ae50170b4084ca8a66e8a43bd92c7d1c112148')
diff --git a/var/spack/repos/builtin/packages/r-matlab/package.py b/var/spack/repos/builtin/packages/r-matlab/package.py
index 221f5f7b31..86e2f5bffc 100644
--- a/var/spack/repos/builtin/packages/r-matlab/package.py
+++ b/var/spack/repos/builtin/packages/r-matlab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-matr/package.py b/var/spack/repos/builtin/packages/r-matr/package.py
index ad8bc3370a..3516e1b901 100644
--- a/var/spack/repos/builtin/packages/r-matr/package.py
+++ b/var/spack/repos/builtin/packages/r-matr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-matrix/package.py b/var/spack/repos/builtin/packages/r-matrix/package.py
index 07140d08ec..f3648f0ce0 100644
--- a/var/spack/repos/builtin/packages/r-matrix/package.py
+++ b/var/spack/repos/builtin/packages/r-matrix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,19 +7,25 @@ from spack import *
class RMatrix(RPackage):
- """Classes and methods for dense and sparse matrices and operations on them
- using 'LAPACK' and 'SuiteSparse'."""
+ """Sparse and Dense Matrix Classes and Methods
+
+ A rich hierarchy of matrix classes, including triangular, symmetric, and
+ diagonal matrices, both dense and sparse and with pattern, logical and
+ numeric entries. Numerous methods for and operations on these matrices,
+ using 'LAPACK' and 'SuiteSparse' libraries."""
homepage = "http://matrix.r-forge.r-project.org/"
url = "https://cloud.r-project.org/src/contrib/Matrix_1.2-14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Matrix"
+ version('1.3-2', sha256='950ba5d91018e711fd2743b3486a50dc47ae9c271389fce587792f0a9aab9531')
version('1.2-17', sha256='db43e6f0196fd5dfd05a7e88cac193877352c60d771d4ec8772763e645723fcc')
version('1.2-14', sha256='49a6403547b66675cb44c1afb04bb87130c054510cb2b94971435a826ab41396')
version('1.2-11', sha256='ba8cd6565612552fe397e909721817b6cc0604a91299d56d118208006888dc0b')
version('1.2-8', sha256='3cd2a187c45fc18a0766dc148b7f83dbf6f2163c256e887c41cbaa7c9a20dbb7')
version('1.2-6', sha256='4b49b639b7bf612fa3d1c1b1c68125ec7859c8cdadae0c13f499f24099fd5f20')
- depends_on('r@3.0.1:', when='@:1.2-12', type=('build', 'run'))
+ depends_on('r@3.0.1:', type=('build', 'run'))
depends_on('r@3.2.0:', when='@1.2.13:', type=('build', 'run'))
+ depends_on('r@3.6.0:', when='@1.3-2:', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-matrixgenerics/package.py b/var/spack/repos/builtin/packages/r-matrixgenerics/package.py
new file mode 100644
index 0000000000..daf207f782
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-matrixgenerics/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMatrixgenerics(RPackage):
+ """S4 Generic Summary Statistic Functions that Operate on Matrix-Like Objects
+
+ S4 generic functions modeled after the 'matrixStats' API for alternative
+ matrix implementations. Packages with alternative matrix implementation can
+ depend on this package and implement the generic functions that are defined
+ here for a useful set of row and column summary statistics. Other package
+ developers can import this package and handle a different matrix
+ implementations without worrying about incompatibilities."""
+
+ homepage = "https://bioconductor.org/packages/MatrixGenerics"
+ git = "https://git.bioconductor.org/packages/MatrixGenerics"
+
+ version('1.2.1', commit='abcc9ca0504e0b915cd7933a3169a8e9e5bd2fe9')
+
+ depends_on('r-matrixstats@0.57.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-matrixmodels/package.py b/var/spack/repos/builtin/packages/r-matrixmodels/package.py
index 98de8f80c3..2962bf5b46 100644
--- a/var/spack/repos/builtin/packages/r-matrixmodels/package.py
+++ b/var/spack/repos/builtin/packages/r-matrixmodels/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-matrixstats/package.py b/var/spack/repos/builtin/packages/r-matrixstats/package.py
index 9bebc7ad9d..8559edd0f4 100644
--- a/var/spack/repos/builtin/packages/r-matrixstats/package.py
+++ b/var/spack/repos/builtin/packages/r-matrixstats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,20 @@ from spack import *
class RMatrixstats(RPackage):
- """High-performing functions operating on rows and columns of matrices,
- e.g. col / rowMedians(), col / rowRanks(), and col / rowSds(). Functions
- optimized per data type and for subsetted calculations such that both
- memory usage and processing time is minimized. There are also optimized
- vector-based methods, e.g. binMeans(), madDiff() and
- weightedMedian()."""
+ """Functions that Apply to Rows and Columns of Matrices (and to Vectors)
+
+ High-performing functions operating on rows and columns of matrices, e.g.
+ col / rowMedians(), col / rowRanks(), and col / rowSds(). Functions
+ optimized per data type and for subsetted calculations such that both
+ memory usage and processing time is minimized. There are also optimized
+ vector-based methods, e.g. binMeans(), madDiff() and weightedMedian()."""
homepage = "https://cloud.r-project.org/package=matrixStats"
url = "https://cloud.r-project.org/src/contrib/matrixStats_0.52.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/matrixStats"
+ version('0.58.0', sha256='8367b4b98cd24b6e40022cb2b11e907aa0bcf5ee5b2f89fefb186f53661f4b49')
+ version('0.57.0', sha256='f9681887cd3b121762c83f55f189cae26cb8443efce91fcd212ac714fde9f343')
version('0.55.0', sha256='16d6bd90eee4cee8df4c15687de0f9b72730c03e56603c2998007d4533e8db19')
version('0.54.0', sha256='8f0db4e181300a208b9aedbebfdf522a2626e6675d2662656efb8ba71b05a06f')
version('0.52.2', sha256='39da6aa6b109f89a141dab8913d981abc4fbd3f8be9e206f92e382cc5270d2a5')
diff --git a/var/spack/repos/builtin/packages/r-mclust/package.py b/var/spack/repos/builtin/packages/r-mclust/package.py
index f0936a9e82..de7a31732d 100644
--- a/var/spack/repos/builtin/packages/r-mclust/package.py
+++ b/var/spack/repos/builtin/packages/r-mclust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,19 @@ from spack import *
class RMclust(RPackage):
- """mclust: Gaussian Mixture Modelling for Model-Based Clustering,
- Classification, and Density Estimation"""
+ """Gaussian Mixture Modelling for Model-Based Clustering, Classification,
+ and Density Estimation
+
+ Gaussian finite mixture models fitted via EM algorithm for model-based
+ clustering, classification, and density estimation, including Bayesian
+ regularization, dimension reduction for visualisation, and resampling-based
+ inference."""
homepage = "http://www.stat.washington.edu/mclust"
url = "https://cloud.r-project.org/src/contrib/mclust_5.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mclust"
+ version('5.4.7', sha256='45f5a666caee5bebd3160922b8655295a25e37f624741f6574365e4ac5a14c23')
version('5.4.5', sha256='75f2963082669485953e4306ffa93db98335ee6afdc1318b95d605d56cb30a72')
version('5.4.4', sha256='ccc31b0ad445e121a447b04988e73232a085c506fcc7ebdf11a3e0754aae3e0d')
version('5.3', sha256='2b1b6d8266ae16b0e96f118df81559f208a568744a7c105af9f9abf1eef6ba40')
diff --git a/var/spack/repos/builtin/packages/r-mcmc/package.py b/var/spack/repos/builtin/packages/r-mcmc/package.py
new file mode 100644
index 0000000000..5e634290fe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mcmc/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMcmc(RPackage):
+ """Markov Chain Monte Carlo:
+
+ Simulates continuous distributions of random vectors using Markov chain
+ Monte Carlo (MCMC). Users specify the distribution by an R function that
+ evaluates the log unnormalized density. Algorithms are random walk
+ Metropolis algorithm (function metrop), simulated tempering (function
+ temper), and morphometric random walk Metropolis (Johnson and Geyer, 2012,
+ <doi:10.1214/12-AOS1048>, function morph.metrop), which achieves geometric
+ ergodicity by change of variable."""
+
+ homepage = "http://www.stat.umn.edu/geyer/mcmc/"
+ cran = "mcmc"
+
+ version('0.9-7', sha256='b7c4d3d5f9364c67a4a3cd49296a61c315ad9bd49324a22deccbacb314aa8260')
+
+ depends_on('r@3.0.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mcmcglmm/package.py b/var/spack/repos/builtin/packages/r-mcmcglmm/package.py
index 52f8104b40..7ac91659d0 100644
--- a/var/spack/repos/builtin/packages/r-mcmcglmm/package.py
+++ b/var/spack/repos/builtin/packages/r-mcmcglmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,16 @@ from spack import *
class RMcmcglmm(RPackage):
- """MCMC Generalised Linear Mixed Models."""
+ """MCMC Generalised Linear Mixed Models
+
+ Fits Multi-response Generalised Linear Mixed Models (and related models)
+ using Markov chain Monte Carlo techniques."""
homepage = "https://cloud.r-project.org/package=MCMCglmm"
url = "https://cloud.r-project.org/src/contrib/MCMCglmm_2.25.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/MCMCglmm"
+ version('2.30', sha256='714250fe6ebdd1bd3dc284f7fcb92326de1273b0c34d31e71dc825312527e042')
version('2.29', sha256='13ba7837ea2049e892c04e7ec5c83d5b599a7e4820b9d875f55ec40fc2cc67b4')
version('2.28', sha256='7d92e6d35638e5e060a590b92c3b1bfc02a11386276a8ab99bceec5d797bfc2a')
version('2.25', sha256='3072316bf5c66f6db5447cb488395ff019f6c47122813467384474f340643133')
diff --git a/var/spack/repos/builtin/packages/r-mcmcpack/package.py b/var/spack/repos/builtin/packages/r-mcmcpack/package.py
new file mode 100644
index 0000000000..08377fdcd5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mcmcpack/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMcmcpack(RPackage):
+ """Markov Chain Monte Carlo (MCMC) Package:
+
+ Contains functions to perform Bayesian inference using posterior simulation
+ for a number of statistical models. Most simulation is done in compiled C++
+ written in the Scythe Statistical Library Version 1.0.3. All models return
+ 'coda' mcmc objects that can then be summarized using the 'coda' package.
+ Some useful utility functions such as density functions, pseudo-random
+ number generators for statistical distributions, a general purpose
+ Metropolis sampling algorithm, and tools for visualization are provided."""
+
+ homepage = "https://cran.r-project.org/package=MCMCpack"
+ cran = "MCMCpack"
+
+ version('1.5-0', sha256='795ffd3d62bf14d3ecb3f5307bd329cd75798cf4b270ff0e768bc71a35de0ace')
+
+ depends_on('r@3.6:', type=('build', 'run'))
+ depends_on('r-coda@0.11-3:', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-mcmc', type=('build', 'run'))
+ depends_on('r-quantreg', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mco/package.py b/var/spack/repos/builtin/packages/r-mco/package.py
index ec591cd8e6..4e20993e58 100644
--- a/var/spack/repos/builtin/packages/r-mco/package.py
+++ b/var/spack/repos/builtin/packages/r-mco/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,17 @@ from spack import *
class RMco(RPackage):
- """Functions for multiple criteria optimization using genetic algorithms
- and related test problems"""
+ """Multiple Criteria Optimization Algorithms and Related Functions
+
+ A collection of function to solve multiple criteria optimization problems
+ using genetic algorithms (NSGA-II). Also included is a collection of test
+ functions."""
homepage = "https://github.com/cran/mco"
url = "https://cloud.r-project.org/src/contrib/mco_1.0-15.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mco"
+ version('1.15.6', sha256='17ebe279cb9c89b7cd8054ac50d3b657d2b10dadbc584b88da7e79c3a9680582')
version('1.0-15.1', sha256='3c13ebc8c1f1bfa18f3f95b3998c57fde5259876e92456b6c6d4c59bef07c193')
version('1.0-15', sha256='a25e3effbb6dcae735fdbd6c0bfc775e9fbbcc00dc00076b69c53fe250627055')
diff --git a/var/spack/repos/builtin/packages/r-mda/package.py b/var/spack/repos/builtin/packages/r-mda/package.py
index 16dd70ee59..2e48f789df 100644
--- a/var/spack/repos/builtin/packages/r-mda/package.py
+++ b/var/spack/repos/builtin/packages/r-mda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,19 @@ from spack import *
class RMda(RPackage):
- """Mixture and flexible discriminant analysis, multivariate adaptive
+ """Mixture and Flexible Discriminant Analysis
+
+ Mixture and flexible discriminant analysis, multivariate adaptive
regression splines (MARS), BRUTO."""
homepage = "https://cloud.r-project.org/package=mda"
url = "https://cloud.r-project.org/src/contrib/mda_0.4-9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mda"
+ version('0.5-2', sha256='344f2053215ddf535d1554b4539e9b09067dac878887cc3eb995cef421fc00c3')
version('0.4-10', sha256='7036bc622a8fea5b2de94fc19e6b64f5f0c27e5d743ae7646e116af08c9de6a5')
version('0.4-9', sha256='b72456d2fa5b49895644489735d21cf4836d3d597f5e693e6103cce1887ffd85')
depends_on('r@1.9.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.5-2:', type=('build', 'run'))
depends_on('r-class', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-memoise/package.py b/var/spack/repos/builtin/packages/r-memoise/package.py
index 3587dfdbfa..e68ab324de 100644
--- a/var/spack/repos/builtin/packages/r-memoise/package.py
+++ b/var/spack/repos/builtin/packages/r-memoise/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-memuse/package.py b/var/spack/repos/builtin/packages/r-memuse/package.py
new file mode 100644
index 0000000000..dfe78642c7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-memuse/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMemuse(RPackage):
+ """Memory Estimation Utilities
+
+ How much ram do you need to store a 100,000 by 100,000 matrix? How much
+ ram is your current R session using? How much ram do you even have?
+ Learn the scintillating answer to these and many more such questions
+ with the 'memuse' package."""
+
+ homepage = "https://github.com/shinra-dev/memuse"
+ cran = "memuse"
+
+ maintainers = ['dorton21']
+
+ version('4.1-0', sha256='58d6d1ca5d6bd481f4ed299eff6a9d5660eb0f8db1abe54c49e144093cba72ad')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mergemaid/package.py b/var/spack/repos/builtin/packages/r-mergemaid/package.py
index 5d02468dcb..ef5368edee 100644
--- a/var/spack/repos/builtin/packages/r-mergemaid/package.py
+++ b/var/spack/repos/builtin/packages/r-mergemaid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-metap/package.py b/var/spack/repos/builtin/packages/r-metap/package.py
index c910da734e..3401447b9a 100644
--- a/var/spack/repos/builtin/packages/r-metap/package.py
+++ b/var/spack/repos/builtin/packages/r-metap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RMetap(RPackage):
- """The canonical way to perform meta-analysis involves using effect sizes.
+ """Meta-Analysis of Significance Values
+
+ The canonical way to perform meta-analysis involves using effect sizes.
When they are not available this package provides a number of methods for
meta-analysis of significance values including the methods of Edgington,
Fisher, Lancaster, Stouffer, Tippett, and Wilkinson; a number of data-sets
@@ -17,7 +19,12 @@ class RMetap(RPackage):
url = "https://cloud.r-project.org/src/contrib/metap_1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/metap"
+ version('1.4', sha256='5fac23d823d0ad4eebc3f97620364e25f7b41f8d0c3579f6c09ec059940b85a5')
version('1.1', sha256='20120428672d39dc15829c7e66850fc4350a34df290d48cef0b1cc78d13f7b82')
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-rdpack', type=('build', 'run'))
+ depends_on('r-rdpack@0.7:', when='@1.4:', type=('build', 'run'))
+ depends_on('r-tfisher', when='@1.4:', type=('build', 'run'))
+ depends_on('r-mutoss', when='@1.4:', type=('build', 'run'))
+ depends_on('r-mathjaxr@0.8-3:', when='@1.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-methylumi/package.py b/var/spack/repos/builtin/packages/r-methylumi/package.py
index 55f9f42a96..9f01e66279 100644
--- a/var/spack/repos/builtin/packages/r-methylumi/package.py
+++ b/var/spack/repos/builtin/packages/r-methylumi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RMethylumi(RPackage):
- """This package provides classes for holding and manipulating Illumina
+ """Handle Illumina methylation data
+
+ This package provides classes for holding and manipulating Illumina
methylation data. Based on eSet, it can contain MIAME information, sample
information, feature information, and multiple matrices of data. An
"intelligent" import function, methylumiR can read the Illumina text files
@@ -19,6 +21,7 @@ class RMethylumi(RPackage):
homepage = "https://bioconductor.org/packages/release/bioc/html/methylumi.html"
git = "https://git.bioconductor.org/packages/methylumi"
+ version('2.36.0', commit='5fb0b609f9c9181ac99f902745958774e5489606')
version('2.32.0', commit='e2a29c1b214c0d43c7325d176f9ce41dcf8e2f9d')
depends_on('r@2.13:', type=('build', 'run'))
@@ -30,6 +33,7 @@ class RMethylumi(RPackage):
depends_on('r-fdb-infiniummethylation-hg19@2.2.0:', type=('build', 'run'))
depends_on('r-minfi', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', when='@2.36.0:', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
depends_on('r-genomeinfodb', type=('build', 'run'))
depends_on('r-genomicranges', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mgcv/package.py b/var/spack/repos/builtin/packages/r-mgcv/package.py
index 5a12096785..cfc07d7404 100644
--- a/var/spack/repos/builtin/packages/r-mgcv/package.py
+++ b/var/spack/repos/builtin/packages/r-mgcv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,21 @@ from spack import *
class RMgcv(RPackage):
- """GAMs, GAMMs and other generalized ridge regression with multiple
- smoothing parameter estimation by GCV, REML or UBRE/AIC. Includes a gam()
- function, a wide variety of smoothers, JAGS support and distributions
- beyond the exponential family."""
+ """Mixed GAM Computation Vehicle with Automatic Smoothness Estimation
+
+ Generalized additive (mixed) models, some of their extensions and other
+ generalized ridge regression with multiple smoothing parameter estimation
+ by (Restricted) Marginal Likelihood, Generalized Cross Validation and
+ similar, or using iterated nested Laplace approximation for fully Bayesian
+ inference. See Wood (2017) <doi:10.1201/9781315370279> for an overview.
+ Includes a gam() function, a wide variety of smoothers, 'JAGS' support and
+ distributions beyond the exponential family."""
homepage = "https://cloud.r-project.org/package=mgcv"
url = "https://cloud.r-project.org/src/contrib/mgcv_1.8-16.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mgcv"
+ version('1.8-33', sha256='98cb7bac928e2c9564091a9af31e5d309305c6c5fcf96e8429c08925fe6f2bf4')
version('1.8-28', sha256='b55ea8227cd5c263c266c3885fa3299aa6bd23b54186517f9299bf38a7bdd3ea')
version('1.8-27', sha256='c88b99fb518decd7e9cd17a4c267e74f98a78172f056784194b5b127ca0f7d1b')
version('1.8-22', sha256='d4af7767e097ebde91c61d5ab4c62975dcb6b4ed6f545c09f5276a44ebc585cf')
diff --git a/var/spack/repos/builtin/packages/r-mgraster/package.py b/var/spack/repos/builtin/packages/r-mgraster/package.py
index a3bcf11d7e..2d22506614 100644
--- a/var/spack/repos/builtin/packages/r-mgraster/package.py
+++ b/var/spack/repos/builtin/packages/r-mgraster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-mice/package.py b/var/spack/repos/builtin/packages/r-mice/package.py
index 583e6cae8d..b667bdaf12 100644
--- a/var/spack/repos/builtin/packages/r-mice/package.py
+++ b/var/spack/repos/builtin/packages/r-mice/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,23 +7,25 @@ from spack import *
class RMice(RPackage):
- """Multiple imputation using Fully Conditional Specification (FCS)
- implemented by the MICE algorithm as described in Van Buuren and
- Groothuis-Oudshoorn (2011) <doi:10.18637/jss.v045.i03>.
+ """Multivariate Imputation by Chained Equations
- Each variable has its own imputation model. Built-in imputation models are
- provided for continuous data (predictive mean matching, normal), binary
- data (logistic regression), unordered categorical data (polytomous logistic
- regression) and ordered categorical data (proportional odds). MICE can
- also impute continuous two-level data (normal model, pan, second-level
- variables). Passive imputation can be used to maintain consistency between
- variables. Various diagnostic plots are available to inspect the quality
- of the imputations."""
+ Multiple imputation using Fully Conditional Specification (FCS) implemented
+ by the MICE algorithm as described in Van Buuren and Groothuis-Oudshoorn
+ (2011) <doi:10.18637/jss.v045.i03>. Each variable has its own imputation
+ model. Built-in imputation models are provided for continuous data
+ (predictive mean matching, normal), binary data (logistic regression),
+ unordered categorical data (polytomous logistic regression) and ordered
+ categorical data (proportional odds). MICE can also impute continuous
+ two-level data (normal model, pan, second-level variables). Passive
+ imputation can be used to maintain consistency between variables. Various
+ diagnostic plots are available to inspect the quality of the
+ imputations."""
homepage = "https://cloud.r-project.org/package=mice"
url = "https://cloud.r-project.org/src/contrib/mice_3.0.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mice"
+ version('3.12.0', sha256='575d9e650d5fc8cd66c0b5a2f1e659605052b26d61f772fff5eed81b414ef144')
version('3.6.0', sha256='7bc72bdb631bc9f67d8f76ffb48a7bb275228d861075e20c24c09c736bebec5d')
version('3.5.0', sha256='4fccecdf9e8d8f9f63558597bfbbf054a873b2d0b0820ceefa7b6911066b9e45')
version('3.0.0', sha256='98b6bb1c5f8fb099bd0024779da8c865146edb25219cc0c9542a8254152c0add')
@@ -31,11 +33,14 @@ class RMice(RPackage):
depends_on('r@2.10.0:', type=('build', 'run'))
depends_on('r-broom', type=('build', 'run'))
depends_on('r-dplyr', type=('build', 'run'))
- depends_on('r-mass', type=('build', 'run'))
- depends_on('r-mitml', type=('build', 'run'))
- depends_on('r-nnet', type=('build', 'run'))
+ depends_on('r-generics', when='@3.12.0:', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
depends_on('r-rlang', type=('build', 'run'))
- depends_on('r-rpart', type=('build', 'run'))
- depends_on('r-survival', type=('build', 'run'))
- depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-tidyr', when='@3.12.0:', type=('build', 'run'))
+ depends_on('r-cpp11', when='@3.12.0:', type=('build', 'run'))
+ depends_on('r-mitml', when='@:3.6.0', type=('build', 'run'))
+ depends_on('r-nnet', when='@:3.6.0', type=('build', 'run'))
+ depends_on('r-rpart', when='@:3.6.0', type=('build', 'run'))
+ depends_on('r-survival', when='@:3.6.0', type=('build', 'run'))
+ depends_on('r-mass', when='@:3.6.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-microbenchmark/package.py b/var/spack/repos/builtin/packages/r-microbenchmark/package.py
new file mode 100644
index 0000000000..43c54f2978
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-microbenchmark/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMicrobenchmark(RPackage):
+ """Accurate Timing Functions
+
+ Provides infrastructure to accurately measure and compare the execution
+ time of R expressions."""
+
+ homepage = "https://github.com/joshuaulrich/microbenchmark/"
+ cran = "microbenchmark"
+
+ version('1.4-7', sha256='268f13c6323dd28cc2dff7e991bb78b814a8873b4a73f4a3645f40423da984f6')
diff --git a/var/spack/repos/builtin/packages/r-mime/package.py b/var/spack/repos/builtin/packages/r-mime/package.py
index 1c795c905d..c842950dc4 100644
--- a/var/spack/repos/builtin/packages/r-mime/package.py
+++ b/var/spack/repos/builtin/packages/r-mime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RMime(RPackage):
- """Guesses the MIME type from a filename extension using the data derived
+ """Map Filenames to MIME Types
+
+ Guesses the MIME type from a filename extension using the data derived
from /etc/mime.types in UNIX-type systems."""
homepage = "https://github.com/yihui/mime"
url = "https://cloud.r-project.org/src/contrib/mime_0.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mime"
+ version('0.9', sha256='2ccf97d2940a09539dc051c7a9a1aee90ef04b34e9bc6c0b64b4435fb3c2fa80')
version('0.7', sha256='11083ee44c92569aadbb9baf60a2e079ab7a721c849b74d102694975cc8d778b')
version('0.6', sha256='4775b605ab0117406bee7953c8af59eea8b35e67d1bd63f4007686a7097fc401')
version('0.5', sha256='fcc72115afb0eb43237da872754464f37ae9ae097f332ec7984149b5e3a82145')
diff --git a/var/spack/repos/builtin/packages/r-minfi/package.py b/var/spack/repos/builtin/packages/r-minfi/package.py
index b786dd2129..da82288422 100644
--- a/var/spack/repos/builtin/packages/r-minfi/package.py
+++ b/var/spack/repos/builtin/packages/r-minfi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RMinfi(RPackage):
- """Analyze Illumina Infinium DNA methylation arrays.
+ """Analyze Illumina Infinium DNA methylation arrays
Tools to analyze & visualize Illumina Infinium methylation arrays."""
homepage = "https://bioconductor.org/packages/minfi"
git = "https://git.bioconductor.org/packages/minfi.git"
+ version('1.36.0', commit='94301da343226be7cd878c2a6c1bb529564785d6')
version('1.30.0', commit='a4c28e9388fe3b35e7d21a9669e39250ed6dcbcd')
version('1.28.4', commit='b5125b2f3e05d37d519eeb6fd44a60efdad388e7')
version('1.26.2', commit='ebb07b728b2453998d46e4e53d4fbf873e8e81fc')
@@ -37,7 +38,9 @@ class RMinfi(RPackage):
depends_on('r-limma', type=('build', 'run'))
depends_on('r-preprocesscore', type=('build', 'run'))
depends_on('r-illuminaio', type=('build', 'run'))
- depends_on('r-matrixstats@0.50.0:', type=('build', 'run'))
+ depends_on('r-illuminaio@0.23.2:', when='@1.28.4:', type=('build', 'run'))
+ depends_on('r-delayedmatrixstats', when='@1.26.2:', type=('build', 'run'))
+ depends_on('r-delayedmatrixstats@1.3.4:', when='@1.28.4:', type=('build', 'run'))
depends_on('r-mclust', type=('build', 'run'))
depends_on('r-genefilter', type=('build', 'run'))
depends_on('r-nlme', type=('build', 'run'))
@@ -46,14 +49,10 @@ class RMinfi(RPackage):
depends_on('r-quadprog', type=('build', 'run'))
depends_on('r-data-table', type=('build', 'run'))
depends_on('r-geoquery', type=('build', 'run'))
-
- depends_on('r-delayedmatrixstats', when='@1.26.2:', type=('build', 'run'))
depends_on('r-delayedarray@0.5.23:', when='@1.26.2:', type=('build', 'run'))
- depends_on('r-hdf5array', when='@1.26.2:', type=('build', 'run'))
- depends_on('r-biocparallel', when='@1.26.2:', type=('build', 'run'))
-
- depends_on('r-illuminaio@0.23.2:', when='@1.28.4:', type=('build', 'run'))
- depends_on('r-delayedmatrixstats@1.3.4:', when='@1.28.4:', type=('build', 'run'))
depends_on('r-delayedarray@0.7.38:', when='@1.28.4:', type=('build', 'run'))
-
depends_on('r-delayedarray@0.9.8:', when='@1.30.0:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.15.16:', when='@1.36.0:', type=('build', 'run'))
+ depends_on('r-hdf5array', when='@1.26.2:', type=('build', 'run'))
+ depends_on('r-biocparallel', when='@1.26.2:', type=('build', 'run'))
+ depends_on('r-matrixstats@0.50.0:', when='@:1.30.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-miniui/package.py b/var/spack/repos/builtin/packages/r-miniui/package.py
index 71761dffd3..ef77dec552 100644
--- a/var/spack/repos/builtin/packages/r-miniui/package.py
+++ b/var/spack/repos/builtin/packages/r-miniui/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-minqa/package.py b/var/spack/repos/builtin/packages/r-minqa/package.py
index efdd719932..38d33702a6 100644
--- a/var/spack/repos/builtin/packages/r-minqa/package.py
+++ b/var/spack/repos/builtin/packages/r-minqa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-misc3d/package.py b/var/spack/repos/builtin/packages/r-misc3d/package.py
index 7d4a1c63fa..6814f5a4b4 100644
--- a/var/spack/repos/builtin/packages/r-misc3d/package.py
+++ b/var/spack/repos/builtin/packages/r-misc3d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,15 @@ from spack import *
class RMisc3d(RPackage):
- """A collection of miscellaneous 3d plots, including isosurfaces."""
+ """Miscellaneous 3D Plots
+
+ A collection of miscellaneous 3d plots, including isosurfaces."""
homepage = "https://cloud.r-project.org/package=misc3d"
url = "https://cloud.r-project.org/src/contrib/misc3d_0.8-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/misc3d"
+ version('0.9-0', sha256='a1e9291d625bd1312bae5b0e26d48b9362f66a8a0fabbf48891ba1d2432e4e82')
version('0.8-4', sha256='75de3d2237f67f9e58a36e80a6bbf7e796d43eb46789f2dd1311270007bf5f62')
+
+ depends_on('r+X', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-missmethyl/package.py b/var/spack/repos/builtin/packages/r-missmethyl/package.py
new file mode 100644
index 0000000000..1e1d244dd7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-missmethyl/package.py
@@ -0,0 +1,48 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMissmethyl(RPackage):
+ """Analysing Illumina HumanMethylation BeadChip Data:
+
+ Normalisation, testing for differential variability and differential
+ methylation and gene set testing for data from Illumina's Infinium
+ HumanMethylation arrays. The normalisation procedure is subset-quantile
+ within-array normalisation (SWAN), which allows Infinium I and II type
+ probes on a single array to be normalised together. The test for
+ differential variability is based on an empirical Bayes version of Levene's
+ test. Differential methylation testing is performed using RUV, which can
+ adjust for systematic errors of unknown origin in high-dimensional data by
+ using negative control probes. Gene ontology analysis is performed by
+ taking into account the number of probes per gene on the array, as well as
+ taking into account multi-gene associated probes."""
+
+ bioc = "missMethyl"
+
+ version('1.24.0', commit='f6c86048911dc0e302fb593b7d0623f6e77ac332')
+
+ depends_on('r@3.6.0:', type=('build', 'run'))
+ depends_on('r-illuminahumanmethylation450kanno-ilmn12-hg19', type=('build', 'run'))
+ depends_on('r-illuminahumanmethylationepicanno-ilm10b4-hg19', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-biasedurn', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-go-db', type=('build', 'run'))
+ depends_on('r-illuminahumanmethylation450kmanifest', type=('build', 'run'))
+ depends_on('r-illuminahumanmethylationepicmanifest', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-methylumi', type=('build', 'run'))
+ depends_on('r-minfi', type=('build', 'run'))
+ depends_on('r-org-hs-eg-db', type=('build', 'run'))
+ depends_on('r-ruv', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-statmod', type=('build', 'run'))
+ depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mitml/package.py b/var/spack/repos/builtin/packages/r-mitml/package.py
index f46d8a497a..cd61393d60 100644
--- a/var/spack/repos/builtin/packages/r-mitml/package.py
+++ b/var/spack/repos/builtin/packages/r-mitml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-mitools/package.py b/var/spack/repos/builtin/packages/r-mitools/package.py
index 264e20c811..0257905e3e 100644
--- a/var/spack/repos/builtin/packages/r-mitools/package.py
+++ b/var/spack/repos/builtin/packages/r-mitools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-mixtools/package.py b/var/spack/repos/builtin/packages/r-mixtools/package.py
index 7558cc02ab..6b93933deb 100644
--- a/var/spack/repos/builtin/packages/r-mixtools/package.py
+++ b/var/spack/repos/builtin/packages/r-mixtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,19 +7,33 @@ from spack import *
class RMixtools(RPackage):
- """mixtools: Tools for Analyzing Finite Mixture Models
+ """Tools for Analyzing Finite Mixture Models
Analyzes finite mixture models for various parametric and semiparametric
- settings."""
+ settings. This includes mixtures of parametric distributions (normal,
+ multivariate normal, multinomial, gamma), various Reliability Mixture
+ Models (RMMs), mixtures-of-regressions settings (linear regression,
+ logistic regression, Poisson regression, linear regression with
+ changepoints, predictor-dependent mixing proportions, random effects
+ regressions, hierarchical mixtures-of-experts), and tools for selecting the
+ number of components (bootstrapping the likelihood ratio test statistic,
+ mixturegrams, and model selection criteria). Bayesian estimation of
+ mixtures-of-linear-regressions models is available as well as a novel data
+ depth method for obtaining credible bands. This package is based upon work
+ supported by the National Science Foundation under Grant No.
+ SES-0518772."""
homepage = "https://cloud.r-project.org/package=mixtools"
url = "https://cloud.r-project.org/src/contrib/mixtools_1.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mixtools"
+ version('1.2.0', sha256='ef033ef13625209065d26767bf70d129972e6808927f755629f1d70a118b9023')
version('1.1.0', sha256='543fd8d8dc8d4b6079ebf491cf97f27d6225e1a6e65d8fd48553ada23ba88d8f')
version('1.0.4', sha256='62f4b0a17ce520c4f8ed50ab44f120e459143b461a9e420cd39056ee4fc8798c')
depends_on('r@3.2:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-kernlab', when='@1.2.0:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-segmented', type=('build', 'run'))
depends_on('r-survival', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mlbench/package.py b/var/spack/repos/builtin/packages/r-mlbench/package.py
index 6b75828c71..ab0eb7620f 100644
--- a/var/spack/repos/builtin/packages/r-mlbench/package.py
+++ b/var/spack/repos/builtin/packages/r-mlbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-mlinterfaces/package.py b/var/spack/repos/builtin/packages/r-mlinterfaces/package.py
index 4a2e45585b..67465eb4b8 100644
--- a/var/spack/repos/builtin/packages/r-mlinterfaces/package.py
+++ b/var/spack/repos/builtin/packages/r-mlinterfaces/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RMlinterfaces(RPackage):
"""Uniform interfaces to R machine learning procedures for data in
- Bioconductor containers.
+ Bioconductor containers
This package provides uniform interfaces to machine learning code for
data in R and Bioconductor containers."""
@@ -16,6 +16,7 @@ class RMlinterfaces(RPackage):
homepage = "https://bioconductor.org/packages/MLInterfaces"
git = "https://git.bioconductor.org/packages/MLInterfaces.git"
+ version('1.70.0', commit='7b076c3e85314dd5fd5bd8a98e8123d08d9acd3b')
version('1.64.1', commit='0b081112d87771248bc33b3b82d5ca4685f986a1')
version('1.62.1', commit='6cf59a90b14779cf57a0b36f1087304082ae50fe')
version('1.60.1', commit='019e9ed44923e5d845a4800246aa044ddd59d548')
@@ -23,6 +24,8 @@ class RMlinterfaces(RPackage):
version('1.56.0', commit='31fe6fb20d859fcb01d5552f42bca6bab16cc67f')
depends_on('r@2.9:', type=('build', 'run'))
+ depends_on('r@3.5:', when='@1.60.1:', type=('build', 'run'))
+ depends_on('r-rcpp', when='@1.70.0:', type=('build', 'run'))
depends_on('r-biocgenerics@0.13.11:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-annotate', type=('build', 'run'))
@@ -32,7 +35,6 @@ class RMlinterfaces(RPackage):
depends_on('r-sfsmisc', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-rpart', type=('build', 'run'))
- depends_on('r-rda', type=('build', 'run'))
depends_on('r-genefilter', type=('build', 'run'))
depends_on('r-fpc', type=('build', 'run'))
depends_on('r-ggvis', type=('build', 'run'))
@@ -42,5 +44,4 @@ class RMlinterfaces(RPackage):
depends_on('r-hwriter', type=('build', 'run'))
depends_on('r-threejs@0.2.2:', type=('build', 'run'))
depends_on('r-mlbench', type=('build', 'run'))
-
- depends_on('r@3.5:', when='@1.60.1:', type=('build', 'run'))
+ depends_on('r-rda', when='@:1.64.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mlr/package.py b/var/spack/repos/builtin/packages/r-mlr/package.py
index 306d8ff92a..986bc955db 100644
--- a/var/spack/repos/builtin/packages/r-mlr/package.py
+++ b/var/spack/repos/builtin/packages/r-mlr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,35 +7,44 @@ from spack import *
class RMlr(RPackage):
- """Interface to a large number of classification and regression techniques,
- including machine-readable parameter descriptions. There is also an
- experimental extension for survival analysis, clustering and general,
- example-specific cost-sensitive learning. Generic resampling,
- including cross-validation, bootstrapping and subsampling.
- Hyperparameter tuning with modern optimization techniques,
- for single- and multi-objective problems. Filter and wrapper methods for
- feature selection. Extension of basic learners with additional
- operations common in machine learning, also allowing for easy nested
- resampling. Most operations can be parallelized."""
+ """Machine Learning in R
+
+ Interface to a large number of classification and regression techniques,
+ including machine-readable parameter descriptions. There is also an
+ experimental extension for survival analysis, clustering and general,
+ example-specific cost-sensitive learning. Generic resampling, including
+ cross-validation, bootstrapping and subsampling. Hyperparameter tuning
+ with modern optimization techniques, for single- and multi-objective
+ problems. Filter and wrapper methods for feature selection. Extension of
+ basic learners with additional operations common in machine learning, also
+ allowing for easy nested resampling. Most operations can be
+ parallelized."""
homepage = "https://github.com/mlr-org/mlr/"
url = "https://cloud.r-project.org/src/contrib/mlr_2.12.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mlr"
+ version('2.18.0', sha256='c2fe74e90ed32e5f4cbb0c09a1742051688d87db2f12dd408ddad0f5afc7f8d3')
version('2.15.0', sha256='a3c2c2bd65a87d90b5e5e877b1ef8e7712e76b4eb1660d3f69672a1860ca5324')
version('2.14.0', sha256='1f72184400678386c7c44297c4c92a448b50148de700df5ba0438d4e486e944a')
version('2.13', sha256='e8729be7acddc1ea124c44f9493a8b903c5f54b97e09c714366553aed733011d')
version('2.12.1', sha256='9cbb98b82eb493b783fe8808a18d76f32881d941364466ef8829b852fabbc82c')
version('2.12', sha256='cfe00089ae4cd88c6d03826eda43d4fe29e467e3a7c95d103fafca8308f5c161')
+ # There are some potential variants for this.
+ # SystemRequirements: gdal (optional), geos (optional), proj (optional),
+ # udunits (optional), gsl (optional), gmp (optional), glu (optional), jags
+ # (optional)
+
depends_on('r@3.0.2:', type=('build', 'run'))
depends_on('r-paramhelpers@1.10:', type=('build', 'run'))
- depends_on('r-bbmisc@1.11:', type=('build', 'run'))
depends_on('r-backports@1.1.0:', type=('build', 'run'))
- depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-stringi', type=('build', 'run'))
+ depends_on('r-bbmisc@1.11:', type=('build', 'run'))
depends_on('r-checkmate@1.8.2:', type=('build', 'run'))
depends_on('r-data-table', type=('build', 'run'))
+ depends_on('r-data-table@1.12.4:', when='@2.18.0:', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-parallelmap@1.3:', type=('build', 'run'))
+ depends_on('r-stringi', type=('build', 'run'))
depends_on('r-survival', type=('build', 'run'))
depends_on('r-xml', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mlrmbo/package.py b/var/spack/repos/builtin/packages/r-mlrmbo/package.py
index ba8cb37abf..ed5cef399e 100644
--- a/var/spack/repos/builtin/packages/r-mlrmbo/package.py
+++ b/var/spack/repos/builtin/packages/r-mlrmbo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,28 +7,31 @@ from spack import *
class RMlrmbo(RPackage):
- """Flexible and comprehensive R toolbox for model-based optimization
- ('MBO'), also known as Bayesian optimization. It is designed for both
- single- and multi-objective optimization with mixed continuous,
- categorical and conditional parameters. The machine learning toolbox
- 'mlr' provide dozens of regression learners to model the performance of
- the target algorithm with respect to the parameter settings. It provides
- many different infill criteria to guide the search process. Additional
- features include multi-point batch proposal, parallel execution as well
- as visualization and sophisticated logging mechanisms, which is
- especially useful for teaching and understanding of algorithm behavior.
- 'mlrMBO' is implemented in a modular fashion, such that single
- components can be easily replaced or adapted by the user for specific
- use cases."""
+ """Bayesian Optimization and Model-Based Optimization of Expensive Black-Box Functions
+
+ Flexible and comprehensive R toolbox for model-based optimization ('MBO'),
+ also known as Bayesian optimization. It is designed for both single- and
+ multi-objective optimization with mixed continuous, categorical and
+ conditional parameters. The machine learning toolbox 'mlr' provide dozens
+ of regression learners to model the performance of the target algorithm
+ with respect to the parameter settings. It provides many different infill
+ criteria to guide the search process. Additional features include
+ multi-point batch proposal, parallel execution as well as visualization and
+ sophisticated logging mechanisms, which is especially useful for teaching
+ and understanding of algorithm behavior. 'mlrMBO' is implemented in a
+ modular fashion, such that single components can be easily replaced or
+ adapted by the user for specific use cases."""
homepage = "https://github.com/mlr-org/mlrMBO/"
url = "https://cloud.r-project.org/src/contrib/mlrMBO_1.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mlrMBO"
+ version('1.1.5', sha256='7ab9d108ad06f6c5c480fa4beca69e09ac89bb162ae6c85fe7d6d25c41f359b8')
version('1.1.2', sha256='8e84caaa5d5d443d7019128f88ebb212fb095870b3a128697c9b64fe988f3efe')
version('1.1.1', sha256='e87d9912a9b4a968364584205b8ef6f7fea0b5aa043c8d31331a7b7be02dd7e4')
version('1.1.0', sha256='6ae82731a566333f06085ea2ce23ff2a1007029db46eea57d06194850350a8a0')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-mlr@2.10:', type=('build', 'run'))
depends_on('r-paramhelpers@1.10:', type=('build', 'run'))
depends_on('r-smoof@1.5.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mmwrweek/package.py b/var/spack/repos/builtin/packages/r-mmwrweek/package.py
index 40f6bf1c77..3a632f427a 100644
--- a/var/spack/repos/builtin/packages/r-mmwrweek/package.py
+++ b/var/spack/repos/builtin/packages/r-mmwrweek/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RMmwrweek(RPackage):
- """The first day of any MMWR week is Sunday. MMWR week numbering is
+ """Convert Dates to MMWR Day, Week, and Year
+
+ The first day of any MMWR week is Sunday. MMWR week numbering is
sequential beginning with 1 and incrementing with each week to a maximum
of 52 or 53. MMWR week #1 of an MMWR year is the first week of the year
that has at least four days in the calendar year. This package provides
@@ -18,4 +20,5 @@ class RMmwrweek(RPackage):
url = "https://cloud.r-project.org/src/contrib/MMWRweek_0.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/MMWRweek"
+ version('0.1.3', sha256='1aa8b687dc3340c3f277689eb0ca529e0064a4a3a66868137f2f8ab209d133d0')
version('0.1.1', sha256='969fd18535f3b78dd360d62d29d5f15409fc059f4af5d345abfde711e4adbc99')
diff --git a/var/spack/repos/builtin/packages/r-mnormt/package.py b/var/spack/repos/builtin/packages/r-mnormt/package.py
index ae94319f8c..ae2e015d0a 100644
--- a/var/spack/repos/builtin/packages/r-mnormt/package.py
+++ b/var/spack/repos/builtin/packages/r-mnormt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,20 @@ from spack import *
class RMnormt(RPackage):
- """Functions are provided for computing the density and the distribution
- function of multivariate normal and "t" random variables, and for
- generating random vectors sampled from these distributions.
- Probabilities are computed via non-Monte Carlo methods; different
- routines are used in the case d=1, d=2, d>2, if d denotes the number
- of dimensions."""
+ """The Multivariate Normal and t Distributions, and Their Truncated Versions
+
+ Functions are provided for computing the density and the distribution
+ function of multivariate normal and "t" random variables, and for
+ generating random vectors sampled from these distributions. Probabilities
+ are computed via non-Monte Carlo methods; different routines are used in
+ the case d=1, d=2, d>2, if d denotes the number of dimensions."""
homepage = "http://azzalini.stat.unipd.it/SW/Pkg-mnormt"
url = "https://cloud.r-project.org/src/contrib/mnormt_1.5-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mnormt"
+ version('2.0.2', sha256='5c6aa036d3f1035ffe8f9a8e95bb908b191b126b016591cf893c50472851f334')
version('1.5-5', sha256='ff78d5f935278935f1814a69e5a913d93d6dd2ac1b5681ba86b30c6773ef64ac')
depends_on('r@2.2.0:', type=('build', 'run'))
+ depends_on('r-tmvnsim@1.0-2:', when='@2.0.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mockery/package.py b/var/spack/repos/builtin/packages/r-mockery/package.py
new file mode 100644
index 0000000000..7f86483ac2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mockery/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMockery(RPackage):
+ """The two main functionalities of this package are creating mock
+ objects (functions) and selectively intercepting calls to a given
+ function that originate in some other function. It can be used with
+ any testing framework available for R. Mock objects can be injected
+ with either this package's own stub() function or a similar
+ with_mock() facility present in the 'testthat' package."""
+
+ homepage = "https://github.com/r-lib/mockery"
+ url = "https://cran.r-project.org/src/contrib/mockery_0.4.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/mockery"
+
+ version('0.4.2', sha256='988e249c366ee7faf277de004084cf5ca24b5c8a8c6e3842f1b1362ce2f7ea9b')
+ version('0.4.1', sha256='959d83f8b21e9a89c06c73f310356790c2d63d5ba39b2b60c6777a4eb33909c1')
+ version('0.4.0', sha256='cecbd865b67d8d29b47d6c931e386189625d5885328a2931a65ade3ff9bc8e7b')
+ version('0.3.0', sha256='6d23461ce6ffdc707ac2fcef58c5942587fab4b2a794a3085ac858fe1beeaff9')
+
+ depends_on('r-testthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-modelmetrics/package.py b/var/spack/repos/builtin/packages/r-modelmetrics/package.py
index 67404cc234..f15d6fc6b4 100644
--- a/var/spack/repos/builtin/packages/r-modelmetrics/package.py
+++ b/var/spack/repos/builtin/packages/r-modelmetrics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,17 @@ from spack import *
class RModelmetrics(RPackage):
- """Collection of metrics for evaluating models written in C++ using
- 'Rcpp'."""
+ """Rapid Calculation of Model Metrics
+
+ Collection of metrics for evaluating models written in C++ using 'Rcpp'.
+ Popular metrics include area under the curve, log loss, root mean square
+ error, etc."""
homepage = "https://cloud.r-project.org/package=ModelMetrics"
url = "https://cloud.r-project.org/src/contrib/ModelMetrics_1.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ModelMetrics"
+ version('1.2.2.2', sha256='5e06f1926aebca5654e1329c66ef19b04058376b2277ebb16e3bf8c208d73457')
version('1.2.2', sha256='66d6fc75658287fdbae4d437b51d26781e138b8baa558345fb9e5a2df86a0d95')
version('1.2.0', sha256='3021ae88733695a35d66e279e8e61861431f14c9916a341f0a562f675cf6ede9')
version('1.1.0', sha256='487d53fda57da4b29f83a927dda8b1ae6655ab044ee3eec33c38aeb27eed3d85')
diff --git a/var/spack/repos/builtin/packages/r-modelr/package.py b/var/spack/repos/builtin/packages/r-modelr/package.py
index a3c3232e1d..3bb37c155f 100644
--- a/var/spack/repos/builtin/packages/r-modelr/package.py
+++ b/var/spack/repos/builtin/packages/r-modelr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RModelr(RPackage):
- """Functions for modelling that help you seamlessly integrate modelling
- into a pipeline of data manipulation and visualisation."""
+ """Modelling Functions that Work with the Pipe
+
+ Functions for modelling that help you seamlessly integrate modelling into a
+ pipeline of data manipulation and visualisation."""
homepage = "https://github.com/hadley/modelr"
url = "https://cloud.r-project.org/src/contrib/modelr_0.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/modelr"
+ version('0.1.8', sha256='825ba77d95d60cfb94920bec910872ca2ffe7790a44148b2992be2759cb361c4')
version('0.1.5', sha256='45bbee387c6ba154f9f8642e9f03ea333cce0863c324ff15d23096f33f85ce5a')
version('0.1.4', sha256='b4da77c1244bbda512ce323751c8338741eeaa195283f172a0feec2917bcfdd9')
version('0.1.3', sha256='e536b247c17d6cacf10565dd8a1b744efc90a8815c70edd54371e413e6d1b423')
@@ -21,11 +24,13 @@ class RModelr(RPackage):
depends_on('r@3.1:', when='@:0.1.4', type=('build', 'run'))
depends_on('r@3.2:', when='@0.1.5:', type=('build', 'run'))
+ depends_on('r-broom', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-purrr@0.2.2:', type=('build', 'run'))
- depends_on('r-lazyeval@0.2.0:', when='@:0.1.1', type=('build', 'run'))
+ depends_on('r-rlang@0.2.0:', when='@0.1.3:', type=('build', 'run'))
depends_on('r-tibble', type=('build', 'run'))
- depends_on('r-broom', type=('build', 'run'))
- depends_on('r-dplyr', type=('build', 'run'))
depends_on('r-tidyr@0.8.0:', type=('build', 'run'))
- depends_on('r-rlang@0.2.0:', when='@0.1.3:', type=('build', 'run'))
+ depends_on('r-tidyselect', when='@0.1.8:', type=('build', 'run'))
+ depends_on('r-vctrs', when='@0.1.8:', type=('build', 'run'))
+ depends_on('r-lazyeval@0.2.0:', when='@:0.1.1', type=('build', 'run'))
+ depends_on('r-dplyr', when='@:0.1.5', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-modeltools/package.py b/var/spack/repos/builtin/packages/r-modeltools/package.py
index 73fdd643bf..13bea471fa 100644
--- a/var/spack/repos/builtin/packages/r-modeltools/package.py
+++ b/var/spack/repos/builtin/packages/r-modeltools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,19 @@ from spack import *
class RModeltools(RPackage):
- """A collection of tools to deal with statistical models."""
+ """Tools and Classes for Statistical Models
+
+ A collection of tools to deal with statistical models. The functionality
+ is experimental and the user interface is likely to change in the future.
+ The documentation is rather terse, but packages `coin' and `party' have
+ some working examples. However, if you find the implemented ideas
+ interesting we would be very interested in a discussion of this proposal.
+ Contributions are more than welcome!"""
homepage = "https://cloud.r-project.org/package=modeltools"
url = "https://cloud.r-project.org/src/contrib/modeltools_0.2-21.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/modeltools"
+ version('0.2-23', sha256='6b3e8d5af1a039db5c178498dbf354ed1c5627a8cea9229726644053443210ef')
version('0.2-22', sha256='256a088fc80b0d9182f984f9bd3d6207fb7c1e743f72e2ecb480e6c1d4ac34e9')
version('0.2-21', sha256='07b331475625674ab00e6ddfc479cbdbf0b22d5d237e8c25d83ddf3e0ad1cd7a')
diff --git a/var/spack/repos/builtin/packages/r-mpm/package.py b/var/spack/repos/builtin/packages/r-mpm/package.py
index dd831ffd27..20f55a57da 100644
--- a/var/spack/repos/builtin/packages/r-mpm/package.py
+++ b/var/spack/repos/builtin/packages/r-mpm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-msnbase/package.py b/var/spack/repos/builtin/packages/r-msnbase/package.py
index 932372681c..ea3330b9c1 100644
--- a/var/spack/repos/builtin/packages/r-msnbase/package.py
+++ b/var/spack/repos/builtin/packages/r-msnbase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RMsnbase(RPackage):
- """Base Functions and Classes for Mass Spectrometry and Proteomics.
+ """Base Functions and Classes for Mass Spectrometry and Proteomics
MSnbase provides infrastructure for manipulation, processing and
visualisation of mass spectrometry and proteomics data, ranging from raw
@@ -16,6 +16,7 @@ class RMsnbase(RPackage):
homepage = "https://bioconductor.org/packages/MSnbase"
git = "https://git.bioconductor.org/packages/MSnbase.git"
+ version('2.16.1', commit='4d88b4edd1af59474462b1b06ad0ec5831f3a878')
version('2.10.1', commit='4d5899bc9c714f0b1a70cddd537cd4621b2b53b0')
version('2.8.3', commit='ef883752c5e92d445647bc5b5d23d5df320db415')
version('2.6.4', commit='46836860ce0281eef135303f2e2948303d67f68c')
@@ -23,35 +24,33 @@ class RMsnbase(RPackage):
version('2.2.0', commit='d6e8fb7f106d05096fa9074da0f829ac8f02c197')
depends_on('r@3.1:', type=('build', 'run'))
+ depends_on('r@3.5:', when='@2.16.1:', type=('build', 'run'))
depends_on('r-biocgenerics@0.7.1:', type=('build', 'run'))
depends_on('r-biobase@2.15.2:', type=('build', 'run'))
depends_on('r-mzr@2.7.6:', type=('build', 'run'))
- depends_on('r-biocparallel', type=('build', 'run'))
+ depends_on('r-mzr@2.11.11:', when='@2.4.2:', type=('build', 'run'))
+ depends_on('r-mzr@2.13.6:', when='@2.6.4:', type=('build', 'run'))
+ depends_on('r-mzr@2.15.1:', when='@2.8.3:', type=('build', 'run'))
+ depends_on('r-mzr@2.17.3:', when='@2.10.1:', type=('build', 'run'))
+ depends_on('r-mzr@2.19.6:', when='@2.16.1:', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
depends_on('r-protgenerics@1.5.1:', type=('build', 'run'))
- depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-protgenerics@1.19.3:', when='@2.16.1:', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-iranges@2.13.28:', when='@2.6.4:', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
depends_on('r-preprocesscore', type=('build', 'run'))
depends_on('r-vsn', type=('build', 'run'))
depends_on('r-affy', type=('build', 'run'))
depends_on('r-impute', type=('build', 'run'))
depends_on('r-pcamethods', type=('build', 'run'))
- depends_on('r-mzid@1.5.2:', type=('build', 'run'))
depends_on('r-maldiquant@1.16:', type=('build', 'run'))
+ depends_on('r-mzid@1.5.2:', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-s4vectors', type=('build', 'run'))
depends_on('r-xml', type=('build', 'run'))
- depends_on('r-rcpp', type=('build', 'run'))
-
- depends_on('r-mzr@2.11.11:', when='@2.4.2:', type=('build', 'run'))
- depends_on('r-protgenerics@1.9.1:', when='@2.4.2:', type=('build', 'run'))
-
- depends_on('r-mzr@2.13.6:', when='@2.6.4:', type=('build', 'run'))
- depends_on('r-iranges@2.13.28:', when='@2.6.4:', type=('build', 'run'))
depends_on('r-scales', when='@2.6.4:', type=('build', 'run'))
depends_on('r-mass', when='@2.6.4:', type=('build', 'run'))
-
- depends_on('r-mzr@2.15.1:', when='@2.8.3:', type=('build', 'run'))
-
- depends_on('r-mzr@2.17.3:', when='@2.10.1:', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-multcomp/package.py b/var/spack/repos/builtin/packages/r-multcomp/package.py
index d0566c2004..13d0319e1a 100644
--- a/var/spack/repos/builtin/packages/r-multcomp/package.py
+++ b/var/spack/repos/builtin/packages/r-multcomp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RMultcomp(RPackage):
- """Simultaneous tests and confidence intervals for general linear
+ """Simultaneous Inference in General Parametric Models
+
+ Simultaneous tests and confidence intervals for general linear
hypotheses in parametric models, including linear, generalized linear,
linear mixed effects, and survival models. The package includes demos
reproducing analyzes presented in the book "Multiple Comparisons Using R"
@@ -17,6 +19,7 @@ class RMultcomp(RPackage):
url = "https://cloud.r-project.org/src/contrib/multcomp_1.4-6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/multcomp"
+ version('1.4-15', sha256='9927607efb3eb84ac3d25d82daf2faef6a69e05a334b163ce43fd31c14b19bce')
version('1.4-10', sha256='29bcc635c0262e304551b139cd9ee655ab25a908d9693e1cacabfc2a936df5cf')
version('1.4-8', sha256='a20876619312310e9523d67e9090af501383ce49dc6113c6b4ca30f9c943a73a')
version('1.4-6', sha256='fe9efbe671416a49819cbdb9137cc218faebcd76e0f170fd1c8d3c84c42eeda2')
diff --git a/var/spack/repos/builtin/packages/r-multicool/package.py b/var/spack/repos/builtin/packages/r-multicool/package.py
index fc87206d73..662f1f12bb 100644
--- a/var/spack/repos/builtin/packages/r-multicool/package.py
+++ b/var/spack/repos/builtin/packages/r-multicool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,29 @@ from spack import *
class RMulticool(RPackage):
- """Permutations of multisets in cool-lex order."""
+ """Permutations of multisets in cool-lex order
+
+ A set of tools to permute multisets without loops or hash tables and to
+ generate integer partitions. The permutation functions are based on C code
+ from Aaron Williams. Cool-lex order is similar to colexicographical order.
+ The algorithm is described in Williams, A. (2009)
+ <DOI:10.1145/1496770.1496877> Loopless Generation of Multiset Permutations
+ by Prefix Shifts. Symposium on Discrete Algorithms, New York, United
+ States. The permutation code is distributed without restrictions. The code
+ for stable and efficient computation of multinomial coefficients comes from
+ Dave Barber. The code can be download from
+ <http://tamivox.org/dave/multinomial/code.html> and is distributed without
+ conditions. The package also generates the integer partitions of a
+ positive, non-zero integer n. The C++ code for this is based on Python code
+ from Jerome Kelleher which can be found here
+ <http://jeromekelleher.net/tag/integer-partitions.html>. The C++ code and
+ Python code are distributed without conditions."""
homepage = "https://cloud.r-project.org/package=multicool"
url = "https://cloud.r-project.org/src/contrib/Archive/multicool/multicool_0.1-9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/multicool/Archive/multicool"
+ version('0.1-10', sha256='5bb0cb0d9eb64420c862877247a79bb0afadacfe23262ec8c3fa26e5e34d6ff9')
version('0.1-9', sha256='bdf92571cef1b649952d155395a92b8683099ee13114f73a9d41fc5d7d49d329')
depends_on('r-rcpp@0.11.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-multitaper/package.py b/var/spack/repos/builtin/packages/r-multitaper/package.py
index 52f8a05b2c..dda558415f 100644
--- a/var/spack/repos/builtin/packages/r-multitaper/package.py
+++ b/var/spack/repos/builtin/packages/r-multitaper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,22 @@ from spack import *
class RMultitaper(RPackage):
- """multitaper: Spectral Analysis Tools using the Multitaper Method"""
+ """Spectral Analysis Tools using the Multitaper Methodi
+
+ Implements multitaper spectral analysis using discrete prolate spheroidal
+ sequences (Slepians) and sine tapers. It includes an adaptive weighted
+ multitaper spectral estimate, a coherence estimate, Thomson's Harmonic
+ F-test, and complex demodulation. The Slepians sequences are generated
+ efficiently using a tridiagonal matrix solution, and jackknifed confidence
+ intervals are available for most estimates. This package is an
+ implementation of the method described in D.J. Thomson (1982) "Spectrum
+ estimation and harmonic analysis" <doi:10.1109/PROC.1982.12433>."""
homepage = "https://github.com/krahim/multitaper/"
url = "https://cloud.r-project.org/src/contrib/multitaper_1.0-14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/multitaper/"
+ version('1.0-15', sha256='837d71f3b46fbce2bea210449cf75e609f5363ff23b7808f5f115fdc51e6a3be')
version('1.0-14', sha256='c84c122541dc2874131446e23b212259b3b00590d701efee49e6740fd74a8d13')
depends_on('r@3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-multtest/package.py b/var/spack/repos/builtin/packages/r-multtest/package.py
index 3e8667de9f..87a021d35b 100644
--- a/var/spack/repos/builtin/packages/r-multtest/package.py
+++ b/var/spack/repos/builtin/packages/r-multtest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RMulttest(RPackage):
- """Resampling-based multiple hypothesis testing.
+ """Resampling-based multiple hypothesis testing
Non-parametric bootstrap and permutation resampling-based multiple
testing procedures (including empirical Bayes methods) for controlling
@@ -30,6 +30,7 @@ class RMulttest(RPackage):
homepage = "https://bioconductor.org/packages/multtest"
git = "https://git.bioconductor.org/packages/multtest.git"
+ version('2.46.0', commit='c4dd27b333c80313a88668b59d0299988c6478a2')
version('2.40.0', commit='5f00017c2d3a31e05e1cfe06d9f7afdee19f8473')
version('2.38.0', commit='4dfe71cecfb298a94521088fb7bd83c5498d2915')
version('2.36.0', commit='babb15e8d110eb72300ad59cf7e53386237a4198')
diff --git a/var/spack/repos/builtin/packages/r-munsell/package.py b/var/spack/repos/builtin/packages/r-munsell/package.py
index 64637d9779..cfb78c60c8 100644
--- a/var/spack/repos/builtin/packages/r-munsell/package.py
+++ b/var/spack/repos/builtin/packages/r-munsell/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-mutoss/package.py b/var/spack/repos/builtin/packages/r-mutoss/package.py
new file mode 100644
index 0000000000..a4d837c338
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mutoss/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RMutoss(RPackage):
+ """Unified Multiple Testing Procedures
+
+ Designed to ease the application and comparison of multiple hypothesis
+ testing procedures for FWER, gFWER, FDR and FDX. Methods are standardized
+ and usable by the accompanying 'mutossGUI'."""
+
+ homepage = "https://github.com/kornl/mutoss/"
+ url = "https://cloud.r-project.org/src/contrib/mutoss_0.1-12.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/mutoss"
+
+ version('0.1-12', sha256='2889ae3d502157592697124eb86adc14911e2b7fdaa7204743a376b1eeb967fa')
+
+ depends_on('r@2.10.0:', type=('build', 'run'))
+ depends_on('r-mvtnorm', type=('build', 'run'))
+ depends_on('r-plotrix', type=('build', 'run'))
+ depends_on('r-multtest@2.2.0:', type=('build', 'run'))
+ depends_on('r-multcomp@1.1-0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mvtnorm/package.py b/var/spack/repos/builtin/packages/r-mvtnorm/package.py
index b4a10009f1..510758dcaf 100644
--- a/var/spack/repos/builtin/packages/r-mvtnorm/package.py
+++ b/var/spack/repos/builtin/packages/r-mvtnorm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RMvtnorm(RPackage):
- """Computes multivariate normal and t probabilities, quantiles, random
+ """Multivariate Normal and t Distributions
+
+ Computes multivariate normal and t probabilities, quantiles, random
deviates and densities."""
homepage = "http://mvtnorm.r-forge.r-project.org/"
url = "https://cloud.r-project.org/src/contrib/mvtnorm_1.0-6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/mvtnorm"
+ version('1.1-1', sha256='e965dad5e93babb7ded25b5ebdbd52332191b61f897d68853a379a07620d45de')
version('1.0-11', sha256='0321612de99aa9bc75a45c7e029d3372736014223cbdefb80d8cae600cbc7252')
version('1.0-10', sha256='31df19cd8b4cab9d9a70dba00442b7684e625d4ca143a2c023c2c5872b07ad12')
version('1.0-6', sha256='4a015b57b645b520151b213eb04b7331598c06442a3f652c7dc149425bd2e444')
diff --git a/var/spack/repos/builtin/packages/r-mzid/package.py b/var/spack/repos/builtin/packages/r-mzid/package.py
index 68f2a2c440..a96b5803b3 100644
--- a/var/spack/repos/builtin/packages/r-mzid/package.py
+++ b/var/spack/repos/builtin/packages/r-mzid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RMzid(RPackage):
- """An mzIdentML parser for R.
+ """An mzIdentML parser for R
A parser for mzIdentML files implemented using the XML package. The
parser tries to be general and able to handle all types of mzIdentML
@@ -18,6 +18,7 @@ class RMzid(RPackage):
homepage = "https://bioconductor.org/packages/mzID"
git = "https://git.bioconductor.org/packages/mzID.git"
+ version('1.28.0', commit='cd006631c8222ce5b4af0577a7401b39cc58fd9c')
version('1.22.0', commit='382d9cf11f0cba996911a9d79e193d28f3ac6042')
version('1.20.1', commit='819582646944440ddd9ed3724ae964841573e54c')
version('1.18.0', commit='7d8924ae95585eb8cf472d21619a7603d291d652')
diff --git a/var/spack/repos/builtin/packages/r-mzr/package.py b/var/spack/repos/builtin/packages/r-mzr/package.py
index 3f11e98fe3..75aad10526 100644
--- a/var/spack/repos/builtin/packages/r-mzr/package.py
+++ b/var/spack/repos/builtin/packages/r-mzr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RMzr(RPackage):
"""parser for netCDF, mzXML, mzData and mzML and mzIdentML files (mass
- spectrometry data).
+ spectrometry data)
mzR provides a unified API to the common file formats and parsers
available for mass spectrometry data. It comes with a wrapper for the
@@ -20,6 +20,7 @@ class RMzr(RPackage):
homepage = "https://bioconductor.org/packages/mzR"
git = "https://git.bioconductor.org/packages/mzR.git"
+ version('2.24.1', commit='e1d4de8761e6729fd45320d842691c8fe9116b7b')
version('2.18.1', commit='13f9f9b1149859c3e29cfce941d958cc4f680546')
version('2.16.2', commit='22d7dad98f46b5bed7f6f7b3a703dcdf5997f709')
version('2.14.0', commit='bf1154bc45101d95b5a67c66980856a779b84bd4')
@@ -30,11 +31,9 @@ class RMzr(RPackage):
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-biocgenerics@0.13.6:', type=('build', 'run'))
depends_on('r-protgenerics', type=('build', 'run'))
- depends_on('r-zlibbioc', type=('build', 'run'))
-
depends_on('r-protgenerics@1.9.1:', when='@2.12.0:', type=('build', 'run'))
- depends_on('r-rhdf5lib@1.1.4:', when='@2.14.0:', type=('build', 'run'))
-
+ depends_on('r-protgenerics@1.17.3:', when='@2.24.1:', type=('build', 'run'))
depends_on('r-ncdf4', when='@2.16.2:', type=('build', 'run'))
-
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('r-rhdf5lib@1.1.4:', when='@2.14.0:', type=('build', 'run'))
depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-nada/package.py b/var/spack/repos/builtin/packages/r-nada/package.py
new file mode 100644
index 0000000000..0aa6aad73f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-nada/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RNada(RPackage):
+ """Nondetects and Data Analysis for Environmental Data
+
+ Contains methods described by Dennis Helsel in his book "Nondetects And
+ Data Analysis: Statistics for Censored Environmental Data"."""
+
+ homepage = "https://cloud.r-project.org/package=NADA"
+ url = "https://cloud.r-project.org/src/contrib/NADA_1.6-1.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/NADA"
+
+ version('1.6-1.1', sha256='670ff6595ba074ed0a930b7a09624d5ef20616379a20e768c1a7b37332aee44a')
+
+ depends_on('r@2.10:', type=('build', 'run'))
+ depends_on('r-survival', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-nanotime/package.py b/var/spack/repos/builtin/packages/r-nanotime/package.py
index 845f6dcd7a..e9c9861714 100644
--- a/var/spack/repos/builtin/packages/r-nanotime/package.py
+++ b/var/spack/repos/builtin/packages/r-nanotime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,24 @@ from spack import *
class RNanotime(RPackage):
- """Full 64-bit resolution date and time support with resolution up to
- nanosecond granularity is provided, with easy transition to and from
- the standard 'POSIXct' type."""
+ """Nanosecond-Resolution Time Support for R
+
+ Full 64-bit resolution date and time support with resolution up to
+ nanosecond granularity is provided, with easy transition to and from the
+ standard 'POSIXct' type."""
homepage = "https://cloud.r-project.org/package=nanotime"
url = "https://cloud.r-project.org/src/contrib/nanotime_0.2.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/nanotime"
+ version('0.3.2', sha256='9ef53c3bca01b605a9519190117988e170e63865327007c90b05d31fe7f22b1d')
version('0.2.4', sha256='2dfb7e7435fec59634b87563a215467e7793e2711e302749c0533901c74eb184')
version('0.2.3', sha256='7d6df69a4223ae154f610b650e24ece38ce4aa706edfa38bec27d15473229f5d')
version('0.2.0', sha256='9ce420707dc4f0cb4241763579b849d842904a3aa0d88de8ffef334d08fa188d')
depends_on('r-bit64', type=('build', 'run'))
depends_on('r-rcppcctz@0.2.3:', type=('build', 'run'))
+ depends_on('r-rcppcctz@0.2.9:', when='@0.3.2:', type=('build', 'run'))
depends_on('r-zoo', type=('build', 'run'))
+ depends_on('r-rcpp', when='@0.3.2:', type=('build', 'run'))
+ depends_on('r-rcppdate', when='@0.3.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ncbit/package.py b/var/spack/repos/builtin/packages/r-ncbit/package.py
index 021bb6cfbb..cf44c3fb9d 100644
--- a/var/spack/repos/builtin/packages/r-ncbit/package.py
+++ b/var/spack/repos/builtin/packages/r-ncbit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ncdf4/package.py b/var/spack/repos/builtin/packages/r-ncdf4/package.py
index 2e06ef22df..5e00bf866a 100644
--- a/var/spack/repos/builtin/packages/r-ncdf4/package.py
+++ b/var/spack/repos/builtin/packages/r-ncdf4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RNcdf4(RPackage):
- """Provides a high-level R interface to data files written using Unidata's
+ """Interface to Unidata netCDF (Version 4 or Earlier) Format Data Files
+
+ Provides a high-level R interface to data files written using Unidata's
netCDF library (version 4 or earlier), which are binary data files that are
portable across platforms and include metadata information in addition to
the data sets. Using this package, netCDF files (either version 4 or
@@ -26,6 +28,7 @@ class RNcdf4(RPackage):
url = "https://cloud.r-project.org/src/contrib/ncdf4_1.15.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ncdf4"
+ version('1.17', sha256='db95c4729d3187d1a56dfd019958216f442be6221bd15e23cd597e6129219af6')
version('1.16.1', sha256='0dde2d6d1e8474f4abd15a61af8a2f7de564f13da00f1a01d7a479ab88587a20')
version('1.16', sha256='edd5731a805bbece3a8f6132c87c356deafc272351e1dd07256ca00574949253')
version('1.15', sha256='d58298f4317c6c80a041a70216126492fd09ba8ecde9da09d5145ae26f324d4d')
diff --git a/var/spack/repos/builtin/packages/r-network/package.py b/var/spack/repos/builtin/packages/r-network/package.py
index 82279fc8a4..3ab76f7a3c 100644
--- a/var/spack/repos/builtin/packages/r-network/package.py
+++ b/var/spack/repos/builtin/packages/r-network/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,17 @@ from spack import *
class RNetwork(RPackage):
- """Tools to create and modify network objects. The network class can
- represent a range of relational data types, and supports
- arbitrary vertex/edge/graph attributes."""
+ """Classes for Relational Data
+
+ Tools to create and modify network objects. The network class can represent
+ a range of relational data types, and supports arbitrary vertex/edge/graph
+ attributes."""
homepage = "https://statnet.org"
url = "https://cloud.r-project.org/src/contrib/network_1.13.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/network"
+ version('1.16.1', sha256='eb6435794cacc81abe1664391e8dcf1c10112bbb76fff9016dd6dbb8e83efeb1')
version('1.15', sha256='5cbe5c0369e5f8363e33a86f14fd33ce8727166106381627ecd13b7452e14cb3')
version('1.14-377', sha256='013c02f8d97f1f87f2c421760534df9353d2a8c2277f20b46b59fb79822d3e46')
version('1.13.0', sha256='7a04ea89261cdf32ccb52222810699d5fca59a849053e306b5ec9dd5c1184f87')
diff --git a/var/spack/repos/builtin/packages/r-networkd3/package.py b/var/spack/repos/builtin/packages/r-networkd3/package.py
index bcef714f11..3a5f6fbc91 100644
--- a/var/spack/repos/builtin/packages/r-networkd3/package.py
+++ b/var/spack/repos/builtin/packages/r-networkd3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-nimble/package.py b/var/spack/repos/builtin/packages/r-nimble/package.py
index c0cd1c2b40..d72feb6097 100644
--- a/var/spack/repos/builtin/packages/r-nimble/package.py
+++ b/var/spack/repos/builtin/packages/r-nimble/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,17 +6,29 @@
from spack import *
-class RNimble(AutotoolsPackage):
- """A system for writing hierarchical statistical models largely
- compatible with 'BUGS' and 'JAGS', writing nimbleFunctions to
- operate models and do basic R-style math, and compiling both
- models and nimbleFunctions via custom- generated C++.
- """
+class RNimble(RPackage):
+ """MCMC, Particle Filtering, and Programmable Hierarchical Modeling
+
+ A system for writing hierarchical statistical models largely compatible
+ with 'BUGS' and 'JAGS', writing nimbleFunctions to operate models and do
+ basic R-style math, and compiling both models and nimbleFunctions via
+ custom-generated C++. 'NIMBLE' includes default methods for MCMC, Monte
+ Carlo Expectation Maximization, and some other tools. The nimbleFunction
+ system makes it easy to do things like implement new MCMC samplers from R,
+ customize the assignment of samplers to different parts of a model from R,
+ and compile the new samplers automatically via C++ alongside the samplers
+ 'NIMBLE' provides. 'NIMBLE' extends the 'BUGS'/'JAGS' language by making it
+ extensible: New distributions and functions can be added, including as
+ calls to external compiled code. Although most people think of MCMC as the
+ main goal of the 'BUGS'/'JAGS' language for writing models, one can use
+ 'NIMBLE' for writing arbitrary other kinds of model-generic algorithms as
+ well. A full User Manual is available at <https://r-nimble.org>."""
homepage = "https://cloud.r-project.org/package=nimble"
url = "https://cloud.r-project.org/src/contrib/nimble_0.9.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/nimble"
+ version('0.10.1', sha256='11e248fda442f233c3590640efd9381c9b4b2e6fb66dce45a3391db03b70e702')
version('0.9.1', sha256='ad5e8a171193cb0172e68bf61c4f94432c45c131a150101ad1c5c7318c335757')
version('0.9.0', sha256='ebc28fadf933143eea73900cacaf96ff81cb3c2d607405016062b7e93afa5611')
@@ -24,4 +36,4 @@ class RNimble(AutotoolsPackage):
depends_on('r-igraph', type=('build', 'run'))
depends_on('r-coda', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
- depends_on('automake')
+ depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-nleqslv/package.py b/var/spack/repos/builtin/packages/r-nleqslv/package.py
index 37968fe777..1d44466207 100644
--- a/var/spack/repos/builtin/packages/r-nleqslv/package.py
+++ b/var/spack/repos/builtin/packages/r-nleqslv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-nlme/package.py b/var/spack/repos/builtin/packages/r-nlme/package.py
index 483cc68a75..2b61ebb079 100644
--- a/var/spack/repos/builtin/packages/r-nlme/package.py
+++ b/var/spack/repos/builtin/packages/r-nlme/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RNlme(RPackage):
- """Fit and compare Gaussian linear and nonlinear mixed-effects models."""
+ """Fit and compare Gaussian linear and nonlinear mixed-effects models
+
+ Fit and compare Gaussian linear and nonlinear mixed-effects models."""
homepage = "https://cloud.r-project.org/package=nlme"
url = "https://cloud.r-project.org/src/contrib/nlme_3.1-130.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/nlme"
+ version('3.1-151', sha256='a2c626bad68bf582663005170d1b9d844a10dca8efb13597f15ffb4b1fe886ca')
version('3.1-141', sha256='910046260a03d8f776ac7b0766b5adee91556829d0d8a70165b2c695ce038056')
version('3.1-139', sha256='0460fc69d85122177e7ef01bad665d56bcaf63d31bdbfdbdfdcba2c082085739')
version('3.1-131', sha256='79daa167eb9bc7d8dba506da4b24b5250665b051d4e0a51dfccbb0087fdb564c')
diff --git a/var/spack/repos/builtin/packages/r-nloptr/package.py b/var/spack/repos/builtin/packages/r-nloptr/package.py
index 2e95081b91..92e83ded04 100644
--- a/var/spack/repos/builtin/packages/r-nloptr/package.py
+++ b/var/spack/repos/builtin/packages/r-nloptr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,23 +7,27 @@ from spack import *
class RNloptr(RPackage):
- """nloptr is an R interface to NLopt. NLopt is a free/open-source
- library for nonlinear optimization, providing a common interface
- for a number of different free optimization routines available
- online as well as original implementations of various other
- algorithms. See http://ab-initio.mit.edu/wiki/index.php/NLopt
- _Introduction for more information on the available algorithms.
- During installation on Unix the NLopt code is downloaded and
- compiled from the NLopt website."""
+ """R Interface to NLopt
+
+ Solve optimization problems using an R interface to NLopt. NLopt is a
+ free/open-source library for nonlinear optimization, providing a common
+ interface for a number of different free optimization routines available
+ online as well as original implementations of various other algorithms. See
+ <http://ab-initio.mit.edu/wiki/index.php/NLopt_Introduction> for more
+ information on the available algorithms. During installation of nloptr on
+ Unix-based systems, the installer checks whether the NLopt library is
+ installed on the system. If the NLopt library cannot be found, the code is
+ compiled using the NLopt source included in the nloptr package."""
homepage = "https://cloud.r-project.org/package=nloptr"
url = "https://cloud.r-project.org/src/contrib/nloptr_1.0.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/nloptr"
+ version('1.2.2.2', sha256='e80ea9619ac18f4bfe44812198b40b9ae5c0ddf3f9cc91778f9ccc82168d1372')
version('1.2.1', sha256='1f86e33ecde6c3b0d2098c47591a9cd0fa41fb973ebf5145859677492730df97')
version('1.0.4', sha256='84225b993cb1ef7854edda9629858662cc8592b0d1344baadea4177486ece1eb')
- depends_on('nlopt')
+ depends_on('nlopt@2.4.0:')
def configure_args(self):
include_flags = self.spec['nlopt'].headers.include_flags
diff --git a/var/spack/repos/builtin/packages/r-nmf/package.py b/var/spack/repos/builtin/packages/r-nmf/package.py
index 480451367f..48fd9f93cc 100644
--- a/var/spack/repos/builtin/packages/r-nmf/package.py
+++ b/var/spack/repos/builtin/packages/r-nmf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,20 @@ from spack import *
class RNmf(RPackage):
- """Provides a framework to perform Non-negative Matrix Factorization (NMF).
+ """Algorithms and Framework for Nonnegative Matrix Factorization (NMF)
+
+ Provides a framework to perform Non-negative Matrix Factorization (NMF).
The package implements a set of already published algorithms and seeding
methods, and provides a framework to test, develop and plug new/custom
algorithms. Most of the built-in algorithms have been optimized in C++, and
the main interface function provides an easy way of performing parallel
- computations on multicore machines.."""
+ computations on multicore machines."""
homepage = "http://renozao.github.io/NMF"
url = "https://cloud.r-project.org/src/contrib/NMF_0.21.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/NMF"
+ version('0.23.0', sha256='0f0cca01b37bf46fce90d2e951df609d3d377908aa607825083fd0c47cc24753')
version('0.21.0', sha256='3b30c81c66066fab4a63c5611a0313418b840d8b63414db31ef0e932872d02e3')
depends_on('r@3.0.0:', type=('build', 'run'))
@@ -34,3 +37,5 @@ class RNmf(RPackage):
depends_on('r-doparallel', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-biocmanager', when='@0.23.0', type=('build', 'run'))
+ depends_on('r-biobase', when='@0.23.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-nmof/package.py b/var/spack/repos/builtin/packages/r-nmof/package.py
index 1e43a1faeb..35aefc8156 100644
--- a/var/spack/repos/builtin/packages/r-nmof/package.py
+++ b/var/spack/repos/builtin/packages/r-nmof/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RNmof(RPackage):
- """Functions, examples and data from the book "Numerical Methods and
+ """Numerical Methods and Optimization in Finance
+
+ Functions, examples and data from the book "Numerical Methods and
Optimization in Finance" by M. Gilli, D. Maringer and E. Schumann (2011),
ISBN 978-0123756626. The package provides implementations of several
optimisation heuristics, such as Differential Evolution, Genetic Algorithms
@@ -19,6 +21,7 @@ class RNmof(RPackage):
url = "https://cloud.r-project.org/src/contrib/NMOF_1.6-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/NMOF"
+ version('2.2-2', sha256='e64472f89023f0d779a35df753747d750174ce89644a9142312a1d2dc6f24642')
version('1.6-0', sha256='5484cd43c28aaf23d560c2dde8bcd8dd440a205d2214eb50e02fe0bb42ec2755')
depends_on('r@2.14:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-nnet/package.py b/var/spack/repos/builtin/packages/r-nnet/package.py
index 4e03f0032f..f6806a46fd 100644
--- a/var/spack/repos/builtin/packages/r-nnet/package.py
+++ b/var/spack/repos/builtin/packages/r-nnet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,17 @@ from spack import *
class RNnet(RPackage):
- """Software for feed-forward neural networks with a single hidden layer,
+ """Feed-Forward Neural Networks and Multinomial Log-Linear Models
+
+ Software for feed-forward neural networks with a single hidden layer,
and for multinomial log-linear models."""
homepage = "http://www.stats.ox.ac.uk/pub/MASS4/"
url = "https://cloud.r-project.org/src/contrib/nnet_7.3-12.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/nnet"
+ version('7.3-14', sha256='5d1b9e9764d74d16c651f18f949aa4e9e2995ba64633cbfa2c6a7355ae30f4af')
version('7.3-12', sha256='2723523e8581cc0e2215435ac773033577a16087a3f41d111757dd96b8c5559d')
depends_on('r@2.14:', type=('build', 'run'))
+ depends_on('r@3.0.0:', when='@7.3-14:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-nnls/package.py b/var/spack/repos/builtin/packages/r-nnls/package.py
index fff636f8a9..f4baf999f3 100644
--- a/var/spack/repos/builtin/packages/r-nnls/package.py
+++ b/var/spack/repos/builtin/packages/r-nnls/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-nonnest2/package.py b/var/spack/repos/builtin/packages/r-nonnest2/package.py
new file mode 100644
index 0000000000..4c2df4cbc6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-nonnest2/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RNonnest2(RPackage):
+ """Tests of Non-Nested Models:
+
+ Testing non-nested models via theory supplied by Vuong (1989)
+ <doi:10.2307/1912557>. Includes tests of model distinguishability and of
+ model fit that can be applied to both nested and non-nested models. Also
+ includes functionality to obtain confidence intervals associated with AIC
+ and BIC. This material is partially based on work supported by the National
+ Science Foundation under Grant Number SES-1061334."""
+
+ cran = "nonnest2"
+
+ version('0.5-5', sha256='027f510e322122fc75c936251a95ddd392f96047ac86e0fae6cf8f883ac7aab5')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-compquadform', type=('build', 'run'))
+ depends_on('r-mvtnorm', type=('build', 'run'))
+ depends_on('r-lavaan@0.6-6:', type=('build', 'run'))
+ depends_on('r-sandwich', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-nor1mix/package.py b/var/spack/repos/builtin/packages/r-nor1mix/package.py
index 8c9a234766..35b5dc33dc 100644
--- a/var/spack/repos/builtin/packages/r-nor1mix/package.py
+++ b/var/spack/repos/builtin/packages/r-nor1mix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-nortest/package.py b/var/spack/repos/builtin/packages/r-nortest/package.py
index 112071de5d..567669412b 100644
--- a/var/spack/repos/builtin/packages/r-nortest/package.py
+++ b/var/spack/repos/builtin/packages/r-nortest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-np/package.py b/var/spack/repos/builtin/packages/r-np/package.py
index 57c9b8c21c..5cb03454b5 100644
--- a/var/spack/repos/builtin/packages/r-np/package.py
+++ b/var/spack/repos/builtin/packages/r-np/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RNp(RPackage):
- """This package provides a variety of nonparametric (and semiparametric)
+ """Nonparametric Kernel Smoothing Methods for Mixed Data Types
+
+ This package provides a variety of nonparametric (and semiparametric)
kernel methods that seamlessly handle a mix of continuous, unordered, and
ordered factor data types. We would like to gratefully acknowledge support
from the Natural Sciences and Engineering Research Council of Canada
@@ -19,6 +21,7 @@ class RNp(RPackage):
url = "https://cloud.r-project.org/src/contrib/np_0.60-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/np"
+ version('0.60-10', sha256='a27b4bbca8b83a289c98920c1c8f5e9979ba9772086893252a4297dd2698081a')
version('0.60-9', sha256='fe31a8985f0b1a576a7775022b7131093b1c9a8337734136d5fcad85fa6592fc')
version('0.60-8', sha256='924c342feb2a862fa3871a45db5f8434dbbfb900cfc40c001a0872108a3a069e')
version('0.60-2', sha256='25d667fc1056899516584b9d5d933377e6f4694d8e5e868dd047db572b69417f')
diff --git a/var/spack/repos/builtin/packages/r-npsurv/package.py b/var/spack/repos/builtin/packages/r-npsurv/package.py
index 1f9d5c63c7..f1eccb250c 100644
--- a/var/spack/repos/builtin/packages/r-npsurv/package.py
+++ b/var/spack/repos/builtin/packages/r-npsurv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,20 @@ from spack import *
class RNpsurv(RPackage):
- """Contains functions for non-parametric survival analysis of exact and
- interval-censored observations."""
+ """Nonparametric Survival Analysis
+
+ Non-parametric survival analysis of exact and interval-censored
+ observations. The methods implemented are developed by Wang (2007)
+ <doi:10.1111/j.1467-9868.2007.00583.x>, Wang (2008)
+ <doi:10.1016/j.csda.2007.10.018>, Wang and Taylor (2013)
+ <doi:10.1007/s11222-012-9341-9> and Wang and Fani (2018)
+ <doi:10.1007/s11222-017-9724-z>."""
homepage = "https://www.stat.auckland.ac.nz/~yongwang"
url = "https://cloud.r-project.org/src/contrib/npsurv_0.4-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/npsurv"
+ version('0.5-0', sha256='bc87db76e7017e178c2832a684fcd49c42e20054644b21b586413d26c8821dc6')
version('0.4-0', sha256='404cf7135dc40a04e9b81224a543307057a8278e11109ba1fcaa28e87c6204f3')
depends_on('r-lsei', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-numderiv/package.py b/var/spack/repos/builtin/packages/r-numderiv/package.py
index 925987a0f1..92416670d9 100644
--- a/var/spack/repos/builtin/packages/r-numderiv/package.py
+++ b/var/spack/repos/builtin/packages/r-numderiv/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-oligoclasses/package.py b/var/spack/repos/builtin/packages/r-oligoclasses/package.py
index ff553e2a6a..7c24b1333a 100644
--- a/var/spack/repos/builtin/packages/r-oligoclasses/package.py
+++ b/var/spack/repos/builtin/packages/r-oligoclasses/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class ROligoclasses(RPackage):
- """Classes for high-throughput arrays supported by oligo and crlmm.
+ """Classes for high-throughput arrays supported by oligo and crlmm
This package contains class definitions, validity checks, and
initialization methods for classes used by the oligo and crlmm
@@ -16,6 +16,7 @@ class ROligoclasses(RPackage):
homepage = "https://bioconductor.org/packages/oligoClasses"
git = "https://git.bioconductor.org/packages/oligoClasses.git"
+ version('1.52.0', commit='7995efbd2d26b8fa950830d62db92bdaf5cbeeea')
version('1.46.0', commit='325684f66fc92f778098f24bcfbef0ce3da9717c')
version('1.44.0', commit='d3e1134cdbea5f95b83215dc66e5f7b6a1cd0638')
version('1.42.0', commit='ef125700d487b470281a9c1e985390633c4dd2bd')
@@ -24,19 +25,17 @@ class ROligoclasses(RPackage):
depends_on('r@2.14:', type=('build', 'run'))
depends_on('r-biocgenerics@0.3.2:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.27.1:', when='@1.44.0:', type=('build', 'run'))
depends_on('r-biobase@2.17.8:', type=('build', 'run'))
depends_on('r-iranges@2.5.17:', type=('build', 'run'))
depends_on('r-genomicranges@1.23.7:', type=('build', 'run'))
depends_on('r-summarizedexperiment', type=('build', 'run'))
depends_on('r-biostrings@2.23.6:', type=('build', 'run'))
depends_on('r-affyio@1.23.2:', type=('build', 'run'))
- depends_on('r-ff', type=('build', 'run'))
depends_on('r-foreach', type=('build', 'run'))
- depends_on('r-biocinstaller', when='@1.38.0:1.42.0', type=('build', 'run'))
+ depends_on('r-biocmanager', when='@1.44.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
depends_on('r-rsqlite', type=('build', 'run'))
-
depends_on('r-dbi', when='@1.40.0:', type=('build', 'run'))
-
- depends_on('r-biocgenerics@0.27.1:', when='@1.44.0:', type=('build', 'run'))
- depends_on('r-biocmanager', when='@1.44.0:', type=('build', 'run'))
+ depends_on('r-ff', type=('build', 'run'))
+ depends_on('r-biocinstaller', when='@:1.42.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-openssl/package.py b/var/spack/repos/builtin/packages/r-openssl/package.py
index 71f648b480..b493fff84d 100644
--- a/var/spack/repos/builtin/packages/r-openssl/package.py
+++ b/var/spack/repos/builtin/packages/r-openssl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class ROpenssl(RPackage):
- """Bindings to OpenSSL libssl and libcrypto, plus custom SSH pubkey
+ """Toolkit for Encryption, Signatures and Certificates Based on OpenSSL
+
+ Bindings to OpenSSL libssl and libcrypto, plus custom SSH pubkey
parsers. Supports RSA, DSA and EC curves P-256, P-384 and P-521.
Cryptographic signatures can either be created and verified manually or via
x509 certificates. AES can be used in cbc, ctr or gcm mode for symmetric
@@ -22,6 +24,7 @@ class ROpenssl(RPackage):
url = "https://cloud.r-project.org/src/contrib/openssl_0.9.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/openssl"
+ version('1.4.3', sha256='342001df8ecff5df2cdf757f123d35ea4b449751045f708b91f27c1be0d48269')
version('1.4.1', sha256='f7fbecc75254fc43297a95a4338c674ab9ba2ec056b59e027d16d23122161fc6')
version('1.3', sha256='1c83f4d529adc1f5ec40e477c690a8d5b0a42422f3e542f1fc39062dcfaca4bf')
version('0.9.7', sha256='697d9e86f99270163744538dc3dc4d19d00af89a8570a1d304b110e1d2650e9d')
diff --git a/var/spack/repos/builtin/packages/r-openxlsx/package.py b/var/spack/repos/builtin/packages/r-openxlsx/package.py
index 9c7d4326e5..0901653f17 100644
--- a/var/spack/repos/builtin/packages/r-openxlsx/package.py
+++ b/var/spack/repos/builtin/packages/r-openxlsx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class ROpenxlsx(RPackage):
- """Simplifies the creation of Excel .xlsx files by providing a high level
+ """Read, Write and Edit xlsx Files
+
+ Simplifies the creation of Excel .xlsx files by providing a high level
interface to writing, styling and editing worksheets. Through the use of
'Rcpp', read/write times are comparable to the 'xlsx' and 'XLConnect'
packages with the added benefit of removing the dependency on Java."""
@@ -16,8 +18,10 @@ class ROpenxlsx(RPackage):
url = "https://cloud.r-project.org/src/contrib/openxlsx_4.1.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/openxlsx"
+ version('4.2.3', sha256='cdef89d826e50bef772af3e5eae935ca0316626a6e22f55f7631eac733b5e46f')
version('4.1.0.1', sha256='8b7011debe14714de035ef42797c8caa923162d5dc3cc3c2a299fc10eff3d4d1')
depends_on('r@3.3.0:', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
depends_on('r-zip', type=('build', 'run'))
+ depends_on('r-stringi', when='@4.2.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-optimx/package.py b/var/spack/repos/builtin/packages/r-optimx/package.py
new file mode 100644
index 0000000000..fc60567e37
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-optimx/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ROptimx(RPackage):
+ """Expanded Replacement and Extension of the 'optim' Function:
+
+ Provides a replacement and extension of the optim() function to call to
+ several function minimization codes in R in a single statement. These
+ methods handle smooth, possibly box constrained functions of several or
+ many parameters. Note that function 'optimr()' was prepared to simplify the
+ incorporation of minimization codes going forward. Also implements some
+ utility codes and some extra solvers, including safeguarded Newton methods.
+ Many methods previously separate are now included here. This is the version
+ for CRAN."""
+
+ cran = "optimx"
+
+ version('2020-4.2', sha256='6381c25c322287fc98ab1b2965d3f68c9a92c587c76aca1d33fd6428b2167101')
+
+ depends_on('r-numderiv', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-optparse/package.py b/var/spack/repos/builtin/packages/r-optparse/package.py
index ae987142db..313cb293ec 100644
--- a/var/spack/repos/builtin/packages/r-optparse/package.py
+++ b/var/spack/repos/builtin/packages/r-optparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,17 @@ from spack import *
class ROptparse(RPackage):
- """A command line parser inspired by Python's 'optparse' library to be used
- with Rscript to write "#!" shebang scripts that accept short and long
- flag/options"""
+ """Command Line Option Parser
+
+ A command line parser inspired by Python's 'optparse' library to be used
+ with Rscript to write "#!" shebang scripts that accept short and long
+ flag/options"""
homepage = "https://cloud.r-project.org/package=optparse"
url = "https://cloud.r-project.org/src/contrib/optparse_1.6.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/optparse"
+ version('1.6.6', sha256='51779d497146e9354b1153713d939e81551e08948c2b00e4b117b1377c0b60d0')
version('1.6.2', sha256='b5a5a49ae05005f20359868329b73daac83d50f5e088981dcf5c41399534377f')
version('1.6.1', sha256='819be3eff54cb7f3f18703eed9714fc655290ab8e169f87605433d069b597e13')
version('1.6.0', sha256='10e816bb8f5b08d52cfd3a0028903a8c62ef9cf7bfd85f9dae8af442e82bfbb4')
diff --git a/var/spack/repos/builtin/packages/r-ordinal/package.py b/var/spack/repos/builtin/packages/r-ordinal/package.py
index 0345f8f040..08c933573d 100644
--- a/var/spack/repos/builtin/packages/r-ordinal/package.py
+++ b/var/spack/repos/builtin/packages/r-ordinal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class ROrdinal(RPackage):
- """Implementation of cumulative link (mixed) models also known as ordered
+ """Regression Models for Ordinal Data
+
+ Implementation of cumulative link (mixed) models also known as ordered
regression models, proportional odds models, proportional hazards models
for grouped survival times and ordered logit/probit/... models. Estimation
is via maximum likelihood and mixed models are fitted with the Laplace
@@ -23,6 +25,7 @@ class ROrdinal(RPackage):
url = "https://cloud.r-project.org/src/contrib/ordinal_2019.4-25.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ordinal"
+ version('2019.12-10', sha256='7a41e7b7e852a8fa3e911f8859d36e5709ccec5ca42ee3de14a813b7aaac7725')
version('2019.4-25', sha256='2812ad7a123cae5dbe053d1fe5f2d9935afc799314077eac185c844e3c9d79df')
depends_on('r@2.13.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-org-hs-eg-db/package.py b/var/spack/repos/builtin/packages/r-org-hs-eg-db/package.py
index d0ce1a26e0..c2668dc61b 100644
--- a/var/spack/repos/builtin/packages/r-org-hs-eg-db/package.py
+++ b/var/spack/repos/builtin/packages/r-org-hs-eg-db/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,25 @@ from spack import *
class ROrgHsEgDb(RPackage):
- """Genome wide annotation for Human, primarily based on mapping
- using Entrez Gene identifiers."""
+ """Genome wide annotation for Human
+
+ Genome wide annotation for Human, primarily based on mapping using Entrez
+ Gene identifiers."""
homepage = "https://bioconductor.org/packages/org.Hs.eg.db/"
url = "https://www.bioconductor.org/packages/3.5/data/annotation/src/contrib/org.Hs.eg.db_3.4.1.tar.gz"
- version('3.8.2', sha256='a0a16b7428f9e3d6ba54ebf4e05cd97a7bd298510ec4cf46ed2bed3e8f80db02',
+ version('3.12.0',
+ sha256='48a1ab5347ec7a8602c555d9aba233102b61ffa2765826e5c8890ff0003249bb',
+ url='https://www.bioconductor.org/packages/3.12/data/annotation/src/contrib/org.Hs.eg.db_3.12.0.tar.gz')
+ version('3.8.2',
+ sha256='a0a16b7428f9e3d6ba54ebf4e05cd97a7bd298510ec4cf46ed2bed3e8f80db02',
url='https://www.bioconductor.org/packages/3.9/data/annotation/src/contrib/org.Hs.eg.db_3.8.2.tar.gz')
- version('3.4.1', sha256='0f87b3f1925a1d7007e5ad9200bdf511788bd1d7cb76f1121feeb109889c2b00')
-
- depends_on('r@2.7.0:', when='@3.4.1:', type=('build', 'run'))
+ version('3.4.1',
+ sha256='0f87b3f1925a1d7007e5ad9200bdf511788bd1d7cb76f1121feeb109889c2b00',
+ url='https://www.bioconductor.org/packages/3.5/data/annotation/src/contrib/org.Hs.eg.db_3.4.1.tar.gz')
- depends_on('r-annotationdbi@1.37.4:', when='@3.4.1:', type=('build', 'run'))
+ depends_on('r@2.7.0:', type=('build', 'run'))
+ depends_on('r-annotationdbi@1.37.4:', type=('build', 'run'))
depends_on('r-annotationdbi@1.43.1:', when='@3.8.2:', type=('build', 'run'))
+ depends_on('r-annotationdbi@1.51.3:', when='@3.12.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-organismdbi/package.py b/var/spack/repos/builtin/packages/r-organismdbi/package.py
index 3fe6243c6a..db674d3889 100644
--- a/var/spack/repos/builtin/packages/r-organismdbi/package.py
+++ b/var/spack/repos/builtin/packages/r-organismdbi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class ROrganismdbi(RPackage):
"""Software to enable the smooth interfacing of different database
- packages.
+ packages
The package enables a simple unified interface to several annotation
packages each of which has its own schema by taking advantage of the
@@ -17,6 +17,7 @@ class ROrganismdbi(RPackage):
homepage = "https://bioconductor.org/packages/OrganismDbi"
git = "https://git.bioconductor.org/packages/OrganismDbi.git"
+ version('1.32.0', commit='c8100c4fea17bf1b10d4efacc73a7e2866d649e3')
version('1.26.0', commit='495b4a8f8264d06d827537d43b3c6cc705244bb5')
version('1.24.0', commit='3428952dc0f267a01e256a1c0873656cfbfde7f8')
version('1.22.0', commit='24e953eb3847222d8018103b79b9fc72483cc513')
@@ -27,15 +28,14 @@ class ROrganismdbi(RPackage):
depends_on('r-biocgenerics@0.15.10:', type=('build', 'run'))
depends_on('r-annotationdbi@1.33.15:', type=('build', 'run'))
depends_on('r-genomicfeatures@1.23.31:', type=('build', 'run'))
+ depends_on('r-genomicfeatures@1.39.4:', when='@1.32.0:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
- depends_on('r-biocinstaller', when='@1.18.1:1.22.0', type=('build', 'run'))
+ depends_on('r-biocmanager', when='@1.24.0:', type=('build', 'run'))
depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.13:', when='@1.22.0:', type=('build', 'run'))
depends_on('r-graph', type=('build', 'run'))
depends_on('r-iranges', type=('build', 'run'))
depends_on('r-rbgl', type=('build', 'run'))
depends_on('r-dbi', type=('build', 'run'))
depends_on('r-s4vectors@0.9.25:', type=('build', 'run'))
-
- depends_on('r-genomicranges@1.31.13:', when='@1.22.0:', type=('build', 'run'))
-
- depends_on('r-biocmanager', when='@1.24.0:', type=('build', 'run'))
+ depends_on('r-biocinstaller', when='@:1.22.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-packrat/package.py b/var/spack/repos/builtin/packages/r-packrat/package.py
index 500de7626b..4a897ab431 100644
--- a/var/spack/repos/builtin/packages/r-packrat/package.py
+++ b/var/spack/repos/builtin/packages/r-packrat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-pacman/package.py b/var/spack/repos/builtin/packages/r-pacman/package.py
index 41e75f06ca..b4b021ce98 100644
--- a/var/spack/repos/builtin/packages/r-pacman/package.py
+++ b/var/spack/repos/builtin/packages/r-pacman/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-paleotree/package.py b/var/spack/repos/builtin/packages/r-paleotree/package.py
index 2464042e3b..030deeb29c 100644
--- a/var/spack/repos/builtin/packages/r-paleotree/package.py
+++ b/var/spack/repos/builtin/packages/r-paleotree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,14 +8,16 @@ from spack import *
class RPaleotree(RPackage):
- """Provides tools for transforming, a posteriori
- time-scaling, and modifying phylogenies containing
- extinct (i.e. fossil) lineages"""
+ """Paleontological and Phylogenetic Analyses of Evolution
+
+ Provides tools for transforming, a posteriori time-scaling, and modifying
+ phylogenies containing extinct (i.e. fossil) lineages"""
homepage = "https://github.com/dwbapst/paleotree"
url = "https://cloud.r-project.org/src/contrib/paleotree_3.1.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/paleotree"
+ version('3.3.25', sha256='aa64b9120075581229439227a12db776d052b03eb5f9721692a16a9402ac8712')
version('3.3.0', sha256='f8f6b0228dd5290b251cad3a8626689442b5aa793d8f072c8c2c7813a063df90')
version('3.1.3', sha256='4c1cc8a5e171cbbbd88f78914f86d5e6d144ae573816fbeeff2ab54a814ec614')
diff --git a/var/spack/repos/builtin/packages/r-pamr/package.py b/var/spack/repos/builtin/packages/r-pamr/package.py
index c7cb41c6d1..699e4657bc 100644
--- a/var/spack/repos/builtin/packages/r-pamr/package.py
+++ b/var/spack/repos/builtin/packages/r-pamr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-pan/package.py b/var/spack/repos/builtin/packages/r-pan/package.py
index f39d8f9fee..c19f6b6c81 100644
--- a/var/spack/repos/builtin/packages/r-pan/package.py
+++ b/var/spack/repos/builtin/packages/r-pan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-parallelly/package.py b/var/spack/repos/builtin/packages/r-parallelly/package.py
new file mode 100644
index 0000000000..e46b79b6d4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-parallelly/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RParallelly(RPackage):
+ """Enhancing the 'parallel' Package
+
+ Utility functions that enhance the 'parallel' package and support the
+ built-in parallel backends of the 'future' package. For example,
+ availableCores() gives the number of CPU cores available to your R process
+ as given by the operating system, 'cgroups' and Linux containers, R
+ options, and environment variables, including those set by job schedulers
+ on high-performance compute clusters. If none is set, it will fall back to
+ parallel::detectCores(). Another example is makeClusterPSOCK(), which is
+ backward compatible with parallel::makePSOCKcluster() while doing a better
+ job in setting up remote cluster workers without the need for configuring
+ the firewall to do port-forwarding to your local computer."""
+
+ homepage = "https://github.com/HenrikBengtsson/parallelly"
+ url = "https://cloud.r-project.org/src/contrib/parallelly_1.23.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/parallelly"
+
+ version('1.23.0', sha256='376ce2381587380a4da60f9563710d63084a605f93aa364e9349f2523e83bc08')
diff --git a/var/spack/repos/builtin/packages/r-parallelmap/package.py b/var/spack/repos/builtin/packages/r-parallelmap/package.py
index a0d047ace2..7738685c3c 100644
--- a/var/spack/repos/builtin/packages/r-parallelmap/package.py
+++ b/var/spack/repos/builtin/packages/r-parallelmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,20 @@ from spack import *
class RParallelmap(RPackage):
- """Unified parallelization framework for multiple back-end, designed for
- internal package and interactive usage. The main operation is a parallel
- "map" over lists. Supports local, multicore, mpi and BatchJobs mode.
- Allows "tagging" of the parallel operation with a level name that can be
- later selected by the user to switch on parallel execution for exactly
- this operation."""
+ """Unified Interface to Parallelization Back-Ends
+
+ Unified parallelization framework for multiple back-end, designed for
+ internal package and interactive usage. The main operation is a parallel
+ "map" over lists. Supports local, multicore, mpi and BatchJobs mode.
+ Allows "tagging" of the parallel operation with a level name that can be
+ later selected by the user to switch on parallel execution for exactly this
+ operation."""
homepage = "https://github.com/berndbischl/parallelMap"
url = "https://cloud.r-project.org/src/contrib/parallelMap_1.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/parallelMap"
+ version('1.5.0', sha256='4afa727f4786279718cc799e45e91859a46f5cbc1ee652b0f47ae3b9f9d45e4e')
version('1.4', sha256='fb6f15e325f729f1c5218768b17c20909ee857069c6cc5d8df50e1dafe26ed5b')
version('1.3', sha256='a52d93572c1b85281e41d8e3c2db97dda5fce96c222e04171b4489ec5000cd08')
diff --git a/var/spack/repos/builtin/packages/r-paramhelpers/package.py b/var/spack/repos/builtin/packages/r-paramhelpers/package.py
index 779df9f898..f4030bafea 100644
--- a/var/spack/repos/builtin/packages/r-paramhelpers/package.py
+++ b/var/spack/repos/builtin/packages/r-paramhelpers/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,24 @@ from spack import *
class RParamhelpers(RPackage):
- """Functions for parameter descriptions and operations in black-box
- optimization, tuning and machine learning. Parameters can be described
- (type, constraints, defaults, etc.), combined to parameter sets and can
- in general be programmed on. A useful OptPath object (archive) to log
- function evaluations is also provided."""
+ """Helpers for Parameters in Black-Box Optimization, Tuning and Machine Learning
+
+ Functions for parameter descriptions and operations in black-box
+ optimization, tuning and machine learning. Parameters can be described
+ (type, constraints, defaults, etc.), combined to parameter sets and can in
+ general be programmed on. A useful OptPath object (archive) to log function
+ evaluations is also provided."""
homepage = "https://github.com/berndbischl/ParamHelpers"
url = "https://cloud.r-project.org/src/contrib/ParamHelpers_1.10.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ParamHelpers"
+ version('1.14', sha256='b17652d0a69de3241a69f20be4ad1bfe02c413328a17f3c1ac7b73886a6ba2eb')
version('1.12', sha256='b54db9e6608ba530345c380c757a60cb2b78ab08992a890b1a41914ce7abcc14')
version('1.11', sha256='1614f4c0842cf822befc01228ab7263417f3423dd6a1dc24347b14f8491637a0')
version('1.10', sha256='80629ba62e93b0b706bf2e451578b94fbb9c5b95ff109ecfb5b011bfe0a0fa5b')
+ depends_on('r-backports', when='@1.11:', type=('build', 'run'))
depends_on('r-bbmisc@1.10:', type=('build', 'run'))
depends_on('r-checkmate@1.8.2:', type=('build', 'run'))
- depends_on('r-backports', when='@1.11:', type=('build', 'run'))
depends_on('r-fastmatch', when='@1.11:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-party/package.py b/var/spack/repos/builtin/packages/r-party/package.py
index 18303c3b1b..8db792c179 100644
--- a/var/spack/repos/builtin/packages/r-party/package.py
+++ b/var/spack/repos/builtin/packages/r-party/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,30 @@ from spack import *
class RParty(RPackage):
- """A computational toolbox for recursive partitioning."""
+ """A Laboratory for Recursive Partytioning
+
+ A computational toolbox for recursive partitioning. The core of the package
+ is ctree(), an implementation of conditional inference trees which embed
+ tree-structured regression models into a well defined theory of
+ conditional inference procedures. This non-parametric class of regression
+ trees is applicable to all kinds of regression problems, including nominal,
+ ordinal, numeric, censored as well as multivariate response variables and
+ arbitrary measurement scales of the covariates. Based on conditional
+ inference trees, cforest() provides an implementation of Breiman's random
+ forests. The function mob() implements an algorithm for recursive
+ partitioning based on parametric models (e.g. linear models, GLMs or
+ survival regression) employing parameter instability tests for split
+ selection. Extensible functionality for visualizing tree-structured
+ regression models is available. The methods are described in Hothorn et al.
+ (2006) <doi:10.1198/106186006X133933>, Zeileis et al. (2008)
+ <doi:10.1198/106186008X319331> and Strobl et al. (2007)
+ <doi:10.1186/1471-2105-8-25>."""
homepage = "https://cloud.r-project.org/package=party"
url = "https://cloud.r-project.org/src/contrib/party_1.1-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/party"
+ version('1.3-5', sha256='1c3a35d3fe56498361542b3782de2326561c14a8fa1b76f3c9f13beb1fd51364')
version('1.3-3', sha256='9f72eea02d43a4cee105790ae7185b0478deb6011ab049cc9d31a0df3abf7ce9')
version('1.3-2', sha256='9f350fa21114151c49bccc3d5f8536dbc5a608cfd88f60461c9805a4c630510b')
version('1.1-2', sha256='c3632b4b02dc12ec949e2ee5b24004e4a4768b0bc9737432e9a85acbc2ed0e74')
diff --git a/var/spack/repos/builtin/packages/r-partykit/package.py b/var/spack/repos/builtin/packages/r-partykit/package.py
index f6ad1cf369..c822d274ec 100644
--- a/var/spack/repos/builtin/packages/r-partykit/package.py
+++ b/var/spack/repos/builtin/packages/r-partykit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,27 +8,33 @@ from spack import *
class RPartykit(RPackage):
- """A toolkit with infrastructure for representing, summarizing, and
+ """A Toolkit for Recursive Partytioning
+
+ A toolkit with infrastructure for representing, summarizing, and
visualizing tree-structured regression and classification models. This
unified infrastructure can be used for reading/coercing tree models from
different sources ('rpart', 'RWeka', 'PMML') yielding objects that share
functionality for print()/plot()/predict() methods. Furthermore, new and
improved reimplementations of conditional inference trees (ctree()) and
model-based recursive partitioning (mob()) from the 'party' package are
- provided based on the new infrastructure."""
+ provided based on the new infrastructure. A description of this package was
+ published by Hothorn and Zeileis (2015)
+ <https://jmlr.org/papers/v16/hothorn15a.html>."""
homepage = "http://partykit.r-forge.r-project.org/partykit"
url = "https://cloud.r-project.org/src/contrib/partykit_1.1-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/partykit"
+ version('1.2-11', sha256='3a83332d782a235cfb5ba60cc8f1c51d46ca5477b22979a614f514d1c951c602')
version('1.2-5', sha256='f48e30790f93fa5d03e68e8ce71ce33d009d107d46d45d85da2016b38b27629c')
version('1.2-3', sha256='56749b246e283f94ac2ad2cdcfc0a477e05cd44b5e8f6e462c26f4dff818da35')
version('1.1-1', sha256='d9f4762690cd85ee4e3dc44f5a14069d10a1900afdfbcdc284d2a94b4a8e8332')
depends_on('r@3.1.0:', type=('build', 'run'))
- depends_on('r-survival', type=('build', 'run'))
- depends_on('r-formula@1.2-1:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.2-11:', type=('build', 'run'))
depends_on('r-libcoin@1.0-0:', when='@1.2-0:', type=('build', 'run'))
depends_on('r-mvtnorm', when='@1.2-0:', type=('build', 'run'))
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-formula@1.2-1:', type=('build', 'run'))
depends_on('r-inum@1.0-0:', when='@1.2-0:', type=('build', 'run'))
depends_on('r-rpart@4.1-11:', when='@1.2-0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-patchwork/package.py b/var/spack/repos/builtin/packages/r-patchwork/package.py
new file mode 100644
index 0000000000..9a7a37ab22
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-patchwork/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPatchwork(RPackage):
+ """The Composer of Plots
+
+ The 'ggplot2' package provides a strong API for sequentially building up a
+ plot, but does not concern itself with composition of multiple plots.
+ 'patchwork' is a package that expands the API to allow for arbitrarily
+ complex composition of plots by, among others, providing mathematical
+ operators for combining multiple plots. Other packages that try to address
+ this need (but with a different approach) are 'gridExtra' and 'cowplot'."""
+
+ homepage = "https://patchwork.data-imaginist.com/"
+ url = "https://cloud.r-project.org/src/contrib/patchwork_1.1.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/patchwork"
+
+ version('1.1.1', sha256='cf0d7d9f92945729b499d6e343441c55007d5b371206d5389b9e5154dc7cf481')
+
+ depends_on('r-ggplot2@3.0.0:', type=('build', 'run'))
+ depends_on('r-gtable', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pathview/package.py b/var/spack/repos/builtin/packages/r-pathview/package.py
index 80b6a1aebd..177171627d 100644
--- a/var/spack/repos/builtin/packages/r-pathview/package.py
+++ b/var/spack/repos/builtin/packages/r-pathview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RPathview(RPackage):
- """a tool set for pathway based data integration and visualization.
+ """a tool set for pathway based data integration and visualization
Pathview is a tool set for pathway based data integration and
visualization. It maps and renders a wide variety of biological data on
@@ -21,18 +21,20 @@ class RPathview(RPackage):
homepage = "https://bioconductor.org/packages/pathview"
git = "https://git.bioconductor.org/packages/pathview.git"
+ version('1.30.1', commit='a6a32395db408798cb076894678e90148bae6bf4')
version('1.24.0', commit='e4401c1425c980ce2e6e478a4602a9f6d36ccd8d')
version('1.22.3', commit='ff86f9e166a5b03bbed1a0ad276778958c3045ce')
version('1.20.0', commit='a195afa6ba6c7917af2c7f77170f0644c46880c7')
version('1.18.2', commit='d2048981696564ec75f661ed665977d3a6e09188')
version('1.16.7', commit='fc560ed15ef7393a73d35e714716cc24dc835339')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@2.10:', type=('build', 'run'))
- depends_on('r-org-hs-eg-db', type=('build', 'run'))
depends_on('r-kegggraph', type=('build', 'run'))
depends_on('r-xml', type=('build', 'run'))
depends_on('r-rgraphviz', type=('build', 'run'))
depends_on('r-graph', type=('build', 'run'))
depends_on('r-png', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-org-hs-eg-db', type=('build', 'run'))
depends_on('r-keggrest', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pbapply/package.py b/var/spack/repos/builtin/packages/r-pbapply/package.py
index f63552328f..47a3dd5018 100644
--- a/var/spack/repos/builtin/packages/r-pbapply/package.py
+++ b/var/spack/repos/builtin/packages/r-pbapply/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,19 @@ from spack import *
class RPbapply(RPackage):
- """A lightweight package that adds progress bar to vectorized R
- apply functions."""
+ """Adding Progress Bar to '*apply' Functions
+
+ A lightweight package that adds progress bar to vectorized R functions
+ ('*apply'). The implementation can easily be added to functions where
+ showing the progress is useful (e.g. bootstrap). The type and style of the
+ progress bar (with percentages or remaining time) can be set through
+ options. Supports several parallel processing backends."""
homepage = "https://cloud.r-project.org/package=pbapply"
url = "https://cloud.r-project.org/src/contrib/pbapply_1.3-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pbapply"
+ version('1.4-3', sha256='8fe6287535be766b5a688810e2cc1ca4e668ac6b42b6e832473fe5701133eb21')
version('1.4-1', sha256='b3633349181db944e1dfc4422b4728a6562e454117a232cbb51633906cd27cad')
version('1.3-4', sha256='cdfdaf9b8aecbe48daac858aecaf65a766b74a363d1eb7cd6ebf27c0549f6552')
version('1.3-3', sha256='7379b21d1176db5769f5cac858dd12c975736e80a600870180cec9625cf51047')
diff --git a/var/spack/repos/builtin/packages/r-pbdzmq/package.py b/var/spack/repos/builtin/packages/r-pbdzmq/package.py
index e58328adf3..08b6bb9467 100644
--- a/var/spack/repos/builtin/packages/r-pbdzmq/package.py
+++ b/var/spack/repos/builtin/packages/r-pbdzmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,9 @@ from spack import *
class RPbdzmq(RPackage):
- """'ZeroMQ' is a well-known library for high-performance asynchronous
+ """Programming with Big Data -- Interface to 'ZeroMQ'
+
+ 'ZeroMQ' is a well-known library for high-performance asynchronous
messaging in scalable, distributed applications. This package provides
high level R wrapper functions to easily utilize 'ZeroMQ'. We mainly focus
on interactive client/server programming frameworks. For convenience, a
@@ -20,11 +22,13 @@ class RPbdzmq(RPackage):
url = "https://cloud.r-project.org/src/contrib/pbdZMQ_0.2-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pbdZMQ"
+ version('0.3-4', sha256='07794bd6858e093f8b6b879ddd5ab0195449b47a41b70cab2f60603f0a53b129')
version('0.3-3', sha256='ae26c13400e2acfb6463ff9b67156847a22ec79f3b53baf65119efaba1636eca')
version('0.3-2', sha256='ece2a2881c662f77126e4801ba4e01c991331842b0d636ce5a2b591b9de3fc37')
version('0.2-4', sha256='bfacac88b0d4156c70cf63fc4cb9969a950693996901a4fa3dcd59949ec065f6')
- depends_on('r@3.0.0:', when='@:0.2-5', type=('build', 'run'))
+ depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r@3.2.0:', when='@0.2-6:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.3-4:', type=('build', 'run'))
depends_on('r-r6', when='@:0.2-6', type=('build', 'run'))
depends_on('libzmq@4.0.4:')
diff --git a/var/spack/repos/builtin/packages/r-pbivnorm/package.py b/var/spack/repos/builtin/packages/r-pbivnorm/package.py
new file mode 100644
index 0000000000..1e0dea5143
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pbivnorm/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPbivnorm(RPackage):
+ """ Vectorized Bivariate Normal CDF:
+
+ Provides a vectorized R function for calculating probabilities from a
+ standard bivariate normal CDF."""
+
+ homepage = "https://github.com/brentonk/pbivnorm"
+ cran = "pbivnorm"
+
+ version('0.6.0', sha256='07c37d507cb8f8d2d9ae51a9a6d44dfbebd8a53e93c242c4378eaddfb1cc5f16')
diff --git a/var/spack/repos/builtin/packages/r-pbkrtest/package.py b/var/spack/repos/builtin/packages/r-pbkrtest/package.py
index c7b7be8c42..780f0b9f5e 100644
--- a/var/spack/repos/builtin/packages/r-pbkrtest/package.py
+++ b/var/spack/repos/builtin/packages/r-pbkrtest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,22 +7,36 @@ from spack import *
class RPbkrtest(RPackage):
- """Test in mixed effects models. Attention is on mixed effects models as
- implemented in the 'lme4' package. This package implements a parametric
- bootstrap test and a Kenward Roger modification of F-tests for linear mixed
- effects models and a parametric bootstrap test for generalized linear mixed
- models."""
+ """Parametric Bootstrap, Kenward-Roger and Satterthwaite Based Methods for
+ Test in Mixed Models
+
+ Test in mixed effects models. Attention is on mixed effects models as
+ implemented in the 'lme4' package. For linear mixed models, this package
+ implements (1) a parametric bootstrap test, (2) a Kenward-Roger-typ
+ modification of F-tests for linear mixed effects models and (3) a
+ Satterthwaite-type modification of F-tests for linear mixed effects models.
+ The package also implements a parametric bootstrap test for generalized
+ linear mixed models. The facilities of the package are documented in the
+ paper by Halehoh and Hojsgaard, (2012, <doi:10.18637/jss.v059.i09>).
+ Please see 'citation("pbkrtest")' for citation details."""
homepage = "http://people.math.aau.dk/~sorenh/software/pbkrtest/"
url = "https://cloud.r-project.org/src/contrib/pbkrtest_0.4-6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pbkrtest"
+ version('0.5-0.1', sha256='f56525488c6efe4a5cbf849bf9a82747041478605b166c29bad54e464e46f469')
version('0.4-7', sha256='5cbb03ad2b2468720a5a610a0ebda48ac08119a34fca77810a85f554225c23ea')
version('0.4-6', sha256='9d28b8916fea3ffec8d5958bb8c531279b1e273f21fdbeb2fcad6d7e300a9c01')
version('0.4-4', sha256='a685392ef3fca0ddc2254f6cc9bba6bc22b298fa823359fc4515e64e753abd31')
- depends_on('r@3.0.2:', when='@:0.4-5', type=('build', 'run'))
+ depends_on('r@3.0.2:', type=('build', 'run'))
depends_on('r@3.2.3:', when='@0.4-6:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.5-0.1:', type=('build', 'run'))
depends_on('r-lme4@1.1.10:', type=('build', 'run'))
- depends_on('r-matrix@1.2.3:', type=('build', 'run'))
+ depends_on('r-broom', when='@0.5-0.1:', type=('build', 'run'))
+ depends_on('r-dplyr', when='@0.5-0.1:', type=('build', 'run'))
+ depends_on('r-magrittr', when='@0.5-0.1:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-matrix@1.2.3:', type=('build', 'run'))
+ depends_on('r-numderiv', when='@0.5-0.1:', type=('build', 'run'))
+ depends_on('r-knitr', when='@0.5-0.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pcamethods/package.py b/var/spack/repos/builtin/packages/r-pcamethods/package.py
index 9981212244..7da7698eee 100644
--- a/var/spack/repos/builtin/packages/r-pcamethods/package.py
+++ b/var/spack/repos/builtin/packages/r-pcamethods/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RPcamethods(RPackage):
- """A collection of PCA methods.
+ """A collection of PCA methods
Provides Bayesian PCA, Probabilistic PCA, Nipals PCA, Inverse Non-Linear
PCA and the conventional SVD PCA. A cluster based method for missing
@@ -22,6 +22,7 @@ class RPcamethods(RPackage):
homepage = "https://bioconductor.org/packages/pcaMethods"
git = "https://git.bioconductor.org/packages/pcaMethods.git"
+ version('1.82.0', commit='d500b3363308f1f8ca70625c5cd10cce59b27641')
version('1.76.0', commit='5db995330ced37dfd5ddad6ad1d90b4815d3127a')
version('1.74.0', commit='1b8f0a5cdfe3664119d0d7e926a2e0fe7320133c')
version('1.72.0', commit='1bb8c7d056645e62ee5179f6bb30b6594ebf3bfd')
diff --git a/var/spack/repos/builtin/packages/r-pcapp/package.py b/var/spack/repos/builtin/packages/r-pcapp/package.py
index 299beee233..7fdd18ff2d 100644
--- a/var/spack/repos/builtin/packages/r-pcapp/package.py
+++ b/var/spack/repos/builtin/packages/r-pcapp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-pegas/package.py b/var/spack/repos/builtin/packages/r-pegas/package.py
new file mode 100644
index 0000000000..5c60591cf7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pegas/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPegas(RPackage):
+ """Population and Evolutionary Genetics Analysis System
+
+ Functions for reading, writing, plotting, analysing, and
+ manipulating allelic and haplotypic data, including from VCF files,
+ and for the analysis of population nucleotide sequences and
+ micro-satellites including coalescent analyses, linkage
+ disequilibrium, population structure (Fst, Amova) and equilibrium
+ (HWE), haplotype networks, minimum spanning tree and network, and
+ median-joining networks."""
+
+ homepage = "http://ape-package.ird.fr/pegas.html"
+ url = "https://cloud.r-project.org/src/contrib/pegas_0.14.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/pegas"
+
+ maintainers = ['dorton21']
+
+ version('0.14', sha256='7df90e6c4a69e8dbed2b3f68b18f1975182475bf6f86d4159256b52fd5332053')
+
+ depends_on('r@3.2.0:', type=('build', 'run'))
+ depends_on('r-ape@5.3-11:', type=('build', 'run'))
+ depends_on('r-adegenet', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-permute/package.py b/var/spack/repos/builtin/packages/r-permute/package.py
index b181976baa..04bb2e004e 100644
--- a/var/spack/repos/builtin/packages/r-permute/package.py
+++ b/var/spack/repos/builtin/packages/r-permute/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-pfam-db/package.py b/var/spack/repos/builtin/packages/r-pfam-db/package.py
index df7d456787..a0c945fc94 100644
--- a/var/spack/repos/builtin/packages/r-pfam-db/package.py
+++ b/var/spack/repos/builtin/packages/r-pfam-db/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,25 @@ from spack import *
class RPfamDb(RPackage):
- """A set of protein ID mappings for PFAM assembled using data from
+ """A set of protein ID mappings for PFAM
+
+ A set of protein ID mappings for PFAM assembled using data from
public repositories."""
homepage = "https://www.bioconductor.org/packages/PFAM.db/"
url = "https://www.bioconductor.org/packages/3.5/data/annotation/src/contrib/PFAM.db_3.4.1.tar.gz"
- version('3.10.0', sha256='038888f95ce69230ac0e0b08aa3bcb09965682415520d437a7fb0a031eefe158')
- version('3.4.1', sha256='fc45a0d53139daf85873f67bd3f1b68f2d883617f4447caddbd2d7dcc58a393f')
+ version('3.12.0',
+ sha256='ec42d067522baf2d7d3ca78d4f8cc0dac08a4b98f1d890f52424e5d5b16f2fe9',
+ url='https://bioconductor.org/packages/3.12/data/annotation/src/contrib/PFAM.db_3.12.0.tar.gz')
+ version('3.10.0',
+ sha256='038888f95ce69230ac0e0b08aa3bcb09965682415520d437a7fb0a031eefe158',
+ url='https://bioconductor.org/packages/3.10/data/annotation/src/contrib/PFAM.db_3.10.0.tar.gz')
+ version('3.4.1',
+ sha256='fc45a0d53139daf85873f67bd3f1b68f2d883617f4447caddbd2d7dcc58a393f',
+ url='https://bioconductor.org/packages/3.5/data/annotation/src/contrib/PFAM.db_3.4.1.tar.gz')
depends_on('r@2.7.0:', when='@3.4.1:', type=('build', 'run'))
depends_on('r-annotationdbi@1.37.4:', when='@3.4.1:', type=('build', 'run'))
-
depends_on('r-annotationdbi@1.47.1:', when='@3.10.0:', type=('build', 'run'))
+ depends_on('r-annotationdbi@1.51.3:', when='@3.12.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-phangorn/package.py b/var/spack/repos/builtin/packages/r-phangorn/package.py
index c7acba152f..76e5b9c651 100644
--- a/var/spack/repos/builtin/packages/r-phangorn/package.py
+++ b/var/spack/repos/builtin/packages/r-phangorn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-phantompeakqualtools/package.py b/var/spack/repos/builtin/packages/r-phantompeakqualtools/package.py
index dd11719596..a55abe88c0 100644
--- a/var/spack/repos/builtin/packages/r-phantompeakqualtools/package.py
+++ b/var/spack/repos/builtin/packages/r-phantompeakqualtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-pheatmap/package.py b/var/spack/repos/builtin/packages/r-pheatmap/package.py
new file mode 100644
index 0000000000..9ab1a6a852
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pheatmap/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPheatmap(RPackage):
+ """Pretty Heatmaps
+
+ Implementation of heatmaps that offers more control over dimensions and
+ appearance."""
+
+ homepage = "https://cloud.r-project.org/package=pheatmap"
+ url = "https://cloud.r-project.org/src/contrib/pheatmap_1.0.12.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/pheatmap"
+
+ version('1.0.12', sha256='579d96ee0417203b85417780eca921969cda3acc210c859bf9dfeff11539b0c1')
+
+ depends_on('r@2.0:', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-gtable', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-philentropy/package.py b/var/spack/repos/builtin/packages/r-philentropy/package.py
index 2814ebc676..d4cada3fa6 100644
--- a/var/spack/repos/builtin/packages/r-philentropy/package.py
+++ b/var/spack/repos/builtin/packages/r-philentropy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-phylobase/package.py b/var/spack/repos/builtin/packages/r-phylobase/package.py
index 7cfe791b3b..f97bd4895c 100644
--- a/var/spack/repos/builtin/packages/r-phylobase/package.py
+++ b/var/spack/repos/builtin/packages/r-phylobase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-phyloseq/package.py b/var/spack/repos/builtin/packages/r-phyloseq/package.py
index 84ebc98ba4..05a380d6bf 100644
--- a/var/spack/repos/builtin/packages/r-phyloseq/package.py
+++ b/var/spack/repos/builtin/packages/r-phyloseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RPhyloseq(RPackage):
- """Handling and analysis of high-throughput microbiome census data.
+ """Handling and analysis of high-throughput microbiome census data
phyloseq provides a set of classes and tools to facilitate the import,
storage, analysis, and graphical display of microbiome census data."""
@@ -15,6 +15,7 @@ class RPhyloseq(RPackage):
homepage = "https://bioconductor.org/packages/phyloseq"
git = "https://git.bioconductor.org/packages/phyloseq.git"
+ version('1.34.0', commit='cbed93ead5528fe9024d646c597dab9fc95952d3')
version('1.28.0', commit='a86ed1e0a650fdf80bee5a0a5a82aaa5a276178d')
version('1.26.1', commit='a084072bc9e057b90adfbd59e27db2a1ecee151c')
version('1.24.2', commit='829992f88c79de48bb8749678624e2bbd3b66645')
@@ -22,13 +23,19 @@ class RPhyloseq(RPackage):
version('1.20.0', commit='107d1d5e3437a6e33982c06a548d3cc91df2a7e0')
depends_on('r@3.3.0:', type=('build', 'run'))
- depends_on('r-biocgenerics@0.18.0:', type=('build', 'run'))
+ depends_on('r@3.4.0:', when='@1.22.3', type=('build', 'run'))
depends_on('r-ade4@1.7.4:', type=('build', 'run'))
depends_on('r-ape@3.4:', type=('build', 'run'))
+ depends_on('r-ape@5.0:', when='@1.22.3:', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biobase@2.36.2:', when='@1.22.3:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.18.0:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.22.0:', when='@1.22.3:', type=('build', 'run'))
depends_on('r-biomformat@1.0.0:', type=('build', 'run'))
depends_on('r-biostrings@2.40.0:', type=('build', 'run'))
depends_on('r-cluster@2.0.4:', type=('build', 'run'))
depends_on('r-data-table@1.9.6:', type=('build', 'run'))
+ depends_on('r-data-table@1.10.4:', when='@1.22.3:', type=('build', 'run'))
depends_on('r-foreach@1.4.3:', type=('build', 'run'))
depends_on('r-ggplot2@2.1.0:', type=('build', 'run'))
depends_on('r-igraph@1.0.1:', type=('build', 'run'))
@@ -37,13 +44,5 @@ class RPhyloseq(RPackage):
depends_on('r-reshape2@1.4.1:', type=('build', 'run'))
depends_on('r-scales@0.4.0:', type=('build', 'run'))
depends_on('r-vegan@2.3.5:', type=('build', 'run'))
- depends_on('r-biobase', type=('build', 'run'))
-
- depends_on('r@3.4.0:', when='@1.22.3:', type=('build', 'run'))
- depends_on('r-ape@5.0:', when='@1.22.3:', type=('build', 'run'))
- depends_on('r-biobase@2.36.2:', when='@1.22.3:', type=('build', 'run'))
- depends_on('r-biocgenerics@0.22.0:', when='@1.22.3:', type=('build', 'run'))
- depends_on('r-data-table@1.10.4:', when='@1.22.3:', type=('build', 'run'))
depends_on('r-vegan@2.4:', when='@1.22.3:', type=('build', 'run'))
-
depends_on('r-vegan@2.5:', when='@1.24.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-phylostratr/package.py b/var/spack/repos/builtin/packages/r-phylostratr/package.py
index a84c4333a9..bd518ba865 100644
--- a/var/spack/repos/builtin/packages/r-phylostratr/package.py
+++ b/var/spack/repos/builtin/packages/r-phylostratr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-phytools/package.py b/var/spack/repos/builtin/packages/r-phytools/package.py
index 6bae38dbf9..27cdca7d50 100644
--- a/var/spack/repos/builtin/packages/r-phytools/package.py
+++ b/var/spack/repos/builtin/packages/r-phytools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,28 +7,49 @@ from spack import *
class RPhytools(RPackage):
- """Phylogenetic Tools for Comparative Biology (and Other Things)"""
+ """Phylogenetic Tools for Comparative Biology (and Other Things)
+
+ A wide range of functions for phylogenetic analysis. Functionality is
+ concentrated in phylogenetic comparative biology, but also includes
+ numerous methods for visualizing, manipulating, reading or writing, and
+ even inferring phylogenetic trees and data. Included among the functions in
+ phylogenetic comparative biology are various for ancestral state
+ reconstruction, model-fitting, simulation of phylogenies and data, and
+ multivariate analysis. There are a broad range of plotting methods for
+ phylogenies and comparative data which include, but are not restricted to,
+ methods for mapping trait evolution on trees, for projecting trees into
+ phenotypic space or a geographic map, and for visualizing correlated
+ speciation between trees. Finally, there are a number of functions for
+ reading, writing, analyzing, inferring, simulating, and manipulating
+ phylogenetic trees and comparative data not covered by other packages. For
+ instance, there are functions for randomly or non-randomly attaching
+ species or clades to a phylogeny, for estimating supertrees or consensus
+ phylogenies from a set, for simulating trees and phylogenetic data under a
+ range of models, and for a wide variety of other manipulations and analyses
+ that phylogenetic biologists might find useful in their research."""
homepage = "http://github.com/liamrevell/phytools"
url = "https://cloud.r-project.org/src/contrib/phytools_0.6-60.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/phytools/"
+ version('0.7-70', sha256='e3432c3b006e5cc6f1292bebd81ebc20044edf1f56c3d27a3497f738eb99f0d3')
version('0.6-99', sha256='2ef532cba77c5f73803bd34582bef05709705311a0b50e42316e69944567390f')
version('0.6-60', sha256='55cad759510d247ebbf03a53a46caddadd3bf87584ccf7fcd6dd06d44516b377')
depends_on('r@3.2.0:', type=('build', 'run'))
- depends_on('r-animation', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.7-70:', type=('build', 'run'))
depends_on('r-ape@4.0:', type=('build', 'run'))
+ depends_on('r-maps', type=('build', 'run'))
depends_on('r-clustergeneration', type=('build', 'run'))
depends_on('r-coda', type=('build', 'run'))
depends_on('r-combinat', type=('build', 'run'))
depends_on('r-expm', type=('build', 'run'))
+ depends_on('r-gtools', when='@0.6-99:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
- depends_on('r-maps', type=('build', 'run'))
depends_on('r-mnormt', type=('build', 'run'))
depends_on('r-nlme', type=('build', 'run'))
depends_on('r-numderiv', type=('build', 'run'))
depends_on('r-phangorn@2.3.1:', type=('build', 'run'))
depends_on('r-plotrix', type=('build', 'run'))
depends_on('r-scatterplot3d', type=('build', 'run'))
- depends_on('r-gtools', when='@0.6-99:', type=('build', 'run'))
+ depends_on('r-animation', when='@:0.6-99', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-picante/package.py b/var/spack/repos/builtin/packages/r-picante/package.py
index 1eec2c274d..bc3e5b047e 100644
--- a/var/spack/repos/builtin/packages/r-picante/package.py
+++ b/var/spack/repos/builtin/packages/r-picante/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,27 @@ from spack import *
class RPicante(RPackage):
- """R tools for integrating phylogenies and ecology"""
+ """R tools for integrating phylogenies and ecology
+
+ Functions for phylocom integration, community analyses, null-models, traits
+ and evolution. Implements numerous ecophylogenetic approaches including
+ measures of community phylogenetic and trait diversity, phylogenetic
+ signal, estimation of trait values for unobserved taxa, null models for
+ community and phylogeny randomizations, and utility functions for data
+ input/output and phylogeny plotting. A full description of package
+ functionality and methods are provided by Kembel et al. (2010)
+ <doi:10.1093/bioinformatics/btq166>."""
homepage = "https://cloud.r-project.org/package=picante"
url = "https://cloud.r-project.org/src/contrib/picante_1.6-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/picante"
+ version('1.8.2', sha256='56565ca7f7c37f49c961372a816724967c21a4f5025cd69b8b671122bfdc4aa7')
version('1.8', sha256='81a6308dbb53c9cdab30c1f9ac727abee76314351823b3a2142c21ed8e1498ad')
version('1.7', sha256='75e4d73080db67e776562a1d58685438461cbde39af46900c7838da56aef0a62')
version('1.6-2', sha256='4db3a5a0fe5e4e9197c96245195843294fbb8d0a324edcde70c6ab01276ab7ff')
version('1.6-1', sha256='2708315b26737857a6729fd67bde06bc939930035c5b09a8bba472a593f24000')
depends_on('r-ape', type=('build', 'run'))
- depends_on('r-nlme', type=('build', 'run'))
depends_on('r-vegan', type=('build', 'run'))
+ depends_on('r-nlme', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pillar/package.py b/var/spack/repos/builtin/packages/r-pillar/package.py
index 325d40c4da..4036ce0d56 100644
--- a/var/spack/repos/builtin/packages/r-pillar/package.py
+++ b/var/spack/repos/builtin/packages/r-pillar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RPillar(RPackage):
- """Provides a 'pillar' generic designed for formatting columns of data
- using the full range of colours provided by modern terminals."""
+ """Coloured Formatting for Columns
+
+ Provides a 'pillar' generic designed for formatting columns of data using
+ the full range of colours provided by modern terminals."""
homepage = "https://cloud.r-project.org/package=pillar"
url = "https://cloud.r-project.org/src/contrib/pillar_1.3.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pillar"
+ version('1.4.7', sha256='cdedb2b2a4854e917f43b0c6379efefda9d7ff4e58dec2a3159a80ee8288f298')
version('1.4.2', sha256='bababb76b6db06dc32ccd947dbad6c164a1749ff5b558c6783ad03570f010825')
version('1.4.1', sha256='f571ca7a3ef0927747510b972da31a26da24b9da68990fe1bbc9d4ae58028c55')
version('1.3.1', sha256='b338b55f956dd7134f379d39bb94dfb25e13cf27999d6a6e6dc9f292755acbf6')
@@ -28,7 +31,10 @@ class RPillar(RPackage):
depends_on('r-cli', type=('build', 'run'))
depends_on('r-crayon@1.3.4:', type=('build', 'run'))
+ depends_on('r-ellipsis', when='@1.4.7:', type=('build', 'run'))
depends_on('r-fansi', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@1.4.7:', type=('build', 'run'))
depends_on('r-rlang@0.3.0:', type=('build', 'run'))
depends_on('r-utf8@1.1.0:', type=('build', 'run'))
depends_on('r-vctrs', when='@1.4.0:', type=('build', 'run'))
+ depends_on('r-vctrs@0.2.0:', when='@1.4.7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pinfsc50/package.py b/var/spack/repos/builtin/packages/r-pinfsc50/package.py
new file mode 100644
index 0000000000..0385c73369
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pinfsc50/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPinfsc50(RPackage):
+ """Sequence ('FASTA'), Annotation ('GFF') and Variants ('VCF') for 17
+ Samples of 'P. Infestans" and 1 'P. Mirabilis'
+
+ Genomic data for the plant pathogen "Phytophthora infestans." It includes
+ a variant file ('VCF'), a sequence file ('FASTA') and an annotation file
+ ('GFF'). This package is intended to be used as example data for packages
+ that work with genomic data."""
+
+ homepage = "https://cloud.r-project.org/web/packages/pinfsc50/index.html"
+ cran = "pinfsc50"
+
+ maintainers = ['dorton21']
+
+ version('1.2.0', sha256='ed1fe214b9261feef8abfbf724c2bd9070d68e99a6ea95208aff2c57bbef8794')
+
+ depends_on('r@3.2.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pixmap/package.py b/var/spack/repos/builtin/packages/r-pixmap/package.py
new file mode 100644
index 0000000000..29b7741291
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pixmap/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPixmap(RPackage):
+ """Bitmap Images ("Pixel Maps")
+
+ Functions for import, export, plotting and other manipulations of bitmapped
+ images."""
+
+ homepage = "https://cloud.r-project.org/package=pixmap"
+ url = "https://cloud.r-project.org/src/contrib/pixmap_0.4-11.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/pixmap"
+
+ version('0.4-11', sha256='6fa010749a59cdf56aad9f81271473b7d55697036203f2cd5d81372bcded7412')
diff --git a/var/spack/repos/builtin/packages/r-pkgbuild/package.py b/var/spack/repos/builtin/packages/r-pkgbuild/package.py
index 5dd2a8c97e..996930935e 100644
--- a/var/spack/repos/builtin/packages/r-pkgbuild/package.py
+++ b/var/spack/repos/builtin/packages/r-pkgbuild/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,17 @@ from spack import *
class RPkgbuild(RPackage):
- """pkgbuild: Find Tools Needed to Build R Packages"""
+ """Find Tools Needed to Build R Packages
+
+ Provides functions used to build R packages. Locates compilers needed to
+ build R packages on various platforms and ensures the PATH is configured
+ appropriately so R can use them."""
homepage = "https://cloud.r-project.org/package=pkgbuild"
url = "https://cloud.r-project.org/src/contrib/pkgbuild_1.0.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pkgbuild/"
+ version('1.2.0', sha256='2e19308d3271fefd5e118c6d132d6a2511253b903620b5417892c72d2010a963')
version('1.0.8', sha256='b149fcf3e98ef148945ff9f4272512cd03e21408c235ec6c0548167fd41219a1')
version('1.0.4', sha256='2934efa5ff9ccfe1636d360aedec36713f3bb3128a493241dbb728d842ea3b5f')
version('1.0.3', sha256='c93aceb499886e42bcd61eb7fb59e47a76c9ba5ab5349a426736d46c8ce21f4d')
diff --git a/var/spack/repos/builtin/packages/r-pkgconfig/package.py b/var/spack/repos/builtin/packages/r-pkgconfig/package.py
index 6e28f7cb15..6512c82df3 100644
--- a/var/spack/repos/builtin/packages/r-pkgconfig/package.py
+++ b/var/spack/repos/builtin/packages/r-pkgconfig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,15 @@ from spack import *
class RPkgconfig(RPackage):
- """Set configuration options on a per-package basis. Options set by a
- given package only apply to that package,
- other packages are unaffected."""
+ """Private Configuration for 'R' Packages
+
+ Set configuration options on a per-package basis. Options set by a given
+ package only apply to that package, other packages are unaffected."""
homepage = "https://cloud.r-project.org/package=pkgconfig"
url = "https://cloud.r-project.org/src/contrib/pkgconfig_2.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pkgconfig"
+ version('2.0.3', sha256='330fef440ffeb842a7dcfffc8303743f1feae83e8d6131078b5a44ff11bc3850')
version('2.0.2', sha256='25997754d1adbe7a251e3bf9879bb52dced27dd8b84767d558f0f644ca8d69ca')
version('2.0.1', sha256='ab02b2a4b639ba94dcba882a059fe9cddae5498a4309841f764b62ec46ba5a40')
diff --git a/var/spack/repos/builtin/packages/r-pkgload/package.py b/var/spack/repos/builtin/packages/r-pkgload/package.py
index 324584a242..918dcaa752 100644
--- a/var/spack/repos/builtin/packages/r-pkgload/package.py
+++ b/var/spack/repos/builtin/packages/r-pkgload/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,21 @@ from spack import *
class RPkgload(RPackage):
- """pkgload: Simulate Package Installation and Attach"""
+ """Simulate Package Installation and Attach
+
+ Simulates the process of installing a package and then attaching it. This
+ is a key part of the 'devtools' package as it allows you to rapidly iterate
+ while developing a package."""
homepage = "https://cloud.r-project.org/package=pkgload"
url = "https://cloud.r-project.org/src/contrib/pkgload_1.0.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pkgload/"
+ version('1.1.0', sha256='189d460dbba2b35fa15dd59ce832df252dfa654a5acee0c9a8471b4d70477b0d')
version('1.0.2', sha256='3186564e690fb05eabe76e1ac0bfd4312562c3ac8794b29f8850399515dcf27c')
+ depends_on('r-cli', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-crayon', when='@1.1.0:', type=('build', 'run'))
depends_on('r-desc', type=('build', 'run'))
depends_on('r-pkgbuild', type=('build', 'run'))
depends_on('r-rlang', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pkgmaker/package.py b/var/spack/repos/builtin/packages/r-pkgmaker/package.py
index e40752c2fd..480cec4b56 100644
--- a/var/spack/repos/builtin/packages/r-pkgmaker/package.py
+++ b/var/spack/repos/builtin/packages/r-pkgmaker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RPkgmaker(RPackage):
- """This package provides some low-level utilities to use for package
+ """Development Utilities for R Packages
+
+ This package provides some low-level utilities to use for package
development. It currently provides managers for multiple package specific
options and registries, vignette, unit test and bibtex related utilities.
It serves as a base package for packages like NMF, RcppOctave, doRNG, and
@@ -19,15 +21,17 @@ class RPkgmaker(RPackage):
url = "https://cloud.r-project.org/src/contrib/pkgmaker_0.27.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pkgmaker"
+ version('0.32.2', sha256='ce45b22def771a9c90a414093823e6befe7e23489c500eeccee5154b44d3ef91')
version('0.27', sha256='17a289d8f596ba5637b07077b3bff22411a2c2263c0b7de59fe848666555ec6a')
depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r-registry', type=('build', 'run'))
depends_on('r-codetools', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
- depends_on('r-stringi', type=('build', 'run'))
- depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-stringr', type=('build', 'run'))
depends_on('r-xtable', type=('build', 'run'))
depends_on('r-withr', type=('build', 'run'))
- depends_on('r-bibtex@0.4:', type=('build', 'run'))
+ depends_on('r-assertthat', when='@0.32.2:', type=('build', 'run'))
+ depends_on('r-stringi', when='@:0.27', type=('build', 'run'))
+ depends_on('r-magrittr', when='@:0.27', type=('build', 'run'))
+ depends_on('r-bibtex@0.4:', when='@:0.27', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-plogr/package.py b/var/spack/repos/builtin/packages/r-plogr/package.py
index 7e062a210e..f9798a0d89 100644
--- a/var/spack/repos/builtin/packages/r-plogr/package.py
+++ b/var/spack/repos/builtin/packages/r-plogr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-plot3d/package.py b/var/spack/repos/builtin/packages/r-plot3d/package.py
index 4b0fc46f94..b21d171e12 100644
--- a/var/spack/repos/builtin/packages/r-plot3d/package.py
+++ b/var/spack/repos/builtin/packages/r-plot3d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,19 @@ from spack import *
class RPlot3d(RPackage):
- """Functions for viewing 2-D and 3-D data, including perspective plots,
- slice plots, surface plots, scatter plots, etc. Includes data sets from
- oceanography."""
+ """Plotting Multi-Dimensional Data
+
+ Functions for viewing 2-D and 3-D data, including perspective plots, slice
+ plots, surface plots, scatter plots, etc. Includes data sets from
+ oceanography."""
homepage = "https://cloud.r-project.org/package=plot3D"
url = "https://cloud.r-project.org/src/contrib/plot3D_1.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/plot3D"
+ version('1.3', sha256='b9e4ec2789e34ad249318900e186868650e1a33466b385cb492a45466db3dfc9')
version('1.1.1', sha256='f6fe4a001387132626fc553ed1d5720d448b8064eb5a6917458a798e1d381632')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@2.15:', type=('build', 'run'))
depends_on('r-misc3d', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-plotly/package.py b/var/spack/repos/builtin/packages/r-plotly/package.py
index 173787f6d2..679fe67b2c 100644
--- a/var/spack/repos/builtin/packages/r-plotly/package.py
+++ b/var/spack/repos/builtin/packages/r-plotly/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,17 @@ from spack import *
class RPlotly(RPackage):
- """Easily translate 'ggplot2' graphs to an interactive web-based version
- and/or create custom web-based visualizations directly from R."""
+ """Create Interactive Web Graphics via 'plotly.js'
+
+ Create interactive web graphics from 'ggplot2' graphs and/or a custom
+ interface to the (MIT-licensed) JavaScript library 'plotly.js' inspired by
+ the grammar of graphics."""
homepage = "https://cloud.r-project.org/package=plotly"
url = "https://cloud.r-project.org/src/contrib/plotly_4.7.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/plotly"
+ version('4.9.3', sha256='d44d1a16d96de28bc2d36f1c897384215eeec44d109546c6e9c2707db0880120')
version('4.9.0', sha256='f761148338231f210fd7fe2f8325ffe9cfdaaaeddd7b933b65c44ebb4f85e2cf')
version('4.8.0', sha256='78f90282c831bbbb675ed4811fb506a98dd05e37251fabd42ebc263c80bae8a6')
version('4.7.1', sha256='7cd4b040f9bfd9356a8a2aba59ccf318cae6b5d94ded7463e2e823c10fa74972')
@@ -24,24 +28,26 @@ class RPlotly(RPackage):
depends_on('r@3.2.0:', type=('build', 'run'))
depends_on('r-ggplot2@3.0.0:', type=('build', 'run'))
- depends_on('r-httr', type=('build', 'run'))
- depends_on('r-base64enc', type=('build', 'run'))
- depends_on('r-htmltools@0.3.6:', type=('build', 'run'))
- depends_on('r-tidyr', type=('build', 'run'))
- depends_on('r-dplyr', type=('build', 'run'))
- depends_on('r-htmlwidgets@1.3:', type=('build', 'run'))
- depends_on('r-data-table', type=('build', 'run'))
- depends_on('r-hexbin', type=('build', 'run'))
- depends_on('r-purrr', type=('build', 'run'))
- depends_on('r-crosstalk', when='@4.6.0:', type=('build', 'run'))
depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-httr', type=('build', 'run'))
+ depends_on('r-httr@1.3.0:', when='@4.9.3:', type=('build', 'run'))
depends_on('r-jsonlite@1.6:', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
depends_on('r-viridislite', type=('build', 'run'))
+ depends_on('r-base64enc', type=('build', 'run'))
+ depends_on('r-htmltools@0.3.6:', type=('build', 'run'))
+ depends_on('r-htmlwidgets@1.3:', type=('build', 'run'))
+ depends_on('r-htmlwidgets@1.5.2.9001:', when='@4.9.3:', type=('build', 'run'))
+ depends_on('r-tidyr', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', when='@4.6.0:', type=('build', 'run'))
+ depends_on('r-dplyr', type=('build', 'run'))
+ depends_on('r-vctrs', when='@4.9.3:', type=('build', 'run'))
depends_on('r-tibble', type=('build', 'run'))
depends_on('r-lazyeval@0.2.0:', type=('build', 'run'))
- depends_on('r-rcolorbrewer', when='@4.6.0:', type=('build', 'run'))
- depends_on('r-data-table', when='@4.7.0:', type=('build', 'run'))
depends_on('r-rlang', when='@4.8.0:', type=('build', 'run'))
+ depends_on('r-crosstalk', when='@4.6.0:', type=('build', 'run'))
+ depends_on('r-purrr', type=('build', 'run'))
+ depends_on('r-data-table', when='@4.7.0:', type=('build', 'run'))
depends_on('r-promises', when='@4.8.0:', type=('build', 'run'))
+ depends_on('r-hexbin', when='@:4.9.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-plotmo/package.py b/var/spack/repos/builtin/packages/r-plotmo/package.py
index 8bec6e3d51..c0c0c17e50 100644
--- a/var/spack/repos/builtin/packages/r-plotmo/package.py
+++ b/var/spack/repos/builtin/packages/r-plotmo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,8 +7,7 @@ from spack import *
class RPlotmo(RPackage):
- """plotmo: Plot a Model's Residuals, Response, and Partial Dependence
- Plots.
+ """Plot a Model's Residuals, Response, and Partial Dependence Plots.
Plot model surfaces for a wide variety of models using partial dependence
plots and other techniques. Also plot model residuals and other information
@@ -18,6 +17,7 @@ class RPlotmo(RPackage):
url = "https://cloud.r-project.org/src/contrib/plotmo_3.5.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/plotmo"
+ version('3.6.0', sha256='c05afcc442f9542868beea5c3c40fb93b049f9b61c42725b2a1e2bc750c241e3')
version('3.5.6', sha256='78f08dc897136d21fa8ade2acb6290351b569d29eb0592c7074c0be3cf2aa594')
depends_on('r@3.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-plotrix/package.py b/var/spack/repos/builtin/packages/r-plotrix/package.py
index 26da98bbf7..7cd72632e1 100644
--- a/var/spack/repos/builtin/packages/r-plotrix/package.py
+++ b/var/spack/repos/builtin/packages/r-plotrix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RPlotrix(RPackage):
- """Lots of plots, various labeling, axis and color scaling functions."""
+ """Various Plotting Functions
+
+ Lots of plots, various labeling, axis and color scaling functions."""
homepage = "https://cloud.r-project.org/package=plotrix"
url = "https://cloud.r-project.org/src/contrib/plotrix_3.6-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/plotrix"
+ version('3.7-8', sha256='8ccd1f7e656413b9956cea614c986ce9cc61366deba356afb38cee6672a59480')
version('3.7-6', sha256='83d5f7574592953288b4fe39c4c0dd7670d097598ad7f6bddbb0687a32954e46')
version('3.7-5', sha256='b22f3f9d93961d23ad46e41597d1e45d2665ced04dcad8c40f6806a67cded14c')
version('3.6-4', sha256='883b7d0a00c1b2b418f9167c72ed9e86eca3c9865d34158a7a6ad0b9bf95bff3')
diff --git a/var/spack/repos/builtin/packages/r-pls/package.py b/var/spack/repos/builtin/packages/r-pls/package.py
index 7a82c84cd0..25437988fc 100644
--- a/var/spack/repos/builtin/packages/r-pls/package.py
+++ b/var/spack/repos/builtin/packages/r-pls/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RPls(RPackage):
- """Multivariate regression methods Partial Least Squares Regression (PLSR),
+ """Partial Least Squares and Principal Component Regression
+
+ Multivariate regression methods Partial Least Squares Regression (PLSR),
Principal Component Regression (PCR) and Canonical Powered Partial Least
Squares (CPPLS)."""
@@ -15,6 +17,7 @@ class RPls(RPackage):
url = "https://cloud.r-project.org/src/contrib/pls_2.6-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/pls"
+ version('2.7-3', sha256='8f1d960ab74f05fdd11c4c7a3d30ff9e263fc658f5690b67278ca7c045d0742c')
version('2.7-1', sha256='f8fd817fc2aa046970c49a9a481489a3a2aef8b6f09293fb1f0218f00bfd834b')
version('2.7-0', sha256='5ddc1249a14d69a7a39cc4ae81595ac8c0fbb1e46c911af67907baddeac35875')
version('2.6-0', sha256='3d8708fb7f45863d3861fd231e06955e6750bcbe717e1ccfcc6d66d0cb4d4596')
diff --git a/var/spack/repos/builtin/packages/r-plyr/package.py b/var/spack/repos/builtin/packages/r-plyr/package.py
index 041d02841a..6ecde52bcb 100644
--- a/var/spack/repos/builtin/packages/r-plyr/package.py
+++ b/var/spack/repos/builtin/packages/r-plyr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RPlyr(RPackage):
- """A set of tools that solves a common set of problems: you need to break a
+ """Tools for Splitting, Applying and Combining Data
+
+ A set of tools that solves a common set of problems: you need to break a
big problem down into manageable pieces, operate on each piece and then put
all the pieces back together. For example, you might want to fit a model to
each spatial location or time point in your study, summarise data by panels
@@ -19,6 +21,7 @@ class RPlyr(RPackage):
url = "https://cloud.r-project.org/src/contrib/plyr_1.8.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/plyr"
+ version('1.8.6', sha256='ea55d26f155443e9774769531daa5d4c20a0697bb53abd832e891b126c935287')
version('1.8.4', sha256='60b522d75961007658c9806f8394db27989f1154727cb0bb970062c96ec9eac5')
depends_on('r@3.1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pmcmr/package.py b/var/spack/repos/builtin/packages/r-pmcmr/package.py
index 1cd813915f..bb675ee026 100644
--- a/var/spack/repos/builtin/packages/r-pmcmr/package.py
+++ b/var/spack/repos/builtin/packages/r-pmcmr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-png/package.py b/var/spack/repos/builtin/packages/r-png/package.py
index 025edb46c7..b49ec79282 100644
--- a/var/spack/repos/builtin/packages/r-png/package.py
+++ b/var/spack/repos/builtin/packages/r-png/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-polspline/package.py b/var/spack/repos/builtin/packages/r-polspline/package.py
index 358d3e8d1a..5f06af820d 100644
--- a/var/spack/repos/builtin/packages/r-polspline/package.py
+++ b/var/spack/repos/builtin/packages/r-polspline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,17 @@ from spack import *
class RPolspline(RPackage):
- """Routines for the polynomial spline fitting routines hazard regression,
- hazard estimation with flexible tails, logspline, lspec, polyclass,
- and polymars, by C. Kooperberg and co-authors.
- """
+ """Polynomial Spline Routines
+
+ Routines for the polynomial spline fitting routines hazard regression,
+ hazard estimation with flexible tails, logspline, lspec, polyclass, and
+ polymars, by C. Kooperberg and co-authors."""
homepage = "https://cloud.r-project.org/package=polspline"
url = "https://cloud.r-project.org/src/contrib/polspline_1.1.18.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/polspline"
+ version('1.1.19', sha256='953e3c4d007c3ef86ac2af3c71b272a99e8e35b194bdd58575785558c6711f66')
version('1.1.18', sha256='df250ee144bfff154249ba50308f46863107ef3efb2333ad908e599ed0eb0102')
version('1.1.17', sha256='d67b269d01105d4a6ea774737e921e66e065a859d1931ae38a70f88b6fb7ee30')
version('1.1.16', sha256='aa3b5a1560008a1a401a65a25f19a27ba6f0a6ea185b6d093acd40e4e2818934')
diff --git a/var/spack/repos/builtin/packages/r-polyclip/package.py b/var/spack/repos/builtin/packages/r-polyclip/package.py
index 947b290bcd..9b61268b36 100644
--- a/var/spack/repos/builtin/packages/r-polyclip/package.py
+++ b/var/spack/repos/builtin/packages/r-polyclip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-polynom/package.py b/var/spack/repos/builtin/packages/r-polynom/package.py
index 3822185641..a52932716e 100644
--- a/var/spack/repos/builtin/packages/r-polynom/package.py
+++ b/var/spack/repos/builtin/packages/r-polynom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-pool/package.py b/var/spack/repos/builtin/packages/r-pool/package.py
new file mode 100644
index 0000000000..5f0fd0fd0e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pool/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPool(RPackage):
+ """Object Pooling
+
+ Enables the creation of object pools, which make it less computationally
+ expensive to fetch a new object. Currently the only supported pooled
+ objects are 'DBI' connections."""
+
+ homepage = "https://github.com/rstudio/pool"
+ cran = "pool"
+
+ version('0.1.6', sha256='cdbe5f6c7f757c01893dc9870df0fb8d300829da0e427f6c2559b01caa52d9e1')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-later@1.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-popgenome/package.py b/var/spack/repos/builtin/packages/r-popgenome/package.py
index 1db5b5fbf1..1b3dbce1bf 100644
--- a/var/spack/repos/builtin/packages/r-popgenome/package.py
+++ b/var/spack/repos/builtin/packages/r-popgenome/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,23 @@ from spack import *
class RPopgenome(RPackage):
- """PopGenome is an efficient Swiss army knife for population genetics data
- analysis, able to process individual loci, large sets of loci, or whole
- genomes."""
+ """An Efficient Swiss Army Knife for Population Genomic Analyses
+
+ Provides efficient tools for population genomics data analysis, able to
+ process individual loci, large sets of loci, or whole genomes. PopGenome
+ <DOI:10.1093/molbev/msu136> not only implements a wide range of population
+ genetics statistics, but also facilitates the easy implementation of new
+ algorithms by other researchers. PopGenome is optimized for speed via the
+ seamless integration of C code."""
homepage = "https://popgenome.weebly.com"
url = "https://cloud.r-project.org/src/contrib/PopGenome_2.6.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/PopGenome"
+ version('2.7.5', sha256='d627b8ac87b4db6038d7349b2df20648d2fcfd48e2dafcd7f4731d1b607cbc75')
version('2.7.1', sha256='a84903b151528fa026ccaba42ada22cd89babbc1824afd40269b7204e488a5fa')
version('2.6.1', sha256='7a2922ed505fa801117a153e479d246bcf4854b91c6ab0241acc620a9d779b1c')
depends_on('r@2.14.2:', type=('build', 'run'))
depends_on('r-ff', type=('build', 'run'))
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/r-popvar/package.py b/var/spack/repos/builtin/packages/r-popvar/package.py
index 220b133f9f..8599337cea 100644
--- a/var/spack/repos/builtin/packages/r-popvar/package.py
+++ b/var/spack/repos/builtin/packages/r-popvar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-powerlaw/package.py b/var/spack/repos/builtin/packages/r-powerlaw/package.py
index b38b9cd1ad..a5e1eac213 100644
--- a/var/spack/repos/builtin/packages/r-powerlaw/package.py
+++ b/var/spack/repos/builtin/packages/r-powerlaw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,22 @@ from spack import *
class RPowerlaw(RPackage):
- """An implementation of maximum likelihood estimators for a variety of
- heavy tailed distributions, including both the discrete and continuous
- power law distributions. Additionally, a goodness-of-fit based approach
- is used to estimate the lower cut-off for the scaling region."""
+ """Analysis of Heavy Tailed Distributions
+
+ An implementation of maximum likelihood estimators for a variety of heavy
+ tailed distributions, including both the discrete and continuous power law
+ distributions. Additionally, a goodness-of-fit based approach is used to
+ estimate the lower cut-off for the scaling region."""
homepage = "https://github.com/csgillespie/poweRlaw"
url = "https://cloud.r-project.org/src/contrib/poweRlaw_0.70.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/poweRlaw"
+ version('0.70.6', sha256='efc091449c5c6494c1c13c85a8eb95625d1c55ffffebe86c7ea16e4abbafa191')
version('0.70.2', sha256='240f1454389b1a00ad483fb63e5b53243cc9367f21a3e7253ab2c293673459ab')
version('0.70.1', sha256='15b1b8dadeb550c01b9f1308cfa64720be6fbf56afb80f6a096987d6a0055913')
depends_on('r@3.1.0:', when='@:0.70.1', type=('build', 'run'))
depends_on('r@3.4.0:', when='@0.70.2:', type=('build', 'run'))
- depends_on('r-vgam', type=('build', 'run'))
+ depends_on('r-pracma', when='@0.70.6:', type=('build', 'run'))
+ depends_on('r-vgam', when='@:0.70.2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-prabclus/package.py b/var/spack/repos/builtin/packages/r-prabclus/package.py
index 80f90ba0ba..be3a4fcc63 100644
--- a/var/spack/repos/builtin/packages/r-prabclus/package.py
+++ b/var/spack/repos/builtin/packages/r-prabclus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,12 +8,20 @@ from spack import *
class RPrabclus(RPackage):
"""prabclus: Functions for Clustering of Presence-Absence, Abundance and
- Multilocus Genetic Data"""
+ Multilocus Genetic Data
+
+ Distance-based parametric bootstrap tests for clustering with spatial
+ neighborhood information. Some distance measures, Clustering of
+ presence-absence, abundance and multilocus genetic data for species
+ delimitation, nearest neighbor based noise detection. Genetic distances
+ between communities. Tests whether various distance-based regressions are
+ equal. Try package?prabclus for on overview."""
homepage = "http://www.homepages.ucl.ac.uk/~ucakche"
url = "https://cloud.r-project.org/src/contrib/prabclus_2.2-6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/prabclus"
+ version('2.3-2', sha256='f421bcbcb557281e0de4a06b15f9a496adb5c640e883c0f7bb12051efc69e441')
version('2.3-1', sha256='ef3294767d43bc3f72478fdaf0d1f13c8de18881bf9040c9f1add68af808b3c0')
version('2.2-7.1', sha256='2c5bf3bbb0d225e04c53bb0e11e9c2a6809f0e46d95b8f6dc14b9dd6a2452975')
version('2.2-6', sha256='41792980e40ba18204fab92d85120dcd468860e2204e52fb42636c6f7aee5a62')
diff --git a/var/spack/repos/builtin/packages/r-pracma/package.py b/var/spack/repos/builtin/packages/r-pracma/package.py
new file mode 100644
index 0000000000..bc96f8c85a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pracma/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPracma(RPackage):
+ """Practical Numerical Math Functions
+
+ Provides a large number of functions from numerical analysis and linear
+ algebra, numerical optimization, differential equations, time series, plus
+ some well-known special mathematical functions. Uses 'MATLAB' function
+ names where appropriate to simplify porting."""
+
+ homepage = "https://cloud.r-project.org/package=pracma"
+ url = "https://cloud.r-project.org/src/contrib/pracma_2.2.9.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/pracma"
+
+ version('2.2.9', sha256='0cea0ff5e88643df121e07b9aebfe57084c61e11801680039752f371fe87bf1e')
+
+ depends_on('r@3.1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-praise/package.py b/var/spack/repos/builtin/packages/r-praise/package.py
index 543962196f..c437377f32 100644
--- a/var/spack/repos/builtin/packages/r-praise/package.py
+++ b/var/spack/repos/builtin/packages/r-praise/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-preprocesscore/package.py b/var/spack/repos/builtin/packages/r-preprocesscore/package.py
index 91a47310d0..2391db4cea 100644
--- a/var/spack/repos/builtin/packages/r-preprocesscore/package.py
+++ b/var/spack/repos/builtin/packages/r-preprocesscore/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RPreprocesscore(RPackage):
- """A collection of pre-processing functions.
+ """A collection of pre-processing functions
A library of core preprocessing routines."""
homepage = "https://bioconductor.org/packages/preprocessCore"
git = "https://git.bioconductor.org/packages/preprocessCore.git"
+ version('1.52.1', commit='91de4ab67315dc2af68554ae3c48823f4b1ea8ac')
version('1.46.0', commit='8cfc3938c1b08424587f437ed6cd2ec43512500e')
version('1.44.0', commit='dc1dc61fc562aaff3fd9b11ab0d48c2d6b3a5b81')
version('1.42.0', commit='2e3a8baeacfaa1526d51252642772ea951015bba')
diff --git a/var/spack/repos/builtin/packages/r-prettydoc/package.py b/var/spack/repos/builtin/packages/r-prettydoc/package.py
new file mode 100644
index 0000000000..ade056fc5b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-prettydoc/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RPrettydoc(RPackage):
+ """Creating Pretty Documents from R Markdown:
+
+ Creating tiny yet beautiful documents and vignettes from R Markdown. The
+ package provides the 'html_pretty' output format as an alternative to the
+ 'html_document' and 'html_vignette' engines that convert R Markdown into
+ HTML pages. Various themes and syntax highlight styles are supported."""
+
+ homepage = "https://github.com/yixuan/prettydoc"
+ cran = "prettydoc"
+
+ version('0.4.1', sha256='1094a69b026238d149435472b4f41c75151c7370a1be6c6332147c88ad4c4829')
+
+ depends_on('r-markdown@1.17:', type=('build', 'run'))
+ depends_on('pandoc@1.12.3:', type='build')
diff --git a/var/spack/repos/builtin/packages/r-prettyunits/package.py b/var/spack/repos/builtin/packages/r-prettyunits/package.py
index 283a538c2c..102954be10 100644
--- a/var/spack/repos/builtin/packages/r-prettyunits/package.py
+++ b/var/spack/repos/builtin/packages/r-prettyunits/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,18 @@ from spack import *
class RPrettyunits(RPackage):
- """Pretty, human readable formatting of quantities. Time intervals:
- 1337000 -> 15d 11h 23m 20s. Vague time intervals: 2674000 -> about
- a month ago. Bytes: 1337 -> 1.34 kB."""
+ """Pretty, Human Readable Formatting of Quantities
+
+ Pretty, human readable formatting of quantities. Time intervals: 1337000 ->
+ 15d 11h 23m 20s. Vague time intervals: 2674000 -> about a month ago. Bytes:
+ 1337 -> 1.34 kB."""
homepage = "https://cloud.r-project.org/package=prettyunits"
url = "https://cloud.r-project.org/src/contrib/prettyunits_1.0.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/prettyunits"
+ version('1.1.1', sha256='9a199aa80c6d5e50fa977bc724d6e39dae1fc597a96413053609156ee7fb75c5')
version('1.0.2', sha256='35a4980586c20650538ae1e4fed4d80fdde3f212b98546fc3c7d9469a1207f5c')
- depends_on('r-magrittr', type=('build', 'run'))
- depends_on('r-assertthat', type=('build', 'run'))
+ depends_on('r-magrittr', when='@:1.0.2', type=('build', 'run'))
+ depends_on('r-assertthat', when='@:1.0.2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-proc/package.py b/var/spack/repos/builtin/packages/r-proc/package.py
new file mode 100644
index 0000000000..a0255604cf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-proc/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RProc(RPackage):
+ """Display and Analyze ROC Curves
+
+ Tools for visualizing, smoothing and comparing receiver operating
+ characteristic (ROC curves). (Partial) area under the curve (AUC) can be
+ compared with statistical tests based on U-statistics or bootstrap.
+ Confidence intervals can be computed for (p)AUC or ROC curves."""
+
+ homepage = "http://expasy.org/tools/pROC/"
+ url = "https://cloud.r-project.org/src/contrib/pROC_1.17.0.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/pROC"
+
+ version('1.17.0.1', sha256='221c726ffb81b04b999905effccfd3a223cd73cae70d7d86688e2dd30e51a6bd')
+
+ depends_on('r@2.14:', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-rcpp@0.11.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-processx/package.py b/var/spack/repos/builtin/packages/r-processx/package.py
index 88b4e95a38..fedf36d281 100644
--- a/var/spack/repos/builtin/packages/r-processx/package.py
+++ b/var/spack/repos/builtin/packages/r-processx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,20 @@ from spack import *
class RProcessx(RPackage):
- """Tools to run system processes in the background"""
+ """Execute and Control System Processes
+
+ Tools to run system processes in the background. It can check if a
+ background process is running; wait on a background process to finish; get
+ the exit status of finished processes; kill background processes. It can
+ read the standard output and error of the processes, using non-blocking
+ connections. 'processx' can poll a process for standard output or error,
+ with a timeout. It can also poll several processes at once."""
homepage = "https://github.com/r-lib/processx"
url = "https://cloud.r-project.org/src/contrib/processx_3.2.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/processx"
+ version('3.4.5', sha256='e368103aa6a6894bfa8e78b12a25598464bcd2c19a8b6334f24ee397db13bb14')
version('3.4.1', sha256='f1abddb48fa78f2b176552e2ec5d808d4d87d79ce72e9b3d25c9a7d715bbd1bc')
version('3.3.1', sha256='6123dbdf9f3bb6e5e8678980fb4587dcefb56d2190adf2ef494d7cd199720bae')
version('3.2.0', sha256='c4ba602fcbdc032ae9d94701b3e6b83a2dab1b53d0b4f9937b07a84eae22fddf')
@@ -21,8 +29,8 @@ class RProcessx(RPackage):
version('2.0.0.1', sha256='8f61b2952d0f2d13c74465bfba174ce11eee559475c2f7b9be6bcb9e2e1d827b')
version('2.0.0', sha256='8325b56a60a276909228756281523cda9256bc754c5f3ca03b41c5c17cc398ad')
- depends_on('r-assertthat', when='@:3.2.9', type=('build', 'run'))
- depends_on('r-crayon', when='@:3.2.9', type=('build', 'run'))
depends_on('r-ps@1.2.0:', when='@3.2.0:', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-assertthat', when='@:3.2.9', type=('build', 'run'))
+ depends_on('r-crayon', when='@:3.2.9', type=('build', 'run'))
depends_on('r-debugme', when='@:3.0.9', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-prodlim/package.py b/var/spack/repos/builtin/packages/r-prodlim/package.py
index 97105f4c6c..de2292db56 100644
--- a/var/spack/repos/builtin/packages/r-prodlim/package.py
+++ b/var/spack/repos/builtin/packages/r-prodlim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RProdlim(RPackage):
- """Product-Limit Estimation for Censored Event History Analysis. Fast and
+ """Product-Limit Estimation for Censored Event History Analysis
+
+ Product-Limit Estimation for Censored Event History Analysis. Fast and
user friendly implementation of nonparametric estimators for censored event
history (survival) analysis. Kaplan-Meier and Aalen-Johansen method."""
@@ -15,6 +17,7 @@ class RProdlim(RPackage):
url = "https://cloud.r-project.org/src/contrib/prodlim_1.5.9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/prodlim"
+ version('2019.11.13', sha256='6809924f503a14681de84730489cdaf9240d7951c64f5b98ca37dc1ce7809b0f')
version('2018.04.18', sha256='4b22b54fdf712439309be0ff74f63cde9080464667b00e19823372ac0fc254ab')
version('1.6.1', sha256='3f2665257118a3db8682731a500b1ae4d669af344672dc2037f987bee3cca154')
version('1.5.9', sha256='853644886c57102e7f6dd26b6e03e54bf3f9e126f54c76f8d63a3324811f7b42')
diff --git a/var/spack/repos/builtin/packages/r-progress/package.py b/var/spack/repos/builtin/packages/r-progress/package.py
index ffe455a611..368c39c81c 100644
--- a/var/spack/repos/builtin/packages/r-progress/package.py
+++ b/var/spack/repos/builtin/packages/r-progress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-proj/package.py b/var/spack/repos/builtin/packages/r-proj/package.py
index 8a9cea0941..282cab5845 100644
--- a/var/spack/repos/builtin/packages/r-proj/package.py
+++ b/var/spack/repos/builtin/packages/r-proj/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,17 @@ from spack import *
class RProj(RPackage):
- """A wrapper around the generic coordinate transformation software 'PROJ'
- that transforms geospatial coordinates from one coordinate reference system
- ('CRS') to another. This includes cartographic projections as well as
- geodetic transformations. Version 6.0.0 or higher is required. The
- intention is for this package to be used by user-packages such as 'reproj',
- and that the older 'PROJ.4' and version 5 pathways be provided by the
- legacy package. The 'PROJ' library is available from
- <https://proj.org/>."""
+ """Generic Coordinate System Transformations Using 'PROJ'
+
+ Currently non-operational, a harmless wrapper to allow package 'reproj' to
+ install and function while relying on the 'proj4' package."""
homepage = "https://github.com/hypertidy/PROJ"
url = "https://cloud.r-project.org/src/contrib/PROJ_0.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/PROJ"
+ version('0.4.0', sha256='dde90cfeca83864e61a7422e1573d2d55bb0377c32b9a8f550f47b8631121ce7')
version('0.1.0', sha256='5186f221335e8092bbcd4d82bd323ee7e752c7c9cf83d3f94e4567e0b407aa6f')
depends_on('r@2.10:', type=('build', 'run'))
-
- depends_on('proj@6:')
+ depends_on('r@3.0.2:', when='@0.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-proj4/package.py b/var/spack/repos/builtin/packages/r-proj4/package.py
index ba3ad51c99..c9e58734ee 100644
--- a/var/spack/repos/builtin/packages/r-proj4/package.py
+++ b/var/spack/repos/builtin/packages/r-proj4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RProj4(RPackage):
- """A simple interface to lat/long projection and datum transformation of
+ """A simple interface to the PROJ.4 cartographic projections library
+
+ A simple interface to lat/long projection and datum transformation of
the PROJ.4 cartographic projections library. It allows transformation of
geographic coordinates from one projection and/or datum to another."""
@@ -15,8 +17,8 @@ class RProj4(RPackage):
url = "https://cloud.r-project.org/src/contrib/proj4_1.0-8.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/proj4"
+ version('1.0-10', sha256='5f396f172a17cfa9821a390f11ff7d3bff3c92ccf585572116dec459c621d1d0')
version('1.0-8.1', sha256='a3a2a8f0014fd79fa34b5957440fd38299d8e97f1a802a61a068a6c6cda10a7e')
depends_on('r@2.0.0:', type=('build', 'run'))
-
- depends_on('proj@:5')
+ depends_on('proj@4.4.6:5')
diff --git a/var/spack/repos/builtin/packages/r-projpred/package.py b/var/spack/repos/builtin/packages/r-projpred/package.py
new file mode 100644
index 0000000000..f1d22c1546
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-projpred/package.py
@@ -0,0 +1,39 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RProjpred(RPackage):
+ """Projection Predictive Feature Selection:
+
+ Performs projection predictive feature selection for generalized linear
+ models and generalized linear and additive multilevel models (see,
+ Piironen, Paasiniemi and Vehtari, 2020,
+ <https://projecteuclid.org/euclid.ejs/1589335310>, Catalina, Burkner and
+ Vehtari, 2020, <arXiv:2010.06994>). The package is compatible with the
+ 'rstanarm' and 'brms' packages, but other reference models can also be
+ used. See the package vignette for more information and examples."""
+
+ homepage = "https://mc-stan.org/projpred/"
+ cran = "projpred"
+
+ version('2.0.2', sha256='af0a9fb53f706090fe81b6381b27b0b6bd3f7ae1e1e44b0ada6f40972b09a55b')
+
+ depends_on('r@3.5.0:', type=('build', 'run'))
+ depends_on('r-dplyr', type=('build', 'run'))
+ depends_on('r-loo@2.0.0:', type=('build', 'run'))
+ depends_on('r-rstantools@2.0.0:', type=('build', 'run'))
+ depends_on('r-lme4', type=('build', 'run'))
+ depends_on('r-optimx', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-rngtools@1.2.4:', type=('build', 'run'))
+ depends_on('r-tidyverse', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-mgcv', type=('build', 'run'))
+ depends_on('r-gamm4', type=('build', 'run'))
+ depends_on('r-rcpparmadillo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-promises/package.py b/var/spack/repos/builtin/packages/r-promises/package.py
index 9c21434a2f..24de999410 100644
--- a/var/spack/repos/builtin/packages/r-promises/package.py
+++ b/var/spack/repos/builtin/packages/r-promises/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RPromises(RPackage):
- """Provides fundamental abstractions for doing asynchronous programming in
+ """Abstractions for Promise-Based Asynchronous Programming
+
+ Provides fundamental abstractions for doing asynchronous programming in
R using promises. Asynchronous programming is useful for allowing a single
R process to orchestrate multiple tasks in the background while also
attending to something else. Semantics are similar to 'JavaScript'
@@ -17,6 +19,7 @@ class RPromises(RPackage):
url = "https://cloud.r-project.org/src/contrib/promises_1.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/promises"
+ version('1.1.1', sha256='3718c6eb2c3362cbe89389e613118f783f9977dbf24757f85026e661199c5800')
version('1.0.1', sha256='c2dbc7734adf009377a41e570dfe0d82afb91335c9d0ca1ef464b9bdcca65558')
depends_on('r-r6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-protgenerics/package.py b/var/spack/repos/builtin/packages/r-protgenerics/package.py
index fed08cdd6d..c439f381b6 100644
--- a/var/spack/repos/builtin/packages/r-protgenerics/package.py
+++ b/var/spack/repos/builtin/packages/r-protgenerics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,14 @@ from spack import *
class RProtgenerics(RPackage):
- """S4 generic functions for Bioconductor proteomics infrastructure.
+ """S4 generic functions for Bioconductor proteomics infrastructure
S4 generic functions needed by Bioconductor proteomics packages."""
homepage = "https://bioconductor.org/packages/ProtGenerics"
git = "https://git.bioconductor.org/packages/ProtGenerics.git"
+ version('1.22.0', commit='2bb3011fb0d79536e1c50251084a7057004449c6')
version('1.16.0', commit='960a5fdc586898513b5ae9c48fffba5c5d703723')
version('1.14.0', commit='c85940b70a16ad69275c4facb3ef673d20a1c998')
version('1.12.0', commit='e84382a4b1730409f572fb681b5070017d00d30d')
diff --git a/var/spack/repos/builtin/packages/r-proto/package.py b/var/spack/repos/builtin/packages/r-proto/package.py
index 4c834fa39c..5f600a5ebb 100644
--- a/var/spack/repos/builtin/packages/r-proto/package.py
+++ b/var/spack/repos/builtin/packages/r-proto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-proxy/package.py b/var/spack/repos/builtin/packages/r-proxy/package.py
index 79841fc9ab..78af781534 100644
--- a/var/spack/repos/builtin/packages/r-proxy/package.py
+++ b/var/spack/repos/builtin/packages/r-proxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,18 @@ from spack import *
class RProxy(RPackage):
- """Provides an extensible framework for the efficient calculation of
- auto- and cross-proximities, along with implementations of the most
- popular ones."""
+ """Distance and Similarity Measures
+
+ Provides an extensible framework for the efficient calculation of auto- and
+ cross-proximities, along with implementations of the most popular ones."""
homepage = "https://cloud.r-project.org/package=proxy"
url = "https://cloud.r-project.org/src/contrib/proxy_0.4-19.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/proxy"
+ version('0.4-24', sha256='8cff9bf036475941a7c44ba9bb5e2f6d4777d49ab3daaeb52d23f4b2af6d9c7c')
version('0.4-23', sha256='9dd4eb0978f40e4fcb55c8a8a26266d32eff9c63ac9dfe70cf1f664ca9c3669d')
version('0.4-19', sha256='6b27e275018366e6024382704da9a9757c8878535dbcd7d450824b70e2e34d51')
- depends_on('r@3.3.2:', when='@:0.4-20', type=('build', 'run'))
+ depends_on('r@3.3.2:', type=('build', 'run'))
depends_on('r@3.4.0:', when='@0.4-21:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pryr/package.py b/var/spack/repos/builtin/packages/r-pryr/package.py
index b8666bf622..a1da51a226 100644
--- a/var/spack/repos/builtin/packages/r-pryr/package.py
+++ b/var/spack/repos/builtin/packages/r-pryr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ps/package.py b/var/spack/repos/builtin/packages/r-ps/package.py
index d5279b1afe..c3bd20c85a 100644
--- a/var/spack/repos/builtin/packages/r-ps/package.py
+++ b/var/spack/repos/builtin/packages/r-ps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,16 @@ from spack import *
class RPs(RPackage):
- """Manipulate processes on Windows, Linux and MacOS"""
+ """List, Query, Manipulate System Processes
+
+ List, query and manipulate all system processes, on 'Windows', 'Linux' and
+ 'macOS'."""
homepage = "https://github.com/r-lib/ps"
url = "https://cloud.r-project.org/src/contrib/ps_1.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ps"
+ version('1.5.0', sha256='7461a196f55557feda569a9791ad851c884f9a2dd71671655ed17cb048fafe96')
version('1.3.0', sha256='289193d0ccd2db0b6fe8702e8c5711e935219b17f90f01a6e9684982413e98d1')
version('1.2.1', sha256='bd7207164e6557a9e4213c4b00dc5dc23d7705ab290569765998640b16a3beff')
version('1.1.0', sha256='5d5240d5bf1d48c721b3fdf47cfc9dbf878e388ea1f057b764db05bffdc4a9fe')
diff --git a/var/spack/repos/builtin/packages/r-pscbs/package.py b/var/spack/repos/builtin/packages/r-pscbs/package.py
index c3197b7795..b638faa148 100644
--- a/var/spack/repos/builtin/packages/r-pscbs/package.py
+++ b/var/spack/repos/builtin/packages/r-pscbs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-pspline/package.py b/var/spack/repos/builtin/packages/r-pspline/package.py
index 7a33098c15..951b106d0a 100644
--- a/var/spack/repos/builtin/packages/r-pspline/package.py
+++ b/var/spack/repos/builtin/packages/r-pspline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-psych/package.py b/var/spack/repos/builtin/packages/r-psych/package.py
index 79c171ca9c..b7da499850 100644
--- a/var/spack/repos/builtin/packages/r-psych/package.py
+++ b/var/spack/repos/builtin/packages/r-psych/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,33 +7,34 @@ from spack import *
class RPsych(RPackage):
- """A general purpose toolbox for personality, psychometric theory and
- experimental psychology. Functions are primarily for multivariate
- analysis and scale construction using factor analysis, principal
- component analysis, cluster analysis and reliability analysis, although
- others provide basic descriptive statistics. Item Response Theory is
- done using factor analysis of tetrachoric and polychoric correlations.
- Functions for analyzing data at multiple levels include within and
- between group statistics, including correlations and factor analysis.
- Functions for simulating and testing particular item and test structures
- are included. Several functions serve as a useful front end for
- structural equation modeling. Graphical displays of path diagrams,
- factor analysis and structural equation models are created using basic
- graphics. Some of the functions are written to support a book on
- psychometric theory as well as publications in personality research.
- For more information, see the <http://personality-project.org/r> web
- page."""
+ """Procedures for Psychological, Psychometric, and Personality Research
+
+ A general purpose toolbox for personality, psychometric theory and
+ experimental psychology. Functions are primarily for multivariate analysis
+ and scale construction using factor analysis, principal component analysis,
+ cluster analysis and reliability analysis, although others provide basic
+ descriptive statistics. Item Response Theory is done using factor analysis
+ of tetrachoric and polychoric correlations. Functions for analyzing data
+ at multiple levels include within and between group statistics, including
+ correlations and factor analysis. Functions for simulating and testing
+ particular item and test structures are included. Several functions serve
+ as a useful front end for structural equation modeling. Graphical displays
+ of path diagrams, factor analysis and structural equation models are
+ created using basic graphics. Some of the functions are written to support
+ a book on psychometric theory as well as publications in personality
+ research. For more information, see the <http://personality-project.org/r>
+ web page."""
homepage = "http://personality-project.org/r/psych"
url = "https://cloud.r-project.org/src/contrib/psych_1.7.8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/psych"
+ version('2.0.12', sha256='8a71d4a1d8bc8c96703f9b4515cfb497e1947c6e017cb08270a7cfb36ce1ad4c')
version('1.8.12', sha256='6e175e049bc1ee5b79a9e51ccafb22b962b4e6c839ce5c9cfa1ad83967037743')
version('1.8.10', sha256='e8901ddab14729bfccbd82a8824fbb6523c10c2cd8fb7199b1ca56a7ffcb6e58')
version('1.7.8', sha256='f328ea602e22b0e7e5f310a8d19f305d8e0a3a86040cdfb64863b68b56d55135')
- depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-mnormt', type=('build', 'run'))
- depends_on('r-foreign', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-nlme', type=('build', 'run'))
+ depends_on('r-foreign', when='@:1.8.12', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ptw/package.py b/var/spack/repos/builtin/packages/r-ptw/package.py
index 424bb0fb10..63795cd79f 100644
--- a/var/spack/repos/builtin/packages/r-ptw/package.py
+++ b/var/spack/repos/builtin/packages/r-ptw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,25 @@ from spack import *
class RPtw(RPackage):
- """Parametric Time Warping aligns patterns, i.e. it aims to put
- corresponding features at the same locations. The algorithm
- searches for an optimal polynomial describing the warping. It is
- possible to align one sample to a reference, several samples to
- the same reference, or several samples to several references.
- One can choose between calculating individual warpings, or one
- global warping for a set of samples and one reference. Two
- optimization criteria are implemented: RMS (Root Mean Square
- error) and WCC (Weighted Cross Correlation). Both warping of
- peak profiles and of peak lists are supported."""
+ """Parametric Time Warping
+
+ Parametric Time Warping aligns patterns, i.e. it aims to put corresponding
+ features at the same locations. The algorithm searches for an optimal
+ polynomial describing the warping. It is possible to align one sample to a
+ reference, several samples to the same reference, or several samples to
+ several references. One can choose between calculating individual warpings,
+ or one global warping for a set of samples and one reference. Two
+ optimization criteria are implemented: RMS (Root Mean Square error) and WCC
+ (Weighted Cross Correlation). Both warping of peak profiles and of peak
+ lists are supported. A vignette for the latter is contained in the inst/doc
+ directory of the source package - the vignette source can be found on the
+ package github site."""
homepage = "https://cloud.r-project.org/package=ptw"
url = "https://cloud.r-project.org/src/contrib/ptw_1.9-12.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ptw"
+ version('1.9-15', sha256='22fa003f280bc000f46bca88d69bf332b29bc68435115ba8044533b70bfb7b46')
version('1.9-13', sha256='7855e74a167db3d3eba9df9d9c3daa25d7cf487cbcfe8b095f16d96eba862f46')
version('1.9-12', sha256='cdb1752e04e661e379f11867b0a17e2177e9ee647c54bbcc37d39d6b8c062b84')
diff --git a/var/spack/repos/builtin/packages/r-purrr/package.py b/var/spack/repos/builtin/packages/r-purrr/package.py
index 24e3145aac..33c78cb8ac 100644
--- a/var/spack/repos/builtin/packages/r-purrr/package.py
+++ b/var/spack/repos/builtin/packages/r-purrr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-qs/package.py b/var/spack/repos/builtin/packages/r-qs/package.py
new file mode 100644
index 0000000000..fe259fdf07
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-qs/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RQs(RPackage):
+ """Quick Serialization of R Objects
+
+ Provides functions for quickly writing and reading any R object
+ to and from disk."""
+
+ homepage = "https://cloud.r-project.org/web/packages/qs/index.html"
+ url = "https://cloud.r-project.org/src/contrib/qs_0.23.5.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/qs"
+
+ maintainers = ['dorton21']
+
+ version('0.23.6', sha256='c6e958e9741ee981bf2388c91b8f181718ffb0f32283cd7ebcd2d054817280e4')
+
+ depends_on('r@3.5.0:', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-rapiserialize', type=('build', 'run'))
+ depends_on('r-stringfish@0.14.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-qtl/package.py b/var/spack/repos/builtin/packages/r-qtl/package.py
index 43db132843..e4ae155dd2 100644
--- a/var/spack/repos/builtin/packages/r-qtl/package.py
+++ b/var/spack/repos/builtin/packages/r-qtl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,17 @@ from spack import *
class RQtl(RPackage):
- """qtl: Tools for Analyzing QTL Experiments"""
+ """Tools for Analyzing QTL Experiments
+
+ Analysis of experimental crosses to identify genes (called quantitative
+ trait loci, QTLs) contributing to variation in quantitative traits. Broman
+ et al. (2003) <doi:10.1093/bioinformatics/btg112>."""
homepage = "http://rqtl.org"
url = "https://cloud.r-project.org/src/contrib/qtl_1.44-9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/qtl"
+ version('1.47-9', sha256='6ba4e7b40d946b3ab68d54624599284b1d352c86fb50d31b134826be758ece41')
version('1.44-9', sha256='315063f0c3fbb95cd2169eb4109ade0339e8f3c28670b38c3167214b9bdf950e')
depends_on('r@2.14.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-quadprog/package.py b/var/spack/repos/builtin/packages/r-quadprog/package.py
index 063b7a91a5..00df4d4617 100644
--- a/var/spack/repos/builtin/packages/r-quadprog/package.py
+++ b/var/spack/repos/builtin/packages/r-quadprog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RQuadprog(RPackage):
- """This package contains routines and documentation for solving
- quadratic programming problems."""
+ """Functions to Solve Quadratic Programming Problems
+
+ This package contains routines and documentation for solving quadratic
+ programming problems."""
homepage = "https://cloud.r-project.org/package=quadprog"
url = "https://cloud.r-project.org/src/contrib/quadprog_1.5-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/quadprog"
+ version('1.5-8', sha256='22128dd6b08d3516c44ff89276719ad4fe46b36b23fdd585274fa3a93e7a49cd')
version('1.5-7', sha256='1af41e57df6f2d08ee8b72a1a5ada137beadb36c7ec9ab9bdb7c05226e8ae76d')
version('1.5-6', sha256='1443e5ffdf884b13dd454e4f6aa260fce6ec47e6845d85b62238c206ce57dcba')
version('1.5-5', sha256='d999620688354c283de5bb305203f5db70271b4dfdc23577cae8c2ba94c9e349')
diff --git a/var/spack/repos/builtin/packages/r-quantmod/package.py b/var/spack/repos/builtin/packages/r-quantmod/package.py
index c173d4a783..0bd09828a9 100644
--- a/var/spack/repos/builtin/packages/r-quantmod/package.py
+++ b/var/spack/repos/builtin/packages/r-quantmod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RQuantmod(RPackage):
- """Specify, build, trade, and analyse quantitative financial trading
+ """Quantitative Financial Modelling Framework
+
+ Specify, build, trade, and analyse quantitative financial trading
strategies."""
homepage = "http://www.quantmod.com/"
url = "https://cloud.r-project.org/src/contrib/quantmod_0.4-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/quantmod"
+ version('0.4.18', sha256='aa40448e93a1facf399213ac691784007731e869ad243fe762381ab099cd6c35')
version('0.4-15', sha256='7ef2e798d4d8e4d2af0a5b2b9fecebec30568087afbd24bfd923cdeb8b53df53')
version('0.4-14', sha256='d95b1acf73328d675bbad18a93fa3c40faf58959e0401458ad21cf6b9f9254b3')
version('0.4-10', sha256='030040aa567adaba1ea4a1f05eb45712dbdaabbabca72733e7fb2984051f688b')
diff --git a/var/spack/repos/builtin/packages/r-quantreg/package.py b/var/spack/repos/builtin/packages/r-quantreg/package.py
index 6f1fe145a7..aab3783303 100644
--- a/var/spack/repos/builtin/packages/r-quantreg/package.py
+++ b/var/spack/repos/builtin/packages/r-quantreg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,19 @@ from spack import *
class RQuantreg(RPackage):
- """Estimation and inference methods for models of conditional quantiles:
- Linear and nonlinear parametric and non-parametric (total variation
- penalized) models for conditional quantiles of a univariate response
- and several methods for handling censored survival data. Portfolio
- selection methods based on expected shortfall risk are also
- included."""
+ """Quantile Regression
+
+ Estimation and inference methods for models of conditional quantiles:
+ Linear and nonlinear parametric and non-parametric (total variation
+ penalized) models for conditional quantiles of a univariate response and
+ several methods for handling censored survival data. Portfolio selection
+ methods based on expected shortfall risk are also now included."""
homepage = "https://cloud.r-project.org/package=quantreg"
url = "https://cloud.r-project.org/src/contrib/quantreg_5.29.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/quantreg"
+ version('5.82', sha256='eac34e1e34d00a24ed7cb6981af258a3afc561843c00501de3206b4540548c07')
version('5.51', sha256='df1330d245f66ee6d924b209bd4c15d44ff8cce52667959ec0d299975428bdb1')
version('5.42.1', sha256='4cc2b0883c52694e58fcfde83e30e4a54be9f4d9cbcf6138f6498cc8e0b3ccab')
version('5.40', sha256='86e310a235009ab85635dfb8803c175f80a35892e237db2525c4ef37a98936eb')
@@ -28,3 +30,4 @@ class RQuantreg(RPackage):
depends_on('r-sparsem', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
depends_on('r-matrixmodels', type=('build', 'run'))
+ depends_on('r-conquer', when='@5.82:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-quantro/package.py b/var/spack/repos/builtin/packages/r-quantro/package.py
index b56af1b419..26cdd7dc00 100644
--- a/var/spack/repos/builtin/packages/r-quantro/package.py
+++ b/var/spack/repos/builtin/packages/r-quantro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RQuantro(RPackage):
- """A test for when to use quantile normalization.
+ """A test for when to use quantile normalization
A data-driven test for the assumptions of quantile normalization using
raw data such as objects that inherit eSets (e.g. ExpressionSet,
@@ -19,6 +19,7 @@ class RQuantro(RPackage):
homepage = "https://bioconductor.org/packages/quantro"
git = "https://git.bioconductor.org/packages/quantro.git"
+ version('1.24.0', commit='c7c0180292156a01722d91b353da44324e72d68f')
version('1.18.0', commit='f6553c2296289eed31e4b2f32a082e990bdb8359')
version('1.16.0', commit='cfc2e853bdc3cc90fd35e153fe243892d50d61c6')
version('1.14.0', commit='2d43264b2a95ae8ca51a69d7768fe43b9f1b77bb')
@@ -26,6 +27,7 @@ class RQuantro(RPackage):
version('1.10.0', commit='111337c0aba052aa49c3d2e2d3042794b28858c9')
depends_on('r@3.1.3:', type=('build', 'run'))
+ depends_on('r@4.0:', when='@1.24.0:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-minfi', type=('build', 'run'))
depends_on('r-doparallel', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-quickplot/package.py b/var/spack/repos/builtin/packages/r-quickplot/package.py
new file mode 100644
index 0000000000..4b014288f6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-quickplot/package.py
@@ -0,0 +1,36 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RQuickplot(RPackage):
+ """A System of Plotting Optimized for Speed and Modularity
+
+ A high-level plotting system, built using 'grid' graphics, that
+ is optimized for speed and modularity. This has great utility
+ for quick visualizations when testing code, with the key benefit
+ that visualizations are updated independently of one another."""
+
+ homepage = "http://quickplot.predictiveecology.org/"
+ url = "https://cloud.r-project.org/src/contrib/quickPlot_0.1.6.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/quickPlot"
+
+ maintainers = ['dorton21']
+
+ version('0.1.6', sha256='48690a77ae961ed1032130621ef06b2eaf86ee592bf1057471a8c6d6a98ace55')
+
+ depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r-backports', type=('build', 'run'))
+ depends_on('r-data-table@1.10.4:', type=('build', 'run'))
+ depends_on('r-fpcompare', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-gridbase', type=('build', 'run'))
+ depends_on('r-igraph', type=('build', 'run'))
+ depends_on('r-raster', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-rgdal', type=('build', 'run'))
+ depends_on('r-rgeos', type=('build', 'run'))
+ depends_on('r-sp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-qvalue/package.py b/var/spack/repos/builtin/packages/r-qvalue/package.py
index 740a6cc996..600f210281 100644
--- a/var/spack/repos/builtin/packages/r-qvalue/package.py
+++ b/var/spack/repos/builtin/packages/r-qvalue/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RQvalue(RPackage):
- """Q-value estimation for false discovery rate control.
+ """Q-value estimation for false discovery rate control
This package takes a list of p-values resulting from the simultaneous
testing of many hypotheses and estimates their q-values and local FDR
@@ -24,6 +24,7 @@ class RQvalue(RPackage):
homepage = "https://bioconductor.org/packages/qvalue"
git = "https://git.bioconductor.org/packages/qvalue.git"
+ version('2.22.0', commit='b4bde8198252737b287fd7f9a4ed697f57fad92c')
version('2.16.0', commit='5efbe20ef522a45a7a04b681f72bb9a12e2747ae')
version('2.14.1', commit='b694e4b264f25250eb1d1115e70c07f65767c20e')
version('2.12.0', commit='7df64ebfcbe69dcbf8b88cb6ef0068bf16979673')
diff --git a/var/spack/repos/builtin/packages/r-r-cache/package.py b/var/spack/repos/builtin/packages/r-r-cache/package.py
index a27cf38bba..6831726129 100644
--- a/var/spack/repos/builtin/packages/r-r-cache/package.py
+++ b/var/spack/repos/builtin/packages/r-r-cache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-r-methodss3/package.py b/var/spack/repos/builtin/packages/r-r-methodss3/package.py
index 5dc58406cc..ba532e8dd7 100644
--- a/var/spack/repos/builtin/packages/r-r-methodss3/package.py
+++ b/var/spack/repos/builtin/packages/r-r-methodss3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRMethodss3(RPackage):
- """Methods that simplify the setup of S3 generic functions and
+ """S3 Methods Simplified
+
+ Methods that simplify the setup of S3 generic functions and
S3 methods. Major effort has been made in making definition of
methods as simple as possible with a minimum of maintenance for
package developers. For example, generic functions are created
@@ -21,6 +23,7 @@ class RRMethodss3(RPackage):
url = "https://cloud.r-project.org/src/contrib/R.methodsS3_1.7.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/R.methodsS3"
+ version('1.8.1', sha256='8a98fb81bcfa78193450f855f614f6f64e6c65daf115f301d97d1f474f5e619b')
version('1.7.1', sha256='44b840399266cd27f8f9157777b4d9d85ab7bd31bfdc143b3fc45079a2d8e687')
depends_on('r@2.13.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-r-oo/package.py b/var/spack/repos/builtin/packages/r-r-oo/package.py
index cedaafe72a..2e435f46cc 100644
--- a/var/spack/repos/builtin/packages/r-r-oo/package.py
+++ b/var/spack/repos/builtin/packages/r-r-oo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RROo(RPackage):
- """Methods and classes for object-oriented programming in R with
+ """R Object-Oriented Programming with or without References
+
+ Methods and classes for object-oriented programming in R with
or without references. Large effort has been made on making
definition of methods as simple as possible with a minimum of
maintenance for package developers. The package has been developed
@@ -19,9 +21,11 @@ class RROo(RPackage):
url = "https://cloud.r-project.org/src/contrib/R.oo_1.21.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/R.oo"
+ version('1.24.0', sha256='37a1dab8dd668ceba69a1ba36c0c60e9809e29b74bd56d1e8ed519e19c8e3bb6')
version('1.23.0', sha256='f5124ce3dbb0a62e8ef1bfce2de2d1dc2f776e8c48fd8cac358f7f5feb592ea1')
version('1.22.0', sha256='c0862e4608fb2b8f91ec4494d46c2f3ba7bc44999f9aa3d7b9625d3792e7dd4c')
version('1.21.0', sha256='645ceec2f815ed39650ca72db87fb4ece7357857875a4ec73e18bfaf647f431c')
depends_on('r@2.13.0:', type=('build', 'run'))
depends_on('r-r-methodss3@1.7.1:', type=('build', 'run'))
+ depends_on('r-r-methodss3@1.8.0:', when='@1.24.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-r-utils/package.py b/var/spack/repos/builtin/packages/r-r-utils/package.py
index a1e3743c97..8789546081 100644
--- a/var/spack/repos/builtin/packages/r-r-utils/package.py
+++ b/var/spack/repos/builtin/packages/r-r-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,21 @@ from spack import *
class RRUtils(RPackage):
- """Utility functions useful when programming and
+ """Various Programming Utilities
+
+ Utility functions useful when programming and
developing R packages."""
homepage = "https://github.com/HenrikBengtsson/R.utils"
url = "https://cloud.r-project.org/src/contrib/R.utils_2.5.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/R.utils"
+ version('2.10.1', sha256='957a4f51998c79403a50f6a46266e6553bbf08757b26bf80603a423bceb45abf')
version('2.9.0', sha256='b2aacc5a55d3ea86c41ac576d2583e446af145f4cb1103ad7b6f95b09ab09ff0')
version('2.5.0', sha256='1ae1a0f0c6a4972bb2369a2dbccd29ade87d747255ff9cb5a0bd784a5be1039f')
depends_on('r@2.14.0:', type=('build', 'run'))
depends_on('r-r-oo@1.22.0:', type=('build', 'run'))
+ depends_on('r-r-oo@1.23.0:', when='@2.10.1:', type=('build', 'run'))
depends_on('r-r-methodss3@1.7.1:', type=('build', 'run'))
+ depends_on('r-r-methodss3@1.8.0:', when='@2.10.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-r6/package.py b/var/spack/repos/builtin/packages/r-r6/package.py
index 43429dc5c4..8445c1a792 100644
--- a/var/spack/repos/builtin/packages/r-r6/package.py
+++ b/var/spack/repos/builtin/packages/r-r6/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RR6(RPackage):
- """The R6 package allows the creation of classes with reference semantics,
+ """Encapsulated Classes with Reference Semantics
+
+ The R6 package allows the creation of classes with reference semantics,
similar to R's built-in reference classes. Compared to reference classes,
R6 classes are simpler and lighter-weight, and they are not built on S4
classes so they do not require the methods package. These classes allow
@@ -18,6 +20,7 @@ class RR6(RPackage):
url = "https://cloud.r-project.org/src/contrib/R6_2.2.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/R6"
+ version('2.5.0', sha256='aec1af9626ec532cb883b544bf9eff4cb2d89c343c7ce0fa31761ec5a7882e02')
version('2.4.0', sha256='70be110174fbf5f5304049b186a6f9c05b77bfaec6d8caf980fcef5da6e0abce')
version('2.2.2', sha256='087756f471884c3b3ead80215a7cc5636a78b8a956e91675acfe2896426eae8f')
version('2.2.0', sha256='7d7bddc4303fafa99954182ccad938166d681499d4e9ae7001d21b0fd60d25c7')
diff --git a/var/spack/repos/builtin/packages/r-randomfields/package.py b/var/spack/repos/builtin/packages/r-randomfields/package.py
index 7856afa835..bce07e5956 100644
--- a/var/spack/repos/builtin/packages/r-randomfields/package.py
+++ b/var/spack/repos/builtin/packages/r-randomfields/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,27 @@ from spack import *
class RRandomfields(RPackage):
- """Methods for the inference on and the simulation of Gaussian fields
- are provided, as well as methods for the simulation of extreme
- value random fields."""
+ """Simulation and Analysis of Random Fields
+
+ Methods for the inference on and the simulation of Gaussian fields are
+ provided, as well as methods for the simulation of extreme value random
+ fields. Main geostatistical parts are based on the books by Christian
+ Lantuejoul <doi:10.1007/978-3-662-04808-5>, Jean-Paul Chiles and Pierre
+ Delfiner <doi:10.1002/9781118136188> and Noel A. Cressie
+ <doi:10.1002/9781119115151>. For the extreme value random fields see
+ Oesting, Schlather, Schillings (2019) <doi.org/10.1002/sta4.228> and
+ Schlather (2002) <doi.org/10.1023/A:1020977924878>."""
homepage = "https://cloud.r-project.org/package=RandomFields"
url = "https://cloud.r-project.org/src/contrib/RandomFields_3.1.50.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RandomFields"
+ version('3.3.8', sha256='8a08e2fdae428e354a29fb6818ae781cc56235a6849a0d29574dc756f73199d0')
version('3.3.6', sha256='51b7bfb4e5bd7fd0ce1207c77f428508a6cd3dfc9de01545a8724dfd9c050213')
version('3.3.4', sha256='a340d4f3ba7950d62acdfa19b9724c82e439d7b1a9f73340124038b7c90c73d4')
version('3.1.50', sha256='2d6a07c3a716ce20f9c685deb59e8fcc64fd52c8a50b0f04baf451b6b928e848')
depends_on('r@3.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@3.3.8:', type=('build', 'run'))
depends_on('r-sp', type=('build', 'run'))
depends_on('r-randomfieldsutils@0.5.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-randomfieldsutils/package.py b/var/spack/repos/builtin/packages/r-randomfieldsutils/package.py
index aadecfe47b..ee2289bd5e 100644
--- a/var/spack/repos/builtin/packages/r-randomfieldsutils/package.py
+++ b/var/spack/repos/builtin/packages/r-randomfieldsutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-randomforest/package.py b/var/spack/repos/builtin/packages/r-randomforest/package.py
index 78245e4aac..386dacff8b 100644
--- a/var/spack/repos/builtin/packages/r-randomforest/package.py
+++ b/var/spack/repos/builtin/packages/r-randomforest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-randomglm/package.py b/var/spack/repos/builtin/packages/r-randomglm/package.py
index 461fa43d36..33ea5d79f2 100644
--- a/var/spack/repos/builtin/packages/r-randomglm/package.py
+++ b/var/spack/repos/builtin/packages/r-randomglm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ranger/package.py b/var/spack/repos/builtin/packages/r-ranger/package.py
index eec92d0ac1..c855306df2 100644
--- a/var/spack/repos/builtin/packages/r-ranger/package.py
+++ b/var/spack/repos/builtin/packages/r-ranger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,20 @@ from spack import *
class RRanger(RPackage):
- """A fast implementation of Random Forests, particularly suited for high
- dimensional data."""
+ """A Fast Implementation of Random Forests
+
+ A fast implementation of Random Forests, particularly suited for high
+ dimensional data. Ensembles of classification, regression, survival and
+ probability prediction trees are supported. Data from genome-wide
+ association studies can be analyzed efficiently. In addition to data
+ frames, datasets of class 'gwaa.data' (R package 'GenABEL') and 'dgCMatrix'
+ (R package 'Matrix') can be directly analyzed."""
homepage = "https://cloud.r-project.org/package=ranger"
url = "https://cloud.r-project.org/src/contrib/ranger_0.8.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ranger"
+ version('0.12.1', sha256='fc308e0ac06718272799928e1a19612de16b05bde481d8f38e11a101df5425ef')
version('0.11.2', sha256='13ac8a9433fdd92f62f66de44abc52477dcbb436b2045c1947951a266bffbeeb')
version('0.11.1', sha256='999fb114602e27601ff0fe8ab461c39d667c6f5e8434e7feb3d21c7caf0dcffb')
version('0.8.0', sha256='7f0fdee2f2d553a0aec56c2a4a4ff9dd972e1c7284118d9ea570749e0eaaabb9')
@@ -23,6 +30,6 @@ class RRanger(RPackage):
version('0.4.0', sha256='d9f5761c3b07357aa586270cf7cbc97fc3db56ba731b6d0f3baf296f635f2be5')
depends_on('r@3.1:', type=('build', 'run'))
- depends_on('r-matrix', type=('build', 'run'))
depends_on('r-rcpp@0.11.2:', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
depends_on('r-rcppeigen', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rann/package.py b/var/spack/repos/builtin/packages/r-rann/package.py
index c4ee212e10..172e431e0e 100644
--- a/var/spack/repos/builtin/packages/r-rann/package.py
+++ b/var/spack/repos/builtin/packages/r-rann/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rapiserialize/package.py b/var/spack/repos/builtin/packages/r-rapiserialize/package.py
new file mode 100644
index 0000000000..9d2a5af398
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rapiserialize/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRapiserialize(RPackage):
+ """R API Serialization
+
+ This package provides other packages with access to the internal R
+ serialization code. Access to this code is provided at the C function
+ level by using the registration of native function mechanism. Client
+ packages simply include a single header file RApiSerializeAPI.h provided
+ by this package. This packages builds on the Rhpc package by Junji Nakano
+ and Ei-ji Nakama which also includes a (partial) copy of the file
+ src/main/serialize.c from R itself. The R Core group is the original
+ author of the serialization code made available by this package."""
+
+ homepage = "https://cloud.r-project.org/web/packages/RApiSerialize/index.html"
+ url = "https://cloud.r-project.org/src/contrib/RApiSerialize_0.1.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/RApiSerialize"
+
+ maintainers = ['dorton21']
+
+ version('0.1.0', sha256='324d42c655c27b4647d194bfcd7c675da95c67ea3a74ce99853502022792a23e')
diff --git a/var/spack/repos/builtin/packages/r-rappdirs/package.py b/var/spack/repos/builtin/packages/r-rappdirs/package.py
index e00f35597f..b369179add 100644
--- a/var/spack/repos/builtin/packages/r-rappdirs/package.py
+++ b/var/spack/repos/builtin/packages/r-rappdirs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-raster/package.py b/var/spack/repos/builtin/packages/r-raster/package.py
index 58ad440060..9ad6fd8475 100644
--- a/var/spack/repos/builtin/packages/r-raster/package.py
+++ b/var/spack/repos/builtin/packages/r-raster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,24 @@ from spack import *
class RRaster(RPackage):
- """Reading, writing, manipulating, analyzing and modeling of gridded
- spatial data. The package implements basic and high-level functions.
- Processing of very large files is supported."""
+ """Geographic Data Analysis and Modeling
+
+ Reading, writing, manipulating, analyzing and modeling of spatial data. The
+ package implements basic and high-level functions for raster data and for
+ vector data operations such as intersections. See the manual and tutorials
+ on <https://rspatial.org/> to get started."""
homepage = "https://cloud.r-project.org/package=raster"
url = "https://cloud.r-project.org/src/contrib/raster_2.5-8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/raster"
+ version('3.4-5', sha256='c6620d790b3aba1b64aec31325f726e63f26a14a1b48c1a0f9167a0b1a64e4a5')
version('2.9-23', sha256='90aaec9e3b1e3e6015d9993ea7491e008f2f71990f8abb8610f979c4e28b38af')
version('2.9-22', sha256='8107d95f1aa85cea801c8101c6aa391becfef4b5b915d9bc7a323531fee26128')
version('2.5-8', sha256='47992abd783450513fbce3770298cc257030bf0eb77e42aa3a4b3924b16264cc')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@3.4-5:', type=('build', 'run'))
depends_on('r-sp@1.2-0:', type=('build', 'run'))
+ depends_on('r-sp@1.4.1:', when='@3.4-5:', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rbgl/package.py b/var/spack/repos/builtin/packages/r-rbgl/package.py
index b4f816d24b..d9fadb4732 100644
--- a/var/spack/repos/builtin/packages/r-rbgl/package.py
+++ b/var/spack/repos/builtin/packages/r-rbgl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RRbgl(RPackage):
- """An interface to the BOOST graph library.
+ """An interface to the BOOST graph library
A fairly extensive and comprehensive interface to the graph algorithms
contained in the BOOST library."""
@@ -15,6 +15,7 @@ class RRbgl(RPackage):
homepage = "https://bioconductor.org/packages/RBGL"
git = "https://git.bioconductor.org/packages/RBGL.git"
+ version('1.66.0', commit='bf0c111dbc231de6d3423c28e115b54fb010e1ea')
version('1.60.0', commit='ef24c17c411659b8f030602bd9781c534d6ec93b')
version('1.58.2', commit='086ad0c6bab7be29311b6ae14fd39df7a21331a6')
version('1.56.0', commit='a1fa9d89c6a3401892c5dd1493df6a14031f0912')
@@ -22,5 +23,4 @@ class RRbgl(RPackage):
version('1.52.0', commit='93e8fcfafec8f1cd5638fe30dc0f9506d15b49c0')
depends_on('r-graph', type=('build', 'run'))
-
depends_on('r-bh', when='@1.60.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rbibutils/package.py b/var/spack/repos/builtin/packages/r-rbibutils/package.py
new file mode 100644
index 0000000000..39aec9975c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rbibutils/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRbibutils(RPackage):
+ """Convert Between Bibliography Formats
+
+ Converts between a number of bibliography formats, including 'BibTeX',
+ 'BibLaTeX' and 'Bibentry'. Includes a port of the 'bibutils' utilities by
+ Chris Putnam <https://sourceforge.net/projects/bibutils/>. Supports all
+ bibliography formats and character encodings implemented in 'bibutils'."""
+
+ homepage = "https://geobosh.github.io/rbibutils/"
+ url = "https://cloud.r-project.org/src/contrib/rbibutils_2.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/rbibutils"
+
+ version('2.0', sha256='03d13abee321decb88bc4e7c9f27276d62a4a880fa72bb6b86be91885010cfed')
+
+ depends_on('r@2.10:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rbokeh/package.py b/var/spack/repos/builtin/packages/r-rbokeh/package.py
index 7b0c75d974..c1b81d11d7 100644
--- a/var/spack/repos/builtin/packages/r-rbokeh/package.py
+++ b/var/spack/repos/builtin/packages/r-rbokeh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,15 +8,20 @@ from spack import *
class RRbokeh(RPackage):
- """R interface for creating plots in Bokeh. Bokeh by Continuum
- Analytics."""
+ """R Interface for Bokeh
+
+ A native R plotting library that provides a flexible declarative interface
+ for creating interactive web-based graphics, backed by the Bokeh
+ visualization library <https://bokeh.pydata.org/>."""
homepage = "https://hafen.github.io/rbokeh"
url = "https://cloud.r-project.org/src/contrib/rbokeh_0.5.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rbokeh"
+ version('0.5.1', sha256='48eba3b238cea2b9aa408d8a48c663564292e76f2ab3f603bc671315a4a75a88')
version('0.5.0', sha256='499c3224a7dcaeb4bb60fd645b3ef528a20e59437747a073713941b80cbcebd2')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-htmlwidgets@0.5:', type=('build', 'run'))
depends_on('r-maps', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rcmdcheck/package.py b/var/spack/repos/builtin/packages/r-rcmdcheck/package.py
index b1fc06071d..8fe5c05315 100644
--- a/var/spack/repos/builtin/packages/r-rcmdcheck/package.py
+++ b/var/spack/repos/builtin/packages/r-rcmdcheck/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rcolorbrewer/package.py b/var/spack/repos/builtin/packages/r-rcolorbrewer/package.py
index f49aaa4893..a5c6008f46 100644
--- a/var/spack/repos/builtin/packages/r-rcolorbrewer/package.py
+++ b/var/spack/repos/builtin/packages/r-rcolorbrewer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rcpp/package.py b/var/spack/repos/builtin/packages/r-rcpp/package.py
index d479880153..2428f88c00 100644
--- a/var/spack/repos/builtin/packages/r-rcpp/package.py
+++ b/var/spack/repos/builtin/packages/r-rcpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,25 @@ from spack import *
class RRcpp(RPackage):
- """The 'Rcpp' package provides R functions as well as C++ classes which
- offer a seamless integration of R and C++. Many R data types and objects
- can be mapped back and forth to C++ equivalents which facilitates both
- writing of new code as well as easier integration of third-party libraries.
- Documentation about 'Rcpp' is provided by several vignettes included in
- this package, via the 'Rcpp Gallery' site at <http://gallery.rcpp.org>, the
- paper by Eddelbuettel and Francois (2011, JSS), and the book by
- Eddelbuettel (2013, Springer); see 'citation("Rcpp")' for details on these
- last two."""
+ """Seamless R and C++ Integration
+
+ The 'Rcpp' package provides R functions as well as C++ classes which; offer
+ a seamless integration of R and C++. Many R data types and objects can be;
+ mapped back and forth to C++ equivalents which facilitates both writing of
+ new; code as well as easier integration of third-party libraries.
+ Documentation; about 'Rcpp' is provided by several vignettes included in
+ this package, via the; 'Rcpp Gallery' site at <https://gallery.rcpp.org>,
+ the paper by Eddelbuettel and; Francois (2011,
+ <doi:10.18637/jss.v040.i08>), the book by Eddelbuettel (2013,;
+ <doi:10.1007/978-1-4614-6868-4>) and the paper by Eddelbuettel and Balamuta
+ (2018,; <doi:10.1080/00031305.2017.1375990>); see 'citation("Rcpp")' for
+ details."""
homepage = "http://dirk.eddelbuettel.com/code/rcpp.html"
url = "https://cloud.r-project.org/src/contrib/Rcpp_0.12.13.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Rcpp"
+ version('1.0.6', sha256='c9f24756bc000f7a989bd4f9aa93d57f7739dcde77946703f8bb32332a35f012')
version('1.0.4.6', sha256='45af675ddbbe155e671453b2e84fe32250bb98d4ccb4342b61c1e25cff10b302')
version('1.0.2', sha256='ad9338d6fc89dd116a3e2c5ecef1956e4be63b6c6aa1b21b2e5f249d65a5129c')
version('1.0.0', sha256='b7378bf0dda17ef72aa3f2a318a9cb5667bef50b601dc1096431e17426e18bc2')
diff --git a/var/spack/repos/builtin/packages/r-rcppannoy/package.py b/var/spack/repos/builtin/packages/r-rcppannoy/package.py
index e65c96ed49..0488de3306 100644
--- a/var/spack/repos/builtin/packages/r-rcppannoy/package.py
+++ b/var/spack/repos/builtin/packages/r-rcppannoy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRcppannoy(RPackage):
- """'Annoy' is a small C++ library for Approximate Nearest Neighbors written
+ """'Rcpp' Bindings for 'Annoy', a Library for Approximate Nearest Neighbors
+
+ 'Annoy' is a small C++ library for Approximate Nearest Neighbors written
for efficient memory usage as well an ability to load from / save to disk.
This package provides an R interface by relying on the 'Rcpp' package,
exposing the same interface as the original Python wrapper to 'Annoy'. See
@@ -19,6 +21,7 @@ class RRcppannoy(RPackage):
url = "https://cloud.r-project.org/src/contrib/RcppAnnoy_0.0.12.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RcppAnnoy"
+ version('0.0.18', sha256='e4e7ddf071109b47b4fdf285db6d2155618ed73da829c30d8e64fc778e63c858')
version('0.0.12', sha256='8f736cbbb4a32c80cb08ba4e81df633846d725f27867e983af2012966eac0eac')
depends_on('r@3.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rcpparmadillo/package.py b/var/spack/repos/builtin/packages/r-rcpparmadillo/package.py
index 2c9dd4d30f..3482664fa2 100644
--- a/var/spack/repos/builtin/packages/r-rcpparmadillo/package.py
+++ b/var/spack/repos/builtin/packages/r-rcpparmadillo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,25 @@ from spack import *
class RRcpparmadillo(RPackage):
- """'Rcpp' Integration for the 'Armadillo' Templated Linear
- Algebra Library."""
+ """'Rcpp' Integration for the 'Armadillo' Templated Linear Algebra Library
+
+ 'Armadillo' is a templated C++ linear algebra library (by Conrad;
+ Sanderson) that aims towards a good balance between speed and ease of; use.
+ Integer, floating point and complex numbers are supported, as; well as a
+ subset of trigonometric and statistics functions. Various; matrix
+ decompositions are provided through optional integration with; LAPACK and
+ ATLAS libraries. The 'RcppArmadillo' package includes the; header files
+ from the templated 'Armadillo' library. Thus users do; not need to install
+ 'Armadillo' itself in order to use; 'RcppArmadillo'. From release 7.800.0
+ on, 'Armadillo' is licensed; under Apache License 2; previous releases were
+ under licensed as MPL; 2.0 from version 3.800.0 onwards and LGPL-3 prior to
+ that"""
homepage = "https://cloud.r-project.org/package=RcppArmadillo"
url = "https://cloud.r-project.org/src/contrib/RcppArmadillo_0.8.100.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RcppArmadillo"
+ version('0.10.1.2.2', sha256='38323703fcf2b61f46f2984aafdd3ddf17c3c993d1d27a8f0f4ba5012b99d069')
version('0.9.600.4.0', sha256='2057b7aa965a4c821dd734276d8e6a01cd59a1b52536b65cb815fa7e8c114f1e')
version('0.9.400.3.0', sha256='56936d501fe8e6f8796ae1a6badb9294d7dad98a0b557c3b3ce6bd4ecaad13b0')
version('0.8.100.1.0', sha256='97ca929b34d84d99d7cadc3612b544632cdd0c43ed962933a3d47caa27854fa7')
diff --git a/var/spack/repos/builtin/packages/r-rcppblaze/package.py b/var/spack/repos/builtin/packages/r-rcppblaze/package.py
index 4838083e49..34936ac2e8 100644
--- a/var/spack/repos/builtin/packages/r-rcppblaze/package.py
+++ b/var/spack/repos/builtin/packages/r-rcppblaze/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rcppcctz/package.py b/var/spack/repos/builtin/packages/r-rcppcctz/package.py
index 4acfe804ea..92299c02cd 100644
--- a/var/spack/repos/builtin/packages/r-rcppcctz/package.py
+++ b/var/spack/repos/builtin/packages/r-rcppcctz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,19 @@ from spack import *
class RRcppcctz(RPackage):
- """'Rcpp' Access to the 'CCTZ' timezone library is provided. 'CCTZ' is a
- C++ library for translating between absolute and civil times using the
- rules of a time zone. The 'CCTZ' source code, released under the
- Apache 2.0 License, is included in this package. See
- <https://github.com/google/cctz> for more details."""
+ """'Rcpp' Bindings for the 'CCTZ' Library
+
+ 'Rcpp' Access to the 'CCTZ' timezone library is provided. 'CCTZ' is a C++
+ library for translating between absolute and civil times using the rules of
+ a time zone. The 'CCTZ' source code, released under the Apache 2.0 License,
+ is included in this package. See <https://github.com/google/cctz> for more
+ details."""
homepage = "https://github.com/eddelbuettel/rcppcctz"
url = "https://cloud.r-project.org/src/contrib/RcppCCTZ_0.2.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RcppCCTZ"
+ version('0.2.9', sha256='723f45eca1be08903234e339523daca35748fe65c1a9d59afcb583d3a17bcaae')
version('0.2.6', sha256='0e9a76055d29da24cd4c4069c78c1f44998f3461be60c7a6c3e7a35059fb79ae')
version('0.2.4', sha256='98b6867d38abe03957fe803e88b6cc2d122b85a68ef07fa86f7e1009d6c00819')
version('0.2.3', sha256='0fefcc98387b2c1a5907e5230babb46e2cc11b603424f458f515e445a3236031')
diff --git a/var/spack/repos/builtin/packages/r-rcppcnpy/package.py b/var/spack/repos/builtin/packages/r-rcppcnpy/package.py
index e86e6c0994..d05ddad5c4 100644
--- a/var/spack/repos/builtin/packages/r-rcppcnpy/package.py
+++ b/var/spack/repos/builtin/packages/r-rcppcnpy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rcppdate/package.py b/var/spack/repos/builtin/packages/r-rcppdate/package.py
new file mode 100644
index 0000000000..95d23bfcee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rcppdate/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRcppdate(RPackage):
+ """'date' C++ Header Library for Date and Time Functionality
+
+ 'date' is a C++ header library offering extensive date and time
+ functionality for the C++11, C++14 and C++17 standards written by Howard
+ Hinnant and released under the MIT license. A slightly modified version has
+ been accepted (along with 'tz.h') as part of C++20. This package regroups
+ all header files from the upstream repository by Howard Hinnant so that
+ other R packages can use them in their C++ code. At present, few of the
+ types have explicit 'Rcpp' wrapper though these may be added as needed."""
+
+ homepage = "https://github.com/eddelbuettel/rcppdate"
+ url = "https://cloud.r-project.org/src/contrib/RcppDate_0.0.1.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/RcppDate"
+
+ version('0.0.1', sha256='117721fc677dfb4209200a7ff894fbbb8ee1b652d01b3878b11c3253733b4a5f')
diff --git a/var/spack/repos/builtin/packages/r-rcppeigen/package.py b/var/spack/repos/builtin/packages/r-rcppeigen/package.py
index 8b6ed5cc49..754a2f0aea 100644
--- a/var/spack/repos/builtin/packages/r-rcppeigen/package.py
+++ b/var/spack/repos/builtin/packages/r-rcppeigen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRcppeigen(RPackage):
- """R and 'Eigen' integration using 'Rcpp'. 'Eigen' is a C++ template
+ """'Rcpp' Integration for the 'Eigen' Templated Linear Algebra Library
+
+ R and 'Eigen' integration using 'Rcpp'. 'Eigen' is a C++ template
library for linear algebra: matrices, vectors, numerical solvers and
related algorithms. It supports dense and sparse matrices on integer,
floating point and complex numbers, decompositions of such matrices, and
@@ -25,12 +27,12 @@ class RRcppeigen(RPackage):
url = "https://cloud.r-project.org/src/contrib/RcppEigen_0.3.2.9.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RcppEigen"
+ version('0.3.3.9.1', sha256='8a0486249b778a4275a1168fc89fc7fc49c2bb031cb14b50a50089acae7fe962')
version('0.3.3.5.0', sha256='e5c6af17770c5f57b7cf2fba04ad1a519901b446e8138bfff221952458207f05')
version('0.3.3.4.0', sha256='11020c567b299b1eac95e8a4d57abf0315931286907823dc7b66c44d0dd6dad4')
version('0.3.3.3.1', sha256='14fdd2cb764d0a822e11b8f09dcf1c3c8580d416f053404732064d8f2b176f24')
version('0.3.2.9.0', sha256='25affba9065e3c12d67b1934d1ce97a928a4011a7738f7b90f0e9830409ec93b')
version('0.3.2.8.1', sha256='ceccb8785531c5c23f9232b594e5372c214a114a08ec759115e946badd08d681')
- depends_on('r@2.15.1:', type=('build', 'run'))
depends_on('r-matrix@1.1-0:', type=('build', 'run'))
depends_on('r-rcpp@0.11.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rcpphnsw/package.py b/var/spack/repos/builtin/packages/r-rcpphnsw/package.py
index 9196583bf5..bb6c67b470 100644
--- a/var/spack/repos/builtin/packages/r-rcpphnsw/package.py
+++ b/var/spack/repos/builtin/packages/r-rcpphnsw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,19 @@ from spack import *
class RRcpphnsw(RPackage):
- """RcppHNSW: 'Rcpp' Bindings for 'hnswlib', a Library for Approximate
- NearestNeighbors"""
+ """'Rcpp' Bindings for 'hnswlib', a Library for Approximate
+ NearestNeighbors
+
+ 'Hnswlib' is a C++ library for Approximate Nearest Neighbors. This ;
+ package provides a minimal R interface by relying on the 'Rcpp' package.
+ See ; <https://github.com/nmslib/hnswlib> for more on 'hnswlib'. 'hnswlib'
+ is ; released under Version 2.0 of the Apache License."""
homepage = "https://cloud.r-project.org/package=RcppHNSW"
url = "https://cloud.r-project.org/src/contrib/RcppHNSW_0.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RcppHNSW"
+ version('0.3.0', sha256='a0eb4eea65e28ba31e8306a1856f7e617a192bd448b148f88abe99181cbde007')
version('0.1.0', sha256='75a54c30953845dec685764c7b3b4cd7315197c91aef4ab3b4eb0a6293010a95')
depends_on('r-rcpp@0.11.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rcppparallel/package.py b/var/spack/repos/builtin/packages/r-rcppparallel/package.py
index 4f4459c990..4e84e22021 100644
--- a/var/spack/repos/builtin/packages/r-rcppparallel/package.py
+++ b/var/spack/repos/builtin/packages/r-rcppparallel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRcppparallel(RPackage):
- """High level functions for parallel programming with 'Rcpp'. For example,
+ """Parallel Programming Tools for 'Rcpp'
+
+ High level functions for parallel programming with 'Rcpp'. For example,
the 'parallelFor()' function can be used to convert the work of a standard
serial "for" loop into a parallel one and the 'parallelReduce()' function
can be used for accumulating aggregate or other values."""
@@ -16,6 +18,7 @@ class RRcppparallel(RPackage):
url = "https://cloud.r-project.org/src/contrib/RcppParallel_4.4.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RcppParallel"
+ version('5.0.2', sha256='8ca200908c6365aafb2063be1789f0894969adc03c0f523c6cc45434b8236f81')
version('4.4.3', sha256='7a04929ecab97e46c0b09fe5cdbac9d7bfa17ad7d111f1a9787a9997f45fa0fa')
depends_on('r@3.0.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rcppprogress/package.py b/var/spack/repos/builtin/packages/r-rcppprogress/package.py
index c0ed65f86f..633fba6737 100644
--- a/var/spack/repos/builtin/packages/r-rcppprogress/package.py
+++ b/var/spack/repos/builtin/packages/r-rcppprogress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRcppprogress(RPackage):
- """Allows to display a progress bar in the R console for long running
+ """An Interruptible Progress Bar with OpenMP Support for C++ in R Packages
+
+ Allows to display a progress bar in the R console for long running
computations taking place in c++ code, and support for interrupting
those computations even in multithreaded code, typically using OpenMP."""
@@ -15,6 +17,7 @@ class RRcppprogress(RPackage):
url = "https://cloud.r-project.org/src/contrib/RcppProgress_0.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RcppProgress"
+ version('0.4.2', sha256='b1624b21b7aeb1dafb30f092b2a4bef4c3504efd2d6b00b2cdf55dc9df194b48')
version('0.4.1', sha256='11764105922f763d4c75c502599ec7dcc2fd629a029964caf53f98b41d0c607a')
version('0.4', sha256='706e14360dbc5976db05c2ac6692c3279c0f8c95e72bf9d4becd9e1348025e3e')
version('0.3', sha256='3de5dc47cc2f9e839f92355c463289531e8c13806e54c7438f63c7c34378261d')
diff --git a/var/spack/repos/builtin/packages/r-rcurl/package.py b/var/spack/repos/builtin/packages/r-rcurl/package.py
index 51586cc691..23e14c0b52 100644
--- a/var/spack/repos/builtin/packages/r-rcurl/package.py
+++ b/var/spack/repos/builtin/packages/r-rcurl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rda/package.py b/var/spack/repos/builtin/packages/r-rda/package.py
index 06c40411a4..b1c36171af 100644
--- a/var/spack/repos/builtin/packages/r-rda/package.py
+++ b/var/spack/repos/builtin/packages/r-rda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,9 @@ class RRda(RPackage):
url = "https://cloud.r-project.org/src/contrib/rda_1.0.2-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rda"
- version('1.0.2-2.1', sha256='6918b62f51252b57f2c05b99debef6136b370f594dc3ae6466268e4c35578ef8')
+ # Note: Package 'rda' was removed from the CRAN repository.
+ # The latest archived version is below
+ version('1.0.2-2.1', sha256='eea3a51a2e132a023146bfbc0c384f5373eb3ea2b61743d7658be86a5b04949e')
version('1.0.2-2', sha256='52ee41249b860af81dc692eee38cd4f8f26d3fbe34cb274f4e118de0013b58bc')
version('1.0.2-1', sha256='e5b96610ec9e82f12efe5dbb9a3ec9ecba9aaddfad1d6ab3f8c37d15fc2b42b7')
diff --git a/var/spack/repos/builtin/packages/r-rdpack/package.py b/var/spack/repos/builtin/packages/r-rdpack/package.py
index 77b290c72c..33b883716d 100644
--- a/var/spack/repos/builtin/packages/r-rdpack/package.py
+++ b/var/spack/repos/builtin/packages/r-rdpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRdpack(RPackage):
- """Functions for manipulation of R documentation objects, including
+ """Update and Manipulate Rd Documentation Objects
+
+ Functions for manipulation of R documentation objects, including
functions reprompt() and ereprompt() for updating 'Rd' documentation for
functions, methods and classes; 'Rd' macros for citations and import of
references from 'bibtex' files for use in 'Rd' files and 'roxygen2'
@@ -19,8 +21,10 @@ class RRdpack(RPackage):
url = "https://cloud.r-project.org/src/contrib/Rdpack_0.11-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Rdpack"
+ version('2.1', sha256='26e094fe3c077fb2a99e95c5bd94015a5f993a4a5f5d217829b4872ff004bfce')
version('0.11-0', sha256='8fb449c80fbe931cdce51f728fb03a1978009ccce66fd6b9edacdc6ff4118d85')
depends_on('r@2.15.0:', type=('build', 'run'))
- depends_on('r-bibtex@0.4.0:', type=('build', 'run'))
depends_on('r-gbrd', type=('build', 'run'))
+ depends_on('r-rbibutils@1.3:', when='@2.1:', type=('build', 'run'))
+ depends_on('r-bibtex@0.4.0:', when='@:0.11-0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-readbitmap/package.py b/var/spack/repos/builtin/packages/r-readbitmap/package.py
index 8773b3ff51..acf57da00f 100644
--- a/var/spack/repos/builtin/packages/r-readbitmap/package.py
+++ b/var/spack/repos/builtin/packages/r-readbitmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-readr/package.py b/var/spack/repos/builtin/packages/r-readr/package.py
index f618df980b..8a100e8c63 100644
--- a/var/spack/repos/builtin/packages/r-readr/package.py
+++ b/var/spack/repos/builtin/packages/r-readr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,25 +7,31 @@ from spack import *
class RReadr(RPackage):
- """The goal of 'readr' is to provide a fast and friendly way to read
- rectangular data (like 'csv', 'tsv', and 'fwf'). It is designed to
- flexibly parse many types of data found in the wild, while still cleanly
- failing when data unexpectedly changes."""
+ """Read Rectangular Text Data
+
+ The goal of 'readr' is to provide a fast and friendly way to read
+ rectangular data (like 'csv', 'tsv', and 'fwf'). It is designed to flexibly
+ parse many types of data found in the wild, while still cleanly failing
+ when data unexpectedly changes."""
homepage = "https://cloud.r-project.org/package=readr"
url = "https://cloud.r-project.org/src/contrib/readr_1.1.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/readr"
+ version('1.4.0', sha256='02b1188aab8b2bc3f3d2bba5b946bd299610e87f3f7660c88b60b444093c46b9')
version('1.3.1', sha256='33f94de39bb7f2a342fbb2bd4e5afcfec08798eac39672ee18042ac0b349e4f3')
version('1.1.1', sha256='1a29b99009a06f2cee18d08bc6201fd4985b6d45c76cefca65084dcc1a2f7cb3')
depends_on('r@3.0.2:', when='@:1.2.1', type=('build', 'run'))
depends_on('r@3.1:', when='@1.3.0:', type=('build', 'run'))
- depends_on('r-rcpp@0.12.0.5:', type=('build', 'run'))
- depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-cli', when='@1.4.0:', type=('build', 'run'))
+ depends_on('r-clipr', when='@1.2.0:', type=('build', 'run'))
+ depends_on('r-crayon', when='@1.3.1:', type=('build', 'run'))
depends_on('r-hms@0.4.1:', type=('build', 'run'))
+ depends_on('r-rlang', when='@1.4.0:', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@1.4.0:', type=('build', 'run'))
depends_on('r-bh', type=('build', 'run'))
- depends_on('r-clipr', when='@1.2.0:', type=('build', 'run'))
- depends_on('r-crayon', when='@1.3.1:', type=('build', 'run'))
- depends_on('gmake', type='build')
+ depends_on('r-cpp11', when='@1.4.0:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.0.5:', when='@:1.3.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-readxl/package.py b/var/spack/repos/builtin/packages/r-readxl/package.py
index a4dbb70c4f..609d0ed7bf 100644
--- a/var/spack/repos/builtin/packages/r-readxl/package.py
+++ b/var/spack/repos/builtin/packages/r-readxl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-recipes/package.py b/var/spack/repos/builtin/packages/r-recipes/package.py
index 2bd58e60cf..c4e83f8e51 100644
--- a/var/spack/repos/builtin/packages/r-recipes/package.py
+++ b/var/spack/repos/builtin/packages/r-recipes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRecipes(RPackage):
- """An extensible framework to create and preprocess design matrices.
+ """Preprocessing Tools to Create Design Matrices
+
+ An extensible framework to create and preprocess design matrices.
Recipes consist of one or more data manipulation and analysis "steps".
Statistical parameters for the steps can be estimated from an initial data
set and then applied to other data sets. The resulting design matrices can
@@ -17,14 +19,17 @@ class RRecipes(RPackage):
url = "https://cloud.r-project.org/src/contrib/recipes_0.1.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/recipes"
+ version('0.1.15', sha256='808ad2f4d68ae03aa27332437f037597e9c1bebd65ed4ebfab1d243ea6022e76')
version('0.1.6', sha256='51e0db72de171d58d13ad8ffcf1dea402ab8f82100d161722041b6fd014cbfd9')
depends_on('r@3.1:', type=('build', 'run'))
depends_on('r-dplyr', type=('build', 'run'))
depends_on('r-generics', type=('build', 'run'))
+ depends_on('r-generics@0.1.0:', when='@0.1.15:', type=('build', 'run'))
depends_on('r-glue', type=('build', 'run'))
depends_on('r-gower', type=('build', 'run'))
depends_on('r-ipred', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@0.1.15:', type=('build', 'run'))
depends_on('r-lubridate', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
@@ -32,6 +37,8 @@ class RRecipes(RPackage):
depends_on('r-rlang@0.4.0:', type=('build', 'run'))
depends_on('r-tibble', type=('build', 'run'))
depends_on('r-tidyr', type=('build', 'run'))
+ depends_on('r-tidyr@1.0.0:', when='@0.1.15:', type=('build', 'run'))
depends_on('r-tidyselect@0.2.5:', type=('build', 'run'))
+ depends_on('r-tidyselect@1.1.0:', when='@0.1.15:', type=('build', 'run'))
depends_on('r-timedate', type=('build', 'run'))
depends_on('r-withr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-registry/package.py b/var/spack/repos/builtin/packages/r-registry/package.py
index d2a190b7fa..04322d0238 100644
--- a/var/spack/repos/builtin/packages/r-registry/package.py
+++ b/var/spack/repos/builtin/packages/r-registry/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rematch/package.py b/var/spack/repos/builtin/packages/r-rematch/package.py
index 00117f87a9..9f57fbbd6f 100644
--- a/var/spack/repos/builtin/packages/r-rematch/package.py
+++ b/var/spack/repos/builtin/packages/r-rematch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rematch2/package.py b/var/spack/repos/builtin/packages/r-rematch2/package.py
index 2d07db3a23..48ebf9dd5e 100644
--- a/var/spack/repos/builtin/packages/r-rematch2/package.py
+++ b/var/spack/repos/builtin/packages/r-rematch2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-remotes/package.py b/var/spack/repos/builtin/packages/r-remotes/package.py
index 1c2c1fba38..6e69df79da 100644
--- a/var/spack/repos/builtin/packages/r-remotes/package.py
+++ b/var/spack/repos/builtin/packages/r-remotes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRemotes(RPackage):
- """Download and install R packages stored in 'GitHub', 'BitBucket', or
+ """R Package Installation from Remote Repositories, Including 'GitHub'
+
+ Download and install R packages stored in 'GitHub', 'BitBucket', or
plain 'subversion' or 'git' repositories. This package provides the
'install_*' functions in 'devtools'. Indeed most of the code was copied
over from 'devtools'. """
@@ -16,7 +18,10 @@ class RRemotes(RPackage):
url = "https://cloud.r-project.org/src/contrib/remotes_2.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/remotes"
+ version('2.2.0', sha256='12f234fd8c46f4ac54e06a3c60e4015ed2193a32762ca4dd6854f120136f33b8')
version('2.1.1', sha256='4e590746fce618094089372b185e1ea234b3337b23c44c44118e942d0fb5118b')
version('2.1.0', sha256='8944c8f6fc9f0cd0ca04d6cf1221b716eee08facef9f4b4c4d91d0346d6d68a7')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('subversion', type='run')
+ depends_on('git', type='run')
diff --git a/var/spack/repos/builtin/packages/r-renv/package.py b/var/spack/repos/builtin/packages/r-renv/package.py
new file mode 100644
index 0000000000..217262b91c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-renv/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRenv(RPackage):
+ """Project Environments for R packages:
+
+ A dependency management toolkit for R. Using 'renv', you can create and
+ manage project-local R libraries, save the state of these libraries to a
+ 'lockfile', and later restore your library as required. Together, these
+ tools can help make your projects more isolated, portable, and
+ reproducible."""
+
+ homepage = "https://rstudio.github.io/renv/"
+ cran = "renv"
+
+ version('0.13.2', sha256='41f208ed957e27c50cbd8b0fff77a434bad963707df85e462419e2edb6719a4a')
diff --git a/var/spack/repos/builtin/packages/r-reordercluster/package.py b/var/spack/repos/builtin/packages/r-reordercluster/package.py
index bf1951f3ca..ca4b505211 100644
--- a/var/spack/repos/builtin/packages/r-reordercluster/package.py
+++ b/var/spack/repos/builtin/packages/r-reordercluster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-reportingtools/package.py b/var/spack/repos/builtin/packages/r-reportingtools/package.py
index 17d6ef9200..251f6e3e21 100644
--- a/var/spack/repos/builtin/packages/r-reportingtools/package.py
+++ b/var/spack/repos/builtin/packages/r-reportingtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RReportingtools(RPackage):
- """Tools for making reports in various formats.
+ """Tools for making reports in various formats
The ReportingTools software package enables users to easily display
reports of analysis results generated from sources such as microarray
@@ -24,12 +24,14 @@ class RReportingtools(RPackage):
homepage = "https://bioconductor.org/packages/ReportingTools"
git = "https://git.bioconductor.org/packages/ReportingTools.git"
+ version('2.30.0', commit='fb9aee416f38cfd308d6d7264ccbcda0467642a7')
version('2.24.0', commit='d114c658affba9b682a37b4e2caf4341cf8da6cf')
version('2.22.1', commit='dce6af6c6a1cddff077fe61368f2c13e5a0e7bab')
version('2.20.0', commit='77e14ae13fdc16654300852dfd94e6cef58009da')
version('2.17.3', commit='b2e379cd5b813d8ccca37ec25f0660deec943622')
version('2.16.0', commit='b1aa0ea302da7f2993ce8087b1d09c11ddf03663')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-knitr', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-hwriter', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-repr/package.py b/var/spack/repos/builtin/packages/r-repr/package.py
index f9dde095a7..b490335973 100644
--- a/var/spack/repos/builtin/packages/r-repr/package.py
+++ b/var/spack/repos/builtin/packages/r-repr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,19 +8,22 @@ from spack import *
class RRepr(RPackage):
- """String and binary representations of objects for several formats and
+ """Serializable Representations
+
+ String and binary representations of objects for several formats and
mime types."""
homepage = "https://github.com/IRkernel/repr"
url = "https://cloud.r-project.org/src/contrib/repr_0.9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/repr"
+ version('1.1.0', sha256='743fe018f9e3e54067a970bc38b6b8c0c0498b43f88d179ac4a959c2013a5f96')
version('1.0.1', sha256='ecde22c17fd800e1ff5c2b2962689119aa486fba40fbc6f2c50e8d4cc61bc44b')
version('1.0.0', sha256='98b2eb1058c1cb2caa8f98708b63726f5564b45de03d38b95ff6b963a8261f49')
version('0.9', sha256='24cac6e98f2a7e5483cf87aaffcb37611702099b63d3783e319441b4ecd0264b')
depends_on('r@3.0.1:', type=('build', 'run'))
depends_on('r-htmltools', when='@0.13:', type=('build', 'run'))
- depends_on('r-base64enc', when='@0.13:', type=('build', 'run'))
depends_on('r-jsonlite', when='@0.19.1:', type=('build', 'run'))
depends_on('r-pillar@1.4.0:', when='@1.0.0:', type=('build', 'run'))
+ depends_on('r-base64enc', when='@0.13:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-reprex/package.py b/var/spack/repos/builtin/packages/r-reprex/package.py
index 4c215d4f4e..a5cf5fccc9 100644
--- a/var/spack/repos/builtin/packages/r-reprex/package.py
+++ b/var/spack/repos/builtin/packages/r-reprex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,7 +23,8 @@ class RReprex(RPackage):
version('0.2.1', sha256='5d234ddfbcadc5a5194a58eb88973c51581e7e2e231f146974af8f42747b45f3')
version('0.1.1', sha256='919ae93039b2d8fb8eace98da9376c031d734d9e75c237efb24d047f35b5ba4b')
- depends_on('r@3.0.2:', when='@:0.1.2', type=('build', 'run'))
+ depends_on('r+X', type=('build', 'run'))
+ depends_on('r@3.0.2:', type=('build', 'run'))
depends_on('r@3.1:', when='@0.2.0:', type=('build', 'run'))
depends_on('r-callr@2.0.0:', type=('build', 'run'))
depends_on('r-clipr@0.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-reproducible/package.py b/var/spack/repos/builtin/packages/r-reproducible/package.py
new file mode 100644
index 0000000000..00dfe574af
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-reproducible/package.py
@@ -0,0 +1,45 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RReproducible(RPackage):
+ """A Set of Tools that Enhance Reproducibility Beyond Package Management
+
+ Collection of high-level, machine- and OS-independent tools for
+ making deeply reproducible and reusable content in R. The two
+ workhorse functions are Cache and prepInputs; these allow for:
+ nested caching, robust to environments, and objects with
+ environments (like functions); and data retrieval and processing
+ in continuous workflow environments. In all cases, efforts are
+ made to make the first and subsequent calls of functions have
+ the same result, but vastly faster at subsequent times by way of
+ checksums and digesting. Several features are still under active
+ development, including cloud storage of cached objects, allowing
+ for sharing between users. Several advanced options are
+ available, see ?reproducibleOptions."""
+
+ homepage = "https://reproducible.predictiveecology.org/"
+ url = "https://cloud.r-project.org/src/contrib/reproducible_1.2.4.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/reproducible"
+
+ maintainers = ['dorton21']
+
+ version('1.2.4', sha256='0525deefa6a0713c3fe2da8bfc529f62d6352bebf2ef08866503b4853412f149')
+
+ depends_on('r@3.5:', type=('build', 'run'))
+ depends_on('r-data-table@1.10.4:', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-digest', type=('build', 'run'))
+ depends_on('r-fpcompare', type=('build', 'run'))
+ depends_on('r-glue', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-require', type=('build', 'run'))
+ depends_on('r-raster', type=('build', 'run'))
+ depends_on('r-rsqlite', type=('build', 'run'))
+ depends_on('r-rlang', type=('build', 'run'))
+ depends_on('r-sp@1.4-2:', type=('build', 'run'))
+ depends_on('unrar', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-require/package.py b/var/spack/repos/builtin/packages/r-require/package.py
new file mode 100644
index 0000000000..e4da525f21
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-require/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRequire(RPackage):
+ """Installing and Loading R Packages for Reproducible Workflows
+
+ A single key function, 'Require' that wraps 'install.packages',
+ 'remotes::install_github', 'versions::install.versions', and
+ 'base::require' that allows for reproducible workflows. As with
+ other functions in a reproducible workflow, this package
+ emphasizes functions that return the same result whether it is
+ the first or subsequent times running the function. Maturing."""
+
+ homepage = "https://require.predictiveecology.org/"
+ url = "https://cloud.r-project.org/src/contrib/Require_0.0.10.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/Require"
+
+ maintainers = ['dorton21']
+
+ version('0.0.10', sha256='2087c3bb4d660d205962e241c1fc4a366dada5a1ed090d545c52188490567f8d')
+
+ depends_on('r@3.5:', type=('build', 'run'))
+ depends_on('r-data-table@1.10.4:', type=('build', 'run'))
+ depends_on('r-remotes', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-reshape/package.py b/var/spack/repos/builtin/packages/r-reshape/package.py
index c5b61c71bc..70bac94566 100644
--- a/var/spack/repos/builtin/packages/r-reshape/package.py
+++ b/var/spack/repos/builtin/packages/r-reshape/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-reshape2/package.py b/var/spack/repos/builtin/packages/r-reshape2/package.py
index b4b43a892f..1cd1e95012 100644
--- a/var/spack/repos/builtin/packages/r-reshape2/package.py
+++ b/var/spack/repos/builtin/packages/r-reshape2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,21 @@ from spack import *
class RReshape2(RPackage):
- """Flexibly restructure and aggregate data using just two functions: melt
+ """Flexibly Reshape Data: A Reboot of the Reshape Package
+
+ Flexibly restructure and aggregate data using just two functions: melt
and dcast (or acast)."""
homepage = "https://github.com/hadley/reshape"
url = "https://cloud.r-project.org/src/contrib/reshape2_1.4.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/reshape2"
+ version('1.4.4', sha256='d88dcf9e2530fa9695fc57d0c78adfc5e361305fe8919fe09410b17da5ca12d8')
version('1.4.3', sha256='8aff94c935e75032344b52407593392ddd4e16a88bb206984340c816d42c710e')
version('1.4.2', sha256='6d3783610379be4c5676d9236cf66276a166b5b96c18f2759e9b219758959b6b')
version('1.4.1', sha256='fbd49f75a5b0b7266378515af98db310cf6c772bf6e68bed01f38ee99b408042')
depends_on('r@3.1:', when='@1.4.3:', type=('build', 'run'))
depends_on('r-plyr@1.8.1:', type=('build', 'run'))
- depends_on('r-stringr', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-stringr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-reticulate/package.py b/var/spack/repos/builtin/packages/r-reticulate/package.py
index ec301f3b0c..042904bf02 100644
--- a/var/spack/repos/builtin/packages/r-reticulate/package.py
+++ b/var/spack/repos/builtin/packages/r-reticulate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RReticulate(RPackage):
- """Interface to 'Python' modules, classes, and functions. When calling into
+ """Interface to 'Python'
+
+ Interface to 'Python' modules, classes, and functions. When calling into
'Python', R data types are automatically converted to their equivalent
'Python' types. When values are returned from 'Python' to R they are
converted back to R types. Compatible with all versions of 'Python' >=
@@ -17,12 +19,13 @@ class RReticulate(RPackage):
url = "https://cloud.r-project.org/src/contrib/reticulate_1.13.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/reticulate"
+ version('1.18', sha256='b33f855a58f446eefbe38df8a1a4865390f5d4ebd64b2c72266baaee64628513')
version('1.15', sha256='47db3e9c9424263ade15287da8e74f6ba261a936b644b197dba6772853b7b50d')
version('1.13', sha256='adbe41d556b667c4419d563680f8608a56b0f792b8bc427b3bf4c584ff819de3')
depends_on('r@3.0:', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
- depends_on('r-rcpp@0.12.7:', type=('build', 'run', 'link'))
depends_on('r-matrix', type=('build', 'run'))
depends_on('r-rappdirs', when='@1.15:', type=('build', 'run'))
- depends_on('python@2.7.0:')
+ depends_on('r-rcpp@0.12.7:', type=('build', 'run', 'link'))
+ depends_on('python@2.7.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rex/package.py b/var/spack/repos/builtin/packages/r-rex/package.py
index 26066e8bdc..77b7574878 100644
--- a/var/spack/repos/builtin/packages/r-rex/package.py
+++ b/var/spack/repos/builtin/packages/r-rex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RRex(RPackage):
- """A friendly interface for the construction of regular expressions."""
+ """Friendly Regular Expressions
+
+ A friendly interface for the construction of regular expressions."""
homepage = "https://cloud.r-project.org/package=rex"
url = "https://cloud.r-project.org/src/contrib/rex_1.1.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rex"
+ version('1.2.0', sha256='06b491f1469078862e40543fd74e1d38b2e0fb61fdf01c8083add4b11ac2eb54')
version('1.1.2', sha256='bd3c74ceaf335336f5dd04314d0a791f6311e421a2158f321f5aab275f539a2a')
depends_on('r-lazyeval', type=('build', 'run'))
- depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-magrittr', when='@:1.1.2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rferns/package.py b/var/spack/repos/builtin/packages/r-rferns/package.py
index a10b40bdf3..995531c512 100644
--- a/var/spack/repos/builtin/packages/r-rferns/package.py
+++ b/var/spack/repos/builtin/packages/r-rferns/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,16 @@ from spack import *
class RRferns(RPackage):
- """Provides the random ferns classifier"""
+ """Random Ferns Classifier
+
+ Provides the random ferns classifier by Ozuysal, Calonder, Lepetit and Fua
+ (2009) <doi:10.1109/TPAMI.2009.23>, modified for generic and multi-label
+ classification and featuring OOB error approximation and importance measure
+ as introduced in Kursa (2014) <doi:10.18637/jss.v061.i10>."""
homepage = "https://cloud.r-project.org/package=rFerns"
url = "https://cloud.r-project.org/src/contrib/rFerns_3.0.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rFerns"
+ version('4.0.0', sha256='cc8cea0893390bf5db0fb0f59748d5bf6f29537d68bedca900268fd551489128')
version('3.0.0', sha256='35e7e31a6497e415a0fe578678cf9b2f537b21319e4c015a1e2dade00310227c')
diff --git a/var/spack/repos/builtin/packages/r-rgdal/package.py b/var/spack/repos/builtin/packages/r-rgdal/package.py
index a4dd062f19..2aa7fab4a5 100644
--- a/var/spack/repos/builtin/packages/r-rgdal/package.py
+++ b/var/spack/repos/builtin/packages/r-rgdal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,27 +7,32 @@ from spack import *
class RRgdal(RPackage):
- """Provides bindings to the 'Geospatial' Data Abstraction Library
- ('GDAL') (>= 1.6.3) and access to projection/transformation operations
- from the 'PROJ.4' library. The 'GDAL' and 'PROJ.4' libraries are
- external to the package, and, when installing the package from source,
- must be correctly installed first. Both 'GDAL' raster and 'OGR' vector
- map data can be imported into R, and 'GDAL' raster data and 'OGR'
- vector data exported. Use is made of classes defined in the 'sp' package.
- Windows and Mac Intel OS X binaries (including 'GDAL', 'PROJ.4' and
- 'Expat') are provided on 'CRAN'."""
+ """Bindings for the 'Geospatial' Data Abstraction Library
+
+ Provides bindings to the 'Geospatial' Data Abstraction Library ('GDAL') (>=
+ 1.11.4) and access to projection/transformation operations from the 'PROJ'
+ library. Use is made of classes defined in the 'sp' package. Raster and
+ vector map data can be imported into R, and raster and vector 'sp' objects
+ exported. The 'GDAL' and 'PROJ' libraries are external to the package, and,
+ when installing the package from source, must be correctly installed first;
+ it is important that 'GDAL' < 3 be matched with 'PROJ' < 6. From 'rgdal'
+ 1.5-8, installed with to 'GDAL' >=3, 'PROJ' >=6 and 'sp' >= 1.4, coordinate
+ reference systems use 'WKT2_2019' strings, not 'PROJ' strings. 'Windows'
+ and 'macOS' binaries (including 'GDAL', 'PROJ' and their dependencies) are
+ provided on 'CRAN'."""
homepage = "https://cloud.r-project.org/package=rgdal"
url = "https://cloud.r-project.org/src/contrib/rgdal_1.3-9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rgdal"
+ version('1.5-19', sha256='6fbfd71b19e7b8d9dbddc91cb1eef8890c74a1e2bf8f619da165ff51bf1231b2')
version('1.5-18', sha256='53467c19bc93d8ea311458eaa281c8c456168ab75e84d76ef5cc6c00f53122df')
version('1.4-4', sha256='2532e76e0af27d145f799d70006a5dbecb2d3be698e3d0bbf580f4c41a34c5d7')
version('1.3-9', sha256='3e44f88d09894be4c0abd8874d00b40a4a5f4542b75250d098ffbb3ba41e2654')
version('1.2-16', sha256='017fefea4f9a6d4540d128c707197b7025b55e4aff98fc763065366b025b03c9')
- depends_on('r@3.5.0:', when='@1.5:', type=('build', 'run'))
depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.5:', type=('build', 'run'))
depends_on('r-sp@1.1-0:', type=('build', 'run'))
depends_on('gdal@1.11.4:')
depends_on('proj@4.8.0:5', when='@:1.3-9')
diff --git a/var/spack/repos/builtin/packages/r-rgenoud/package.py b/var/spack/repos/builtin/packages/r-rgenoud/package.py
index 19e9bd26f6..8066c065ab 100644
--- a/var/spack/repos/builtin/packages/r-rgenoud/package.py
+++ b/var/spack/repos/builtin/packages/r-rgenoud/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rgeos/package.py b/var/spack/repos/builtin/packages/r-rgeos/package.py
index 14b2af8a1a..a13007cda7 100644
--- a/var/spack/repos/builtin/packages/r-rgeos/package.py
+++ b/var/spack/repos/builtin/packages/r-rgeos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,32 @@ from spack import *
class RRgeos(RPackage):
- """Interface to Geometry Engine - Open Source ('GEOS') using the C
- 'API' for topology operations on geometries. The 'GEOS' library is
- external to the package, and, when installing the package from source,
- must be correctly installed first. Windows and Mac Intel OS X binaries
- are provided on 'CRAN'."""
+ """Interface to Geometry Engine - Open Source ('GEOS')
+
+ Interface to Geometry Engine - Open Source ('GEOS') using the C 'API' for
+ topology operations on geometries. The 'GEOS' library is external to the
+ package, and, when installing the package from source, must be correctly
+ installed first. Windows and Mac Intel OS X binaries are provided on
+ 'CRAN'. ('rgeos' >= 0.5-1): Up to and including 'GEOS' 3.7.1, topological
+ operations succeeded with some invalid geometries for which the same
+ operations fail from and including 'GEOS' 3.7.2. The 'checkValidity='
+ argument defaults and structure have been changed, from default FALSE to
+ integer default '0L' for 'GEOS' < 3.7.2 (no check), '1L' 'GEOS' >= 3.7.2
+ (check and warn). A value of '2L' is also provided that may be used,
+ assigned globally using 'set_RGEOS_CheckValidity(2L)', or locally using the
+ 'checkValidity=2L' argument, to attempt zero-width buffer repair if invalid
+ geometries are found. The previous default (FALSE, now '0L') is fastest and
+ used for 'GEOS' < 3.7.2, but will not warn users of possible problems
+ before the failure of topological operations that previously succeeded.
+ From 'GEOS' 3.8.0, repair of geometries may also be attempted using
+ 'gMakeValid()', which may, however, return a collection of geometries of
+ different types."""
homepage = "https://cloud.r-project.org/package=rgeos"
url = "https://cloud.r-project.org/src/contrib/rgeos_0.3-26.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rgeos"
+ version('0.5-5', sha256='4baa0dfe6ff76e87ddb67a030fc14fe963d28b518485a4d71058923b2606d420')
version('0.5-1', sha256='8408973e7fe5648e39aa53f3d4bfe800638021a146a4e06f86496c0132e05488')
version('0.3-26', sha256='98524a0b8113abe6c3d0ecc1f2f66e7ab6d40c783a76158cfc017e1ab1e3f433')
diff --git a/var/spack/repos/builtin/packages/r-rgexf/package.py b/var/spack/repos/builtin/packages/r-rgexf/package.py
index 137a4baf6a..f3365a13d3 100644
--- a/var/spack/repos/builtin/packages/r-rgexf/package.py
+++ b/var/spack/repos/builtin/packages/r-rgexf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRgexf(RPackage):
- """Create, read and write GEXF (Graph Exchange XML Format) graph files
+ """Build, Import and Export GEXF Graph Files
+
+ Create, read and write GEXF (Graph Exchange XML Format) graph files
(used in Gephi and others). Using the XML package, it allows the user to
easily build/read graph files including attributes, GEXF viz attributes
(such as color, size, and position), network dynamics (for both edges and
@@ -20,8 +22,10 @@ class RRgexf(RPackage):
url = "https://cloud.r-project.org/src/contrib/rgexf_0.15.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rgexf"
+ version('0.16.0', sha256='2a671df9ac70cfefd4092754317cb28e32a33df345b80e1975bf838e838245ee')
version('0.15.3', sha256='2e8a7978d1fb977318e6310ba65b70a9c8890185c819a7951ac23425c6dc8147')
depends_on('r-xml', type=('build', 'run'))
- depends_on('r-rook', type=('build', 'run'))
depends_on('r-igraph', type=('build', 'run'))
+ depends_on('r-servr', when='@0.16.0:', type=('build', 'run'))
+ depends_on('r-rook', when='@:0.15.3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rgl/package.py b/var/spack/repos/builtin/packages/r-rgl/package.py
index c890df70d9..f4ea92ba10 100644
--- a/var/spack/repos/builtin/packages/r-rgl/package.py
+++ b/var/spack/repos/builtin/packages/r-rgl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRgl(RPackage):
- """Provides medium to high level functions for 3D interactive graphics,
+ """3D Visualization Using OpenGL
+
+ Provides medium to high level functions for 3D interactive graphics,
including functions modelled on base graphics (plot3d(), etc.) as well as
functions for constructing representations of geometric objects (cube3d(),
etc.). Output may be on screen using OpenGL, or to various standard
@@ -18,13 +20,15 @@ class RRgl(RPackage):
url = "https://cloud.r-project.org/src/contrib/rgl_0.99.16.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rgl"
+ version('0.104.16', sha256='b82d2e2b965e76d6cc55bbd15ee0f79c36913ab09ce5436d2104551563462a99')
version('0.100.26', sha256='e1889c2723ad458b39fdf9366fdaf590d7657d3762748f8534a8491ef754e740')
version('0.100.24', sha256='1233a7bdc5a2b908fc64d5f56e92a0e123e8f7c0b9bac93dfd005608b78fa35a')
version('0.100.19', sha256='50630702554e422e0603f27d499aad3b6f822de5a73da7fdf70404ac50df7025')
version('0.99.16', sha256='692a545ed2ff0f5e15289338736f0e3c092667574c43ac358d8004901d7a1a61')
version('0.98.1', sha256='5f49bed9e092e672f73c8a1a5365cdffcda06db0315ac087e95ab9c9c71a6986')
- depends_on('r@3.2:', type=('build', 'run'))
+ depends_on('r+X', type=('build', 'run'))
+ depends_on('r@3.2.0:', type=('build', 'run'))
depends_on('r-htmlwidgets', type=('build', 'run'))
depends_on('r-htmltools', type=('build', 'run'))
depends_on('r-knitr', type=('build', 'run'))
@@ -33,12 +37,12 @@ class RRgl(RPackage):
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-crosstalk', when='@0.99.16:', type=('build', 'run'))
depends_on('r-manipulatewidget@0.9.0:', when='@0.99.16:', type=('build', 'run'))
- depends_on('zlib', type='link')
- depends_on('libpng@1.2.9:', type='link')
depends_on('libx11')
- depends_on('freetype', type='link')
depends_on('gl')
depends_on('glu')
+ depends_on('zlib', type='link')
+ depends_on('libpng@1.2.9:', type='link')
+ depends_on('freetype', type='link')
depends_on('pandoc@1.14:', type='build')
def configure_args(self):
diff --git a/var/spack/repos/builtin/packages/r-rgooglemaps/package.py b/var/spack/repos/builtin/packages/r-rgooglemaps/package.py
index 1938aa41fe..177610c0d2 100644
--- a/var/spack/repos/builtin/packages/r-rgooglemaps/package.py
+++ b/var/spack/repos/builtin/packages/r-rgooglemaps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRgooglemaps(RPackage):
- """This package serves two purposes: (i) Provide a comfortable R interface
+ """Overlays on Static Maps
+
+ This package serves two purposes: (i) Provide a comfortable R interface
to query the Google server for static maps, and (ii) Use the map as a
background image to overlay plots within R. This requires proper coordinate
scaling."""
@@ -16,10 +18,12 @@ class RRgooglemaps(RPackage):
url = "https://cloud.r-project.org/src/contrib/RgoogleMaps_1.2.0.7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RgoogleMaps"
+ version('1.4.5.3', sha256='d1d5ad8db841754af175d4104a05c5c31e5cc445be314a3ac70483c31798680b')
version('1.4.3', sha256='44cb62bcd23e5b4807e91c5825352eb8d38aaaeb3b38a8271ca9f21c1e1d4b19')
version('1.4.2', sha256='b479996fcb72f067644a7ea7f00325e44e76efd202e84aaab022753c4a6d5584')
version('1.2.0.7', sha256='9c268a5a554ad6da69fb560d88dea9c86ec9e9a56b691f1b63faedfe20826712')
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-png', type=('build', 'run'))
+ depends_on('r-sp', when='@1.4.5.3:', type=('build', 'run'))
depends_on('r-rjsonio', when='@1.2.0.5:1.2.0.7', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rgraphviz/package.py b/var/spack/repos/builtin/packages/r-rgraphviz/package.py
index f0e986190e..69264ccbea 100644
--- a/var/spack/repos/builtin/packages/r-rgraphviz/package.py
+++ b/var/spack/repos/builtin/packages/r-rgraphviz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RRgraphviz(RPackage):
- """Provides plotting capabilities for R graph objects.
+ """Provides plotting capabilities for R graph objects
Interfaces R with the AT and T graphviz library for plotting R graph
objects from the graph package."""
@@ -15,13 +15,14 @@ class RRgraphviz(RPackage):
homepage = "https://bioconductor.org/packages/Rgraphviz"
git = "https://git.bioconductor.org/packages/Rgraphviz.git"
+ version('2.34.0', commit='9746623211be794226258631992dfcccccfd7487')
version('2.28.0', commit='c1f57c11f037c977f1d17f227f12a09a999e8c0b')
version('2.26.0', commit='e9b08c77121a45c65129d94a12b5c0b31c65617f')
version('2.24.0', commit='7d1fb00afed0d44e32b4a46f10137ab34f100577')
version('2.22.0', commit='5b8ebbf9b38574c08959dd4632e802b3fbccc121')
version('2.20.0', commit='eface6298150667bb22eac672f1a45e52fbf8c90')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@2.6.0:', type=('build', 'run'))
depends_on('r-graph', type=('build', 'run'))
-
depends_on('graphviz@2.16:', type='run')
diff --git a/var/spack/repos/builtin/packages/r-rhdf5/package.py b/var/spack/repos/builtin/packages/r-rhdf5/package.py
index 932d1c342c..f3312f9019 100644
--- a/var/spack/repos/builtin/packages/r-rhdf5/package.py
+++ b/var/spack/repos/builtin/packages/r-rhdf5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RRhdf5(RPackage):
- """R Interface to HDF5.
+ """R Interface to HDF5
This package provides an interface between HDF5 and R. HDF5's main
features are the ability to store and access very large and/or complex
@@ -20,17 +20,17 @@ class RRhdf5(RPackage):
homepage = "https://bioconductor.org/packages/rhdf5"
git = "https://git.bioconductor.org/packages/rhdf5.git"
+ version('2.34.0', commit='ec861b81fc6962e844bf56b7549ba565a7e4c69c')
version('2.28.1', commit='e230fa34d6f3e97dd4e6065115675baf5e8213bb')
version('2.26.2', commit='81e11258db493661a19cf83e142b690ecac4e6cf')
version('2.24.0', commit='e926e8ce4e77082781afb943324a1e6745385b48')
version('2.22.0', commit='4431bdc0a2bcbb8086ee08a0f2300129b808d1be')
version('2.20.0', commit='37b5165325062728bbec9167f89f5f4b794f30bc')
- depends_on('r-zlibbioc', type=('build', 'run'))
-
- depends_on('r-rhdf5lib', when='@2.24.0:', type=('build', 'run'))
-
depends_on('r@3.5.0:', when='@2.26.2:', type=('build', 'run'))
+ depends_on('r-rhdf5lib', when='@2.24.0:', type=('build', 'run'))
depends_on('r-rhdf5lib@1.3.2:', when='@2.26.2:', type=('build', 'run'))
-
+ depends_on('r-rhdf5lib@1.11.0:', when='@2.34.0:', type=('build', 'run'))
+ depends_on('r-rhdf5filters', when='@2.34.0:', type=('build', 'run'))
+ depends_on('r-zlibbioc', when='@:2.28.1', type=('build', 'run'))
depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-rhdf5filters/package.py b/var/spack/repos/builtin/packages/r-rhdf5filters/package.py
new file mode 100644
index 0000000000..64d155d46c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rhdf5filters/package.py
@@ -0,0 +1,27 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRhdf5filters(RPackage):
+ """HDF5 Compression Filters
+
+ Provides a collection of compression filters for use with HDF5 datasets."""
+
+ homepage = "https://github.com/grimbough/rhdf5filters"
+ git = "https://git.bioconductor.org/packages/rhdf5filters"
+
+ version('1.2.0', commit='25af0180f926b4b3ea11b30ec9277d26ad3d56b3')
+
+ depends_on('r-rhdf5lib', type=('build', 'run'))
+ depends_on('gmake', type='build')
+
+ def configure_args(self):
+ args = []
+ if self.spec.target.family == 'aarch64':
+ args.append("ax_cv_gcc_check_x86_cpu_init=yes")
+ args.append("ax_cv_gcc_x86_cpu_supports_sse2=no")
+ return args
diff --git a/var/spack/repos/builtin/packages/r-rhdf5lib/package.py b/var/spack/repos/builtin/packages/r-rhdf5lib/package.py
index 266bb4859f..bcee3cd524 100644
--- a/var/spack/repos/builtin/packages/r-rhdf5lib/package.py
+++ b/var/spack/repos/builtin/packages/r-rhdf5lib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,18 @@ from spack import *
class RRhdf5lib(RPackage):
- """hdf5 library as an R package.
+ """hdf5 library as an R package
Provides C and C++ hdf5 libraries."""
homepage = "https://bioconductor.org/packages/Rhdf5lib"
git = "https://git.bioconductor.org/packages/Rhdf5lib.git"
+ version('1.12.1', commit='cf464f40fd95274d0d351cf28b586c49307c4f0b')
version('1.6.3', commit='11ac3069f28b0068002db9c645817401f6c5b3c4')
version('1.4.3', commit='f6be8c2659b2daa17541506058917b7981490d65')
version('1.2.1', commit='dbf85dbedb736d5a696794d52875729c8514494e')
version('1.0.0', commit='79608038c2016a518ba747fe6a2bf02ce53a75f9')
+ depends_on('r@3.3.0:', when='@1.12.1:', type='build')
depends_on('gmake', type='build')
diff --git a/var/spack/repos/builtin/packages/r-rhmmer/package.py b/var/spack/repos/builtin/packages/r-rhmmer/package.py
index ab00ef0bad..94ce38620a 100644
--- a/var/spack/repos/builtin/packages/r-rhmmer/package.py
+++ b/var/spack/repos/builtin/packages/r-rhmmer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rhtslib/package.py b/var/spack/repos/builtin/packages/r-rhtslib/package.py
index 03539a56ba..76b95ae557 100644
--- a/var/spack/repos/builtin/packages/r-rhtslib/package.py
+++ b/var/spack/repos/builtin/packages/r-rhtslib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RRhtslib(RPackage):
- """HTSlib high-throughput sequencing library as an R package.
+ """HTSlib high-throughput sequencing library as an R package
This package provides version 1.7 of the 'HTSlib' C library for high-
throughput sequence analysis. The package is primarily useful to
@@ -18,6 +18,7 @@ class RRhtslib(RPackage):
homepage = "https://bioconductor.org/packages/Rhtslib"
git = "https://git.bioconductor.org/packages/Rhtslib.git"
+ version('1.22.0', commit='899b79faa54d42c7c9b9a2bc49972109637d367f')
version('1.18.1', commit='751a2ebaed43b7991204b27bd6c7870645001d82')
version('1.16.3', commit='3ed0b5db2ee3cf0df1c6096fde8855c8485eebd4')
version('1.14.1', commit='4be260720f845a34d0ac838278fce1363f645230')
@@ -26,7 +27,6 @@ class RRhtslib(RPackage):
version('1.8.0', commit='3b5493473bed42958614091c58c739932ffcfa79')
depends_on('r-zlibbioc', type=('build', 'run'))
-
depends_on('bzip2', type=('build', 'link', 'run'))
depends_on('xz', type=('build', 'link', 'run'))
depends_on('curl', type=('build', 'link', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rinside/package.py b/var/spack/repos/builtin/packages/r-rinside/package.py
index 5b2b99e161..d9c3940479 100644
--- a/var/spack/repos/builtin/packages/r-rinside/package.py
+++ b/var/spack/repos/builtin/packages/r-rinside/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRinside(RPackage):
- """C++ classes to embed R in C++ applications The 'RInside' packages makes
+ """C++ Classes to Embed R in C++ (and C) Applications
+
+ C++ classes to embed R in C++ applications The 'RInside' packages makes
it easier to have "R inside" your C++ application by providing a C++
wrapperclass providing the R interpreter. As R itself is embedded into
your application, a shared library build of R is required. This works on
@@ -26,9 +28,9 @@ class RRinside(RPackage):
url = "https://cloud.r-project.org/src/contrib/RInside_0.2.15.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RInside"
+ version('0.2.16', sha256='7ae4ade128ea05f37068d59e610822ff0b277f9d39d8900f7eb31759ad5a2a0e')
version('0.2.15', sha256='1e1d87a3584961f3aa4ca6acd4d2f3cda26abdab027ff5be2fd5cd76a98af02b')
version('0.2.14', sha256='8de5340993fe879ca00fa559c5b1b27b408ba78bfc5f67d36d6f0b8d8e8649cf')
version('0.2.13', sha256='be1da861f4f8c1292f0691bce05978e409a081f24ad6006ae173a6a89aa4d031')
- depends_on('r@2.10.0:', type=('build', 'run'))
depends_on('r-rcpp@0.11.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rio/package.py b/var/spack/repos/builtin/packages/r-rio/package.py
index 4472501133..4c3fbe88e0 100644
--- a/var/spack/repos/builtin/packages/r-rio/package.py
+++ b/var/spack/repos/builtin/packages/r-rio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rjags/package.py b/var/spack/repos/builtin/packages/r-rjags/package.py
index 7a74f65ba3..d405e9f796 100644
--- a/var/spack/repos/builtin/packages/r-rjags/package.py
+++ b/var/spack/repos/builtin/packages/r-rjags/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,15 @@ from spack import *
class RRjags(RPackage):
- """Interface to the JAGS MCMC library.
- Usage: $ spack load r-rjags """
+ """Bayesian Graphical Models using MCMC
+
+ Interface to the JAGS MCMC library."""
homepage = "https://cloud.r-project.org/package=rjags"
url = "https://cloud.r-project.org/src/contrib/rjags_4-8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rjags/"
+ version('4-10', sha256='bd3e0bdf50b23b63061a0caa2428be585ccbf0b3f5d28eaa690e714e508d0ada')
version('4-8', sha256='1529827ab11493fb5f05552e239d700ae2f818995d86d3c9e4c92523f594b59f')
version('4-6', sha256='cf24bb1e7c8445bafb49097089ad33e5bd5d8efbccf16fc7e32ad230f05f89ad')
diff --git a/var/spack/repos/builtin/packages/r-rjava/package.py b/var/spack/repos/builtin/packages/r-rjava/package.py
index 762836e685..073e1a7e73 100644
--- a/var/spack/repos/builtin/packages/r-rjava/package.py
+++ b/var/spack/repos/builtin/packages/r-rjava/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,31 @@ from spack import *
class RRjava(RPackage):
- """Low-level interface to Java VM very much like .C/.Call and friends.
+ """Low-Level R to Java Interface
+
+ Low-level interface to Java VM very much like .C/.Call and friends.
Allows creation of objects, calling methods and accessing fields."""
homepage = "http://www.rforge.net/rJava/"
url = "https://cloud.r-project.org/src/contrib/rJava_0.9-8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rJava"
+ version('0.9-13', sha256='5b1688f5044476b34f71d868b222ac5fce3a088f0c2b9e4591c1e48f3d8c75f4')
version('0.9-11', sha256='c28ae131456a98f4d3498aa8f6eac9d4df48727008dacff1aa561fc883972c69')
version('0.9-8', sha256='dada5e031414da54eb80b9024d51866c20b92d41d68da65789fe0130bc54bd8a')
depends_on('r@2.5:', type=('build', 'run'))
- depends_on('java@1.2:')
+ depends_on('java@2:')
depends_on('gmake', type='build')
+
+ # these are not listed as dependencies but are needed
+ depends_on('bzip2')
+ depends_on('icu4c')
+ depends_on('libiconv')
+ depends_on('pcre2')
+ depends_on('xz')
+
+ def setup_build_environment(self, env):
+ spec = self.spec
+ env.append_flags('JAVAH', '{0}/javah'.format(
+ join_path(spec['java'].prefix.bin)))
diff --git a/var/spack/repos/builtin/packages/r-rjson/package.py b/var/spack/repos/builtin/packages/r-rjson/package.py
index a2084273c4..09a3d4e266 100644
--- a/var/spack/repos/builtin/packages/r-rjson/package.py
+++ b/var/spack/repos/builtin/packages/r-rjson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rjsonio/package.py b/var/spack/repos/builtin/packages/r-rjsonio/package.py
index b38fe5c17d..bf54f80057 100644
--- a/var/spack/repos/builtin/packages/r-rjsonio/package.py
+++ b/var/spack/repos/builtin/packages/r-rjsonio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRjsonio(RPackage):
- """This is a package that allows conversion to and from data in Javascript
+ """Serialize R Objects to JSON, JavaScript Object Notation
+
+ This is a package that allows conversion to and from data in Javascript
object notation (JSON) format. This allows R objects to be inserted into
Javascript/ECMAScript/ActionScript code and allows R programmers to read
and convert JSON content to R objects. This is an alternative to rjson
@@ -27,6 +29,7 @@ class RRjsonio(RPackage):
url = "https://cloud.r-project.org/src/contrib/RJSONIO_1.3-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RJSONIO"
+ version('1.3-1.4', sha256='54142c931e15eca278a02dad5734026bb49d960471eb085008af825352953190')
version('1.3-1.2', sha256='550e18f7c04186376d67747b8258f529d205bfc929da9194fe45ec384e092d7e')
version('1.3-1.1', sha256='c72493b441758cd1e3e9d91296b9ea31068e71104649f46ad84c854a02c09693')
version('1.3-0', sha256='119334b7761c6c1c3cec52fa17dbc1b72eaebb520c53e68d873dea147cf48fb7')
diff --git a/var/spack/repos/builtin/packages/r-rlang/package.py b/var/spack/repos/builtin/packages/r-rlang/package.py
index 9b258b6565..23aaab8591 100644
--- a/var/spack/repos/builtin/packages/r-rlang/package.py
+++ b/var/spack/repos/builtin/packages/r-rlang/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RRlang(RPackage):
- """A toolbox for working with base types, core R features like the
- condition system, and core 'Tidyverse' features like tidy evaluation."""
+ """Functions for Base Types and Core R and 'Tidyverse' Features
+
+ A toolbox for working with base types, core R features like the condition
+ system, and core 'Tidyverse' features like tidy evaluation."""
homepage = "https://cloud.r-project.org/package=rlang"
url = "https://cloud.r-project.org/src/contrib/rlang_0.2.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rlang"
+ version('0.4.10', sha256='07530270c4c199f2b7efc5d57a476d99babd9d0c3388a02bb7d57fe312da3576')
version('0.4.6', sha256='3a81b107765fd6ac0ad716c428d01878775ded9208ba125d43c890c73d2533ca')
version('0.4.0', sha256='9748a4a217548bbe5631c18fd88c94811950446f798ff21fb327703aebaa150d')
version('0.3.4', sha256='4e467f7b0dcbde91b60c292137d2c69cecaa713a6e4c9b7157ef6fd5453b7ade')
@@ -27,3 +30,4 @@ class RRlang(RPackage):
depends_on('r@3.1.0:', when='@:0.3.4', type=('build', 'run'))
depends_on('r@3.2.0:', when='@0.4.0:', type=('build', 'run'))
+ depends_on('r@3.3.0:', when='@0.4.10:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rle/package.py b/var/spack/repos/builtin/packages/r-rle/package.py
new file mode 100644
index 0000000000..615cacaa3c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rle/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRle(RPackage):
+ """Common Functions for Run-Length Encoded Vectors
+
+ Common 'base' and 'stats' methods for 'rle' objects, aiming to make it
+ possible to treat them transparently as vectors."""
+
+ homepage = "https://cloud.r-project.org/package=rle"
+ url = "https://cloud.r-project.org/src/contrib/rle_0.9.2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/rle"
+
+ version('0.9.2', sha256='803cbe310af6e882e27be61d37d660dbe5910ac1ee1eff61a480bcf724a04f69')
+
+ depends_on('r@3.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rmariadb/configure_add_rpath.patch b/var/spack/repos/builtin/packages/r-rmariadb/configure_add_rpath.patch
new file mode 100644
index 0000000000..a5c865400f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rmariadb/configure_add_rpath.patch
@@ -0,0 +1,13 @@
+diff --git a/configure b/configure
+index 6c0f43c..bd7f627 100755
+--- a/configure
++++ b/configure
+@@ -29,7 +29,7 @@ fi
+ if [ "$INCLUDE_DIR" ] || [ "$LIB_DIR" ]; then
+ echo "Found INCLUDE_DIR and/or LIB_DIR!"
+ PKG_CFLAGS="-I$INCLUDE_DIR $PKG_CFLAGS"
+- PKG_LIBS="-L$LIB_DIR $PKG_LIBS"
++ PKG_LIBS="-L$LIB_DIR -Wl,-rpath,$LIB_DIR $PKG_LIBS"
+ elif [ "$PKGCONFIG_CFLAGS" ] || [ "$PKGCONFIG_LIBS" ]; then
+ echo "Found mysql_config/mariadb_config cflags and libs!"
+ PKG_CFLAGS=${PKGCONFIG_CFLAGS}
diff --git a/var/spack/repos/builtin/packages/r-rmariadb/package.py b/var/spack/repos/builtin/packages/r-rmariadb/package.py
index ac7ea12323..251e8c0be9 100644
--- a/var/spack/repos/builtin/packages/r-rmariadb/package.py
+++ b/var/spack/repos/builtin/packages/r-rmariadb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRmariadb(RPackage):
- """Implements a 'DBI'-compliant interface to 'MariaDB'
+ """Database Interface and 'MariaDB' Driver
+
+ Implements a 'DBI'-compliant interface to 'MariaDB'
(<https://mariadb.org/>) and 'MySQL' (<https://www.mysql.com/>)
databases."""
@@ -15,15 +17,24 @@ class RRmariadb(RPackage):
url = "https://cloud.r-project.org/src/contrib/RMariaDB_1.0.8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RMariaDB"
+ version('1.1.0', sha256='9ffa63a15052876a51a7996ca4e6a5b7b937f594b5cc7ca5a86f43789e22a956')
version('1.0.8', sha256='3c8aedc519dc063ceb068535a3700bc5caf26f867078cc5a228aa8961e2d99f5')
depends_on('r@2.8.0:', type=('build', 'run'))
depends_on('r-bit64', type=('build', 'run'))
depends_on('r-dbi@1.1.0:', type=('build', 'run'))
depends_on('r-hms@0.5.0:', type=('build', 'run'))
+ depends_on('r-lubridate', when='@1.1.0:', type=('build', 'run'))
depends_on('r-rcpp@0.12.4:', type=('build', 'run'))
depends_on('r-bh', type=('build', 'run'))
depends_on('r-plogr', type=('build', 'run'))
-
- # non-R dependencies
depends_on('mariadb-client')
+
+ patch('configure_add_rpath.patch')
+
+ def configure_vars(self):
+ lib_dir = self.spec['mariadb-client'].prefix.lib.mariadb
+ inc_dir = self.spec['mariadb-client'].prefix.include.mariadb
+ args = ['LIB_DIR={0}'.format(lib_dir),
+ 'INCLUDE_DIR={0}'.format(inc_dir)]
+ return args
diff --git a/var/spack/repos/builtin/packages/r-rmarkdown/package.py b/var/spack/repos/builtin/packages/r-rmarkdown/package.py
index 52f76a7a56..92dfdf6e80 100644
--- a/var/spack/repos/builtin/packages/r-rmarkdown/package.py
+++ b/var/spack/repos/builtin/packages/r-rmarkdown/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,28 +8,34 @@ from spack import *
class RRmarkdown(RPackage):
- """Convert R Markdown documents into a variety of formats."""
+ """Dynamic Documents for R
+
+ Convert R Markdown documents into a variety of formats."""
homepage = "http://rmarkdown.rstudio.com/"
url = "https://cloud.r-project.org/src/contrib/rmarkdown_1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rmarkdown"
+ version('2.6', sha256='e6e799c472de11e079bc752cca4b4dbd6803650649457bb6ae836cb1edcdf6b0')
version('1.14', sha256='f636b1048c5be56e06aa0b2b4342ad5c8192734f1e9b27468fef62be672edc61')
version('1.13', sha256='96fb6b08d27bbb8054145e0a55721f905341941d4f6691480a2a234e2d5a63ef')
version('1.7', sha256='c3191db65b9ad41b6dbb77aff53487701032d306e92b208ef7515b747931fe63')
version('1.0', sha256='ff1ecb74ebc444b9b0b7b547adc512daefe1ee08d06bc0e3ee4eb68e58d2ef30')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.0:', type=('build', 'run'))
depends_on('r-knitr@1.22:', type=('build', 'run'))
depends_on('r-yaml@2.1.19:', type=('build', 'run'))
depends_on('r-htmltools@0.3.5:', type=('build', 'run'))
depends_on('r-evaluate@0.13:', type=('build', 'run'))
- depends_on('r-base64enc', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
- depends_on('r-rprojroot', when='@1.3:1.7', type=('build', 'run'))
- depends_on('r-mime', when='@1.8:', type=('build', 'run'))
- depends_on('r-stringr@1.2.0:', when='@1.6:', type=('build', 'run'))
- depends_on('r-catools', when='@:1.7', type=('build', 'run'))
depends_on('r-tinytex@0.11:', when='@1.10:', type=('build', 'run'))
depends_on('r-xfun', when='@1.13:', type=('build', 'run'))
+ depends_on('r-xfun@0.15:', when='@2.6:', type=('build', 'run'))
+ depends_on('r-stringr@1.2.0:', when='@1.6:', type=('build', 'run'))
+ depends_on('r-rprojroot', when='@1.3:1.7', type=('build', 'run'))
+ depends_on('r-mime', when='@1.8:1.14', type=('build', 'run'))
+ depends_on('r-catools', when='@:1.7', type=('build', 'run'))
+ depends_on('r-base64enc', when='@:1.14', type=('build', 'run'))
depends_on('pandoc@1.12.3:')
+ depends_on('pandoc@1.14:', when='@2.6:')
diff --git a/var/spack/repos/builtin/packages/r-rminer/package.py b/var/spack/repos/builtin/packages/r-rminer/package.py
index 5d4a97f247..5938b814a7 100644
--- a/var/spack/repos/builtin/packages/r-rminer/package.py
+++ b/var/spack/repos/builtin/packages/r-rminer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,29 @@ from spack import *
class RRminer(RPackage):
- """Facilitates the use of data mining algorithms in classification and
+ """Data Mining Classification and Regression Methods
+
+ Facilitates the use of data mining algorithms in classification and
regression (including time series forecasting) tasks by presenting a short
- and coherent set of functions."""
+ and coherent set of functions. Versions: 1.4.6 / 1.4.5 / 1.4.4 new
+ automated machine learning (AutoML) and ensembles, via improved fit(),
+ mining() and mparheuristic() functions, and new categorical preprocessing,
+ via improved delevels() function; 1.4.3 new metrics (e.g., macro precision,
+ explained variance), new "lssvm" model and improved mparheuristic()
+ function; 1.4.2 new "NMAE" metric, "xgboost" and "cv.glmnet" models (16
+ classification and 18 regression models); 1.4.1 new tutorial and more
+ robust version; 1.4 - new classification and regression models, with a
+ total of 14 classification and 15 regression methods, including: Decision
+ Trees, Neural Networks, Support Vector Machines, Random Forests, Bagging
+ and Boosting; 1.3 and 1.3.1 - new classification and regression metrics;
+ 1.2 - new input importance methods via improved Importance() function; 1.0
+ - first version."""
homepage = "http://www3.dsi.uminho.pt/pcortez/rminer.html"
url = "https://cloud.r-project.org/src/contrib/rminer_1.4.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rminer"
+ version('1.4.6', sha256='1f8bf7b3fbc887fd766568c1ec1f861021c962259354bd8967a61c1d0761cdf7')
version('1.4.2', sha256='64444dcedcd17f2f26129819d6bd2f84d4bb59c8f65328b6054ef32cb9624fc2')
depends_on('r-plotrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rmpfr/package.py b/var/spack/repos/builtin/packages/r-rmpfr/package.py
index e01eeefbd1..7741017a45 100644
--- a/var/spack/repos/builtin/packages/r-rmpfr/package.py
+++ b/var/spack/repos/builtin/packages/r-rmpfr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,23 +7,28 @@ from spack import *
class RRmpfr(RPackage):
- """Arithmetic (via S4 classes and methods) for arbitrary precision
- floating point numbers, including transcendental ("special")
- functions. To this end, Rmpfr interfaces to the LGPL'ed MPFR
- (Multiple Precision Floating-Point Reliable) Library which itself
- is based on the GMP (GNU Multiple Precision) Library."""
+ """R MPFR - Multiple Precision Floating-Point Reliable
+
+ Arithmetic (via S4 classes and methods) for arbitrary precision floating
+ point numbers, including transcendental ("special") functions. To this end,
+ Rmpfr interfaces to the LGPL'ed MPFR (Multiple Precision Floating-Point
+ Reliable) Library which itself is based on the GMP (GNU Multiple Precision)
+ Library."""
homepage = "http://rmpfr.r-forge.r-project.org"
url = "https://cloud.r-project.org/src/contrib/Rmpfr_0.6-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Rmpfr"
+ version('0.8-2', sha256='74f6af1738b2cd21e7f2564b4cc2c84d5473a3745ba88ec76355d07fdd61f700')
version('0.7-2', sha256='ec1da6ec5292ea6ac95495c6a299591d367e520ae324719817fb884c865603ff')
version('0.7-1', sha256='9b3021617a22b0710b0f1acc279290762317ff123fd9e8fd03f1449f4bbfe204')
version('0.6-1', sha256='bf50991055e9336cd6a110d711ae8a91a0551b96f9eaab5fef8c05f578006e1c')
- depends_on('r@3.0.1:', when='@:0.6-1', type=('build', 'run'))
+ depends_on('r@3.0.1:', type=('build', 'run'))
depends_on('r@3.1.0:', when='@0.7-0', type=('build', 'run'))
depends_on('r@3.3.0:', when='@0.7-1:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.8-2:', type=('build', 'run'))
depends_on('r-gmp@0.5-8:', type=('build', 'run'))
- depends_on('mpfr@3.0.0:')
+ depends_on('r-gmp@0.6-1:', when='@0.8-2:', type=('build', 'run'))
depends_on('gmp@4.2.3:')
+ depends_on('mpfr@3.0.0:')
diff --git a/var/spack/repos/builtin/packages/r-rmpi/package.py b/var/spack/repos/builtin/packages/r-rmpi/package.py
index b1e4bdccfa..a193105e60 100644
--- a/var/spack/repos/builtin/packages/r-rmpi/package.py
+++ b/var/spack/repos/builtin/packages/r-rmpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rms/package.py b/var/spack/repos/builtin/packages/r-rms/package.py
index 1090e0e546..7542f83370 100644
--- a/var/spack/repos/builtin/packages/r-rms/package.py
+++ b/var/spack/repos/builtin/packages/r-rms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,42 +7,47 @@ from spack import *
class RRms(RPackage):
- """Regression modeling, testing, estimation, validation, graphics,
- prediction, and typesetting by storing enhanced model design
- attributes in the fit. 'rms' is a collection of functions that
- assist with and streamline modeling. It also contains functions
- for binary and ordinal logistic regression models, ordinal models
- for continuous Y with a variety of distribution families, and the
- Buckley-James multiple regression model for right-censored responses,
- and implements penalized maximum likelihood estimation for logistic
- and ordinary linear models. 'rms' works with almost any regression
- model, but it was especially written to work with binary or ordinal
- regression models, Cox regression, accelerated failure time models,
- ordinary linear models, the Buckley-James model, generalized least
- squares for serially or spatially correlated observations,
- generalized linear models, and quantile regression.
- """
+ """Regression Modeling Strategies
+
+ Regression modeling, testing, estimation, validation, graphics, prediction,
+ and typesetting by storing enhanced model design attributes in the fit.
+ 'rms' is a collection of functions that assist with and streamline
+ modeling. It also contains functions for binary and ordinal logistic
+ regression models, ordinal models for continuous Y with a variety of
+ distribution families, and the Buckley-James multiple regression model for
+ right-censored responses, and implements penalized maximum likelihood
+ estimation for logistic and ordinary linear models. 'rms' works with almost
+ any regression model, but it was especially written to work with binary or
+ ordinal regression models, Cox regression, accelerated failure time models,
+ ordinary linear models, the Buckley-James model, generalized least squares
+ for serially or spatially correlated observations, generalized linear
+ models, and quantile regression."""
homepage = "https://cloud.r-project.org/package=rms"
url = "https://cloud.r-project.org/src/contrib/rms_5.1-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rms"
+ version('6.1-0', sha256='b89ec3b9211a093bfe83a2a8107989b5ce3b7b7c323b88a5d887d99753289f52')
version('5.1-4', sha256='38f5844c4944a95b2adebea6bb1d163111270b8662399ea0349c45c0758076a6')
version('5.1-3.1', sha256='0946d9547a4e3ff020a61ab3fce38f88aa9545729683e2bfefeb960edec82b37')
version('5.1-3', sha256='5fc7120d8a93b4aa9727d82eac368c5c47ff70f467ae2b012afac688235089eb')
version('5.1-2', sha256='f1cfeef466ac436105756679353a3468027d97a600e3be755b819aef30ed9207')
version('5.1-1', sha256='c489948df5c434b40bcf5288844f5b4e08d157f36939d09230c1600f88d1bfe3')
- depends_on('r@3.5:', type=('build', 'run'))
- depends_on('r-hmisc@4.3:', type=('build', 'run'))
- depends_on('r-survival@3.1-6', type=('build', 'run'))
+ depends_on('r@3.5.0:', type=('build', 'run'))
+ depends_on('r-hmisc@4.3-0:', type=('build', 'run'))
+ depends_on('r-survival@3.1-6:', type=('build', 'run'))
+ depends_on('r-survival@3.1-12:', when='@6.1-0:', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
- depends_on('r-polspline', type=('build', 'run'))
depends_on('r-ggplot2@2.2:', type=('build', 'run'))
depends_on('r-sparsem', type=('build', 'run'))
depends_on('r-quantreg', type=('build', 'run'))
depends_on('r-rpart', type=('build', 'run'))
depends_on('r-nlme@3.1-123:', type=('build', 'run'))
+ depends_on('r-polspline', type=('build', 'run'))
depends_on('r-multcomp', type=('build', 'run'))
depends_on('r-htmltable@1.11.0:', type=('build', 'run'))
depends_on('r-htmltools', type=('build', 'run'))
+ depends_on('r-mass', when='@6.1-0:', type=('build', 'run'))
+ depends_on('r-cluster', when='@6.1-0:', type=('build', 'run'))
+ depends_on('r-digest', when='@6.1-0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rmutil/package.py b/var/spack/repos/builtin/packages/r-rmutil/package.py
index 202cf10571..3770e99ff6 100644
--- a/var/spack/repos/builtin/packages/r-rmutil/package.py
+++ b/var/spack/repos/builtin/packages/r-rmutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,18 @@ from spack import *
class RRmutil(RPackage):
- """rmutil: Utilities for Nonlinear Regression and Repeated
- MeasurementsModels"""
+ """Utilities for Nonlinear Regression and Repeated MeasurementsModels
+
+ A toolkit of functions for nonlinear regression and repeated measurements
+ not to be used by itself but called by other Lindsey packages such as
+ 'gnlm', 'stable', 'growth', 'repeated', and 'event' (available at
+ <http://www.commanster.eu/rcode.html>)."""
homepage = "http://www.commanster.eu/rcode.html"
url = "https://cloud.r-project.org/src/contrib/rmutil_1.1.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rmutil"
+ version('1.1.5', sha256='6077e643d6daeba6edcf49d928320b54cc6aa6ff59934f9e9e6071a2f9afb2f6')
version('1.1.3', sha256='7abaf41e99d1c4a0e4082c4594964ac1421c53b4268116c82fa55aa8bc0582da')
depends_on('r@1.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rmysql/package.py b/var/spack/repos/builtin/packages/r-rmysql/package.py
index 7c161a60cb..ac76721b0b 100644
--- a/var/spack/repos/builtin/packages/r-rmysql/package.py
+++ b/var/spack/repos/builtin/packages/r-rmysql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,20 @@ from spack import *
class RRmysql(RPackage):
- """Implements 'DBI' Interface to 'MySQL' and 'MariaDB' Databases."""
+ """Database Interface and 'MySQL' Driver for R
+
+ Legacy 'DBI' interface to 'MySQL' / 'MariaDB' based on old code ported from
+ S-PLUS. A modern 'MySQL' client based on 'Rcpp' is available from the
+ 'RMariaDB' package."""
homepage = "https://github.com/rstats-db/rmysql"
url = "https://cloud.r-project.org/src/contrib/RMySQL_0.10.9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RMySQL"
+ version('0.10.21', sha256='3a6bf06d32d66c7c958d4f89ed517614171a7fd254ef6f4d40f4c5982c2d6b31')
version('0.10.17', sha256='754df4fce159078c1682ef34fc96aa5ae30981dc91f4f2bada8d1018537255f5')
version('0.10.9', sha256='41289c743dc8ee2e0dea8b8f291d65f0a7cd11e799b713d94840406ff296fd42')
- depends_on('r-dbi@0.4:', type=('build', 'run'))
- depends_on('mariadb@:5.5')
-
depends_on('r@2.8.0:', type=('build', 'run'))
+ depends_on('r-dbi@0.4:', type=('build', 'run'))
+ depends_on('mysql')
diff --git a/var/spack/repos/builtin/packages/r-rnaseqmap/package.py b/var/spack/repos/builtin/packages/r-rnaseqmap/package.py
index 361e11a8f1..73472bbda8 100644
--- a/var/spack/repos/builtin/packages/r-rnaseqmap/package.py
+++ b/var/spack/repos/builtin/packages/r-rnaseqmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RRnaseqmap(RPackage):
- """rnaSeq secondary analyses.
+ """rnaSeq secondary analyses
The rnaSeqMap library provides classes and functions to analyze the RNA-
sequencing data using the coverage profiles in multiple samples at a
@@ -16,6 +16,7 @@ class RRnaseqmap(RPackage):
homepage = "https://bioconductor.org/packages/rnaSeqMap"
git = "https://git.bioconductor.org/packages/rnaSeqMap.git"
+ version('2.48.0', commit='a8c515e518cebf571d1524c3a8a986ba7d1557db')
version('2.42.0', commit='3a3a1030cc38d79d04536e0ab16114e4fa6721cf')
version('2.40.1', commit='c122d645b3503fb1a061f5515e4f8cf2863b3ba3')
version('2.38.0', commit='5eb9583bfacd375161739a8ae6057204487f8b9e')
diff --git a/var/spack/repos/builtin/packages/r-rncl/package.py b/var/spack/repos/builtin/packages/r-rncl/package.py
index 4501e1c2f3..275c588039 100644
--- a/var/spack/repos/builtin/packages/r-rncl/package.py
+++ b/var/spack/repos/builtin/packages/r-rncl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rnexml/package.py b/var/spack/repos/builtin/packages/r-rnexml/package.py
index bffab45a28..12d5966be4 100644
--- a/var/spack/repos/builtin/packages/r-rnexml/package.py
+++ b/var/spack/repos/builtin/packages/r-rnexml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rngtools/package.py b/var/spack/repos/builtin/packages/r-rngtools/package.py
index ac7e0fd8e6..6a6a36279b 100644
--- a/var/spack/repos/builtin/packages/r-rngtools/package.py
+++ b/var/spack/repos/builtin/packages/r-rngtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,8 +7,10 @@ from spack import *
class RRngtools(RPackage):
- """This package contains a set of functions for working with Random Number
- Generators (RNGs). In particular, it defines a generic S4 framework for
+ """Utility Functions for Working with Random Number Generators
+
+ Provides a set of functions for working with Random Number Generators
+ (RNGs). In particular, a generic S4 framework is defined for
getting/setting the current RNG, or RNG data that are embedded into objects
for reproducibility. Notably, convenient default methods greatly facilitate
the way current RNG settings can be changed."""
@@ -17,13 +19,13 @@ class RRngtools(RPackage):
url = "https://cloud.r-project.org/src/contrib/rngtools_1.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rngtools"
+ version('1.5', sha256='8274873b73f7acbe0ce007e62893bf4d369d2aab8768754a60da46b3f078f575')
version('1.4', sha256='3aa92366e5d0500537964302f5754a750aff6b169a27611725e7d84552913bce')
version('1.3.1.1', sha256='99e1a8fde6b81128d0946746c1ef84ec5b6c2973ad843a080098baf73aa3364c')
version('1.3.1', sha256='763fc493cb821a4d3e514c0dc876d602a692c528e1d67f295dde70c77009e224')
- depends_on('r@3.0.0:', when='@:1.3.1', type=('build', 'run'))
- depends_on('r@3.6.0:', when='@1.3.1.1', type=('build', 'run'))
+ depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r@3.2.0:', when='@1.4:', type=('build', 'run'))
- depends_on('r-pkgmaker@0.20:', type=('build', 'run'))
- depends_on('r-stringr', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
+ depends_on('r-pkgmaker@0.20:', when='@:1.4', type=('build', 'run'))
+ depends_on('r-stringr', when='@:1.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rnoaa/package.py b/var/spack/repos/builtin/packages/r-rnoaa/package.py
index bdaee96de1..923cec9a89 100644
--- a/var/spack/repos/builtin/packages/r-rnoaa/package.py
+++ b/var/spack/repos/builtin/packages/r-rnoaa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,26 +7,38 @@ from spack import *
class RRnoaa(RPackage):
- """rnoaa: 'NOAA' Weather Data from R"""
+ """'NOAA' Weather Data from R
+
+ Client for many 'NOAA' data sources including the 'NCDC' climate 'API' at
+ <https://www.ncdc.noaa.gov/cdo-web/webservices/v2>, with functions for each
+ of the 'API' 'endpoints': data, data categories, data sets, data types,
+ locations, location categories, and stations. In addition, we have an
+ interface for 'NOAA' sea ice data, the 'NOAA' severe weather inventory,
+ 'NOAA' Historical Observing 'Metadata' Repository ('HOMR') data, 'NOAA'
+ storm data via 'IBTrACS', tornado data via the 'NOAA' storm prediction
+ center, and more."""
homepage = "https://github.com/ropensci/rnoaa"
url = "https://cloud.r-project.org/src/contrib/rnoaa_0.8.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rnoaa"
+ version('1.3.0', sha256='4c421ad6e4c2b25e4dea5351c338aed70bea6e382562412d1dad825a50b0d161')
version('0.8.4', sha256='fb9ae771111dd5f638c1eff3290abad2ff9cc7e68a6678bf2414433ebed2dbbf')
depends_on('r-crul@0.7.0:', type=('build', 'run'))
+ depends_on('r-lubridate', type=('build', 'run'))
depends_on('r-dplyr', type=('build', 'run'))
- depends_on('r-geonames', type=('build', 'run'))
+ depends_on('r-tidyr', type=('build', 'run'))
+ depends_on('r-tidyselect', when='@1.3.0:', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-gridextra', type=('build', 'run'))
- depends_on('r-hoardr@0.5.2:', type=('build', 'run'))
- depends_on('r-isdparser@0.2.0:', type=('build', 'run'))
- depends_on('r-jsonlite', type=('build', 'run'))
- depends_on('r-lubridate', type=('build', 'run'))
- depends_on('r-rappdirs', type=('build', 'run'))
depends_on('r-scales', type=('build', 'run'))
- depends_on('r-tibble', type=('build', 'run'))
- depends_on('r-tidyr', type=('build', 'run'))
depends_on('r-xml', type=('build', 'run'))
depends_on('r-xml2', type=('build', 'run'))
+ depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-rappdirs', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-isdparser@0.2.0:', type=('build', 'run'))
+ depends_on('r-geonames', type=('build', 'run'))
+ depends_on('r-hoardr@0.5.2:', type=('build', 'run'))
+ depends_on('r-data-table', when='@1.3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-robust/package.py b/var/spack/repos/builtin/packages/r-robust/package.py
index fafba06909..3f509dd7b3 100644
--- a/var/spack/repos/builtin/packages/r-robust/package.py
+++ b/var/spack/repos/builtin/packages/r-robust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,17 +8,21 @@ from spack import *
class RRobust(RPackage):
- """robust: Port of the S+ Robust Library """
+ """Port of the S+ Robust Library
+
+ Methods for robust statistics, a state of the art in the early 2000s,
+ notably for robust regression and robust multivariate analysis."""
homepage = "https://cloud.r-project.org/package=robust"
url = "https://cloud.r-project.org/src/contrib/robust_0.4-18.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/robust/"
+ version('0.5-0.0', sha256='82f0b50028938966f807a4c4da5c345a3a64ccafd9a31c64a22cda852ed345cf')
version('0.4-18.1', sha256='de31901882873ef89748bb6863caf55734431df5b3eb3c6663ed17ee2e4a4077')
version('0.4-18', sha256='e4196f01bb3b0d768759d4411d524238b627eb8dc213d84cb30014e75480f8ac')
+ depends_on('r-fit-models', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-robustbase', type=('build', 'run'))
depends_on('r-rrcov', type=('build', 'run'))
- depends_on('r-fit-models', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-robustbase/package.py b/var/spack/repos/builtin/packages/r-robustbase/package.py
index 4afc35894c..692f939352 100644
--- a/var/spack/repos/builtin/packages/r-robustbase/package.py
+++ b/var/spack/repos/builtin/packages/r-robustbase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,19 @@ from spack import *
class RRobustbase(RPackage):
- """"Essential" Robust Statistics. Tools allowing to analyze data
- with robust methods. This includes regression methodology
- including model selections and multivariate statistics where we
- strive to cover the book "Robust Statistics, Theory and Methods"
- by 'Maronna, Martin and Yohai'; Wiley 2006."""
+ """Basic Robust Statistics
+
+ "Essential" Robust Statistics. Tools allowing to analyze data with robust
+ methods. This includes regression methodology including model selections
+ and multivariate statistics where we strive to cover the book "Robust
+ Statistics, Theory and Methods" by 'Maronna, Martin and Yohai'; Wiley
+ 2006."""
homepage = "https://robustbase.r-forge.r-project.org"
url = "https://cloud.r-project.org/src/contrib/robustbase_0.92-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/robustbase"
+ version('0.93-7', sha256='8911d2d0fdca5e2627033e046279f9d106e25ce98d588f9ccc4d8e4b42680956')
version('0.93-5', sha256='bde564dbd52f04ab32f9f2f9dd09b9578f3ccd2541cf5f8ff430da42a55e7f56')
version('0.93-4', sha256='ea9e03d484ef52ea805803477ffc48881e4c8c86ffda4eea56109f8b23f0a6e0')
version('0.92-7', sha256='fcbd6ccbb0291b599fe6a674a91344511e0a691b9cadba0a9d40037faa22bf8f')
diff --git a/var/spack/repos/builtin/packages/r-roc/package.py b/var/spack/repos/builtin/packages/r-roc/package.py
index 90cb6bfb0d..023683a28a 100644
--- a/var/spack/repos/builtin/packages/r-roc/package.py
+++ b/var/spack/repos/builtin/packages/r-roc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,14 @@ from spack import *
class RRoc(RPackage):
- """Provide utilities for ROC, with microarray focus."""
+ """utilities for ROC, with microarray focus
+
+ Provide utilities for ROC, with microarray focus."""
homepage = "https://bioconductor.org/packages/release/bioc/html/ROC.html"
git = "https://git.bioconductor.org/packages/ROC"
+ version('1.66.0', commit='62701ee41f48f99d15344127384fa032db69486f')
version('1.62.0', commit='60250fdb091f6a938709b8a2cffe6442ee22a9a2')
depends_on('r@1.9.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rocr/package.py b/var/spack/repos/builtin/packages/r-rocr/package.py
index 44b95183fa..47e3fda498 100644
--- a/var/spack/repos/builtin/packages/r-rocr/package.py
+++ b/var/spack/repos/builtin/packages/r-rocr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRocr(RPackage):
- """ROC graphs, sensitivity/specificity curves, lift charts,
+ """Visualizing the Performance of Scoring Classifiers
+
+ ROC graphs, sensitivity/specificity curves, lift charts,
and precision/recall plots are popular examples of trade-off
visualizations for specific pairs of performance measures. ROCR
is a flexible tool for creating cutoff-parameterized 2D performance
@@ -23,9 +25,13 @@ class RRocr(RPackage):
mechanism. Despite its flexibility, ROCR is easy to use, with only
three commands and reasonable default values for all optional
parameters."""
+
homepage = "https://cloud.r-project.org/package=ROCR"
url = "https://cloud.r-project.org/src/contrib/ROCR_1.0-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/ROCR"
+ version('1.0-11', sha256='57385a773220a3aaef5b221a68b2d9c2a94794d4f9e9fc3c1eb9521767debb2a')
version('1.0-7', sha256='e7ef710f847e441a48b20fdc781dbc1377f5a060a5ee635234053f7a2a435ec9')
+
+ depends_on('r@3.6:', when='@1.0-11:', type=('build', 'run'))
depends_on('r-gplots', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rodbc/package.py b/var/spack/repos/builtin/packages/r-rodbc/package.py
index 8db227f82a..0969610221 100644
--- a/var/spack/repos/builtin/packages/r-rodbc/package.py
+++ b/var/spack/repos/builtin/packages/r-rodbc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,19 @@ from spack import *
class RRodbc(RPackage):
- """An ODBC database interface."""
+ """ODBC Database Access
+
+ An ODBC database interface."""
homepage = "https://cloud.r-project.org/package=RODBC"
url = "https://cloud.r-project.org/src/contrib/RODBC_1.3-13.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RODBC/"
+ version('1.3-17', sha256='469fc835f65c344d5c3eaa097ff278ee8e9f12f845722a9aad340115faa704f7')
version('1.3-15', sha256='c43e5a2f0aa2f46607e664bfc0bb3caa230bbb779f4ff084e01727642da136e1')
version('1.3-13', sha256='e8ea7eb77a07be36fc2d824c28bb426334da7484957ffbc719140373adf1667c')
depends_on('unixodbc')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r@4.0.0:', when='@1.3-17:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rook/package.py b/var/spack/repos/builtin/packages/r-rook/package.py
index c440de3446..26e5f61eab 100644
--- a/var/spack/repos/builtin/packages/r-rook/package.py
+++ b/var/spack/repos/builtin/packages/r-rook/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rots/package.py b/var/spack/repos/builtin/packages/r-rots/package.py
index 339d92893c..57063ce900 100644
--- a/var/spack/repos/builtin/packages/r-rots/package.py
+++ b/var/spack/repos/builtin/packages/r-rots/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RRots(RPackage):
- """Reproducibility-Optimized Test Statistic.
+ """Reproducibility-Optimized Test Statistic
Calculates the Reproducibility-Optimized Test Statistic (ROTS) for
differential testing in omics data."""
@@ -15,6 +15,7 @@ class RRots(RPackage):
homepage = "https://bioconductor.org/packages/ROTS"
git = "https://git.bioconductor.org/packages/ROTS.git"
+ version('1.18.0', commit='1d4e206a8ce68d5a1417ff51c26174ed9d0ba7d2')
version('1.12.0', commit='7e2c96fd8fd36710321498745f24cc6b59ac02f0')
version('1.10.1', commit='1733d3f868cef4d81af6edfc102221d80793937b')
version('1.8.0', commit='02e3c6455bb1afe7c4cc59ad6d4d8bae7b01428b')
diff --git a/var/spack/repos/builtin/packages/r-roxygen2/package.py b/var/spack/repos/builtin/packages/r-roxygen2/package.py
index 66c51eb487..d9161431ed 100644
--- a/var/spack/repos/builtin/packages/r-roxygen2/package.py
+++ b/var/spack/repos/builtin/packages/r-roxygen2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,25 +7,30 @@ from spack import *
class RRoxygen2(RPackage):
- """A 'Doxygen'-like in-source documentation system for Rd, collation, and
- 'NAMESPACE' files."""
+ """In-Line Documentation for R
+
+ Generate your Rd documentation, 'NAMESPACE' file, and collation field using
+ specially formatted comments. Writing documentation in-line with code makes
+ it easier to keep your documentation up-to-date as your requirements
+ change. 'Roxygen2' is inspired by the 'Doxygen' system for C++."""
homepage = "https://github.com/klutometis/roxygen"
url = "https://cloud.r-project.org/src/contrib/roxygen2_5.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/roxygen2"
+ version('7.1.1', sha256='bdc55ded037d4366f4d25a0d69e880dacc0fa22bee20f595d45855eef8548861')
version('7.1.0', sha256='7e9b36f6e7c01a5c8c4747340b3d0c064ce2e48c93fcfbfe45139854fae74103')
version('6.1.1', sha256='ed46b7e062e0dfd8de671c7a5f6d120fb2b720982e918dbeb01e6985694c0273')
version('5.0.1', sha256='9f755ddd08358be436f08b02df398e50e7508b856131aeeed235099bb3a7eba5')
- depends_on('r@3.0.2:', when='@:6.0.1', type=('build', 'run'))
- depends_on('r@3.2:', when='@7.1.0:', type=('build', 'run'))
+ depends_on('r@3.0.2:', type=('build', 'run'))
depends_on('r@3.1:', when='@6.1.0:', type=('build', 'run'))
+ depends_on('r@3.2:', when='@7.1.0:', type=('build', 'run'))
depends_on('r-brew', type=('build', 'run'))
depends_on('r-commonmark', type=('build', 'run'))
depends_on('r-desc@1.2.0:', type=('build', 'run'))
- depends_on('r-knitr', when='@7.1.0:', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
+ depends_on('r-knitr', when='@7.1.0:', type=('build', 'run'))
depends_on('r-pkgload@1.0.2:', type=('build', 'run'))
depends_on('r-purrr', type=('build', 'run'))
depends_on('r-purrr@0.3.3:', when='@7.1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rpart-plot/package.py b/var/spack/repos/builtin/packages/r-rpart-plot/package.py
index e18f72efe8..a6fe40255a 100644
--- a/var/spack/repos/builtin/packages/r-rpart-plot/package.py
+++ b/var/spack/repos/builtin/packages/r-rpart-plot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RRpartPlot(RPackage):
- """Plot 'rpart' models. Extends plot.rpart() and text.rpart() in the
+ """Plot 'rpart' Models: An Enhanced Version of 'plot.rpart'
+
+ Plot 'rpart' models. Extends plot.rpart() and text.rpart() in the
'rpart' package."""
homepage = "https://cloud.r-project.org/package=rpart.plot"
url = "https://cloud.r-project.org/src/contrib/rpart.plot_2.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rpart.plot"
+ version('3.0.9', sha256='1150f5e9899b3b31b17160617cd99c3ad340c8361aeb229264a7a3a3a28015a4')
version('3.0.7', sha256='04e7fcadfa907507b74529c3ecfae4a0c782badf55e87d9c62dbd9a536ea9144')
version('3.0.6', sha256='1c584290c8f58ded5c3f0638790a0da63408eca3ecd5d5c4d8c46954de9f4b02')
version('2.1.0', sha256='17686da1883f97cb8f44be0d9cb915b366a3cb7313cd131b96497ab09f727436')
@@ -21,3 +24,4 @@ class RRpartPlot(RPackage):
depends_on('r@3.2.0:', when='@2.1.2:3.0.6', type=('build', 'run'))
depends_on('r@3.4.0:', when='@3.0.7:', type=('build', 'run'))
depends_on('r-rpart@4.1-10:', type=('build', 'run'))
+ depends_on('r-rpart@4.1-15:', when='@3.0.9:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rpart/package.py b/var/spack/repos/builtin/packages/r-rpart/package.py
index 8964a28517..3becf4f851 100644
--- a/var/spack/repos/builtin/packages/r-rpart/package.py
+++ b/var/spack/repos/builtin/packages/r-rpart/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rpmm/package.py b/var/spack/repos/builtin/packages/r-rpmm/package.py
new file mode 100644
index 0000000000..d66be66432
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rpmm/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRpmm(RPackage):
+ """Recursively Partitioned Mixture Model:
+
+ Recursively Partitioned Mixture Model for Beta and Gaussian Mixtures. This
+ is a model-based clustering algorithm that returns a hierarchy of classes,
+ similar to hierarchical clustering, but also similar to finite mixture
+ models."""
+
+ cran = "RPMM"
+
+ version('1.25', sha256='f04a524b13918062616beda50c4e759ce2719ce14150a0e677d07132086c88c8')
+
+ depends_on('r@2.3.12:', type=('build', 'run'))
+ depends_on('r-cluster', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rpostgresql/package.py b/var/spack/repos/builtin/packages/r-rpostgresql/package.py
index 01467dfac2..78446c8977 100644
--- a/var/spack/repos/builtin/packages/r-rpostgresql/package.py
+++ b/var/spack/repos/builtin/packages/r-rpostgresql/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -27,3 +27,11 @@ class RRpostgresql(RPackage):
depends_on('r@2.9.0:', type=('build', 'run'))
depends_on('r-dbi@0.3:', type=('build', 'run'))
depends_on('postgresql')
+
+ depends_on('automake', type='build')
+
+ patch_config_files = True
+
+ @run_before('install')
+ def patch_config_guess(self):
+ AutotoolsPackage._do_patch_config_files(self)
diff --git a/var/spack/repos/builtin/packages/r-rprojroot/package.py b/var/spack/repos/builtin/packages/r-rprojroot/package.py
index 63df595741..d8b5617a22 100644
--- a/var/spack/repos/builtin/packages/r-rprojroot/package.py
+++ b/var/spack/repos/builtin/packages/r-rprojroot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRprojroot(RPackage):
- """Robust, reliable and flexible paths to files below a project root.
+ """Finding Files in Project Subdirectories
+
+ Robust, reliable and flexible paths to files below a project root.
The 'root' of a project is defined as a directory that matches a
certain criterion, e.g., it contains a certain regular file."""
@@ -15,8 +17,9 @@ class RRprojroot(RPackage):
url = "https://cloud.r-project.org/src/contrib/rprojroot_1.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rprojroot"
+ version('2.0.2', sha256='5fa161f0d4ac3b7a99dc6aa2d832251001dc92e93c828593a51fe90afd019e1f')
version('1.3-2', sha256='df5665834941d8b0e377a8810a04f98552201678300f168de5f58a587b73238b')
version('1.2', sha256='28b4d235ce67314528a0c1cc7e98faed42437b42e07fca18a59a80fdc3eefeb9')
depends_on('r@3.0.0:', type=('build', 'run'))
- depends_on('r-backports', type=('build', 'run'))
+ depends_on('r-backports', when='@:1.3-2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rrblup/package.py b/var/spack/repos/builtin/packages/r-rrblup/package.py
index 1f978f84a1..0740b6a349 100644
--- a/var/spack/repos/builtin/packages/r-rrblup/package.py
+++ b/var/spack/repos/builtin/packages/r-rrblup/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,19 @@ from spack import *
class RRrblup(RPackage):
- """rrBLUP: Ridge Regression and Other Kernels for Genomic Selection"""
+ """Ridge Regression and Other Kernels for Genomic Selection
+
+ Software for genomic prediction with the RR-BLUP mixed model (Endelman
+ 2011, <doi:10.3835/plantgenome2011.08.0024>). One application is to
+ estimate marker effects by ridge regression; alternatively, BLUPs can be
+ calculated based on an additive relationship matrix or a Gaussian
+ kernel."""
homepage = "http://potatobreeding.cals.wisc.edu/software"
url = "https://cloud.r-project.org/src/contrib/rrBLUP_4.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rrBLUP"
+ version('4.6.1', sha256='e9230e74cc430a83ac5567071cb1c7f00b35c368f7d79bcc1cfde7225446c4db')
version('4.6', sha256='28b475a1466fcdc1780caace75cf34155338fda496cebd5799315598a4bc84af')
depends_on('r@2.14:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rrcov/package.py b/var/spack/repos/builtin/packages/r-rrcov/package.py
index b1843d025e..a3bb2ff25c 100644
--- a/var/spack/repos/builtin/packages/r-rrcov/package.py
+++ b/var/spack/repos/builtin/packages/r-rrcov/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,28 @@ from spack import *
class RRrcov(RPackage):
- """rrcov: Scalable Robust Estimators with High Breakdown Point"""
+ """Scalable Robust Estimators with High Breakdown Point
+
+ Robust Location and Scatter Estimation and Robust Multivariate Analysis
+ with High Breakdown Point: principal component analysis (Filzmoser and
+ Todorov (2013), <doi:10.1016/j.ins.2012.10.017>), linear and quadratic
+ discriminant analysis (Todorov and Pires (2007)), multivariate tests
+ (Todorov and Filzmoser (2010) <doi:10.1016/j.csda.2009.08.015>), outlier
+ detection (Todorov et al. (2010) <doi:10.1007/s11634-010-0075-2>). See also
+ Todorov and Filzmoser (2009) <ISBN-13:978-3838108148>, Todorov and
+ Filzmoser (2010) <doi:10.18637/jss.v032.i03> and Boudt et al. (2019)
+ <doi:10.1007/s11222-019-09869-x>."""
homepage = "https://cloud.r-project.org/package=rrcov"
url = "https://cloud.r-project.org/src/contrib/rrcov_1.4-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rrcov"
+ version('1.5-5', sha256='1f7f07558e347e7d1f1adff68631764670bc672777a7d990901c4fa94cc0e629')
version('1.4-7', sha256='cbd08ccce8b583a2f88946a3267c8fc494ee2b44ba749b9296a6e3d818f6f293')
depends_on('r@2.10:', type=('build', 'run'))
depends_on('r-robustbase@0.92.1:', type=('build', 'run'))
depends_on('r-mvtnorm', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
- depends_on('r-cluster', type=('build', 'run'))
depends_on('r-pcapp', type=('build', 'run'))
+ depends_on('r-cluster', when='@:1.4-7', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rrpp/package.py b/var/spack/repos/builtin/packages/r-rrpp/package.py
index 629f5b2300..bb035bf842 100644
--- a/var/spack/repos/builtin/packages/r-rrpp/package.py
+++ b/var/spack/repos/builtin/packages/r-rrpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,24 +8,28 @@ from spack import *
class RRrpp(RPackage):
- """Linear model calculations are made for many random versions of data.
-
- Using residual randomization in a permutation procedure, sums of
- squares are calculated over many permutations to generate empirical
- probability distributions for evaluating model effects. This method
- is described by Collyer, Sekora, & Adams (2015)
- <doi:10.1038/hdy.2014.75>. Additionally, coefficients, statistics,
- fitted values, and residuals generated over many permutations can be
- used for various procedures including pairwise tests, prediction,
- classification, and model comparison. This package should provide
- most tools one could need for the analysis of high-dimensional data,
- especially in ecology and evolutionary biology, but certainly
- other fields, as well."""
+ """Linear Model Evaluation with Randomized Residuals in a Permutation Procedure
+
+ Linear model calculations are made for many random versions of data. Using
+ residual randomization in a permutation procedure, sums of squares are
+ calculated over many permutations to generate empirical probability
+ distributions for evaluating model effects. This packaged is described by
+ Collyer & Adams (2018) <doi:10.1111/2041-210X.13029>. Additionally,
+ coefficients, statistics, fitted values, and residuals generated over many
+ permutations can be used for various procedures including pairwise tests,
+ prediction, classification, and model comparison. This package should
+ provide most tools one could need for the analysis of high-dimensional
+ data, especially in ecology and evolutionary biology, but certainly other
+ fields, as well."""
homepage = "https://github.com/mlcollyer/RRPP"
url = "https://cloud.r-project.org/src/contrib/RRPP_0.3.0.tar.gz"
list_url = "https://cron.r-project.org/src/contrib/Archive/RRPP"
+ version('0.6.2', sha256='f8ffa318d806184c0e65929ea1b8b6a88bb9e45f77db2da5a83c6fe550b084dc')
version('0.4.2', sha256='21a4ebb549d21f66ee9107adf762eee630e478bc740f232f384ba1a6b1cd3bf4')
version('0.4.1', sha256='d7cd3b089240d7f7e13f65f0259487669a378ffae062aee33d4dc6ab0f86f899')
version('0.3.0', sha256='34fea6ce7a78e4f38398d3b99585bab11a8171bc8b9a4e461b6d984ed1373739')
+
+ depends_on('r@3.5.0:', when='@0.6.2:', type=('build', 'run'))
+ depends_on('r-ape', when='@0.6.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rsamtools/package.py b/var/spack/repos/builtin/packages/r-rsamtools/package.py
index d0046d5186..b444102992 100644
--- a/var/spack/repos/builtin/packages/r-rsamtools/package.py
+++ b/var/spack/repos/builtin/packages/r-rsamtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RRsamtools(RPackage):
"""Binary alignment (BAM), FASTA, variant call (BCF), and tabix file
- import.
+ import
This package provides an interface to the 'samtools', 'bcftools', and
'tabix' utilities for manipulating SAM (Sequence Alignment / Map),
@@ -18,6 +18,7 @@ class RRsamtools(RPackage):
homepage = "https://bioconductor.org/packages/Rsamtools"
git = "https://git.bioconductor.org/packages/Rsamtools.git"
+ version('2.6.0', commit='f2aea061517c5a55e314c039251ece9831c7fad2')
version('2.2.1', commit='f10084658b4c9744961fcacd79c0ae9a7a40cd30')
version('2.0.3', commit='17d254cc026574d20db67474260944bf60befd70')
version('1.34.1', commit='0ec1d45c7a14b51d019c3e20c4aa87c6bd2b0d0c')
@@ -27,23 +28,23 @@ class RRsamtools(RPackage):
depends_on('r-genomeinfodb@1.1.3:', type=('build', 'run'))
depends_on('r-genomicranges@1.21.6:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.8:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-biostrings@2.37.1:', type=('build', 'run'))
+ depends_on('r-biostrings@2.47.6:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-biocgenerics@0.1.3:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.25.1:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-s4vectors@0.13.8:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.25:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-iranges@2.3.7:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.12:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-xvector@0.15.1:', type=('build', 'run'))
+ depends_on('r-xvector@0.19.7:', when='@1.32.3:', type=('build', 'run'))
depends_on('r-zlibbioc', type=('build', 'run'))
depends_on('r-bitops', type=('build', 'run'))
depends_on('r-biocparallel', type=('build', 'run'))
-
- depends_on('r-genomicranges@1.31.8:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-biostrings@2.47.6:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-biocgenerics@0.25.1:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-s4vectors@0.17.25:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-iranges@2.13.12:', when='@1.32.3:', type=('build', 'run'))
- depends_on('r-xvector@0.19.7:', when='@1.32.3:', type=('build', 'run'))
-
depends_on('r-rhtslib@1.16.3', when='@2.0.3', type=('build', 'run'))
depends_on('r-rhtslib@1.17.7:', when='@2.2.1:', type=('build', 'run'))
-
depends_on('gmake', type='build')
+
+ # this is not a listed dependency but is needed
+ depends_on('curl')
diff --git a/var/spack/repos/builtin/packages/r-rsconnect/package.py b/var/spack/repos/builtin/packages/r-rsconnect/package.py
new file mode 100644
index 0000000000..e25a4593c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rsconnect/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRsconnect(RPackage):
+ """Deployment Interface for R Markdown Documents and Shiny Applications:
+
+ Programmatic deployment interface for 'RPubs', 'shinyapps.io', and 'RStudio
+ Connect'. Supported content types include R Markdown documents, Shiny
+ applications, Plumber APIs, plots, and static web content."""
+
+ homepage = "https://github.com/rstudio/rsconnect"
+ cran = "rsconnect"
+
+ version('0.8.17', sha256='64767a4d626395b7871375956a9f0455c3d64ff6e779633b0e554921d85da231')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-curl', type=('build', 'run'))
+ depends_on('r-digest', type=('build', 'run'))
+ depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-openssl', type=('build', 'run'))
+ depends_on('r-packrat@0.5:', type=('build', 'run'))
+ depends_on('r-rstudioapi@0.5:', type=('build', 'run'))
+ depends_on('r-yaml@2.1.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rsnns/package.py b/var/spack/repos/builtin/packages/r-rsnns/package.py
index 094efe1729..a408235746 100644
--- a/var/spack/repos/builtin/packages/r-rsnns/package.py
+++ b/var/spack/repos/builtin/packages/r-rsnns/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,9 @@ from spack import *
class RRsnns(RPackage):
- """The Stuttgart Neural Network Simulator (SNNS) is a library containing
+ """Neural Networks using the Stuttgart Neural Network Simulator (SNNS)
+
+ The Stuttgart Neural Network Simulator (SNNS) is a library containing
many standard implementations of neural networks. This package wraps the
SNNS functionality to make it available from within R. Using the RSNNS
low-level interface, all of the algorithmic functionality and flexibility
@@ -20,6 +22,7 @@ class RRsnns(RPackage):
url = "https://cloud.r-project.org/src/contrib/RSNNS_0.4-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RSNNS"
+ version('0.4-12', sha256='b18dfeda71573bc92c6888af72da407651bff7571967965fd3008f0d331743b9')
version('0.4-11', sha256='87943126e98ae47f366e3025d0f3dc2f5eb0aa2924508fd9ee9a0685d7cb477c')
version('0.4-10.1', sha256='38bb3d172390bd01219332ec834744274b87b01f94d23b29a9d818c2bca04071')
version('0.4-7', sha256='ec941dddda55e4e29ed281bd8768a93d65e0d86d56ecab0f2013c64c8d1a4994')
diff --git a/var/spack/repos/builtin/packages/r-rsolnp/package.py b/var/spack/repos/builtin/packages/r-rsolnp/package.py
index 1180de0f46..85cdb1e5b9 100644
--- a/var/spack/repos/builtin/packages/r-rsolnp/package.py
+++ b/var/spack/repos/builtin/packages/r-rsolnp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-rspectra/package.py b/var/spack/repos/builtin/packages/r-rspectra/package.py
index 8d9958a424..914aa0aacf 100644
--- a/var/spack/repos/builtin/packages/r-rspectra/package.py
+++ b/var/spack/repos/builtin/packages/r-rspectra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRspectra(RPackage):
- """R interface to the 'Spectra' library <https://spectralib.org/> for
+ """Solvers for Large-Scale Eigenvalue and SVD Problems
+
+ R interface to the 'Spectra' library <https://spectralib.org/> for
large-scale eigenvalue and SVD problems. It is typically used to compute a
few eigenvalues/vectors of an n by n matrix, e.g., the k largest
eigenvalues, which is usually more efficient than eigen() if k << n. This
@@ -22,6 +24,7 @@ class RRspectra(RPackage):
url = "https://cloud.r-project.org/src/contrib/RSpectra_0.15-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RSpectra"
+ version('0.16-0', sha256='aaf1cfc9ffe3a4c6684247899924e1c18306971dfef4bae1dc596a2fb42a64a9')
version('0.15-0', sha256='1ad5698201007044a0420cb10b7c48e94312a8a1d22b9d946d5de1c6743969a9')
depends_on('r@3.0.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rsqlite/package.py b/var/spack/repos/builtin/packages/r-rsqlite/package.py
index c09613dcea..b591c0c34b 100644
--- a/var/spack/repos/builtin/packages/r-rsqlite/package.py
+++ b/var/spack/repos/builtin/packages/r-rsqlite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRsqlite(RPackage):
- """This package embeds the SQLite database engine in R and provides an
+ """'SQLite' Interface for R
+
+ This package embeds the SQLite database engine in R and provides an
interface compliant with the DBI package. The source for the SQLite engine
(version 3.8.6) is included."""
@@ -15,14 +17,15 @@ class RRsqlite(RPackage):
url = "https://cloud.r-project.org/src/contrib/RSQLite_2.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/RSQLite"
+ version('2.2.2', sha256='299ceafd4986f60dbca2d705112aa3c29ff68fcbc188d9caaa0493e63a57a873')
version('2.1.2', sha256='66dad425d22b09651c510bf84b7fc36375ce537782f02585cf1c6856ae82d9c6')
version('2.1.0', sha256='ad6081be2885be5921b1a44b1896e6a8568c8cff40789f43bfaac9f818767642')
version('2.0', sha256='7f0fe629f34641c6af1e8a34412f3089ee2d184853843209d97ffe29430ceff6')
depends_on('r@3.1.0:', type=('build', 'run'))
- depends_on('r-dbi@1.0.0:', type=('build', 'run'))
depends_on('r-bit64', type=('build', 'run'))
depends_on('r-blob@1.2.0:', type=('build', 'run'))
+ depends_on('r-dbi@1.0.0:', type=('build', 'run'))
depends_on('r-memoise', type=('build', 'run'))
depends_on('r-pkgconfig', type=('build', 'run'))
depends_on('r-rcpp@0.12.7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rstan/package.py b/var/spack/repos/builtin/packages/r-rstan/package.py
index 5167998e1e..e281d65760 100644
--- a/var/spack/repos/builtin/packages/r-rstan/package.py
+++ b/var/spack/repos/builtin/packages/r-rstan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRstan(RPackage):
- """User-facing R functions are provided to parse, compile, test, estimate,
+ """R Interface to Stan
+
+ User-facing R functions are provided to parse, compile, test, estimate,
and analyze Stan models by accessing the header-only Stan library provided
by the 'StanHeaders' package. The Stan project develops a probabilistic
programming language that implements full Bayesian statistical inference
@@ -21,22 +23,31 @@ class RRstan(RPackage):
url = "https://cloud.r-project.org/src/contrib/rstan_2.10.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rstan"
+ version('2.21.2', sha256='e30e04d38a612e2cb3ac69b53eaa19f7ede8b3548bf82f7892a2e9991d46054a')
version('2.19.2', sha256='31e4ceb9c327cd62873225097ffa538c2ac4cb0547c52271e52e4c7652d508da')
version('2.18.2', sha256='4d75dad95610d5a1d1c89a4ddbaf4326462e4ffe0ad28aed2129f2d9292e70ff')
version('2.17.2', sha256='a7b197e6e42f8f0c302da9205afc19a0261eaf6af1425854303d2ce6cbd36729')
version('2.10.1', sha256='4d2040742607f8675633c6b8c0a2e810f2fe3077f9242b1edfd42642613a8294')
- depends_on('r@3.0.2:', when='@:2.17.3', type=('build', 'run'))
+ depends_on('r+X', type=('build', 'run'))
+ depends_on('r@3.0.2:', type=('build', 'run'))
depends_on('r@3.4.0:', when='@2.18.1:', type=('build', 'run'))
depends_on('r-stanheaders@2.18.1:', type=('build', 'run'))
+ depends_on('r-stanheaders@2.21.0:', when='@2.21.2:', type=('build', 'run'))
depends_on('r-ggplot2@2.0.0:', type=('build', 'run'))
+ depends_on('r-ggplot2@3.0.0:', when='@2.21.2:', type=('build', 'run'))
depends_on('r-inline', type=('build', 'run'))
depends_on('r-gridextra@2.0.0:', type=('build', 'run'))
depends_on('r-rcpp@0.12.0:', type=('build', 'run'))
+ depends_on('r-rcppparallel@5.0.1:', when='@2.21.2:', type=('build', 'run'))
depends_on('r-loo@2.0.0:', when='@2.18:', type=('build', 'run'))
+ depends_on('r-loo@2.3.0:', when='@2.21.2:', type=('build', 'run'))
depends_on('r-pkgbuild', when='@2.18:', type=('build', 'run'))
+ depends_on('r-withr', when='@2.21.2:', type=('build', 'run'))
+ depends_on('r-v8', when='@2.21.2:', type=('build', 'run'))
depends_on('r-rcppeigen@0.3.3.3.0:', type=('build', 'run'))
depends_on('r-bh@1.69.0:', type=('build', 'run'))
+ depends_on('r-bh@1.72.0-2:', when='@2.21.2:', type=('build', 'run'))
depends_on('gmake', type='build')
depends_on('pandoc', type='build')
diff --git a/var/spack/repos/builtin/packages/r-rstantools/package.py b/var/spack/repos/builtin/packages/r-rstantools/package.py
index 1566e05de2..8bf4619f75 100644
--- a/var/spack/repos/builtin/packages/r-rstantools/package.py
+++ b/var/spack/repos/builtin/packages/r-rstantools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,23 @@ from spack import *
class RRstantools(RPackage):
- """rstantools: Tools for Developing R Packages Interfacing with 'Stan'"""
+ """Tools for Developing R Packages Interfacing with 'Stan'
+
+ Provides various tools for developers of R packages interfacing with 'Stan'
+ <https://mc-stan.org>, including functions to set up the required package
+ structure, S3 generics and default methods to unify function naming across
+ 'Stan'-based R packages, and vignettes with recommendations for
+ developers."""
homepage = "http://discourse.mc-stan.org/"
url = "https://cloud.r-project.org/src/contrib/rstantools_1.5.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rstantools"
+ version('2.1.1', sha256='c95b15de8ec577eeb24bb5206e7b685d882f88b5e6902efda924b7217f463d2d')
version('1.5.1', sha256='5cab16c132c12e84bd08e18cd6ef25ba39d67a04ce61015fc4490659c7cfb485')
+ depends_on('r+X', type=('build', 'run'))
+ depends_on('r-desc', when='@2.1.1:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.16:', when='@2.1.1:', type=('build', 'run'))
+ depends_on('r-rcppparallel@5.0.1:', when='@2.1.1:', type=('build', 'run'))
depends_on('pandoc', type='build')
diff --git a/var/spack/repos/builtin/packages/r-rstatix/package.py b/var/spack/repos/builtin/packages/r-rstatix/package.py
new file mode 100644
index 0000000000..e098ce6d02
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rstatix/package.py
@@ -0,0 +1,44 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRstatix(RPackage):
+ """Pipe-Friendly Framework for Basic Statistical Tests
+
+ Provides a simple and intuitive pipe-friendly framework, coherent with the
+ 'tidyverse' design philosophy, for performing basic statistical tests,
+ including t-test, Wilcoxon test, ANOVA, Kruskal-Wallis and correlation
+ analyses. The output of each test is automatically transformed into a tidy
+ data frame to facilitate visualization. Additional functions are available
+ for reshaping, reordering, manipulating and visualizing correlation matrix.
+ Functions are also included to facilitate the analysis of factorial
+ experiments, including purely 'within-Ss' designs (repeated measures),
+ purely 'between-Ss' designs, and mixed 'within-and-between-Ss' designs.
+ It's also possible to compute several effect size metrics, including "eta
+ squared" for ANOVA, "Cohen's d" for t-test and 'Cramer V' for the
+ association between categorical variables. The package contains helper
+ functions for identifying univariate and multivariate outliers, assessing
+ normality and homogeneity of variances."""
+
+ homepage = "https://rpkgs.datanovia.com/rstatix/"
+ url = "https://cloud.r-project.org/src/contrib/rstatix_0.6.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/rstatix"
+
+ version('0.6.0', sha256='ebb28e20c7e28809194a2a027bc83303b17be1e3db32f49325727c9279df9c5b')
+
+ depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r-tidyr@1.0.0:', type=('build', 'run'))
+ depends_on('r-purrr', type=('build', 'run'))
+ depends_on('r-broom@0.5.6:', type=('build', 'run'))
+ depends_on('r-rlang@0.3.1:', type=('build', 'run'))
+ depends_on('r-tibble@2.1.3:', type=('build', 'run'))
+ depends_on('r-dplyr@0.7.1:', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-corrplot', type=('build', 'run'))
+ depends_on('r-tidyselect@1.0.0:', type=('build', 'run'))
+ depends_on('r-car', type=('build', 'run'))
+ depends_on('r-generics@0.0.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rstudioapi/package.py b/var/spack/repos/builtin/packages/r-rstudioapi/package.py
index 07f3919c58..3e2d364c51 100644
--- a/var/spack/repos/builtin/packages/r-rstudioapi/package.py
+++ b/var/spack/repos/builtin/packages/r-rstudioapi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RRstudioapi(RPackage):
- """Access the RStudio API (if available) and provide informative error
+ """Safely Access the RStudio API
+
+ Access the RStudio API (if available) and provide informative error
messages when it's not."""
homepage = "https://cloud.r-project.org/package=rstudioapi"
url = "https://cloud.r-project.org/src/contrib/rstudioapi_0.7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rstudioapi"
+ version('0.13', sha256='aac35bbdcb4a8e8caba943bc8a2b98120e8940b80cd1020224bb1a26ff776d8b')
version('0.11', sha256='13e07fb7e2eba8cf1d885db2721901d676d219a1042d7ef5d166125e4905306b')
version('0.10', sha256='80c5aa3063bcab649904cb92f0b164edffa2f6b0e6a8f7ea28ae317b80e1ab96')
version('0.9.0', sha256='5149a2830ae7134c396ce64764b263cf9f348d4399f53da3804f40d7d5bec13e')
diff --git a/var/spack/repos/builtin/packages/r-rsvd/package.py b/var/spack/repos/builtin/packages/r-rsvd/package.py
index 232cffdb47..aef7d36c83 100644
--- a/var/spack/repos/builtin/packages/r-rsvd/package.py
+++ b/var/spack/repos/builtin/packages/r-rsvd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RRsvd(RPackage):
- """Low-rank matrix decompositions are fundamental tools and widely used for
+ """Randomized Singular Value Decomposition
+
+ Low-rank matrix decompositions are fundamental tools and widely used for
data analysis, dimension reduction, and data compression. Classically,
highly accurate deterministic matrix algorithms are used for this task.
However, the emergence of large-scale data has severely challenged our
@@ -26,6 +28,7 @@ class RRsvd(RPackage):
url = "https://cloud.r-project.org/src/contrib/rsvd_1.0.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rsvd"
+ version('1.0.3', sha256='13560e0fc3ae6927c4cc4d5ad816b1f640a2a445b712a5a612ab17ea0ce179bb')
version('1.0.2', sha256='c8fe5c18bf7bcfe32604a897e3a7caae39b49e47e93edad9e4d07657fc392a3a')
depends_on('r@3.2.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rtracklayer/package.py b/var/spack/repos/builtin/packages/r-rtracklayer/package.py
index 0020bf75b2..fa0c07dea1 100644
--- a/var/spack/repos/builtin/packages/r-rtracklayer/package.py
+++ b/var/spack/repos/builtin/packages/r-rtracklayer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RRtracklayer(RPackage):
- """R interface to genome annotation files and the UCSC genome browser.
+ """R interface to genome annotation files and the UCSC genome browser
Extensible framework for interacting with multiple genome browsers
(currently UCSC built-in) and manipulating annotation tracks in various
@@ -19,6 +19,7 @@ class RRtracklayer(RPackage):
homepage = "https://bioconductor.org/packages/rtracklayer"
git = "https://git.bioconductor.org/packages/rtracklayer.git"
+ version('1.50.0', commit='d2e61f72ff5d5a94c2c487ba108a37f23bfcc1e6')
version('1.44.4', commit='aec96e85daf53b5c5eb2e89250d2755352be4de3')
version('1.42.2', commit='76702f671faea736807d54aeecfbadcd152d94c5')
version('1.40.6', commit='ba9a6e711504a702147383bc7abfcc36eb304df7')
@@ -27,28 +28,27 @@ class RRtracklayer(RPackage):
depends_on('r@3.3:', type=('build', 'run'))
depends_on('r-genomicranges@1.21.20:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.37.2:', when='@1.50.0:', type=('build', 'run'))
depends_on('r-xml@1.98-0:', type=('build', 'run'))
depends_on('r-biocgenerics@0.13.8:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.25.1:', when='@1.40.6:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.35.3:', when='@1.50.0:', type=('build', 'run'))
depends_on('r-s4vectors@0.13.13:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.25:', when='@1.40.6:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.19.22:', when='@1.42.2:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.23.18:', when='@1.50.0:', type=('build', 'run'))
depends_on('r-iranges@2.3.7:', type=('build', 'run'))
+ depends_on('r-iranges@2.11.12:', when='@1.38.3:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.13:', when='@1.40.6:', type=('build', 'run'))
depends_on('r-xvector@0.9.4:', type=('build', 'run'))
+ depends_on('r-xvector@0.19.7:', when='@1.40.6:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.3.14:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.15.2:', when='@1.40.6:', type=('build', 'run'))
depends_on('r-biostrings@2.43.7:', type=('build', 'run'))
+ depends_on('r-biostrings@2.47.6:', when='@1.40.6:', type=('build', 'run'))
depends_on('r-zlibbioc', type=('build', 'run'))
depends_on('r-rcurl@1.4-2:', type=('build', 'run'))
depends_on('r-rsamtools@1.17.8:', type=('build', 'run'))
- depends_on('r-genomicalignments@1.5.4:', type=('build', 'run'))
-
- depends_on('r-iranges@2.11.12:', when='@1.38.3:', type=('build', 'run'))
-
- depends_on('r-genomicranges@1.31.8:', when='@1.40.6:', type=('build', 'run'))
- depends_on('r-biocgenerics@0.25.1:', when='@1.40.6:', type=('build', 'run'))
- depends_on('r-s4vectors@0.17.25:', when='@1.40.6:', type=('build', 'run'))
- depends_on('r-iranges@2.13.13:', when='@1.40.6:', type=('build', 'run'))
- depends_on('r-xvector@0.19.7:', when='@1.40.6:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.15.2:', when='@1.40.6:', type=('build', 'run'))
- depends_on('r-biostrings@2.47.6:', when='@1.40.6:', type=('build', 'run'))
depends_on('r-rsamtools@1.31.2:', when='@1.40.6:', type=('build', 'run'))
+ depends_on('r-genomicalignments@1.5.4:', type=('build', 'run'))
depends_on('r-genomicalignments@1.15.6:', when='@1.40.6:', type=('build', 'run'))
-
- depends_on('r-s4vectors@0.19.22:', when='@1.42.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rtsne/package.py b/var/spack/repos/builtin/packages/r-rtsne/package.py
index f0acd005fc..8567606c69 100644
--- a/var/spack/repos/builtin/packages/r-rtsne/package.py
+++ b/var/spack/repos/builtin/packages/r-rtsne/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-runit/package.py b/var/spack/repos/builtin/packages/r-runit/package.py
index e922f74fdf..14028a5ca5 100644
--- a/var/spack/repos/builtin/packages/r-runit/package.py
+++ b/var/spack/repos/builtin/packages/r-runit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-runjags/package.py b/var/spack/repos/builtin/packages/r-runjags/package.py
new file mode 100644
index 0000000000..32ace970fb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-runjags/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRunjags(RPackage):
+ """Interface Utilities, Model Templates, Parallel Computing Methods and
+ Additional Distributions for MCMC Models in JAGS:
+
+ User-friendly interface utilities for MCMC models via Just Another Gibbs
+ Sampler (JAGS), facilitating the use of parallel (or distributed)
+ processors for multiple chains, automated control of convergence and sample
+ length diagnostics, and evaluation of the performance of a model using
+ drop-k validation or against simulated data. Template model specifications
+ can be generated using a standard lme4-style formula interface to assist
+ users less familiar with the BUGS syntax. A JAGS extension module provides
+ additional distributions including the Pareto family of distributions, the
+ DuMouchel prior and the half-Cauchy prior."""
+
+ homepage = "https://github.com/ku-awdc/runjags"
+ cran = "runjags"
+
+ version('2.2.0-2', sha256='e5dfeb83d36faf19ebe64429f6db64aedecf3c9a040fd5bf9c0200914bf5039a')
+
+ depends_on('r@2.14.0:', type=('build', 'run'))
+ depends_on('r-lattice@0.20-10:', type=('build', 'run'))
+ depends_on('r-coda@0.17-1:', type=('build', 'run'))
+ depends_on('jags@4.3.0:')
diff --git a/var/spack/repos/builtin/packages/r-ruv/package.py b/var/spack/repos/builtin/packages/r-ruv/package.py
new file mode 100644
index 0000000000..da1b3ddc0b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ruv/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RRuv(RPackage):
+ """Detect and Remove Unwanted Variation using Negative Controls:
+
+ Implements the 'RUV' (Remove Unwanted Variation) algorithms. These
+ algorithms attempt to adjust for systematic errors of unknown origin in
+ high-dimensional data. The algorithms were originally developed for use
+ with genomic data, especially microarray data, but may be useful with other
+ types of high-dimensional data as well. These algorithms were proposed in
+ Gagnon-Bartsch and Speed (2012) <doi:10.1093/nar/gkz433>, Gagnon-Bartsch,
+ Jacob and Speed (2013), and Molania, et. al. (2019)
+ <doi:10.1093/nar/gkz433>. The algorithms require the user to specify a set
+ of negative control variables, as described in the references. The
+ algorithms included in this package are 'RUV-2', 'RUV-4', 'RUV-inv',
+ 'RUV-rinv', 'RUV-I', and RUV-III', along with various supporting
+ algorithms."""
+
+ homepage = "http://www-personal.umich.edu/~johanngb/ruv/"
+ cran = "ruv"
+
+ version('0.9.7.1', sha256='a0c54e56ba3d8f6ae178ae4d0e417a79295abf5dcb68bbae26c4b874734d98d8')
+
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rvcheck/package.py b/var/spack/repos/builtin/packages/r-rvcheck/package.py
index 33bfef6de5..a9260acc34 100644
--- a/var/spack/repos/builtin/packages/r-rvcheck/package.py
+++ b/var/spack/repos/builtin/packages/r-rvcheck/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,20 @@ from spack import *
class RRvcheck(RPackage):
- """Check latest release version of R and R package (both in 'CRAN',
+ """R/Package Version Check
+
+ Check latest release version of R and R package (both in 'CRAN',
'Bioconductor' or 'Github')."""
homepage = "https://cloud.r-project.org/package=rvcheck"
url = "https://cloud.r-project.org/src/contrib/rvcheck_0.0.9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rvcheck"
+ version('0.1.8', sha256='4ca5aa48fbf543e6171696ca7e1bff81e3112d06c919e88769b5c38a115b4718')
version('0.1.3', sha256='0b59986c1ccc5b89f8aca8fa7cf62d0b875719addb40e08dbda1791cfd334fc4')
version('0.0.9', sha256='6e7be7b029d28181a1b57ebd4d25978f3459722ffdb45a3698157a7f943bea92')
depends_on('r@3.3.0:', when='@:0.1.1', type=('build', 'run'))
depends_on('r@3.4.0:', when='@0.1.3:', type=('build', 'run'))
+ depends_on('r-biocmanager', when='@0.1.8:', type=('build', 'run'))
depends_on('r-rlang', when='@0.1.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rversions/package.py b/var/spack/repos/builtin/packages/r-rversions/package.py
index 7d0224fd90..c4a7a17cf6 100644
--- a/var/spack/repos/builtin/packages/r-rversions/package.py
+++ b/var/spack/repos/builtin/packages/r-rversions/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,17 @@ from spack import *
class RRversions(RPackage):
- """Query the main 'R' 'SVN' repository to find the versions
- 'r-release' and 'r-oldrel' refer to, and also all previous 'R'
- versions and their release dates.
- """
+ """Query 'R' Versions, Including 'r-release' and 'r-oldrel'
+
+ Query the main 'R' 'SVN' repository to find the versions 'r-release' and
+ 'r-oldrel' refer to, and also all previous 'R' versions and their release
+ dates."""
homepage = "https://cloud.r-project.org/package=rversions"
url = "https://cloud.r-project.org/src/contrib/rversions_2.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rversions"
+ version('2.0.2', sha256='3523f4b7393365341d429500b01ba3a224056e89d134635b81dfb4918ba2173e')
version('2.0.1', sha256='51ec1f64e7d628e88d716a020d5d521eba71d472e3c9ae7b694428ef6dd786c5')
version('2.0.0', sha256='b50c321d9e973284ae6b1d0c89bd46a40f5174de51fb28e3c77cd12ef34f6f56')
version('1.1.0', sha256='14a5a2f06b74e332fd9cbd4d715baa6165f5269c9ba2c0b9f1d0c6540dde9c3c')
diff --git a/var/spack/repos/builtin/packages/r-rvest/package.py b/var/spack/repos/builtin/packages/r-rvest/package.py
index 96de5d7090..9e6db8fe9b 100644
--- a/var/spack/repos/builtin/packages/r-rvest/package.py
+++ b/var/spack/repos/builtin/packages/r-rvest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RRvest(RPackage):
- """Wrappers around the 'xml2' and 'httr' packages to make it easy to
- download, then manipulate, HTML and XML."""
+ """Easily Harvest (Scrape) Web Pages
+
+ Wrappers around the 'xml2' and 'httr' packages to make it easy to download,
+ then manipulate, HTML and XML."""
homepage = "https://github.com/hadley/rvest"
url = "https://cloud.r-project.org/src/contrib/rvest_0.3.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rvest"
+ version('0.3.6', sha256='6a2ee3a25d2d738031edbc1b5e2410f2a4538dfbb9705af145f9039504b902fa')
version('0.3.4', sha256='413e171b9e89b7dc4e8b41165027cf19eb97cd73e149c252237bbdf0d0a4254a')
version('0.3.3', sha256='b10a87fa2d733f7c0fc567242ef0ab10a1a77d58d51796996cc0fd81381a556f')
version('0.3.2', sha256='0d6e8837fb1df79b1c83e7b48d8f1e6245f34a10c4bb6952e7bec7867e4abb12')
@@ -23,5 +26,5 @@ class RRvest(RPackage):
depends_on('r@3.2:', when='@0.3.4:', type=('build', 'run'))
depends_on('r-xml2', type=('build', 'run'))
depends_on('r-httr@0.5:', type=('build', 'run'))
- depends_on('r-selectr', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-selectr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rzmq/package.py b/var/spack/repos/builtin/packages/r-rzmq/package.py
index 68b46c102d..366c32c2fd 100644
--- a/var/spack/repos/builtin/packages/r-rzmq/package.py
+++ b/var/spack/repos/builtin/packages/r-rzmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,12 +8,16 @@ from spack import *
class RRzmq(RPackage):
- """Interface to the ZeroMQ lightweight messaging kernel."""
+ """R Bindings for 'ZeroMQ'
+
+ Interface to the 'ZeroMQ' lightweight messaging kernel (see
+ <http://www.zeromq.org/> for more information)."""
homepage = "http://github.com/armstrtw/rzmq"
url = "https://cloud.r-project.org/src/contrib/rzmq_0.7.7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/rzmq"
+ version('0.9.7', sha256='5f47b67b75fd4a230780406f7a55a3708ce8c014cff755a809a6bfa1a6925a45')
version('0.9.6', sha256='80a3fc6eb6f7851224c4cd5e219ca4db0286551ad429359d4df853ccb9234316')
version('0.9.4', sha256='03fbda756d823c11fba359b94a6213c3440e61973331668eaac35779717f73ad')
version('0.7.7', sha256='bdbaf77a0e04c5b6d6ce79ab2747848a5044355eed2e2c4d39c4ba16f97dc83d')
diff --git a/var/spack/repos/builtin/packages/r-s2/package.py b/var/spack/repos/builtin/packages/r-s2/package.py
new file mode 100644
index 0000000000..55c928466b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-s2/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RS2(RPackage):
+ """Spherical Geometry Operators Using the S2 Geometry Library
+
+ Provides R bindings for Google's s2 library for geometric calculations on
+ the sphere. High-performance constructors and exporters provide high
+ compatibility with existing spatial packages, transformers construct new
+ geometries from existing geometries, predicates provide a means to select
+ geometries based on spatial relationships, and accessors extract
+ information about geometries."""
+
+ homepage = "https://r-spatial.github.io/s2/"
+ cran = "s2"
+
+ version('1.0.4', sha256='3c274ebae33aa5473f94afb3066c6f388aced17ff3b5f6add9edcc9af22b985e')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-wk', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-s4vectors/package.py b/var/spack/repos/builtin/packages/r-s4vectors/package.py
index 909b33bb2e..b15c954cfa 100644
--- a/var/spack/repos/builtin/packages/r-s4vectors/package.py
+++ b/var/spack/repos/builtin/packages/r-s4vectors/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RS4vectors(RPackage):
- """Foundation of vector-like and list-like containers in Bioconductor.
+ """Foundation of vector-like and list-like containers in Bioconductor
The S4Vectors package defines the Vector and List virtual classes and a
set of generic functions that extend the semantic of ordinary vectors
@@ -21,6 +21,7 @@ class RS4vectors(RPackage):
homepage = "https://bioconductor.org/packages/S4Vectors"
git = "https://git.bioconductor.org/packages/S4Vectors.git"
+ version('0.28.1', commit='994cb7ef830e76f8b43169cc72b553869fafb2ed')
version('0.26.1', commit='935769c')
version('0.22.1', commit='d25e517b48ca4184a4c2ee1f8223c148a55a8b8a')
version('0.20.1', commit='1878b2909086941e556c5ea953c6fd86aebe9b02')
@@ -29,7 +30,8 @@ class RS4vectors(RPackage):
version('0.14.7', commit='40af17fe0b8e93b6a72fc787540d2961773b8e23')
depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r@4.0.0:', when='@0.28.1:', type=('build', 'run'))
depends_on('r-biocgenerics@0.21.1:', type=('build', 'run'))
-
depends_on('r-biocgenerics@0.23.3:', when='@0.16.0:0.22.1', type=('build', 'run'))
depends_on('r-biocgenerics@0.31.1:', when='@0.26.1:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.36.0:', when='@0.28.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-samr/package.py b/var/spack/repos/builtin/packages/r-samr/package.py
index d776f6b10b..ac58cdf705 100644
--- a/var/spack/repos/builtin/packages/r-samr/package.py
+++ b/var/spack/repos/builtin/packages/r-samr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-sandwich/package.py b/var/spack/repos/builtin/packages/r-sandwich/package.py
index 4afd68d4a6..fac08e3587 100644
--- a/var/spack/repos/builtin/packages/r-sandwich/package.py
+++ b/var/spack/repos/builtin/packages/r-sandwich/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,31 @@ from spack import *
class RSandwich(RPackage):
- """Model-robust standard error estimators for cross-sectional, time series,
- and longitudinal data."""
+ """Robust Covariance Matrix Estimators
+
+ Object-oriented software for model-robust covariance matrix estimators.
+ Starting out from the basic robust Eicker-Huber-White sandwich covariance
+ methods include: heteroscedasticity-consistent (HC) covariances for
+ cross-section data; heteroscedasticity- and autocorrelation-consistent
+ (HAC) covariances for time series data (such as Andrews' kernel HAC,
+ Newey-West, and WEAVE estimators); clustered covariances (one-way and
+ multi-way); panel and panel-corrected covariances;
+ outer-product-of-gradients covariances; and (clustered) bootstrap
+ covariances. All methods are applicable to (generalized) linear model
+ objects fitted by lm() and glm() but can also be adapted to other classes
+ through S3 methods. Details can be found in Zeileis et al. (2020)
+ <doi:10.18637/jss.v095.i01>, Zeileis (2004) <doi:10.18637/jss.v011.i10> and
+ Zeileis (2006) <doi:10.18637/jss.v016.i09>."""
homepage = "https://cloud.r-project.org/package=sandwich"
url = "https://cloud.r-project.org/src/contrib/sandwich_2.3-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/sandwich"
+ version('3.0-0', sha256='828fe53b5e09db5015efd529b2db4dcd40251bce110fea7b0b219fa9ac36d529')
version('2.5-1', sha256='dbef6f4d12b83e166f9a2508b7c732b04493641685d6758d29f3609e564166d6')
version('2.5-0', sha256='6cc144af20739eb23e5539010d3833d7c7fc53cbca2addb583ab933167c11399')
version('2.3-4', sha256='2052f7e3d19a05c372f422c5480f1058a4107e420cd038a9bd7240c4f0746d4d')
depends_on('r@2.10.0:', type=('build', 'run'))
+ depends_on('r@3.0.0:', when='@3.0-0:', type=('build', 'run'))
depends_on('r-zoo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-satellite/package.py b/var/spack/repos/builtin/packages/r-satellite/package.py
new file mode 100644
index 0000000000..9c0e604d4c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-satellite/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RSatellite(RPackage):
+ """Handling and Manipulating Remote Sensing Data
+
+ Herein, we provide a broad variety of functions which are useful for
+ handling, manipulating, and visualizing satellite-based remote sensing
+ data. These operations range from mere data import and layer handling (eg
+ subsetting), over Raster* typical data wrangling (eg crop, extend), to more
+ sophisticated (pre-)processing tasks typically applied to satellite imagery
+ (eg atmospheric and topographic correction). This functionality is
+ complemented by a full access to the satellite layers' metadata at any
+ stage and the documentation of performed actions in a separate log file.
+ Currently available sensors include Landsat 4-5 (TM), 7 (ETM+), and 8
+ (OLI/TIRS Combined), and additional compatibility is ensured for the
+ Landsat Global Land Survey data set."""
+
+ cran = "satellite"
+
+ version('1.0.2', sha256='6447476bd31216e5abe504221e465677954d07419b4174ab4f4e4f7a197969c5')
+
+ depends_on('r@2.10:', type=('build', 'run'))
+ depends_on('r-raster', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-rcpp@0.10.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-scales/package.py b/var/spack/repos/builtin/packages/r-scales/package.py
index 4949d18917..31a07fecce 100644
--- a/var/spack/repos/builtin/packages/r-scales/package.py
+++ b/var/spack/repos/builtin/packages/r-scales/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,25 +7,31 @@ from spack import *
class RScales(RPackage):
- """Graphical scales map data to aesthetics, and provide methods for
+ """Scale Functions for Visualization
+
+ Graphical scales map data to aesthetics, and provide methods for
automatically determining breaks and labels for axes and legends."""
homepage = "https://github.com/hadley/scales"
url = "https://cloud.r-project.org/src/contrib/scales_0.5.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/scales"
+ version('1.1.1', sha256='40b2b66522f1f314a20fd09426011b0cdc9d16b23ee2e765fe1930292dd03705')
version('1.0.0', sha256='0c1f4a14edd336a404da34a3cc71a6a9d0ca2040ba19360c41a79f36e06ca30c')
version('0.5.0', sha256='dbfcc0817c4ab8b8777ec7d68ebfe220177c193cfb5bd0e8ba5d365dbfe3e97d')
version('0.4.1', sha256='642b88fb1fce7bac72a0038ce532b65b8a79dffe826fec25033cf386ab630cd3')
version('0.4.0', sha256='851ef6136339b361b3f843fb73ea89f9112279b9cc126bdb38acde8d24c1c6a7')
- depends_on('r@2.13:', when='@:0.5.0', type=('build', 'run'))
+ depends_on('r@2.13:', type=('build', 'run'))
depends_on('r@3.1:', when='@1.0.0:', type=('build', 'run'))
- depends_on('r-rcolorbrewer', type=('build', 'run'))
- depends_on('r-dichromat', when='@:0.5.0', type=('build', 'run'))
- depends_on('r-plyr', when='@:0.5.0', type=('build', 'run'))
- depends_on('r-munsell@0.5:', type=('build', 'run'))
+ depends_on('r@3.2:', when='@1.1.1:', type=('build', 'run'))
+ depends_on('r-farver@2.0.3:', when='@1.1.1:', type=('build', 'run'))
depends_on('r-labeling', type=('build', 'run'))
- depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@1.1.1:', type=('build', 'run'))
+ depends_on('r-munsell@0.5:', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
depends_on('r-viridislite', type=('build', 'run'))
+ depends_on('r-dichromat', when='@:0.5.0', type=('build', 'run'))
+ depends_on('r-plyr', when='@:0.5.0', type=('build', 'run'))
+ depends_on('r-rcpp', when='@:1.0.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-scater/package.py b/var/spack/repos/builtin/packages/r-scater/package.py
index ca8d49f67e..eb0dfab9a1 100644
--- a/var/spack/repos/builtin/packages/r-scater/package.py
+++ b/var/spack/repos/builtin/packages/r-scater/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RScater(RPackage):
- """Single-Cell Analysis Toolkit for Gene Expression Data in R.
+ """Single-Cell Analysis Toolkit for Gene Expression Data in R
A collection of tools for doing various analyses of single-cell RNA-seq
gene expression data, with a focus on quality control and
@@ -16,6 +16,7 @@ class RScater(RPackage):
homepage = "https://bioconductor.org/packages/scater"
git = "https://git.bioconductor.org/packages/scater.git"
+ version('1.18.3', commit='a94e7f413bf0f5f527b41b0b34e7a8e5c947ae37')
version('1.12.2', commit='1518dc27a87c79181c34107d639e95fe55e55092')
version('1.10.1', commit='2e6694af2929092f263c2b0830d48b3f9632e70c')
version('1.8.4', commit='d560a9a378541d53d17990d2aa2cd28874df3dcd')
@@ -23,16 +24,31 @@ class RScater(RPackage):
version('1.4.0', commit='90a2eab66ff82ba6dd7fbb33e41cd0ded20fa218')
depends_on('r@3.3:', when='@1.4.0', type=('build', 'run'))
- depends_on('r-biobase', when='@1.4.0:1.8.4', type=('build', 'run'))
+ depends_on('r@3.4:', when='@1.6.3', type=('build', 'run'))
+ depends_on('r@3.5:', when='@1.8.4', type=('build', 'run'))
+ depends_on('r@3.6:', when='@1.12.2', type=('build', 'run'))
+ depends_on('r-singlecellexperiment', when='@1.6.3:', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-biomart', when='@1.4.0:1.6.3', type=('build', 'run'))
+ depends_on('r-gridextra', when='@1.18.3:', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', when='@1.6.3:', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', when='@1.6.3:', type=('build', 'run'))
+ depends_on('r-delayedarray', when='@1.8.4:', type=('build', 'run'))
+ depends_on('r-delayedmatrixstats', when='@1.8.4:', type=('build', 'run'))
+ depends_on('r-biocneighbors', when='@1.12.2:', type=('build', 'run'))
+ depends_on('r-biocsingular', when='@1.12.2:', type=('build', 'run'))
+ depends_on('r-biocparallel', when='@1.10.1:', type=('build', 'run'))
+ depends_on('r-scuttle', when='@1.18.3:', type=('build', 'run'))
+ depends_on('r-rlang', when='@1.18.3:', type=('build', 'run'))
+ depends_on('r-ggbeeswarm', type=('build', 'run'))
+ depends_on('r-viridis', type=('build', 'run'))
+ depends_on('r-biobase', when='@1.4.0:1.8.4', type=('build', 'run'))
+ depends_on('r-biomart', when='@1.4.0:1.6.3', type=('build', 'run'))
depends_on('r-data-table', when='@1.4.0:1.6.3', type=('build', 'run'))
depends_on('r-dplyr', when='@1.4.0:1.12.2', type=('build', 'run'))
depends_on('r-edger', when='@1.4.0:1.8.4', type=('build', 'run'))
- depends_on('r-ggbeeswarm', type=('build', 'run'))
depends_on('r-limma', when='@1.4.0:1.8.4', type=('build', 'run'))
- depends_on('r-matrix', type=('build', 'run'))
depends_on('r-matrixstats', when='@1.4.0:1.6.3', type=('build', 'run'))
depends_on('r-plyr', when='@1.4.0:1.8.4', type=('build', 'run'))
depends_on('r-reshape2', when='@1.4.0:1.10.1', type=('build', 'run'))
@@ -41,23 +57,7 @@ class RScater(RPackage):
depends_on('r-shiny', when='@1.4.0:1.8.4', type=('build', 'run'))
depends_on('r-shinydashboard', when='@1.4.0:1.8.4', type=('build', 'run'))
depends_on('r-tximport', when='@1.4.0:1.8.4', type=('build', 'run'))
- depends_on('r-viridis', type=('build', 'run'))
-
- depends_on('r@3.4:', when='@1.6.3', type=('build', 'run'))
- depends_on('r-singlecellexperiment', when='@1.6.3:', type=('build', 'run'))
- depends_on('r-summarizedexperiment', when='@1.6.3:', type=('build', 'run'))
- depends_on('r-s4vectors', when='@1.6.3:', type=('build', 'run'))
- depends_on('r-rcpp', when='@1.6.3:', type=('build', 'run'))
+ depends_on('r-rcpp', when='@1.6.3:1.12.2', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.14:', when='@1.8.4:1.12.2', type=('build', 'run'))
depends_on('r-rhdf5lib', when='@1.6.3:1.10.1', type=('build', 'run'))
- depends_on('r-beachmat', when='@1.6.3:', type=('build', 'run'))
-
- depends_on('r@3.5:', when='@1.8.4', type=('build', 'run'))
- depends_on('r-delayedmatrixstats', when='@1.8.4:', type=('build', 'run'))
- depends_on('r-rcpp@0.12.14:', when='@1.8.4:', type=('build', 'run'))
- depends_on('r-delayedarray', when='@1.8.4:', type=('build', 'run'))
-
- depends_on('r-biocparallel', when='@1.10.1:', type=('build', 'run'))
-
- depends_on('r@3.6:', when='@1.12.2', type=('build', 'run'))
- depends_on('r-biocneighbors', when='@1.12.2:', type=('build', 'run'))
- depends_on('r-biocsingular', when='@1.12.2:', type=('build', 'run'))
+ depends_on('r-beachmat', when='@1.6.3:1.12.2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-scattermore/package.py b/var/spack/repos/builtin/packages/r-scattermore/package.py
new file mode 100644
index 0000000000..f122580b21
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-scattermore/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RScattermore(RPackage):
+ """Scatterplots with More Points
+
+ C-based conversion of large scatterplot data to rasters. Speeds up plotting
+ of data with millions of points."""
+
+ homepage = "https://github.com/exaexa/scattermore"
+ url = "https://cloud.r-project.org/src/contrib/scattermore_0.7.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/scattermore"
+
+ version('0.7', sha256='f36280197b8476314d6ce81a51c4ae737180b180204043d2937bc25bf3a5dfa2')
+
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-scales', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-scatterpie/package.py b/var/spack/repos/builtin/packages/r-scatterpie/package.py
new file mode 100644
index 0000000000..5b19e86cb4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-scatterpie/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RScatterpie(RPackage):
+ """Scatter Pie Plot
+
+ Creates scatterpie plots, especially useful for plotting pies on a map."""
+
+ homepage = "https://cloud.r-project.org/package=scatterpie"
+ url = "https://cloud.r-project.org/src/contrib/scatterpie_0.1.5.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/scatterpie"
+
+ version('0.1.5', sha256='e13237b7effc302acafc1c9b520b4904e55875f4a3b804f653eed2940ca08840')
+
+ depends_on('r@3.4.0:', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-ggforce', type=('build', 'run'))
+ depends_on('r-rlang', type=('build', 'run'))
+ depends_on('r-rvcheck', type=('build', 'run'))
+ depends_on('r-tidyr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-scatterplot3d/package.py b/var/spack/repos/builtin/packages/r-scatterplot3d/package.py
index c624cc62e2..8b0bb8d3be 100644
--- a/var/spack/repos/builtin/packages/r-scatterplot3d/package.py
+++ b/var/spack/repos/builtin/packages/r-scatterplot3d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-scrime/package.py b/var/spack/repos/builtin/packages/r-scrime/package.py
index 6f839435ed..4bcf65391a 100644
--- a/var/spack/repos/builtin/packages/r-scrime/package.py
+++ b/var/spack/repos/builtin/packages/r-scrime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-sctransform/package.py b/var/spack/repos/builtin/packages/r-sctransform/package.py
index 65d733fe25..eb1db61341 100644
--- a/var/spack/repos/builtin/packages/r-sctransform/package.py
+++ b/var/spack/repos/builtin/packages/r-sctransform/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RSctransform(RPackage):
- """A normalization method for single-cell UMI count data using a variance
+ """Variance Stabilizing Transformations for Single Cell UMI Data
+
+ A normalization method for single-cell UMI count data using a variance
stabilizing transformation. The transformation is based on a negative
binomial regression model with regularized parameters. As part of the same
regression framework, this package also provides functions for batch
@@ -18,15 +20,19 @@ class RSctransform(RPackage):
url = "https://cloud.r-project.org/src/contrib/sctransform_0.2.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/sctransform"
+ version('0.3.2', sha256='5dbb0a045e514c19f51bbe11c2dba0b72dca1942d6eb044c36b0538b443475dc')
version('0.2.0', sha256='d7f4c7958693823454f1426b23b0e1e9c207ad61a7a228602a1885a1318eb3e4')
depends_on('r@3.0.2:', type=('build', 'run'))
+ depends_on('r@3.1.0:', when='@0.3.2:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
- depends_on('r-future', type=('build', 'run'))
depends_on('r-future-apply', type=('build', 'run'))
+ depends_on('r-future', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-reshape2', type=('build', 'run'))
depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-matrixstats', when='@0.3.2:', type=('build', 'run'))
+ depends_on('r-rcpparmadillo', when='@0.3.2:', type=('build', 'run'))
depends_on('r-rcpp@0.11.0:', type=('build', 'run'))
- depends_on('r-rcppeigen', type=('build', 'run'))
+ depends_on('r-rcppeigen', when='@:0.2.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-scuttle/package.py b/var/spack/repos/builtin/packages/r-scuttle/package.py
new file mode 100644
index 0000000000..5646ad08f2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-scuttle/package.py
@@ -0,0 +1,32 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RScuttle(RPackage):
+ """Single-Cell RNA-Seq Analysis Utilities
+
+ Provides basic utility functions for performing single-cell analyses,
+ focusing on simple normalization, quality control and data transformations.
+ Also provides some helper functions to assist development of other
+ packages."""
+
+ homepage = "https://bioconductor.org/packages/scuttle/"
+ git = "https://git.bioconductor.org/packages/scuttle"
+
+ version('1.0.4', commit='a827e2759d80e6c3510e2f8fd4bd680274206d9f')
+
+ depends_on('r-singlecellexperiment', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-delayedarray', type=('build', 'run'))
+ depends_on('r-delayedmatrixstats', type=('build', 'run'))
+ depends_on('r-beachmat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sdmtools/package.py b/var/spack/repos/builtin/packages/r-sdmtools/package.py
index 1d46c4961a..121ce8af19 100644
--- a/var/spack/repos/builtin/packages/r-sdmtools/package.py
+++ b/var/spack/repos/builtin/packages/r-sdmtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,12 +11,21 @@ class RSdmtools(RPackage):
associated with species distribution modelling exercises
This packages provides a set of tools for post processing the outcomes of
- species distribution modeling exercises."""
+ species distribution modeling exercises. It includes novel methods for
+ comparing models and tracking changes in distributions through time. It
+ further includes methods for visualizing outcomes, selecting thresholds,
+ calculating measures of accuracy and landscape fragmentation statistics,
+ etc.. This package was made possible in part by financial support from the
+ Australian Research Council & ARC Research Network for Earth System
+ Science."""
homepage = "https://cloud.r-project.org/package=SDMTools"
url = "https://cloud.r-project.org/src/contrib/SDMTools_1.1-221.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/SDMTools"
+ # This package was removed from CRAN on 2020-01-12
+ # The spack recipe contains the latest version available from the archives
+ version('1.1-221.2', sha256='f0dd8c5f98d2f2c012536fa56d8f7a58aaf0c11cbe3527e66d4ee3194f6a6cf7')
version('1.1-221.1', sha256='3825856263bdb648ca018b27dc6ab8ceaef24691215c197f8d5cd17718b54fbb')
version('1.1-221', sha256='a6da297a670f756ee964ffd99c3b212c55c297d385583fd0e767435dd5cd4ccd')
version('1.1-20', sha256='d6a261ce8f487d5d03b1931039f528f2eb50fb9386e7aae40045c966ff6d4182')
diff --git a/var/spack/repos/builtin/packages/r-segmented/package.py b/var/spack/repos/builtin/packages/r-segmented/package.py
index 922c779b57..9e7b4e7313 100644
--- a/var/spack/repos/builtin/packages/r-segmented/package.py
+++ b/var/spack/repos/builtin/packages/r-segmented/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,22 @@ from spack import *
class RSegmented(RPackage):
- """Given a regression model, segmented 'updates' the model by adding
- one or more segmented (i.e., piecewise-linear) relationships. Several
- variables with multiple breakpoints are allowed."""
+ """Regression Models with Break-Points / Change-Points Estimation
+
+ Given a regression model, segmented 'updates' it by adding one or more
+ segmented (i.e., piece-wise linear) relationships. Several variables with
+ multiple breakpoints are allowed. The estimation method is discussed in
+ Muggeo (2003, <doi:10.1002/sim.1545>) and illustrated in Muggeo (2008,
+ <https://www.r-project.org/doc/Rnews/Rnews_2008-1.pdf>). An approach for
+ hypothesis testing is presented in Muggeo (2016,
+ <doi:10.1080/00949655.2016.1149855>), and interval estimation for the
+ breakpoint is discussed in Muggeo (2017, <doi:10.1111/anzs.12200>)."""
homepage = "https://cloud.r-project.org/package=segmented"
url = "https://cloud.r-project.org/src/contrib/segmented_0.5-1.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/segmented"
+ version('1.3-1', sha256='b9b6e82bf72f108c69cb8fa01bd02fb99946c73ca3c8c2f8ae0abb1f460c143d')
version('1.0-0', sha256='eeadc89b4bb4744bbd1e4e6c3b6536ff96fc7ee09016228dfdc0a8ebdc74fac5')
version('0.5-4.0', sha256='7ff63a19915cbd1e190d3a4875892b4c7bd97890b0dc2909126348a19aec4071')
version('0.5-2.2', sha256='3aa7136370dd77911ba8e061b5215560d120bc71f355eeadc0856389dfecb2f1')
diff --git a/var/spack/repos/builtin/packages/r-selectr/package.py b/var/spack/repos/builtin/packages/r-selectr/package.py
index 5f306470c2..c1bdb1031d 100644
--- a/var/spack/repos/builtin/packages/r-selectr/package.py
+++ b/var/spack/repos/builtin/packages/r-selectr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,19 @@ from spack import *
class RSelectr(RPackage):
- """Translates a CSS3 selector into an equivalent XPath expression. This
- allows us to use CSS selectors when working with the XML package as it
- can only evaluate XPath expressions. Also provided are convenience
- functions useful for using CSS selectors on XML nodes. This package
- is a port of the Python package 'cssselect'
- (<https://pythonhosted.org/cssselect/>)."""
+ """Translate CSS Selectors to XPath Expressions
+
+ Translates a CSS3 selector into an equivalent XPath expression. This allows
+ us to use CSS selectors when working with the XML package as it can only
+ evaluate XPath expressions. Also provided are convenience functions useful
+ for using CSS selectors on XML nodes. This package is a port of the Python
+ package 'cssselect' (<https://cssselect.readthedocs.io/>)."""
homepage = "https://sjp.co.nz/projects/selectr"
url = "https://cloud.r-project.org/src/contrib/selectr_0.3-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/selectr"
+ version('0.4-2', sha256='5588aed05f3f5ee63c0d29953ef53da5dac7afccfdd04b7b22ef24e1e3b0c127')
version('0.4-1', sha256='8bd42f167629344e485e586f9b05fed342746132489079084d82133d7b3ee2ca')
version('0.4-0', sha256='40cd51bfe499954b300742c49f92167a68964b974268a7f47ca8864f32020ece')
version('0.3-1', sha256='db4f7ceea4b522a54c3ae7709787b0b7fcf389c5d945c5a278e3625388218949')
diff --git a/var/spack/repos/builtin/packages/r-seqinr/package.py b/var/spack/repos/builtin/packages/r-seqinr/package.py
index 5d3a46fe70..b95ce812b8 100644
--- a/var/spack/repos/builtin/packages/r-seqinr/package.py
+++ b/var/spack/repos/builtin/packages/r-seqinr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,18 @@ from spack import *
class RSeqinr(RPackage):
- """Exploratory data analysis and data visualization for biological
- sequence (DNA and protein) data. Includes also utilities for sequence
- data management under the ACNUC system."""
+ """Biological Sequences Retrieval and Analysis
+
+ Exploratory data analysis and data visualization for biological sequence
+ (DNA and protein) data. Seqinr includes utilities for sequence data
+ management under the ACNUC system described in Gouy, M. et al. (1984)
+ Nucleic Acids Res. 12:121-127 <doi:10.1093/nar/12.1Part1.121>."""
homepage = "http://seqinr.r-forge.r-project.org"
url = "https://cloud.r-project.org/src/contrib/seqinr_3.3-6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/seqinr"
+ version('4.2-5', sha256='de9860759c23af2ec2f2ef03b5dd1cea72c804438eadd369b7d9269bdf8d32fc')
version('3.4-5', sha256='162a347495fd52cbb62e8187a4692e7c50b9fa62123c5ef98f2744c98a05fb9f')
version('3.3-6', sha256='42a3ae01331db744d67cc9c5432ce9ae389bed465af826687b9c10216ac7a08d')
diff --git a/var/spack/repos/builtin/packages/r-seqlogo/package.py b/var/spack/repos/builtin/packages/r-seqlogo/package.py
index bd03c3a5f4..bf1ec4c915 100644
--- a/var/spack/repos/builtin/packages/r-seqlogo/package.py
+++ b/var/spack/repos/builtin/packages/r-seqlogo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSeqlogo(RPackage):
- """Sequence logos for DNA sequence alignments.
+ """Sequence logos for DNA sequence alignments
seqLogo takes the position weight matrix of a DNA sequence motif and
plots the corresponding sequence logo as introduced by Schneider and
@@ -16,6 +16,7 @@ class RSeqlogo(RPackage):
homepage = "https://bioconductor.org/packages/seqLogo"
git = "https://git.bioconductor.org/packages/seqLogo.git"
+ version('1.56.0', commit='169260c43fc58dc75becb3b7842cac3d0038a8d5')
version('1.50.0', commit='57986221c90c3920f9829756c4b3ee566dc1e14d')
version('1.48.0', commit='dde85582e7fd0c08c5b8bc73f9aed8f23b727d9d')
version('1.46.0', commit='e78be03db5f6a516138aeea6aa9512685633a4a2')
diff --git a/var/spack/repos/builtin/packages/r-servr/package.py b/var/spack/repos/builtin/packages/r-servr/package.py
new file mode 100644
index 0000000000..bd08b5ecdf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-servr/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RServr(RPackage):
+ """A Simple HTTP Server to Serve Static Files or Dynamic Documents
+
+ Start an HTTP server in R to serve static files, or dynamic documents that
+ can be converted to HTML files (e.g., R Markdown) under a given
+ directory."""
+
+ homepage = "https://github.com/yihui/servr"
+ url = "https://cloud.r-project.org/src/contrib/servr_0.21.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/servr"
+
+ version('0.21', sha256='3fc0da063dd04b796a49ce62bf8e69d5854679520da90cc92ee3fc0a0b2ad389')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-mime@0.2:', type=('build', 'run'))
+ depends_on('r-httpuv@1.5.2:', type=('build', 'run'))
+ depends_on('r-xfun', type=('build', 'run'))
+ depends_on('r-jsonlite', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sessioninfo/package.py b/var/spack/repos/builtin/packages/r-sessioninfo/package.py
index 48f238ef25..5cadb4f675 100644
--- a/var/spack/repos/builtin/packages/r-sessioninfo/package.py
+++ b/var/spack/repos/builtin/packages/r-sessioninfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-seurat/package.py b/var/spack/repos/builtin/packages/r-seurat/package.py
index 32a66852e2..07e1af1dd3 100644
--- a/var/spack/repos/builtin/packages/r-seurat/package.py
+++ b/var/spack/repos/builtin/packages/r-seurat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,21 @@ from spack import *
class RSeurat(RPackage):
- """Seurat is an R package designed for QC, analysis, and exploration of
- single cell RNA-seq data."""
+ """Tools for Single Cell Genomics
+
+ A toolkit for quality control, analysis, and exploration of single cell RNA
+ sequencing data. 'Seurat' aims to enable users to identify and interpret
+ sources of heterogeneity from single cell transcriptomic measurements, and
+ to integrate diverse types of single cell data. See Satija R, Farrell J,
+ Gennert D, et al (2015) <doi:10.1038/nbt.3192>, Macosko E, Basu A, Satija
+ R, et al (2015) <doi:10.1016/j.cell.2015.05.002>, and Stuart T, Butler A,
+ et al (2019) <doi:10.1016/j.cell.2019.05.031> for more details."""
homepage = "http://satijalab.org/seurat/"
url = "https://cloud.r-project.org/src/contrib/Seurat_2.1.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/Seurat"
+ version('3.2.3', sha256='83aa48f75c3756bee23e108a8b01028366e24f237fe990cb441f3525e0613f87')
version('3.1.0', sha256='d8d3fad2950a8f791376e3d20c72ea07c68bf8d82d800661cab5ce696db39d45')
version('3.0.2', sha256='16df5dec6b41d49320c5bf5ce30eb3b7dedeea69b054b55b77528f2f2b7bce04')
version('3.0.1', sha256='8c467bdbfdb9aff51bde6a897ff98a7389941f688639d8f1d36c71dde076a257')
@@ -22,68 +30,81 @@ class RSeurat(RPackage):
depends_on('r@3.2.0:', when='@:2.3.0', type=('build', 'run'))
depends_on('r@3.4.0:', when='@2.3.1:', type=('build', 'run'))
+ depends_on('r@3.6.0:', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-cluster', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-cowplot', type=('build', 'run'))
+ depends_on('r-fitdistrplus', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-future', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-future-apply', when='@3.0.0:', type=('build', 'run'))
depends_on('r-ggplot2@3.0.0:', type=('build', 'run'))
+ depends_on('r-ggplot2@3.3.0:', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-ggrepel', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-ggridges', when='@2.2.0:', type=('build', 'run'))
+ depends_on('r-httr', when='@2.3.4:', type=('build', 'run'))
+ depends_on('r-ica', type=('build', 'run'))
+ depends_on('r-igraph', type=('build', 'run'))
+ depends_on('r-irlba', type=('build', 'run'))
+ depends_on('r-jsonlite', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-kernsmooth', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-leiden@0.3.1:', when='@3.1.0:', type=('build', 'run'))
+ depends_on('r-lmtest', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-matrix@1.2.14:', type=('build', 'run'))
+ depends_on('r-matrixstats', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-miniui', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-patchwork', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-pbapply', type=('build', 'run'))
+ depends_on('r-plotly', type=('build', 'run'))
+ depends_on('r-plotly@4.9.0:', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-png', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-rann', when='@2.3.0:', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-rcpp@0.11.0:', type=('build', 'run'))
+ depends_on('r-rcppannoy', when='@3.1.0:', type=('build', 'run'))
+ depends_on('r-reticulate', when='@2.3.1:', type=('build', 'run'))
+ depends_on('r-rlang', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-rocr', type=('build', 'run'))
+ depends_on('r-rsvd', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-rtsne', type=('build', 'run'))
+ depends_on('r-scales', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-scattermore@0.7:', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-sctransform@0.2.0:', when='@3.0.0:', type=('build', 'run'))
+ depends_on('r-sctransform@0.3.1:', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-shiny', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-spatstat', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-tibble', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-uwot', when='@3.1.0:', type=('build', 'run'))
+ depends_on('r-uwot@0.1.9:', when='@3.2.3:', type=('build', 'run'))
+ depends_on('r-rcppeigen', type=('build', 'run'))
+ depends_on('r-rcppprogress', type=('build', 'run'))
depends_on('r-gplots', when='@:2.3.4', type=('build', 'run'))
depends_on('r-reshape2', when='@:2.3.4', type=('build', 'run'))
- depends_on('r-ape', type=('build', 'run'))
+ depends_on('r-ape', when='@:3.1.0', type=('build', 'run'))
depends_on('r-tidyr', when='@:2.3.4', type=('build', 'run'))
depends_on('r-caret', when='@:2.3.2', type=('build', 'run'))
depends_on('r-gdata', when='@:2.3.2', type=('build', 'run'))
depends_on('r-gridextra', when='@:2.3.0', type=('build', 'run'))
- depends_on('r-cowplot', type=('build', 'run'))
- depends_on('r-rocr', type=('build', 'run'))
depends_on('r-hmisc', when='@:2.3.4', type=('build', 'run'))
depends_on('r-nmf', when='@:2.2.0', type=('build', 'run'))
- depends_on('r-irlba', type=('build', 'run'))
- depends_on('r-igraph', type=('build', 'run'))
depends_on('r-fpc', when='@:2.3.4', type=('build', 'run'))
- depends_on('r-rcppprogress', type=('build', 'run'))
depends_on('r-lars', when='@:2.3.4', type=('build', 'run'))
depends_on('r-dtw', when='@:2.3.4', type=('build', 'run'))
depends_on('r-mixtools', when='@:2.3.4', type=('build', 'run'))
- depends_on('r-ica', type=('build', 'run'))
depends_on('r-diffusionmap', when='@:2.3.3', type=('build', 'run'))
- depends_on('r-tsne', type=('build', 'run'))
- depends_on('r-rtsne', type=('build', 'run'))
+ depends_on('r-tsne', when='@:3.1.0', type=('build', 'run'))
depends_on('r-ranger', when='@:2.3.2', type=('build', 'run'))
- depends_on('r-pbapply', type=('build', 'run'))
depends_on('r-ggjoy', when='@:2.1.0', type=('build', 'run'))
- depends_on('r-plotly', type=('build', 'run'))
- depends_on('r-sdmtools', type=('build', 'run'))
+ depends_on('r-sdmtools', when='@:3.1.0', type=('build', 'run'))
depends_on('r-tclust', when='@:2.3.2', type=('build', 'run'))
depends_on('r-fnn', when='@:2.3.2', type=('build', 'run'))
depends_on('r-vgam', when='@:2.3.2', type=('build', 'run'))
- depends_on('r-matrix@1.2.14:', type=('build', 'run'))
- depends_on('r-rcolorbrewer', type=('build', 'run'))
- depends_on('r-mass', type=('build', 'run'))
- depends_on('r-rcpp@0.11.0:', type=('build', 'run'))
- depends_on('r-rcppeigen', type=('build', 'run'))
- depends_on('r-ggridges', when='@2.2.0:', type=('build', 'run'))
depends_on('r-e1071', when='@:2.0.1', type=('build', 'run'))
depends_on('r-compositions', when='@:2.0.1', type=('build', 'run'))
depends_on('r-nmof', when='@:2.0.1', type=('build', 'run'))
- depends_on('r-metap', when='@2.2.1:', type=('build', 'run'))
- depends_on('r-cluster', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-fitdistrplus', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-png', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-lmtest', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-rann', when='@2.3.0:', type=('build', 'run'))
- depends_on('r-reticulate', when='@2.3.1:', type=('build', 'run'))
+ depends_on('r-metap', when='@2.2.1:3.1.0', type=('build', 'run'))
depends_on('r-stringr', when='@:2.3.2', type=('build', 'run'))
depends_on('r-dplyr', when='@:2.3.4', type=('build', 'run'))
- depends_on('r-httr', when='@2.3.4:', type=('build', 'run'))
depends_on('r-dosnow', when='@2.3.0:2.3.4', type=('build', 'run'))
depends_on('r-foreach', when='@2.3.0:2.3.4', type=('build', 'run'))
depends_on('r-hdf5r', when='@2.3.2:2.3.4', type=('build', 'run'))
- depends_on('r-future', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-future-apply', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-ggrepel', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-kernsmooth', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-rlang', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-rsvd', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-scales', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-sctransform@0.2.0:', when='@3.0.0:', type=('build', 'run'))
- depends_on('r-leiden@0.3.1:', when='@3.1.0:', type=('build', 'run'))
- depends_on('r-rcppannoy', when='@3.1.0:', type=('build', 'run'))
- depends_on('r-uwot', when='@3.1.0:', type=('build', 'run'))
depends_on('java', when='@:2.3.0')
diff --git a/var/spack/repos/builtin/packages/r-sf/package.py b/var/spack/repos/builtin/packages/r-sf/package.py
index 76c8bbfe16..6ac15a1e0f 100644
--- a/var/spack/repos/builtin/packages/r-sf/package.py
+++ b/var/spack/repos/builtin/packages/r-sf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,26 +7,32 @@ from spack import *
class RSf(RPackage):
- """Support for simple features, a standardized way to encode spatial
- vector data. Binds to GDAL for reading and writing data, to GEOS for
- geometrical operations, and to Proj.4 for projection conversions and
- datum transformations."""
+ """Simple Features for R
+
+ Support for simple features, a standardized way to encode spatial vector
+ data. Binds to 'GDAL' for reading and writing data, to 'GEOS' for
+ geometrical operations, and to 'PROJ' for projection conversions and datum
+ transformations. Optionally uses the 's2' package for spherical geometry
+ operations on geographic coordinates."""
homepage = "https://github.com/r-spatial/sf/"
url = "https://cloud.r-project.org/src/contrib/sf_0.5-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/sf"
+ version('0.9-7', sha256='4acac2f78badf9d252da5bf377975f984927c14a56a72d9f83d285c0adadae9c')
version('0.7-7', sha256='d1780cb46a285b30c7cc41cae30af523fbc883733344e53f7291e2d045e150a4')
version('0.7-5', sha256='53ed0567f502216a116c4848f5a9262ca232810f82642df7b98e0541a2524868')
version('0.5-5', sha256='82ad31f98243b6982302fe245ee6e0d8d0546e5ff213ccc00ec3025dfec62229')
depends_on('r@3.3.0:', type=('build', 'run'))
- depends_on('r-rcpp@0.12.18:', type=('build', 'run'))
- depends_on('r-dbi@0.8:', type=('build', 'run'))
- depends_on('r-units@0.6-0:', type=('build', 'run'))
depends_on('r-classint@0.2-1:', type=('build', 'run'))
+ depends_on('r-classint@0.4-1:', when='@0.9-7:', type=('build', 'run'))
+ depends_on('r-dbi@0.8:', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-units@0.6-0:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.18:', type=('build', 'run'))
depends_on('gdal@2.0.1:')
depends_on('geos@3.4.0:')
- depends_on('proj@4.8.0:5', when='@:0.7-3')
- depends_on('proj@4.8.0:6', when='@0.7-4:')
+ depends_on('proj@4.8.0:5.999', when='@:0.7-3')
+ depends_on('proj@4.8.0:6.999', when='@0.7-4:')
+ depends_on('sqlite', when='@0.9-7')
diff --git a/var/spack/repos/builtin/packages/r-sfsmisc/package.py b/var/spack/repos/builtin/packages/r-sfsmisc/package.py
index 7cf91c64da..7456c2de03 100644
--- a/var/spack/repos/builtin/packages/r-sfsmisc/package.py
+++ b/var/spack/repos/builtin/packages/r-sfsmisc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,23 @@ from spack import *
class RSfsmisc(RPackage):
- """Useful utilities ['goodies'] from Seminar fuer Statistik
- ETH Zurich, quite a few related to graphics;
- some were ported from S-plus."""
+ """Utilities from 'Seminar fuer Statistik' ETH Zurich
+
+ Useful utilities ['goodies'] from Seminar fuer Statistik ETH Zurich, some
+ of which were ported from S-plus in the 1990s.; For graphics, have pretty
+ (Log-scale) axes, an enhanced Tukey-Anscombe plot, combining histogram and
+ boxplot, 2d-residual plots, a 'tachoPlot()', pretty arrows, etc.; For
+ robustness, have a robust F test and robust range().; For system support,
+ notably on Linux, provides 'Sys.*()' functions with more access to system
+ and CPU information.; Finally, miscellaneous utilities such as simple
+ efficient prime numbers, integer codes, Duplicated(), toLatex.numeric() and
+ is.whole()."""
homepage = "https://cloud.r-project.org/package=sfsmisc"
url = "https://cloud.r-project.org/src/contrib/sfsmisc_1.1-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/sfsmisc"
+ version('1.1-8', sha256='b6556af5f807f0769489657a676422cb0734f3d6c918543d2989ef17febc1fa5')
version('1.1-4', sha256='44b6a9c859922e86b7182e54eb781d3264f3819f310343518ebc66f54f305c7d')
version('1.1-3', sha256='58eff7d4a9c79212321858efe98d2a6153630e263ff0218a31d5e104b8b545f8')
version('1.1-0', sha256='7f430cf3ebb95bac806fbf093fb1e2112deba47416a93be8d5d1064b76bc0015')
diff --git a/var/spack/repos/builtin/packages/r-shadowtext/package.py b/var/spack/repos/builtin/packages/r-shadowtext/package.py
new file mode 100644
index 0000000000..d93ed78a7e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-shadowtext/package.py
@@ -0,0 +1,23 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RShadowtext(RPackage):
+ """Shadow Text Grob and Layer
+
+ Implement shadowtextGrob() for 'grid' and geom_shadowtext() layer for
+ 'ggplot2'. These functions create/draw text grob with background shadow."""
+
+ homepage = "https://github.com/GuangchuangYu/shadowtext/"
+ url = "https://cloud.r-project.org/src/contrib/shadowtext_0.0.7.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/shadowtext"
+
+ version('0.0.7', sha256='6e32b1dfd3d4816803848b876666185258b888286ec3d3e8500499ec3eba31e8')
+
+ depends_on('r@3.4.0:', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-scales', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-shape/package.py b/var/spack/repos/builtin/packages/r-shape/package.py
index 26142b242b..f84581f269 100644
--- a/var/spack/repos/builtin/packages/r-shape/package.py
+++ b/var/spack/repos/builtin/packages/r-shape/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RShape(RPackage):
- """Functions for plotting graphical shapes such as ellipses, circles,
- cylinders, arrows, ..."""
+ """Functions for Plotting Graphical Shapes, Colors
+
+ Functions for plotting graphical shapes such as ellipses, circles,
+ cylinders, arrows, ..."""
homepage = "https://cloud.r-project.org/package=shape"
url = "https://cloud.r-project.org/src/contrib/shape_1.4.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/shape"
+ version('1.4.5', sha256='094a79b8f42226189227fd7af71868e42106caa25a4d7f80a26977e8bc84189f')
version('1.4.4', sha256='f4cb1b7d7c84cf08d2fa97f712ea7eb53ed5fa16e5c7293b820bceabea984d41')
version('1.4.3', sha256='720f6ca9c70a39a3900af9d074bff864b18ac58013b21d48b779047481b93ded')
version('1.4.2', sha256='c6c08ba9cc2e90e5c9d3d5223529b57061a041f637886ad7665b9fa27465637a')
diff --git a/var/spack/repos/builtin/packages/r-shiny/package.py b/var/spack/repos/builtin/packages/r-shiny/package.py
index f2774ecefa..8f83e78f13 100644
--- a/var/spack/repos/builtin/packages/r-shiny/package.py
+++ b/var/spack/repos/builtin/packages/r-shiny/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RShiny(RPackage):
- """Makes it incredibly easy to build interactive web applications with R.
+ """Web Application Framework for R
+
+ Makes it incredibly easy to build interactive web applications with R.
Automatic "reactive" binding between inputs and outputs and extensive
pre-built widgets make it possible to build beautiful, responsive, and
powerful applications with minimal effort."""
@@ -16,20 +18,30 @@ class RShiny(RPackage):
url = "https://cloud.r-project.org/src/contrib/shiny_1.0.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/shiny"
+ version('1.5.0', sha256='23cb8bfa448389c256efdab75e7e8d3ff90e5de66264c4ab02df322fb4298e9e')
version('1.3.2', sha256='28b851ae6c196ca845f6e815c1379247595ac123a4faa10a16533d1a9ce0c24f')
version('1.0.5', sha256='20e25f3f72f3608a2151663f7836f2e0c6da32683a555d7541063ae7a935fa42')
version('0.13.2', sha256='0fe7e952f468242d7c43ae49afcc764788f7f2fd5436d18c3d20a80db7296231')
depends_on('r@3.0.2:', type=('build', 'run'))
depends_on('r-httpuv@1.5.0:', type=('build', 'run'))
+ depends_on('r-httpuv@1.5.2:', when='@1.5.0:', type=('build', 'run'))
depends_on('r-mime@0.3:', type=('build', 'run'))
depends_on('r-jsonlite@0.9.16:', type=('build', 'run'))
depends_on('r-xtable', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
depends_on('r-htmltools@0.3.6:', type=('build', 'run'))
+ depends_on('r-htmltools@0.4.0.9003:', when='@1.5.0:', type=('build', 'run'))
depends_on('r-r6@2.0:', type=('build', 'run'))
depends_on('r-sourcetools', type=('build', 'run'))
depends_on('r-later@0.7.2:', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-later@1.0.0:', when='@1.5.0:', type=('build', 'run'))
depends_on('r-promises@1.0.1:', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-promises@1.1.0:', when='@1.5.0:', type=('build', 'run'))
depends_on('r-crayon', when='@1.1.0:', type=('build', 'run'))
depends_on('r-rlang', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-rlang@0.4.0:', when='@1.5.0:', type=('build', 'run'))
+ depends_on('r-fastmap@1.0.0:', when='@1.5.0:', type=('build', 'run'))
+ depends_on('r-withr', when='@1.5.0:', type=('build', 'run'))
+ depends_on('r-commonmark@1.7:', when='@1.5.0:', type=('build', 'run'))
+ depends_on('r-glue@1.3.2:', when='@1.5.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-shinydashboard/package.py b/var/spack/repos/builtin/packages/r-shinydashboard/package.py
index ad63f2ade0..87f7a9e8da 100644
--- a/var/spack/repos/builtin/packages/r-shinydashboard/package.py
+++ b/var/spack/repos/builtin/packages/r-shinydashboard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-shinyfiles/package.py b/var/spack/repos/builtin/packages/r-shinyfiles/package.py
index 7c969cd4e4..cf6161b743 100644
--- a/var/spack/repos/builtin/packages/r-shinyfiles/package.py
+++ b/var/spack/repos/builtin/packages/r-shinyfiles/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RShinyfiles(RPackage):
- """Provides functionality for client-side navigation of the server side
+ """A Server-Side File System Viewer for Shiny
+
+ Provides functionality for client-side navigation of the server side
file system in shiny apps. In case the app is running locally this gives
the user direct access to the file system without the need to "download"
files to a temporary location. Both file and folder selection as well as
@@ -17,6 +19,7 @@ class RShinyfiles(RPackage):
url = "https://cloud.r-project.org/src/contrib/shinyFiles_0.7.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/shinyFiles"
+ version('0.9.0', sha256='51ad2aad61bcae22fb2c48a79d02bf6f86e36ffc49a3b64e26a76d133a955167')
version('0.7.3', sha256='710c8a6191aaf336379bc748daff1160d0d2858e2aee0d98e2ad48e7121d5a05')
depends_on('r-htmltools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-shinyjs/package.py b/var/spack/repos/builtin/packages/r-shinyjs/package.py
new file mode 100644
index 0000000000..2d76eb3a9d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-shinyjs/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RShinyjs(RPackage):
+ """Easily Improve the User Experience of Your Shiny Apps in Seconds
+
+ Perform common useful JavaScript operations in Shiny apps that will greatly
+ improve your apps without having to know any JavaScript. Examples include:
+ hiding an element, disabling an input, resetting an input back to its
+ original value, delaying code execution by a few seconds, and many more
+ useful functions for both the end user and the developer. 'shinyjs' can
+ also be used to easily call your own custom JavaScript functions from R."""
+
+ homepage = "https://deanattali.com/shinyjs/"
+ cran = "shinyjs"
+
+ version('2.0.0', sha256='c2cdd9fab41f6b46bb41b288cd9b3fb3a7fe9627b664e3a58a0cb5dd4c19f8ff')
+
+ depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('r-digest@0.6.8:', type=('build', 'run'))
+ depends_on('r-htmltools@0.2.9:', type=('build', 'run'))
+ depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-shiny@1.0.0:', type=('build', 'run'))
+ depends_on('pandoc', type='build')
diff --git a/var/spack/repos/builtin/packages/r-shinystan/package.py b/var/spack/repos/builtin/packages/r-shinystan/package.py
new file mode 100644
index 0000000000..90fec54a4e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-shinystan/package.py
@@ -0,0 +1,42 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RShinystan(RPackage):
+ """Interactive Visual and Numerical Diagnostics and Posterior Analysis for
+ Bayesian Models:
+
+ A graphical user interface for interactive Markov chain Monte Carlo (MCMC)
+ diagnostics and plots and tables helpful for analyzing a posterior sample.
+ The interface is powered by the 'Shiny' web application framework from
+ 'RStudio' and works with the output of MCMC programs written in any
+ programming language (and has extended functionality for 'Stan' models fit
+ using the 'rstan' and 'rstanarm' packages)."""
+
+ homepage = "http://mc-stan.org/"
+ cran = "shinystan"
+
+ version('2.5.0', sha256='45f9c552a31035c5de8658bb9e5d72da7ec1f88fbddb520d15fe701c677154a1')
+
+ depends_on('r@3.1.0:', type=('build', 'run'))
+ depends_on('r-shiny@1.0.3:', type=('build', 'run'))
+ depends_on('r-bayesplot@1.5.0:', type=('build', 'run'))
+ depends_on('r-colourpicker', type=('build', 'run'))
+ depends_on('r-dt@0.2:', type=('build', 'run'))
+ depends_on('r-dygraphs@1.1.1.2:', type=('build', 'run'))
+ depends_on('r-ggplot2@2.1.1:', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-gtools', type=('build', 'run'))
+ depends_on('r-markdown@0.7.4:', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-rsconnect@0.4.2:', type=('build', 'run'))
+ depends_on('r-rstan@2.17.1:', type=('build', 'run'))
+ depends_on('r-shinyjs@0.6.0:', type=('build', 'run'))
+ depends_on('r-shinythemes@1.0.1:', type=('build', 'run'))
+ depends_on('r-threejs@0.2.1:', type=('build', 'run'))
+ depends_on('r-xtable', type=('build', 'run'))
+ depends_on('r-xts@0.9-7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-shinythemes/package.py b/var/spack/repos/builtin/packages/r-shinythemes/package.py
new file mode 100644
index 0000000000..c252021809
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-shinythemes/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RShinythemes(RPackage):
+ """Themes for Shiny:
+
+ Themes for use with Shiny. Includes several Bootstrap themes from
+ <https://bootswatch.com/>, which are packaged for use with Shiny
+ applications."""
+
+ homepage = "https://rstudio.github.io/shinythemes/"
+ cran = "shinythemes"
+
+ version('1.2.0', sha256='37d68569ce838c7da9f0ea7e2b162ecf38fba2ae448a4888b6dd29c4bb5b2963')
+
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-shiny@0.11:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-shortread/package.py b/var/spack/repos/builtin/packages/r-shortread/package.py
index 22ae509299..b67583c9d4 100644
--- a/var/spack/repos/builtin/packages/r-shortread/package.py
+++ b/var/spack/repos/builtin/packages/r-shortread/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RShortread(RPackage):
- """FASTQ input and manipulation.
+ """FASTQ input and manipulation
This package implements sampling, iteration, and input of FASTQ files.
The package includes functions for filtering and trimming reads, and for
@@ -19,6 +19,7 @@ class RShortread(RPackage):
homepage = "https://bioconductor.org/packages/ShortRead"
git = "https://git.bioconductor.org/packages/ShortRead.git"
+ version('1.48.0', commit='ba44cd2517bc0e6f46d2cfcfce393f86eec814d0')
version('1.42.0', commit='daa2576a48278460caf87f42c022c796652f4908')
version('1.40.0', commit='0cbe4b62b0be4c5f2e2670da17493423446e008f')
version('1.38.0', commit='e9498f04b7b4bf0212bbb10ec7e3de2d7699f4bf')
@@ -26,27 +27,26 @@ class RShortread(RPackage):
version('1.34.2', commit='25daac63b301df66a8ef6e98cc2977522c6786cd')
depends_on('r-biocgenerics@0.22.1:', type=('build', 'run'))
+ depends_on('r-biocgenerics@0.23.3:', when='@1.36.1:', type=('build', 'run'))
depends_on('r-biocparallel', type=('build', 'run'))
depends_on('r-biostrings@2.37.1:', type=('build', 'run'))
+ depends_on('r-biostrings@2.47.6:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-rsamtools@1.21.4:', type=('build', 'run'))
+ depends_on('r-rsamtools@1.31.2:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-genomicalignments@1.5.4:', type=('build', 'run'))
+ depends_on('r-genomicalignments@1.15.6:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-s4vectors@0.13.8:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.25:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-iranges@2.3.7:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.12:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.1.19:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.15.2:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-genomicranges@1.21.6:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.8:', when='@1.38.0:', type=('build', 'run'))
depends_on('r-hwriter', type=('build', 'run'))
depends_on('r-zlibbioc', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-latticeextra', type=('build', 'run'))
depends_on('r-xvector', type=('build', 'run'))
-
- depends_on('r-biocgenerics@0.23.3:', when='@1.36.1:', type=('build', 'run'))
-
- depends_on('r-biostrings@2.47.6:', when='@1.38.0:', type=('build', 'run'))
- depends_on('r-rsamtools@1.31.2:', when='@1.38.0:', type=('build', 'run'))
- depends_on('r-genomicalignments@1.15.6:', when='@1.38.0:', type=('build', 'run'))
- depends_on('r-s4vectors@0.17.25:', when='@1.38.0:', type=('build', 'run'))
- depends_on('r-iranges@2.13.12:', when='@1.38.0:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.15.2:', when='@1.38.0:', type=('build', 'run'))
- depends_on('r-genomicranges@1.31.8:', when='@1.38.0:', type=('build', 'run'))
+ depends_on('r-rhtslib', when='@1.48.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-siggenes/package.py b/var/spack/repos/builtin/packages/r-siggenes/package.py
index 395a07bdb6..003e190b9f 100644
--- a/var/spack/repos/builtin/packages/r-siggenes/package.py
+++ b/var/spack/repos/builtin/packages/r-siggenes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSiggenes(RPackage):
- """Multiple Testing using SAM and Efron's Empirical Bayes Approaches.
+ """Multiple Testing using SAM and Efron's Empirical Bayes Approaches
Identification of differentially expressed genes and estimation of the
False Discovery Rate (FDR) using both the Significance Analysis of
@@ -17,6 +17,7 @@ class RSiggenes(RPackage):
homepage = "https://bioconductor.org/packages/siggenes"
git = "https://git.bioconductor.org/packages/siggenes.git"
+ version('1.64.0', commit='3b528d37c16fc41bbc5c98165f606394313aa050')
version('1.58.0', commit='69500158d69942cf7c62f583830933cf8baf89a1')
version('1.56.0', commit='3e929feaa76311be07ff51ad807e657b0b521f6f')
version('1.54.0', commit='1630e42652192e3e4e48e9e78e53665a120cfc7f')
@@ -25,5 +26,4 @@ class RSiggenes(RPackage):
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-multtest', type=('build', 'run'))
-
depends_on('r-scrime@1.2.5:', when='@1.58.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-simpleaffy/package.py b/var/spack/repos/builtin/packages/r-simpleaffy/package.py
index 489318cde0..5910be33b9 100644
--- a/var/spack/repos/builtin/packages/r-simpleaffy/package.py
+++ b/var/spack/repos/builtin/packages/r-simpleaffy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSimpleaffy(RPackage):
- """Very simple high level analysis of Affymetrix data.
+ """Very simple high level analysis of Affymetrix data
Provides high level functions for reading Affy .CEL files, phenotypic
data, and then computing simple things with it, such as t-tests, fold
@@ -18,6 +18,7 @@ class RSimpleaffy(RPackage):
homepage = "https://bioconductor.org/packages/simpleaffy"
git = "https://git.bioconductor.org/packages/simpleaffy.git"
+ version('2.66.0', commit='902db69e4ea4b6d306f0c744d3be600f1418ebc9')
version('2.60.0', commit='b32b5e7d5c65e43c10f98ab8684a1086a06d04f9')
version('2.58.0', commit='70cf1199bad620f60eaa288279632110bb571200')
version('2.56.0', commit='a05d768180b8713ad9e1dc46d491b7ef389b299d')
diff --git a/var/spack/repos/builtin/packages/r-singlecellexperiment/package.py b/var/spack/repos/builtin/packages/r-singlecellexperiment/package.py
index c6b4665352..67851cf21a 100644
--- a/var/spack/repos/builtin/packages/r-singlecellexperiment/package.py
+++ b/var/spack/repos/builtin/packages/r-singlecellexperiment/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSinglecellexperiment(RPackage):
- """S4 Classes for Single Cell Data.
+ """S4 Classes for Single Cell Data
Defines a S4 class for storing data from single-cell experiments. This
includes specialized methods to store and retrieve spike-in information,
@@ -17,14 +17,14 @@ class RSinglecellexperiment(RPackage):
homepage = "https://bioconductor.org/packages/SingleCellExperiment"
git = "https://git.bioconductor.org/packages/SingleCellExperiment.git"
+ version('1.12.0', commit='66063b74c8b0bd0fd1277c7ad425ad11823ab356')
version('1.6.0', commit='baa51d77a8dacd2a22e7293095a8cffaaa3293b4')
version('1.4.1', commit='b1efcb338e9176ae6829bb897957aa37e74d4870')
version('1.2.0', commit='fe512259da79e0c660b322b5387e9bb16f2e6321')
version('1.0.0', commit='545e974aa7ca7855e039bf9e3030290cd71d9031')
depends_on('r@3.4:', type=('build', 'run'))
+ depends_on('r@3.5:', when='@1.2.0:1.6.0', type=('build', 'run'))
depends_on('r-summarizedexperiment', type=('build', 'run'))
depends_on('r-s4vectors', type=('build', 'run'))
depends_on('r-biocgenerics', type=('build', 'run'))
-
- depends_on('r@3.5:', when='@1.2.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sitmo/package.py b/var/spack/repos/builtin/packages/r-sitmo/package.py
index fd7c1df3cc..5d18ed06f0 100644
--- a/var/spack/repos/builtin/packages/r-sitmo/package.py
+++ b/var/spack/repos/builtin/packages/r-sitmo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-sm/package.py b/var/spack/repos/builtin/packages/r-sm/package.py
index ff2e4cb335..e29cb9a398 100644
--- a/var/spack/repos/builtin/packages/r-sm/package.py
+++ b/var/spack/repos/builtin/packages/r-sm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,4 +18,5 @@ class RSm(RPackage):
version('2.2-5.6', sha256='b890cd7ebe8ed711ab4a3792c204c4ecbe9e6ca1fd5bbc3925eba5833a839c30')
version('2.2-5.5', sha256='43e212a14c364b98b10018b56fe0a619ccffe4bde1294e6c45b3eafe7caf82e7')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-smoof/package.py b/var/spack/repos/builtin/packages/r-smoof/package.py
index 40979fa30b..403f1cf0b9 100644
--- a/var/spack/repos/builtin/packages/r-smoof/package.py
+++ b/var/spack/repos/builtin/packages/r-smoof/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,22 +7,26 @@ from spack import *
class RSmoof(RPackage):
- """Provides generators for a high number of both single- and
- multi- objective test functions which are frequently used for the
- benchmarking of (numerical) optimization algorithms. Moreover, it offers
- a set of convenient functions to generate, plot and work with objective
- functions."""
+ """Single and Multi-Objective Optimization Test Functions
+
+ Provides generators for a high number of both single- and multi- objective
+ test functions which are frequently used for the benchmarking of
+ (numerical) optimization algorithms. Moreover, it offers a set of
+ convenient functions to generate, plot and work with objective
+ functions."""
homepage = "http://github.com/jakobbossek/smoof"
url = "https://cloud.r-project.org/src/contrib/smoof_1.5.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/smoof"
+ version('1.6.0.2', sha256='d82dba9702eade00afb84c2c12167de6cec790be7d23ac227f8fe705bdcefc93')
version('1.5.1', sha256='cfb6f6460e9593351428656b225b5ba3867a216d35a05f2babdb20db6ba35306')
version('1.5', sha256='9b73ad5bfc8e1120c9651539ea52b1468f316cc7fc5fef8afd6d357adf01504c')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-paramhelpers@1.8:', type=('build', 'run'))
- depends_on('r-bbmisc@1.6:', type=('build', 'run'))
depends_on('r-checkmate@1.1:', type=('build', 'run'))
+ depends_on('r-bbmisc@1.6:', type=('build', 'run'))
depends_on('r-ggplot2@2.2.1:', type=('build', 'run'))
depends_on('r-rcolorbrewer', type=('build', 'run'))
depends_on('r-plot3d', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sn/package.py b/var/spack/repos/builtin/packages/r-sn/package.py
index 0ba4183ea0..9de39cbf9d 100644
--- a/var/spack/repos/builtin/packages/r-sn/package.py
+++ b/var/spack/repos/builtin/packages/r-sn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RSn(RPackage):
- """Build and manipulate probability distributions of the skew-normal
+ """The Skew-Normal and Related Distributions Such as the Skew-t
+
+ Build and manipulate probability distributions of the skew-normal
family and some related ones, notably the skew-t family, and provide
related statistical methods for data fitting and diagnostics, in the
univariate and the multivariate case."""
@@ -16,6 +18,7 @@ class RSn(RPackage):
url = "https://cloud.r-project.org/src/contrib/sn_1.5-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/sn"
+ version('1.6-2', sha256='2fd4730c315efc48958b47990ddb0cbc6ce075f7a27255944a292fb4fc593d9d')
version('1.5-4', sha256='46677ebc109263a68f62b5cf53ec59916cda490e5bc5bbb08276757a677f8674')
version('1.5-3', sha256='cc21b97ddd674c9b1296260f2a72ffb085cdcb877c8332f0bfa96ff028517183')
version('1.5-0', sha256='0164f7cffbf9e2a0f03f9bed3b96388b08d8a8ca476bbb686aa88be6b4ec073a')
@@ -27,3 +30,4 @@ class RSn(RPackage):
depends_on('r@2.15.3:', type=('build', 'run'))
depends_on('r-mnormt@1.5-4:', type=('build', 'run'))
depends_on('r-numderiv', type=('build', 'run'))
+ depends_on('r-quantreg', when='@1.6-2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-snakecase/package.py b/var/spack/repos/builtin/packages/r-snakecase/package.py
index 55c3592a2b..1dbf906113 100644
--- a/var/spack/repos/builtin/packages/r-snakecase/package.py
+++ b/var/spack/repos/builtin/packages/r-snakecase/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-snow/package.py b/var/spack/repos/builtin/packages/r-snow/package.py
index 9d07e4943b..6386d2b4ef 100644
--- a/var/spack/repos/builtin/packages/r-snow/package.py
+++ b/var/spack/repos/builtin/packages/r-snow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-snowfall/package.py b/var/spack/repos/builtin/packages/r-snowfall/package.py
index 57686af15e..6ee93158f0 100644
--- a/var/spack/repos/builtin/packages/r-snowfall/package.py
+++ b/var/spack/repos/builtin/packages/r-snowfall/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-snprelate/package.py b/var/spack/repos/builtin/packages/r-snprelate/package.py
index 9877ffe52b..e59bfe0ca8 100644
--- a/var/spack/repos/builtin/packages/r-snprelate/package.py
+++ b/var/spack/repos/builtin/packages/r-snprelate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RSnprelate(RPackage):
"""Parallel Computing Toolset for Relatedness and Principal Component
- Analysis of SNP Data.
+ Analysis of SNP Data
Genome-wide association studies (GWAS) are widely used to investigate
the genetic basis of diseases and traits, but they pose many
@@ -30,6 +30,7 @@ class RSnprelate(RPackage):
homepage = "https://bioconductor.org/packages/SNPRelate"
git = "https://git.bioconductor.org/packages/SNPRelate.git"
+ version('1.24.0', commit='419b13b761ea39a8b1b9bc73097fb0359c59f1c2')
version('1.18.1', commit='81c581bf76392efdc8ba237ca2e42ca1dba788ca')
version('1.16.0', commit='0e38e8df4af87dff6c27a23af2867661998c0d85')
version('1.14.0', commit='9501cbfc411aa320e58654a865fda2e9077977af')
diff --git a/var/spack/repos/builtin/packages/r-snpstats/package.py b/var/spack/repos/builtin/packages/r-snpstats/package.py
index 2705246582..dde1f1bc30 100644
--- a/var/spack/repos/builtin/packages/r-snpstats/package.py
+++ b/var/spack/repos/builtin/packages/r-snpstats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSnpstats(RPackage):
- """SnpMatrix and XSnpMatrix classes and methods.
+ """SnpMatrix and XSnpMatrix classes and methods
Classes and statistical methods for large SNP association studies. This
extends the earlier snpMatrix package, allowing for uncertainty in
@@ -16,6 +16,7 @@ class RSnpstats(RPackage):
homepage = "https://bioconductor.org/packages/snpStats"
git = "https://git.bioconductor.org/packages/snpStats.git"
+ version('1.40.0', commit='5fcac6f3b4bb6f45c19dff8f3089b693b74a56ce')
version('1.34.0', commit='e31cdfb18a9e12d70d6a3e8e6fbf7cf8faa3ea5b')
version('1.32.0', commit='7c31158183b4e39da6dc30c7da275acc36b2e32f')
version('1.30.0', commit='0dc1e4246f015feaf2579d60268b10ab5149ce09')
diff --git a/var/spack/repos/builtin/packages/r-som/package.py b/var/spack/repos/builtin/packages/r-som/package.py
index eed2ca8fc8..8c27f46d9b 100644
--- a/var/spack/repos/builtin/packages/r-som/package.py
+++ b/var/spack/repos/builtin/packages/r-som/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-somaticsignatures/package.py b/var/spack/repos/builtin/packages/r-somaticsignatures/package.py
index a955110c1d..fb01e47dc7 100644
--- a/var/spack/repos/builtin/packages/r-somaticsignatures/package.py
+++ b/var/spack/repos/builtin/packages/r-somaticsignatures/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSomaticsignatures(RPackage):
- """Somatic Signatures.
+ """Somatic Signatures
The SomaticSignatures package identifies mutational signatures of single
nucleotide variants (SNVs). It provides a infrastructure related to the
@@ -17,6 +17,7 @@ class RSomaticsignatures(RPackage):
homepage = "https://bioconductor.org/packages/SomaticSignatures"
git = "https://git.bioconductor.org/packages/SomaticSignatures.git"
+ version('2.26.0', commit='9d4bed6e118ac76755ffb7abd058b09bac58a9d7')
version('2.20.0', commit='dbedc30d92b600b3a17de596ebe38d15982c70c6')
version('2.18.0', commit='facccd67eee5202fcbe6ad32e667546546e7ccff')
version('2.16.0', commit='4ae348d9fa096c0ec307df95149991edf6044977')
@@ -34,6 +35,7 @@ class RSomaticsignatures(RPackage):
depends_on('r-ggplot2', type=('build', 'run'))
depends_on('r-ggbio', type=('build', 'run'))
depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-nmf', when='@2.26.0:', type=('build', 'run'))
depends_on('r-pcamethods', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-proxy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sourcetools/package.py b/var/spack/repos/builtin/packages/r-sourcetools/package.py
index 22a8c75836..29f584e597 100644
--- a/var/spack/repos/builtin/packages/r-sourcetools/package.py
+++ b/var/spack/repos/builtin/packages/r-sourcetools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-sp/package.py b/var/spack/repos/builtin/packages/r-sp/package.py
index dbcb6e8dac..7c2b1cd772 100644
--- a/var/spack/repos/builtin/packages/r-sp/package.py
+++ b/var/spack/repos/builtin/packages/r-sp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RSp(RPackage):
- """Classes and methods for spatial data; the classes document where the
+ """Classes and Methods for Spatial Data
+
+ Classes and methods for spatial data; the classes document where the
spatial location information resides, for 2D or 3D data. Utility functions
are provided, e.g. for plotting data as maps, spatial selection, as well as
methods for retrieving coordinates, for subsetting, print, summary, etc."""
@@ -16,6 +18,7 @@ class RSp(RPackage):
url = "https://cloud.r-project.org/src/contrib/sp_1.2-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/sp"
+ version('1.4-5', sha256='6beeb216d540475cdead5f2c72d6c7ee400fe2423c1882d72cf57f6df58f09da')
version('1.3-1', sha256='57988b53ba8acc35f3912d62feba4b929a0f757c6b54080c623c5d805e0cb59f')
version('1.2-7', sha256='6d60e03e1abd30a7d4afe547d157ce3dd7a8c166fc5e407fd6d62ae99ff30460')
version('1.2-3', sha256='58b3a9e395ca664ee61b20b480be4eb61576daca44c3d3f6f9a943bb0155879a')
diff --git a/var/spack/repos/builtin/packages/r-spacetime/package.py b/var/spack/repos/builtin/packages/r-spacetime/package.py
index e7fe2eefcf..ed5298a8eb 100644
--- a/var/spack/repos/builtin/packages/r-spacetime/package.py
+++ b/var/spack/repos/builtin/packages/r-spacetime/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,25 @@ from spack import *
class RSpacetime(RPackage):
- """spacetime: Classes and Methods for Spatio-Temporal Data"""
+ """Classes and Methods for Spatio-Temporal Data
+
+ Classes and methods for spatio-temporal data, including space-time regular
+ lattices, sparse lattices, irregular data, and trajectories; utility
+ functions for plotting data as map sequences (lattice or animation) or
+ multiple time series; methods for spatial and temporal selection and
+ subsetting, as well as for spatial/temporal/spatio-temporal matching or
+ aggregation, retrieving coordinates, print, summary, etc."""
homepage = "http://github.com/edzer/spacetime"
url = "https://cloud.r-project.org/src/contrib/spacetime_1.2-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spacetime"
+ version('1.2-3', sha256='ca7c0b962d5da0741f6dd85b271d693598756e0eeeb364ada828dbb6d1b9b25b')
version('1.2-2', sha256='1e9d3f92e5c4614a69c82a58bf0b5c829b4ed262bf1250bef943ae286056ea2d')
depends_on('r@3.0.0:', type=('build', 'run'))
- depends_on('r-intervals', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-sp@1.1-0:', type=('build', 'run'))
- depends_on('r-xts@0.8-8:', type=('build', 'run'))
depends_on('r-zoo@1.7-9:', type=('build', 'run'))
+ depends_on('r-xts@0.8-8:', type=('build', 'run'))
+ depends_on('r-intervals', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spades-addins/package.py b/var/spack/repos/builtin/packages/r-spades-addins/package.py
new file mode 100644
index 0000000000..6bb7fc6109
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-spades-addins/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RSpadesAddins(RPackage):
+ """Development Tools for 'SpaDES' and 'SpaDES' Modules
+
+ Provides 'RStudio' addins for 'SpaDES' packages and 'SpaDES' module
+ development. See '?SpaDES.addins' for an overview of the tools provided."""
+
+ homepage = "http://spades-addins.predictiveecology.org/"
+ url = "https://cloud.r-project.org/src/contrib/SpaDES.addins_0.1.2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/SpaDES.addins"
+
+ maintainers = ['dorton21']
+
+ version('0.1.2', sha256='0a16bd9423797a4b4ed66a5e669cdd7f6984a3f30aa1aadc078678ee2622367c')
+
+ depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r-devtools', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-miniui@0.1.1:', type=('build', 'run'))
+ depends_on('r-reproducible', type=('build', 'run'))
+ depends_on('r-rstudioapi@0.5:', type=('build', 'run'))
+ depends_on('r-shiny@0.13:', type=('build', 'run'))
+ depends_on('r-spades-core', type=('build', 'run'))
+ depends_on('r-stringi@1.1.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spades-core/package.py b/var/spack/repos/builtin/packages/r-spades-core/package.py
new file mode 100644
index 0000000000..9d2da0dc23
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-spades-core/package.py
@@ -0,0 +1,39 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RSpadesCore(RPackage):
+ """Utilities for Developing and Running Spatially Explicit Discrete Event Models
+
+ Provides the core framework for a discrete event system (DES) to implement
+ acomplete data-to-decisions, reproducible workflow. The core DES components
+ facilitate modularity, and easily enable the user to include additional
+ functionality by running user-built modules. Includes conditional scheduling,
+ restart after interruption, packaging of reusable modules, tools for
+ developing arbitrary automated workflows, automated interweaving of modules
+ of different temporal resolution, and tools for visualizing and understanding
+ the DES project."""
+
+ homepage = "https://spades-core.predictiveecology.org/"
+ url = "https://cloud.r-project.org/src/contrib/SpaDES.core_1.0.5.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/SpaDES.core"
+
+ maintainers = ['dorton21']
+
+ version('1.0.5', sha256='c8b18cb5f932ea57f3cb3c7f2a302cbe7e06c875da7cd3928300d6003602f0a6')
+
+ depends_on('r@3.6:', type=('build', 'run'))
+ depends_on('r-quickplot@0.1.4:', type=('build', 'run'))
+ depends_on('r-reproducible@1.2.1.9007:', type=('build', 'run'))
+ depends_on('r-crayon', type=('build', 'run'))
+ depends_on('r-data-table@1.10.4:', type=('build', 'run'))
+ depends_on('r-fastdigest', type=('build', 'run'))
+ depends_on('r-igraph@1.0.1:', type=('build', 'run'))
+ depends_on('r-qs@0.21.1:', type=('build', 'run'))
+ depends_on('r-raster@2.5-8:', type=('build', 'run'))
+ depends_on('r-require@0.0.7:', type=('build', 'run'))
+ depends_on('r-whisker', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spades-tools/package.py b/var/spack/repos/builtin/packages/r-spades-tools/package.py
new file mode 100644
index 0000000000..47369e9bd7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-spades-tools/package.py
@@ -0,0 +1,39 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RSpadesTools(RPackage):
+ """Tools for Spatially Explicit Discrete Event Simulation (SpaDES) Models
+
+ Provides GIS and map utilities, plus additional modeling tools for developing
+ cellular automata, dynamic raster models, and agent based models in 'SpaDES'.
+ Included are various methods for spatial spreading, spatial agents, GIS
+ operations, random map generation, and others. See '?SpaDES.tools' for an
+ categorized overview of these additional tools."""
+
+ homepage = "https://spades-tools.predictiveecology.org/"
+ url = "https://cloud.r-project.org/src/contrib/SpaDES.tools_0.3.6.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/SpaDES.tools"
+
+ maintainers = ['dorton21']
+
+ version('0.3.6', sha256='661f8ee792874e7447be78103775b63f18ec69e773a7b275dd977adb406dd3e5')
+
+ depends_on('r@3.5.0:', type=('build', 'run'))
+ depends_on('r-backports', type=('build', 'run'))
+ depends_on('r-checkmate@1.8.2:', type=('build', 'run'))
+ depends_on('r-circstats@0.2-4:', type=('build', 'run'))
+ depends_on('r-data-table@1.10.4:', type=('build', 'run'))
+ depends_on('r-fastmatch@1.1-0:', type=('build', 'run'))
+ depends_on('r-fpcompare@0.2.1:', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-quickplot', type=('build', 'run'))
+ depends_on('r-raster@2.5-8:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.12:', type=('build', 'run'))
+ depends_on('r-reproducible@0.2.0:', type=('build', 'run'))
+ depends_on('r-rgeos', type=('build', 'run'))
+ depends_on('r-sp@1.2-4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spades/package.py b/var/spack/repos/builtin/packages/r-spades/package.py
new file mode 100644
index 0000000000..0d498a127a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-spades/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RSpades(RPackage):
+ """Develop and Run Spatially Explicit Discrete Event Simulation Models
+
+ Metapackage for implementing a variety of event-based models, with a
+ focus on spatially explicit models. These include raster-based,
+ event-based, and agent-based models."""
+
+ homepage = "http://spades.predictiveecology.org/"
+ url = "https://cloud.r-project.org/src/contrib/SpaDES_2.0.6.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/SpaDES"
+
+ maintainers = ['dorton21']
+
+ version('2.0.6', sha256='0fa59d1737c67abeb04eae894939bc4700f92d6c2cc2ec3489b4650720ede5a3')
+
+ depends_on('r@3.6:', type=('build', 'run'))
+ depends_on('r-quickplot', type=('build', 'run'))
+ depends_on('r-reproducible@1.2.1.9007:', type=('build', 'run'))
+ depends_on('r-spades-addins', type=('build', 'run'))
+ depends_on('r-spades-core@1.0.4:', type=('build', 'run'))
+ depends_on('r-spades-tools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spam/package.py b/var/spack/repos/builtin/packages/r-spam/package.py
index 0d5544124b..d7c3ffac83 100644
--- a/var/spack/repos/builtin/packages/r-spam/package.py
+++ b/var/spack/repos/builtin/packages/r-spam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,21 @@ from spack import *
class RSpam(RPackage):
- """spam: SPArse Matrix"""
+ """SPArse Matrix
+
+ Set of functions for sparse matrix algebra. Differences with other sparse
+ matrix packages are: (1) we only support (essentially) one sparse matrix
+ format, (2) based on transparent and simple structure(s), (3) tailored for
+ MCMC calculations within G(M)RF. (4) and it is fast and scalable (with the
+ extension package spam64). Documentation about 'spam' is provided by
+ vignettes included in this package, see also Furrer and Sain (2010)
+ <doi:10.18637/jss.v036.i10>; see 'citation("spam")' for details."""
homepage = "https://www.math.uzh.ch/pages/spam/"
url = "https://cloud.r-project.org/src/contrib/spam_2.3-0.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spam"
+ version('2.6-0', sha256='638fdd658e94f7544b46f6b6568b20a9f390bcd703aff572a3a5249fef66be5c')
version('2.3-0.2', sha256='848fa95c0a71ac82af6344539af7b1c33563c687f06ead42851a68b621fff533')
depends_on('r@3.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sparsem/package.py b/var/spack/repos/builtin/packages/r-sparsem/package.py
index 18db3c27d7..bd93f48ced 100644
--- a/var/spack/repos/builtin/packages/r-sparsem/package.py
+++ b/var/spack/repos/builtin/packages/r-sparsem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,17 @@ from spack import *
class RSparsem(RPackage):
- """Some basic linear algebra functionality for sparse matrices is provided:
- including Cholesky decomposition and backsolving as well as standard R
- subsetting and Kronecker products."""
+ """Sparse Linear Algebra
+
+ Some basic linear algebra functionality for sparse matrices is provided:
+ including Cholesky decomposition and backsolving as well as standard R
+ subsetting and Kronecker products."""
homepage = "http://www.econ.uiuc.edu/~roger/research/sparse/sparse.html"
url = "https://cloud.r-project.org/src/contrib/SparseM_1.74.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/SparseM"
+ version('1.78', sha256='d6b79ec881a10c91cb03dc23e6e783080ded9db4f2cb723755aa0d7d29a8b432')
version('1.77', sha256='a9329fef14ae4fc646df1f4f6e57efb0211811599d015f7bc04c04285495d45c')
version('1.76', sha256='c2c8e44376936a5fe6f09a37f3668016e66cbc687519cc952aa346a658a2b69b')
version('1.74', sha256='4712f0c80e9f3cb204497f146ba60b15e75976cdb7798996a7c51f841a85eeba')
diff --git a/var/spack/repos/builtin/packages/r-sparsematrixstats/package.py b/var/spack/repos/builtin/packages/r-sparsematrixstats/package.py
new file mode 100644
index 0000000000..8a1c35b339
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-sparsematrixstats/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RSparsematrixstats(RPackage):
+ """Summary Statistics for Rows and Columns of Sparse Matrices
+
+ High performance functions for row and column operations on sparse
+ matrices. For example: col / rowMeans2, col / rowMedians, col / rowVars
+ etc. Currently, the optimizations are limited to data in the column sparse
+ format. This package is inspired by the matrixStats package by Henrik
+ Bengtsson."""
+
+ homepage = "https://bioconductor.org/packages/sparseMatrixStats/"
+ git = "https://git.bioconductor.org/packages/sparseMatrixStats"
+
+ version('1.2.1', commit='9726f3d5e0f03b50c332d85d5e4c339c18b0494c')
+
+ depends_on('r-matrixgenerics', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spatial/package.py b/var/spack/repos/builtin/packages/r-spatial/package.py
index b2fc45f406..bb6384eeb2 100644
--- a/var/spack/repos/builtin/packages/r-spatial/package.py
+++ b/var/spack/repos/builtin/packages/r-spatial/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RSpatial(RPackage):
- """spatial: Functions for Kriging and Point Pattern Analysis"""
+ """Functions for Kriging and Point Pattern Analysis
+
+ Functions for kriging and point pattern analysis."""
homepage = "https://cloud.r-project.org/package=spatial"
url = "https://cloud.r-project.org/src/contrib/spatial_7.3-11.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spatial"
+ version('7.3-12', sha256='7639039ee7407bd088e1b253376b2cb4fcdf4cc9124d6b48e4119d5cda872d63')
version('7.3-11', sha256='624448d2ac22e1798097d09fc5dc4605908a33f490b8ec971fc6ea318a445c11')
depends_on('r@3.0.0:', type=('build', 'run'))
- depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-mass', when='@:7.3-11', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spatialeco/package.py b/var/spack/repos/builtin/packages/r-spatialeco/package.py
index f028ebd8d5..81247e49ee 100644
--- a/var/spack/repos/builtin/packages/r-spatialeco/package.py
+++ b/var/spack/repos/builtin/packages/r-spatialeco/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,35 +7,42 @@ from spack import *
class RSpatialeco(RPackage):
- """Utilities to support spatial data manipulation, query,
- sampling and modelling.
- """
+ """Spatial Analysis and Modelling Utilities
+
+ Utilities to support spatial data manipulation, query, sampling and
+ modelling. Functions include models for species population density,
+ download utilities for climate and global deforestation spatial products,
+ spatial smoothing, multivariate separability, point process model for
+ creating pseudo- absences and sub-sampling, polygon and point-distance
+ landscape metrics, auto-logistic model, sampling models, cluster
+ optimization, statistical exploratory tools and raster-based metrics."""
homepage = "https://cloud.r-project.org/package=spatialEco"
url = "https://cloud.r-project.org/src/contrib/spatialEco_1.3-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spatialEco"
+ version('1.3-5', sha256='d4fb211124edf828333841c44a5af01165c53d89af460144214d81e3c13983c7')
version('1.3-2', sha256='9dfa427ee8b112446b582f6739a1c40a6e3ad3d050f522082a28ce47c675e57a')
version('1.3-1', sha256='ff12e26cc1bbf7934fbf712c99765d96ce6817e8055faa15a26d9ebade4bbf1c')
version('1.3-0', sha256='cfa09673cb3bbed30b243082fc2d63ac09f48b9f072a18d32b95c2c29979d1d0')
depends_on('r@3.6:', type=('build', 'run'))
- depends_on('r-dplyr', type=('build', 'run'))
- depends_on('r-exactextractr', type=('build', 'run'))
- depends_on('r-spatstat', type=('build', 'run'))
- depends_on('r-rcurl', type=('build', 'run'))
- depends_on('r-rms', type=('build', 'run'))
- depends_on('r-yaimpute', type=('build', 'run'))
- depends_on('r-spatialpack@0.3:', type=('build', 'run'))
- depends_on('r-mgcv', type=('build', 'run'))
- depends_on('r-envstats', type=('build', 'run'))
depends_on('r-sp', type=('build', 'run'))
- depends_on('r-raster', type=('build', 'run'))
depends_on('r-sf', type=('build', 'run'))
- depends_on('r-cluster', type=('build', 'run'))
+ depends_on('r-raster', type=('build', 'run'))
+ depends_on('r-spatstat', type=('build', 'run'))
depends_on('r-spdep', type=('build', 'run'))
- depends_on('r-readr', type=('build', 'run'))
depends_on('r-rgeos', type=('build', 'run'))
- depends_on('r-rann', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
- depends_on('r-maptools', type=('build', 'run'))
+ depends_on('r-dplyr', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-exactextractr', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-rcurl', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-rms', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-yaimpute', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-spatialpack@0.3:', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-mgcv', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-envstats', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-cluster', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-readr', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-rann', when='@:1.3-2', type=('build', 'run'))
+ depends_on('r-maptools', when='@:1.3-2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spatialpack/package.py b/var/spack/repos/builtin/packages/r-spatialpack/package.py
index afa919cd10..d68f7edbfe 100644
--- a/var/spack/repos/builtin/packages/r-spatialpack/package.py
+++ b/var/spack/repos/builtin/packages/r-spatialpack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,24 @@ from spack import *
class RSpatialpack(RPackage):
- """Tools to assess the association between two spatial processes."""
+ """Tools to assess the association between two spatial processes
+
+ Tools to assess the association between two spatial processes. Currently,
+ several methodologies are implemented: A modified t-test to perform
+ hypothesis testing about the independence between the processes, a suitable
+ nonparametric correlation coefficient, the codispersion coefficient, and an
+ F test for assessing the multiple correlation between one spatial process
+ and several others. Functions for image processing and computing the
+ spatial association between images are also provided."""
homepage = "https://cloud.r-project.org/package=SpatialPack"
url = "https://cloud.r-project.org/src/contrib/SpatialPack_0.3-8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/SpatialPack"
+ version('0.3-8196', sha256='9027e1656db97b721a12f5eda46532c6a99b4a079299b8d12fb57d445b237b4d')
version('0.3-8', sha256='a0e54b5dee3cd30a634e2d30380fe163942b672073fd909be888803332ed5151')
version('0.3', sha256='4c80fc1c77bc97fc678e6e201ecf7f0f89dcf3417b3b497a28a3639e9b30bd8a')
depends_on('r@2.10:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@0.3-8196:', type=('build', 'run'))
+ depends_on('r-fastmatrix', when='@0.3-8196:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spatialreg/package.py b/var/spack/repos/builtin/packages/r-spatialreg/package.py
index 1a0065f528..55aa9b0c99 100644
--- a/var/spack/repos/builtin/packages/r-spatialreg/package.py
+++ b/var/spack/repos/builtin/packages/r-spatialreg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,23 +7,45 @@ from spack import *
class RSpatialreg(RPackage):
- """spatialreg: Spatial Regression Analysis"""
+ """Spatial Regression Analysis
+
+ A collection of all the estimation functions for spatial cross-sectional
+ models (on lattice/areal data using spatial weights matrices) contained up
+ to now in 'spdep', 'sphet' and 'spse'. These model fitting functions
+ include maximum likelihood methods for cross-sectional models proposed by
+ 'Cliff' and 'Ord' (1973, ISBN:0850860369) and (1981, ISBN:0850860814),
+ fitting methods initially described by 'Ord' (1975)
+ <doi:10.1080/01621459.1975.10480272>. The models are further described by
+ 'Anselin' (1988) <doi:10.1007/978-94-015-7799-1>. Spatial two stage least
+ squares and spatial general method of moment models initially proposed by
+ 'Kelejian' and 'Prucha' (1998) <doi:10.1023/A:1007707430416> and (1999)
+ <doi:10.1111/1468-2354.00027> are provided. Impact methods and MCMC fitting
+ methods proposed by 'LeSage' and 'Pace' (2009) <doi:10.1201/9781420064254>
+ are implemented for the family of cross-sectional spatial regression
+ models. Methods for fitting the log determinant term in maximum likelihood
+ and MCMC fitting are compared by 'Bivand et al.' (2013)
+ <doi:10.1111/gean.12008>, and model fitting methods by 'Bivand' and 'Piras'
+ (2015) <doi:10.18637/jss.v063.i18>; both of these articles include
+ extensive lists of references. 'spatialreg' >= 1.1-* correspond to 'spdep'
+ >= 1.1-1, in which the model fitting functions are deprecated and pass
+ through to 'spatialreg', but will mask those in 'spatialreg'. From versions
+ 1.2-*, the functions will be made defunct in 'spdep'."""
homepage = "https://cloud.r-project.org/package=spatialreg"
url = "https://cloud.r-project.org/src/contrib/spatialreg_1.1-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spatialreg"
+ version('1.1-5', sha256='ddbf0773bad2e99b306116ae99a57bf29eecf723d1735820935a6fb7f331b27d')
version('1.1-3', sha256='7609cdfcdfe427d2643a0db6b5360be3f6d60ede8229436ab52092d1c9cf0480')
depends_on('r@3.3.0:', type=('build', 'run'))
- depends_on('r-boot', type=('build', 'run'))
- depends_on('r-coda', type=('build', 'run'))
- depends_on('r-expm', type=('build', 'run'))
- depends_on('r-gmodels', type=('build', 'run'))
- depends_on('r-learnbayes', type=('build', 'run'))
- depends_on('r-mass', type=('build', 'run'))
- depends_on('r-matrix', type=('build', 'run'))
- depends_on('r-nlme', type=('build', 'run'))
depends_on('r-spdata', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
depends_on('r-spdep', type=('build', 'run'))
+ depends_on('r-expm', type=('build', 'run'))
+ depends_on('r-coda', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-boot', type=('build', 'run'))
+ depends_on('r-learnbayes', type=('build', 'run'))
+ depends_on('r-nlme', type=('build', 'run'))
+ depends_on('r-gmodels', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spatstat-data/package.py b/var/spack/repos/builtin/packages/r-spatstat-data/package.py
index 991b87559b..ff2c5196f8 100644
--- a/var/spack/repos/builtin/packages/r-spatstat-data/package.py
+++ b/var/spack/repos/builtin/packages/r-spatstat-data/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,19 @@ from spack import *
class RSpatstatData(RPackage):
- """Contains all the datasets for the 'spatstat' package."""
+ """Datasets for 'spatstat'
+
+ Contains all the datasets for the 'spatstat' package."""
homepage = "https://cloud.r-project.org/package=spatstat.data"
url = "https://cloud.r-project.org/src/contrib/spatstat.data_1.4-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spatstat.data"
+ version('1.7-0', sha256='bbc192d43f2b37b308566694cb48ecdbbc4f20ef44b6fc7636564a717a03c12f')
version('1.4-3', sha256='8955b6ac40cc7d0d89e02334bb46f4c223ff0755e5818f132fee753e77918ea2')
version('1.4-0', sha256='121e5bb92beb7ccac920f921e760f429fd71bcfe11cb9b07a7e7326c7a72ec8c')
depends_on('r@3.3:', type=('build', 'run'))
- depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.7-0:', type=('build', 'run'))
depends_on('r-spatstat-utils', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spatstat-utils/package.py b/var/spack/repos/builtin/packages/r-spatstat-utils/package.py
index 1cad42c005..53878be1d5 100644
--- a/var/spack/repos/builtin/packages/r-spatstat-utils/package.py
+++ b/var/spack/repos/builtin/packages/r-spatstat-utils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,16 @@ from spack import *
class RSpatstatUtils(RPackage):
- """Contains utility functions for the 'spatstat'
- package which may also be useful for other purposes.
- """
+ """Utility Functions for 'spatstat'
+
+ Contains utility functions for the 'spatstat' package which may also be
+ useful for other purposes."""
homepage = "https://cloud.r-project.org/package=spatstat.utils"
url = "https://cloud.r-project.org/src/contrib/spatstat.utils_1.17-0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spatstat.utils"
+ version('1.20-2', sha256='62c2413f989965a9fa6395742a605004b736a27c24304e6ffaebf2134019ce18')
version('1.17-0', sha256='39cd683ed7f41d8adc9e28af073d91b244aa1cf5ad966dfbb396ee3ee79f0922')
version('1.15-0', sha256='90e07d730b6939f47f93c939afae10874b2c82bd402960ede4133de67dca2a0c')
diff --git a/var/spack/repos/builtin/packages/r-spatstat/package.py b/var/spack/repos/builtin/packages/r-spatstat/package.py
index 490e78c61a..95ca68bdae 100644
--- a/var/spack/repos/builtin/packages/r-spatstat/package.py
+++ b/var/spack/repos/builtin/packages/r-spatstat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-spdata/package.py b/var/spack/repos/builtin/packages/r-spdata/package.py
index d541d1d253..f09d568d97 100644
--- a/var/spack/repos/builtin/packages/r-spdata/package.py
+++ b/var/spack/repos/builtin/packages/r-spdata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,24 @@ from spack import *
class RSpdata(RPackage):
- """spData: Datasets for Spatial Analysis"""
+ """Datasets for Spatial Analysis
+
+ Diverse spatial datasets for demonstrating, benchmarking and teaching
+ spatial data analysis. It includes R data of class sf (defined by the
+ package 'sf'), Spatial ('sp'), and nb ('spdep'). Unlike other spatial data
+ packages such as 'rnaturalearth' and 'maps', it also contains data stored
+ in a range of file formats including GeoJSON, ESRI Shapefile and
+ GeoPackage. Some of the datasets are designed to illustrate specific
+ analysis techniques. cycle_hire() and cycle_hire_osm(), for example, is
+ designed to illustrate point pattern analysis techniques."""
homepage = "https://github.com/Nowosad/spData"
url = "https://cloud.r-project.org/src/contrib/spData_0.3.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spData"
+ version('0.3.8', sha256='7a61268db4fdbfb004b77d36e953cbb3fdfdac7e8bb6c500628ec6c592c79ad6')
version('0.3.0', sha256='de24ea659541a6c795cd26a1f6a213e15061af9c97a24cba1c24ce30c6c24c98')
depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r-sp', when='@0.3.8:', type=('build', 'run'))
+ depends_on('r-raster', when='@0.3.8:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spdep/package.py b/var/spack/repos/builtin/packages/r-spdep/package.py
index 159b39fedd..97c52693a2 100644
--- a/var/spack/repos/builtin/packages/r-spdep/package.py
+++ b/var/spack/repos/builtin/packages/r-spdep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,25 +7,23 @@ from spack import *
class RSpdep(RPackage):
- """A collection of functions to create spatial weights matrix objects from
- polygon contiguities, from point patterns by distance and tessellations,
- for summarizing these objects, and for permitting their use in spatial
- data analysis, including regional aggregation by minimum spanning tree;
- a collection of tests for spatial autocorrelation, including global
- Moran's I, APLE, Geary's C, Hubert/Mantel general cross product statistic,
- Empirical Bayes estimates and AssunasReis Index, Getis/Ord G and
- multicoloured join count statistics, local Moran's I and Getis/Ord G,
- saddlepoint approximations and exact tests for global and local Moran's I;
- and functions for estimating spatial simultaneous autoregressive (SAR) lag
- and error models, impact measures for lag models, weighted and unweighted
- SAR and CAR spatial regression models, semi-parametric and Moran
- eigenvector spatial filtering, GM SAR error models, and generalized spatial
- two stage least squares models."""
+ """Spatial Dependence: Weighting Schemes, Statistics
+
+ A collection of functions to create spatial weights matrix objects from
+ polygon 'contiguities', from point patterns by distance and tessellations,
+ for summarizing these objects, and for permitting their use in spatial data
+ analysis, including regional aggregation by minimum spanning tree; a
+ collection of tests for spatial 'autocorrelation', including global 'Morans
+ I' and 'Gearys C' proposed by 'Cliff' and 'Ord' (1973, ISBN: 0850860369)
+ and (1981, ISBN: 0850860814), 'Hubert/Mantel' general cross product
+ statistic, Empirical Bayes estimates and 'Assuncao/Reis' (1999)
+ <doi:10.1002/(SICI)1097-0258(19990830)18:16%3C2147::AID-SIM179%3E3.0.CO"""
homepage = "https://r-forge.r-project.org/projects/spdep"
url = "https://cloud.r-project.org/src/contrib/spdep_0.6-13.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/spdep"
+ version('1.1-5', sha256='47cb46cf5cf1f4386eb1b5e4d8541d577d7f2939e74addbdb884ecf2323f6d5d')
version('1.1-2', sha256='ba0ca3a0ad6b9cc1dc46cadd9e79259949ad38c88f738e98e482d6c06640b31a')
version('1.0-2', sha256='6f9efa4347d5c13b49922b75481ac403431c3c76a65a109af29954aa7bb138b2')
version('0.6-13', sha256='ed345f4c7ea7ba064b187eb6b25f0ac46f17616f3b56ab89978935cdc67df1c4')
@@ -33,14 +31,14 @@ class RSpdep(RPackage):
depends_on('r@3.0.0:', when='@:0.7-7', type=('build', 'run'))
depends_on('r@3.3.0:', when='@0.7-8:', type=('build', 'run'))
depends_on('r-sp@1.0:', type=('build', 'run'))
- depends_on('r-learnbayes', type=('build', 'run'))
+ depends_on('r-spdata@0.2.6.0:', when='@1.0-2:', type=('build', 'run'))
+ depends_on('r-sf', when='@1.0-2:', type=('build', 'run'))
depends_on('r-deldir', type=('build', 'run'))
- depends_on('r-coda', type=('build', 'run'))
- depends_on('r-gmodels', type=('build', 'run'))
- depends_on('r-expm', type=('build', 'run'))
+ depends_on('r-boot@1.3-1:', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-learnbayes', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
- depends_on('r-boot@1.3-1:', type=('build', 'run'))
+ depends_on('r-coda', type=('build', 'run'))
+ depends_on('r-expm', type=('build', 'run'))
+ depends_on('r-gmodels', type=('build', 'run'))
depends_on('r-nlme', type=('build', 'run'))
- depends_on('r-spdata@0.2.6.0:', when='@1.0-2:', type=('build', 'run'))
- depends_on('r-sf', when='@1.0-2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-speedglm/package.py b/var/spack/repos/builtin/packages/r-speedglm/package.py
index 080d7071c4..e6b5eec3fc 100644
--- a/var/spack/repos/builtin/packages/r-speedglm/package.py
+++ b/var/spack/repos/builtin/packages/r-speedglm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,17 @@ from spack import *
class RSpeedglm(RPackage):
- """Fitting linear models and generalized linear models to
+ """Fitting Linear and Generalized Linear Models to Large Data Sets
+
+ Fitting linear models and generalized linear models to
large data sets by updating algorithms."""
homepage = "https://cloud.r-project.org/package=speedglm"
url = "https://cloud.r-project.org/src/contrib/speedglm_0.3-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/speedglm"
+ version('0.3-3', sha256='d065d0ee42fb772760fca8d97ad2aa56cd76b1d9ecb4e97478ec362429e16738')
version('0.3-2', sha256='5fcaf18324dc754152f528a44894944063303f780d33e58569ea7c306bfc45ac')
- depends_on('r-mass', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-spem/package.py b/var/spack/repos/builtin/packages/r-spem/package.py
index 6abc2823a7..376c5993c3 100644
--- a/var/spack/repos/builtin/packages/r-spem/package.py
+++ b/var/spack/repos/builtin/packages/r-spem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSpem(RPackage):
- """S-system parameter estimation method.
+ """S-system parameter estimation method
This package can optimize the parameter in S-system models given time
series data"""
@@ -15,6 +15,7 @@ class RSpem(RPackage):
homepage = "https://bioconductor.org/packages/SPEM"
git = "https://git.bioconductor.org/packages/SPEM.git"
+ version('1.30.0', commit='6b2eb64bfe6287846b1408297dd46dc772431031')
version('1.24.0', commit='537ed19e466008f2972a246479b327c95177a99e')
version('1.22.0', commit='fddb7cd1f81e47eae603724ea149c2adca5b3eb4')
version('1.20.0', commit='b0e1049c61a35da00882d21026f4c1eb03b17517')
diff --git a/var/spack/repos/builtin/packages/r-splancs/package.py b/var/spack/repos/builtin/packages/r-splancs/package.py
index 58306eee5e..98c0257c1b 100644
--- a/var/spack/repos/builtin/packages/r-splancs/package.py
+++ b/var/spack/repos/builtin/packages/r-splancs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-splitstackshape/package.py b/var/spack/repos/builtin/packages/r-splitstackshape/package.py
index f63ed5959d..fdd7f47fe5 100644
--- a/var/spack/repos/builtin/packages/r-splitstackshape/package.py
+++ b/var/spack/repos/builtin/packages/r-splitstackshape/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-sqldf/package.py b/var/spack/repos/builtin/packages/r-sqldf/package.py
index 6402080162..d82b430851 100644
--- a/var/spack/repos/builtin/packages/r-sqldf/package.py
+++ b/var/spack/repos/builtin/packages/r-sqldf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-squarem/package.py b/var/spack/repos/builtin/packages/r-squarem/package.py
index 6ffebf4168..90ea3b334e 100644
--- a/var/spack/repos/builtin/packages/r-squarem/package.py
+++ b/var/spack/repos/builtin/packages/r-squarem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,17 +7,21 @@ from spack import *
class RSquarem(RPackage):
- """Algorithms for accelerating the convergence of slow, monotone sequences
+ """Squared Extrapolation Methods for Accelerating EM-Like Monotone Algorithms
+
+ Algorithms for accelerating the convergence of slow, monotone sequences
from smooth, contraction mapping such as the EM algorithm. It can be used
- to accelerate any smooth, linearly convergent acceleration scheme. A
+ to accelerate any smooth, linearly convergent acceleration scheme. A
tutorial style introduction to this package is available in a vignette on
the CRAN download page or, when the package is loaded in an R session, with
- vignette("SQUAREM")."""
+ vignette("SQUAREM"). Refer to the J Stat Software article:
+ <doi:10.18637/jss.v092.i07>."""
homepage = "http://www.jhsph.edu/agingandhealth/People/Faculty_personal_pages/Varadhan.html"
url = "https://cloud.r-project.org/src/contrib/SQUAREM_2017.10-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/SQUAREM"
+ version('2021.1', sha256='66e5e18ca29903e4950750bbd810f0f9df85811ee4195ce0a86d939ba8183a58')
version('2017.10-1', sha256='9b89905b436f1cf3faa9e3dabc585a76299e729e85ca659bfddb4b7cba11b283')
depends_on('r@3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-squash/package.py b/var/spack/repos/builtin/packages/r-squash/package.py
index 31db085fb5..6706ce493a 100644
--- a/var/spack/repos/builtin/packages/r-squash/package.py
+++ b/var/spack/repos/builtin/packages/r-squash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,18 @@ from spack import *
class RSquash(RPackage):
- """Color-Based Plots for Multivariate Visualization"""
+ """Color-Based Plots for Multivariate Visualization
+
+ Functions for color-based visualization of multivariate data, i.e.
+ colorgrams or heatmaps. Lower-level functions map numeric values to colors,
+ display a matrix as an array of colors, and draw color keys. Higher-level
+ plotting functions generate a bivariate histogram, a dendrogram aligned
+ with a color-coded matrix, a triangular distance matrix, and more."""
homepage = "https://cloud.r-project.org/package=squash"
url = "https://cloud.r-project.org/src/contrib/squash_1.0.8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/squash"
+ version('1.0.9', sha256='ff381c85071e3407574e3db28d789657f64e7d3f9d74ac123539de22ab8ac6f4')
version('1.0.8', sha256='e6932c0a461d5c85f7180a31d18a3eb4f28afd6769efe251075a4de12de039f4')
version('1.0.7', sha256='d2d7182a72dfd93b8b65e775bea11e891c38598fa49a3ed4f92ec1159ffab6f1')
diff --git a/var/spack/repos/builtin/packages/r-sseq/package.py b/var/spack/repos/builtin/packages/r-sseq/package.py
index a5238639d5..9eea513302 100644
--- a/var/spack/repos/builtin/packages/r-sseq/package.py
+++ b/var/spack/repos/builtin/packages/r-sseq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RSseq(RPackage):
"""Shrinkage estimation of dispersion in Negative Binomial models for RNA-
- seq experiments with small sample size.
+ seq experiments with small sample size
The purpose of this package is to discover the genes that are
differentially expressed between two conditions in RNA-seq experiments.
@@ -24,6 +24,7 @@ class RSseq(RPackage):
homepage = "https://bioconductor.org/packages/sSeq"
git = "https://git.bioconductor.org/packages/sSeq.git"
+ version('1.28.0', commit='401f6805628bdf6579cc0e643b7ed54319f024be')
version('1.22.0', commit='fa3895c9578edddca17b5d13a2678ee5830b85cc')
version('1.20.1', commit='91f31440323612cb04beb44404ab0a1bcb3ad87d')
version('1.18.0', commit='1f65e5a55ce0d51672b785450031872e6db5ca0f')
diff --git a/var/spack/repos/builtin/packages/r-stabledist/package.py b/var/spack/repos/builtin/packages/r-stabledist/package.py
index c187d4771e..7a7cd433b6 100644
--- a/var/spack/repos/builtin/packages/r-stabledist/package.py
+++ b/var/spack/repos/builtin/packages/r-stabledist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-stanheaders/package.py b/var/spack/repos/builtin/packages/r-stanheaders/package.py
index d561f2e8ff..23728ee944 100644
--- a/var/spack/repos/builtin/packages/r-stanheaders/package.py
+++ b/var/spack/repos/builtin/packages/r-stanheaders/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RStanheaders(RPackage):
- """The C++ header files of the Stan project are provided by this package,
+ """C++ Header Files for Stan
+
+ The C++ header files of the Stan project are provided by this package,
but it contains no R code, vignettes, or function documentation. There is a
shared object containing part of the CVODES library, but it is not
accessible from R. StanHeaders is only useful for developers who want to
@@ -27,10 +29,15 @@ class RStanheaders(RPackage):
url = "https://cloud.r-project.org/src/contrib/StanHeaders_2.10.0-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/StanHeaders"
+ version('2.21.0-7', sha256='27546e064f0e907e031d9185ad55245d118d82fbe3074ecb1d76fae8b9f2336b')
+ version('2.21.0-6', sha256='a0282a054d0e6ab310ec7edcffa953b77c7e4a858d9ac7028aab1b4fb4ce8cf3')
version('2.18.1-10', sha256='8a9f7e22105428e97d14f44f75395c37cf8c809de148d279c620024452b3565a')
version('2.18.1', sha256='ce0d609a7cd11725b1203bdeae92acc54da3a48b8266eb9dbdb9d95b14df9209')
version('2.17.1', sha256='4300a1910a2eb40d7a6ecabea3c1e26f0aa9421eeb3000689272a0f62cb80d97')
version('2.10.0-2', sha256='ce4e335172bc65da874699302f6ba5466cdbcf69458c11954c0f131fc78b59b7')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.4.0:', when='@2.18.0:', type=('build', 'run'))
+ depends_on('r-rcppparallel@5.0.1:', when='@2.21.0:', type=('build', 'run'))
+ depends_on('r-rcppeigen', when='@2.21.0:', type=('build', 'run'))
depends_on('pandoc', type='build')
diff --git a/var/spack/repos/builtin/packages/r-stargazer/package.py b/var/spack/repos/builtin/packages/r-stargazer/package.py
index fff3c6ece2..1e58388b18 100644
--- a/var/spack/repos/builtin/packages/r-stargazer/package.py
+++ b/var/spack/repos/builtin/packages/r-stargazer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-statmod/package.py b/var/spack/repos/builtin/packages/r-statmod/package.py
index f95c996a77..7da756e3c9 100644
--- a/var/spack/repos/builtin/packages/r-statmod/package.py
+++ b/var/spack/repos/builtin/packages/r-statmod/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,19 +7,21 @@ from spack import *
class RStatmod(RPackage):
- """A collection of algorithms and functions to aid statistical
- modeling. Includes growth curve comparisons, limiting dilution
- analysis (aka ELDA), mixed linear models, heteroscedastic
- regression, inverse-Gaussian probability calculations, Gauss
- quadrature and a secure convergence algorithm for nonlinear
- models. Includes advanced generalized linear model functions
- that implement secure convergence, dispersion modeling and
- Tweedie power-law families."""
+ """Statistical Modeling
+
+ A collection of algorithms and functions to aid statistical modeling.
+ Includes limiting dilution analysis (aka ELDA), growth curve comparisons,
+ mixed linear models, heteroscedastic regression, inverse-Gaussian
+ probability calculations, Gauss quadrature and a secure convergence
+ algorithm for nonlinear models. Also includes advanced generalized linear
+ model functions including Tweedie and Digamma distributional families and a
+ secure convergence algorithm."""
homepage = "https://cloud.r-project.org/package=statmod"
url = "https://cloud.r-project.org/src/contrib/statmod_1.4.30.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/statmod"
+ version('1.4.35', sha256='de5e428f81c306849af47b9ae583362855e166b1da62893734f1154cb5b3f8fe')
version('1.4.32', sha256='2f67a1cfa66126e6345f8a40564a3077d08f1748f17cb8c8fb05c94ed0f57e20')
version('1.4.30', sha256='9d2c1722a85f53623a9ee9f73d835119ae22ae2b8ec7b50d675401e314ea641f')
diff --git a/var/spack/repos/builtin/packages/r-statnet-common/package.py b/var/spack/repos/builtin/packages/r-statnet-common/package.py
index 1683197747..a95216cb43 100644
--- a/var/spack/repos/builtin/packages/r-statnet-common/package.py
+++ b/var/spack/repos/builtin/packages/r-statnet-common/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,20 @@ from spack import *
class RStatnetCommon(RPackage):
- """Non-statistical utilities used by the software developed by the
- Statnet Project. They may also be of use to others."""
+ """Common R Scripts and Utilities Used by the Statnet Project Software
+
+ Non-statistical utilities used by the software developed by the Statnet
+ Project. They may also be of use to others."""
homepage = "http://www.statnet.org"
url = "https://cloud.r-project.org/src/contrib/statnet.common_3.3.0.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/statnet.common"
+ version('4.4.1', sha256='4ecf2b84718d7fb60f196215b4cf6f52cd6b26cc9148a6da6981b26e885509fd')
version('4.3.0', sha256='834a3359eac967df0420eee416ae4983e3b502a3de56bb24f494a7ca4104e959')
version('4.2.0', sha256='1176c3303436ebe858d02979cf0a0c33e4e2d1f3637516b4761d573ccd132461')
version('3.3.0', sha256='d714c4e7b0cbf71b7a628af443f5be530e74ad1e21f6b04f1b1087f6d7e40fa4')
depends_on('r@3.5:', when='@4.2.0:', type=('build', 'run'))
depends_on('r-coda', when='@4.1.2:', type=('build', 'run'))
+ depends_on('r-rle', when='@4.4.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-stringfish/package.py b/var/spack/repos/builtin/packages/r-stringfish/package.py
new file mode 100644
index 0000000000..198757ad17
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-stringfish/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RStringfish(RPackage):
+ """Alt String Implementation
+
+ Provides an extendable, performant and multithreaded 'alt-string'
+ implementation backed by 'C++' vectors and strings."""
+
+ homepage = "https://github.com/traversc/stringfish"
+ url = "https://cloud.r-project.org/src/contrib/stringfish_0.14.2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/stringfish"
+
+ maintainers = ['dorton21']
+
+ version('0.14.2', sha256='9373cfc715cda1527fd20179435977b8e59e19d8c5ef82a31e519f93fb624ced')
+
+ depends_on('gmake', type='build')
+ depends_on('r@3.5.0:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.18.3:', type=('build', 'run'))
+ depends_on('r-rcppparallel', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-stringi/package.py b/var/spack/repos/builtin/packages/r-stringi/package.py
index a02c9584bb..68c5b531cc 100644
--- a/var/spack/repos/builtin/packages/r-stringi/package.py
+++ b/var/spack/repos/builtin/packages/r-stringi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,22 @@ from spack import *
class RStringi(RPackage):
- """Allows for fast, correct, consistent, portable, as well as convenient
- character string/text processing in every locale and any native encoding.
- Owing to the use of the ICU library, the package provides R users with
- platform-independent functions known to Java, Perl, Python, PHP, and Ruby
- programmers. Among available features there are: pattern searching (e.g.,
- with ICU Java-like regular expressions or the Unicode Collation Algorithm),
- random string generation, case mapping, string transliteration,
- concatenation, Unicode normalization, date-time formatting and parsing,
- etc."""
+ """Character String Processing Facilities
+
+ A multitude of character string/text/natural language processing tools:
+ pattern searching (e.g., with 'Java'-like regular expressions or the
+ 'Unicode' collation algorithm), random string generation, case mapping,
+ string transliteration, concatenation, sorting, padding, wrapping, Unicode
+ normalisation, date-time formatting and parsing, and many more. They are
+ fast, consistent, convenient, and - owing to the use of the 'ICU'
+ (International Components for Unicode) library - portable across all
+ locales and platforms."""
homepage = "http://www.gagolewski.com/software/stringi/"
url = "https://cloud.r-project.org/src/contrib/stringi_1.1.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/stringi"
+ version('1.5.3', sha256='224f1e8dedc962a676bc2e1f53016f6a129a0a38aa0f35daf6dece62ff714010')
version('1.4.3', sha256='13cecb396b700f81af38746e97b550a1d9fda377ca70c78f6cdfc770d33379ed')
version('1.3.1', sha256='32df663bb6e9527e1ac265eec2116d26f7b7e62ea5ae7cc5de217cbb8defc362')
version('1.1.5', sha256='651e85fc4ec6cf71ad8a4347f2bd4b00a490cf9eec20921a83bf5222740402f2')
@@ -30,3 +32,4 @@ class RStringi(RPackage):
depends_on('r@2.14:', type=('build', 'run'))
depends_on('icu4c@52:')
+ depends_on('icu4c@55:', when='@1.5.3:')
diff --git a/var/spack/repos/builtin/packages/r-stringr/package.py b/var/spack/repos/builtin/packages/r-stringr/package.py
index 7ff1aad0d7..f19f6998fe 100644
--- a/var/spack/repos/builtin/packages/r-stringr/package.py
+++ b/var/spack/repos/builtin/packages/r-stringr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-strucchange/package.py b/var/spack/repos/builtin/packages/r-strucchange/package.py
index ab24deeb75..9004be8628 100644
--- a/var/spack/repos/builtin/packages/r-strucchange/package.py
+++ b/var/spack/repos/builtin/packages/r-strucchange/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,23 @@ from spack import *
class RStrucchange(RPackage):
- """Testing, monitoring and dating structural changes in (linear)
- regression models."""
+ """Testing, Monitoring, and Dating Structural Changes
+
+ Testing, monitoring and dating structural changes in (linear) regression
+ models. strucchange features tests/methods from the generalized fluctuation
+ test framework as well as from the F test (Chow test) framework. This
+ includes methods to fit, plot and test fluctuation processes (e.g., CUSUM,
+ MOSUM, recursive/moving estimates) and F statistics, respectively. It is
+ possible to monitor incoming data online using fluctuation processes.
+ Finally, the breakpoints in regression models with structural changes can
+ be estimated together with confidence intervals. Emphasis is always given
+ to methods for visualizing the data."""
homepage = "https://cloud.r-project.org/package=strucchange"
url = "https://cloud.r-project.org/src/contrib/strucchange_1.5-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/strucchange"
+ version('1.5-2', sha256='7d247c5ae6f5a63c80e478799d009c57fb8803943aa4286d05f71235cc1002f8')
version('1.5-1', sha256='740e2e20477b9fceeef767ae1002adc5ec397cb0f7daba5289a2c23b0dddaf31')
depends_on('r@2.10.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-subplex/package.py b/var/spack/repos/builtin/packages/r-subplex/package.py
index 7a28b6e60e..cb0c587a41 100644
--- a/var/spack/repos/builtin/packages/r-subplex/package.py
+++ b/var/spack/repos/builtin/packages/r-subplex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,16 @@ from spack import *
class RSubplex(RPackage):
- """Unconstrained Optimization using the Subplex Algorithm"""
+ """Unconstrained Optimization using the Subplex Algorithm
+
+ The subplex algorithm for unconstrained optimization, developed by Tom
+ Rowan <http://www.netlib.org/opt/subplex.tgz>."""
homepage = "https://cloud.r-project.org/package=subplex"
url = "https://cloud.r-project.org/src/contrib/subplex_1.4-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/subplex"
+ version('1.6', sha256='0d05da1622fffcd20a01cc929fc6c2b7df40a8246e7018f7f1f3c175b774cbf9')
version('1.5-4', sha256='ff94cf6b1560f78c31712c05bc2bc1b703339e09c7fc777ee94abf15fa7a8b81')
version('1.5-2', sha256='6f8c3ccadf1ccd7f11f3eae28cec16eed3695f14e351b864d807dbaba6cd3ded')
version('1.4-1', sha256='94b7b961aaa229a6f025151191ed50272af1394be69f1c41146b9e8c786caec6')
diff --git a/var/spack/repos/builtin/packages/r-summarizedexperiment/package.py b/var/spack/repos/builtin/packages/r-summarizedexperiment/package.py
index 5834c170da..846e042884 100644
--- a/var/spack/repos/builtin/packages/r-summarizedexperiment/package.py
+++ b/var/spack/repos/builtin/packages/r-summarizedexperiment/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSummarizedexperiment(RPackage):
- """SummarizedExperiment container.
+ """SummarizedExperiment container
The SummarizedExperiment container contains one or more assays, each
represented by a matrix-like object of numeric or other mode. The rows
@@ -17,6 +17,7 @@ class RSummarizedexperiment(RPackage):
homepage = "https://bioconductor.org/packages/SummarizedExperiment"
git = "https://git.bioconductor.org/packages/SummarizedExperiment.git"
+ version('1.20.0', commit='874aa87a481e4076a0ec3369f55c9c0a1ab8025e')
version('1.18.2', commit='e22fafe')
version('1.14.1', commit='2c68d99e11c7345e5ed388370822ea48395c64a4')
version('1.12.0', commit='5f8416864636add121ec1d6737ebb89a42227fd7')
@@ -25,22 +26,24 @@ class RSummarizedexperiment(RPackage):
version('1.6.5', commit='ec69cd5cfbccaef148a9f6abdfb3e22e888695d0')
depends_on('r@3.2:', type=('build', 'run'))
+ depends_on('r-matrixgenerics@1.1.3:', type=('build', 'run'))
depends_on('r-genomicranges@1.27.22:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.29.14:', when='@1.8.1:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.17:', when='@1.10.1:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.33.6:', when='@1.12.0:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.41.5:', when='@1.20.0:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
- depends_on('r-delayedarray@0.1.9:', type=('build', 'run'))
depends_on('r-matrix', type=('build', 'run'))
depends_on('r-biocgenerics@0.15.3:', type=('build', 'run'))
depends_on('r-s4vectors@0.13.13:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.25:', when='@1.10.1:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.12:', when='@1.20.0:', type=('build', 'run'))
depends_on('r-iranges@2.7.2:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.11.4:', type=('build', 'run'))
-
- depends_on('r-genomicranges@1.29.14:', when='@1.8.1:', type=('build', 'run'))
- depends_on('r-delayedarray@0.3.20:', when='@1.8.1:', type=('build', 'run'))
depends_on('r-iranges@2.11.17:', when='@1.8.1:', type=('build', 'run'))
- depends_on('r-genomeinfodb@1.13.1:', when='@1.8.1:', type=('build', 'run'))
-
- depends_on('r-genomicranges@1.31.17:', when='@1.10.1:', type=('build', 'run'))
- depends_on('r-s4vectors@0.17.25:', when='@1.10.1:', type=('build', 'run'))
depends_on('r-iranges@2.13.16:', when='@1.10.1:', type=('build', 'run'))
-
- depends_on('r-genomicranges@1.33.6:', when='@1.12.0:', type=('build', 'run'))
+ depends_on('r-iranges@2.23.9:', when='@1.20.0:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.11.4:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.13.1:', when='@1.8.1:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.1.9:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.3.20:', when='@1.8.1:', type=('build', 'run'))
+ depends_on('r-delayedarray@0.15.10:', when='@1.20.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-suppdists/package.py b/var/spack/repos/builtin/packages/r-suppdists/package.py
index f85ee2c0a8..683c029cee 100644
--- a/var/spack/repos/builtin/packages/r-suppdists/package.py
+++ b/var/spack/repos/builtin/packages/r-suppdists/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-survey/package.py b/var/spack/repos/builtin/packages/r-survey/package.py
index c07a9ce22c..f15be5cfbe 100644
--- a/var/spack/repos/builtin/packages/r-survey/package.py
+++ b/var/spack/repos/builtin/packages/r-survey/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RSurvey(RPackage):
- """Summary statistics, two-sample tests, rank tests, generalised linear
+ """Analysis of Complex Survey Samples
+
+ Summary statistics, two-sample tests, rank tests, generalised linear
models, cumulative link models, Cox models, loglinear models, and general
maximum pseudolikelihood estimation for multistage stratified,
cluster-sampled, unequally weighted survey samples. Variances by Taylor
@@ -19,11 +21,12 @@ class RSurvey(RPackage):
url = "https://cloud.r-project.org/src/contrib/survey_3.30-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/survey"
+ version('4.0', sha256='b053f40f4cfa90507ca524f72d3b3a4b4869def52f11f907a14f1c6d90063de1')
version('3.36', sha256='90f32e9d2b52eacf881e6717a4b5edfc5a3beb5da516f8372293549589d79475')
version('3.35-1', sha256='11e5ddde9c8c21dfaed0b1247036e068ad32782c76ff71f7937eb7585dd364db')
version('3.30-3', sha256='be45d00b22d857e66905789031f2db1037505f80ce15d4b0ea84dabb03bc9e6d')
- depends_on('r@2.14.0:', when='@:3.31-5', type=('build', 'run'))
+ depends_on('r@2.14.0:', type=('build', 'run'))
depends_on('r@2.16.0:', when='@3.32:3.34', type=('build', 'run'))
depends_on('r@3.1.0:', when='@3.35:', type=('build', 'run'))
depends_on('r-matrix', when='@3.31:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-survival/package.py b/var/spack/repos/builtin/packages/r-survival/package.py
index 8e2bfb7f37..815986ce65 100644
--- a/var/spack/repos/builtin/packages/r-survival/package.py
+++ b/var/spack/repos/builtin/packages/r-survival/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RSurvival(RPackage):
- """Contains the core survival analysis routines, including definition of
+ """Survival Analysis
+
+ Contains the core survival analysis routines, including definition of
Surv objects, Kaplan-Meier and Aalen-Johansen (multi-state) curves, Cox
models, and parametric accelerated failure time models."""
@@ -15,6 +17,7 @@ class RSurvival(RPackage):
url = "https://cloud.r-project.org/src/contrib/survival_2.41-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/survival"
+ version('3.2-7', sha256='5356cd73da7ecfda4042e8a8ae00d3531b106f7b39ca31a1843eadf288418a46')
version('3.1-12', sha256='b62ed66eb646f3df13f7e9bf6571e3bfecae128c66491e174c8833cbef1bf21f')
version('2.44-1.1', sha256='55b151e15fcd24ccb3acf60331c9a7ad82bc10f3841ab3be9bc2a37e9ee751b9')
version('2.44-1', sha256='82c44afa41fe4504295855f1da4a5940c3289dfd61bc664bf211bb67c051a909')
diff --git a/var/spack/repos/builtin/packages/r-sva/package.py b/var/spack/repos/builtin/packages/r-sva/package.py
index 79ecbaea3c..2c3b51e302 100644
--- a/var/spack/repos/builtin/packages/r-sva/package.py
+++ b/var/spack/repos/builtin/packages/r-sva/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RSva(RPackage):
- """Surrogate Variable Analysis.
+ """Surrogate Variable Analysis
The sva package contains functions for removing batch effects and other
unwanted variation in high-throughput experiment. Specifically, the sva
@@ -31,6 +31,7 @@ class RSva(RPackage):
homepage = "https://bioconductor.org/packages/sva"
git = "https://git.bioconductor.org/packages/sva.git"
+ version('3.38.0', commit='5ded8ba649200ec4829051f86a59e1a2548a7ab8')
version('3.32.1', commit='1b8286734d00533b49d9f1456b6523cc778bb744')
version('3.30.1', commit='fdb98bc2299dc5213c62d83cb7c0b1c1b4912f0c')
version('3.28.0', commit='dd4937229dbccd2f383a04d5237fe147a884728d')
@@ -43,3 +44,4 @@ class RSva(RPackage):
depends_on('r-biocparallel', type=('build', 'run'))
depends_on('r-matrixstats', type=('build', 'run'))
depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-edger', when='@3.38.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-svglite/package.py b/var/spack/repos/builtin/packages/r-svglite/package.py
new file mode 100644
index 0000000000..f8804f3ed5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-svglite/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RSvglite(RPackage):
+ """An 'SVG' Graphics Device
+
+ A graphics device for R that produces 'Scalable Vector Graphics'. 'svglite'
+ is a fork of the older 'RSvgDevice' package."""
+
+ homepage = "https://svglite.r-lib.org/"
+ cran = "svglite"
+
+ version('2.0.0', sha256='76e625fe172a5b7ce99a67b6d631b037b3f7f0021cfe15f2e15e8851b89defa5')
+
+ depends_on('r+X', type=('build', 'run'))
+ depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-systemfonts@1.0.0:', type=('build', 'run'))
+ depends_on('r-cpp11', type=('build', 'run'))
+ depends_on('libpng')
diff --git a/var/spack/repos/builtin/packages/r-sys/package.py b/var/spack/repos/builtin/packages/r-sys/package.py
index 1901e54354..b6774c7e79 100644
--- a/var/spack/repos/builtin/packages/r-sys/package.py
+++ b/var/spack/repos/builtin/packages/r-sys/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RSys(RPackage):
- """Drop-in replacements for the base system2() function with fine control
+ """Powerful and Reliable Tools for Running System Commands in R
+
+ Drop-in replacements for the base system2() function with fine control
and consistent behavior across platforms. Supports clean interruption,
timeout, background tasks, and streaming STDIN / STDOUT / STDERR over
binary or text connections. Arguments on Windows automatically get encoded
@@ -17,6 +19,7 @@ class RSys(RPackage):
url = "https://cloud.r-project.org/src/contrib/sys_3.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/sys"
+ version('3.4', sha256='17f88fbaf222f1f8fd07919461093dac0e7175ae3c3b3264b88470617afd0487')
version('3.2', sha256='2819498461fe2ce83d319d1a47844e86bcea6d01d10861818dba289e7099bbcc')
def flag_handler(self, name, flags):
diff --git a/var/spack/repos/builtin/packages/r-systemfonts/package.py b/var/spack/repos/builtin/packages/r-systemfonts/package.py
new file mode 100644
index 0000000000..e07c313761
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-systemfonts/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RSystemfonts(RPackage):
+ """System Native Font Finding
+
+ Provides system native access to the font catalogue. As font handling
+ varies between systems it is difficult to correctly locate installed fonts
+ across different operating systems. The 'systemfonts' package provides
+ bindings to the native libraries on Windows, macOS and Linux for finding
+ font files that can then be used further by e.g. graphic devices. The main
+ use is intended to be from compiled code but 'systemfonts' also provides
+ access from R."""
+
+ homepage = "https://github.com/r-lib/systemfonts"
+ cran = "systemfonts"
+
+ version('1.0.1', sha256='401db4d9e78e3a5e00b7a0b4fbad7fbb1c584734469b65fe5b7ebe1851c7a797')
+
+ depends_on('r@3.2.0:', type=('build', 'run'))
+ depends_on('r-cpp11@0.2.1:', type=('build', 'run'))
+ depends_on('fontconfig')
+ depends_on('freetype')
diff --git a/var/spack/repos/builtin/packages/r-tarifx/package.py b/var/spack/repos/builtin/packages/r-tarifx/package.py
index 2aac0efab2..569559bbb0 100644
--- a/var/spack/repos/builtin/packages/r-tarifx/package.py
+++ b/var/spack/repos/builtin/packages/r-tarifx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RTarifx(RPackage):
- """A collection of various utility and convenience functions."""
+ """Collection of Utility and Convenience Functions
+
+ A collection of various utility and convenience functions."""
homepage = "https://cloud.r-project.org/package=taRifx"
url = "https://cloud.r-project.org/src/contrib/taRifx_1.0.6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/taRifx"
+ version('1.0.6.2', sha256='89d031db00a94ae57c7ace0d9aa39ba2f960f96fd48d2d1e4c7ebb62a2969b15')
version('1.0.6.1', sha256='d4c832b26d476a395ddf8349c42613270023c8bbf52a274d280be6284c11d7e2')
version('1.0.6', sha256='3dc70ac9c828d904cbac9fc9465918cd58cb5e9e35e92fe0cf38f436a1017782')
diff --git a/var/spack/repos/builtin/packages/r-taxizedb/package.py b/var/spack/repos/builtin/packages/r-taxizedb/package.py
index 3002e6e8f5..377b7e377b 100644
--- a/var/spack/repos/builtin/packages/r-taxizedb/package.py
+++ b/var/spack/repos/builtin/packages/r-taxizedb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,29 @@ from spack import *
class RTaxizedb(RPackage):
- """taxizedb: Tools for Working with 'Taxonomic' Databases"""
+ """Tools for Working with 'Taxonomic' Databases
+
+ Tools for working with 'taxonomic' databases, including utilities for
+ downloading databases, loading them into various 'SQL' databases, cleaning
+ up files, and providing a 'SQL' connection that can be used to do 'SQL'
+ queries directly or used in 'dplyr'."""
homepage = "https://cloud.r-project.org/package=taxizedb"
url = "https://cloud.r-project.org/src/contrib/taxizedb_0.1.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/taxizedb/"
+ version('0.3.0', sha256='5f28338a233f0021097147e74c5f83107e5847de3413eceb308208e39af9fcb4')
version('0.1.4', sha256='5a40569a2b5abe56201f112a10220150353412df39b7e8d21ea8698f424cf295')
depends_on('r-curl@2.4:', type=('build', 'run'))
depends_on('r-dbi@0.6-1:', type=('build', 'run'))
- depends_on('r-rpostgresql@0.4.1:', type=('build', 'run'))
- depends_on('r-rmysql@0.10.11:', type=('build', 'run'))
depends_on('r-rsqlite@1.1.2:', type=('build', 'run'))
depends_on('r-dplyr@0.7.0:', type=('build', 'run'))
+ depends_on('r-tibble', when='@0.3.0:', type=('build', 'run'))
+ depends_on('r-rlang', when='@0.3.0:', type=('build', 'run'))
+ depends_on('r-readr@1.1.1:', when='@0.3.0:', type=('build', 'run'))
depends_on('r-dbplyr@1.0.0:', type=('build', 'run'))
depends_on('r-magrittr@1.5:', type=('build', 'run'))
depends_on('r-hoardr@0.1.0:', type=('build', 'run'))
+ depends_on('r-rpostgresql@0.4.1:', when='@:0.1.4', type=('build', 'run'))
+ depends_on('r-rmysql@0.10.11:', when='@:0.1.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tclust/package.py b/var/spack/repos/builtin/packages/r-tclust/package.py
index 393e56e84b..e8e48f94ae 100644
--- a/var/spack/repos/builtin/packages/r-tclust/package.py
+++ b/var/spack/repos/builtin/packages/r-tclust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,18 @@ from spack import *
class RTclust(RPackage):
- """Provides functions for robust trimmed clustering."""
+ """Robust Trimmed Clustering
+
+ Provides functions for robust trimmed clustering. The methods are described
+ in Garcia-Escudero (2008) <doi:10.1214/07-AOS515>, Fritz et al. (2012)
+ <doi:10.18637/jss.v047.i12>, Garcia-Escudero et al. (2011)
+ <doi:10.1007/s11222-010-9194-z> and others."""
homepage = "https://cloud.r-project.org/package=tclust"
url = "https://cloud.r-project.org/src/contrib/tclust_1.3-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tclust"
+ version('1.4-2', sha256='95dcd07dbd16383f07f5cea8561e7f3bf314e4a7483879841103b149fc8c65d9')
version('1.4-1', sha256='4b0be612c8ecd7b4eb19a44ab6ac8f5d40515600ae1144c55989b6b41335ad9e')
version('1.3-1', sha256='fe4479a73b947d8f6c1cc63587283a8b6223d430d39eee4e5833a06d3d1726d2')
version('1.2-7', sha256='7d2cfa35bbd44086af45be842e6c4743380c7cc8a0f985d2bb7c1a0690c878d7')
diff --git a/var/spack/repos/builtin/packages/r-teachingdemos/package.py b/var/spack/repos/builtin/packages/r-teachingdemos/package.py
index b1d5d8e3a7..a97d91e871 100644
--- a/var/spack/repos/builtin/packages/r-teachingdemos/package.py
+++ b/var/spack/repos/builtin/packages/r-teachingdemos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RTeachingdemos(RPackage):
- """TeachingDemos: Demonstrations for Teaching and Learning.
+ """Demonstrations for Teaching and Learning.
Demonstration functions that can be used in a classroom to demonstrate
statistical concepts, or on your own to better understand the concepts
@@ -17,4 +17,7 @@ class RTeachingdemos(RPackage):
url = "https://cloud.r-project.org/src/contrib/TeachingDemos_2.10.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/TeachingDemos"
+ version('2.12', sha256='3e75405ce1affa406d6df85e06f96381412bc7a2810b25d8c81bfe64c4698644')
version('2.10', sha256='2ef4c2e36ba13e32f66000e84281a3616584c86b255bca8643ff3fe4f78ed704')
+
+ depends_on('r@2.10:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tensor/package.py b/var/spack/repos/builtin/packages/r-tensor/package.py
index 6fc8ace494..ecbf1a8aa8 100644
--- a/var/spack/repos/builtin/packages/r-tensor/package.py
+++ b/var/spack/repos/builtin/packages/r-tensor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-tensora/package.py b/var/spack/repos/builtin/packages/r-tensora/package.py
index 20cc9794a4..9b478c8084 100644
--- a/var/spack/repos/builtin/packages/r-tensora/package.py
+++ b/var/spack/repos/builtin/packages/r-tensora/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,14 +7,18 @@ from spack import *
class RTensora(RPackage):
- """The package provides convenience functions for advance linear algebra
- with tensors and computation with datasets of tensors on a higher level
- abstraction."""
+ """Advanced Tensor Arithmetic with Named Indices
+
+ Provides convenience functions for advanced linear algebra with tensors and
+ computation with data sets of tensors on a higher level abstraction. It
+ includes Einstein and Riemann summing conventions, dragging, co- and
+ contravariate indices, parallel computations on sequences of tensors."""
homepage = "https://cloud.r-project.org/package=tensorA"
url = "https://cloud.r-project.org/src/contrib/tensorA_0.36.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tensorA"
+ version('0.36.2', sha256='8e8947566bd3b65a54de4269df1abaa3d49cf5bfd2a963c3274a524c8a819ca7')
version('0.36.1', sha256='c7ffe12b99867675b5e9c9f31798f9521f14305c9d9f9485b171bcbd8697d09c')
version('0.36', sha256='97b3e72f26ca3a756d045008764d787a32c68f0a276fb7a29b6e1b4592fdecf6')
diff --git a/var/spack/repos/builtin/packages/r-tester/package.py b/var/spack/repos/builtin/packages/r-tester/package.py
new file mode 100644
index 0000000000..9450dc05f6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-tester/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RTester(RPackage):
+ """tester allows you to test characteristics of common R objects."""
+
+ homepage = "https://github.com/gastonstat/tester"
+ url = "https://cloud.r-project.org/src/contrib/tester_0.1.7.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/tester"
+
+ version('0.1.7', sha256='b9c645119c21c69450f3d366c911ed92ac7c14ef61652fd676a38fb9d420b5f4')
+
+ depends_on('r@3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-testit/package.py b/var/spack/repos/builtin/packages/r-testit/package.py
index dfc7b59d5c..b6dde8d99d 100644
--- a/var/spack/repos/builtin/packages/r-testit/package.py
+++ b/var/spack/repos/builtin/packages/r-testit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,16 @@ from spack import *
class RTestit(RPackage):
- """Provides two convenience functions assert() and test_pkg() to facilitate
+ """A Simple Package for Testing R Packages
+
+ Provides two convenience functions assert() and test_pkg() to facilitate
testing R packages."""
homepage = "https://cloud.r-project.org/package=testit"
url = "https://cloud.r-project.org/src/contrib/testit_0.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/testit"
+ version('0.12', sha256='9acdf912f0e7a68a5b6a7946d5ebb0c2007b3d6cd2e39075eddae2b586354e89')
version('0.9', sha256='9cf6b3df9b2c700e4e7dcbd5b8cb64fabefe674e1f40346ccaf39fe7feda5e55')
version('0.8', sha256='08a9c19c962eae60f4ab58885a23e0bc239efc39da682290be436c066f8d97f7')
version('0.7', sha256='03332889bffe8b69d36e696e3a6a1a29713cdcbccf1efced6cddbf061fb41a1f')
diff --git a/var/spack/repos/builtin/packages/r-testthat/package.py b/var/spack/repos/builtin/packages/r-testthat/package.py
index 413aa0d63b..57806ad1d4 100644
--- a/var/spack/repos/builtin/packages/r-testthat/package.py
+++ b/var/spack/repos/builtin/packages/r-testthat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,28 +7,44 @@ from spack import *
class RTestthat(RPackage):
- """A unit testing system designed to be fun, flexible and easy to set
- up."""
+ """Unit Testing for R
+
+ Software testing is important, but, in part because it is frustrating and
+ boring, many of us avoid it. 'testthat' is a testing framework for R that
+ is easy to learn and use, and integrates with your existing 'workflow'."""
homepage = "https://github.com/hadley/testthat"
url = "https://cloud.r-project.org/src/contrib/testthat_1.0.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/testthat"
+ version('3.0.1', sha256='297fc45c719684f11ddf9dc9088f5528fdf9b44625165543384eaf579f243ad0')
version('2.3.2', sha256='1a268d8df07f7cd8d282d03bb96ac2d96a24a95c9aa52f4cca5138a09dd8e06c')
version('2.2.1', sha256='67ee0512bb312695c81fd74338bb8ce9e2e58763681ddbcdfdf35f52dfdb0b78')
version('2.1.0', sha256='cf5fa7108111b32b86e70819352f86b57ab4e835221bb1e83642d52a1fdbcdd4')
version('1.0.2', sha256='0ef7df0ace1fddf821d329f9d9a5d42296085350ae0d94af62c45bd203c8415e')
depends_on('r@3.1:', type=('build', 'run'))
+ depends_on('r-brio', when='@3.0.1:', type=('build', 'run'))
+ depends_on('r-callr@3.5.1:', when='@3.0.1:', type=('build', 'run'))
+ depends_on('r-cli', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-cli@2.2.0:', when='@3.0.1:', type=('build', 'run'))
+ depends_on('r-crayon@1.3.4:', type=('build', 'run'))
+ depends_on('r-desc', when='@3.0.1:', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
depends_on('r-ellipsis', when='@2.3.2:', type=('build', 'run'))
+ depends_on('r-ellipsis@0.2.0:', when='@3.0.1:', type=('build', 'run'))
+ depends_on('r-evaluate', when='@2.2.0:', type=('build', 'run'))
+ depends_on('r-jsonlite', when='@3.0.1:', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@3.0.1:', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-pkgload', when='@2.3.2:', type=('build', 'run'))
- depends_on('r-crayon@1.3.4:', type=('build', 'run'))
depends_on('r-praise', type=('build', 'run'))
- depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-processx', when='@3.0.1:', type=('build', 'run'))
+ depends_on('r-ps@1.3.4:', when='@3.0.1:', type=('build', 'run'))
depends_on('r-r6@2.2.0:', type=('build', 'run'))
- depends_on('r-cli', when='@2.0.0:', type=('build', 'run'))
depends_on('r-rlang@0.3.0:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-rlang@0.4.1:', when='@2.3.2:', type=('build', 'run'))
+ depends_on('r-rlang@0.4.9:', when='@3.0.1:', type=('build', 'run'))
+ depends_on('r-waldo@0.2.1:', when='@3.0.1:', type=('build', 'run'))
depends_on('r-withr@2.0.0:', when='@2.0.0:', type=('build', 'run'))
- depends_on('r-evaluate', when='@2.2.0:', type=('build', 'run'))
+ depends_on('r-withr@2.3.0:', when='@3.0.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tfbstools/package.py b/var/spack/repos/builtin/packages/r-tfbstools/package.py
index 4017c71219..d9100a3af2 100644
--- a/var/spack/repos/builtin/packages/r-tfbstools/package.py
+++ b/var/spack/repos/builtin/packages/r-tfbstools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RTfbstools(RPackage):
- """Software Package for Transcription Factor Binding Site (TFBS) Analysis.
+ """Software Package for Transcription Factor Binding Site (TFBS) Analysis
TFBSTools is a package for the analysis and manipulation of
transcription factor binding sites. It includes matrices conversion
@@ -19,6 +19,7 @@ class RTfbstools(RPackage):
homepage = "https://bioconductor.org/packages/TFBSTools"
git = "https://git.bioconductor.org/packages/TFBSTools.git"
+ version('1.28.0', commit='15e7cf76f39ee3280a27284d58f7adef1c33f193')
version('1.22.0', commit='613d3567fd662b65269bd200c5aa5f87ac6a4612')
version('1.20.0', commit='74035fc6beb1af82f171c11ef2b0a8817714c5bc')
version('1.18.0', commit='17e12b9f3dcb9059d414307ec0bc23ed1ee33294')
diff --git a/var/spack/repos/builtin/packages/r-tfisher/package.py b/var/spack/repos/builtin/packages/r-tfisher/package.py
new file mode 100644
index 0000000000..f31ac4007f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-tfisher/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RTfisher(RPackage):
+ """Optimal Thresholding Fisher's P-Value Combination Method
+
+ We provide the cumulative distribution function (CDF), quantile, and
+ statistical power calculator for a collection of thresholding Fisher's
+ p-value combination methods, including Fisher's p-value combination method,
+ truncated product method and, in particular, soft-thresholding Fisher's
+ p-value combination method which is proven to be optimal in some context of
+ signal detection. The p-value calculator for the omnibus version of these
+ tests are also included. For reference, please see Hong Zhang and Zheyang
+ Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining
+ p-Values", submitted."""
+
+ homepage = "https://cloud.r-project.org/package=TFisher"
+ url = "https://cloud.r-project.org/src/contrib/TFisher_0.2.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/TFisher"
+
+ version('0.2.0', sha256='bd9b7484d6fba0165841596275b446f85ba446d40e92f3b9cb37381a3827e76f')
+
+ depends_on('r-sn', type=('build', 'run'))
+ depends_on('r-mvtnorm', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tfmpvalue/package.py b/var/spack/repos/builtin/packages/r-tfmpvalue/package.py
index f0b354cca6..ffd1a10b42 100644
--- a/var/spack/repos/builtin/packages/r-tfmpvalue/package.py
+++ b/var/spack/repos/builtin/packages/r-tfmpvalue/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-th-data/package.py b/var/spack/repos/builtin/packages/r-th-data/package.py
index 8457465bf1..8b819624d1 100644
--- a/var/spack/repos/builtin/packages/r-th-data/package.py
+++ b/var/spack/repos/builtin/packages/r-th-data/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-threejs/package.py b/var/spack/repos/builtin/packages/r-threejs/package.py
index b73e450f51..b1b7d52b1d 100644
--- a/var/spack/repos/builtin/packages/r-threejs/package.py
+++ b/var/spack/repos/builtin/packages/r-threejs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,23 @@ from spack import *
class RThreejs(RPackage):
- """Create interactive 3D scatter plots, network plots, and globes using the
+ """Interactive 3D Scatter Plots, Networks and Globes
+
+ Create interactive 3D scatter plots, network plots, and globes using the
'three.js' visualization library ("http://threejs.org")."""
homepage = "http://bwlewis.github.io/rthreejs"
url = "https://cloud.r-project.org/src/contrib/threejs_0.2.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/threejs"
+ version('0.3.3', sha256='76c759c8b20fb34f4f7a01cbd1b961296e1f19f4df6dded69aae7f1bca80219c')
version('0.3.1', sha256='71750b741672a435ecf749b69c72f0681aa8bb795e317f4e3056d5e33f6d79e8')
version('0.2.2', sha256='41fe949490fbe0f71e39b0a144791da427bd7361d027579cb4a002ed53520cc5')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r-igraph@1.0.0:', when='@0.3.1:', type=('build', 'run'))
depends_on('r-htmlwidgets@0.3.2:', type=('build', 'run'))
depends_on('r-base64enc', type=('build', 'run'))
+ depends_on('r-crosstalk', when='@0.3.1:', type=('build', 'run'))
depends_on('r-matrix', when='@0.2.2', type=('build', 'run'))
depends_on('r-jsonlite', when='@0.2.2', type=('build', 'run'))
- depends_on('r-igraph@1.0.0:', when='@0.3.1:', type=('build', 'run'))
- depends_on('r-crosstalk', when='@0.3.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tibble/package.py b/var/spack/repos/builtin/packages/r-tibble/package.py
index fe8190c219..b680c18ef2 100644
--- a/var/spack/repos/builtin/packages/r-tibble/package.py
+++ b/var/spack/repos/builtin/packages/r-tibble/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RTibble(RPackage):
- """Provides a 'tbl_df' class that offers better checking and printing
- capabilities than traditional data frames."""
+ """Simple Data Frames
+
+ Provides a 'tbl_df' class (the 'tibble') that provides stricter checking
+ and better formatting than the traditional data frame."""
homepage = "https://github.com/tidyverse/tibble"
url = "https://cloud.r-project.org/src/contrib/tibble_1.3.4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tibble"
+ version('3.0.5', sha256='1cc92d7bf5ecf8291718682fb7fcb96f6f87751f1ed101a7441cad5120195190')
version('2.1.3', sha256='9a8cea9e6b5d24a7e9bf5f67ab38c40b2b6489eddb0d0edb8a48a21ba3574e1a')
version('2.0.1', sha256='7ab2cc295eecf00a5310993c99853cd6622ad468e7a60d004b8a73957a713d13')
version('2.0.0', sha256='05ad2d62e949909548c4bb8ac596810321f11b330afa9717d0889dc35edd99ba')
@@ -23,14 +26,20 @@ class RTibble(RPackage):
version('1.2', sha256='ed8a8bd0591223f742be80fd1cd8c4a9618d0f04011ec95c272b61ea45193104')
version('1.1', sha256='10ea18890e5514faa4c2c05fa231a6e2bbb7689f3800850cead214306414c88e')
- depends_on('r@3.1.0:', when='@1.3.0:', type=('build', 'run'))
depends_on('r@3.1.2:', when='@:1.2', type=('build', 'run'))
- depends_on('r-assertthat', type=('build', 'run'), when='@:1.3.1')
- depends_on('r-lazyeval@0.1.10:', type=('build', 'run'), when='@:1.3.0')
- depends_on('r-rcpp@0.12.3:', type=('build', 'run'), when='@:1.3.4')
- depends_on('r-rlang@0.3.0:', type=('build', 'run'), when='@1.3.1:')
- depends_on('r-cli', type=('build', 'run'), when='@1.4.2:')
- depends_on('r-crayon@1.3.4:', type=('build', 'run'), when='@1.4.1:')
- depends_on('r-pillar@1.3.1:', type=('build', 'run'), when='@1.4.1:')
- depends_on('r-pkgconfig', type=('build', 'run'), when='@2.0.0:')
- depends_on('r-fansi@0.4.0:', type=('build', 'run'), when='@2.0.0:')
+ depends_on('r@3.1.0:', when='@1.3.0:', type=('build', 'run'))
+ depends_on('r-cli', when='@1.4.2:', type=('build', 'run'))
+ depends_on('r-crayon@1.3.4:', when='@1.4.1:', type=('build', 'run'))
+ depends_on('r-ellipsis@0.2.0:', when='@3.0.5:', type=('build', 'run'))
+ depends_on('r-fansi@0.4.0:', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-lifecycle@0.2.0:', when='@3.0.5:', type=('build', 'run'))
+ depends_on('r-magrittr', when='@3.0.5:', type=('build', 'run'))
+ depends_on('r-pillar@1.3.1:', when='@1.4.1:', type=('build', 'run'))
+ depends_on('r-pillar@1.4.3:', when='@3.0.5:', type=('build', 'run'))
+ depends_on('r-pkgconfig', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-rlang@0.3.0:', when='@1.3.1:', type=('build', 'run'))
+ depends_on('r-rlang@0.4.3:', when='@3.0.5:', type=('build', 'run'))
+ depends_on('r-vctrs@0.3.2:', when='@3.0.5:', type=('build', 'run'))
+ depends_on('r-assertthat', when='@:1.3.1', type=('build', 'run'))
+ depends_on('r-lazyeval@0.1.10:', when='@:1.3.0', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.3:', when='@:1.3.4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tictoc/package.py b/var/spack/repos/builtin/packages/r-tictoc/package.py
new file mode 100644
index 0000000000..0b56b4d08a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-tictoc/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RTictoc(RPackage):
+ """tictoc: Functions for timing R scripts, as well as implementations of
+ Stack and List structures
+
+ This package provides the timing functions 'tic' and 'toc'
+ that can be nested. One can record all timings while a
+ complex script is running, and examine the values later. It
+ is also possible to instrument the timing calls with custom
+ callbacks. In addition, this package provides class
+ 'Stack', implemented as a vector, and class 'List',
+ implemented as a list, both of which support operations
+ 'push', 'pop', 'first', 'last' and 'clear'."""
+
+ homepage = "https://collectivemedia.github.io/tictoc/"
+ url = "https://cloud.r-project.org/src/contrib/tictoc_1.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/tictoc"
+
+ version('1.0', sha256='47da097c1822caa2d8e262381987cfa556ad901131eb96109752742526b2e2fe')
+
+ depends_on('r@3.0.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tidycensus/package.py b/var/spack/repos/builtin/packages/r-tidycensus/package.py
index 1d7269612b..a6ee266997 100644
--- a/var/spack/repos/builtin/packages/r-tidycensus/package.py
+++ b/var/spack/repos/builtin/packages/r-tidycensus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,19 @@ from spack import *
class RTidycensus(RPackage):
- """An integrated R interface to the decennial US Census and American
- Community Survey APIs and the US Census Bureau's geographic boundary
- files. Allows R users to return Census and ACS data as tidyverse-ready
- data frames, and optionally returns a list-column with feature
- geometry for many geographies."""
+ """Load US Census Boundary and Attribute Data as 'tidyverse' and 'sf'-Ready Data Frames
+
+ An integrated R interface to the decennial US Census and American Community
+ Survey APIs and the US Census Bureau's geographic boundary files. Allows R
+ users to return Census and ACS data as tidyverse-ready data frames, and
+ optionally returns a list-column with feature geometry for all Census
+ geographies. """
homepage = "https://cloud.r-project.org/package=tidycensus"
url = "https://cloud.r-project.org/src/contrib/tidycensus_0.3.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tidycensus"
+ version('0.11', sha256='da2fba4cd987615dedd22f64d9f38804f4e2161af31bacf1f3b5a013d71fdd43')
version('0.9.2', sha256='2454525301caff9eaaf6ebe14f58706ece1fbace6187ce8bf3fff04c842b9536')
version('0.3.1', sha256='d03cbee7abbf87bb4ce2e649726bdd143d47b549f30b5a11aaaa6c4aff78e778')
@@ -24,13 +27,16 @@ class RTidycensus(RPackage):
depends_on('r-httr', type=('build', 'run'))
depends_on('r-sf', type=('build', 'run'))
depends_on('r-dplyr@0.7.0:', type=('build', 'run'))
+ depends_on('r-dplyr@0.8.0:', when='@0.11:', type=('build', 'run'))
depends_on('r-tigris', type=('build', 'run'))
depends_on('r-stringr', type=('build', 'run'))
depends_on('r-jsonlite@1.5.0:', type=('build', 'run'))
depends_on('r-purrr', type=('build', 'run'))
depends_on('r-rvest', type=('build', 'run'))
depends_on('r-tidyr@0.7.0:', type=('build', 'run'))
+ depends_on('r-tidyr@1.0.0:', when='@0.11:', type=('build', 'run'))
depends_on('r-rappdirs', type=('build', 'run'))
depends_on('r-readr', type=('build', 'run'))
depends_on('r-xml2', type=('build', 'run'))
depends_on('r-units', type=('build', 'run'))
+ depends_on('r-rlang', when='@0.11:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tidygraph/package.py b/var/spack/repos/builtin/packages/r-tidygraph/package.py
index 07fe0442de..64dda1bbbe 100644
--- a/var/spack/repos/builtin/packages/r-tidygraph/package.py
+++ b/var/spack/repos/builtin/packages/r-tidygraph/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RTidygraph(RPackage):
- """tidygraph: A Tidy API for Graph Manipulation.
+ """A Tidy API for Graph Manipulation.
A graph, while not "tidy" in itself, can be thought of as two tidy data
frames describing node and edge data respectively. 'tidygraph' provides an
@@ -19,10 +19,12 @@ class RTidygraph(RPackage):
url = "https://cloud.r-project.org/src/contrib/tidygraph_1.1.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tidygraph"
+ version('1.2.0', sha256='057d6c42fc0144109f3ace7f5058cca7b2fe493c761daa991448b23f86b6129f')
version('1.1.2', sha256='5642001d4cccb122d66481b7c61a06c724c02007cbd356ee61cb29726a56fafe')
depends_on('r-tibble', type=('build', 'run'))
depends_on('r-dplyr@0.8:', type=('build', 'run'))
+ depends_on('r-dplyr@0.8.5:', when='@1.2.0:', type=('build', 'run'))
depends_on('r-igraph', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-rlang', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tidyr/package.py b/var/spack/repos/builtin/packages/r-tidyr/package.py
index ac089a646b..f56246f8bd 100644
--- a/var/spack/repos/builtin/packages/r-tidyr/package.py
+++ b/var/spack/repos/builtin/packages/r-tidyr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,26 +7,40 @@ from spack import *
class RTidyr(RPackage):
- """An evolution of 'reshape2'. It's designed specifically for data tidying
- (not general reshaping or aggregating) and works well with 'dplyr' data
- pipelines."""
+ """Tidy Messy Data
+
+ Tools to help to create tidy data, where each column is a variable, each
+ row is an observation, and each cell contains a single value. 'tidyr'
+ contains tools for changing the shape (pivoting) and hierarchy (nesting and
+ 'unnesting') of a dataset, turning deeply nested lists into rectangular
+ data frames ('rectangling'), and extracting values out of string columns.
+ It also includes tools for working with missing values (both implicit and
+ explicit)."""
homepage = "https://github.com/hadley/tidyr"
url = "https://cloud.r-project.org/src/contrib/tidyr_0.7.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tidyr"
+ version('1.1.2', sha256='08fccb67824515b33187886f3ca2cf2fe747a778514892dbbf5e565edf0dfd6c')
version('0.8.3', sha256='a18f54ec35124110058ab23f7e0a3c037a8d50f0405520cf5cc5443ec022cc37')
version('0.8.2', sha256='99a508d0539390364789c5f4835b36c4a383927f0ec1648e2a4636c1cc6e490f')
version('0.7.2', sha256='062cea2e2b57fffd500e4ce31cba6d593e65684fc0897ea49ea38d257c76009c')
version('0.5.1', sha256='dbab642ac7231cbfe3e2a0d4553fb4ffb3699c6d6b432be2bb5812dfbbdbdace')
depends_on('r@3.1:', type=('build', 'run'))
- depends_on('r-tibble', type=('build', 'run'))
depends_on('r-dplyr@0.7.0:', type=('build', 'run'))
- depends_on('r-stringi', type=('build', 'run'))
- depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-dplyr@0.8.2:', when='@1.1.2:', type=('build', 'run'))
+ depends_on('r-ellipsis@0.1.0:', when='@1.1.2:', type=('build', 'run'))
depends_on('r-glue', type=('build', 'run'))
- depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-purrr', type=('build', 'run'))
- depends_on('r-tidyselect@0.2.5:', type=('build', 'run'))
depends_on('r-rlang', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-tibble@2.1.1:', when='@1.1.2:', type=('build', 'run'))
+ depends_on('r-tidyselect@0.2.5:', type=('build', 'run'))
+ depends_on('r-tidyselect@1.1.0:', when='@1.1.2:', type=('build', 'run'))
+ depends_on('r-vctrs@0.3.0:', when='@1.1.2:', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@1.1.2:', type=('build', 'run'))
+ depends_on('r-cpp11@0.2.1:', when='@1.1.2:', type=('build', 'run'))
+ depends_on('r-stringi', when='@:0.8.3', type=('build', 'run'))
+ depends_on('r-rcpp', when='@:0.8.3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tidyselect/package.py b/var/spack/repos/builtin/packages/r-tidyselect/package.py
index eec8929ee3..ed64338c59 100644
--- a/var/spack/repos/builtin/packages/r-tidyselect/package.py
+++ b/var/spack/repos/builtin/packages/r-tidyselect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,20 +7,28 @@ from spack import *
class RTidyselect(RPackage):
- """A backend for the selecting functions of the 'tidyverse'. It makes it
- easy to implement select-like functions in your own packages in a way
- that is consistent with other 'tidyverse' interfaces for selection."""
+ """Select from a Set of Strings
+
+ A backend for the selecting functions of the 'tidyverse'. It makes it easy
+ to implement select-like functions in your own packages in a way that is
+ consistent with other 'tidyverse' interfaces for selection."""
homepage = "https://cloud.r-project.org/package=tidyselect"
url = "https://cloud.r-project.org/src/contrib/tidyselect_0.2.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tidyselect"
+ version('1.1.0', sha256='e635ed381fb53f7a53c3fa36bb33e134a3273d272367de2a8d909c821be93893')
version('0.2.5', sha256='5ce2e86230fa35cfc09aa71dcdd6e05e1554a5739c863ca354d241bfccb86c74')
version('0.2.4', sha256='5cb30e56ad5c1ac59786969edc8d542a7a1735a129a474f585a141aefe6a2295')
version('0.2.3', sha256='0c193abc8251a60e1d2a32a99c77651c336bc185e3c2a72e5f8781813d181c2c')
depends_on('r@3.1:', type=('build', 'run'))
+ depends_on('r@3.2:', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-ellipsis', when='@1.1.0:', type=('build', 'run'))
depends_on('r-glue@1.3.0:', type=('build', 'run'))
depends_on('r-purrr', type=('build', 'run'))
+ depends_on('r-purrr@0.3.2:', when='@1.1.0:', type=('build', 'run'))
depends_on('r-rlang@0.2.2:', type=('build', 'run'))
- depends_on('r-rcpp@0.12.0:', type=('build', 'run'))
+ depends_on('r-rlang@0.4.6:', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-vctrs@0.2.2:', when='@1.1.0:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.0:', when='@:0.2.5', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tidyverse/package.py b/var/spack/repos/builtin/packages/r-tidyverse/package.py
index 6b27c90934..53b74caf0d 100644
--- a/var/spack/repos/builtin/packages/r-tidyverse/package.py
+++ b/var/spack/repos/builtin/packages/r-tidyverse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,39 +7,69 @@ from spack import *
class RTidyverse(RPackage):
- """The 'tidyverse' is a set of packages that work in harmony because they
- share common data representations and 'API' design. This package is
- designed to make it easy to install and load multiple 'tidyverse'
- packages in a single step."""
+ """Easily Install and Load the 'Tidyverse'
+
+ The 'tidyverse' is a set of packages that work in harmony because they
+ share common data representations and 'API' design. This package is
+ designed to make it easy to install and load multiple 'tidyverse' packages
+ in a single step. Learn more about the 'tidyverse' at
+ <https://tidyverse.org>."""
homepage = "http://tidyverse.tidyverse.org/"
url = "https://cloud.r-project.org/src/contrib/tidyverse_1.2.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tidyverse"
+ version('1.3.0', sha256='6d8acb81e994f9bef5e4dcf908bcea3786d108adcf982628235b6c8c80f6fe09')
version('1.2.1', sha256='ad67a27bb4e89417a15338fe1a40251a7b5dedba60e9b72637963d3de574c37b')
+ depends_on('r+X', type=('build', 'run'))
+ depends_on('r@3.2:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-broom@0.4.2:', type=('build', 'run'))
+ depends_on('r-broom@0.5.2:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-cli@1.0.0:', type=('build', 'run'))
+ depends_on('r-cli@1.1.0:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-crayon@1.3.4:', type=('build', 'run'))
- depends_on('r-dplyr@0.7.4:', type=('build', 'run'))
depends_on('r-dbplyr@1.1.0:', type=('build', 'run'))
+ depends_on('r-dbplyr@1.4.2:', when='@1.3.0:', type=('build', 'run'))
+ depends_on('r-dplyr@0.7.4:', type=('build', 'run'))
+ depends_on('r-dplyr@0.8.3:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-forcats@0.2.0:', type=('build', 'run'))
+ depends_on('r-forcats@0.4.0:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-ggplot2@2.2.1:', type=('build', 'run'))
+ depends_on('r-ggplot2@3.2.1:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-haven@1.1.0:', type=('build', 'run'))
+ depends_on('r-haven@2.2.0:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-hms@0.3:', type=('build', 'run'))
+ depends_on('r-hms@0.5.2:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-httr@1.3.1:', type=('build', 'run'))
+ depends_on('r-httr@1.4.1:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-jsonlite@1.5:', type=('build', 'run'))
+ depends_on('r-jsonlite@1.6:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-lubridate@1.7.1:', type=('build', 'run'))
+ depends_on('r-lubridate@1.7.4:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-magrittr@1.5:', type=('build', 'run'))
depends_on('r-modelr@0.1.1:', type=('build', 'run'))
+ depends_on('r-modelr@0.1.5:', when='@1.3.0:', type=('build', 'run'))
+ depends_on('r-pillar@1.4.2:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-purrr@0.2.4:', type=('build', 'run'))
+ depends_on('r-purrr@0.3.3:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-readr@1.1.1:', type=('build', 'run'))
+ depends_on('r-readr@1.3.1:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-readxl@1.0.0:', type=('build', 'run'))
+ depends_on('r-readxl@1.3.1:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-reprex@0.1.1:', type=('build', 'run'))
+ depends_on('r-reprex@0.3.0:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-rlang@0.1.4:', type=('build', 'run'))
+ depends_on('r-rlang@0.4.1:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-rstudioapi@0.7:', type=('build', 'run'))
+ depends_on('r-rstudioapi@0.10:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-rvest@0.3.2:', type=('build', 'run'))
+ depends_on('r-rvest@0.3.5:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-stringr@1.2.0:', type=('build', 'run'))
+ depends_on('r-stringr@1.4.0:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-tibble@1.3.4:', type=('build', 'run'))
+ depends_on('r-tibble@2.1.3:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-tidyr@0.7.2:', type=('build', 'run'))
+ depends_on('r-tidyr@1.0.0:', when='@1.3.0:', type=('build', 'run'))
depends_on('r-xml2@1.1.1:', type=('build', 'run'))
+ depends_on('r-xml2@1.2.2:', when='@1.3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tiff/package.py b/var/spack/repos/builtin/packages/r-tiff/package.py
index 91e7f261c2..ea2ef4b4c0 100644
--- a/var/spack/repos/builtin/packages/r-tiff/package.py
+++ b/var/spack/repos/builtin/packages/r-tiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,16 +7,19 @@ from spack import *
class RTiff(RPackage):
- """This package provides an easy and simple way to read, write and
- display bitmap images stored in the TIFF format. It can read and
- write both files and in-memory raw vectors."""
+ """Read and write TIFF images
+
+ This package provides an easy and simple way to read, write and display
+ bitmap images stored in the TIFF format. It can read and write both files
+ and in-memory raw vectors."""
homepage = "http://www.rforge.net/tiff/"
url = "https://cloud.r-project.org/src/contrib/tiff_0.1-5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tiff"
+ version('0.1-6', sha256='623bd9c16a426df7e6056738c5d91da86ea9b49df375eea6b5127e4e458dc4fb')
version('0.1-5', sha256='9514e6a9926fcddc29ce1dd12b1072ad8265900373f738de687ef4a1f9124e2b')
depends_on('r@2.9.0:', type=('build', 'run'))
- depends_on("jpeg")
depends_on("libtiff")
+ depends_on("jpeg")
diff --git a/var/spack/repos/builtin/packages/r-tigris/package.py b/var/spack/repos/builtin/packages/r-tigris/package.py
index dfa9230ace..962fd6f81d 100644
--- a/var/spack/repos/builtin/packages/r-tigris/package.py
+++ b/var/spack/repos/builtin/packages/r-tigris/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RTigris(RPackage):
- """Download TIGER/Line shapefiles from the United States Census Bureau
+ """Load Census TIGER/Line Shapefiles
+
+ Download TIGER/Line shapefiles from the United States Census Bureau
and load into R as 'SpatialDataFrame' or 'sf' objects."""
homepage = "https://cloud.r-project.org/package=tigris"
url = "https://cloud.r-project.org/src/contrib/tigris_0.5.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tigris"
+ version('1.0', sha256='97c76568c7cf0615abcbf923a0b4387f6b8c1915b9eb42d0c34cb0f707654403')
version('0.8.2', sha256='ed8d6ab25332c2cc800858d58324bd8264772d8a916a3f0a8d489250a7e7140e')
version('0.5.3', sha256='6ecf76f82216798465cd9704acb432caea47469ffc4953f1aaefa4d642a28445')
@@ -22,7 +25,6 @@ class RTigris(RPackage):
depends_on('r-stringr', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-rgdal', type=('build', 'run'))
- depends_on('r-rgeos', when='@:0.5.3', type=('build', 'run'))
depends_on('r-sp', type=('build', 'run'))
depends_on('r-rappdirs', type=('build', 'run'))
depends_on('r-maptools', type=('build', 'run'))
@@ -30,3 +32,4 @@ class RTigris(RPackage):
depends_on('r-uuid', type=('build', 'run'))
depends_on('r-sf', type=('build', 'run'))
depends_on('r-dplyr', type=('build', 'run'))
+ depends_on('r-rgeos', when='@:0.5.3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-timedate/package.py b/var/spack/repos/builtin/packages/r-timedate/package.py
index 86a5d27fc1..d884c5b0ef 100644
--- a/var/spack/repos/builtin/packages/r-timedate/package.py
+++ b/var/spack/repos/builtin/packages/r-timedate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-tinytex/package.py b/var/spack/repos/builtin/packages/r-tinytex/package.py
index d17b71ef9e..427b5fd647 100644
--- a/var/spack/repos/builtin/packages/r-tinytex/package.py
+++ b/var/spack/repos/builtin/packages/r-tinytex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RTinytex(RPackage):
- """Helper functions to install and maintain the 'LaTeX' distribution named
+ """Helper Functions to Install and Maintain TeX Live, and Compile LaTeX Documents
+
+ Helper functions to install and maintain the 'LaTeX' distribution named
'TinyTeX' (<https://yihui.name/tinytex/>), a lightweight, cross-platform,
portable, and easy-to-maintain version of 'TeX Live'. This package also
contains helper functions to compile 'LaTeX' documents, and install missing
@@ -17,6 +19,8 @@ class RTinytex(RPackage):
url = "https://cloud.r-project.org/src/contrib/tinytex_0.15.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tinytex"
+ version('0.28', sha256='76a0650aeab04eb252dc9cfa9ba855d88b09dfc2207c4a8ea2ea04fa0e0eea86')
version('0.15', sha256='5d0988d3b7f763dfa65c722f177452a21344e428415a4b31aeb51478f0abad90')
depends_on('r-xfun@0.5:', type=('build', 'run'))
+ depends_on('r-xfun@0.19:', when='@0.28:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tmixclust/package.py b/var/spack/repos/builtin/packages/r-tmixclust/package.py
index 03ee54b2e0..227a4c9e33 100644
--- a/var/spack/repos/builtin/packages/r-tmixclust/package.py
+++ b/var/spack/repos/builtin/packages/r-tmixclust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RTmixclust(RPackage):
"""Time Series Clustering of Gene Expression with Gaussian Mixed-Effects
- Models and Smoothing Splines.
+ Models and Smoothing Splines
Implementation of a clustering method for time series gene expression
data based on mixed-effects models with Gaussian variables and non-
@@ -19,6 +19,7 @@ class RTmixclust(RPackage):
homepage = "https://bioconductor.org/packages/TMixClust"
git = "https://git.bioconductor.org/packages/TMixClust.git"
+ version('1.12.0', commit='982b31bd7e22a3dc638bbda0336546220444f0c2')
version('1.6.0', commit='9f5f78e52538d15f402c8f6e4c60f7212c7bc548')
version('1.4.0', commit='a52fcae6e7a5dd41e7afbe128f35397e8bc8cb12')
version('1.2.0', commit='0250c0b238f08077b5b9ff17c2f3b7633c67dc3c')
diff --git a/var/spack/repos/builtin/packages/r-tmvnsim/package.py b/var/spack/repos/builtin/packages/r-tmvnsim/package.py
new file mode 100644
index 0000000000..eee9e4e6d4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-tmvnsim/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RTmvnsim(RPackage):
+ """Truncated Multivariate Normal Simulation
+
+ Importance sampling from the truncated multivariate normal using the GHK
+ (Geweke-Hajivassiliou-Keane) simulator. Unlike Gibbs sampling which can get
+ stuck in one truncation sub-region depending on initial values, this
+ package allows truncation based on disjoint regions that are created by
+ truncation of absolute values. The GHK algorithm uses simple Cholesky
+ transformation followed by recursive simulation of univariate truncated
+ normals hence there are also no convergence issues. Importance sample is
+ returned along with sampling weights, based on which, one can calculate
+ integrals over truncated regions for multivariate normals."""
+
+ homepage = "https://cloud.r-project.org/package=tmvnsim"
+ url = "https://cloud.r-project.org/src/contrib/tmvnsim_1.0-2.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/tmvnsim"
+
+ version('1.0-2', sha256='97f63d0bab3b240cc7bdbe6e6e74e90ad25a4382a345ee51a26fe3959edeba0f')
diff --git a/var/spack/repos/builtin/packages/r-topgo/package.py b/var/spack/repos/builtin/packages/r-topgo/package.py
index e1a7d922cd..d14d35f573 100644
--- a/var/spack/repos/builtin/packages/r-topgo/package.py
+++ b/var/spack/repos/builtin/packages/r-topgo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RTopgo(RPackage):
- """Enrichment Analysis for Gene Ontology.
+ """Enrichment Analysis for Gene Ontology
topGO package provides tools for testing GO terms while accounting for
the topology of the GO graph. Different test statistics and different
@@ -17,6 +17,7 @@ class RTopgo(RPackage):
homepage = "https://bioconductor.org/packages/topGO"
git = "https://git.bioconductor.org/packages/topGO.git"
+ version('2.42.0', commit='3a33cf53883de45bda506953303e1809ab982adc')
version('2.36.0', commit='c2f6c187b41c4aa44cc92ac781fdd878491a4019')
version('2.34.0', commit='44cb5eaba515b365b7b2a8c22df0a45883db6b4d')
version('2.32.0', commit='78ce3068fc06ae38d55219759fa177e2fcb3f596')
diff --git a/var/spack/repos/builtin/packages/r-triebeard/package.py b/var/spack/repos/builtin/packages/r-triebeard/package.py
index 002ee655ca..3a5c7f9923 100644
--- a/var/spack/repos/builtin/packages/r-triebeard/package.py
+++ b/var/spack/repos/builtin/packages/r-triebeard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-trimcluster/package.py b/var/spack/repos/builtin/packages/r-trimcluster/package.py
index c23abf948d..17f1e4600a 100644
--- a/var/spack/repos/builtin/packages/r-trimcluster/package.py
+++ b/var/spack/repos/builtin/packages/r-trimcluster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,16 @@ from spack import *
class RTrimcluster(RPackage):
- """trimcluster: Cluster analysis with trimming"""
+ """Cluster analysis with trimming
+
+ Trimmed k-means clustering. The method is described in Cuesta-Albertos et
+ al. (1997) <doi:10.1214/aos/1031833664>."""
homepage = "http://www.homepages.ucl.ac.uk/~ucakche"
url = "https://cloud.r-project.org/src/contrib/trimcluster_0.1-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/trimcluster"
+ version('0.1-5', sha256='9239f20e4a06ac2fa89e5d5d89b23a45c8c534a7264d89bede8a35d43dda518b')
version('0.1-2.1', sha256='b64a872a6c2ad677dfeecc776c9fe5aff3e8bab6bc6a8c86957b5683fd5d2300')
version('0.1-2', sha256='622fb61580cc19b9061c6ee28ffd751250a127f07904b45a0e1c5438d25b4f53')
diff --git a/var/spack/repos/builtin/packages/r-truncdist/package.py b/var/spack/repos/builtin/packages/r-truncdist/package.py
index 5ead0acf76..4e700ffdc9 100644
--- a/var/spack/repos/builtin/packages/r-truncdist/package.py
+++ b/var/spack/repos/builtin/packages/r-truncdist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-truncnorm/package.py b/var/spack/repos/builtin/packages/r-truncnorm/package.py
index 8ffad56a3f..9345027f92 100644
--- a/var/spack/repos/builtin/packages/r-truncnorm/package.py
+++ b/var/spack/repos/builtin/packages/r-truncnorm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-trust/package.py b/var/spack/repos/builtin/packages/r-trust/package.py
index 90ec0c4059..66662d8961 100644
--- a/var/spack/repos/builtin/packages/r-trust/package.py
+++ b/var/spack/repos/builtin/packages/r-trust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RTrust(RPackage):
- """Does local optimization using two derivatives and trust regions.
- Guaranteed to converge to local minimum of objective function."""
+ """Trust Region Optimization
+
+ Does local optimization using two derivatives and trust regions.
+ Guaranteed to converge to local minimum of objective function."""
homepage = "http://www.stat.umn.edu/geyer/trust"
url = "https://cloud.r-project.org/src/contrib/trust_0.1-7.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/trust"
+ version('0.1-8', sha256='952e348b62aec35988b103fd152329662cb6a451538f184549252fbf49d7dcac')
version('0.1-7', sha256='e3d15aa84a71becd2824253d4a8156bdf1ab9ac3b72ced0cd53f3bb370ac6f04')
depends_on('r@2.10.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tseries/package.py b/var/spack/repos/builtin/packages/r-tseries/package.py
index 4c67387fcc..71c57c5e7d 100644
--- a/var/spack/repos/builtin/packages/r-tseries/package.py
+++ b/var/spack/repos/builtin/packages/r-tseries/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,15 @@ from spack import *
class RTseries(RPackage):
- """Time series analysis and computational finance."""
+ """Time series analysis and computational finance
+
+ Time series analysis and computational finance."""
homepage = "https://cloud.r-project.org/package=tseries"
url = "https://cloud.r-project.org/src/contrib/tseries_0.10-42.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/tseries"
+ version('0.10-48', sha256='53bd22708c936205c5f839a10f2e302524d2cc54dc309e7d885ebd081ccb4471')
version('0.10-47', sha256='202377df56806fe611c2e12c4d9732c71b71220726e2defa7e568d2b5b62fb7b')
version('0.10-46', sha256='12940afd1d466401160e46f993ed4baf28a42cef98d3757b66ee15e916e07222')
version('0.10-42', sha256='827f79858715c700e8cabd2c27853ba88ad0e05eb043bc94e126b155a75546c4')
diff --git a/var/spack/repos/builtin/packages/r-tsne/package.py b/var/spack/repos/builtin/packages/r-tsne/package.py
index 98c3e47ebe..a1ce6b5ee5 100644
--- a/var/spack/repos/builtin/packages/r-tsne/package.py
+++ b/var/spack/repos/builtin/packages/r-tsne/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-ttr/package.py b/var/spack/repos/builtin/packages/r-ttr/package.py
index 3e895bcee6..1dc8fccd82 100644
--- a/var/spack/repos/builtin/packages/r-ttr/package.py
+++ b/var/spack/repos/builtin/packages/r-ttr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,17 @@ from spack import *
class RTtr(RPackage):
- """Functions and data to construct technical trading rules with R."""
+ """Technical Trading Rules
+
+ A collection of over 50 technical indicators for creating technical trading
+ rules. The package also provides fast implementations of common
+ rolling-window functions, and several volatility calculations."""
homepage = "https://github.com/joshuaulrich/TTR"
url = "https://cloud.r-project.org/src/contrib/TTR_0.23-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/TTR"
+ version('0.24.2', sha256='2587b988d9199474a19470b9b999b99133d0d8aa45410813e05c5f0ed763711b')
version('0.23-4', sha256='eb17604da986213b3b924f0af65c3d089502a658a253ee34f6b8f6caccf6bfa2')
version('0.23-3', sha256='2136032c7a2cd2a82518a4412fc655ecb16597b123dbdebe5684caef9f15261f')
version('0.23-1', sha256='699798f06ceae9663da47b67d1bc8679fc1c0776d12afd054d6ac4d19e05b2ae')
diff --git a/var/spack/repos/builtin/packages/r-tweenr/package.py b/var/spack/repos/builtin/packages/r-tweenr/package.py
index a3838289e2..7662f47252 100644
--- a/var/spack/repos/builtin/packages/r-tweenr/package.py
+++ b/var/spack/repos/builtin/packages/r-tweenr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg18-knowngene/package.py b/var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg18-knowngene/package.py
index fc1500a232..ddb96a7c6b 100644
--- a/var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg18-knowngene/package.py
+++ b/var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg18-knowngene/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RTxdbHsapiensUcscHg18Knowngene(RPackage):
- """Exposes an annotation databases generated from UCSC by exposing these as
+ """Annotation package for TxDb object(s)
+
+ Exposes an annotation databases generated from UCSC by exposing these as
TxDb objects"""
# This is a bioconductor package but ther is no available git repo
diff --git a/var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg19-knowngene/package.py b/var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg19-knowngene/package.py
index a0d5b6ccde..9892bdd2bb 100644
--- a/var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg19-knowngene/package.py
+++ b/var/spack/repos/builtin/packages/r-txdb-hsapiens-ucsc-hg19-knowngene/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RTxdbHsapiensUcscHg19Knowngene(RPackage):
- """Exposes an annotation databases generated from UCSC by exposing these as
+ """Annotation package for TxDb object(s)
+
+ Exposes an annotation databases generated from UCSC by exposing these as
TxDb objects."""
# This is a bioconductor package but there is no available git repo.
diff --git a/var/spack/repos/builtin/packages/r-tximport/package.py b/var/spack/repos/builtin/packages/r-tximport/package.py
index 8e36f5b518..ad77f1f07b 100644
--- a/var/spack/repos/builtin/packages/r-tximport/package.py
+++ b/var/spack/repos/builtin/packages/r-tximport/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RTximport(RPackage):
"""Import and summarize transcript-level estimates for transcript- and
- gene-level analysis.
+ gene-level analysis
Imports transcript-level abundance, estimated counts and transcript
lengths, and summarizes into matrices for use with downstream gene-level
@@ -20,6 +20,7 @@ class RTximport(RPackage):
homepage = "https://bioconductor.org/packages/tximport"
git = "https://git.bioconductor.org/packages/tximport.git"
+ version('1.18.0', commit='58b20cbc566648586b6990b30ebc70bef308cb05')
version('1.12.3', commit='acbdead961471c3b910d720f73bd0af1b7a07c57')
version('1.10.1', commit='cd8f81cf7140f61d4a4f25f89451fb49e2cd4bd3')
version('1.8.0', commit='cc91b8389ca4c16b0f588bdeb63d051a11e8a705')
diff --git a/var/spack/repos/builtin/packages/r-tximportdata/package.py b/var/spack/repos/builtin/packages/r-tximportdata/package.py
index 84a19036a0..2ebf3b531c 100644
--- a/var/spack/repos/builtin/packages/r-tximportdata/package.py
+++ b/var/spack/repos/builtin/packages/r-tximportdata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,10 +7,16 @@ from spack import *
class RTximportdata(RPackage):
- """This packages provides the output of running various transcript abundance
- quantifiers on a set of 6 RNA-seq samples from the GEUVADIS project"""
+ """Import and summarize transcript-level estimates for transcript- and
+ gene-level analysis
- homepage = "http://bioconductor.org/packages/release/data/experiment/html/tximportData.html"
- url = "http://bioconductor.org/packages/release/data/experiment/src/contrib/tximportData_1.18.0.tar.gz"
+ Imports transcript-level abundance, estimated counts and transcript
+ lengths, and summarizes into matrices for use with downstream gene-level
+ analysis packages. Average transcript length, weighted by sample-specific
+ transcript abundance estimates, is provided as a matrix which can be used
+ as an offset for different expression of gene-level counts."""
- version('1.18.0', sha256='4edf9fdcf5b0086fc958d5ac0249668c7cf7e2fa941cd8d413620634d0cb5971')
+ homepage = "https://github.com/mikelove/tximport"
+ git = "https://git.bioconductor.org/packages/tximportData"
+
+ version('1.18.0', commit='24945f8dd1e4e441ad5145fb7a37a1630912f929')
diff --git a/var/spack/repos/builtin/packages/r-ucminf/package.py b/var/spack/repos/builtin/packages/r-ucminf/package.py
index e3a26f33e4..f5294cf85e 100644
--- a/var/spack/repos/builtin/packages/r-ucminf/package.py
+++ b/var/spack/repos/builtin/packages/r-ucminf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-udunits2/package.py b/var/spack/repos/builtin/packages/r-udunits2/package.py
index eda9137d8e..1aa728ef7c 100644
--- a/var/spack/repos/builtin/packages/r-udunits2/package.py
+++ b/var/spack/repos/builtin/packages/r-udunits2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-units/package.py b/var/spack/repos/builtin/packages/r-units/package.py
index bac5d4637a..24eaf5ddcd 100644
--- a/var/spack/repos/builtin/packages/r-units/package.py
+++ b/var/spack/repos/builtin/packages/r-units/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,22 +7,27 @@ from spack import *
class RUnits(RPackage):
- """Support for measurement units in R vectors, matrices and arrays:
- automatic propagation, conversion, derivation and simplification of
- units; raising errors in case of unit incompatibility. Compatible with
- the POSIXct, Date and difftime classes. Uses the UNIDATA udunits
- library and unit database for unit compatibility checking and
- conversion."""
+ """Measurement Units for R Vectors
+
+ Support for measurement units in R vectors, matrices and arrays: automatic
+ propagation, conversion, derivation and simplification of units; raising
+ errors in case of unit incompatibility. Compatible with the POSIXct, Date
+ and difftime classes. Uses the UNIDATA udunits library and unit database
+ for unit compatibility checking and conversion. Documentation about
+ 'units' is provided in the paper by Pebesma, Mailund & Hiebert (2016,
+ <doi:10.32614/RJ-2016-061>), included in this package as a vignette; see
+ 'citation("units")' for details."""
homepage = "https://github.com/edzer/units/"
url = "https://cloud.r-project.org/src/contrib/units_0.4-6.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/units"
+ version('0.6-7', sha256='3f73a62bafdbe0f93bbf00ac4b1adb8f919dd04649ff8f1d007f2986e35cb7e5')
version('0.6-3', sha256='03de88d9dcfe80d22dd3813413f33657c576aed24a8091dbfc7f68602020a64f')
version('0.6-2', sha256='5e286775d0712c8e15b6ae3a533d4c4349b0f6410c2d9d897ca519c3d0e5f170')
version('0.4-6', sha256='db383c9b7ec221a5da29a2ddf4f74f9064c44ea2102ea7e07cc1cc5bb30fa1ef')
depends_on('r@3.0.2:', type=('build', 'run'))
- depends_on('r-udunits2@0.13:', when='@:0.5-1', type=('build', 'run'))
depends_on('r-rcpp@0.12.10:', type=('build', 'run'))
+ depends_on('r-udunits2@0.13:', when='@:0.5-1', type=('build', 'run'))
depends_on('udunits', when='@0.6-0:')
diff --git a/var/spack/repos/builtin/packages/r-upsetr/package.py b/var/spack/repos/builtin/packages/r-upsetr/package.py
index 405bf7994a..cd43237262 100644
--- a/var/spack/repos/builtin/packages/r-upsetr/package.py
+++ b/var/spack/repos/builtin/packages/r-upsetr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-urca/package.py b/var/spack/repos/builtin/packages/r-urca/package.py
index 364482b5c3..761b89406f 100644
--- a/var/spack/repos/builtin/packages/r-urca/package.py
+++ b/var/spack/repos/builtin/packages/r-urca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-urltools/package.py b/var/spack/repos/builtin/packages/r-urltools/package.py
index 479e201fbb..4f1f0c2850 100644
--- a/var/spack/repos/builtin/packages/r-urltools/package.py
+++ b/var/spack/repos/builtin/packages/r-urltools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-usethis/package.py b/var/spack/repos/builtin/packages/r-usethis/package.py
index 105efb3fc9..d5bf49a8dc 100644
--- a/var/spack/repos/builtin/packages/r-usethis/package.py
+++ b/var/spack/repos/builtin/packages/r-usethis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RUsethis(RPackage):
- """Automate package and project setup tasks that are otherwise performed
+ """Automate Package and Project Setup
+
+ Automate package and project setup tasks that are otherwise performed
manually. This includes setting up unit testing, test coverage, continuous
integration, Git, 'GitHub', licenses, 'Rcpp', 'RStudio' projects, and
more."""
@@ -16,27 +18,34 @@ class RUsethis(RPackage):
url = "https://cloud.r-project.org/src/contrib/usethis_1.5.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/usethis"
+ version('2.0.0', sha256='22aa2b59f36a8701a4648554c7b0e010253bf917a0f431f06efac7d8a6b59854')
version('1.6.1', sha256='60339059a97ed07dea7f8908b828b5bb42e0fd0b471165c061bc9660b0d59d6f')
version('1.5.1', sha256='9e3920a04b0df82adf59eef2c1b2b4d835c4a757a51b3c163b8fc619172f561d')
depends_on('r@3.2:', type=('build', 'run'))
- depends_on('r-clipr@0.3.0:', type=('build', 'run'))
- depends_on('r-clisymbols', when='@:1.5', type=('build', 'run'))
depends_on('r-cli', when='@1.6.1:', type=('build', 'run'))
+ depends_on('r-clipr@0.3.0:', type=('build', 'run'))
depends_on('r-crayon', type=('build', 'run'))
depends_on('r-curl@2.7:', type=('build', 'run'))
depends_on('r-desc', type=('build', 'run'))
depends_on('r-fs@1.3.0:', type=('build', 'run'))
+ depends_on('r-gert@1.0.2:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-gh', type=('build', 'run'))
depends_on('r-gh@1.1.0:', when='@1.6.1:', type=('build', 'run'))
- depends_on('r-git2r@0.23:', type=('build', 'run'))
+ depends_on('r-gh@1.2.0:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-glue@1.3.0:', type=('build', 'run'))
+ depends_on('r-jsonlite', when='@2.0.0:', type=('build', 'run'))
+ depends_on('r-lifecycle', when='@2.0.0:', type=('build', 'run'))
depends_on('r-purrr', type=('build', 'run'))
- depends_on('r-rematch2', when='@1.6.1:', type=('build', 'run'))
+ depends_on('r-rappdirs', when='@2.0.0:', type=('build', 'run'))
depends_on('r-rlang', type=('build', 'run'))
depends_on('r-rlang@0.4.3:', when='@1.6.1:', type=('build', 'run'))
depends_on('r-rprojroot@1.2:', type=('build', 'run'))
depends_on('r-rstudioapi', type=('build', 'run'))
depends_on('r-whisker', type=('build', 'run'))
depends_on('r-withr', type=('build', 'run'))
+ depends_on('r-withr@2.3.0:', when='@2.0.0:', type=('build', 'run'))
depends_on('r-yaml', type=('build', 'run'))
+ depends_on('r-clisymbols', when='@:1.5', type=('build', 'run'))
+ depends_on('r-git2r@0.23:', when='@:1.6.1', type=('build', 'run'))
+ depends_on('r-rematch2', when='@1.6.1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-utf8/package.py b/var/spack/repos/builtin/packages/r-utf8/package.py
index f35800cb5f..ae2b7cab80 100644
--- a/var/spack/repos/builtin/packages/r-utf8/package.py
+++ b/var/spack/repos/builtin/packages/r-utf8/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-uuid/package.py b/var/spack/repos/builtin/packages/r-uuid/package.py
index f696d52f9b..db4c8c1ad6 100644
--- a/var/spack/repos/builtin/packages/r-uuid/package.py
+++ b/var/spack/repos/builtin/packages/r-uuid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,13 +8,16 @@ from spack import *
class RUuid(RPackage):
- """Tools for generating and handling of UUIDs (Universally Unique
+ """Tools for Generating and Handling of UUIDs
+
+ Tools for generating and handling of UUIDs (Universally Unique
Identifiers)."""
homepage = "http://www.rforge.net/uuid"
url = "https://cloud.r-project.org/src/contrib/uuid_0.1-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/uuid"
+ version('0.1-4', sha256='98e0249dda17434bfa209c2058e9911e576963d4599be9f7ea946e664f8ca93e')
version('0.1-2', sha256='dd71704dc336b0857981b92a75ed9877d4ca47780b1682def28839304cd3b1be')
depends_on('r@2.9.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-uwot/package.py b/var/spack/repos/builtin/packages/r-uwot/package.py
index 294e36b692..4daf9036a9 100644
--- a/var/spack/repos/builtin/packages/r-uwot/package.py
+++ b/var/spack/repos/builtin/packages/r-uwot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RUwot(RPackage):
- """An implementation of the Uniform Manifold Approximation and Projection
+ """The Uniform Manifold Approximation and Projection (UMAP) Method for Dimensionality Reduction
+
+ An implementation of the Uniform Manifold Approximation and Projection
dimensionality reduction by McInnes et al. (2018) <arXiv:1802.03426>. It
also provides means to transform new data and to carry out supervised
dimensionality reduction. An implementation of the related LargeVis method
@@ -21,6 +23,7 @@ class RUwot(RPackage):
url = "https://cloud.r-project.org/src/contrib/uwot_0.1.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/uwot"
+ version('0.1.10', sha256='6ee1b6027bce679cd5a35f647f516a5b327632234bcf323c7f3d5b5e10807d23')
version('0.1.3', sha256='4936e6922444cae8a71735e945b6bb0828a1012232eb94568054f78451c406d7')
depends_on('r-matrix', type=('build', 'run'))
@@ -28,8 +31,9 @@ class RUwot(RPackage):
depends_on('r-fnn', type=('build', 'run'))
depends_on('r-rspectra', type=('build', 'run'))
depends_on('r-rcppannoy@0.0.11:', type=('build', 'run'))
- depends_on('r-rcppparallel', type=('build', 'run'))
+ depends_on('r-rcppannoy@0.0.17:', when='@0.1.10:', type=('build', 'run'))
depends_on('r-irlba', type=('build', 'run'))
depends_on('r-rcppprogress', type=('build', 'run'))
depends_on('r-dqrng', type=('build', 'run'))
- depends_on('gmake', type='build')
+ depends_on('r-rcppparallel', when='@:0.1.3', type=('build', 'run'))
+ depends_on('gmake', when='@:0.1.3', type='build')
diff --git a/var/spack/repos/builtin/packages/r-v8/package.py b/var/spack/repos/builtin/packages/r-v8/package.py
new file mode 100644
index 0000000000..c57a192f61
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-v8/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RV8(RPackage):
+ """V8: Embedded JavaScript and WebAssembly Engine for R"""
+
+ homepage = "https://github.com/jeroen/v8"
+ url = "https://cloud.r-project.org/src/contrib/V8_3.4.0.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/V8"
+
+ version('3.4.0', sha256='f5c8a2a03cc1be9f504f47711a0fcd1b962745139c9fb2a10fbd79c4ae103fbd')
+
+ depends_on('r-curl@1.0:', type=('build', 'run'))
+ depends_on('r-jsonlite@1.0:', type=('build', 'run'))
+ depends_on('r-rcpp@0.12.12:', type=('build', 'run'))
+
+ conflicts('@3.4.0', when='target=aarch64:')
+
+ def setup_build_environment(self, env):
+ spec = self.spec
+ if ((spec.platform == 'darwin') or
+ (spec.platform == 'linux' and spec.target.family == 'x86_64')):
+ env.append_flags('DOWNLOAD_STATIC_LIBV8', '1')
diff --git a/var/spack/repos/builtin/packages/r-variantannotation/package.py b/var/spack/repos/builtin/packages/r-variantannotation/package.py
index d1037acc7a..eb356adb52 100644
--- a/var/spack/repos/builtin/packages/r-variantannotation/package.py
+++ b/var/spack/repos/builtin/packages/r-variantannotation/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RVariantannotation(RPackage):
- """Annotation of Genetic Variants.
+ """Annotation of Genetic Variants
Annotate variants, compute amino acid coding changes, predict coding
outcomes."""
@@ -15,6 +15,7 @@ class RVariantannotation(RPackage):
homepage = "https://bioconductor.org/packages/VariantAnnotation"
git = "https://git.bioconductor.org/packages/VariantAnnotation.git"
+ version('1.36.0', commit='9918bd19a2e6f89e5edc5fe03c8812f500bb3e19')
version('1.30.1', commit='fb1ab00872570afb280522c4663e347dafc07a9e')
version('1.28.13', commit='0393347b8ce2d5edf1a61589be93e6a93eda3419')
version('1.26.1', commit='60ae67598cc3d7ed20ee6417920f8c209085faaf')
@@ -23,37 +24,42 @@ class RVariantannotation(RPackage):
depends_on('r@2.8.0:', type=('build', 'run'))
depends_on('r-biocgenerics@0.15.3:', type=('build', 'run'))
+ depends_on('r-matrixgenerics', when='@1.36.0:', type=('build', 'run'))
depends_on('r-genomeinfodb@1.11.4:', type=('build', 'run'))
+ depends_on('r-genomeinfodb@1.15.2:', when='@1.26.1:', type=('build', 'run'))
depends_on('r-genomicranges@1.27.6:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.31.8:', when='@1.26.1:', type=('build', 'run'))
+ depends_on('r-genomicranges@1.41.5:', when='@1.36.0:', type=('build', 'run'))
depends_on('r-summarizedexperiment@1.5.3:', type=('build', 'run'))
+ depends_on('r-summarizedexperiment@1.19.5:', when='@1.36.0:', type=('build', 'run'))
depends_on('r-rsamtools@1.23.10:', type=('build', 'run'))
+ depends_on('r-rsamtools@1.31.2:', when='@1.26.1:', type=('build', 'run'))
+ depends_on('r-rsamtools@1.33.6:', when='@1.28.13:', type=('build', 'run'))
+ depends_on('r-rsamtools@1.99.0:', when='@1.30.1:', type=('build', 'run'))
depends_on('r-dbi', type=('build', 'run'))
depends_on('r-zlibbioc', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-s4vectors@0.13.13:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.17.24:', when='@1.26.1:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.12:', when='@1.36.0:', type=('build', 'run'))
depends_on('r-iranges@2.3.25:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.13:', when='@1.26.1:', type=('build', 'run'))
+ depends_on('r-iranges@2.23.9:', when='@1.36.0:', type=('build', 'run'))
depends_on('r-xvector@0.5.6:', type=('build', 'run'))
+ depends_on('r-xvector@0.19.7:', when='@1.26.1:', type=('build', 'run'))
+ depends_on('r-xvector@0.29.2:', when='@1.36.0:', type=('build', 'run'))
depends_on('r-biostrings@2.33.5:', type=('build', 'run'))
+ depends_on('r-biostrings@2.47.6:', when='@1.26.1:', type=('build', 'run'))
+ depends_on('r-biostrings@2.57.2:', when='@1.36.0:', type=('build', 'run'))
depends_on('r-annotationdbi@1.27.9:', type=('build', 'run'))
- depends_on('r-bsgenome@1.37.6:', type=('build', 'run'))
depends_on('r-rtracklayer@1.25.16:', type=('build', 'run'))
- depends_on('r-genomicfeatures@1.27.4:', type=('build', 'run'))
-
- depends_on('r-genomeinfodb@1.15.2:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-genomicranges@1.31.8:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-summarizedexperiment@1.9.9:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-rsamtools@1.31.2:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-s4vectors@0.17.24:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-iranges@2.13.13:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-xvector@0.19.7:', when='@1.26.1:', type=('build', 'run'))
- depends_on('r-biostrings@2.47.6:', when='@1.26.1:', type=('build', 'run'))
depends_on('r-rtracklayer@1.39.7:', when='@1.26.1:', type=('build', 'run'))
+ depends_on('r-bsgenome@1.37.6:', type=('build', 'run'))
depends_on('r-bsgenome@1.47.3:', when='@1.26.1:', type=('build', 'run'))
+ depends_on('r-genomicfeatures@1.27.4:', type=('build', 'run'))
depends_on('r-genomicfeatures@1.31.3:', when='@1.26.1:', type=('build', 'run'))
-
- depends_on('r-rsamtools@1.33.6:', when='@1.28.13:', type=('build', 'run'))
-
- depends_on('r-rsamtools@1.99.0:', when='@1.30.1:', type=('build', 'run'))
depends_on('r-rhtslib', when='@1.30.1:', type=('build', 'run'))
-
depends_on('gmake', type='build')
+
+ # Not listed but needed
+ depends_on('curl')
diff --git a/var/spack/repos/builtin/packages/r-varselrf/package.py b/var/spack/repos/builtin/packages/r-varselrf/package.py
index 1bc5e7b4b7..57a23d6a06 100644
--- a/var/spack/repos/builtin/packages/r-varselrf/package.py
+++ b/var/spack/repos/builtin/packages/r-varselrf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-vcd/package.py b/var/spack/repos/builtin/packages/r-vcd/package.py
index cb8e90e46a..1828d76853 100644
--- a/var/spack/repos/builtin/packages/r-vcd/package.py
+++ b/var/spack/repos/builtin/packages/r-vcd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RVcd(RPackage):
- """Visualization techniques, data sets, summary and inference procedures
+ """Visualizing Categorical Data
+
+ Visualization techniques, data sets, summary and inference procedures
aimed particularly at categorical data. Special emphasis is given to highly
extensible grid graphics. The package was package was originally inspired
by the book "Visualizing Categorical Data" by Michael Friendly and is now
@@ -18,6 +20,7 @@ class RVcd(RPackage):
url = "https://cloud.r-project.org/src/contrib/vcd_1.4-1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/vcd"
+ version('1.4-8', sha256='236fcb183152f6e9d131eeb3931d5a064a5ff79be91e4533df9148fd2ff41e0c')
version('1.4-4', sha256='a561adf120b5ce41b66e0c0c321542fcddc772eb12b3d7020d86e9cd014ce9d2')
version('1.4-3', sha256='17ce89927421d9cd01285b6093eeaaecb1e7252388007f66d3b9222e58cc5f15')
version('1.4-1', sha256='af4c77522efef28271afab7d90679824826132c6bc61abe17df763ed1fc24994')
diff --git a/var/spack/repos/builtin/packages/r-vcfr/package.py b/var/spack/repos/builtin/packages/r-vcfr/package.py
new file mode 100644
index 0000000000..9d1c10694d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-vcfr/package.py
@@ -0,0 +1,39 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RVcfr(RPackage):
+ """Manipulate and Visualize VCF Data
+
+ Facilitates easy manipulation of variant call format (VCF) data. Functions
+ are provided to rapidly read from and write to VCF files. Once VCF data is
+ read into R a parser function extracts matrices of data. This information
+ can then be used for quality control or other purposes. Additional
+ functions provide visualization of genomic data. Once processing is
+ complete data may be written to a VCF file (*.vcf.gz). It also may be
+ converted into other popular R objects (e.g., genlight, DNAbin). VcfR
+ provides a link between VCF data and familiar R software."""
+
+ homepage = "https://github.com/knausb/vcfR"
+ cran = "vcfR"
+
+ maintainers = ['dorton21']
+
+ version('1.12.0', sha256='dd87ff010365de363864a44ca49887c0fdad0dd18d0d9c66e44e39c2d4581d52')
+
+ depends_on('r@3.0.1:', type=('build', 'run'))
+ depends_on('r-ape', type=('build', 'run'))
+ depends_on('r-dplyr', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-memuse', type=('build', 'run'))
+ depends_on('r-pinfsc50', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-vegan', type=('build', 'run'))
+ depends_on('r-viridislite', type=('build', 'run'))
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/r-vctrs/package.py b/var/spack/repos/builtin/packages/r-vctrs/package.py
index ad1fea5dc2..410be98f3e 100644
--- a/var/spack/repos/builtin/packages/r-vctrs/package.py
+++ b/var/spack/repos/builtin/packages/r-vctrs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,21 +7,26 @@ from spack import *
class RVctrs(RPackage):
- """Defines new notions of prototype and size that are used to provide tools
+ """Vector Helpers
+
+ Defines new notions of prototype and size that are used to provide tools
for consistent and well-founded type-coercion and size-recycling, and are
in turn connected to ideas of type- and size-stability useful for analyzing
function interfaces."""
homepage = "https://github.com/r-lib/vctrs"
- url = "https://cloud.r-project.org/src/contrib/vctrs_0.2.0.tar.gz"
+ url = "https://github.com/r-lib/vctrs/archive/v0.3.5.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/vctrs"
+ version('0.3.6', sha256='5869a2cc2cb62ccb6f7ff7e8f88c02790d5ea256cccaf51aee56fb28e7ee48ce')
+ version('0.3.5', sha256='798dd19809ab99267456ebf488e7aa4e3c03f7f307f5e0abde01dc7ba1cf53ce')
version('0.2.0', sha256='5bce8f228182ecaa51230d00ad8a018de9cf2579703e82244e0931fe31f20016')
depends_on('r@3.2:', type=('build', 'run'))
- depends_on('r-backports', type=('build', 'run'))
+ depends_on('r@3.3:', when='@0.3.5:', type=('build', 'run'))
depends_on('r-ellipsis@0.2.0:', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
depends_on('r-glue', type=('build', 'run'))
depends_on('r-rlang@0.4.0:', type=('build', 'run'))
- depends_on('r-zeallot', type=('build', 'run'))
+ depends_on('r-rlang@0.4.7:', when='@0.3.5:', type=('build', 'run'))
+ depends_on('r-zeallot', when='@:0.2.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-vegan/package.py b/var/spack/repos/builtin/packages/r-vegan/package.py
index adbfe7869e..1dce840c9f 100644
--- a/var/spack/repos/builtin/packages/r-vegan/package.py
+++ b/var/spack/repos/builtin/packages/r-vegan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,18 +7,21 @@ from spack import *
class RVegan(RPackage):
- """Ordination methods, diversity analysis and other functions for
+ """Community Ecology Package
+
+ Ordination methods, diversity analysis and other functions for
community and vegetation ecologists."""
homepage = "https://github.com/vegandevs/vegan"
url = "https://cloud.r-project.org/src/contrib/vegan_2.4-3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/vegan"
+ version('2.5-7', sha256='e63b586951ea7d8b0118811f329c700212892ec1db3b93951603ce1d68aa462a')
version('2.5-5', sha256='876b5266f29f3034fed881020d16f476e62d145a00cb450a1a213e019e056971')
version('2.5-4', sha256='5116a440111fca49b5f95cfe888b180ff29a112e6301d5e2ac5cae0e628493e0')
version('2.4-3', sha256='2556b1281a62e53f32bb57539bc600c00a599d0699867912220535d1a3ebec97')
- depends_on('r@3.0.0:', when='@:2.4-6', type=('build', 'run'))
+ depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r@3.1.0:', when='@2.5-1', type=('build', 'run'))
depends_on('r@3.2.0:', when='@2.5-2:2.5-4', type=('build', 'run'))
depends_on('r@3.4.0:', when='@2.5-5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-vfs/package.py b/var/spack/repos/builtin/packages/r-vfs/package.py
index a43566b888..9ba672e7a2 100644
--- a/var/spack/repos/builtin/packages/r-vfs/package.py
+++ b/var/spack/repos/builtin/packages/r-vfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-vgam/package.py b/var/spack/repos/builtin/packages/r-vgam/package.py
index b0a8c9a253..c1155ce5db 100644
--- a/var/spack/repos/builtin/packages/r-vgam/package.py
+++ b/var/spack/repos/builtin/packages/r-vgam/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,30 @@ from spack import *
class RVgam(RPackage):
- """An implementation of about 6 major classes of statistical regression
- models."""
+ """Vector Generalized Linear and Additive Models
+
+ An implementation of about 6 major classes of statistical regression
+ models. The central algorithm is Fisher scoring and iterative reweighted
+ least squares. At the heart of this package are the vector generalized
+ linear and additive model (VGLM/VGAM) classes. VGLMs can be loosely thought
+ of as multivariate GLMs. VGAMs are data-driven VGLMs that use smoothing.
+ The book "Vector Generalized Linear and Additive Models: With an
+ Implementation in R" (Yee, 2015) <DOI:10.1007/978-1-4939-2818-7> gives
+ details of the statistical framework and the package. Currently only
+ fixed-effects models are implemented. Many (150+) models and distributions
+ are estimated by maximum likelihood estimation (MLE) or penalized MLE. The
+ other classes are RR-VGLMs (reduced-rank VGLMs), quadratic RR-VGLMs,
+ reduced-rank VGAMs, RCIMs (row-column interaction models)---these classes
+ perform constrained and unconstrained quadratic ordination (CQO/UQO) models
+ in ecology, as well as constrained additive ordination (CAO). Hauck-Donner
+ effect detection is implemented. Note that these functions are subject to
+ change; see the NEWS and ChangeLog files for latest changes."""
homepage = "https://cloud.r-project.org/package=VGAM"
url = "https://cloud.r-project.org/src/contrib/VGAM_1.0-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/VGAM"
+ version('1.1-5', sha256='30190b150f3e5478137d288a45f575b2654ad7c29254b0a1fe5c954ee010a1bb')
version('1.1-1', sha256='de192bd65a7e8818728008de8e60e6dd3b61a13616c887a43e0ccc8147c7da52')
version('1.0-6', sha256='121820a167411e847b41bdcb0028b55842d0ccc0c3471755c67449837e0fe3b9')
version('1.0-4', sha256='e581985f78ef8b866d0e810b2727061bb9c9bc177b2c9090aebb3a35ae87a964')
@@ -22,6 +39,7 @@ class RVgam(RPackage):
version('1.0-1', sha256='c066864e406fcee23f383a28299dba3cf83356e5b68df16324885afac87a05ea')
version('1.0-0', sha256='6acdd7db49c0987c565870afe593160ceba72a6ca4a84e6da3cf6f74d1fa02e1')
- depends_on('r@3.0.0:', when='@:1.0-1', type=('build', 'run'))
+ depends_on('r@3.0.0:', type=('build', 'run'))
depends_on('r@3.1.0:', when='@1.0-2:1.0-3', type=('build', 'run'))
depends_on('r@3.4.0:', when='@1.0-4:', type=('build', 'run'))
+ depends_on('r@3.5.0:', when='@1.1-5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-vioplot/package.py b/var/spack/repos/builtin/packages/r-vioplot/package.py
index 451e5cf5b3..f0cae082fa 100644
--- a/var/spack/repos/builtin/packages/r-vioplot/package.py
+++ b/var/spack/repos/builtin/packages/r-vioplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,18 @@ from spack import *
class RVioplot(RPackage):
- """vioplot: Violin Plot"""
+ """Violin Plot
+
+ A violin plot is a combination of a box plot and a kernel density plot.
+ This package allows extensive customisation of violin plots. """
homepage = "https://cloud.r-project.org/package=vioplot"
url = "https://cloud.r-project.org/src/contrib/vioplot_0.3.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/vioplot"
+ version('0.3.5', sha256='1b64833c1bd6851036cf1c400c7d0036a047e71def94a399c897263b4b303e2a')
version('0.3.2', sha256='7b51d0876903a3c315744cb051ac61920eeaa1f0694814959edfae43ce956e8e')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r-sm', type=('build', 'run'))
depends_on('r-zoo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-vipor/package.py b/var/spack/repos/builtin/packages/r-vipor/package.py
index 232a59cc48..7e3f1ae395 100644
--- a/var/spack/repos/builtin/packages/r-vipor/package.py
+++ b/var/spack/repos/builtin/packages/r-vipor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-viridis/package.py b/var/spack/repos/builtin/packages/r-viridis/package.py
index 42ec7cfdf0..f5df1f8032 100644
--- a/var/spack/repos/builtin/packages/r-viridis/package.py
+++ b/var/spack/repos/builtin/packages/r-viridis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-viridislite/package.py b/var/spack/repos/builtin/packages/r-viridislite/package.py
index 6b0a3fda03..352d17d971 100644
--- a/var/spack/repos/builtin/packages/r-viridislite/package.py
+++ b/var/spack/repos/builtin/packages/r-viridislite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-visnetwork/package.py b/var/spack/repos/builtin/packages/r-visnetwork/package.py
index 07b18d82d6..21ac57d29b 100644
--- a/var/spack/repos/builtin/packages/r-visnetwork/package.py
+++ b/var/spack/repos/builtin/packages/r-visnetwork/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RVisnetwork(RPackage):
- """Provides an R interface to the 'vis.js' JavaScript charting library. It
+ """Network Visualization using 'vis.js' Library
+
+ Provides an R interface to the 'vis.js' JavaScript charting library. It
allows an interactive visualization of networks."""
homepage = "https://github.com/datastorm-open/visNetwork"
url = "https://cloud.r-project.org/src/contrib/visNetwork_1.0.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/visNetwork"
+ version('2.0.9', sha256='5e0b3dc3a91e66e0a359433f03cc856d04b981b0f9ad228d8fa9c96b7fcaa420')
version('2.0.7', sha256='15ad01636a3a19e1901be6743052805a5b6a9ac1240fb3dab765252b1e865128')
version('2.0.6', sha256='ec2478e6a2af446569ef2d5210a2bc6b2600bcb7fd9908cef8f8c80b01e9c8aa')
version('1.0.1', sha256='13aacf58d3bf9e78c7fb3af180062762bf22aec1777c829715c5b00396639a70')
diff --git a/var/spack/repos/builtin/packages/r-vsn/package.py b/var/spack/repos/builtin/packages/r-vsn/package.py
index b3a45677aa..484c296ea0 100644
--- a/var/spack/repos/builtin/packages/r-vsn/package.py
+++ b/var/spack/repos/builtin/packages/r-vsn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RVsn(RPackage):
- """Variance stabilization and calibration for microarray data.
+ """Variance stabilization and calibration for microarray data
The package implements a method for normalising microarray intensities,
and works for single- and multiple-color arrays. It can also be used for
@@ -25,6 +25,7 @@ class RVsn(RPackage):
homepage = "https://bioconductor.org/packages/vsn"
git = "https://git.bioconductor.org/packages/vsn.git"
+ version('3.58.0', commit='a451e6ae989623750feacf26d99683a7955adf85')
version('3.52.0', commit='e80642d850ae93bc141654200a8970b561a94fbe')
version('3.50.0', commit='ad49fcc288c6065d0f04040acd688e7f0d7d927e')
version('3.48.1', commit='d57f64112004b1d73b3be625949830209de027eb')
@@ -32,11 +33,10 @@ class RVsn(RPackage):
version('3.44.0', commit='e54513fcdd07ccfb8094359e93cef145450f0ee0')
depends_on('r@3.0.0:', type=('build', 'run'))
+ depends_on('r@3.4.0:', when='@3.46.0:', type=('build', 'run'))
depends_on('r-biobase', type=('build', 'run'))
depends_on('r-affy', type=('build', 'run'))
depends_on('r-limma', type=('build', 'run'))
depends_on('r-lattice', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-hexbin', when='@3.44.0', type=('build', 'run'))
-
- depends_on('r@3.4.0:', when='@3.46.0:', type=('build', 'run'))
+ depends_on('r-hexbin', when='@3.44.0:3.52.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-waldo/package.py b/var/spack/repos/builtin/packages/r-waldo/package.py
new file mode 100644
index 0000000000..e8d6a1ad55
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-waldo/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RWaldo(RPackage):
+ """Find Differences Between R Objects
+
+ Compare complex R objects and reveal the key differences. Designed
+ particularly for use in testing packages where being able to quickly
+ isolate key differences makes understanding test failures much easier."""
+
+ homepage = "https://github.com/r-lib/waldo"
+ url = "https://cloud.r-project.org/src/contrib/waldo_0.2.3.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/waldo"
+
+ version('0.2.3', sha256='1fbab22fe9be6ca8caa3df7306c763d7025d81ab6f17b85daaf8bdc8c9455c53')
+
+ depends_on('r-cli', type=('build', 'run'))
+ depends_on('r-diffobj', type=('build', 'run'))
+ depends_on('r-fansi', type=('build', 'run'))
+ depends_on('r-glue', type=('build', 'run'))
+ depends_on('r-rematch2', type=('build', 'run'))
+ depends_on('r-rlang', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-watermelon/package.py b/var/spack/repos/builtin/packages/r-watermelon/package.py
index a1d827870c..5a69451d0d 100644
--- a/var/spack/repos/builtin/packages/r-watermelon/package.py
+++ b/var/spack/repos/builtin/packages/r-watermelon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,15 @@ from spack import *
class RWatermelon(RPackage):
- """Illumina 450 methylation array normalization and metrics."""
+ """Illumina 450 methylation array normalization and metrics
+
+ 15 flavours of betas and three performance metrics, with methods for
+ objects produced by methylumi and minfi packages."""
homepage = "https://bioconductor.org/packages/release/bioc/html/wateRmelon.html"
git = "https://git.bioconductor.org/packages/wateRmelon"
+ version('1.34.0', commit='3fa2745535c22068a438747b41b9d793196098d4')
version('1.30.0', commit='66d7579fe49206d965832288df7937c3d43ed578')
depends_on('r@2.10:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-webshot/package.py b/var/spack/repos/builtin/packages/r-webshot/package.py
index bcf2997ddc..d5fe0d33f6 100644
--- a/var/spack/repos/builtin/packages/r-webshot/package.py
+++ b/var/spack/repos/builtin/packages/r-webshot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,23 @@ from spack import *
class RWebshot(RPackage):
- """webshot: Take Screenshots of Web Pages"""
+ """Take Screenshots of Web Pages
+
+ Takes screenshots of web pages, including Shiny applications and R Markdown
+ documents."""
homepage = "https://github.com/wch/webshot/"
url = "https://cloud.r-project.org/src/contrib/webshot_0.5.1.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/webshot/"
+ version('0.5.2', sha256='f183dc970157075b51ac543550a7a48fa3428b9c6838abb72fe987c21982043f')
version('0.5.1', sha256='b9750d206c6fa0f1f16cc212b0a34f4f4bfa916962d2c877f0ee9a33620f4b23')
+ depends_on('r+X', type=('build', 'run'))
depends_on('r@3.0:', type=('build', 'run'))
depends_on('r-magrittr', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
depends_on('r-callr', type=('build', 'run'))
+ depends_on('imagemagick', type='run')
+
+ # need a phantomjs package to make this actually work.
diff --git a/var/spack/repos/builtin/packages/r-wgcna/package.py b/var/spack/repos/builtin/packages/r-wgcna/package.py
index 4af76c78ad..f2992a98af 100644
--- a/var/spack/repos/builtin/packages/r-wgcna/package.py
+++ b/var/spack/repos/builtin/packages/r-wgcna/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,12 +7,22 @@ from spack import *
class RWgcna(RPackage):
- """WGCNA: Weighted Correlation Network Analysis"""
+ """Weighted Correlation Network Analysis
+
+ Functions necessary to perform Weighted Correlation Network Analysis on
+ high-dimensional data as originally described in Horvath and Zhang (2005)
+ <doi:10.2202/1544-6115.1128> and Langfelder and Horvath (2008)
+ <doi:10.1186/1471-2105-9-559>. Includes functions for rudimentary data
+ cleaning, construction of correlation networks, module identification,
+ summarization, and relating of variables and modules to sample traits. Also
+ includes a number of utility functions for data manipulation and
+ visualization."""
homepage = "https://cloud.r-project.org/package=WGCNA"
url = "https://cloud.r-project.org/src/contrib/WGCNA_1.68.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/WGCNA/"
+ version('1.69', sha256='2ea152d45b2d4f0e40b4b9f7b5ea8a96e230f7744ece8be27bdba96cf39d5008')
version('1.68', sha256='0a04f15a20817f9260ae1896eda3be83a7f4855a27a348df85c7f4d376f1efe8')
version('1.67', sha256='c9cc9989763b2c80835489eabd38d9ee35b204305044d115ca7c775a103f6824')
version('1.64-1', sha256='961a890cda40676ba533cd6de2b1d4f692addd16363f874c82ba8b65dd2d0db6')
@@ -30,4 +40,4 @@ class RWgcna(RPackage):
depends_on('r-go-db', type=('build', 'run'))
depends_on('r-annotationdbi', type=('build', 'run'))
depends_on('r-rcpp@0.11.0:', type=('build', 'run'))
- depends_on('r-robust', type=('build', 'run'))
+ depends_on('r-robust', when='@:1.68', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-whisker/package.py b/var/spack/repos/builtin/packages/r-whisker/package.py
index cecb1eb2af..1c95b17315 100644
--- a/var/spack/repos/builtin/packages/r-whisker/package.py
+++ b/var/spack/repos/builtin/packages/r-whisker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,11 +7,13 @@ from spack import *
class RWhisker(RPackage):
- """logicless templating, reuse templates in many programming languages
- including R"""
+ """{{mustache}} for R, Logicless Templating
+
+ Implements 'Mustache' logicless templating."""
homepage = "http://github.com/edwindj/whisker"
url = "https://cloud.r-project.org/src/contrib/whisker_0.3-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/whisker"
+ version('0.4', sha256='7a86595be4f1029ec5d7152472d11b16175737e2777134e296ae97341bf8fba8')
version('0.3-2', sha256='484836510fcf123a66ddd13cdc8f32eb98e814cad82ed30c0294f55742b08c7c')
diff --git a/var/spack/repos/builtin/packages/r-withr/package.py b/var/spack/repos/builtin/packages/r-withr/package.py
index 42e2e2427f..657572bb59 100644
--- a/var/spack/repos/builtin/packages/r-withr/package.py
+++ b/var/spack/repos/builtin/packages/r-withr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RWithr(RPackage):
- """A set of functions to run code 'with' safely and temporarily modified
+ """Run Code 'With' Temporarily Modified Global State
+
+ A set of functions to run code 'with' safely and temporarily modified
global state. Many of these functions were originally a part of the
'devtools' package, this provides a simple package with limited
dependencies to provide access to these functions."""
@@ -16,6 +18,7 @@ class RWithr(RPackage):
url = "https://cloud.r-project.org/src/contrib/withr_1.0.2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/withr"
+ version('2.4.0', sha256='ede4cdc7e4d17e0ad24afc9fb940cba46fac4421d3a39281e9918377d73714f8')
version('2.2.0', sha256='4c21e51cf48f8c281ddd5f5ec358ac446df3c982104fd00bfe62d9259d73b582')
version('2.1.2', sha256='41366f777d8adb83d0bdbac1392a1ab118b36217ca648d3bb9db763aa7ff4686')
version('1.0.2', sha256='2391545020adc4256ee7c2e31c30ff6f688f0b6032e355e1ce8f468cab455f10')
diff --git a/var/spack/repos/builtin/packages/r-wk/package.py b/var/spack/repos/builtin/packages/r-wk/package.py
new file mode 100644
index 0000000000..d6d9aea2d9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-wk/package.py
@@ -0,0 +1,24 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RWk(RPackage):
+ """Lightweight Well-Known Geometry Parsing
+
+ Provides a minimal R and C++ API for parsing well-known binary and
+ well-known text representation of geometries to and from R-native formats.
+ Well-known binary is compact and fast to parse; well-known text is
+ human-readable and is useful for writing tests. These formats are only
+ useful in R if the information they contain can be accessed in R, for which
+ high-performance functions are provided here."""
+
+ homepage = "https://paleolimbot.github.io/wk/"
+ cran = "wk"
+
+ version('0.4.1', sha256='daa7351af0bd657740972016906c686f335b8fa922ba10250e5000ddc2bb8950')
+
+ depends_on('r-cpp11', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-xde/package.py b/var/spack/repos/builtin/packages/r-xde/package.py
index 928503c1d5..acfd509fa9 100644
--- a/var/spack/repos/builtin/packages/r-xde/package.py
+++ b/var/spack/repos/builtin/packages/r-xde/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,11 +8,15 @@ from spack import *
class RXde(RPackage):
"""XDE: a Bayesian hierarchical model for cross-study analysis of
- differential gene expression."""
+ differential gene expression
+
+ Multi-level model for cross-study detection of differential gene
+ expression."""
homepage = "https://bioconductor.org/packages/XDE"
git = "https://git.bioconductor.org/packages/XDE.git"
+ version('2.36.0', commit='0277f9dffbd7d1880be77cb8581fc614501b3293')
version('2.30.0', commit='058af6f1e431522778f970bf61f834620d3d7dd7')
version('2.28.0', commit='b8cc7d0840ce1324644e8b4a750fbb964884498b')
version('2.26.0', commit='7bf6368037937c53542447175061c2e2059ee3be')
@@ -24,9 +28,8 @@ class RXde(RPackage):
depends_on('r-biocgenerics', type=('build', 'run'))
depends_on('r-genefilter', type=('build', 'run'))
depends_on('r-gtools', type=('build', 'run'))
- depends_on('r-mergemaid', type=('build', 'run'))
depends_on('r-mvtnorm', type=('build', 'run'))
-
depends_on('r-rcolorbrewer', when='@2.24.0:', type=('build', 'run'))
depends_on('r-genemeta', when='@2.24.0:', type=('build', 'run'))
depends_on('r-siggenes', when='@2.24.0:', type=('build', 'run'))
+ depends_on('r-mergemaid', when='@:2.30.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-xfun/package.py b/var/spack/repos/builtin/packages/r-xfun/package.py
index af92291d52..242bc8ed09 100644
--- a/var/spack/repos/builtin/packages/r-xfun/package.py
+++ b/var/spack/repos/builtin/packages/r-xfun/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,4 +14,5 @@ class RXfun(RPackage):
url = "https://cloud.r-project.org/src/contrib/xfun_0.8.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/xfun"
+ version('0.20', sha256='284239d12a3d5ea7d1ef8b1382fb0a7a4661af54c85510501279681871da7c10')
version('0.8', sha256='c2f8ecf8b57ddec02f9be7f417d9e22fc1ae2c7db8d70aa703fc62bf4a5c5416')
diff --git a/var/spack/repos/builtin/packages/r-xgboost/package.py b/var/spack/repos/builtin/packages/r-xgboost/package.py
index 825e24eef5..7ae19a77b8 100644
--- a/var/spack/repos/builtin/packages/r-xgboost/package.py
+++ b/var/spack/repos/builtin/packages/r-xgboost/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,9 @@ from spack import *
class RXgboost(RPackage):
- """Extreme Gradient Boosting, which is an efficient implementation of
+ """Extreme Gradient Boosting
+
+ Extreme Gradient Boosting, which is an efficient implementation of
gradient boosting framework. This package is its R interface. The package
includes efficient linear model solver and tree learning algorithms. The
package can automatically do parallel computation on a single machine which
@@ -21,18 +23,20 @@ class RXgboost(RPackage):
url = "https://cloud.r-project.org/src/contrib/xgboost_0.6-4.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/xgboost"
+ version('1.3.2.1', sha256='2ff462b81ad51a4810bd7860cb014b9b88831a8b1d45774249a808547147f884')
version('0.90.0.2', sha256='240584c1b4d54a95b4fef9074480752fae9a5b096e8f84747457d641decfc9bf')
version('0.81.0.1', sha256='3e7ada32e66881ea5c90aeafdab948927014c76cfff60a8e3d7f9e1f8a9ed7ce')
version('0.6-4', sha256='9fc51dd1b910c70930357f617d1ac7a74c5056e8847d4188175db27c09f9d1ed')
version('0.4-4', sha256='b955fc3352fcdc4894178c82fd62fbaf5e099c9d794f1e9daa2dd7b3494b61ff')
- depends_on('r@2.10:', when='@:0.4-4', type=('build', 'run'))
+ depends_on('r@2.10:', type=('build', 'run'))
depends_on('r@2.15.1:', when='@0.6-0:0.6-2', type=('build', 'run'))
depends_on('r@3.3.0:', when='@0.6-3:', type=('build', 'run'))
depends_on('r-matrix@1.1-0:', type=('build', 'run'))
depends_on('r-data-table@1.9.6:', type=('build', 'run'))
depends_on('r-magrittr@1.5:', type=('build', 'run'))
- depends_on('r-stringi@0.5.2:', type=('build', 'run'))
+ depends_on('r-stringi@0.5.2:', when='@:0.90.0.2', type=('build', 'run'))
+ depends_on('gmake', type='build')
# This is not listed as required, but installation fails without it
# ERROR: dependency 'stringr' is not available for package 'xgboost'
diff --git a/var/spack/repos/builtin/packages/r-xlconnect/package.py b/var/spack/repos/builtin/packages/r-xlconnect/package.py
index 9d1b8732b3..def05e88df 100644
--- a/var/spack/repos/builtin/packages/r-xlconnect/package.py
+++ b/var/spack/repos/builtin/packages/r-xlconnect/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,19 +7,26 @@ from spack import *
class RXlconnect(RPackage):
- """Provides comprehensive functionality to read, write and format Excel
+ """Excel Connector for R
+
+ Provides comprehensive functionality to read, write and format Excel
data."""
homepage = "http://miraisolutions.wordpress.com/"
url = "https://cloud.r-project.org/src/contrib/XLConnect_0.2-11.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/XLConnect"
+ version('1.0.1', sha256='927aa34a3c81c12bf156e55edca9e2f5186c31435cce23feda4b906d049d6e39')
version('0.2-15', sha256='26e1d8db65974719adbc25f1327c584003eb562dc1bb2121bffc2550cf3178b3')
version('0.2-14', sha256='d1013ed26947572bad97d62a3d66346f74993cf96c6408d21d5b6ee567468819')
version('0.2-12', sha256='500624f078fb27338aa91d8710daaf38633659a9b17f7cb713232a3d66f9f62c')
version('0.2-11', sha256='17c5eddd00b933fd7a2ab9d942c813046d45f0af487f8d5b11011a004db69d0b')
depends_on('r@2.10.0:', type=('build', 'run'))
- depends_on('r-xlconnectjars@0.2-15', type=('build', 'run'))
depends_on('r-rjava', type=('build', 'run'))
+ depends_on('r-xlconnectjars@0.2-9', when='@0.2-11', type=('build', 'run'))
+ depends_on('r-xlconnectjars@0.2-12', when='@0.2-12', type=('build', 'run'))
+ depends_on('r-xlconnectjars@0.2-14', when='@0.2-14', type=('build', 'run'))
+ depends_on('r-xlconnectjars@0.2-15', when='@0.2-15', type=('build', 'run'))
depends_on('java@6:')
+ depends_on('java@8:11.999', when='@1.0.1:')
diff --git a/var/spack/repos/builtin/packages/r-xlconnectjars/package.py b/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
index 3c6fabd9d0..c38bfa4f1a 100644
--- a/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
+++ b/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-xlsx/package.py b/var/spack/repos/builtin/packages/r-xlsx/package.py
index 694a347a0c..6c37e40212 100644
--- a/var/spack/repos/builtin/packages/r-xlsx/package.py
+++ b/var/spack/repos/builtin/packages/r-xlsx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,15 +7,18 @@ from spack import *
class RXlsx(RPackage):
- """Provide R functions to read/write/format Excel 2007 and Excel
+ """Read, Write, Format Excel 2007 and Excel 97/2000/XP/2003 Files
+
+ Provide R functions to read/write/format Excel 2007 and Excel
97/2000/XP/2003 file formats."""
homepage = "http://code.google.com/p/rexcel/"
url = "https://cloud.r-project.org/src/contrib/xlsx_0.6.1.tar.gz"
listurl = "https://cloud.r-project.org/src/contrib/Archive/xlsx"
+ version('0.6.5', sha256='378c5ed475a3d7631ea1ea13e0a69d619c1a52260922abda42818752dbb32107')
version('0.6.1', sha256='a580bd16b5477c1c185bf681c12c1ffff4088089f97b6a37997913d93ec5a8b4')
depends_on('r-rjava', type=('build', 'run'))
depends_on('r-xlsxjars', type=('build', 'run'))
- depends_on('java@1.6:')
+ depends_on('java@6:')
diff --git a/var/spack/repos/builtin/packages/r-xlsxjars/package.py b/var/spack/repos/builtin/packages/r-xlsxjars/package.py
index 45202b1ea0..434bbe2ce6 100644
--- a/var/spack/repos/builtin/packages/r-xlsxjars/package.py
+++ b/var/spack/repos/builtin/packages/r-xlsxjars/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-xmapbridge/package.py b/var/spack/repos/builtin/packages/r-xmapbridge/package.py
index 69680fb6de..67853d415f 100644
--- a/var/spack/repos/builtin/packages/r-xmapbridge/package.py
+++ b/var/spack/repos/builtin/packages/r-xmapbridge/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RXmapbridge(RPackage):
- """Export plotting files to the xmapBridge for visualisation in X:Map.
+ """Export plotting files to the xmapBridge for visualisation in X:Map
xmapBridge can plot graphs in the X:Map genome browser. This package
exports plotting files in a suitable format."""
@@ -15,6 +15,7 @@ class RXmapbridge(RPackage):
homepage = "https://bioconductor.org/packages/xmapbridge"
git = "https://git.bioconductor.org/packages/xmapbridge.git"
+ version('1.48.0', commit='1cefe6b56c6dcb1f18028b3b7d6a67d490bc9730')
version('1.42.0', commit='d79c80dfc1a0ed3fd6d3e7a7c3a4aff778537ca9')
version('1.40.0', commit='00a2993863f28711e237bc937fa0ba2d05f81684')
version('1.38.0', commit='08138f00385fa0c669ff4cc33d7eac3d29cd615d')
diff --git a/var/spack/repos/builtin/packages/r-xml/package.py b/var/spack/repos/builtin/packages/r-xml/package.py
index 948ed81dfa..1335b38fa5 100644
--- a/var/spack/repos/builtin/packages/r-xml/package.py
+++ b/var/spack/repos/builtin/packages/r-xml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RXml(RPackage):
- """Many approaches for both reading and creating XML (and HTML) documents
+ """Tools for Parsing and Generating XML Within R and S-Plus
+
+ Many approaches for both reading and creating XML (and HTML) documents
(including DTDs), both local and accessible via HTTP or FTP. Also offers
access to an 'XPath' "interpreter"."""
@@ -15,6 +17,7 @@ class RXml(RPackage):
url = "https://cloud.r-project.org/src/contrib/XML_3.98-1.9.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/XML"
+ version('3.99-0.5', sha256='60529b7360f162eba07da455eeb9b94a732b2dd623c49e0f04328a2e97bd53a6')
version('3.98-1.20', sha256='46af86376ea9a0fb1b440cf0acdf9b89178686a05c4b77728fcff1f023aa4858')
version('3.98-1.19', sha256='81b1c4a2df24c5747fa8b8ec2d76b4e9c3649b56ca94f6c93fbd106c8a72beab')
version('3.98-1.9', sha256='a3b70169cb2fbd8d61a41ff222d27922829864807e9ecad373f55ba0df6cf3c3')
@@ -22,4 +25,5 @@ class RXml(RPackage):
version('3.98-1.4', sha256='9c0abc75312f66aac564266b6b79222259c678aedee9fc347462978354f11126')
depends_on('r@2.13.0:', type=('build', 'run'))
+ depends_on('r@4.0.0:', when='@3.99-0.5:', type=('build', 'run'))
depends_on('libxml2@2.6.3:')
diff --git a/var/spack/repos/builtin/packages/r-xml2/package.py b/var/spack/repos/builtin/packages/r-xml2/package.py
index 7e12f208bf..f5dc24906a 100644
--- a/var/spack/repos/builtin/packages/r-xml2/package.py
+++ b/var/spack/repos/builtin/packages/r-xml2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-xnomial/package.py b/var/spack/repos/builtin/packages/r-xnomial/package.py
index eb26c95c70..6adc96c873 100644
--- a/var/spack/repos/builtin/packages/r-xnomial/package.py
+++ b/var/spack/repos/builtin/packages/r-xnomial/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-xopen/package.py b/var/spack/repos/builtin/packages/r-xopen/package.py
index 362553401a..3d64bc4b5c 100644
--- a/var/spack/repos/builtin/packages/r-xopen/package.py
+++ b/var/spack/repos/builtin/packages/r-xopen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-xtable/package.py b/var/spack/repos/builtin/packages/r-xtable/package.py
index bc92f22721..16cf26086c 100644
--- a/var/spack/repos/builtin/packages/r-xtable/package.py
+++ b/var/spack/repos/builtin/packages/r-xtable/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-xts/package.py b/var/spack/repos/builtin/packages/r-xts/package.py
index 69c2ea107f..e7763e05b4 100644
--- a/var/spack/repos/builtin/packages/r-xts/package.py
+++ b/var/spack/repos/builtin/packages/r-xts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RXts(RPackage):
- """Provide for uniform handling of R's different time-based data classes by
+ """eXtensible Time Series
+
+ Provide for uniform handling of R's different time-based data classes by
extending zoo, maximizing native format information preservation and
allowing for user level customization and extension, while simplifying
cross-class interoperability."""
@@ -16,6 +18,7 @@ class RXts(RPackage):
url = "https://cloud.r-project.org/src/contrib/xts_0.11-2.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/xts"
+ version('0.12.1', sha256='d680584af946fc30be0b2046e838cff7b3a65e00df1eadba325ca5e96f3dca2c')
version('0.11-2', sha256='12772f6a66aab5b84b0665c470f11a3d8d8a992955c027261cfe8e6077ee13b8')
version('0.9-7', sha256='f11f7cb98f4b92b7f6632a2151257914130880c267736ef5a264b5dc2dfb7098')
diff --git a/var/spack/repos/builtin/packages/r-xvector/package.py b/var/spack/repos/builtin/packages/r-xvector/package.py
index 1ee264a373..7567def3f5 100644
--- a/var/spack/repos/builtin/packages/r-xvector/package.py
+++ b/var/spack/repos/builtin/packages/r-xvector/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ from spack import *
class RXvector(RPackage):
"""Foundation of external vector representation and manipulation in
- Bioconductor.
+ Bioconductor
Provides memory efficient S4 classes for storing sequences "externally"
(e.g. behind an R external pointer, or on disk)."""
@@ -16,6 +16,7 @@ class RXvector(RPackage):
homepage = "https://bioconductor.org/packages/XVector"
git = "https://git.bioconductor.org/packages/XVector.git"
+ version('0.30.0', commit='985e963e0b1c3ff004dd0b07ad7c9ff7ed853ec0')
version('0.24.0', commit='e5109cb2687724b9fddddf296c07a82bae4c551d')
version('0.22.0', commit='b5e107a5fd719e18374eb836eb498b529afa4473')
version('0.20.0', commit='a83a7ea01f6a710f0ba7d9fb021cfa795b291cb4')
@@ -25,15 +26,14 @@ class RXvector(RPackage):
depends_on('r@2.8.0:', type=('build', 'run'))
depends_on('r-biocgenerics@0.19.2:', type=('build', 'run'))
depends_on('r-s4vectors@0.13.13:', type=('build', 'run'))
- depends_on('r-iranges@2.9.18:', type=('build', 'run'))
- depends_on('r-zlibbioc', type=('build', 'run'))
-
depends_on('r-s4vectors@0.15.14:', when='@0.18.0:', type=('build', 'run'))
-
depends_on('r-s4vectors@0.17.24:', when='@0.20.0:', type=('build', 'run'))
- depends_on('r-iranges@2.13.16:', when='@0.20.0:', type=('build', 'run'))
-
depends_on('r-s4vectors@0.19.15:', when='@0.22.0:', type=('build', 'run'))
- depends_on('r-iranges@2.15.12:', when='@0.22.0:', type=('build', 'run'))
-
depends_on('r-s4vectors@0.21.13:', when='@0.24.0:', type=('build', 'run'))
+ depends_on('r-s4vectors@0.27.12:', when='@0.30.0:', type=('build', 'run'))
+ depends_on('r-iranges@2.9.18:', type=('build', 'run'))
+ depends_on('r-iranges@2.13.16:', when='@0.20.0:', type=('build', 'run'))
+ depends_on('r-iranges@2.15.12:', when='@0.22.0:', type=('build', 'run'))
+ depends_on('r-iranges@2.23.9:', when='@0.30.0:', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/r-yaimpute/package.py b/var/spack/repos/builtin/packages/r-yaimpute/package.py
index 6d15be6ff6..9da2563e84 100644
--- a/var/spack/repos/builtin/packages/r-yaimpute/package.py
+++ b/var/spack/repos/builtin/packages/r-yaimpute/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-yaml/package.py b/var/spack/repos/builtin/packages/r-yaml/package.py
index 60b5fab154..29e6b1c403 100644
--- a/var/spack/repos/builtin/packages/r-yaml/package.py
+++ b/var/spack/repos/builtin/packages/r-yaml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,13 +7,16 @@ from spack import *
class RYaml(RPackage):
- """This package implements the libyaml YAML 1.1 parser and emitter
- (http://pyyaml.org/wiki/LibYAML) for R."""
+ """Methods to Convert R Data to YAML and Back
+
+ Implements the 'libyaml' 'YAML' 1.1 parser and emitter
+ (<http://pyyaml.org/wiki/LibYAML>) for R."""
homepage = "https://cloud.r-project.org/package=yaml"
url = "https://cloud.r-project.org/src/contrib/yaml_2.1.13.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/yaml"
+ version('2.2.1', sha256='1115b7bc2a397fa724956eec916df5160c600c99a3be186d21558dd38d782783')
version('2.2.0', sha256='55bcac87eca360ab5904914fcff473a6981a1f5e6d2215d2634344d0ac30c546')
version('2.1.19', sha256='e5db035693ac765e4b5fe1fc2e9711f8ca73e398e3f2bf27cc60def59ccd7f11')
version('2.1.14', sha256='41a559846f6d44cc2dbcb3fc0becbc50d2766d3dc2aad7cfb97c1f9759ec0875')
diff --git a/var/spack/repos/builtin/packages/r-yapsa/package.py b/var/spack/repos/builtin/packages/r-yapsa/package.py
index a6facc807d..0f646664a4 100644
--- a/var/spack/repos/builtin/packages/r-yapsa/package.py
+++ b/var/spack/repos/builtin/packages/r-yapsa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RYapsa(RPackage):
- """Yet Another Package for Signature Analysis.
+ """Yet Another Package for Signature Analysis
This package provides functions and routines useful in the analysis of
somatic signatures (cf. L. Alexandrov et al., Nature 2013). In
@@ -19,6 +19,7 @@ class RYapsa(RPackage):
homepage = "https://bioconductor.org/packages/YAPSA"
git = "https://git.bioconductor.org/packages/YAPSA.git"
+ version('1.16.0', commit='f344cdb81bb886c633f9325f811912fb59d58eb1')
version('1.10.0', commit='06af18e424868eb0f0be6c80e90cbab1eabf3d73')
version('1.8.0', commit='402f3f7774fdf8afc7883579ad651c26df0f8fdb')
version('1.6.0', commit='2455d272b076835ddb36ad21c01ef15af66abc36')
@@ -26,9 +27,10 @@ class RYapsa(RPackage):
version('1.2.0', commit='320809b69e470e30a777a383f8341f93064ec24d')
depends_on('r@3.3.0:', type=('build', 'run'))
+ depends_on('r@3.6.0:', when='@1.16.0:', type=('build', 'run'))
depends_on('r-genomicranges', type=('build', 'run'))
depends_on('r-ggplot2', type=('build', 'run'))
- depends_on('r-lsei', type=('build', 'run'))
+ depends_on('r-limsolve', when='@1.16.0:', type=('build', 'run'))
depends_on('r-somaticsignatures', type=('build', 'run'))
depends_on('r-variantannotation', type=('build', 'run'))
depends_on('r-genomeinfodb', type=('build', 'run'))
@@ -39,6 +41,14 @@ class RYapsa(RPackage):
depends_on('r-getoptlong', type=('build', 'run'))
depends_on('r-circlize', type=('build', 'run'))
depends_on('r-gtrellis', type=('build', 'run'))
+ depends_on('r-doparallel', when='@1.16.0:', type=('build', 'run'))
depends_on('r-pmcmr', type=('build', 'run'))
+ depends_on('r-ggbeeswarm', when='@1.16.0:', type=('build', 'run'))
depends_on('r-complexheatmap', type=('build', 'run'))
depends_on('r-keggrest', type=('build', 'run'))
+ depends_on('r-biostrings', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-bsgenome-hsapiens-ucsc-hg19', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-magrittr', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-pracma', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-dplyr', when='@1.16.0:', type=('build', 'run'))
+ depends_on('r-lsei', when='@:1.10.0', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-yaqcaffy/package.py b/var/spack/repos/builtin/packages/r-yaqcaffy/package.py
index eb5ac5f82c..05f100f306 100644
--- a/var/spack/repos/builtin/packages/r-yaqcaffy/package.py
+++ b/var/spack/repos/builtin/packages/r-yaqcaffy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RYaqcaffy(RPackage):
- """Affymetrix expression data quality control and reproducibility analysis.
+ """Affymetrix expression data quality control and reproducibility analysis
Quality control of Affymetrix GeneChip expression data and
reproducibility analysis of human whole genome chips with the MAQC
@@ -16,6 +16,7 @@ class RYaqcaffy(RPackage):
homepage = "https://bioconductor.org/packages/yaqcaffy"
git = "https://git.bioconductor.org/packages/yaqcaffy.git"
+ version('1.50.0', commit='b32e6b947ca9c4ab7163cfddc084a1bc0a34780e')
version('1.44.0', commit='00898f3ec9ac0beadbcf57bda3d3c1c99fb0c3c0')
version('1.42.0', commit='a4af673774165e087499ecc35f96aab6bbfbeea1')
version('1.40.0', commit='0c78f8ff8f675305f6fa4b052d2482e9aee551bb')
diff --git a/var/spack/repos/builtin/packages/r-yarn/package.py b/var/spack/repos/builtin/packages/r-yarn/package.py
index 8cec9b3612..7329f7caeb 100644
--- a/var/spack/repos/builtin/packages/r-yarn/package.py
+++ b/var/spack/repos/builtin/packages/r-yarn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RYarn(RPackage):
- """YARN: Robust Multi-Condition RNA-Seq Preprocessing and Normalization.
+ """YARN: Robust Multi-Condition RNA-Seq Preprocessing and Normalization
Expedite large RNA-Seq analyses using a combination of previously
developed tools. YARN is meant to make it easier for the user in
@@ -19,6 +19,7 @@ class RYarn(RPackage):
homepage = "https://bioconductor.org/packages/yarn"
git = "https://git.bioconductor.org/packages/yarn.git"
+ version('1.16.0', commit='ff5a18cb946ffec3cb773fe32af401c8a72d674a')
version('1.10.0', commit='36ffe84148eb871e93bc8f9e697475319b5ea472')
version('1.8.1', commit='ee0723d4dbf082b4469ca9c22cce4f1a2ac81c04')
version('1.6.0', commit='19d1b2ef275f294bd318b86e0d237c271880117d')
diff --git a/var/spack/repos/builtin/packages/r-zcompositions/package.py b/var/spack/repos/builtin/packages/r-zcompositions/package.py
new file mode 100644
index 0000000000..1fb90f2fc0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-zcompositions/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RZcompositions(RPackage):
+ """Treatment of Zeros, Left-Censored and Missing Values in Compositional
+ Data Sets
+
+ Principled methods for the imputation of zeros, left-censored and missing
+ data in compositional data sets (Palarea-Albaladejo and Martin-Fernandez
+ (2015) <doi:10.1016/j.chemolab.2015.02.019>)."""
+
+ homepage = "https://cloud.r-project.org/package=zCompositions"
+ url = "https://cloud.r-project.org/src/contrib/zCompositions_1.3.4.tar.gz"
+ list_url = "https://cloud.r-project.org/src/contrib/Archive/zCompositions"
+
+ version('1.3.4', sha256='ae22c86fe92368a26265933f42eecc518b9b69e7d9b698bc31bfaabfc3c48e95')
+
+ depends_on('r@2.14.0:', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-nada', type=('build', 'run'))
+ depends_on('r-truncnorm', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-zeallot/package.py b/var/spack/repos/builtin/packages/r-zeallot/package.py
index 67c0a8b27c..b86f7618b6 100644
--- a/var/spack/repos/builtin/packages/r-zeallot/package.py
+++ b/var/spack/repos/builtin/packages/r-zeallot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/r-zip/package.py b/var/spack/repos/builtin/packages/r-zip/package.py
index dc5a2341c9..ed56a8009c 100644
--- a/var/spack/repos/builtin/packages/r-zip/package.py
+++ b/var/spack/repos/builtin/packages/r-zip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RZip(RPackage):
- """Cross-Platform 'zip' Compression Library. A replacement for the 'zip'
+ """Cross-Platform 'zip' Compression
+
+ Cross-Platform 'zip' Compression Library. A replacement for the 'zip'
function, that does not require any additional external tools on any
platform."""
@@ -15,4 +17,5 @@ class RZip(RPackage):
url = "https://cloud.r-project.org/src/contrib/zip_2.0.3.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/zip"
+ version('2.1.1', sha256='11dd417932296d3a25c53aa8d3b908973c4945a496cc473dd321825dfaaa7c2c')
version('2.0.3', sha256='4a8cb8e41eb630bbf448a0fd56bcaeb752b8484fef98c6419334edf46401317e')
diff --git a/var/spack/repos/builtin/packages/r-zlibbioc/package.py b/var/spack/repos/builtin/packages/r-zlibbioc/package.py
index 2e4f8175ea..ced5ec2f16 100644
--- a/var/spack/repos/builtin/packages/r-zlibbioc/package.py
+++ b/var/spack/repos/builtin/packages/r-zlibbioc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
class RZlibbioc(RPackage):
- """An R packaged zlib-1.2.5.
+ """An R packaged zlib-1.2.5
This package uses the source code of zlib-1.2.5 to create libraries for
systems that do not have these available via other means (most Linux and
@@ -17,6 +17,7 @@ class RZlibbioc(RPackage):
homepage = "https://bioconductor.org/packages/zlibbioc"
git = "https://git.bioconductor.org/packages/zlibbioc.git"
+ version('1.36.0', commit='62e888cd7fb482d512c6c31961b657e0b924e357')
version('1.30.0', commit='99eae5b05968bf6abc9b54b9031afd93517381e0')
version('1.28.0', commit='b825b042742ba45455fc284b988ff4cd2a33222c')
version('1.26.0', commit='2e3ab097caa09a5e3ddaa3469b13e19a7224da0d')
diff --git a/var/spack/repos/builtin/packages/r-zoo/package.py b/var/spack/repos/builtin/packages/r-zoo/package.py
index 6c12d29e21..e1000200fc 100644
--- a/var/spack/repos/builtin/packages/r-zoo/package.py
+++ b/var/spack/repos/builtin/packages/r-zoo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,9 @@ from spack import *
class RZoo(RPackage):
- """An S3 class with methods for totally ordered indexed observations. It is
+ """S3 Infrastructure for Regular and Irregular Time Series (Z's Ordered Observations)
+
+ An S3 class with methods for totally ordered indexed observations. It is
particularly aimed at irregular time series of numeric vectors/matrices and
factors. zoo's key design goals are independence of a particular
index/date/time class and consistency with ts and base R by providing
@@ -17,11 +19,12 @@ class RZoo(RPackage):
url = "https://cloud.r-project.org/src/contrib/zoo_1.7-14.tar.gz"
list_url = "https://cloud.r-project.org/src/contrib/Archive/zoo"
+ version('1.8-8', sha256='4e8cc4065047ba12e103b9664f3b607c770673096e9c2b694fad2b2ec3203ce7')
version('1.8-6', sha256='2217a4f362f2201443b5fdbfd9a77d9a6caeecb05f02d703ee8b3b9bf2af37cc')
version('1.8-5', sha256='8773969973d28d7d1a48f74b73be1dbd97acb3b22a4668a102e8bb585a7de826')
version('1.7-14', sha256='4858675fed056a4329c4998517cc944db386447483390bd342de719e0509f598')
version('1.7-13', sha256='0ca5264d6077c785963705e462aec3e57e0d0651379f9bf4ee32e4f3b25dc754')
- depends_on('r@2.10.0:', when='@:1.8-1', type=('build', 'run'))
+ depends_on('r@2.10.0:', type=('build', 'run'))
depends_on('r@3.1.0:', when='@1.8-2:', type=('build', 'run'))
depends_on('r-lattice@0.20-27:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r/package.py b/var/spack/repos/builtin/packages/r/package.py
index 6514f14d9d..b0f1dc11e9 100644
--- a/var/spack/repos/builtin/packages/r/package.py
+++ b/var/spack/repos/builtin/packages/r/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,11 @@ class R(AutotoolsPackage):
extendable = True
+ maintainers = ['glennpj']
+
+ version('4.1.0', sha256='e8e68959d7282ca147360fc9644ada9bd161bab781bab14d33b8999a95182781')
+ version('4.0.5', sha256='0a3ee079aa772e131fe5435311ab627fcbccb5a50cabc54292e6f62046f1ffef')
+ version('4.0.4', sha256='523f27d69744a08c8f0bd5e1e6c3d89a4db29ed983388ba70963a3cd3a4a802e')
version('4.0.3', sha256='09983a8a78d5fb6bc45d27b1c55f9ba5265f78fa54a55c13ae691f87c5bb9e0d')
version('4.0.2', sha256='d3bceab364da0876625e4097808b42512395fdf41292f4915ab1fd257c1bbe75')
version('4.0.1', sha256='95fe24a4d8d8f8f888460c8f5fe4311cec656e7a1722d233218bc03861bc6f32')
@@ -53,41 +58,34 @@ class R(AutotoolsPackage):
variant('external-lapack', default=False,
description='Links to externally installed BLAS/LAPACK')
variant('X', default=False,
- description='Enable X11 support (call configure --with-x)')
+ description='Enable X11 support (TCLTK, PNG, JPEG, TIFF, CAIRO)')
variant('memory_profiling', default=False,
description='Enable memory profiling')
variant('rmath', default=False,
description='Build standalone Rmath library')
- # Virtual dependencies
depends_on('blas', when='+external-lapack')
depends_on('lapack', when='+external-lapack')
-
- # Concrete dependencies.
- depends_on('readline')
- depends_on('ncurses')
+ depends_on('bzip2')
+ depends_on('curl')
depends_on('icu4c')
- depends_on('glib')
+ depends_on('java')
+ depends_on('ncurses')
+ depends_on('pcre', when='@:3.6.3')
+ depends_on('pcre2', when='@4:')
+ depends_on('readline')
+ depends_on('xz')
depends_on('zlib@1.2.5:')
- depends_on('bzip2')
- depends_on('libtiff')
- depends_on('jpeg')
- depends_on('cairo+pdf')
- depends_on('cairo+X', when='+X')
- depends_on('cairo~X', when='~X')
- depends_on('pango')
+ depends_on('cairo+X+gobject+pdf', when='+X')
depends_on('pango+X', when='+X')
- depends_on('pango~X', when='~X')
- depends_on('freetype')
- depends_on('tcl')
- depends_on('tk', when='+X')
+ depends_on('harfbuzz+graphite2', when='+X')
+ depends_on('jpeg', when='+X')
+ depends_on('libpng', when='+X')
+ depends_on('libtiff', when='+X')
depends_on('libx11', when='+X')
- depends_on('libxt', when='+X')
depends_on('libxmu', when='+X')
- depends_on('curl')
- depends_on('pcre2', when='@4:')
- depends_on('pcre', when='@:3.6.3')
- depends_on('java')
+ depends_on('libxt', when='+X')
+ depends_on('tk', when='+X')
patch('zlib.patch', when='@:3.3.2')
@@ -111,39 +109,26 @@ class R(AutotoolsPackage):
def etcdir(self):
return join_path(prefix, 'rlib', 'R', 'etc')
- @run_after('build')
- def build_rmath(self):
- if '+rmath' in self.spec:
- with working_dir('src/nmath/standalone'):
- make()
-
@run_after('install')
def install_rmath(self):
if '+rmath' in self.spec:
with working_dir('src/nmath/standalone'):
- make('install')
+ make()
+ make('install', parallel=False)
def configure_args(self):
spec = self.spec
prefix = self.prefix
- tcl_config_path = join_path(
- spec['tcl'].libs.directories[0], 'tclConfig.sh')
-
config_args = [
'--libdir={0}'.format(join_path(prefix, 'rlib')),
'--enable-R-shlib',
'--enable-BLAS-shlib',
'--enable-R-framework=no',
'--without-recommended-packages',
- '--with-tcl-config={0}'.format(tcl_config_path),
'LDFLAGS=-L{0} -Wl,-rpath,{0}'.format(join_path(prefix, 'rlib',
'R', 'lib')),
]
- if '^tk' in spec:
- tk_config_path = join_path(
- spec['tk'].libs.directories[0], 'tkConfig.sh')
- config_args.append('--with-tk-config={0}'.format(tk_config_path))
if '+external-lapack' in spec:
if '^mkl' in spec and 'gfortran' in self.compiler.fc:
@@ -161,8 +146,26 @@ class R(AutotoolsPackage):
])
if '+X' in spec:
+ config_args.append('--with-cairo')
+ config_args.append('--with-jpeglib')
+ config_args.append('--with-libpng')
+ config_args.append('--with-libtiff')
+ config_args.append('--with-tcltk')
config_args.append('--with-x')
+
+ tcl_config_path = join_path(
+ spec['tcl'].libs.directories[0], 'tclConfig.sh')
+ config_args.append('--with-tcl-config={0}'.format(tcl_config_path))
+
+ tk_config_path = join_path(
+ spec['tk'].libs.directories[0], 'tkConfig.sh')
+ config_args.append('--with-tk-config={0}'.format(tk_config_path))
else:
+ config_args.append('--without-cairo')
+ config_args.append('--without-jpeglib')
+ config_args.append('--without-libpng')
+ config_args.append('--without-libtiff')
+ config_args.append('--without-tcltk')
config_args.append('--without-x')
if '+memory_profiling' in spec:
@@ -217,12 +220,14 @@ class R(AutotoolsPackage):
dependent_spec.prefix, self.r_lib_dir))
def setup_run_environment(self, env):
- env.prepend_path('LIBRARY_PATH',
- join_path(self.prefix, 'rlib', 'R', 'lib'))
env.prepend_path('LD_LIBRARY_PATH',
join_path(self.prefix, 'rlib', 'R', 'lib'))
- env.prepend_path('CPATH',
- join_path(self.prefix, 'rlib', 'R', 'include'))
+ env.prepend_path('PKG_CONFIG_PATH',
+ join_path(self.prefix, 'rlib', 'pkgconfig'))
+
+ if '+rmath' in self.spec:
+ env.prepend_path('LD_LIBRARY_PATH',
+ join_path(self.prefix, 'rlib'))
def setup_dependent_package(self, module, dependent_spec):
"""Called before R modules' install() methods. In most cases,
diff --git a/var/spack/repos/builtin/packages/r3d/package.py b/var/spack/repos/builtin/packages/r3d/package.py
index 228a0dbaa6..3530e90b2b 100644
--- a/var/spack/repos/builtin/packages/r3d/package.py
+++ b/var/spack/repos/builtin/packages/r3d/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,31 +6,43 @@
from spack import *
-class R3d(MakefilePackage):
+class R3d(CMakePackage):
"""Fast, robust polyhedral intersections, analytic integration, and
conservative voxelization."""
homepage = "https://github.com/devonmpowell/r3d"
git = "https://github.com/devonmpowell/r3d.git"
- version('2019-04-24', commit='86cea79c124c6a8edd8c8cdea61e3e923acb0b22')
- version('2018-12-19', commit='47308f68c782ed3227d3dab1eff24d41f6421f21')
- version('2018-01-07', commit='d6799a582256a120ef3bd7e18959e96cba0e5495')
+ maintainers = ['raovgarimella', 'gaber']
- variant("test", default=False, description="Build R3D regression tests")
+ version('master', branch='master')
+ version('2021-03-16', commit='5978a3f9cc145a52eecbf89c44d7fd2166b4c778')
+ version('2019-04-24', commit='86cea79c124c6a8edd8c8cdea61e3e923acb0b22', deprecated=True)
+ version('2018-12-19', commit='47308f68c782ed3227d3dab1eff24d41f6421f21', deprecated=True)
+ version('2018-01-07', commit='d6799a582256a120ef3bd7e18959e96cba0e5495', deprecated=True)
+ variant("r3d_max_verts", default='0', description="Maximum number of vertices allowed in a polyhedron (versions 2021-03-10 or later)")
+
+ # Bypass CMake for older builds
+ variant("test", default=False, description="Build R3D regression tests (versions 2019-04-24 or earlier)")
+
+ @when('@:2019-04-24')
+ def cmake(self, spec, prefix):
+ pass
+
+ @when('@:2019-04-24')
def build(self, spec, prefix):
make_args = [
'CC={0}'.format(spack_cc),
]
-
make('libr3d.a', *make_args)
if '+test' in spec:
with working_dir('tests'):
make('all', *make_args)
+ @when('@:2019-04-24')
def install(self, spec, prefix):
# R3D does not have an install target so create our own here.
@@ -49,3 +61,18 @@ class R3d(MakefilePackage):
install('r2d_unit_tests', prefix.test)
install('r3d_unit_tests', prefix.test)
install('rNd_unit_tests', prefix.test)
+
+ # CMake support was added in 2021-03-10
+ @when('@2021-03-10:')
+ def cmake_args(self):
+ options = []
+ r3d_max_verts = self.spec.variants['r3d_max_verts'].value
+ if (r3d_max_verts != '0'):
+ options.append('-DR3D_MAX_VERTS=' + r3d_max_verts)
+
+ if self.run_tests:
+ options.append('-DENABLE_UNIT_TESTS=ON')
+ else:
+ options.append('-DENABLE_UNIT_TESTS=OFF')
+
+ return options
diff --git a/var/spack/repos/builtin/packages/rabbitmq/package.py b/var/spack/repos/builtin/packages/rabbitmq/package.py
index e496af820c..d9f5d18ad0 100644
--- a/var/spack/repos/builtin/packages/rabbitmq/package.py
+++ b/var/spack/repos/builtin/packages/rabbitmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/racon/aarch64.patch b/var/spack/repos/builtin/packages/racon/aarch64.patch
index 332be1179d..57c01876b3 100644
--- a/var/spack/repos/builtin/packages/racon/aarch64.patch
+++ b/var/spack/repos/builtin/packages/racon/aarch64.patch
@@ -1,2792 +1,3 @@
-diff --git a/vendor/spoa/include/arch/aarch64/sse2neon.h b/vendor/spoa/include/arch/aarch64/sse2neon.h
-new file mode 100644
-index 0000000..1477ae1
---- /dev/null
-+++ b/vendor/spoa/include/arch/aarch64/sse2neon.h
-@@ -0,0 +1,2783 @@
-+#ifndef SSE2NEON_H
-+#define SSE2NEON_H
-+
-+// This header file provides a simple API translation layer
-+// between SSE intrinsics to their corresponding Arm/Aarch64 NEON versions
-+//
-+// This header file does not yet translate all of the SSE intrinsics.
-+//
-+// Contributors to this work are:
-+// John W. Ratcliff <jratcliffscarab@gmail.com>
-+// Brandon Rowlett <browlett@nvidia.com>
-+// Ken Fast <kfast@gdeb.com>
-+// Eric van Beurden <evanbeurden@nvidia.com>
-+// Alexander Potylitsin <apotylitsin@nvidia.com>
-+// Hasindu Gamaarachchi <hasindu2008@gmail.com>
-+// Jim Huang <jserv@biilabs.io>
-+// Mark Cheng <marktwtn@biilabs.io>
-+// Malcolm James MacLeod <malcolm@gulden.com>
-+
-+/*
-+ * The MIT license:
-+ *
-+ * Permission is hereby granted, free of charge, to any person obtaining a copy
-+ * of this software and associated documentation files (the "Software"), to deal
-+ * in the Software without restriction, including without limitation the rights
-+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-+ * copies of the Software, and to permit persons to whom the Software is
-+ * furnished to do so, subject to the following conditions:
-+ *
-+ * The above copyright notice and this permission notice shall be included in
-+ * all copies or substantial portions of the Software.
-+ *
-+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-+ * SOFTWARE.
-+ */
-+
-+#if defined(__GNUC__) || defined(__clang__)
-+
-+#pragma push_macro("FORCE_INLINE")
-+#pragma push_macro("ALIGN_STRUCT")
-+#define FORCE_INLINE static inline __attribute__((always_inline))
-+#define ALIGN_STRUCT(x) __attribute__((aligned(x)))
-+
-+#else
-+
-+#error "Macro name collisions may happens with unknown compiler"
-+#ifdef FORCE_INLINE
-+#undef FORCE_INLINE
-+#endif
-+#define FORCE_INLINE static inline
-+#ifndef ALIGN_STRUCT
-+#define ALIGN_STRUCT(x) __declspec(align(x))
-+#endif
-+
-+#endif
-+
-+#include <stdint.h>
-+
-+#include "arm_neon.h"
-+
-+/**
-+ * MACRO for shuffle parameter for _mm_shuffle_ps().
-+ * Argument fp3 is a digit[0123] that represents the fp from argument "b"
-+ * of mm_shuffle_ps that will be placed in fp3 of result. fp2 is the same
-+ * for fp2 in result. fp1 is a digit[0123] that represents the fp from
-+ * argument "a" of mm_shuffle_ps that will be places in fp1 of result.
-+ * fp0 is the same for fp0 of result.
-+ */
-+#define _MM_SHUFFLE(fp3, fp2, fp1, fp0) \
-+ (((fp3) << 6) | ((fp2) << 4) | ((fp1) << 2) | ((fp0)))
-+
-+/* indicate immediate constant argument in a given range */
-+#define __constrange(a, b) const
-+
-+typedef float32x2_t __m64;
-+typedef float32x4_t __m128;
-+typedef int32x4_t __m128i;
-+
-+// ******************************************
-+// type-safe casting between types
-+// ******************************************
-+
-+#define vreinterpretq_m128_f16(x) vreinterpretq_f32_f16(x)
-+#define vreinterpretq_m128_f32(x) (x)
-+#define vreinterpretq_m128_f64(x) vreinterpretq_f32_f64(x)
-+
-+#define vreinterpretq_m128_u8(x) vreinterpretq_f32_u8(x)
-+#define vreinterpretq_m128_u16(x) vreinterpretq_f32_u16(x)
-+#define vreinterpretq_m128_u32(x) vreinterpretq_f32_u32(x)
-+#define vreinterpretq_m128_u64(x) vreinterpretq_f32_u64(x)
-+
-+#define vreinterpretq_m128_s8(x) vreinterpretq_f32_s8(x)
-+#define vreinterpretq_m128_s16(x) vreinterpretq_f32_s16(x)
-+#define vreinterpretq_m128_s32(x) vreinterpretq_f32_s32(x)
-+#define vreinterpretq_m128_s64(x) vreinterpretq_f32_s64(x)
-+
-+#define vreinterpretq_f16_m128(x) vreinterpretq_f16_f32(x)
-+#define vreinterpretq_f32_m128(x) (x)
-+#define vreinterpretq_f64_m128(x) vreinterpretq_f64_f32(x)
-+
-+#define vreinterpretq_u8_m128(x) vreinterpretq_u8_f32(x)
-+#define vreinterpretq_u16_m128(x) vreinterpretq_u16_f32(x)
-+#define vreinterpretq_u32_m128(x) vreinterpretq_u32_f32(x)
-+#define vreinterpretq_u64_m128(x) vreinterpretq_u64_f32(x)
-+
-+#define vreinterpretq_s8_m128(x) vreinterpretq_s8_f32(x)
-+#define vreinterpretq_s16_m128(x) vreinterpretq_s16_f32(x)
-+#define vreinterpretq_s32_m128(x) vreinterpretq_s32_f32(x)
-+#define vreinterpretq_s64_m128(x) vreinterpretq_s64_f32(x)
-+
-+#define vreinterpretq_m128i_s8(x) vreinterpretq_s32_s8(x)
-+#define vreinterpretq_m128i_s16(x) vreinterpretq_s32_s16(x)
-+#define vreinterpretq_m128i_s32(x) (x)
-+#define vreinterpretq_m128i_s64(x) vreinterpretq_s32_s64(x)
-+
-+#define vreinterpretq_m128i_u8(x) vreinterpretq_s32_u8(x)
-+#define vreinterpretq_m128i_u16(x) vreinterpretq_s32_u16(x)
-+#define vreinterpretq_m128i_u32(x) vreinterpretq_s32_u32(x)
-+#define vreinterpretq_m128i_u64(x) vreinterpretq_s32_u64(x)
-+
-+#define vreinterpretq_s8_m128i(x) vreinterpretq_s8_s32(x)
-+#define vreinterpretq_s16_m128i(x) vreinterpretq_s16_s32(x)
-+#define vreinterpretq_s32_m128i(x) (x)
-+#define vreinterpretq_s64_m128i(x) vreinterpretq_s64_s32(x)
-+
-+#define vreinterpretq_u8_m128i(x) vreinterpretq_u8_s32(x)
-+#define vreinterpretq_u16_m128i(x) vreinterpretq_u16_s32(x)
-+#define vreinterpretq_u32_m128i(x) vreinterpretq_u32_s32(x)
-+#define vreinterpretq_u64_m128i(x) vreinterpretq_u64_s32(x)
-+
-+// A struct is defined in this header file called 'SIMDVec' which can be used
-+// by applications which attempt to access the contents of an _m128 struct
-+// directly. It is important to note that accessing the __m128 struct directly
-+// is bad coding practice by Microsoft: @see:
-+// https://msdn.microsoft.com/en-us/library/ayeb3ayc.aspx
-+//
-+// However, some legacy source code may try to access the contents of an __m128
-+// struct directly so the developer can use the SIMDVec as an alias for it. Any
-+// casting must be done manually by the developer, as you cannot cast or
-+// otherwise alias the base NEON data type for intrinsic operations.
-+//
-+// union intended to allow direct access to an __m128 variable using the names
-+// that the MSVC compiler provides. This union should really only be used when
-+// trying to access the members of the vector as integer values. GCC/clang
-+// allow native access to the float members through a simple array access
-+// operator (in C since 4.6, in C++ since 4.8).
-+//
-+// Ideally direct accesses to SIMD vectors should not be used since it can cause
-+// a performance hit. If it really is needed however, the original __m128
-+// variable can be aliased with a pointer to this union and used to access
-+// individual components. The use of this union should be hidden behind a macro
-+// that is used throughout the codebase to access the members instead of always
-+// declaring this type of variable.
-+typedef union ALIGN_STRUCT(16) SIMDVec {
-+ float
-+ m128_f32[4]; // as floats - do not to use this. Added for convenience.
-+ int8_t m128_i8[16]; // as signed 8-bit integers.
-+ int16_t m128_i16[8]; // as signed 16-bit integers.
-+ int32_t m128_i32[4]; // as signed 32-bit integers.
-+ int64_t m128_i64[2]; // as signed 64-bit integers.
-+ uint8_t m128_u8[16]; // as unsigned 8-bit integers.
-+ uint16_t m128_u16[8]; // as unsigned 16-bit integers.
-+ uint32_t m128_u32[4]; // as unsigned 32-bit integers.
-+ uint64_t m128_u64[2]; // as unsigned 64-bit integers.
-+} SIMDVec;
-+
-+// casting using SIMDVec
-+#define vreinterpretq_nth_u64_m128i(x, n) (((SIMDVec *) &x)->m128_u64[n])
-+#define vreinterpretq_nth_u32_m128i(x, n) (((SIMDVec *) &x)->m128_u32[n])
-+
-+
-+// ******************************************
-+// Backwards compatibility for compilers with lack of specific type support
-+// ******************************************
-+
-+// Older gcc does not define vld1q_u8_x4 type
-+#if defined(__GNUC__) && !defined(__clang__)
-+#if __GNUC__ < 9 || (__GNUC__ == 9 && (__GNUC_MINOR__ <= 2))
-+FORCE_INLINE uint8x16x4_t vld1q_u8_x4(const uint8_t *p)
-+{
-+ uint8x16x4_t ret;
-+ ret.val[0] = vld1q_u8(p + 0);
-+ ret.val[1] = vld1q_u8(p + 16);
-+ ret.val[2] = vld1q_u8(p + 32);
-+ ret.val[3] = vld1q_u8(p + 48);
-+ return ret;
-+}
-+#endif
-+#endif
-+
-+
-+// ******************************************
-+// Set/get methods
-+// ******************************************
-+
-+// Loads one cache line of data from address p to a location closer to the
-+// processor. https://msdn.microsoft.com/en-us/library/84szxsww(v=vs.100).aspx
-+FORCE_INLINE void _mm_prefetch(const void *p, int i)
-+{
-+ __builtin_prefetch(p);
-+}
-+
-+// extracts the lower order floating point value from the parameter :
-+// https://msdn.microsoft.com/en-us/library/bb514059%28v=vs.120%29.aspx?f=255&MSPPError=-2147217396
-+FORCE_INLINE float _mm_cvtss_f32(__m128 a)
-+{
-+ return vgetq_lane_f32(vreinterpretq_f32_m128(a), 0);
-+}
-+
-+// Sets the 128-bit value to zero
-+// https://msdn.microsoft.com/en-us/library/vstudio/ys7dw0kh(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_setzero_si128(void)
-+{
-+ return vreinterpretq_m128i_s32(vdupq_n_s32(0));
-+}
-+
-+// Clears the four single-precision, floating-point values.
-+// https://msdn.microsoft.com/en-us/library/vstudio/tk1t2tbz(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_setzero_ps(void)
-+{
-+ return vreinterpretq_m128_f32(vdupq_n_f32(0));
-+}
-+
-+// Sets the four single-precision, floating-point values to w.
-+//
-+// r0 := r1 := r2 := r3 := w
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/2x1se8ha(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_set1_ps(float _w)
-+{
-+ return vreinterpretq_m128_f32(vdupq_n_f32(_w));
-+}
-+
-+// Sets the four single-precision, floating-point values to w.
-+// https://msdn.microsoft.com/en-us/library/vstudio/2x1se8ha(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_set_ps1(float _w)
-+{
-+ return vreinterpretq_m128_f32(vdupq_n_f32(_w));
-+}
-+
-+// Sets the four single-precision, floating-point values to the four inputs.
-+// https://msdn.microsoft.com/en-us/library/vstudio/afh0zf75(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_set_ps(float w, float z, float y, float x)
-+{
-+ float __attribute__((aligned(16))) data[4] = {x, y, z, w};
-+ return vreinterpretq_m128_f32(vld1q_f32(data));
-+}
-+
-+// Sets the four single-precision, floating-point values to the four inputs in
-+// reverse order.
-+// https://msdn.microsoft.com/en-us/library/vstudio/d2172ct3(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_setr_ps(float w, float z, float y, float x)
-+{
-+ float __attribute__((aligned(16))) data[4] = {w, z, y, x};
-+ return vreinterpretq_m128_f32(vld1q_f32(data));
-+}
-+
-+// Sets the 8 signed 16-bit integer values in reverse order.
-+//
-+// Return Value
-+// r0 := w0
-+// r1 := w1
-+// ...
-+// r7 := w7
-+FORCE_INLINE __m128i _mm_setr_epi16(short w0,
-+ short w1,
-+ short w2,
-+ short w3,
-+ short w4,
-+ short w5,
-+ short w6,
-+ short w7)
-+{
-+ int16_t __attribute__((aligned(16)))
-+ data[8] = {w0, w1, w2, w3, w4, w5, w6, w7};
-+ return vreinterpretq_m128i_s16(vld1q_s16((int16_t *) data));
-+}
-+
-+// Sets the 4 signed 32-bit integer values in reverse order
-+// https://technet.microsoft.com/en-us/library/security/27yb3ee5(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_setr_epi32(int i3, int i2, int i1, int i0)
-+{
-+ int32_t __attribute__((aligned(16))) data[4] = {i3, i2, i1, i0};
-+ return vreinterpretq_m128i_s32(vld1q_s32(data));
-+}
-+
-+// Sets the 16 signed 8-bit integer values to b.
-+//
-+// r0 := b
-+// r1 := b
-+// ...
-+// r15 := b
-+//
-+// https://msdn.microsoft.com/en-us/library/6e14xhyf(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_set1_epi8(char w)
-+{
-+ return vreinterpretq_m128i_s8(vdupq_n_s8(w));
-+}
-+
-+// Sets the 8 signed 16-bit integer values to w.
-+//
-+// r0 := w
-+// r1 := w
-+// ...
-+// r7 := w
-+//
-+// https://msdn.microsoft.com/en-us/library/k0ya3x0e(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_set1_epi16(short w)
-+{
-+ return vreinterpretq_m128i_s16(vdupq_n_s16(w));
-+}
-+
-+// Sets the 16 signed 8-bit integer values.
-+// https://msdn.microsoft.com/en-us/library/x0cx8zd3(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_set_epi8(char b15,
-+ char b14,
-+ char b13,
-+ char b12,
-+ char b11,
-+ char b10,
-+ char b9,
-+ char b8,
-+ char b7,
-+ char b6,
-+ char b5,
-+ char b4,
-+ char b3,
-+ char b2,
-+ char b1,
-+ char b0)
-+{
-+ int8_t __attribute__((aligned(16)))
-+ data[16] = {(int8_t) b0, (int8_t) b1, (int8_t) b2, (int8_t) b3,
-+ (int8_t) b4, (int8_t) b5, (int8_t) b6, (int8_t) b7,
-+ (int8_t) b8, (int8_t) b9, (int8_t) b10, (int8_t) b11,
-+ (int8_t) b12, (int8_t) b13, (int8_t) b14, (int8_t) b15};
-+ return (__m128i) vld1q_s8(data);
-+}
-+
-+// Sets the 8 signed 16-bit integer values.
-+// https://msdn.microsoft.com/en-au/library/3e0fek84(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_set_epi16(short i7,
-+ short i6,
-+ short i5,
-+ short i4,
-+ short i3,
-+ short i2,
-+ short i1,
-+ short i0)
-+{
-+ int16_t __attribute__((aligned(16)))
-+ data[8] = {i0, i1, i2, i3, i4, i5, i6, i7};
-+ return vreinterpretq_m128i_s16(vld1q_s16(data));
-+}
-+
-+// Sets the 16 signed 8-bit integer values in reverse order.
-+// https://msdn.microsoft.com/en-us/library/2khb9c7k(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_setr_epi8(char b0,
-+ char b1,
-+ char b2,
-+ char b3,
-+ char b4,
-+ char b5,
-+ char b6,
-+ char b7,
-+ char b8,
-+ char b9,
-+ char b10,
-+ char b11,
-+ char b12,
-+ char b13,
-+ char b14,
-+ char b15)
-+{
-+ int8_t __attribute__((aligned(16)))
-+ data[16] = {(int8_t) b0, (int8_t) b1, (int8_t) b2, (int8_t) b3,
-+ (int8_t) b4, (int8_t) b5, (int8_t) b6, (int8_t) b7,
-+ (int8_t) b8, (int8_t) b9, (int8_t) b10, (int8_t) b11,
-+ (int8_t) b12, (int8_t) b13, (int8_t) b14, (int8_t) b15};
-+ return (__m128i) vld1q_s8(data);
-+}
-+
-+// Sets the 4 signed 32-bit integer values to i.
-+//
-+// r0 := i
-+// r1 := i
-+// r2 := i
-+// r3 := I
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/h4xscxat(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_set1_epi32(int _i)
-+{
-+ return vreinterpretq_m128i_s32(vdupq_n_s32(_i));
-+}
-+
-+// Sets the 4 signed 64-bit integer values to i.
-+// https://msdn.microsoft.com/en-us/library/vstudio/h4xscxat(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_set1_epi64(int64_t _i)
-+{
-+ return vreinterpretq_m128i_s64(vdupq_n_s64(_i));
-+}
-+
-+// Sets the 4 signed 32-bit integer values.
-+// https://msdn.microsoft.com/en-us/library/vstudio/019beekt(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_set_epi32(int i3, int i2, int i1, int i0)
-+{
-+ int32_t __attribute__((aligned(16))) data[4] = {i0, i1, i2, i3};
-+ return vreinterpretq_m128i_s32(vld1q_s32(data));
-+}
-+
-+// Returns the __m128i structure with its two 64-bit integer values
-+// initialized to the values of the two 64-bit integers passed in.
-+// https://msdn.microsoft.com/en-us/library/dk2sdw0h(v=vs.120).aspx
-+FORCE_INLINE __m128i _mm_set_epi64x(int64_t i1, int64_t i2)
-+{
-+ int64_t __attribute__((aligned(16))) data[2] = {i2, i1};
-+ return vreinterpretq_m128i_s64(vld1q_s64(data));
-+}
-+
-+// Stores four single-precision, floating-point values.
-+// https://msdn.microsoft.com/en-us/library/vstudio/s3h4ay6y(v=vs.100).aspx
-+FORCE_INLINE void _mm_store_ps(float *p, __m128 a)
-+{
-+ vst1q_f32(p, vreinterpretq_f32_m128(a));
-+}
-+
-+// Stores four single-precision, floating-point values.
-+// https://msdn.microsoft.com/en-us/library/44e30x22(v=vs.100).aspx
-+FORCE_INLINE void _mm_storeu_ps(float *p, __m128 a)
-+{
-+ vst1q_f32(p, vreinterpretq_f32_m128(a));
-+}
-+
-+// Stores four 32-bit integer values as (as a __m128i value) at the address p.
-+// https://msdn.microsoft.com/en-us/library/vstudio/edk11s13(v=vs.100).aspx
-+FORCE_INLINE void _mm_store_si128(__m128i *p, __m128i a)
-+{
-+ vst1q_s32((int32_t *) p, vreinterpretq_s32_m128i(a));
-+}
-+
-+// Stores four 32-bit integer values as (as a __m128i value) at the address p.
-+// https://msdn.microsoft.com/en-us/library/vstudio/edk11s13(v=vs.100).aspx
-+FORCE_INLINE void _mm_storeu_si128(__m128i *p, __m128i a)
-+{
-+ vst1q_s32((int32_t *) p, vreinterpretq_s32_m128i(a));
-+}
-+
-+// Stores the lower single - precision, floating - point value.
-+// https://msdn.microsoft.com/en-us/library/tzz10fbx(v=vs.100).aspx
-+FORCE_INLINE void _mm_store_ss(float *p, __m128 a)
-+{
-+ vst1q_lane_f32(p, vreinterpretq_f32_m128(a), 0);
-+}
-+
-+// Reads the lower 64 bits of b and stores them into the lower 64 bits of a.
-+// https://msdn.microsoft.com/en-us/library/hhwf428f%28v=vs.90%29.aspx
-+FORCE_INLINE void _mm_storel_epi64(__m128i *a, __m128i b)
-+{
-+ uint64x1_t hi = vget_high_u64(vreinterpretq_u64_m128i(*a));
-+ uint64x1_t lo = vget_low_u64(vreinterpretq_u64_m128i(b));
-+ *a = vreinterpretq_m128i_u64(vcombine_u64(lo, hi));
-+}
-+
-+// Stores the lower two single-precision floating point values of a to the
-+// address p.
-+//
-+// *p0 := b0
-+// *p1 := b1
-+//
-+// https://msdn.microsoft.com/en-us/library/h54t98ks(v=vs.90).aspx
-+FORCE_INLINE void _mm_storel_pi(__m64 *p, __m128 a)
-+{
-+ *p = vget_low_f32(a);
-+}
-+
-+// Loads a single single-precision, floating-point value, copying it into all
-+// four words
-+// https://msdn.microsoft.com/en-us/library/vstudio/5cdkf716(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_load1_ps(const float *p)
-+{
-+ return vreinterpretq_m128_f32(vld1q_dup_f32(p));
-+}
-+#define _mm_load_ps1 _mm_load1_ps
-+
-+// Sets the lower two single-precision, floating-point values with 64
-+// bits of data loaded from the address p; the upper two values are passed
-+// through from a.
-+//
-+// Return Value
-+// r0 := *p0
-+// r1 := *p1
-+// r2 := a2
-+// r3 := a3
-+//
-+// https://msdn.microsoft.com/en-us/library/s57cyak2(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_loadl_pi(__m128 a, __m64 const *b)
-+{
-+ return vreinterpretq_m128_f32(
-+ vcombine_f32(vld1_f32((const float32_t *) b), vget_high_f32(a)));
-+}
-+
-+// Loads four single-precision, floating-point values.
-+// https://msdn.microsoft.com/en-us/library/vstudio/zzd50xxt(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_load_ps(const float *p)
-+{
-+ return vreinterpretq_m128_f32(vld1q_f32(p));
-+}
-+
-+// Loads four single-precision, floating-point values.
-+// https://msdn.microsoft.com/en-us/library/x1b16s7z%28v=vs.90%29.aspx
-+FORCE_INLINE __m128 _mm_loadu_ps(const float *p)
-+{
-+ // for neon, alignment doesn't matter, so _mm_load_ps and _mm_loadu_ps are
-+ // equivalent for neon
-+ return vreinterpretq_m128_f32(vld1q_f32(p));
-+}
-+
-+// Loads an single - precision, floating - point value into the low word and
-+// clears the upper three words.
-+// https://msdn.microsoft.com/en-us/library/548bb9h4%28v=vs.90%29.aspx
-+FORCE_INLINE __m128 _mm_load_ss(const float *p)
-+{
-+ return vreinterpretq_m128_f32(vsetq_lane_f32(*p, vdupq_n_f32(0), 0));
-+}
-+
-+FORCE_INLINE __m128i _mm_loadl_epi64(__m128i const *p)
-+{
-+ /* Load the lower 64 bits of the value pointed to by p into the
-+ * lower 64 bits of the result, zeroing the upper 64 bits of the result.
-+ */
-+ return vcombine_s32(vld1_s32((int32_t const *) p), vcreate_s32(0));
-+}
-+
-+// ******************************************
-+// Logic/Binary operations
-+// ******************************************
-+
-+// Compares for inequality.
-+// https://msdn.microsoft.com/en-us/library/sf44thbx(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_cmpneq_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_u32(vmvnq_u32(
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b))));
-+}
-+
-+// Computes the bitwise AND-NOT of the four single-precision, floating-point
-+// values of a and b.
-+//
-+// r0 := ~a0 & b0
-+// r1 := ~a1 & b1
-+// r2 := ~a2 & b2
-+// r3 := ~a3 & b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/68h7wd02(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_andnot_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_s32(
-+ vbicq_s32(vreinterpretq_s32_m128(b),
-+ vreinterpretq_s32_m128(a))); // *NOTE* argument swap
-+}
-+
-+// Computes the bitwise AND of the 128-bit value in b and the bitwise NOT of the
-+// 128-bit value in a.
-+//
-+// r := (~a) & b
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/1beaceh8(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_andnot_si128(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vbicq_s32(vreinterpretq_s32_m128i(b),
-+ vreinterpretq_s32_m128i(a))); // *NOTE* argument swap
-+}
-+
-+// Computes the bitwise AND of the 128-bit value in a and the 128-bit value in
-+// b.
-+//
-+// r := a & b
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/6d1txsa8(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_and_si128(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vandq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Computes the bitwise AND of the four single-precision, floating-point values
-+// of a and b.
-+//
-+// r0 := a0 & b0
-+// r1 := a1 & b1
-+// r2 := a2 & b2
-+// r3 := a3 & b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/73ck1xc5(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_and_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_s32(
-+ vandq_s32(vreinterpretq_s32_m128(a), vreinterpretq_s32_m128(b)));
-+}
-+
-+// Computes the bitwise OR of the four single-precision, floating-point values
-+// of a and b.
-+// https://msdn.microsoft.com/en-us/library/vstudio/7ctdsyy0(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_or_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_s32(
-+ vorrq_s32(vreinterpretq_s32_m128(a), vreinterpretq_s32_m128(b)));
-+}
-+
-+// Computes bitwise EXOR (exclusive-or) of the four single-precision,
-+// floating-point values of a and b.
-+// https://msdn.microsoft.com/en-us/library/ss6k3wk8(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_xor_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_s32(
-+ veorq_s32(vreinterpretq_s32_m128(a), vreinterpretq_s32_m128(b)));
-+}
-+
-+// Computes the bitwise OR of the 128-bit value in a and the 128-bit value in b.
-+//
-+// r := a | b
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/ew8ty0db(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_or_si128(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vorrq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Computes the bitwise XOR of the 128-bit value in a and the 128-bit value in
-+// b. https://msdn.microsoft.com/en-us/library/fzt08www(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_xor_si128(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s32(
-+ veorq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Moves the upper two values of B into the lower two values of A.
-+//
-+// r3 := a3
-+// r2 := a2
-+// r1 := b3
-+// r0 := b2
-+FORCE_INLINE __m128 _mm_movehl_ps(__m128 __A, __m128 __B)
-+{
-+ float32x2_t a32 = vget_high_f32(vreinterpretq_f32_m128(__A));
-+ float32x2_t b32 = vget_high_f32(vreinterpretq_f32_m128(__B));
-+ return vreinterpretq_m128_f32(vcombine_f32(b32, a32));
-+}
-+
-+// Moves the lower two values of B into the upper two values of A.
-+//
-+// r3 := b1
-+// r2 := b0
-+// r1 := a1
-+// r0 := a0
-+FORCE_INLINE __m128 _mm_movelh_ps(__m128 __A, __m128 __B)
-+{
-+ float32x2_t a10 = vget_low_f32(vreinterpretq_f32_m128(__A));
-+ float32x2_t b10 = vget_low_f32(vreinterpretq_f32_m128(__B));
-+ return vreinterpretq_m128_f32(vcombine_f32(a10, b10));
-+}
-+
-+// NEON does not provide this method
-+// Creates a 4-bit mask from the most significant bits of the four
-+// single-precision, floating-point values.
-+// https://msdn.microsoft.com/en-us/library/vstudio/4490ys29(v=vs.100).aspx
-+FORCE_INLINE int _mm_movemask_ps(__m128 a)
-+{
-+#if 0 /* C version */
-+ uint32x4_t &ia = *(uint32x4_t *) &a;
-+ return (ia[0] >> 31) | ((ia[1] >> 30) & 2) | ((ia[2] >> 29) & 4) |
-+ ((ia[3] >> 28) & 8);
-+#endif
-+ static const uint32x4_t movemask = {1, 2, 4, 8};
-+ static const uint32x4_t highbit = {0x80000000, 0x80000000, 0x80000000,
-+ 0x80000000};
-+ uint32x4_t t0 = vreinterpretq_u32_m128(a);
-+ uint32x4_t t1 = vtstq_u32(t0, highbit);
-+ uint32x4_t t2 = vandq_u32(t1, movemask);
-+ uint32x2_t t3 = vorr_u32(vget_low_u32(t2), vget_high_u32(t2));
-+ return vget_lane_u32(t3, 0) | vget_lane_u32(t3, 1);
-+}
-+
-+FORCE_INLINE __m128i _mm_abs_epi32(__m128i a)
-+{
-+ return vqabsq_s32(a);
-+}
-+
-+FORCE_INLINE __m128i _mm_abs_epi16(__m128i a)
-+{
-+ return vreinterpretq_s32_s16(vqabsq_s16(vreinterpretq_s16_s32(a)));
-+}
-+
-+// Takes the upper 64 bits of a and places it in the low end of the result
-+// Takes the lower 64 bits of b and places it into the high end of the result.
-+FORCE_INLINE __m128 _mm_shuffle_ps_1032(__m128 a, __m128 b)
-+{
-+ float32x2_t a32 = vget_high_f32(vreinterpretq_f32_m128(a));
-+ float32x2_t b10 = vget_low_f32(vreinterpretq_f32_m128(b));
-+ return vreinterpretq_m128_f32(vcombine_f32(a32, b10));
-+}
-+
-+// takes the lower two 32-bit values from a and swaps them and places in high
-+// end of result takes the higher two 32 bit values from b and swaps them and
-+// places in low end of result.
-+FORCE_INLINE __m128 _mm_shuffle_ps_2301(__m128 a, __m128 b)
-+{
-+ float32x2_t a01 = vrev64_f32(vget_low_f32(vreinterpretq_f32_m128(a)));
-+ float32x2_t b23 = vrev64_f32(vget_high_f32(vreinterpretq_f32_m128(b)));
-+ return vreinterpretq_m128_f32(vcombine_f32(a01, b23));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_0321(__m128 a, __m128 b)
-+{
-+ float32x2_t a21 = vget_high_f32(
-+ vextq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a), 3));
-+ float32x2_t b03 = vget_low_f32(
-+ vextq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b), 3));
-+ return vreinterpretq_m128_f32(vcombine_f32(a21, b03));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_2103(__m128 a, __m128 b)
-+{
-+ float32x2_t a03 = vget_low_f32(
-+ vextq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a), 3));
-+ float32x2_t b21 = vget_high_f32(
-+ vextq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b), 3));
-+ return vreinterpretq_m128_f32(vcombine_f32(a03, b21));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_1010(__m128 a, __m128 b)
-+{
-+ float32x2_t a10 = vget_low_f32(vreinterpretq_f32_m128(a));
-+ float32x2_t b10 = vget_low_f32(vreinterpretq_f32_m128(b));
-+ return vreinterpretq_m128_f32(vcombine_f32(a10, b10));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_1001(__m128 a, __m128 b)
-+{
-+ float32x2_t a01 = vrev64_f32(vget_low_f32(vreinterpretq_f32_m128(a)));
-+ float32x2_t b10 = vget_low_f32(vreinterpretq_f32_m128(b));
-+ return vreinterpretq_m128_f32(vcombine_f32(a01, b10));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_0101(__m128 a, __m128 b)
-+{
-+ float32x2_t a01 = vrev64_f32(vget_low_f32(vreinterpretq_f32_m128(a)));
-+ float32x2_t b01 = vrev64_f32(vget_low_f32(vreinterpretq_f32_m128(b)));
-+ return vreinterpretq_m128_f32(vcombine_f32(a01, b01));
-+}
-+
-+// keeps the low 64 bits of b in the low and puts the high 64 bits of a in the
-+// high
-+FORCE_INLINE __m128 _mm_shuffle_ps_3210(__m128 a, __m128 b)
-+{
-+ float32x2_t a10 = vget_low_f32(vreinterpretq_f32_m128(a));
-+ float32x2_t b32 = vget_high_f32(vreinterpretq_f32_m128(b));
-+ return vreinterpretq_m128_f32(vcombine_f32(a10, b32));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_0011(__m128 a, __m128 b)
-+{
-+ float32x2_t a11 = vdup_lane_f32(vget_low_f32(vreinterpretq_f32_m128(a)), 1);
-+ float32x2_t b00 = vdup_lane_f32(vget_low_f32(vreinterpretq_f32_m128(b)), 0);
-+ return vreinterpretq_m128_f32(vcombine_f32(a11, b00));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_0022(__m128 a, __m128 b)
-+{
-+ float32x2_t a22 =
-+ vdup_lane_f32(vget_high_f32(vreinterpretq_f32_m128(a)), 0);
-+ float32x2_t b00 = vdup_lane_f32(vget_low_f32(vreinterpretq_f32_m128(b)), 0);
-+ return vreinterpretq_m128_f32(vcombine_f32(a22, b00));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_2200(__m128 a, __m128 b)
-+{
-+ float32x2_t a00 = vdup_lane_f32(vget_low_f32(vreinterpretq_f32_m128(a)), 0);
-+ float32x2_t b22 =
-+ vdup_lane_f32(vget_high_f32(vreinterpretq_f32_m128(b)), 0);
-+ return vreinterpretq_m128_f32(vcombine_f32(a00, b22));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_3202(__m128 a, __m128 b)
-+{
-+ float32_t a0 = vgetq_lane_f32(vreinterpretq_f32_m128(a), 0);
-+ float32x2_t a22 =
-+ vdup_lane_f32(vget_high_f32(vreinterpretq_f32_m128(a)), 0);
-+ float32x2_t a02 = vset_lane_f32(a0, a22, 1); /* TODO: use vzip ?*/
-+ float32x2_t b32 = vget_high_f32(vreinterpretq_f32_m128(b));
-+ return vreinterpretq_m128_f32(vcombine_f32(a02, b32));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_1133(__m128 a, __m128 b)
-+{
-+ float32x2_t a33 =
-+ vdup_lane_f32(vget_high_f32(vreinterpretq_f32_m128(a)), 1);
-+ float32x2_t b11 = vdup_lane_f32(vget_low_f32(vreinterpretq_f32_m128(b)), 1);
-+ return vreinterpretq_m128_f32(vcombine_f32(a33, b11));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_2010(__m128 a, __m128 b)
-+{
-+ float32x2_t a10 = vget_low_f32(vreinterpretq_f32_m128(a));
-+ float32_t b2 = vgetq_lane_f32(vreinterpretq_f32_m128(b), 2);
-+ float32x2_t b00 = vdup_lane_f32(vget_low_f32(vreinterpretq_f32_m128(b)), 0);
-+ float32x2_t b20 = vset_lane_f32(b2, b00, 1);
-+ return vreinterpretq_m128_f32(vcombine_f32(a10, b20));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_2001(__m128 a, __m128 b)
-+{
-+ float32x2_t a01 = vrev64_f32(vget_low_f32(vreinterpretq_f32_m128(a)));
-+ float32_t b2 = vgetq_lane_f32(b, 2);
-+ float32x2_t b00 = vdup_lane_f32(vget_low_f32(vreinterpretq_f32_m128(b)), 0);
-+ float32x2_t b20 = vset_lane_f32(b2, b00, 1);
-+ return vreinterpretq_m128_f32(vcombine_f32(a01, b20));
-+}
-+
-+FORCE_INLINE __m128 _mm_shuffle_ps_2032(__m128 a, __m128 b)
-+{
-+ float32x2_t a32 = vget_high_f32(vreinterpretq_f32_m128(a));
-+ float32_t b2 = vgetq_lane_f32(b, 2);
-+ float32x2_t b00 = vdup_lane_f32(vget_low_f32(vreinterpretq_f32_m128(b)), 0);
-+ float32x2_t b20 = vset_lane_f32(b2, b00, 1);
-+ return vreinterpretq_m128_f32(vcombine_f32(a32, b20));
-+}
-+
-+// NEON does not support a general purpose permute intrinsic
-+// Selects four specific single-precision, floating-point values from a and b,
-+// based on the mask i.
-+// https://msdn.microsoft.com/en-us/library/vstudio/5f0858x0(v=vs.100).aspx
-+#if 0 /* C version */
-+FORCE_INLINE __m128 _mm_shuffle_ps_default(__m128 a,
-+ __m128 b,
-+ __constrange(0, 255) int imm)
-+{
-+ __m128 ret;
-+ ret[0] = a[imm & 0x3];
-+ ret[1] = a[(imm >> 2) & 0x3];
-+ ret[2] = b[(imm >> 4) & 0x03];
-+ ret[3] = b[(imm >> 6) & 0x03];
-+ return ret;
-+}
-+#endif
-+#define _mm_shuffle_ps_default(a, b, imm) \
-+ ({ \
-+ float32x4_t ret; \
-+ ret = vmovq_n_f32( \
-+ vgetq_lane_f32(vreinterpretq_f32_m128(a), (imm) &0x3)); \
-+ ret = vsetq_lane_f32( \
-+ vgetq_lane_f32(vreinterpretq_f32_m128(a), ((imm) >> 2) & 0x3), \
-+ ret, 1); \
-+ ret = vsetq_lane_f32( \
-+ vgetq_lane_f32(vreinterpretq_f32_m128(b), ((imm) >> 4) & 0x3), \
-+ ret, 2); \
-+ ret = vsetq_lane_f32( \
-+ vgetq_lane_f32(vreinterpretq_f32_m128(b), ((imm) >> 6) & 0x3), \
-+ ret, 3); \
-+ vreinterpretq_m128_f32(ret); \
-+ })
-+
-+// FORCE_INLINE __m128 _mm_shuffle_ps(__m128 a, __m128 b, __constrange(0,255)
-+// int imm)
-+#define _mm_shuffle_ps(a, b, imm) \
-+ ({ \
-+ __m128 ret; \
-+ switch (imm) { \
-+ case _MM_SHUFFLE(1, 0, 3, 2): \
-+ ret = _mm_shuffle_ps_1032((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 3, 0, 1): \
-+ ret = _mm_shuffle_ps_2301((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(0, 3, 2, 1): \
-+ ret = _mm_shuffle_ps_0321((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 1, 0, 3): \
-+ ret = _mm_shuffle_ps_2103((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(1, 0, 1, 0): \
-+ ret = _mm_movelh_ps((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(1, 0, 0, 1): \
-+ ret = _mm_shuffle_ps_1001((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(0, 1, 0, 1): \
-+ ret = _mm_shuffle_ps_0101((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(3, 2, 1, 0): \
-+ ret = _mm_shuffle_ps_3210((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(0, 0, 1, 1): \
-+ ret = _mm_shuffle_ps_0011((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(0, 0, 2, 2): \
-+ ret = _mm_shuffle_ps_0022((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 2, 0, 0): \
-+ ret = _mm_shuffle_ps_2200((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(3, 2, 0, 2): \
-+ ret = _mm_shuffle_ps_3202((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(3, 2, 3, 2): \
-+ ret = _mm_movehl_ps((b), (a)); \
-+ break; \
-+ case _MM_SHUFFLE(1, 1, 3, 3): \
-+ ret = _mm_shuffle_ps_1133((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 0, 1, 0): \
-+ ret = _mm_shuffle_ps_2010((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 0, 0, 1): \
-+ ret = _mm_shuffle_ps_2001((a), (b)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 0, 3, 2): \
-+ ret = _mm_shuffle_ps_2032((a), (b)); \
-+ break; \
-+ default: \
-+ ret = _mm_shuffle_ps_default((a), (b), (imm)); \
-+ break; \
-+ } \
-+ ret; \
-+ })
-+
-+// Takes the upper 64 bits of a and places it in the low end of the result
-+// Takes the lower 64 bits of a and places it into the high end of the result.
-+FORCE_INLINE __m128i _mm_shuffle_epi_1032(__m128i a)
-+{
-+ int32x2_t a32 = vget_high_s32(vreinterpretq_s32_m128i(a));
-+ int32x2_t a10 = vget_low_s32(vreinterpretq_s32_m128i(a));
-+ return vreinterpretq_m128i_s32(vcombine_s32(a32, a10));
-+}
-+
-+// takes the lower two 32-bit values from a and swaps them and places in low end
-+// of result takes the higher two 32 bit values from a and swaps them and places
-+// in high end of result.
-+FORCE_INLINE __m128i _mm_shuffle_epi_2301(__m128i a)
-+{
-+ int32x2_t a01 = vrev64_s32(vget_low_s32(vreinterpretq_s32_m128i(a)));
-+ int32x2_t a23 = vrev64_s32(vget_high_s32(vreinterpretq_s32_m128i(a)));
-+ return vreinterpretq_m128i_s32(vcombine_s32(a01, a23));
-+}
-+
-+// rotates the least significant 32 bits into the most signficant 32 bits, and
-+// shifts the rest down
-+FORCE_INLINE __m128i _mm_shuffle_epi_0321(__m128i a)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vextq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(a), 1));
-+}
-+
-+// rotates the most significant 32 bits into the least signficant 32 bits, and
-+// shifts the rest up
-+FORCE_INLINE __m128i _mm_shuffle_epi_2103(__m128i a)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vextq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(a), 3));
-+}
-+
-+// gets the lower 64 bits of a, and places it in the upper 64 bits
-+// gets the lower 64 bits of a and places it in the lower 64 bits
-+FORCE_INLINE __m128i _mm_shuffle_epi_1010(__m128i a)
-+{
-+ int32x2_t a10 = vget_low_s32(vreinterpretq_s32_m128i(a));
-+ return vreinterpretq_m128i_s32(vcombine_s32(a10, a10));
-+}
-+
-+// gets the lower 64 bits of a, swaps the 0 and 1 elements, and places it in the
-+// lower 64 bits gets the lower 64 bits of a, and places it in the upper 64 bits
-+FORCE_INLINE __m128i _mm_shuffle_epi_1001(__m128i a)
-+{
-+ int32x2_t a01 = vrev64_s32(vget_low_s32(vreinterpretq_s32_m128i(a)));
-+ int32x2_t a10 = vget_low_s32(vreinterpretq_s32_m128i(a));
-+ return vreinterpretq_m128i_s32(vcombine_s32(a01, a10));
-+}
-+
-+// gets the lower 64 bits of a, swaps the 0 and 1 elements and places it in the
-+// upper 64 bits gets the lower 64 bits of a, swaps the 0 and 1 elements, and
-+// places it in the lower 64 bits
-+FORCE_INLINE __m128i _mm_shuffle_epi_0101(__m128i a)
-+{
-+ int32x2_t a01 = vrev64_s32(vget_low_s32(vreinterpretq_s32_m128i(a)));
-+ return vreinterpretq_m128i_s32(vcombine_s32(a01, a01));
-+}
-+
-+FORCE_INLINE __m128i _mm_shuffle_epi_2211(__m128i a)
-+{
-+ int32x2_t a11 = vdup_lane_s32(vget_low_s32(vreinterpretq_s32_m128i(a)), 1);
-+ int32x2_t a22 = vdup_lane_s32(vget_high_s32(vreinterpretq_s32_m128i(a)), 0);
-+ return vreinterpretq_m128i_s32(vcombine_s32(a11, a22));
-+}
-+
-+FORCE_INLINE __m128i _mm_shuffle_epi_0122(__m128i a)
-+{
-+ int32x2_t a22 = vdup_lane_s32(vget_high_s32(vreinterpretq_s32_m128i(a)), 0);
-+ int32x2_t a01 = vrev64_s32(vget_low_s32(vreinterpretq_s32_m128i(a)));
-+ return vreinterpretq_m128i_s32(vcombine_s32(a22, a01));
-+}
-+
-+FORCE_INLINE __m128i _mm_shuffle_epi_3332(__m128i a)
-+{
-+ int32x2_t a32 = vget_high_s32(vreinterpretq_s32_m128i(a));
-+ int32x2_t a33 = vdup_lane_s32(vget_high_s32(vreinterpretq_s32_m128i(a)), 1);
-+ return vreinterpretq_m128i_s32(vcombine_s32(a32, a33));
-+}
-+
-+// Shuffle packed 8-bit integers in a according to shuffle control mask in the
-+// corresponding 8-bit element of b, and store the results in dst.
-+// https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_mm_shuffle_epi8&expand=5146
-+FORCE_INLINE __m128i _mm_shuffle_epi8(__m128i a, __m128i b)
-+{
-+#if __aarch64__
-+ int8x16_t tbl = vreinterpretq_s8_m128i(a); // input a
-+ uint8x16_t idx = vreinterpretq_u8_m128i(b); // input b
-+ uint8_t __attribute__((aligned(16)))
-+ mask[16] = {0x8F, 0x8F, 0x8F, 0x8F, 0x8F, 0x8F, 0x8F, 0x8F,
-+ 0x8F, 0x8F, 0x8F, 0x8F, 0x8F, 0x8F, 0x8F, 0x8F};
-+ uint8x16_t idx_masked =
-+ vandq_u8(idx, vld1q_u8(mask)); // avoid using meaningless bits
-+
-+ return vreinterpretq_m128i_s8(vqtbl1q_s8(tbl, idx_masked));
-+#else
-+ uint8_t *tbl = (uint8_t *) &a; // input a
-+ uint8_t *idx = (uint8_t *) &b; // input b
-+ int32_t r[4];
-+
-+ r[0] = ((idx[3] & 0x80) ? 0 : tbl[idx[3] % 16]) << 24;
-+ r[0] |= ((idx[2] & 0x80) ? 0 : tbl[idx[2] % 16]) << 16;
-+ r[0] |= ((idx[1] & 0x80) ? 0 : tbl[idx[1] % 16]) << 8;
-+ r[0] |= ((idx[0] & 0x80) ? 0 : tbl[idx[0] % 16]);
-+
-+ r[1] = ((idx[7] & 0x80) ? 0 : tbl[idx[7] % 16]) << 24;
-+ r[1] |= ((idx[6] & 0x80) ? 0 : tbl[idx[6] % 16]) << 16;
-+ r[1] |= ((idx[5] & 0x80) ? 0 : tbl[idx[5] % 16]) << 8;
-+ r[1] |= ((idx[4] & 0x80) ? 0 : tbl[idx[4] % 16]);
-+
-+ r[2] = ((idx[11] & 0x80) ? 0 : tbl[idx[11] % 16]) << 24;
-+ r[2] |= ((idx[10] & 0x80) ? 0 : tbl[idx[10] % 16]) << 16;
-+ r[2] |= ((idx[9] & 0x80) ? 0 : tbl[idx[9] % 16]) << 8;
-+ r[2] |= ((idx[8] & 0x80) ? 0 : tbl[idx[8] % 16]);
-+
-+ r[3] = ((idx[15] & 0x80) ? 0 : tbl[idx[15] % 16]) << 24;
-+ r[3] |= ((idx[14] & 0x80) ? 0 : tbl[idx[14] % 16]) << 16;
-+ r[3] |= ((idx[13] & 0x80) ? 0 : tbl[idx[13] % 16]) << 8;
-+ r[3] |= ((idx[12] & 0x80) ? 0 : tbl[idx[12] % 16]);
-+
-+ return vld1q_s32(r);
-+#endif
-+}
-+
-+
-+#if 0 /* C version */
-+FORCE_INLINE __m128i _mm_shuffle_epi32_default(__m128i a,
-+ __constrange(0, 255) int imm)
-+{
-+ __m128i ret;
-+ ret[0] = a[imm & 0x3];
-+ ret[1] = a[(imm >> 2) & 0x3];
-+ ret[2] = a[(imm >> 4) & 0x03];
-+ ret[3] = a[(imm >> 6) & 0x03];
-+ return ret;
-+}
-+#endif
-+#define _mm_shuffle_epi32_default(a, imm) \
-+ ({ \
-+ int32x4_t ret; \
-+ ret = vmovq_n_s32( \
-+ vgetq_lane_s32(vreinterpretq_s32_m128i(a), (imm) &0x3)); \
-+ ret = vsetq_lane_s32( \
-+ vgetq_lane_s32(vreinterpretq_s32_m128i(a), ((imm) >> 2) & 0x3), \
-+ ret, 1); \
-+ ret = vsetq_lane_s32( \
-+ vgetq_lane_s32(vreinterpretq_s32_m128i(a), ((imm) >> 4) & 0x3), \
-+ ret, 2); \
-+ ret = vsetq_lane_s32( \
-+ vgetq_lane_s32(vreinterpretq_s32_m128i(a), ((imm) >> 6) & 0x3), \
-+ ret, 3); \
-+ vreinterpretq_m128i_s32(ret); \
-+ })
-+
-+// FORCE_INLINE __m128i _mm_shuffle_epi32_splat(__m128i a, __constrange(0,255)
-+// int imm)
-+#if defined(__aarch64__)
-+#define _mm_shuffle_epi32_splat(a, imm) \
-+ ({ \
-+ vreinterpretq_m128i_s32( \
-+ vdupq_laneq_s32(vreinterpretq_s32_m128i(a), (imm))); \
-+ })
-+#else
-+#define _mm_shuffle_epi32_splat(a, imm) \
-+ ({ \
-+ vreinterpretq_m128i_s32( \
-+ vdupq_n_s32(vgetq_lane_s32(vreinterpretq_s32_m128i(a), (imm)))); \
-+ })
-+#endif
-+
-+// Shuffles the 4 signed or unsigned 32-bit integers in a as specified by imm.
-+// https://msdn.microsoft.com/en-us/library/56f67xbk%28v=vs.90%29.aspx
-+// FORCE_INLINE __m128i _mm_shuffle_epi32(__m128i a, __constrange(0,255) int
-+// imm)
-+#define _mm_shuffle_epi32(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ switch (imm) { \
-+ case _MM_SHUFFLE(1, 0, 3, 2): \
-+ ret = _mm_shuffle_epi_1032((a)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 3, 0, 1): \
-+ ret = _mm_shuffle_epi_2301((a)); \
-+ break; \
-+ case _MM_SHUFFLE(0, 3, 2, 1): \
-+ ret = _mm_shuffle_epi_0321((a)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 1, 0, 3): \
-+ ret = _mm_shuffle_epi_2103((a)); \
-+ break; \
-+ case _MM_SHUFFLE(1, 0, 1, 0): \
-+ ret = _mm_shuffle_epi_1010((a)); \
-+ break; \
-+ case _MM_SHUFFLE(1, 0, 0, 1): \
-+ ret = _mm_shuffle_epi_1001((a)); \
-+ break; \
-+ case _MM_SHUFFLE(0, 1, 0, 1): \
-+ ret = _mm_shuffle_epi_0101((a)); \
-+ break; \
-+ case _MM_SHUFFLE(2, 2, 1, 1): \
-+ ret = _mm_shuffle_epi_2211((a)); \
-+ break; \
-+ case _MM_SHUFFLE(0, 1, 2, 2): \
-+ ret = _mm_shuffle_epi_0122((a)); \
-+ break; \
-+ case _MM_SHUFFLE(3, 3, 3, 2): \
-+ ret = _mm_shuffle_epi_3332((a)); \
-+ break; \
-+ case _MM_SHUFFLE(0, 0, 0, 0): \
-+ ret = _mm_shuffle_epi32_splat((a), 0); \
-+ break; \
-+ case _MM_SHUFFLE(1, 1, 1, 1): \
-+ ret = _mm_shuffle_epi32_splat((a), 1); \
-+ break; \
-+ case _MM_SHUFFLE(2, 2, 2, 2): \
-+ ret = _mm_shuffle_epi32_splat((a), 2); \
-+ break; \
-+ case _MM_SHUFFLE(3, 3, 3, 3): \
-+ ret = _mm_shuffle_epi32_splat((a), 3); \
-+ break; \
-+ default: \
-+ ret = _mm_shuffle_epi32_default((a), (imm)); \
-+ break; \
-+ } \
-+ ret; \
-+ })
-+
-+// Shuffles the upper 4 signed or unsigned 16 - bit integers in a as specified
-+// by imm. https://msdn.microsoft.com/en-us/library/13ywktbs(v=vs.100).aspx
-+// FORCE_INLINE __m128i _mm_shufflehi_epi16_function(__m128i a,
-+// __constrange(0,255) int imm)
-+#define _mm_shufflelo_epi16_function(a, imm) \
-+ ({ \
-+ int16x8_t ret = vreinterpretq_s16_s32(a); \
-+ int16x4_t lowBits = vget_low_s16(ret); \
-+ ret = vsetq_lane_s16(vget_lane_s16(lowBits, (imm) &0x3), ret, 4); \
-+ ret = vsetq_lane_s16(vget_lane_s16(lowBits, ((imm) >> 2) & 0x3), ret, \
-+ 5); \
-+ ret = vsetq_lane_s16(vget_lane_s16(lowBits, ((imm) >> 4) & 0x3), ret, \
-+ 6); \
-+ ret = vsetq_lane_s16(vget_lane_s16(lowBits, ((imm) >> 6) & 0x3), ret, \
-+ 7); \
-+ vreinterpretq_s32_s16(ret); \
-+ })
-+
-+// FORCE_INLINE __m128i _mm_shufflehi_epi16(__m128i a, __constrange(0,255) int
-+// imm)
-+#define _mm_shufflelo_epi16(a, imm) _mm_shufflehi_epi16_function((a), (imm))
-+
-+// Shuffles the upper 4 signed or unsigned 16 - bit integers in a as specified
-+// by imm. https://msdn.microsoft.com/en-us/library/13ywktbs(v=vs.100).aspx
-+// FORCE_INLINE __m128i _mm_shufflehi_epi16_function(__m128i a,
-+// __constrange(0,255) int imm)
-+#define _mm_shufflehi_epi16_function(a, imm) \
-+ ({ \
-+ int16x8_t ret = vreinterpretq_s16_s32(a); \
-+ int16x4_t highBits = vget_high_s16(ret); \
-+ ret = vsetq_lane_s16(vget_lane_s16(highBits, (imm) &0x3), ret, 4); \
-+ ret = vsetq_lane_s16(vget_lane_s16(highBits, ((imm) >> 2) & 0x3), ret, \
-+ 5); \
-+ ret = vsetq_lane_s16(vget_lane_s16(highBits, ((imm) >> 4) & 0x3), ret, \
-+ 6); \
-+ ret = vsetq_lane_s16(vget_lane_s16(highBits, ((imm) >> 6) & 0x3), ret, \
-+ 7); \
-+ vreinterpretq_s32_s16(ret); \
-+ })
-+
-+// FORCE_INLINE __m128i _mm_shufflehi_epi16(__m128i a, __constrange(0,255) int
-+// imm)
-+#define _mm_shufflehi_epi16(a, imm) _mm_shufflehi_epi16_function((a), (imm))
-+
-+// Shifts the 4 signed 32-bit integers in a right by count bits while shifting
-+// in the sign bit.
-+//
-+// r0 := a0 >> count
-+// r1 := a1 >> count
-+// r2 := a2 >> count
-+// r3 := a3 >> count immediate
-+FORCE_INLINE __m128i _mm_srai_epi32(__m128i a, int count)
-+{
-+ return vshlq_s32(a, vdupq_n_s32(-count));
-+}
-+
-+// Shifts the 8 signed 16-bit integers in a right by count bits while shifting
-+// in the sign bit.
-+//
-+// r0 := a0 >> count
-+// r1 := a1 >> count
-+// ...
-+// r7 := a7 >> count
-+FORCE_INLINE __m128i _mm_srai_epi16(__m128i a, int count)
-+{
-+ return (__m128i) vshlq_s16((int16x8_t) a, vdupq_n_s16(-count));
-+}
-+
-+// Shifts the 8 signed or unsigned 16-bit integers in a left by count bits while
-+// shifting in zeros.
-+//
-+// r0 := a0 << count
-+// r1 := a1 << count
-+// ...
-+// r7 := a7 << count
-+//
-+// https://msdn.microsoft.com/en-us/library/es73bcsy(v=vs.90).aspx
-+#define _mm_slli_epi16(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 31) { \
-+ ret = _mm_setzero_si128(); \
-+ } else { \
-+ ret = vreinterpretq_m128i_s16( \
-+ vshlq_n_s16(vreinterpretq_s16_m128i(a), (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// Shifts the 4 signed or unsigned 32-bit integers in a left by count bits while
-+// shifting in zeros. :
-+// https://msdn.microsoft.com/en-us/library/z2k3bbtb%28v=vs.90%29.aspx
-+// FORCE_INLINE __m128i _mm_slli_epi32(__m128i a, __constrange(0,255) int imm)
-+#define _mm_slli_epi32(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 31) { \
-+ ret = _mm_setzero_si128(); \
-+ } else { \
-+ ret = vreinterpretq_m128i_s32( \
-+ vshlq_n_s32(vreinterpretq_s32_m128i(a), (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// Shift packed 64-bit integers in a left by imm8 while shifting in zeros, and
-+// store the results in dst.
-+#define _mm_slli_epi64(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 63) { \
-+ ret = _mm_setzero_si128(); \
-+ } else { \
-+ ret = vreinterpretq_m128i_s64( \
-+ vshlq_n_s64(vreinterpretq_s64_m128i(a), (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// Shifts the 8 signed or unsigned 16-bit integers in a right by count bits
-+// while shifting in zeros.
-+//
-+// r0 := srl(a0, count)
-+// r1 := srl(a1, count)
-+// ...
-+// r7 := srl(a7, count)
-+//
-+// https://msdn.microsoft.com/en-us/library/6tcwd38t(v=vs.90).aspx
-+#define _mm_srli_epi16(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 31) { \
-+ ret = _mm_setzero_si128(); \
-+ } else { \
-+ ret = vreinterpretq_m128i_u16( \
-+ vshrq_n_u16(vreinterpretq_u16_m128i(a), (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// Shifts the 4 signed or unsigned 32-bit integers in a right by count bits
-+// while shifting in zeros.
-+// https://msdn.microsoft.com/en-us/library/w486zcfa(v=vs.100).aspx FORCE_INLINE
-+// __m128i _mm_srli_epi32(__m128i a, __constrange(0,255) int imm)
-+#define _mm_srli_epi32(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 31) { \
-+ ret = _mm_setzero_si128(); \
-+ } else { \
-+ ret = vreinterpretq_m128i_u32( \
-+ vshrq_n_u32(vreinterpretq_u32_m128i(a), (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// Shift packed 64-bit integers in a right by imm8 while shifting in zeros, and
-+// store the results in dst.
-+#define _mm_srli_epi64(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 63) { \
-+ ret = _mm_setzero_si128(); \
-+ } else { \
-+ ret = vreinterpretq_m128i_u64( \
-+ vshrq_n_u64(vreinterpretq_u64_m128i(a), (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// Shifts the 4 signed 32 - bit integers in a right by count bits while shifting
-+// in the sign bit.
-+// https://msdn.microsoft.com/en-us/library/z1939387(v=vs.100).aspx
-+// FORCE_INLINE __m128i _mm_srai_epi32(__m128i a, __constrange(0,255) int imm)
-+#define _mm_srai_epi32(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 31) { \
-+ ret = vreinterpretq_m128i_s32( \
-+ vshrq_n_s32(vreinterpretq_s32_m128i(a), 16)); \
-+ ret = vreinterpretq_m128i_s32( \
-+ vshrq_n_s32(vreinterpretq_s32_m128i(ret), 16)); \
-+ } else { \
-+ ret = vreinterpretq_m128i_s32( \
-+ vshrq_n_s32(vreinterpretq_s32_m128i(a), (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// Shifts the 128 - bit value in a right by imm bytes while shifting in
-+// zeros.imm must be an immediate.
-+//
-+// r := srl(a, imm*8)
-+//
-+// https://msdn.microsoft.com/en-us/library/305w28yz(v=vs.100).aspx
-+// FORCE_INLINE _mm_srli_si128(__m128i a, __constrange(0,255) int imm)
-+#define _mm_srli_si128(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 15) { \
-+ ret = _mm_setzero_si128(); \
-+ } else { \
-+ ret = vreinterpretq_m128i_s8( \
-+ vextq_s8(vreinterpretq_s8_m128i(a), vdupq_n_s8(0), (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// Shifts the 128-bit value in a left by imm bytes while shifting in zeros. imm
-+// must be an immediate.
-+//
-+// r := a << (imm * 8)
-+//
-+// https://msdn.microsoft.com/en-us/library/34d3k2kt(v=vs.100).aspx
-+// FORCE_INLINE __m128i _mm_slli_si128(__m128i a, __constrange(0,255) int imm)
-+#define _mm_slli_si128(a, imm) \
-+ ({ \
-+ __m128i ret; \
-+ if ((imm) <= 0) { \
-+ ret = a; \
-+ } else if ((imm) > 15) { \
-+ ret = _mm_setzero_si128(); \
-+ } else { \
-+ ret = vreinterpretq_m128i_s8(vextq_s8( \
-+ vdupq_n_s8(0), vreinterpretq_s8_m128i(a), 16 - (imm))); \
-+ } \
-+ ret; \
-+ })
-+
-+// NEON does not provide a version of this function, here is an article about
-+// some ways to repro the results.
-+// http://stackoverflow.com/questions/11870910/sse-mm-movemask-epi8-equivalent-method-for-arm-neon
-+// Creates a 16-bit mask from the most significant bits of the 16 signed or
-+// unsigned 8-bit integers in a and zero extends the upper bits.
-+// https://msdn.microsoft.com/en-us/library/vstudio/s090c8fk(v=vs.100).aspx
-+FORCE_INLINE int _mm_movemask_epi8(__m128i _a)
-+{
-+ uint8x16_t input = vreinterpretq_u8_m128i(_a);
-+ static const int8_t __attribute__((aligned(16)))
-+ xr[8] = {-7, -6, -5, -4, -3, -2, -1, 0};
-+ uint8x8_t mask_and = vdup_n_u8(0x80);
-+ int8x8_t mask_shift = vld1_s8(xr);
-+
-+ uint8x8_t lo = vget_low_u8(input);
-+ uint8x8_t hi = vget_high_u8(input);
-+
-+ lo = vand_u8(lo, mask_and);
-+ lo = vshl_u8(lo, mask_shift);
-+
-+ hi = vand_u8(hi, mask_and);
-+ hi = vshl_u8(hi, mask_shift);
-+
-+ lo = vpadd_u8(lo, lo);
-+ lo = vpadd_u8(lo, lo);
-+ lo = vpadd_u8(lo, lo);
-+
-+ hi = vpadd_u8(hi, hi);
-+ hi = vpadd_u8(hi, hi);
-+ hi = vpadd_u8(hi, hi);
-+
-+ return ((hi[0] << 8) | (lo[0] & 0xFF));
-+}
-+
-+// Compute the bitwise AND of 128 bits (representing integer data) in a and
-+// mask, and return 1 if the result is zero, otherwise return 0.
-+// https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_mm_test_all_zeros&expand=5871
-+FORCE_INLINE int _mm_test_all_zeros(__m128i a, __m128i mask)
-+{
-+ int64x2_t a_and_mask =
-+ vandq_s64(vreinterpretq_s64_m128i(a), vreinterpretq_s64_m128i(mask));
-+ return (vgetq_lane_s64(a_and_mask, 0) | vgetq_lane_s64(a_and_mask, 1)) ? 0
-+ : 1;
-+}
-+
-+// ******************************************
-+// Math operations
-+// ******************************************
-+
-+// Subtracts the four single-precision, floating-point values of a and b.
-+//
-+// r0 := a0 - b0
-+// r1 := a1 - b1
-+// r2 := a2 - b2
-+// r3 := a3 - b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/1zad2k61(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_sub_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_f32(
-+ vsubq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Subtract 2 packed 64-bit integers in b from 2 packed 64-bit integers in a,
-+// and store the results in dst.
-+// r0 := a0 - b0
-+// r1 := a1 - b1
-+FORCE_INLINE __m128i _mm_sub_epi64(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s64(
-+ vsubq_s64(vreinterpretq_s64_m128i(a), vreinterpretq_s64_m128i(b)));
-+}
-+
-+// Subtracts the 4 signed or unsigned 32-bit integers of b from the 4 signed or
-+// unsigned 32-bit integers of a.
-+//
-+// r0 := a0 - b0
-+// r1 := a1 - b1
-+// r2 := a2 - b2
-+// r3 := a3 - b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/fhh866h0(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_sub_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128_f32(
-+ vsubq_s32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+FORCE_INLINE __m128i _mm_sub_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s16(
-+ vsubq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+FORCE_INLINE __m128i _mm_sub_epi8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s8(
-+ vsubq_s8(vreinterpretq_s8_m128i(a), vreinterpretq_s8_m128i(b)));
-+}
-+
-+// Subtracts the 8 unsigned 16-bit integers of bfrom the 8 unsigned 16-bit
-+// integers of a and saturates..
-+// https://technet.microsoft.com/en-us/subscriptions/index/f44y0s19(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_subs_epu16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u16(
-+ vqsubq_u16(vreinterpretq_u16_m128i(a), vreinterpretq_u16_m128i(b)));
-+}
-+
-+// Subtracts the 16 unsigned 8-bit integers of b from the 16 unsigned 8-bit
-+// integers of a and saturates.
-+//
-+// r0 := UnsignedSaturate(a0 - b0)
-+// r1 := UnsignedSaturate(a1 - b1)
-+// ...
-+// r15 := UnsignedSaturate(a15 - b15)
-+//
-+// https://technet.microsoft.com/en-us/subscriptions/yadkxc18(v=vs.90)
-+FORCE_INLINE __m128i _mm_subs_epu8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u8(
-+ vqsubq_u8(vreinterpretq_u8_m128i(a), vreinterpretq_u8_m128i(b)));
-+}
-+
-+// Subtracts the 8 signed 16-bit integers of b from the 8 signed 16-bit integers
-+// of a and saturates.
-+//
-+// r0 := SignedSaturate(a0 - b0)
-+// r1 := SignedSaturate(a1 - b1)
-+// ...
-+// r7 := SignedSaturate(a7 - b7)
-+FORCE_INLINE __m128i _mm_subs_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s16(
-+ vqsubq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+FORCE_INLINE __m128i _mm_adds_epu16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u16(
-+ vqaddq_u16(vreinterpretq_u16_m128i(a), vreinterpretq_u16_m128i(b)));
-+}
-+
-+FORCE_INLINE __m128i _mm_sign_epi32(__m128i a, __m128i b)
-+{
-+ __m128i zer0 = vdupq_n_s32(0);
-+ __m128i ltMask = vreinterpretq_s32_u32(vcltq_s32(b, zer0));
-+ __m128i gtMask = vreinterpretq_s32_u32(vcgtq_s32(b, zer0));
-+ __m128i neg = vnegq_s32(a);
-+ __m128i tmp = vandq_s32(a, gtMask);
-+ return vorrq_s32(tmp, vandq_s32(neg, ltMask));
-+}
-+
-+FORCE_INLINE __m128i _mm_sign_epi16(__m128i a, __m128i b)
-+{
-+ int16x8_t zer0 = vdupq_n_s16(0);
-+ int16x8_t ltMask =
-+ vreinterpretq_s16_u16(vcltq_s16(vreinterpretq_s16_s32(b), zer0));
-+ int16x8_t gtMask =
-+ vreinterpretq_s16_u16(vcgtq_s16(vreinterpretq_s16_s32(b), zer0));
-+ int16x8_t neg = vnegq_s16(vreinterpretq_s16_s32(a));
-+ int16x8_t tmp = vandq_s16(vreinterpretq_s16_s32(a), gtMask);
-+ return vreinterpretq_s32_s16(vorrq_s16(tmp, vandq_s16(neg, ltMask)));
-+}
-+
-+// Adds the four single-precision, floating-point values of a and b.
-+//
-+// r0 := a0 + b0
-+// r1 := a1 + b1
-+// r2 := a2 + b2
-+// r3 := a3 + b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/c9848chc(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_add_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_f32(
-+ vaddq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// adds the scalar single-precision floating point values of a and b.
-+// https://msdn.microsoft.com/en-us/library/be94x2y6(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_add_ss(__m128 a, __m128 b)
-+{
-+ float32_t b0 = vgetq_lane_f32(vreinterpretq_f32_m128(b), 0);
-+ float32x4_t value = vsetq_lane_f32(b0, vdupq_n_f32(0), 0);
-+ // the upper values in the result must be the remnants of <a>.
-+ return vreinterpretq_m128_f32(vaddq_f32(a, value));
-+}
-+
-+// Adds the 4 signed or unsigned 64-bit integers in a to the 4 signed or
-+// unsigned 32-bit integers in b.
-+// https://msdn.microsoft.com/en-us/library/vstudio/09xs4fkk(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_add_epi64(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_s32_s64(
-+ vaddq_s64(vreinterpretq_s64_s32(a), vreinterpretq_s64_s32(b)));
-+}
-+
-+// Adds the 4 signed or unsigned 32-bit integers in a to the 4 signed or
-+// unsigned 32-bit integers in b.
-+//
-+// r0 := a0 + b0
-+// r1 := a1 + b1
-+// r2 := a2 + b2
-+// r3 := a3 + b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/09xs4fkk(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_add_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vaddq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Adds the 8 signed or unsigned 16-bit integers in a to the 8 signed or
-+// unsigned 16-bit integers in b.
-+// https://msdn.microsoft.com/en-us/library/fceha5k4(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_add_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s16(
-+ vaddq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+// Adds the 16 signed or unsigned 8-bit integers in a to the 16 signed or
-+// unsigned 8-bit integers in b.
-+// https://technet.microsoft.com/en-us/subscriptions/yc7tcyzs(v=vs.90)
-+FORCE_INLINE __m128i _mm_add_epi8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s8(
-+ vaddq_s8(vreinterpretq_s8_m128i(a), vreinterpretq_s8_m128i(b)));
-+}
-+
-+// Adds the 8 signed 16-bit integers in a to the 8 signed 16-bit integers in b
-+// and saturates.
-+//
-+// r0 := SignedSaturate(a0 + b0)
-+// r1 := SignedSaturate(a1 + b1)
-+// ...
-+// r7 := SignedSaturate(a7 + b7)
-+//
-+// https://msdn.microsoft.com/en-us/library/1a306ef8(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_adds_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s16(
-+ vqaddq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+// Adds the 16 unsigned 8-bit integers in a to the 16 unsigned 8-bit integers in
-+// b and saturates..
-+// https://msdn.microsoft.com/en-us/library/9hahyddy(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_adds_epu8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u8(
-+ vqaddq_u8(vreinterpretq_u8_m128i(a), vreinterpretq_u8_m128i(b)));
-+}
-+
-+// Multiplies the 8 signed or unsigned 16-bit integers from a by the 8 signed or
-+// unsigned 16-bit integers from b.
-+//
-+// r0 := (a0 * b0)[15:0]
-+// r1 := (a1 * b1)[15:0]
-+// ...
-+// r7 := (a7 * b7)[15:0]
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/9ks1472s(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_mullo_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s16(
-+ vmulq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+// Multiplies the 4 signed or unsigned 32-bit integers from a by the 4 signed or
-+// unsigned 32-bit integers from b.
-+// https://msdn.microsoft.com/en-us/library/vstudio/bb531409(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_mullo_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vmulq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Multiplies the four single-precision, floating-point values of a and b.
-+//
-+// r0 := a0 * b0
-+// r1 := a1 * b1
-+// r2 := a2 * b2
-+// r3 := a3 * b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/22kbk6t9(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_mul_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_f32(
-+ vmulq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Multiply the low unsigned 32-bit integers from each packed 64-bit element in
-+// a and b, and store the unsigned 64-bit results in dst.
-+//
-+// r0 := (uint32_t*)a0 * (uint32_t*)b0
-+// r1 := (uint32_t*)a2 * (uint32_t*)b2
-+#if 1 /* C version */
-+FORCE_INLINE __m128i _mm_mul_epu32(__m128i a, __m128i b)
-+{
-+ __m128i d;
-+ vreinterpretq_nth_u64_m128i(d, 0) =
-+ (uint64_t)(vreinterpretq_nth_u32_m128i(a, 0)) *
-+ (uint64_t)(vreinterpretq_nth_u32_m128i(b, 0));
-+ vreinterpretq_nth_u64_m128i(d, 1) =
-+ (uint64_t)(vreinterpretq_nth_u32_m128i(a, 2)) *
-+ (uint64_t)(vreinterpretq_nth_u32_m128i(b, 2));
-+ return d;
-+}
-+#else /* Neon version */
-+// Default to c version until casting can be sorted out on neon version.
-+// (Otherwise requires compiling with -fpermissive) Also unclear whether neon
-+// version actually performs better.
-+FORCE_INLINE __m128i _mm_mul_epu32(__m128i a, __m128i b)
-+{
-+ // shuffle: 0, 1, 2, 3 -> 0, 2, 1, 3 */
-+ __m128i const a_shuf =
-+ *(__m128i *) (&vzip_u32(vget_low_u32(vreinterpretq_u32_m128i(a)),
-+ vget_high_u32(vreinterpretq_u32_m128i(a))));
-+ __m128i const b_shuf =
-+ *(__m128i *) (&vzip_u32(vget_low_u32(vreinterpretq_u32_m128i(b)),
-+ vget_high_u32(vreinterpretq_u32_m128i(b))));
-+ // Multiply low word (32 bit) against low word (32 bit) and high word (32
-+ // bit) against high word (32 bit). Pack both results (64 bit) into 128 bit
-+ // register and return result.
-+ return vreinterpretq_m128i_u64(
-+ vmull_u32(vget_low_u32(vreinterpretq_u32_m128i(a_shuf)),
-+ vget_low_u32(vreinterpretq_u32_m128i(b_shuf))));
-+}
-+#endif
-+
-+// Multiplies the 8 signed 16-bit integers from a by the 8 signed 16-bit
-+// integers from b.
-+//
-+// r0 := (a0 * b0) + (a1 * b1)
-+// r1 := (a2 * b2) + (a3 * b3)
-+// r2 := (a4 * b4) + (a5 * b5)
-+// r3 := (a6 * b6) + (a7 * b7)
-+// https://msdn.microsoft.com/en-us/library/yht36sa6(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_madd_epi16(__m128i a, __m128i b)
-+{
-+ int32x4_t low = vmull_s16(vget_low_s16(vreinterpretq_s16_m128i(a)),
-+ vget_low_s16(vreinterpretq_s16_m128i(b)));
-+ int32x4_t high = vmull_s16(vget_high_s16(vreinterpretq_s16_m128i(a)),
-+ vget_high_s16(vreinterpretq_s16_m128i(b)));
-+
-+ int32x2_t low_sum = vpadd_s32(vget_low_s32(low), vget_high_s32(low));
-+ int32x2_t high_sum = vpadd_s32(vget_low_s32(high), vget_high_s32(high));
-+
-+ return vreinterpretq_s32_m128i(vcombine_s32(low_sum, high_sum));
-+}
-+
-+// Computes the absolute difference of the 16 unsigned 8-bit integers from a
-+// and the 16 unsigned 8-bit integers from b.
-+//
-+// Return Value
-+// Sums the upper 8 differences and lower 8 differences and packs the
-+// resulting 2 unsigned 16-bit integers into the upper and lower 64-bit
-+// elements.
-+//
-+// r0 := abs(a0 - b0) + abs(a1 - b1) +...+ abs(a7 - b7)
-+// r1 := 0x0
-+// r2 := 0x0
-+// r3 := 0x0
-+// r4 := abs(a8 - b8) + abs(a9 - b9) +...+ abs(a15 - b15)
-+// r5 := 0x0
-+// r6 := 0x0
-+// r7 := 0x0
-+FORCE_INLINE __m128i _mm_sad_epu8(__m128i a, __m128i b)
-+{
-+ uint16x8_t t = vpaddlq_u8(vabdq_u8((uint8x16_t) a, (uint8x16_t) b));
-+ uint16_t r0 = t[0] + t[1] + t[2] + t[3];
-+ uint16_t r4 = t[4] + t[5] + t[6] + t[7];
-+ uint16x8_t r = vsetq_lane_u16(r0, vdupq_n_u16(0), 0);
-+ return (__m128i) vsetq_lane_u16(r4, r, 4);
-+}
-+
-+// Divides the four single-precision, floating-point values of a and b.
-+//
-+// r0 := a0 / b0
-+// r1 := a1 / b1
-+// r2 := a2 / b2
-+// r3 := a3 / b3
-+//
-+// https://msdn.microsoft.com/en-us/library/edaw8147(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_div_ps(__m128 a, __m128 b)
-+{
-+ float32x4_t recip0 = vrecpeq_f32(vreinterpretq_f32_m128(b));
-+ float32x4_t recip1 =
-+ vmulq_f32(recip0, vrecpsq_f32(recip0, vreinterpretq_f32_m128(b)));
-+ return vreinterpretq_m128_f32(vmulq_f32(vreinterpretq_f32_m128(a), recip1));
-+}
-+
-+// Divides the scalar single-precision floating point value of a by b.
-+// https://msdn.microsoft.com/en-us/library/4y73xa49(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_div_ss(__m128 a, __m128 b)
-+{
-+ float32_t value =
-+ vgetq_lane_f32(vreinterpretq_f32_m128(_mm_div_ps(a, b)), 0);
-+ return vreinterpretq_m128_f32(
-+ vsetq_lane_f32(value, vreinterpretq_f32_m128(a), 0));
-+}
-+
-+// This version does additional iterations to improve accuracy. Between 1 and 4
-+// recommended. Computes the approximations of reciprocals of the four
-+// single-precision, floating-point values of a.
-+// https://msdn.microsoft.com/en-us/library/vstudio/796k1tty(v=vs.100).aspx
-+FORCE_INLINE __m128 recipq_newton(__m128 in, int n)
-+{
-+ int i;
-+ float32x4_t recip = vrecpeq_f32(vreinterpretq_f32_m128(in));
-+ for (i = 0; i < n; ++i) {
-+ recip =
-+ vmulq_f32(recip, vrecpsq_f32(recip, vreinterpretq_f32_m128(in)));
-+ }
-+ return vreinterpretq_m128_f32(recip);
-+}
-+
-+// Computes the approximations of reciprocals of the four single-precision,
-+// floating-point values of a.
-+// https://msdn.microsoft.com/en-us/library/vstudio/796k1tty(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_rcp_ps(__m128 in)
-+{
-+ float32x4_t recip = vrecpeq_f32(vreinterpretq_f32_m128(in));
-+ recip = vmulq_f32(recip, vrecpsq_f32(recip, vreinterpretq_f32_m128(in)));
-+ return vreinterpretq_m128_f32(recip);
-+}
-+
-+// Computes the approximations of square roots of the four single-precision,
-+// floating-point values of a. First computes reciprocal square roots and then
-+// reciprocals of the four values.
-+//
-+// r0 := sqrt(a0)
-+// r1 := sqrt(a1)
-+// r2 := sqrt(a2)
-+// r3 := sqrt(a3)
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/8z67bwwk(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_sqrt_ps(__m128 in)
-+{
-+ float32x4_t recipsq = vrsqrteq_f32(vreinterpretq_f32_m128(in));
-+ float32x4_t sq = vrecpeq_f32(recipsq);
-+ // ??? use step versions of both sqrt and recip for better accuracy?
-+ return vreinterpretq_m128_f32(sq);
-+}
-+
-+// Computes the approximation of the square root of the scalar single-precision
-+// floating point value of in.
-+// https://msdn.microsoft.com/en-us/library/ahfsc22d(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_sqrt_ss(__m128 in)
-+{
-+ float32_t value =
-+ vgetq_lane_f32(vreinterpretq_f32_m128(_mm_sqrt_ps(in)), 0);
-+ return vreinterpretq_m128_f32(
-+ vsetq_lane_f32(value, vreinterpretq_f32_m128(in), 0));
-+}
-+
-+// Computes the approximations of the reciprocal square roots of the four
-+// single-precision floating point values of in.
-+// https://msdn.microsoft.com/en-us/library/22hfsh53(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_rsqrt_ps(__m128 in)
-+{
-+ return vreinterpretq_m128_f32(vrsqrteq_f32(vreinterpretq_f32_m128(in)));
-+}
-+
-+// Computes the maximums of the four single-precision, floating-point values of
-+// a and b.
-+// https://msdn.microsoft.com/en-us/library/vstudio/ff5d607a(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_max_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_f32(
-+ vmaxq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Computes the minima of the four single-precision, floating-point values of a
-+// and b.
-+// https://msdn.microsoft.com/en-us/library/vstudio/wh13kadz(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_min_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_f32(
-+ vminq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Computes the maximum of the two lower scalar single-precision floating point
-+// values of a and b.
-+// https://msdn.microsoft.com/en-us/library/s6db5esz(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_max_ss(__m128 a, __m128 b)
-+{
-+ float32_t value = vgetq_lane_f32(
-+ vmaxq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)), 0);
-+ return vreinterpretq_m128_f32(
-+ vsetq_lane_f32(value, vreinterpretq_f32_m128(a), 0));
-+}
-+
-+// Computes the minimum of the two lower scalar single-precision floating point
-+// values of a and b.
-+// https://msdn.microsoft.com/en-us/library/0a9y7xaa(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_min_ss(__m128 a, __m128 b)
-+{
-+ float32_t value = vgetq_lane_f32(
-+ vminq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)), 0);
-+ return vreinterpretq_m128_f32(
-+ vsetq_lane_f32(value, vreinterpretq_f32_m128(a), 0));
-+}
-+
-+// Computes the pairwise maxima of the 16 unsigned 8-bit integers from a and the
-+// 16 unsigned 8-bit integers from b.
-+// https://msdn.microsoft.com/en-us/library/st6634za(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_max_epu8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u8(
-+ vmaxq_u8(vreinterpretq_u8_m128i(a), vreinterpretq_u8_m128i(b)));
-+}
-+
-+// Computes the pairwise minima of the 16 unsigned 8-bit integers from a and the
-+// 16 unsigned 8-bit integers from b.
-+// https://msdn.microsoft.com/ko-kr/library/17k8cf58(v=vs.100).aspxx
-+FORCE_INLINE __m128i _mm_min_epu8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u8(
-+ vminq_u8(vreinterpretq_u8_m128i(a), vreinterpretq_u8_m128i(b)));
-+}
-+
-+// Computes the pairwise minima of the 8 signed 16-bit integers from a and the 8
-+// signed 16-bit integers from b.
-+// https://msdn.microsoft.com/en-us/library/vstudio/6te997ew(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_min_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s16(
-+ vminq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+// Computes the pairwise maxima of the 8 signed 16-bit integers from a and the 8
-+// signed 16-bit integers from b.
-+// https://msdn.microsoft.com/en-us/LIBRary/3x060h7c(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_max_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s16(
-+ vmaxq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+// epi versions of min/max
-+// Computes the pariwise maximums of the four signed 32-bit integer values of a
-+// and b.
-+//
-+// A 128-bit parameter that can be defined with the following equations:
-+// r0 := (a0 > b0) ? a0 : b0
-+// r1 := (a1 > b1) ? a1 : b1
-+// r2 := (a2 > b2) ? a2 : b2
-+// r3 := (a3 > b3) ? a3 : b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/bb514055(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_max_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vmaxq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Computes the pariwise minima of the four signed 32-bit integer values of a
-+// and b.
-+//
-+// A 128-bit parameter that can be defined with the following equations:
-+// r0 := (a0 < b0) ? a0 : b0
-+// r1 := (a1 < b1) ? a1 : b1
-+// r2 := (a2 < b2) ? a2 : b2
-+// r3 := (a3 < b3) ? a3 : b3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/bb531476(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_min_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vminq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Multiplies the 8 signed 16-bit integers from a by the 8 signed 16-bit
-+// integers from b.
-+//
-+// r0 := (a0 * b0)[31:16]
-+// r1 := (a1 * b1)[31:16]
-+// ...
-+// r7 := (a7 * b7)[31:16]
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/59hddw1d(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_mulhi_epi16(__m128i a, __m128i b)
-+{
-+ /* FIXME: issue with large values because of result saturation */
-+ // int16x8_t ret = vqdmulhq_s16(vreinterpretq_s16_m128i(a),
-+ // vreinterpretq_s16_m128i(b)); /* =2*a*b */ return
-+ // vreinterpretq_m128i_s16(vshrq_n_s16(ret, 1));
-+ int16x4_t a3210 = vget_low_s16(vreinterpretq_s16_m128i(a));
-+ int16x4_t b3210 = vget_low_s16(vreinterpretq_s16_m128i(b));
-+ int32x4_t ab3210 = vmull_s16(a3210, b3210); /* 3333222211110000 */
-+ int16x4_t a7654 = vget_high_s16(vreinterpretq_s16_m128i(a));
-+ int16x4_t b7654 = vget_high_s16(vreinterpretq_s16_m128i(b));
-+ int32x4_t ab7654 = vmull_s16(a7654, b7654); /* 7777666655554444 */
-+ uint16x8x2_t r =
-+ vuzpq_u16(vreinterpretq_u16_s32(ab3210), vreinterpretq_u16_s32(ab7654));
-+ return vreinterpretq_m128i_u16(r.val[1]);
-+}
-+
-+// Computes pairwise add of each argument as single-precision, floating-point
-+// values a and b.
-+// https://msdn.microsoft.com/en-us/library/yd9wecaa.aspx
-+FORCE_INLINE __m128 _mm_hadd_ps(__m128 a, __m128 b)
-+{
-+#if defined(__aarch64__)
-+ return vreinterpretq_m128_f32(vpaddq_f32(
-+ vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b))); // AArch64
-+#else
-+ float32x2_t a10 = vget_low_f32(vreinterpretq_f32_m128(a));
-+ float32x2_t a32 = vget_high_f32(vreinterpretq_f32_m128(a));
-+ float32x2_t b10 = vget_low_f32(vreinterpretq_f32_m128(b));
-+ float32x2_t b32 = vget_high_f32(vreinterpretq_f32_m128(b));
-+ return vreinterpretq_m128_f32(
-+ vcombine_f32(vpadd_f32(a10, a32), vpadd_f32(b10, b32)));
-+#endif
-+}
-+
-+// ******************************************
-+// Compare operations
-+// ******************************************
-+
-+// Compares for less than
-+// https://msdn.microsoft.com/en-us/library/vstudio/f330yhc8(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_cmplt_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_u32(
-+ vcltq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Compares for greater than.
-+//
-+// r0 := (a0 > b0) ? 0xffffffff : 0x0
-+// r1 := (a1 > b1) ? 0xffffffff : 0x0
-+// r2 := (a2 > b2) ? 0xffffffff : 0x0
-+// r3 := (a3 > b3) ? 0xffffffff : 0x0
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/11dy102s(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_cmpgt_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_u32(
-+ vcgtq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Compares for greater than or equal.
-+// https://msdn.microsoft.com/en-us/library/vstudio/fs813y2t(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_cmpge_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_u32(
-+ vcgeq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Compares for less than or equal.
-+//
-+// r0 := (a0 <= b0) ? 0xffffffff : 0x0
-+// r1 := (a1 <= b1) ? 0xffffffff : 0x0
-+// r2 := (a2 <= b2) ? 0xffffffff : 0x0
-+// r3 := (a3 <= b3) ? 0xffffffff : 0x0
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/1s75w83z(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_cmple_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_u32(
-+ vcleq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Compares for equality.
-+// https://msdn.microsoft.com/en-us/library/vstudio/36aectz5(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_cmpeq_ps(__m128 a, __m128 b)
-+{
-+ return vreinterpretq_m128_u32(
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+}
-+
-+// Compares the 16 signed or unsigned 8-bit integers in a and the 16 signed or
-+// unsigned 8-bit integers in b for equality.
-+// https://msdn.microsoft.com/en-us/library/windows/desktop/bz5xk21a(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_cmpeq_epi8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u8(
-+ vceqq_s8(vreinterpretq_s8_m128i(a), vreinterpretq_s8_m128i(b)));
-+}
-+
-+// Compares the 8 signed or unsigned 16-bit integers in a and the 8 signed or
-+// unsigned 16-bit integers in b for equality.
-+// https://msdn.microsoft.com/en-us/library/2ay060te(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_cmpeq_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u16(
-+ vceqq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+// Compare packed 32-bit integers in a and b for equality, and store the results
-+// in dst
-+FORCE_INLINE __m128i _mm_cmpeq_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u32(
-+ vceqq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Compares the 16 signed 8-bit integers in a and the 16 signed 8-bit integers
-+// in b for lesser than.
-+// https://msdn.microsoft.com/en-us/library/windows/desktop/9s46csht(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_cmplt_epi8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u8(
-+ vcltq_s8(vreinterpretq_s8_m128i(a), vreinterpretq_s8_m128i(b)));
-+}
-+
-+// Compares the 16 signed 8-bit integers in a and the 16 signed 8-bit integers
-+// in b for greater than.
-+//
-+// r0 := (a0 > b0) ? 0xff : 0x0
-+// r1 := (a1 > b1) ? 0xff : 0x0
-+// ...
-+// r15 := (a15 > b15) ? 0xff : 0x0
-+//
-+// https://msdn.microsoft.com/zh-tw/library/wf45zt2b(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_cmpgt_epi8(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u8(
-+ vcgtq_s8(vreinterpretq_s8_m128i(a), vreinterpretq_s8_m128i(b)));
-+}
-+
-+// Compares the 8 signed 16-bit integers in a and the 8 signed 16-bit integers
-+// in b for greater than.
-+//
-+// r0 := (a0 > b0) ? 0xffff : 0x0
-+// r1 := (a1 > b1) ? 0xffff : 0x0
-+// ...
-+// r7 := (a7 > b7) ? 0xffff : 0x0
-+//
-+// https://technet.microsoft.com/en-us/library/xd43yfsa(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_cmpgt_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u16(
-+ vcgtq_s16(vreinterpretq_s16_m128i(a), vreinterpretq_s16_m128i(b)));
-+}
-+
-+
-+// Compares the 4 signed 32-bit integers in a and the 4 signed 32-bit integers
-+// in b for less than.
-+// https://msdn.microsoft.com/en-us/library/vstudio/4ak0bf5d(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_cmplt_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u32(
-+ vcltq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Compares the 4 signed 32-bit integers in a and the 4 signed 32-bit integers
-+// in b for greater than.
-+// https://msdn.microsoft.com/en-us/library/vstudio/1s9f2z0y(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_cmpgt_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_u32(
-+ vcgtq_s32(vreinterpretq_s32_m128i(a), vreinterpretq_s32_m128i(b)));
-+}
-+
-+// Compares the four 32-bit floats in a and b to check if any values are NaN.
-+// Ordered compare between each value returns true for "orderable" and false for
-+// "not orderable" (NaN).
-+// https://msdn.microsoft.com/en-us/library/vstudio/0h9w00fx(v=vs.100).aspx see
-+// also:
-+// http://stackoverflow.com/questions/8627331/what-does-ordered-unordered-comparison-mean
-+// http://stackoverflow.com/questions/29349621/neon-isnanval-intrinsics
-+FORCE_INLINE __m128 _mm_cmpord_ps(__m128 a, __m128 b)
-+{
-+ // Note: NEON does not have ordered compare builtin
-+ // Need to compare a eq a and b eq b to check for NaN
-+ // Do AND of results to get final
-+ uint32x4_t ceqaa =
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a));
-+ uint32x4_t ceqbb =
-+ vceqq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b));
-+ return vreinterpretq_m128_u32(vandq_u32(ceqaa, ceqbb));
-+}
-+
-+// Compares the lower single-precision floating point scalar values of a and b
-+// using a less than operation. :
-+// https://msdn.microsoft.com/en-us/library/2kwe606b(v=vs.90).aspx Important
-+// note!! The documentation on MSDN is incorrect! If either of the values is a
-+// NAN the docs say you will get a one, but in fact, it will return a zero!!
-+FORCE_INLINE int _mm_comilt_ss(__m128 a, __m128 b)
-+{
-+ uint32x4_t a_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a));
-+ uint32x4_t b_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b));
-+ uint32x4_t a_and_b_not_nan = vandq_u32(a_not_nan, b_not_nan);
-+ uint32x4_t a_lt_b =
-+ vcltq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b));
-+ return (vgetq_lane_u32(vandq_u32(a_and_b_not_nan, a_lt_b), 0) != 0) ? 1 : 0;
-+}
-+
-+// Compares the lower single-precision floating point scalar values of a and b
-+// using a greater than operation. :
-+// https://msdn.microsoft.com/en-us/library/b0738e0t(v=vs.100).aspx
-+FORCE_INLINE int _mm_comigt_ss(__m128 a, __m128 b)
-+{
-+ // return vgetq_lane_u32(vcgtq_f32(vreinterpretq_f32_m128(a),
-+ // vreinterpretq_f32_m128(b)), 0);
-+ uint32x4_t a_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a));
-+ uint32x4_t b_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b));
-+ uint32x4_t a_and_b_not_nan = vandq_u32(a_not_nan, b_not_nan);
-+ uint32x4_t a_gt_b =
-+ vcgtq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b));
-+ return (vgetq_lane_u32(vandq_u32(a_and_b_not_nan, a_gt_b), 0) != 0) ? 1 : 0;
-+}
-+
-+// Compares the lower single-precision floating point scalar values of a and b
-+// using a less than or equal operation. :
-+// https://msdn.microsoft.com/en-us/library/1w4t7c57(v=vs.90).aspx
-+FORCE_INLINE int _mm_comile_ss(__m128 a, __m128 b)
-+{
-+ // return vgetq_lane_u32(vcleq_f32(vreinterpretq_f32_m128(a),
-+ // vreinterpretq_f32_m128(b)), 0);
-+ uint32x4_t a_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a));
-+ uint32x4_t b_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b));
-+ uint32x4_t a_and_b_not_nan = vandq_u32(a_not_nan, b_not_nan);
-+ uint32x4_t a_le_b =
-+ vcleq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b));
-+ return (vgetq_lane_u32(vandq_u32(a_and_b_not_nan, a_le_b), 0) != 0) ? 1 : 0;
-+}
-+
-+// Compares the lower single-precision floating point scalar values of a and b
-+// using a greater than or equal operation. :
-+// https://msdn.microsoft.com/en-us/library/8t80des6(v=vs.100).aspx
-+FORCE_INLINE int _mm_comige_ss(__m128 a, __m128 b)
-+{
-+ // return vgetq_lane_u32(vcgeq_f32(vreinterpretq_f32_m128(a),
-+ // vreinterpretq_f32_m128(b)), 0);
-+ uint32x4_t a_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a));
-+ uint32x4_t b_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b));
-+ uint32x4_t a_and_b_not_nan = vandq_u32(a_not_nan, b_not_nan);
-+ uint32x4_t a_ge_b =
-+ vcgeq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b));
-+ return (vgetq_lane_u32(vandq_u32(a_and_b_not_nan, a_ge_b), 0) != 0) ? 1 : 0;
-+}
-+
-+// Compares the lower single-precision floating point scalar values of a and b
-+// using an equality operation. :
-+// https://msdn.microsoft.com/en-us/library/93yx2h2b(v=vs.100).aspx
-+FORCE_INLINE int _mm_comieq_ss(__m128 a, __m128 b)
-+{
-+ // return vgetq_lane_u32(vceqq_f32(vreinterpretq_f32_m128(a),
-+ // vreinterpretq_f32_m128(b)), 0);
-+ uint32x4_t a_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a));
-+ uint32x4_t b_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b));
-+ uint32x4_t a_and_b_not_nan = vandq_u32(a_not_nan, b_not_nan);
-+ uint32x4_t a_eq_b =
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b));
-+ return (vgetq_lane_u32(vandq_u32(a_and_b_not_nan, a_eq_b), 0) != 0) ? 1 : 0;
-+}
-+
-+// Compares the lower single-precision floating point scalar values of a and b
-+// using an inequality operation. :
-+// https://msdn.microsoft.com/en-us/library/bafh5e0a(v=vs.90).aspx
-+FORCE_INLINE int _mm_comineq_ss(__m128 a, __m128 b)
-+{
-+ // return !vgetq_lane_u32(vceqq_f32(vreinterpretq_f32_m128(a),
-+ // vreinterpretq_f32_m128(b)), 0);
-+ uint32x4_t a_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(a));
-+ uint32x4_t b_not_nan =
-+ vceqq_f32(vreinterpretq_f32_m128(b), vreinterpretq_f32_m128(b));
-+ uint32x4_t a_or_b_nan = vmvnq_u32(vandq_u32(a_not_nan, b_not_nan));
-+ uint32x4_t a_neq_b = vmvnq_u32(
-+ vceqq_f32(vreinterpretq_f32_m128(a), vreinterpretq_f32_m128(b)));
-+ return (vgetq_lane_u32(vorrq_u32(a_or_b_nan, a_neq_b), 0) != 0) ? 1 : 0;
-+}
-+
-+// according to the documentation, these intrinsics behave the same as the
-+// non-'u' versions. We'll just alias them here.
-+#define _mm_ucomilt_ss _mm_comilt_ss
-+#define _mm_ucomile_ss _mm_comile_ss
-+#define _mm_ucomigt_ss _mm_comigt_ss
-+#define _mm_ucomige_ss _mm_comige_ss
-+#define _mm_ucomieq_ss _mm_comieq_ss
-+#define _mm_ucomineq_ss _mm_comineq_ss
-+
-+// ******************************************
-+// Conversions
-+// ******************************************
-+
-+// Converts the four single-precision, floating-point values of a to signed
-+// 32-bit integer values using truncate.
-+// https://msdn.microsoft.com/en-us/library/vstudio/1h005y6x(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_cvttps_epi32(__m128 a)
-+{
-+ return vreinterpretq_m128i_s32(vcvtq_s32_f32(vreinterpretq_f32_m128(a)));
-+}
-+
-+// Converts the four signed 32-bit integer values of a to single-precision,
-+// floating-point values
-+// https://msdn.microsoft.com/en-us/library/vstudio/36bwxcx5(v=vs.100).aspx
-+FORCE_INLINE __m128 _mm_cvtepi32_ps(__m128i a)
-+{
-+ return vreinterpretq_m128_f32(vcvtq_f32_s32(vreinterpretq_s32_m128i(a)));
-+}
-+
-+// Converts the four unsigned 8-bit integers in the lower 32 bits to four
-+// unsigned 32-bit integers.
-+// https://msdn.microsoft.com/en-us/library/bb531467%28v=vs.100%29.aspx
-+FORCE_INLINE __m128i _mm_cvtepu8_epi32(__m128i a)
-+{
-+ uint8x16_t u8x16 = vreinterpretq_u8_s32(a); /* xxxx xxxx xxxx DCBA */
-+ uint16x8_t u16x8 = vmovl_u8(vget_low_u8(u8x16)); /* 0x0x 0x0x 0D0C 0B0A */
-+ uint32x4_t u32x4 = vmovl_u16(vget_low_u16(u16x8)); /* 000D 000C 000B 000A */
-+ return vreinterpretq_s32_u32(u32x4);
-+}
-+
-+// Converts the four signed 16-bit integers in the lower 64 bits to four signed
-+// 32-bit integers.
-+// https://msdn.microsoft.com/en-us/library/bb514079%28v=vs.100%29.aspx
-+FORCE_INLINE __m128i _mm_cvtepi16_epi32(__m128i a)
-+{
-+ return vreinterpretq_m128i_s32(
-+ vmovl_s16(vget_low_s16(vreinterpretq_s16_m128i(a))));
-+}
-+
-+// Converts the four single-precision, floating-point values of a to signed
-+// 32-bit integer values.
-+//
-+// r0 := (int) a0
-+// r1 := (int) a1
-+// r2 := (int) a2
-+// r3 := (int) a3
-+//
-+// https://msdn.microsoft.com/en-us/library/vstudio/xdc42k5e(v=vs.100).aspx
-+// *NOTE*. The default rounding mode on SSE is 'round to even', which ArmV7-A
-+// does not support! It is supported on ARMv8-A however.
-+FORCE_INLINE __m128i _mm_cvtps_epi32(__m128 a)
-+{
-+#if defined(__aarch64__)
-+ return vcvtnq_s32_f32(a);
-+#else
-+ uint32x4_t signmask = vdupq_n_u32(0x80000000);
-+ float32x4_t half = vbslq_f32(signmask, vreinterpretq_f32_m128(a),
-+ vdupq_n_f32(0.5f)); /* +/- 0.5 */
-+ int32x4_t r_normal = vcvtq_s32_f32(vaddq_f32(
-+ vreinterpretq_f32_m128(a), half)); /* round to integer: [a + 0.5]*/
-+ int32x4_t r_trunc =
-+ vcvtq_s32_f32(vreinterpretq_f32_m128(a)); /* truncate to integer: [a] */
-+ int32x4_t plusone = vreinterpretq_s32_u32(vshrq_n_u32(
-+ vreinterpretq_u32_s32(vnegq_s32(r_trunc)), 31)); /* 1 or 0 */
-+ int32x4_t r_even = vbicq_s32(vaddq_s32(r_trunc, plusone),
-+ vdupq_n_s32(1)); /* ([a] + {0,1}) & ~1 */
-+ float32x4_t delta = vsubq_f32(
-+ vreinterpretq_f32_m128(a),
-+ vcvtq_f32_s32(r_trunc)); /* compute delta: delta = (a - [a]) */
-+ uint32x4_t is_delta_half = vceqq_f32(delta, half); /* delta == +/- 0.5 */
-+ return vreinterpretq_m128i_s32(vbslq_s32(is_delta_half, r_even, r_normal));
-+#endif
-+}
-+
-+// Moves the least significant 32 bits of a to a 32-bit integer.
-+// https://msdn.microsoft.com/en-us/library/5z7a9642%28v=vs.90%29.aspx
-+FORCE_INLINE int _mm_cvtsi128_si32(__m128i a)
-+{
-+ return vgetq_lane_s32(vreinterpretq_s32_m128i(a), 0);
-+}
-+
-+// Extracts the low order 64-bit integer from the parameter.
-+// https://msdn.microsoft.com/en-us/library/bb531384(v=vs.120).aspx
-+FORCE_INLINE uint64_t _mm_cvtsi128_si64(__m128i a)
-+{
-+ return vgetq_lane_s64(vreinterpretq_s64_m128i(a), 0);
-+}
-+
-+// Moves 32-bit integer a to the least significant 32 bits of an __m128 object,
-+// zero extending the upper bits.
-+//
-+// r0 := a
-+// r1 := 0x0
-+// r2 := 0x0
-+// r3 := 0x0
-+//
-+// https://msdn.microsoft.com/en-us/library/ct3539ha%28v=vs.90%29.aspx
-+FORCE_INLINE __m128i _mm_cvtsi32_si128(int a)
-+{
-+ return vreinterpretq_m128i_s32(vsetq_lane_s32(a, vdupq_n_s32(0), 0));
-+}
-+
-+// Applies a type cast to reinterpret four 32-bit floating point values passed
-+// in as a 128-bit parameter as packed 32-bit integers.
-+// https://msdn.microsoft.com/en-us/library/bb514099.aspx
-+FORCE_INLINE __m128i _mm_castps_si128(__m128 a)
-+{
-+ return vreinterpretq_m128i_s32(vreinterpretq_s32_m128(a));
-+}
-+
-+// Applies a type cast to reinterpret four 32-bit integers passed in as a
-+// 128-bit parameter as packed 32-bit floating point values.
-+// https://msdn.microsoft.com/en-us/library/bb514029.aspx
-+FORCE_INLINE __m128 _mm_castsi128_ps(__m128i a)
-+{
-+ return vreinterpretq_m128_s32(vreinterpretq_s32_m128i(a));
-+}
-+
-+// Loads 128-bit value. :
-+// https://msdn.microsoft.com/en-us/library/atzzad1h(v=vs.80).aspx
-+FORCE_INLINE __m128i _mm_load_si128(const __m128i *p)
-+{
-+ return vreinterpretq_m128i_s32(vld1q_s32((const int32_t *) p));
-+}
-+
-+// Loads 128-bit value. :
-+// https://msdn.microsoft.com/zh-cn/library/f4k12ae8(v=vs.90).aspx
-+FORCE_INLINE __m128i _mm_loadu_si128(const __m128i *p)
-+{
-+ return vreinterpretq_m128i_s32(vld1q_s32((const int32_t *) p));
-+}
-+
-+// ******************************************
-+// Miscellaneous Operations
-+// ******************************************
-+
-+// Packs the 16 signed 16-bit integers from a and b into 8-bit integers and
-+// saturates.
-+// https://msdn.microsoft.com/en-us/library/k4y4f7w5%28v=vs.90%29.aspx
-+FORCE_INLINE __m128i _mm_packs_epi16(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s8(
-+ vcombine_s8(vqmovn_s16(vreinterpretq_s16_m128i(a)),
-+ vqmovn_s16(vreinterpretq_s16_m128i(b))));
-+}
-+
-+// Packs the 16 signed 16 - bit integers from a and b into 8 - bit unsigned
-+// integers and saturates.
-+//
-+// r0 := UnsignedSaturate(a0)
-+// r1 := UnsignedSaturate(a1)
-+// ...
-+// r7 := UnsignedSaturate(a7)
-+// r8 := UnsignedSaturate(b0)
-+// r9 := UnsignedSaturate(b1)
-+// ...
-+// r15 := UnsignedSaturate(b7)
-+//
-+// https://msdn.microsoft.com/en-us/library/07ad1wx4(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_packus_epi16(const __m128i a, const __m128i b)
-+{
-+ return vreinterpretq_m128i_u8(
-+ vcombine_u8(vqmovun_s16(vreinterpretq_s16_m128i(a)),
-+ vqmovun_s16(vreinterpretq_s16_m128i(b))));
-+}
-+
-+// Packs the 8 signed 32-bit integers from a and b into signed 16-bit integers
-+// and saturates.
-+//
-+// r0 := SignedSaturate(a0)
-+// r1 := SignedSaturate(a1)
-+// r2 := SignedSaturate(a2)
-+// r3 := SignedSaturate(a3)
-+// r4 := SignedSaturate(b0)
-+// r5 := SignedSaturate(b1)
-+// r6 := SignedSaturate(b2)
-+// r7 := SignedSaturate(b3)
-+//
-+// https://msdn.microsoft.com/en-us/library/393t56f9%28v=vs.90%29.aspx
-+FORCE_INLINE __m128i _mm_packs_epi32(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_m128i_s16(
-+ vcombine_s16(vqmovn_s32(vreinterpretq_s32_m128i(a)),
-+ vqmovn_s32(vreinterpretq_s32_m128i(b))));
-+}
-+
-+// Interleaves the lower 8 signed or unsigned 8-bit integers in a with the lower
-+// 8 signed or unsigned 8-bit integers in b.
-+//
-+// r0 := a0
-+// r1 := b0
-+// r2 := a1
-+// r3 := b1
-+// ...
-+// r14 := a7
-+// r15 := b7
-+//
-+// https://msdn.microsoft.com/en-us/library/xf7k860c%28v=vs.90%29.aspx
-+FORCE_INLINE __m128i _mm_unpacklo_epi8(__m128i a, __m128i b)
-+{
-+ int8x8_t a1 = vreinterpret_s8_s16(vget_low_s16(vreinterpretq_s16_m128i(a)));
-+ int8x8_t b1 = vreinterpret_s8_s16(vget_low_s16(vreinterpretq_s16_m128i(b)));
-+ int8x8x2_t result = vzip_s8(a1, b1);
-+ return vreinterpretq_m128i_s8(vcombine_s8(result.val[0], result.val[1]));
-+}
-+
-+// Interleaves the lower 4 signed or unsigned 16-bit integers in a with the
-+// lower 4 signed or unsigned 16-bit integers in b.
-+//
-+// r0 := a0
-+// r1 := b0
-+// r2 := a1
-+// r3 := b1
-+// r4 := a2
-+// r5 := b2
-+// r6 := a3
-+// r7 := b3
-+//
-+// https://msdn.microsoft.com/en-us/library/btxb17bw%28v=vs.90%29.aspx
-+FORCE_INLINE __m128i _mm_unpacklo_epi16(__m128i a, __m128i b)
-+{
-+ int16x4_t a1 = vget_low_s16(vreinterpretq_s16_m128i(a));
-+ int16x4_t b1 = vget_low_s16(vreinterpretq_s16_m128i(b));
-+ int16x4x2_t result = vzip_s16(a1, b1);
-+ return vreinterpretq_m128i_s16(vcombine_s16(result.val[0], result.val[1]));
-+}
-+
-+// Interleaves the lower 2 signed or unsigned 32 - bit integers in a with the
-+// lower 2 signed or unsigned 32 - bit integers in b.
-+//
-+// r0 := a0
-+// r1 := b0
-+// r2 := a1
-+// r3 := b1
-+//
-+// https://msdn.microsoft.com/en-us/library/x8atst9d(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_unpacklo_epi32(__m128i a, __m128i b)
-+{
-+ int32x2_t a1 = vget_low_s32(vreinterpretq_s32_m128i(a));
-+ int32x2_t b1 = vget_low_s32(vreinterpretq_s32_m128i(b));
-+ int32x2x2_t result = vzip_s32(a1, b1);
-+ return vreinterpretq_m128i_s32(vcombine_s32(result.val[0], result.val[1]));
-+}
-+
-+FORCE_INLINE __m128i _mm_unpacklo_epi64(__m128i a, __m128i b)
-+{
-+ int64x1_t a_l = vget_low_s64(vreinterpretq_s64_m128i(a));
-+ int64x1_t b_l = vget_low_s64(vreinterpretq_s64_m128i(b));
-+ return vreinterpretq_m128i_s64(vcombine_s64(a_l, b_l));
-+}
-+
-+// Selects and interleaves the lower two single-precision, floating-point values
-+// from a and b.
-+//
-+// r0 := a0
-+// r1 := b0
-+// r2 := a1
-+// r3 := b1
-+//
-+// https://msdn.microsoft.com/en-us/library/25st103b%28v=vs.90%29.aspx
-+FORCE_INLINE __m128 _mm_unpacklo_ps(__m128 a, __m128 b)
-+{
-+ float32x2_t a1 = vget_low_f32(vreinterpretq_f32_m128(a));
-+ float32x2_t b1 = vget_low_f32(vreinterpretq_f32_m128(b));
-+ float32x2x2_t result = vzip_f32(a1, b1);
-+ return vreinterpretq_m128_f32(vcombine_f32(result.val[0], result.val[1]));
-+}
-+
-+// Selects and interleaves the upper two single-precision, floating-point values
-+// from a and b.
-+//
-+// r0 := a2
-+// r1 := b2
-+// r2 := a3
-+// r3 := b3
-+//
-+// https://msdn.microsoft.com/en-us/library/skccxx7d%28v=vs.90%29.aspx
-+FORCE_INLINE __m128 _mm_unpackhi_ps(__m128 a, __m128 b)
-+{
-+ float32x2_t a1 = vget_high_f32(vreinterpretq_f32_m128(a));
-+ float32x2_t b1 = vget_high_f32(vreinterpretq_f32_m128(b));
-+ float32x2x2_t result = vzip_f32(a1, b1);
-+ return vreinterpretq_m128_f32(vcombine_f32(result.val[0], result.val[1]));
-+}
-+
-+// Interleaves the upper 8 signed or unsigned 8-bit integers in a with the upper
-+// 8 signed or unsigned 8-bit integers in b.
-+//
-+// r0 := a8
-+// r1 := b8
-+// r2 := a9
-+// r3 := b9
-+// ...
-+// r14 := a15
-+// r15 := b15
-+//
-+// https://msdn.microsoft.com/en-us/library/t5h7783k(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_unpackhi_epi8(__m128i a, __m128i b)
-+{
-+ int8x8_t a1 =
-+ vreinterpret_s8_s16(vget_high_s16(vreinterpretq_s16_m128i(a)));
-+ int8x8_t b1 =
-+ vreinterpret_s8_s16(vget_high_s16(vreinterpretq_s16_m128i(b)));
-+ int8x8x2_t result = vzip_s8(a1, b1);
-+ return vreinterpretq_m128i_s8(vcombine_s8(result.val[0], result.val[1]));
-+}
-+
-+// Interleaves the upper 4 signed or unsigned 16-bit integers in a with the
-+// upper 4 signed or unsigned 16-bit integers in b.
-+//
-+// r0 := a4
-+// r1 := b4
-+// r2 := a5
-+// r3 := b5
-+// r4 := a6
-+// r5 := b6
-+// r6 := a7
-+// r7 := b7
-+//
-+// https://msdn.microsoft.com/en-us/library/03196cz7(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_unpackhi_epi16(__m128i a, __m128i b)
-+{
-+ int16x4_t a1 = vget_high_s16(vreinterpretq_s16_m128i(a));
-+ int16x4_t b1 = vget_high_s16(vreinterpretq_s16_m128i(b));
-+ int16x4x2_t result = vzip_s16(a1, b1);
-+ return vreinterpretq_m128i_s16(vcombine_s16(result.val[0], result.val[1]));
-+}
-+
-+// Interleaves the upper 2 signed or unsigned 32-bit integers in a with the
-+// upper 2 signed or unsigned 32-bit integers in b.
-+// https://msdn.microsoft.com/en-us/library/65sa7cbs(v=vs.100).aspx
-+FORCE_INLINE __m128i _mm_unpackhi_epi32(__m128i a, __m128i b)
-+{
-+ int32x2_t a1 = vget_high_s32(vreinterpretq_s32_m128i(a));
-+ int32x2_t b1 = vget_high_s32(vreinterpretq_s32_m128i(b));
-+ int32x2x2_t result = vzip_s32(a1, b1);
-+ return vreinterpretq_m128i_s32(vcombine_s32(result.val[0], result.val[1]));
-+}
-+
-+// Interleaves the upper signed or unsigned 64-bit integer in a with the
-+// upper signed or unsigned 64-bit integer in b.
-+//
-+// r0 := a1
-+// r1 := b1
-+FORCE_INLINE __m128i _mm_unpackhi_epi64(__m128i a, __m128i b)
-+{
-+ int64x1_t a_h = vget_high_s64(vreinterpretq_s64_m128i(a));
-+ int64x1_t b_h = vget_high_s64(vreinterpretq_s64_m128i(b));
-+ return vreinterpretq_m128i_s64(vcombine_s64(a_h, b_h));
-+}
-+
-+// shift to right
-+// https://msdn.microsoft.com/en-us/library/bb514041(v=vs.120).aspx
-+// http://blog.csdn.net/hemmingway/article/details/44828303
-+FORCE_INLINE __m128i _mm_alignr_epi8(__m128i a, __m128i b, const int c)
-+{
-+ return (__m128i) vextq_s8((int8x16_t) a, (int8x16_t) b, c);
-+}
-+
-+// Extracts the selected signed or unsigned 16-bit integer from a and zero
-+// extends. https://msdn.microsoft.com/en-us/library/6dceta0c(v=vs.100).aspx
-+// FORCE_INLINE int _mm_extract_epi16(__m128i a, __constrange(0,8) int imm)
-+#define _mm_extract_epi16(a, imm) \
-+ ({ (vgetq_lane_s16(vreinterpretq_s16_m128i(a), (imm)) & 0x0000ffffUL); })
-+
-+// Inserts the least significant 16 bits of b into the selected 16-bit integer
-+// of a. https://msdn.microsoft.com/en-us/library/kaze8hz1%28v=vs.100%29.aspx
-+// FORCE_INLINE __m128i _mm_insert_epi16(__m128i a, const int b,
-+// __constrange(0,8) int imm)
-+#define _mm_insert_epi16(a, b, imm) \
-+ ({ \
-+ vreinterpretq_m128i_s16( \
-+ vsetq_lane_s16((b), vreinterpretq_s16_m128i(a), (imm))); \
-+ })
-+
-+// ******************************************
-+// Crypto Extensions
-+// ******************************************
-+#if !defined(__ARM_FEATURE_CRYPTO) && defined(__aarch64__)
-+// In the absence of crypto extensions, implement aesenc using regular neon
-+// intrinsics instead. See:
-+// http://www.workofard.com/2017/01/accelerated-aes-for-the-arm64-linux-kernel/
-+// http://www.workofard.com/2017/07/ghash-for-low-end-cores/ and
-+// https://github.com/ColinIanKing/linux-next-mirror/blob/b5f466091e130caaf0735976648f72bd5e09aa84/crypto/aegis128-neon-inner.c#L52
-+// for more information Reproduced with permission of the author.
-+FORCE_INLINE __m128i _mm_aesenc_si128(__m128i EncBlock, __m128i RoundKey)
-+{
-+ static const uint8_t crypto_aes_sbox[256] = {
-+ 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, 0x30, 0x01, 0x67, 0x2b,
-+ 0xfe, 0xd7, 0xab, 0x76, 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0,
-+ 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0, 0xb7, 0xfd, 0x93, 0x26,
-+ 0x36, 0x3f, 0xf7, 0xcc, 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15,
-+ 0x04, 0xc7, 0x23, 0xc3, 0x18, 0x96, 0x05, 0x9a, 0x07, 0x12, 0x80, 0xe2,
-+ 0xeb, 0x27, 0xb2, 0x75, 0x09, 0x83, 0x2c, 0x1a, 0x1b, 0x6e, 0x5a, 0xa0,
-+ 0x52, 0x3b, 0xd6, 0xb3, 0x29, 0xe3, 0x2f, 0x84, 0x53, 0xd1, 0x00, 0xed,
-+ 0x20, 0xfc, 0xb1, 0x5b, 0x6a, 0xcb, 0xbe, 0x39, 0x4a, 0x4c, 0x58, 0xcf,
-+ 0xd0, 0xef, 0xaa, 0xfb, 0x43, 0x4d, 0x33, 0x85, 0x45, 0xf9, 0x02, 0x7f,
-+ 0x50, 0x3c, 0x9f, 0xa8, 0x51, 0xa3, 0x40, 0x8f, 0x92, 0x9d, 0x38, 0xf5,
-+ 0xbc, 0xb6, 0xda, 0x21, 0x10, 0xff, 0xf3, 0xd2, 0xcd, 0x0c, 0x13, 0xec,
-+ 0x5f, 0x97, 0x44, 0x17, 0xc4, 0xa7, 0x7e, 0x3d, 0x64, 0x5d, 0x19, 0x73,
-+ 0x60, 0x81, 0x4f, 0xdc, 0x22, 0x2a, 0x90, 0x88, 0x46, 0xee, 0xb8, 0x14,
-+ 0xde, 0x5e, 0x0b, 0xdb, 0xe0, 0x32, 0x3a, 0x0a, 0x49, 0x06, 0x24, 0x5c,
-+ 0xc2, 0xd3, 0xac, 0x62, 0x91, 0x95, 0xe4, 0x79, 0xe7, 0xc8, 0x37, 0x6d,
-+ 0x8d, 0xd5, 0x4e, 0xa9, 0x6c, 0x56, 0xf4, 0xea, 0x65, 0x7a, 0xae, 0x08,
-+ 0xba, 0x78, 0x25, 0x2e, 0x1c, 0xa6, 0xb4, 0xc6, 0xe8, 0xdd, 0x74, 0x1f,
-+ 0x4b, 0xbd, 0x8b, 0x8a, 0x70, 0x3e, 0xb5, 0x66, 0x48, 0x03, 0xf6, 0x0e,
-+ 0x61, 0x35, 0x57, 0xb9, 0x86, 0xc1, 0x1d, 0x9e, 0xe1, 0xf8, 0x98, 0x11,
-+ 0x69, 0xd9, 0x8e, 0x94, 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf,
-+ 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, 0x41, 0x99, 0x2d, 0x0f,
-+ 0xb0, 0x54, 0xbb, 0x16};
-+ static const uint8_t shift_rows[] = {0x0, 0x5, 0xa, 0xf, 0x4, 0x9,
-+ 0xe, 0x3, 0x8, 0xd, 0x2, 0x7,
-+ 0xc, 0x1, 0x6, 0xb};
-+ static const uint8_t ror32by8[] = {0x1, 0x2, 0x3, 0x0, 0x5, 0x6, 0x7, 0x4,
-+ 0x9, 0xa, 0xb, 0x8, 0xd, 0xe, 0xf, 0xc};
-+
-+ uint8x16_t v;
-+ uint8x16_t w = vreinterpretq_u8_m128i(EncBlock);
-+
-+ // shift rows
-+ w = vqtbl1q_u8(w, vld1q_u8(shift_rows));
-+
-+ // sub bytes
-+ v = vqtbl4q_u8(vld1q_u8_x4(crypto_aes_sbox), w);
-+ v = vqtbx4q_u8(v, vld1q_u8_x4(crypto_aes_sbox + 0x40), w - 0x40);
-+ v = vqtbx4q_u8(v, vld1q_u8_x4(crypto_aes_sbox + 0x80), w - 0x80);
-+ v = vqtbx4q_u8(v, vld1q_u8_x4(crypto_aes_sbox + 0xc0), w - 0xc0);
-+
-+ // mix columns
-+ w = (v << 1) ^ (uint8x16_t)(((int8x16_t) v >> 7) & 0x1b);
-+ w ^= (uint8x16_t) vrev32q_u16((uint16x8_t) v);
-+ w ^= vqtbl1q_u8(v ^ w, vld1q_u8(ror32by8));
-+
-+ // add round key
-+ return vreinterpretq_m128i_u8(w) ^ RoundKey;
-+}
-+#elif defined(__ARM_FEATURE_CRYPTO)
-+// Implements equivalent of 'aesenc' by combining AESE (with an empty key) and
-+// AESMC and then manually applying the real key as an xor operation This
-+// unfortunately means an additional xor op; the compiler should be able to
-+// optimise this away for repeated calls however See
-+// https://blog.michaelbrase.com/2018/05/08/emulating-x86-aes-intrinsics-on-armv8-a
-+// for more details.
-+inline __m128i _mm_aesenc_si128(__m128i a, __m128i b)
-+{
-+ return vreinterpretq_s32_u8(
-+ vaesmcq_u8(vaeseq_u8(vreinterpretq_u8_s32(a), uint8x16_t{})) ^
-+ vreinterpretq_u8_s32(b));
-+}
-+#endif
-+
-+// ******************************************
-+// Streaming Extensions
-+// ******************************************
-+
-+// Guarantees that every preceding store is globally visible before any
-+// subsequent store.
-+// https://msdn.microsoft.com/en-us/library/5h2w73d1%28v=vs.90%29.aspx
-+FORCE_INLINE void _mm_sfence(void)
-+{
-+ __sync_synchronize();
-+}
-+
-+// Stores the data in a to the address p without polluting the caches. If the
-+// cache line containing address p is already in the cache, the cache will be
-+// updated.Address p must be 16 - byte aligned.
-+// https://msdn.microsoft.com/en-us/library/ba08y07y%28v=vs.90%29.aspx
-+FORCE_INLINE void _mm_stream_si128(__m128i *p, __m128i a)
-+{
-+ vst1q_s32((int32_t *) p, a);
-+}
-+
-+// Cache line containing p is flushed and invalidated from all caches in the
-+// coherency domain. :
-+// https://msdn.microsoft.com/en-us/library/ba08y07y(v=vs.100).aspx
-+FORCE_INLINE void _mm_clflush(void const *p)
-+{
-+ // no corollary for Neon?
-+}
-+
-+#if defined(__GNUC__) || defined(__clang__)
-+#pragma pop_macro("ALIGN_STRUCT")
-+#pragma pop_macro("FORCE_INLINE")
-+#endif
-+
-+#endif
diff --git a/vendor/spoa/src/simd_alignment_engine.cpp b/vendor/spoa/src/simd_alignment_engine.cpp
index 3e5815a..2fd10d7 100644
--- a/vendor/spoa/src/simd_alignment_engine.cpp
@@ -2795,7 +6,7 @@ index 3e5815a..2fd10d7 100644
#include <algorithm>
#include <limits>
-+#include "arch/aarch64/sse2neon.h"
++#include <sse2neon.h>
+/*
extern "C" {
#include <immintrin.h> // AVX2 and lower
diff --git a/var/spack/repos/builtin/packages/racon/package.py b/var/spack/repos/builtin/packages/racon/package.py
index 1e661b4bd7..19b44719f1 100644
--- a/var/spack/repos/builtin/packages/racon/package.py
+++ b/var/spack/repos/builtin/packages/racon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,6 +25,7 @@ class Racon(CMakePackage):
depends_on('cmake@3.2:', type='build')
depends_on('python', type='build')
+ depends_on('sse2neon', when='target=aarch64:')
conflicts('%gcc@:4.7')
conflicts('%clang@:3.1')
diff --git a/var/spack/repos/builtin/packages/raft/package.py b/var/spack/repos/builtin/packages/raft/package.py
index d164cc9c1f..65d3666cb9 100644
--- a/var/spack/repos/builtin/packages/raft/package.py
+++ b/var/spack/repos/builtin/packages/raft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ragel/package.py b/var/spack/repos/builtin/packages/ragel/package.py
index cff731ef75..586d08f220 100644
--- a/var/spack/repos/builtin/packages/ragel/package.py
+++ b/var/spack/repos/builtin/packages/ragel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/raja/package.py b/var/spack/repos/builtin/packages/raja/package.py
index c2cdf5a607..3603d4ad4c 100644
--- a/var/spack/repos/builtin/packages/raja/package.py
+++ b/var/spack/repos/builtin/packages/raja/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Raja(CMakePackage, CudaPackage, ROCmPackage):
version('develop', branch='develop', submodules='True')
version('main', branch='main', submodules='True')
+ version('0.13.0', tag='v0.13.0', submodules='True')
version('0.12.1', tag='v0.12.1', submodules="True")
version('0.12.0', tag='v0.12.0', submodules="True")
version('0.11.0', tag='v0.11.0', submodules="True")
@@ -32,18 +33,32 @@ class Raja(CMakePackage, CudaPackage, ROCmPackage):
variant('shared', default=True, description='Build Shared Libs')
variant('examples', default=True, description='Build examples.')
variant('exercises', default=True, description='Build exercises.')
+ # TODO: figure out gtest dependency and then set this default True
+ # and remove the +tests conflict below.
+ variant('tests', default=False, description='Build tests')
- conflicts('+openmp', when='+rocm')
+ depends_on('blt@0.4.0:', type='build', when='@0.13.1:')
+ depends_on('blt@:0.3.6', type='build', when='@:0.13.0')
+
+ depends_on('camp')
+ depends_on('camp+cuda', when='+cuda')
+
+ # variants +rocm and amdgpu_targets are not automatically passed to
+ # dependencies, so do it manually.
+ depends_on('camp+rocm', when='+rocm')
+ for val in ROCmPackage.amdgpu_targets:
+ depends_on('camp amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
- depends_on('cmake@3.8:', type='build')
- depends_on('cmake@3.9:', when='+cuda', type='build')
+ conflicts('+openmp', when='+rocm')
def cmake_args(self):
spec = self.spec
options = []
- options.append('-DENABLE_OPENMP={0}'.format(
- 'ON' if '+openmp' in spec else 'OFF'))
+
+ options.append('-DBLT_SOURCE_DIR={0}'.format(spec['blt'].prefix))
+
+ options.append(self.define_from_variant('ENABLE_OPENMP', 'openmp'))
if '+cuda' in spec:
options.extend([
@@ -69,14 +84,11 @@ class Raja(CMakePackage, CudaPackage, ROCmPackage):
else:
options.append('-DENABLE_HIP=OFF')
- options.append('-DBUILD_SHARED_LIBS={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'))
+ options.append(self.define_from_variant('BUILD_SHARED_LIBS', 'shared'))
- options.append('-DENABLE_EXAMPLES={0}'.format(
- 'ON' if '+examples' in spec else 'OFF'))
+ options.append(self.define_from_variant('ENABLE_EXAMPLES', 'examples'))
- options.append('-DENABLE_EXERCISES={0}'.format(
- 'ON' if '+exercises' in spec else 'OFF'))
+ options.append(self.define_from_variant('ENABLE_EXERCISES', 'exercises'))
# Work around spack adding -march=ppc64le to SPACK_TARGET_ARGS which
# is used by the spack compiler wrapper. This can go away when BLT
@@ -84,7 +96,7 @@ class Raja(CMakePackage, CudaPackage, ROCmPackage):
if self.spec.satisfies('%clang target=ppc64le:') or not self.run_tests:
options.append('-DENABLE_TESTS=OFF')
else:
- options.append('-DENABLE_TESTS=ON')
+ options.append(self.define_from_variant('ENABLE_TESTS', 'tests'))
return options
diff --git a/var/spack/repos/builtin/packages/ramulator/package.py b/var/spack/repos/builtin/packages/ramulator/package.py
index a103d4b68d..96dc4be2c7 100644
--- a/var/spack/repos/builtin/packages/ramulator/package.py
+++ b/var/spack/repos/builtin/packages/ramulator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/randfold/package.py b/var/spack/repos/builtin/packages/randfold/package.py
index bfb1ee80a9..7dbdecca51 100644
--- a/var/spack/repos/builtin/packages/randfold/package.py
+++ b/var/spack/repos/builtin/packages/randfold/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/random123/package.py b/var/spack/repos/builtin/packages/random123/package.py
index bc958abe38..38279089b2 100644
--- a/var/spack/repos/builtin/packages/random123/package.py
+++ b/var/spack/repos/builtin/packages/random123/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/random123/v1132-xl161.patch b/var/spack/repos/builtin/packages/random123/v1132-xl161.patch
index 398de3cc2a..f4c66897aa 100644
--- a/var/spack/repos/builtin/packages/random123/v1132-xl161.patch
+++ b/var/spack/repos/builtin/packages/random123/v1132-xl161.patch
@@ -1,5 +1,5 @@
diff --git a/include/Random123/features/compilerfeatures.h b/include/Random123/features/compilerfeatures.h
-index 2341a7a..3c5d999 100644
+index 2341a7a..0606dee 100644
--- a/include/Random123/features/compilerfeatures.h
+++ b/include/Random123/features/compilerfeatures.h
@@ -206,7 +206,7 @@ added to each of the *features.h files, AND to examples/ut_features.cpp.
@@ -11,3 +11,18 @@ index 2341a7a..3c5d999 100644
#include "xlcfeatures.h"
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
#include "sunprofeatures.h"
+diff --git a/include/Random123/features/nvccfeatures.h b/include/Random123/features/nvccfeatures.h
+index d1ff8bf..179298c 100644
+--- a/include/Random123/features/nvccfeatures.h
++++ b/include/Random123/features/nvccfeatures.h
+@@ -116,7 +116,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #define R123_ULONG_LONG unsigned long long
+ #endif
+
+-#if defined(__GNUC__)
++#if defined(__xlC__) || defined(__ibmxl__)
++#include "xlcfeatures.h"
++#elif defined(__GNUC__)
+ #include "gccfeatures.h"
+ #elif defined(_MSC_FULL_VER)
+ #include "msvcfeatures.h"
diff --git a/var/spack/repos/builtin/packages/randrproto/package.py b/var/spack/repos/builtin/packages/randrproto/package.py
index a2dfed152f..ff16e464cc 100644
--- a/var/spack/repos/builtin/packages/randrproto/package.py
+++ b/var/spack/repos/builtin/packages/randrproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/range-v3/package.py b/var/spack/repos/builtin/packages/range-v3/package.py
index 783c94852e..182f3fecc3 100644
--- a/var/spack/repos/builtin/packages/range-v3/package.py
+++ b/var/spack/repos/builtin/packages/range-v3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -48,7 +48,7 @@ class RangeV3(CMakePackage):
description='Use the specified C++ standard when building.')
variant('doc',
- default=True,
+ default=False,
description='Build and install documentation.')
variant('examples',
diff --git a/var/spack/repos/builtin/packages/rankstr/package.py b/var/spack/repos/builtin/packages/rankstr/package.py
index 98d7aea87f..bc0b83565d 100644
--- a/var/spack/repos/builtin/packages/rankstr/package.py
+++ b/var/spack/repos/builtin/packages/rankstr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,12 +10,13 @@ class Rankstr(CMakePackage):
"""Assign one-to-one mapping of MPI ranks to strings"""
homepage = "https://github.com/ecp-veloc/rankstr"
- url = "https://github.com/ecp-veloc/rankstr/archive/v0.0.2.zip"
+ url = "https://github.com/ecp-veloc/rankstr/archive/v0.0.3.tar.gz"
git = "https://github.com/ecp-veloc/rankstr.git"
tags = ['ecp']
version('master', branch='master')
+ version('0.0.3', sha256='d32052fbecd44299e13e69bf2dd7e5737c346404ccd784b8c2100ceed99d8cd3')
version('0.0.2', sha256='c16d53aa9bb79934cbe2dcd8612e2db7d59de80be500c104e39e8623d4eacd8e')
depends_on('mpi')
diff --git a/var/spack/repos/builtin/packages/rapidjson/package.py b/var/spack/repos/builtin/packages/rapidjson/package.py
index 12e2498a23..0cd7dac6c1 100644
--- a/var/spack/repos/builtin/packages/rapidjson/package.py
+++ b/var/spack/repos/builtin/packages/rapidjson/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/raptor2/package.py b/var/spack/repos/builtin/packages/raptor2/package.py
new file mode 100644
index 0000000000..588b16573a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/raptor2/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Raptor2(AutotoolsPackage):
+ """libraptor2 for parsing and serializing RDF syntaxes"""
+
+ homepage = "http://librdf.org/"
+ url = "http://download.librdf.org/source/raptor2-2.0.15.tar.gz"
+
+ version('2.0.15', sha256='ada7f0ba54787b33485d090d3d2680533520cd4426d2f7fb4782dd4a6a1480ed')
+
+ depends_on('libxml2')
diff --git a/var/spack/repos/builtin/packages/rasdaemon/package.py b/var/spack/repos/builtin/packages/rasdaemon/package.py
index 4acd6b8beb..4bcb377895 100644
--- a/var/spack/repos/builtin/packages/rasdaemon/package.py
+++ b/var/spack/repos/builtin/packages/rasdaemon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rasqal/package.py b/var/spack/repos/builtin/packages/rasqal/package.py
new file mode 100644
index 0000000000..d6926edd31
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rasqal/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Rasqal(AutotoolsPackage):
+ """Rasqal is a free software / Open Source C library that
+ handles Resource Description Framework (RDF) query language
+ syntaxes, query construction and execution of queries returning
+ results as bindings, boolean, RDF graphs/triples or syntaxes."""
+
+ homepage = "http://librdf.org/"
+ url = "http://download.librdf.org/source/rasqal-0.9.33.tar.gz"
+
+ version('0.9.33', sha256='6924c9ac6570bd241a9669f83b467c728a322470bf34f4b2da4f69492ccfd97c')
+ version('0.9.32', sha256='eeba03218e3b7dfa033934d523a1a64671a9a0f64eadc38a01e4b43367be2e8f')
+ version('0.9.31', sha256='28d743c9f1b0e5b0486ae4a945fa1e021c8495707e7adbfa0e232244b28b7fee')
+
+ depends_on('raptor2')
diff --git a/var/spack/repos/builtin/packages/ravel/package.py b/var/spack/repos/builtin/packages/ravel/package.py
index e9a3abb0e6..dee24dfa89 100644
--- a/var/spack/repos/builtin/packages/ravel/package.py
+++ b/var/spack/repos/builtin/packages/ravel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/raxml-ng/package.py b/var/spack/repos/builtin/packages/raxml-ng/package.py
new file mode 100644
index 0000000000..e6b8934e6f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/raxml-ng/package.py
@@ -0,0 +1,34 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class RaxmlNg(CMakePackage):
+ """RAxML-NG is a phylogenetic tree inference tool which uses
+ maximum-likelihood (ML) optimality criterion.
+
+ Its search heuristic is based on iteratively performing a series
+ of Subtree Pruning and Regrafting (SPR) moves,
+ which allows to quickly navigate to the best-known ML tree.
+ RAxML-NG is a successor of RAxML (Stamatakis 2014) and leverages
+ the highly optimized likelihood computation implemented in libpll
+ (Flouri et al. 2014)."""
+
+ homepage = "https://github.com/amkozlov/raxml-ng/wiki"
+ url = "https://github.com/amkozlov/raxml-ng/archive/1.0.1.tar.gz"
+ git = "https://github.com/amkozlov/raxml-ng.git"
+
+ version('1.0.1', submodules='True')
+
+ variant("mpi", default=True, description="Use MPI")
+
+ depends_on('bison')
+ depends_on('flex')
+ depends_on('gmp')
+ depends_on('mpi', when='+mpi')
+
+ def cmake_args(self):
+ return [self.define_from_variant('USE_MPI', 'mpi')]
diff --git a/var/spack/repos/builtin/packages/raxml/package.py b/var/spack/repos/builtin/packages/raxml/package.py
index 7eb477dfc6..f5e7d7d3aa 100644
--- a/var/spack/repos/builtin/packages/raxml/package.py
+++ b/var/spack/repos/builtin/packages/raxml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ray/package.py b/var/spack/repos/builtin/packages/ray/package.py
index afa849e08d..b63328c855 100644
--- a/var/spack/repos/builtin/packages/ray/package.py
+++ b/var/spack/repos/builtin/packages/ray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rccl/package.py b/var/spack/repos/builtin/packages/rccl/package.py
index 45b7b23090..d8d603e4d8 100644
--- a/var/spack/repos/builtin/packages/rccl/package.py
+++ b/var/spack/repos/builtin/packages/rccl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,10 +13,15 @@ class Rccl(CMakePackage):
and reduce-scatter."""
homepage = "https://github.com/RadeonOpenCompute/rccl"
- url = "https://github.com/ROCmSoftwarePlatform/rccl/archive/rocm-3.7.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/rccl.git"
+ url = "https://github.com/ROCmSoftwarePlatform/rccl/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='2829fae40ebc1d8be201856d2193a941c87e9cf38dca0a2f4414e675c1742f20')
+ version('4.1.0', sha256='88ec9b43c31cb054fe6aa28bcc0f4b510213635268f951939d6980eee5bb3680')
+ version('4.0.0', sha256='0632a15b3d6b5981c05377cf4aeb51546f4c4901fd7c37fb0c98071851ad531a')
+ version('3.10.0', sha256='d9dd0b0d8b9d056fc5e6c7b814520800190952acd30dac3a7c462c4cb6f42bb3')
version('3.9.0', sha256='ff9d03154d668093309ff814a33788f2cc093b3c627e78e42ae246e6017408b0')
version('3.8.0', sha256='0b6676d06bdb1f65d511a95db9f842a3443def83d75759dfdf812b5e62d8c910')
version('3.7.0', sha256='8273878ff71aac2e7adf5cc8562d2933034c6c6b3652f88fbe3cd4f2691036e3')
@@ -25,14 +30,17 @@ class Rccl(CMakePackage):
patch('0001-Fix-numactl-path-issue.patch', when='@3.7.0:')
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('hip@' + ver, type=('build', 'run'), when='@' + ver)
depends_on('rocm-device-libs@' + ver, type=('build', 'run'), when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
- if ver in ['3.7.0', '3.8.0', '3.9.0']:
- depends_on('numactl@2.0.12', type=('build', 'link'), when='@' + ver)
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0', '4.2.0']:
+ depends_on('numactl@2:', type=('build', 'link'), when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
diff --git a/var/spack/repos/builtin/packages/rclone/package.py b/var/spack/repos/builtin/packages/rclone/package.py
index 8e043319f8..5fada5f9e8 100644
--- a/var/spack/repos/builtin/packages/rclone/package.py
+++ b/var/spack/repos/builtin/packages/rclone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rdc/package.py b/var/spack/repos/builtin/packages/rdc/package.py
index 86f0fc3d6a..0fdbefe2e6 100644
--- a/var/spack/repos/builtin/packages/rdc/package.py
+++ b/var/spack/repos/builtin/packages/rdc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,18 +11,32 @@ class Rdc(CMakePackage):
"""ROCm Data Center Tool"""
homepage = "https://github.com/RadeonOpenCompute/rdc"
- url = "https://github.com/RadeonOpenCompute/rdc/archive/rocm-3.8.0.tar.gz"
+ url = "https://github.com/RadeonOpenCompute/rdc/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ def url_for_version(self, version):
+ if version == Version('3.9.0'):
+ return "https://github.com/RadeonOpenCompute/rdc/archive/rdc_so_ver-0.3.tar.gz"
+
+ url = "https://github.com/RadeonOpenCompute/rdc/archive/rocm-{0}.tar.gz"
+ return url.format(version)
+
+ version('4.2.0', sha256='ea2c7c07d55f607968f58d7e30326cae5db5b48c1ba354caa5727394d5bad258')
+ version('4.1.0', sha256='dc81ee9727c8913c05dcf20a00669ce611339ef6d6db8af34e57f42bcfa804ac')
+ version('4.0.0', sha256='e9ebfc46dfa983400909ed8a9da4fa37869ab118a8426c2e4f793e21174ca07f')
+ version('3.10.0', sha256='fdc51f9f1f756406d1e2ffaeee0e247d1b04fc4078f08e581bbaa7da79697ac1')
+ version('3.9.0', sha256='bc6339e7f41850a4a049d085a880cfafd3fd8e1610fb94c572d79753d01aa298')
version('3.8.0', sha256='d0d0a0e68a848b7a8fa2d88c1d0352ce68e1e142debf32c31d941904f03c4b2f')
- depends_on('cmake@3.15:', type='build')
+ depends_on('cmake@3.15:3.19.7', type='build')
depends_on('grpc@1.28.1+shared', type='build')
depends_on('protobuf', type=('build', 'link'))
- depends_on('rocm-smi-lib@3.8.0', type=('build', 'link'))
depends_on('libcap', type=('build', 'link'))
+ for ver in ['3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0', '4.2.0']:
+ depends_on('rocm-smi-lib@' + ver, type=('build', 'link'), when='@' + ver)
+
def patch(self):
filter_file(
r'\${ROCM_DIR}/rocm_smi', '${ROCM_SMI_DIR}', 'CMakeLists.txt')
diff --git a/var/spack/repos/builtin/packages/rdkit/package.py b/var/spack/repos/builtin/packages/rdkit/package.py
new file mode 100644
index 0000000000..2be3632dc7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rdkit/package.py
@@ -0,0 +1,41 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Rdkit(CMakePackage):
+ """RDKit is a collection of cheminformatics and machine-learning
+ software written in C++ and Python."""
+
+ homepage = "https://www.rdkit.org"
+ url = "https://github.com/rdkit/rdkit/archive/refs/tags/Release_2021_03_2.tar.gz"
+
+ maintainers = ['bvanessen']
+
+ version('2021_03_2', sha256='9907a745405cc915c65504046e446199f8ad03d870714de57c27d3738f330fe4')
+ version('2021_03_1b1', sha256='2cd0673b289ba756c76a1bf57cf19e147ac4a9f6ecf9e79cc3dd86c8d39be414')
+ version('2021_03_1', sha256='9495f797a54ac70b3b6e12776de7d82acd7f7b5d5f0cc1f168c763215545610b')
+ version('2020_09_5', sha256='85cec9618e7ef6365b9b908ed674c073d898b6627521cc7fd8c2e05fea8a5def')
+ version('2020_09_4', sha256='9e734ca8f99d8be1ef2ac51efb67c393c62e88b98cfa550d6173ce3eaa87b559')
+ version('2020_09_3', sha256='aa95bf3cbeef287eeb6d9759ff0992d2f92f2171b1758af71b7c9a0ec97a0660')
+ version('2020_09_2', sha256='44663970859c0ec993f94a56b692231557df02c267853a2ee3c1f609cef93ae9')
+ version('2020_09_1b1', sha256='d9d836dc38cc45db44698e33325901452c94df9add10dd2675674594af1b73c2')
+ version('2020_09_1', sha256='ac105498be52ff77f7e9328c41d0e61a2318cac0789d6efc30f5f50dc78a992c')
+ version('2020_03_6', sha256='a3663295a149aa0307ace6d1995094d0334180bc8f892fa325558a110154272b')
+
+ depends_on('python@3:')
+ depends_on('boost@1.53.0: +python +serialization')
+
+ depends_on('py-numpy')
+ depends_on('sqlite')
+
+ extends("python")
+
+ def cmake_args(self):
+ args = ['-DCMAKE_CXX_STANDARD=14',
+ '-DRDK_INSTALL_INTREE=OFF']
+ return args
diff --git a/var/spack/repos/builtin/packages/rdma-core/package.py b/var/spack/repos/builtin/packages/rdma-core/package.py
index 0e09e7d210..dbce0ca1a0 100644
--- a/var/spack/repos/builtin/packages/rdma-core/package.py
+++ b/var/spack/repos/builtin/packages/rdma-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class RdmaCore(CMakePackage):
homepage = "https://github.com/linux-rdma/rdma-core"
url = "https://github.com/linux-rdma/rdma-core/releases/download/v17.1/rdma-core-17.1.tar.gz"
+ version('34.0', sha256='3d9ccf66468cf78f4c39bebb8bd0c5eb39150ded75f4a88a3455c4f625408be8')
+ version('33.1', sha256='d179b102bec551ce62265ed463d1095fb2ae9baff604261ad63327fcd20650e5')
version('32.0', sha256='8197e20a59990b9b06a2e4c83f4a96802fc080ec1669392b643b59b6023931fc')
version('31.0', sha256='51ae9a3ab81cd6834436813fafc310c8b7007feae9d09a53fdd5c169e648d50b')
version('30.0', sha256='23e1bd2d7b38149a1621ee577a3428ac652e305adb8e0eee923cbe71356a9bf9')
@@ -36,7 +38,11 @@ class RdmaCore(CMakePackage):
# system path) as a component in compile-time static strings such as
# IBACM_SERVER_PATH.
def cmake_args(self):
- cmake_args = ["-DCMAKE_INSTALL_SYSCONFDIR=" +
- self.spec.prefix.etc,
- "-DCMAKE_INSTALL_RUNDIR=/var/run"]
+ cmake_args = [
+ '-DCMAKE_INSTALL_SYSCONFDIR={0}'.format(self.spec.prefix.etc),
+ '-DCMAKE_INSTALL_RUNDIR=/var/run',
+ '-DPYTHON_LIBRARY={0}'.format(self.spec['python'].libs[0]),
+ '-DPYTHON_INCLUDE_DIR={0}'
+ .format(self.spec['python'].headers.directories[0])
+ ]
return cmake_args
diff --git a/var/spack/repos/builtin/packages/rdp-classifier/package.py b/var/spack/repos/builtin/packages/rdp-classifier/package.py
index 2895010cd7..c5afc4ea6c 100644
--- a/var/spack/repos/builtin/packages/rdp-classifier/package.py
+++ b/var/spack/repos/builtin/packages/rdp-classifier/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rdptools/package.py b/var/spack/repos/builtin/packages/rdptools/package.py
index 5f5957c8b1..2c47980921 100644
--- a/var/spack/repos/builtin/packages/rdptools/package.py
+++ b/var/spack/repos/builtin/packages/rdptools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/re2/package.py b/var/spack/repos/builtin/packages/re2/package.py
index 0ffd9096ca..5be8f32d10 100644
--- a/var/spack/repos/builtin/packages/re2/package.py
+++ b/var/spack/repos/builtin/packages/re2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/re2c/package.py b/var/spack/repos/builtin/packages/re2c/package.py
index 976fc17d39..d3849c5bfb 100644
--- a/var/spack/repos/builtin/packages/re2c/package.py
+++ b/var/spack/repos/builtin/packages/re2c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/readfq/package.py b/var/spack/repos/builtin/packages/readfq/package.py
index ce06114ba2..69ebb9e667 100644
--- a/var/spack/repos/builtin/packages/readfq/package.py
+++ b/var/spack/repos/builtin/packages/readfq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/readline/package.py b/var/spack/repos/builtin/packages/readline/package.py
index d4e95c8037..c092b26b8d 100644
--- a/var/spack/repos/builtin/packages/readline/package.py
+++ b/var/spack/repos/builtin/packages/readline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,7 @@ class Readline(AutotoolsPackage, GNUMirrorPackage):
# URL must remain http:// so Spack can bootstrap curl
gnu_mirror_path = "readline/readline-8.0.tar.gz"
+ version('8.1', sha256='f8ceb4ee131e3232226a17f51b164afc46cd0b9e6cef344be87c65962cb82b02')
version('8.0', sha256='e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461')
version('7.0', sha256='750d437185286f40a369e1e4f4764eda932b9459b5ec9a731628393dd3d32334')
version('6.3', sha256='56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43')
@@ -29,3 +30,11 @@ class Readline(AutotoolsPackage, GNUMirrorPackage):
def build(self, spec, prefix):
make('SHLIB_LIBS=' + spec['ncurses'].libs.ld_flags)
+
+ def patch(self):
+ # Remove flags not recognized by the NVIDIA compiler
+ if self.spec.satisfies('%nvhpc'):
+ filter_file('${GCC+-Wno-parentheses}', '', 'configure',
+ string=True)
+ filter_file('${GCC+-Wno-format-security}', '', 'configure',
+ string=True)
diff --git a/var/spack/repos/builtin/packages/recon/package.py b/var/spack/repos/builtin/packages/recon/package.py
index 68f3c37f98..32036c003d 100644
--- a/var/spack/repos/builtin/packages/recon/package.py
+++ b/var/spack/repos/builtin/packages/recon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/recorder/package.py b/var/spack/repos/builtin/packages/recorder/package.py
index c4abc67977..56ede19025 100644
--- a/var/spack/repos/builtin/packages/recorder/package.py
+++ b/var/spack/repos/builtin/packages/recorder/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/recordproto/package.py b/var/spack/repos/builtin/packages/recordproto/package.py
index 4067ddaacb..f02c5b88f2 100644
--- a/var/spack/repos/builtin/packages/recordproto/package.py
+++ b/var/spack/repos/builtin/packages/recordproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/redis/package.py b/var/spack/repos/builtin/packages/redis/package.py
index d7375066fd..b946c5bdc2 100644
--- a/var/spack/repos/builtin/packages/redis/package.py
+++ b/var/spack/repos/builtin/packages/redis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/reditools/package.py b/var/spack/repos/builtin/packages/reditools/package.py
index 7dd0197a51..256ec5cb0f 100644
--- a/var/spack/repos/builtin/packages/reditools/package.py
+++ b/var/spack/repos/builtin/packages/reditools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/redland-bindings/package.py b/var/spack/repos/builtin/packages/redland-bindings/package.py
new file mode 100644
index 0000000000..e218f7afd9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/redland-bindings/package.py
@@ -0,0 +1,34 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class RedlandBindings(AutotoolsPackage):
+ """Redland Language Bindings for language APIs to Redland"""
+
+ homepage = "http://librdf.org/"
+ url = "http://download.librdf.org/source/redland-bindings-1.0.17.1.tar.gz"
+
+ version('1.0.17.1', sha256='ff72b587ab55f09daf81799cb3f9d263708fad5df7a5458f0c28566a2563b7f5')
+ version('1.0.16.1', sha256='065037ef61e9b78f642e75b9c2a42700eb1a87d903f2f9963d86591c7d916826')
+ version('1.0.14.1', sha256='a8cc365fccf292c56d53341ecae57fe8727e5002e048ca25f6251b5e595aec40')
+
+ depends_on('swig', type='build')
+ depends_on('redland')
+ depends_on('krb5')
+ depends_on('libssh')
+ extends('python')
+
+ def configure_args(self):
+ plib = self.spec['python'].prefix.lib
+ plib64 = self.spec['python'].prefix.lib64
+ mybase = self.prefix.lib
+ if os.path.isdir(plib64) and not os.path.isdir(plib):
+ mybase = self.prefix.lib64
+ pver = 'python{0}'.format(self.spec['python'].version.up_to(2))
+ myplib = join_path(mybase, pver, 'site-packages')
+ return ['--with-python', 'PYTHON_LIB={0}'.format(myplib)]
diff --git a/var/spack/repos/builtin/packages/redland/package.py b/var/spack/repos/builtin/packages/redland/package.py
new file mode 100644
index 0000000000..d0973b69c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/redland/package.py
@@ -0,0 +1,21 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Redland(AutotoolsPackage):
+ """Redland RDF Library - librdf providing the RDF API and triple stores"""
+
+ homepage = "http://librdf.org/"
+ url = "http://download.librdf.org/source/redland-1.0.17.tar.gz"
+
+ version('1.0.17', sha256='de1847f7b59021c16bdc72abb4d8e2d9187cd6124d69156f3326dd34ee043681')
+ version('1.0.16', sha256='d9a274fc086e61119d5c9beafb8d05527e040ec86f4c0961276ca8de0a049dbd')
+ version('1.0.15', sha256='0e1f5825b6357c9b490da866c95ae1d895dbb5f445013d2511c37df822ee9ec6')
+
+ depends_on('raptor2')
+ depends_on('rasqal')
diff --git a/var/spack/repos/builtin/packages/redset/package.py b/var/spack/repos/builtin/packages/redset/package.py
index 88ea8b92d4..273be3aa26 100644
--- a/var/spack/repos/builtin/packages/redset/package.py
+++ b/var/spack/repos/builtin/packages/redset/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,13 +10,15 @@ class Redset(CMakePackage):
"""Create MPI communicators for disparate redundancy sets"""
homepage = "https://github.com/ecp-veloc/redset"
- url = "https://github.com/ecp-veloc/redset/archive/v0.0.3.zip"
+ url = "https://github.com/ecp-veloc/redset/archive/v0.0.5.tar.gz"
git = "https://github.com/ecp-veloc/redset.git"
tags = ['ecp']
version('master', branch='master')
- version('0.0.3', sha256='f110c9b42209d65f84a8478b919b27ebe2d566839cb0cd0c86ccbdb1f51598f4')
+ version('0.0.5', sha256='4db4ae59ab9d333a6d1d80678dedf917d23ad461c88b6d39466fc4bf6467d1ee')
+ version('0.0.4', sha256='c33fce458d5582f01ad632c6fae8eb0a03eaef00e3c240c713b03bb95e2787ad')
+ version('0.0.3', sha256='30ac1a960f842ae23a960a88b312af3fddc4795f2053eeeec3433a61e4666a76')
depends_on('mpi')
depends_on('rankstr')
diff --git a/var/spack/repos/builtin/packages/redundans/package.py b/var/spack/repos/builtin/packages/redundans/package.py
index 25a0a64d22..334e36850f 100644
--- a/var/spack/repos/builtin/packages/redundans/package.py
+++ b/var/spack/repos/builtin/packages/redundans/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/reframe/package.py b/var/spack/repos/builtin/packages/reframe/package.py
index 5c1f19659b..0c14bff278 100644
--- a/var/spack/repos/builtin/packages/reframe/package.py
+++ b/var/spack/repos/builtin/packages/reframe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,38 +22,77 @@ class Reframe(Package):
# notify when the package is updated.
maintainers = ['victorusu', 'vkarak']
- version('master', branch='master')
- version('3.1', sha256='a9f6ac1ae8fdc51be8032d5cc79c117ff602f57b57aace2e195b2cfe1bd3a16f')
- version('3.0', sha256='fb76b4513c03b84f5b3bbbc988f7747e5b58f04c983b3935bab1f2e81adccb82')
- version('2.21', sha256='f35d4fda2f9672c87d3ef664d9a2d6eb0c01c88218a31772a6645c32c8934c4d')
- version('2.20', sha256='310c18d705858bbe6bd9a2dc4d382b254c1f093b0671d72363f2111e8c162ba4')
- version('2.17.3', sha256='dc8dfb2ccb9a966303879b7cdcd188c47063e9b7999cbd5d6255223b066bf357')
- version('2.17.2', sha256='092241cdc15918040aacb922c806aecb59c5bdc3ff7db034a4f355d39aecc101')
- version('2.17.1', sha256='0b0d32a892607840a7d668f5dcea6f03f7022a26b23e5042a0faf5b8c41cb146')
+ version('master', branch='master')
+ version('3.6.0', sha256='de1e0ea2677f2a49af4b64544379579515db36c2164f6dc647c3fbaab5f78462')
+ version('3.5.3', sha256='5e7f8b93cd672dcb702c657ec2f595d34d3335b1d16484a596a083b5ef81d7ec')
+ version('3.5.2', sha256='50d461811f6bba7c9b897866a290063e1bd229e7055f5acc2de1f749b99bfce7')
+ version('3.5.1', sha256='656ac4c5cddd2af3fc358a7782b0a57c86d61adaeec99181ab7e1ddc630427b7')
+ version('3.5.0', sha256='81b501be4252c99f12043cb21b0b7b8059207a340fc94173b180444599773f1a')
+ version('3.4.2', sha256='0c5c6dbd234b8007be929be2ccbe6a00d9a5ec75cc86e129557590b83f71acca')
+ version('3.4.1', sha256='aed5752a2f687002839923c5432784d3a25d3a29d43b69122dcbf72befa0fdbf')
+ version('3.4', sha256='7e74b1c7468b94e89cff4cd4a91934645ab227ad61d57a9ddf6a7d3d0726010e')
+ version('3.3', sha256='9da150a051e9fa4ffea1361f30e8593261e7f6ebc71ec91ed32143539f871ad7')
+ version('3.2', sha256='dc7f72e31386e549a874699067666607a72835914fef18c38ae6032ab5e5ed51')
+ version('3.1', sha256='a9f6ac1ae8fdc51be8032d5cc79c117ff602f57b57aace2e195b2cfe1bd3a16f')
+ version('3.0', sha256='fb76b4513c03b84f5b3bbbc988f7747e5b58f04c983b3935bab1f2e81adccb82')
+ version('2.21', sha256='f35d4fda2f9672c87d3ef664d9a2d6eb0c01c88218a31772a6645c32c8934c4d')
+ version('2.20', sha256='310c18d705858bbe6bd9a2dc4d382b254c1f093b0671d72363f2111e8c162ba4')
+ version('2.17.3', sha256='dc8dfb2ccb9a966303879b7cdcd188c47063e9b7999cbd5d6255223b066bf357')
+ version('2.17.2', sha256='092241cdc15918040aacb922c806aecb59c5bdc3ff7db034a4f355d39aecc101')
+ version('2.17.1', sha256='0b0d32a892607840a7d668f5dcea6f03f7022a26b23e5042a0faf5b8c41cb146')
- variant("docs", default=False,
- description="Build ReFrame's man page documentation")
- variant("gelf", default=False,
- description="Add graylog handler support")
+ variant('docs', default=False,
+ description='Build ReFrame\'s man page documentation')
+ variant('gelf', default=False,
+ description='Add graylog handler support')
+ # ReFrame requires git up to version 3.1, see:
+ # https://github.com/eth-cscs/reframe/issues/1464
+ depends_on('git', when='@2.0:3.1', type='run')
+
+ # supported python versions
depends_on('python@3.5:', when='@2.0:2.999', type='run')
depends_on('python@3.6:', when='@3.0:', type='run')
- depends_on('py-jsonschema', type='run')
+
+ # build dependencies
depends_on('py-setuptools', type='build')
- depends_on("py-pygelf", when="+gelf", type="run")
- depends_on("py-sphinx", when="+docs", type="build")
- depends_on("py-sphinx-rtd-theme", when="+docs", type="build")
- # ReFrame requires git up to version 3.1, see:
- # https://github.com/eth-cscs/reframe/issues/1464
- depends_on("git", when="@2.0:3.1", type="run")
+
+ # runtime dependencies
+ depends_on('py-argcomplete', when='@3.4.1:', type='run')
+ depends_on('py-importlib-metadata', when='^python@:3.7', type='run')
+ depends_on('py-jsonschema', type='run')
+ depends_on('py-lxml', when='@3.6.0:', type='run')
+ depends_on('py-pyyaml', when='@3.4.1:', type='run')
+ depends_on('py-requests', when='@3.4.1:', type='run')
+ depends_on('py-semver', when='@3.4.2:', type='run')
+
+ # extension dependencies
+ depends_on('py-pygelf', when='+gelf', type='run')
+
+ # documentation dependencies
+ depends_on('py-sphinx', when='+docs', type='build')
+ depends_on('py-sphinx-rtd-theme', when='+docs', type='build')
+
+ # sanity check
+ sanity_check_is_file = ['bin/reframe']
+ sanity_check_is_dir = ['bin', 'config', 'docs', 'reframe', 'tutorials',
+ 'unittests', 'cscs-checks']
+
+ # check if we can run reframe
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_list(self):
+ with working_dir(self.stage.source_path):
+ reframe = Executable(self.prefix + '/bin/reframe')
+ reframe('-l')
def install(self, spec, prefix):
if spec.version >= Version('3.0'):
- if "+docs" in spec:
- with working_dir("docs"):
- make("man")
- make("html")
- with working_dir("man"):
+ if '+docs' in spec:
+ with working_dir('docs'):
+ make('man')
+ make('html')
+ with working_dir('man'):
mkdir('man1')
shutil.move('reframe.1', 'man1')
mkdir('man8')
@@ -62,5 +101,5 @@ class Reframe(Package):
def setup_run_environment(self, env):
if self.spec.version >= Version('3.0'):
- if "+docs" in self.spec:
+ if '+docs' in self.spec:
env.prepend_path('MANPATH', self.prefix.docs.man)
diff --git a/var/spack/repos/builtin/packages/regcm/package.py b/var/spack/repos/builtin/packages/regcm/package.py
index 05625de77b..cf496e9b9c 100644
--- a/var/spack/repos/builtin/packages/regcm/package.py
+++ b/var/spack/repos/builtin/packages/regcm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/relax/package.py b/var/spack/repos/builtin/packages/relax/package.py
index d2ac4aa1c8..7ef85fb96c 100644
--- a/var/spack/repos/builtin/packages/relax/package.py
+++ b/var/spack/repos/builtin/packages/relax/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,6 +13,8 @@ class Relax(CMakePackage):
homepage = "https://twiki.cern.ch/twiki/bin/view/LCG/RELAX"
url = "http://lcgpackages.web.cern.ch/lcgpackages/tarFiles/sources/RELAX-1.tar.gz"
+ tags = ['hep']
+
# The RELAX project stopped using a fixed release model since it moved to
# ROOT 6, so any package checksum is a lie...
version('root6')
diff --git a/var/spack/repos/builtin/packages/relion/0002-Simple-patch-to-fix-intel-mkl-linking.patch b/var/spack/repos/builtin/packages/relion/0002-Simple-patch-to-fix-intel-mkl-linking.patch
new file mode 100644
index 0000000000..6c2e036e4b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/relion/0002-Simple-patch-to-fix-intel-mkl-linking.patch
@@ -0,0 +1,31 @@
+From 0448e229d5c38d00e8a4b9f7081a862e966f8c17 Mon Sep 17 00:00:00 2001
+From: Evan Bollig <ebbollig@amazon.com>
+Date: Tue, 9 Feb 2021 09:48:13 -0600
+Subject: [PATCH] Simple patch to fix intel mkl linking
+
+---
+ src/apps/CMakeLists.txt | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/src/apps/CMakeLists.txt b/src/apps/CMakeLists.txt
+index 9f23f797..b26d373d 100644
+--- a/src/apps/CMakeLists.txt
++++ b/src/apps/CMakeLists.txt
+@@ -212,6 +212,14 @@ foreach (_target ${RELION_TARGETS})
+ target_link_libraries(${_target} ${LIB} ${EXTRA_LIBS} ${MPI_LIBRARIES} ${CMAKE_DL_LIBS})
+ else()
+ target_link_libraries(${_target} ${LIB} ${FFTW_LIBRARIES} ${EXTRA_LIBS} ${MPI_LIBRARIES} ${CMAKE_DL_LIBS})
++ # Intel MKL needs to be last in the list
++ if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")
++ SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fopenmp -mkl -limf ")
++ #target_link_libraries(${_target} "fopenmp" "mkl" "imf")
++ else()
++ #SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential ")
++ target_link_libraries(${_target} "mkl_intel_ilp64" "mkl_core" "mkl_sequential")
++ endif()
+ endif(NOT MKLFFT)
+
+ if(CUDA_FOUND)
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/relion/package.py b/var/spack/repos/builtin/packages/relion/package.py
index 73244fcb65..35a079d1f2 100644
--- a/var/spack/repos/builtin/packages/relion/package.py
+++ b/var/spack/repos/builtin/packages/relion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,17 +12,16 @@ class Relion(CMakePackage, CudaPackage):
refinement of (multiple) 3D reconstructions or 2D class averages in
electron cryo-microscopy (cryo-EM)."""
- homepage = "http://http://www2.mrc-lmb.cam.ac.uk/relion"
+ homepage = "http://www2.mrc-lmb.cam.ac.uk/relion"
git = "https://github.com/3dem/relion.git"
+ url = "https://github.com/3dem/relion/archive/3.1.0.zip"
- # 3.1 is beta but referenced in published papers
- # prefer stable 3.0 until no longer beta
- version('3.1_beta', branch='ver3.1')
+ version('3.1.1', sha256='63e9b77e1ba9ec239375020ad6ff631424d1a5803cba5c608c09fd44d20b1618')
+ version('3.1.0', sha256='8a7e751fa6ebcdf9f36046499b3d88e170c4da86d5ff9ad1914b5f3d178867a8')
# 3.0.8 latest release in 3.0 branch
- # prefer for now
- version('3.0.8', tag='3.0.8', preferred=True)
- version('3.0.7', tag='3.0.7')
+ version('3.0.8', sha256='18cdd58e3a612d32413eb37e473fe8fbf06262d2ed72e42da20356f459260973')
+ version('3.0.7', sha256='a6d37248fc4d0bfc18f4badb7986dc1b6d6849baa2128b0b4dade13cb6991a99')
# relion master contains development code
# contains 3.0 branch code
@@ -40,15 +39,21 @@ class Relion(CMakePackage, CudaPackage):
description='The build type to build',
values=('Debug', 'Release', 'RelWithDebInfo',
'Profiling', 'Benchmarking'))
+ variant('mklfft', default=True, description='Use MKL rather than FFTW for FFT')
+ variant('allow_ctf_in_sagd', default=True, description='Allow CTF-modulation in SAGD, as specified in Claim 1 of patent US10,282,513B2')
depends_on('mpi')
depends_on('cmake@3:', type='build')
- depends_on('fftw precision=float,double')
+ depends_on('fftw precision=float,double', when='~mklfft')
depends_on('fltk', when='+gui')
depends_on('libtiff')
depends_on('cuda', when='+cuda')
depends_on('cuda@9:', when='@3: +cuda')
+ depends_on('tbb', when='~cuda')
+ depends_on('mkl', when='~cuda +mklfft')
+
+ patch('0002-Simple-patch-to-fix-intel-mkl-linking.patch', when='@:3.1.1 os=ubuntu18.04')
def cmake_args(self):
@@ -60,6 +65,7 @@ class Relion(CMakePackage, CudaPackage):
'-DGUI=%s' % ('+gui' in self.spec),
'-DDoublePrec_CPU=%s' % ('+double' in self.spec),
'-DDoublePrec_GPU=%s' % ('+double-gpu' in self.spec),
+ '-DALLOW_CTF_IN_SAGD=%s' % ('+allow_ctf_in_sagd' in self.spec),
]
if '+cuda' in self.spec:
@@ -73,7 +79,7 @@ class Relion(CMakePackage, CudaPackage):
# these new values were added in relion 3
# do not seem to cause problems with < 3
else:
- args += ['-DMKLFFT=ON', '-DFORCE_OWN_TBB=ON', '-DALTCPU=ON']
+ args += ['-DMKLFFT=%s' % ('+mklfft' in self.spec), '-DALTCPU=ON']
return args
diff --git a/var/spack/repos/builtin/packages/remhos/package.py b/var/spack/repos/builtin/packages/remhos/package.py
index 337c0056dd..15ad1355f2 100644
--- a/var/spack/repos/builtin/packages/remhos/package.py
+++ b/var/spack/repos/builtin/packages/remhos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rempi/package.py b/var/spack/repos/builtin/packages/rempi/package.py
index a7c394f1ab..5ad3dcc0fb 100644
--- a/var/spack/repos/builtin/packages/rempi/package.py
+++ b/var/spack/repos/builtin/packages/rempi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,3 +19,10 @@ class Rempi(AutotoolsPackage):
depends_on("autoconf", type='build')
depends_on("automake", type='build')
depends_on("libtool", type='build')
+ depends_on("libpciaccess", type='link')
+
+ def setup_build_environment(self, env):
+ if self.spec.satisfies('%cce'):
+ env.set('MPICC', 'mpicc')
+ env.set('MPICXX', 'mpicxx')
+ env.set('MPICH_CC', 'cc')
diff --git a/var/spack/repos/builtin/packages/rename/package.py b/var/spack/repos/builtin/packages/rename/package.py
index 6cf3c49278..1d1e1bbe40 100644
--- a/var/spack/repos/builtin/packages/rename/package.py
+++ b/var/spack/repos/builtin/packages/rename/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rendercheck/package.py b/var/spack/repos/builtin/packages/rendercheck/package.py
index b6f4d90438..eeb893022f 100644
--- a/var/spack/repos/builtin/packages/rendercheck/package.py
+++ b/var/spack/repos/builtin/packages/rendercheck/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Rendercheck(AutotoolsPackage, XorgPackage):
depends_on('libxrender')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/renderproto/package.py b/var/spack/repos/builtin/packages/renderproto/package.py
index 87f1a6708a..83d98ed92e 100644
--- a/var/spack/repos/builtin/packages/renderproto/package.py
+++ b/var/spack/repos/builtin/packages/renderproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/repeatmasker/package.py b/var/spack/repos/builtin/packages/repeatmasker/package.py
index 15aa062b35..3663f57b4d 100644
--- a/var/spack/repos/builtin/packages/repeatmasker/package.py
+++ b/var/spack/repos/builtin/packages/repeatmasker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,8 @@ class Repeatmasker(Package):
repeats and low complexity DNA sequences."""
homepage = "http://www.repeatmasker.org"
- url = "http://www.repeatmasker.org/RepeatMasker-open-4-0-7.tar.gz"
+ version('4.1.2-p1', sha256='4be54bf6c050422b211e24a797feb06fd7954c8b4ee6f3ece94cb6faaf6b0e96')
version('4.0.9', sha256='8d67415d89ed301670b7632ea411f794c6e30d8ed0f007a726c4b0a39c8638e5')
version('4.0.7', sha256='16faf40e5e2f521146f6692f09561ebef5f6a022feb17031f2ddb3e3aabcf166')
@@ -25,15 +25,21 @@ class Repeatmasker(Package):
depends_on('hmmer')
depends_on('ncbi-rmblastn')
depends_on('trf')
+ depends_on('python', when='@4.1:', type=('build', 'run'))
+ depends_on('py-h5py', when='@4.1:', type=('build', 'run'))
depends_on('phrap-crossmatch-swat', type=('build', 'run'),
when='+crossmatch')
- patch('utf8.patch')
+ patch('utf8.patch', when='@:4.0')
def url_for_version(self, version):
- url = 'http://www.repeatmasker.org/RepeatMasker-open-{0}.tar.gz'
- return url.format(version.dashed)
+ if version >= Version('4.1.0'):
+ url = 'http://www.repeatmasker.org/RepeatMasker/RepeatMasker-{0}.tar.gz'
+ return url.format(version)
+ else:
+ url = 'http://www.repeatmasker.org/RepeatMasker/RepeatMasker-open-{0}.tar.gz'
+ return url.format(version.dashed)
def install(self, spec, prefix):
# Config questions consist of:
@@ -55,14 +61,14 @@ class Repeatmasker(Package):
config_answers = []
- if spec.satisfies('@4.0.9:'):
+ if spec.satisfies('@:4.0.7'):
# 4.0.9 removes a bunch of the interactive options
- config_answers.append('')
- else:
config_answers.extend(['',
self.spec['perl'].command.path,
- self.stage.source_path,
- self.spec['trf'].prefix.bin.trf])
+ self.stage.source_path])
+
+ # set path to trf
+ config_answers.append(self.spec['trf'].prefix.bin.trf)
# add crossmatch search
if '+crossmatch' in spec:
@@ -75,9 +81,14 @@ class Repeatmasker(Package):
'Y'])
# set non-default HMMER search
- config_answers.extend(['3',
- self.spec['hmmer'].prefix,
- 'N'])
+ if spec.satisfies('@4.0.9:'):
+ config_answers.extend(['3',
+ self.spec['hmmer'].prefix.bin,
+ 'N'])
+ else:
+ config_answers.extend(['4',
+ self.spec['hmmer'].prefix.bin,
+ 'N'])
# end configuration
config_answers.append('5')
diff --git a/var/spack/repos/builtin/packages/repeatmodeler/package.py b/var/spack/repos/builtin/packages/repeatmodeler/package.py
index 3231dd18e8..f703b19dc7 100644
--- a/var/spack/repos/builtin/packages/repeatmodeler/package.py
+++ b/var/spack/repos/builtin/packages/repeatmodeler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/repeatscout/package.py b/var/spack/repos/builtin/packages/repeatscout/package.py
index 78a7a54093..035c26a5bc 100644
--- a/var/spack/repos/builtin/packages/repeatscout/package.py
+++ b/var/spack/repos/builtin/packages/repeatscout/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/resourceproto/package.py b/var/spack/repos/builtin/packages/resourceproto/package.py
index 3c5f74eddc..fb565072db 100644
--- a/var/spack/repos/builtin/packages/resourceproto/package.py
+++ b/var/spack/repos/builtin/packages/resourceproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/revbayes/package.py b/var/spack/repos/builtin/packages/revbayes/package.py
index e3703b2e52..9fd795856e 100644
--- a/var/spack/repos/builtin/packages/revbayes/package.py
+++ b/var/spack/repos/builtin/packages/revbayes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Revbayes(CMakePackage):
git = "https://github.com/revbayes/revbayes.git"
version('develop', branch='development')
+ version('1.1.1', sha256='d61293fceac817d8203ed1e828661d76c73fa16bf04458a50a37057e99fd40c0')
version('1.1.0', sha256='a9f35178d8289d0dd32c9d936f6384f260e8e81e7b80a5155169064a24666012')
version('1.0.13', sha256='e85e2e1fe182fe9f504900150d936a06d252a362c591b9d3d8272dd085aa85d9')
version('1.0.12', sha256='80c926bb6b37288d02e36e07b44e4663841cd1fe541e2cc0b0e44c89ca929759')
diff --git a/var/spack/repos/builtin/packages/revocap-coupler/package.py b/var/spack/repos/builtin/packages/revocap-coupler/package.py
index 6bc128152d..838b51036d 100644
--- a/var/spack/repos/builtin/packages/revocap-coupler/package.py
+++ b/var/spack/repos/builtin/packages/revocap-coupler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,8 @@ class RevocapCoupler(AutotoolsPackage):
homepage = "http://www.ciss.iis.u-tokyo.ac.jp/dl/index.php"
url = "file://{0}/REVOCAP_Coupler-2.1.tar.gz".format(os.getcwd())
+ manual_download = True
+
version('2.1', sha256='9e7612d5c508ccdce23bff9ccbf62aeb635877bc2276cdc05c109de40f609f49')
depends_on('mpi')
diff --git a/var/spack/repos/builtin/packages/revocap-refiner/package.py b/var/spack/repos/builtin/packages/revocap-refiner/package.py
index f95e8f6e1d..36ae876599 100644
--- a/var/spack/repos/builtin/packages/revocap-refiner/package.py
+++ b/var/spack/repos/builtin/packages/revocap-refiner/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rgb/package.py b/var/spack/repos/builtin/packages/rgb/package.py
index 416aef769c..ea5fc4eab4 100644
--- a/var/spack/repos/builtin/packages/rgb/package.py
+++ b/var/spack/repos/builtin/packages/rgb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,4 +22,4 @@ class Rgb(AutotoolsPackage, XorgPackage):
depends_on('xorg-server')
- depends_on('xproto', type='build')
+ depends_on('xproto')
diff --git a/var/spack/repos/builtin/packages/rhash/package.py b/var/spack/repos/builtin/packages/rhash/package.py
index e5e12eaa93..eee6a50b03 100644
--- a/var/spack/repos/builtin/packages/rhash/package.py
+++ b/var/spack/repos/builtin/packages/rhash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rinetd/package.py b/var/spack/repos/builtin/packages/rinetd/package.py
index bc02248539..91c0c4ea19 100644
--- a/var/spack/repos/builtin/packages/rinetd/package.py
+++ b/var/spack/repos/builtin/packages/rinetd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ripgrep/package.py b/var/spack/repos/builtin/packages/ripgrep/package.py
index eadaa6df79..6fc73655a1 100644
--- a/var/spack/repos/builtin/packages/ripgrep/package.py
+++ b/var/spack/repos/builtin/packages/ripgrep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rivet/package.py b/var/spack/repos/builtin/packages/rivet/package.py
index 3d28b81632..12ccf1fea1 100644
--- a/var/spack/repos/builtin/packages/rivet/package.py
+++ b/var/spack/repos/builtin/packages/rivet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,51 +13,59 @@ class Rivet(AutotoolsPackage):
homepage = "https://rivet.hepforge.org/"
url = "https://rivet.hepforge.org/downloads/?f=Rivet-3.1.2.tar.bz2"
+ tags = ['hep']
+
+ version('3.1.3', sha256='53ddce41705b9c22b2eaa90603f6659aa9bf46c466d8772ca9dbe4430972e021')
version('3.1.2', sha256='c041d09644f4eae7c212d82237033267fbc1583dfbb4e3e67377f86cece9577a')
version('3.1.1', sha256='7c98b26af5f859bc65200499d15765e4b056b4cf233b34176f27a7e6bc4cf9b1')
version('3.1.0', sha256='4e156daee5eb10bd1573ef32d4a6a6df74788cd9180fc977db93ef4cb281000c')
version('3.0.2', sha256='9624d6cdcad77eafde40312cf6a1c97f4263f22faf9244b198c140b2c256d2f3')
version('3.0.1', sha256='e7551168b86a05c9c029c319c313a0aa142a476195e7ff986c896c1b868f89dd')
version('3.0.0', sha256='3944434d3791dccb54f7b2257589df6252cc7c065ce9deb57fbef466ff9e62b1')
- version('2.7.2b', sha256='e9f0a709f8226cde54f9406d36efab1e1b8ed0c6574fbcb1d72a186b09188106')
- version('2.7.2', sha256='a6634537c005660e56514b70ab9efb9d466c50685d6fb45ed03e9e1988479f02')
- version('2.7.1', sha256='b4145d8369b8a9fa0ada7ba2e5a2e9992d8e4a12ca4874d835246d2e708cbdef')
- version('2.7.0', sha256='34ad6a0b47dc4736feac8580a275e8b3a46df8fbeefd91e813add0a1525aacaf')
- version('2.6.2', sha256='9dde49d5c02038a295f03d2972f85be8746205bdb5ca1eab868b2c9129ade37a')
- version('2.6.1', sha256='e490d1f35aafa3e175690ae92f862c07a5fe2c51f693c88c87789f0441c89022')
- version('2.6.0', sha256='fb3229dccd31ea40b0af09974253073f6ad0a3a97e9a0cf44b53748ea8e2f900')
- version('2.5.4', sha256='772252193698d994fd111f790e72a4024df7572d492e3d5a9e840a074c5527e2')
- version('2.5.3', sha256='99e10330564ac479c6637d317c08882889a272db8ee204ad45a6ee1dcb291de4')
- version('2.5.2', sha256='70aa27764a14159c94c0b753a0c3d3600ac669def398cb2d8a6c63ae17704f05')
- version('2.5.1', sha256='14ee5828de217e96a30e666192515a2083afee030d81d36fc6bea948e9f7810a')
- version('2.5.0', sha256='c59ff35715be0caf65d6ba808b3badad0f6f7e7758f2049fb6ba43ed579bd4af')
- version('2.4.3', sha256='18aafecab6c3baeac871a9743946433c2dc01825d8fe291b157719a15c342682')
- version('2.4.2', sha256='accb146f3082719781a51eec879427c31401577c44f60b27ec8450102fe68aff')
- version('2.4.1', sha256='c14f0f58d1792d84d62c62b44ebb94db004776feba83fd8186bba898d55123cf')
- version('2.4.0', sha256='5ee2f34a277ed058b8aef750d946b40d4cf781023b9adab03ca95e803a39fb06')
- version('2.3.0', sha256='dd07702981d586e4b97b0fa56ae08cd08a631a952322a9b52e7622a46a7741ab')
- version('2.2.1', sha256='9e64ba19d567bdf4d0cc42b435491c4363b5fec90170d034445a99a1e752b691')
- version('2.2.0', sha256='3bdafe2007ff54c4734e0c8bc6ba9dc97028d4c41d538201b9582a869af8ae1a')
- version('2.1.2', sha256='40a20c1ee186326e5bfd906e0bc88f16dc740551be9cc274e9a826873d9c1eed')
- version('2.1.1', sha256='eefa936de6f6c34a6bab39899841f3189d7621c8ba227032f0f32e6e20dfcf85')
- version('2.1.0', sha256='58a1ca7b5a47719933782c050e67d0eb3823a7384cfc3c434fece41724c307e6')
- version('2.0.0', sha256='038f81f92fbba001ed23b56c1229a4f3b41e0c32e00bc92ea58d042909e3855a')
- version('1.9.0', sha256='55ef552b351328c287194aa99fa2b797e6632dc3fa88dfccd58264602012e044')
- version('1.8.3', sha256='aa82742fd4d7c68bfbef1367c4c605e06f9fed479a753db96aa6659407fcc4fd')
- version('1.8.2', sha256='56be98d31693253543f3e657c8f8edc7979c89fdb0ede1bdddfb3a9f5d4cfc3a')
- version('1.8.1', sha256='7e06d22350bec30220186e796caa93e9bfebd8d771a7efd35673897248437c61')
- version('1.8.0', sha256='7b28f9163f74583b1542b87c48f28a3ad1338da6136d8e3ca0aeba21095f5fe0')
- version('1.7.0', sha256='180741f590f210474b686d60241ad59e008221751ead21f0950c59aff93e54fd')
- version('1.6.0', sha256='1affd9e779f48477402e4150f315b3179204cbbc920db2d0129cd9c38bd18b26')
- version('1.5.1', sha256='9f24e9824286d5b0302c7e440f4803a8e3b8da50e1260e78c3b3c2eb587b317a')
- version('1.5.0', sha256='b7fe63e8caacc5c038ab567fe505d275288eedaa1aed6c379057629eef126006')
- version('1.4.0', sha256='067c94659bb7859904e20e72a676f94f103e6e012b7dba8071f51e8a6e624dbb')
- version('1.3.0', sha256='5ce41c8492c2fcf809a7135bf8335a01a98ea85fb556b3d00bd4260151efd12f')
- version('1.2.1', sha256='2d0380b819f778d8d9c2a462af90bd6a6188121e4edcc6202d936130b59bab17')
- version('1.2.0', sha256='ff5869f6dc9465f429e54686e12c39becac57a83273542179a59bac7561b6404')
- version('1.1.3', sha256='4be3cd9e6f808cdc5511991be2756f5fa838b6ecd01806fdbe7aec0aa382f946')
- version('1.1.2', sha256='a15b5d3339481446dec1b719d7d531a87a2e9d11c9fe8044e270ea69611b07c8')
- version('1.1.1', sha256='bd87fefee6bb8368216755342dc80ab3f8f3c813732dd03c6f94135d45f7036b')
+ version('2.7.2b', sha256='e9f0a709f8226cde54f9406d36efab1e1b8ed0c6574fbcb1d72a186b09188106', deprecated=True)
+ version('2.7.2', sha256='a6634537c005660e56514b70ab9efb9d466c50685d6fb45ed03e9e1988479f02', deprecated=True)
+ version('2.7.1', sha256='b4145d8369b8a9fa0ada7ba2e5a2e9992d8e4a12ca4874d835246d2e708cbdef', deprecated=True)
+ version('2.7.0', sha256='34ad6a0b47dc4736feac8580a275e8b3a46df8fbeefd91e813add0a1525aacaf', deprecated=True)
+ version('2.6.2', sha256='9dde49d5c02038a295f03d2972f85be8746205bdb5ca1eab868b2c9129ade37a', deprecated=True)
+ version('2.6.1', sha256='e490d1f35aafa3e175690ae92f862c07a5fe2c51f693c88c87789f0441c89022', deprecated=True)
+ version('2.6.0', sha256='fb3229dccd31ea40b0af09974253073f6ad0a3a97e9a0cf44b53748ea8e2f900', deprecated=True)
+ version('2.5.4', sha256='772252193698d994fd111f790e72a4024df7572d492e3d5a9e840a074c5527e2', deprecated=True)
+ version('2.5.3', sha256='99e10330564ac479c6637d317c08882889a272db8ee204ad45a6ee1dcb291de4', deprecated=True)
+ version('2.5.2', sha256='70aa27764a14159c94c0b753a0c3d3600ac669def398cb2d8a6c63ae17704f05', deprecated=True)
+ version('2.5.1', sha256='14ee5828de217e96a30e666192515a2083afee030d81d36fc6bea948e9f7810a', deprecated=True)
+ version('2.5.0', sha256='c59ff35715be0caf65d6ba808b3badad0f6f7e7758f2049fb6ba43ed579bd4af', deprecated=True)
+ version('2.4.3', sha256='18aafecab6c3baeac871a9743946433c2dc01825d8fe291b157719a15c342682', deprecated=True)
+ version('2.4.2', sha256='accb146f3082719781a51eec879427c31401577c44f60b27ec8450102fe68aff', deprecated=True)
+ version('2.4.1', sha256='c14f0f58d1792d84d62c62b44ebb94db004776feba83fd8186bba898d55123cf', deprecated=True)
+ version('2.4.0', sha256='5ee2f34a277ed058b8aef750d946b40d4cf781023b9adab03ca95e803a39fb06', deprecated=True)
+ version('2.3.0', sha256='dd07702981d586e4b97b0fa56ae08cd08a631a952322a9b52e7622a46a7741ab', deprecated=True)
+ version('2.2.1', sha256='9e64ba19d567bdf4d0cc42b435491c4363b5fec90170d034445a99a1e752b691', deprecated=True)
+ version('2.2.0', sha256='3bdafe2007ff54c4734e0c8bc6ba9dc97028d4c41d538201b9582a869af8ae1a', deprecated=True)
+ version('2.1.2', sha256='40a20c1ee186326e5bfd906e0bc88f16dc740551be9cc274e9a826873d9c1eed', deprecated=True)
+ version('2.1.1', sha256='eefa936de6f6c34a6bab39899841f3189d7621c8ba227032f0f32e6e20dfcf85', deprecated=True)
+ version('2.1.0', sha256='58a1ca7b5a47719933782c050e67d0eb3823a7384cfc3c434fece41724c307e6', deprecated=True)
+ version('2.0.0', sha256='038f81f92fbba001ed23b56c1229a4f3b41e0c32e00bc92ea58d042909e3855a', deprecated=True)
+ version('1.9.0', sha256='55ef552b351328c287194aa99fa2b797e6632dc3fa88dfccd58264602012e044', deprecated=True)
+ version('1.8.3', sha256='aa82742fd4d7c68bfbef1367c4c605e06f9fed479a753db96aa6659407fcc4fd', deprecated=True)
+ version('1.8.2', sha256='56be98d31693253543f3e657c8f8edc7979c89fdb0ede1bdddfb3a9f5d4cfc3a', deprecated=True)
+ version('1.8.1', sha256='7e06d22350bec30220186e796caa93e9bfebd8d771a7efd35673897248437c61', deprecated=True)
+ version('1.8.0', sha256='7b28f9163f74583b1542b87c48f28a3ad1338da6136d8e3ca0aeba21095f5fe0', deprecated=True)
+ version('1.7.0', sha256='180741f590f210474b686d60241ad59e008221751ead21f0950c59aff93e54fd', deprecated=True)
+ version('1.6.0', sha256='1affd9e779f48477402e4150f315b3179204cbbc920db2d0129cd9c38bd18b26', deprecated=True)
+ version('1.5.1', sha256='9f24e9824286d5b0302c7e440f4803a8e3b8da50e1260e78c3b3c2eb587b317a', deprecated=True)
+ version('1.5.0', sha256='b7fe63e8caacc5c038ab567fe505d275288eedaa1aed6c379057629eef126006', deprecated=True)
+ version('1.4.0', sha256='067c94659bb7859904e20e72a676f94f103e6e012b7dba8071f51e8a6e624dbb', deprecated=True)
+ version('1.3.0', sha256='5ce41c8492c2fcf809a7135bf8335a01a98ea85fb556b3d00bd4260151efd12f', deprecated=True)
+ version('1.2.1', sha256='2d0380b819f778d8d9c2a462af90bd6a6188121e4edcc6202d936130b59bab17', deprecated=True)
+ version('1.2.0', sha256='ff5869f6dc9465f429e54686e12c39becac57a83273542179a59bac7561b6404', deprecated=True)
+ version('1.1.3', sha256='4be3cd9e6f808cdc5511991be2756f5fa838b6ecd01806fdbe7aec0aa382f946', deprecated=True)
+ version('1.1.2', sha256='a15b5d3339481446dec1b719d7d531a87a2e9d11c9fe8044e270ea69611b07c8', deprecated=True)
+ version('1.1.1', sha256='bd87fefee6bb8368216755342dc80ab3f8f3c813732dd03c6f94135d45f7036b', deprecated=True)
+
+ variant('hepmc', default='2', values=('2', '3'),
+ description="HepMC version to link against")
+
+ conflicts('hepmc=3', when='@:2.99', msg='HepMC support was added in 3.0')
# According to A. Buckley (main Rivet developer):
# "typically a given Rivet version will work with
@@ -89,18 +97,21 @@ class Rivet(AutotoolsPackage):
depends_on('yoda@1.8.0', when='@3.1.0')
depends_on('yoda@1.8.2', when='@3.1.1')
depends_on('yoda@1.8.3', when='@3.1.2')
+ depends_on('yoda@1.8.5', when='@3.1.3')
# The following versions were not a part of LCG stack
# and thus the exact version of YODA is unknown
- depends_on('yoda@1.7.0:1.7.999', when='@2.6.0,2.7.0,2.7.1,3.0.0,3.0.2,3.1.0')
+ depends_on('yoda@1.7.0:1.7.999', when='@2.6.0,2.7.0,2.7.1,3.0.0,3.0.2')
depends_on('yoda@1.5.0:1.5.999', when='@2.4.1')
- depends_on('hepmc', type=('build', 'run'))
- depends_on('boost', when='@:2.5.0,3:', type=('build', 'run'))
+ depends_on('hepmc', type=('build', 'run'), when='hepmc=2')
+ depends_on('hepmc3', type=('build', 'run'), when='hepmc=3')
+ depends_on('boost', when='@:2.5.0', type=('build', 'run'))
depends_on('fastjet', type=('build', 'run'))
depends_on('fjcontrib', type=('build', 'run'), when='@3.0.0:')
- depends_on('gsl', type=('build', 'run'), when='@:2.6.0,2.6.2:')
+ depends_on('gsl', type=('build', 'run'), when='@:2.6.0,2.6.2:2.99.99')
depends_on('python', type=('build', 'run'))
+ depends_on('py-cython@0.24.0:', type='build')
depends_on('swig', type=('build', 'run'))
depends_on('yaml-cpp', when='@2.0.0:2.1.2', type=('build', 'run'))
@@ -141,30 +152,44 @@ class Rivet(AutotoolsPackage):
def setup_build_environment(self, env):
# this avoids an "import site" error in the build
env.unset('PYTHONHOME')
+ fjcontrib_home = self.spec['fjcontrib'].prefix
+ env.prepend_path('LD_LIBRARY_PATH', fjcontrib_home.lib)
+
+ def flag_handler(self, name, flags):
+ if self.spec.satisfies('@3.1.2:') and name == 'cxxflags':
+ flags.append('-faligned-new')
+ return (None, None, flags)
+ return (flags, None, None)
def configure_args(self):
args = []
- args += ['--with-hepmc=' + self.spec['hepmc'].prefix]
+ if self.spec.variants['hepmc'].value == '2':
+ args += ['--with-hepmc=' + self.spec['hepmc'].prefix]
+ else:
+ args += ['--with-hepmc3=' + self.spec['hepmc'].prefix]
if self.spec.satisfies('@:1.999.999'):
args += ['--with-boost-incpath=' + self.spec['boost'].includes]
else:
- if self.spec.satisfies('@:2.5.0,3:'):
+ if self.spec.satisfies('@:2.5.0'):
args += ['--with-boost=' + self.spec['boost'].prefix]
args += ['--with-fastjet=' + self.spec['fastjet'].prefix]
if self.spec.satisfies('@2:'):
args += ['--with-yoda=' + self.spec['yoda'].prefix]
- if self.spec.satisfies('@:2.6.0,2.6.2:'):
+ if self.spec.satisfies('@:2.6.0,2.6.2:2.99.99'):
args += ['--with-gsl=' + self.spec['gsl'].prefix]
if self.spec.satisfies('@3.0.0:'):
args += ['--with-fjcontrib=' + self.spec['fjcontrib'].prefix]
- args += ['--disable-pdfmanual', '--enable-unvalidated']
+ if self.spec.satisfies('@:2.5.1'):
+ args += ['--enable-unvalidated']
- if self.spec.satisfies('@2:'):
+ if self.spec.satisfies('@2:2.4.99'):
args += ['--enable-stdcxx11']
+ args += ['--disable-pdfmanual']
+
return args
diff --git a/var/spack/repos/builtin/packages/rlwrap/package.py b/var/spack/repos/builtin/packages/rlwrap/package.py
index a3d0e4c41a..1a5e6ce1f7 100644
--- a/var/spack/repos/builtin/packages/rlwrap/package.py
+++ b/var/spack/repos/builtin/packages/rlwrap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rmats/package.py b/var/spack/repos/builtin/packages/rmats/package.py
index 0563c5ddfd..48d7d79bd7 100644
--- a/var/spack/repos/builtin/packages/rmats/package.py
+++ b/var/spack/repos/builtin/packages/rmats/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rmlab/package.py b/var/spack/repos/builtin/packages/rmlab/package.py
index 21e96c51c4..58ed4f4a3f 100644
--- a/var/spack/repos/builtin/packages/rmlab/package.py
+++ b/var/spack/repos/builtin/packages/rmlab/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,10 +29,7 @@ class Rmlab(CMakePackage):
depends_on('pngwriter@0.6.0:', when='+png')
def cmake_args(self):
- spec = self.spec
-
args = [
- '-DRmlab_USE_PNG={0}'.format(
- 'ON' if '+png' in spec else 'OFF')
+ self.define_from_variant('Rmlab_USE_PNG', 'png')
]
return args
diff --git a/var/spack/repos/builtin/packages/rna-seqc/package.py b/var/spack/repos/builtin/packages/rna-seqc/package.py
index 0f357ae0c0..96c7b240b3 100644
--- a/var/spack/repos/builtin/packages/rna-seqc/package.py
+++ b/var/spack/repos/builtin/packages/rna-seqc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rnaquast/package.py b/var/spack/repos/builtin/packages/rnaquast/package.py
new file mode 100644
index 0000000000..8ffc85a26c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rnaquast/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import os
+from spack import *
+
+
+class Rnaquast(Package):
+ """Quality assessment of de novo transcriptome assemblies from RNA-Seq data
+
+ rnaQUAST is a tool for evaluating RNA-Seq assemblies using reference genome
+ and gene database. In addition, rnaQUAST is also capable of estimating gene
+ database coverage by raw reads and de novo quality assessment
+ using third-party software."""
+
+ homepage = "https://github.com/ablab/rnaquast"
+ url = "https://github.com/ablab/rnaquast/archive/refs/tags/v2.2.0.tar.gz"
+
+ maintainers = ['dorton21']
+
+ version('2.2.0', sha256='117dff9d9c382ba74b7b0ff24bc7b95b9ca6aa701ebf8afd22943aa54e382334')
+
+ depends_on('python@2.5:', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-joblib', type=('build', 'run'))
+ depends_on('py-gffutils', type=('build', 'run'))
+ depends_on('gmap-gsnap', type=('build', 'run'))
+ depends_on('blast-plus', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ install_tree('.', prefix.bin)
+ os.rename('%s/rnaQUAST.py' % prefix.bin, '%s/rnaQUAST' % prefix.bin)
+
+ def setup_run_environment(self, env):
+ env.prepend_path('PATH', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/rnaz/package.py b/var/spack/repos/builtin/packages/rnaz/package.py
index 89679aa4ef..fc52e583c6 100644
--- a/var/spack/repos/builtin/packages/rnaz/package.py
+++ b/var/spack/repos/builtin/packages/rnaz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rng-tools/package.py b/var/spack/repos/builtin/packages/rng-tools/package.py
index c2a3a41bf3..f0a8726f9e 100644
--- a/var/spack/repos/builtin/packages/rng-tools/package.py
+++ b/var/spack/repos/builtin/packages/rng-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rngstreams/package.py b/var/spack/repos/builtin/packages/rngstreams/package.py
index 4c6483d30e..45a8ab04b4 100644
--- a/var/spack/repos/builtin/packages/rngstreams/package.py
+++ b/var/spack/repos/builtin/packages/rngstreams/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rocalution/package.py b/var/spack/repos/builtin/packages/rocalution/package.py
index 93b729c7c5..01b0b2d25e 100644
--- a/var/spack/repos/builtin/packages/rocalution/package.py
+++ b/var/spack/repos/builtin/packages/rocalution/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,16 +16,23 @@ class Rocalution(CMakePackage):
other scientific software packages."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocALUTION"
- url = "https://github.com/ROCmSoftwarePlatform/rocALUTION/archive/rocm-3.7.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/rocALUTION.git"
+ url = "https://github.com/ROCmSoftwarePlatform/rocALUTION/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='0424adf522ded41de5b77666e04464a25c73c92e34025762f30837f90a797445')
+ version('4.1.0', sha256='3f61be18a02dff0c152a0ad7eb4779c43dd744b0ba172aa6a4267fc596d582e4')
+ version('4.0.0', sha256='80a224a5c19dea290e6edc0e170c3dff2e726c2b3105d599ec6858cc66f076a9')
+ version('3.10.0', sha256='c24cb9d1a8a1a3118040b8b16dec7c06268bcf157424d3378256cc9eb93f1b58')
+ version('3.9.0', sha256='1ce36801fe1d44f743b46b43345c0cd90d76b73911b2ec97be763f93a35396fb')
version('3.8.0', sha256='39e64a29e75c4276163a93596436064c6338770ca72ce7f43711ed8285ed2de5')
version('3.7.0', sha256='4d6b20aaaac3bafb7ec084d684417bf578349203b0f9f54168f669e3ec5699f8')
version('3.5.0', sha256='be2f78c10c100d7fd9df5dd2403a44700219c2cbabaacf2ea50a6e2241df7bfe')
depends_on('cmake@3.5:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, when='@' + ver)
depends_on('rocblas@' + ver, type='link', when='@' + ver)
depends_on('rocprim@' + ver, type='link', when='@' + ver)
@@ -34,11 +41,27 @@ class Rocalution(CMakePackage):
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
+ for ver in ['3.9.0', '3.10.0', '4.0.0', '4.1.0', '4.2.0']:
+ depends_on('rocrand@' + ver, type='link', when='@' + ver)
+
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
+
patch('0001-fix-hip-build-error.patch')
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
+ def patch(self):
+ if '@3.9.0:' in self.spec:
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+
+ with working_dir('src/base/hip'):
+ match = '^#include <rocrand/rocrand.hpp>'
+ substitute = "#include <rocrand.hpp>"
+ files = ['hip_rand_normal.hpp', 'hip_rand_uniform.hpp']
+ filter_file(match, substitute, *files, **kwargs)
+
def cmake_args(self):
args = [
'-DSUPPORT_HIP=ON',
diff --git a/var/spack/repos/builtin/packages/rocblas/package.py b/var/spack/repos/builtin/packages/rocblas/package.py
index 66c63ce9ab..ae40d952fd 100644
--- a/var/spack/repos/builtin/packages/rocblas/package.py
+++ b/var/spack/repos/builtin/packages/rocblas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,15 @@ class Rocblas(CMakePackage):
"""Radeon Open Compute BLAS library"""
homepage = "https://github.com/ROCmSoftwarePlatform/rocBLAS/"
- url = "https://github.com/ROCmSoftwarePlatform/rocBLAS/archive/rocm-3.5.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/rocBLAS.git"
+ url = "https://github.com/ROCmSoftwarePlatform/rocBLAS/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='547f6d5d38a41786839f01c5bfa46ffe9937b389193a8891f251e276a1a47fb0')
+ version('4.1.0', sha256='8be20c722bab169bc4badd79a9eab9a1aa338e0e5ff58ad85ba6bf09e8ac60f4')
+ version('4.0.0', sha256='78e37a7597b581d90a29e4b956fa65d0f8d1c8fb51667906b5fe2a223338d401')
+ version('3.10.0', sha256='9bfd0cf99662192b1ac105ab387531cfa9338ae615db80ed690c6a14d987e0e8')
version('3.9.0', sha256='3ecd2d9fd2be0e1697a191d143a2d447b53a91ae01afb50231d591136ad5e2fe')
version('3.8.0', sha256='568a9da0360349b1b134d74cc67cbb69b43c06eeca7c33b50072cd26cd3d8900')
version('3.7.0', sha256='9425db5f8e8b6f7fb172d09e2a360025b63a4e54414607709efc5acb28819642')
@@ -26,15 +31,20 @@ class Rocblas(CMakePackage):
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('hip@' + ver, when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
# used in Tensile
- depends_on('rocm-smi@' + ver, type='build', when='@' + ver)
depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0']:
+ depends_on('rocm-smi@' + ver, type='build', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
+
# This is the default library format since 3.7.0
depends_on('msgpack-c@3:', when='@3.7:')
@@ -65,6 +75,25 @@ class Rocblas(CMakePackage):
commit='b68edc65aaeed08c71b2b8622f69f83498b57d7a',
when='@3.9.0')
+ resource(name='Tensile',
+ git='https://github.com/ROCmSoftwarePlatform/Tensile.git',
+ commit='ab44bf46b609b5a40053f310bef2ab7511f726ae',
+ when='@3.10.0')
+
+ resource(name='Tensile',
+ git='https://github.com/ROCmSoftwarePlatform/Tensile.git',
+ commit='ab44bf46b609b5a40053f310bef2ab7511f726ae',
+ when='@4.0.0')
+
+ resource(name='Tensile',
+ git='https://github.com/ROCmSoftwarePlatform/Tensile.git',
+ commit='d175277084d3253401583aa030aba121e8875bfd',
+ when='@4.1.0')
+ resource(name='Tensile',
+ git='https://github.com/ROCmSoftwarePlatform/Tensile.git',
+ commit='3438af228dc812768b20a068b0285122f327fa5b',
+ when='@4.2.0')
+
# Status: https://github.com/ROCmSoftwarePlatform/Tensile/commit/a488f7dadba34f84b9658ba92ce9ec5a0615a087
# Not yet landed in 3.7.0, nor 3.8.0.
patch('0001-Fix-compilation-error-with-StringRef-to-basic-string.patch', when='@:3.8')
@@ -86,7 +115,6 @@ class Rocblas(CMakePackage):
'-DBUILD_WITH_TENSILE=ON',
'-DTensile_TEST_LOCAL_PATH={0}'.format(tensile),
'-DTensile_COMPILER=hipcc',
- '-DTensile_ARCHITECTURE={0}'.format(arch),
'-DTensile_LOGIC=asm_full',
'-DTensile_CODE_OBJECT_VERSION=V3',
'-DBUILD_WITH_TENSILE_HOST={0}'.format(
@@ -97,4 +125,9 @@ class Rocblas(CMakePackage):
if '@3.7.0:' in self.spec:
args.append('-DTensile_LIBRARY_FORMAT=msgpack')
+ if self.spec.satisfies('@4.1.0:'):
+ if arch == 'gfx906' or arch == 'gfx908':
+ arch = arch + ':xnack-'
+ args.append('-DTensile_ARCHITECTURE={0}'.format(arch))
+
return args
diff --git a/var/spack/repos/builtin/packages/rocfft/package.py b/var/spack/repos/builtin/packages/rocfft/package.py
index c43aaa2c1a..955cc2b501 100644
--- a/var/spack/repos/builtin/packages/rocfft/package.py
+++ b/var/spack/repos/builtin/packages/rocfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,39 +11,60 @@ class Rocfft(CMakePackage):
"""Radeon Open Compute FFT library"""
homepage = "https://github.com/ROCmSoftwarePlatform/rocFFT/"
- url = "https://github.com/ROCmSoftwarePlatform/rocfft/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/rocFFT.git"
+ url = "https://github.com/ROCmSoftwarePlatform/rocfft/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='db29c9067f0cfa98bddd3574f6aa7200cfc790cc6da352d19e4696c3f3982163')
+ version('4.1.0', sha256='df23fcb05aae72557461ae3687be7e3b8b78be4132daf1aa9dc07339f4eba0cc')
+ version('4.0.0', sha256='d1d10d270f822e0bab64307313ef163ba449b058bf3352962bbb26d4f4db89d0')
+ version('3.10.0', sha256='9f57226aac7d9a0515e14a5a5b08a85e727de72b3f9c2177daf56749ac2c76ae')
version('3.9.0', sha256='9c9c0b7f09bab17250f5101d1605e7a61218eae828a3eb8fe048d607181294ce')
version('3.8.0', sha256='ed23009796e2ee7c43dcc24527f2d6b1d7a73dceac06c30384460098d2fe1556')
version('3.7.0', sha256='94462e4bd19c2c749fcf6903adbee66d4d3bd345c0246861ff8f40b9d08a6ead')
version('3.5.0', sha256='629f02cfecb7de5ad2517b6a8aac6ed4de60d3a9c620413c4d9db46081ac2c88')
amdgpu_targets = (
- 'gfx701', 'gfx801', 'gfx802', 'gfx803',
+ 'none', 'gfx701', 'gfx801', 'gfx802', 'gfx803',
'gfx900', 'gfx906', 'gfx908', 'gfx1010',
'gfx1011', 'gfx1012'
)
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
variant('amdgpu_target', default='gfx701', multi=True, values=amdgpu_targets)
+ variant('amdgpu_target_sram_ecc', default='none', multi=True, values=amdgpu_targets)
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('hip@' + ver, when='@' + ver)
depends_on('comgr@' + ver, type=('build', 'link'), when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, when='@' + ver)
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
def cmake_args(self):
- archs = ",".join(self.spec.variants['amdgpu_target'].value)
+ args = []
+
+ tgt = self.spec.variants['amdgpu_target'].value
+
+ if tgt[0] != 'none':
+ if '@:3.8.0' in self.spec:
+ args.append(self.define('CMAKE_CXX_FLAGS',
+ '--amdgpu-target={0}'.format(",".join(tgt))))
+ else:
+ args.append(self.define('AMDGPU_TARGETS', ";".join(tgt)))
+
+ # From version 3.9 and above we have AMDGPU_TARGETS_SRAM_ECC
+ tgt_sram = self.spec.variants['amdgpu_target_sram_ecc'].value
+
+ if tgt_sram[0] != 'none' and '@3.9.0:' in self.spec:
+ args.append(self.define('AMDGPU_TARGETS_SRAM_ECC', ";".join(tgt_sram)))
- args = [
- '-DCMAKE_CXX_FLAGS=--amdgpu-target={0}'.format(archs),
- ]
return args
diff --git a/var/spack/repos/builtin/packages/rocketmq/package.py b/var/spack/repos/builtin/packages/rocketmq/package.py
index b3630b06ea..1d1aebe41c 100644
--- a/var/spack/repos/builtin/packages/rocketmq/package.py
+++ b/var/spack/repos/builtin/packages/rocketmq/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rocksdb/package.py b/var/spack/repos/builtin/packages/rocksdb/package.py
index a31a9af5cc..0a4c3a3879 100644
--- a/var/spack/repos/builtin/packages/rocksdb/package.py
+++ b/var/spack/repos/builtin/packages/rocksdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,8 @@ class Rocksdb(MakefilePackage):
git = 'https://github.com/facebook/rocksdb.git'
version('master', git=git, branch='master', submodules=True)
+ version('6.20.3', sha256='c6502c7aae641b7e20fafa6c2b92273d935d2b7b2707135ebd9a67b092169dca')
+ version('6.19.3', sha256='5c19ffefea2bbe4c275d0c60194220865f508f371c64f42e802b4a85f065af5b')
version('6.11.4', sha256='6793ef000a933af4a834b59b0cd45d3a03a3aac452a68ae669fb916ddd270532')
version('6.7.3', sha256='c4d1397b58e4801b5fd7c3dd9175e6ae84541119cbebb739fe17d998f1829e81')
version('6.5.3', sha256='6dc023a11d61d00c8391bd44f26ba7db06c44be228c10b552edc84e02d7fbde2')
@@ -39,6 +41,9 @@ class Rocksdb(MakefilePackage):
depends_on('zstd', when='+zstd')
depends_on('tbb', when='+tbb')
+ # https://github.com/facebook/rocksdb/issues/8286
+ patch('pkg-config.patch', when='@6.13.2:')
+
conflicts('~shared~static', msg='have to build one type of library')
phases = ['install']
@@ -88,16 +93,28 @@ class Rocksdb(MakefilePackage):
env['CFLAGS'] = ' '.join(cflags)
env['PLATFORM_FLAGS'] = ' '.join(ldflags)
- env['INSTALL_PATH'] = self.spec.prefix
+
+ if self.spec.satisfies('@6.13.2:'):
+ env['PREFIX'] = self.spec.prefix
+ else:
+ env['INSTALL_PATH'] = self.spec.prefix
if '+static' in spec:
make('install-static')
+ # We need to clean before building the shared library, otherwise
+ # we might end up with errors regarding missing -fPIC.
+ if '+static+shared' in spec:
+ make('clean')
+
if '+shared' in spec:
make('install-shared')
@run_after('install')
def install_pkgconfig(self):
+ if self.spec.satisfies('@6.13.2:'):
+ return
+
libdir = self.spec['rocksdb'].libs.directories[0]
pkg_path = join_path(libdir, 'pkgconfig')
mkdirp(pkg_path)
diff --git a/var/spack/repos/builtin/packages/rocksdb/pkg-config.patch b/var/spack/repos/builtin/packages/rocksdb/pkg-config.patch
new file mode 100644
index 0000000000..8266f73060
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rocksdb/pkg-config.patch
@@ -0,0 +1,14 @@
+--- a/Makefile
++++ b/Makefile
+@@ -1917,9 +1917,9 @@ gen-pc:
+ -echo 'Name: rocksdb' >> rocksdb.pc
+ -echo 'Description: An embeddable persistent key-value store for fast storage' >> rocksdb.pc
+ -echo Version: $(shell ./build_tools/version.sh full) >> rocksdb.pc
+- -echo 'Libs: -L$${libdir} $(EXEC_LDFLAGS) -lrocksdb' >> rocksdb.pc
++ -echo 'Libs: -L$${libdir} $(subst ','\'',$(EXEC_LDFLAGS)) -lrocksdb' >> rocksdb.pc
+ -echo 'Libs.private: $(PLATFORM_LDFLAGS)' >> rocksdb.pc
+- -echo 'Cflags: -I$${includedir} $(PLATFORM_CXXFLAGS)' >> rocksdb.pc
++ -echo 'Cflags: -I$${includedir}' >> rocksdb.pc
+
+ #-------------------------------------------------
+
diff --git a/var/spack/repos/builtin/packages/rockstar/package.py b/var/spack/repos/builtin/packages/rockstar/package.py
index 80d9138f5f..fe25487d68 100644
--- a/var/spack/repos/builtin/packages/rockstar/package.py
+++ b/var/spack/repos/builtin/packages/rockstar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py b/var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py
index 26a30322bc..0d6bc5f2e7 100644
--- a/var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py
+++ b/var/spack/repos/builtin/packages/rocm-bandwidth-test/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,17 @@ class RocmBandwidthTest(CMakePackage):
"""Test to measure PciE bandwidth on ROCm platforms"""
homepage = "https://github.com/RadeonOpenCompute/rocm_bandwidth_test"
- url = "https://github.com/RadeonOpenCompute/rocm_bandwidth_test/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/rocm_bandwidth_test.git"
+ url = "https://github.com/RadeonOpenCompute/rocm_bandwidth_test/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='master')
+
+ version('4.2.0', sha256='d268365e3bb8031c1201c05e705074d1fd794d236843f80064855cf31e4412f5')
+ version('4.1.0', sha256='4e34b60a7e4090d6475f0cdd86594b1b9a7b85d4e343999b9e148e196f0c2f4c')
+ version('4.0.0', sha256='bde2aa743979eac195dd13ec8d0fcb7da183fff489da32c28b872eed7f6681b3')
+ version('3.10.0', sha256='ad1dedad9023ccb050082c866fa5131665d9c3b50de0b78e4618730c29a07773')
version('3.9.0', sha256='f366299b48a29b419febb2ba398d1abe4cd01425d33254777e426966b722d3b1')
version('3.8.0', sha256='7de71a2ba17bbeea9107f2e9e65729f507234d6cbbb44f251240d64683027497')
version('3.7.0', sha256='9aa1d4b7b01ee4d443effc76ed5f6f43a051fd815692b59dfccf0ecbfeaeed03')
@@ -24,7 +31,8 @@ class RocmBandwidthTest(CMakePackage):
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/rocm-clang-ocl/package.py b/var/spack/repos/builtin/packages/rocm-clang-ocl/package.py
index f9fcb06444..702dbdfa89 100644
--- a/var/spack/repos/builtin/packages/rocm-clang-ocl/package.py
+++ b/var/spack/repos/builtin/packages/rocm-clang-ocl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,16 @@ class RocmClangOcl(CMakePackage):
""" OpenCL compilation with clang compiler """
homepage = "https://github.com/RadeonOpenCompute/clang-ocl"
- url = "https://github.com/RadeonOpenCompute/clang-ocl/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/clang-ocl.git"
+ url = "https://github.com/RadeonOpenCompute/clang-ocl/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='master')
+ version('4.2.0', sha256='702796f4e31f6119173d915db9bee13c060a75d9eb5b1f8e3d20779d6702dfdc')
+ version('4.1.0', sha256='c6e65da5541df9ee940caeeffe1b87c92547edc1770538fd2010c9c998a593b5')
+ version('4.0.0', sha256='c8f9091396ee0096f6d7c1cd13d80532c424e838bec1e4cebf903ebaf649e82e')
+ version('3.10.0', sha256='17fc8fb8c38b18f9f0cac339dda6cea3e9e66805f7a92ec2456072fc1e72fa85')
version('3.9.0', sha256='3d63c7ac259ba8b0bfd5e4a94df1490c2b6cbac4d43dc7bbc210a536251268fe')
version('3.8.0', sha256='a829aa2efb6e3bc00d8a08a96404f937f3c8adf3b4922b5ac35050d6e08b912d')
version('3.7.0', sha256='9c00c7e7dd3ac8326ae6772a43866b44ae049d5960ea6993d14a2370db74d326')
@@ -23,8 +29,11 @@ class RocmClangOcl(CMakePackage):
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
- for ver in ['3.7.0', '3.8.0', '3.9.0']:
+
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/rocm-cmake/package.py b/var/spack/repos/builtin/packages/rocm-cmake/package.py
index 86593f4b5d..4b8657a064 100644
--- a/var/spack/repos/builtin/packages/rocm-cmake/package.py
+++ b/var/spack/repos/builtin/packages/rocm-cmake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,18 +12,27 @@ class RocmCmake(CMakePackage):
needed for the ROCM software stack"""
homepage = "https://github.com/RadeonOpenCompute/rocm-cmake"
- url = "https://github.com/RadeonOpenCompute/rocm-cmake/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/rocm-cmake.git"
+ url = "https://github.com/RadeonOpenCompute/rocm-cmake/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='master')
+ version('4.2.0', sha256='299e190ec3d38c2279d9aec762469628f0b2b1867adc082edc5708d1ac785c3b')
+ version('4.1.0', sha256='a4521d119fa07954e529d5e717ad1b338992c0694690dbce00fee26c01129c8c')
+ version('4.0.0', sha256='4577487acaa6e041a1316145867584f31caaf0d4aa2dd8fd7f82f81c269cada6')
+ version('3.10.0', sha256='751be4484efdcf0d5fa675480db6e2cddab897de4708c7c7b9fa7adb430b52d7')
version('3.9.0', sha256='e0a8db85bb55acb549f360eb9b04f55104aa93e4c3db33f9ba11d9adae2a07eb')
version('3.8.0', sha256='9e4be93c76631224eb49b2fa30b0d14c1b3311a6519c8b393da96ac0649d9f30')
version('3.7.0', sha256='51abfb06124c2e0677c4d6f7fe83c22fe855cb21386f0053ace09f8ab297058b')
version('3.5.0', sha256='5fc09e168879823160f5fdf4fd1ace2702d36545bf733e8005ed4ca18c3e910f')
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
+ variant('ldconfig', default=True, description='ROCm ldconfig')
depends_on('cmake@3:', type='build')
def cmake_args(self):
- return ['-DROCM_DISABLE_LDCONFIG=ON']
+ return [
+ self.define_from_variant('ROCM_DISABLE_LDCONFIG', 'ldconfig')
+ ]
diff --git a/var/spack/repos/builtin/packages/rocm-dbgapi/package.py b/var/spack/repos/builtin/packages/rocm-dbgapi/package.py
index a4d06d612a..72d29f517d 100644
--- a/var/spack/repos/builtin/packages/rocm-dbgapi/package.py
+++ b/var/spack/repos/builtin/packages/rocm-dbgapi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,10 +14,17 @@ class RocmDbgapi(CMakePackage):
AMD's commercially available GPU architectures."""
homepage = "https://github.com/ROCm-Developer-Tools/ROCdbgapi"
- url = "https://github.com/ROCm-Developer-Tools/ROCdbgapi/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCm-Developer-Tools/ROCdbgapi.git"
+ url = "https://github.com/ROCm-Developer-Tools/ROCdbgapi/archive/rocm-4.1.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='amd-master')
+
+ version('4.2.0', sha256='fcdee5aaf5ed40c0377ce007a2947da9e718eeee86ca3e13192ff9e96a1b7373')
+ version('4.1.0', sha256='d04fd9b2005691313547c4134b027b56b0ec6089f67d3bccbdb8fb1c92cde9bd')
+ version('4.0.0', sha256='e87f31b3a22861397eb62d8363dd1e153596097ccfe68c6eefc1a83a2432ae18')
+ version('3.10.0', sha256='89a8d352d59e4c0dc13160b1bf1f4bc3bfec5af544050030aa619b1ff88f1850')
version('3.9.0', sha256='d1553f89d2b0419304ea82ed2b97abdc323c2fed183f0e119da1a72416a48136')
version('3.8.0', sha256='760ff77c6578f3548f367a8bd3dda8680b7519f6b20216755105b87785d1e3f8')
version('3.7.0', sha256='bdeaf81ea8a0ac861a697e435c72cbe767c291638be43f0d09116ad605dfee4f')
@@ -25,7 +32,8 @@ class RocmDbgapi(CMakePackage):
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type=('build', 'link'), when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/rocm-debug-agent/package.py b/var/spack/repos/builtin/packages/rocm-debug-agent/package.py
index 07fbab2397..2cba38cc9d 100644
--- a/var/spack/repos/builtin/packages/rocm-debug-agent/package.py
+++ b/var/spack/repos/builtin/packages/rocm-debug-agent/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,15 @@ class RocmDebugAgent(CMakePackage):
"""Radeon Open Compute (ROCm) debug agent"""
homepage = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent"
- url = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent.git"
+ url = "https://github.com/ROCm-Developer-Tools/rocr_debug_agent/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='ce02a5b752291882daa0a2befa23944e59087ce9fe65a91061476c3c399e4a0c')
+ version('4.1.0', sha256='b1ae874887e5ee037070f1dd46b145ad02ec9fd8a724c6b6ae194b534f01acdb')
+ version('4.0.0', sha256='a9e64834d56a9221c242e71aa110c2cef0087aa8f86f50428dd618e5e623cc3c')
+ version('3.10.0', sha256='675b8d3cc4aecc4428a93553abf664bbe6a2cb153f1f480e6cadeeb4d24ef4b1')
version('3.9.0', sha256='3e56bf8b2b53d9102e8709b6259deea52257dc6210df16996b71a7d677952b1b')
version('3.8.0', sha256='55243331ac4b0d90e88882eb29fd06fad354e278f8a34ac7f0680b2c895ca2ac')
version('3.7.0', sha256='d0f442a2b224a734b0080c906f0fc3066a698e5cde9ff97ffeb485b36d2caba1')
@@ -34,12 +39,14 @@ class RocmDebugAgent(CMakePackage):
depends_on('cmake@3:', type='build')
depends_on("elfutils", type='link')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
depends_on('hsakmt-roct@' + ver, type='link', when='@' + ver)
- if ver in ['3.7.0', '3.8.0', '3.9.0']:
- depends_on('rocm-dbgapi@' + ver, type='link', when='@' + ver)
- depends_on('hip@' + ver, when='@' + ver)
+
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0', '4.2.0']:
+ depends_on('rocm-dbgapi@' + ver, type='link', when='@' + ver)
+ depends_on('hip@' + ver, when='@' + ver)
# https://github.com/ROCm-Developer-Tools/rocr_debug_agent/pull/4
patch('0001-Drop-overly-strict-Werror-flag.patch', when='@3.7.0:')
diff --git a/var/spack/repos/builtin/packages/rocm-device-libs/package.py b/var/spack/repos/builtin/packages/rocm-device-libs/package.py
index 17f13b04db..09ba652163 100644
--- a/var/spack/repos/builtin/packages/rocm-device-libs/package.py
+++ b/var/spack/repos/builtin/packages/rocm-device-libs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,16 @@ class RocmDeviceLibs(CMakePackage):
"""set of AMD specific device-side language runtime libraries"""
homepage = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs"
- url = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs.git"
+ url = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='amd-stg-open')
+ version('4.2.0', sha256='34a2ac39b9bb7cfa8175cbab05d30e7f3c06aaffce99eed5f79c616d0f910f5f')
+ version('4.1.0', sha256='f5f5aa6bfbd83ff80a968fa332f80220256447c4ccb71c36f1fbd2b4a8e9fc1b')
+ version('4.0.0', sha256='d0aa495f9b63f6d8cf8ac668f4dc61831d996e9ae3f15280052a37b9d7670d2a')
+ version('3.10.0', sha256='bca9291385d6bdc91a8b39a46f0fd816157d38abb1725ff5222e6a0daa0834cc')
version('3.9.0', sha256='c99f45dacf5967aef9a31e3731011b9c142446d4a12bac69774998976f2576d7')
version('3.8.0', sha256='e82cc9a8eb7d92de02cabb856583e28f17a05c8cf9c97aec5275608ef1a38574')
version('3.7.0', sha256='b3a114180bf184b3b829c356067bc6a98021d52c1c6f9db6bc57272ebafc5f1d')
@@ -25,8 +31,10 @@ class RocmDeviceLibs(CMakePackage):
depends_on('cmake@3:', type='build')
depends_on('zlib', type='link', when='@3.9.0:')
depends_on('texinfo', type='link', when='@3.9.0:')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
- depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
+ depends_on('llvm-amdgpu@' + ver, type=('build', 'link'), when='@' + ver)
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
def cmake_args(self):
diff --git a/var/spack/repos/builtin/packages/rocm-gdb/package.py b/var/spack/repos/builtin/packages/rocm-gdb/package.py
index 4bda8ef75b..970c98d039 100644
--- a/var/spack/repos/builtin/packages/rocm-gdb/package.py
+++ b/var/spack/repos/builtin/packages/rocm-gdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,14 @@ class RocmGdb(AutotoolsPackage):
based on GDB, the GNU source-level debugger."""
homepage = "https://github.com/ROCm-Developer-Tools/ROCgdb/"
- url = "https://github.com/ROCm-Developer-Tools/ROCgdb/archive/rocm-3.9.0.tar.gz"
+ url = "https://github.com/ROCm-Developer-Tools/ROCgdb/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='4bc579584a1f8614111e7e44d8aa1c6d5d06be3f5db055aba2cf1abc140122ac')
+ version('4.1.0', sha256='28dc806e48695d654d52fb1a634df6d4c1243f00846ae90161e7a5e9f4d88b24')
+ version('4.0.0', sha256='b90291b0a8409fe66d8a65d2731dcb87b9f5a22bac9ce3ffbab726eb129ba13d')
+ version('3.10.0', sha256='05455cb47dd42404ee8bba047def6a6846a7e877e7a7db8dcffc7100d5ba16f0')
version('3.9.0', sha256='0765c96439c0efa145418d210d865b9faed463466d7522274959cc4476a37097')
version('3.8.0', sha256='a7c11dc30c952587c616bf7769bad603c3bf80522afc8b73ccda5b78d27bed41')
version('3.7.0', sha256='7a29ef584fd7b6c66bb03aaf8ec2f5a8c758370672a28a4d0d95066e5f6fbdc1')
@@ -24,14 +28,15 @@ class RocmGdb(AutotoolsPackage):
depends_on('cmake@3:', type='build')
depends_on('texinfo', type='build')
depends_on('bison', type='build')
- depends_on('flex', type='build')
+ depends_on('flex@2.6.4:', type='build')
depends_on('libunwind', type='build')
- depends_on('expat', type='build')
- depends_on('python', type='build')
+ depends_on('expat', type=('build', 'link'))
+ depends_on('python', type=('build', 'link'))
depends_on('zlib', type='link')
depends_on('babeltrace@1.2.4', type='link')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('rocm-dbgapi@' + ver, type='link', when='@' + ver)
depends_on('comgr@' + ver, type='link', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/rocm-opencl-runtime/package.py b/var/spack/repos/builtin/packages/rocm-opencl-runtime/package.py
new file mode 100644
index 0000000000..9ee1a57138
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rocm-opencl-runtime/package.py
@@ -0,0 +1,52 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class RocmOpenclRuntime(CMakePackage):
+ """ROCm OpenCL 2.0 compatible language runtime.
+ It Supports offline and in-process/in-memory compilation"""
+
+ homepage = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime"
+ git = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime.git"
+ url = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-4.1.0.tar.gz"
+
+ maintainers = ['srekolam', 'arjun-raj-kuppala']
+
+ version('master', branch='main')
+ version('4.1.0', sha256='0729e6c2adf1e3cf649dc6e679f9cb936f4f423f4954ad9852857c0a53ef799c')
+ version('4.0.0', sha256='d43ea5898c6b9e730b5efabe8367cc136a9260afeac5d0fe85b481d625dd7df1')
+ version('3.10.0', sha256='3aa9dc5a5f570320b04b35ee129ce9ff21062d2770df934c6c307913f975e93d')
+ version('3.9.0', sha256='286ff64304905384ce524cd8794c28aee216befd6c9267d4187a12e5a21e2daf')
+ version('3.8.0', sha256='7f75dd1abf3d771d554b0e7b0a7d915ab5f11a74962c92b013ee044a23c1270a')
+ version('3.7.0', sha256='283e1dfe4c3d2e8af4d677ed3c20e975393cdb0856e3ccd77b9c7ed2a151650b')
+
+ depends_on('cmake@3:', type='build')
+ depends_on('mesa18~llvm@18.3: swr=none', type='link')
+ depends_on('libelf', type='link', when="@3.7.0:3.8.0")
+ depends_on('numactl', type='link', when="@3.7.0:")
+
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0', 'master']:
+ depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver)
+ depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
+ depends_on('comgr@' + ver, type='build', when='@' + ver)
+ depends_on('hip-rocclr@' + ver, type='build', when='@' + ver)
+
+ def flag_handler(self, name, flags):
+ if name == 'cxxflags' and '@3.7.0:' in self.spec:
+ incl = self.spec['hip-rocclr'].prefix.include
+ flags.append('-I {0}/compiler/lib/include'.format(incl))
+ flags.append('-I {0}/elf'.format(incl))
+
+ return (flags, None, None)
+
+ def cmake_args(self):
+ args = [
+ '-DUSE_COMGR_LIBRARY=yes'
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/rocm-opencl/package.py b/var/spack/repos/builtin/packages/rocm-opencl/package.py
index d2112db14c..c8b440926a 100644
--- a/var/spack/repos/builtin/packages/rocm-opencl/package.py
+++ b/var/spack/repos/builtin/packages/rocm-opencl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,6 +10,7 @@ class RocmOpencl(CMakePackage):
"""OpenCL: Open Computing Language on ROCclr"""
homepage = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime"
+ git = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime.git"
maintainers = ['srekolam', 'arjun-raj-kuppala']
@@ -19,17 +20,22 @@ class RocmOpencl(CMakePackage):
url = "https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/rocm-{0}.tar.gz"
return url.format(version)
-
+ version('master', branch='main')
+ version('4.2.0', sha256='18133451948a83055ca5ebfb5ba1bd536ed0bcb611df98829f1251a98a38f730')
+ version('4.1.0', sha256='0729e6c2adf1e3cf649dc6e679f9cb936f4f423f4954ad9852857c0a53ef799c')
+ version('4.0.0', sha256='d43ea5898c6b9e730b5efabe8367cc136a9260afeac5d0fe85b481d625dd7df1')
+ version('3.10.0', sha256='3aa9dc5a5f570320b04b35ee129ce9ff21062d2770df934c6c307913f975e93d')
version('3.9.0', sha256='286ff64304905384ce524cd8794c28aee216befd6c9267d4187a12e5a21e2daf')
version('3.8.0', sha256='7f75dd1abf3d771d554b0e7b0a7d915ab5f11a74962c92b013ee044a23c1270a')
version('3.7.0', sha256='283e1dfe4c3d2e8af4d677ed3c20e975393cdb0856e3ccd77b9c7ed2a151650b')
version('3.5.0', sha256='511b617d5192f2d4893603c1a02402b2ac9556e9806ff09dd2a91d398abf39a0')
depends_on('cmake@3:', type='build')
- depends_on('mesa~llvm@18.3:', type='link')
- depends_on('numactl', type='link', when='@3.7.0')
+ depends_on('mesa18~llvm@18.3:', type='link')
+ depends_on('numactl', type='link', when='@3.7.0:')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('hip-rocclr@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/rocm-openmp-extras/package.py b/var/spack/repos/builtin/packages/rocm-openmp-extras/package.py
new file mode 100644
index 0000000000..774885afe8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rocm-openmp-extras/package.py
@@ -0,0 +1,390 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+import re
+
+tools_url = 'https://github.com/ROCm-Developer-Tools'
+compute_url = 'https://github.com/RadeonOpenCompute'
+
+# Arrays of hashes are in order of the versions array below
+# For example array[0] = 3.9.0, array[1] = 3.10.0, etc.
+
+aomp = [
+ "377ab59b685a73b3f95fba95f5e028678ec5aafabc4177b7f0ffb78da095d679",
+ "808fca9bdefb109d5bcbbc9f5b59c564a6d422488869e986516f2a7233eda235",
+ "aa75455cf1d333419e5310117678e5789c5222f7cb05b05e3dfacef855c55d84",
+ "9e6ed2c7bdc3b4af069751b5d3e92913fd5ac318ae844f68bd78c5def990a8f7"
+]
+
+devlib = [
+ "c99f45dacf5967aef9a31e3731011b9c142446d4a12bac69774998976f2576d7",
+ "bca9291385d6bdc91a8b39a46f0fd816157d38abb1725ff5222e6a0daa0834cc",
+ "d0aa495f9b63f6d8cf8ac668f4dc61831d996e9ae3f15280052a37b9d7670d2a",
+ "f5f5aa6bfbd83ff80a968fa332f80220256447c4ccb71c36f1fbd2b4a8e9fc1b"
+]
+
+llvm = [
+ "1ff14b56d10c2c44d36c3c412b190d3d8cd1bb12cfc7cd58af004c16fd9987d1",
+ "8262aff88c1ff6c4deb4da5a4f8cda1bf90668950e2b911f93f73edaee53b370",
+ "aa1f80f429fded465e86bcfaef72255da1af1c5c52d58a4c979bc2f6c2da5a69",
+ "244e38d824fa7dfa8d0edf3c036b3c84e9c17a16791828e4b745a8d31eb374ae"
+]
+
+flang = [
+ "5d113f44fb173bd0d5704b282c5cebbb2aa642c7c29f188764bfa1daa58374c9",
+ "3990d39ff1c908b150f464f0653a123d94be30802f9cad6af18fbb560c4b412e",
+ "f3e19699ce4ac404f41ffe08ef4546e31e2e741d8deb403b5477659e054275d5",
+ "f41f661425534b5cfb20e2c0efd9d0800609dc3876ee9c3f76f026d36abbfa35"
+]
+
+extras = [
+ "830a37cf1c6700f81fc00749206a37e7cda4d2867bbdf489e9e2d81f52d06b3d",
+ "5d98d34aff97416d8b5b9e16e7cf474580f8de8a73bd0e549c4440a3c5df4ef5",
+ "51cc8a7c5943e1d9bc657fc9b9797f45e3ce6a4e544d3d3a967c7cd0185a0510",
+ "91fdfadb94aa6afc1942124d0953ddc80c297fa75de1897fb42ac8e7dea51ab9"
+]
+
+versions = ['3.9.0', '3.10.0', '4.0.0', '4.1.0']
+versions_dict = dict()
+components = ['aomp', 'devlib', 'llvm', 'flang', 'extras']
+component_hashes = [aomp, devlib, llvm, flang, extras]
+
+# Loop through versions and create necessary dictionaries of components
+for outer_index, item in enumerate(versions):
+ for inner_index, component in enumerate(component_hashes):
+ versions_dict.setdefault(item, {})[components[inner_index]] = \
+ component_hashes[inner_index][outer_index]
+
+
+class RocmOpenmpExtras(Package):
+ """OpenMP support for ROCm LLVM."""
+
+ homepage = tools_url + "/aomp"
+ url = tools_url + "/aomp/archive/rocm-4.1.0.tar.gz"
+
+ maintainers = ['srekolam', 'arjun-raj-kuppala', 'estewart08']
+ version('4.1.0', sha256=versions_dict['4.1.0']['aomp'])
+ version('4.0.0', sha256=versions_dict['4.0.0']['aomp'])
+ version('3.10.0', sha256=versions_dict['3.10.0']['aomp'])
+ version('3.9.0', sha256=versions_dict['3.9.0']['aomp'])
+
+ depends_on('cmake@3:', type='build')
+ depends_on('mesa18~llvm@18.3:', type=('build', 'link'))
+ depends_on('py-setuptools', type='build')
+ depends_on('python@3:', type='build')
+ depends_on('perl-data-dumper', type='build')
+ depends_on('awk', type='build')
+ depends_on('elfutils', type=('build', 'link'))
+ depends_on('libffi', type=('build', 'link'))
+
+ for ver in ['3.9.0', '3.10.0', '4.0.0', '4.1.0']:
+ depends_on('hsakmt-roct@' + ver, type=('build', 'run'), when='@' + ver)
+ depends_on('comgr@' + ver, type='build', when='@' + ver)
+ depends_on('hsa-rocr-dev@' + ver, type=('build', 'run'),
+ when='@' + ver)
+ depends_on('rocm-device-libs@' + ver, type=('build', 'run'),
+ when='@' + ver)
+ depends_on('llvm-amdgpu@' + ver + ' ~openmp', type=('build', 'run'),
+ when='@' + ver)
+
+ # tag changed to 'rocm-' in 4.0.0
+ if ver == '3.9.0' or ver == '3.10.0':
+ tag = 'rocm-uc-'
+ else:
+ tag = 'rocm-'
+
+ resource(
+ name='rocm-device-libs',
+ url=compute_url +
+ '/ROCm-Device-Libs/archive/' + tag + ver + '.tar.gz',
+ sha256=versions_dict[ver]['devlib'],
+ expand=True,
+ destination='rocm-openmp-extras',
+ placement='rocm-device-libs',
+ when='@' + ver)
+
+ resource(
+ name='flang',
+ url=tools_url + '/flang/archive/' + tag + ver + '.tar.gz',
+ sha256=versions_dict[ver]['flang'],
+ expand=True,
+ destination='rocm-openmp-extras',
+ placement='flang',
+ when='@' + ver)
+
+ resource(
+ name='aomp-extras',
+ url=tools_url + '/aomp-extras/archive/' + tag + ver + '.tar.gz',
+ sha256=versions_dict[ver]['extras'],
+ expand=True,
+ destination='rocm-openmp-extras',
+ placement='aomp-extras',
+ when='@' + ver)
+
+ resource(
+ name='llvm-project',
+ url=compute_url + '/llvm-project/archive/rocm-' + ver + '.tar.gz',
+ sha256=versions_dict[ver]['llvm'],
+ expand=True,
+ destination='rocm-openmp-extras',
+ placement='llvm-project',
+ when='@' + ver)
+
+ def setup_run_environment(self, env):
+ devlibs_prefix = self.spec['rocm-device-libs'].prefix
+ openmp_extras_prefix = self.spec['rocm-openmp-extras'].prefix
+ llvm_prefix = self.spec['llvm-amdgpu'].prefix
+ env.set('AOMP', '{0}'.format(llvm_prefix))
+ env.set('HIP_DEVICE_LIB_PATH',
+ '{0}/amdgcn/bitcode'.format(devlibs_prefix))
+ env.prepend_path('CPATH',
+ '{0}/include'.format(openmp_extras_prefix))
+ env.prepend_path('LIBRARY_PATH',
+ '{0}/lib'.format(openmp_extras_prefix))
+ if self.spec.version < Version('4.1.0'):
+ env.set('AOMP_GPU',
+ '`{0}/rocm-bin/mygpu`'.format(openmp_extras_prefix))
+ else:
+ env.set('AOMP_GPU',
+ '`{0}/bin/mygpu`'.format(openmp_extras_prefix))
+
+ def setup_build_environment(self, env):
+ openmp_extras_prefix = self.spec['rocm-openmp-extras'].prefix
+ llvm_prefix = self.spec['llvm-amdgpu'].prefix
+ env.set('AOMP', '{0}'.format(llvm_prefix))
+ env.set('FC', '{0}/bin/flang'.format(openmp_extras_prefix))
+ env.set(
+ 'GFXLIST',
+ 'gfx700 gfx701 gfx801 gfx803 gfx900 gfx902 gfx906 gfx908')
+
+ def patch(self):
+ src = self.stage.source_path
+ flang_warning = '-Wno-incompatible-pointer-types-discards-qualifiers)'
+ aomp_extras = '{0}/rocm-openmp-extras/aomp-extras/aomp-device-libs'
+ libomptarget = \
+ '{0}/rocm-openmp-extras/llvm-project/openmp/libomptarget'
+ flang = '{0}/rocm-openmp-extras/flang/'
+
+ if self.spec.version < Version('4.1.0'):
+ plugin = '/plugins/hsa/CMakeLists.txt'
+ else:
+ # Spack thinks some warnings from the flang build are errors.
+ # Disable those warnings.
+ filter_file('PRIVATE -fPIC)',
+ 'PRIVATE -fPIC PRIVATE ' + flang_warning,
+ flang.format(src) + 'runtime/flang/CMakeLists.txt',
+ string=True)
+ plugin = '/plugins/amdgpu/CMakeLists.txt'
+ filter_file(
+ '{ROCM_DIR}/amdgcn/bitcode', '{DEVICE_LIBS_DIR}',
+ aomp_extras.format(src) + '/aompextras/CMakeLists.txt',
+ aomp_extras.format(src) + '/libm/CMakeLists.txt',
+ libomptarget.format(src) + '/deviceRTLs/amdgcn/CMakeLists.txt')
+
+ # Openmp adjustments
+ filter_file(
+ '-nogpulib', '-nogpulib -nogpuinc',
+ libomptarget.format(src) + '/deviceRTLs/amdgcn/CMakeLists.txt')
+
+ filter_file(
+ '-x hip', '-x hip -nogpulib -nogpuinc',
+ libomptarget.format(src) + '/deviceRTLs/amdgcn/CMakeLists.txt')
+
+ filter_file(
+ '-c ', '-c -nogpulib -nogpuinc -I{LIMIT}',
+ libomptarget.format(src) + '/hostrpc/CMakeLists.txt')
+
+ filter_file(
+ r'${ROCM_DIR}/hsa/include ${ROCM_DIR}/hsa/include/hsa',
+ '${HSA_INCLUDE}/hsa/include ${HSA_INCLUDE}/hsa/include/hsa',
+ libomptarget.format(src) + plugin,
+ string=True)
+
+ filter_file(
+ '{ROCM_DIR}/hsa/lib', '{HSA_LIB}',
+ libomptarget.format(src) + plugin)
+
+ filter_file(
+ r'{ROCM_DIR}/lib\)',
+ '{HSAKMT_LIB})\nset(HSAKMT_LIB64 ${HSAKMT_LIB64})',
+ libomptarget.format(src) + plugin)
+
+ filter_file(
+ r'-L${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS}',
+ '-L${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS} -L${HSAKMT_LIB64}',
+ libomptarget.format(src) + plugin,
+ string=True)
+
+ filter_file(
+ r'-rpath,${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS}',
+ '-rpath,${LIBOMPTARGET_DEP_LIBHSAKMT_LIBRARIES_DIRS}' +
+ ',-rpath,${HSAKMT_LIB64}',
+ libomptarget.format(src) + plugin,
+ string=True)
+
+ filter_file(
+ '{ROCM_DIR}/include', '{COMGR_INCLUDE}',
+ libomptarget.format(src) + plugin)
+
+ filter_file(
+ r'-L${LLVM_LIBDIR}${OPENMP_LIBDIR_SUFFIX}',
+ '-L${LLVM_LIBDIR}${OPENMP_LIBDIR_SUFFIX} -L${COMGR_LIB}',
+ libomptarget.format(src) + plugin,
+ string=True)
+
+ filter_file(
+ r'rpath,${LLVM_LIBDIR}${OPENMP_LIBDIR_SUFFIX}',
+ 'rpath,${LLVM_LIBDIR}${OPENMP_LIBDIR_SUFFIX}' +
+ '-Wl,-rpath,${COMGR_LIB}',
+ libomptarget.format(src) + plugin,
+ string=True)
+
+ filter_file(
+ 'ADDITIONAL_VERSIONS 2.7', 'ADDITIONAL_VERSIONS 3',
+ flang.format(src) + 'CMakeLists.txt')
+
+ def install(self, spec, prefix):
+ src = self.stage.source_path
+ gfx_list = "gfx700;gfx701;gfx801;gfx803;gfx900;gfx902;gfx906;gfx908"
+ openmp_extras_prefix = self.spec['rocm-openmp-extras'].prefix
+ devlibs_prefix = self.spec['rocm-device-libs'].prefix
+ devlibs_src = '{0}/rocm-openmp-extras/rocm-device-libs'.format(src)
+ hsa_prefix = self.spec['hsa-rocr-dev'].prefix
+ hsakmt_prefix = self.spec['hsakmt-roct'].prefix
+ comgr_prefix = self.spec['comgr'].prefix
+ llvm_inc = '/rocm-openmp-extras/llvm-project/llvm/include'
+ llvm_prefix = self.spec['llvm-amdgpu'].prefix
+ omp_bin_dir = '{0}/bin'.format(openmp_extras_prefix)
+ omp_lib_dir = '{0}/lib'.format(openmp_extras_prefix)
+ bin_dir = '{0}/bin'.format(llvm_prefix)
+ lib_dir = '{0}/lib'.format(llvm_prefix)
+
+ # flang1 and flang2 symlink needed for build of flang-runtime
+ # libdevice symlink to rocm-openmp-extras for runtime
+ # libdebug symlink to rocm-openmp-extras for runtime
+ if not (os.path.islink((os.path.join(bin_dir, 'flang1')))):
+ os.symlink(os.path.join(omp_bin_dir, 'flang1'),
+ os.path.join(bin_dir, 'flang1'))
+ if not (os.path.islink((os.path.join(bin_dir, 'flang2')))):
+ os.symlink(os.path.join(omp_bin_dir, 'flang2'),
+ os.path.join(bin_dir, 'flang2'))
+ if not (os.path.islink((os.path.join(lib_dir, 'libdevice')))):
+ os.symlink(os.path.join(omp_lib_dir, 'libdevice'),
+ os.path.join(lib_dir, 'libdevice'))
+ if not (os.path.islink((os.path.join(llvm_prefix, 'lib-debug')))):
+ os.symlink(os.path.join(openmp_extras_prefix, 'lib-debug'),
+ os.path.join(llvm_prefix, 'lib-debug'))
+
+ # Set cmake args
+ components = dict()
+
+ components['aomp-extras'] = [
+ '../rocm-openmp-extras/aomp-extras',
+ '-DLLVM_DIR={0}'.format(llvm_prefix),
+ '-DDEVICE_LIBS_DIR={0}/amdgcn/bitcode'.format(devlibs_prefix),
+ '-DAOMP_STANDALONE_BUILD=0',
+ '-DDEVICELIBS_ROOT={0}'.format(devlibs_src),
+ '-DNEW_BC_PATH=1',
+ '-DAOMP={0}'.format(llvm_prefix)
+ ]
+
+ # Shared cmake configuration for openmp, openmp-debug
+ openmp_common_args = [
+ '-DROCM_DIR={0}'.format(hsa_prefix),
+ '-DDEVICE_LIBS_DIR={0}/amdgcn/bitcode'.format(devlibs_prefix),
+ '-DAOMP_STANDALONE_BUILD=0',
+ '-DDEVICELIBS_ROOT={0}'.format(devlibs_src),
+ '-DOPENMP_TEST_C_COMPILER={0}/clang'.format(bin_dir),
+ '-DOPENMP_TEST_CXX_COMPILER={0}/clang++'.format(bin_dir),
+ '-DLIBOMPTARGET_AMDGCN_GFXLIST={0}'.format(gfx_list),
+ '-DLIBOMP_COPY_EXPORTS=OFF',
+ '-DHSA_LIB={0}/lib'.format(hsa_prefix),
+ '-DHSAKMT_LIB={0}/lib'.format(hsakmt_prefix),
+ '-DHSAKMT_LIB64={0}/lib64'.format(hsakmt_prefix),
+ '-DCOMGR_INCLUDE={0}/include'.format(comgr_prefix),
+ '-DCOMGR_LIB={0}/lib'.format(comgr_prefix),
+ '-DOPENMP_ENABLE_LIBOMPTARGET=1',
+ '-DOPENMP_ENABLE_LIBOMPTARGET_HSA=1',
+ '-DLLVM_MAIN_INCLUDE_DIR={0}{1}'.format(src, llvm_inc),
+ '-DLLVM_INSTALL_PREFIX={0}'.format(llvm_prefix)
+ ]
+
+ if self.spec.version < Version('4.1.0'):
+ openmp_common_args += [
+ '-DHSA_INCLUDE={0}'.format(hsa_prefix)
+ ]
+ else:
+ openmp_common_args += [
+ '-DHSA_INCLUDE={0}/include/hsa'.format(hsa_prefix)
+ ]
+
+ components['openmp'] = ['../rocm-openmp-extras/llvm-project/openmp']
+ components['openmp'] += openmp_common_args
+
+ components['openmp-debug'] = [
+ '../rocm-openmp-extras/llvm-project/openmp',
+ '-DLIBOMPTARGET_NVPTX_DEBUG=ON',
+ '-DCMAKE_CXX_FLAGS=-g',
+ '-DCMAKE_C_FLAGS=-g'
+ ]
+
+ components['openmp-debug'] += openmp_common_args
+
+ # Shared cmake configuration for pgmath, flang, flang-runtime
+ flang_common_args = [
+ '-DLLVM_ENABLE_ASSERTIONS=ON',
+ '-DLLVM_CONFIG={0}/llvm-config'.format(bin_dir),
+ '-DCMAKE_CXX_COMPILER={0}/clang++'.format(bin_dir),
+ '-DCMAKE_C_COMPILER={0}/clang'.format(bin_dir),
+ '-DCMAKE_Fortran_COMPILER={0}/flang'.format(bin_dir),
+ '-DLLVM_TARGETS_TO_BUILD=AMDGPU;x86'
+ ]
+
+ components['pgmath'] = [
+ '../rocm-openmp-extras/flang/runtime/libpgmath'
+ ]
+
+ components['pgmath'] += flang_common_args
+
+ components['flang'] = [
+ '../rocm-openmp-extras/flang',
+ '-DFLANG_OPENMP_GPU_AMD=ON',
+ '-DFLANG_OPENMP_GPU_NVIDIA=ON'
+ ]
+
+ components['flang'] += flang_common_args
+
+ components['flang-runtime'] = [
+ '../rocm-openmp-extras/flang',
+ '-DLLVM_INSTALL_RUNTIME=ON',
+ '-DFLANG_BUILD_RUNTIME=ON',
+ '-DOPENMP_BUILD_DIR={0}/spack-build-openmp/runtime/src'.format(src)
+ ]
+ components['flang-runtime'] += flang_common_args
+
+ build_order = [
+ "aomp-extras", "openmp", "openmp-debug", "pgmath",
+ "flang", "flang-runtime"
+ ]
+
+ # Override standard CMAKE_BUILD_TYPE
+ for arg in std_cmake_args:
+ found = re.search("CMAKE_BUILD_TYPE", arg)
+ if found:
+ std_cmake_args.remove(arg)
+ for component in build_order:
+ with working_dir('spack-build-{0}'.format(component), create=True):
+ cmake_args = components[component]
+ cmake_args.extend(std_cmake_args)
+ # OpenMP build needs to be run twice(Release, Debug)
+ if component == "openmp-debug":
+ cmake_args.append("-DCMAKE_BUILD_TYPE=Debug")
+ else:
+ cmake_args.append("-DCMAKE_BUILD_TYPE=Release")
+ cmake(*cmake_args)
+ make()
+ make("install")
diff --git a/var/spack/repos/builtin/packages/rocm-smi-lib/package.py b/var/spack/repos/builtin/packages/rocm-smi-lib/package.py
index a33130dcdd..8fdcd21edb 100644
--- a/var/spack/repos/builtin/packages/rocm-smi-lib/package.py
+++ b/var/spack/repos/builtin/packages/rocm-smi-lib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,19 +13,31 @@ class RocmSmiLib(CMakePackage):
for applications to monitor and control GPU applications."""
homepage = "https://github.com/RadeonOpenCompute/rocm_smi_lib"
- url = "https://github.com/RadeonOpenCompute/rocm_smi_lib/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/rocm_smi_lib.git"
+ url = "https://github.com/RadeonOpenCompute/rocm_smi_lib/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='master')
+ version('4.2.0', sha256='c31bf91c492f00d0c5ab21e45afbd7baa990e4a8d7ce9b01e3b988e5fdd53f50')
+ version('4.1.0', sha256='0c1d2152e40e14bb385071ae16e7573290fb9f74afa5ab887c54f4dd75849a6b')
+ version('4.0.0', sha256='93d19229b5a511021bf836ddc2a9922e744bf8ee52ee0e2829645064301320f4')
+ version('3.10.0', sha256='8bb2142640d1c6bf141f19accf809e61377a6e0c0222e47ac4daa5da2c85ddac')
version('3.9.0', sha256='b2934b112542af56de2dc1d5bffff59957e21050db6e3e5abd4c99e46d4a0ffe')
version('3.8.0', sha256='86250c9ae9dfb18d4f7259a5f2f09b21574d4996fe5034a739ce63a27acd0082')
version('3.7.0', sha256='72d2a3deda0b55a2d92833cd648f50c7cb64f8341b254a0badac0152b26f1391')
version('3.5.0', sha256='a5d2ec3570d018b60524f0e589c4917f03d26578443f94bde27a170c7bb21e6e')
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
+ variant('shared', default=True, description='Build shared or static library')
depends_on('cmake@3:', type='build')
+ def cmake_args(self):
+ return [
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared')
+ ]
+
@run_after('install')
def post_install(self):
shutil.rmtree(self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/rocm-smi/package.py b/var/spack/repos/builtin/packages/rocm-smi/package.py
index 121f037e54..7dbdae1094 100644
--- a/var/spack/repos/builtin/packages/rocm-smi/package.py
+++ b/var/spack/repos/builtin/packages/rocm-smi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,10 +13,13 @@ class RocmSmi(MakefilePackage):
management of your ROCm enabled system"""
homepage = "https://github.com/RadeonOpenCompute/ROC-smi"
- url = "https://github.com/RadeonOpenCompute/ROC-smi/archive/rocm-3.9.0.tar.gz"
+ url = "https://github.com/RadeonOpenCompute/ROC-smi/archive/rocm-4.1.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.1.0', sha256='5f9f551f93f673f4b508f47a7f24bce903288ffb08fa9e4c8e0956a4a57865c2')
+ version('4.0.0', sha256='bf8738ae81c0a02d83eb9437b93dc153fb63f659f3b04d454024e30678b43575')
+ version('3.10.0', sha256='b1c7e529e8fcc53fb6b40a4126651da0ab07bcb91faac99519ba9660412ea4ed')
version('3.9.0', sha256='af3cc6d5e2296f47b1873339faad2d27cf2f24725771bf34c7f644d20cc6ef3b')
version('3.8.0', sha256='248d9bddc3353c74defd57f203df0648278a4613f2af7fb838d92a4bc8de575d')
version('3.7.0', sha256='4e34b3b4e409bb89677882f47d9988d56bc2d9bb9893f0712c22a4b73789e06a')
diff --git a/var/spack/repos/builtin/packages/rocm-tensile/0002-require-openmp-when-tensile-use-openmp-is-on.patch b/var/spack/repos/builtin/packages/rocm-tensile/0002-require-openmp-when-tensile-use-openmp-is-on.patch
new file mode 100644
index 0000000000..4c616d47f2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rocm-tensile/0002-require-openmp-when-tensile-use-openmp-is-on.patch
@@ -0,0 +1,90 @@
+diff --git a/HostLibraryTests/CMakeLists.txt b/HostLibraryTests/CMakeLists.txt
+index 79e1529..034f8bb 100644
+--- a/HostLibraryTests/CMakeLists.txt
++++ b/HostLibraryTests/CMakeLists.txt
+@@ -19,7 +19,7 @@
+ # CTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ ################################################################################
+
+-cmake_minimum_required(VERSION 3.5)
++cmake_minimum_required(VERSION 3.9)
+
+ project(TensileHostLibraryTest)
+
+@@ -78,21 +78,7 @@ if(TENSILE_USE_HIP)
+ endif()
+
+ if(TENSILE_USE_OPENMP)
+- #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_OPENMP")
+- find_package(OpenMP QUIET)
+- if (OPENMP_FOUND)
+- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
+- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
+- set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")
+- else()
+- if(EXISTS /etc/redhat-release)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp=libgomp")
+- else()
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
+- set(OPENMP_LIBRARY /usr/lib/x86_64-linux-gnu/libomp.so)
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OPENMP_LIBRARY}")
+- endif()
+- endif()
++ find_package(OpenMP REQUIRED)
+ endif()
+
+ add_subdirectory(configs)
+@@ -187,6 +173,6 @@ if(TENSILE_USE_HIP)
+ endif()
+
+ if(TENSILE_USE_OPENMP)
+- target_link_libraries(TensileTests PRIVATE "${OpenMP_EXE_LINKER_FLAGS}")
++ target_link_libraries(TensileTests PRIVATE OpenMP::OpenMP_CXX)
+ endif()
+
+diff --git a/Tensile/Source/CMakeLists.txt b/Tensile/Source/CMakeLists.txt
+index 821fd53..fe65c9e 100644
+--- a/Tensile/Source/CMakeLists.txt
++++ b/Tensile/Source/CMakeLists.txt
+@@ -61,21 +61,7 @@ if(TENSILE_NEW_CLIENT)
+ endif()
+
+ if(TENSILE_USE_OPENMP)
+- #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_OPENMP")
+- find_package(OpenMP QUIET)
+- if (OPENMP_FOUND)
+- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
+- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
+- set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")
+- else ()
+- if(EXISTS /etc/redhat-release)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp=libgomp")
+- else()
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
+- set(OPENMP_LIBRARY /usr/lib/x86_64-linux-gnu/libomp.so)
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OPENMP_LIBRARY}")
+- endif()
+- endif()
++ find_package(OpenMP REQUIRED)
+ endif()
+
+ #set(TENSILE_CXX_COMPILER "${CMAKE_CXX_COMPILER}")
+diff --git a/Tensile/Source/client/CMakeLists.txt b/Tensile/Source/client/CMakeLists.txt
+index 9ccba86..081280b 100644
+--- a/Tensile/Source/client/CMakeLists.txt
++++ b/Tensile/Source/client/CMakeLists.txt
+@@ -52,12 +52,8 @@ target_link_libraries(TensileClient TensileHost ${Boost_LIBRARIES} rocm_smi)
+ add_executable(tensile_client main.cpp)
+
+ target_link_libraries(tensile_client PRIVATE TensileHost TensileClient ${Boost_LIBRARIES})
+-if(OpenMP_FOUND)
+- target_link_libraries(tensile_client PRIVATE "${OpenMP_EXE_LINKER_FLAGS}")
+-else()
+- set(OPENMP_LIBRARY /usr/lib/x86_64-linux-gnu/libomp.so)
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OPENMP_LIBRARY}")
+- target_link_libraries(tensile_client PRIVATE "${OpenMP_EXE_LINKER_FLAGS}")
++if(TENSILE_USE_OPENMP)
++ target_link_libraries(tensile_client PRIVATE OpenMP::OpenMP_CXX)
+ endif()
+
+ foreach(arch IN LISTS TENSILE_GPU_ARCHS)
diff --git a/var/spack/repos/builtin/packages/rocm-tensile/package.py b/var/spack/repos/builtin/packages/rocm-tensile/package.py
index 18dcd9f4bd..cc7bd53d8b 100644
--- a/var/spack/repos/builtin/packages/rocm-tensile/package.py
+++ b/var/spack/repos/builtin/packages/rocm-tensile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,51 +11,64 @@ class RocmTensile(CMakePackage):
"""Radeon Open Compute Tensile library"""
homepage = "https://github.com/ROCmSoftwarePlatform/Tensile/"
- url = "https://github.com/ROCmSoftwarePlatform/Tensile/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/Tensile.git"
+ url = "https://github.com/ROCmSoftwarePlatform/Tensile/archive/rocm-4.2.0.tar.gz"
+
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='198e357a14a79366b27b1097856d4821996bc36163be0cd2668910b253721060')
+ version('4.1.0', sha256='92b8ee13dfc11a67d5136227ee985622685790fd3f0f0e1ec6db411d4e9a3419')
+ version('4.0.0', sha256='cf105ce8c3e352d19713b3bf8bda77f25c1a692c4f2ca82d631ba15523ecc1cd')
+ version('3.10.0', sha256='8d5b50aadfa56a9195e4c387b8eb351c9b9b7671b136b624e07fe28db24bd330')
+ version('3.9.0', sha256='17a011f8c3433d4f8c2dddabd5854cf96c406d24592b3942deb51672c570882e')
version('3.8.0', sha256='c78a11db85fdf54bfd26533ee6fa98f6a6e789fa423537993061497ac5f22ed6')
version('3.7.0', sha256='488a7f76ea42a7601d0557f53068ec4832a2c7c06bb1b511470a4e35599a5a4d')
version('3.5.0', sha256='71eb3eed6625b08a4cedb539dd9b596e3d4cc82a1a8063d37d94c0765b6f8257')
- amdgpu_targets = ('all', 'gfx803', 'gfx900', 'gfx906', 'gfx908')
+ tensile_architecture = ('all', 'gfx803', 'gfx900', 'gfx906', 'gfx908')
- variant('amdgpu_target', default='all', multi=True, values=amdgpu_targets)
+ variant('tensile_architecture', default='all', values=tensile_architecture, multi=False)
+ variant('openmp', default=True, description='Enable OpenMP')
depends_on('cmake@3:', type='build')
+ # This is the default library format since 3.7.0
+ depends_on('msgpack-c@3:', when='@3.7:')
+ depends_on('boost', type=('build', 'link'))
- for ver in ['3.5.0', '3.7.0', '3.8.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('rocm-cmake@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('hip@' + ver, when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
# used in Tensile
- depends_on('rocm-smi@' + ver, type='build', when='@' + ver)
depends_on('rocm-smi-lib@' + ver, type='build', when='@' + ver)
- depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
+ depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver + '+openmp')
+ depends_on('llvm-amdgpu@' + ver + '~openmp', type='build', when='@' + ver + '~openmp')
- # This is the default library format since 3.7.0
- depends_on('msgpack-c@3:', when='@3.7:')
- depends_on('boost@1.58.0', type=('build', 'link'))
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0']:
+ depends_on('rocm-smi@' + ver, type='build', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
root_cmakelists_dir = 'Tensile/Source'
# Status: https://github.com/ROCmSoftwarePlatform/Tensile/commit/a488f7dadba34f84b9658ba92ce9ec5a0615a087
# Not yet landed in 3.7.0, nor 3.8.0.
- patch('0001-fix-compile-error.patch')
+ patch('0001-fix-compile-error.patch', when='@3.7.0:3.8.0')
+ patch('0002-require-openmp-when-tensile-use-openmp-is-on.patch', when='@3.9.0:4.0.0')
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
def cmake_args(self):
- archs = ",".join(self.spec.variants['amdgpu_target'].value)
-
+ arch = self.spec.variants['tensile_architecture'].value
args = [
'-Damd_comgr_DIR={0}'.format(self.spec['comgr'].prefix),
'-DTensile_COMPILER=hipcc',
- '-DTensile_ARCHITECTURE={0}'.format(archs),
'-DTensile_LOGIC=asm_full',
'-DTensile_CODE_OBJECT_VERSION=V3',
- '-DBoost_USE_STATIC_LIBS=Off',
+ '-DBoost_USE_STATIC_LIBS=OFF',
+ '-DTENSILE_USE_OPENMP=ON',
'-DBUILD_WITH_TENSILE_HOST={0}'.format(
'ON' if '@3.7.0:' in self.spec else 'OFF'
)
@@ -64,4 +77,14 @@ class RocmTensile(CMakePackage):
if '@3.7.0:' in self.spec:
args.append('-DTensile_LIBRARY_FORMAT=msgpack')
+ if self.spec.satisfies('@4.1.0:'):
+ if arch == 'gfx906' or arch == 'gfx908':
+ arch = arch + ':xnack-'
+ args.append('-DTensile_ARCHITECTURE={0}'.format(arch))
+
return args
+
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ install_tree('./client', prefix.client)
+ install_tree('./lib', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/rocm-validation-suite/002-remove-force-setting-hip-inc-path.patch b/var/spack/repos/builtin/packages/rocm-validation-suite/002-remove-force-setting-hip-inc-path.patch
new file mode 100644
index 0000000000..a95e0836b0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rocm-validation-suite/002-remove-force-setting-hip-inc-path.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a3301ec..f62005a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -33,7 +33,7 @@ set(CMAKE_INSTALL_PREFIX "/opt/rocm" CACHE PATH "CMAKE installation directory")
+ set(ROCR_INC_DIR "${ROCM_PATH}/include" CACHE PATH "Contains header files exported by ROC Runtime" FORCE)
+ set(ROCR_LIB_DIR "${ROCM_PATH}/lib" CACHE PATH "Contains library files exported by ROC Runtime" FORCE)
+ set(HIP_INC_DIR "${ROCM_PATH}/hip" )
+-set(HIP_INC_DIR "${ROCM_PATH}/hip" CACHE PATH "Contains header files exported by ROC Runtime" FORCE)
++set(HIP_INC_DIR "${ROCM_PATH}/hip" CACHE PATH "Contains header files exported by ROC Runtime")
+ set(ROCT_INC_DIR "${ROCM_PATH}/include" CACHE PATH "Contains header files exported by ROC Trunk" FORCE)
+
+ execute_process(COMMAND ln -s /usr/bin/python3 /usr/bin/python)
diff --git a/var/spack/repos/builtin/packages/rocm-validation-suite/package.py b/var/spack/repos/builtin/packages/rocm-validation-suite/package.py
index 5b7800cd78..21c2254b1f 100644
--- a/var/spack/repos/builtin/packages/rocm-validation-suite/package.py
+++ b/var/spack/repos/builtin/packages/rocm-validation-suite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,10 +15,14 @@ class RocmValidationSuite(CMakePackage):
compatible platform."""
homepage = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite"
- url = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite/archive/rocm-3.8.0.tar.gz"
+ url = "https://github.com/ROCm-Developer-Tools/ROCmValidationSuite/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='b25e58a842a8eb90bfd6c4ae426ca5cfdd5de2f8a091761f83597f7cfc2cd0f3')
+ version('4.1.0', sha256='f9618f89384daa0ae897b36638a3737bcfa47e98778e360338267cd1fe2bbc66')
+ version('4.0.0', sha256='04743ca8901b94a801759a3c13c8caf3e6ea950ffcda6408173e6f9ef7b86e74')
+ version('3.10.0', sha256='9f9a530f7850770663e0b0ec0c786367f2e22500a472ac6652c4fd9fb4df4f64')
version('3.9.0', sha256='17662028a4485b97e3ccaad5e94d20aaa2c3e9e3f741c7ebbf0f8b4cdebcc555')
version('3.8.0', sha256='68f1c5102e5cbed205a0ecf5a01efbdccf480f7e484ab1e58cbc6bc03e428122')
version('3.7.0', sha256='bb42d7fb7ee877b80ce53b0cd1f04b0c8301197b6777d2edddcb44732bf8c9e2')
@@ -27,6 +31,7 @@ class RocmValidationSuite(CMakePackage):
variant('build_type', default='Release', values=("Release", "Debug"), description='CMake build type')
patch('001-fixes-for-rocblas-rocm-smi-install-prefix-path.patch')
+ patch('002-remove-force-setting-hip-inc-path.patch', when='@4.1.0:')
depends_on('cmake@3.5:', type='build')
depends_on('zlib', type='link')
@@ -35,7 +40,8 @@ class RocmValidationSuite(CMakePackage):
spec = self.spec
build_env.set("HIPCC_PATH", spec['hip'].prefix)
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/rocminfo/package.py b/var/spack/repos/builtin/packages/rocminfo/package.py
index 70ea8ddedb..9b272121a9 100644
--- a/var/spack/repos/builtin/packages/rocminfo/package.py
+++ b/var/spack/repos/builtin/packages/rocminfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,17 @@ class Rocminfo(CMakePackage):
"""Radeon Open Compute (ROCm) Runtime rocminfo tool"""
homepage = "https://github.com/RadeonOpenCompute/rocminfo"
- url = "https://github.com/RadeonOpenCompute/rocminfo/archive/rocm-3.9.0.tar.gz"
+ git = "https://github.com/RadeonOpenCompute/rocminfo.git"
+ url = "https://github.com/RadeonOpenCompute/rocminfo/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('master', branch='master')
+
+ version('4.2.0', sha256='6952b6e28128ab9f93641f5ccb66201339bb4177bb575b135b27b69e2e241996')
+ version('4.1.0', sha256='5b994ad02b6d250160770f6f7730835f3a52127193ac9a8dee40c53aec911f4f')
+ version('4.0.0', sha256='0b3d692959dd4bc2d1665ab3a838592fcd08d2b5e373593b9192ca369e2c4aa7')
+ version('3.10.0', sha256='ed02375be3be518b83aea7309ef5ca62dc9b6dbad0aae33e92995102d6d660be')
version('3.9.0', sha256='9592781e0c62b910c4adc5c7f4c27c7a0cddbed13111a19dd91a2ff43720e43d')
version('3.8.0', sha256='c135dc98ecb5f420e22a6efd2f461ba9ed90be3f42e2ac29356e05c6a0706f8f')
version('3.7.0', sha256='86a8e3ce7d91fb2d79688a22a2805757c83922d9f17ea7ea1cb41bf9516197ea')
@@ -22,7 +29,8 @@ class Rocminfo(CMakePackage):
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0', 'master']:
depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
diff --git a/var/spack/repos/builtin/packages/rocprim/package.py b/var/spack/repos/builtin/packages/rocprim/package.py
index 95032c3d66..7d4e35ce88 100644
--- a/var/spack/repos/builtin/packages/rocprim/package.py
+++ b/var/spack/repos/builtin/packages/rocprim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,10 +10,15 @@ class Rocprim(CMakePackage):
""" Radeon Open Compute Parallel Primitives Library"""
homepage = "https://github.com/ROCmSoftwarePlatform/rocPRIM"
- url = "https://github.com/ROCmSoftwarePlatform/rocPRIM/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/rocPRIM.git"
+ url = "https://github.com/ROCmSoftwarePlatform/rocPRIM/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='3932cd3a532eea0d227186febc56747dd95841732734d9c751c656de9dd770c8')
+ version('4.1.0', sha256='c46d789f85d15f8ec97f90d67b9d49fb87239912fe8d5f60a7b4c59f9d0e3da8')
+ version('4.0.0', sha256='61abf4d51853ae71e54258f43936bbbb096bf06f5891d224d359bfe3104015d0')
+ version('3.10.0', sha256='b406956b27d1c06b749e991a250d4ad3eb26e20c6bebf121e2ca6051597b4fa4')
version('3.9.0', sha256='ace6b4ee4b641280807028375cb0e6fa7b296edba9e9fc09177a5d8d075a716e')
version('3.8.0', sha256='4d37320d174eaada99dd796d81fa97d5dcc65a6dff8e8ff1c21e8e68acb4ea74')
version('3.7.0', sha256='225209a0cbd003c241821c8a9192cec5c07c7f1a6ab7da296305fc69f5f6d365')
@@ -23,11 +28,15 @@ class Rocprim(CMakePackage):
depends_on('cmake@3:', type='build')
depends_on('numactl', type='link', when='@3.7.0:')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='build', when='@' + ver)
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
diff --git a/var/spack/repos/builtin/packages/rocprofiler-dev/package.py b/var/spack/repos/builtin/packages/rocprofiler-dev/package.py
index e14eb4c031..8981d68f50 100644
--- a/var/spack/repos/builtin/packages/rocprofiler-dev/package.py
+++ b/var/spack/repos/builtin/packages/rocprofiler-dev/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,17 +11,23 @@ class RocprofilerDev(CMakePackage):
"""ROCPROFILER library for AMD HSA runtime API extension support"""
homepage = "https://github.com/ROCm-Developer-Tools/rocprofiler"
- url = "https://github.com/ROCm-Developer-Tools/rocprofiler/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCm-Developer-Tools/rocprofiler.git"
+ url = "https://github.com/ROCm-Developer-Tools/rocprofiler/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='c5888eda1404010f88219055778cfeb00d9c21901e172709708720008b1af80f')
+ version('4.1.0', sha256='2eead5707016da606d636b97f3af1c98cb471da78659067d5a77d4a2aa43ef4c')
+ version('4.0.0', sha256='e9960940d1ec925814a0e55ee31f5fc2fb23fa839d1c6a909f72dd83f657fb25')
+ version('3.10.0', sha256='fbf5ce9fbc13ba2b3f9489838e00b54885aba92336f055e8b03fef3e3347071e')
version('3.9.0', sha256='f07ddd9bf2f86550c8d243f887e9bde9d4f2ceec81ecc6393012aaf2a45999e8')
version('3.8.0', sha256='38ad3ac20f60f3290ce750c34f0aad442354b1d0a56b81167a018e44ecdf7fff')
version('3.7.0', sha256='d3f03bf850cbd86ca9dfe6e6cc6f559d8083b0f3ea4711d8260b232cb6fdd1cc')
version('3.5.0', sha256='c42548dd467b7138be94ad68c715254eb56a9d3b670ccf993c43cd4d43659937')
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
depends_on('rocminfo@' + ver, type='build', when='@' + ver)
@@ -58,6 +64,36 @@ class RocprofilerDev(CMakePackage):
placement='roctracer',
when='@3.9.0')
+ resource(name='roctracer-dev',
+ url='https://github.com/ROCm-Developer-Tools/roctracer/archive/rocm-3.10.0.tar.gz',
+ sha256='ac4a1d059fc34377e906071fd0e56f5434a7e0e4ded9db8faf9217a115239dec',
+ expand=True,
+ destination='',
+ placement='roctracer',
+ when='@3.10.0')
+
+ resource(name='roctracer-dev',
+ url='https://github.com/ROCm-Developer-Tools/roctracer/archive/rocm-4.0.0.tar.gz',
+ sha256='f47859a46173228b597c463eda850b870e810534af5efd5f2a746067ef04edee',
+ expand=True,
+ destination='',
+ placement='roctracer',
+ when='@4.0.0')
+ resource(name='roctracer-dev',
+ url='https://github.com/ROCm-Developer-Tools/roctracer/archive/rocm-4.1.0.tar.gz',
+ sha256='5d93de4e92895b6eb5f9d098f5dbd182d33923bd9b2ab69cf5a1abbf91d70695',
+ expand=True,
+ destination='',
+ placement='roctracer',
+ when='@4.1.0')
+ resource(name='roctracer-dev',
+ url='https://github.com/ROCm-Developer-Tools/roctracer/archive/rocm-4.2.0.tar.gz',
+ sha256='62a9c0cb1ba50b1c39a0636c886ac86e75a1a71cbf5fec05801517ceb0e67a37',
+ expand=True,
+ destination='',
+ placement='roctracer',
+ when='@4.2.0')
+
def patch(self):
filter_file('${HSA_RUNTIME_LIB_PATH}/../include',
'${HSA_RUNTIME_LIB_PATH}/../include ${HSA_KMT_LIB_PATH}/..\
diff --git a/var/spack/repos/builtin/packages/rocrand/package.py b/var/spack/repos/builtin/packages/rocrand/package.py
index cd0bbf950b..a6739befd0 100644
--- a/var/spack/repos/builtin/packages/rocrand/package.py
+++ b/var/spack/repos/builtin/packages/rocrand/package.py
@@ -1,8 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import os
+import glob
from spack import *
@@ -12,10 +14,15 @@ class Rocrand(CMakePackage):
pseudo-random and quasi-random numbers."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocRAND"
- url = "https://github.com/ROCmSoftwarePlatform/rocRAND/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/rocRAND.git"
+ url = "https://github.com/ROCmSoftwarePlatform/rocRAND/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='15725c89e9cc9cc76bd30415fd2c0c5b354078831394ab8b23fe6633497b92c8')
+ version('4.1.0', sha256='94327e38739030ab6719a257f5a928a35842694750c7f46d9e11ff2164c2baed')
+ version('4.0.0', sha256='1cafdbfa15cde635bd424d2a858dc5cc94d668f9a211ff39606ee01ed1715f41')
+ version('3.10.0', sha256='f55e2b49b4dfd887e46eea049f3359ae03c60bae366ffc979667d364205bc99c')
version('3.9.0', sha256='a500a3a83be36b6c91aa062dc6eef1f9fc1d9ee62422d541cc279513d98efa91')
version('3.8.0', sha256='79eb84d41363a46ed9bb18d9757cf6a419d2f48bb6a71b8e4db616a5007a6560')
version('3.7.0', sha256='5e43fe07afe2c7327a692b3b580875bae6e6ee790e044c053fffafbfcbc14860')
@@ -23,17 +30,41 @@ class Rocrand(CMakePackage):
depends_on('cmake@3.5.1:', type='build')
depends_on('numactl', when='@3.7.0:')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('llvm-amdgpu@' + ver, type='build', when='@' + ver)
depends_on('rocminfo@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
+ @run_after('install')
+ def fix_library_locations(self):
+ """Fix the rocRAND and hipRAND libraries location"""
+ # rocRAND installs librocrand.so* and libhiprand.so* to rocrand/lib and
+ # hiprand/lib, respectively. This confuses spack's RPATH management. We
+ # fix it by adding a symlink to the libraries.
+ hiprand_lib_path = join_path(self.prefix, 'hiprand', 'lib')
+ rocrand_lib_path = join_path(self.prefix, 'rocrand', 'lib')
+ mkdirp(self.prefix.lib)
+ with working_dir(hiprand_lib_path):
+ hiprand_libs = glob.glob('*.so*')
+ for lib in hiprand_libs:
+ os.symlink(join_path(hiprand_lib_path, lib),
+ join_path(self.prefix.lib, lib))
+ with working_dir(rocrand_lib_path):
+ rocrand_libs = glob.glob('*.so*')
+ for lib in rocrand_libs:
+ os.symlink(join_path(rocrand_lib_path, lib),
+ join_path(self.prefix.lib, lib))
+
def cmake_args(self):
args = ['-DBUILD_BENCHMARK=OFF',
'-DBUILD_TEST=OFF']
diff --git a/var/spack/repos/builtin/packages/rocsolver/package.py b/var/spack/repos/builtin/packages/rocsolver/package.py
index 33a95a4253..c540ddbb00 100644
--- a/var/spack/repos/builtin/packages/rocsolver/package.py
+++ b/var/spack/repos/builtin/packages/rocsolver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,19 @@ class Rocsolver(CMakePackage):
homepage = "https://github.com/ROCmSoftwarePlatform/rocSOLVER"
git = "https://github.com/ROCmSoftwarePlatform/rocSOLVER.git"
- url = "https://github.com/ROCmSoftwarePlatform/rocSOLVER/archive/rocm-3.8.0.tar.gz"
+ url = "https://github.com/ROCmSoftwarePlatform/rocSOLVER/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ variant('optimal', default=True,
+ description='This option improves performance at the cost of increased binary \
+ size and compile time by adding specialized kernels \
+ for small matrix sizes')
+
+ version('4.2.0', sha256='e9ef72d7c29e7c36bf02be63a64ca23b444e1ca71751749f7d66647873d9fdea')
+ version('4.1.0', sha256='da5cc800dabf7367b02b73c93780b2967f112bb45232e4b06e5fd07b4d5b8d88')
+ version('4.0.0', sha256='be9a52644c276813f76d78f2c11eddaf8c2d7f9dd04f4570f23d328ad30d5880')
+ version('3.10.0', sha256='bc72483656b6b23a1e321913a580ca460da3bc5976404647536a01857f178dd2')
version('3.9.0', sha256='85fd77fe5acf5af518d11e90e2c03ee0c5abd61071cea86ef5df09f944879648')
version('3.8.0', sha256='72aa74284944d8b454088e8c8d74cf05464a4e2e46d33a57017ddd009113025e')
version('3.7.0', sha256='8c1c630595952806e658c539fd0f3056bd45bafc22b57f0dd10141abefbe4595')
@@ -24,21 +33,29 @@ class Rocsolver(CMakePackage):
depends_on('cmake@3:', type='build')
depends_on('numactl', type='link', when='@3.7.0:')
- for ver in ['3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0', '4.2.0']:
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('rocblas@' + ver, type='link', when='@' + ver)
def cmake_args(self):
+ incl = self.spec['rocblas'].prefix
args = [
'-DBUILD_CLIENTS_SAMPLES=OFF',
'-DBUILD_CLIENTS_TESTS=OFF',
'-DBUILD_CLIENTS_BENCHMARKS=OFF'
]
+ if self.spec.satisfies('@4.1.0:'):
+ args.append('-DCMAKE_CXX_FLAGS:String=-I{0}/rocblas/include'.format(incl))
+
+ if self.spec.satisfies('@3.7.0:'):
+ args.append(self.define_from_variant('OPTIMAL', 'optimal'))
+
return args
def setup_build_environment(self, env):
diff --git a/var/spack/repos/builtin/packages/rocsparse/package.py b/var/spack/repos/builtin/packages/rocsparse/package.py
index 63826b8499..27e9fb340e 100644
--- a/var/spack/repos/builtin/packages/rocsparse/package.py
+++ b/var/spack/repos/builtin/packages/rocsparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,10 +14,15 @@ class Rocsparse(CMakePackage):
language and optimized for AMD's latest discrete GPUs."""
homepage = "https://github.com/ROCmSoftwarePlatform/rocSPARSE"
- url = "https://github.com/ROCmSoftwarePlatform/rocSPARSE/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/rocSPARSE.git"
+ url = "https://github.com/ROCmSoftwarePlatform/rocSPARSE/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='8a86ed49d278e234c82e406a1430dc28f50d416f8f1065cf5bdf25cc5721129c')
+ version('4.1.0', sha256='7514968ed2342dc274acce8b269c128a6aa96cce769a37fd3880b5269c2ed17f')
+ version('4.0.0', sha256='2b41bc6623d204ad7f351a902810f34cd32b762d1bf59081dbb00f83e689a794')
+ version('3.10.0', sha256='8325828c5d7818dfb45e03b5f1572a573cc21964d596aaaa33b7469817b03abd')
version('3.9.0', sha256='7b8f952d0c7f8ac2f3bb60879ab420fabbfafb0885a3d8464d5b4c191e97dec6')
version('3.8.0', sha256='a5d085fffe05a7ac7f5658075d9782b9b02d0c5c3e2c1807dad266c3a61141fd')
version('3.7.0', sha256='db561ae5e8ee117f7c539a9ef6ee49c13b82ba9f702b22c76e741cca245386a9')
@@ -25,13 +30,16 @@ class Rocsparse(CMakePackage):
depends_on('cmake@3:', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('rocprim@' + ver, type='build', when='@' + ver)
depends_on('hsakmt-roct@' + ver, type='link', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='link', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
diff --git a/var/spack/repos/builtin/packages/rocthrust/package.py b/var/spack/repos/builtin/packages/rocthrust/package.py
index 3e9117d8d9..1ad98aa01a 100644
--- a/var/spack/repos/builtin/packages/rocthrust/package.py
+++ b/var/spack/repos/builtin/packages/rocthrust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,10 +13,15 @@ class Rocthrust(CMakePackage):
library works on HIP/ROCm platforms"""
homepage = "https://github.com/ROCmSoftwarePlatform/rocThrust"
- url = "https://github.com/ROCmSoftwarePlatform/rocThrust/archive/rocm-3.8.0.tar.gz"
+ git = "https://github.com/ROCmSoftwarePlatform/rocThrust.git"
+ url = "https://github.com/ROCmSoftwarePlatform/rocThrust/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='da2b6c831c26c26058218b0c5b7b2e43fd7f0dac3b2e3a8e39a839145592c727')
+ version('4.1.0', sha256='e3d06c0387a2a6880776c7423b1acf0808fb8833bc822be75793da8c2f521efd')
+ version('4.0.0', sha256='120c87316f44ce8e8975e57c9b9bf1246b1ffc00879d31d744289ba9438a976c')
+ version('3.10.0', sha256='31bea6cd19a0ffa15e4ab50ecde2402ea5aaa182149cfab98242357e41f1805b')
version('3.9.0', sha256='65f5e74d72c5aaee90459468d693b212af7d56e31098ee8237b18d1b4d620eb0')
version('3.8.0', sha256='39350aeb8bfbcd09e387717b2a05c7e3a19e0fa85ff4284b967bb8fae12f9013')
version('3.7.0', sha256='4cb923dde5eec150a566cb10d23ee5c7ce3aa892c4dea94886a89d95b90f3bdd')
@@ -26,13 +31,17 @@ class Rocthrust(CMakePackage):
description='CMake build type')
depends_on('cmake@3:', type='build')
- depends_on('numactl', when='@3.7.0')
- for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0']:
+ depends_on('numactl', when='@3.7.0:')
+
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hip@' + ver, type='build', when='@' + ver)
depends_on('rocm-device-libs@' + ver, type='build', when='@' + ver)
depends_on('comgr@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
depends_on('rocprim@' + ver, type='build', when='@' + ver)
+ for ver in ['4.1.0', '4.2.0']:
+ depends_on('hip-rocclr@' + ver, type='link', when='@' + ver)
def setup_build_environment(self, env):
env.set('CXX', self.spec['hip'].hipcc)
diff --git a/var/spack/repos/builtin/packages/roctracer-dev/package.py b/var/spack/repos/builtin/packages/roctracer-dev/package.py
index 36f22a1f30..e5ca157e16 100644
--- a/var/spack/repos/builtin/packages/roctracer-dev/package.py
+++ b/var/spack/repos/builtin/packages/roctracer-dev/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,24 +13,34 @@ class RoctracerDev(CMakePackage):
specific runtime profiler to trace API and asyncronous activity."""
homepage = "https://github.com/ROCm-Developer-Tools/roctracer"
- url = "https://github.com/ROCm-Developer-Tools/roctracer/archive/rocm-3.5.0.tar.gz"
+ git = "https://github.com/ROCm-Developer-Tools/roctracer.git"
+ url = "https://github.com/ROCm-Developer-Tools/roctracer/archive/rocm-4.2.0.tar.gz"
maintainers = ['srekolam', 'arjun-raj-kuppala']
+ version('4.2.0', sha256='62a9c0cb1ba50b1c39a0636c886ac86e75a1a71cbf5fec05801517ceb0e67a37')
+ version('4.1.0', sha256='5d93de4e92895b6eb5f9d098f5dbd182d33923bd9b2ab69cf5a1abbf91d70695')
+ version('4.0.0', sha256='f47859a46173228b597c463eda850b870e810534af5efd5f2a746067ef04edee')
+ version('3.10.0', sha256='ac4a1d059fc34377e906071fd0e56f5434a7e0e4ded9db8faf9217a115239dec')
+ version('3.9.0', sha256='0678f9faf45058b16923948c66d77ba2c072283c975d167899caef969169b292')
version('3.8.0', sha256='5154a84ce7568cd5dba756e9508c34ae9fc62f4b0b5731f93c2ad68b21537ed1')
version('3.7.0', sha256='6fa5b771e990f09c242237ab334b9f01039ec7d54ccde993e719c5d6577d1518')
version('3.5.0', sha256='7af5326c9ca695642b4265232ec12864a61fd6b6056aa7c4ecd9e19c817f209e')
depends_on('cmake@3:', type='build')
depends_on('py-setuptools@:44', type='build')
- depends_on('python@:2', type='build')
+ depends_on('python@:2', type='build', when='@:4.1.0')
+ depends_on('python@3:', type='build', when='@4.2.0:')
depends_on('py-cppheaderparser', type='build')
- for ver in ['3.5.0', '3.7.0', '3.8.0']:
+ for ver in ['3.5.0', '3.7.0', '3.8.0', '3.9.0', '3.10.0', '4.0.0', '4.1.0',
+ '4.2.0']:
depends_on('hsakmt-roct@' + ver, type='build', when='@' + ver)
depends_on('hsa-rocr-dev@' + ver, type='build', when='@' + ver)
depends_on('rocminfo@' + ver, type='build', when='@' + ver)
depends_on('hip@' + ver, type='build', when='@' + ver)
+ if ver in ['4.2.0']:
+ depends_on('rocprofiler-dev@' + ver, type='link', when='@' + ver)
def setup_build_environment(self, build_env):
spec = self.spec
@@ -42,7 +52,7 @@ class RoctracerDev(CMakePackage):
string=True)
kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
with working_dir('script'):
- match = '^#!/usr/bin/python'
+ match = '^#!/usr/bin/python[23]'
python = self.spec['python'].command.path
substitute = "#!{python}".format(python=python)
files = [
diff --git a/var/spack/repos/builtin/packages/rodinia/package.py b/var/spack/repos/builtin/packages/rodinia/package.py
index 6310dc5444..bfeaa06d15 100644
--- a/var/spack/repos/builtin/packages/rodinia/package.py
+++ b/var/spack/repos/builtin/packages/rodinia/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/root/README.md b/var/spack/repos/builtin/packages/root/README.md
index 5f9180dc95..d0e7674484 100644
--- a/var/spack/repos/builtin/packages/root/README.md
+++ b/var/spack/repos/builtin/packages/root/README.md
@@ -12,10 +12,6 @@ The following configuration options are unsupported (set to `OFF`) due to missin
Requires `libgapiUI` from ALICE.
-#### `dcache`
-
-DCache support depends on `libdcap` from DESY.
-
#### `gfal`
#### `http`
@@ -28,12 +24,8 @@ Monitoring with Monalisa depends on `libapmoncpp`.
#### `odbc`
-#### `oracle`
-
#### `tcmalloc`
-#### `veccore`
-
#### `xinetd`
### Discontinued options
diff --git a/var/spack/repos/builtin/packages/root/package.py b/var/spack/repos/builtin/packages/root/package.py
index 859840a525..c23f66432e 100644
--- a/var/spack/repos/builtin/packages/root/package.py
+++ b/var/spack/repos/builtin/packages/root/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,21 +14,28 @@ class Root(CMakePackage):
homepage = "https://root.cern.ch"
url = "https://root.cern/download/root_v6.16.00.source.tar.gz"
+ git = "https://github.com/root-project/root.git"
+
+ executables = ['^root$', '^root-config$']
+
+ tags = ['hep']
maintainers = ['chissg', 'HadrienG2', 'drbenmorgan', 'vvolkl']
# ###################### Versions ##########################
# Master branch
- version('master', git="https://github.com/root-project/root.git",
- branch='master')
+ version('master', branch='master')
# Development version (when more recent than production).
# Production version
+ version('6.24.00', sha256='9da30548a289211c3122d47dacb07e85d35e61067fac2be6c5a5ff7bda979989')
+ version('6.22.08', sha256='6f061ff6ef8f5ec218a12c4c9ea92665eea116b16e1cd4df4f96f00c078a2f6f')
+ version('6.22.06', sha256='c4688784a7e946cd10b311040b6cf0b2f75125a7520e04d1af0b746505911b57')
+ version('6.22.02', sha256='89784afa9c9047e9da25afa72a724f32fa8aa646df267b7731e4527cc8a0c340')
version('6.22.00', sha256='efd961211c0f9cd76cf4a486e4f89badbcf1d08e7535bba556862b3c1a80beed')
- version('6.20.08', sha256='d02f224b4908c814a99648782b927c353d44db79dea2cadea86138c1afc23ae9',
- preferred=True)
+ version('6.20.08', sha256='d02f224b4908c814a99648782b927c353d44db79dea2cadea86138c1afc23ae9')
version('6.20.06', sha256='9a734758a91598d8a58a3d64d7d606aeb17bdf6fd8214e33f5c4d9947d391951')
version('6.20.04', sha256='1f8c76ccdb550e64e6ddb092b4a7e9d0a10655ef80044828cba12d5e7c874472')
version('6.20.02', sha256='0997586bf097c0afbc6f08edbffcebf5eb6a4237262216114ba3f5c8087dcba6')
@@ -85,6 +92,8 @@ class Root(CMakePackage):
description='Enable Aqua interface')
variant('davix', default=True,
description='Compile with external Davix')
+ variant('dcache', default=False,
+ description='Enable support for dCache')
variant('emacs', default=False,
description='Enable Emacs support')
variant('examples', default=True,
@@ -122,6 +131,8 @@ class Root(CMakePackage):
variant('mysql', default=False)
variant('opengl', default=True,
description='Enable OpenGL support')
+ variant('oracle', default=False,
+ description='Enable support for Oracle databases')
variant('postgres', default=False,
description='Enable postgres support')
variant('pythia6', default=False,
@@ -136,12 +147,14 @@ class Root(CMakePackage):
description='Enable R ROOT bindings')
variant('rpath', default=True,
description='Enable RPATH')
- variant('rootfit', default=True,
+ variant('roofit', default=True,
description='Build the libRooFit advanced fitting package')
variant('root7', default=False,
description='Enable ROOT 7 support')
variant('shadow', default=False,
description='Enable shadow password support')
+ variant('spectrum', default=False,
+ description='Enable support for TSpectrum')
variant('sqlite', default=False,
description='Enable SQLite support')
variant('ssl', default=False,
@@ -160,6 +173,8 @@ class Root(CMakePackage):
description='Enable Vc for adding new types for SIMD programming')
variant('vdt', default=True,
description='Enable set of fast and vectorisable math functions')
+ variant('veccore', default=False,
+ description='Enable support for VecCore SIMD abstraction library')
variant('vmc', default=False,
description='Enable the Virtual Monte Carlo interface')
variant('x', default=True,
@@ -190,6 +205,7 @@ class Root(CMakePackage):
depends_on('libpng')
depends_on('lz4', when='@6.13.02:') # See cmake_args, below.
depends_on('ncurses')
+ depends_on('nlohmann-json', when='@6.24:')
depends_on('pcre')
depends_on('xxhash', when='@6.13.02:') # See cmake_args, below.
depends_on('xz')
@@ -224,6 +240,7 @@ class Root(CMakePackage):
# Optional dependencies
depends_on('davix @0.7.1:', when='+davix')
+ depends_on('dcap', when='+dcache')
depends_on('cfitsio', when='+fits')
depends_on('fftw', when='+fftw')
depends_on('graphviz', when='+graphviz')
@@ -232,6 +249,7 @@ class Root(CMakePackage):
depends_on('mysql-client', when='+mysql')
depends_on('openssl', when='+ssl')
depends_on('openssl', when='+davix') # Also with davix
+ depends_on('oracle-instant-client@19.10.0.0.0', when='+oracle @:6.24.01')
depends_on('postgresql', when='+postgres')
depends_on('pythia6+root', when='+pythia6')
depends_on('pythia8', when='+pythia8')
@@ -242,11 +260,19 @@ class Root(CMakePackage):
depends_on('shadow', when='+shadow')
depends_on('sqlite', when='+sqlite')
depends_on('tbb', when='+tbb')
+ # See: https://github.com/root-project/root/issues/6933
+ conflicts('^intel-tbb@2021.1:', when='@:6.22',
+ msg='Please use an older intel-tbb version')
+ conflicts('^intel-oneapi-tbb@2021.1:', when='@:6.22',
+ msg='Please use an older intel-tbb/intel-oneapi-tbb version')
+ # depends_on('intel-tbb@:2021.0', when='@:6.22 ^intel-tbb')
depends_on('unuran', when='+unuran')
depends_on('vc', when='+vc')
depends_on('vdt', when='+vdt')
+ depends_on('veccore', when='+veccore')
depends_on('libxml2', when='+xml')
- depends_on('xrootd@:4.99.99', when='+xrootd')
+ depends_on('xrootd', when='+xrootd')
+ depends_on('xrootd@:4.99.99', when='@:6.22.03 +xrootd')
# ###################### Conflicts ######################
@@ -279,6 +305,25 @@ class Root(CMakePackage):
conflicts('+' + pkg, when='@6.18.00:',
msg='Obsolete option +{0} selected.'.format(pkg))
+ @classmethod
+ def filter_detected_exes(cls, prefix, exes_in_prefix):
+ result = []
+ for exe in exes_in_prefix:
+ # no need to check the root executable itself
+ # we can get all information from root-config
+ if exe.endswith('root'):
+ continue
+ result.append(exe)
+ return result
+
+ @classmethod
+ def determine_version(cls, exe):
+ output = Executable(exe)('--version', output=str, error=str)
+ # turn the output of root-config --version
+ # (something like 6.22/06)
+ # into the format used in this recipe (6.22.06)
+ return output.strip().replace('/', '.')
+
def cmake_args(self):
spec = self.spec
define = self.define
@@ -323,6 +368,7 @@ class Root(CMakePackage):
define('builtin_llvm', True),
define('builtin_lz4', self.spec.satisfies('@6.12.02:6.12.99')),
define('builtin_lzma', False),
+ define('builtin_nlohmannjson', False),
define('builtin_openssl', False),
define('builtin_pcre', False),
define('builtin_tbb', False),
@@ -351,7 +397,7 @@ class Root(CMakePackage):
define_from_variant('cocoa', 'aqua'),
define('dataframe', True),
define_from_variant('davix'),
- define('dcache', False),
+ define_from_variant('dcache'),
define_from_variant('fftw3', 'fftw'),
define_from_variant('fitsio', 'fits'),
define_from_variant('ftgl', 'opengl'),
@@ -380,7 +426,7 @@ class Root(CMakePackage):
define_from_variant('mysql'),
define('odbc', False),
define_from_variant('opengl'),
- define('oracle', False),
+ define_from_variant('oracle'),
define_from_variant('pgsql', 'postgres'),
define_from_variant('pythia6'),
define_from_variant('pythia8'),
@@ -388,11 +434,12 @@ class Root(CMakePackage):
define_from_variant('qtgsi', 'qt4'), # See conflicts
define_from_variant('r'),
define('rfio', False),
- define('roofit', False),
+ define_from_variant('roofit'),
define_from_variant('root7'), # See conflicts
define('ruby', False),
define('sapdb', False),
define_from_variant('shadowpw', 'shadow'),
+ define_from_variant('spectrum'),
define_from_variant('sqlite'),
define('srp', False),
define_from_variant('ssl'),
@@ -403,7 +450,7 @@ class Root(CMakePackage):
define_from_variant('unuran'),
define_from_variant('vc'),
define_from_variant('vdt'),
- define('veccore', False),
+ define_from_variant('veccore'),
define_from_variant('vmc'),
define_from_variant('webui', 'root7'), # requires root7
define_from_variant('x11', 'x'),
@@ -413,7 +460,7 @@ class Root(CMakePackage):
]
# Some special features
- if self.spec.satisfies('@6.20:'):
+ if self.spec.satisfies('@6.20.02:'):
options.append(define_from_variant('pyroot', 'python'))
else:
options.append(define_from_variant('python'))
diff --git a/var/spack/repos/builtin/packages/rose/package.py b/var/spack/repos/builtin/packages/rose/package.py
index 0255230da1..ac2b9f0baf 100644
--- a/var/spack/repos/builtin/packages/rose/package.py
+++ b/var/spack/repos/builtin/packages/rose/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ross/package.py b/var/spack/repos/builtin/packages/ross/package.py
index 7c33fef84a..21e99499ba 100644
--- a/var/spack/repos/builtin/packages/ross/package.py
+++ b/var/spack/repos/builtin/packages/ross/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/routino/package.py b/var/spack/repos/builtin/packages/routino/package.py
index b1b7fafccc..f1f58956ff 100644
--- a/var/spack/repos/builtin/packages/routino/package.py
+++ b/var/spack/repos/builtin/packages/routino/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rpcsvc-proto/package.py b/var/spack/repos/builtin/packages/rpcsvc-proto/package.py
index fd89714027..10d4221abc 100644
--- a/var/spack/repos/builtin/packages/rpcsvc-proto/package.py
+++ b/var/spack/repos/builtin/packages/rpcsvc-proto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rpm/package.py b/var/spack/repos/builtin/packages/rpm/package.py
new file mode 100644
index 0000000000..ec78423250
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rpm/package.py
@@ -0,0 +1,139 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+import os
+from spack import *
+import llnl.util.tty as tty
+
+
+class Rpm(AutotoolsPackage):
+ """
+ The RPM package manager
+ https://github.com/rpm-software-management/rpm/blob/master/INSTALL
+ Note that debugedit is an additional tool that *should* compile with
+ adding libdw and elfutils, but the library (as of 4.16.1.2) is being
+ removed from rpm and will be put somewhere else.
+ """
+
+ homepage = "https://github.com/rpm-software-management/rpm"
+ url = "https://github.com/rpm-software-management/rpm/archive/rpm-4.16.0-release.tar.gz"
+
+ version('4.16.0', sha256='a62b744e3404b107e8467e1a36ff0f2bf9e5c1b748dbfeb36db54bbb859446ea')
+ version('4.16.1.2', sha256='3d2807807a8ccaa92a8ced74e09b5bf5b2417a5bbf9bee4abc7c6aa497547bf3')
+
+ variant('openssl', default=False, description='use openssl for cryptographic library')
+ variant('sqlite', default=False, description='use sqlite instead of ndb')
+ variant('bdb_ro', default=False, description='standalone support for read-only BDB databases')
+ variant('selinux', default=False, description="enable support for SELinux")
+ variant('python', default=False, description="build Python bindings to RPM library")
+ variant('posix', default=False, description="enable POSIX.1e draft 15 file capabilities support")
+ variant('gpg', default=False, description="install gpg for using cryptographic signatures")
+ variant('openmp', default=True, description="OpenMP multithreading support")
+ variant('docs', default=False, description='build documentation')
+
+ # Always required
+ depends_on('popt')
+
+ # Without this file patch, we don't detect lua
+ depends_on('lua+pcfile@5.3.5:')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+
+ # Enable POSIX.1e draft 15 file capabilities support
+ depends_on('libcap', when="+posix")
+ depends_on('berkeley-db@4.5:')
+
+ # Required for National Language Support, if not present autopoint error
+ depends_on('gettext')
+ depends_on('file') # provides magic.h
+ depends_on('libarchive')
+
+ # suppot for cryptographic signatures
+ depends_on('gnupg', when="+gpg")
+
+ # cryptographic library to support digests and signatures
+ depends_on('libgcrypt', when='-openssl')
+ depends_on('openssl@1.0.2:', when='+openssl')
+
+ # RPM needs some database, ndb requires no extra dependencies but sqlite does
+ depends_on('sqlite@3.22.0:', when='+sqlite')
+
+ # Python 2.x support is being deprecated
+ depends_on('python@3.1:', when='+sqlite')
+
+ # compression support
+ depends_on('zlib')
+
+ # Desired to install these formats for use
+ depends_on('bzip2')
+ depends_on('gzip')
+ depends_on('xz')
+
+ # java jar dependency analysis (already requirement for lua)
+ depends_on('unzip', type='run')
+
+ # Documentation dependencies
+ depends_on('doxygen', type="build", when="+docs")
+
+ def setup_build_environment(self, env):
+ env.set('LIBS', self.spec['gettext'].libs.search_flags + ' -lintl')
+
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./autogen.sh', '--noconfigure')
+
+ def configure_args(self):
+ spec = self.spec
+
+ args = ["--enable-ndb"]
+
+ pkg_config = os.path.join(spec['lua'].prefix.lib, "pkgconfig")
+ os.environ['PKG_CONFIG_PATH'] = pkg_config
+ os.putenv('PKG_CONFIG_PATH', pkg_config)
+
+ # cryptography library defaults to libgcrypt, but doesn't hurt to specify
+ if "+openssl" in spec:
+ args.append("--with-crypto=openssl")
+ tty.warning(openssl_warning)
+ else:
+ args.append("--with-crypto=libgcrypt")
+
+ # Default to ndb (no deps) if sqlite not wanted
+ if "+sqlite" in spec:
+ args.append("--enable-sqlite")
+ if "+bdb_ro" in spec:
+ args.append("--bdb-ro")
+
+ # Enable support for selinux
+ if "+selinux" in spec:
+ args.append('--with-selinux')
+ if "+python" in spec:
+ args.append("--enable-python")
+
+ # enable POSIX.1e draft 15 file capabilities support
+ if "+posix" in spec:
+ args.append('--with-cap')
+
+ # OpenMP multithreading support automatically enabled if C compiler has
+ # support for OpenMP version 4.5 or higher
+ if "~openmp" in spec:
+ args.append("--disable-openmp")
+
+ return args
+
+
+# This warning is from the INSTALL about licensing when using openssl.
+# We need to show it to the user if they choose the openssl variant.
+
+openssl_warning = """
+When compiling against OpenSSL, there is a possible license incompatibility.
+For more details on this, see https://people.gnome.org/~markmc/openssl-and-the-gpl.html
+Some Linux distributions have different legal interpretations of this
+possible incompatibility. It is recommended to consult with a lawyer before
+building RPM against OpenSSL.
+Fedora: https://fedoraproject.org/wiki/Licensing:FAQ#What.27s_the_deal_with_the_OpenSSL_license.3F
+Debian: https://lists.debian.org/debian-legal/2002/10/msg00113.html"""
diff --git a/var/spack/repos/builtin/packages/rr/package.py b/var/spack/repos/builtin/packages/rr/package.py
index f96d336533..0d3539135d 100644
--- a/var/spack/repos/builtin/packages/rr/package.py
+++ b/var/spack/repos/builtin/packages/rr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rrdtool/package.py b/var/spack/repos/builtin/packages/rrdtool/package.py
index b3f22b0be0..99d5170d73 100644
--- a/var/spack/repos/builtin/packages/rrdtool/package.py
+++ b/var/spack/repos/builtin/packages/rrdtool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,5 +22,7 @@ class Rrdtool(AutotoolsPackage):
depends_on('perl-extutils-makemaker')
def configure_args(self):
- args = ['LDFLAGS=-lintl']
+ args = ['LDFLAGS=-lintl',
+ "--with-systemdsystemunitdir=" +
+ self.spec['rrdtool'].prefix.lib.systemd.system]
return args
diff --git a/var/spack/repos/builtin/packages/rsbench/package.py b/var/spack/repos/builtin/packages/rsbench/package.py
index 08ca35a20f..5e16563e99 100644
--- a/var/spack/repos/builtin/packages/rsbench/package.py
+++ b/var/spack/repos/builtin/packages/rsbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rsem/package.py b/var/spack/repos/builtin/packages/rsem/package.py
index 8e24f7bfcd..eebce12929 100644
--- a/var/spack/repos/builtin/packages/rsem/package.py
+++ b/var/spack/repos/builtin/packages/rsem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rstart/package.py b/var/spack/repos/builtin/packages/rstart/package.py
index aa49ddbfe9..ee13a1987b 100644
--- a/var/spack/repos/builtin/packages/rstart/package.py
+++ b/var/spack/repos/builtin/packages/rstart/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Rstart(AutotoolsPackage, XorgPackage):
version('1.0.5', sha256='5271c0c2675b4ad09aace7edddfdd137af10fc754afa6260d8eb5d0bba7098c7')
- depends_on('xproto', type='build')
+ depends_on('xproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/rsync/package.py b/var/spack/repos/builtin/packages/rsync/package.py
index d9a59ed7bd..e223150cfe 100644
--- a/var/spack/repos/builtin/packages/rsync/package.py
+++ b/var/spack/repos/builtin/packages/rsync/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+import re
class Rsync(AutotoolsPackage):
@@ -25,5 +26,13 @@ class Rsync(AutotoolsPackage):
conflicts('%nvhpc')
+ executables = ['^rsync$']
+
+ @classmethod
+ def determine_version(cls, exe):
+ output = Executable(exe)('--version', output=str, error=str)
+ match = re.search(r'rsync\s+version\s+(\S+)', output)
+ return match.group(1) if match else None
+
def configure_args(self):
return ['--with-included-zlib=no']
diff --git a/var/spack/repos/builtin/packages/rsyslog/package.py b/var/spack/repos/builtin/packages/rsyslog/package.py
index 5bc81968a0..0e89cd88ef 100644
--- a/var/spack/repos/builtin/packages/rsyslog/package.py
+++ b/var/spack/repos/builtin/packages/rsyslog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,7 +23,7 @@ class Rsyslog(AutotoolsPackage):
depends_on('libestr')
depends_on('libfastjson')
depends_on('zlib')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('libgcrypt')
depends_on('curl')
depends_on('byacc', type='build')
@@ -31,3 +31,8 @@ class Rsyslog(AutotoolsPackage):
def setup_run_environment(self, env):
env.prepend_path('PATH', self.prefix.sbin)
+
+ def configure_args(self):
+ args = ["--with-systemdsystemunitdir=" +
+ self.spec['rsyslog'].prefix.lib.systemd.system]
+ return args
diff --git a/var/spack/repos/builtin/packages/rt-tests/package.py b/var/spack/repos/builtin/packages/rt-tests/package.py
index ba5975e518..8484e5af19 100644
--- a/var/spack/repos/builtin/packages/rt-tests/package.py
+++ b/var/spack/repos/builtin/packages/rt-tests/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rtags/package.py b/var/spack/repos/builtin/packages/rtags/package.py
index 6ae39013aa..d89759891b 100644
--- a/var/spack/repos/builtin/packages/rtags/package.py
+++ b/var/spack/repos/builtin/packages/rtags/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,7 @@ class Rtags(CMakePackage):
homepage = "https://github.com/Andersbakken/rtags/"
url = "https://andersbakken.github.io/rtags-releases/rtags-2.17.tar.gz"
+ version('2.20', sha256='dceab009194bcfa4265950dac16832bae7883e95d3bc41b215e90bc888db9cb1')
version('2.17', sha256='cde8882aceb09d65690007e214cc1979e0105842beb7747d49f79e33ed37d383')
depends_on("llvm@3.3: +clang")
diff --git a/var/spack/repos/builtin/packages/rtax/package.py b/var/spack/repos/builtin/packages/rtax/package.py
index 830e9b8073..24c06ed2e5 100644
--- a/var/spack/repos/builtin/packages/rtax/package.py
+++ b/var/spack/repos/builtin/packages/rtax/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-asciidoctor/package.py b/var/spack/repos/builtin/packages/ruby-asciidoctor/package.py
index e83abed536..8768e76da2 100644
--- a/var/spack/repos/builtin/packages/ruby-asciidoctor/package.py
+++ b/var/spack/repos/builtin/packages/ruby-asciidoctor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-erubis/package.py b/var/spack/repos/builtin/packages/ruby-erubis/package.py
index 764f2f342c..58862c43a1 100644
--- a/var/spack/repos/builtin/packages/ruby-erubis/package.py
+++ b/var/spack/repos/builtin/packages/ruby-erubis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-gnuplot/package.py b/var/spack/repos/builtin/packages/ruby-gnuplot/package.py
index 56509c40ea..dac530f4c2 100644
--- a/var/spack/repos/builtin/packages/ruby-gnuplot/package.py
+++ b/var/spack/repos/builtin/packages/ruby-gnuplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-hpricot/package.py b/var/spack/repos/builtin/packages/ruby-hpricot/package.py
index 92edad8281..0b824913e4 100644
--- a/var/spack/repos/builtin/packages/ruby-hpricot/package.py
+++ b/var/spack/repos/builtin/packages/ruby-hpricot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-mustache/package.py b/var/spack/repos/builtin/packages/ruby-mustache/package.py
index 494bd4c8fc..c81f99fdcd 100644
--- a/var/spack/repos/builtin/packages/ruby-mustache/package.py
+++ b/var/spack/repos/builtin/packages/ruby-mustache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-narray/package.py b/var/spack/repos/builtin/packages/ruby-narray/package.py
index 0f38c039f7..00af435e33 100644
--- a/var/spack/repos/builtin/packages/ruby-narray/package.py
+++ b/var/spack/repos/builtin/packages/ruby-narray/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-rake/package.py b/var/spack/repos/builtin/packages/ruby-rake/package.py
index b9b59c0b22..ceda5924b7 100644
--- a/var/spack/repos/builtin/packages/ruby-rake/package.py
+++ b/var/spack/repos/builtin/packages/ruby-rake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-rdiscount/package.py b/var/spack/repos/builtin/packages/ruby-rdiscount/package.py
index 40a3ae1499..5eee5c4c73 100644
--- a/var/spack/repos/builtin/packages/ruby-rdiscount/package.py
+++ b/var/spack/repos/builtin/packages/ruby-rdiscount/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-ronn/package.py b/var/spack/repos/builtin/packages/ruby-ronn/package.py
index 5571ff6d64..b335ad0d4c 100644
--- a/var/spack/repos/builtin/packages/ruby-ronn/package.py
+++ b/var/spack/repos/builtin/packages/ruby-ronn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-rubyinline/package.py b/var/spack/repos/builtin/packages/ruby-rubyinline/package.py
index cb26205355..0abd0f6bb6 100644
--- a/var/spack/repos/builtin/packages/ruby-rubyinline/package.py
+++ b/var/spack/repos/builtin/packages/ruby-rubyinline/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-svn2git/package.py b/var/spack/repos/builtin/packages/ruby-svn2git/package.py
index 5715a9d922..3926a759c1 100644
--- a/var/spack/repos/builtin/packages/ruby-svn2git/package.py
+++ b/var/spack/repos/builtin/packages/ruby-svn2git/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-terminal-table/package.py b/var/spack/repos/builtin/packages/ruby-terminal-table/package.py
index b2384ab225..7523aa42ec 100644
--- a/var/spack/repos/builtin/packages/ruby-terminal-table/package.py
+++ b/var/spack/repos/builtin/packages/ruby-terminal-table/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-thor/package.py b/var/spack/repos/builtin/packages/ruby-thor/package.py
index e514ea5066..135976a702 100644
--- a/var/spack/repos/builtin/packages/ruby-thor/package.py
+++ b/var/spack/repos/builtin/packages/ruby-thor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-tmuxinator/package.py b/var/spack/repos/builtin/packages/ruby-tmuxinator/package.py
index 31e1fa8580..d5066fe027 100644
--- a/var/spack/repos/builtin/packages/ruby-tmuxinator/package.py
+++ b/var/spack/repos/builtin/packages/ruby-tmuxinator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-unicode-display-width/package.py b/var/spack/repos/builtin/packages/ruby-unicode-display-width/package.py
index 6f4073e097..9a5d845c44 100644
--- a/var/spack/repos/builtin/packages/ruby-unicode-display-width/package.py
+++ b/var/spack/repos/builtin/packages/ruby-unicode-display-width/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-xdg/package.py b/var/spack/repos/builtin/packages/ruby-xdg/package.py
index 6c86522cc9..0ee2902b58 100644
--- a/var/spack/repos/builtin/packages/ruby-xdg/package.py
+++ b/var/spack/repos/builtin/packages/ruby-xdg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby-zentest/package.py b/var/spack/repos/builtin/packages/ruby-zentest/package.py
index 64960072b3..e5a6ba7b44 100644
--- a/var/spack/repos/builtin/packages/ruby-zentest/package.py
+++ b/var/spack/repos/builtin/packages/ruby-zentest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ruby/package.py b/var/spack/repos/builtin/packages/ruby/package.py
index 132e1c83fb..ae5a76e5b5 100644
--- a/var/spack/repos/builtin/packages/ruby/package.py
+++ b/var/spack/repos/builtin/packages/ruby/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Ruby(AutotoolsPackage):
list_url = "http://cache.ruby-lang.org/pub/ruby/"
list_depth = 1
+ version('3.0.0', sha256='a13ed141a1c18eb967aac1e33f4d6ad5f21be1ac543c344e0d6feeee54af8e28')
+ version('2.7.2', sha256='6e5706d0d4ee4e1e2f883db9d768586b4d06567debea353c796ec45e8321c3d4')
version('2.7.1', sha256='d418483bdd0000576c1370571121a6eb24582116db0b7bb2005e90e250eae418')
version('2.6.2', sha256='a0405d2bf2c2d2f332033b70dff354d224a864ab0edd462b7a413420453b49ab')
version('2.5.3', sha256='9828d03852c37c20fa333a0264f2490f07338576734d910ee3fd538c9520846c')
@@ -28,9 +30,9 @@ class Ruby(AutotoolsPackage):
depends_on('pkgconfig', type=('build'))
depends_on('libffi')
depends_on('zlib')
- depends_on('libx11')
- depends_on('tcl')
- depends_on('tk')
+ depends_on('libx11', when='@:2.3')
+ depends_on('tcl', when='@:2.3')
+ depends_on('tk', when='@:2.3')
depends_on('openssl@:1.0', when='@:2.3+openssl')
depends_on('openssl', when='+openssl')
depends_on('readline', when='+readline')
@@ -73,7 +75,8 @@ class Ruby(AutotoolsPackage):
if '+readline' in self.spec:
args.append("--with-readline-dir=%s"
% self.spec['readline'].prefix)
- args.append('--with-tk=%s' % self.spec['tk'].prefix)
+ if '^tk' in self.spec:
+ args.append('--with-tk=%s' % self.spec['tk'].prefix)
if self.spec.satisfies("%fj"):
args.append('--disable-dtrace')
return args
diff --git a/var/spack/repos/builtin/packages/rust-bindgen/package.py b/var/spack/repos/builtin/packages/rust-bindgen/package.py
index 47563a9064..23c524a8c9 100644
--- a/var/spack/repos/builtin/packages/rust-bindgen/package.py
+++ b/var/spack/repos/builtin/packages/rust-bindgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/rust/package.py b/var/spack/repos/builtin/packages/rust/package.py
index 60e1bec023..b13a5057f1 100644
--- a/var/spack/repos/builtin/packages/rust/package.py
+++ b/var/spack/repos/builtin/packages/rust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -62,6 +62,7 @@ class Rust(Package):
depends_on('python@2.7:2.8', when='@:1.43', type='build')
depends_on('gmake@3.81:', type='build')
depends_on('cmake@3.4.3:', type='build')
+ depends_on('ninja', when='@1.48.0:', type='build')
depends_on('pkgconfig', type='build')
depends_on('openssl')
depends_on('libssh2')
@@ -87,6 +88,8 @@ class Rust(Package):
# The `x.py` bootstrapping script did not exist prior to Rust 1.17. It
# would be possible to support both, but for simplicitly, we only support
# Rust 1.17 and newer
+ version('1.51.0', sha256='7a6b9bafc8b3d81bbc566e7c0d1f17c9f499fd22b95142f7ea3a8e4d1f9eb847')
+ version('1.48.0', sha256='0e763e6db47d5d6f91583284d2f989eacc49b84794d1443355b85c58d67ae43b')
version('1.47.0', sha256='3185df064c4747f2c8b9bb8c4468edd58ff4ad6d07880c879ac1b173b768d81d')
version('1.46.0', sha256='2d6a3b7196db474ba3f37b8f5d50a1ecedff00738d7846840605b42bfc922728')
version('1.45.1', sha256='ea53e6424e3d1fe56c6d77a00e72c5d594b509ec920c5a779a7b8e1dbd74219b')
@@ -133,6 +136,18 @@ class Rust(Package):
# This dictionary contains a version: hash dictionary for each supported
# Rust target.
rust_releases = {
+ '1.51.0': {
+ 'x86_64-unknown-linux-gnu': '9e125977aa13f012a68fdc6663629c685745091ae244f0587dd55ea4e3a3e42f',
+ 'powerpc64le-unknown-linux-gnu': '7362f561104d7be4836507d3a53cd39444efcdf065813d559beb1f54ce9f7680',
+ 'aarch64-unknown-linux-gnu': 'fd31c78fffad52c03cac5a7c1ee5db3f34b2a77d7bc862707c0f71e209180a84',
+ 'x86_64-apple-darwin': '765212098a415996b767d1e372ce266caf94027402b269fec33291fffc085ca4'
+ },
+ '1.48.0': {
+ 'x86_64-unknown-linux-gnu': '950420a35b2dd9091f1b93a9ccd5abc026ca7112e667f246b1deb79204e2038b',
+ 'powerpc64le-unknown-linux-gnu': 'e6457a0214f3b1b04bd5b2618bba7e3826e254216420dede2971b571a1c13bb1',
+ 'aarch64-unknown-linux-gnu': 'c4769418d8d89f432e4a3a21ad60f99629e4b13bbfc29aef7d9d51c4e8ee8a8a',
+ 'x86_64-apple-darwin': 'f30ce0162b39dc7cf877020cec64d4826cad50467af493d180b5b28cf5eb50b3'
+ },
'1.47.0': {
'x86_64-unknown-linux-gnu': 'd0e11e1756a072e8e246b05d54593402813d047d12e44df281fbabda91035d96',
'powerpc64le-unknown-linux-gnu': '5760c3b1897ea70791320c2565f3eef700a3d54059027b84bbe6b8d6157f81c8',
@@ -437,9 +452,8 @@ class Rust(Package):
),
sha256=rust_sha256,
destination='spack_bootstrap_stage',
- when='@{version} platform={platform} target={target}'\
- .format(
- version=rust_version,
+ when='@{ver} platform={platform} target={target}'.format(
+ ver=rust_version,
platform=rust_arch['platform'],
target=rust_arch['target']
)
@@ -469,6 +483,14 @@ class Rust(Package):
return '@{0}:'.format(version) in self.spec
+ def patch(self):
+ if self.spec.satisfies('@1.51.0'):
+ # see 31c93397bde7 upstream
+ filter_file('panic!(out);',
+ 'panic!("{}", out);',
+ 'src/bootstrap/builder.rs',
+ string=True)
+
def configure(self, spec, prefix):
target = self.get_rust_target()
@@ -513,7 +535,7 @@ class Rust(Package):
ar = which('ar', required=True)
extra_targets = []
- if self.spec.variants['extra_targets'].value != 'none':
+ if not self.spec.satisfies('extra_targets=none'):
extra_targets = list(self.spec.variants['extra_targets'].value)
targets = [self.get_rust_target()] + extra_targets
diff --git a/var/spack/repos/builtin/packages/sabre/package.py b/var/spack/repos/builtin/packages/sabre/package.py
index 6f7a647154..51911d2940 100644
--- a/var/spack/repos/builtin/packages/sabre/package.py
+++ b/var/spack/repos/builtin/packages/sabre/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/saga-gis/package.py b/var/spack/repos/builtin/packages/saga-gis/package.py
index bb867da786..c659a44e6c 100644
--- a/var/spack/repos/builtin/packages/saga-gis/package.py
+++ b/var/spack/repos/builtin/packages/saga-gis/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sailfish/package.py b/var/spack/repos/builtin/packages/sailfish/package.py
index ea202bb58f..cb354e8973 100644
--- a/var/spack/repos/builtin/packages/sailfish/package.py
+++ b/var/spack/repos/builtin/packages/sailfish/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/salmon-tddft/cmakefix.patch b/var/spack/repos/builtin/packages/salmon-tddft/cmakefix.patch
new file mode 100755
index 0000000000..65ff24bdb4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/salmon-tddft/cmakefix.patch
@@ -0,0 +1,108 @@
+diff -ru spack-src.org/cmakefiles/Modules/FindBLACS.cmake spack-src/cmakefiles/Modules/FindBLACS.cmake
+--- spack-src.org/cmakefiles/Modules/FindBLACS.cmake 2020-12-22 17:37:19.960178408 +0900
++++ spack-src/cmakefiles/Modules/FindBLACS.cmake 2020-12-22 17:32:55.395622085 +0900
+@@ -29,7 +29,7 @@
+ # ## List of vendors (BLA_VENDOR) valid in this module
+ # Generic, Intel (MKL)
+
+-set(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
++set(_salmon_blacks_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
+
+ # Check the language being used
+ if( NOT (CMAKE_C_COMPILER_LOADED OR CMAKE_CXX_COMPILER_LOADED OR CMAKE_Fortran_COMPILER_LOADED) )
+@@ -55,7 +55,7 @@
+
+ # TODO: move this stuff to separate module
+
+-macro(Check_Lapack_Libraries LIBRARIES _prefix _name _flags _list _blas _threads)
++macro(salmon_Check_Lapack_Libraries LIBRARIES _prefix _name _flags _list _blas _threads)
+ # This macro checks for the existence of the combination of fortran libraries
+ # given by _list. If the combination is found, this macro checks (using the
+ # Check_Fortran_Function_Exists macro) whether can link against that library
+@@ -170,7 +170,7 @@
+ if (BLA_VENDOR STREQUAL "Generic" OR
+ BLA_VENDOR STREQUAL "All")
+ if ( NOT BLACS_LIBRARIES )
+- check_lapack_libraries(
++ salmon_check_lapack_libraries(
+ BLACS_LIBRARIES
+ BLACS
+ pcheevx
+@@ -215,7 +215,7 @@
+
+ # First try empty lapack libs
+ if (NOT ${_LIBRARIES})
+- check_lapack_libraries(
++ salmon_check_lapack_libraries(
+ ${_LIBRARIES}
+ BLACS
+ ${BLACS_mkl_SEARCH_SYMBOL}
+@@ -228,7 +228,7 @@
+ # Then try the search libs
+ foreach (IT ${BLACS_SEARCH_LIBS})
+ if (NOT ${_LIBRARIES})
+- check_lapack_libraries(
++ salmon_check_lapack_libraries(
+ ${_LIBRARIES}
+ BLACS
+ ${BLACS_mkl_SEARCH_SYMBOL}
+@@ -268,4 +268,4 @@
+ endif()
+
+ cmake_pop_check_state()
+-set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
++set(CMAKE_FIND_LIBRARY_SUFFIXES ${_salmon_blacks_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
+diff -ru spack-src.org/cmakefiles/Modules/FindScaLAPACK.cmake spack-src/cmakefiles/Modules/FindScaLAPACK.cmake
+--- spack-src.org/cmakefiles/Modules/FindScaLAPACK.cmake 2020-12-22 17:37:19.965178229 +0900
++++ spack-src/cmakefiles/Modules/FindScaLAPACK.cmake 2020-12-22 17:33:39.365051770 +0900
+@@ -29,7 +29,7 @@
+ # ## List of vendors (BLA_VENDOR) valid in this module
+ # Generic, Intel (MKL)
+
+-set(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
++set(_salmon_scalapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
+
+ # Check the language being used
+ if( NOT (CMAKE_C_COMPILER_LOADED OR CMAKE_CXX_COMPILER_LOADED OR CMAKE_Fortran_COMPILER_LOADED) )
+@@ -55,7 +55,7 @@
+
+ # TODO: move this stuff to separate module
+
+-macro(Check_Lapack_Libraries LIBRARIES _prefix _name _flags _list _blas _threads)
++macro(salmon_Check_Lapack_Libraries LIBRARIES _prefix _name _flags _list _blas _threads)
+ # This macro checks for the existence of the combination of fortran libraries
+ # given by _list. If the combination is found, this macro checks (using the
+ # Check_Fortran_Function_Exists macro) whether can link against that library
+@@ -161,7 +161,7 @@
+ if (BLA_VENDOR STREQUAL "Generic" OR
+ BLA_VENDOR STREQUAL "All")
+ if ( NOT ScaLAPACK_LIBRARIES )
+- check_lapack_libraries(
++ salmon_check_lapack_libraries(
+ ScaLAPACK_LIBRARIES
+ ScaLAPACK
+ pcheevx
+@@ -202,7 +202,7 @@
+
+ # First try empty lapack libs
+ if (NOT ${_LIBRARIES})
+- check_lapack_libraries(
++ salmon_check_lapack_libraries(
+ ${_LIBRARIES}
+ ScaLAPACK
+ ${ScaLAPACK_mkl_SEARCH_SYMBOL}
+@@ -215,7 +215,7 @@
+ # Then try the search libs
+ foreach (IT ${ScaLAPACK_SEARCH_LIBS})
+ if (NOT ${_LIBRARIES})
+- check_lapack_libraries(
++ salmon_check_lapack_libraries(
+ ${_LIBRARIES}
+ ScaLAPACK
+ ${ScaLAPACK_mkl_SEARCH_SYMBOL}
+@@ -255,4 +255,4 @@
+ endif()
+
+ cmake_pop_check_state()
+-set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
++set(CMAKE_FIND_LIBRARY_SUFFIXES ${_salmon_scalapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
diff --git a/var/spack/repos/builtin/packages/salmon-tddft/fjmpi.patch b/var/spack/repos/builtin/packages/salmon-tddft/fjmpi.patch
new file mode 100755
index 0000000000..3208d150e8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/salmon-tddft/fjmpi.patch
@@ -0,0 +1,67 @@
+--- spack-src.org/CMakeLists.txt 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/CMakeLists.txt 2020-12-23 11:32:57.147128677 +0900
+@@ -38,6 +38,7 @@
+ option_set(USE_SCALAPACK "Use ScaLAPACK Library" OFF)
+ option_set(USE_EIGENEXA "Use EigenExa Library" OFF)
+ option_set(USE_LIBXC "Use Libxc library" OFF)
++option_set(USE_FJMPI "Use FUJITSU MPI" OFF)
+
+ ## Optimization for stencil compitations
+ option_set(USE_OPT_DOMAIN_IS_POW2 "Enable whether the opimization assumes that a stencil domain size is power of two" OFF)
+--- spack-src.org/src/config.h.in 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/config.h.in 2020-12-23 11:48:48.384061907 +0900
+@@ -15,6 +15,7 @@
+ #cmakedefine SYSTEM_HAS_PATH_MAX_IN_LINUX_LIMITS_H
+
+ #cmakedefine USE_MPI
++#cmakedefine USE_FJMPI
+ #cmakedefine USE_SCALAPACK
+ #cmakedefine USE_EIGENEXA
+ #cmakedefine USE_LIBXC
+diff -ru spack-src.org/src/parallel/init_communicator.f90 spack-src/src/parallel/init_communicator.f90
+--- spack-src.org/src/parallel/init_communicator.f90 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/parallel/init_communicator.f90 2020-12-23 11:50:58.997384260 +0900
+@@ -13,6 +13,7 @@
+ ! See the License for the specific language governing permissions and
+ ! limitations under the License.
+ !
++#include "config.h"
+ MODULE init_communicator
+ implicit none
+
+@@ -35,7 +36,7 @@
+ integer :: i1,i2,i3,i4,i5,ix,iy,iz,nl
+ integer,allocatable :: iranklists(:)
+
+-#ifdef __FUJITSU
++#ifdef USE_FJMPI
+ integer :: iret
+ #endif
+
+@@ -59,7 +60,7 @@
+ 0:nproc_k-1))
+
+ ! communicator r,o,k,ro,ko
+-#ifdef __FUJITSU
++#ifdef USE_FJMPI
+ call tofu_network_oriented_mapping(iret)
+ if (iret < 0) then
+ if (comm_is_root(info%id_rko)) then
+@@ -106,7 +107,7 @@
+
+ if (nl /= info%isize_rko-1) &
+ stop '[FATAL ERROR] init_communicator_dft'
+-#ifdef __FUJITSU
++#ifdef USE_FJMPI
+ end if
+ #endif
+
+@@ -234,7 +235,7 @@
+ info%icomm_xy = comm_create_group_byid(comm, iranklists(1:nl))
+ call comm_get_groupinfo(info%icomm_xy, info%id_xy, info%isize_xy)
+
+-#ifdef __FUJITSU
++#ifdef USE_FJMPI
+ contains
+ subroutine tofu_network_oriented_mapping(iret)
+ use mpi_ext
diff --git a/var/spack/repos/builtin/packages/salmon-tddft/package.py b/var/spack/repos/builtin/packages/salmon-tddft/package.py
new file mode 100755
index 0000000000..f926c4bbae
--- /dev/null
+++ b/var/spack/repos/builtin/packages/salmon-tddft/package.py
@@ -0,0 +1,98 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class SalmonTddft(CMakePackage):
+ """SALMON is an open-source computer program for ab-initio
+ quantum-mechanical calculations of electron dynamics at the nanoscale
+ that takes place in various situations of light-matter interactions.
+ It is based on time-dependent density functional theory, solving
+ time-dependent Kohn-Sham equation in real time and real space
+ with norm-conserving pseudopotentials."""
+
+ homepage = "https://salmon-tddft.jp"
+ url = "http://salmon-tddft.jp/download/SALMON-v.2.0.0.tar.gz"
+
+ version('2.0.0', sha256='c3bb80bc5d338cba21cd8f345acbf2f2d81ef75af069a0a0ddbdc0acf358456c')
+ version('1.2.1', sha256='a5045149e49abe9dd9edefe00cd1508a1323081bc3d034632176b728effdbaeb')
+
+ variant('mpi', default=False, description='Enable MPI')
+ variant('libxc', default=False, description='Enable libxc')
+ variant('scalapack', default=False, description='Enable scalapack')
+ variant('eigenexa', default=False, description='Enable eigenexa')
+ variant(
+ 'manycore', default=False,
+ description='Enable optimization of reduction for many-core processor'
+ )
+ variant(
+ 'current_processing', default=False,
+ description='Enable preprocessing of the current computation in RT'
+ )
+
+ depends_on('cmake@3.14:', type='build')
+ depends_on('mpi', type='link', when='+mpi')
+ depends_on('scalapack', type='link', when='+scalapack')
+ depends_on('eigenexa', type='link', when='+eigenexa')
+ depends_on('lapack', type='link')
+ depends_on('libxc', type='link', when='+libxc')
+ depends_on('libxc@:4.9', type='link', when='@:1.9.9 +libxc')
+
+ conflicts('+scalapack', when='~mpi')
+ conflicts('+eigenexa', when='@:1.9.9')
+ conflicts('+eigenexa', when='~scalapack')
+ conflicts('+manycore', when='@2.0.0:')
+ conflicts('+current_processing', when='@2.0.0:')
+
+ patch('fjmpi.patch', when='@2.0.0: %fj')
+ patch('v2.0.libxc-5.0.patch', when='@2.0.0 +libxc')
+ patch('cmakefix.patch', when='+scalapack')
+
+ def cmake_args(self):
+ define_from_variant = self.define_from_variant
+ spec = self.spec
+ define = self.define
+ args = [
+ define_from_variant('USE_SCALAPACK', 'scalapack'),
+ define_from_variant('USE_EIGENEXA', 'eigenexa'),
+ define_from_variant('USE_MPI', 'mpi'),
+ define_from_variant('USE_LIBXC', 'libxc'),
+ define_from_variant('REDUCE_FOR_MANYCORE', 'manycore'),
+ define_from_variant('CURRENT_PREPROCESSING', 'current_processing')
+ ]
+ if spec.satisfies('+mpi'):
+ args.extend([
+ define('CMAKE_C_COMPILER', spec['mpi'].mpicc),
+ define('CMAKE_Fortran_COMPILER', spec['mpi'].mpifc),
+ ])
+ if spec.satisfies('+scalapack'):
+ math_libs = spec['scalapack'].libs + \
+ spec['lapack'].libs + spec['blas'].libs
+ if spec.satisfies('@2.0:'):
+ args.append(define('ScaLAPACK_VENDOR_FLAGS',
+ math_libs.ld_flags))
+ else:
+ args.extend([
+ define('BLACS_LINKER_FLAGS', math_libs.ld_flags),
+ define('BLACS_LIBRARIES', math_libs.libraries),
+ define('ScaLAPACK_LINKER_FLAGS', math_libs.ld_flags),
+ define('ScaLAPACK_LIBRARIES', math_libs.libraries)
+ ])
+ if spec.satisfies('^fujitsu-mpi'):
+ args.append(define('USE_FJMPI', True))
+ else:
+ args.append(define('USE_FJMPI', False))
+ if spec.satisfies('%fj'):
+ args.append(self.define('CMAKE_Fortran_MODDIR_FLAG', '-M'))
+ return args
+
+ def flag_handler(self, name, flags):
+ flags = list(flags)
+ if name == 'fflags':
+ if self.spec.satisfies('%gcc'):
+ flags.append('-ffree-line-length-none')
+ return (None, None, flags)
diff --git a/var/spack/repos/builtin/packages/salmon-tddft/v2.0.libxc-5.0.patch b/var/spack/repos/builtin/packages/salmon-tddft/v2.0.libxc-5.0.patch
new file mode 100755
index 0000000000..956eb93da4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/salmon-tddft/v2.0.libxc-5.0.patch
@@ -0,0 +1,312 @@
+diff -ru spack-src.org/src/common/structures.f90 spack-src/src/common/structures.f90
+--- spack-src.org/src/common/structures.f90 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/common/structures.f90 2020-12-23 09:15:16.693976332 +0900
+@@ -26,6 +26,8 @@
+ #ifdef USE_LIBXC
+ #if XC_MAJOR_VERSION <= 4
+ use xc_f90_types_m
++#else
++ use iso_c_binding
+ #endif
+ use xc_f90_lib_m
+ #endif
+diff -ru spack-src.org/src/xc/builtin_pbe.f90 spack-src/src/xc/builtin_pbe.f90
+--- spack-src.org/src/xc/builtin_pbe.f90 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/xc/builtin_pbe.f90 2020-12-23 09:15:16.701976046 +0900
+@@ -14,17 +14,34 @@
+ ! limitations under the License.
+ !
+ !-----------------------------------------------------------------------------------------
++#include "config.h"
++#ifdef USE_LIBXC
++#include "xc_version.h"
++#endif
+ module builtin_pbe
+ use salmon_math, only: erfc_salmon
++#ifdef USE_LIBXC
++#if XC_MAJOR_VERSION >= 5
++ use iso_c_binding
++#endif
++#endif
+ implicit none
+-
++
+ real(8),parameter :: Pi=3.141592653589793d0
+
+ contains
+
+ subroutine exc_cor_pbe(nl, rho, grho_s, exc, eexc, vexc, nd, ifdx, ifdy, ifdz, nabx, naby, nabz)
+ implicit none
++#ifdef USE_LIBXC
++#if XC_MAJOR_VERSION >= 5
++ integer(c_size_t), intent(in) :: nl
++#else
++ integer, intent(in) :: nl
++#endif
++#else
+ integer, intent(in) :: nl
++#endif
+ real(8), intent(in) :: rho(nl), grho_s(nl, 3)
+ real(8), intent(out) :: exc(nl), eexc(nl), vexc(nl)
+ integer, intent(in) :: nd
+diff -ru spack-src.org/src/xc/builtin_pz.f90 spack-src/src/xc/builtin_pz.f90
+--- spack-src.org/src/xc/builtin_pz.f90 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/xc/builtin_pz.f90 2020-12-23 09:15:16.709975759 +0900
+@@ -14,15 +14,28 @@
+ ! limitations under the License.
+ !
+ !-----------------------------------------------------------------------------------------
++#include "config.h"
++#ifdef USE_LIBXC
++#include "xc_version.h"
++#endif
++
+ module builtin_pz
++#if XC_MAJOR_VERSION >= 5
++ use iso_c_binding
++#endif
+ implicit none
++
+
+ contains
+
+
+ subroutine exc_cor_pz(nl, rho_s, exc, eexc, vexc)
+ implicit none
++#if XC_MAJOR_VERSION >= 5
++ integer(c_size_t), intent(in) :: nl
++#else
+ integer, intent(in) :: nl
++#endif
+ real(8), intent(in) :: rho_s(nl)
+ real(8), intent(out) :: exc(nl), eexc(nl), vexc(nl)
+ integer :: i
+diff -ru spack-src.org/src/xc/builtin_pz_sp.f90 spack-src/src/xc/builtin_pz_sp.f90
+--- spack-src.org/src/xc/builtin_pz_sp.f90 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/xc/builtin_pz_sp.f90 2020-12-23 09:15:16.717975473 +0900
+@@ -14,7 +14,16 @@
+ ! limitations under the License.
+ !
+ !-----------------------------------------------------------------------------------------
++#include "config.h"
++#ifdef USE_LIBXC
++#include "xc_version.h"
++#endif
+ module builtin_pz_sp
++#ifdef USE_LIBXC
++#if XC_MAJOR_VERSION >= 5
++ use iso_c_binding
++#endif
++#endif
+ implicit none
+
+ contains
+@@ -22,7 +31,15 @@
+
+ subroutine exc_cor_pz_sp(nl, rho_s, exc, eexc, vexc_s)
+ implicit none
++#ifdef USE_LIBXC
++#if XC_MAJOR_VERSION >= 5
++ integer(c_size_t), intent(in) :: nl
++#else
+ integer, intent(in) :: nl
++#endif
++#else
++ integer, intent(in) :: nl
++#endif
+ real(8), intent(in) :: rho_s(nl,2)
+ real(8), intent(out) :: exc(nl), eexc(nl), vexc_s(nl,2)
+ integer :: i
+diff -ru spack-src.org/src/xc/builtin_pzm.f90 spack-src/src/xc/builtin_pzm.f90
+--- spack-src.org/src/xc/builtin_pzm.f90 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/xc/builtin_pzm.f90 2020-12-23 09:15:16.722975294 +0900
+@@ -14,14 +14,31 @@
+ ! limitations under the License.
+ !
+ !-----------------------------------------------------------------------------------------
++#include "config.h"
++#ifdef USE_LIBXC
++#include "xc_version.h"
++#endif
+ module builtin_pzm
++#ifdef USE_LIBXC
++#if XC_MAJOR_VERSION >= 5
++ use iso_c_binding
++#endif
++#endif
+ implicit none
+
+ contains
+
+ subroutine exc_cor_pzm(nl, rho_s, exc, eexc, vexc)
+ implicit none
++#ifdef USE_LIBXC
++#if XC_MAJOR_VERSION >= 5
++ integer(c_size_t), intent(in) :: nl
++#else
+ integer, intent(in) :: nl
++#endif
++#else
++ integer, intent(in) :: nl
++#endif
+ real(8), intent(in) :: rho_s(nl)
+ real(8), intent(out) :: exc(nl), eexc(nl), vexc(nl)
+ integer :: i
+diff -ru spack-src.org/src/xc/builtin_tbmbj.f90 spack-src/src/xc/builtin_tbmbj.f90
+--- spack-src.org/src/xc/builtin_tbmbj.f90 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/xc/builtin_tbmbj.f90 2020-12-23 09:15:16.725975186 +0900
+@@ -14,7 +14,15 @@
+ ! limitations under the License.
+ !
+ !-----------------------------------------------------------------------------------------
++#include "config.h"
++#ifdef USE_LIBXC
++#include "xc_version.h"
++#endif
++
+ module builtin_tbmbj
++#if XC_MAJOR_VERSION >= 5
++ use iso_c_binding
++#endif
+ use salmon_math, only: erfc_salmon
+ implicit none
+
+@@ -27,7 +35,12 @@
+ subroutine exc_cor_tbmbj(nl, rho, rho_s, grho_s, lrho_s, tau_s, j_s, cval, eexc, vexc)
+ !subroutine exc_cor_tbmbj(nl, rho, rho_s, grho_s, lrho_s, tau_s, j_s, cval, eexc, vexc, Hxyz, aLxyz)
+ implicit none
++
++#if XC_MAJOR_VERSION >= 5
++ integer(c_size_t), intent(in) :: nl
++#else
+ integer, intent(in) :: nl
++#endif
+ real(8), intent(in) :: rho(nl), rho_s(nl)
+ real(8), intent(in) :: grho_s(nl, 3), lrho_s(nl), tau_s(nl), j_s(nl, 3)
+ real(8), intent(in) :: cval
+diff -ru spack-src.org/src/xc/salmon_xc.f90 spack-src/src/xc/salmon_xc.f90
+--- spack-src.org/src/xc/salmon_xc.f90 2020-07-21 12:08:53.000000000 +0900
++++ spack-src/src/xc/salmon_xc.f90 2020-12-23 09:29:58.603384238 +0900
+@@ -32,6 +32,8 @@
+ #ifdef USE_LIBXC
+ #if XC_MAJOR_VERSION <= 4
+ use xc_f90_types_m
++#else
++ use iso_c_binding
+ #endif
+ use xc_f90_lib_m
+ #endif
+@@ -631,7 +633,15 @@
+ ! real(8), intent(in), optional :: aLxyz
+ !===============================================================
+
++#ifdef USE_LIBXC
++#if XC_MAJOR_VERSION <= 4
++ integer :: nx, ny, nz, nl
++#else
++ integer(c_size_t) :: nx, ny, nz, nl
++#endif
++#else
+ integer :: nx, ny, nz, nl
++#endif
+
+ ! Detect size of 3-dimensional grid
+ if (xc%ispin == 0) then
+@@ -699,9 +709,9 @@
+ real(8) :: vexc_sp_1d(nl,2)
+
+ if (xc%ispin == 0) then
+- rho_s_1d = reshape(rho, (/nl/)) * 0.5
++ rho_s_1d = reshape(rho, (/int(nl)/)) * 0.5
+ else if (xc%ispin == 1) then
+- rho_s_sp_1d = reshape(rho_s, (/nl,2/))
++ rho_s_sp_1d = reshape(rho_s, (/int(nl),2/))
+ end if
+
+ #ifndef SALMON_DEBUG_NEGLECT_NLCC
+@@ -723,20 +733,20 @@
+
+ if (xc%ispin == 0) then
+ if (present(vxc)) then
+- vxc = vxc + reshape(vexc_1d, (/nx, ny, nz/))
++ vxc = vxc + reshape(vexc_1d, (/int(nx), int(ny), int(nz)/))
+ endif
+ else if(xc%ispin == 1) then
+ if (present(vxc_s)) then
+- vxc_s = vxc_s + reshape(vexc_sp_1d, (/nx, ny, nz,2/))
++ vxc_s = vxc_s + reshape(vexc_sp_1d, (/int(nx), int(ny), int(nz),2/))
+ endif
+ end if
+
+ if (present(exc)) then
+- exc = exc + reshape(exc_1d, (/nx, ny, nz/))
++ exc = exc + reshape(exc_1d, (/int(nx), int(ny), int(nz)/))
+ endif
+
+ if (present(eexc)) then
+- eexc = eexc + reshape(eexc_1d, (/nx, ny, nz/))
++ eexc = eexc + reshape(eexc_1d, (/int(nx), int(ny), int(nz)/))
+ endif
+
+ return
+@@ -786,22 +796,22 @@
+ real(8) :: eexc_1d(nl)
+ real(8) :: vexc_1d(nl)
+
+- rho_1d = reshape(rho, (/nl/))
+- grho_s_1d = reshape(grho(:, :, :, :), (/nl, 3/)) * 0.5
++ rho_1d = reshape(rho, (/int(nl)/))
++ grho_s_1d = reshape(grho(:, :, :, :), (/int(nl), 3/)) * 0.5
+
+ call exc_cor_pbe(nl, rho_1d, grho_s_1d, exc_1d, eexc_1d, vexc_1d, &
+ & nd, ifdx, ifdy, ifdz, nabx, naby, nabz)
+
+ if (present(vxc)) then
+- vxc = vxc + reshape(vexc_1d, (/nx, ny, nz/))
++ vxc = vxc + reshape(vexc_1d, (/int(nx), int(ny), int(nz)/))
+ endif
+
+ if (present(exc)) then
+- exc = exc + reshape(exc_1d, (/nx, ny, nz/))
++ exc = exc + reshape(exc_1d, (/int(nx), int(ny), int(nz)/))
+ endif
+
+ if (present(eexc)) then
+- eexc = eexc + reshape(eexc_1d, (/nx, ny, nz/))
++ eexc = eexc + reshape(eexc_1d, (/int(nx), int(ny), int(nz)/))
+ endif
+
+ return
+@@ -828,25 +838,25 @@
+ endif
+ #endif
+
+- grho_s_1d = reshape(grho(:, :, :, :), (/nl, 3/)) * 0.5
+- rlrho_s_1d = reshape(rlrho(:, :, :), (/nl/)) * 0.5
+- tau_s_1d = reshape(tau(:, :, :), (/nl/)) * 0.5
+- j_s_1d = reshape(rj(:, :, :, :), (/nl, 3/)) * 0.5
++ grho_s_1d = reshape(grho(:, :, :, :), (/int(nl), 3/)) * 0.5
++ rlrho_s_1d = reshape(rlrho(:, :, :), (/int(nl)/)) * 0.5
++ tau_s_1d = reshape(tau(:, :, :), (/int(nl)/)) * 0.5
++ j_s_1d = reshape(rj(:, :, :, :), (/int(nl), 3/)) * 0.5
+
+ !call exc_cor_tbmbj(nl, rho_1d, rho_s_1d, grho_s_1d, rlrho_s_1d, tau_s_1d, j_s_1d, xc%cval, eexc_1d, vexc_1d, Hxyz, aLxyz)
+ call exc_cor_tbmbj(nl, rho_1d, rho_s_1d, grho_s_1d, rlrho_s_1d, tau_s_1d, j_s_1d, xc%cval, eexc_1d, vexc_1d)
+
+ if (present(vxc)) then
+- vxc = vxc + reshape(vexc_1d, (/nx, ny, nz/))
++ vxc = vxc + reshape(vexc_1d, (/int(nx), int(ny), int(nz)/))
+ endif
+
+ if (present(exc)) then
+ ! NOTE: Take care for "zero-division error"
+- exc = exc + reshape(eexc_1d, (/nx, ny, nz/)) / rho
++ exc = exc + reshape(eexc_1d, (/int(nx), int(ny), int(nz)/)) / rho
+ endif
+
+ if (present(eexc)) then
+- eexc = eexc + reshape(eexc_1d, (/nx, ny, nz/))
++ eexc = eexc + reshape(eexc_1d, (/int(nx), int(ny), int(nz)/))
+ endif
+
+ return
diff --git a/var/spack/repos/builtin/packages/salmon/package.py b/var/spack/repos/builtin/packages/salmon/package.py
index c75450eb4a..bdbc4aca9d 100644
--- a/var/spack/repos/builtin/packages/salmon/package.py
+++ b/var/spack/repos/builtin/packages/salmon/package.py
@@ -1,10 +1,8 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-from spack import *
-
class Salmon(CMakePackage):
"""Salmon is a tool for quantifying the expression of transcripts using
@@ -13,22 +11,80 @@ class Salmon(CMakePackage):
homepage = "http://combine-lab.github.io/salmon/"
url = "https://github.com/COMBINE-lab/salmon/archive/v0.8.2.tar.gz"
+ version('1.4.0', sha256='6d3e25387450710f0aa779a1e9aaa9b4dec842324ff8551d66962d7c7606e71d')
version('0.14.1', sha256='05289170e69b5f291a8403b40d6b9bff54cc38825e9f721c210192b51a19273e')
version('0.12.0', sha256='91ebd1efc5b0b4c12ec6babecf3c0b79f7102e42b8895ca07c8c8fea869fefa3')
version('0.9.1', sha256='3a32c28d217f8f0af411c77c04144b1fa4e6fd3c2f676661cc875123e4f53520')
version('0.8.2', sha256='299168e873e71e9b07d63a84ae0b0c41b0876d1ad1d434b326a5be2dce7c4b91')
- depends_on('tbb')
- depends_on('boost@:1.66.0')
+ variant('build_type', default='RELEASE',
+ description='CMake build type',
+ values=('DEBUG', 'RELEASE'))
+ depends_on('tbb')
+ depends_on('boost@:1.66.0', when='@:0.14.1')
+ depends_on('boost@1.72.0:', when='@1.4.0:')
+ depends_on('cereal')
+ depends_on('jemalloc')
+ depends_on('xz')
+ depends_on('zlib')
+ depends_on('bzip2')
+ depends_on('libdivsufsort')
+ depends_on('staden-io-lib~curl')
+ depends_on('libgff')
+ depends_on('pkgconfig')
depends_on('curl', when='@0.14.1:')
conflicts('%gcc@:5.1', when='@0.14.1:')
+ resources = [
+ ('1.4.0', 'pufferfish', '059207e8d3134060ed70595e53f4189954c9e5edfaa6361b46304f55d1b71bc7'),
+ ('0.14.1', 'RapMap', 'fabac2f360513b803aa3567415eddcd97261ab8a23d4f600af5f98ee8ffd944b'),
+ ('0.12.0', 'RapMap', '05102c0bbc8a0c0056a01cd0e8788fa5b504aee58ac226ab8c0e3ffec8019790'),
+ ('0.9.1', 'RapMap', '8975e5a1ed61ed9354ba776272927545f417ecdce95823e71ba1e7b61de7d380'),
+ ('0.8.2', 'RapMap', '1691f4bca2b604f05f36772ae45faf0842ab4809843df770bd10366a5cfd6822'),
+ ]
+
+ for ver, repo, checksum in resources:
+ resource(name='rapmap',
+ url='https://github.com/COMBINE-lab/{0}/archive/salmon-v{1}.zip'.format(repo, ver),
+ sha256=checksum,
+ placement='external',
+ expand=False,
+ when='@{0}'.format(ver))
+
def patch(self):
# remove static linking to libstdc++
filter_file('-static-libstdc++', '', 'CMakeLists.txt', string=True)
+ if self.spec.satisfies('@0.8.2:0.9.1'):
+ filter_file('${FAST_MALLOC_LIB}',
+ '${FAST_MALLOC_LIB}\n'
+ '${CMAKE_DL_LIBS}',
+ 'src/CMakeLists.txt',
+ string=True)
+
+ if self.spec.satisfies('@:0.14.1'):
+ filter_file('curl -k.*',
+ '',
+ 'scripts/fetchRapMap.sh')
+ symlink('./salmon-v{0}.zip'.format(self.version),
+ './external/rapmap.zip')
+
+ if self.spec.satisfies('@1.4.0:'):
+ filter_file('curl -k.*',
+ '',
+ 'scripts/fetchPufferfish.sh')
+ symlink('./salmon-v{0}.zip'.format(self.version),
+ './external/pufferfish.zip')
+ # Fix issues related to lto-wrapper during install
+ filter_file('INTERPROCEDURAL_OPTIMIZATION True',
+ 'INTERPROCEDURAL_OPTIMIZATION False',
+ 'src/CMakeLists.txt', string=True)
+ filter_file('curl -k.*', '', 'scripts/fetchPufferfish.sh')
def cmake_args(self):
- args = ['-DBOOST_ROOT=%s' % self.spec['boost'].prefix]
+ args = [
+ '-DBOOST_ROOT=%s' % self.spec['boost'].prefix,
+ ]
+
return args
diff --git a/var/spack/repos/builtin/packages/sambamba/package.py b/var/spack/repos/builtin/packages/sambamba/package.py
index 72e318baf6..afcac2874b 100644
--- a/var/spack/repos/builtin/packages/sambamba/package.py
+++ b/var/spack/repos/builtin/packages/sambamba/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/samblaster/package.py b/var/spack/repos/builtin/packages/samblaster/package.py
index 9c87c4b7b9..3dcb2bd1fe 100644
--- a/var/spack/repos/builtin/packages/samblaster/package.py
+++ b/var/spack/repos/builtin/packages/samblaster/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/samrai/package.py b/var/spack/repos/builtin/packages/samrai/package.py
index 358aa884f0..44ea581fd7 100644
--- a/var/spack/repos/builtin/packages/samrai/package.py
+++ b/var/spack/repos/builtin/packages/samrai/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/samtools/package.py b/var/spack/repos/builtin/packages/samtools/package.py
index 54a171cac5..c7db0c0157 100644
--- a/var/spack/repos/builtin/packages/samtools/package.py
+++ b/var/spack/repos/builtin/packages/samtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Samtools(Package):
homepage = "http://www.htslib.org"
url = "https://github.com/samtools/samtools/releases/download/1.3.1/samtools-1.3.1.tar.bz2"
+ version('1.12', sha256='6da3770563b1c545ca8bdf78cf535e6d1753d6383983c7929245d5dba2902dcb')
version('1.10', sha256='7b9ec5f05d61ec17bd9a82927e45d8ef37f813f79eb03fe06c88377f1bd03585')
version('1.9', sha256='083f688d7070082411c72c27372104ed472ed7a620591d06f928e653ebc23482')
version('1.8', sha256='c942bc1d9b85fd1b05ea79c5afd2805d489cd36b2c2d8517462682a4d779be16')
@@ -32,6 +33,7 @@ class Samtools(Package):
depends_on('python', type='run')
# htslib became standalone @1.3.1, must use corresponding version
+ depends_on('htslib@1.12', when='@1.12')
depends_on('htslib@1.10.2', when='@1.10')
depends_on('htslib@1.9', when='@1.9')
depends_on('htslib@1.8', when='@1.8')
diff --git a/var/spack/repos/builtin/packages/sandbox/package.py b/var/spack/repos/builtin/packages/sandbox/package.py
index b512e9fae9..bdedde0827 100644
--- a/var/spack/repos/builtin/packages/sandbox/package.py
+++ b/var/spack/repos/builtin/packages/sandbox/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,3 +13,5 @@ class Sandbox(AutotoolsPackage):
url = "https://dev.gentoo.org/~mgorny/dist/sandbox-2.12.tar.xz"
version('2.12', sha256='265a490a8c528237c55ad26dfd7f62336fa5727c82358fc9cfbaa2e52c47fc50')
+
+ depends_on('gawk', type='build')
diff --git a/var/spack/repos/builtin/packages/satsuma2/package.py b/var/spack/repos/builtin/packages/satsuma2/package.py
index 8d1e0eea29..9216e0f3bc 100644
--- a/var/spack/repos/builtin/packages/satsuma2/package.py
+++ b/var/spack/repos/builtin/packages/satsuma2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,4 +19,4 @@ class Satsuma2(CMakePackage):
version('2016-11-22', commit='da694aeecf352e344b790bea4a7aaa529f5b69e6')
def install(self, spec, prefix):
- install_tree(join_path('spack-build', 'bin'), prefix.bin)
+ install_tree(join_path(self.build_directory, 'bin'), prefix.bin)
diff --git a/var/spack/repos/builtin/packages/savanna/package.py b/var/spack/repos/builtin/packages/savanna/package.py
index 37da8bd766..b71eba4238 100644
--- a/var/spack/repos/builtin/packages/savanna/package.py
+++ b/var/spack/repos/builtin/packages/savanna/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/saws/package.py b/var/spack/repos/builtin/packages/saws/package.py
index 41a117227f..22441d4b95 100644
--- a/var/spack/repos/builtin/packages/saws/package.py
+++ b/var/spack/repos/builtin/packages/saws/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sblim-sfcc/package.py b/var/spack/repos/builtin/packages/sblim-sfcc/package.py
index e8eb78a2ea..1105e05a00 100644
--- a/var/spack/repos/builtin/packages/sblim-sfcc/package.py
+++ b/var/spack/repos/builtin/packages/sblim-sfcc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sbml/package.py b/var/spack/repos/builtin/packages/sbml/package.py
index e1cae0af23..c44a5dd4a6 100644
--- a/var/spack/repos/builtin/packages/sbml/package.py
+++ b/var/spack/repos/builtin/packages/sbml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sbt/package.py b/var/spack/repos/builtin/packages/sbt/package.py
index 63484249da..64a0b19230 100644
--- a/var/spack/repos/builtin/packages/sbt/package.py
+++ b/var/spack/repos/builtin/packages/sbt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scala/package.py b/var/spack/repos/builtin/packages/scala/package.py
index a5226af1cf..a87a3683f0 100644
--- a/var/spack/repos/builtin/packages/scala/package.py
+++ b/var/spack/repos/builtin/packages/scala/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,7 @@ class Scala(Package):
version('2.13.1', sha256='6918ccc494e34810a7254ad2c4e6f0e1183784c22e7b4801b7dbc8d1994a04db')
version('2.12.10', sha256='3b12bda3300fedd91f64fc7f9165fd45c58328b1b760af24ca6ffe92e3b0656a')
+ version('2.12.6', sha256='1ac7444c5a85ed1ea45db4a268ee9ea43adf80e7f5724222863afb5492883416')
version('2.12.5', sha256='b261ffe9a495b12e9dda2ed37331e579547e4d1b8b5810161b6c3b39ac806aa1')
version('2.12.1', sha256='4db068884532a3e27010df17befaca0f06ea50f69433d58e06a5e63c7a3cc359')
version('2.11.11', sha256='12037ca64c68468e717e950f47fc77d5ceae5e74e3bdca56f6d02fd5bfd6900b')
diff --git a/var/spack/repos/builtin/packages/scalasca/package.py b/var/spack/repos/builtin/packages/scalasca/package.py
index f4fbeb0fec..421c629e26 100644
--- a/var/spack/repos/builtin/packages/scalasca/package.py
+++ b/var/spack/repos/builtin/packages/scalasca/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class Scalasca(AutotoolsPackage):
url = "http://apps.fz-juelich.de/scalasca/releases/scalasca/2.1/dist/scalasca-2.1.tar.gz"
list_url = "https://scalasca.org/scalasca/front_content.php?idart=1072"
+ version('2.6', sha256='b3f9cb1d58f3e25090a39da777bae8ca2769fd10cbd6dfb9a4887d873ee2441e')
version('2.5', sha256='7dfa01e383bfb8a4fd3771c9ea98ff43772e415009d9f3c5f63b9e05f2dde0f6')
version('2.4', sha256='4a895868258030f700a635eac93d36764f60c8c63673c7db419ea4bcc6b0b760')
version('2.3.1', sha256='8ff485d03ab2c02a5852d346ae041a191c60b4295f8f9b87fe58cd36977ba558')
@@ -30,7 +31,7 @@ class Scalasca(AutotoolsPackage):
# version 2.4+
depends_on('cubew@4.4:', when='@2.4:')
- depends_on('scorep@6.0:', when='@2.4:')
+ depends_on('scorep@6.0:', when='@2.4:', type=('run'))
# version 2.3+
depends_on('otf2@2:', when='@2.3:')
diff --git a/var/spack/repos/builtin/packages/scallop/package.py b/var/spack/repos/builtin/packages/scallop/package.py
index a05aa44a5d..ff3180769a 100644
--- a/var/spack/repos/builtin/packages/scallop/package.py
+++ b/var/spack/repos/builtin/packages/scallop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scalpel/package.py b/var/spack/repos/builtin/packages/scalpel/package.py
index 1634fe11f4..5a8b2bd659 100644
--- a/var/spack/repos/builtin/packages/scalpel/package.py
+++ b/var/spack/repos/builtin/packages/scalpel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scan-for-matches/package.py b/var/spack/repos/builtin/packages/scan-for-matches/package.py
index c4abe6d7d0..d76ebff32a 100644
--- a/var/spack/repos/builtin/packages/scan-for-matches/package.py
+++ b/var/spack/repos/builtin/packages/scan-for-matches/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scantailor/package.py b/var/spack/repos/builtin/packages/scantailor/package.py
index 26d250a11a..97d90b73c0 100644
--- a/var/spack/repos/builtin/packages/scantailor/package.py
+++ b/var/spack/repos/builtin/packages/scantailor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scipoptsuite/package.py b/var/spack/repos/builtin/packages/scipoptsuite/package.py
index 6521808f21..300ede769c 100644
--- a/var/spack/repos/builtin/packages/scipoptsuite/package.py
+++ b/var/spack/repos/builtin/packages/scipoptsuite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scons/package.py b/var/spack/repos/builtin/packages/scons/package.py
index b4505385e6..9873061333 100644
--- a/var/spack/repos/builtin/packages/scons/package.py
+++ b/var/spack/repos/builtin/packages/scons/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class Scons(PythonPackage):
"""SCons is a software construction tool"""
homepage = "http://scons.org"
- url = "https://pypi.io/packages/source/s/scons/scons-3.1.1.tar.gz"
+ pypi = "scons/scons-3.1.1.tar.gz"
version('3.1.2', sha256='8aaa483c303efeb678e6f7c776c8444a482f8ddc3ad891f8b6cdd35264da9a1f')
version('3.1.1', sha256='fd44f8f2a4562e7e5bc8c63c82b01e469e8115805a3e9c2923ee54cdcd6678b3')
diff --git a/var/spack/repos/builtin/packages/scorec-core/package.py b/var/spack/repos/builtin/packages/scorec-core/package.py
index 4ff96cae85..29a85f35e3 100644
--- a/var/spack/repos/builtin/packages/scorec-core/package.py
+++ b/var/spack/repos/builtin/packages/scorec-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scorep/package.py b/var/spack/repos/builtin/packages/scorep/package.py
index 61586ac43c..1f36a17fbc 100644
--- a/var/spack/repos/builtin/packages/scorep/package.py
+++ b/var/spack/repos/builtin/packages/scorep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Scorep(AutotoolsPackage):
homepage = "http://www.vi-hps.org/projects/score-p"
url = "https://www.vi-hps.org/cms/upload/packages/scorep/scorep-4.1.tar.gz"
+ version('7.0', sha256='68f24a68eb6f94eaecf500e17448f566031946deab74f2cba072ee8368af0996', url='https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-7.0/scorep-7.0.tar.gz')
version('6.0', sha256='5dc1023eb766ba5407f0b5e0845ec786e0021f1da757da737db1fb71fc4236b8')
version('5.0', sha256='0651614eacfc92ffbe5264a3efebd0803527ae6e8b11f7df99a56a02c37633e1')
version('4.1', sha256='7bb6c1eecdd699b4a3207caf202866778ee01f15ff39a9ec198fcd872578fe63')
@@ -26,7 +27,7 @@ class Scorep(AutotoolsPackage):
version('1.3', sha256='dcfd42bd05f387748eeefbdf421cb3cd98ed905e009303d70b5f75b217fd1254')
patch('gcc7.patch', when='@1.4:3')
- patch('gcc10.patch', when='@3.1:')
+ patch('gcc10.patch', when='@3.1:6.0')
variant('mpi', default=True, description="Enable MPI support")
variant('papi', default=True, description="Enable PAPI")
@@ -39,25 +40,29 @@ class Scorep(AutotoolsPackage):
# information. Starting with scorep 4.0 / cube 4.4, Score-P only depends on
# two components of cube -- cubew and cubelib.
+ # SCOREP 7
+ depends_on('otf2@2.3:', when='@7:')
+ depends_on('cubew@4.6:', when='@7:')
+ depends_on('cubelib@4.6:', when='@7:')
+ depends_on('opari2@2.0.6:', when='@7:')
# SCOREP 6
depends_on('otf2@2.2:', when='@6:')
# SCOREP 4 and 5
depends_on('otf2@2.1:', when='@4:')
- depends_on('opari2@2.0:', when='@4:')
- depends_on('cubew@4.4:', when='@4:')
- depends_on('cubelib@4.4:', when='@4:')
+ depends_on('cubew@4.4:4.5', when='@4:6.99')
+ depends_on('cubelib@4.4:4.5', when='@4:6.99')
# SCOREP 3
depends_on('otf2@2:', when='@3:3.99')
- depends_on('opari2@2:', when='@3:3.99')
- depends_on('cube@4.3:', when='@3:3.99')
+ depends_on('opari2@2.0:2.0.5', when='@3:6.99')
+ depends_on('cube@4.3:4.3.5', when='@3:3.99')
# SCOREP 2.0.2
depends_on('otf2@2.0', when='@2.0.2')
depends_on('opari2@2.0', when='@2.0.2')
- depends_on('cube@4.3:4.4', when='@2.0.2')
+ depends_on('cube@4.3:4.3.5', when='@2.0.2')
# SCOREP 1.4.2
depends_on('otf2@1.5:1.6', when='@1.4.2')
depends_on('opari2@1.1.4', when='@1.4.2')
- depends_on('cube@4.3:4.4', when='@1.4.2')
+ depends_on('cube@4.2.3:4.3.5', when='@1.4.2')
# SCOREP 1.3
depends_on("otf2@1.4", when='@1.3')
depends_on("opari2@1.1.4", when='@1.3')
diff --git a/var/spack/repos/builtin/packages/scotch/package.py b/var/spack/repos/builtin/packages/scotch/package.py
index f9ec64ca13..770f2f4858 100644
--- a/var/spack/repos/builtin/packages/scotch/package.py
+++ b/var/spack/repos/builtin/packages/scotch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -102,12 +102,14 @@ class Scotch(Package):
'-DCOMMON_RANDOM_FIXED_SEED',
'-DSCOTCH_DETERMINISTIC',
'-DSCOTCH_RENAME',
- '-DIDXSIZE64', # SCOTCH_Idx typedef: indices for addressing
]
- # SCOTCH_Num typedef: size of integers in arguments
if '+int64' in self.spec:
+ # SCOTCH_Num typedef: size of integers in arguments
cflags.append('-DINTSIZE64')
+ cflags.append('-DIDXSIZE64') # SCOTCH_Idx typedef: indices for addressing
+ else:
+ cflags.append('-DIDXSIZE32') # SCOTCH_Idx typedef: indices for addressing
if self.spec.satisfies('platform=darwin'):
cflags.extend([
diff --git a/var/spack/repos/builtin/packages/scr/package.py b/var/spack/repos/builtin/packages/scr/package.py
index 5175bf6dc1..c6e022d9c3 100644
--- a/var/spack/repos/builtin/packages/scr/package.py
+++ b/var/spack/repos/builtin/packages/scr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,6 +7,17 @@ from spack import *
import os
+# to get system platform type
+import sys
+
+
+def detect_scheduler():
+ if which('aprun'):
+ return 'APRUN'
+ if which('jsrun'):
+ return 'LSF'
+ return 'SLURM'
+
class Scr(CMakePackage):
"""SCR caches checkpoint data in storage on the compute nodes of a
@@ -18,41 +29,54 @@ class Scr(CMakePackage):
git = "https://github.com/llnl/scr.git"
version('develop', branch='develop')
- version('legacy', branch='legacy')
+ version('legacy', branch='legacy', deprecated=True)
- version('2.0.0', sha256='471978ae0afb56a20847d3989b994fbd680d1dea21e77a5a46a964b6e3deed6b')
- version('1.2.2', sha256='764a85638a9e8762667ec1f39fa5f7da7496fca78de379a22198607b3e027847')
- version('1.2.1', sha256='23acab2dc7203e9514455a5168f2fd57bc590affb7a1876912b58201513628fe')
- version('1.2.0', sha256='e3338ab2fa6e9332d2326c59092b584949a083a876adf5a19d4d5c7a1bbae047')
+ version('3.0rc1', sha256='bd31548a986f050024429d8ee3644eb135f047f98a3d503a40c5bd4a85291308')
+ version('2.0.0', sha256='471978ae0afb56a20847d3989b994fbd680d1dea21e77a5a46a964b6e3deed6b', deprecated=True)
+ version('1.2.2', sha256='764a85638a9e8762667ec1f39fa5f7da7496fca78de379a22198607b3e027847', deprecated=True)
+ version('1.2.1', sha256='23acab2dc7203e9514455a5168f2fd57bc590affb7a1876912b58201513628fe', deprecated=True)
+ version('1.2.0', sha256='e3338ab2fa6e9332d2326c59092b584949a083a876adf5a19d4d5c7a1bbae047', deprecated=True)
depends_on('pdsh+static_modules', type=('build', 'run'))
depends_on('zlib')
depends_on('mpi')
- # As of mid-2020, develop requires the "master" branch
- # of a few component libraries
- depends_on('axl@master', when="@develop")
- depends_on('kvtree@master', when="@develop")
- depends_on('redset@master', when="@develop")
+ # Use the latest iteration of the components when installing scr@develop
+ depends_on('axl@master', when="@develop")
+ depends_on('er@master', when="@develop")
+ depends_on('kvtree@master', when="@develop")
+ depends_on('rankstr@master', when="@develop")
+ depends_on('redset@master', when="@develop")
+ depends_on('shuffile@master', when="@develop")
+ depends_on('spath@master', when="@develop")
# SCR legacy is anything 2.x.x or earlier
# SCR components is anything 3.x.x or later
- depends_on('er', when="@3:")
- depends_on('kvtree', when="@3:")
- depends_on('rankstr', when="@3:")
- depends_on('filo', when="@3:")
- depends_on('spath', when="@3:")
-
+ depends_on('axl@0.4.0:', when="@3:")
+ depends_on('er@0.0.4:', when="@3:")
+ depends_on('kvtree@1.1.1:', when="@3:")
+ depends_on('rankstr@0.0.3:', when="@3:")
+ depends_on('redset@0.0.5:', when="@3:")
+ depends_on('shuffile@0.0.4:', when="@3:")
+ depends_on('spath@0.0.2:', when="@3:")
+
+ # DTCMP is an optional dependency up until 3.x
variant('dtcmp', default=True,
description="Build with DTCMP. "
"Necessary to enable user directory naming at runtime")
- depends_on('dtcmp', when="+dtcmp")
+ depends_on('dtcmp', when="@:2.999 +dtcmp")
+
+ # DTCMP is a required dependency with 3.x and later
+ conflicts('~dtcmp', when="@3:", msg="<SCR> DTCMP required for versions >=3")
+ depends_on('dtcmp', when="@3:")
variant('libyogrt', default=True,
description="Build SCR with libyogrt for get_time_remaining.")
+ depends_on('libyogrt scheduler=slurm', when="+libyogrt resource_manager=SLURM")
+ depends_on('libyogrt scheduler=lsf', when="+libyogrt resource_manager=LSF")
depends_on('libyogrt', when="+libyogrt")
- # MySQL not yet in spack
+ # Enabling SCR logging is a WIP, for which this will be needed
# variant('mysql', default=True, decription="MySQL database for logging")
# depends_on('mysql', when="+mysql")
@@ -66,26 +90,47 @@ class Scr(CMakePackage):
variant('fortran', default=True,
description="Build SCR with fortran bindings")
- variant('resource_manager', default='SLURM',
+ variant('resource_manager', default=detect_scheduler(),
values=('SLURM', 'APRUN', 'PMIX', 'LSF', 'NONE'),
multi=False,
description="Resource manager for which to configure SCR.")
+ # SCR_ASYNC_API in process of being automated. Only applying this to :2.x.x
variant('async_api', default='NONE',
values=('NONE', 'CRAY_DW', 'IBM_BBAPI', 'INTEL_CPPR'),
multi=False,
description="Asynchronous data transfer API to use with SCR.")
+ variant('bbapi_fallback', default='False',
+ description='Using BBAPI, if source or destination don\'t support \
+ file extents then fallback to pthreads')
+ depends_on('axl+bbapi_fallback', when="@3: +bbapi_fallback")
+
variant('file_lock', default='FLOCK',
values=('FLOCK', 'FNCTL', 'NONE'),
multi=False,
description='File locking style for SCR.')
-
- variant('cache_base', default='/tmp',
- description='Compile time default location for checkpoint cache.')
- variant('cntl_base', default='/tmp',
+ depends_on('kvtree file_lock=FLOCK', when='@3: file_lock=FLOCK')
+ depends_on('kvtree file_lock=FNCTL', when='@3: file_lock=FNCTL')
+ depends_on('kvtree file_lock=NONE', when='@3: file_lock=NONE')
+
+ # The default cache and control directories should be placed in tmpfs if available.
+ # On Linux, /dev/shm is a common tmpfs location. Other platforms, like macOS,
+ # do not define a common tmpfs location, so /tmp is the next best option.
+ platform_tmp_default = '/dev/shm' if sys.platform == 'linux' else '/tmp'
+ variant('cache_base', default=platform_tmp_default,
+ description='Compile time default location for cache directory.')
+ variant('cntl_base', default=platform_tmp_default,
description='Compile time default location for control directory.')
+ def flag_handler(self, name, flags):
+ if self.spec.satisfies('%cce'):
+ if name in ['cflags', 'cxxflags', 'cppflags']:
+ return (None, flags, None)
+ elif name == 'ldflags':
+ flags.append('-ldl')
+ return (flags, None, None)
+
def get_abs_path_rel_prefix(self, path):
# Return path if absolute, otherwise prepend prefix
if os.path.isabs(path):
@@ -98,20 +143,21 @@ class Scr(CMakePackage):
args = []
if 'platform=cray' in spec:
- args.append('-DSCR_LINK_STATIC=ON')
+ args.append('-DSCR_LINK_STATIC=OFF')
args.append('-DENABLE_FORTRAN={0}'.format('+fortran' in spec))
conf_path = self.get_abs_path_rel_prefix(
self.spec.variants['scr_config'].value)
- args.append('-DCMAKE_SCR_CONFIG_FILE={0}'.format(conf_path))
+ args.append('-DSCR_CONFIG_FILE={0}'.format(conf_path))
# We uppercase the values for these to avoid unnecessary user error.
args.append('-DSCR_RESOURCE_MANAGER={0}'.format(
spec.variants['resource_manager'].value.upper()))
- args.append('-DSCR_ASYNC_API={0}'.format(
- spec.variants['async_api'].value.upper()))
+ if spec.satisfies('@:2.999'):
+ args.append('-DSCR_ASYNC_API={0}'.format(
+ spec.variants['async_api'].value.upper()))
args.append('-DSCR_FILE_LOCK={0}'.format(
spec.variants['file_lock'].value.upper()))
diff --git a/var/spack/repos/builtin/packages/screen/package.py b/var/spack/repos/builtin/packages/screen/package.py
index e2ac6fc7d9..b0690e8069 100644
--- a/var/spack/repos/builtin/packages/screen/package.py
+++ b/var/spack/repos/builtin/packages/screen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scripts/package.py b/var/spack/repos/builtin/packages/scripts/package.py
index 6ecfe9fae1..d4346da1bf 100644
--- a/var/spack/repos/builtin/packages/scripts/package.py
+++ b/var/spack/repos/builtin/packages/scripts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scrnsaverproto/package.py b/var/spack/repos/builtin/packages/scrnsaverproto/package.py
index f4239e2cd7..4365b7afca 100644
--- a/var/spack/repos/builtin/packages/scrnsaverproto/package.py
+++ b/var/spack/repos/builtin/packages/scrnsaverproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/scs/package.py b/var/spack/repos/builtin/packages/scs/package.py
index 5d783d0dc4..55b213b87a 100644
--- a/var/spack/repos/builtin/packages/scs/package.py
+++ b/var/spack/repos/builtin/packages/scs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sctk/package.py b/var/spack/repos/builtin/packages/sctk/package.py
index c81dda0e3c..421ec76182 100644
--- a/var/spack/repos/builtin/packages/sctk/package.py
+++ b/var/spack/repos/builtin/packages/sctk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sdl2-image/package.py b/var/spack/repos/builtin/packages/sdl2-image/package.py
index 83541f234d..4cdc8d11e1 100644
--- a/var/spack/repos/builtin/packages/sdl2-image/package.py
+++ b/var/spack/repos/builtin/packages/sdl2-image/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sdl2/package.py b/var/spack/repos/builtin/packages/sdl2/package.py
index 0ea1b2441c..2882866896 100644
--- a/var/spack/repos/builtin/packages/sdl2/package.py
+++ b/var/spack/repos/builtin/packages/sdl2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sdsl-lite/package.py b/var/spack/repos/builtin/packages/sdsl-lite/package.py
index ba2485c6b7..dd7cbb8f67 100644
--- a/var/spack/repos/builtin/packages/sdsl-lite/package.py
+++ b/var/spack/repos/builtin/packages/sdsl-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/seacas/package.py b/var/spack/repos/builtin/packages/seacas/package.py
index 862cba1b87..b5e2f55ba7 100644
--- a/var/spack/repos/builtin/packages/seacas/package.py
+++ b/var/spack/repos/builtin/packages/seacas/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,10 @@ class Seacas(CMakePackage):
# ###################### Versions ##########################
version('master', branch='master')
+ version('2021-05-12', sha256='92663767f0317018d6f6e422e8c687e49f6f7eb2b92e49e837eb7dc0ca0ac33d')
+ version('2021-04-05', sha256='76f66eec1fec7aba30092c94c7609495e6b90d9dcb6f35b3ee188304d02c6e04')
+ version('2021-01-20', sha256='7814e81981d03009b6816be3eb4ed3845fd02cc69e006ee008a2cbc85d508246')
+ version('2021-01-06', sha256='b233502a7dc3e5ab69466054cf358eb033e593b8679c6721bf630b03999bd7e5')
version('2020-08-13', sha256='e5eaf203eb2dbfb33c61ccde26deea459d058aaea79b0847e2f4bdb0cef1ddcb')
version('2020-05-12', sha256='7fc6915f60568b36e052ba07a77d691c99abe42eaba6ae8a6dc74bb33490ed60')
version('2020-03-16', sha256='2eb404f3dcb17c3e7eacf66978372830d40ef3722788207741fcd48417807af6')
@@ -77,11 +81,11 @@ class Seacas(CMakePackage):
# Everything should be compiled position independent (-fpic)
- depends_on('netcdf-c@4.6.2:+mpi+parallel-netcdf', when='+mpi')
- depends_on('netcdf-c@4.6.2:~mpi', when='~mpi')
+ depends_on('netcdf-c@4.8.0:+mpi+parallel-netcdf', when='+mpi')
+ depends_on('netcdf-c@4.8.0:~mpi', when='~mpi')
depends_on('hdf5+hl~mpi', when='~mpi')
- depends_on('cgns@develop+mpi+scoping', when='+cgns +mpi')
- depends_on('cgns@develop~mpi+scoping', when='+cgns ~mpi')
+ depends_on('cgns@4.2.0:+mpi+scoping', when='+cgns +mpi')
+ depends_on('cgns@4.2.0:~mpi+scoping', when='+cgns ~mpi')
depends_on('adios2@develop~mpi', when='+adios2 ~mpi')
depends_on('adios2@develop+mpi', when='+adios2 +mpi')
depends_on('matio', when='+matio')
@@ -95,6 +99,7 @@ class Seacas(CMakePackage):
def cmake_args(self):
spec = self.spec
+ from_variant = self.define_from_variant
options = []
@@ -112,20 +117,14 @@ class Seacas(CMakePackage):
options.extend([
'-DSEACASProj_ENABLE_TESTS:BOOL=ON',
'-DSEACASProj_ENABLE_CXX11:BOOL=ON',
- '-DCMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
+ from_variant('CMAKE_INSTALL_RPATH_USE_LINK_PATH', 'shared'),
+ from_variant('BUILD_SHARED_LIBS', 'shared'),
'-DSEACASProj_ENABLE_Kokkos:BOOL=OFF',
'-DSEACASProj_HIDE_DEPRECATED_CODE:BOOL=OFF',
- '-DSEACASExodus_ENABLE_THREADSAFE:BOOL=%s' % (
- 'ON' if '+thread_safe' in spec else 'OFF'),
- '-DSEACASIoss_ENABLE_THREADSAFE:BOOL=%s' % (
- 'ON' if '+thread_safe' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_Fortran:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DTPL_ENABLE_X11:BOOL=%s' % (
- 'ON' if '+x11' in spec else 'OFF'),
+ from_variant('SEACASExodus_ENABLE_THREADSAFE', 'thread_safe'),
+ from_variant('SEACASIoss_ENABLE_THREADSAFE', 'thread_safe'),
+ from_variant('SEACASProj_ENABLE_Fortran', 'fortran'),
+ from_variant('TPL_ENABLE_X11', 'x11'),
])
# ########## What applications should be built #############
@@ -144,10 +143,8 @@ class Seacas(CMakePackage):
'-DSEACASProj_ENABLE_SECONDARY_TESTED_CODE:BOOL=OFF',
'-DSEACASProj_ENABLE_SEACASIoss:BOOL=ON',
'-DSEACASProj_ENABLE_SEACASExodus:BOOL=ON',
- '-DSEACASProj_ENABLE_SEACASExodus_for:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASExoIIv2for32:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
+ from_variant('SEACASProj_ENABLE_SEACASExodus_for', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASExoIIv2for32', 'fortran'),
])
if '+applications' in spec:
@@ -160,48 +157,34 @@ class Seacas(CMakePackage):
'-DSEACASProj_ENABLE_SEACASExo2mat:BOOL=ON',
'-DSEACASProj_ENABLE_SEACASExo_format:BOOL=ON',
'-DSEACASProj_ENABLE_SEACASExodiff:BOOL=ON',
- '-DSEACASProj_ENABLE_SEACASExplore:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASGrepos:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
+ from_variant('SEACASProj_ENABLE_SEACASExplore', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASGrepos', 'fortran'),
'-DSEACASProj_ENABLE_SEACASMat2exo:BOOL=ON',
+ '-DSEACASProj_ENABLE_SEACASNas2exo:BOOL=ON',
'-DSEACASProj_ENABLE_SEACASNemslice:BOOL=ON',
'-DSEACASProj_ENABLE_SEACASNemspread:BOOL=ON',
+ '-DSEACASProj_ENABLE_SEACASSlice:BOOL=ON',
])
if '+legacy' in spec:
options.extend([
- '-DSEACASProj_ENABLE_SEACASAlgebra:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASBlot:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASEx1ex2v2:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASEx2ex1v2:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASExomatlab:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASExotec2:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASExotxt:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASFastq:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASGen3D:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASGenshell:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASGjoin:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASMapvar:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
+ from_variant('SEACASProj_ENABLE_SEACASAlgebra', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASBlot', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASEx1ex2v2', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASEx2ex1v2', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASExomatlab', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASExotec2', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASExotxt', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASFastq', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASGen3D', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASGenshell', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASGjoin', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASMapvar', 'fortran'),
'-DSEACASProj_ENABLE_SEACASMapvar-kd:BOOL=%s' % (
'ON' if '+fortran' in spec else 'OFF'),
'-DSEACASProj_ENABLE_SEACASNemesis:BOOL=ON',
- '-DSEACASProj_ENABLE_SEACASNumbers:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
- '-DSEACASProj_ENABLE_SEACASTxtexo:BOOL=%s' % (
- 'ON' if '+fortran' in spec else 'OFF'),
+ from_variant('SEACASProj_ENABLE_SEACASNumbers', 'fortran'),
+ from_variant('SEACASProj_ENABLE_SEACASTxtexo', 'fortran'),
])
# ##################### Dependencies ##########################
diff --git a/var/spack/repos/builtin/packages/sed/package.py b/var/spack/repos/builtin/packages/sed/package.py
index 3565c3c9ef..98ac82b36f 100644
--- a/var/spack/repos/builtin/packages/sed/package.py
+++ b/var/spack/repos/builtin/packages/sed/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sensei/package.py b/var/spack/repos/builtin/packages/sensei/package.py
index fa2e534166..703b854c5c 100644
--- a/var/spack/repos/builtin/packages/sensei/package.py
+++ b/var/spack/repos/builtin/packages/sensei/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,9 @@ class Sensei(CMakePackage):
git = "https://gitlab.kitware.com/sensei/sensei.git"
maintainers = ['sshudler']
- version('master', branch='master')
+ version('develop', branch='develop')
+ version('3.2.1', sha256='8cde9ac5313e6c03fd793d24a6f285b60cca14cacfc83931f11d878163ee9d5b')
+ version('3.2.0', sha256='fe4fe294c17e469bfd1824130648a7d25b1fa771904b5c5edc37b820d090e224')
version('3.1.0', sha256='9a3e6d0d5bb6170ee666586435434da1708b3876fd448b9d41142571ed9da939')
version('3.0.0', sha256='0aabbea03ade9947c88fc0aa6d3cbaf3c8267e8504e384a041445678a95e58eb')
version('2.1.1', sha256='8a27ebf133fef00a59e4b29433762e6560bf20214072de7808836eb668bb5687')
@@ -27,12 +29,15 @@ class Sensei(CMakePackage):
version('1.1.0', sha256='e5a4ba691573ff6c7b0d4793665e218ee5868ebcc0198915d1f16a4b7b92a368')
version('1.0.0', sha256='bdcb03c56b51f2795ec5a7e85a5abb01d473d192fac50f2a8bf2608cc3564ff8')
+ variant('shared', default=True, description='Enables shared libraries')
variant('sencore', default=True, description='Enables the SENSEI core library')
- variant('catalyst', default=True, description='Build with ParaView-Catalyst support')
+ variant('ascent', default=False, description='Build with ParaView-Catalyst support')
+ variant('catalyst', default=False, description='Build with ParaView-Catalyst support')
variant('libsim', default=False, description='Build with VisIt-Libsim support')
- variant('vtkio', default=True, description='Enable adaptors to write to VTK XML format')
- variant('adios', default=False, description='Enable ADIOS adaptors and endpoints')
+ variant('vtkio', default=False, description='Enable adaptors to write to VTK XML format')
+ variant('adios2', default=False, description='Enable ADIOS2 adaptors and endpoints')
variant('hdf5', default=False, description='Enables HDF5 adaptors and endpoints')
+ variant('vtkm', default=False, description='Enable VTKm adaptors and endpoints')
variant('python', default=False, description='Enable Python bindings')
variant('miniapps', default=True, description='Enable the parallel 3D and oscillators miniapps')
variant('cxxstd', default='11', values=('11', '14', '17'), multi=False, description='Use the specified C++ standard when building.')
@@ -40,20 +45,34 @@ class Sensei(CMakePackage):
# All SENSEI versions up to 2.1.1 support only Python 2, so in this case
# Paraview 6 cannot be used since it requires Python 3. Starting from
# version 3, SENSEI supports Python 3.
- depends_on("paraview@5.5.0:5.5.2+python+mpi+hdf5", when="@:2.1.1 +catalyst")
- depends_on("paraview@5.6:+python3+mpi+hdf5", when="@3: +catalyst")
- depends_on("visit", when="+libsim")
- depends_on("vtk", when="+libsim")
+ depends_on("paraview@5.5.0:5.5.2+mpi+hdf5", when="@:2.1.1 +catalyst")
+ depends_on("paraview@5.5.0:5.5.2+python+mpi+hdf5", when="@:2.1.1 +catalyst+python")
+ depends_on("paraview@5.6:5.7+mpi+hdf5", when="@3:3.2.1 +catalyst")
+ depends_on("paraview@5.6:5.7+python3+mpi+hdf5", when="@3:3.2.1 +catalyst+python")
+ depends_on("paraview+mpi+hdf5", when="+catalyst")
+ depends_on("paraview+python3+mpi+hdf5", when="+catalyst+python")
+ depends_on("visit~gui~python", when="+libsim")
+ depends_on("vtk@8.1.0:8.1.2", when="+libsim")
depends_on("vtk", when="~libsim ~catalyst")
- depends_on("adios", when="+adios")
- depends_on("hdf5", when="+hdf5")
+ depends_on("vtk+python", when="~libsim ~catalyst+python")
+ depends_on("adios2", when="+adios2")
+ depends_on("ascent", when="+ascent")
+
+ # VTK needs +hl and currently spack cannot resolve +hl and ~hl
+ depends_on("hdf5+hl", when="+hdf5")
# SENSEI 3 supports Python 3, earlier versions upport only Python 2
depends_on("python@:2.7.16", when="@:2.1.1 +python", type=('build', 'run'))
depends_on("python@3:", when="@3: +python", type=('build', 'run'))
+ extends('python', when='+python')
depends_on("py-numpy", when="+python", type=('build', 'run'))
depends_on("py-mpi4py", when="+python", type=('build', 'run'))
depends_on("swig", when="+python", type='build')
depends_on('cmake@3.6:', when="@3:", type='build')
+ depends_on('pugixml')
+
+ # Since sensei always has a VTK dependency, either directly or indirectly,
+ # VTKm will also always be available via VTK so there's no scenario to
+ # have a directl dependency on VTK,
# Can have either LibSim or Catalyst, but not both
conflicts('+libsim', when='+catalyst')
@@ -65,70 +84,34 @@ class Sensei(CMakePackage):
# -Ox flags are set by default in CMake based on the build type
args = [
- '-DCMAKE_CXX_STANDARD={0}'.format(spec.variants['cxxstd'].value),
- '-DCMAKE_C_STANDARD=11',
- '-DCMAKE_POSITION_INDEPENDENT_CODE=ON',
- '-DENABLE_SENSEI:BOOL={0}'.format(
- 'ON' if '+sencore' in spec else 'OFF')
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('CMAKE_CXX_STANDARD', 'cxxstd'),
+ self.define('CMAKE_C_STANDARD', 11),
+ self.define('SENSEI_USE_EXTERNAL_pugixml', True),
+ self.define('CMAKE_POSITION_INDEPENDENT_CODE', True),
+ self.define_from_variant('ENABLE_SENSEI', 'sencore'),
+ self.define_from_variant('ENABLE_ASCENT', 'ascent'),
+ self.define_from_variant('ENABLE_VTKM', 'vtkm'),
+ self.define_from_variant('ENABLE_CATALYST', 'catalyst'),
+ self.define_from_variant('ENABLE_LIBSIM', 'libsim'),
+ self.define_from_variant('ENABLE_VTK_IO', 'vtkio'),
+ self.define_from_variant('ENABLE_PYTHON', 'python'),
+ self.define_from_variant('ENABLE_ADIOS2', 'adios2'),
+ self.define_from_variant('ENABLE_HDF5', 'hdf5'),
+ self.define_from_variant('ENABLE_PARALLEL3D', 'miniapps'),
+ self.define_from_variant('ENABLE_OSCILLATORS', 'miniapps')
]
- vtk_dir_needed = True
-
- if '+catalyst' in spec:
- args.extend([
- '-DENABLE_CATALYST:BOOL=ON',
- '-DENABLE_CATALYST_PYTHON:BOOL=ON',
- '-DParaView_DIR:PATH={0}'.format(spec['paraview'].prefix)
- ])
- vtk_dir_needed = False
- else:
- args.append('-DENABLE_CATALYST:BOOL=OFF')
-
if '+libsim' in spec:
- args.extend([
- '-DENABLE_LIBSIM:BOOL=ON',
- '-DVISIT_DIR:PATH={0}'.format(spec['visit'].prefix),
- '-DVTK_DIR:PATH={0}'.format(spec['vtk'].prefix)
- ])
- vtk_dir_needed = False
- else:
- args.append('-DENABLE_LIBSIM:BOOL=OFF')
-
- vtkio_switch = 'ON' if '+vtkio' in spec else 'OFF'
- args.append('-DENABLE_VTK_IO:BOOL={0}'.format(vtkio_switch))
+ args.append(
+ '-DVISIT_DIR:PATH={0}/current/{1}-{2}'.format(
+ spec['visit'].prefix, spec.platform, spec.target.family)
+ )
- python_switch = 'OFF'
if '+python' in spec:
- python_switch = 'ON'
- python_path = spec['python'].command.path
- args.append('-DPYTHON_EXECUTABLE:FILEPATH={0}'.format(python_path))
+ args.append(self.define('PYTHON_EXECUTABLE', spec['python'].command.path))
if spec.satisfies('@3:'):
- args.append('-DSENSEI_PYTHON_VERSION=3')
- args.append('-DENABLE_PYTHON:BOOL={0}'.format(python_switch))
-
- if '+adios' in spec:
- if spec.satisfies('@3:'):
- args.append('-DENABLE_ADIOS1:BOOL=ON')
- else:
- args.append('-DENABLE_ADIOS:BOOL=ON')
- args.append('-DADIOS_DIR:PATH={0}'.format(spec['adios'].prefix))
- else:
- args.append('-DENABLE_ADIOS:BOOL=OFF')
-
- if '+hdf5' in spec:
- args.extend([
- '-DENABLE_HDF5:BOOL=ON',
- '-DHDF5_DIR:PATH={0}'.format(spec['hdf5'].prefix)
- ])
-
- if vtk_dir_needed:
- args.append('-DVTK_DIR:PATH={0}'.format(spec['vtk'].prefix))
-
- args.extend([
- '-DENABLE_PARALLEL3D:BOOL={0}'.format(
- 'ON' if '+miniapps' in spec else 'OFF'),
- '-DENABLE_OSCILLATORS:BOOL={0}'.format(
- 'ON' if '+miniapps' in spec else 'OFF')
- ])
+ args.append(self.define('SENSEI_PYTHON_VERSION', 3))
+ args.append(self.define_from_variant('ENABLE_CATALYST_PYTHON', 'catalyst'))
return args
diff --git a/var/spack/repos/builtin/packages/sentencepiece/package.py b/var/spack/repos/builtin/packages/sentencepiece/package.py
index f3b168db66..d96c99ad9e 100644
--- a/var/spack/repos/builtin/packages/sentencepiece/package.py
+++ b/var/spack/repos/builtin/packages/sentencepiece/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sentieon-genomics/package.py b/var/spack/repos/builtin/packages/sentieon-genomics/package.py
index e58877abbc..3ebbfe0921 100644
--- a/var/spack/repos/builtin/packages/sentieon-genomics/package.py
+++ b/var/spack/repos/builtin/packages/sentieon-genomics/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,7 @@ class SentieonGenomics(Package):
homepage = "https://www.sentieon.com/"
url = "file://{0}/sentieon-genomics-201808.01.tar.gz".format(os.getcwd())
+ manual_download = True
version('201808.07', sha256='fb66b18a7b99e44968eb2c3a6a5b761d6b1e70fba9f7dfc4e5db3a74ab3d3dd9')
version('201808.01', sha256='6d77bcd5a35539549b28eccae07b19a3b353d027720536e68f46dcf4b980d5f7')
diff --git a/var/spack/repos/builtin/packages/seqan/package.py b/var/spack/repos/builtin/packages/seqan/package.py
index f70a6a7d52..bb970b7d10 100644
--- a/var/spack/repos/builtin/packages/seqan/package.py
+++ b/var/spack/repos/builtin/packages/seqan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/seqkit/package.py b/var/spack/repos/builtin/packages/seqkit/package.py
index 7ac7e979d9..386de59057 100644
--- a/var/spack/repos/builtin/packages/seqkit/package.py
+++ b/var/spack/repos/builtin/packages/seqkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/seqprep/package.py b/var/spack/repos/builtin/packages/seqprep/package.py
index 06ce717785..f595b1a38a 100644
--- a/var/spack/repos/builtin/packages/seqprep/package.py
+++ b/var/spack/repos/builtin/packages/seqprep/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/seqtk/package.py b/var/spack/repos/builtin/packages/seqtk/package.py
index eab48389bb..b3c4a0a31c 100644
--- a/var/spack/repos/builtin/packages/seqtk/package.py
+++ b/var/spack/repos/builtin/packages/seqtk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/serf/package.py b/var/spack/repos/builtin/packages/serf/package.py
index 96df6f7579..fa272fd1a5 100644
--- a/var/spack/repos/builtin/packages/serf/package.py
+++ b/var/spack/repos/builtin/packages/serf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sessreg/package.py b/var/spack/repos/builtin/packages/sessreg/package.py
index dbed54afcd..0d0cf125cb 100644
--- a/var/spack/repos/builtin/packages/sessreg/package.py
+++ b/var/spack/repos/builtin/packages/sessreg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,7 @@ class Sessreg(AutotoolsPackage, XorgPackage):
version('1.1.0', sha256='e561edb48dfc3b0624554169c15f9dd2c3139e83084cb323b0c712724f2b6043')
- depends_on('xproto@7.0.25:', type='build')
+ depends_on('xproto@7.0.25:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/setserial/package.py b/var/spack/repos/builtin/packages/setserial/package.py
index 01b9695a88..782024a5f6 100644
--- a/var/spack/repos/builtin/packages/setserial/package.py
+++ b/var/spack/repos/builtin/packages/setserial/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/setxkbmap/package.py b/var/spack/repos/builtin/packages/setxkbmap/package.py
index 2c3ebba00b..015fd23146 100644
--- a/var/spack/repos/builtin/packages/setxkbmap/package.py
+++ b/var/spack/repos/builtin/packages/setxkbmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sfcgal/package.py b/var/spack/repos/builtin/packages/sfcgal/package.py
index c1e80174e0..12ffc4af6b 100644
--- a/var/spack/repos/builtin/packages/sfcgal/package.py
+++ b/var/spack/repos/builtin/packages/sfcgal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sga/package.py b/var/spack/repos/builtin/packages/sga/package.py
index 5114f38cf4..dc6d0cffc2 100644
--- a/var/spack/repos/builtin/packages/sga/package.py
+++ b/var/spack/repos/builtin/packages/sga/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sgpp/package.py b/var/spack/repos/builtin/packages/sgpp/package.py
index 7afddd732c..a37086d7ae 100644
--- a/var/spack/repos/builtin/packages/sgpp/package.py
+++ b/var/spack/repos/builtin/packages/sgpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -34,7 +34,7 @@ class Sgpp(SConsPackage):
# be copied into prefix/lib upon installation
# (otherwise it would be prefix/lib/sgpp)
# Fixed in SGpp in PR https://github.com/SGpp/SGpp/pull/222
- patch('directory.patch', when='@:3.2.0')
+ patch('directory.patch', when='@1.0.0:3.2.0')
# Fix faulty setup.py introduced in 3.2.0
# Fixed in SGpp in version 3.3.0
patch('fix-setup-py.patch', when='@3.2.0')
@@ -73,20 +73,24 @@ class Sgpp(SConsPackage):
# extends('openjdk', when='+java')
# Mandatory dependencies
- depends_on('scons@2.5.1', when='@:3.1.0', type=('build'))
+ depends_on('scons', type=('build'))
+ depends_on('scons@2.5.1', when='@1.0.0:3.1.0', type=('build'))
depends_on('scons@3:', when='@3.2.0:', type=('build'))
depends_on('zlib', type=('link'))
# Python dependencies
extends('python', when='+python')
depends_on('py-setuptools', when='+python', type=('build'))
# Python 3 support was added in version 3.2.0
- depends_on('python@2.7:2.8', when='@:3.1.0+python', type=('build', 'run'))
+ depends_on('python', when='+python', type=('build', 'run'))
+ depends_on('python@2.7:2.8', when='@1.0.0:3.1.0+python', type=('build', 'run'))
depends_on('python@3:', when='@3.2.0:+python', type=('build', 'run'))
depends_on('swig@3:', when='+python', type=('build'))
# Python libraries (version depends on whether we use Python 2 or 3)
- depends_on('py-numpy@:1.16', when='@:3.1.0+python', type=('build', 'run'))
+ depends_on('py-numpy', when='+python', type=('build', 'run'))
+ depends_on('py-numpy@:1.16', when='@1.0.0:3.1.0+python', type=('build', 'run'))
depends_on('py-numpy@1.17:', when='@3.2.0:+python', type=('build', 'run'))
- depends_on('py-scipy@:1.2.3', when='@:3.1.0+python', type=('build', 'run'))
+ depends_on('py-scipy', when='+python', type=('build', 'run'))
+ depends_on('py-scipy@:1.2.3', when='@1.0.0:3.1.0+python', type=('build', 'run'))
depends_on('py-scipy@1.3.0:', when='@3.2.0:+python', type=('build', 'run'))
# OpenCL dependency
depends_on('opencl@1.1:', when='+opencl', type=('build', 'run'))
@@ -113,14 +117,14 @@ class Sgpp(SConsPackage):
conflicts('+misc', when='-solver')
conflicts('+misc', when='-optimization')
conflicts('+misc', when='-pde')
- conflicts('+misc', when='@:3.1.0',
+ conflicts('+misc', when='@1.0.0:3.1.0',
msg='The misc module was introduced in version 3.2.0')
# Combigrid module requirements (for 3.2.0 or older)
# newer combigrids have no dependencies
- conflicts('+combigrid', when='@:3.2.0~optimization')
- conflicts('+combigrid', when='@:3.2.0~pde')
- conflicts('+combigrid', when='@:3.2.0~solver')
- conflicts('+combigrid', when='@:3.2.0~quadrature')
+ conflicts('+combigrid', when='@1.0.0:3.2.0~optimization')
+ conflicts('+combigrid', when='@1.0.0:3.2.0~pde')
+ conflicts('+combigrid', when='@1.0.0:3.2.0~solver')
+ conflicts('+combigrid', when='@1.0.0:3.2.0~quadrature')
patch('for_aarch64.patch', when='target=aarch64:')
@@ -131,7 +135,7 @@ class Sgpp(SConsPackage):
'RUN_BOOST_TESTS=1']
if ('+python' in spec):
self.args.append('RUN_PYTHON_TESTS=1')
- if spec.satisfies('@:3.2.0'):
+ if spec.satisfies('@1.0.0:3.2.0'):
self.args.append('RUN_CPPLINT=1')
else: # argument was renamed after 3.2.0
self.args.append('CHECK_STYLE=1')
@@ -139,7 +143,7 @@ class Sgpp(SConsPackage):
self.args = ['COMPILE_BOOST_TESTS=0',
'RUN_BOOST_TESTS=0',
'RUN_PYTHON_TESTS=0']
- if spec.satisfies('@:3.2.0'):
+ if spec.satisfies('@1.0.0:3.2.0'):
self.args.append('RUN_CPPLINT=0')
else: # argument was renamed after 3.2.0
self.args.append('CHECK_STYLE=0')
@@ -171,7 +175,7 @@ class Sgpp(SConsPackage):
'1' if '+solver' in spec else '0'))
# Misc flag did not exist in older versions
- if spec.satisfies('@3.2.0:'):
+ if not spec.satisfies('@1.0.0:3.2.0'):
self.args.append('SG_MISC={0}'.format(
'1' if '+misc' in spec else '0'))
@@ -198,6 +202,8 @@ class Sgpp(SConsPackage):
if ('+mpi' in spec):
self.args.append('CXX={0}'.format(
self.spec['mpi'].mpicxx))
+ else:
+ self.args.append('CXX={0}'.format(self.compiler.cxx))
return self.args
diff --git a/var/spack/repos/builtin/packages/shadow/package.py b/var/spack/repos/builtin/packages/shadow/package.py
index 99cef1fa47..26260b8468 100644
--- a/var/spack/repos/builtin/packages/shadow/package.py
+++ b/var/spack/repos/builtin/packages/shadow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,5 +14,6 @@ class Shadow(AutotoolsPackage):
url = "https://github.com/shadow-maint/shadow/releases/download/4.7/shadow-4.7.tar.gz"
git = "https://github.com/shadow-maint/shadow.git"
- version('4.7', sha256='5135b0ca2a361a218fab59e63d9c1720d2a8fc1faa520c819a654b638017286f')
- version('4.6', sha256='4668f99bd087399c4a586084dc3b046b75f560720d83e92fd23bf7a89dda4d31')
+ version('4.8.1', sha256='3ee3081fbbcbcfea5c8916419e46bc724807bab271072104f23e7a29e9668f3a')
+ version('4.7', sha256='5135b0ca2a361a218fab59e63d9c1720d2a8fc1faa520c819a654b638017286f')
+ version('4.6', sha256='4668f99bd087399c4a586084dc3b046b75f560720d83e92fd23bf7a89dda4d31')
diff --git a/var/spack/repos/builtin/packages/shapeit/package.py b/var/spack/repos/builtin/packages/shapeit/package.py
index d0fa2e6d02..bbd6bab2a0 100644
--- a/var/spack/repos/builtin/packages/shapeit/package.py
+++ b/var/spack/repos/builtin/packages/shapeit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shapeit4/package.py b/var/spack/repos/builtin/packages/shapeit4/package.py
index 009e5084bf..864365894f 100644
--- a/var/spack/repos/builtin/packages/shapeit4/package.py
+++ b/var/spack/repos/builtin/packages/shapeit4/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shapelib/package.py b/var/spack/repos/builtin/packages/shapelib/package.py
index 47be5cdaa1..8f331c0f7f 100644
--- a/var/spack/repos/builtin/packages/shapelib/package.py
+++ b/var/spack/repos/builtin/packages/shapelib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shared-mime-info/package.py b/var/spack/repos/builtin/packages/shared-mime-info/package.py
index 25cfe11182..600fa8ffab 100644
--- a/var/spack/repos/builtin/packages/shared-mime-info/package.py
+++ b/var/spack/repos/builtin/packages/shared-mime-info/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shark/package.py b/var/spack/repos/builtin/packages/shark/package.py
index 6c6fa433a4..d163dcc96e 100644
--- a/var/spack/repos/builtin/packages/shark/package.py
+++ b/var/spack/repos/builtin/packages/shark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shc/package.py b/var/spack/repos/builtin/packages/shc/package.py
index e8ca1c18fd..a6c6484447 100644
--- a/var/spack/repos/builtin/packages/shc/package.py
+++ b/var/spack/repos/builtin/packages/shc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shengbte/package.py b/var/spack/repos/builtin/packages/shengbte/package.py
index 59697a51ce..b76cc2c6c5 100644
--- a/var/spack/repos/builtin/packages/shengbte/package.py
+++ b/var/spack/repos/builtin/packages/shengbte/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shiny-server/package.py b/var/spack/repos/builtin/packages/shiny-server/package.py
index 87cefed936..0f575c53a1 100644
--- a/var/spack/repos/builtin/packages/shiny-server/package.py
+++ b/var/spack/repos/builtin/packages/shiny-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,7 +26,7 @@ class ShinyServer(CMakePackage):
version('1.5.3.838', sha256='6fd1b12cd1cbe5c64cacbec4accefe955353f9c675e5feff809c0e911a382141')
depends_on('python@:2.8') # docs say: "Really. 3.x will not work"
- depends_on('cmake@2.8.10:')
+ depends_on('cmake@2.8.10:', type='build')
depends_on('git')
depends_on('r+X')
depends_on('openssl')
diff --git a/var/spack/repos/builtin/packages/shiro/package.py b/var/spack/repos/builtin/packages/shiro/package.py
index a97e5ca87d..863c77c1b7 100644
--- a/var/spack/repos/builtin/packages/shiro/package.py
+++ b/var/spack/repos/builtin/packages/shiro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shocklibs/package.py b/var/spack/repos/builtin/packages/shocklibs/package.py
index 49e9b76828..983ff6e192 100644
--- a/var/spack/repos/builtin/packages/shocklibs/package.py
+++ b/var/spack/repos/builtin/packages/shocklibs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shoremap/package.py b/var/spack/repos/builtin/packages/shoremap/package.py
index c03aa6e186..34693da379 100644
--- a/var/spack/repos/builtin/packages/shoremap/package.py
+++ b/var/spack/repos/builtin/packages/shoremap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shortbred/package.py b/var/spack/repos/builtin/packages/shortbred/package.py
index e64fb340e9..11ae21c8be 100644
--- a/var/spack/repos/builtin/packages/shortbred/package.py
+++ b/var/spack/repos/builtin/packages/shortbred/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shortstack/package.py b/var/spack/repos/builtin/packages/shortstack/package.py
index 22de260298..d28aef0c79 100644
--- a/var/spack/repos/builtin/packages/shortstack/package.py
+++ b/var/spack/repos/builtin/packages/shortstack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/showfont/package.py b/var/spack/repos/builtin/packages/showfont/package.py
index ae06e94365..ef2b09d9b0 100644
--- a/var/spack/repos/builtin/packages/showfont/package.py
+++ b/var/spack/repos/builtin/packages/showfont/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/shtools/package.py b/var/spack/repos/builtin/packages/shtools/package.py
index dc0388939f..6b90a5156a 100644
--- a/var/spack/repos/builtin/packages/shtools/package.py
+++ b/var/spack/repos/builtin/packages/shtools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class Shtools(MakefilePackage):
maintainers = ['eschnett']
+ version('4.8', sha256='c36fc86810017e544abbfb12f8ddf6f101a1ac8b89856a76d7d9801ffc8dac44')
version('4.5', sha256='1975a2a2bcef8c527d321be08c13c2bc479e0d6b81c468a3203f95df59be4f89')
# Note: This package also provides Python wrappers. We do not
@@ -30,18 +31,23 @@ class Shtools(MakefilePackage):
def makeopts(self, spec, prefix):
return [
"F95={0}".format(self.compiler.fc),
- ("F95FLAGS={0} -O3 -std=f2003 -ffast-math".
- format(self.compiler.fc_pic_flag)),
+ "F95FLAGS={0} -O3 -std=gnu -ffast-math".
+ format(self.compiler.fc_pic_flag),
"OPENMPFLAGS={0}".format(self.compiler.openmp_flag),
"BLAS={0}".format(spec['blas'].libs),
"FFTW={0}".format(spec['fftw'].libs),
"LAPACK={0}".format(spec['lapack'].libs),
"PREFIX={0}".format(prefix),
+ "PWD={0}".format(self.build_directory),
]
def build(self, spec, prefix):
- target = 'fortran-mp' if spec.satisfies('+openmp') else 'fortran'
- make(target, *self.makeopts(self, spec, prefix))
+ with working_dir(self.build_directory):
+ # The 'fortran' and 'fortran-mp' targets must be built separately
+ make('fortran', *self.makeopts(spec, prefix))
+ if spec.satisfies('+openmp'):
+ make('fortran-mp', *self.makeopts(spec, prefix))
def install(self, spec, prefix):
- make('install', *self.makeopts(self, spec, prefix))
+ with working_dir(self.build_directory):
+ make('install', *self.makeopts(spec, prefix))
diff --git a/var/spack/repos/builtin/packages/shuffile/package.py b/var/spack/repos/builtin/packages/shuffile/package.py
index e7a8da2c0e..baf532a798 100644
--- a/var/spack/repos/builtin/packages/shuffile/package.py
+++ b/var/spack/repos/builtin/packages/shuffile/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,16 +10,17 @@ class Shuffile(CMakePackage):
"""Shuffle files between MPI ranks"""
homepage = "https://github.com/ecp-veloc/shuffile"
- url = "https://github.com/ecp-veloc/shuffile/archive/v0.0.3.zip"
+ url = "https://github.com/ecp-veloc/shuffile/archive/v0.0.4.tar.gz"
git = "https://github.com/ecp-veloc/shuffile.git"
tags = ['ecp']
version('master', branch='master')
- version('0.0.3', sha256='6debdd9d6e6f1c4ec31015d7956e8b556acd61ce31f757e4d1fa5002029c75e2')
+ version('0.0.4', sha256='f0249ab31fc6123103ad67b1eaf799277c72adcf0dfcddf8c3a18bad2d45031d')
+ version('0.0.3', sha256='a3f685526a1146a5ad8dbacdc5f9c2e1152d9761a1a179c1db34f55afc8372f6')
depends_on('mpi')
- depends_on('kvtree')
+ depends_on('kvtree+mpi')
def cmake_args(self):
args = []
diff --git a/var/spack/repos/builtin/packages/sickle/package.py b/var/spack/repos/builtin/packages/sickle/package.py
index 5b61aea14e..260614c800 100644
--- a/var/spack/repos/builtin/packages/sickle/package.py
+++ b/var/spack/repos/builtin/packages/sickle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/siesta/package.py b/var/spack/repos/builtin/packages/siesta/package.py
index 17b8e5ec74..2779e8420a 100644
--- a/var/spack/repos/builtin/packages/siesta/package.py
+++ b/var/spack/repos/builtin/packages/siesta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -45,6 +45,8 @@ class Siesta(Package):
# Intel's mpiifort is not found
'MPIFC=%s' % spec['mpi'].mpifc
]
+ if self.spec.satisfies('%gcc'):
+ configure_args.append('FCFLAGS=-ffree-line-length-0')
for d in ['Obj', 'Obj_trans']:
with working_dir(d, create=True):
sh('../Src/configure', *configure_args)
diff --git a/var/spack/repos/builtin/packages/signalp/package.py b/var/spack/repos/builtin/packages/signalp/package.py
index 4ed3336763..521e9b28c1 100644
--- a/var/spack/repos/builtin/packages/signalp/package.py
+++ b/var/spack/repos/builtin/packages/signalp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/signify/package.py b/var/spack/repos/builtin/packages/signify/package.py
index 519556aa32..f2e7309dc2 100644
--- a/var/spack/repos/builtin/packages/signify/package.py
+++ b/var/spack/repos/builtin/packages/signify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/silo/H5FD_class_t-terminate.patch b/var/spack/repos/builtin/packages/silo/H5FD_class_t-terminate.patch
new file mode 100644
index 0000000000..02df290b5b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/silo/H5FD_class_t-terminate.patch
@@ -0,0 +1,12 @@
+diff --git a/src/hdf5_drv/H5FDsilo.c b/src/hdf5_drv/H5FDsilo.c
+index 840dfd0..0d09147 100644
+--- a/src/hdf5_drv/H5FDsilo.c
++++ b/src/hdf5_drv/H5FDsilo.c
+@@ -500,6 +500,7 @@ static const H5FD_class_t H5FD_silo_g = {
+ "silo", /*name */
+ MAXADDR, /*maxaddr */
+ H5F_CLOSE_WEAK, /* fc_degree */
++ NULL, /*terminate */
+ H5FD_silo_sb_size, /*sb_size */
+ H5FD_silo_sb_encode, /*sb_encode */
+ H5FD_silo_sb_decode, /*sb_decode */
diff --git a/var/spack/repos/builtin/packages/silo/package.py b/var/spack/repos/builtin/packages/silo/package.py
index 3d9ef4e16c..b51c7a0822 100644
--- a/var/spack/repos/builtin/packages/silo/package.py
+++ b/var/spack/repos/builtin/packages/silo/package.py
@@ -1,21 +1,22 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+from spack.util.environment import is_system_path
class Silo(AutotoolsPackage):
"""Silo is a library for reading and writing a wide variety of scientific
data to binary, disk files."""
- homepage = "http://wci.llnl.gov/simulation/computer-codes/silo"
- url = "https://wci.llnl.gov/content/assets/docs/simulation/computer-codes/silo/silo-4.10.2/silo-4.10.2.tar.gz"
+ homepage = "https://wci.llnl.gov/simulation/computer-codes/silo"
+ url = "https://wci.llnl.gov/sites/wci/files/2021-01/silo-4.10.2.tgz"
version('4.10.2', sha256='3af87e5f0608a69849c00eb7c73b11f8422fa36903dd14610584506e7f68e638', preferred=True)
version('4.10.2-bsd', sha256='4b901dfc1eb4656e83419a6fde15a2f6c6a31df84edfad7f1dc296e01b20140e',
- url="https://wci.llnl.gov/content/assets/docs/simulation/computer-codes/silo/silo-4.10.2/silo-4.10.2-bsd.tar.gz")
+ url="https://wci.llnl.gov/sites/wci/files/2021-01/silo-4.10.2-bsd.tgz")
version('4.9', sha256='90f3d069963d859c142809cfcb034bc83eb951f61ac02ccb967fc8e8d0409854')
version('4.8', sha256='c430c1d33fcb9bc136a99ad473d535d6763bd1357b704a915ba7b1081d58fb21')
@@ -27,23 +28,33 @@ class Silo(AutotoolsPackage):
description='Produce position-independent code (for shared libs)')
variant('mpi', default=True,
description='Compile with MPI Compatibility')
+ variant('hdf5', default=True,
+ description='Use the HDF5 for database')
+ variant('hzip', default=True,
+ description='Enable hzip support')
+ variant('fpzip', default=True,
+ description='Enable fpzip support')
- depends_on('hdf5@:1.10.999', when='@:4.10.2')
- depends_on('hdf5~mpi', when='~mpi')
depends_on('mpi', when='+mpi')
- depends_on('hdf5+mpi', when='+mpi')
- depends_on('qt~framework@4.8:4.9', when='+silex')
+ depends_on('hdf5@:1.10.999', when='@:4.10.2+hdf5')
+ depends_on('hdf5~mpi', when='~mpi+hdf5')
+ depends_on('hdf5+mpi', when='+mpi+hdf5')
+ depends_on('qt+gui~framework@4.8:4.9', when='+silex')
depends_on('libx11', when='+silex')
+ # Xmu dependency is required on Ubuntu 18-20
+ depends_on('libxmu', when='+silex')
depends_on('readline')
depends_on('zlib')
patch('remove-mpiposix.patch', when='@4.8:4.10.2')
+ patch('H5FD_class_t-terminate.patch', when='^hdf5@1.10.0:')
def flag_handler(self, name, flags):
spec = self.spec
if name == 'ldflags':
- if spec['hdf5'].satisfies('~shared'):
- flags.append('-ldl')
+ if '+hdf5' in spec:
+ if spec['hdf5'].satisfies('~shared'):
+ flags.append('-ldl')
flags.append(spec['readline'].libs.search_flags)
if '+pic' in spec:
@@ -70,6 +81,10 @@ class Silo(AutotoolsPackage):
# hasn't yet made it into silo.
# https://github.com/LLNL/fpzip/blob/master/src/pcmap.h
+ if self.spec.satisfies('@4.10.2-bsd'):
+ # The files below don't exist in the BSD licenced version
+ return
+
def repl(match):
# Change macro-like uppercase to title-case.
return match.group(1).title()
@@ -91,16 +106,31 @@ class Silo(AutotoolsPackage):
def configure_args(self):
spec = self.spec
config_args = [
- '--with-hdf5=%s,%s' % (spec['hdf5'].prefix.include,
- spec['hdf5'].prefix.lib),
- '--with-zlib=%s,%s' % (spec['zlib'].prefix.include,
- spec['zlib'].prefix.lib),
'--enable-install-lite-headers',
'--enable-fortran' if '+fortran' in spec else '--disable-fortran',
'--enable-silex' if '+silex' in spec else '--disable-silex',
'--enable-shared' if '+shared' in spec else '--disable-shared',
+ '--enable-hzip' if '+hzip' in spec else '--disable-hzip',
+ '--enable-fpzip' if '+fpzip' in spec else '--disable-fpzip',
]
+ # Do not specify the prefix of zlib if it is in a system directory
+ # (see https://github.com/spack/spack/pull/21900).
+ zlib_prefix = self.spec['zlib'].prefix
+ if is_system_path(zlib_prefix):
+ config_args.append('--with-zlib=yes')
+ else:
+ config_args.append(
+ '--with-zlib=%s,%s' % (zlib_prefix.include,
+ zlib_prefix.lib),
+ )
+
+ if '+hdf5' in spec:
+ config_args.append(
+ '--with-hdf5=%s,%s' % (spec['hdf5'].prefix.include,
+ spec['hdf5'].prefix.lib),
+ )
+
if '+silex' in spec:
x = spec['libx11']
config_args.extend([
@@ -116,3 +146,10 @@ class Silo(AutotoolsPackage):
config_args.append('FC=%s' % spec['mpi'].mpifc)
return config_args
+
+ @property
+ def libs(self):
+ shared = "+shared" in self.spec
+ return find_libraries(
+ "libsilo*", root=self.prefix, shared=shared, recursive=True
+ )
diff --git a/var/spack/repos/builtin/packages/simde/package.py b/var/spack/repos/builtin/packages/simde/package.py
new file mode 100644
index 0000000000..173054460f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/simde/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Simde(MesonPackage):
+ """The SIMDe header-only library provides fast, portable
+ implementations of SIMD intrinsics on hardware which doesn't
+ natively support them, such as calling SSE functions on ARM.
+ There is no performance penalty if the hardware supports the
+ native implementation (e.g., SSE/AVX runs at full speed on x86,
+ NEON on ARM, etc.)."""
+
+ homepage = "https://github.com/simd-everywhere/simde"
+ url = "https://github.com/simd-everywhere/simde/archive/v0.6.0.tar.gz"
+ git = "https://github.com/simd-everywhere/simde.git"
+
+ version('0.6.0', sha256='25a8b8c69c17ddc2f6209e86caa6b12d4ed91c0f841617efc56e5675eea84915')
+
+ patch('sve-gcc.patch', when='@0.6.0 %gcc')
+ conflicts('%gcc@8', when='target=a64fx',
+ msg='Internal compiler error with gcc8 and a64fx')
diff --git a/var/spack/repos/builtin/packages/simde/sve-gcc.patch b/var/spack/repos/builtin/packages/simde/sve-gcc.patch
new file mode 100644
index 0000000000..ea690e49de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/simde/sve-gcc.patch
@@ -0,0 +1,18 @@
+diff --git a/simde/simde-features.h b/simde/simde-features.h
+index 2a3ce9c..5cfcf48 100644
+--- a/simde/simde-features.h
++++ b/simde/simde-features.h
+@@ -252,8 +252,10 @@
+
+ #if !defined(SIMDE_ARM_SVE_NATIVE) && !defined(SIMDE_ARM_SVE_NO_NATIVE) && !defined(SIMDE_NO_NATIVE)
+ #if defined(SIMDE_ARCH_ARM_SVE)
+- #define SIMDE_ARM_SVE_NATIVE
+- #include <arm_sve.h>
++ #if !defined(HEDLEY_GCC_VERSION) || HEDLEY_GCC_VERSION_CHECK(10,0,0)
++ #define SIMDE_ARM_SVE_NATIVE
++ #include <arm_sve.h>
++ #endif
+ #endif
+ #endif
+
+
diff --git a/var/spack/repos/builtin/packages/simgrid/package.py b/var/spack/repos/builtin/packages/simgrid/package.py
index b62ed1923c..df675a2842 100644
--- a/var/spack/repos/builtin/packages/simgrid/package.py
+++ b/var/spack/repos/builtin/packages/simgrid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/simmetrix-simmodsuite/package.py b/var/spack/repos/builtin/packages/simmetrix-simmodsuite/package.py
index 7d38e267d7..87e7324061 100644
--- a/var/spack/repos/builtin/packages/simmetrix-simmodsuite/package.py
+++ b/var/spack/repos/builtin/packages/simmetrix-simmodsuite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,80 +9,80 @@ import os
def simmodsuite_releases():
releases = [
- {
- 'version': '14.0-191122',
- 'components': {
- 'gmadv': ['01cea5f7aff5e442ea544df054969740ad33e2ff4097cf02de31874d16a0c7c2', 'advmodel'],
- 'msadapt': ['69839698f24969f97963869fd212bdcff0b5d52dd40ec3fdc710d878e43b527a', 'base'],
- 'gmvoxel': ['bfea15e1fc5d258ed9db69132042a848ca81995e92bf265215e4b88d08a308a8', 'voxel'],
- 'gmabstract': ['dccdcd4b71758e4110cd69b0befa7875e5c1f3871f87478410c6676da3f39092', 'abstract'],
- 'fdcore': ['6981b2eb0c0143e6abc3ec29918fc3552f81018755770bf922d2491275984e1a', 'base'],
- 'msparallelmesh': ['1e1a431ec9dd85354ff42c6a2a41df7fbe3dfe5d296f40105c4d3aa372639dc3', 'parallelmesh'],
- 'mscore': ['bca80fcb2c86e7b6dc0259681ccd73197ce85c47f00f1910bd6b518fa0b3a092', 'base'],
- 'discrete': ['430e5f2270864b1ab9c8dff75d2510147a0c5cde8af0828975d9e38661be3a35', 'discrete'],
- 'gmimport': ['e83b3c43b7c695fa96ed42253a4b317a2882bcb8987fd3225c09492e353e49aa', 'import'],
- 'pskrnl': ['31455cfce746b2339b3644f3890d4444014fb839654a9f576ec747d28ff6c1c4', 'parasolid'],
- 'gmcore': ['af5d89b9ce266cac5b45f2bf96e1324e87e54c6e2f568bd5b6a85c41122d39e4', 'base'],
- 'aciskrnl': ['764e5633e6d502951788accfb8c34ed59430a4779a44d1775fd67f9aab8a654a', 'acis'],
- 'msparalleladapt': ['8ae607112958f6b9d319736c71a6597cf99a8a59ceed733f2a939cb9cfa6dd67', 'paralleladapt'],
- 'psint': ['f6c90b2fe87e690b2cba20f357d03c5962fed91541d6b79e01dc25cb8f01d1e0', 'parasolid'],
- 'msadv': ['f18a8285d539cb07b00fde06fe970d958eceabf2a10182bcca6c8ad1c074c395', 'adv'],
+ {
+ 'version': '14.0-191122',
+ 'components': {
+ 'gmadv': ['01cea5f7aff5e442ea544df054969740ad33e2ff4097cf02de31874d16a0c7c2', 'advmodel'],
+ 'msadapt': ['69839698f24969f97963869fd212bdcff0b5d52dd40ec3fdc710d878e43b527a', 'base'],
+ 'gmvoxel': ['bfea15e1fc5d258ed9db69132042a848ca81995e92bf265215e4b88d08a308a8', 'voxel'],
+ 'gmabstract': ['dccdcd4b71758e4110cd69b0befa7875e5c1f3871f87478410c6676da3f39092', 'abstract'],
+ 'fdcore': ['6981b2eb0c0143e6abc3ec29918fc3552f81018755770bf922d2491275984e1a', 'base'],
+ 'msparallelmesh': ['1e1a431ec9dd85354ff42c6a2a41df7fbe3dfe5d296f40105c4d3aa372639dc3', 'parallelmesh'],
+ 'mscore': ['bca80fcb2c86e7b6dc0259681ccd73197ce85c47f00f1910bd6b518fa0b3a092', 'base'],
+ 'discrete': ['430e5f2270864b1ab9c8dff75d2510147a0c5cde8af0828975d9e38661be3a35', 'discrete'],
+ 'gmimport': ['e83b3c43b7c695fa96ed42253a4b317a2882bcb8987fd3225c09492e353e49aa', 'import'],
+ 'pskrnl': ['31455cfce746b2339b3644f3890d4444014fb839654a9f576ec747d28ff6c1c4', 'parasolid'],
+ 'gmcore': ['af5d89b9ce266cac5b45f2bf96e1324e87e54c6e2f568bd5b6a85c41122d39e4', 'base'],
+ 'aciskrnl': ['764e5633e6d502951788accfb8c34ed59430a4779a44d1775fd67f9aab8a654a', 'acis'],
+ 'msparalleladapt': ['8ae607112958f6b9d319736c71a6597cf99a8a59ceed733f2a939cb9cfa6dd67', 'paralleladapt'],
+ 'psint': ['f6c90b2fe87e690b2cba20f357d03c5962fed91541d6b79e01dc25cb8f01d1e0', 'parasolid'],
+ 'msadv': ['f18a8285d539cb07b00fde06fe970d958eceabf2a10182bcca6c8ad1c074c395', 'adv'],
+ },
+ 'docs': {
+ 'MeshSim': ['f3c475072f270ff49ac2f6639ca1cddb0642889648cbea7df1a3f1b85f7cac36', 'base'],
+ 'GeomSimVoxel': ['9f4ee5a8204fee1d899cb912e0379f8be7a826e81ca0a0d8a670a4b804ca1276', 'voxel'],
+ 'MeshSimAdvanced': ['8c8bc3709238e600e8938c7c345588f8947d89eae98a228b0d0e3d46f5f4c0d9', 'adv'],
+ 'GeomSimDiscreteModeling': ['4e8e26a88e8a5ad396a637597a52f5973d8f77abc0a5b99fa737caf37226d6cc', 'discrete'],
+ 'GeomSimAdvanced': ['5efb38317d6be7862ce34024922ca372b30691a30af820474e2e26e4c3055278', 'advmodel'],
+ 'GeomSimParasolid': ['6851bdaf6d96e7b2335fce3394825e9876800f0aba0a42644758dc1bd06f60fe', 'parasolid'],
+ 'GeomSimImport': ['d931ecfc332460c825b473c0950c7ae8ff9f845e0d1565f85bfd7698da5e6d26', 'import'],
+ 'ParallelMeshSim': ['0f0d235b25a660271e401488e412220f574b341dadb827f7b82f0e93172b5cdb', 'parallelmesh'],
+ 'ParallelMeshSimAdapt': ['7964ebbd7e8d971ea85fc5260e44f7e876da5ad474dc67d8d6fc939bfa5ba454', 'paralleladapt'],
+ 'GeomSimAcis': ['dea82efbc4e3043ecda163be792ef295057e08be17654a7783ce7ca5e786f950', 'acis'],
+ 'MeshSimAdapt': ['ee4d5595572c1fe1a0d78bd9b85c774a55e994c48170450d6c5f34b05fcf2411', 'base'],
+ 'FieldSim': ['6b09b4ab278911d3e9229fd4cd8dc92ba188f151d42d9d7b96d542aad2af1fac', 'base'],
+ 'GeomSim': ['0673823d649998367c0e427055911eae971bb6e8c76625882e7a7901f4d18c44', 'base'],
+ 'GeomSimDiscrete': ['58dfd33fc5cdd2ab24e9084377943f28d5ba68b8c017b11b71cde64c5e4f2113', 'discrete'],
+ 'GeomSimAbstract': ['16248cd2a0d133029eb4b79d61397da008e4d5b5c3eaf0161a0a44148b0bc519', 'abstract'],
+ }
},
- 'docs': {
- 'MeshSim': ['f3c475072f270ff49ac2f6639ca1cddb0642889648cbea7df1a3f1b85f7cac36', 'base'],
- 'GeomSimVoxel': ['9f4ee5a8204fee1d899cb912e0379f8be7a826e81ca0a0d8a670a4b804ca1276', 'voxel'],
- 'MeshSimAdvanced': ['8c8bc3709238e600e8938c7c345588f8947d89eae98a228b0d0e3d46f5f4c0d9', 'adv'],
- 'GeomSimDiscreteModeling': ['4e8e26a88e8a5ad396a637597a52f5973d8f77abc0a5b99fa737caf37226d6cc', 'discrete'],
- 'GeomSimAdvanced': ['5efb38317d6be7862ce34024922ca372b30691a30af820474e2e26e4c3055278', 'advmodel'],
- 'GeomSimParasolid': ['6851bdaf6d96e7b2335fce3394825e9876800f0aba0a42644758dc1bd06f60fe', 'parasolid'],
- 'GeomSimImport': ['d931ecfc332460c825b473c0950c7ae8ff9f845e0d1565f85bfd7698da5e6d26', 'import'],
- 'ParallelMeshSim': ['0f0d235b25a660271e401488e412220f574b341dadb827f7b82f0e93172b5cdb', 'parallelmesh'],
- 'ParallelMeshSimAdapt': ['7964ebbd7e8d971ea85fc5260e44f7e876da5ad474dc67d8d6fc939bfa5ba454', 'paralleladapt'],
- 'GeomSimAcis': ['dea82efbc4e3043ecda163be792ef295057e08be17654a7783ce7ca5e786f950', 'acis'],
- 'MeshSimAdapt': ['ee4d5595572c1fe1a0d78bd9b85c774a55e994c48170450d6c5f34b05fcf2411', 'base'],
- 'FieldSim': ['6b09b4ab278911d3e9229fd4cd8dc92ba188f151d42d9d7b96d542aad2af1fac', 'base'],
- 'GeomSim': ['0673823d649998367c0e427055911eae971bb6e8c76625882e7a7901f4d18c44', 'base'],
- 'GeomSimDiscrete': ['58dfd33fc5cdd2ab24e9084377943f28d5ba68b8c017b11b71cde64c5e4f2113', 'discrete'],
- 'GeomSimAbstract': ['16248cd2a0d133029eb4b79d61397da008e4d5b5c3eaf0161a0a44148b0bc519', 'abstract'],
+ {
+ 'version': '12.0-191027',
+ 'components': {
+ 'gmadv': ['1a133523062974c4d9acb1d52baa3893dc891482aebaaeb79a7dc907461d5dbc', 'advmodel'],
+ 'fdcore': ['c3a89093f811cb489698d203dbe68ca910e6c67ea75c0a7aba73dd369508b9ec', 'base'],
+ 'mscore': ['a2f043278d45d8729020b663c66c57960fcec33dafd3d90db55f0a9e32723bce', 'base'],
+ 'msparallelmesh': ['2f6fd47d3c5c2f1ece4634985a522ac599d3cee20ad8a4623f252cc75aa32c4c', 'parallelmesh'],
+ 'msparalleladapt': ['8d288730b1300215a32f3b21624bd2e0e2d8a684fe928459757fcec7e0aeb7d3', 'paralleladapt'],
+ 'gmabstract': ['3b608f21e6c11db5bb48e49f9cd7e9d88aeec4feadebd778529a5c9d506d08c6', 'abstract'],
+ 'gmimport': ['fc1626c7b1522b90eaa3926e1253b84d28440c7df8634decdedb79b5229be800', 'import'],
+ 'discrete': ['a15ead08138f0c59c7ee46cd0d348d4f26e1b021d2580a134cf2b84a7337bcf9', 'discrete'],
+ 'aciskrnl': ['8773f00e08d237052c877e79d1a869214f59891e812d70df938b2a5e5423a96f', 'acis'],
+ 'msadv': ['41bdb9555ab9feb0891f0832a49fc29777d40957473f315e1c33e1c0077cba7d', 'adv'],
+ 'psint': ['b040ab48833eb2a748f757e2de6929f3002aa98db459ba92bd9a88e443e5cb07', 'parasolid'],
+ 'gmvoxel': ['19fba83c9c7eac20d9613236530fbae652dc8edef35233214f0f92b81c91a877', 'voxel'],
+ 'msadapt': ['1a752adb6724c3328fffb26f1aebed007d3c2a5df725cd29aa0cf0fdfda1f39a', 'base'],
+ 'gmcore': ['ec95bae84b36644e6e04cf0a6b4e813a51990d0a30519176ebb8a05f681af7f2', 'base'],
+ 'pskrnl': ['7b7b4952513e06c8c23aa8f7c1748f5c199d9af70ea06c4a359412237ed8ac1d', 'parasolid'],
+ },
+ 'docs': {
+ 'FieldSim': ['5109d91fe61ccdaf0af5aa869aea9c38ec98760746ec3983d100f870cbb1cb63', 'base'],
+ 'ParallelMeshSim': ['a1e6618a77022a9580beac4c698dd4b9aa70f617a27db9ce13ab1f2388475290', 'parallelmesh'],
+ 'GeomSimAcis': ['f0319b32eb417fa9b237575d9b2dc1c061848888c36fd4da97d97cdbb3cf19c3', 'acis'],
+ 'GeomSimAbstract': ['c44023e6944522057c47925db49089031c7de9b67938ca6a987e04fadfeda9b7', 'abstract'],
+ 'GeomSimDiscrete': ['ad648752fa7d2dc1ce234a612e28ce84eb1f064a1decadf17b42e9fe56967350', 'discrete'],
+ 'MeshSimAdapt': ['dcb7d6ec74c910b41b5ae707d9fd4664fcb3a0fdb2c876caaa28a6f1cf701024', 'base'],
+ 'MeshSim': ['e5a8cb300b1e13b9f2733bf8b738872ffb37d9df15836a6ab264483c10000696', 'base'],
+ 'GeomSimParasolid': ['2bf33cc5b3879716437d45fde0a02caaa165e37d248d05b4b00708e76573a15e', 'parasolid'],
+ 'GeomSimImport': ['5309433dcdce660e062412f070719eefcc6299764e9b0169533ff343c9c9c406', 'import'],
+ 'ParallelMeshSimAdapt': ['2e8e0ceede3107b85dba9536f3bbf5e6959793073a5147548cfb01ca568c8da2', 'paralleladapt'],
+ 'GeomSimDiscreteModeling': ['ff88ec234b890315cc36539e3f73f4f977dab94160860950e7b7ee0303c9b55e', 'discrete'],
+ 'GeomSim': ['62ae33372f999d5e62a1b7b161ddd7de04c055adc85cfd258e088c95b76d5fef', 'base'],
+ 'GeomSimVoxel': ['7a624ddaebd833077511acac3efd4b4c1dab09bd9feff40aba0813182eeb262f', 'voxel'],
+ 'GeomSimAdvanced': ['f0ab801ddf3d701a4ac3f8c47900cc858a4488eb0fe2f663504ba260cd270d20', 'advmodel'],
+ 'MeshSimAdvanced': ['bb532027e4fcc311a7c376383da010aed5ee133a9122b186a4e5c7d0cf1d976b', 'adv'],
+ }
}
- },
- {
- 'version': '12.0-191027',
- 'components': {
- 'gmadv': ['1a133523062974c4d9acb1d52baa3893dc891482aebaaeb79a7dc907461d5dbc', 'advmodel'],
- 'fdcore': ['c3a89093f811cb489698d203dbe68ca910e6c67ea75c0a7aba73dd369508b9ec', 'base'],
- 'mscore': ['a2f043278d45d8729020b663c66c57960fcec33dafd3d90db55f0a9e32723bce', 'base'],
- 'msparallelmesh': ['2f6fd47d3c5c2f1ece4634985a522ac599d3cee20ad8a4623f252cc75aa32c4c', 'parallelmesh'],
- 'msparalleladapt': ['8d288730b1300215a32f3b21624bd2e0e2d8a684fe928459757fcec7e0aeb7d3', 'paralleladapt'],
- 'gmabstract': ['3b608f21e6c11db5bb48e49f9cd7e9d88aeec4feadebd778529a5c9d506d08c6', 'abstract'],
- 'gmimport': ['fc1626c7b1522b90eaa3926e1253b84d28440c7df8634decdedb79b5229be800', 'import'],
- 'discrete': ['a15ead08138f0c59c7ee46cd0d348d4f26e1b021d2580a134cf2b84a7337bcf9', 'discrete'],
- 'aciskrnl': ['8773f00e08d237052c877e79d1a869214f59891e812d70df938b2a5e5423a96f', 'acis'],
- 'msadv': ['41bdb9555ab9feb0891f0832a49fc29777d40957473f315e1c33e1c0077cba7d', 'adv'],
- 'psint': ['b040ab48833eb2a748f757e2de6929f3002aa98db459ba92bd9a88e443e5cb07', 'parasolid'],
- 'gmvoxel': ['19fba83c9c7eac20d9613236530fbae652dc8edef35233214f0f92b81c91a877', 'voxel'],
- 'msadapt': ['1a752adb6724c3328fffb26f1aebed007d3c2a5df725cd29aa0cf0fdfda1f39a', 'base'],
- 'gmcore': ['ec95bae84b36644e6e04cf0a6b4e813a51990d0a30519176ebb8a05f681af7f2', 'base'],
- 'pskrnl': ['7b7b4952513e06c8c23aa8f7c1748f5c199d9af70ea06c4a359412237ed8ac1d', 'parasolid'],
- },
- 'docs': {
- 'FieldSim': ['5109d91fe61ccdaf0af5aa869aea9c38ec98760746ec3983d100f870cbb1cb63', 'base'],
- 'ParallelMeshSim': ['a1e6618a77022a9580beac4c698dd4b9aa70f617a27db9ce13ab1f2388475290', 'parallelmesh'],
- 'GeomSimAcis': ['f0319b32eb417fa9b237575d9b2dc1c061848888c36fd4da97d97cdbb3cf19c3', 'acis'],
- 'GeomSimAbstract': ['c44023e6944522057c47925db49089031c7de9b67938ca6a987e04fadfeda9b7', 'abstract'],
- 'GeomSimDiscrete': ['ad648752fa7d2dc1ce234a612e28ce84eb1f064a1decadf17b42e9fe56967350', 'discrete'],
- 'MeshSimAdapt': ['dcb7d6ec74c910b41b5ae707d9fd4664fcb3a0fdb2c876caaa28a6f1cf701024', 'base'],
- 'MeshSim': ['e5a8cb300b1e13b9f2733bf8b738872ffb37d9df15836a6ab264483c10000696', 'base'],
- 'GeomSimParasolid': ['2bf33cc5b3879716437d45fde0a02caaa165e37d248d05b4b00708e76573a15e', 'parasolid'],
- 'GeomSimImport': ['5309433dcdce660e062412f070719eefcc6299764e9b0169533ff343c9c9c406', 'import'],
- 'ParallelMeshSimAdapt': ['2e8e0ceede3107b85dba9536f3bbf5e6959793073a5147548cfb01ca568c8da2', 'paralleladapt'],
- 'GeomSimDiscreteModeling': ['ff88ec234b890315cc36539e3f73f4f977dab94160860950e7b7ee0303c9b55e', 'discrete'],
- 'GeomSim': ['62ae33372f999d5e62a1b7b161ddd7de04c055adc85cfd258e088c95b76d5fef', 'base'],
- 'GeomSimVoxel': ['7a624ddaebd833077511acac3efd4b4c1dab09bd9feff40aba0813182eeb262f', 'voxel'],
- 'GeomSimAdvanced': ['f0ab801ddf3d701a4ac3f8c47900cc858a4488eb0fe2f663504ba260cd270d20', 'advmodel'],
- 'MeshSimAdvanced': ['bb532027e4fcc311a7c376383da010aed5ee133a9122b186a4e5c7d0cf1d976b', 'adv'],
- }
- }
]
return releases
@@ -138,6 +138,7 @@ class SimmetrixSimmodsuite(Package):
"""
homepage = "http://www.simmetrix.com/products/SimulationModelingSuite/main.html"
+ manual_download = True
license_required = True
license_vars = ['SIM_LICENSE_FILE']
diff --git a/var/spack/repos/builtin/packages/simplemoc/package.py b/var/spack/repos/builtin/packages/simplemoc/package.py
index 0745910d9c..e522dabada 100644
--- a/var/spack/repos/builtin/packages/simplemoc/package.py
+++ b/var/spack/repos/builtin/packages/simplemoc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/simul/package.py b/var/spack/repos/builtin/packages/simul/package.py
index 90f5922403..3c22f1c195 100644
--- a/var/spack/repos/builtin/packages/simul/package.py
+++ b/var/spack/repos/builtin/packages/simul/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/simulationio/package.py b/var/spack/repos/builtin/packages/simulationio/package.py
index a6d45d1d93..81f0331571 100644
--- a/var/spack/repos/builtin/packages/simulationio/package.py
+++ b/var/spack/repos/builtin/packages/simulationio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/singularity-legacy/package.py b/var/spack/repos/builtin/packages/singularity-legacy/package.py
index d70eff6b10..8e0dab09b4 100644
--- a/var/spack/repos/builtin/packages/singularity-legacy/package.py
+++ b/var/spack/repos/builtin/packages/singularity-legacy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,16 +13,16 @@ class SingularityLegacy(AutotoolsPackage):
legacy package is pre-version 3.0.0
"""
- homepage = "https://www.sylabs.io/singularity/"
- url = "https://github.com/sylabs/singularity/releases/download/2.5.2/singularity-2.5.2.tar.gz"
- git = "https://github.com/sylabs/singularity.git"
+ homepage = "https://sylabs.io/singularity/"
+ url = "https://github.com/hpcng/singularity/releases/download/2.5.2/singularity-2.5.2.tar.gz"
+ git = "https://github.com/hpcng/singularity.git"
# Versions before 2.5.2 suffer from a serious security problem.
# https://nvd.nist.gov/vuln/detail/CVE-2018-12021
- version('2.6-release', branch='vault/2.6-release')
- version('2.6.1', sha256='f38d46a225e8368eb4693137806d2dc96e925a50bdf7f6983662848831041df2')
- version('2.6.0', sha256='7c425211a099f6fa6f74037e6e17be58fb5923b0bd11aea745e48ef83c488b49')
- version('2.5.2', sha256='eca09dbf4de5e971404a31f24d6c90081aef77075f51be8b3eb15b8715d6805e')
+ version('2.6-release', branch='vault/2.6-release', deprecated=True)
+ version('2.6.1', sha256='f38d46a225e8368eb4693137806d2dc96e925a50bdf7f6983662848831041df2', deprecated=True)
+ version('2.6.0', sha256='7c425211a099f6fa6f74037e6e17be58fb5923b0bd11aea745e48ef83c488b49', deprecated=True)
+ version('2.5.2', sha256='eca09dbf4de5e971404a31f24d6c90081aef77075f51be8b3eb15b8715d6805e', deprecated=True)
depends_on('libarchive', when='@2.5.2:')
# these are only needed if we're grabbing the unreleased tree
diff --git a/var/spack/repos/builtin/packages/singularity/package.py b/var/spack/repos/builtin/packages/singularity/package.py
index cf06bd20b2..ceb75a6644 100644
--- a/var/spack/repos/builtin/packages/singularity/package.py
+++ b/var/spack/repos/builtin/packages/singularity/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,13 +23,17 @@ class Singularity(MakefilePackage):
tail -15 $(spack location -i singularity)/.spack/spack-build-out.txt
'''
- homepage = "https://www.sylabs.io/singularity/"
- url = "https://github.com/sylabs/singularity/releases/download/v3.6.4/singularity-3.6.4.tar.gz"
- git = "https://github.com/sylabs/singularity.git"
+ homepage = "https://sylabs.io/singularity/"
+ url = "https://github.com/hpcng/singularity/releases/download/v3.6.4/singularity-3.6.4.tar.gz"
+ git = "https://github.com/hpcng/singularity.git"
maintainers = ['alalazo']
version('master', branch='master')
+ version('3.7.3', sha256='6667eb8875d2b66d73504f40c956b42b1351744f488d164204376215d885da5c')
+ version('3.7.2', sha256='36916222e26fb934404f0766e0ff368edac36d7fc31ca571f5f609466609066b')
+ version('3.7.1', sha256='82d2c65063560195ec34551931be3c325b95e8e2009e92755fd7daad346e083c')
+ version('3.7.0', sha256='fb96aaf5f462a56a4a5bd2951287bcbbefe8cf543e228e4e955428f386a8d478')
version('3.6.4', sha256='71233a81d6bb4d686d8dc636b3e3e962a372f54001921c89a12b062cefd9e79f')
version('3.6.3', sha256='b1a985757a9907d8db0f102fc170a25387e715f7ff31957be964bf47914ea2fd')
version('3.6.2', sha256='dfd7ec7376ca0321c47787388fb3e781034edf99068f66efc36109e516024d9b')
@@ -47,7 +51,7 @@ class Singularity(MakefilePackage):
depends_on('pkgconfig', type='build')
depends_on('go')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('libgpg-error')
depends_on('libseccomp')
depends_on('squashfs', type='run')
diff --git a/var/spack/repos/builtin/packages/sio/package.py b/var/spack/repos/builtin/packages/sio/package.py
index 0bcffaad44..ff9f559cfc 100644
--- a/var/spack/repos/builtin/packages/sio/package.py
+++ b/var/spack/repos/builtin/packages/sio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,9 +19,29 @@ class Sio(CMakePackage):
maintainers = ['vvolkl', 'tmadlener']
version('master', branch='master')
+ version('0.1', sha256='0407c0daeae53660c0562f9302a220f72ab51547050cd9fe9113b995804ab4b4')
+ version('0.0.4', sha256='72e96e6a1cc8dd3641d3e2bb9876e75bf6af8074e1617220da9e52df522ef5c0')
version('0.0.3', sha256='4c8b9c08480fb53cd10abb0e1260071a8c3f68d06a8acfd373f6560a916155cc')
version('0.0.2', sha256='e4cd2aeaeaa23c1da2c20c5c08a9b72a31b16b7a8f5aa6d480dcd561ef667657')
+ variant('builtin_zlib', default=True,
+ description='Use and statically link against a builtin version of zlib')
+ variant('cxxstd', default='17',
+ values=('11', '14', '17', '20'),
+ multi=False,
+ description='Use the specified C++ standard when building.')
+
+ depends_on('zlib', when='~builtin_zlib')
+
+ def cmake_args(self):
+ return [
+ self.define('CMAKE_CXX_STANDARD', self.spec.variants['cxxstd'].value),
+ # Examples are built this way, but if the examples are built they
+ # are also used for tests
+ self.define('SIO_EXAMPLES', self.run_tests),
+ self.define_from_variant('SIO_BUILTIN_ZLIB', 'builtin_zlib')
+ ]
+
def url_for_version(self, version):
"""Translate version numbers to ilcsoft conventions.
in spack, the convention is: 0.1 (or 0.1.0) 0.1.1, 0.2, 0.2.1 ...
diff --git a/var/spack/repos/builtin/packages/sionlib/for_aarch64.patch b/var/spack/repos/builtin/packages/sionlib/for_aarch64.patch
new file mode 100644
index 0000000000..19f1fe475f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sionlib/for_aarch64.patch
@@ -0,0 +1,11 @@
+--- spack-src/mf/Makefile.defs.linux-gomp.bak 2019-11-20 20:03:44.000000000 +0900
++++ spack-src/mf/Makefile.defs.linux-gomp 2020-12-22 17:23:16.857881412 +0900
+@@ -11,7 +11,7 @@
+ # Platform Settings
+ #------------------------------------------------------------------------------
+ PREC = 64
+-PFLAG = -m$(PREC)
++PFLAG =
+ AFLAG =
+
+ PLAT = linux
diff --git a/var/spack/repos/builtin/packages/sionlib/package.py b/var/spack/repos/builtin/packages/sionlib/package.py
new file mode 100644
index 0000000000..52c83783bc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sionlib/package.py
@@ -0,0 +1,31 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class Sionlib(AutotoolsPackage):
+ """Scalable I/O library for parallel access to task-local files"""
+
+ homepage = "https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html"
+ url = "http://apps.fz-juelich.de/jsc/sionlib/download.php?version=1.7.6"
+
+ maintainers = ['pramodk']
+
+ version('1.7.6', sha256='e85253ed3cd17a3b1c124ccd704caea3ad3c200abfcca9cc0851cb14f5a60691', extension='tar.gz')
+
+ depends_on('mpi')
+ patch('for_aarch64.patch', when='target=aarch64:')
+
+ def configure_args(self):
+ args = []
+ spec = self.spec
+
+ if spec.satisfies('^intel-mpi'):
+ args.append('--mpi=intel2')
+ elif spec.satisfies('^mpich') or spec.satisfies('^mvapich2'):
+ args.append('--mpi=mpich2')
+ elif spec.satisfies('^openmpi'):
+ args.append('--mpi=openmpi')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/sirius/package.py b/var/spack/repos/builtin/packages/sirius/package.py
index 26163fbcfa..fa4ce5cc36 100644
--- a/var/spack/repos/builtin/packages/sirius/package.py
+++ b/var/spack/repos/builtin/packages/sirius/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,13 +16,19 @@ class Sirius(CMakePackage, CudaPackage):
list_url = "https://github.com/electronic-structure/SIRIUS/releases"
git = "https://github.com/electronic-structure/SIRIUS.git"
- maintainers = ['simonpintarelli', 'haampie', 'dev-zero', 'AdhocMan']
+ maintainers = ['simonpintarelli', 'haampie', 'dev-zero', 'AdhocMan', 'toxa81']
version('develop', branch='develop')
-
+ version('master', branch='master')
+
+ version('7.2.4', sha256='aeed0e83b80c3a79a9469e7f3fe10d80ad331795e38dbc3c49cb0308e2bd084d')
+ version('7.2.3', sha256='6c10f0e87e50fcc7cdb4d1b2d35e91dba6144de8f111e36c7d08912e5942a906')
+ version('7.2.1', sha256='01bf6c9893ff471473e13351ca7fdc2ed6c1f4b1bb7afa151909ea7cd6fa0de7')
+ version('7.2.0', sha256='537800459db8a7553d7aa251c19f3a31f911930194b068bc5bca2dfb2c9b71db')
+ version('7.0.2', sha256='ee613607ce3be0b2c3f69b560b2415ce1b0e015179002aa90739430dbfaa0389')
+ version('7.0.1', sha256='cca11433f86e7f4921f7956d6589f27bf0fd5539f3e8f96e66a3a6f274888595')
version('7.0.0', sha256='da783df11e7b65668e29ba8d55c8a6827e2216ad6d88040f84f42ac20fd1bb99')
- version('6.5.7', sha256='d886c3066163c43666ebac2ea50351df03907b5686671e514a75f131ba51b43c',
- preferred=True)
+ version('6.5.7', sha256='d886c3066163c43666ebac2ea50351df03907b5686671e514a75f131ba51b43c')
version('6.5.6', sha256='c8120100bde4477545eae489ea7f9140d264a3f88696ec92728616d78f214cae')
version('6.5.5', sha256='0b23d3a8512682eea67aec57271031c65f465b61853a165015b38f7477651dd1')
version('6.5.4', sha256='5f731926b882a567d117afa5e0ed33291f1db887fce52f371ba51f014209b85d')
@@ -48,6 +54,10 @@ class Sirius(CMakePackage, CudaPackage):
variant('shared', default=True, description="Build shared libraries")
variant('openmp', default=True, description="Build with OpenMP support")
+ variant('boost_filesystem', default=False,
+ description="Use Boost filesystem for self-consistent field method "
+ "mini-app. Only required when the compiler does not "
+ "support std::experimental::filesystem nor std::filesystem")
variant('fortran', default=False, description="Build Fortran bindings")
variant('python', default=False, description="Build Python bindings")
variant('memory_pool', default=True, description="Build with memory pool")
@@ -61,6 +71,8 @@ class Sirius(CMakePackage, CudaPackage):
variant('build_type', default='Release',
description='CMake build type',
values=('Debug', 'Release', 'RelWithDebInfo'))
+ variant('apps', default=True, description="Build applications")
+ variant('tests', default=False, description="Build tests")
depends_on('python', type=('build', 'run'))
depends_on('mpi')
@@ -80,17 +92,15 @@ class Sirius(CMakePackage, CudaPackage):
depends_on('py-voluptuous', when='+python', type=('build', 'run'))
depends_on('py-pybind11', when='+python', type=('build', 'run'))
depends_on('magma', when='+magma')
+ depends_on('boost cxxstd=14 +filesystem', when='+boost_filesystem')
- depends_on('spfft', when='@6.4.0:')
- depends_on('spfft', when='@develop')
+ depends_on('spfft@1.0.3:', when='@6.4.0:')
depends_on('spfft+cuda', when='@6.4.0:+cuda')
- depends_on('spfft+cuda', when='@develop+cuda')
depends_on('spfft+rocm', when='@6.4.0:+rocm')
- depends_on('spfft+rocm', when='@develop+rocm')
- depends_on('spla@1.1.0:', when='@develop')
- depends_on('spla@1.1.0:+cuda', when='@develop+cuda')
- depends_on('spla@1.1.0:+rocm', when='@develop+rocm')
+ depends_on('spla@1.4.0:', when='@7.0.0:')
+ depends_on('spla+cuda', when='@7.0.0:+cuda')
+ depends_on('spla+rocm', when='@7.0.0:+rocm')
depends_on('elpa+openmp', when='+elpa+openmp')
depends_on('elpa~openmp', when='+elpa~openmp')
@@ -107,9 +117,14 @@ class Sirius(CMakePackage, CudaPackage):
depends_on('hsa-rocr-dev', when='+rocm', type='link')
depends_on('rocblas', when='+rocm')
+ # FindHIP cmake script only works for < 4.1
+ depends_on('hip@:4.0', when='@:7.2.0 +rocm')
+
extends('python', when='+python')
conflicts('+shared', when='@6.3.0:6.4.999')
+ conflicts('+boost_filesystem', when='~apps')
+ conflicts('^libxc@5.0.0') # known to produce incorrect results
# TODO:
# add support for CRAY_LIBSCI, testing
@@ -144,78 +159,72 @@ class Sirius(CMakePackage, CudaPackage):
def cmake_args(self):
spec = self.spec
- def _def(variant, flag=None):
- """Returns "-DUSE_VARIANT:BOOL={ON,OFF}" depending on whether
- +variant is set. If the CMake flag differs from the variant
- name, pass the flag name explicitly.
- """
-
- return "-D{0}:BOOL={1}".format(
- flag if flag else "USE_{0}".format(
- variant.strip('+~').upper()
- ),
- "ON" if variant in spec else "OFF"
- )
-
args = [
- _def('+openmp'),
- _def('+elpa'),
- _def('+magma'),
- _def('+nlcglib'),
- _def('+vdwxc'),
- _def('+memory_pool'),
- _def('+scalapack'),
- _def('+fortran', 'CREATE_FORTRAN_BINDINGS'),
- _def('+python', 'CREATE_PYTHON_MODULE'),
- _def('+cuda'),
- _def('+rocm')
+ self.define_from_variant('USE_OPENMP', 'openmp'),
+ self.define_from_variant('USE_ELPA', 'elpa'),
+ self.define_from_variant('USE_MAGMA', 'magma'),
+ self.define_from_variant('USE_NLCGLIB', 'nlcglib'),
+ self.define_from_variant('USE_VDWXC', 'vdwxc'),
+ self.define_from_variant('USE_MEMORY_POOL', 'memory_pool'),
+ self.define_from_variant('USE_SCALAPACK', 'scalapack'),
+ self.define_from_variant('CREATE_FORTRAN_BINDINGS', 'fortran'),
+ self.define_from_variant('CREATE_PYTHON_MODULE', 'python'),
+ self.define_from_variant('USE_CUDA', 'cuda'),
+ self.define_from_variant('USE_ROCM', 'rocm'),
+ self.define_from_variant('BUILD_TESTING', 'tests'),
+ self.define_from_variant('BUILD_APPS', 'apps'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared')
]
- args += [_def('+shared', 'BUILD_SHARED_LIBS')]
-
lapack = spec['lapack']
blas = spec['blas']
- args += [
- '-DLAPACK_FOUND=true',
- '-DLAPACK_LIBRARIES={0}'.format(lapack.libs.joined(';')),
- '-DBLAS_FOUND=true',
- '-DBLAS_LIBRARIES={0}'.format(blas.libs.joined(';')),
- ]
+ args.extend([
+ self.define('LAPACK_FOUND', 'true'),
+ self.define('LAPACK_LIBRARIES', lapack.libs.joined(';')),
+ self.define('BLAS_FOUND', 'true'),
+ self.define('BLAS_LIBRARIES', blas.libs.joined(';'))
+ ])
if '+scalapack' in spec:
- args += [
- '-DSCALAPACK_FOUND=true',
- '-DSCALAPACK_INCLUDE_DIRS={0}'.format(
- spec['scalapack'].prefix.include),
- '-DSCALAPACK_LIBRARIES={0}'.format(
- spec['scalapack'].libs.joined(';')),
- ]
+ args.extend([
+ self.define('SCALAPACK_FOUND', 'true'),
+ self.define('SCALAPACK_INCLUDE_DIRS',
+ spec['scalapack'].prefix.include),
+ self.define('SCALAPACK_LIBRARIES',
+ spec['scalapack'].libs.joined(';'))
+ ])
if spec['blas'].name in ['intel-mkl', 'intel-parallel-studio']:
- args += ['-DUSE_MKL=ON']
+ args.append(self.define('USE_MKL', 'ON'))
if '+elpa' in spec:
elpa_incdir = os.path.join(
spec['elpa'].headers.directories[0],
'elpa'
)
- args += ["-DELPA_INCLUDE_DIR={0}".format(elpa_incdir)]
-
- cuda_arch = spec.variants['cuda_arch'].value
- cuda_arch_selected = cuda_arch[0] != 'none'
- if '+cuda' in spec and cuda_arch_selected:
- cuda_args = '-DCUDA_ARCH={0}'.format(cuda_arch[0])
- if spec.satisfies('@:6.999'):
- cuda_args = '-DCMAKE_CUDA_FLAGS=-arch=sm_{0}'.format(
- cuda_arch[0])
- args.append(cuda_args)
+ args.append(self.define('ELPA_INCLUDE_DIR', elpa_incdir))
+
+ if '+cuda' in spec:
+ cuda_arch = spec.variants['cuda_arch'].value
+ if cuda_arch[0] != 'none':
+ # Specify a single arch directly
+ if '@:6' in spec:
+ args.append(self.define(
+ 'CMAKE_CUDA_FLAGS',
+ '-arch=sm_{0}'.format(cuda_arch[0]))
+ )
+
+ # Make SIRIUS handle it
+ else:
+ args.append(self.define('CUDA_ARCH', ';'.join(cuda_arch)))
if '+rocm' in spec:
archs = ",".join(self.spec.variants['amdgpu_target'].value)
args.extend([
- '-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix),
- '-DHIP_HCC_FLAGS=--amdgpu-target={0}'.format(archs)
+ self.define('HIP_ROOT_DIR', spec['hip'].prefix),
+ self.define('HIP_HCC_FLAGS', '--amdgpu-target={0}'.format(archs)),
+ self.define('HIP_CXX_COMPILER', self.spec['hip'].hipcc)
])
return args
diff --git a/var/spack/repos/builtin/packages/skilion-onedrive/package.py b/var/spack/repos/builtin/packages/skilion-onedrive/package.py
index 5349544227..fc5ad8d873 100644
--- a/var/spack/repos/builtin/packages/skilion-onedrive/package.py
+++ b/var/spack/repos/builtin/packages/skilion-onedrive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/skopeo/package.py b/var/spack/repos/builtin/packages/skopeo/package.py
index 4f0372639c..637dd7d2ed 100644
--- a/var/spack/repos/builtin/packages/skopeo/package.py
+++ b/var/spack/repos/builtin/packages/skopeo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sl/package.py b/var/spack/repos/builtin/packages/sl/package.py
index 2b3e9bb16a..4a8c2410ed 100644
--- a/var/spack/repos/builtin/packages/sl/package.py
+++ b/var/spack/repos/builtin/packages/sl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/slang/package.py b/var/spack/repos/builtin/packages/slang/package.py
index c3ba78103d..2f2ab10dc5 100644
--- a/var/spack/repos/builtin/packages/slang/package.py
+++ b/var/spack/repos/builtin/packages/slang/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/slate/package.py b/var/spack/repos/builtin/packages/slate/package.py
index 730322ec52..61490eeb42 100644
--- a/var/spack/repos/builtin/packages/slate/package.py
+++ b/var/spack/repos/builtin/packages/slate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
from spack import *
-class Slate(CMakePackage):
+class Slate(CMakePackage, CudaPackage, ROCmPackage):
"""The Software for Linear Algebra Targeting Exascale (SLATE) project is
to provide fundamental dense linear algebra capabilities to the US
Department of Energy and to the high-performance computing (HPC) community
@@ -21,20 +21,23 @@ class Slate(CMakePackage):
maintainers = ['G-Ragghianti', 'mgates3']
version('master', branch='master')
+ version('2021.05.02', sha256='29667a9e869e41fbc22af1ae2bcd425d79b4094bbb3f21c411888e7adc5d12e3')
+ version('2021.05.01', sha256='d9db2595f305eb5b1b49a77cc8e8c8e43c3faab94ed910d8387c221183654218')
version('2020.10.00', sha256='ff58840cdbae2991d100dfbaf3ef2f133fc2f43fc05f207dc5e38a41137882ab')
- variant('cuda', default=True, description='Build with CUDA support.')
- variant('mpi', default=True, description='Build with MPI support.')
+ variant('mpi', default=True, description='Build with MPI support (without MPI is experimental).')
variant('openmp', default=True, description='Build with OpenMP support.')
variant('shared', default=True, description='Build shared library')
- depends_on('cuda', when='+cuda')
depends_on('mpi', when='+mpi')
depends_on('blas')
depends_on('blaspp ~cuda', when='~cuda')
depends_on('blaspp +cuda', when='+cuda')
- depends_on('lapackpp')
- depends_on('lapackpp@2020.10.02:', when='@2020.10.00')
+ depends_on('blaspp ~rocm', when='~rocm')
+ for val in ROCmPackage.amdgpu_targets:
+ depends_on('blaspp +rocm amdgpu_target=%s' % val, when='amdgpu_target=%s' % val)
+ depends_on('lapackpp@2021.04.00:', when='@2021.05.01:')
+ depends_on('lapackpp@2020.10.02', when='@2020.10.00')
depends_on('lapackpp@master', when='@master')
depends_on('scalapack')
@@ -43,14 +46,25 @@ class Slate(CMakePackage):
conflicts('%xl', msg=cpp_17_msg)
conflicts('%xl_r', msg=cpp_17_msg)
conflicts('%intel@19:', msg='Does not currently build with icpc >= 2019')
+ conflicts('+rocm', when='@:2020.10.00', msg='ROCm support requires SLATE 2021.05.01 or greater')
+ conflicts('+rocm', when='+cuda', msg='SLATE only supports one GPU backend at a time')
def cmake_args(self):
spec = self.spec
+ backend_config = '-Duse_cuda=%s' % ('+cuda' in spec)
+ if self.version >= Version('2021.05.01'):
+ backend = 'none'
+ if '+cuda' in spec:
+ backend = 'cuda'
+ if '+rocm' in spec:
+ backend = 'hip'
+ backend_config = '-Dgpu_backend=%s' % backend
+
return [
'-Dbuild_tests=%s' % self.run_tests,
'-Duse_openmp=%s' % ('+openmp' in spec),
'-DBUILD_SHARED_LIBS=%s' % ('+shared' in spec),
- '-Duse_cuda=%s' % ('+cuda' in spec),
+ backend_config,
'-Duse_mpi=%s' % ('+mpi' in spec),
'-DSCALAPACK_LIBRARIES=%s' % spec['scalapack'].libs.joined(';')
]
diff --git a/var/spack/repos/builtin/packages/sleef/package.py b/var/spack/repos/builtin/packages/sleef/package.py
index 4573e8f196..854e067e3e 100644
--- a/var/spack/repos/builtin/packages/sleef/package.py
+++ b/var/spack/repos/builtin/packages/sleef/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/slepc/package.py b/var/spack/repos/builtin/packages/slepc/package.py
index 47223be224..7a46eccefd 100644
--- a/var/spack/repos/builtin/packages/slepc/package.py
+++ b/var/spack/repos/builtin/packages/slepc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,12 @@ class Slepc(Package):
maintainers = ['joseeroman', 'balay']
- version('master', branch='master')
+ test_requires_compiler = True
+
+ version('main', branch='main')
+ version('3.15.0', sha256='e53783ae13acadce274ea65c67186b5ab12332cf17125a694e21d598aa6b5f00')
+ version('3.14.2', sha256='3e54578dda1f4c54d35ac27d02f70a43f6837906cb7604dbcec0e033cfb264c8')
+ version('3.14.1', sha256='cc78a15e34d26b3e6dde003d4a30064e595225f6185c1975bbd460cb5edd99c7')
version('3.14.0', sha256='37f8bb270169d1d3f5d43756ac8929d56204e596bd7a78a7daff707513472e46')
version('3.13.4', sha256='ddc9d58e1a4413218f4e67ea3b255b330bd389d67f394403a27caedf45afa496')
version('3.13.3', sha256='23d179c22b4b2f22d29fa0ac0a62f5355a964d3bc245a667e9332347c5aa8f81')
@@ -52,7 +57,8 @@ class Slepc(Package):
depends_on('python@2.6:2.8,3.4:', type='build', when='@3.11:')
# Cannot mix release and development versions of SLEPc and PETSc:
- depends_on('petsc@develop', when='@develop')
+ depends_on('petsc@main', when='@main')
+ depends_on('petsc@3.15:3.15.99', when='@3.15:3.15.99')
depends_on('petsc@3.14:3.14.99', when='@3.14:3.14.99')
depends_on('petsc@3.13:3.13.99', when='@3.13:3.13.99')
depends_on('petsc@3.12:3.12.99', when='@3.12:3.12.99')
@@ -91,11 +97,15 @@ class Slepc(Package):
# its symlink in spack/stage/ !
os.environ['SLEPC_DIR'] = os.getcwd()
- options = []
+ if self.spec.satisfies('%cce'):
+ filter_file(' flags = l',
+ ' flags = l\n flags += ["-fuse-ld=gold"]',
+ 'config/package.py')
+ options = []
if '+arpack' in spec:
options.extend([
- '--with-arpack-dir=%s' % spec['arpack-ng'].prefix.lib,
+ '--with-arpack-dir=%s' % spec['arpack-ng'].prefix,
])
if spec.satisfies('@:3.12.99'):
arpackopt = '--with-arpack-flags'
@@ -124,6 +134,36 @@ class Slepc(Package):
make('install', parallel=False)
- def setup_dependent_build_environment(self, env, dependent_spec):
- # set up SLEPC_DIR for everyone using SLEPc package
+ def setup_run_environment(self, env):
+ # set SLEPC_DIR & PETSC_DIR in the module file
env.set('SLEPC_DIR', self.prefix)
+ env.set('PETSC_DIR', self.spec['petsc'].prefix)
+
+ def run_hello_test(self):
+ """Run stand alone test: hello"""
+ test_dir = self.test_suite.current_test_data_dir
+
+ if not os.path.exists(test_dir):
+ print('Skipping slepc test')
+ return
+
+ exe = 'hello'
+ cc_exe = os.environ['CC']
+
+ self.run_test(exe=cc_exe,
+ options=['-I{0}'.format(self.prefix.include),
+ '-L', self.prefix.lib, '-l', 'slepc',
+ '-L', self.spec['petsc'].prefix.lib, '-l', 'petsc',
+ '-L', self.spec['mpi'].prefix.lib, '-l', 'mpi',
+ '-o', exe, join_path(test_dir, 'hello.c')],
+ purpose='test: compile {0} example'.format(exe),
+ work_dir=test_dir)
+
+ self.run_test(exe=exe,
+ options=[],
+ expected=['Hello world'],
+ purpose='test: run {0} example'.format(exe),
+ work_dir=test_dir)
+
+ def test(self):
+ self.run_hello_test()
diff --git a/var/spack/repos/builtin/packages/slepc/test/hello.c b/var/spack/repos/builtin/packages/slepc/test/hello.c
new file mode 100644
index 0000000000..8a9ca8674a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/slepc/test/hello.c
@@ -0,0 +1,14 @@
+static char help[] = "Hello World example program\n";
+
+#include "slepcsys.h"
+
+int main( int argc, char **argv )
+{
+ int ierr;
+
+ SlepcInitialize(&argc,&argv,(char*)0,help);
+ ierr = PetscPrintf(PETSC_COMM_WORLD,"Hello world\n");
+
+ return ierr;
+}
+
diff --git a/var/spack/repos/builtin/packages/slf4j/package.py b/var/spack/repos/builtin/packages/slf4j/package.py
index 0dc6fa40b1..5eeec60958 100644
--- a/var/spack/repos/builtin/packages/slf4j/package.py
+++ b/var/spack/repos/builtin/packages/slf4j/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/slider/package.py b/var/spack/repos/builtin/packages/slider/package.py
index 18695a3151..f64debcce1 100644
--- a/var/spack/repos/builtin/packages/slider/package.py
+++ b/var/spack/repos/builtin/packages/slider/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sloccount/package.py b/var/spack/repos/builtin/packages/sloccount/package.py
index c580a043d1..5beda2a1de 100644
--- a/var/spack/repos/builtin/packages/sloccount/package.py
+++ b/var/spack/repos/builtin/packages/sloccount/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/slurm/package.py b/var/spack/repos/builtin/packages/slurm/package.py
index de89d80544..88ba0d5f29 100644
--- a/var/spack/repos/builtin/packages/slurm/package.py
+++ b/var/spack/repos/builtin/packages/slurm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,6 +24,9 @@ class Slurm(AutotoolsPackage):
homepage = 'https://slurm.schedmd.com'
url = 'https://github.com/SchedMD/slurm/archive/slurm-19-05-6-1.tar.gz'
+ version('20-11-5-1', sha256='d0634c6c6cc79bde38d19f0ef0de0de3b07907830f5e45be6f4a9ca4259f8f67')
+ version('20-11-4-1', sha256='06c5333e85f531730bf1c6eb48a8d48a551d9090540ce37b78181024273fb6bd')
+ version('20-11-0-1', sha256='404f72c287c5aad887a5b141304e4962548c12f79b04fc9c88550bc024604228')
version('20-02-4-1', sha256='d32a39df20a99430973de6692870269f38443d8b963c32b4d6475c9d5e92cd73')
version('19-05-6-1', sha256='1b83bce4260af06d644253b1f2ec2979b80b4418c631e9c9f48c2729ae2c95ba')
version('19-05-5-1', sha256='e53e67bd0bb4c37a9c481998764a746467a96bc41d6527569080514f36452c07')
diff --git a/var/spack/repos/builtin/packages/smalt/package.py b/var/spack/repos/builtin/packages/smalt/package.py
index 47d5c99329..8998620d92 100644
--- a/var/spack/repos/builtin/packages/smalt/package.py
+++ b/var/spack/repos/builtin/packages/smalt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/smartdenovo/aarch64.patch b/var/spack/repos/builtin/packages/smartdenovo/aarch64.patch
index 998c9b2cdf..f734dee41b 100644
--- a/var/spack/repos/builtin/packages/smartdenovo/aarch64.patch
+++ b/var/spack/repos/builtin/packages/smartdenovo/aarch64.patch
@@ -23,7 +23,7 @@ index 15dd0f2..22641ed 100644
#include <stdlib.h>
#include <stdint.h>
-#include <emmintrin.h>
-+#include "SSE2NEON.h"
++#include "sse2neon.h"
#include "ksw.h"
#ifdef USE_MALLOC_WRAPPERS
diff --git a/var/spack/repos/builtin/packages/smartdenovo/package.py b/var/spack/repos/builtin/packages/smartdenovo/package.py
index 48109ea9e4..8c1096e681 100644
--- a/var/spack/repos/builtin/packages/smartdenovo/package.py
+++ b/var/spack/repos/builtin/packages/smartdenovo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/smartmontools/package.py b/var/spack/repos/builtin/packages/smartmontools/package.py
index a3c555bd1a..69fc9434c1 100644
--- a/var/spack/repos/builtin/packages/smartmontools/package.py
+++ b/var/spack/repos/builtin/packages/smartmontools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/smof/package.py b/var/spack/repos/builtin/packages/smof/package.py
index 41d41aeac0..7e106fc41e 100644
--- a/var/spack/repos/builtin/packages/smof/package.py
+++ b/var/spack/repos/builtin/packages/smof/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/smproxy/package.py b/var/spack/repos/builtin/packages/smproxy/package.py
index 5e05f134e5..c487121c06 100644
--- a/var/spack/repos/builtin/packages/smproxy/package.py
+++ b/var/spack/repos/builtin/packages/smproxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/snakemake/package.py b/var/spack/repos/builtin/packages/snakemake/package.py
index 2b670192b0..8e8fbb7756 100644
--- a/var/spack/repos/builtin/packages/snakemake/package.py
+++ b/var/spack/repos/builtin/packages/snakemake/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,7 +10,7 @@ class Snakemake(PythonPackage):
"""Snakemake is an MIT-licensed workflow management system."""
homepage = "https://snakemake.readthedocs.io/en/stable/"
- url = "https://pypi.io/packages/source/s/snakemake/snakemake-3.11.2.tar.gz"
+ pypi = "snakemake/snakemake-3.11.2.tar.gz"
version('3.11.2', sha256='f7a3b586bc2195f2dce4a4817b7ec828b6d2a0cff74a04e0f7566dcd923f9761')
diff --git a/var/spack/repos/builtin/packages/snap-berkeley/package.py b/var/spack/repos/builtin/packages/snap-berkeley/package.py
index de9928e0c3..7cf465a4ca 100644
--- a/var/spack/repos/builtin/packages/snap-berkeley/package.py
+++ b/var/spack/repos/builtin/packages/snap-berkeley/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/snap-korf/package.py b/var/spack/repos/builtin/packages/snap-korf/package.py
index dc10171052..511c9895dc 100644
--- a/var/spack/repos/builtin/packages/snap-korf/package.py
+++ b/var/spack/repos/builtin/packages/snap-korf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/snap/package.py b/var/spack/repos/builtin/packages/snap/package.py
index 3815d3ac64..eee20dab51 100644
--- a/var/spack/repos/builtin/packages/snap/package.py
+++ b/var/spack/repos/builtin/packages/snap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/snappy/package.py b/var/spack/repos/builtin/packages/snappy/package.py
index 2e0154aa6f..3929f4caaf 100644
--- a/var/spack/repos/builtin/packages/snappy/package.py
+++ b/var/spack/repos/builtin/packages/snappy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,19 +23,12 @@ class Snappy(CMakePackage):
patch('link_gtest.patch')
def cmake_args(self):
- spec = self.spec
-
- args = [
- '-DCMAKE_INSTALL_LIBDIR:PATH={0}'.format(
- self.prefix.lib),
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'),
- '-DSNAPPY_BUILD_TESTS:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF')
+ return [
+ self.define('CMAKE_INSTALL_LIBDIR', self.prefix.lib),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define('SNAPPY_BUILD_TESTS', self.run_tests),
]
- return args
-
def flag_handler(self, name, flags):
flags = list(flags)
if '+pic' in self.spec:
diff --git a/var/spack/repos/builtin/packages/snbone/package.py b/var/spack/repos/builtin/packages/snbone/package.py
index a349593b5a..835634a8f0 100644
--- a/var/spack/repos/builtin/packages/snbone/package.py
+++ b/var/spack/repos/builtin/packages/snbone/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sniffles/package.py b/var/spack/repos/builtin/packages/sniffles/package.py
index fafa8a1f9d..806d4835f9 100644
--- a/var/spack/repos/builtin/packages/sniffles/package.py
+++ b/var/spack/repos/builtin/packages/sniffles/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/snpeff/package.py b/var/spack/repos/builtin/packages/snpeff/package.py
index b8f23c5b68..7544d504b9 100644
--- a/var/spack/repos/builtin/packages/snpeff/package.py
+++ b/var/spack/repos/builtin/packages/snpeff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/snphylo/package.py b/var/spack/repos/builtin/packages/snphylo/package.py
index 04eaf44d0e..e06bf65911 100644
--- a/var/spack/repos/builtin/packages/snphylo/package.py
+++ b/var/spack/repos/builtin/packages/snphylo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/snptest/package.py b/var/spack/repos/builtin/packages/snptest/package.py
index eb47242a29..062f9bc067 100644
--- a/var/spack/repos/builtin/packages/snptest/package.py
+++ b/var/spack/repos/builtin/packages/snptest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/soapdenovo-trans/package.py b/var/spack/repos/builtin/packages/soapdenovo-trans/package.py
index 88c4cff038..6c76590c31 100644
--- a/var/spack/repos/builtin/packages/soapdenovo-trans/package.py
+++ b/var/spack/repos/builtin/packages/soapdenovo-trans/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/soapdenovo2/package.py b/var/spack/repos/builtin/packages/soapdenovo2/package.py
index 1045ba56a7..82e0172ab0 100644
--- a/var/spack/repos/builtin/packages/soapdenovo2/package.py
+++ b/var/spack/repos/builtin/packages/soapdenovo2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/soci/package.py b/var/spack/repos/builtin/packages/soci/package.py
index 2c8bae12c5..0d960942b9 100644
--- a/var/spack/repos/builtin/packages/soci/package.py
+++ b/var/spack/repos/builtin/packages/soci/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sofa-c/package.py b/var/spack/repos/builtin/packages/sofa-c/package.py
index f953033781..2b53d41274 100644
--- a/var/spack/repos/builtin/packages/sofa-c/package.py
+++ b/var/spack/repos/builtin/packages/sofa-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sollve/package.py b/var/spack/repos/builtin/packages/sollve/package.py
index c50eb85d7f..93462b031c 100644
--- a/var/spack/repos/builtin/packages/sollve/package.py
+++ b/var/spack/repos/builtin/packages/sollve/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -72,7 +72,7 @@ class Sollve(CMakePackage):
depends_on('binutils+gold', when='+gold')
# develop version.
- version("develop")
+ version("develop", deprecated=True)
resource(name='compiler-rt',
svn='http://llvm.org/svn/llvm-project/compiler-rt/trunk',
destination='projects', when='@develop+compiler-rt',
@@ -99,7 +99,8 @@ class Sollve(CMakePackage):
placement='libunwind')
# 1.0a2 based on LLVM 9.0+
- version("1.0a2", commit="cb4343bda9e57076a74dee23236ac9737e07594f")
+ version("1.0a2", commit="cb4343bda9e57076a74dee23236ac9737e07594f",
+ deprecated=True)
resource(name='compiler-rt',
svn='https://llvm.org/svn/llvm-project/compiler-rt/trunk',
revision=373130, destination='projects',
diff --git a/var/spack/repos/builtin/packages/sollya/package.py b/var/spack/repos/builtin/packages/sollya/package.py
new file mode 100644
index 0000000000..6d3fdad7de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sollya/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Sollya(AutotoolsPackage):
+ """Sollya is both a tool environment and a library for safe floating-point code
+ development. It is particularily targeted to the automatized implementation of
+ mathematical floating-point libraries (libm). Amongst other features, it offers
+ a certified infinity (supremum) norm and a fast Remez algorithm."""
+
+ homepage = "https://www.sollya.org"
+ url = "https://www.sollya.org/releases/sollya-7.0/sollya-7.0.tar.bz2"
+
+ version('7.0', sha256='15745871f7dd3e96e12915098dd6df2078b815853a38143b2bc6c01477044984')
+
+ depends_on('gmp')
+ depends_on('mpfi')
+ depends_on('mpfr')
+ depends_on('libxml2')
+ depends_on('fplll')
+
+ def configure_args(self):
+ args = ['--with-gmp=' + self.spec['gmp'].prefix,
+ '--with-mpfr=' + self.spec['mpfr'].prefix,
+ '--with-mpfi=' + self.spec['mpfi'].prefix,
+ '--with-xml2=' + self.spec['libxml2'].prefix,
+ '--with-fplll=' + self.spec['fplll'].prefix
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/solr/package.py b/var/spack/repos/builtin/packages/solr/package.py
index 84158c2ae4..16ef667bdd 100644
--- a/var/spack/repos/builtin/packages/solr/package.py
+++ b/var/spack/repos/builtin/packages/solr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,8 @@ class Solr(Package):
list_url = "https://archive.apache.org/dist/lucene/solr"
list_depth = 1
+ depends_on('java', type='run')
+
version('8.6.0', sha256='4519ccdb531619df770f1065db6adcedc052c7aa94b42806d541966550956aa5')
version('8.5.2', sha256='c457d6c7243241cad141e1df34c6f669d58a6c60e537f4217d032616dd066dcf')
version('8.5.1', sha256='47b68073b37bbcc0517a355ef722f20827c3f1416537ebbccf5239dda8064a0b')
diff --git a/var/spack/repos/builtin/packages/somatic-sniper/package.py b/var/spack/repos/builtin/packages/somatic-sniper/package.py
index 792c8551cb..adabe87392 100644
--- a/var/spack/repos/builtin/packages/somatic-sniper/package.py
+++ b/var/spack/repos/builtin/packages/somatic-sniper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sonlib/package.py b/var/spack/repos/builtin/packages/sonlib/package.py
index c071e8a7b0..c5d1a65ef4 100644
--- a/var/spack/repos/builtin/packages/sonlib/package.py
+++ b/var/spack/repos/builtin/packages/sonlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sortmerna/for_aarch64.patch b/var/spack/repos/builtin/packages/sortmerna/for_aarch64.patch
new file mode 100644
index 0000000000..a1a279a1de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sortmerna/for_aarch64.patch
@@ -0,0 +1,22 @@
+--- spack-src/src/sortmerna/ssw.c.bak 2021-01-15 15:52:23.000000000 +0900
++++ spack-src/src/sortmerna/ssw.c 2021-01-15 16:20:53.863003152 +0900
+@@ -42,7 +42,7 @@
+ * July 10, 2013
+ */
+
+-#include <emmintrin.h>
++#include <sse2neon.h>
+ #include <stdint.h>
+ #include <stdlib.h>
+ #include <stdio.h>
+--- spack-src/include/ssw.h.bak 2021-01-15 15:52:22.000000000 +0900
++++ spack-src/include/ssw.h 2021-01-15 16:16:51.383025096 +0900
+@@ -21,7 +21,7 @@
+ #include <stdio.h>
+ #include <stdint.h>
+ #include <string.h>
+-#include <emmintrin.h>
++#include <sse2neon.h>
+
+ extern const char map_nt[122];
+ /*! @typedef structure of the query profile */
diff --git a/var/spack/repos/builtin/packages/sortmerna/package.py b/var/spack/repos/builtin/packages/sortmerna/package.py
index 3369f9b3a8..a5537da9b2 100644
--- a/var/spack/repos/builtin/packages/sortmerna/package.py
+++ b/var/spack/repos/builtin/packages/sortmerna/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,10 +16,13 @@ class Sortmerna(CMakePackage):
version('2017-07-13', commit='8bde6fa113a5d99a23ae81b48eeea6760e966094')
depends_on('zlib')
+ depends_on('sse2neon', when='target=aarch64:')
+
+ patch('for_aarch64.patch', when='target=aarch64:')
def install(self, spec, prefix):
mkdirp(prefix.bin)
- with working_dir(join_path('spack-build', 'src', 'indexdb')):
+ with working_dir(join_path(self.build_directory, 'src', 'indexdb')):
install('indexdb', prefix.bin)
- with working_dir(join_path('spack-build', 'src', 'sortmerna')):
+ with working_dir(join_path(self.build_directory, 'src', 'sortmerna')):
install('sortmerna', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/sos/package.py b/var/spack/repos/builtin/packages/sos/package.py
new file mode 100644
index 0000000000..474e11a41a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sos/package.py
@@ -0,0 +1,51 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Sos(AutotoolsPackage):
+ """Sandia OpenSHMEM."""
+
+ homepage = "https://github.com/Sandia-OpenSHMEM/SOS"
+ url = "https://github.com/Sandia-OpenSHMEM/SOS/archive/refs/tags/v1.5.0.zip"
+
+ # notify when the package is updated.
+ maintainers = ['rscohn2']
+
+ version('1.5.0', sha256='02679da6085cca2919f900022c46bad48479690586cb4e7f971ec3a735bab4d4')
+ version('1.4.5', sha256='42778ba3cedb632ac3fbbf8917f415a804f8ca3b67fb3da6d636e6c50c501906')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('libfabric', type='link')
+
+ # Enable use of the OSH wrappers outside of Spack by preventing
+ # them from using the spack wrappers
+ filter_compiler_wrappers(
+ 'oshcc', 'oshc++', 'oshcc', 'oshfort', relative_root='bin'
+ )
+
+ def setup_dependent_build_environment(self, env, dependent_spec):
+ self.setup_compiler_environment(env)
+
+ # Enable the osh wrappers to use spack wrappers when inside spack
+ # with env variables
+ env.set('SHMEM_CC', spack_cc)
+ env.set('SHMEM_CXX', spack_cxx)
+ env.set('SHMEM_FC', spack_fc)
+
+ def autoreconf(self, spec, prefix):
+ bash = Executable('bash')
+ bash('./autogen.sh')
+
+ def configure_args(self):
+ args = []
+ args.append('--with-ofi')
+ args.append('--enable-pmi-simple')
+ return args
diff --git a/var/spack/repos/builtin/packages/sosflow/package.py b/var/spack/repos/builtin/packages/sosflow/package.py
index 161eed24dc..450034a351 100644
--- a/var/spack/repos/builtin/packages/sosflow/package.py
+++ b/var/spack/repos/builtin/packages/sosflow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/source-highlight/package.py b/var/spack/repos/builtin/packages/source-highlight/package.py
index 67d3b36881..addb69cfed 100644
--- a/var/spack/repos/builtin/packages/source-highlight/package.py
+++ b/var/spack/repos/builtin/packages/source-highlight/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sowing/package.py b/var/spack/repos/builtin/packages/sowing/package.py
index 8039dcb5b4..55dbb3017f 100644
--- a/var/spack/repos/builtin/packages/sowing/package.py
+++ b/var/spack/repos/builtin/packages/sowing/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sox/package.py b/var/spack/repos/builtin/packages/sox/package.py
index db936cf60f..edd3ae1ead 100644
--- a/var/spack/repos/builtin/packages/sox/package.py
+++ b/var/spack/repos/builtin/packages/sox/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/spades/package.py b/var/spack/repos/builtin/packages/spades/package.py
index 47c0fcbcfd..9c535b2be1 100644
--- a/var/spack/repos/builtin/packages/spades/package.py
+++ b/var/spack/repos/builtin/packages/spades/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,9 @@ class Spades(CMakePackage):
standard isolates and single-cell MDA bacteria assemblies."""
homepage = "http://cab.spbu.ru/software/spades/"
- url = "http://cab.spbu.ru/files/release3.10.1/SPAdes-3.10.1.tar.gz"
+ url = "https://github.com/ablab/spades/releases/download/v3.15.0/SPAdes-3.15.0.tar.gz"
+ version('3.15.0', sha256='6719489fa4bed6dd96d78bdd4001a30806d5469170289085836711d1ffb8b28b')
version('3.14.1', sha256='d629b78f7e74c82534ac20f5b3c2eb367f245e6840a67b9ef6a76f6fac5323ca')
version('3.13.0', sha256='c63442248c4c712603979fa70503c2bff82354f005acda2abc42dd5598427040')
version('3.12.0', sha256='15b48a3bcbbe6a8ad58fd04ba5d3f1015990fbfd9bdf4913042803b171853ac7')
diff --git a/var/spack/repos/builtin/packages/span-lite/package.py b/var/spack/repos/builtin/packages/span-lite/package.py
index ea22806822..c433640fd7 100644
--- a/var/spack/repos/builtin/packages/span-lite/package.py
+++ b/var/spack/repos/builtin/packages/span-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/spark/package.py b/var/spack/repos/builtin/packages/spark/package.py
index 7458a82068..3d341bf9db 100644
--- a/var/spack/repos/builtin/packages/spark/package.py
+++ b/var/spack/repos/builtin/packages/spark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,10 @@ class Spark(Package):
depends_on('java', type=('build', 'run'))
depends_on('hadoop', when='+hadoop', type=('build', 'run'))
+ version('3.1.1', sha256='2d16f527016993e69a7c801233e661a170e3099ae2d9b950f7457729d63062f4')
+ version('3.0.2', sha256='1a904f9bfa44a1218cb440c99800dd2ae729249a73c63b3bb10e431ed5b58406')
+ version('3.0.1', sha256='ddda310ac09e3f2da9c33ad278b1665fbad2411d8da127d0de86b90019e962dc')
+ version('2.4.7', sha256='f68f6a63814078ba3246dbf755f597b814a228122b239b07efb3909f017ddf8b')
version('2.3.0', sha256='a7e29e78bd43aa6d137f0bb0afd54a3017865d471456c6d436ae79475bbeb161')
version('2.1.0', sha256='3ca4ecb0eb9a00de5099cc2564ed957433a2d15d9d645a60470324621853c5ae')
version('2.0.2', sha256='122ec1af0fcb23c0345f20f77d33cf378422ffe966efe4b9ef90e55cf7a46a3c')
diff --git a/var/spack/repos/builtin/packages/sparse/package.py b/var/spack/repos/builtin/packages/sparse/package.py
index b6db13039b..049a087e9a 100644
--- a/var/spack/repos/builtin/packages/sparse/package.py
+++ b/var/spack/repos/builtin/packages/sparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sparsehash/package.py b/var/spack/repos/builtin/packages/sparsehash/package.py
index 0591029f36..88862a9b0e 100644
--- a/var/spack/repos/builtin/packages/sparsehash/package.py
+++ b/var/spack/repos/builtin/packages/sparsehash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sparskit/package.py b/var/spack/repos/builtin/packages/sparskit/package.py
new file mode 100644
index 0000000000..e7b72ad42c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sparskit/package.py
@@ -0,0 +1,76 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class Sparskit(MakefilePackage):
+ """SPARSKIT: A basic tool-kit for sparse matrix computations (Version 2).
+
+ Made by Yousef Saad, University of Minnesota.
+ """
+
+ homepage = "https://www-users.cs.umn.edu/~saad/software/SPARSKIT/"
+
+ version('develop', sha256='ecdd0a9968d6b45153a328710a42fe87600f0bba0e3c53896090b8ae1c113b7a',
+ url='http://www-users.cs.umn.edu/~saad/software/SPARSKIT/SPARSKIT2.tar.gz')
+
+ # The library uses blas routine which needs to be known when the lib is used.
+ # A dependent package should add self.spec['blas'].libs.ld_flags
+ # at the end of its link line.
+ # But, asis, this packages compiles without needing to know about it.
+ # depends_on('blas', type='run')
+
+ variant('pic', default=True,
+ description='Compile with position independent code.')
+ variant('debug', default=False,
+ description='Builds a debug version of the library')
+
+ # We provide the standard Make flags here:
+ # https://spack.readthedocs.io/en/latest/packaging_guide.html?highlight=flag_handler#compiler-flags
+ def flag_handler(self, name, flags):
+ spec = self.spec
+ if '+pic' in spec:
+ if name == 'fflags':
+ flags.append(self.compiler.fc_pic_flag)
+ if name == 'fflags':
+ if 'gfortran' in self.compiler.fc:
+ flags.append('-std=legacy')
+ flags.append('-Wall')
+ if '+debug' in spec:
+ if '-g' in self.compiler.debug_flags:
+ flags.append('-g')
+ if '-O0' in self.compiler.opt_flags:
+ flags.append('-O0')
+ elif '-O' in self.compiler.opt_flags:
+ flags.append('-O')
+ else:
+ if '-O3' in self.compiler.opt_flags:
+ flags.append('-O3')
+ elif '-O2' in self.compiler.opt_flags:
+ flags.append('-O2')
+
+ return (None, flags, None)
+
+ def edit(self, spec, prefix):
+ mkfile = FileFilter('makefile')
+ mkfile.filter(r'^(OPT).*=.+', r'\1= -c $(FFLAGS)')
+ if os.path.exists('libskit.a'):
+ os.unlink('libskit.a')
+
+ def build(self, spec, prefix):
+ make('clean')
+ make('F77={0}'.format(spack_fc))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.lib)
+ install('libskit.*', prefix.lib)
+
+ @property
+ def libs(self):
+ return find_libraries(
+ "libskit*", root=self.prefix, shared=False, recursive=True
+ )
diff --git a/var/spack/repos/builtin/packages/sparta/package.py b/var/spack/repos/builtin/packages/sparta/package.py
index ab1460aae4..c03d5fe96c 100644
--- a/var/spack/repos/builtin/packages/sparta/package.py
+++ b/var/spack/repos/builtin/packages/sparta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/spath/package.py b/var/spack/repos/builtin/packages/spath/package.py
index 5ccd259f48..b4490dc656 100644
--- a/var/spack/repos/builtin/packages/spath/package.py
+++ b/var/spack/repos/builtin/packages/spath/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,14 +10,18 @@ class Spath(CMakePackage):
"""Represent and manipulate file system paths"""
homepage = "https://github.com/ecp-veloc/spath"
+ url = "https://github.com/ECP-VeloC/spath/archive/v0.0.2.tar.gz"
git = "https://github.com/ecp-veloc/spath.git"
tags = ['ecp']
version('master', branch='master')
+ version('0.0.2', sha256='7a65be59c3d27e92ed4718fba1a97a4a1c68e0a552b54de13d58afe3d8199cf7')
+ version('0.0.1', sha256='f41c0ac74e6fb8acfd0c072d756db0fc9c00441f22be492cc4ad25f7fb596a24')
variant('mpi', default=True, description="Build with MPI support.")
depends_on('mpi', when='+mpi')
+ depends_on('zlib', type='link')
def cmake_args(self):
args = []
diff --git a/var/spack/repos/builtin/packages/spdlog/package.py b/var/spack/repos/builtin/packages/spdlog/package.py
index 15a0cc1d9d..c6832c547d 100644
--- a/var/spack/repos/builtin/packages/spdlog/package.py
+++ b/var/spack/repos/builtin/packages/spdlog/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,11 @@ class Spdlog(CMakePackage):
homepage = "https://github.com/gabime/spdlog"
url = "https://github.com/gabime/spdlog/archive/v0.9.0.tar.gz"
+ version('1.8.1', sha256='5197b3147cfcfaa67dd564db7b878e4a4b3d9f3443801722b3915cdeced656cb')
+ version('1.8.0', sha256='1e68e9b40cf63bb022a4b18cdc1c9d88eb5d97e4fd64fa981950a9cacf57a4bf')
+ version('1.7.0', sha256='f0114a4d3c88be9e696762f37a7c379619443ce9d668546c61b21d41affe5b62')
+ version('1.6.1', sha256='378a040d91f787aec96d269b0c39189f58a6b852e4cbf9150ccfacbe85ebbbfc')
+ version('1.6.0', sha256='0421667c9f2fc78e6548d44f7bc5921be0f03e612df384294c16cedb93d967f8')
version('1.5.0', sha256='b38e0bbef7faac2b82fed550a0c19b0d4e7f6737d5321d4fd8f216b80f8aee8a')
version('1.4.2', sha256='821c85b120ad15d87ca2bc44185fa9091409777c756029125a02f81354072157')
version('1.4.1', sha256='3291958eb54ed942d1bd3aef1b4f8ccf70566cbc04d34296ec61eb96ceb73cff')
@@ -37,19 +42,14 @@ class Spdlog(CMakePackage):
depends_on('cmake@3.2:', type='build')
def cmake_args(self):
- spec = self.spec
-
args = []
if self.spec.version >= Version('1.4.0'):
args.extend([
- '-DSPDLOG_BUILD_SHARED:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('SPDLOG_BUILD_SHARED', 'shared'),
# tests and examples
- '-DSPDLOG_BUILD_TESTS:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
- '-DSPDLOG_BUILD_EXAMPLE:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF')
+ self.define('SPDLOG_BUILD_TESTS', self.run_tests),
+ self.define('SPDLOG_BUILD_EXAMPLE', self.run_tests)
])
return args
diff --git a/var/spack/repos/builtin/packages/specfem3d-globe/gcc_rm_werror.patch b/var/spack/repos/builtin/packages/specfem3d-globe/gcc_rm_werror.patch
new file mode 100644
index 0000000000..f53c4661b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/specfem3d-globe/gcc_rm_werror.patch
@@ -0,0 +1,11 @@
+--- spack-src/flags.guess.org 2021-01-07 14:37:33.000000000 +0900
++++ spack-src/flags.guess 2021-01-07 14:38:07.000000000 +0900
+@@ -115,7 +115,7 @@
+ # with some versions of gfortran/gcc you make get errors about unused functions when compiling with the options below;
+ # if so, either change -Wunused to -Wunused -Werror=no-unused-function, or remove -Wunused, or remove -Werror
+ #
+- DEF_FFLAGS="-std=gnu -fimplicit-none -frange-check -fmax-errors=10 -pedantic -pedantic-errors -Waliasing -Wampersand -Wcharacter-truncation -Wline-truncation -Wsurprising -Wno-tabs -Wunderflow -ffpe-trap=invalid,zero,overflow -Wunused -Werror" # -mcmodel=medium
++ DEF_FFLAGS="-std=gnu -fimplicit-none -frange-check -fmax-errors=10 -pedantic -pedantic-errors -Waliasing -Wampersand -Wcharacter-truncation -Wline-truncation -Wsurprising -Wno-tabs -Wunderflow -ffpe-trap=invalid,zero,overflow -Wunused" # -mcmodel=medium
+ OPT_FFLAGS="-O3 -finline-functions"
+ DEBUG_FFLAGS="-g -O0 -ggdb -fbacktrace -fbounds-check"
+ # useful to track loss of accuracy because of automatic double to single precision conversion: -Wconversion (this may generate many warnings...)
diff --git a/var/spack/repos/builtin/packages/specfem3d-globe/package.py b/var/spack/repos/builtin/packages/specfem3d-globe/package.py
new file mode 100644
index 0000000000..e331a2e8c8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/specfem3d-globe/package.py
@@ -0,0 +1,63 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Specfem3dGlobe(AutotoolsPackage, CudaPackage):
+ """Program specfem3D from SPECFEM3D_GLOBE is
+ a 3-D spectral-element solver for the Earth.
+ It uses a mesh generated by program meshfem3D."""
+
+ homepage = "https://github.com/geodynamics/specfem3d_globe"
+ url = "https://github.com/geodynamics/specfem3d_globe/archive/v7.0.2.tar.gz"
+
+ version('7.0.2', sha256='78b4cfbe4e5121927ab82a8c2e821b65cdfff3e94d017303bf21af7805186d9b')
+
+ variant('opencl', default=False,
+ description="Build with OpenCL code generator")
+ variant('openmp', default=True,
+ description="Build with OpenMP code generator")
+ variant('double-precision', default=False,
+ description="Treat REAL as double precision")
+
+ depends_on('mpi')
+ depends_on('opencl', when='+opencl')
+
+ # When building with the gcc compiler,'Werror' is added to FFLAGS.
+ # In the case of using the gcc compiler and the default simulation
+ # settings, there is the process which always causes
+ # array out-of-bounds reference error.
+ # This issue will be fixed in version 8.0.0,
+ # so, remove '-Werror' when building with gcc compiler
+ # in versions up to 7.0.2 of specfem3d-globe.
+ # https://github.com/geodynamics/specfem3d_globe/issues/717
+ patch('gcc_rm_werror.patch', when='@:7.0.2%gcc')
+
+ def configure_args(self):
+ args = []
+
+ if '+cuda' in self.spec:
+ args.append('--with-cuda')
+ args.append('CUDA_LIB={0}'
+ .format(spec['cuda'].libs.directories[0]))
+ args.append('CUDA_INC={0}'
+ .format(spec['cuda'].prefix.include))
+ args.append('MPI_INC={0}'
+ .format(spec['mpi'].prefix.include))
+ if '+opencl' in self.spec:
+ args.append('--with-opencl')
+ args.append('OCL_LIB={0}'
+ .format(spec['opencl'].libs.directories[0]))
+ args.append('OCL_INC={0}'
+ .format(spec['opencl'].prefix.include))
+
+ args.extend(self.enable_or_disable('openmp'))
+ args.extend(self.enable_or_disable('double-precision'))
+
+ return args
+
+ def install(self, spec, prefix):
+ install_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/spectrum-mpi/package.py b/var/spack/repos/builtin/packages/spectrum-mpi/package.py
index 4efd7a0dd9..b1e03f1593 100644
--- a/var/spack/repos/builtin/packages/spectrum-mpi/package.py
+++ b/var/spack/repos/builtin/packages/spectrum-mpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/speex/package.py b/var/spack/repos/builtin/packages/speex/package.py
index 734d811f7f..3b5608b7f4 100644
--- a/var/spack/repos/builtin/packages/speex/package.py
+++ b/var/spack/repos/builtin/packages/speex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/speexdsp/package.py b/var/spack/repos/builtin/packages/speexdsp/package.py
index 1031bb5eb7..3f47ee17e2 100644
--- a/var/spack/repos/builtin/packages/speexdsp/package.py
+++ b/var/spack/repos/builtin/packages/speexdsp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/spfft/0001-fix-missing-limits-include.patch b/var/spack/repos/builtin/packages/spfft/0001-fix-missing-limits-include.patch
new file mode 100644
index 0000000000..da61a2b6ee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/spfft/0001-fix-missing-limits-include.patch
@@ -0,0 +1,37 @@
+From 237ed848e8cca208334c352f09caa85101a634c6 Mon Sep 17 00:00:00 2001
+From: Simon Frasch <simon.frasch@cscs.ch>
+Date: Tue, 11 May 2021 11:53:13 +0200
+Subject: [PATCH] fix missing <limits> include
+
+---
+ src/memory/array_view_utility.hpp | 1 +
+ src/spfft/grid_internal.cpp | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/src/memory/array_view_utility.hpp b/src/memory/array_view_utility.hpp
+index 51ccef0..0095842 100644
+--- a/src/memory/array_view_utility.hpp
++++ b/src/memory/array_view_utility.hpp
+@@ -34,6 +34,7 @@
+ #include <complex>
+ #include <cstdint>
+ #include <utility>
++#include <limits>
+ #include "memory/gpu_array_view.hpp"
+ #include "memory/host_array_view.hpp"
+ #include "memory/memory_type_trait.hpp"
+diff --git a/src/spfft/grid_internal.cpp b/src/spfft/grid_internal.cpp
+index e95e7f6..4a1483a 100644
+--- a/src/spfft/grid_internal.cpp
++++ b/src/spfft/grid_internal.cpp
+@@ -29,6 +29,7 @@
+
+ #include <complex>
+ #include <memory>
++#include <limits>
+ #include "spfft/grid_internal.hpp"
+
+ #ifdef SPFFT_MPI
+--
+2.24.3 (Apple Git-128)
+
diff --git a/var/spack/repos/builtin/packages/spfft/package.py b/var/spack/repos/builtin/packages/spfft/package.py
index 2068f46537..e9406edd5d 100644
--- a/var/spack/repos/builtin/packages/spfft/package.py
+++ b/var/spack/repos/builtin/packages/spfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,10 @@ class Spfft(CMakePackage, CudaPackage):
version('develop', branch='develop')
version('master', branch='master')
+ version('1.0.3', sha256='4f87734e3582ef96ddc0402d0db78cfc173bed9cab3e0d9c6a6bf8b660d69559')
+ version('1.0.2', sha256='9b1296bda0b9ec3d37c74fd64354a01ebc6e2da7cb026c1f821882160b03c692')
+ version('1.0.1', sha256='f8ab706309776cfbd2bfd8e29a6a9ffb5c8f3cd62399bf82db1e416ae5c490c8')
+ version('1.0.0', sha256='bd98897aa6734563ec63cd84168e731ef2e2bbc01a574c6dc59b74475742b6ee')
version('0.9.13', sha256='5ccc93c9362bec14cfb6e31dd0e7ae7e48db0453ab49ebc9722041b69db759ef')
version('0.9.12', sha256='1f7bf5164dcceb0e3bbce7d6ff9faef3145ad17cf3430149d40a98c43c010acc')
version('0.9.11', sha256='36542a60378e8672654188dee006975ef9e10f502791459ff7ebf4b38451cb9b')
@@ -53,29 +57,39 @@ class Spfft(CMakePackage, CudaPackage):
depends_on('cuda@:10', when='@:0.9.11 +cuda')
+ # FindHIP cmake script only works for < 4.1
+ depends_on('hip@:4.0', when='@:1.0.1 +rocm')
+
+ # Fix compilation error in some cases due to missing include statement
+ # before version 1.0.3
+ patch('0001-fix-missing-limits-include.patch', when='@:1.0.2')
+
def cmake_args(self):
spec = self.spec
- args = []
- if spec.satisfies('+openmp'):
- args += ["-DSPFFT_OMP=On"]
- if spec.satisfies('+mpi'):
- args += ["-DSPFFT_MPI=On"]
- if spec.satisfies('+single_precision'):
- args += ["-DSPFFT_SINGLE_PRECISION=On"]
- if spec.satisfies('+gpu_direct'):
- args += ["-DSPFFT_GPU_DIRECT=On"]
+ args = [
+ self.define_from_variant('SPFFT_OMP', 'openmp'),
+ self.define_from_variant('SPFFT_MPI', 'mpi'),
+ self.define_from_variant('SPFFT_SINGLE_PRECISION', 'single_precision'),
+ self.define_from_variant('SPFFT_GPU_DIRECT', 'gpu_direct'),
+ self.define_from_variant('SPFFT_FORTRAN', 'fortran'),
+ self.define_from_variant('SPFFT_STATIC', 'static')
+ ]
+
if spec.satisfies('+cuda'):
args += ["-DSPFFT_GPU_BACKEND=CUDA"]
+
if spec.satisfies('+rocm'):
archs = ",".join(self.spec.variants['amdgpu_target'].value)
args += [
'-DSPFFT_GPU_BACKEND=ROCM',
'-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix),
- '-DHIP_HCC_FLAGS=--amdgpu-target={0}'.format(archs)
+ '-DHIP_HCC_FLAGS=--amdgpu-target={0}'.format(archs),
+ '-DHIP_CXX_COMPILER={0}'.format(self.spec['hip'].hipcc)
]
- if spec.satisfies('+fortran'):
- args += ["-DSPFFT_FORTAN=On"]
- if spec.satisfies('+static'):
- args += ["-DSPFFT_STATIC=On"]
+
+ if 'fftw' in spec:
+ args += ["-DSPFFT_FFTW_LIB=FFTW"]
+ elif 'intel-mkl' in spec:
+ args += ["-DSPFFT_FFTW_LIB=MKL"]
return args
diff --git a/var/spack/repos/builtin/packages/spglib/package.py b/var/spack/repos/builtin/packages/spglib/package.py
index dff137ef03..11ef48ba5b 100644
--- a/var/spack/repos/builtin/packages/spglib/package.py
+++ b/var/spack/repos/builtin/packages/spglib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,10 +16,28 @@ class Spglib(CMakePackage):
# patch by Krishnendu Ghosh
patch('fix_cpp.patch', when='@:1.10.3')
- version('1.10.3', sha256='43776b5fb220b746d53c1aa39d0230f304687ec05984671392bccaf850d9d696')
- version('1.10.0', sha256='117fff308731784bea2ddaf3d076f0ecbf3981b31ea1c1bfd5ce4f057a5325b1')
+ version('1.16.1', sha256='e90682239e4ef63b492fa4e44f7dbcde2e2fe2e688579d96b01f2730dfdf5b2e')
+ version('1.16.0', sha256='969311a2942fef77ee79ac9faab089b68e256f21713194969197e7f2bdb14772')
+ version('1.15.1', sha256='b6dc2c8adcc7d0edee7a076e765c28b2941b2aeba590d213a0b4893c8af0c026')
+ version('1.15.0', sha256='2e217beff6840a22ab2149598eb2f40616b2eeb9e155edab52761d3301412f98')
+ version('1.14.1', sha256='9803b0648d9c2d99377f3e1c4cecf712320488403cd674192ec5cbe956bb3c78')
+ version('1.14.0', sha256='0a5e518c3dc221386d2219cbd260d08b032b0d2a31bccc32e1a8cb7874e7e9e9')
+ version('1.13.0', sha256='ed72ae7bdd129487c45ff7bebb8e2ac03074657060e068b015e7741c0271e16b')
+ version('1.12.2', sha256='d92f5e4fa0f54cc0abd0209b81c4d5c647dae9d25b774c2296f44b8558b17976')
+ version('1.12.1', sha256='1765e68982425de6d30029d50d200f20425b8ed1deff52b8e73a4a1457ac9ab6')
+ version('1.12.0', sha256='79361ef230b4fd55d5eb7521c23430acc3f11ab527125dc324ffb315783ebdfa')
+ version('1.11.2.1', sha256='f6795523a04871e012e7f5f5ab97b249fa36657b73cdc9b4ea53ef023cfcaac4')
+ version('1.11.2', sha256='aae61218dd0cca1fda245d4ad906c2eed5e8d30e28b575d74eab9a6be26bbd5d')
+ version('1.11.1.2', sha256='d99dab24accd269df65c01febd05cb5dd1094a89d7279f8390871f0432df2b56')
+ version('1.11.1', sha256='3b5a859f3fe2c9b096fc0754ffbd9341c568bc8003d2eeb74c958c1cacb480f5')
+ version('1.11.0', sha256='e4befe27473a69b7982597760d6838cc48d9ef7b624a439436a17f5487f78f51')
+ version('1.10.4', sha256='6a15a324a821ad9d3e615e120d9c5e704e284d8eb1f076aa21741a23fbcf08df')
+ version('1.10.3', sha256='43776b5fb220b746d53c1aa39d0230f304687ec05984671392bccaf850d9d696')
+ version('1.10.2', sha256='5907d0d29563689146512ef24aa8960d9475c5de326501f277bb58b3de21b07d')
+ version('1.10.1', sha256='8ed979cda82f6d440567197ec191bffcb82ee83c5bfe8a484c5a008dd00273f0')
+ version('1.10.0', sha256='117fff308731784bea2ddaf3d076f0ecbf3981b31ea1c1bfd5ce4f057a5325b1')
@property
def libs(self):
- return find_libraries(['libsymspg'], root=self.prefix.lib,
- recursive=False)
+ return find_libraries('libsymspg', root=self.prefix,
+ shared=True, recursive=True)
diff --git a/var/spack/repos/builtin/packages/sph2pipe/package.py b/var/spack/repos/builtin/packages/sph2pipe/package.py
index c6b2f7a1f1..24aec38165 100644
--- a/var/spack/repos/builtin/packages/sph2pipe/package.py
+++ b/var/spack/repos/builtin/packages/sph2pipe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class Sph2pipe(CMakePackage):
converting SPHERE files to other formats."""
homepage = "https://www.ldc.upenn.edu/language-resources/tools/sphere-conversion-tools"
- url = "https://www.ldc.upenn.edu/sites/www.ldc.upenn.edu/files/ctools/sph2pipe_v2.5.tar.gz"
+ url = "https://www.ldc.upenn.edu/sites/default/files/sph2pipe_v2.5.tar.gz"
version('2.5', sha256='5be236dc94ed0a301c5c8a369f849f76799ec7e70f25dfc0521068d9d1d4d3e3')
diff --git a/var/spack/repos/builtin/packages/spherepack/package.py b/var/spack/repos/builtin/packages/spherepack/package.py
index 8ef671f0a7..715d932417 100644
--- a/var/spack/repos/builtin/packages/spherepack/package.py
+++ b/var/spack/repos/builtin/packages/spherepack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/spindle/package.py b/var/spack/repos/builtin/packages/spindle/package.py
index 2b7296e6d3..1ebbc29fb2 100644
--- a/var/spack/repos/builtin/packages/spindle/package.py
+++ b/var/spack/repos/builtin/packages/spindle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/spiral/package.py b/var/spack/repos/builtin/packages/spiral/package.py
index da6a364ccd..9eb89c4bbf 100644
--- a/var/spack/repos/builtin/packages/spiral/package.py
+++ b/var/spack/repos/builtin/packages/spiral/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/spla/package.py b/var/spack/repos/builtin/packages/spla/package.py
index 467814fc40..a4fe79a47e 100644
--- a/var/spack/repos/builtin/packages/spla/package.py
+++ b/var/spack/repos/builtin/packages/spla/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Spla(CMakePackage):
url = "https://github.com/eth-cscs/spla/archive/v1.0.0.tar.gz"
git = 'https://github.com/eth-cscs/spla.git'
+ version('1.4.0', sha256='364a9fe759fddec8a0839cf79f1cf0619fc36f4d4c15f1c2b1f437249d7840c6')
+ version('1.3.0', sha256='ff05a22bd655607ff941f3228ac8605a813e1eec6eaa49fbcf7b58a3a4cf5f00')
version('1.2.1', sha256='4d7237f752dc6257778c84ee19c9635072b1cb8ce8d9ab6e34a047f63a736b29')
version('1.2.0', sha256='96ddd13c155ef3d7e40f87a982cdb439cf9e720523e66b6d20125d346ffe8fca')
version('1.1.1', sha256='907c374d9c53b21b9f67ce648e7b2b09c320db234a1013d3f05919cd93c95a4b')
@@ -27,6 +29,7 @@ class Spla(CMakePackage):
variant('static', default=False, description="Build as static library")
variant('cuda', default=False, description="CUDA backend")
variant('rocm', default=False, description="ROCm backend")
+ variant('fortran', default=False, description="Build fortran module")
conflicts("+cuda", when="+rocm", msg="+cuda and +rocm are mutually exclusive")
@@ -41,12 +44,11 @@ class Spla(CMakePackage):
depends_on('hsa-rocr-dev', when='+rocm', type='link')
def cmake_args(self):
- args = []
-
- if '+openmp' in self.spec:
- args += ["-DSPLA_OMP=ON"]
- else:
- args += ["-DSPLA_OMP=OFF"]
+ args = [
+ self.define_from_variant('SPLA_OMP', 'openmp'),
+ self.define_from_variant('SPLA_FORTRAN', 'fortran'),
+ self.define_from_variant('SPLA_STATIC', 'static')
+ ]
if '+cuda' in self.spec:
args += ["-DSPLA_GPU_BACKEND=CUDA"]
@@ -55,11 +57,6 @@ class Spla(CMakePackage):
else:
args += ["-DSPLA_GPU_BACKEND=OFF"]
- if '+static' in self.spec:
- args += ["-DSPLA_STATIC=ON"]
- else:
- args += ["-DSPLA_STATIC=OFF"]
-
if self.spec['blas'].name == 'openblas':
args += ["-DSPLA_HOST_BLAS=OPENBLAS"]
elif self.spec['blas'].name in ['amdblis', 'blis']:
diff --git a/var/spack/repos/builtin/packages/spm/package.py b/var/spack/repos/builtin/packages/spm/package.py
index 1545c3d2dd..aabd89a7c5 100644
--- a/var/spack/repos/builtin/packages/spm/package.py
+++ b/var/spack/repos/builtin/packages/spm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/spot/package.py b/var/spack/repos/builtin/packages/spot/package.py
index 428a6bf439..6b15acf9a3 100644
--- a/var/spack/repos/builtin/packages/spot/package.py
+++ b/var/spack/repos/builtin/packages/spot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sprng/package.py b/var/spack/repos/builtin/packages/sprng/package.py
index eb85db87e0..0dbf067c89 100644
--- a/var/spack/repos/builtin/packages/sprng/package.py
+++ b/var/spack/repos/builtin/packages/sprng/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sqlcipher/package.py b/var/spack/repos/builtin/packages/sqlcipher/package.py
new file mode 100644
index 0000000000..2d6f6970b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sqlcipher/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+class Sqlcipher(AutotoolsPackage):
+ """SQLCipher is an SQLite extension that provides 256 bit AES encryption
+ of database files.
+ """
+
+ homepage = "https://www.zetetic.net/sqlcipher/"
+ url = "https://github.com/sqlcipher/sqlcipher/archive/v4.4.1.tar.gz"
+ git = "https://github.com/sqlcipher/sqlcipher.git"
+
+ maintainers = ['rmsds']
+
+ version('4.4.1', sha256='a36ed7c879a5e9af1054942201c75fc56f1db22e46bf6c2bbae3975dfeb6782d')
+ version('4.4.0', sha256='0924b2ae1079717954498bda78a30de20ce2a6083076b16214a711567821d148')
+ version('4.3.0', sha256='fccb37e440ada898902b294d02cde7af9e8706b185d77ed9f6f4d5b18b4c305f')
+ version('4.2.0', sha256='105c1b813f848da038c03647a8bfc9d42fb46865e6aaf4edfd46ff3b18cdccfc')
+ version('4.1.0', sha256='65144ca3ba4c0f9cd4bae8c20bb42f2b84424bf29d1ebcf04c44a728903b1faa')
+ version('4.0.1', sha256='2f803017378c7479cb791be59b7bad8392a15acddbcc094e4433581fe421f4ca')
+ version('4.0.0', sha256='c8f5fc6d800aae6107bf23900144804db5510c2676c93fbb269e4a0700837d68')
+ version('3.4.2', sha256='69897a5167f34e8a84c7069f1b283aba88cdfa8ec183165c4a5da2c816cfaadb')
+
+ depends_on('openssl')
+ depends_on('tcl', type=['build', ])
+ depends_on('zlib')
+
+ def configure_args(self):
+ args = []
+ args.append('--enable-tempstore=yes')
+ args.append('CFLAGS=-DSQLITE_HAS_CODEC')
+ return args
diff --git a/var/spack/repos/builtin/packages/sqlite-jdbc/package.py b/var/spack/repos/builtin/packages/sqlite-jdbc/package.py
index bea64a30dd..b4cfb3100f 100644
--- a/var/spack/repos/builtin/packages/sqlite-jdbc/package.py
+++ b/var/spack/repos/builtin/packages/sqlite-jdbc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sqlite/package.py b/var/spack/repos/builtin/packages/sqlite/package.py
index db456cb0d7..b2fb752115 100644
--- a/var/spack/repos/builtin/packages/sqlite/package.py
+++ b/var/spack/repos/builtin/packages/sqlite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,12 @@ class Sqlite(AutotoolsPackage):
"""
homepage = "https://www.sqlite.org"
+ version('3.35.5', sha256='f52b72a5c319c3e516ed7a92e123139a6e87af08a2dc43d7757724f6132e6db0')
+ version('3.35.4', sha256='7771525dff0185bfe9638ccce23faa0e1451757ddbda5a6c853bb80b923a512d')
+ version('3.35.3', sha256='ecbccdd440bdf32c0e1bb3611d635239e3b5af268248d130d0445a32daf0274b')
+ version('3.34.0', sha256='bf6db7fae37d51754737747aaaf413b4d6b3b5fbacd52bdb2d0d6e5b2edd9aee')
version('3.33.0', sha256='106a2c48c7f75a298a7557bcc0d5f4f454e5b43811cc738b7ca294d6956bbb15')
+ version('3.32.03', sha256='a31507123c1c2e3a210afec19525fd7b5bb1e19a6a34ae5b998fbd7302568b66')
version('3.31.1', sha256='62284efebc05a76f909c580ffa5c008a7d22a1287285d68b7825a2b6b51949ae')
version('3.30.1', sha256='8c5a50db089bd2a1b08dbc5b00d2027602ca7ff238ba7658fabca454d4298e60')
version('3.30.0', sha256='e0a8cf4c7a87455e55e10413d16f358ca121ccec687fe1301eac95e2d340fc58')
@@ -72,7 +77,9 @@ class Sqlite(AutotoolsPackage):
''.join(['%02d' % v for v in full_version[1:]])
# See https://sqlite.org/chronology.html for version -> year
# correspondence.
- if version >= Version('3.31.0'):
+ if version >= Version('3.34.1'):
+ year = '2021'
+ elif version >= Version('3.31.0'):
year = '2020'
elif version >= Version('3.27.0'):
year = '2019'
diff --git a/var/spack/repos/builtin/packages/sqlitebrowser/package.py b/var/spack/repos/builtin/packages/sqlitebrowser/package.py
index b92d65348e..64c083e8ba 100644
--- a/var/spack/repos/builtin/packages/sqlitebrowser/package.py
+++ b/var/spack/repos/builtin/packages/sqlitebrowser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sqoop/package.py b/var/spack/repos/builtin/packages/sqoop/package.py
index bd83d0c907..e29293ce79 100644
--- a/var/spack/repos/builtin/packages/sqoop/package.py
+++ b/var/spack/repos/builtin/packages/sqoop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/squashfs/gcc-10.patch b/var/spack/repos/builtin/packages/squashfs/gcc-10.patch
new file mode 100644
index 0000000000..e7f4a721c7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/squashfs/gcc-10.patch
@@ -0,0 +1,13 @@
+diff --git a/squashfs-tools/mksquashfs.h b/squashfs-tools/mksquashfs.h
+index 1beefef7..b6503063 100644
+--- a/squashfs-tools/mksquashfs.h
++++ b/squashfs-tools/mksquashfs.h
+@@ -143,7 +143,7 @@ struct append_file {
+ #endif
+
+ extern struct cache *reader_buffer, *fragment_buffer, *reserve_cache;
+-struct cache *bwriter_buffer, *fwriter_buffer;
++extern struct cache *bwriter_buffer, *fwriter_buffer;
+ extern struct queue *to_reader, *to_deflate, *to_writer, *from_writer,
+ *to_frag, *locked_fragment, *to_process_frag;
+ extern struct append_file **file_mapping;
diff --git a/var/spack/repos/builtin/packages/squashfs/package.py b/var/spack/repos/builtin/packages/squashfs/package.py
index 4d203e3d15..03d01dca30 100644
--- a/var/spack/repos/builtin/packages/squashfs/package.py
+++ b/var/spack/repos/builtin/packages/squashfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,7 +24,7 @@ class Squashfs(MakefilePackage):
variant('lzo', default=False, description='Enable LZO compression support')
variant('xz', default=False, description='Enable xz compression support')
variant('zstd', default=False, description='Enable Zstandard/zstd support')
- variant('default_compression', default='gzip', values=('gzip', 'lz4', 'lzo', 'xz', 'zstd'),
+ variant('default_compression', default='gzip', values=('gzip', 'lz4', 'lzo', 'xz', 'zstd'),
multi=False, description='Default compression algorithm')
conflicts('squashfs~gzip default_compression=gzip', msg='Cannot set default compression to missing algorithm')
@@ -44,19 +44,28 @@ class Squashfs(MakefilePackage):
depends_on('xz', when='+xz')
depends_on('zstd', when='+zstd')
+ # patch from
+ # https://github.com/plougher/squashfs-tools/commit/fe2f5da4b0f8994169c53e84b7cb8a0feefc97b5.patch
+ patch('gcc-10.patch', when="%gcc@10:")
+ patch('gcc-10.patch', when="%clang@11:")
+
+ def make_options(self, spec):
+ default = spec.variants['default_compression'].value
+ return [
+ 'GZIP_SUPPORT={0}'.format(1 if '+gzip' in spec else 0),
+ 'LZ4_SUPPORT={0}' .format(1 if '+lz4' in spec else 0),
+ 'LZO_SUPPORT={0}' .format(1 if '+lzo' in spec else 0),
+ 'XZ_SUPPORT={0}' .format(1 if '+xz' in spec else 0),
+ 'ZSTD_SUPPORT={0}'.format(1 if '+zstd' in spec else 0),
+ 'COMP_DEFAULT={0}'.format(default),
+ ]
+
def build(self, spec, prefix):
+ options = self.make_options(spec)
with working_dir('squashfs-tools'):
- default = spec.variants['default_compression'].value
- make(
- 'GZIP_SUPPORT={0}'.format(1 if '+gzip' in spec else 0),
- 'LZ4_SUPPORT={0}' .format(1 if '+lz4' in spec else 0),
- 'LZO_SUPPORT={0}' .format(1 if '+lzo' in spec else 0),
- 'XZ_SUPPORT={0}' .format(1 if '+xz' in spec else 0),
- 'ZSTD_SUPPORT={0}'.format(1 if '+zstd' in spec else 0),
- 'COMP_DEFAULT={0}'.format(default),
- parallel=False
- )
+ make(*options, parallel=False)
def install(self, spec, prefix):
+ options = self.make_options(spec)
with working_dir('squashfs-tools'):
- make('install', 'INSTALL_DIR=%s' % prefix.bin, parallel=False)
+ make('install', 'INSTALL_DIR=%s' % prefix.bin, *options, parallel=False)
diff --git a/var/spack/repos/builtin/packages/squashfuse/package.py b/var/spack/repos/builtin/packages/squashfuse/package.py
new file mode 100644
index 0000000000..7bce4a6b2a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/squashfuse/package.py
@@ -0,0 +1,71 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Squashfuse(AutotoolsPackage):
+ """squashfuse - Mount SquashFS archives using FUSE"""
+
+ homepage = "https://github.com/vasi/squashfuse"
+ url = "https://github.com/vasi/squashfuse/releases/download/0.1.104/squashfuse-0.1.104.tar.gz"
+ git = "https://github.com/vasi/squashfuse.git"
+
+ maintainers = ['haampie']
+
+ version('master', branch='master')
+ version('0.1.104', sha256='aa52460559e0d0b1753f6b1af5c68cfb777ca5a13913285e93f4f9b7aa894b3a')
+ version('0.1.103', sha256='42d4dfd17ed186745117cfd427023eb81effff3832bab09067823492b6b982e7')
+
+ variant('shared', default=True, description='Enable shared libraries')
+ variant('static', default=True, description='Enable static libraries')
+ variant('min_size', default=False, description='Build small binaries')
+
+ variant('zlib', default=True, description='Enable zlib/gzip compression support')
+ variant('lz4', default=True, description='Enable LZ4 compression support')
+ variant('lzo', default=True, description='Enable LZO compression support')
+ variant('xz', default=True, description='Enable xz compression support')
+ variant('zstd', default=True, description='Enable Zstandard/zstd support')
+
+ conflicts('~shared', when='~static', msg="Enable shared, static or both")
+
+ depends_on('libfuse@2.5:')
+ depends_on('libfuse@:2.99', when='@:0.1.103')
+
+ # Note: typically libfuse is external, but this implies that you have to make
+ # pkg-config external too, because spack's pkg-config doesn't know how to
+ # locate system pkg-config's fuse.pc/fuse3.pc
+ depends_on('pkgconfig', type='build')
+
+ # compression libs
+ depends_on('zlib', when='+zlib')
+ depends_on('lz4', when='+lz4')
+ depends_on('lzo', when='+lzo')
+ depends_on('xz', when='+xz')
+ depends_on('zstd', when='+zstd')
+
+ depends_on('m4', type='build', when='@master')
+ depends_on('autoconf', type='build', when='@master')
+ depends_on('automake', type='build', when='@master')
+ depends_on('libtool', type='build', when='@master')
+
+ def flag_handler(self, name, flags):
+ if name == 'cflags' and '+min_size' in self.spec:
+ if '-Os' in self.compiler.opt_flags:
+ flags.append('-Os')
+ return (None, None, flags)
+
+ return (flags, None, None)
+
+ def configure_args(self):
+ args = ['--disable-demo']
+ args += self.enable_or_disable('shared')
+ args += self.enable_or_disable('static')
+ args += self.with_or_without('zlib', activation_value='prefix')
+ args += self.with_or_without('lz4', activation_value='prefix')
+ args += self.with_or_without('lzo', activation_value='prefix')
+ args += self.with_or_without('xz', activation_value='prefix')
+ args += self.with_or_without('zstd', activation_value='prefix')
+ return args
diff --git a/var/spack/repos/builtin/packages/squid/package.py b/var/spack/repos/builtin/packages/squid/package.py
index dd944edbad..82f7b3d6d8 100644
--- a/var/spack/repos/builtin/packages/squid/package.py
+++ b/var/spack/repos/builtin/packages/squid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sratoolkit/package.py b/var/spack/repos/builtin/packages/sratoolkit/package.py
index d38de8eead..299d49de0e 100644
--- a/var/spack/repos/builtin/packages/sratoolkit/package.py
+++ b/var/spack/repos/builtin/packages/sratoolkit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,10 +12,11 @@ class Sratoolkit(Package):
format."""
homepage = "https://trace.ncbi.nlm.nih.gov/Traces/sra"
- url = "https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/2.8.2-1/sratoolkit.2.8.2-1-centos_linux64.tar.gz"
+ url = "https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/2.10.9/sratoolkit.2.10.9-centos_linux64.tar.gz"
maintainers = ['robqiao']
+ version('2.10.9', sha256='2c849b4b9865737ff17732e3befa70718616ce31cac98e8a61b1c5ed5a6514c5')
version('2.10.7', sha256='b3f319974f0c7a318554d6383a13dd30f7d447533d92b6fd3bd057d3524e0140')
version('2.9.6', sha256='faab687c822d0c02956f73f35e04875dde420ce9f602b88bbf3f2e8d79a17155')
version('2.9.2', sha256='17dbe13aa1ed7955d31e1e76e8b62786e80a77e9ed9d396631162dc3ad8b716d')
diff --git a/var/spack/repos/builtin/packages/srilm/package.py b/var/spack/repos/builtin/packages/srilm/package.py
new file mode 100644
index 0000000000..05e7daf822
--- /dev/null
+++ b/var/spack/repos/builtin/packages/srilm/package.py
@@ -0,0 +1,92 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+import glob
+
+
+class Srilm(MakefilePackage):
+ """SRILM (SRI Language Modeling Toolkit) is a toolkit for building
+ and applying statistical language models (LMs), primarily for
+ use in speech recognition, statistical tagging and segmentation,
+ and machine translation."""
+
+ homepage = "http://www.speech.sri.com/projects/srilm/"
+ url = "file://{0}/srilm-1.7.3.tar.gz".format(os.getcwd())
+ manual_download = True
+
+ maintainers = ['RemiLacroix-IDRIS']
+
+ version('1.7.3', sha256='01eaf12d0f35b96d2b28ad0d41c9f915dd22b534a7abde3fbb9e35fb6c19200e')
+
+ variant('openmp', default=False, description='Enable OpenMP')
+ variant('pic', default=False, description='Build position independent code')
+ variant('liblbfgs', default=False, description='Enable libLBFGS')
+
+ depends_on('iconv')
+ depends_on('liblbfgs', when='+liblbfgs')
+ depends_on('gawk', type=('build', 'run'))
+ depends_on('perl', type=('build', 'run'))
+ depends_on('binutils', type='build') # for c++filt
+
+ @property
+ def machine_type(self):
+ return Executable('sbin/machine-type')(output=str, error=str).strip()
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('Makefile')
+ makefile.filter(r'# SRILM\s*=.*', 'SRILM = {0}'.format(self.build_directory))
+
+ makefile_common = FileFilter('common/Makefile.common.variables')
+ makefile_common.filter(r'GAWK\s*=.*', 'GAWK = {0}'.format(which('gawk')))
+ makefile_common.filter(r'PERL\s*=.*', 'PERL = {0}'.format(which('perl')))
+ makefile_common.filter(r'PIC_FLAG\s*=.*',
+ 'PIC_FLAG = {0}'.format(self.compiler.cc_pic_flag))
+
+ makefile_machine_fn = 'common/Makefile.machine.{0}'.format(self.machine_type)
+
+ makefile_machine = FileFilter(makefile_machine_fn)
+ makefile_machine.filter(r'CC\s*=.*', 'CC = {0}'.format(spack_cc))
+ makefile_machine.filter(r'CXX\s*=.*',
+ 'CXX = {0} -DINSTANTIATE_TEMPLATES'.format(spack_cxx))
+
+ omp_flag = self.compiler.openmp_flag if '+openmp' in spec else ''
+ makefile_machine.filter(r'ADDITIONAL_CFLAGS\s*=.*',
+ 'ADDITIONAL_CFLAGS = {0}'.format(omp_flag))
+ makefile_machine.filter(r'ADDITIONAL_CXXFLAGS\s*=.*',
+ 'ADDITIONAL_CXXFLAGS = {0}'.format(omp_flag))
+ makefile_machine.filter(r'(SYS_LIBRARIES\s*=.*)', r'\1 -liconv')
+
+ # Make sure the machine specific Makefile doesn't override those
+ makefile_machine.filter(r'GAWK\s*=.*', '')
+ makefile_machine.filter(r'PERL\s*=.*', '')
+ makefile_machine.filter(r'PIC_FLAG\s*=.*', '')
+
+ with open(makefile_machine_fn, 'a') as makefile_machine:
+ # TCL is only needed for tests so disable it
+ makefile_machine.write('\nNO_TCL = 1\n')
+ if '+pic' in spec:
+ makefile_machine.write('MAKE_PIC = 1\n')
+ if '+liblbfgs' in spec:
+ makefile_machine.write('HAVE_LIBLBFGS = 1\n')
+
+ @property
+ def build_targets(self):
+ return ['MACHINE_TYPE={0}'.format(self.machine_type)]
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('lib', prefix.lib)
+ install_tree('include', prefix.include)
+ install_tree('man', prefix.man)
+
+ def setup_run_environment(self, env):
+ # Most executable files are in a subfolder named based on
+ # the detected machine type. Unfortunately we cannot use
+ # `machine_type` at this point but we can just guess as
+ # there is only one subfolder.
+ env.prepend_path('PATH',
+ glob.glob(join_path(self.prefix.bin, '*', ''))[0])
diff --git a/var/spack/repos/builtin/packages/sse2neon/package.py b/var/spack/repos/builtin/packages/sse2neon/package.py
index 32f0b69c04..a0c6ef585a 100644
--- a/var/spack/repos/builtin/packages/sse2neon/package.py
+++ b/var/spack/repos/builtin/packages/sse2neon/package.py
@@ -1,15 +1,15 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
class Sse2neon(Package):
- """A C/C++ header file that converts Intel SSE intrinsics to ARN NEON
- intrinsics."""
+ """A C/C++ header file that converts Intel SSE intrinsics to Arm/Aarch64
+ NEON intrinsics."""
- homepage = "https://github.com/jratcliff63367/sse2neon"
- git = "https://github.com/jratcliff63367/sse2neon.git"
+ homepage = "https://github.com/DLTcollab/sse2neon"
+ git = "https://github.com/DLTcollab/sse2neon.git"
version('master', branch='master')
diff --git a/var/spack/repos/builtin/packages/sshfs/package.py b/var/spack/repos/builtin/packages/sshfs/package.py
new file mode 100644
index 0000000000..6145b9a16e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sshfs/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Sshfs(MesonPackage):
+ """SSHFS allows you to mount a remote filesystem using SFTP."""
+
+ homepage = "https://github.com/libfuse/sshfs"
+ url = "https://github.com/libfuse/sshfs/releases/download/sshfs-3.7.1/sshfs-3.7.1.tar.xz"
+ git = "https://github.com/libfuse/sshfs.git"
+
+ maintainers = ['haampie']
+
+ version('3.7.1', sha256='fe5d3436d61b46974889e0c4515899c21a9d67851e3793c209989f72353d7750')
+
+ depends_on('glib')
+ depends_on('libfuse@3.1.0:')
+
+ # used for libfuse; when libfuse is external, make sure that pkgconfig is
+ # external too, since spack's pkgconfig might not be able to locate libfuse.
+ depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/sshpass/package.py b/var/spack/repos/builtin/packages/sshpass/package.py
index 499761a867..97a5e14728 100644
--- a/var/spack/repos/builtin/packages/sshpass/package.py
+++ b/var/spack/repos/builtin/packages/sshpass/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ssht/package.py b/var/spack/repos/builtin/packages/ssht/package.py
index 1500871e62..ed05965812 100644
--- a/var/spack/repos/builtin/packages/ssht/package.py
+++ b/var/spack/repos/builtin/packages/ssht/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,7 +6,7 @@
from spack import *
-class Ssht(Package):
+class Ssht(CMakePackage):
"""ssht: Spin spherical harmonic transforms
The SSHT code provides functionality to perform fast and exact
@@ -16,32 +16,18 @@ class Ssht(Package):
"""
homepage = "https://astro-informatics.github.io/ssht/"
+ url = "https://github.com/astro-informatics/ssht/archive/v1.3.4.tar.gz"
git = "https://github.com/astro-informatics/ssht.git"
maintainers = ['eschnett']
- version('1.2b1', commit='7378ce8853897cbd1b08adebf7ec088c1e40f860')
-
- depends_on('fftw')
-
- patch('float_conversion.patch')
-
- def install(self, spec, prefix):
- make('default', 'SSHTDIR=.')
- mkdirp(join_path(prefix, 'include', 'ssht'))
- install('src/c/ssht.h',
- join_path(prefix, 'include', 'ssht', 'ssht.h'))
- install('src/c/ssht_adjoint.h',
- join_path(prefix, 'include', 'ssht', 'ssht_adjoint.h'))
- install('src/c/ssht_core.h',
- join_path(prefix, 'include', 'ssht', 'ssht_core.h'))
- install('src/c/ssht_dl.h',
- join_path(prefix, 'include', 'ssht', 'ssht_dl.h'))
- install('src/c/ssht_error.h',
- join_path(prefix, 'include', 'ssht', 'ssht_error.h'))
- install('src/c/ssht_sampling.h',
- join_path(prefix, 'include', 'ssht', 'ssht_sampling.h'))
- install('src/c/ssht_types.h',
- join_path(prefix, 'include', 'ssht', 'ssht_types.h'))
- install_tree('doc/c', join_path(prefix, 'doc'))
- install_tree('lib/c', join_path(prefix, 'lib'))
+ version('1.3.7', sha256='947c11b104734acb124171ff5115d14279b4d09bc297ac989204633919df422e')
+ version('1.3.6', sha256='db652e0f550229a630643bbf4bdb270def25c158be5ccdcf594a24fd8054430d')
+ version('1.3.5', sha256='2f71690cbd00f4969d7377e586022397bfb8efb107f7b13bf849a65e61362350')
+ version('1.3.4', sha256='dfcceca9a4ffe8973a45e213e8d5331dcee6a504a42601f50fdfa4fd022cce7b')
+ version('1.3.3', sha256='1f3b89e29d89fa79170b9979046a55c81b588d9dd563fd36f37887495b71dd28')
+ version('1.3.2', sha256='6cb3b6f94fb90dff45ba59da30a8ccd9667d8e319bed437f19d2287f59e35dd1')
+ version('1.3.0', sha256='9e2c220a70d662714ff601a121b674c8423866058279e000cbbee532d31dd3c9')
+ # version('1.2b1', commit='7378ce8853897cbd1b08adebf7ec088c1e40f860')
+
+ depends_on('fftw @3.0.0:')
diff --git a/var/spack/repos/builtin/packages/ssmtp/package.py b/var/spack/repos/builtin/packages/ssmtp/package.py
index c1ed9055f2..177a6043a2 100644
--- a/var/spack/repos/builtin/packages/ssmtp/package.py
+++ b/var/spack/repos/builtin/packages/ssmtp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sspace-longread/package.py b/var/spack/repos/builtin/packages/sspace-longread/package.py
index d96f6faded..7a233bedd9 100644
--- a/var/spack/repos/builtin/packages/sspace-longread/package.py
+++ b/var/spack/repos/builtin/packages/sspace-longread/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sspace-standard/package.py b/var/spack/repos/builtin/packages/sspace-standard/package.py
index 5ce8febf46..1b20b5f144 100644
--- a/var/spack/repos/builtin/packages/sspace-standard/package.py
+++ b/var/spack/repos/builtin/packages/sspace-standard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sst-core/package.py b/var/spack/repos/builtin/packages/sst-core/package.py
index 5b214d11bd..c45b09a79c 100644
--- a/var/spack/repos/builtin/packages/sst-core/package.py
+++ b/var/spack/repos/builtin/packages/sst-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sst-dumpi/package.py b/var/spack/repos/builtin/packages/sst-dumpi/package.py
index 0710c5607e..d17717725e 100644
--- a/var/spack/repos/builtin/packages/sst-dumpi/package.py
+++ b/var/spack/repos/builtin/packages/sst-dumpi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sst-elements/package.py b/var/spack/repos/builtin/packages/sst-elements/package.py
index e314df6a58..c00449c8b4 100644
--- a/var/spack/repos/builtin/packages/sst-elements/package.py
+++ b/var/spack/repos/builtin/packages/sst-elements/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sst-macro/package.py b/var/spack/repos/builtin/packages/sst-macro/package.py
index 59911ba3ab..8c396a8dfa 100644
--- a/var/spack/repos/builtin/packages/sst-macro/package.py
+++ b/var/spack/repos/builtin/packages/sst-macro/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sst-transports/package.py b/var/spack/repos/builtin/packages/sst-transports/package.py
index 39a6e99d05..8c2cbbf74b 100644
--- a/var/spack/repos/builtin/packages/sst-transports/package.py
+++ b/var/spack/repos/builtin/packages/sst-transports/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/stacks/package.py b/var/spack/repos/builtin/packages/stacks/package.py
index 81fb81a047..2fa6c1f4cd 100644
--- a/var/spack/repos/builtin/packages/stacks/package.py
+++ b/var/spack/repos/builtin/packages/stacks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/staden-io-lib/package.py b/var/spack/repos/builtin/packages/staden-io-lib/package.py
index 21c0fee40f..2208932e8c 100644
--- a/var/spack/repos/builtin/packages/staden-io-lib/package.py
+++ b/var/spack/repos/builtin/packages/staden-io-lib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,4 +15,15 @@ class StadenIoLib(AutotoolsPackage):
version('1.14.8', sha256='3bd560309fd6d70b14bbb8230e1baf8706b804eb6201220bb6c3d6db72003d1b')
+ variant('curl', default=False, description='Build with curl support')
+
depends_on('zlib')
+ depends_on('curl', when='+curl')
+
+ def configure_args(self):
+ args = []
+
+ if self.spec.satisfies('~curl'):
+ args.append('--without-libcurl')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/star-ccm-plus/package.py b/var/spack/repos/builtin/packages/star-ccm-plus/package.py
index ec7d503fcd..e0b637de1e 100644
--- a/var/spack/repos/builtin/packages/star-ccm-plus/package.py
+++ b/var/spack/repos/builtin/packages/star-ccm-plus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/star/package.py b/var/spack/repos/builtin/packages/star/package.py
index 80dcaac241..a801a9ea57 100644
--- a/var/spack/repos/builtin/packages/star/package.py
+++ b/var/spack/repos/builtin/packages/star/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/startup-notification/package.py b/var/spack/repos/builtin/packages/startup-notification/package.py
index 448fe1e05a..5f2fbf9ce1 100644
--- a/var/spack/repos/builtin/packages/startup-notification/package.py
+++ b/var/spack/repos/builtin/packages/startup-notification/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/stat/package.py b/var/spack/repos/builtin/packages/stat/package.py
index 2db8a33ab8..a36c073651 100644
--- a/var/spack/repos/builtin/packages/stat/package.py
+++ b/var/spack/repos/builtin/packages/stat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,11 @@ class Stat(AutotoolsPackage):
homepage = "http://paradyn.org/STAT/STAT.html"
url = "https://github.com/LLNL/STAT/archive/v2.0.0.tar.gz"
git = "https://github.com/llnl/stat.git"
+ maintainers = ['lee218llnl']
version('develop', branch='develop')
+ version('4.1.0', sha256='1d5b00afd563cf3bd9dd40818c44a03d7d4b13356216881513c058566c3b0080',
+ url='https://github.com/LLNL/STAT/files/6193568/stat-4.1.0.tar.gz')
version('4.0.2', sha256='9ece10dde8e1579c9db469ac8d2391b26e59498c0947dbb271c2d01d7ef0a65d',
url='https://github.com/LLNL/STAT/releases/download/v4.0.2/stat-4.0.2.tar.gz')
version('4.0.1', sha256='ae3fbd6946003fb16233d82d40285780a9a802da5fe30d09adb8a8b2a2cc4ad6',
@@ -21,17 +24,23 @@ class Stat(AutotoolsPackage):
version('4.0.0', sha256='1c4f62686645f6dc1d9ef890acc9c2839c150789dc220718775878feb41bdabf',
url='https://github.com/LLNL/STAT/releases/download/v4.0.0/stat-4.0.0.tar.gz')
version('3.0.1', sha256='540916ffb92026ca7aa825a2320095a89b9b4fd3426ee7657b44ac710618947e',
- url='https://github.com/LLNL/STAT/files/911503/stat-3.0.1.zip')
+ url='https://github.com/LLNL/STAT/files/911503/stat-3.0.1.zip',
+ deprecated=True)
version('3.0.0', sha256='b95cac82989e273e566f16ba17a75526374ee8e0ef066a411977e1935967df57',
- url='https://github.com/LLNL/STAT/releases/download/v3.0.0/STAT-3.0.0.tar.gz')
- version('2.2.0', sha256='ed4732bfbe942ca8e29342f24f48e0c295989b0639a548febe7a1c1390ae1993')
- version('2.1.0', sha256='497ed2bd1127cb2e97b32a30a4f62b6b298d18f3313c0278dd908c6ecba64f43')
- version('2.0.0', sha256='b19587c2166b5d4d3a89a0ec5433ac61335aa7ad5cfa5a3b4406f5ea6c0bf0ac')
+ url='https://github.com/LLNL/STAT/releases/download/v3.0.0/STAT-3.0.0.tar.gz',
+ deprecated=True)
+ version('2.2.0', sha256='ed4732bfbe942ca8e29342f24f48e0c295989b0639a548febe7a1c1390ae1993',
+ deprecated=True)
+ version('2.1.0', sha256='497ed2bd1127cb2e97b32a30a4f62b6b298d18f3313c0278dd908c6ecba64f43',
+ deprecated=True)
+ version('2.0.0', sha256='b19587c2166b5d4d3a89a0ec5433ac61335aa7ad5cfa5a3b4406f5ea6c0bf0ac',
+ deprecated=True)
# TODO: dysect requires Dyninst patch for version 3.0.0b
variant('dysect', default=False, description="enable DySectAPI")
variant('examples', default=False, description="enable examples")
variant('fgfs', default=True, description="enable file broadcasting")
+ variant('gui', default=True, description="enable GUI")
depends_on('autoconf', type='build')
depends_on('automake', type='build')
@@ -39,22 +48,28 @@ class Stat(AutotoolsPackage):
depends_on('dyninst', when='~dysect')
depends_on('dyninst@:9.99', when='@:4.0.1')
depends_on('dyninst@8.2.1+stat_dysect', when='+dysect')
- depends_on('fast-global-file-status', when='+fgfs')
+ # we depend on fgfs@master to avoid seg faults with fgfs 1.1
+ depends_on('fast-global-file-status@master', when='+fgfs')
depends_on('graphlib@2.0.0', when='@2.0.0:2.2.0')
depends_on('graphlib@3.0.0', when='@3:')
depends_on('graphviz', type=('build', 'link', 'run'))
- depends_on('launchmon')
+ # we depend on mpa@master for bug fixes since launchmon 1.0.2
+ depends_on('launchmon@master')
depends_on('mrnet')
+ depends_on('python')
depends_on('python@:2.8', when='@:4.0.0')
- depends_on('py-pygtk', type=('build', 'run'), when='@:4.0.0')
+ depends_on('py-pygtk', type=('build', 'run'), when='@:4.0.0 +gui')
depends_on('py-enum34', type=('run'), when='@:4.0.0')
- depends_on('py-xdot', when='@4.0.1:')
+ depends_on('py-xdot@1.0', when='@4.0.1: +gui')
depends_on('swig')
depends_on('mpi', when='+examples')
depends_on('boost')
patch('configure_mpicxx.patch', when='@2.1.0')
+ # No Mac support due to dependencies like dyninst, elf etc.
+ conflicts('platform=darwin', msg='macOS is not supported')
+
def configure_args(self):
spec = self.spec
args = [
@@ -70,6 +85,8 @@ class Stat(AutotoolsPackage):
% spec['fast-global-file-status'].prefix)
if '+dysect' in spec:
args.append('--enable-dysectapi')
+ if '~gui' in spec:
+ args.append('--disable-gui')
if '~examples' in spec:
args.append('--disable-examples')
return args
diff --git a/var/spack/repos/builtin/packages/stata/package.py b/var/spack/repos/builtin/packages/stata/package.py
index 263fc60cd0..9d10d9f936 100644
--- a/var/spack/repos/builtin/packages/stata/package.py
+++ b/var/spack/repos/builtin/packages/stata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,6 +25,7 @@ class Stata(Package):
# * I haven't tested any installer version but 15.
homepage = "https://www.stata.com/"
+ manual_download = True
# url = "stata"
version('16', 'a13a6a92558eeb3c6cb3013c458a6777e54c21af43599df6b0a924f5f5c2d5d2')
diff --git a/var/spack/repos/builtin/packages/static-analysis-suite/package.py b/var/spack/repos/builtin/packages/static-analysis-suite/package.py
index fe6d82cc4a..af2606ddae 100644
--- a/var/spack/repos/builtin/packages/static-analysis-suite/package.py
+++ b/var/spack/repos/builtin/packages/static-analysis-suite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/stc/package.py b/var/spack/repos/builtin/packages/stc/package.py
index 790f1b66c3..fea9442d1c 100644
--- a/var/spack/repos/builtin/packages/stc/package.py
+++ b/var/spack/repos/builtin/packages/stc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,10 +11,11 @@ class Stc(AutotoolsPackage):
"""STC: The Swift-Turbine Compiler"""
homepage = 'http://swift-lang.org/Swift-T'
- url = 'http://swift-lang.github.io/swift-t-downloads/spack/stc-0.8.3.tar.gz'
+ url = 'http://swift-lang.github.io/swift-t-downloads/spack/stc-0.9.0.tar.gz'
git = "https://github.com/swift-lang/swift-t.git"
version('master', branch='master')
+ version('0.9.0', sha256='edf187344ce860476473ab6599f042cd22ed029aa186d512135990accb9d260f')
version('0.8.3', sha256='d61ca80137a955b12e84e41cb8a78ce1a58289241a2665076f12f835cf68d798')
version('0.8.2', sha256='13f0f03fdfcca3e63d2d58d7e7dbdddc113d5b9826c9357ab0713b63e8e42c5e')
diff --git a/var/spack/repos/builtin/packages/steps/package.py b/var/spack/repos/builtin/packages/steps/package.py
index dd074f188a..0f33dd87c1 100644
--- a/var/spack/repos/builtin/packages/steps/package.py
+++ b/var/spack/repos/builtin/packages/steps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/stinger/package.py b/var/spack/repos/builtin/packages/stinger/package.py
index fe78dc015c..406a8b575e 100644
--- a/var/spack/repos/builtin/packages/stinger/package.py
+++ b/var/spack/repos/builtin/packages/stinger/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/storm/package.py b/var/spack/repos/builtin/packages/storm/package.py
index d9a2ad2ece..3f63eab08c 100644
--- a/var/spack/repos/builtin/packages/storm/package.py
+++ b/var/spack/repos/builtin/packages/storm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/stow/package.py b/var/spack/repos/builtin/packages/stow/package.py
index 2ce4c91b3e..83edbe07e0 100644
--- a/var/spack/repos/builtin/packages/stow/package.py
+++ b/var/spack/repos/builtin/packages/stow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/strace/package.py b/var/spack/repos/builtin/packages/strace/package.py
index a46a98b2bc..278ef0a975 100644
--- a/var/spack/repos/builtin/packages/strace/package.py
+++ b/var/spack/repos/builtin/packages/strace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/stream/package.py b/var/spack/repos/builtin/packages/stream/package.py
index e7c937ce26..8dca2665e8 100644
--- a/var/spack/repos/builtin/packages/stream/package.py
+++ b/var/spack/repos/builtin/packages/stream/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/strelka/package.py b/var/spack/repos/builtin/packages/strelka/package.py
index d1d2e0d9ec..3b1806c8d5 100644
--- a/var/spack/repos/builtin/packages/strelka/package.py
+++ b/var/spack/repos/builtin/packages/strelka/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,5 +31,5 @@ class Strelka(CMakePackage):
depends_on('python@2.4:2.7')
depends_on('zlib')
depends_on('bzip2')
- depends_on('cmake@2.8.5:')
+ depends_on('cmake@2.8.5:', type='build')
depends_on('boost@1.56.0:')
diff --git a/var/spack/repos/builtin/packages/stress-ng/package.py b/var/spack/repos/builtin/packages/stress-ng/package.py
new file mode 100644
index 0000000000..006b722ad8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/stress-ng/package.py
@@ -0,0 +1,46 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+class StressNg(MakefilePackage):
+ """stress-ng will stress test a computer system in various
+ selectable ways. It was designed to exercise various physical
+ subsystems of a computer as well as the various operating system
+ kernel interfaces."""
+
+ homepage = "https://kernel.ubuntu.com/~cking/stress-ng/"
+ url = "https://kernel.ubuntu.com/~cking/tarballs/stress-ng/stress-ng-0.12.06.tar.xz"
+
+ version('0.12.06', sha256='75eb340266b1bbae944d8f9281af978bd5bc2c8085df97a098d5500d6f177296')
+
+ depends_on('libaio')
+ depends_on('libbsd')
+ depends_on('judy')
+ depends_on('libatomic-ops')
+ depends_on('zlib')
+ depends_on('keyutils')
+ depends_on('libgcrypt')
+ depends_on('libcap')
+
+ conflicts('platform=darwin', msg='stress-ng is linux-only')
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ mkdirp(prefix.man.man1)
+ mkdirp(join_path(prefix.share,
+ 'stress-ng',
+ 'example-jobs'))
+ mkdirp(join_path(prefix.share,
+ 'bash-completion',
+ 'completions'))
+ install('stress-ng', prefix.bin)
+ install('stress-ng.1', prefix.man.man1)
+ install_tree('example-jobs',
+ join_path(prefix.share,
+ 'stress-ng'))
+ install('bash-completion/stress-ng',
+ join_path(prefix.share,
+ 'bash-completion',
+ 'completions'))
diff --git a/var/spack/repos/builtin/packages/stress/package.py b/var/spack/repos/builtin/packages/stress/package.py
index b407eede15..bafed9bc5c 100644
--- a/var/spack/repos/builtin/packages/stress/package.py
+++ b/var/spack/repos/builtin/packages/stress/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/string-view-lite/package.py b/var/spack/repos/builtin/packages/string-view-lite/package.py
index d2dbd7ad39..ac316d761e 100644
--- a/var/spack/repos/builtin/packages/string-view-lite/package.py
+++ b/var/spack/repos/builtin/packages/string-view-lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/stringtie/package.py b/var/spack/repos/builtin/packages/stringtie/package.py
index afbca1b813..5fa249de46 100644
--- a/var/spack/repos/builtin/packages/stringtie/package.py
+++ b/var/spack/repos/builtin/packages/stringtie/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/stripack/package.py b/var/spack/repos/builtin/packages/stripack/package.py
new file mode 100644
index 0000000000..b5e8a2a3c0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/stripack/package.py
@@ -0,0 +1,69 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Stripack(MakefilePackage):
+ """STRIPACK:
+ Delaunay Triangulation rewritten in Fortran 90 by John Burkardt at
+ https://people.sc.fsu.edu/~jburkardt/f_src/stripack/stripack.html
+
+ The original Fortran 77 package STRIPACK is available from netlib as algorithm number 772 at
+ http://www.netlib.org/toms/772.gz
+ Dr. Renka's articles were published in the ACM Transactions on Mathematical Software, Vol. 23, No 3, September 1997
+ https://dl.acm.org/doi/10.1145/275323.275329
+ """
+
+ homepage = "https://people.sc.fsu.edu/~jburkardt/f_src/stripack/stripack.html"
+ version('develop', sha256='26c074bc46fb8549d7a42ec713636798297d7327c8f3ce0ba2d3348a501ffa7c', expand=False, url='https://people.sc.fsu.edu/~jburkardt/f_src/stripack/stripack.f90')
+
+ @run_before('build')
+ def run_mkmake(self):
+ config = [
+ 'BUILDIR ?= ' + join_path(self.build_directory, 'build'),
+ 'DYLIB=' + dso_suffix,
+ 'F90=' + self.compiler.fc,
+ 'LD=' + self.compiler.fc,
+ 'FFLAGS=' + self.compiler.fc_pic_flag,
+ 'LDFLAGS=' + self.compiler.fc_pic_flag,
+ '.SUFFIXES: .f .f90 .F90',
+ '$(BUILDIR)/%.o: %.f90',
+ '\t$(F90) $(FFLAGS) -c $< -o $@',
+ 'all: $(BUILDIR)/stripack.o',
+ '\t$(LD) -shared $(LDFLAGS) -o $(BUILDIR)/libstripack.$(DYLIB)'
+ + ' $(BUILDIR)/stripack.o $(LIBS)',
+ ]
+ with open('Makefile', 'w') as fh:
+ fh.write('\n'.join(config))
+ mkdirp(join_path(self.build_directory, 'build'))
+
+ def setup_run_environment(self, env):
+ # This is smartly used by VisIt
+ env.set('VISIT_FFP_STRIPACK_PATH',
+ join_path(self.spec.prefix.lib, 'libstripack.' + dso_suffix))
+
+ def build(self, spec, prefix):
+ fflags = spec.compiler_flags['fflags']
+ # Setting the double precision mode
+ # needed for the original Fortran 77 version
+ satisfies = spec.satisfies
+ if satisfies('%gcc') or satisfies('%clang') or satisfies('%flang'):
+ fflags += ['-fdefault-real-8', '-fdefault-double-8']
+ elif satisfies('%intel') or satisfies('%oneapi') or satisfies('%aocc'):
+ fflags += ['-r8']
+ elif satisfies('%xl') or satisfies('%xl_r'):
+ fflags += ['-qrealsize=8']
+ elif satisfies('%fj'):
+ fflags += ['-CcdRR8']
+ elif satisfies('%pgi') or satisfies('%nvhpc'):
+ fflags += ['-r8']
+ fflags += [self.compiler.fc_pic_flag]
+ make('all', 'FFLAGS={0}'.format(' '.join(fflags)))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.lib)
+ install(join_path(self.build_directory, 'build', 'libstripack.' + dso_suffix),
+ prefix.lib)
diff --git a/var/spack/repos/builtin/packages/structure/package.py b/var/spack/repos/builtin/packages/structure/package.py
index 646530bc3a..adf52faefa 100644
--- a/var/spack/repos/builtin/packages/structure/package.py
+++ b/var/spack/repos/builtin/packages/structure/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/strumpack/package.py b/var/spack/repos/builtin/packages/strumpack/package.py
index be00d24937..b8cf21116b 100644
--- a/var/spack/repos/builtin/packages/strumpack/package.py
+++ b/var/spack/repos/builtin/packages/strumpack/package.py
@@ -1,12 +1,14 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
+from spack.util.environment import set_env
+from spack.util.executable import which
-class Strumpack(CMakePackage, CudaPackage):
+class Strumpack(CMakePackage, CudaPackage, ROCmPackage):
"""STRUMPACK -- STRUctured Matrix PACKage - provides linear solvers
for sparse matrices and for dense rank-structured matrices, i.e.,
matrices that exhibit some kind of low-rank property. It provides a
@@ -18,12 +20,15 @@ class Strumpack(CMakePackage, CudaPackage):
iterative solvers."""
homepage = "http://portal.nersc.gov/project/sparse/strumpack"
- url = "https://github.com/pghysels/STRUMPACK/archive/v4.0.0.tar.gz"
+ url = "https://github.com/pghysels/STRUMPACK/archive/v5.1.0.tar.gz"
git = "https://github.com/pghysels/STRUMPACK.git"
maintainers = ['pghysels']
+ test_requires_compiler = True
+
version('master', branch='master')
+ version('5.1.1', sha256='6cf4eaae5beb9bd377f2abce9e4da9fd3e95bf086ae2f04554fad6dd561c28b9')
version('5.0.0', sha256='bdfd1620ff7158d96055059be04ee49466ebaca8213a2fdab33e2d4571019a49')
version('4.0.0', sha256='a3629f1f139865c74916f8f69318f53af6319e7f8ec54e85c16466fd7d256938')
version('3.3.0', sha256='499fd3b58656b4b6495496920e5372895861ebf15328be8a7a9354e06c734bc7')
@@ -34,8 +39,6 @@ class Strumpack(CMakePackage, CudaPackage):
variant('mpi', default=True, description='Use MPI')
variant('openmp', default=True,
description='Enable thread parallellism via tasking with OpenMP')
- variant('cuda', default=True,
- description='Enable CUDA support')
variant('parmetis', default=True,
description='Enable use of ParMetis')
variant('scotch', default=False,
@@ -54,8 +57,8 @@ class Strumpack(CMakePackage, CudaPackage):
description='Build developer test routines')
variant('build_tests', default=False,
description='Build test routines')
-
- # TODO: add a slate variant
+ variant('slate', default=True,
+ description="Build with SLATE support")
depends_on('cmake@3.11:', type='build')
depends_on('mpi', when='+mpi')
@@ -70,37 +73,52 @@ class Strumpack(CMakePackage, CudaPackage):
depends_on('butterflypack@1.2.0:', when='@4.0.0: +butterflypack+mpi')
depends_on('cuda', when='@4.0.0: +cuda')
depends_on('zfp', when='+zfp')
+ depends_on('hipblas', when='+rocm')
+ depends_on('rocsolver', when='+rocm')
+ depends_on('slate', when='+slate')
+ depends_on('slate+cuda', when='+cuda+slate')
conflicts('+parmetis', when='~mpi')
conflicts('+butterflypack', when='~mpi')
conflicts('+butterflypack', when='@:3.2.0')
- conflicts('+cuda', when='@:3.9.999')
conflicts('+zfp', when='@:3.9.999')
+ conflicts('+cuda', when='@:3.9.999')
+ conflicts('+rocm', when='@:5.0.999')
+ conflicts('+rocm', when='+cuda')
+ conflicts('+slate', when='@:5.1.1')
+ conflicts('+slate', when='~mpi')
+ conflicts('^openblas@0.3.6: threads=none', when='+openmp',
+ msg='STRUMPACK requires openblas with OpenMP threading support')
+ conflicts('^openblas@0.3.6: threads=pthreads', when='+openmp',
+ msg='STRUMPACK requires openblas with OpenMP threading support')
patch('intel-19-compile.patch', when='@3.1.1')
def cmake_args(self):
spec = self.spec
- def on_off(varstr):
- return 'ON' if varstr in spec else 'OFF'
-
args = [
- '-DSTRUMPACK_USE_MPI=%s' % on_off('+mpi'),
- '-DSTRUMPACK_USE_OPENMP=%s' % on_off('+openmp'),
- '-DTPL_ENABLE_PARMETIS=%s' % on_off('+parmetis'),
- '-DTPL_ENABLE_SCOTCH=%s' % on_off('+scotch'),
- '-DTPL_ENABLE_BPACK=%s' % on_off('+butterflypack'),
- '-DSTRUMPACK_COUNT_FLOPS=%s' % on_off('+count_flops'),
- '-DSTRUMPACK_TASK_TIMERS=%s' % on_off('+task_timers'),
- '-DSTRUMPACK_DEV_TESTING=%s' % on_off('+build_dev_tests'),
- '-DSTRUMPACK_BUILD_TESTS=%s' % on_off('+build_tests'),
+ self.define_from_variant('STRUMPACK_USE_MPI', 'mpi'),
+ self.define_from_variant('STRUMPACK_USE_OPENMP', 'openmp'),
+ self.define_from_variant('STRUMPACK_USE_CUDA', 'cuda'),
+ self.define_from_variant('STRUMPACK_USE_HIP', 'rocm'),
+ self.define_from_variant('TPL_ENABLE_PARMETIS', 'parmetis'),
+ self.define_from_variant('TPL_ENABLE_SCOTCH', 'scotch'),
+ self.define_from_variant('TPL_ENABLE_BPACK', 'butterflypack'),
+ self.define_from_variant('STRUMPACK_COUNT_FLOPS', 'count_flops'),
+ self.define_from_variant('STRUMPACK_TASK_TIMERS', 'task_timers'),
+ self.define_from_variant('STRUMPACK_DEV_TESTING', 'build_dev_tests'),
+ self.define_from_variant('STRUMPACK_BUILD_TESTS', 'build_tests'),
'-DTPL_BLAS_LIBRARIES=%s' % spec['blas'].libs.joined(";"),
'-DTPL_LAPACK_LIBRARIES=%s' % spec['lapack'].libs.joined(";"),
- '-DTPL_SCALAPACK_LIBRARIES=%s' % spec['scalapack'].
- libs.joined(";"),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared')
]
+ if '+mpi' in spec:
+ args.append(
+ '-DTPL_SCALAPACK_LIBRARIES=%s' % spec['scalapack'].
+ libs.joined(";"))
+
if spec.satisfies('@:3.9.999'):
if '+mpi' in spec:
args.extend([
@@ -109,16 +127,73 @@ class Strumpack(CMakePackage, CudaPackage):
'-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc
])
args.extend([
- '-DSTRUMPACK_C_INTERFACE=%s' % on_off('+c_interface'),
+ self.define_from_variant('STRUMPACK_C_INTERFACE', 'c_interface'),
])
- if spec.satisfies('@4.0.0:'):
+ if '+cuda' in spec:
args.extend([
- '-DSTRUMPACK_USE_CUDA=%s' % on_off('+cuda')
- ])
-
- args.extend([
- '-DBUILD_SHARED_LIBS=%s' % on_off('+shared')
- ])
+ '-DCUDA_TOOLKIT_ROOT_DIR={0}'.format(spec['cuda'].prefix),
+ '-DCMAKE_CUDA_HOST_COMPILER={0}'.format(env["SPACK_CXX"])])
+ cuda_archs = spec.variants['cuda_arch'].value
+ if 'none' not in cuda_archs:
+ args.append('-DCUDA_NVCC_FLAGS={0}'.
+ format(' '.join(self.cuda_flags(cuda_archs))))
+
+ if '+rocm' in spec:
+ args.append(
+ '-DHIP_ROOT_DIR={0}'.format(spec['hip'].prefix))
+ rocm_archs = spec.variants['amdgpu_target'].value
+ if 'none' not in rocm_archs:
+ args.append('-DHIP_HIPCC_FLAGS=--amdgpu-target={0}'.
+ format(",".join(rocm_archs)))
return args
+
+ test_data_dir = 'examples/data'
+ test_src_dir = 'test'
+
+ @run_after('install')
+ def cache_test_sources(self):
+ """Copy the example source files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources([self.test_data_dir, self.test_src_dir])
+
+ def _test_example(self, test_prog, test_dir, test_cmd, test_args):
+ tmpbld_dir = '{0}/_BUILD'.format(test_dir)
+ with working_dir(tmpbld_dir, create=True):
+ with open('{0}/CMakeLists.txt'.format(tmpbld_dir), 'w') as mkfile:
+ mkfile.write('cmake_minimum_required(VERSION 3.13)\n')
+ mkfile.write('project(StrumpackSmokeTest LANGUAGES CXX)\n')
+ mkfile.write('find_package(STRUMPACK REQUIRED)\n')
+ mkfile.write('add_executable({0} ../{0}.cpp)\n'.
+ format(test_prog))
+ mkfile.write('target_link_libraries({0} '.format(test_prog) +
+ 'PRIVATE STRUMPACK::strumpack)\n')
+
+ opts = self.std_cmake_args
+ opts += self.cmake_args()
+ opts += ['.']
+ self.run_test('cmake', opts, [], installed=False, work_dir='.')
+ self.run_test('make')
+ with set_env(OMP_NUM_THREADS='4'):
+ self.run_test(test_cmd, test_args, installed=False,
+ purpose='test: strumpack smoke test',
+ skip_missing=False, work_dir='.')
+ self.run_test('rm', ['-fR', tmpbld_dir])
+
+ def test(self):
+ test_dir = join_path(self.install_test_root, self.test_src_dir)
+ test_exe = 'test_sparse_seq'
+ test_exe_mpi = 'test_sparse_mpi'
+ exe_arg = ['../../examples/data/pde900.mtx']
+ if '+mpi' in self.spec:
+ test_args = ['-n', '4', test_exe_mpi]
+ test_args.extend(exe_arg)
+ mpiexe_list = ['mpirun', 'mpiexec', 'srun']
+ for mpiexe in mpiexe_list:
+ if which(mpiexe) is not None:
+ self._test_example(test_exe_mpi, test_dir,
+ mpiexe, test_args)
+ break
+ else:
+ self._test_example(test_exe, test_dir, test_exe, exe_arg)
diff --git a/var/spack/repos/builtin/packages/su2/package.py b/var/spack/repos/builtin/packages/su2/package.py
index 3aa51e5828..1389db676d 100644
--- a/var/spack/repos/builtin/packages/su2/package.py
+++ b/var/spack/repos/builtin/packages/su2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sublime-text/package.py b/var/spack/repos/builtin/packages/sublime-text/package.py
index 942e62d311..f16a6a3ea1 100644
--- a/var/spack/repos/builtin/packages/sublime-text/package.py
+++ b/var/spack/repos/builtin/packages/sublime-text/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/subread/package.py b/var/spack/repos/builtin/packages/subread/package.py
index 5bd51ad889..1906179072 100644
--- a/var/spack/repos/builtin/packages/subread/package.py
+++ b/var/spack/repos/builtin/packages/subread/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/subversion/package.py b/var/spack/repos/builtin/packages/subversion/package.py
index 98874ee2bd..e7d5d33a33 100644
--- a/var/spack/repos/builtin/packages/subversion/package.py
+++ b/var/spack/repos/builtin/packages/subversion/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/suite-sparse/fix_cuda11.patch b/var/spack/repos/builtin/packages/suite-sparse/fix_cuda11.patch
new file mode 100644
index 0000000000..4d9e0fc1e1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/suite-sparse/fix_cuda11.patch
@@ -0,0 +1,10 @@
+--- spack-src.orig/SuiteSparse_config/SuiteSparse_config.mk 2021-03-03 22:04:33.000000000 +0000
++++ spack-src/SuiteSparse_config/SuiteSparse_config.mk 2021-04-13 16:21:57.426166357 +0000
+@@ -259,7 +259,6 @@
+ MAGMA_LIB = -L/opt/magma-2.4.0/lib/ -lmagma
+ NVCC = $(CUDA_PATH)/bin/nvcc
+ NVCCFLAGS = -Xcompiler -fPIC -O3 \
+- -gencode=arch=compute_30,code=sm_30 \
+ -gencode=arch=compute_35,code=sm_35 \
+ -gencode=arch=compute_50,code=sm_50 \
+ -gencode=arch=compute_53,code=sm_53 \
diff --git a/var/spack/repos/builtin/packages/suite-sparse/package.py b/var/spack/repos/builtin/packages/suite-sparse/package.py
index 0c75d8394f..d62309d2fd 100644
--- a/var/spack/repos/builtin/packages/suite-sparse/package.py
+++ b/var/spack/repos/builtin/packages/suite-sparse/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,7 @@ class SuiteSparse(Package):
url = 'https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/v4.5.3.tar.gz'
git = 'https://github.com/DrTimothyAldenDavis/SuiteSparse.git'
+ version('5.9.0', sha256='7bdd4811f1cf0767c5fdb5e435817fdadee50b0acdb598f4882ae7b8291a7f24')
version('5.8.1', sha256='06726e471fbaa55f792578f9b4ab282ea9d008cf39ddcc3b42b73400acddef40')
version('5.8.0', sha256='94a9b7134eb4dd82b97f1a22a6b464feb81e73af2dcdf683c6f252285191df1d')
version('5.7.2', sha256='fe3bc7c3bd1efdfa5cffffb5cebf021ff024c83b5daf0ab445429d3d741bd3ad')
@@ -59,6 +60,11 @@ class SuiteSparse(Package):
# Fixes 'libgraphblas.so.2.0.1: undefined reference to `__fpclassify''
patch('graphblas_libm_dep.patch', when='@5.2.0:5.2.99%clang')
+ # CUDA-11 dropped sm_30 code generation, remove hardcoded sm_30 from makefile
+ # open issue: https://github.com/DrTimothyAldenDavis/SuiteSparse/issues/56
+ # Tested only with 5.9.0, previous versions probably work too
+ patch('fix_cuda11.patch', when='@5.9.0:+cuda ^cuda@11:')
+
conflicts('%gcc@:4.8', when='@5.2.0:', msg='gcc version must be at least 4.9 for suite-sparse@5.2.0:')
def install(self, spec, prefix):
@@ -119,8 +125,8 @@ class SuiteSparse(Package):
# SuiteSparse defaults to using '-fno-common -fexceptions' in
# CFLAGS, but not all compilers use the same flags for these
# optimizations
- if any([x in spec
- for x in ('%apple-clang', '%clang', '%gcc', '%intel')]):
+ if any([x in spec for x in
+ ('%apple-clang', '%clang', '%gcc', '%intel', '%fj')]):
make_args += ['CFLAGS+=-fno-common -fexceptions']
elif '%pgi' in spec:
make_args += ['CFLAGS+=--exceptions']
diff --git a/var/spack/repos/builtin/packages/sumaclust/package.py b/var/spack/repos/builtin/packages/sumaclust/package.py
index fe23e8ecfe..eeabf61936 100644
--- a/var/spack/repos/builtin/packages/sumaclust/package.py
+++ b/var/spack/repos/builtin/packages/sumaclust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sumo/package.py b/var/spack/repos/builtin/packages/sumo/package.py
index 0fbd58303d..93339afe14 100644
--- a/var/spack/repos/builtin/packages/sumo/package.py
+++ b/var/spack/repos/builtin/packages/sumo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sundials/0001-add-missing-README-to-examples-cvode-hip.patch b/var/spack/repos/builtin/packages/sundials/0001-add-missing-README-to-examples-cvode-hip.patch
new file mode 100644
index 0000000000..3825d85712
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sundials/0001-add-missing-README-to-examples-cvode-hip.patch
@@ -0,0 +1,22 @@
+From 5466501b51cc329aeea234f562aa85bedf870321 Mon Sep 17 00:00:00 2001
+From: "Cody J. Balos" <balos1@llnl.gov>
+Date: Mon, 8 Mar 2021 13:28:11 -0800
+Subject: [PATCH] add missing README to examples/cvode/hip
+
+---
+ examples/cvode/hip/README | 3 +++
+ 1 file changed, 3 insertions(+)
+ create mode 100644 examples/cvode/hip/README
+
+diff --git a/examples/cvode/hip/README b/examples/cvode/hip/README
+new file mode 100644
+index 000000000..8480fbf7d
+--- /dev/null
++++ b/examples/cvode/hip/README
+@@ -0,0 +1,3 @@
++List of Hip CVODE examples
++
++ cvAdvDiff_kry_hip : 2-D advection-diffusion (nonstiff)
+--
+2.29.1
+
diff --git a/var/spack/repos/builtin/packages/sundials/package.py b/var/spack/repos/builtin/packages/sundials/package.py
index d00bda0c03..498d4390fc 100644
--- a/var/spack/repos/builtin/packages/sundials/package.py
+++ b/var/spack/repos/builtin/packages/sundials/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -8,7 +8,7 @@ import os
import sys
-class Sundials(CMakePackage):
+class Sundials(CMakePackage, CudaPackage, ROCmPackage):
"""SUNDIALS (SUite of Nonlinear and DIfferential/ALgebraic equation
Solvers)"""
@@ -22,6 +22,9 @@ class Sundials(CMakePackage):
# Versions
# ==========================================================================
version('develop', branch='develop')
+ version('5.7.0', sha256='8d6dd094feccbb8d6ecc41340ec16a65fabac82ed4415023f6d7c1c2390ea2f3')
+ version('5.6.1', sha256='16b77999ec7e7f2157aa1d04ca1de4a2371ca8150e056d24951d0c58966f2a83')
+ version('5.6.0', sha256='95e4201912e150f29c6f6f7625de763385e2073dae7f929c4a544561ea29915d')
version('5.5.0', sha256='2a755e89aab96d2ff096a4e30bf00bb162e80be20e9e99f424dccfb249098237')
version('5.4.0', sha256='04d8a2ebe02cdaeef5a9e22ff7e3146bb563d8400f65772b6c7af80001413ffa')
version('5.3.0', sha256='88dff7e11a366853d8afd5de05bf197a8129a804d9d4461fb64297f1ef89bca7')
@@ -70,8 +73,6 @@ class Sundials(CMakePackage):
description='Enable OpenMP parallel vector')
variant('pthread', default=False,
description='Enable Pthreads parallel vector')
- variant('cuda', default=False,
- description='Enable CUDA vector and solvers')
variant('raja', default=False,
description='Enable RAJA vector')
@@ -104,18 +105,8 @@ class Sundials(CMakePackage):
description='Enable Fortran 2003 interface')
# Examples
- variant('examples-c', default=True,
- description='Enable C examples')
- variant('examples-cxx', default=False,
- description='Enable C++ examples')
- variant('examples-f77', default=True,
- description='Enable Fortran 77 examples')
- variant('examples-f90', default=False,
- description='Enable Fortran 90 examples')
- variant('examples-f2003', default=False,
- description='Enable Fortran 2003 examples')
- variant('examples-cuda', default=False,
- description='Enable CUDA examples')
+ variant('examples', default=True,
+ description='Enable examples')
variant('examples-install', default=True,
description='Install examples')
@@ -123,22 +114,24 @@ class Sundials(CMakePackage):
variant('generic-math', default=True,
description='Use generic (std-c) math libraries on unix systems')
+ # Monitoring
+ variant('monitoring', default=False,
+ description='Build with simulation monitoring capabilities')
+
# ==========================================================================
# Conflicts
# ==========================================================================
- # Options added after v2.6.2
- conflicts('+hypre', when='@:2.6.2')
- conflicts('+petsc', when='@:2.6.2')
-
- # Options added after v2.7.0
+ conflicts('+hypre', when='@:2.6.2')
+ conflicts('+petsc', when='@:2.6.2')
conflicts('+cuda', when='@:2.7.0')
conflicts('+raja', when='@:2.7.0')
conflicts('~int64', when='@:2.7.0')
- conflicts('+examples-cuda', when='@:2.7.0')
conflicts('+superlu-dist', when='@:4.1.0')
conflicts('+f2003', when='@:4.1.0')
conflicts('+trilinos', when='@:4.1.0')
+ conflicts('+monitoring', when='@:5.5.0')
+ conflicts('+rocm', when='@:5.6.0')
# External libraries incompatible with 64-bit indices
conflicts('+lapack', when='@3.0.0: +int64')
@@ -164,7 +157,7 @@ class Sundials(CMakePackage):
# ==========================================================================
# Build dependencies
- depends_on('cmake@3.5:', type='build')
+ depends_on('cmake@3.12:', type='build')
# MPI related dependencies
depends_on('mpi', when='+mpi')
@@ -173,14 +166,15 @@ class Sundials(CMakePackage):
depends_on('mpi', when='+superlu-dist')
# Other parallelism dependencies
- depends_on('cuda', when='+cuda')
- depends_on('raja +cuda ~openmp', when='+raja')
+ depends_on('raja', when='+raja')
+ depends_on('raja+cuda', when='+raja +cuda')
+ depends_on('raja+rocm', when='+raja +rocm')
# External libraries
depends_on('lapack', when='+lapack')
depends_on('suite-sparse', when='+klu')
- depends_on('petsc +mpi', when='+petsc')
- depends_on('hypre +mpi', when='+hypre')
+ depends_on('petsc+mpi', when='+petsc')
+ depends_on('hypre+mpi', when='+hypre')
depends_on('superlu-dist@6.1.1:', when='@:5.4.0 +superlu-dist')
depends_on('superlu-dist@6.3.0:', when='@5.5.0: +superlu-dist')
depends_on('trilinos+tpetra', when='+trilinos')
@@ -207,6 +201,7 @@ class Sundials(CMakePackage):
patch('test_nvector_parhyp.patch', when='@2.7.0:3.0.0')
patch('FindPackageMultipass.cmake.patch', when='@5.0.0')
patch('5.5.0-xsdk-patches.patch', when='@5.5.0')
+ patch('0001-add-missing-README-to-examples-cvode-hip.patch', when='@5.6.0:5.7.0')
# ==========================================================================
# SUNDIALS Settings
@@ -231,7 +226,7 @@ class Sundials(CMakePackage):
# SUNDIALS solvers
for pkg in self.sun_solvers:
- args.extend(['-DBUILD_%s=%s' % (pkg, on_off('+' + pkg))])
+ args.append(self.define_from_variant('BUILD_' + pkg, pkg))
# precision
args.extend([
@@ -248,13 +243,13 @@ class Sundials(CMakePackage):
args.extend(['-DSUNDIALS_INDEX_TYPE=int32_t'])
# Fortran interface
- args.extend(['-DF77_INTERFACE_ENABLE=%s' % on_off('+fcmix')])
- args.extend(['-DF2003_INTERFACE_ENABLE=%s' % on_off('+f2003')])
+ args.extend([self.define_from_variant('F77_INTERFACE_ENABLE', 'fcmix')])
+ args.extend([self.define_from_variant('F2003_INTERFACE_ENABLE', 'f2003')])
# library type
args.extend([
- '-DBUILD_SHARED_LIBS=%s' % on_off('+shared'),
- '-DBUILD_STATIC_LIBS=%s' % on_off('+static')
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('BUILD_STATIC_LIBS', 'static')
])
# generic (std-c) math libraries
@@ -262,23 +257,50 @@ class Sundials(CMakePackage):
'-DUSE_GENERIC_MATH=%s' % on_off('+generic-math')
])
+ # Monitoring
+ args.extend([
+ self.define_from_variant('SUNDIALS_BUILD_WITH_MONITORING', 'monitoring')
+ ])
+
# parallelism
args.extend([
- '-DMPI_ENABLE=%s' % on_off('+mpi'),
- '-DOPENMP_ENABLE=%s' % on_off('+openmp'),
- '-DPTHREAD_ENABLE=%s' % on_off('+pthread'),
- '-DCUDA_ENABLE=%s' % on_off('+cuda')
+ self.define_from_variant('MPI_ENABLE', 'mpi'),
+ self.define_from_variant('OPENMP_ENABLE', 'openmp'),
+ self.define_from_variant('PTHREAD_ENABLE', 'pthread')
])
+ if '+cuda' in spec:
+ args.append('-DCUDA_ENABLE=ON')
+ archs = spec.variants['cuda_arch'].value
+ if archs != 'none':
+ arch_str = ",".join(archs)
+ args.append('-DCMAKE_CUDA_ARCHITECTURES=%s' % arch_str)
+ else:
+ args.append('-DCUDA_ENABLE=OFF')
+
+ if '+rocm' in spec:
+ args.extend([
+ '-DCMAKE_CXX_COMPILER=%s' % spec['hip'].hipcc,
+ '-DENABLE_HIP=ON',
+ '-DHIP_PATH=%s' % spec['hip'].prefix,
+ '-DHIP_CLANG_INCLUDE_PATH=%s/include' % spec['llvm-amdgpu'].prefix,
+ '-DROCM_PATH=%s' % spec['llvm-amdgpu'].prefix
+ ])
+ archs = spec.variants['amdgpu_target'].value
+ if archs != 'none':
+ arch_str = ",".join(archs)
+ args.append('-DAMDGPU_TARGETS=%s' % arch_str)
+ else:
+ args.append('-DENABLE_HIP=OFF')
+
# MPI support
if '+mpi' in spec:
- args.extend(['-DMPI_MPICC=%s' % spec['mpi'].mpicc])
- if 'examples-cxx' in spec:
- args.extend(['-DMPI_MPICXX=%s' % spec['mpi'].mpicxx])
- if ('+fcmix' in spec) and ('+examples-f77' in spec):
- args.extend(['-DMPI_MPIF77=%s' % spec['mpi'].mpif77])
- if ('+fcmix' in spec) and ('+examples-f90' in spec):
- args.extend(['-DMPI_MPIF90=%s' % spec['mpi'].mpifc])
+ args.extend([
+ '-DMPI_MPICC=%s' % spec['mpi'].mpicc,
+ '-DMPI_MPICXX=%s' % spec['mpi'].mpicxx,
+ '-DMPI_MPIF77=%s' % spec['mpi'].mpif77,
+ '-DMPI_MPIF90=%s' % spec['mpi'].mpifc
+ ])
# Building with Hypre
if '+hypre' in spec:
@@ -336,7 +358,7 @@ class Sundials(CMakePackage):
if '+raja' in spec:
args.extend([
'-DRAJA_ENABLE=ON',
- '-DRAJA_DIR=%s' % spec['raja'].prefix.share.raja.cmake
+ '-DRAJA_DIR=%s' % spec['raja'].prefix
])
else:
args.extend([
@@ -401,20 +423,18 @@ class Sundials(CMakePackage):
# Examples
if spec.satisfies('@3.0.0:'):
args.extend([
- '-DEXAMPLES_ENABLE_C=%s' % on_off('+examples-c'),
- '-DEXAMPLES_ENABLE_CXX=%s' % on_off('+examples-cxx'),
- '-DEXAMPLES_ENABLE_F77=%s' % on_off('+examples-f77'),
- '-DEXAMPLES_ENABLE_F90=%s' % on_off('+examples-f90'),
- '-DEXAMPLES_ENABLE_F2003=%s' % on_off('+examples-f2003'),
- '-DEXAMPLES_ENABLE_CUDA=%s' % on_off('+examples-cuda'),
- # option removed in 5.0.0
- '-DEXAMPLES_ENABLE_RAJA=%s' % on_off('+raja')
+ self.define_from_variant('EXAMPLES_ENABLE_C', 'examples'),
+ self.define_from_variant('EXAMPLES_ENABLE_CXX', 'examples'),
+ '-DEXAMPLES_ENABLE_CUDA=%s' % on_off('+examples+cuda'),
+ '-DEXAMPLES_ENABLE_F77=%s' % on_off('+examples+fcmix'),
+ '-DEXAMPLES_ENABLE_F90=%s' % on_off('+examples+fcmix'),
+ '-DEXAMPLES_ENABLE_F2003=%s' % on_off('+examples+f2003'),
])
else:
args.extend([
- '-DEXAMPLES_ENABLE=%s' % on_off('+examples-c'),
- '-DCXX_ENABLE=%s' % on_off('+examples-cxx'),
- '-DF90_ENABLE=%s' % on_off('+examples-f90')
+ self.define_from_variant('EXAMPLES_ENABLE', 'examples'),
+ self.define_from_variant('CXX_ENABLE', 'examples'),
+ '-DF90_ENABLE=%s' % on_off('+examples+fcmix')
])
args.extend([
@@ -558,17 +578,17 @@ class Sundials(CMakePackage):
filter_file(r'^CPP\s*=.*', self.compiler.cc,
os.path.join(dirname, filename), **kwargs)
- if ('+fcmix' in spec) and ('+examples-f77' in spec):
+ if ('+fcmix' in spec) and ('+examples' in spec):
for filename in f77_files:
filter_file(os.environ['F77'], self.compiler.f77,
os.path.join(dirname, filename), **kwargs)
- if ('+fcmix' in spec) and ('+examples-f90' in spec):
+ if ('+fcmix' in spec) and ('+examples' in spec):
for filename in f90_files:
filter_file(os.environ['FC'], self.compiler.fc,
os.path.join(dirname, filename), **kwargs)
- if ('+f2003' in spec) and ('+examples-f2003' in spec):
+ if ('+f2003' in spec) and ('+examples' in spec):
for filename in f2003_files:
filter_file(os.environ['FC'], self.compiler.fc,
os.path.join(dirname, filename), **kwargs)
@@ -603,3 +623,54 @@ class Sundials(CMakePackage):
recursive=True)
return libs or None # Raise an error if no libs are found
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def test_install(self):
+ """Perform make test_install.
+ """
+ with working_dir(self.build_directory):
+ make("test_install")
+
+ @run_after('install')
+ def setup_build_tests(self):
+ """Copy the build test files after the package is installed to a
+ relative install test subdirectory for use during `spack test run`."""
+ # Now copy the relative files
+ self.cache_extra_test_sources(self.build_relpath)
+
+ # Ensure the path exists since relying on a relative path at the
+ # same level as the normal stage source path.
+ mkdirp(self.install_test_root)
+
+ @property
+ def build_relpath(self):
+ """Relative path to the cmake build subdirectory."""
+ return join_path('..', self.build_dirname)
+
+ @property
+ def _extra_tests_path(self):
+ return join_path(self.install_test_root, self.build_relpath)
+
+ def test(self):
+ """Run the smoke tests."""
+ if '+examples' not in self.spec:
+ print('Smoke tests were skipped: install with examples enabled')
+ return
+
+ self.run_test('examples/nvector/serial/test_nvector_serial',
+ options=['10', '0'],
+ work_dir=self._extra_tests_path)
+ if '+cuda' in self.spec:
+ self.run_test('examples/cvode/cuda/cvAdvDiff_ky_cuda',
+ work_dir=self._extra_tests_path)
+ self.run_test('examples/nvector/cuda/test_nvector_cuda',
+ options=['10', '0', '0'],
+ work_dir=self._extra_tests_path)
+ if '+rocm' in self.spec:
+ self.run_test('examples/cvode/hip/cvAdvDiff_kry_hip',
+ work_dir=self._extra_tests_path)
+ self.run_test('examples/nvector/hip/test_nvector_hip',
+ options=['10', '0', '0'],
+ work_dir=self._extra_tests_path)
+ return
diff --git a/var/spack/repos/builtin/packages/superchic/package.py b/var/spack/repos/builtin/packages/superchic/package.py
new file mode 100644
index 0000000000..ad78f5a3cb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/superchic/package.py
@@ -0,0 +1,51 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Superchic(MakefilePackage):
+ """SuperChic is a Fortran based Monte Carlo event generator for exclusive and
+ photon-initiated production in proton and heavy ion collisions.
+
+ A range of Standard Model final states are implemented, in most cases with
+ spin correlations where relevant, and a fully differential treatment of the soft
+ survival factor is given. Arbitrary user-defined histograms and cuts may be
+ made, as well as unweighted events in the HEPEVT, HEPMC and LHE formats.
+ """
+
+ homepage = "https://superchic.hepforge.org/"
+ url = "https://superchic.hepforge.org/superchic4.01.tar.gz"
+
+ version('4.01', sha256='2d690e1cdb0fd0ee345028b0d823a76c8d93156aaa0c9cd1ecb5f18cde75acd6')
+ version('3.06', sha256='17b4f56e85634f3c9708d5263772d7035fe4d7fb91a11bbffe889e0860efbd02')
+ version('3.05', sha256='032f5c784f284ca02003a990234b099f61cd125791d56715680cd342e55c7da1')
+
+ depends_on('lhapdf')
+ depends_on('apfel', when='@4.01:')
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('makefile')
+ makefile.filter('LHAPDFLIB = .*',
+ 'LHAPDFLIB = ' + self.spec['lhapdf'].prefix.lib)
+ if self.spec.satisfies('@4.01:'):
+ makefile.filter('APFELLIB = .*',
+ 'APFELLIB = ' + self.spec['apfel'].prefix.lib)
+
+ def build(self, spec, prefix):
+ make('PWD=' + self.build_directory)
+
+ def install(self, spec, prefix):
+ mkdirp(self.prefix.bin)
+ install_tree('bin', self.prefix.bin)
+
+ mkdirp(self.prefix.lib)
+ install_tree('lib', self.prefix.lib)
+
+ if self.spec.satisfies('@3.05:'):
+ mkdirp(join_path(self.prefix, 'src', 'inc'))
+ install_tree(join_path('src', 'inc'), join_path(self.prefix, 'src', 'inc'))
+ mkdirp(join_path(self.prefix, 'obj'))
+ install_tree('obj', join_path(self.prefix, 'obj'))
diff --git a/var/spack/repos/builtin/packages/superlu-dist/package.py b/var/spack/repos/builtin/packages/superlu-dist/package.py
index 0450347301..adb53a740e 100644
--- a/var/spack/repos/builtin/packages/superlu-dist/package.py
+++ b/var/spack/repos/builtin/packages/superlu-dist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -102,3 +102,53 @@ class SuperluDist(CMakePackage, CudaPackage):
if name == 'cflags' and '%pgi' not in self.spec:
flags.append('-std=c99')
return (None, None, flags)
+
+ examples_src_dir = 'EXAMPLE'
+ mk_hdr = 'make.inc'
+ mk_hdr_in = mk_hdr + '.in'
+
+ @run_after('install')
+ def cache_test_sources(self):
+ """Copy the example source files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources([self.examples_src_dir, self.mk_hdr])
+
+ def test(self):
+ mk_file = join_path(self.install_test_root, self.mk_hdr)
+ # Replace 'SRC' with 'lib' in the library's path
+ filter_file(r'^(DSUPERLULIB.+)SRC(.+)', '\\1lib\\2', mk_file)
+ # Set library flags for all libraries superlu-dist depends on
+ filter_file(r'^LIBS.+\+=.+', '', mk_file)
+ filter_file(r'^LIBS[^\+]+=.+', 'LIBS = $(DSUPERLULIB)' +
+ ' {0}'.format(self.spec['blas'].libs.ld_flags) +
+ ' {0}'.format(self.spec['lapack'].libs.ld_flags) +
+ ' {0}'.format(self.spec['parmetis'].libs.ld_flags) +
+ ' {0}'.format(self.spec['metis'].libs.ld_flags) +
+ ' $(CUDALIBS)',
+ mk_file)
+ cuda_lib_opts = ''
+ if '+cuda' in self.spec:
+ cuda_lib_opts = ',-rpath,{0}'.format(
+ self.spec['cuda'].libs.directories[0])
+ # Set the rpath for all the libs
+ filter_file(r'^LOADOPTS.+', 'LOADOPTS = -Wl' +
+ ',-rpath,{0}'.format(self.prefix.lib) +
+ ',-rpath,{0}'.format(self.spec['blas'].prefix.lib) +
+ ',-rpath,{0}'.format(self.spec['lapack'].prefix.lib) +
+ ',-rpath,{0}'.format(self.spec['parmetis'].prefix.lib) +
+ ',-rpath,{0}'.format(self.spec['metis'].prefix.lib) +
+ cuda_lib_opts,
+ mk_file)
+
+ test_dir = join_path(self.install_test_root, self.examples_src_dir)
+ test_exe = 'pddrive'
+ with working_dir(test_dir, create=False):
+ make(test_exe)
+ # Smoke test input parameters: -r 2 -c 2 g20.rua
+ test_args = ['-n', '4', test_exe, '-r', '2', '-c', '2', 'g20.rua']
+ # Find the correct mpirun command
+ mpiexe_f = which('srun', 'mpirun', 'mpiexec')
+ if mpiexe_f:
+ self.run_test(mpiexe_f.command, test_args, work_dir='.',
+ purpose='superlu-dist smoke test')
+ make('clean')
diff --git a/var/spack/repos/builtin/packages/superlu-mt/package.py b/var/spack/repos/builtin/packages/superlu-mt/package.py
index b3595428ab..a03664bab6 100644
--- a/var/spack/repos/builtin/packages/superlu-mt/package.py
+++ b/var/spack/repos/builtin/packages/superlu-mt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/superlu/package.py b/var/spack/repos/builtin/packages/superlu/package.py
index fb41b4faf4..5a02bdb782 100644
--- a/var/spack/repos/builtin/packages/superlu/package.py
+++ b/var/spack/repos/builtin/packages/superlu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,14 +18,18 @@ class Superlu(Package):
variant('pic', default=True,
description='Build with position independent code')
+ depends_on('tcsh', type='build')
depends_on('cmake', when='@5.2.1:', type='build')
depends_on('blas')
+ test_requires_compiler = True
+
# CMake installation method
def install(self, spec, prefix):
cmake_args = [
'-Denable_blaslib=OFF',
- '-DBLAS_blas_LIBRARY={0}'.format(spec['blas'].libs.joined())
+ '-DBLAS_blas_LIBRARY={0}'.format(spec['blas'].libs.joined()),
+ '-DCMAKE_INSTALL_LIBDIR={0}'.format(self.prefix.lib)
]
if '+pic' in spec:
@@ -93,3 +97,77 @@ class Superlu(Package):
install_tree('lib', prefix.lib)
mkdir(prefix.include)
install(join_path('SRC', '*.h'), prefix.include)
+
+ examples_src_dir = 'EXAMPLE'
+ make_hdr_file = 'make.inc'
+
+ @run_after('install')
+ def cache_test_sources(self):
+ """Copy the example source files after the package is installed to an
+ install test subdirectory for use during `spack test run`."""
+ self.cache_extra_test_sources(self.examples_src_dir)
+
+ def _generate_make_hdr_for_test(self):
+ config_args = []
+
+ # Define make.inc file
+ config_args.extend([
+ 'SuperLUroot = {0}'.format(self.prefix),
+ 'SUPERLULIB = {0}/libsuperlu.a'.format(self.prefix.lib),
+ 'BLASLIB = {0}'.format(self.spec['blas'].libs.ld_flags),
+ 'TMGLIB = libtmglib.a',
+ 'LIBS = $(SUPERLULIB) $(BLASLIB)',
+ 'ARCH = ar',
+ 'ARCHFLAGS = cr',
+ 'RANLIB = {0}'.format('ranlib' if which('ranlib') else 'echo'),
+ 'CC = {0}'.format(self.compiler.cc),
+ 'FORTRAN = {0}'.format(self.compiler.fc),
+ 'LOADER = {0}'.format(self.compiler.cc),
+ 'CFLAGS = -O3 -DNDEBUG -DUSE_VENDOR_BLAS -DPRNTlevel=0 -DAdd_',
+ 'NOOPTS = -O0'
+ ])
+
+ return config_args
+
+ # Pre-cmake configuration
+ @when('@4.3')
+ def _generate_make_hdr_for_test(self):
+ config_args = []
+
+ # Define make.inc file
+ config_args.extend([
+ 'PLAT = _x86_64',
+ 'SuperLUroot = {0}'.format(self.prefix),
+ 'SUPERLULIB = {0}/libsuperlu_{1}.a'.format(self.prefix.lib,
+ self.spec.version),
+ 'BLASLIB = {0}'.format(self.spec['blas'].libs.ld_flags),
+ 'TMGLIB = libtmglib.a',
+ 'LIBS = $(SUPERLULIB) $(BLASLIB)',
+ 'ARCH = ar',
+ 'ARCHFLAGS = cr',
+ 'RANLIB = {0}'.format('ranlib' if which('ranlib') else 'echo'),
+ 'CC = {0}'.format(self.compiler.cc),
+ 'FORTRAN = {0}'.format(self.compiler.fc),
+ 'LOADER = {0}'.format(self.compiler.cc),
+ 'CFLAGS = -O3 -DNDEBUG -DUSE_VENDOR_BLAS -DPRNTlevel=0 -DAdd_',
+ 'NOOPTS = -O0'
+ ])
+
+ return config_args
+
+ def test(self):
+ config_args = self._generate_make_hdr_for_test()
+
+ # Write configuration options to make.inc file
+ make_file_inc = join_path(self.install_test_root, self.make_hdr_file)
+ with open(make_file_inc, 'w') as inc:
+ for option in config_args:
+ inc.write('{0}\n'.format(option))
+
+ test_dir = join_path(self.install_test_root, self.examples_src_dir)
+ with working_dir(test_dir, create=False):
+ make('HEADER={0}'.format(self.prefix.include), 'superlu',
+ parallel=False)
+ self.run_test('./superlu', purpose='Smoke test for superlu',
+ work_dir='.')
+ make('clean')
diff --git a/var/spack/repos/builtin/packages/supernova/package.py b/var/spack/repos/builtin/packages/supernova/package.py
index a83a14dfab..fff4d9843b 100644
--- a/var/spack/repos/builtin/packages/supernova/package.py
+++ b/var/spack/repos/builtin/packages/supernova/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sw4lite/package.py b/var/spack/repos/builtin/packages/sw4lite/package.py
index 815360c259..196409da4b 100644
--- a/var/spack/repos/builtin/packages/sw4lite/package.py
+++ b/var/spack/repos/builtin/packages/sw4lite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/swap-assembler/package.py b/var/spack/repos/builtin/packages/swap-assembler/package.py
index 04a6a63f9c..c5f9a53946 100644
--- a/var/spack/repos/builtin/packages/swap-assembler/package.py
+++ b/var/spack/repos/builtin/packages/swap-assembler/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/swarm/package.py b/var/spack/repos/builtin/packages/swarm/package.py
index 4f38c7522e..e41640f916 100644
--- a/var/spack/repos/builtin/packages/swarm/package.py
+++ b/var/spack/repos/builtin/packages/swarm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,11 @@ class Swarm(MakefilePackage):
homepage = "https://github.com/torognes/swarm"
url = "https://github.com/torognes/swarm/archive/v2.1.13.tar.gz"
+ version('3.0.0', sha256='b63761a9914ebf1fee14befaffd93af9c795b692c006c644d049a6d985b55810')
version('2.1.13', sha256='ec4b22cc1874ec6d2c89fe98e23a2fb713aec500bc4a784f0556389d22c02650')
+ conflicts('@2.1.13', when='target=aarch64:')
+
build_directory = 'src'
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/swfft/package.py b/var/spack/repos/builtin/packages/swfft/package.py
index ada58c5f19..40ec43c506 100644
--- a/var/spack/repos/builtin/packages/swfft/package.py
+++ b/var/spack/repos/builtin/packages/swfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/swftools/package.py b/var/spack/repos/builtin/packages/swftools/package.py
index 02a658599d..8e300554a8 100644
--- a/var/spack/repos/builtin/packages/swftools/package.py
+++ b/var/spack/repos/builtin/packages/swftools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/swiftsim/package.py b/var/spack/repos/builtin/packages/swiftsim/package.py
index c3c594f07e..eab510002b 100644
--- a/var/spack/repos/builtin/packages/swiftsim/package.py
+++ b/var/spack/repos/builtin/packages/swiftsim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/swig/package.py b/var/spack/repos/builtin/packages/swig/package.py
index 87c92f483f..4cf58e8bea 100644
--- a/var/spack/repos/builtin/packages/swig/package.py
+++ b/var/spack/repos/builtin/packages/swig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,7 @@ class Swig(AutotoolsPackage, SourceforgePackage):
homepage = "http://www.swig.org"
sourceforge_mirror_path = "swig/swig-3.0.12.tar.gz"
+ maintainers = ['sethrj']
version('master', git='https://github.com/swig/swig.git')
version('4.0.2', sha256='d53be9730d8d58a16bf0cbd1f8ac0c0c3e1090573168bfa151b01eb47fa906fc',
@@ -57,6 +58,8 @@ class Swig(AutotoolsPackage, SourceforgePackage):
build_directory = 'spack-build'
+ conflicts('%nvhpc', when='@:4.0.2')
+
@run_after('install')
def create_symlink(self):
# CMake compatibility: see https://github.com/spack/spack/pull/6240
@@ -67,3 +70,45 @@ class Swig(AutotoolsPackage, SourceforgePackage):
@when(_version)
def autoreconf(self, spec, prefix):
which('sh')('./autogen.sh')
+
+ @property
+ def _installed_exe(self):
+ return join_path(self.prefix, 'bin', 'swig')
+
+ def _test_version(self):
+ version = str(self.version)
+ if version.endswith('-fortran'):
+ version = version.replace('-', r'\+')
+ elif version in ('fortran', 'master'):
+ version = r'.*'
+
+ self.run_test(self._installed_exe,
+ '-version',
+ expected=[r'SWIG Version {0}'.format(version)],
+ purpose="test: version")
+
+ def _test_swiglib(self):
+ # Get SWIG's alleged path to library files
+ swig = Executable(self._installed_exe)
+ swiglib = swig('-swiglib', output=str).strip()
+
+ # Check that the lib dir exists
+ if not os.path.isdir(swiglib):
+ msg = "SWIG library does not exist at '{0}'".format(swiglib)
+ self.test_failures.append([None, msg])
+
+ # Check for existence of other critical SWIG library files
+ swigfile = join_path(swiglib, 'swig.swg')
+ if not os.path.exists(swigfile):
+ msg = "SWIG runtime does not exist at '{0}'".format(swigfile)
+ self.test_failures.append([None, msg])
+ if 'fortran' in str(self.version):
+ swigfile = join_path(swiglib, 'fortran', 'fortran.swg')
+ if not os.path.exists(swigfile):
+ msg = "SWIG+Fortran runtime does not exist at '{0}'".format(
+ swigfile)
+ self.test_failures.append([None, msg])
+
+ def test(self):
+ self._test_version()
+ self._test_swiglib()
diff --git a/var/spack/repos/builtin/packages/swipl/package.py b/var/spack/repos/builtin/packages/swipl/package.py
index da3e161c2c..ffe2258eae 100644
--- a/var/spack/repos/builtin/packages/swipl/package.py
+++ b/var/spack/repos/builtin/packages/swipl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/symengine/package.py b/var/spack/repos/builtin/packages/symengine/package.py
index a9c866edb7..ac13bfd0fc 100644
--- a/var/spack/repos/builtin/packages/symengine/package.py
+++ b/var/spack/repos/builtin/packages/symengine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,11 +10,13 @@ import sys
class Symengine(CMakePackage):
"""SymEngine is a fast symbolic manipulation library, written in C++."""
- homepage = "https://github.com/symengine/symengine"
+ homepage = "https://symengine.org"
url = "https://github.com/symengine/symengine/archive/v0.2.0.tar.gz"
git = "https://github.com/symengine/symengine.git"
+ maintainers = ['HaoZeke']
version('master', branch='master')
+ version('0.7.0', sha256='8b865bb72b71539d9cd2488a0468c6c3ea90cc606062a7880c3ff5af6abd74b1')
version('0.6.0', sha256='4d2caa86c03eaaa8ed004084d02f87b5c51b6229f8ba70d161227e22d6302f0a')
version('0.5.0', sha256='5d02002f00d16a0928d1056e6ecb8f34fd59f3bfd8ed0009a55700334dbae29b')
version('0.4.0', sha256='dd755901a9e2a49e53ba3bbe3f565f94265af05299e57a7b592186dd35916a1b')
@@ -64,15 +66,11 @@ class Symengine(CMakePackage):
'-DWITH_SYMENGINE_RCP:BOOL=ON',
'-DWITH_SYMENGINE_THREAD_SAFE:BOOL=%s' % (
'ON' if ('+thread_safe' or '+openmp') in spec else 'OFF'),
- '-DBUILD_TESTS:BOOL=%s' % (
- 'ON' if self.run_tests else 'OFF'),
+ self.define('BUILD_TESTS', self.run_tests),
'-DBUILD_BENCHMARKS:BOOL=ON',
- '-DWITH_LLVM:BOOL=%s' % (
- 'ON' if '+llvm' in spec else 'OFF'),
- '-DWITH_OPENMP:BOOL=%s' % (
- 'ON' if '+openmp' in spec else 'OFF'),
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('WITH_LLVM', 'llvm'),
+ self.define_from_variant('WITH_OPENMP', 'openmp'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
])
if sys.platform == 'darwin':
@@ -89,10 +87,8 @@ class Symengine(CMakePackage):
])
else:
options.extend([
- '-DWITH_MPC:BOOL=%s' % (
- 'ON' if '+mpc' in spec else 'OFF'),
- '-DWITH_MPFR:BOOL=%s' % (
- 'ON' if '+mpfr' in spec else 'OFF'),
+ self.define_from_variant('WITH_MPC', 'mpc'),
+ self.define_from_variant('WITH_MPFR', 'mpfr'),
])
if '+flint' in spec:
options.extend([
diff --git a/var/spack/repos/builtin/packages/symlinks/package.py b/var/spack/repos/builtin/packages/symlinks/package.py
index f6e5ca4f2e..1893a3008f 100644
--- a/var/spack/repos/builtin/packages/symlinks/package.py
+++ b/var/spack/repos/builtin/packages/symlinks/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -9,13 +9,14 @@ from spack import *
class Symlinks(MakefilePackage):
"""Scan or change symbolic links."""
- homepage = "http://ibiblio.org/pub/Linux/utils/file"
- url = "http://ibiblio.org/pub/Linux/utils/file/symlinks-1.4.tar.gz"
+ homepage = "https://ibiblio.org/pub/Linux/utils/file"
+ url = "https://ibiblio.org/pub/Linux/utils/file/symlinks-1.4.tar.gz"
- version('1.4', sha256='4818a3be253b53f2547fe51349652c87301794fc2ff4e3104850301ffe9843a0')
+ version('1.4', sha256='b0bb689dd0a2c46d9a7dd111b053707aba7b9cf29c4f0bad32984b14bdbe0399')
def edit(self, spec, prefix):
filter_file('/usr/local', prefix, 'Makefile', string=True)
+ filter_file('-o root -g root', '', 'Makefile')
def install(self, spec, prefix):
mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin/packages/sympol/package.py b/var/spack/repos/builtin/packages/sympol/package.py
index 70e860953a..746c55ac8c 100644
--- a/var/spack/repos/builtin/packages/sympol/package.py
+++ b/var/spack/repos/builtin/packages/sympol/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sysbench/package.py b/var/spack/repos/builtin/packages/sysbench/package.py
index 062d4fcf9b..a5e248b9ba 100644
--- a/var/spack/repos/builtin/packages/sysbench/package.py
+++ b/var/spack/repos/builtin/packages/sysbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/syscalc/package.py b/var/spack/repos/builtin/packages/syscalc/package.py
index 86a4cf75b6..a3c41aae41 100644
--- a/var/spack/repos/builtin/packages/syscalc/package.py
+++ b/var/spack/repos/builtin/packages/syscalc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,7 +13,10 @@ class Syscalc(MakefilePackage):
url = "https://bazaar.launchpad.net/~mgtools/mg5amcnlo/SysCalc/tarball/17"
version('1.1.7', sha256='ac73df0f9f195eb62601fafc2eede3db17a562750f7971616870d6df4abd1b6c',
- url='https://bazaar.launchpad.net/~mgtools/mg5amcnlo/SysCalc/tarball/17')
+ url='https://bazaar.launchpad.net/~mgtools/mg5amcnlo/SysCalc/tarball/17',
+ extension='.tgz')
+
+ tags = ['hep']
depends_on('lhapdf@6:')
@@ -24,7 +27,12 @@ class Syscalc(MakefilePackage):
url = url.format(version)
return url
+ def build(self, spec, prefix):
+ with working_dir('mg5amcnlo/SysCalc'):
+ make('all')
+
def install(self, spec, prefix):
mkdirp(prefix.bin)
- install('sys_calc', prefix.bin)
- install_tree('include', prefix.include)
+ with working_dir('mg5amcnlo/SysCalc'):
+ install('sys_calc', prefix.bin)
+ install_tree('include', prefix.include)
diff --git a/var/spack/repos/builtin/packages/sysfsutils/package.py b/var/spack/repos/builtin/packages/sysfsutils/package.py
index 515294cdab..4c4f6df9a7 100644
--- a/var/spack/repos/builtin/packages/sysfsutils/package.py
+++ b/var/spack/repos/builtin/packages/sysfsutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sysget/package.py b/var/spack/repos/builtin/packages/sysget/package.py
index d2af862f53..b73a9341c5 100644
--- a/var/spack/repos/builtin/packages/sysget/package.py
+++ b/var/spack/repos/builtin/packages/sysget/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/sysstat/package.py b/var/spack/repos/builtin/packages/sysstat/package.py
index 4d6ec48bc2..e66fb0580b 100644
--- a/var/spack/repos/builtin/packages/sysstat/package.py
+++ b/var/spack/repos/builtin/packages/sysstat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/systemtap/package.py b/var/spack/repos/builtin/packages/systemtap/package.py
index 00491e8dc4..72cb6cd24f 100644
--- a/var/spack/repos/builtin/packages/systemtap/package.py
+++ b/var/spack/repos/builtin/packages/systemtap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,7 +23,10 @@ class Systemtap(AutotoolsPackage):
version('4.1', sha256='8efa1ee2b34f1c6b2f33a25313287d59c8ed1b00265e900aea874da8baca1e1d')
depends_on('gettext')
- depends_on('elfutils')
+ depends_on('elfutils@0.151:')
+ depends_on('sqlite')
+ depends_on('py-setuptools', type='build')
+ depends_on('python', type=('build', 'run'))
def configure_args(self):
args = ['LDFLAGS=-lintl']
diff --git a/var/spack/repos/builtin/packages/sz/package.py b/var/spack/repos/builtin/packages/sz/package.py
index c9cb86604f..e90c4f5bbf 100644
--- a/var/spack/repos/builtin/packages/sz/package.py
+++ b/var/spack/repos/builtin/packages/sz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,7 @@ class Sz(CMakePackage):
return url.format(version)
version('master', branch='master')
+ version('2.1.11.1', sha256='e6fa5c969b012782b1e5e9fbd1cd7d1c0ace908d9ec982e78b2910ec5c2161ac')
version('2.1.11', sha256='85b8ef99344a3317ba9ee63ca4b9d99a51d1832d4d8880e01c7c56b3a69cacc9')
version('2.1.10', sha256='3aba7619bdb5412218f162696f946c9d3a3df5acf128ddc685b21e45c11f6ae3',
url="https://github.com/szcompressor/SZ/releases/download/v2.1.10/sz-2.1.10.tar.gz")
diff --git a/var/spack/repos/builtin/packages/tabix/package.py b/var/spack/repos/builtin/packages/tabix/package.py
index 2e358da82d..1d729a019e 100644
--- a/var/spack/repos/builtin/packages/tabix/package.py
+++ b/var/spack/repos/builtin/packages/tabix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tajo/package.py b/var/spack/repos/builtin/packages/tajo/package.py
index 5fb12d6bd3..0c4be5927e 100644
--- a/var/spack/repos/builtin/packages/tajo/package.py
+++ b/var/spack/repos/builtin/packages/tajo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/talass/package.py b/var/spack/repos/builtin/packages/talass/package.py
index 4633eb9cf5..b7a0315472 100644
--- a/var/spack/repos/builtin/packages/talass/package.py
+++ b/var/spack/repos/builtin/packages/talass/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -35,9 +35,10 @@ class Talass(CMakePackage):
args = []
if int(variants['local'].value) > int(variants['global'].value):
- raise InstallError('The global index space (%d bits) must be at least as large\
- as the local index space (% bits)' % (variants['global'].value,
- variants['local'].value))
+ msg = ('The global index space (%d bits) must be at least as '
+ 'large as the local index space (% bits)')
+ raise InstallError(
+ msg % (variants['global'].value, variants['local'].value))
if variants['precision'].value == '32':
args.append('-DFUNCTION_TYPE=float')
diff --git a/var/spack/repos/builtin/packages/talloc/package.py b/var/spack/repos/builtin/packages/talloc/package.py
index df28b55527..dd05b19f3f 100644
--- a/var/spack/repos/builtin/packages/talloc/package.py
+++ b/var/spack/repos/builtin/packages/talloc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tangram/package.py b/var/spack/repos/builtin/packages/tangram/package.py
index 6f65dba55f..265cc11574 100644
--- a/var/spack/repos/builtin/packages/tangram/package.py
+++ b/var/spack/repos/builtin/packages/tangram/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,10 +14,11 @@ class Tangram(CMakePackage):
homepage = "https://portage.lanl.gov"
git = "https://github.com/laristra/tangram.git"
- url = "https://github.com/laristra/tangram/releases/download/1.0.1/tangram-1.0.1.tar.gz"
+ url = "https://github.com/laristra/tangram/releases/download/1.0.5/tangram-1.0.5.tar.gz"
maintainers = ['raovgarimella']
+ version('1.0.5', sha256='4fa61d5fecd67215237ab3df8fe64bc6c4d018b22313f2174923486026e93e53')
version('1.0.1', sha256='8f2f8c01bb2d726b0f64e5a5bc3aa2bd8057ccaee7a29c68f1439d16e39aaa90')
version('master', branch='master', submodules=True)
@@ -54,7 +55,6 @@ class Tangram(CMakePackage):
depends_on('wonton+kokkos', when='+kokkos')
depends_on('wonton+cuda', when='+cuda')
depends_on('wonton+openmp', when='+openmp')
- depends_on('wonton+cuda', when='+cuda')
def cmake_args(self):
options = []
diff --git a/var/spack/repos/builtin/packages/tantan/package.py b/var/spack/repos/builtin/packages/tantan/package.py
index d9a8847635..c24550a532 100644
--- a/var/spack/repos/builtin/packages/tantan/package.py
+++ b/var/spack/repos/builtin/packages/tantan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tar/nvhpc.patch b/var/spack/repos/builtin/packages/tar/nvhpc-1.30.patch
index ecd56b72e1..ecd56b72e1 100644
--- a/var/spack/repos/builtin/packages/tar/nvhpc.patch
+++ b/var/spack/repos/builtin/packages/tar/nvhpc-1.30.patch
diff --git a/var/spack/repos/builtin/packages/tar/nvhpc-1.34.patch b/var/spack/repos/builtin/packages/tar/nvhpc-1.34.patch
new file mode 100644
index 0000000000..9f8d037d3c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tar/nvhpc-1.34.patch
@@ -0,0 +1,35 @@
+--- a/gnu/xalloc-oversized.h
++++ b/gnu/xalloc-oversized.h
+@@ -41,10 +41,10 @@
+ positive and N must be nonnegative. This is a macro, not a
+ function, so that it works correctly even when SIZE_MAX < N. */
+
+-#if 7 <= __GNUC__ && !defined __clang__
++#if 7 <= __GNUC__ && !defined __clang__ && !defined __NVCOMPILER
+ # define xalloc_oversized(n, s) \
+ __builtin_mul_overflow_p (n, s, (__xalloc_count_type) 1)
+-#elif 5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__
++#elif 5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__ && !defined __NVCOMPILER
+ # define xalloc_oversized(n, s) \
+ (__builtin_constant_p (n) && __builtin_constant_p (s) \
+ ? __xalloc_oversized (n, s) \
+--- a/gnu/intprops.h
++++ b/gnu/intprops.h
+@@ -228,7 +228,7 @@
+ (A, B, P) work when P is non-null. */
+ /* __builtin_{add,sub}_overflow exists but is not reliable in GCC 5.x and 6.x,
+ see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98269>. */
+-#if 7 <= __GNUC__ && !defined __ICC
++#if 7 <= __GNUC__ && !defined __ICC && !defined __NVCOMPILER
+ # define _GL_HAS_BUILTIN_ADD_OVERFLOW 1
+ #elif defined __has_builtin
+ # define _GL_HAS_BUILTIN_ADD_OVERFLOW __has_builtin (__builtin_add_overflow)
+@@ -246,7 +246,7 @@
+
+ /* True if __builtin_add_overflow_p (A, B, C) works, and similarly for
+ __builtin_sub_overflow_p and __builtin_mul_overflow_p. */
+-#if defined __clang__ || defined __ICC
++#if defined __clang__ || defined __ICC || defined __NVCOMPILER
+ /* Clang 11 lacks __builtin_mul_overflow_p, and even if it did it
+ would presumably run afoul of Clang bug 16404. ICC 2021.1's
+ __builtin_add_overflow_p etc. are not treated as integral constant
diff --git a/var/spack/repos/builtin/packages/tar/nvhpc-long-width.patch b/var/spack/repos/builtin/packages/tar/nvhpc-long-width.patch
new file mode 100644
index 0000000000..9e7378a2f4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tar/nvhpc-long-width.patch
@@ -0,0 +1,17 @@
+--- a/gnu/regex_internal.h 2020-08-21 09:14:20.039942370 -0700
++++ b/gnu/regex_internal.h 2020-08-21 10:06:57.840331452 -0700
+@@ -35,6 +35,14 @@
+ #include <intprops.h>
+ #include <verify.h>
+
++#ifndef __LONG_WIDTH__
++#if LONG_WIDTH
++#define __LONG_WIDTH__ LONG_WIDTH
++#else
++#define __LONG_WIDTH__ __WORDSIZE
++#endif
++#endif
++
+ #if defined DEBUG && DEBUG != 0
+ # include <assert.h>
+ # define DEBUG_ASSERT(x) assert (x)
diff --git a/var/spack/repos/builtin/packages/tar/package.py b/var/spack/repos/builtin/packages/tar/package.py
index 156476ccd4..58e4de1877 100644
--- a/var/spack/repos/builtin/packages/tar/package.py
+++ b/var/spack/repos/builtin/packages/tar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class Tar(AutotoolsPackage, GNUMirrorPackage):
executables = [r'^tar$']
+ version('1.34', sha256='03d908cf5768cfe6b7ad588c921c6ed21acabfb2b79b788d1330453507647aed')
version('1.32', sha256='b59549594d91d84ee00c99cf2541a3330fed3a42c440503326dab767f2fbb96c')
version('1.31', sha256='b471be6cb68fd13c4878297d856aebd50551646f4e3074906b1a74549c40d5a2')
version('1.30', sha256='4725cc2c2f5a274b12b39d1f78b3545ec9ebb06a6e48e8845e1995ac8513b088')
@@ -30,7 +31,12 @@ class Tar(AutotoolsPackage, GNUMirrorPackage):
patch('se-selinux.patch', when='@:1.29')
patch('argp-pgi.patch', when='@:1.29')
patch('gnutar-configure-xattrs.patch', when='@1.28')
- patch('nvhpc.patch', when='%nvhpc')
+ # The NVIDIA compilers do not currently support some GNU builtins.
+ # Detect this case and use the fallback path.
+ patch('nvhpc-1.30.patch', when='@1.30:1.32 %nvhpc')
+ patch('nvhpc-1.34.patch', when='@1.34 %nvhpc')
+ # Workaround bug where __LONG_WIDTH__ is not defined
+ patch('nvhpc-long-width.patch', when='@1.34 %nvhpc')
@classmethod
def determine_version(cls, exe):
diff --git a/var/spack/repos/builtin/packages/targetp/package.py b/var/spack/repos/builtin/packages/targetp/package.py
index 7d691f2fc7..06a1f77ef6 100644
--- a/var/spack/repos/builtin/packages/targetp/package.py
+++ b/var/spack/repos/builtin/packages/targetp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/task/package.py b/var/spack/repos/builtin/packages/task/package.py
index 4d1d54565c..52d0713669 100644
--- a/var/spack/repos/builtin/packages/task/package.py
+++ b/var/spack/repos/builtin/packages/task/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,6 @@ class Task(CMakePackage):
depends_on('cmake@2.8:', type='build')
depends_on('gnutls')
- depends_on('libuuid')
+ depends_on('uuid')
conflicts('%gcc@:4.7')
diff --git a/var/spack/repos/builtin/packages/taskd/package.py b/var/spack/repos/builtin/packages/taskd/package.py
index 1456d4cabb..6f906e70ff 100644
--- a/var/spack/repos/builtin/packages/taskd/package.py
+++ b/var/spack/repos/builtin/packages/taskd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class Taskd(CMakePackage):
version('1.1.0', sha256='7b8488e687971ae56729ff4e2e5209ff8806cf8cd57718bfd7e521be130621b4')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('gnutls')
depends_on('cmake@2.8:', type='build')
diff --git a/var/spack/repos/builtin/packages/taskflow/package.py b/var/spack/repos/builtin/packages/taskflow/package.py
index 5ebc0434da..53862cc6ab 100644
--- a/var/spack/repos/builtin/packages/taskflow/package.py
+++ b/var/spack/repos/builtin/packages/taskflow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tasmanian/package.py b/var/spack/repos/builtin/packages/tasmanian/package.py
index a4aa94056a..d11a973a06 100644
--- a/var/spack/repos/builtin/packages/tasmanian/package.py
+++ b/var/spack/repos/builtin/packages/tasmanian/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,19 +6,20 @@
from spack import *
-class Tasmanian(CMakePackage):
+class Tasmanian(CMakePackage, CudaPackage, ROCmPackage):
"""The Toolkit for Adaptive Stochastic Modeling and Non-Intrusive
ApproximatioN is a robust library for high dimensional integration and
interpolation as well as parameter calibration."""
homepage = 'http://tasmanian.ornl.gov'
- url = 'https://github.com/ORNL/TASMANIAN/archive/v7.1.tar.gz'
+ url = 'https://github.com/ORNL/TASMANIAN/archive/v7.5.tar.gz'
git = 'https://github.com/ORNL/TASMANIAN.git'
maintainers = ['mkstoyanov']
version('develop', branch='master')
+ version('7.5', sha256='d621bd36dced4db86ef638693ba89b336762e7a3d7fedb3b5bcefb03390712b3')
version('7.3', sha256='5bd1dd89cc5c84506f6900b6569b17e50becd73eb31ec85cfa11d6f1f912c4fa')
version('7.1', sha256='9c24a591506a478745b802f1fa5c557da7bc80b12d8070855de6bc7aaca7547a')
version('7.0', sha256='4094ba4ee2f1831c575d00368c8471d3038f813398be2e500739cef5c7c4a47b') # use for xsdk-0.5.0
@@ -44,6 +45,9 @@ class Tasmanian(CMakePackage):
variant('cuda', default=False,
description='add CUDA support to Tasmanian')
+ variant('rocm', default=False,
+ description='add ROCm support to Tasmanian')
+
variant('magma', default=False,
description='add UTK MAGMA support to Tasmanian')
@@ -74,12 +78,19 @@ class Tasmanian(CMakePackage):
depends_on('cuda@8.0.61:', when='+cuda', type=('build', 'run'))
depends_on('cuda@8.0.61:', when='+magma', type=('build', 'run'))
+ depends_on('hip@3.8:', when='+rocm', type=('build', 'run'))
+ depends_on('rocblas@3.8:', when='+rocm', type=('build', 'run'))
+ depends_on('rocsparse@3.8:', when='+rocm', type=('build', 'run'))
+ depends_on('rocsolver@3.8:', when='+rocm', type=('build', 'run'))
+
depends_on('magma@2.4.0:', when='+magma @6.0:', type=('build', 'run'))
depends_on('magma@2.5.0:', when='+magma @7.0:', type=('build', 'run'))
conflicts('-cuda', when='+magma') # currently MAGMA only works with CUDA
+ conflicts('+cuda', when='+rocm') # can pick CUDA or ROCm, not both
# old versions
+ conflicts('+rocm', when='@:7.3') # ROCm was added in 7.3, tested in 7.5
conflicts('+magma', when='@:5.1') # magma does not work prior to 6.0
conflicts('+mpi', when='@:5.1') # MPI is broken prior to 6.0
conflicts('+xsdkflags', when='@:5.1') # 6.0 is the first version included in xSDK
@@ -88,6 +99,11 @@ class Tasmanian(CMakePackage):
patch('addons70.patch', when='@7.0')
patch('packageconf70.patch', when='@7.0')
+ def setup_build_environment(self, env):
+ # needed for the hipcc compiler
+ if "+rocm" in self.spec:
+ env.set('CXX', self.spec['hip'].hipcc)
+
def cmake_args(self):
spec = self.spec
@@ -95,20 +111,13 @@ class Tasmanian(CMakePackage):
if '+xsdkflags' in spec and spec.satisfies('@:7.1'):
args = [
'-DUSE_XSDK_DEFAULTS:BOOL=ON',
- '-DXSDK_ENABLE_PYTHON:BOOL={0}'.format(
- 'ON' if '+python' in spec else 'OFF'),
- '-DTPL_ENABLE_MPI:BOOL={0}'.format(
- 'ON' if '+mpi' in spec else 'OFF'),
- '-DXSDK_ENABLE_OPENMP:BOOL={0}'.format(
- 'ON' if '+openmp' in spec else 'OFF'),
- '-DTPL_ENABLE_BLAS:BOOL={0}'.format(
- 'ON' if '+blas' in spec else 'OFF'),
- '-DXSDK_ENABLE_CUDA:BOOL={0}'.format(
- 'ON' if '+cuda' in spec else 'OFF'),
- '-DTPL_ENABLE_MAGMA:BOOL={0}'.format(
- 'ON' if '+magma' in spec else 'OFF'),
- '-DXSDK_ENABLE_FORTRAN:BOOL={0}'.format(
- 'ON' if '+fortran' in spec else 'OFF'), ]
+ self.define_from_variant('XSDK_ENABLE_PYTHON', 'python'),
+ self.define_from_variant('TPL_ENABLE_MPI', 'mpi'),
+ self.define_from_variant('XSDK_ENABLE_OPENMP', 'openmp'),
+ self.define_from_variant('TPL_ENABLE_BLAS', 'blas'),
+ self.define_from_variant('XSDK_ENABLE_CUDA', 'cuda'),
+ self.define_from_variant('TPL_ENABLE_MAGMA', 'magma'),
+ self.define_from_variant('XSDK_ENABLE_FORTRAN', 'fortran'), ]
else:
args = [
self.define_from_variant('Tasmanian_ENABLE_OPENMP', 'openmp'),
@@ -116,10 +125,17 @@ class Tasmanian(CMakePackage):
self.define_from_variant('Tasmanian_ENABLE_PYTHON', 'python'),
self.define_from_variant('Tasmanian_ENABLE_MPI', 'mpi'),
self.define_from_variant('Tasmanian_ENABLE_CUDA', 'cuda'),
+ self.define_from_variant('Tasmanian_ENABLE_HIP', 'rocm'),
self.define_from_variant('Tasmanian_ENABLE_MAGMA', 'magma'),
self.define_from_variant('Tasmanian_ENABLE_FORTRAN',
'fortran'), ]
+ if spec.satisfies('+blas'):
+ args.append('-DBLAS_LIBRARIES={0}'.format(spec['blas'].libs.joined(';')))
+ args.append(
+ '-DLAPACK_LIBRARIES={0}'.format(spec['lapack'].libs.joined(';'))
+ )
+
if spec.satisfies('+python'):
args.append('-DPYTHON_EXECUTABLE:FILEPATH={0}'.format(
self.spec['python'].command.path))
@@ -127,7 +143,6 @@ class Tasmanian(CMakePackage):
# _CUBLAS and _CUDA were separate options prior to 6.0
# skipping _CUBLAS leads to peformance regression
if spec.satisfies('@:5.1'):
- args.append('-DTasmanian_ENABLE_CUBLAS={0}'.format(
- 'ON' if '+cuda' in spec else 'OFF'))
+ args.append(self.define_from_variant('Tasmanian_ENABLE_CUBLAS', 'cuda'))
return args
diff --git a/var/spack/repos/builtin/packages/tassel/package.py b/var/spack/repos/builtin/packages/tassel/package.py
index 7de1648af4..1b51edbc0e 100644
--- a/var/spack/repos/builtin/packages/tassel/package.py
+++ b/var/spack/repos/builtin/packages/tassel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tau/package.py b/var/spack/repos/builtin/packages/tau/package.py
index 331f88861c..808d0837a3 100644
--- a/var/spack/repos/builtin/packages/tau/package.py
+++ b/var/spack/repos/builtin/packages/tau/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,6 +24,7 @@ class Tau(Package):
git = "https://github.com/UO-OACISS/tau2"
version('master', branch='master')
+ version('2.30.1', sha256='9c20ca1b4f4e80d885f24491cee598068871f0e9dd67906a5e47e4b4147d08fc')
version('2.30', sha256='e581c33e21488d69839a00d97fd4451ea579f47249b2750d5c36bea773041eaf')
version('2.29.1', sha256='4195a0a236bba510ab50a93e13c7f00d9472e8bc46c91de3f0696112a34e34e2')
version('2.29', sha256='146be769a23c869a7935e8fa5ba79f40ba36b9057a96dda3be6730fc9ca86086')
@@ -56,7 +57,7 @@ class Tau(Package):
variant('papi', default=darwin_default, description='Activates Performance API')
variant('binutils', default=True, description='Activates support of BFD GNU Binutils')
variant('libdwarf', default=darwin_default, description='Activates support of libdwarf')
- variant('libelf', default=darwin_default, description='Activates support of libelf')
+ variant('elf', default=darwin_default, description='Activates support of elf')
variant('libunwind', default=darwin_default, description='Activates support of libunwind')
variant('otf2', default=True, description='Activates support of Open Trace Format (OTF)')
variant('pdt', default=True, description='Use PDT for source code instrumentation')
@@ -92,9 +93,9 @@ class Tau(Package):
depends_on('likwid', when='+likwid')
depends_on('papi', when='+papi')
depends_on('libdwarf', when='+libdwarf')
- depends_on('libelf', when='+libdwarf')
+ depends_on('elf', when='+elf')
# TAU requires the ELF header support, libiberty and demangle.
- depends_on('binutils@:2.33.1+libiberty+headers', when='+binutils')
+ depends_on('binutils@:2.33.1+libiberty+headers+plugins', when='+binutils')
depends_on('python@2.7:', when='+python')
depends_on('libunwind', when='+libunwind')
depends_on('mpi', when='+mpi', type=('build', 'run', 'link'))
@@ -105,7 +106,7 @@ class Tau(Package):
depends_on('hwloc')
# Elf only required from 2.28.1 on
- conflicts('+libelf', when='@:2.28.0')
+ conflicts('+elf', when='@:2.28.0')
conflicts('+libdwarf', when='@:2.28.0')
# ADIOS2, SQLite only available from 2.29.1 on
@@ -134,8 +135,8 @@ class Tau(Package):
compiler_path = os.path.dirname(self.compiler.cc)
os.environ['PATH'] = ':'.join([compiler_path, os.environ['PATH']])
- compiler_options = ['-c++=%s' % os.path.basename(self.compiler.cxx),
- '-cc=%s' % os.path.basename(self.compiler.cc)]
+ compiler_options = ['-c++=%s' % self.compiler.cxx_names[0],
+ '-cc=%s' % self.compiler.cc_names[0]]
if '+fortran' in spec and self.compiler.fc:
compiler_options.append('-fortran=%s' % self.compiler.fc_names[0])
@@ -178,6 +179,8 @@ class Tau(Package):
if '+pdt' in spec:
options.append("-pdt=%s" % spec['pdt'].prefix)
+ if spec['pdt'].satisfies("%intel"):
+ options.append("-pdt_c++=icpc")
if '+scorep' in spec:
options.append("-scorep=%s" % spec['scorep'].prefix)
@@ -209,8 +212,8 @@ class Tau(Package):
if '+libdwarf' in spec:
options.append("-dwarf=%s" % spec['libdwarf'].prefix)
- if '+libelf' in spec:
- options.append("-elf=%s" % spec['libelf'].prefix)
+ if '+elf' in spec:
+ options.append("-elf=%s" % spec['elf'].prefix)
if '+libunwind' in spec:
options.append("-unwind=%s" % spec['libunwind'].prefix)
@@ -223,6 +226,8 @@ class Tau(Package):
env['CXX'] = spec['mpi'].mpicxx
env['F77'] = spec['mpi'].mpif77
env['FC'] = spec['mpi'].mpifc
+ options.append("-mpiinc=%s" % spec['mpi'].prefix.include)
+ options.append("-mpilib=%s" % spec['mpi'].prefix.lib)
options.append('-mpi')
if '+comm' in spec:
diff --git a/var/spack/repos/builtin/packages/tauola/package.py b/var/spack/repos/builtin/packages/tauola/package.py
index e850ce4dcc..5122aef89b 100644
--- a/var/spack/repos/builtin/packages/tauola/package.py
+++ b/var/spack/repos/builtin/packages/tauola/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,15 +12,39 @@ class Tauola(AutotoolsPackage):
homepage = "https://tauolapp.web.cern.ch/tauolapp/"
url = "https://tauolapp.web.cern.ch/tauolapp/resources/TAUOLA.1.1.8/TAUOLA.1.1.8-LHC.tar.gz"
+ tags = ['hep']
+
version('1.1.8', sha256='3f734e8a967682869cca2c1ffebd3e055562613c40853cc81820d8b666805ed5')
+ variant('hepmc', default=True, description="Enable hepmc 2.x support")
+ variant('hepmc3', default=False, description="Enable hepmc3 support")
+ variant('lhapdf', default=False, description="Enable lhapdf support")
+ variant('cxxstd',
+ default='11',
+ values=('11', '14', '17', '20'),
+ multi=False,
+ description='Use the specified C++ standard when building.')
+
maintainers = ['vvolkl']
- depends_on('hepmc@:2.99.99')
+ depends_on('hepmc', when='+hepmc')
+ depends_on('hepmc3', when='+hepmc3')
+ depends_on('lhapdf', when='+lhapdf')
+
+ def flag_handler(self, name, flags):
+ if name == 'cflags':
+ flags.append('-O2')
+ elif name == 'cxxflags':
+ flags.append('-O2')
+ flags.append('-std=c++{0}'.format(self.spec.variants['cxxstd'].value))
+ elif name == 'fflags':
+ flags.append('-O2')
+ return (None, None, flags)
def configure_args(self):
- args = []
+ args = ['--with-pic']
- args.append('--with-hepmc=%s' % self.spec["hepmc"].prefix)
- args.append('--without-hepmc3')
+ args.extend(self.with_or_without('hepmc', 'prefix'))
+ args.extend(self.with_or_without('hepmc3', 'prefix'))
+ args.extend(self.with_or_without('lhapdf', 'prefix'))
return args
diff --git a/var/spack/repos/builtin/packages/tbl2asn/package.py b/var/spack/repos/builtin/packages/tbl2asn/package.py
index 8f1c0ba74c..5785f5ed61 100644
--- a/var/spack/repos/builtin/packages/tbl2asn/package.py
+++ b/var/spack/repos/builtin/packages/tbl2asn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tcl-itcl/package.py b/var/spack/repos/builtin/packages/tcl-itcl/package.py
index c39e18df8e..d0bdba2862 100644
--- a/var/spack/repos/builtin/packages/tcl-itcl/package.py
+++ b/var/spack/repos/builtin/packages/tcl-itcl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tcl-tcllib/package.py b/var/spack/repos/builtin/packages/tcl-tcllib/package.py
index 4f372e7aa3..864395a502 100644
--- a/var/spack/repos/builtin/packages/tcl-tcllib/package.py
+++ b/var/spack/repos/builtin/packages/tcl-tcllib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tcl-tclxml/package.py b/var/spack/repos/builtin/packages/tcl-tclxml/package.py
index eb70996f11..72c09e2ddd 100644
--- a/var/spack/repos/builtin/packages/tcl-tclxml/package.py
+++ b/var/spack/repos/builtin/packages/tcl-tclxml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tcl/package.py b/var/spack/repos/builtin/packages/tcl/package.py
index 05cd896435..5d82bb7eef 100644
--- a/var/spack/repos/builtin/packages/tcl/package.py
+++ b/var/spack/repos/builtin/packages/tcl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,9 @@ class Tcl(AutotoolsPackage, SourceforgePackage):
that is truly cross platform, easily deployed and highly
extensible."""
homepage = "http://www.tcl.tk"
- sourceforge_mirror_path = "tcl/tcl8.6.5-src.tar.gz"
+ sourceforge_mirror_path = "tcl/tcl8.6.11-src.tar.gz"
+ version('8.6.11', sha256='8c0486668586672c5693d7d95817cb05a18c5ecca2f40e2836b9578064088258')
version('8.6.10', sha256='5196dbf6638e3df8d5c87b5815c8c2b758496eb6f0e41446596c9a4e638d87ed')
version('8.6.8', sha256='c43cb0c1518ce42b00e7c8f6eaddd5195c53a98f94adc717234a65cbcfd3f96a')
version('8.6.6', sha256='a265409781e4b3edcc4ef822533071b34c3dc6790b893963809b9fe221befe07')
diff --git a/var/spack/repos/builtin/packages/tclap/package.py b/var/spack/repos/builtin/packages/tclap/package.py
index f8d8ce800d..5599fd469b 100644
--- a/var/spack/repos/builtin/packages/tclap/package.py
+++ b/var/spack/repos/builtin/packages/tclap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tcoffee/package.py b/var/spack/repos/builtin/packages/tcoffee/package.py
index 36cf8a6389..49c2c11d47 100644
--- a/var/spack/repos/builtin/packages/tcoffee/package.py
+++ b/var/spack/repos/builtin/packages/tcoffee/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tcpdump/package.py b/var/spack/repos/builtin/packages/tcpdump/package.py
index 53507d5bda..78602def11 100644
--- a/var/spack/repos/builtin/packages/tcpdump/package.py
+++ b/var/spack/repos/builtin/packages/tcpdump/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,8 +16,10 @@ class Tcpdump(AutotoolsPackage):
homepage = "https://www.tcpdump.org/"
url = "https://www.tcpdump.org/release/tcpdump-4.9.3.tar.gz"
- version('4.9.3', sha256='2cd47cb3d460b6ff75f4a9940f594317ad456cfbf2bd2c8e5151e16559db6410')
- version('4.9.2', sha256='798b3536a29832ce0cbb07fafb1ce5097c95e308a6f592d14052e1ef1505fe79')
- version('4.9.1', sha256='f9448cf4deb2049acf713655c736342662e652ef40dbe0a8f6f8d5b9ce5bd8f3')
+ version('4.99.0', sha256='8cf2f17a9528774a7b41060323be8b73f76024f7778f59c34efa65d49d80b842')
+ version('4.9.3', sha256='2cd47cb3d460b6ff75f4a9940f594317ad456cfbf2bd2c8e5151e16559db6410')
+ version('4.9.2', sha256='798b3536a29832ce0cbb07fafb1ce5097c95e308a6f592d14052e1ef1505fe79')
+ version('4.9.1', sha256='f9448cf4deb2049acf713655c736342662e652ef40dbe0a8f6f8d5b9ce5bd8f3')
depends_on('libpcap')
+ depends_on('libpcap@1.10.0:', when='@4.99.0:')
diff --git a/var/spack/repos/builtin/packages/tcptrace/package.py b/var/spack/repos/builtin/packages/tcptrace/package.py
index b2e41e8d26..4122021ad5 100644
--- a/var/spack/repos/builtin/packages/tcptrace/package.py
+++ b/var/spack/repos/builtin/packages/tcptrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tcsh/package.py b/var/spack/repos/builtin/packages/tcsh/package.py
index 7cdd8bb412..e718e4d734 100644
--- a/var/spack/repos/builtin/packages/tcsh/package.py
+++ b/var/spack/repos/builtin/packages/tcsh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tdengine/package.py b/var/spack/repos/builtin/packages/tdengine/package.py
index 4a31e8a4ab..b17e7cd3ed 100644
--- a/var/spack/repos/builtin/packages/tdengine/package.py
+++ b/var/spack/repos/builtin/packages/tdengine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tealeaf/package.py b/var/spack/repos/builtin/packages/tealeaf/package.py
index 807d9565fe..a25c605034 100644
--- a/var/spack/repos/builtin/packages/tealeaf/package.py
+++ b/var/spack/repos/builtin/packages/tealeaf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/teckit/package.py b/var/spack/repos/builtin/packages/teckit/package.py
index f8ac04816a..e01e0100c3 100644
--- a/var/spack/repos/builtin/packages/teckit/package.py
+++ b/var/spack/repos/builtin/packages/teckit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tecplot/package.py b/var/spack/repos/builtin/packages/tecplot/package.py
index d741cb7df7..5f5a66db2f 100644
--- a/var/spack/repos/builtin/packages/tecplot/package.py
+++ b/var/spack/repos/builtin/packages/tecplot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tempestremap/package.py b/var/spack/repos/builtin/packages/tempestremap/package.py
new file mode 100644
index 0000000000..7704e00d5e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tempestremap/package.py
@@ -0,0 +1,45 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Tempestremap(AutotoolsPackage):
+ """ TempestRemap is a conservative, consistent and monotone remapping
+ package for arbitrary grid geometry with support for finite volumes
+ and finite elements.
+
+ There is still quite a bit of work to be done, but any feedback is
+ appreciated on the software in its current form
+ """
+
+ homepage = "https://github.com/ClimateGlobalChange/tempestremap"
+ url = "https://github.com/ClimateGlobalChange/tempestremap/archive/v2.0.5.tar.gz"
+
+ maintainers = ['iulian787', 'vijaysm', 'paullric']
+
+ version('2.0.5', sha256='8618f5cbde450922efa1d77e67b062c557788b0cf4304adca30237afe3ade887')
+ version('2.0.4', sha256='8349eeb604e97b13d2ecde8626a69e579a7af70ad0e8a6925a8bb4306a4963a4')
+ version('2.0.3', sha256='b4578c2cb101ba091a10dc914e15ac968257f5db27ca78bc9fb5dbd70bce191f')
+ version('2.0.2', sha256='2347bf804d19d515cb630a76b87e6dc6edcc1a828ff8c0f2a8a28e77794bad13')
+ version('2.0.1', sha256='a3f1bef8cc413a689d429ac56f2bcc2e1d282d99797c3375233de792a7448ece')
+ version('2.0.0', sha256='5850e251a4ad04fc924452f49183e5e12c38725832a568e57fa424a844b8a000')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('netcdf-c')
+ depends_on('blas')
+ depends_on('lapack')
+
+ def configure_args(self):
+ spec = self.spec
+ options = []
+ options.append('--with-netcdf=%s' % spec['netcdf-c'].prefix)
+ options.append('--with-blas=%s' % spec['blas'].libs.ld_flags)
+ options.append('--with-lapack=%s' % spec['lapack'].libs.ld_flags)
+ return options
diff --git a/var/spack/repos/builtin/packages/templight-tools/package.py b/var/spack/repos/builtin/packages/templight-tools/package.py
index debc9e82ce..1fd53d112e 100644
--- a/var/spack/repos/builtin/packages/templight-tools/package.py
+++ b/var/spack/repos/builtin/packages/templight-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/templight/package.py b/var/spack/repos/builtin/packages/templight/package.py
index 371999266d..a24ee96efc 100644
--- a/var/spack/repos/builtin/packages/templight/package.py
+++ b/var/spack/repos/builtin/packages/templight/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tengine/package.py b/var/spack/repos/builtin/packages/tengine/package.py
index 4296c18758..e7cf6f03a3 100644
--- a/var/spack/repos/builtin/packages/tengine/package.py
+++ b/var/spack/repos/builtin/packages/tengine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tensorflow-serving-client/package.py b/var/spack/repos/builtin/packages/tensorflow-serving-client/package.py
index 58976df975..710c9440bd 100644
--- a/var/spack/repos/builtin/packages/tensorflow-serving-client/package.py
+++ b/var/spack/repos/builtin/packages/tensorflow-serving-client/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/termcap/package.py b/var/spack/repos/builtin/packages/termcap/package.py
index b873f2969a..cdacf46938 100644
--- a/var/spack/repos/builtin/packages/termcap/package.py
+++ b/var/spack/repos/builtin/packages/termcap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tesseract/package.py b/var/spack/repos/builtin/packages/tesseract/package.py
index a03be72f4e..165ccc2d07 100644
--- a/var/spack/repos/builtin/packages/tesseract/package.py
+++ b/var/spack/repos/builtin/packages/tesseract/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/testdfsio/package.py b/var/spack/repos/builtin/packages/testdfsio/package.py
index 27b96a3015..9d83f0f610 100644
--- a/var/spack/repos/builtin/packages/testdfsio/package.py
+++ b/var/spack/repos/builtin/packages/testdfsio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tetgen/package.py b/var/spack/repos/builtin/packages/tetgen/package.py
index 6d434c6e14..d7b5fcfd5e 100644
--- a/var/spack/repos/builtin/packages/tetgen/package.py
+++ b/var/spack/repos/builtin/packages/tetgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tethex/package.py b/var/spack/repos/builtin/packages/tethex/package.py
index 88c3412b66..0ac1857b63 100644
--- a/var/spack/repos/builtin/packages/tethex/package.py
+++ b/var/spack/repos/builtin/packages/tethex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/texinfo/package.py b/var/spack/repos/builtin/packages/texinfo/package.py
index b33a07eb46..f2959712fd 100644
--- a/var/spack/repos/builtin/packages/texinfo/package.py
+++ b/var/spack/repos/builtin/packages/texinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/texlive/package.py b/var/spack/repos/builtin/packages/texlive/package.py
index 1687af6bed..ffacf409cd 100644
--- a/var/spack/repos/builtin/packages/texlive/package.py
+++ b/var/spack/repos/builtin/packages/texlive/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/texstudio/package.py b/var/spack/repos/builtin/packages/texstudio/package.py
index babfaa078c..13d1daba11 100644
--- a/var/spack/repos/builtin/packages/texstudio/package.py
+++ b/var/spack/repos/builtin/packages/texstudio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/textparser/package.py b/var/spack/repos/builtin/packages/textparser/package.py
index 85252633a0..035f3339be 100644
--- a/var/spack/repos/builtin/packages/textparser/package.py
+++ b/var/spack/repos/builtin/packages/textparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tfel/package.py b/var/spack/repos/builtin/packages/tfel/package.py
index 86305d69f8..f03ea3f616 100644
--- a/var/spack/repos/builtin/packages/tfel/package.py
+++ b/var/spack/repos/builtin/packages/tfel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,12 +29,13 @@ class Tfel(CMakePackage):
"""
homepage = "http://tfel.sourceforge.net"
- url = "https://github.com/thelfer/tfel/archive/TFEL-3.3.0.tar.gz"
+ url = "https://github.com/thelfer/tfel/archive/TFEL-3.4.0.tar.gz"
git = "https://github.com/thelfer/tfel.git"
maintainers = ['thelfer']
# development branches
version("master", branch="master")
+ version("rliv-3.4", branch="rliv-3.4")
version("rliv-3.3", branch="rliv-3.3")
version("rliv-3.2", branch="rliv-3.2")
version("rliv-3.1", branch="rliv-3.1")
@@ -43,6 +44,8 @@ class Tfel(CMakePackage):
version("rliv-1.2", branch="rliv-1.2")
# released version
+ version('3.4.0', sha256='176feb4c1726d0f21f4c656b20620dce6f99ab7f5f09a66905aeb643a316bbc1')
+ version('3.3.1', sha256='ad07329c25874832fbacc999b5f88d9b9ab84415bc897a6f3cae5b4afcd7661f')
version('3.3.0', sha256='884ad68b0fbbededc3a602d559433c24114ae4534dc9f0a759d31ca3589dace0')
version('3.2.2', sha256='69b01ae0d1f9140b619aaa9135948284ff40d4654672c335e55ab4934c02eb43')
version('3.2.1', sha256='12786480524a7fe86889120fb334fa00211dfd44ad5ec71e2279e7adf1ddc807')
@@ -69,6 +72,8 @@ class Tfel(CMakePackage):
variant('abaqus', default=True,
description='Enables Abaqus/Standard and ' +
'Abaqus/Explicit interfaces')
+ variant('calculix', default=True,
+ description='Enables CalculiX interfaces')
variant('ansys', default=True,
description='Enables Ansys APDL interface')
variant('europlexus', default=True,
@@ -101,7 +106,7 @@ class Tfel(CMakePackage):
type=('build', 'link', 'run'))
depends_on('python', when='+python_bindings',
type=('build', 'link', 'run'))
- depends_on('boost+python', when='+python_bindings')
+ depends_on('boost+python+numpy', when='+python_bindings')
extends('python', when='+python_bindings')
@@ -109,6 +114,8 @@ class Tfel(CMakePackage):
args = []
+ args.append("-DUSE_EXTERNAL_COMPILER_FLAGS=ON")
+
for i in ['fortran', 'java', 'aster', 'abaqus', 'calculix',
'ansys', 'europlexus', 'cyrano', 'lsdyna', 'python',
'comsol', 'diana-fea']:
diff --git a/var/spack/repos/builtin/packages/the-platinum-searcher/package.py b/var/spack/repos/builtin/packages/the-platinum-searcher/package.py
index 9c7c6a68a0..e5be2ec6ba 100644
--- a/var/spack/repos/builtin/packages/the-platinum-searcher/package.py
+++ b/var/spack/repos/builtin/packages/the-platinum-searcher/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class ThePlatinumSearcher(Package):
version('head')
- extends("go", deptypes='build')
+ extends("go", type='build')
def install(self, spec, prefix):
env['GOPATH'] = self.stage.source_path + ':' + env['GOPATH']
diff --git a/var/spack/repos/builtin/packages/the-silver-searcher/package.py b/var/spack/repos/builtin/packages/the-silver-searcher/package.py
index 516e744247..3afe1bc4f1 100644
--- a/var/spack/repos/builtin/packages/the-silver-searcher/package.py
+++ b/var/spack/repos/builtin/packages/the-silver-searcher/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/thepeg/package.py b/var/spack/repos/builtin/packages/thepeg/package.py
index 766586acf4..59d07b97d2 100644
--- a/var/spack/repos/builtin/packages/thepeg/package.py
+++ b/var/spack/repos/builtin/packages/thepeg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,8 @@ class Thepeg(AutotoolsPackage):
homepage = "http://home.thep.lu.se/~leif/ThePEG/"
url = "https://thepeg.hepforge.org/downloads/?f=ThePEG-2.2.1.tar.bz2"
+ tags = ['hep']
+
# The commented out versions exist, but may need patches
# and/or recipe changes
version('2.2.1', sha256='63abc7215e6ad45c11cf9dac013738e194cc38556a8368b850b70ab1b57ea58f')
diff --git a/var/spack/repos/builtin/packages/thornado-mini/package.py b/var/spack/repos/builtin/packages/thornado-mini/package.py
index 34e40e8233..40a9be8dcd 100644
--- a/var/spack/repos/builtin/packages/thornado-mini/package.py
+++ b/var/spack/repos/builtin/packages/thornado-mini/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/thrift/package.py b/var/spack/repos/builtin/packages/thrift/package.py
index da7d9e6809..56f0edec41 100644
--- a/var/spack/repos/builtin/packages/thrift/package.py
+++ b/var/spack/repos/builtin/packages/thrift/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/thrust/package.py b/var/spack/repos/builtin/packages/thrust/package.py
index e82737189d..4e2d63f25c 100644
--- a/var/spack/repos/builtin/packages/thrust/package.py
+++ b/var/spack/repos/builtin/packages/thrust/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,22 @@ class Thrust(Package):
which resembles the C++ Standard Template Library (STL)."""
homepage = "https://thrust.github.io"
- url = "https://github.com/thrust/thrust/archive/1.9.4.tar.gz"
+ url = "https://github.com/NVIDIA/thrust/archive/1.12.0.tar.gz"
+ version('1.12.0', sha256='d68f89937ed1a0dadafd4f77d3e65ab9a5baa48dd5fa5698f8d3f7e3d6749da2')
+ version('1.12.0-rc0', sha256='458c5ccc8572af00b3176af0f45f5f7eeb5af737bcc0a853982b55afcbe4cef6')
+ version('1.11.0', sha256='c65211a66fe0dce9f5470cc8fcb80ae6b04da12fd94707ed63ddddbd82fa9444')
+ version('1.10.0', sha256='8149b30eabbc9a2af5f038fb2b7f91070d4e01266377e0cd12e3af3feda93f8f')
+ version('1.9.10-1', sha256='9aed4adf97e3fcb2627a5f62bf4b0669af074475fe717952c29254eee413d98a')
+ version('1.9.10', sha256='5071c995a03e97e2bcfe0c5cc265330160316733336bb87dfcea3fc381065316')
+ version('1.9.9', sha256='74740b94e0c62e1e54f9880cf1eeb2d0bfb2203ae35fd72ece608f9b8e073ef7')
+ version('1.9.8-1', sha256='7d8d927e610272ff59a2afc5d90d69cf6ad886dbf9eb7d7ab25bc86f15f8ed52')
+ version('1.9.8', sha256='d014396a2128417bd1421ba80d2601422577094c0ff727c60bd3c6eb4856af9b')
+ version('1.9.7-1', sha256='c3c433c04a420afd351de44c0e40711d5813092b76f0cfa901a3119b75ab8118')
+ version('1.9.7', sha256='72519f7f6b5d28953e5086253bbcf5b10decde913ddeb93872dc51522bdfad2b')
+ version('1.9.6-1', sha256='66261f0272082f1752fe66b0ed5907cf292946b7276fc777d21bc86bd16460fe')
+ version('1.9.6', sha256='67e937c31d279cec9ad2c54a4f66e479dfbe506ceb0253f611a54323fb4c1cfb')
+ version('1.9.5', sha256='d155dc2a260fe0c75c63c185fa4c4b4c6c5b7c444fcdac7109bb71941c9603f1')
version('1.9.4', sha256='41931a7d73331fc39c6bea56d1eb8d4d8bbf7c73688979bbdab0e55772f538d1')
version('1.9.3', sha256='92482ad0219cd2d727766f42a4fc952d7c5fd0183c5e201d9a117568387b4fd1')
version('1.9.2', sha256='1fb1272be9e8c28973f5c39eb230d1914375ef38bcaacf09a3fa51c6b710b756')
diff --git a/var/spack/repos/builtin/packages/tidy-html5/package.py b/var/spack/repos/builtin/packages/tidy-html5/package.py
new file mode 100644
index 0000000000..6f4d5ef05a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tidy-html5/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class TidyHtml5(CMakePackage):
+ """Tidy is a console application for Mac OS X, Linux, Windows, UNIX, and more.
+ It corrects and cleans up HTML and XML documents by fixing markup errors and
+ upgrading legacy code to modern standards."""
+
+ homepage = "https://www.html-tidy.org/"
+ url = "https://github.com/htacg/tidy-html5/archive/5.6.0.tar.gz"
+
+ version('5.7.28', sha256='5caa2c769204f506e24ea4986a45abe23f71d14f0fe968314f20065f342ffdba')
+ version('5.6.0', sha256='08a63bba3d9e7618d1570b4ecd6a7daa83c8e18a41c82455b6308bc11fe34958')
+
+ depends_on('cmake@2.8.12:', type='build')
diff --git a/var/spack/repos/builtin/packages/tig/package.py b/var/spack/repos/builtin/packages/tig/package.py
index 68e54bc05d..e264badd2b 100644
--- a/var/spack/repos/builtin/packages/tig/package.py
+++ b/var/spack/repos/builtin/packages/tig/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/time/package.py b/var/spack/repos/builtin/packages/time/package.py
index 0744b22509..de561b1c87 100644
--- a/var/spack/repos/builtin/packages/time/package.py
+++ b/var/spack/repos/builtin/packages/time/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/timedatex/package.py b/var/spack/repos/builtin/packages/timedatex/package.py
index 5ee5ef9d1c..b5966a6953 100644
--- a/var/spack/repos/builtin/packages/timedatex/package.py
+++ b/var/spack/repos/builtin/packages/timedatex/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/timemory/package.py b/var/spack/repos/builtin/packages/timemory/package.py
index 7add541617..814dbf4a34 100644
--- a/var/spack/repos/builtin/packages/timemory/package.py
+++ b/var/spack/repos/builtin/packages/timemory/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tinker/package.py b/var/spack/repos/builtin/packages/tinker/package.py
index 7a15b81107..91d8909768 100644
--- a/var/spack/repos/builtin/packages/tinker/package.py
+++ b/var/spack/repos/builtin/packages/tinker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tinyxml/package.py b/var/spack/repos/builtin/packages/tinyxml/package.py
index 3e924e3a9f..5cb26b4cb8 100644
--- a/var/spack/repos/builtin/packages/tinyxml/package.py
+++ b/var/spack/repos/builtin/packages/tinyxml/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,6 +26,4 @@ class Tinyxml(CMakePackage):
"CMakeLists.txt"), "CMakeLists.txt")
def cmake_args(self):
- spec = self.spec
- return [
- '-DBUILD_SHARED_LIBS=%s' % ('YES' if '+shared' in spec else 'NO')]
+ return [self.define_from_variant('BUILD_SHARED_LIBS', 'shared')]
diff --git a/var/spack/repos/builtin/packages/tinyxml2/package.py b/var/spack/repos/builtin/packages/tinyxml2/package.py
index 1cca1b4c30..ab3492bae0 100644
--- a/var/spack/repos/builtin/packages/tinyxml2/package.py
+++ b/var/spack/repos/builtin/packages/tinyxml2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tioga/package.py b/var/spack/repos/builtin/packages/tioga/package.py
index 602e5823ef..7957bf64e9 100644
--- a/var/spack/repos/builtin/packages/tioga/package.py
+++ b/var/spack/repos/builtin/packages/tioga/package.py
@@ -1,25 +1,38 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-
+import sys
from spack import *
-class Tioga(CMakePackage):
+class Tioga(CMakePackage, CudaPackage):
"""Topology Independent Overset Grid Assembly (TIOGA)"""
homepage = "https://github.com/jsitaraman/tioga"
git = "https://github.com/jsitaraman/tioga.git"
+ maintainers = ['jsitaraman', 'sayerhs']
+
+ version('develop', branch='exawind')
version('master', branch='master')
- variant('shared', default=True,
- description="Enable building shared libraries")
+ variant('shared', default=sys.platform != 'darwin',
+ description="Build shared libraries")
variant('pic', default=True,
description="Position independent code")
+ variant('nodegid', default=True,
+ description="Enable support for global Node IDs")
+ variant('timers', default=False,
+ description="Enable timers")
+ variant('stats', default=False,
+ description="Enable output of holecut stats")
+ variant('cxxstd', default='11',
+ values=('11', '14'), multi=False,
+ description="C++ standard to use")
depends_on('mpi')
+ depends_on('cuda@9.0.0:', when='+cuda')
# Tioga has the fortran module file problem with parallel builds
parallel = False
@@ -27,20 +40,26 @@ class Tioga(CMakePackage):
def cmake_args(self):
spec = self.spec
- options = [
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
- '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=%s' % (
- 'ON' if '+pic' in spec else 'OFF'),
- '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
- '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
- '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
- '-DMPI_CXX_COMPILER:PATH=%s' % spec['mpi'].mpicxx,
- '-DMPI_C_COMPILER:PATH=%s' % spec['mpi'].mpicc,
- '-DMPI_Fortran_COMPILER:PATH=%s' % spec['mpi'].mpifc
+ args = [
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('CMAKE_POSITION_INDEPENDENT_CODE', 'pic'),
+ self.define_from_variant('CMAKE_CXX_STANDARD', 'cxxstd'),
+ self.define_from_variant('TIOGA_HAS_NODEGID', 'nodegid'),
+ self.define_from_variant('TIOGA_ENABLE_TIMERS', 'timers'),
+ self.define_from_variant('TIOGA_OUTPUT_STATS', 'stats'),
+ self.define_from_variant('TIOGA_ENABLE_CUDA', 'cuda'),
]
+ if '+cuda' in self.spec:
+ args.append(self.define('CMAKE_CUDA_SEPARABLE_COMPILATION', True))
+
+ # Currently TIOGA only supports one device arch during specialization
+ cuda_arch = self.spec.variants['cuda_arch'].value
+ if cuda_arch:
+ arch_sorted = list(sorted(cuda_arch, reverse=True))
+ args.append(self.define('TIOGA_CUDA_SM', arch_sorted[0]))
+
if 'darwin' in spec.architecture:
- options.append('-DCMAKE_MACOSX_RPATH:BOOL=ON')
+ args.append(self.define('CMAKE_MACOSX_RPATH', True))
- return options
+ return args
diff --git a/var/spack/repos/builtin/packages/tippecanoe/package.py b/var/spack/repos/builtin/packages/tippecanoe/package.py
index 4bf4b70125..0d8f792ae3 100644
--- a/var/spack/repos/builtin/packages/tippecanoe/package.py
+++ b/var/spack/repos/builtin/packages/tippecanoe/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tiptop/package.py b/var/spack/repos/builtin/packages/tiptop/package.py
index 2fb46c678c..2ce95777b9 100644
--- a/var/spack/repos/builtin/packages/tiptop/package.py
+++ b/var/spack/repos/builtin/packages/tiptop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tix/package.py b/var/spack/repos/builtin/packages/tix/package.py
index c3d3651ee0..2dc682d2e2 100644
--- a/var/spack/repos/builtin/packages/tix/package.py
+++ b/var/spack/repos/builtin/packages/tix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tixi/package.py b/var/spack/repos/builtin/packages/tixi/package.py
index 74a7ed7c65..0521f01f78 100644
--- a/var/spack/repos/builtin/packages/tixi/package.py
+++ b/var/spack/repos/builtin/packages/tixi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tk/package.py b/var/spack/repos/builtin/packages/tk/package.py
index ff2e08875c..f06185a860 100644
--- a/var/spack/repos/builtin/packages/tk/package.py
+++ b/var/spack/repos/builtin/packages/tk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,7 @@ class Tk(AutotoolsPackage, SourceforgePackage):
homepage = "http://www.tcl.tk"
sourceforge_mirror_path = "tcl/tk8.6.5-src.tar.gz"
+ version('8.6.11', sha256='5228a8187a7f70fa0791ef0f975270f068ba9557f57456f51eb02d9d4ea31282')
version('8.6.10', sha256='63df418a859d0a463347f95ded5cd88a3dd3aaa1ceecaeee362194bc30f3e386')
version('8.6.8', sha256='49e7bca08dde95195a27f594f7c850b088be357a7c7096e44e1158c7a5fd7b33')
version('8.6.6', sha256='d62c371a71b4744ed830e3c21d27968c31dba74dd2c45f36b9b071e6d88eb19d')
@@ -38,6 +39,13 @@ class Tk(AutotoolsPackage, SourceforgePackage):
configure_directory = 'unix'
+ # https://core.tcl-lang.org/tk/tktview/3598664fffffffffffff
+ # https://core.tcl-lang.org/tk/info/8b679f597b1d17ad
+ # https://core.tcl-lang.org/tk/info/997b17c343444e48
+ patch('https://github.com/macports/macports-ports/blob/master/x11/tk/files/patch-unix-Makefile.in.diff',
+ sha256='54bba3d2b3550b7e2c636881c1a3acaf6e1eb743f314449a132864ff47fd0010',
+ level=0, when='@:8.6.11 platform=darwin')
+
def install(self, spec, prefix):
with working_dir(self.build_directory):
make('install')
diff --git a/var/spack/repos/builtin/packages/tldd/package.py b/var/spack/repos/builtin/packages/tldd/package.py
index bd3d0f4f2a..0036a6601a 100644
--- a/var/spack/repos/builtin/packages/tldd/package.py
+++ b/var/spack/repos/builtin/packages/tldd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tmalign/package.py b/var/spack/repos/builtin/packages/tmalign/package.py
index 5ee2493c60..9a11d590d0 100644
--- a/var/spack/repos/builtin/packages/tmalign/package.py
+++ b/var/spack/repos/builtin/packages/tmalign/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tmhmm/package.py b/var/spack/repos/builtin/packages/tmhmm/package.py
index 9758f58510..692a2a91e5 100644
--- a/var/spack/repos/builtin/packages/tmhmm/package.py
+++ b/var/spack/repos/builtin/packages/tmhmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tmux/package.py b/var/spack/repos/builtin/packages/tmux/package.py
index 8a50e2ebe9..04b0656b83 100644
--- a/var/spack/repos/builtin/packages/tmux/package.py
+++ b/var/spack/repos/builtin/packages/tmux/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tomcat/package.py b/var/spack/repos/builtin/packages/tomcat/package.py
index 8821f482f6..374b03eb82 100644
--- a/var/spack/repos/builtin/packages/tomcat/package.py
+++ b/var/spack/repos/builtin/packages/tomcat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tophat/package.py b/var/spack/repos/builtin/packages/tophat/package.py
index f54df7eca4..ea08822ab7 100644
--- a/var/spack/repos/builtin/packages/tophat/package.py
+++ b/var/spack/repos/builtin/packages/tophat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/totalview/package.py b/var/spack/repos/builtin/packages/totalview/package.py
index 50553aaeea..b985fc094f 100644
--- a/var/spack/repos/builtin/packages/totalview/package.py
+++ b/var/spack/repos/builtin/packages/totalview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tpm2-tss/package.py b/var/spack/repos/builtin/packages/tpm2-tss/package.py
index f06f4a0378..31d49e3d8e 100644
--- a/var/spack/repos/builtin/packages/tpm2-tss/package.py
+++ b/var/spack/repos/builtin/packages/tpm2-tss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tppred/package.py b/var/spack/repos/builtin/packages/tppred/package.py
index d672f9e776..00606e0303 100644
--- a/var/spack/repos/builtin/packages/tppred/package.py
+++ b/var/spack/repos/builtin/packages/tppred/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tracer/package.py b/var/spack/repos/builtin/packages/tracer/package.py
index 400078f1ff..4694ef632a 100644
--- a/var/spack/repos/builtin/packages/tracer/package.py
+++ b/var/spack/repos/builtin/packages/tracer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/transabyss/package.py b/var/spack/repos/builtin/packages/transabyss/package.py
index 3ae4936857..f867732d0a 100644
--- a/var/spack/repos/builtin/packages/transabyss/package.py
+++ b/var/spack/repos/builtin/packages/transabyss/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/transdecoder/package.py b/var/spack/repos/builtin/packages/transdecoder/package.py
index 9e621a2152..c173f3e6c2 100644
--- a/var/spack/repos/builtin/packages/transdecoder/package.py
+++ b/var/spack/repos/builtin/packages/transdecoder/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/transposome/package.py b/var/spack/repos/builtin/packages/transposome/package.py
index 434e1307d4..a4a46d503a 100644
--- a/var/spack/repos/builtin/packages/transposome/package.py
+++ b/var/spack/repos/builtin/packages/transposome/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/transrate/package.py b/var/spack/repos/builtin/packages/transrate/package.py
index 2cb551bdd8..4b33cdfa21 100644
--- a/var/spack/repos/builtin/packages/transrate/package.py
+++ b/var/spack/repos/builtin/packages/transrate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/transset/package.py b/var/spack/repos/builtin/packages/transset/package.py
index 089ab2aecf..49dcdcf98d 100644
--- a/var/spack/repos/builtin/packages/transset/package.py
+++ b/var/spack/repos/builtin/packages/transset/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,6 @@ class Transset(AutotoolsPackage, XorgPackage):
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/trapproto/package.py b/var/spack/repos/builtin/packages/trapproto/package.py
index 4945caa50a..a63ad2d064 100644
--- a/var/spack/repos/builtin/packages/trapproto/package.py
+++ b/var/spack/repos/builtin/packages/trapproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tree/package.py b/var/spack/repos/builtin/packages/tree/package.py
index 3f3e480969..16c21aff0a 100644
--- a/var/spack/repos/builtin/packages/tree/package.py
+++ b/var/spack/repos/builtin/packages/tree/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/treelite/package.py b/var/spack/repos/builtin/packages/treelite/package.py
index c602f9623d..b3b440f094 100644
--- a/var/spack/repos/builtin/packages/treelite/package.py
+++ b/var/spack/repos/builtin/packages/treelite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/treesub/package.py b/var/spack/repos/builtin/packages/treesub/package.py
index 0a4dad25d6..10be3af820 100644
--- a/var/spack/repos/builtin/packages/treesub/package.py
+++ b/var/spack/repos/builtin/packages/treesub/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/trf/package.py b/var/spack/repos/builtin/packages/trf/package.py
index 635b7e2830..79a31be7c5 100644
--- a/var/spack/repos/builtin/packages/trf/package.py
+++ b/var/spack/repos/builtin/packages/trf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,7 +7,7 @@ from spack import *
import os
-class Trf(Package):
+class Trf(AutotoolsPackage):
"""Tandem Repeats Finder is a program to locate and display tandem repeats
in DNA sequences.
@@ -18,13 +18,34 @@ class Trf(Package):
http://spack.readthedocs.io/en/latest/mirrors.html"""
homepage = "https://tandem.bu.edu/trf/trf.html"
+ url = "https://github.com/Benson-Genomics-Lab/TRF/archive/refs/tags/v4.09.1.tar.gz"
+
+ version('4.09.1', sha256='516015b625473350c3d1c9b83cac86baea620c8418498ab64c0a67029c3fb28a')
+ version('4.09', sha256='9332155384bef82f6c7c449c038d27f1a14b984b2e93000bfcf125f4d44d6aca')
+
+ # Beginning with version 4.09, trf is open source and available via github.
+ # Only version 4.07b needs to be installed as a binary.
manual_download = True
- version('4.09', '0c594fe666e0332db1df9d160d7fabc8', expand=False,
- url='file://{0}/trf409.linux64'.format(os.getcwd()))
- version('4.07b', sha256='a3a760c7b74c9603fbc08d95e8fa696c00f35a2f179b0bd63b2b13757ad3b471', expand=False,
- url='file://{0}/trf407b.linux64'.format(os.getcwd()))
+ version('4.07b',
+ sha256='a3a760c7b74c9603fbc08d95e8fa696c00f35a2f179b0bd63b2b13757ad3b471',
+ expand=False,
+ url='file://{0}/trf407b.linux64'.format(os.getcwd()),
+ deprecated=True)
+
+ @when('@4.07b')
+ def autoreconf(self, spec, prefix):
+ touch('configure')
+
+ @when('@4.07b')
+ def configure(self, spec, prefix):
+ pass
+
+ @when('@4.07b')
+ def build(self, spec, prefix):
+ pass
+ @when('@4.07b')
def install(self, spec, prefix):
mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin/packages/triangle/package.py b/var/spack/repos/builtin/packages/triangle/package.py
index f8703f33b3..c7528b7078 100644
--- a/var/spack/repos/builtin/packages/triangle/package.py
+++ b/var/spack/repos/builtin/packages/triangle/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/trident/package.py b/var/spack/repos/builtin/packages/trident/package.py
index 6e13a864dc..e2ff7de95a 100644
--- a/var/spack/repos/builtin/packages/trident/package.py
+++ b/var/spack/repos/builtin/packages/trident/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/trilinos-catalyst-ioss-adapter/package.py b/var/spack/repos/builtin/packages/trilinos-catalyst-ioss-adapter/package.py
index f0393510e1..a90f08511e 100644
--- a/var/spack/repos/builtin/packages/trilinos-catalyst-ioss-adapter/package.py
+++ b/var/spack/repos/builtin/packages/trilinos-catalyst-ioss-adapter/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/trilinos/fix_cxx14_cuda11.patch b/var/spack/repos/builtin/packages/trilinos/fix_cxx14_cuda11.patch
new file mode 100644
index 0000000000..ae174d3524
--- /dev/null
+++ b/var/spack/repos/builtin/packages/trilinos/fix_cxx14_cuda11.patch
@@ -0,0 +1,110 @@
+diff -ur spack-src.orig/packages/tpetra/core/src/Tpetra_Details_checkPointer.cpp spack-src/packages/tpetra/core/src/Tpetra_Details_checkPointer.cpp
+--- spack-src.orig/packages/tpetra/core/src/Tpetra_Details_checkPointer.cpp 2021-04-13 05:21:37.000000000 +0000
++++ spack-src/packages/tpetra/core/src/Tpetra_Details_checkPointer.cpp 2021-04-13 12:01:46.976127920 +0000
+@@ -74,7 +74,7 @@
+ return EMemoryType::ERROR;
+ }
+
+-# if 1
++# if CUDA_VERSION < 11000
+ // cudaPointerAttributes::type doesn't exist yet in CUDA 9.2. We
+ // must use memoryType, which does not distinguish between types of
+ // device memory.
+@@ -101,7 +101,7 @@
+ return EMemoryType::ERROR;
+ }
+
+-# else
++# else // >=CUDA-11
+
+ const enum cudaMemoryType theType = attr.type;
+ if (theType == cudaMemoryTypeManaged) {
+@@ -117,7 +117,7 @@
+ return EMemoryType::HOST;
+ }
+
+-# endif // 1
++# endif // < CUDA-11
+ #else // NOT HAVE_TPETRACORE_CUDA
+ return EMemoryType::HOST;
+ #endif // HAVE_TPETRACORE_CUDA
+diff -ur spack-src.orig/packages/tpetra/core/src/Tpetra_withLocalAccess.hpp spack-src/packages/tpetra/core/src/Tpetra_withLocalAccess.hpp
+--- spack-src.orig/packages/tpetra/core/src/Tpetra_withLocalAccess.hpp 2021-04-13 05:21:37.000000000 +0000
++++ spack-src/packages/tpetra/core/src/Tpetra_withLocalAccess.hpp 2021-04-13 12:37:34.557170771 +0000
+@@ -820,6 +820,58 @@
+ }
+ };
+
++
++ /// \brief Specialization of WithLocalAccess that implements the
++ /// "base class" of the user providing one GlobalObject
++ /// arguments, and a function that takes one arguments.
++ /// Required to workaround a compile error with intel-19 in c++14 mode.
++ template<class FirstLocalAccessType>
++ struct WithLocalAccess<FirstLocalAccessType> {
++ using current_user_function_type =
++ typename ArgsToFunction<FirstLocalAccessType>::type;
++
++ static void
++ withLocalAccess (current_user_function_type userFunction,
++ FirstLocalAccessType first)
++ {
++ // The "master" local object is the scope guard for local
++ // data. Its constructor may allocate temporary storage, copy
++ // data to the desired memory space, etc. Its destructor will
++ // put everything back. "Put everything back" could be a
++ // no-op, or it could copy data back so where they need to go
++ // and/or free temporary storage.
++ //
++ // Users define this function and the type it returns by
++ // specializing GetMasterLocalObject for LocalAccess
++ // specializations.
++ auto first_lcl_master = getMasterLocalObject (first);
++
++ // The "nonowning" local object is a nonowning view of the
++ // "master" local object. This is the only local object that
++ // users see, and they see it as input to their function.
++ // Subsequent slices / subviews view this nonowning local
++ // object. All such nonowning views must have lifetime
++ // contained within the lifetime of the master local object.
++ //
++ // Users define this function and the type it returns by
++ // specializing GetNonowningLocalObject (see above).
++ //
++ // Constraining the nonowning views' lifetime to this scope
++ // means that master local object types may use low-cost
++ // ownership models, like that of std::unique_ptr. There
++ // should be no need for reference counting (in the manner of
++ // std::shared_ptr) or Herb Sutter's deferred_heap.
++ auto first_lcl_view = getNonowningLocalObject (first, first_lcl_master);
++
++ // Curry the user's function by fixing the first argument.
++
++ WithLocalAccess<>::withLocalAccess
++ ([=] () {
++ userFunction (first_lcl_view);
++ });
++ }
++ };
++
+ /// \brief Specialization of WithLocalAccess that implements the
+ /// "recursion case."
+ ///
+@@ -867,17 +919,6 @@
+
+ // Curry the user's function by fixing the first argument.
+
+- // The commented-out implementation requires C++14, because it
+- // uses a generic lambda (the special case where parameters
+- // are "auto"). We do have the types of the arguments,
+- // though, from ArgsToFunction, so we don't need this feature.
+-
+- // WithLocalAccess<Rest...>::withLocalAccess
+- // (rest...,
+- // [=] (auto ... args) {
+- // userFunction (first_lcl_view, args...);
+- // });
+-
+ WithLocalAccess<Rest...>::withLocalAccess
+ ([=] (with_local_access_function_argument_type<Rest>... args) {
+ userFunction (first_lcl_view, args...);
diff --git a/var/spack/repos/builtin/packages/trilinos/package.py b/var/spack/repos/builtin/packages/trilinos/package.py
index 2d341b245a..cc42c5eeaa 100644
--- a/var/spack/repos/builtin/packages/trilinos/package.py
+++ b/var/spack/repos/builtin/packages/trilinos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -70,13 +70,15 @@ class Trilinos(CMakePackage, CudaPackage):
variant('float', default=False,
description='Enable single precision (float) numbers in Trilinos')
variant('gotype', default='long',
- values=('int', 'long', 'long_long'),
+ values=('none', 'int', 'long', 'long_long'),
multi=False,
description='global ordinal type for Tpetra')
variant('fortran', default=True,
description='Compile with Fortran support')
variant('wrapper', default=False,
description="Use nvcc-wrapper for CUDA build")
+ variant('cuda_rdc', default=False,
+ description='turn on RDC for CUDA build')
variant('cxxstd', default='11', values=['11', '14', '17'], multi=False)
variant('hwloc', default=False,
description='Enable hwloc')
@@ -189,6 +191,8 @@ class Trilinos(CMakePackage, CudaPackage):
description='Compile with Shards')
variant('shylu', default=False,
description='Compile with ShyLU')
+ variant('stokhos', default=False,
+ description='Compile with Stokhos')
variant('stratimikos', default=False,
description='Compile with Stratimikos')
variant('teko', default=False,
@@ -199,14 +203,28 @@ class Trilinos(CMakePackage, CudaPackage):
description='Compile with Teuchos')
variant('tpetra', default=True,
description='Compile with Tpetra')
+ variant('trilinoscouplings', default=False,
+ description='Compile with TrilinosCouplings')
variant('zoltan', default=True,
description='Compile with Zoltan')
variant('zoltan2', default=True,
description='Compile with Zoltan2')
+ # Internal package options (alphabetical order)
+ variant('amesos2basker', default=False,
+ description='Compile with Basker in Amesos2')
+ variant('epetraextbtf', default=False,
+ description='Compile with BTF in EpetraExt')
+ variant('epetraextexperimental', default=False,
+ description='Compile with experimental in EpetraExt')
+ variant('epetraextgraphreorderings', default=False,
+ description='Compile with graph reorderings in EpetraExt')
+
# External package options
variant('dtk', default=False,
description='Enable DataTransferKit')
+ variant('scorec', default=False,
+ description='Enable SCOREC')
variant('mesquite', default=False,
description='Enable Mesquite')
@@ -227,6 +245,11 @@ class Trilinos(CMakePackage, CudaPackage):
placement='DataTransferKit',
submodules=True,
when='+dtk @develop')
+ resource(name='scorec',
+ git='https://github.com/SCOREC/core.git',
+ commit='73c16eae073b179e45ec625a5abe4915bc589af2', # tag v2.2.5
+ placement='SCOREC',
+ when='+scorec')
resource(name='mesquite',
url='https://github.com/trilinos/mesquite/archive/trilinos-release-12-12-1.tar.gz',
sha256='e0d09b0939dbd461822477449dca611417316e8e8d8268fd795debb068edcbb5',
@@ -269,7 +292,6 @@ class Trilinos(CMakePackage, CudaPackage):
conflicts('+isorropia', when='~teuchos')
conflicts('+isorropia', when='~zoltan')
conflicts('+muelu', when='~teuchos')
- conflicts('+muelu', when='~xpetra')
conflicts('+nox', when='~teuchos')
conflicts('+phalanx', when='~kokkos')
conflicts('+phalanx', when='~sacado')
@@ -290,9 +312,13 @@ class Trilinos(CMakePackage, CudaPackage):
conflicts('+tpetra', when='~teuchos')
conflicts('+zoltan2', when='~teuchos')
conflicts('+zoltan2', when='~tpetra')
- conflicts('+zoltan2', when='~xpetra')
conflicts('+zoltan2', when='~zoltan')
+ conflicts('+epetraextbtf', when='~epetraext')
+ conflicts('+epetraextexperimental', when='~epetraext')
+ conflicts('+epetraextgraphreorderings', when='~epetraext')
+ conflicts('+amesos2basker', when='~amesos2')
+
conflicts('+dtk', when='~boost')
conflicts('+dtk', when='~intrepid2')
conflicts('+dtk', when='~kokkos')
@@ -328,12 +354,21 @@ class Trilinos(CMakePackage, CudaPackage):
conflicts('+adios2', when='@:12.14.1')
conflicts('+adios2', when='@xsdk-0.2.0')
conflicts('+pnetcdf', when='~netcdf')
+ conflicts('+cuda_rdc', when='~cuda')
conflicts('+wrapper', when='~cuda')
conflicts('+wrapper', when='%clang')
+ conflicts('cxxstd=11', when='@develop')
conflicts('cxxstd=11', when='+wrapper ^cuda@6.5.14')
conflicts('cxxstd=14', when='+wrapper ^cuda@6.5.14:8.0.61')
conflicts('cxxstd=17', when='+wrapper ^cuda@6.5.14:10.2.89')
+ # SCOREC requires parmetis, shards, stk, and zoltan
+ conflicts('+scorec', when='~metis')
+ conflicts('+scorec', when='~mpi')
+ conflicts('+scorec', when='~shards')
+ conflicts('+scorec', when='~stk')
+ conflicts('+scorec', when='~zoltan')
+
# All compilers except for pgi are in conflict:
for __compiler in spack.compilers.supported_compilers():
if __compiler != 'clang':
@@ -370,7 +405,8 @@ class Trilinos(CMakePackage, CudaPackage):
# (or alike) and adding results to -DTrilinos_EXTRA_LINK_FLAGS together
# with Blas and Lapack and ScaLAPACK and Blacs and -lgfortran and it may
# work at the end. But let's avoid all this by simply using shared libs
- depends_on('mumps@5.0:+mpi+shared', when='+mumps')
+ depends_on('mumps@5.0:+mpi+shared+openmp', when='+mumps+openmp')
+ depends_on('mumps@5.0:+mpi+shared~openmp', when='+mumps~openmp')
depends_on('scalapack', when='+mumps')
depends_on('superlu-dist', when='+superlu-dist')
depends_on('superlu-dist@:4.3', when='@11.14.1:12.6.1+superlu-dist')
@@ -395,7 +431,6 @@ class Trilinos(CMakePackage, CudaPackage):
# Dependencies/conflicts when MPI is disabled
depends_on('hdf5~mpi', when='+hdf5~mpi')
- conflicts('+parmetis', when='~mpi')
conflicts('+pnetcdf', when='~mpi')
patch('umfpack_from_suitesparse.patch', when='@11.14.1:12.8.1')
@@ -407,7 +442,17 @@ class Trilinos(CMakePackage, CudaPackage):
patch('xlf_tpetra.patch', when='@12.12.1%clang')
patch('fix_clang_errors_12_18_1.patch', when='@12.18.1%clang')
patch('cray_secas_12_12_1.patch', when='@12.12.1%cce')
- patch('cray_secas.patch', when='@12.14.1:12.18.1%cce')
+ patch('cray_secas.patch', when='@12.14.1:%cce')
+
+ def flag_handler(self, name, flags):
+ if self.spec.satisfies('%cce'):
+ if name == 'ldflags':
+ flags.append('-fuse-ld=gold')
+ return (None, None, flags)
+
+ # workaround an NVCC bug with c++14 (https://github.com/trilinos/Trilinos/issues/6954)
+ # avoid calling deprecated functions with CUDA-11
+ patch('fix_cxx14_cuda11.patch', when='@13.0.0:13.0.1 cxxstd=14 ^cuda@11:')
def url_for_version(self, version):
url = "https://github.com/trilinos/Trilinos/archive/trilinos-release-{0}.tar.gz"
@@ -450,6 +495,12 @@ class Trilinos(CMakePackage, CudaPackage):
return self.define_from_variant('TPL_ENABLE_' + cmake_var,
spec_var)
+ def define_prefix_enable(prefix, cmake_var, spec_var=None):
+ if spec_var is None:
+ spec_var = cmake_var.lower()
+ return self.define_from_variant(
+ '%s' % prefix, spec_var)
+
cxx_flags = []
options = []
@@ -512,16 +563,25 @@ class Trilinos(CMakePackage, CudaPackage):
define_trilinos_enable('ROL'),
define_trilinos_enable('Rythmos'),
define_trilinos_enable('Sacado'),
+ define_trilinos_enable('SCOREC'),
define_trilinos_enable('Shards'),
define_trilinos_enable('ShyLU'),
define_trilinos_enable('STK'),
+ define_trilinos_enable('Stokhos'),
define_trilinos_enable('Stratimikos'),
define_trilinos_enable('Teko'),
define_trilinos_enable('Tempus'),
define_trilinos_enable('Teuchos'),
define_trilinos_enable('Tpetra'),
+ define_trilinos_enable('TrilinosCouplings'),
define_trilinos_enable('Zoltan'),
define_trilinos_enable('Zoltan2'),
+ define_prefix_enable('EpetraExt_BUILD_BTF', 'epetraextbtf'),
+ define_prefix_enable('EpetraExt_BUILD_EXPERIMENTAL',
+ 'epetraextexperimental'),
+ define_prefix_enable('EpetraExt_BUILD_GRAPH_REORDERINGS',
+ 'epetraextgraphreorderings'),
+ define_prefix_enable('Amesos2_ENABLE_Basker', 'amesos2basker'),
])
options.append(self.define_from_variant('USE_XSDK_DEFAULTS',
@@ -752,6 +812,10 @@ class Trilinos(CMakePackage, CudaPackage):
define('Kokkos_ENABLE_CUDA', True),
define('Kokkos_ENABLE_CUDA_UVM', True),
define('Kokkos_ENABLE_CUDA_LAMBDA', True)])
+ if '+cuda_rdc' in spec:
+ options.append(define(
+ 'Kokkos_ENABLE_CUDA_RELOCATABLE_DEVICE_CODE',
+ True))
for iArchCC in spec.variants['cuda_arch'].value:
options.append(define(
"Kokkos_ARCH_" +
@@ -842,6 +906,8 @@ class Trilinos(CMakePackage, CudaPackage):
if sys.platform == 'darwin':
options.append(define('Trilinos_ENABLE_FEI', False))
+ if '+stk' in spec:
+ cxx_flags.extend(['-DSTK_NO_BOOST_STACKTRACE'])
if sys.platform == 'darwin' and macos_version() >= Version('10.12'):
# use @rpath on Sierra due to limit of dynamic loader
diff --git a/var/spack/repos/builtin/packages/trimal/package.py b/var/spack/repos/builtin/packages/trimal/package.py
index dce8604c50..106a1723b2 100644
--- a/var/spack/repos/builtin/packages/trimal/package.py
+++ b/var/spack/repos/builtin/packages/trimal/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/trimgalore/package.py b/var/spack/repos/builtin/packages/trimgalore/package.py
index 9c431073cb..93be5a19e4 100644
--- a/var/spack/repos/builtin/packages/trimgalore/package.py
+++ b/var/spack/repos/builtin/packages/trimgalore/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/trimmomatic/package.py b/var/spack/repos/builtin/packages/trimmomatic/package.py
index 99a24fc8f1..cc0a4b78d7 100644
--- a/var/spack/repos/builtin/packages/trimmomatic/package.py
+++ b/var/spack/repos/builtin/packages/trimmomatic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/trinity/package.py b/var/spack/repos/builtin/packages/trinity/package.py
index 8bdc10dd79..d1f557895d 100644
--- a/var/spack/repos/builtin/packages/trinity/package.py
+++ b/var/spack/repos/builtin/packages/trinity/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,8 +22,11 @@ class Trinity(MakefilePackage):
homepage = "http://trinityrnaseq.github.io/"
url = "https://github.com/trinityrnaseq/trinityrnaseq/archive/Trinity-v2.6.6.tar.gz"
+ version('2.12.0.FULL', sha256='0d47dc433cc3003e1c732b97da605e29c6ccafa38cd52cdb8ecc42399a9195d0',
+ url="https://github.com/trinityrnaseq/trinityrnaseq/releases/download/v2.12.0/trinityrnaseq-v2.12.0.FULL.tar.gz")
version('2.6.6', sha256='868dfadeefaf2d3c6150a88d5e86fbc09466d69bbf4a65f70b4f5a7485668984')
+ depends_on("cmake", type="build")
depends_on("java@8:", type=("build", "run"))
depends_on("bowtie2")
depends_on("jellyfish")
@@ -36,6 +39,14 @@ class Trinity(MakefilePackage):
# There is no documented list of these deps, but they're in the Dockerfile
# and we have runtime errors without them
# https://github.com/trinityrnaseq/trinityrnaseq/blob/master/Docker/Dockerfile
+ depends_on("r-dexseq", type="run", when="@2.12")
+ depends_on("star", type="run", when="@2.12")
+ depends_on("picard", type="run", when="@2.12")
+ depends_on("subread", type="run", when="@2.12")
+ depends_on("gatk", type="run", when="@2.12")
+ depends_on("gmap-gsnap", type="run", when="@2.12")
+ depends_on("r-tximport", type="run", when="@2.12")
+ depends_on("r-tximportdata", type="run", when="@2.12")
depends_on("blast-plus", type="run")
depends_on("bowtie", type="run")
depends_on("r", type="run")
diff --git a/var/spack/repos/builtin/packages/trinotate/package.py b/var/spack/repos/builtin/packages/trinotate/package.py
index 00c0ad3953..2b2f96de7d 100644
--- a/var/spack/repos/builtin/packages/trinotate/package.py
+++ b/var/spack/repos/builtin/packages/trinotate/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/trnascan-se/package.py b/var/spack/repos/builtin/packages/trnascan-se/package.py
index cad1a15e90..091d88a266 100644
--- a/var/spack/repos/builtin/packages/trnascan-se/package.py
+++ b/var/spack/repos/builtin/packages/trnascan-se/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tskit/package.py b/var/spack/repos/builtin/packages/tskit/package.py
index 387405259c..00daac3d3f 100644
--- a/var/spack/repos/builtin/packages/tskit/package.py
+++ b/var/spack/repos/builtin/packages/tskit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,7 +11,7 @@ class Tskit(PythonPackage):
examine, and manipulate tree sequences"""
homepage = "https://tskit.readthedocs.io/en/latest/"
- url = "https://pypi.io/packages/source/t/tskit/tskit-0.3.1.tar.gz"
+ pypi = "tskit/tskit-0.3.1.tar.gz"
version('0.3.1', sha256='b9c5a9b2fb62a615e389036946345ef8a35b09f1ffee541995b16f97fedb3d36')
diff --git a/var/spack/repos/builtin/packages/tulip/package.py b/var/spack/repos/builtin/packages/tulip/package.py
index 77d010222d..29263afe8e 100644
--- a/var/spack/repos/builtin/packages/tulip/package.py
+++ b/var/spack/repos/builtin/packages/tulip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/turbine/package.py b/var/spack/repos/builtin/packages/turbine/package.py
index c180037304..2a1c3ac6fe 100644
--- a/var/spack/repos/builtin/packages/turbine/package.py
+++ b/var/spack/repos/builtin/packages/turbine/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,11 +13,12 @@ class Turbine(AutotoolsPackage):
"""Turbine: The Swift/T runtime"""
homepage = 'http://swift-lang.org/Swift-T'
- url = 'http://swift-lang.github.io/swift-t-downloads/spack/turbine-1.2.3.tar.gz'
+ url = 'http://swift-lang.github.io/swift-t-downloads/spack/turbine-1.3.0.tar.gz'
git = "https://github.com/swift-lang/swift-t.git"
configure_directory = 'turbine/code'
version('master', branch='master')
+ version('1.3.0', sha256='9709e5dada91a7dce958a7967d6ff2bd39ccc9e7da62d05a875324b5089da393')
version('1.2.3', sha256='a3156c7e0b39e166da3de8892f55fa5d535b0c99c87a9add067c801098fe51ba')
version('1.1.0', sha256='98fad47597935a04d15072e42bf85411d55ef00cb6f953e9f14d6de902e33209')
@@ -28,6 +29,7 @@ class Turbine(AutotoolsPackage):
variant('hdf5', default=False,
description='Enable HDF5 support')
depends_on('adlbx@master', when='@master')
+ depends_on('adlbx@:0.9.2', when='@:1.2.3')
depends_on('adlbx@:0.8.0', when='@:1.1.0')
depends_on('adlbx', when='@1.2.1:')
depends_on('adlbx')
diff --git a/var/spack/repos/builtin/packages/turbomole/package.py b/var/spack/repos/builtin/packages/turbomole/package.py
index 501f06d3ca..d5cac01132 100644
--- a/var/spack/repos/builtin/packages/turbomole/package.py
+++ b/var/spack/repos/builtin/packages/turbomole/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/turnserver/package.py b/var/spack/repos/builtin/packages/turnserver/package.py
index fe1024b95c..6134d84b22 100644
--- a/var/spack/repos/builtin/packages/turnserver/package.py
+++ b/var/spack/repos/builtin/packages/turnserver/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/tut/package.py b/var/spack/repos/builtin/packages/tut/package.py
index 621fd4c072..927fda58ca 100644
--- a/var/spack/repos/builtin/packages/tut/package.py
+++ b/var/spack/repos/builtin/packages/tut/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,10 @@ class Tut(WafPackage):
# https://github.com/mrzechonek/tut-framework/issues/18
depends_on('python@:3.6', type='build')
+ # Tut is used for smoke build tests in CI, and started failing as
+ # soon as gcc@11 was introduced in the environment
+ conflicts('%gcc@11:')
+
def build_args(self):
args = []
diff --git a/var/spack/repos/builtin/packages/twm/package.py b/var/spack/repos/builtin/packages/twm/package.py
index 45dae87541..c7de0c45d0 100644
--- a/var/spack/repos/builtin/packages/twm/package.py
+++ b/var/spack/repos/builtin/packages/twm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,7 +24,7 @@ class Twm(AutotoolsPackage, XorgPackage):
depends_on('libice')
depends_on('libsm')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('bison', type='build')
depends_on('flex', type='build')
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/tycho2/package.py b/var/spack/repos/builtin/packages/tycho2/package.py
index a7c22ec56d..0f02b49227 100644
--- a/var/spack/repos/builtin/packages/tycho2/package.py
+++ b/var/spack/repos/builtin/packages/tycho2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/typhon/package.py b/var/spack/repos/builtin/packages/typhon/package.py
index 621b2479e4..8a7d1f0d96 100644
--- a/var/spack/repos/builtin/packages/typhon/package.py
+++ b/var/spack/repos/builtin/packages/typhon/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/typhonio/package.py b/var/spack/repos/builtin/packages/typhonio/package.py
index ac15cf9625..a409a92e3d 100644
--- a/var/spack/repos/builtin/packages/typhonio/package.py
+++ b/var/spack/repos/builtin/packages/typhonio/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,8 @@ class Typhonio(CMakePackage):
version('develop', branch='cmake_build')
version('1.6_CMake', sha256='c9b7b2a7f4fa0b786f6b69c6426b67f42efc4ea6871323139d52cd44f4d0ff7c')
- variant('build_type', default='Release', description='The build type to build',
- values=('Debug', 'Release'))
+ variant('build_type', default='Release', values=('Debug', 'Release'),
+ description='The build type to build')
variant('fortran', default=False, description='Enable Fortran support')
variant('shared', default=False, description='Build shared libraries')
variant('doc', default=False, description='Build user guide and doxygen documentation')
diff --git a/var/spack/repos/builtin/packages/uchardet/package.py b/var/spack/repos/builtin/packages/uchardet/package.py
index 1e09e08e62..37e98f3f9e 100644
--- a/var/spack/repos/builtin/packages/uchardet/package.py
+++ b/var/spack/repos/builtin/packages/uchardet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ucx/package.py b/var/spack/repos/builtin/packages/ucx/package.py
index c428a5bbd8..df1079dccb 100644
--- a/var/spack/repos/builtin/packages/ucx/package.py
+++ b/var/spack/repos/builtin/packages/ucx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,7 +20,8 @@ class Ucx(AutotoolsPackage, CudaPackage):
version('1.9-dev', branch='v1.9.x')
# Current
- version('1.9.0', sha256='a7a2c8841dc0d5444088a4373dc9b9cc68dbffcd917c1eba92ca8ed8e5e635fb', preferred=True)
+ version('1.10.0', sha256='b885e24b1b94724c03cb213c355381e98df1e2d1fd7f633cf8055b6dd05db92d', preferred=True)
+ version('1.9.0', sha256='a7a2c8841dc0d5444088a4373dc9b9cc68dbffcd917c1eba92ca8ed8e5e635fb')
version('1.8.1', sha256='a48820cb8d0761b5ccf3e7ba03a7c8c1dde6276017657178829e07ffc35b556a')
version('1.8.0', sha256='e400f7aa5354971c8f5ac6b881dc2846143851df868088c37d432c076445628d')
version('1.7.0', sha256='6ab81ee187bfd554fe7e549da93a11bfac420df87d99ee61ffab7bb19bdd3371')
@@ -60,6 +61,22 @@ class Ucx(AutotoolsPackage, CudaPackage):
description='Enable KNEM support')
variant('xpmem', default=False,
description='Enable XPMEM support')
+ variant('cma', default=False,
+ description="nable Cross Memory Attach")
+ variant('rc', default=False,
+ description="Compile with IB Reliable Connection support")
+ variant('dc', default=False,
+ description="Compile with IB Dynamic Connection support")
+ variant('ud', default=False,
+ description="Compile with IB Unreliable Datagram support")
+ variant('mlx5-dv', default=False,
+ description="Compile with mlx5 Direct Verbs support")
+ variant('ib-hw-tm', default=False,
+ description="Compile with IB Tag Matching support")
+ variant('dm', default=False,
+ description="Compile with Device Memory support")
+ variant('cm', default=False,
+ description="Compile with IB Connection Manager support")
depends_on('numactl')
depends_on('rdma-core')
@@ -88,16 +105,34 @@ class Ucx(AutotoolsPackage, CudaPackage):
else:
config_args.append('--disable-mt')
+ if '+cma' in spec:
+ config_args.append('--enable-cma')
+ else:
+ config_args.append('--disable-cma')
+
if '+paramter_checking' in spec:
config_args.append('--enable-params-check')
else:
config_args.append('--disable-params-check')
+ # Activate SIMD based on properties of the target
+ if 'avx' in self.spec.target:
+ config_args.append('--with-avx')
+ else:
+ config_args.append('--without-avx')
+
config_args.extend(self.enable_or_disable('optimizations'))
config_args.extend(self.enable_or_disable('assertions'))
config_args.extend(self.enable_or_disable('logging'))
config_args.extend(self.with_or_without('pic'))
+ config_args.extend(self.with_or_without('rc'))
+ config_args.extend(self.with_or_without('ud'))
+ config_args.extend(self.with_or_without('dc'))
+ config_args.extend(self.with_or_without('mlx5-dv'))
+ config_args.extend(self.with_or_without('ib-hw-tm'))
+ config_args.extend(self.with_or_without('dm'))
+ config_args.extend(self.with_or_without('cm'))
config_args.extend(self.with_or_without('java',
activation_value='prefix'))
config_args.extend(self.with_or_without('cuda',
diff --git a/var/spack/repos/builtin/packages/udunits/package.py b/var/spack/repos/builtin/packages/udunits/package.py
index e20f2b6ccd..4c6ae1f2ac 100644
--- a/var/spack/repos/builtin/packages/udunits/package.py
+++ b/var/spack/repos/builtin/packages/udunits/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -10,8 +10,9 @@ class Udunits(AutotoolsPackage):
"""Automated units conversion"""
homepage = "http://www.unidata.ucar.edu/software/udunits"
- url = "https://www.gfd-dennou.org/arch/ucar/unidata/pub/udunits/udunits-2.2.24.tar.gz"
+ url = "https://artifacts.unidata.ucar.edu/repository/downloads-udunits/udunits-2.2.28.tar.gz"
+ version('2.2.28', sha256='590baec83161a3fd62c00efa66f6113cec8a7c461e3f61a5182167e0cc5d579e')
version('2.2.24', sha256='20bac512f2656f056385429a0e44902fdf02fc7fe01c14d56f3c724336177f95')
version('2.2.23', sha256='b745ae10753fe82cdc7cc834e6ce471ca7c25ba2662e6ff93be147cb3d4fd380')
version('2.2.21', sha256='a154d1f8428c24e92723f9e50bdb5cc00827e3f5ff9cba64d33e5409f5c03455')
diff --git a/var/spack/repos/builtin/packages/ufo-core/package.py b/var/spack/repos/builtin/packages/ufo-core/package.py
index 23ce2bf3a2..2b2d5583f5 100644
--- a/var/spack/repos/builtin/packages/ufo-core/package.py
+++ b/var/spack/repos/builtin/packages/ufo-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ufo-filters/package.py b/var/spack/repos/builtin/packages/ufo-filters/package.py
index 6b2da72352..524c414100 100644
--- a/var/spack/repos/builtin/packages/ufo-filters/package.py
+++ b/var/spack/repos/builtin/packages/ufo-filters/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/umap/package.py b/var/spack/repos/builtin/packages/umap/package.py
index 030e51287e..4d4fe5ed51 100644
--- a/var/spack/repos/builtin/packages/umap/package.py
+++ b/var/spack/repos/builtin/packages/umap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -28,9 +28,8 @@ class Umap(CMakePackage):
variant('tests', default=False, description='Build test programs.')
def cmake_args(self):
- spec = self.spec
args = [
- "-DENABLE_LOGGING=%s" % ('On' if '+logging' in spec else 'Off'),
- "-DENABLE_TESTS=%s" % ('On' if '+tests' in spec else 'Off'),
+ self.define_from_variant('ENABLE_LOGGING', 'logging'),
+ self.define_from_variant('ENABLE_TESTS', 'tests'),
]
return args
diff --git a/var/spack/repos/builtin/packages/umesimd/package.py b/var/spack/repos/builtin/packages/umesimd/package.py
new file mode 100644
index 0000000000..7832a4a2dc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/umesimd/package.py
@@ -0,0 +1,25 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Umesimd(CMakePackage):
+ """UME::SIMD is an explicit vectorization library. The library defines
+ homogeneous interface for accessing functionality of SIMD registers of
+ AVX, AVX2, AVX512 and IMCI (KNCNI, k1om) instruction set."""
+
+ homepage = "https://github.com/edanor/umesimd"
+ url = "https://github.com/edanor/umesimd/archive/v0.8.1.tar.gz"
+
+ version('0.8.1', sha256='78f457634ee593495083cf8eb6ec1cf7f274db5ff7210c37b3a954f1a712d357')
+ version('0.7.1', sha256='c5377f8223fbf93ad79412e4b40fd14e88a86e08aa573f49df38a159d451023d')
+ version('0.6.1', sha256='15d9fde1a5c89f3c77c42550c2b55d25a581971002157a338e01104079cdf843')
+ version('0.5.2', sha256='8a02c0322b38f1e1757675bb781e190b2458fb8bc508a6bd03356da248362daf')
+ version('0.5.1', sha256='6b7bc62548170e15e98d9e4c57c2980d2cd46593167d6d4b83765aa57175e5ad')
+ version('0.4.2', sha256='a5dd2ec7ecf781af01f7e3336975870f34bfc8c79ef4bba90ec90e43b5f5969f')
+ version('0.4.1', sha256='e05b9f886164826005c8db5d2240f22cb88593c05b4fe45c81aba4d1d57a9bfa')
+ version('0.3.2', sha256='90399fa64489ca4d492a57a49582f5b827d4710a691f533822fd61edc346e8f6')
+ version('0.3.1', sha256='9bab8b4c70e11dbdd864a09053225c74cfabb801739e09a314ddeb1d84a43f0a')
diff --git a/var/spack/repos/builtin/packages/umoci/package.py b/var/spack/repos/builtin/packages/umoci/package.py
index 476e06dd66..6f25be1b1d 100644
--- a/var/spack/repos/builtin/packages/umoci/package.py
+++ b/var/spack/repos/builtin/packages/umoci/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/umpire/package.py b/var/spack/repos/builtin/packages/umpire/package.py
index 8b035e59df..ceb0dc1c7a 100644
--- a/var/spack/repos/builtin/packages/umpire/package.py
+++ b/var/spack/repos/builtin/packages/umpire/package.py
@@ -1,9 +1,10 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-import llnl.util.lang as lang
+import os
+
import llnl.util.tty as tty
@@ -60,7 +61,8 @@ class Umpire(CMakePackage, CudaPackage, ROCmPackage):
depends_on('cmake@3.8:', type='build')
depends_on('cmake@3.9:', when='+cuda', type='build')
- depends_on('blt', type='build')
+ depends_on('blt@0.4.0:', type='build', when='@4.1.3:')
+ depends_on('blt@:0.3.6', type='build', when='@:4.1.2')
# variants +rocm and amdgpu_targets are not automatically passed to
# dependencies, so do it manually.
@@ -73,6 +75,10 @@ class Umpire(CMakePackage, CudaPackage, ROCmPackage):
conflicts('+numa', when='@:0.3.2')
conflicts('~c', when='+fortran', msg='Fortran API requires C API')
+ # device allocator exports device code, which requires static libs
+ # currently only available for cuda.
+ conflicts('+shared', when='+cuda')
+
def cmake_args(self):
spec = self.spec
@@ -136,188 +142,33 @@ class Umpire(CMakePackage, CudaPackage, ROCmPackage):
return options
- @property
- def build_relpath(self):
- """Relative path to the cmake build subdirectory."""
- return join_path('..', self.build_dirname)
-
- @run_after('install')
- def setup_build_tests(self):
- """Copy the build test files after the package is installed to an
- install test subdirectory for use during `spack test run`."""
- # Now copy the relative files
- self.cache_extra_test_sources(self.build_relpath)
-
- # Ensure the path exists since relying on a relative path at the
- # same level as the normal stage source path.
- mkdirp(self.install_test_root)
-
- @property
- @lang.memoized
- def _extra_tests_path(self):
- # TODO: The tests should be converted to re-build and run examples
- # TODO: using the installed libraries.
- return join_path(self.install_test_root, self.build_relpath)
-
- @property
- @lang.memoized
- def _has_bad_strategy(self):
- return self.spec.satisfies('@0.2.0:0.2.3')
-
- def _run_checks(self, dirs, checks):
- """Run the specified checks in the provided directories."""
-
- if not dirs or not checks:
+ def test(self):
+ """Perform stand-alone checks on the installed package."""
+ if self.spec.satisfies('@:1') or \
+ not os.path.isdir(self.prefix.bin):
+ tty.info('Skipping: checks not installed in bin for v{0}'.
+ format(self.version))
return
- for exe in checks:
- if exe == 'strategy_example' and self._has_bad_strategy:
- # Skip this test until install testing can properly capture
- # the abort associated with this version.
- # (An umpire::util::Exception is thrown; status value is -6.)
- tty.warn('Skipping {0} test until Spack can handle core dump'
- .format(exe))
- continue
-
- expected, status = checks[exe]
- for work_dir in dirs:
- src = 'from build ' if 'spack-build' in work_dir else ''
- reason = 'test {0} {1}output'.format(exe, src)
- self.run_test(exe, [], expected, status, installed=False,
- purpose=reason, skip_missing=True,
- work_dir=work_dir)
-
- def _run_bench_checks(self):
- """Run the benchmark smoke test checks."""
- tty.info('Running benchmark checks')
-
- dirs = []
- if self.spec.satisfies('@0.3.3:1.0.1'):
- dirs.append(join_path(self._extra_tests_path, 'benchmarks'))
- elif self.spec.satisfies('@1.1.0:'):
- dirs.append(self.prefix.bin)
-
+ # Run a subset of examples PROVIDED installed
+ # tutorials with readily checkable outputs.
checks = {
- # Versions 0.3.3:1.0.1 (spack-build/bin/benchmarks)
- # Versions 1.1.0:2.1.0 (spack-build/bin)
- 'allocator_benchmarks': (
- ['Malloc/malloc', 'Malloc/free', 'ns',
- 'Host/allocate', 'Host/deallocate',
- 'FixedPoolHost/allocate',
- 'FixedPoolHost/deallocate'], 0),
- 'copy_benchmarks': (['benchmark_copy/host_host', 'ns'], 0),
- 'debuglog_benchmarks': (['benchmark_DebugLogger', 'ns'], 0),
+ 'malloc': ['99 should be 99'],
+ 'recipe_dynamic_pool_heuristic': ['in the pool', 'releas'],
+ 'recipe_no_introspection': ['has allocated', 'used'],
+ 'strategy_example': ['Available allocators', 'HOST'],
+ 'tut_copy': ['Copied source data'],
+ 'tut_introspection':
+ ['Allocator used is HOST', 'size of the allocation'],
+ 'tut_memset': ['Set data from HOST'],
+ 'tut_move': ['Moved source data', 'HOST'],
+ 'tut_reallocate': ['Reallocated data'],
+ 'vector_allocator': [''],
}
- self._run_checks(dirs, checks)
-
- def _run_cookbook_checks(self):
- """Run the cookbook smoke test checks."""
- tty.info('Running cookbook checks')
-
- dirs = []
- cb_subdir = join_path('examples', 'cookbook')
- if self.spec.satisfies('@0.3.3:1.0.1'):
- dirs.append(join_path(self._extra_tests_path, cb_subdir))
- elif self.spec.satisfies('@1.1.0'):
- dirs.append(join_path(self.prefix.bin, cb_subdir))
- elif self.spec.satisfies('@2.0.0:'):
- dirs.append(self.prefix.bin)
-
- checks = {
- # Versions 0.3.3:1.0.1 (spack-build/bin/examples/cookbook)
- # Versions 2.0.0:2.1.0 (spack-build/bin)
- # Versions 1.1.0 (prefix.bin/examples/cookbook)
- # Versions 2.0.0:2.1.0 (prefix.bin)
- 'recipe_dynamic_pool_heuristic': (['in the pool', 'releas'], 0),
- 'recipe_no_introspection': (['has allocated', 'used'], 0),
- }
- self._run_checks(dirs, checks)
-
- def _run_example_checks(self):
- """Run the example smoke test checks."""
- tty.info('Running example checks')
-
- dirs = []
- if self.spec.satisfies('@0.1.3:0.3.1'):
- dirs.append(self._extra_tests_path)
- elif self.spec.satisfies('@0.3.3:1.0.1'):
- dirs.append(join_path(self._extra_tests_path, 'examples'))
- elif self.spec.satisfies('@1.1.0'):
- dirs.append(join_path(self.prefix.bin, 'examples'))
- elif self.spec.satisfies('@2.0.0:'):
- dirs.append(self.prefix.bin)
-
- # Check the results from a subset of the (potentially) available
- # executables
- checks = {
- # Versions 0.1.3:0.3.1 (spack-build/bin)
- # Versions 0.3.3:1.0.1 (spack-build/bin/examples)
- # Versions 2.0.0:2.1.0 (spack-build/bin)
- # Version 1.1.0 (prefix.bin/examples)
- # Versions 2.0.0:2.1.0 (prefix.bin)
- 'malloc': (['99 should be 99'], 0),
- 'strategy_example': (['Available allocators', 'HOST'], 0),
- 'vector_allocator': ([''], 0),
- }
- self._run_checks(dirs, checks)
-
- def _run_plots_checks(self):
- """Run the plots smoke test checks."""
- tty.info('Running plots checks')
- dirs = [self.prefix.bin] if self.spec.satisfies('@0.3.3:0.3.5') else []
- checks = {
- # Versions 0.3.3:0.3.5 (prefix.bin)
- 'plot_allocations': ([''], 0),
- }
- self._run_checks(dirs, checks)
-
- def _run_tools_checks(self):
- """Run the tools smoke test checks."""
- tty.info('Running tools checks')
-
- dirs = [self.prefix.bin] if self.spec.satisfies('@0.3.3:0.3.5') else []
- checks = {
- # Versions 0.3.3:0.3.5 (spack-build/bin/tools)
- 'replay': (['No input file'], 0),
- }
- self._run_checks(dirs, checks)
-
- def _run_tut_checks(self):
- """Run the tutorial smoke test checks."""
- tty.info('Running tutorials checks')
-
- dirs = []
- tut_subdir = join_path('examples', 'tutorial')
- if self.spec.satisfies('@0.2.4:0.3.1'):
- dirs.append(self._extra_tests_path)
- elif self.spec.satisfies('@0.3.3:1.0.1'):
- dirs.append(join_path(self._extra_tests_path, tut_subdir))
- elif self.spec.satisfies('@1.1.0'):
- dirs.append(join_path(self.prefix.bin, tut_subdir))
- elif self.spec.satisfies('@2.0.0:'):
- dirs.append(self.prefix.bin)
-
- checks = {
- # Versions 0.2.4:0.3.1 (spack-build/bin)
- # Versions 0.3.3:1.0.1 (spack-build/bin/examples/tutorial)
- # Versions 2.0.0:2.1.0 (spack-build/bin)
- # Version 1.1.0 (prefix.bin/examples/tutorial)
- # Versions 2.0.0:2.1.0 (prefix.bin)
- 'tut_copy': (['Copied source data'], 0),
- 'tut_introspection': (
- ['Allocator used is HOST', 'size of the allocation'], 0),
- 'tut_memset': (['Set data from HOST'], 0),
- 'tut_move': (['Moved source data', 'HOST'], 0),
- 'tut_reallocate': (['Reallocated data'], 0),
- }
- self._run_checks(dirs, checks)
-
- def test(self):
- """Perform smoke tests on the installed package."""
- self._run_bench_checks()
- self._run_cookbook_checks()
- self._run_example_checks()
- self._run_plots_checks()
- self._run_tools_checks()
- self._run_tut_checks()
+ for exe in checks:
+ expected = checks[exe]
+ reason = 'test: checking output from {0}'.format(exe)
+ self.run_test(exe, [], expected, 0, installed=False,
+ purpose=reason, skip_missing=True,
+ work_dir=self.prefix.bin)
diff --git a/var/spack/repos/builtin/packages/unblur/package.py b/var/spack/repos/builtin/packages/unblur/package.py
index 7366ad836a..f16f73761e 100644
--- a/var/spack/repos/builtin/packages/unblur/package.py
+++ b/var/spack/repos/builtin/packages/unblur/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/uncrustify/package.py b/var/spack/repos/builtin/packages/uncrustify/package.py
index 99aeaeaab3..a04ed20731 100644
--- a/var/spack/repos/builtin/packages/uncrustify/package.py
+++ b/var/spack/repos/builtin/packages/uncrustify/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/unibilium/package.py b/var/spack/repos/builtin/packages/unibilium/package.py
index 862eee9325..e401f3069e 100644
--- a/var/spack/repos/builtin/packages/unibilium/package.py
+++ b/var/spack/repos/builtin/packages/unibilium/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/unifdef/package.py b/var/spack/repos/builtin/packages/unifdef/package.py
index 7b38686d93..4379fd9e18 100644
--- a/var/spack/repos/builtin/packages/unifdef/package.py
+++ b/var/spack/repos/builtin/packages/unifdef/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/unifyfs/auto-mount.patch b/var/spack/repos/builtin/packages/unifyfs/auto-mount.patch
deleted file mode 100644
index a621f7dd11..0000000000
--- a/var/spack/repos/builtin/packages/unifyfs/auto-mount.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/client/src/pmpi_wrappers.c b/client/src/pmpi_wrappers.c
-index ac86d39..38755f5 100644
---- a/client/src/pmpi_wrappers.c
-+++ b/client/src/pmpi_wrappers.c
-@@ -14,7 +14,6 @@
-
- #include "pmpi_wrappers.h"
- #include "unifyfs.h"
--#include <mpi.h>
- #include <stdio.h>
-
- int unifyfs_mpi_init(int* argc, char*** argv)
-diff --git a/client/src/pmpi_wrappers.h b/client/src/pmpi_wrappers.h
-index b90057c..995e44b 100644
---- a/client/src/pmpi_wrappers.h
-+++ b/client/src/pmpi_wrappers.h
-@@ -15,6 +15,8 @@
- #ifndef UNIFYFS_PMPI_WRAPPERS_H
- #define UNIFYFS_PMPI_WRAPPERS_H
-
-+#include <mpi.h>
-+
- /* MPI_Init PMPI wrapper */
- int unifyfs_mpi_init(int* argc, char*** argv);
- int MPI_Init(int* argc, char*** argv);
diff --git a/var/spack/repos/builtin/packages/unifyfs/include-sys-sysmacros.h.patch b/var/spack/repos/builtin/packages/unifyfs/include-sys-sysmacros.h.patch
new file mode 100644
index 0000000000..f3076cfd54
--- /dev/null
+++ b/var/spack/repos/builtin/packages/unifyfs/include-sys-sysmacros.h.patch
@@ -0,0 +1,43 @@
+Commit: ef1b4caa70beb0a7ae03fc0ef1250b80efe33afc
+Date: Fri, 14 May 2021 15:30:09 -0400
+Subject: [PATCH] Include sys/sysmacros.h in testlib.h
+
+In recent Linux systems, major() and minor() are defined in
+sys/sysmacros.h and sys/types.h no longer includes sys/sysmacros.h. So,
+we need to include sys/sysmacros.h in testlib.h.
+
+Also adds a check for the existence of sys/sysmacros.h in configure.ac.
+
+Include sys/sysmacros.h in testlib.h
+---
+ configure.ac | 1 +
+ examples/src/testlib.h | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 681cdb7..77719eb 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -65,6 +65,7 @@ AC_CHECK_HEADERS([fcntl.h inttypes.h libgen.h limits.h mntent.h strings.h syslog
+ AC_CHECK_HEADERS([wchar.h wctype.h])
+ AC_CHECK_HEADERS([sys/mount.h sys/socket.h sys/statfs.h sys/time.h])
+ AC_CHECK_HEADERS([arpa/inet.h netdb.h netinet/in.h])
++AC_CHECK_HEADER([sys/sysmacros.h], [], AC_MSG_ERROR([cannot find required header sys/sysmacros.h]))
+
+ # Checks for library functions.
+ AC_FUNC_MALLOC
+diff --git a/examples/src/testlib.h b/examples/src/testlib.h
+index 2b0a698..41c9900 100644
+--- a/examples/src/testlib.h
++++ b/examples/src/testlib.h
+@@ -24,6 +24,7 @@
+ #include <sys/time.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
++#include <sys/sysmacros.h>
+ #include <unistd.h>
+ #include <time.h>
+ #include <mpi.h>
+--
+2.25.1
+
diff --git a/var/spack/repos/builtin/packages/unifyfs/package.py b/var/spack/repos/builtin/packages/unifyfs/package.py
index c1038d7c68..4fd7e192d8 100644
--- a/var/spack/repos/builtin/packages/unifyfs/package.py
+++ b/var/spack/repos/builtin/packages/unifyfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,11 +16,12 @@ class Unifyfs(AutotoolsPackage):
homepage = "https://github.com/LLNL/UnifyFS"
git = "https://github.com/LLNL/UnifyFS.git"
- url = "https://github.com/LLNL/UnifyFS/releases/download/v0.9.0/unifyfs-0.9.0.tar.gz"
+ url = "https://github.com/LLNL/UnifyFS/releases/download/v0.9.2/unifyfs-0.9.2.tar.gz"
maintainers = ['CamStan']
version('develop', branch='dev')
- version('0.9.0', sha256='e6c73e22ef1c23f3141646aa17058b69c1c4e526886771f8fe982da924265b0f')
+ version('0.9.2', sha256='7046625dc0677535f5d960187cb2e2d58a6f8cfb4dc6a3604f825257eb0891aa')
+ version('0.9.1', sha256='2498a859cfa4961356fdf5c4c17e3afc3de7e034ad013b8c7145a622ef6199a0')
variant('auto-mount', default='True', description='Enable automatic mount/unmount in MPI_Init/Finalize')
variant('hdf5', default='False', description='Build with parallel HDF5 (install with `^hdf5~mpi` for serial)')
@@ -29,35 +30,34 @@ class Unifyfs(AutotoolsPackage):
variant('pmix', default='False', description='Enable PMIx build options')
variant('spath', default='True', description='Use spath library to normalize relative paths')
- depends_on('autoconf', type='build')
- depends_on('automake', type='build')
- depends_on('libtool', type='build')
- depends_on('m4', type='build')
- depends_on('pkgconfig', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('automake@1.15:', type='build', when='@0.9.2:')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('pkgconfig', type='build')
# Required dependencies
- depends_on('flatcc', when='@:0.9.0')
- depends_on('gotcha@0.0.2', when='@:0.9.0')
- depends_on('gotcha@1.0.3:', when='@0.9.1:')
- depends_on('leveldb')
- depends_on('margo')
- depends_on('mercury+bmi+sm')
+ depends_on('gotcha@1.0.3:')
+ depends_on('mercury@1.0.1+bmi', when='@:0.9.1')
+ depends_on('mochi-margo@0.4.3', when='@:0.9.1')
+ depends_on('mochi-margo', when='@0.9.2:')
depends_on('mpi')
depends_on('openssl')
# Optional dependencies
depends_on('hdf5', when='+hdf5')
- depends_on('spath', when='@0.9.1:+spath')
+ depends_on('libfabric fabrics=rxm,sockets,tcp', when="^mercury@2:+ofi")
+ depends_on('spath~mpi', when='+spath')
- conflicts('^mercury~bmi')
+ conflicts('^mercury~bmi~ofi')
conflicts('^mercury~sm')
# Known compatibility issues with ifort and xlf. Fixes coming.
conflicts('%intel', when='+fortran')
- conflicts('%xl', when='+fortran')
+ conflicts('%xl', when='+fortran')
- # Fix broken --enable-mpi-mount config option for version 0.9.0
- # See https://github.com/LLNL/UnifyFS/issues/467
- patch('auto-mount.patch', when='@0.9.0')
+ patch('unifyfs-sysio.c.patch', when='@0.9.1')
+ patch('include-sys-sysmacros.h.patch', when='@0.9.1:0.9.2')
# Parallel disabled to prevent tests from being run out-of-order when
# installed with the --test={root, all} option.
@@ -111,3 +111,8 @@ class Unifyfs(AutotoolsPackage):
def autoreconf(self, spec, prefix):
bash = which('bash')
bash('./autogen.sh')
+
+ @when('%cce@11.0.3:')
+ def patch(self):
+ filter_file('-Werror', '', 'client/src/Makefile.in')
+ filter_file('-Werror', '', 'client/src/Makefile.am')
diff --git a/var/spack/repos/builtin/packages/unifyfs/unifyfs-sysio.c.patch b/var/spack/repos/builtin/packages/unifyfs/unifyfs-sysio.c.patch
new file mode 100644
index 0000000000..99e2086b51
--- /dev/null
+++ b/var/spack/repos/builtin/packages/unifyfs/unifyfs-sysio.c.patch
@@ -0,0 +1,11 @@
+--- spack-src/client/src/unifyfs-sysio.c.bak 2020-12-03 09:04:41.197202000 +0900
++++ spack-src/client/src/unifyfs-sysio.c 2021-03-04 10:06:32.626989637 +0900
+@@ -245,7 +245,7 @@
+ * that is big enough */
+ buf = (char*) malloc(len);
+ if (buf != NULL) {
+- strncpy(buf, unifyfs_cwd, len);
++ memcpy(buf, unifyfs_cwd, strlen(unifyfs_cwd));
+ } else {
+ errno = ENOMEM;
+ }
diff --git a/var/spack/repos/builtin/packages/unigen/package.py b/var/spack/repos/builtin/packages/unigen/package.py
new file mode 100644
index 0000000000..ace8b6b4ab
--- /dev/null
+++ b/var/spack/repos/builtin/packages/unigen/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Unigen(MakefilePackage):
+ """The United Generators project was launched by the Virtual Institute 146
+ VI-SIM in September 2005 following a proposal of Herbert Strobele.
+ The goal was to facilitate comparison between various models (see below)
+ and/or various experiments (HADES, FOPI, CERES, NA49, CBM). The package
+ at present allows to convert output of various event generators to a
+ generic root format."""
+
+ homepage = "https://www.gsi.de/work/wissenschaftliche_netzwerke/helmholtz_virtuelle_institute/unigen.htm"
+ url = "https://github.com/FairRootGroup/UniGen/archive/v2.3.tar.gz"
+
+ tags = ['hep']
+
+ version('2.3', sha256='8783bcabbdf8c50dab6e93153cff9cfb267a9a9e61aef51bf1e17679ba42a717')
+ patch('unigen-2.3.patch', level=0)
+
+ depends_on('root', type=('build', 'link'))
+
+ def build(self, spec, prefix):
+ mkdirp(join_path(self.build_directory, 'lib'))
+ make('TOPDIR=' + self.build_directory, 'all')
+
+ def install(self, spec, prefix):
+ make('DESTDIR=' + prefix, 'TOPDIR=' + self.build_directory, 'install')
diff --git a/var/spack/repos/builtin/packages/unigen/unigen-2.3.patch b/var/spack/repos/builtin/packages/unigen/unigen-2.3.patch
new file mode 100644
index 0000000000..2cb58628df
--- /dev/null
+++ b/var/spack/repos/builtin/packages/unigen/unigen-2.3.patch
@@ -0,0 +1,127 @@
+--- config/Makelib.orig 2019-10-29 01:07:48.000000000 +0100
++++ config/Makelib 2021-01-27 15:09:05.473365100 +0100
+@@ -3,7 +3,7 @@
+
+
+ # Default target
+-all : obj dict lib
++all : lib
+
+
+ # ----- Rules for source compilation ----------
+@@ -20,7 +20,14 @@
+
+ $(TARGET)Dict.cxx : $(incl) include/$(TARGET)LinkDef.h
+ @echo 'Generating dictionary' $@ '...'
++ifneq ($(strip $(RLIBMAP)),)
++# ROOTv5
+ @rootcint -f $@ -c $(INCDIR) $^
++else
++#ROOT v6
++ @rootcling -f $@ -rmf $(TOPDIR)/lib/lib$(TARGET).rootmap -rml lib$(TARGET) -s lib$(TARGET) $(INCDIR) $^
++ @mv lib$(TARGET)_rdict.pcm $(TOPDIR)/lib/lib$(TARGET)_rdict.pcm
++endif
+ # -----------------------------------------------
+
+
+@@ -96,6 +103,7 @@
+ @rm -f $(TOPDIR)/lib/lib$(TARGET).so
+ @rm -f $(TOPDIR)/lib/lib$(TARGET).a
+ @rm -f $(TOPDIR)/lib/lib$(TARGET).rootmap
++ @rm -f $(TOPDIR)/lib/lib$(TARGET)_rdict.pcm
+
+ htmldoc :
+ @echo 'Building class documentation...'
+@@ -106,8 +114,10 @@
+ install_lib : lib
+ @echo 'Installing library ...'
+ mkdir -p -m 0755 $(DESTDIR)/lib
++ mkdir -p -m 0755 $(DESTDIR)/include/unigen
+ install -m 0755 $(TOPDIR)/lib/lib$(TARGET).so $(DESTDIR)/lib
+-ifneq ($(strip $(RLIBMAP)),)
+ install -m 0644 $(TOPDIR)/lib/lib$(TARGET).rootmap $(DESTDIR)/lib
++ifeq ($(strip $(RLIBMAP)),)
++ install -m 0644 $(TOPDIR)/lib/lib$(TARGET)_rdict.pcm $(DESTDIR)/lib
+ endif
+-
++ install -m 0644 include/*.h $(DESTDIR)/include/unigen
+--- converters/urqmd2u.cpp.orig 2019-10-29 01:07:48.000000000 +0100
++++ converters/urqmd2u.cpp 2021-01-27 15:04:37.547010300 +0100
+@@ -93,7 +93,6 @@
+ char *inpfile;
+ char *outfile;
+ char c;
+- int nevents;
+ string dust;
+
+ URun *ru = 0;
+@@ -101,7 +100,7 @@
+ int filetype, eos, aproj, zproj, atarg, ztarg, nr;
+ double beta, b, bmin, bmax, sigma, elab, plab, sqrts, time, dtime;
+
+- if (argc != 4) {
++ if (argc < 3 || argc > 4) {
+ cout << "usage: " << argv[0] << " inpfile outfile nevents\n";
+ cout << "example: " << argv[0] << " ftn14 ftn14.root 10\n";
+ exit(0);
+@@ -109,7 +108,7 @@
+
+ inpfile = argv[1];
+ outfile = argv[2];
+- nevents = atoi(argv[3]);
++ const int nevents = (argc == 4) ? atoi(argv[3]) : 1e8;
+
+ int nout=0;
+ in.open(inpfile);
+@@ -141,15 +140,14 @@
+ in.ignore(777,'\n'); // ignore the rest of the line
+
+ comment.clear();
+- // read 3 lines of options and 4 lines of params
+- for (int i=0; i<100; i++) {
+- getline(in,line);
+- if(0 == line.substr(0, 4).compare("pvec"))
+- {
+- break;
+- }
+- comment.append(line);
+- comment.append("\n");
++ // read options and parameters
++ while (true) {
++ getline(in, line);
++ if (TString(line).BeginsWith("op") || TString(line).BeginsWith("pa")) {
++ comment.append(line);
++ comment.append("\n");
++ } else
++ break;
+ }
+ //in.ignore(777,'\n');
+
+@@ -207,9 +205,15 @@
+ double m = 0.938271998;
+ double ecm = sqrts/2; // energy per nucleon in cm
+ double pcm = sqrt(ecm*ecm-m*m); // momentum per nucleon in cm
+- double gamma = 1.0/sqrt(1-beta*beta);
+- double pproj = gamma*(+pcm-beta*ecm);
+- double ptarg = gamma*(-pcm-beta*ecm);
++ double pproj = 0.0;
++ double ptarg = 0.0;
++ if (fabs(beta) < 1e-8) { // we are in CM
++ pproj = pcm;
++ ptarg = -pcm;
++ } else {
++ pproj = plab;
++ ptarg = 0.0;
++ }
+ ru = new URun(generator.data(), comment.data(),
+ aproj, zproj, pproj,
+ atarg, ztarg, ptarg,
+@@ -217,7 +221,7 @@
+ ru->Write();
+ fi->Write();
+ fi->Close();
+- return nout;
++
+ return 0;
+ }
+ /*****************************************************************************/
diff --git a/var/spack/repos/builtin/packages/unison/package.py b/var/spack/repos/builtin/packages/unison/package.py
index d0894419a6..fbc8d75c41 100644
--- a/var/spack/repos/builtin/packages/unison/package.py
+++ b/var/spack/repos/builtin/packages/unison/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/units/package.py b/var/spack/repos/builtin/packages/units/package.py
index 7ee1ecd2e1..56c2bbe2d4 100644
--- a/var/spack/repos/builtin/packages/units/package.py
+++ b/var/spack/repos/builtin/packages/units/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/unittest-cpp/package.py b/var/spack/repos/builtin/packages/unittest-cpp/package.py
index ffd5b92ec7..326cfaca33 100644
--- a/var/spack/repos/builtin/packages/unittest-cpp/package.py
+++ b/var/spack/repos/builtin/packages/unittest-cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/universal-ctags/package.py b/var/spack/repos/builtin/packages/universal-ctags/package.py
index 4027e589ec..0f37f69264 100644
--- a/var/spack/repos/builtin/packages/universal-ctags/package.py
+++ b/var/spack/repos/builtin/packages/universal-ctags/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,3 +21,4 @@ class UniversalCtags(AutotoolsPackage):
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
+ depends_on('libiconv', type='link')
diff --git a/var/spack/repos/builtin/packages/unixodbc/package.py b/var/spack/repos/builtin/packages/unixodbc/package.py
index b93e7eb166..595478a6e0 100644
--- a/var/spack/repos/builtin/packages/unixodbc/package.py
+++ b/var/spack/repos/builtin/packages/unixodbc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/unqlite/package.py b/var/spack/repos/builtin/packages/unqlite/package.py
index ff746cc75a..1b3112ec5b 100644
--- a/var/spack/repos/builtin/packages/unqlite/package.py
+++ b/var/spack/repos/builtin/packages/unqlite/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/unrar/package.py b/var/spack/repos/builtin/packages/unrar/package.py
index 09ffea40e6..1cf3a84b88 100644
--- a/var/spack/repos/builtin/packages/unrar/package.py
+++ b/var/spack/repos/builtin/packages/unrar/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/unuran/package.py b/var/spack/repos/builtin/packages/unuran/package.py
index 0bd35ee562..62ab5fa9d2 100644
--- a/var/spack/repos/builtin/packages/unuran/package.py
+++ b/var/spack/repos/builtin/packages/unuran/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/unzip/package.py b/var/spack/repos/builtin/packages/unzip/package.py
index 986bf60705..111164e9a2 100644
--- a/var/spack/repos/builtin/packages/unzip/package.py
+++ b/var/spack/repos/builtin/packages/unzip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/upcxx/package.py b/var/spack/repos/builtin/packages/upcxx/package.py
index d5c74bebb9..5eadf1596d 100644
--- a/var/spack/repos/builtin/packages/upcxx/package.py
+++ b/var/spack/repos/builtin/packages/upcxx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,10 +25,14 @@ class Upcxx(Package):
homepage = "https://upcxx.lbl.gov"
maintainers = ['bonachea']
- git = 'https://bonachea@bitbucket.org/berkeleylab/upcxx.git'
+ git = 'https://bitbucket.org/berkeleylab/upcxx.git'
version('develop', branch='develop')
version('master', branch='master')
+ version('2021.3.0', sha256='3433714cd4162ffd8aad9a727c12dbf1c207b7d6664879fc41259a4b351595b7')
+ version('2020.11.0', sha256='f6f212760a485a9f346ca11bb4751e7095bbe748b8e5b2389ff9238e9e321317',
+ url='https://bitbucket.org/berkeleylab/upcxx/downloads/upcxx-2020.11.0-memory_kinds_prototype.tar.gz')
+ version('2020.10.0', sha256='623e074b512bf8cad770a04040272e1cc660d2749760398b311f9bcc9d381a37')
version('2020.3.0', sha256='01be35bef4c0cfd24e9b3d50c88866521b9cac3ad4cbb5b1fc97aea55078810f')
version('2019.9.0', sha256='7d67ccbeeefb59de9f403acc719f52127a30801a2c2b9774a1df03f850f8f1d4')
version('2019.3.2', sha256='dcb0b337c05a0feb2ed5386f5da6c60342412b49cab10f282f461e74411018ad')
@@ -46,6 +50,13 @@ class Upcxx(Package):
msg='cross=none is unacceptable on Cray.' +
'Please specify an appropriate "cross" value')
+ # UPC++ always relies on GASNet-EX.
+ # The default (and recommendation) is to use the implicit, embedded version.
+ # This variant allows overriding with a particular version of GASNet-EX sources.
+ variant('gasnet', default=False,
+ description="Override embedded GASNet-EX version")
+ depends_on('gasnet conduits=none', when='+gasnet')
+
depends_on('mpi', when='+mpi')
depends_on('cuda', when='+cuda')
# Require Python2 2.7.5+ up to v2019.9.0
@@ -116,6 +127,8 @@ class Upcxx(Package):
env['CXX'] = spec['mpi'].mpicxx
else:
env['CXX'] = self.compiler.cxx
+ if '+gasnet' in self.spec:
+ env['GASNET'] = spec['gasnet'].prefix.src
installsh = Executable("./install")
installsh(prefix)
else:
@@ -146,13 +159,19 @@ class Upcxx(Package):
env['CC'] = real_cc
env['CXX'] = real_cxx
- installsh = Executable("./configure")
- installsh('--prefix=' + prefix)
+ options = ["--prefix=%s" % prefix]
+
+ if '+gasnet' in self.spec:
+ options.append('--with-gasnet=' + spec['gasnet'].prefix.src)
+
+ configure(*options)
make()
make('install')
+ install_tree('example', prefix.example)
+
@run_after('install')
@on_package_attributes(run_tests=True)
def test_install(self):
@@ -171,3 +190,15 @@ class Upcxx(Package):
if 'cross=none' in self.spec:
make('run-tests', 'NETWORKS=smp') # runs tests for smp backend
make('tests-clean') # cleanup
+
+ def test(self):
+ if self.spec.version <= Version('2019.9.0'):
+ spack.main.send_warning_to_tty(
+ "post-install tests not supported in UPC++ version " +
+ self.spec.version.string + " -- SKIPPED")
+ else: # run post-install smoke test:
+ test_install = join_path(self.prefix.bin, 'test-upcxx-install.sh')
+ self.run_test(test_install, expected=['SUCCESS'], status=0,
+ installed=True,
+ purpose='Checking UPC++ compile+link ' +
+ 'for all installed backends')
diff --git a/var/spack/repos/builtin/packages/uqtk/package.py b/var/spack/repos/builtin/packages/uqtk/package.py
index 46db9462a5..846b5bbfa7 100644
--- a/var/spack/repos/builtin/packages/uqtk/package.py
+++ b/var/spack/repos/builtin/packages/uqtk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/uriparser/package.py b/var/spack/repos/builtin/packages/uriparser/package.py
index e2a6536e9f..5ca053eaaf 100644
--- a/var/spack/repos/builtin/packages/uriparser/package.py
+++ b/var/spack/repos/builtin/packages/uriparser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/usbutils/package.py b/var/spack/repos/builtin/packages/usbutils/package.py
index 11f104b2e8..1db8646555 100644
--- a/var/spack/repos/builtin/packages/usbutils/package.py
+++ b/var/spack/repos/builtin/packages/usbutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/usearch/package.py b/var/spack/repos/builtin/packages/usearch/package.py
index e9aa3921d8..0bbb67f453 100644
--- a/var/spack/repos/builtin/packages/usearch/package.py
+++ b/var/spack/repos/builtin/packages/usearch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/userspace-rcu/package.py b/var/spack/repos/builtin/packages/userspace-rcu/package.py
index be03459d34..1e6030e247 100644
--- a/var/spack/repos/builtin/packages/userspace-rcu/package.py
+++ b/var/spack/repos/builtin/packages/userspace-rcu/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/utf8proc/package.py b/var/spack/repos/builtin/packages/utf8proc/package.py
index 55e7e114c6..1ec1f0425d 100644
--- a/var/spack/repos/builtin/packages/utf8proc/package.py
+++ b/var/spack/repos/builtin/packages/utf8proc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/util-linux-uuid/package.py b/var/spack/repos/builtin/packages/util-linux-uuid/package.py
new file mode 100644
index 0000000000..82fabd67d4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/util-linux-uuid/package.py
@@ -0,0 +1,46 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class UtilLinuxUuid(AutotoolsPackage):
+ """Util-linux is a suite of essential utilities for any Linux system."""
+
+ homepage = "https://github.com/karelzak/util-linux"
+ url = "https://www.kernel.org/pub/linux/utils/util-linux/v2.29/util-linux-2.29.2.tar.gz"
+ list_url = "https://www.kernel.org/pub/linux/utils/util-linux"
+ list_depth = 1
+
+ version('2.36.2', sha256='f5dbe79057e7d68e1a46fc04083fc558b26a49499b1b3f50e4f4893150970463')
+ version('2.36', sha256='82942cd877a989f6d12d4ce2c757fb67ec53d8c5cd9af0537141ec5f84a2eea3')
+
+ depends_on('pkgconfig', type='build')
+
+ provides('uuid')
+
+ def url_for_version(self, version):
+ url = "https://www.kernel.org/pub/linux/utils/util-linux/v{0}/util-linux-{1}.tar.gz"
+ return url.format(version.up_to(2), version)
+
+ @property
+ def libs(self):
+ return find_libraries('libuuid', self.prefix, recursive=True)
+
+ @property
+ def headers(self):
+ return find_headers('uuid', self.prefix, recursive=True)
+
+ def configure_args(self):
+ config_args = [
+ '--disable-use-tty-group',
+ '--disable-makeinstall-chown',
+ '--without-systemd',
+ '--disable-all-programs',
+ '--without-python',
+ '--enable-libuuid',
+ '--disable-bash-completion',
+ ]
+ return config_args
diff --git a/var/spack/repos/builtin/packages/util-linux/package.py b/var/spack/repos/builtin/packages/util-linux/package.py
index bfd1e40163..350d38f577 100644
--- a/var/spack/repos/builtin/packages/util-linux/package.py
+++ b/var/spack/repos/builtin/packages/util-linux/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class UtilLinux(AutotoolsPackage):
list_url = "https://www.kernel.org/pub/linux/utils/util-linux"
list_depth = 1
+ version('2.36.2', sha256='f5dbe79057e7d68e1a46fc04083fc558b26a49499b1b3f50e4f4893150970463')
+ version('2.36', sha256='82942cd877a989f6d12d4ce2c757fb67ec53d8c5cd9af0537141ec5f84a2eea3')
version('2.35.1', sha256='37ac05d82c6410d89bc05d43cee101fefc8fe6cf6090b3ce7a1409a6f35db606')
version('2.35', sha256='98acab129a8490265052e6c1e033ca96d68758a13bb7fcd232c06bf16cc96238')
version('2.34', sha256='b62c92e5e1629642113cd41cec1ee86d1ee7e36b8ffe8ec3ac89c11797e9ac25')
@@ -24,12 +26,10 @@ class UtilLinux(AutotoolsPackage):
version('2.29.1', sha256='a6a7adba65a368e6dad9582d9fbedee43126d990df51266eaee089a73c893653')
version('2.25', sha256='7e43273a9e2ab99b5a54ac914fddf5d08ba7ab9b114c550e9f03474672bd23a1')
- depends_on('python@2.7:')
- depends_on('pkgconfig')
+ depends_on('python@2.7:', type='build')
+ depends_on('pkgconfig', type='build')
+ depends_on('ncurses', type='link')
- # Make it possible to disable util-linux's libuuid so that you may
- # reliably depend_on(`libuuid`).
- variant('libuuid', default=True, description='Build libuuid')
variant('bash', default=False, description='Install bash completion scripts')
depends_on('bash', when="+bash", type='run')
@@ -43,6 +43,7 @@ class UtilLinux(AutotoolsPackage):
'--disable-use-tty-group',
'--disable-makeinstall-chown',
'--without-systemd',
+ '--disable-libuuid',
]
if "+bash" in self.spec:
config_args.extend(
@@ -52,7 +53,6 @@ class UtilLinux(AutotoolsPackage):
"share", "bash-completion", "completions")])
else:
config_args.append('--disable-bash-completion')
- config_args.extend(self.enable_or_disable('libuuid'))
return config_args
diff --git a/var/spack/repos/builtin/packages/util-macros/package.py b/var/spack/repos/builtin/packages/util-macros/package.py
index aed09613bf..4fa98bc32b 100644
--- a/var/spack/repos/builtin/packages/util-macros/package.py
+++ b/var/spack/repos/builtin/packages/util-macros/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/uvw/package.py b/var/spack/repos/builtin/packages/uvw/package.py
index cf6a96ee9c..534795727b 100644
--- a/var/spack/repos/builtin/packages/uvw/package.py
+++ b/var/spack/repos/builtin/packages/uvw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/valgrind/package.py b/var/spack/repos/builtin/packages/valgrind/package.py
index 20d8791f4e..c8ac9f71ce 100644
--- a/var/spack/repos/builtin/packages/valgrind/package.py
+++ b/var/spack/repos/builtin/packages/valgrind/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,8 @@ class Valgrind(AutotoolsPackage, SourcewarePackage):
git = "git://sourceware.org/git/valgrind.git"
version('develop', branch='master')
+ version('3.17.0', sha256='ad3aec668e813e40f238995f60796d9590eee64a16dff88421430630e69285a2')
+ version('3.16.1', sha256='c91f3a2f7b02db0f3bc99479861656154d241d2fdb265614ba918cc6720a33ca')
version('3.15.0', sha256='417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1')
version('3.14.0', sha256='037c11bfefd477cc6e9ebe8f193bb237fe397f7ce791b4a4ce3fa1c6a520baa5')
version('3.13.0', sha256='d76680ef03f00cd5e970bbdcd4e57fb1f6df7d2e2c071635ef2be74790190c3b')
diff --git a/var/spack/repos/builtin/packages/vampirtrace/package.py b/var/spack/repos/builtin/packages/vampirtrace/package.py
index da22aeb391..bef3b5ce71 100644
--- a/var/spack/repos/builtin/packages/vampirtrace/package.py
+++ b/var/spack/repos/builtin/packages/vampirtrace/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vapor/package.py b/var/spack/repos/builtin/packages/vapor/package.py
new file mode 100644
index 0000000000..e171c1950d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vapor/package.py
@@ -0,0 +1,50 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Vapor(CMakePackage):
+ """VAPOR is the Visualization and Analysis Platform for Ocean, Atmosphere,
+ and Solar Researchers.
+
+ VAPOR provides an interactive 3D visualization environment that can also
+ produce animations and still frame images."""
+
+ homepage = "https://www.vapor.ucar.edu/"
+ url = "https://github.com/NCAR/VAPOR/archive/3.3.0.tar.gz"
+
+ maintainers = ['RemiLacroix-IDRIS']
+
+ version('3.3.0', sha256='508f93db9f6d9307be260820b878d054553aeb1719087a14770889f9e50a18ac')
+
+ depends_on('gl') # GUI
+ depends_on('qt@5:+opengl+dbus') # GUI
+ depends_on('netcdf-c')
+ depends_on('udunits')
+ depends_on('freetype')
+ depends_on('libgeotiff')
+ depends_on('jpeg')
+ depends_on('glew') # GUI
+ depends_on('assimp')
+ depends_on('libtiff')
+ depends_on('proj')
+ depends_on('glm@0.9.9.1:')
+ depends_on('python@3.6.0:3.6.99')
+ depends_on('py-numpy')
+
+ def cmake_args(self):
+ with open('site.local', 'w') as f:
+ python = self.spec['python']
+ f.write('set (PYTHONVERSION {0})\n'.format(python.version.up_to(2)))
+ f.write('set (PYTHONDIR {0})\n'.format(python.home))
+ f.write('set (PYTHONPATH {0})\n'.format(python.package.site_packages_dir))
+
+ args = ['-DBUILD_OSP=OFF']
+ return args
+
+ def setup_run_environment(self, env):
+ # set VAPOR_HOME in the module file
+ env.set('VAPOR_HOME', self.prefix)
diff --git a/var/spack/repos/builtin/packages/vardictjava/package.py b/var/spack/repos/builtin/packages/vardictjava/package.py
index fa07b90db1..9f7cf57177 100644
--- a/var/spack/repos/builtin/packages/vardictjava/package.py
+++ b/var/spack/repos/builtin/packages/vardictjava/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/variorum/package.py b/var/spack/repos/builtin/packages/variorum/package.py
index d12efe20cc..2498f99fae 100644
--- a/var/spack/repos/builtin/packages/variorum/package.py
+++ b/var/spack/repos/builtin/packages/variorum/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,10 @@ class Variorum(CMakePackage):
maintainers = ["slabasan", "rountree"]
+ version('0.4.1', sha256='be7407b856bc2239ecaa27d3df80aee2f541bb721fbfa183612bd9c0ce061f28')
+ version('0.4.0', sha256='70ff1c5a3ae15d0bd07d409ab6f3c128e69528703a829cb18ecb4a50adeaea34')
+ version('0.3.0', sha256='f79563f09b8fe796283c879b05f7730c36d79ca0346c12995b7bccc823653f42')
+ version('0.2.0', sha256='b8c010b26aad8acc75d146c4461532cf5d9d3d24d6fc30ee68f6330a68e65744')
version("0.1.0", tag="v0.1.0")
############
diff --git a/var/spack/repos/builtin/packages/varnish-cache/package.py b/var/spack/repos/builtin/packages/varnish-cache/package.py
index 8d5c02f6cc..3e64e27106 100644
--- a/var/spack/repos/builtin/packages/varnish-cache/package.py
+++ b/var/spack/repos/builtin/packages/varnish-cache/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/varscan/package.py b/var/spack/repos/builtin/packages/varscan/package.py
index ecf83a1e5e..e062139028 100644
--- a/var/spack/repos/builtin/packages/varscan/package.py
+++ b/var/spack/repos/builtin/packages/varscan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vasp/package.py b/var/spack/repos/builtin/packages/vasp/package.py
index 68bf03bf99..065cd09415 100644
--- a/var/spack/repos/builtin/packages/vasp/package.py
+++ b/var/spack/repos/builtin/packages/vasp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,7 +17,9 @@ class Vasp(MakefilePackage):
homepage = "http://vasp.at"
url = "file://{0}/vasp.5.4.4.pl2.tgz".format(os.getcwd())
+ manual_download = True
+ version('6.1.1', sha256='e37a4dfad09d3ad0410833bcd55af6b599179a085299026992c2d8e319bf6927')
version('5.4.4.pl2', sha256='98f75fd75399a23d76d060a6155f4416b340a1704f256a00146f89024035bc8e')
version('5.4.4', sha256='5bd2449462386f01e575f9adf629c08cb03a13142806ffb6a71309ca4431cfb3')
@@ -56,6 +58,7 @@ class Vasp(MakefilePackage):
make_include = join_path('arch', 'makefile.include.linux_gnu')
elif '%nvhpc' in spec:
make_include = join_path('arch', 'makefile.include.linux_pgi')
+ filter_file('-pgc++libs', '-c++libs', make_include, string=True)
filter_file('pgcc', spack_cc, make_include)
filter_file('pgc++', spack_cxx, make_include, string=True)
filter_file('pgfortran', spack_fc, make_include)
@@ -76,6 +79,9 @@ class Vasp(MakefilePackage):
filter_file('^CPP_OPTIONS[ ]{0,}=[ ]{0,}',
'CPP_OPTIONS ?= ',
'makefile.include')
+ filter_file('^FFLAGS[ ]{0,}=[ ]{0,}',
+ 'FFLAGS ?= ',
+ 'makefile.include')
filter_file('^LIBDIR[ ]{0,}=.*$', '', 'makefile.include')
filter_file('^BLAS[ ]{0,}=.*$', 'BLAS ?=', 'makefile.include')
@@ -113,14 +119,24 @@ class Vasp(MakefilePackage):
'-Dqd_emulate'])
else:
cpp_options.append('-DHOST=\\"LinuxGNU\\"')
+ if self.spec.satisfies('@6:'):
+ cpp_options.append('-Dvasp6')
cflags = ['-fPIC', '-DADD_']
+ fflags = []
+ if '%gcc' in spec or '%intel' in spec:
+ fflags.append('-w')
+ elif '%nvhpc' in spec:
+ fflags.extend(['-Mnoupcase', '-Mbackslash', '-Mlarge_arrays'])
spack_env.set('BLAS', spec['blas'].libs.ld_flags)
spack_env.set('LAPACK', spec['lapack'].libs.ld_flags)
spack_env.set('FFTW', spec['fftw'].prefix)
spack_env.set('MPI_INC', spec['mpi'].prefix.include)
+ if '%nvhpc' in spec:
+ spack_env.set('QD', spec['qd'].prefix)
+
if '+scalapack' in spec:
cpp_options.append('-DscaLAPACK')
spack_env.set('SCALAPACK', spec['netlib-scalapack'].libs.ld_flags)
@@ -141,15 +157,19 @@ class Vasp(MakefilePackage):
if '+vaspsol' in spec:
cpp_options.append('-Dsol_compat')
+ if spec.satisfies('%gcc@10:'):
+ fflags.append('-fallow-argument-mismatch')
+
# Finally
spack_env.set('CPP_OPTIONS', ' '.join(cpp_options))
spack_env.set('CFLAGS', ' '.join(cflags))
+ spack_env.set('FFLAGS', ' '.join(fflags))
def build(self, spec, prefix):
if '+cuda' in self.spec:
make('gpu', 'gpu_ncl')
else:
- make()
+ make('std', 'gam', 'ncl')
def install(self, spec, prefix):
install_tree('bin/', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/vbfnlo/package.py b/var/spack/repos/builtin/packages/vbfnlo/package.py
index 99a9b53f3b..57627cda24 100644
--- a/var/spack/repos/builtin/packages/vbfnlo/package.py
+++ b/var/spack/repos/builtin/packages/vbfnlo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Vbfnlo(AutotoolsPackage):
homepage = "https://www.itp.kit.edu/vbfnlo/wiki/doku.php?id=overview"
url = "https://github.com/vbfnlo/vbfnlo/archive/v3.0.0beta5.tar.gz"
+ tags = ["hep"]
+
# The commented out versions exist, but are not tested
version('3.0.0beta5', sha256='777a3dedb365ea9abc38848a60f30d325da3799cbad69fa308664b94a8c31a90')
version('3.0.0beta4', sha256='511e84765e9634a75766a160eae1925812dacbb3943e7e3b4dc90e2eacac8a2c')
diff --git a/var/spack/repos/builtin/packages/vc/package.py b/var/spack/repos/builtin/packages/vc/package.py
index 7d975c352b..fd05baf441 100644
--- a/var/spack/repos/builtin/packages/vc/package.py
+++ b/var/spack/repos/builtin/packages/vc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vcftools/package.py b/var/spack/repos/builtin/packages/vcftools/package.py
index 92d49392c5..197287a8d2 100644
--- a/var/spack/repos/builtin/packages/vcftools/package.py
+++ b/var/spack/repos/builtin/packages/vcftools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vcsh/package.py b/var/spack/repos/builtin/packages/vcsh/package.py
index 3368c596df..6454c2f3f3 100644
--- a/var/spack/repos/builtin/packages/vcsh/package.py
+++ b/var/spack/repos/builtin/packages/vcsh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,4 +22,5 @@ class Vcsh(Package):
# vcsh provides a makefile, if needed the install method should be adapted
def install(self, spec, prefix):
+ mkdirp(prefix.bin)
install('vcsh', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/vdt/package.py b/var/spack/repos/builtin/packages/vdt/package.py
index 77c78e7f27..cc7bc06274 100644
--- a/var/spack/repos/builtin/packages/vdt/package.py
+++ b/var/spack/repos/builtin/packages/vdt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/veccore/package.py b/var/spack/repos/builtin/packages/veccore/package.py
index a339358a08..e04f71e219 100644
--- a/var/spack/repos/builtin/packages/veccore/package.py
+++ b/var/spack/repos/builtin/packages/veccore/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vecgeom/package.py b/var/spack/repos/builtin/packages/vecgeom/package.py
index 1df60770f5..581624b68e 100644
--- a/var/spack/repos/builtin/packages/vecgeom/package.py
+++ b/var/spack/repos/builtin/packages/vecgeom/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,9 +15,15 @@ class Vecgeom(CMakePackage, CudaPackage):
url = "https://gitlab.cern.ch/VecGeom/VecGeom/-/archive/v1.1.6/VecGeom-v1.1.6.tar.gz"
git = "https://gitlab.cern.ch/VecGeom/VecGeom.git"
+ tags = ['hep']
+
maintainers = ['drbenmorgan', 'sethrj']
version('master', branch='master')
+ version('1.1.13', sha256='6bb364cc74bdab2e64e2fe132debd7f1e192da0a103f5149df7ab25b7c19a205')
+ version('1.1.12', sha256='fec4495aac4a9d583f076551da61a68b956bba1dd1ebe1cd48c00ef95c962049')
+ version('1.1.9', sha256='a90e11bf83724300d1d7206e5fe89a7915c4ec6aae881587f18e282ac0f6ee8e')
+ version('1.1.8', sha256='9c42206d788ec4b791571882f5ea8d2c591c938abe61c21cc5ec37bfea6bf768')
version('1.1.7', sha256='cc79a0baa783b21ecc399c4e7cca925ca340e6aeb96e3b2cad45c141557519bf')
version('1.1.6', sha256='c4806a6b67d01b40074b8cc6865d78574a6a1c573be51696f2ecdf98b9cb954a')
version('1.1.5', sha256='da674f3bbc75c30f56c1a2d251fa8930c899f27fa64b03a36569924030d87b95')
diff --git a/var/spack/repos/builtin/packages/veclibfort/package.py b/var/spack/repos/builtin/packages/veclibfort/package.py
index bfd3fc2d32..a0b7744485 100644
--- a/var/spack/repos/builtin/packages/veclibfort/package.py
+++ b/var/spack/repos/builtin/packages/veclibfort/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vegas2/package.py b/var/spack/repos/builtin/packages/vegas2/package.py
index dff83b2adf..a4dfb1cbb1 100644
--- a/var/spack/repos/builtin/packages/vegas2/package.py
+++ b/var/spack/repos/builtin/packages/vegas2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/veloc/package.py b/var/spack/repos/builtin/packages/veloc/package.py
index f6b6d4b8b1..4129691435 100644
--- a/var/spack/repos/builtin/packages/veloc/package.py
+++ b/var/spack/repos/builtin/packages/veloc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,8 @@ class Veloc(CMakePackage):
version('master', branch='master')
version('1.4', sha256='d5d12aedb9e97f079c4428aaa486bfa4e31fe1db547e103c52e76c8ec906d0a8')
+ version('1.3', sha256='3817ea57045443c1a9a819560911db1175dbe4153e317adaa1492437f3f13f3b')
+ version('1.2', sha256='126a7e01d79458807a6545a8e5f92f8d62a23187dee70be0913b60a1393780e0')
version('1.1', sha256='2bbdacf3e0ce4e7c9e360874d8d85b405525bdc7bd992bdb1f1ba49218072160')
version('1.0', sha256='d594b73d6549a61fce8e67b8984a17cebc3e766fc520ed1636ae3683cdde77cb')
version('1.0rc1', sha256='81686ca0994a22475911d38d21c7c74b64ffef4ca872fd01f76d155c5124b0bc')
diff --git a/var/spack/repos/builtin/packages/velvet/package.py b/var/spack/repos/builtin/packages/velvet/package.py
index f205c8034f..3997262dc1 100644
--- a/var/spack/repos/builtin/packages/velvet/package.py
+++ b/var/spack/repos/builtin/packages/velvet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/velvetoptimiser/package.py b/var/spack/repos/builtin/packages/velvetoptimiser/package.py
index 8a71bb6ad0..d143b2b949 100644
--- a/var/spack/repos/builtin/packages/velvetoptimiser/package.py
+++ b/var/spack/repos/builtin/packages/velvetoptimiser/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/verilator/package.py b/var/spack/repos/builtin/packages/verilator/package.py
index c662ab1b62..690dc1aee6 100644
--- a/var/spack/repos/builtin/packages/verilator/package.py
+++ b/var/spack/repos/builtin/packages/verilator/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -35,6 +35,8 @@ class Verilator(AutotoolsPackage):
homepage = "https://www.veripool.org/projects/verilator"
url = "https://www.veripool.org/ftp/verilator-3.920.tgz"
+ version('4.108', sha256='8e8ec1de0bf200b6206035214f9071a5acc64bd2e7134361d564271e48552702')
+ version('4.020', sha256='abd79fc2a54cab9da33dfccd669bda3baa71e79060abec17517f0b7374dbc31a')
version('3.920', sha256='2b5c38aa432d0766a38475219f9548d64d18104ce8bdcb5d29e42f5da06943ff')
version('3.904', sha256='ea95e08b2d70682ad42e6c2f5ba99f59b2e7b220791214076099cdf6b7a8c1cb')
diff --git a/var/spack/repos/builtin/packages/verrou/package.py b/var/spack/repos/builtin/packages/verrou/package.py
index f92443d144..a791ab8e1e 100644
--- a/var/spack/repos/builtin/packages/verrou/package.py
+++ b/var/spack/repos/builtin/packages/verrou/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vesta/package.py b/var/spack/repos/builtin/packages/vesta/package.py
index 65a9a0fa12..5875ffc65b 100644
--- a/var/spack/repos/builtin/packages/vesta/package.py
+++ b/var/spack/repos/builtin/packages/vesta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vgm/package.py b/var/spack/repos/builtin/packages/vgm/package.py
index 2ae62bdff1..71624929e7 100644
--- a/var/spack/repos/builtin/packages/vgm/package.py
+++ b/var/spack/repos/builtin/packages/vgm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,8 @@ class Vgm(CMakePackage):
url = "https://github.com/vmc-project/vgm/archive/v4-8.tar.gz"
git = "https://github.com/vmc-project/vgm.git"
+ tags = ['hep']
+
maintainer = ['wdconinc']
version('master', branch='master')
diff --git a/var/spack/repos/builtin/packages/videoproto/package.py b/var/spack/repos/builtin/packages/videoproto/package.py
index 8aa1fea213..4eb33f48cb 100644
--- a/var/spack/repos/builtin/packages/videoproto/package.py
+++ b/var/spack/repos/builtin/packages/videoproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/viennarna/package.py b/var/spack/repos/builtin/packages/viennarna/package.py
index f06629f098..3d0dffc87a 100644
--- a/var/spack/repos/builtin/packages/viennarna/package.py
+++ b/var/spack/repos/builtin/packages/viennarna/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/viewres/package.py b/var/spack/repos/builtin/packages/viewres/package.py
index 7294e2ab0c..028968f176 100644
--- a/var/spack/repos/builtin/packages/viewres/package.py
+++ b/var/spack/repos/builtin/packages/viewres/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vifi/package.py b/var/spack/repos/builtin/packages/vifi/package.py
index e2c0bfa472..2a165e4505 100644
--- a/var/spack/repos/builtin/packages/vifi/package.py
+++ b/var/spack/repos/builtin/packages/vifi/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vigra/package.py b/var/spack/repos/builtin/packages/vigra/package.py
index 217f55a9bd..94b5a21e5a 100644
--- a/var/spack/repos/builtin/packages/vigra/package.py
+++ b/var/spack/repos/builtin/packages/vigra/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,8 +12,10 @@ class Vigra(CMakePackage):
customizable algorithms and data structures"""
homepage = "https://ukoethe.github.io/vigra/"
+ git = "https://github.com/ukoethe/vigra.git"
url = "https://github.com/ukoethe/vigra/releases/download/Version-1-11-1/vigra-1.11.1-src.tar.gz"
+ version('master', branch='master')
version('1.11.1', sha256='a5564e1083f6af6a885431c1ee718bad77d11f117198b277557f8558fa461aaf')
variant('png', default=False, description='Include support for PNG images')
diff --git a/var/spack/repos/builtin/packages/vim/package.py b/var/spack/repos/builtin/packages/vim/package.py
index 722fe46a67..21cd2b0599 100644
--- a/var/spack/repos/builtin/packages/vim/package.py
+++ b/var/spack/repos/builtin/packages/vim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,9 @@ class Vim(AutotoolsPackage):
homepage = "http://www.vim.org"
url = "https://github.com/vim/vim/archive/v8.1.0338.tar.gz"
+ version('8.2.2541', sha256='2699dfe87b524169e7390f0b383c406cb77a9fde7431665d3b9b80964d8d5daf')
version('8.2.1201', sha256='39032fe866f44724b104468038dc9ac4ff2c00a4b18c9a1e2c27064ab1f1143d')
+ version('8.2.0752', sha256='d616945810dac5a1fab2f23b003d22bdecd34861b31f208d5d0012a609821c0f')
version('8.1.2141', sha256='7be3c3d88a6c871121230ffb9b7371b1d2ab462118dedb967c7265473af1144b')
version('8.1.0338', sha256='3febcc4e49eaca458be1a1e8055a3a52887aa2054b03e24d5f38d192c3de51a0')
version('8.1.0001', sha256='c342acaa26589f371fa34a5ca213b95811f26185c12443f8f48ad2868dee2935')
diff --git a/var/spack/repos/builtin/packages/virtualgl/package.py b/var/spack/repos/builtin/packages/virtualgl/package.py
index 9ac87f3609..8aa30eeba0 100644
--- a/var/spack/repos/builtin/packages/virtualgl/package.py
+++ b/var/spack/repos/builtin/packages/virtualgl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/virtuoso/package.py b/var/spack/repos/builtin/packages/virtuoso/package.py
new file mode 100644
index 0000000000..f23626411a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/virtuoso/package.py
@@ -0,0 +1,58 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+
+from spack import *
+
+
+class Virtuoso(AutotoolsPackage):
+ """Virtuoso is a high-performance and scalable Multi-Model RDBMS,
+ Data Integration Middleware, Linked Data Deployment, and HTTP
+ Application Server Platform"""
+
+ homepage = "https://github.com/openlink/virtuoso-opensource"
+ git = "https://github.com/openlink/virtuoso-opensource.git"
+
+ version('7.2.5.1-dev', commit='3ff1d4b3de3977337baf909c264968b9f70b7d2c')
+
+ variant('dbpedia-vad', default=False, description='DBpedia vad package')
+ variant('demo-vad', default=False, description='Demo vad package')
+ variant('fct-vad', default=True, description='Facet Browser vad package')
+ variant('ods-vad', default=True, description='ODS vad package')
+ variant('sparqldemo-vad', default=False, description='Sparql Demo vad package')
+ variant('tutorial-vad', default=False, description='Tutorial vad package')
+ variant('isparql-vad', default=True, description='iSPARQL vad package')
+ variant('rdfmappers-vad', default=True, description='RDF Mappers vad package')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('bison', type='build')
+ depends_on('flex', type='build')
+ depends_on('gperf')
+ depends_on('readline')
+ depends_on('openssl@0.9.8:1.1.99')
+
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./autogen.sh')
+
+ def configure_args(self):
+ readlinep = self.spec['readline'].prefix.lib
+ args = ['--with-layout=opt',
+ '--program-transform-name=s/isql/isql-v/',
+ '--with-readline={0}'.format(readlinep)
+ ]
+ args.extend(self.enable_or_disable('dbpedia-vad'))
+ args.extend(self.enable_or_disable('demo-vad'))
+ args.extend(self.enable_or_disable('fct-vad'))
+ args.extend(self.enable_or_disable('ods-vad'))
+ args.extend(self.enable_or_disable('sparqldemo-vad'))
+ args.extend(self.enable_or_disable('tutorial-vad'))
+ args.extend(self.enable_or_disable('isparql-vad'))
+ args.extend(self.enable_or_disable('rdfmappers-vad'))
+ return args
diff --git a/var/spack/repos/builtin/packages/visit-cgns/package.py b/var/spack/repos/builtin/packages/visit-cgns/package.py
new file mode 100644
index 0000000000..c4b9815af3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/visit-cgns/package.py
@@ -0,0 +1,97 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+# Import re module to use regular expression
+import re
+
+
+class VisitCgns(CMakePackage):
+ """This is the CGNS Plug-In for VisIt.
+ It can be installed after VisIt is installed along CGNS library.
+ """
+
+ # These settings are exactly those of VisIt
+ homepage = "https://wci.llnl.gov/simulation/computer-codes/visit/"
+ git = "https://github.com/visit-dav/visit.git"
+ url = "https://github.com/visit-dav/visit/releases/download/v3.1.1/visit3.1.1.tar.gz"
+
+ maintainers = ['cyrush', 'cessenat']
+
+ # Here we provide a local file that contains only the plugin in a flat directory
+ version('local', url='file://{0}/visit-CGNS.tgz'.format(os.getcwd()))
+ # Below we copy the VisIt paths:
+ version('develop', branch='develop')
+ version('3.1.4', sha256='be20d9acf56f0599e3c511709f48d8d3b232a57425f69d2bd1e2df1eccb84c93')
+ version('3.1.1', sha256='0b60ac52fd00aff3cf212a310e36e32e13ae3ca0ddd1ea3f54f75e4d9b6c6cf0')
+ version('3.0.1', sha256='a506d4d83b8973829e68787d8d721199523ce7ec73e7594e93333c214c2c12bd')
+ version('2.13.3', sha256='cf0b3d2e39e1cd102dd886d3ef6da892733445e362fc28f24d9682012cccf2e5')
+ version('2.13.0', sha256='716644b8e78a00ff82691619d4d1e7a914965b6535884890b667b97ba08d6a0f')
+ version('2.12.3', sha256='2dd351a291ee3e79926bc00391ca89b202cfa4751331b0fdee1b960c7922161f')
+ version('2.12.2', sha256='55897d656ac2ea4eb87a30118b2e3963d6c8a391dda0790268426a73e4b06943')
+ version('2.10.3', sha256='05018215c4727eb42d47bb5cc4ff937b2a2ccaca90d141bc7fa426a0843a5dbc')
+ version('2.10.2', sha256='89ecdfaf197ef431685e31b75628774deb6cd75d3e332ef26505774403e8beff')
+ version('2.10.1', sha256='6b53dea89a241fd03300a7a3a50c0f773e2fb8458cd3ad06816e9bd2f0337cd8')
+
+ depends_on('cmake', type='build')
+ depends_on('cgns@3.3.1+int64~scoping~legacy', when='@2.10.1:3.1.14')
+ depends_on('cgns+int64~scoping~legacy')
+ depends_on('visit')
+
+ extends('visit')
+
+ build_targets = ['VERBOSE=1']
+ phases = ['cmake', 'build']
+
+ @property
+ def root_cmakelists_dir(self):
+ if '@local' not in self.spec:
+ return join_path('src', 'databases', 'CGNS')
+ else:
+ return '.'
+
+ @property
+ def build_directory(self):
+ return self.root_cmakelists_dir
+
+ @run_before('cmake')
+ def run_xml2cmake(self):
+ spec = self.spec
+ visit = spec['visit']
+ args = ['-v', str(visit.version), '-clobber', '-public', 'CGNS.xml']
+ with working_dir(self.root_cmakelists_dir):
+ # Regenerate the public cmake files
+ if os.path.exists("CMakeLists.txt"):
+ os.unlink('CMakeLists.txt')
+ which("xml2cmake")(*args)
+ # spack extension activate : alter VISIT_PLUGIN_DIR ;
+ # xml2cmake should have set it to visit prefix but it can
+ # happen the directory is an alias.
+ f = 0
+ mstr = r'^SET[(]VISIT_PLUGIN_DIR\s+\"{0}(.+)\"[)]'.format(visit.prefix)
+ with open('CMakeLists.txt', 'r') as file:
+ for line in file:
+ if re.search(mstr, line):
+ f = 1
+ elif re.search(r'^SET\(VISIT_PLUGIN_DIR\s+\"(.+)\"\)', line):
+ f = 2
+ cmf = FileFilter('CMakeLists.txt')
+ if f == 1:
+ cmf.filter(mstr, r'SET(VISIT_PLUGIN_DIR "{0}\1")'.format(prefix))
+ elif f == 2:
+ vis = join_path(prefix, spec.platform + '_'
+ + str(spec.target.family), 'plugins')
+ cmf.filter(r'^SET\(VISIT_PLUGIN_DIR\s+\"(.+)\"\)',
+ r'SET(VISIT_PLUGIN_DIR "{0}")'.format(vis))
+
+ def cmake_args(self):
+ cgns = self.spec['cgns']
+ args = [
+ '-DCGNS_INCLUDE_DIR=' + cgns.prefix.include,
+ '-DCGNS_LIBRARY_DIR=' + cgns.prefix.lib,
+ '-DCGNS_LIB=' + cgns.libs.link_flags,
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/visit-silo/package.py b/var/spack/repos/builtin/packages/visit-silo/package.py
new file mode 100644
index 0000000000..4475435476
--- /dev/null
+++ b/var/spack/repos/builtin/packages/visit-silo/package.py
@@ -0,0 +1,86 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+import os
+
+
+class VisitSilo(CMakePackage):
+ """This is the Silo Plug-In for VisIt.
+ It can be installed after VisIt is installed along SILO library.
+ It is made as an extension to VisIt that can be activated or as an environment
+ with a view: ~/.visit
+ Complete explanation at:
+ https://github.com/spack/spack/pull/22907#issuecomment-824218296
+ """
+
+ # These settings are exactly those of VisIt
+ homepage = "https://wci.llnl.gov/simulation/computer-codes/visit/"
+ git = "https://github.com/visit-dav/visit.git"
+ url = "https://github.com/visit-dav/visit/releases/download/v3.1.1/visit3.1.1.tar.gz"
+
+ maintainers = ['cyrush', 'cessenat']
+
+ # Here we provide a local file that contains only the plugin in a flat directory
+ version('local', url='file://{0}/visit-Silo.tgz'.format(os.getcwd()))
+ # Below we copy the VisIt paths:
+ version('develop', branch='develop')
+ version('3.1.4', sha256='be20d9acf56f0599e3c511709f48d8d3b232a57425f69d2bd1e2df1eccb84c93')
+ version('3.1.3', sha256='fb8c133dd2feabe9a70fa5574fdefc0f2dc4ec6d5ed8b08bfb19b3d610eed43e')
+ version('3.1.2', sha256='cbe3864bd9a3025a643de3a218ad59b5501c8a4331af7b055a22d69cce9ca076')
+ version('3.1.1', sha256='0b60ac52fd00aff3cf212a310e36e32e13ae3ca0ddd1ea3f54f75e4d9b6c6cf0')
+ version('3.0.1', sha256='a506d4d83b8973829e68787d8d721199523ce7ec73e7594e93333c214c2c12bd')
+ version('2.13.3', sha256='cf0b3d2e39e1cd102dd886d3ef6da892733445e362fc28f24d9682012cccf2e5')
+ version('2.13.0', sha256='716644b8e78a00ff82691619d4d1e7a914965b6535884890b667b97ba08d6a0f')
+ version('2.12.3', sha256='2dd351a291ee3e79926bc00391ca89b202cfa4751331b0fdee1b960c7922161f')
+ version('2.12.2', sha256='55897d656ac2ea4eb87a30118b2e3963d6c8a391dda0790268426a73e4b06943')
+ version('2.10.3', sha256='05018215c4727eb42d47bb5cc4ff937b2a2ccaca90d141bc7fa426a0843a5dbc')
+ version('2.10.2', sha256='89ecdfaf197ef431685e31b75628774deb6cd75d3e332ef26505774403e8beff')
+ version('2.10.1', sha256='6b53dea89a241fd03300a7a3a50c0f773e2fb8458cd3ad06816e9bd2f0337cd8')
+
+ depends_on('cmake', type='build')
+ depends_on('silo')
+ depends_on('visit')
+
+ extends('visit')
+
+ build_targets = ['VERBOSE=1']
+ phases = ['cmake', 'build']
+
+ @property
+ def root_cmakelists_dir(self):
+ if '@local' not in self.spec:
+ return join_path('src', 'databases', 'Silo')
+ else:
+ return '.'
+
+ @property
+ def build_directory(self):
+ return self.root_cmakelists_dir
+
+ @run_before('cmake')
+ def run_xml2cmake(self):
+ spec = self.spec
+ visit = spec['visit']
+ args = ['-v', str(visit.version), '-clobber', '-public', 'Silo.xml']
+ with working_dir(self.root_cmakelists_dir):
+ # Regenerate the public cmake files
+ if os.path.exists("CMakeLists.txt"):
+ os.unlink('CMakeLists.txt')
+ which("xml2cmake")(*args)
+ # spack extension activate : alter VISIT_PLUGIN_DIR
+ cmf = FileFilter('CMakeLists.txt')
+ cmf.filter(r'^SET\(VISIT_PLUGIN_DIR\s+\"{0}(.+)\"\)'.
+ format(visit.prefix),
+ r'SET(VISIT_PLUGIN_DIR "{0}\1")'.format(prefix))
+
+ def cmake_args(self):
+ silo = self.spec['silo']
+ args = [
+ '-DSILO_INCLUDE_DIR=' + silo.prefix.include,
+ '-DSILO_LIBRARY_DIR=' + silo.prefix.lib,
+ '-DSILO_LIB=' + silo.libs.link_flags,
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/visit/package.py b/var/spack/repos/builtin/packages/visit/package.py
index 2bdb274273..d9e3ee0a5d 100644
--- a/var/spack/repos/builtin/packages/visit/package.py
+++ b/var/spack/repos/builtin/packages/visit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -60,6 +60,8 @@ class Visit(CMakePackage):
maintainers = ['cyrush']
+ extendable = True
+
version('develop', branch='develop')
version('3.1.1', sha256='0b60ac52fd00aff3cf212a310e36e32e13ae3ca0ddd1ea3f54f75e4d9b6c6cf0')
version('3.0.1', sha256='a506d4d83b8973829e68787d8d721199523ce7ec73e7594e93333c214c2c12bd')
@@ -180,8 +182,8 @@ class Visit(CMakePackage):
depends_on('vtk+python', when='+python @3.0:,develop')
depends_on('vtk~mpi', when='~mpi')
depends_on('vtk+qt', when='+gui')
- depends_on('qt@4.8.6:4.999', when='+gui @:2.999')
- depends_on('qt@5.10:', when='+gui @3.0:,develop')
+ depends_on('qt+gui@4.8.6:4.999', when='+gui @:2.999')
+ depends_on('qt+gui@5.10:', when='+gui @3.0:,develop')
depends_on('qwt', when='+gui')
depends_on('python@2.6:2.8', when='+python')
# VisIt uses Silo's 'ghost zone' data structures, which are only available
@@ -231,6 +233,9 @@ class Visit(CMakePackage):
'-DCMAKE_C_FLAGS=' + ' '.join(cc_flags),
]
+ # Provide the plugin compilation environment so as to extend VisIt
+ args.append('-DVISIT_INSTALL_THIRD_PARTY=ON')
+
if spec.satisfies('@3.1:'):
args.append('-DFIXUP_OSX=OFF')
diff --git a/var/spack/repos/builtin/packages/vizglow/package.py b/var/spack/repos/builtin/packages/vizglow/package.py
index 41118b5f89..6e6639a778 100644
--- a/var/spack/repos/builtin/packages/vizglow/package.py
+++ b/var/spack/repos/builtin/packages/vizglow/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vmatch/package.py b/var/spack/repos/builtin/packages/vmatch/package.py
index 60e1bfb66f..a2192a6ad2 100644
--- a/var/spack/repos/builtin/packages/vmatch/package.py
+++ b/var/spack/repos/builtin/packages/vmatch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vmc/package.py b/var/spack/repos/builtin/packages/vmc/package.py
index 93282c4469..5e1889ddfc 100644
--- a/var/spack/repos/builtin/packages/vmc/package.py
+++ b/var/spack/repos/builtin/packages/vmc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vmd/package.py b/var/spack/repos/builtin/packages/vmd/package.py
index 18dc9a9e43..1746d7bce8 100644
--- a/var/spack/repos/builtin/packages/vmd/package.py
+++ b/var/spack/repos/builtin/packages/vmd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,9 +23,16 @@ class Vmd(Package):
homepage = "https://www.ks.uiuc.edu/Research/vmd/"
version('1.9.3', sha256='145b4d0cc10b56cadeb71e16c54ab8be713e268f11491714cd617422758ec643',
url='file://{0}/vmd-1.9.3.bin.LINUXAMD64-CUDA8-OptiX4-OSPRay111p1.opengl.tar.gz'.format(os.getcwd()))
+ manual_download = True
phases = ['configure', 'install']
+ depends_on('libx11', type=('run', 'link'))
+ depends_on('libxi', type=('run', 'link'))
+ depends_on('libxinerama', type=('run', 'link'))
+ depends_on('gl@3:', type=('run', 'link'))
+ depends_on('patchelf', type='build')
+
def setup_build_environment(self, env):
env.set('VMDINSTALLBINDIR', self.prefix.bin)
env.set('VMDINSTALLLIBRARYDIR', self.prefix.lib64)
@@ -38,5 +45,15 @@ class Vmd(Package):
with working_dir(join_path(self.stage.source_path, 'src')):
make('install')
+ # make sure the executable finds and uses the Spack-provided
+ # libraries, otherwise the executable may or may not run depending
+ # on what is installed on the host
+ patchelf = which('patchelf')
+ rpath = ':'.join(
+ self.spec[dep].libs.directories[0]
+ for dep in ['libx11', 'libxi', 'libxinerama', 'gl'])
+ patchelf('--set-rpath', rpath,
+ join_path(self.prefix, 'lib64', 'vmd_LINUXAMD64'))
+
def setup_run_environment(self, env):
env.set('PLUGINDIR', self.spec.prefix.lib64.plugins)
diff --git a/var/spack/repos/builtin/packages/volk/package.py b/var/spack/repos/builtin/packages/volk/package.py
index 846948f87a..bd96d7ad31 100644
--- a/var/spack/repos/builtin/packages/volk/package.py
+++ b/var/spack/repos/builtin/packages/volk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/voropp/package.py b/var/spack/repos/builtin/packages/voropp/package.py
index 5dc7406afc..4a1172064d 100644
--- a/var/spack/repos/builtin/packages/voropp/package.py
+++ b/var/spack/repos/builtin/packages/voropp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/votca-csg-tutorials/package.py b/var/spack/repos/builtin/packages/votca-csg-tutorials/package.py
index 80b9291eb4..2890a1bf0d 100644
--- a/var/spack/repos/builtin/packages/votca-csg-tutorials/package.py
+++ b/var/spack/repos/builtin/packages/votca-csg-tutorials/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,9 @@ class VotcaCsgTutorials(CMakePackage):
version('master', branch='master')
version('stable', branch='stable')
+ version('2021', sha256='2b85c69007bb7d773529020e55fd82fed65651ee21eedccca9a801ab248ece97')
+ version('1.6.4', sha256='34ef40db6b178a7f513f8a6f43e7caff6ecb498d66d7bf8bc44900bc7aea31dc')
+ version('1.6.3', sha256='709582b978d84f9de09ae6c3ba4ed28daec886d4e0431bc7d19c7246bd65f0b1')
version('1.6.2', sha256='7c25e76391f3ffdd15f8a91aeed2d3ce7377591f128ed4ae34b36eca20e5af8f')
version('1.6.1', sha256='d8428c4a03ce42d88317045ec555af3defa022fd9a61f05e07b57c5577288c8c')
version('1.6', sha256='54946c647724f1beb95942d47ec7f4cf7a95a59ec7268522693d5ec723585daf')
@@ -31,6 +34,6 @@ class VotcaCsgTutorials(CMakePackage):
version('1.4', sha256='27d50acd68a9d8557fef18ec2b0c62841ae91c22275ab9afbd65c35e4dd5f719')
for v in ["1.4", "1.4.1", "1.5", "1.5.1", "1.6", "1.6.1", "1.6.2",
- "master", "stable"]:
+ "1.6.3", "1.6.4", "2021", "master", "stable"]:
depends_on('votca-csg@%s' % v, when="@%s:%s.0" % (v, v))
depends_on("boost")
diff --git a/var/spack/repos/builtin/packages/votca-csg/package.py b/var/spack/repos/builtin/packages/votca-csg/package.py
index 871154f2ba..5ecc282f34 100644
--- a/var/spack/repos/builtin/packages/votca-csg/package.py
+++ b/var/spack/repos/builtin/packages/votca-csg/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,9 @@ class VotcaCsg(CMakePackage):
version('master', branch='master')
version('stable', branch='stable')
+ version('2021', sha256='d66c9b30ce2a56d630d5db281444447d398be643005ebea70d3735fb60357305')
+ version('1.6.4', sha256='eae771b623f3c3edb09744030d053f10c75d64bad919df26c4f9bf3bfaa1cf86')
+ version('1.6.3', sha256='35456b1f3116364b10ada37d99798294bd2d3df2e670cef3936251f88036ef88')
version('1.6.2', sha256='96b244b282005259832ed6ec0dc22dafe132dcfc3d73dcd8e53b62f40befb545')
version('1.6.1', sha256='ed12bcb1ccdf71f54e21cdcc9803add4b8ebdc6b8263cb5b0034f5db01e31dbb')
version('1.6', sha256='8cf6a4ac3ef7347c720a44d8a676f8cbd1462e162f6113de39f27b89354465ea')
@@ -32,7 +35,7 @@ class VotcaCsg(CMakePackage):
depends_on("cmake@2.8:", type='build')
for v in ["1.4", "1.4.1", "1.5", "1.5.1", "1.6", "1.6.1", "1.6.2",
- "master", "stable"]:
+ "1.6.3", "1.6.4", "2021", "master", "stable"]:
depends_on('votca-tools@%s' % v, when="@%s:%s.0" % (v, v))
depends_on("boost")
depends_on("gromacs~mpi@5.1:2019.9999")
diff --git a/var/spack/repos/builtin/packages/votca-csgapps/package.py b/var/spack/repos/builtin/packages/votca-csgapps/package.py
index 9661335595..6d344915d9 100644
--- a/var/spack/repos/builtin/packages/votca-csgapps/package.py
+++ b/var/spack/repos/builtin/packages/votca-csgapps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,8 +20,8 @@ class VotcaCsgapps(CMakePackage):
git = "https://github.com/votca/csgapps.git"
maintainers = ['junghans']
- version('master', branch='master')
- version('stable', branch='stable')
+ version('1.6.4', sha256='ef3d6fbc7f2ff2f29af7d170a5351ae3c37f52ca4c2b1697b1d2e30c26ff4eb1')
+ version('1.6.3', sha256='fdb6a94eabdfe1bfae6002da16e364086d036c2dc24700a941b73d5bb1afc422')
version('1.6.2', sha256='f7db0bda27d4419c570f44dc60d04b1fd7b4cdcf10db6301005fca70111fcfe3')
version('1.6.1', sha256='03c7cef2a76e73cf953b2b5ea2cdca765ec1a2627d0a9d8869d46166e63d197c')
version('1.6', sha256='084bbc5b179bb7eb8f6671d2d5fa13e69e68946570c9120a7e4b10aff1866e2e')
@@ -31,6 +31,6 @@ class VotcaCsgapps(CMakePackage):
version('1.4', sha256='4ea8348c2f7de3cc488f48fbd8652e69b52515441952766c06ff67ed1aaf69a0')
for v in ["1.4", "1.4.1", "1.5", "1.5.1", "1.6", "1.6.1", "1.6.2",
- "master", "stable"]:
+ "1.6.3", "1.6.4"]:
depends_on('votca-csg@%s' % v, when="@%s:%s.0" % (v, v))
depends_on("boost")
diff --git a/var/spack/repos/builtin/packages/votca-ctp/package.py b/var/spack/repos/builtin/packages/votca-ctp/package.py
index 15648f5d50..4fce94aec9 100644
--- a/var/spack/repos/builtin/packages/votca-ctp/package.py
+++ b/var/spack/repos/builtin/packages/votca-ctp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/votca-tools/package.py b/var/spack/repos/builtin/packages/votca-tools/package.py
index 55f080e579..21150834a3 100644
--- a/var/spack/repos/builtin/packages/votca-tools/package.py
+++ b/var/spack/repos/builtin/packages/votca-tools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,9 @@ class VotcaTools(CMakePackage):
version('master', branch='master')
version('stable', branch='stable')
+ version('2021', sha256='b84f68ba4a8bfae7b06b61e1e078dcbfb3b340c516da3be39ef545152da00ccd')
+ version('1.6.4', sha256='aa79ef4617a80ba3ca063932d5ee0d5767c0285b4b613abd373ad3c986ab9f4c')
+ version('1.6.3', sha256='b4ba63861f4342070d81309992f76c4cc798dffeab894bff64799881e75b3cc2')
version('1.6.2', sha256='1b31e0dd7550b80b963e6714d671f3516d68ebc1e75068a5d827a6e8b4f1759a')
version('1.6.1', sha256='3e8f51d484cb3fdfbeb851aab387807ba4c40aecef8317c90182da68ad282dcc')
version('1.6', sha256='cfd0fedc80fecd009f743b5df47777508d76bf3ef294a508a9f11fbb42efe9a5')
@@ -38,7 +41,7 @@ class VotcaTools(CMakePackage):
depends_on("cmake@2.8:", type='build')
depends_on("expat")
- depends_on("fftw")
+ depends_on("fftw-api@3")
depends_on("gsl", when="@1.4:1.4.9999")
depends_on("eigen@3.3:", when="@stable,1.5:")
depends_on("boost")
diff --git a/var/spack/repos/builtin/packages/votca-xtp/package.py b/var/spack/repos/builtin/packages/votca-xtp/package.py
index 21b40cee92..51d6678876 100644
--- a/var/spack/repos/builtin/packages/votca-xtp/package.py
+++ b/var/spack/repos/builtin/packages/votca-xtp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,9 @@ class VotcaXtp(CMakePackage):
version('master', branch='master')
version('stable', branch='stable')
+ version('2021', sha256='43bb5a52fec675738f4b5896f0833a1c1090bd7e74f97769697495abf4652e40')
+ version('1.6.4', sha256='699a835954556cf6b2f20dac7942c1761c6dd6c6c3fbdde62c8bfcfd71ee075b')
+ version('1.6.3', sha256='757b9a6a470b3c356f638d62269c5b72b8ace374f006658aef8bb6afd1ad1413')
version('1.6.2', sha256='b51a28cddceca6998b981ad61466617ad624d577ce424c0653d92a680f460061')
version('1.6.1', sha256='886af50bc12457bbafb06dc927b7fd4cadc3db1b4615b24a08953f6b358debef')
version('1.6', sha256='695c2d9d3f924103481529f992e3723bdce10b8edfc294421a849cdf51dbbb6e')
@@ -31,10 +34,10 @@ class VotcaXtp(CMakePackage):
depends_on("cmake@2.8:", type='build')
for v in ["1.4.1", "1.5", "1.5.1", "1.6", "1.6.1", "1.6.2",
- "master", "stable"]:
+ "1.6.3", "1.6.4", "2021", "master", "stable"]:
depends_on('votca-tools@%s' % v, when="@%s:%s.0" % (v, v))
depends_on('votca-csg@%s' % v, when="@%s:%s.0" % (v, v))
depends_on("libxc", when='@stable,1.5:')
depends_on("ceres-solver", when='@1.5:1.5.9999')
depends_on("hdf5+cxx~mpi")
- depends_on("libint@2.6.0:", when="@1.7:")
+ depends_on("libint@2.6.0:", when="@2021:")
diff --git a/var/spack/repos/builtin/packages/vpfft/package.py b/var/spack/repos/builtin/packages/vpfft/package.py
index 2851288052..49e598fcec 100644
--- a/var/spack/repos/builtin/packages/vpfft/package.py
+++ b/var/spack/repos/builtin/packages/vpfft/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vpic/package.py b/var/spack/repos/builtin/packages/vpic/package.py
index 846b09650b..483f72c676 100644
--- a/var/spack/repos/builtin/packages/vpic/package.py
+++ b/var/spack/repos/builtin/packages/vpic/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vsearch/package.py b/var/spack/repos/builtin/packages/vsearch/package.py
index 4448edaf4b..49be73c180 100644
--- a/var/spack/repos/builtin/packages/vsearch/package.py
+++ b/var/spack/repos/builtin/packages/vsearch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vsftpd/package.py b/var/spack/repos/builtin/packages/vsftpd/package.py
index 29f0bc7839..90a937db8f 100644
--- a/var/spack/repos/builtin/packages/vsftpd/package.py
+++ b/var/spack/repos/builtin/packages/vsftpd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vt/package.py b/var/spack/repos/builtin/packages/vt/package.py
index 9fabcaf4bf..e923b4907a 100644
--- a/var/spack/repos/builtin/packages/vt/package.py
+++ b/var/spack/repos/builtin/packages/vt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vtable-dumper/package.py b/var/spack/repos/builtin/packages/vtable-dumper/package.py
index e01aaf0ffe..a72b75d62e 100644
--- a/var/spack/repos/builtin/packages/vtable-dumper/package.py
+++ b/var/spack/repos/builtin/packages/vtable-dumper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/vtk-h/package.py b/var/spack/repos/builtin/packages/vtk-h/package.py
index 0ac45e15e5..2745825124 100644
--- a/var/spack/repos/builtin/packages/vtk-h/package.py
+++ b/var/spack/repos/builtin/packages/vtk-h/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -40,6 +40,12 @@ class VtkH(Package, CudaPackage):
maintainers = ['cyrush']
version('develop', branch='develop', submodules=True)
+ version('0.7.1', sha256="f28f7e6fb0f854a2293265b67cbdfb350b42c13ac08ffffe9cd246f3fe9fb77a")
+ version('0.7.0', sha256="1b3c15c1340c5f66edcc2962ffe2f0d86e155f45a4932cf9c407261c203fbc19")
+ version('0.6.9', sha256="8111f59c3528f02cb3c5083c17a1737dff9472266b156732794612471f3393c7")
+ version('0.6.8', sha256="0a37468ca65fdc12509b9fd53c74d5afb090630280e1161415d7377cad7d45f1")
+ version('0.6.7', sha256="aff3ab94cf137fbc3019149363d5d8a39d052b02ecef42c6bf6d076e538af3f2")
+ version('0.6.6', sha256="5fe8bae5f55dbeb3047a37499cc41f3b548e4d86f0058993069f1df57f7915a1")
version('0.6.5', sha256="3e566ee06150edece8a61711d9347de216c1ae45f3b4585784b2252ee9ff2a9b")
version('0.6.4', sha256="c1345679fa4110cba449a9e27d40774d53c1f0bbddd41e52f5eb395cec1ee2d0")
version('0.6.3', sha256="388ad05110efac45df6ae0d565a7d16bd05ff83c95b8b2b8daa206360ab73eec")
@@ -62,24 +68,23 @@ class VtkH(Package, CudaPackage):
variant("logging", default=False, description="Build vtk-h with logging enabled")
variant("contourtree", default=False, description="Enable contour tree support")
- # use cmake 3.14, newest that provides proper cuda support
- # and we have seen errors with cuda in 3.15
- depends_on("cmake@3.14.1:3.14.99", type='build')
+ # Certain CMake versions have been found to break for our use cases
+ depends_on("cmake@3.14.1:3.14.99,3.18.2:", type='build')
depends_on("mpi", when="+mpi")
depends_on("cuda", when="+cuda")
- depends_on("vtk-m@ascent_ver~tbb+openmp", when="+openmp")
- depends_on("vtk-m@ascent_ver~tbb~openmp", when="~openmp")
+ depends_on("vtk-m~tbb+openmp", when="+openmp")
+ depends_on("vtk-m~tbb~openmp", when="~openmp")
- depends_on("vtk-m@ascent_ver+cuda~tbb+openmp", when="+cuda+openmp")
- depends_on("vtk-m@ascent_ver+cuda~tbb~openmp", when="+cuda~openmp")
+ depends_on("vtk-m+cuda~tbb+openmp", when="+cuda+openmp")
+ depends_on("vtk-m+cuda~tbb~openmp", when="+cuda~openmp")
- depends_on("vtk-m@ascent_ver~tbb+openmp~shared", when="+openmp~shared")
- depends_on("vtk-m@ascent_ver~tbb~openmp~shared", when="~openmp~shared")
+ depends_on("vtk-m~tbb+openmp~shared", when="+openmp~shared")
+ depends_on("vtk-m~tbb~openmp~shared", when="~openmp~shared")
- depends_on("vtk-m@ascent_ver+cuda~tbb+openmp~shared", when="+cuda+openmp~shared")
- depends_on("vtk-m@ascent_ver+cuda~tbb~openmp~shared", when="+cuda~openmp~shared")
+ depends_on("vtk-m+cuda~tbb+openmp~shared", when="+cuda+openmp~shared")
+ depends_on("vtk-m+cuda~tbb~openmp~shared", when="+cuda~openmp~shared")
def install(self, spec, prefix):
with working_dir('spack-build', create=True):
diff --git a/var/spack/repos/builtin/packages/vtk-m/package.py b/var/spack/repos/builtin/packages/vtk-m/package.py
index 06d38cfc28..80b874cede 100644
--- a/var/spack/repos/builtin/packages/vtk-m/package.py
+++ b/var/spack/repos/builtin/packages/vtk-m/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,6 +6,7 @@
from spack import *
import os
+import shutil
import sys
@@ -24,17 +25,18 @@ class VtkM(CMakePackage, CudaPackage):
git = "https://gitlab.kitware.com/vtk/vtk-m.git"
version('master', branch='master')
+ version('release', branch='release')
+ version('1.6.0-rc1', sha256="223f23b11260618c19c6a4fdc10e235f3f14fe955f604e55a068dabddd31af95")
+ version('1.5.5', commit="d2d1c854adc8c0518802f153b48afd17646b6252", preferred=True)
+ version('1.5.4', commit="bbba2a1967b271cc393abd043716d957bca97972")
+ version('1.5.3', commit="a3b8525ef97d94996ae843db0dd4f675c38e8b1e")
+ version('1.5.2', commit="c49390f2537c5ba8cf25bd39aa5c212d6eafcf61")
version('1.5.1', sha256="64c19e66c0d579cfb21bb0df10d649b523b470b0c9a6c2ea5fd979dfeda2c25e")
version('1.5.0', sha256="b1b13715c7fcc8d17f5c7166ff5b3e9025f6865dc33eb9b06a63471c21349aa8")
version('1.4.0', sha256="8d83cca7cd5e204d10da151ce4f1846c1f7414c7c1e579173d15c5ea0631555a")
version('1.3.0', sha256="f88c1b0a1980f695240eeed9bcccfa420cc089e631dc2917c9728a2eb906df2e")
version('1.2.0', sha256="607272992e05f8398d196f0acdcb4af025a4a96cd4f66614c6341f31d4561763")
version('1.1.0', sha256="78618c81ca741b1fbba0853cb5d7af12c51973b514c268fc96dfb36b853cdb18")
- # version used by ascent
- version('ascent_ver', commit="a3b8525ef97d94996ae843db0dd4f675c38e8b1e")
- # patches, required for ascent
- patch('vtkmdiy_fpic.patch', when='@ascent_ver')
- patch('disable_flying_edges.patch', when='@ascent_ver')
# use release, instead of release with debug symbols b/c vtkm libs
# can overwhelm compilers with too many symbols
variant('build_type', default='Release', description='CMake build type',
@@ -44,6 +46,8 @@ class VtkM(CMakePackage, CudaPackage):
variant("doubleprecision", default=True,
description='enable double precision')
variant("logging", default=False, description="build logging support")
+ variant("ascent_types", default=True, description="build support for ascent types")
+ variant("virtuals", default=False, description="enable support for deprecated virtual functions")
variant("mpi", default=False, description="build mpi support")
variant("rendering", default=True, description="build rendering support")
variant("64bitids", default=False,
@@ -60,30 +64,24 @@ class VtkM(CMakePackage, CudaPackage):
amdgpu_targets = (
'gfx900', 'gfx906', 'gfx908'
)
- kokkos_amd_gpu_map = {
- 'gfx900': 'vega900',
- 'gfx906': 'vega906',
- 'gfx908': 'vega908'
- }
variant('amdgpu_target', default='none', multi=True, values=('none',) + amdgpu_targets)
conflicts("+hip", when="amdgpu_target=none")
- depends_on("cmake@3.12:", type="build") # CMake >= 3.12
- depends_on("cmake@3.18:", when="+hip") # CMake >= 3.18
+ depends_on("cmake@3.12:", type="build") # CMake >= 3.12
+ depends_on("cmake@3.18:", when="+hip", type="build") # CMake >= 3.18
- depends_on('cuda@10.2.0:', when='+cuda')
+ depends_on('cuda@10.1.0:', when='+cuda')
depends_on("tbb", when="+tbb")
depends_on("mpi", when="+mpi")
- for kokkos_value in kokkos_amd_gpu_map:
- depends_on("kokkos@develop +hip amd_gpu_arch=%s" % kokkos_amd_gpu_map[kokkos_value], when="amdgpu_target=%s" % kokkos_value)
+ for amdgpu_value in amdgpu_targets:
+ depends_on("kokkos@develop +rocm amdgpu_target=%s" % amdgpu_value, when="amdgpu_target=%s" % amdgpu_value)
depends_on("rocm-cmake@3.7:", when="+hip")
depends_on("hip@3.7:", when="+hip")
conflicts("+hip", when="+cuda")
- conflicts("~shared", when="~pic")
def cmake_args(self):
spec = self.spec
@@ -113,7 +111,7 @@ class VtkM(CMakePackage, CudaPackage):
# logging support
if "+logging" in spec:
- if not spec.satisfies('@1.3.0:,ascent_ver'):
+ if not spec.satisfies('@1.3.0:'):
raise InstallError('logging is not supported for\
vtkm version lower than 1.3')
options.append("-DVTKm_ENABLE_LOGGING:BOOL=ON")
@@ -122,7 +120,7 @@ class VtkM(CMakePackage, CudaPackage):
# mpi support
if "+mpi" in spec:
- if not spec.satisfies('@1.3.0:,ascent_ver'):
+ if not spec.satisfies('@1.3.0:'):
raise InstallError('mpi is not supported for\
vtkm version lower than 1.3')
options.append("-DVTKm_ENABLE_MPI:BOOL=ON")
@@ -135,6 +133,18 @@ class VtkM(CMakePackage, CudaPackage):
else:
options.append("-DVTKm_ENABLE_RENDERING:BOOL=OFF")
+ # Support for ascent types
+ if "+ascent_types" in spec:
+ options.append("-DVTKm_USE_DEFAULT_TYPES_FOR_ASCENT:BOOL=ON")
+ else:
+ options.append("-DVTKm_USE_DEFAULT_TYPES_FOR_ASCENT:BOOL=OFF")
+
+ # Support for deprecated virtual functions
+ if "+virtuals" in spec:
+ options.append("-DVTKm_NO_DEPRECATED_VIRTUAL:BOOL=OFF")
+ else:
+ options.append("-DVTKm_NO_DEPRECATED_VIRTUAL:BOOL=ON")
+
# 64 bit ids
if "+64bitids" in spec:
options.append("-DVTKm_USE_64BIT_IDS:BOOL=ON")
@@ -179,7 +189,7 @@ class VtkM(CMakePackage, CudaPackage):
# openmp support
if "+openmp" in spec:
# openmp is added since version 1.3.0
- if not spec.satisfies('@1.3.0:,ascent_ver'):
+ if not spec.satisfies('@1.3.0:'):
raise InstallError('OpenMP is not supported for\
vtkm version lower than 1.3')
options.append("-DVTKm_ENABLE_OPENMP:BOOL=ON")
@@ -195,3 +205,171 @@ class VtkM(CMakePackage, CudaPackage):
options.append("-DVTKm_ENABLE_TBB:BOOL=OFF")
return options
+
+ def smoke_test(self):
+ print("Checking VTK-m installation...")
+ spec = self.spec
+ checkdir = "spack-check"
+ with working_dir(checkdir, create=True):
+ source = r"""
+#include <vtkm/cont/Algorithm.h>
+#include <vtkm/cont/ArrayHandle.h>
+#include <vtkm/cont/Initialize.h>
+
+#include <iostream>
+#include <vector>
+
+struct NoArgKernel {
+ VTKM_EXEC void operator()(vtkm::Id) const {}
+
+ void SetErrorMessageBuffer(
+ const vtkm::exec::internal::ErrorMessageBuffer &errorMessage) {
+ this->ErrorMessage = errorMessage;
+ }
+
+ vtkm::exec::internal::ErrorMessageBuffer ErrorMessage;
+};
+
+template <typename PortalType> struct FillArrayKernel {
+ using ValueType = typename PortalType::ValueType;
+
+ FillArrayKernel(const PortalType &array, ValueType fill)
+ : Array(array), FillValue(fill) {}
+
+ VTKM_EXEC void operator()(vtkm::Id index) const {
+ this->Array.Set(index, this->FillValue);
+ }
+ void SetErrorMessageBuffer(
+ const vtkm::exec::internal::ErrorMessageBuffer &) {
+ }
+
+ PortalType Array;
+ ValueType FillValue;
+};
+
+
+int main() {
+ vtkm::cont::Initialize();
+
+ constexpr vtkm::Id size = 1000000;
+#if defined(VTKM_ENABLE_KOKKOS)
+ constexpr vtkm::cont::DeviceAdapterTagKokkos desired_device;
+#elif defined(VTKM_ENABLE_CUDA)
+ constexpr vtkm::cont::DeviceAdapterTagCuda desired_device;
+#elif defined(VTKM_ENABLE_TBB)
+ constexpr vtkm::cont::DeviceAdapterTagTBB desired_device;
+#elif defined(VTKM_ENABLE_OPENMP)
+ constexpr vtkm::cont::DeviceAdapterTagOpenMP desired_device;
+#else
+ #error "No VTK-m Device Adapter enabled"
+#endif
+
+ std::cout << "-------------------------------------------\n";
+ std::cout << "Testing No Argument Kernel" << std::endl;
+ vtkm::cont::Algorithm::Schedule(desired_device, NoArgKernel(), size);
+
+ vtkm::cont::ArrayHandle<vtkm::Id> handle;
+ {
+ std::cout << "-------------------------------------------\n";
+ std::cout << "Testing Kernel + ArrayHandle PrepareForOutput" << std::endl;
+ vtkm::cont::Token token;
+ auto portal = handle.PrepareForOutput(size, desired_device, token);
+ vtkm::cont::Algorithm::Schedule(desired_device,
+ FillArrayKernel<decltype(portal)>{portal, 1}, size);
+ }
+
+ {
+ std::cout << "-------------------------------------------\n";
+ std::cout << "Testing Kernel + ArrayHandle PrepareForInPlace" << std::endl;
+ vtkm::cont::Token token;
+ auto portal = handle.PrepareForInPlace(desired_device, token);
+ vtkm::cont::Algorithm::Schedule(desired_device,
+ FillArrayKernel<decltype(portal)>{portal, 2}, size);
+ }
+
+ std::cout << "-------------------------------------------\n";
+ std::cout << "Ran tests on: " << desired_device.GetName() << std::endl;
+
+ return 0;
+}
+"""
+
+ cmakelists = r"""
+##============================================================================
+## Copyright (c) Kitware, Inc.
+## All rights reserved.
+## See LICENSE.txt for details.
+##
+## This software is distributed WITHOUT ANY WARRANTY; without even
+## the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+## PURPOSE. See the above copyright notice for more information.
+##============================================================================
+cmake_minimum_required(VERSION 3.12...3.18 FATAL_ERROR)
+project(VTKmSmokeTest CXX)
+
+#Find the VTK-m package
+find_package(VTKm REQUIRED QUIET)
+
+add_executable(VTKmSmokeTest main.cxx)
+target_link_libraries(VTKmSmokeTest PRIVATE vtkm_cont)
+vtkm_add_target_information(VTKmSmokeTest
+ DROP_UNUSED_SYMBOLS MODIFY_CUDA_FLAGS
+ DEVICE_SOURCES main.cxx)
+"""
+
+ with open("main.cxx", 'w') as f:
+ f.write(source)
+ with open("CMakeLists.txt", 'w') as f:
+ f.write(cmakelists)
+ builddir = "build"
+ with working_dir(builddir, create=True):
+ cmake = Executable(spec['cmake'].prefix.bin + "/cmake")
+ cmakefiledir = spec['vtk-m'].prefix.lib + "/cmake"
+ cmakefiledir = cmakefiledir + "/" + os.listdir(cmakefiledir)[0]
+ cmake(*(["..", "-DVTKm_DIR=" + cmakefiledir]))
+ cmake(*(["--build", "."]))
+ try:
+ test = Executable('./VTKmSmokeTest')
+ output = test(output=str)
+ except ProcessError:
+ output = ""
+ print(output)
+ if "+hip" in spec:
+ expected_device = 'Kokkos'
+ elif "+cuda" in spec:
+ expected_device = 'Cuda'
+ elif "+tbb" in spec:
+ expected_device = 'TBB'
+ elif "+openmp" in spec:
+ expected_device = 'OpenMP'
+ expected = """\
+-------------------------------------------
+Testing No Argument Kernel
+-------------------------------------------
+Testing Kernel + ArrayHandle PrepareForOutput
+-------------------------------------------
+Testing Kernel + ArrayHandle PrepareForInPlace
+-------------------------------------------
+Ran tests on: """ + expected_device + "\n"
+ success = output == expected
+ if success:
+ print("Test success")
+ if not success:
+ print("Produced output does not match expected output.")
+ print("Expected output:")
+ print('-' * 80)
+ print(expected)
+ print('-' * 80)
+ print("Produced output:")
+ print('-' * 80)
+ print(output)
+ print('-' * 80)
+ raise RuntimeError("VTK-m install check failed")
+ shutil.rmtree(checkdir)
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_install(self):
+ spec = self.spec
+ if "@master" in spec:
+ self.smoke_test()
diff --git a/var/spack/repos/builtin/packages/vtk/package.py b/var/spack/repos/builtin/packages/vtk/package.py
index 19640c4222..bd8a52078b 100644
--- a/var/spack/repos/builtin/packages/vtk/package.py
+++ b/var/spack/repos/builtin/packages/vtk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,7 @@ class Vtk(CMakePackage):
maintainers = ['chuckatkins', 'danlipsa']
+ version('9.0.1', sha256='1b39a5e191c282861e7af4101eaa8585969a2de05f5646c9199a161213a622c7')
version('9.0.0', sha256='15def4e6f84d72f82386617fe595ec124dda3cbd13ea19a0dcd91583197d8715')
version('8.2.0', sha256='34c3dc775261be5e45a8049155f7228b6bd668106c72a3c435d95730d17d57bb')
version('8.1.2', sha256='0995fb36857dd76ccfb8bb07350c214d9f9099e80b1e66b4a8909311f24ff0db')
@@ -52,7 +53,7 @@ class Vtk(CMakePackage):
# We need vtk at least 8.0.1 for python@3,
# and at least 9.0 for python@3.8
depends_on('python@2.7:2.9', when='@:8.0 +python', type=('build', 'run'))
- depends_on('python@2.7:3.7.9', when='@8.0.1:8.9 +python',
+ depends_on('python@2.7:3.7.99', when='@8.0.1:8.9 +python',
type=('build', 'run'))
depends_on('python@2.7:', when='@9.0: +python', type=('build', 'run'))
@@ -63,6 +64,9 @@ class Vtk(CMakePackage):
# https://gitlab.kitware.com/vtk/vtk/commit/706f1b397df09a27ab8981ab9464547028d0c322
patch('python3.7-const-char.patch', when='@7.0.0:8.1.1 ^python@3.7:')
+ # Broken downstream FindMPI
+ patch('vtkm-findmpi-downstream.patch', when='@9.0.0')
+
# The use of the OpenGL2 backend requires at least OpenGL Core Profile
# version 3.2 or higher.
depends_on('gl@3.2:', when='+opengl2')
@@ -265,11 +269,10 @@ class Vtk(CMakePackage):
'-DVTK_USE_X:BOOL=ON',
'-DVTK_USE_COCOA:BOOL=OFF'])
+ compile_flags = []
+
if spec.satisfies('@:6.1.0'):
- cmake_args.extend([
- '-DCMAKE_C_FLAGS=-DGLX_GLXEXT_LEGACY',
- '-DCMAKE_CXX_FLAGS=-DGLX_GLXEXT_LEGACY'
- ])
+ compile_flags.append('-DGLX_GLXEXT_LEGACY')
# VTK 6.1.0 (and possibly earlier) does not use
# NETCDF_CXX_ROOT to detect NetCDF C++ bindings, so
@@ -298,4 +301,16 @@ class Vtk(CMakePackage):
cmake_args.append(
'-DVTK_MODULE_ENABLE_VTK_IOMotionFX:BOOL=OFF')
+ # -no-ipo prevents an internal compiler error from multi-file
+ # optimization (https://github.com/spack/spack/issues/20471)
+ if '%intel' in spec:
+ compile_flags.append('-no-ipo')
+
+ if compile_flags:
+ compile_flags = ' '.join(compile_flags)
+ cmake_args.extend([
+ '-DCMAKE_C_FLAGS={0}'.format(compile_flags),
+ '-DCMAKE_CXX_FLAGS={0}'.format(compile_flags)
+ ])
+
return cmake_args
diff --git a/var/spack/repos/builtin/packages/vtk/vtkm-findmpi-downstream.patch b/var/spack/repos/builtin/packages/vtk/vtkm-findmpi-downstream.patch
new file mode 100644
index 0000000000..de36d9e099
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vtk/vtkm-findmpi-downstream.patch
@@ -0,0 +1,185 @@
+From 0510b87018815781da34566a57f35caaf01fc822 Mon Sep 17 00:00:00 2001
+From: Robert Maynard <robert.maynard@kitware.com>
+Date: Thu, 18 Jun 2020 15:48:48 -0400
+Subject: [PATCH] Make sure we don't leak our findmpi module
+
+Consumers of VTK-m shouldn't use VTK-m find mpi module unless
+they explicitly want to. This makes sure that by default only
+VTK-m uses it.
+---
+ CMake/VTKmCMakeBackports.cmake | 23 +++++++++++++++++++++++
+ CMake/VTKmMPI.cmake | 24 ------------------------
+ CMake/VTKmWrappers.cmake | 6 +++++-
+ CMake/{ => patches/3.15}/FindMPI.cmake | 0
+ CMake/patches/FindMPI.cmake | 18 ++++++++++++++++++
+ CMake/patches/README.md | 7 +++++++
+ CMakeLists.txt | 11 ++++++++---
+ 7 files changed, 61 insertions(+), 28 deletions(-)
+ create mode 100644 CMake/VTKmCMakeBackports.cmake
+ delete mode 100644 CMake/VTKmMPI.cmake
+ rename CMake/{ => patches/3.15}/FindMPI.cmake (100%)
+ create mode 100644 CMake/patches/FindMPI.cmake
+ create mode 100644 CMake/patches/README.md
+
+diff --git a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmCMakeBackports.cmake b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmCMakeBackports.cmake
+new file mode 100644
+index 000000000..2d286fb16
+--- /dev/null
++++ b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmCMakeBackports.cmake
+@@ -0,0 +1,23 @@
++##============================================================================
++## Copyright (c) Kitware, Inc.
++## All rights reserved.
++## See LICENSE.txt for details.
++##
++## This software is distributed WITHOUT ANY WARRANTY; without even
++## the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
++## PURPOSE. See the above copyright notice for more information.
++##============================================================================
++
++file(GLOB cmake_version_backports
++ LIST_DIRECTORIES true
++ RELATIVE "${CMAKE_CURRENT_LIST_DIR}/patches"
++ "${CMAKE_CURRENT_LIST_DIR}/patches/*")
++
++foreach (cmake_version_backport IN LISTS cmake_version_backports)
++ if (NOT IS_DIRECTORY "${CMAKE_CURRENT_LIST_DIR}/patches/${cmake_version_backport}")
++ continue ()
++ endif ()
++ if (CMAKE_VERSION VERSION_LESS "${cmake_version_backport}")
++ list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_CURRENT_LIST_DIR}/patches/${cmake_version_backport}")
++ endif ()
++endforeach ()
+diff --git a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmMPI.cmake b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmMPI.cmake
+deleted file mode 100644
+index 4c06369ec..000000000
+--- a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmMPI.cmake
++++ /dev/null
+@@ -1,24 +0,0 @@
+-##============================================================================
+-## Copyright (c) Kitware, Inc.
+-## All rights reserved.
+-## See LICENSE.txt for details.
+-##
+-## This software is distributed WITHOUT ANY WARRANTY; without even
+-## the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+-## PURPOSE. See the above copyright notice for more information.
+-##============================================================================
+-
+-if(VTKm_ENABLE_MPI AND NOT TARGET MPI::MPI_CXX)
+- if(CMAKE_VERSION VERSION_LESS 3.15)
+- #While CMake 3.10 introduced the new MPI module.
+- #Fixes related to MPI+CUDA that VTK-m needs are
+- #only found in CMake 3.15+.
+- find_package(MPI REQUIRED MODULE)
+- else()
+- #clunky but we need to make sure we use the upstream module if it exists
+- set(orig_CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH})
+- set(CMAKE_MODULE_PATH "")
+- find_package(MPI REQUIRED MODULE)
+- set(CMAKE_MODULE_PATH ${orig_CMAKE_MODULE_PATH})
+- endif()
+-endif()
+diff --git a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmWrappers.cmake b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmWrappers.cmake
+index 08c359053..a79b72338 100644
+--- a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmWrappers.cmake
++++ b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/VTKmWrappers.cmake
+@@ -10,9 +10,13 @@
+
+ include(CMakeParseArguments)
+
++include(VTKmCMakeBackports)
+ include(VTKmDeviceAdapters)
+ include(VTKmCPUVectorization)
+-include(VTKmMPI)
++
++if(VTKm_ENABLE_MPI AND NOT TARGET MPI::MPI_CXX)
++ find_package(MPI REQUIRED MODULE)
++endif()
+
+ #-----------------------------------------------------------------------------
+ # INTERNAL FUNCTIONS
+diff --git a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/FindMPI.cmake b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/3.15/FindMPI.cmake
+similarity index 100%
+rename from CMake/FindMPI.cmake
+rename to CMake/patches/3.15/FindMPI.cmake
+diff --git a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/FindMPI.cmake b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/FindMPI.cmake
+new file mode 100644
+index 000000000..192c280fd
+--- /dev/null
++++ b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/FindMPI.cmake
+@@ -0,0 +1,18 @@
++##=============================================================================
++##
++## Copyright (c) Kitware, Inc.
++## All rights reserved.
++## See LICENSE.txt for details.
++##
++## This software is distributed WITHOUT ANY WARRANTY; without even
++## the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
++## PURPOSE. See the above copyright notice for more information.
++##
++##=============================================================================
++
++# This module is already included in new versions of CMake
++if(CMAKE_VERSION VERSION_LESS 3.15)
++ include(${CMAKE_CURRENT_LIST_DIR}/3.15/FindMPI.cmake)
++else()
++ include(${CMAKE_ROOT}/Modules/FindMPI.cmake)
++endif()
+diff --git a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/README.md b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/README.md
+new file mode 100644
+index 000000000..405016904
+--- /dev/null
++++ b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake/patches/README.md
+@@ -0,0 +1,7 @@
++# CMake backports
++
++This directory contains backports from newer CMake versions to help support
++actually using older CMake versions for building VTK-m. The directory name is the
++minimum version of CMake for which the contained files are no longer necessary.
++For example, the files under the `3.15` directory are not needed for 3.15 or
++3.16, but are for 3.14.
+diff --git a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMakeLists.txt b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMakeLists.txt
+index 7695384d4..e40063b3d 100644
+--- a/ThirdParty/vtkm/vtkvtkm/vtk-m/CMakeLists.txt
++++ b/ThirdParty/vtkm/vtkvtkm/vtk-m/CMakeLists.txt
+@@ -247,11 +247,17 @@ if(NOT VTKm_INSTALL_ONLY_LIBRARIES)
+ # Install helper configure files.
+ install(
+ FILES
++ ${VTKm_SOURCE_DIR}/CMake/VTKmCMakeBackports.cmake
+ ${VTKm_SOURCE_DIR}/CMake/FindTBB.cmake
+- ${VTKm_SOURCE_DIR}/CMake/FindMPI.cmake
+ ${VTKm_SOURCE_DIR}/CMake/FindOpenGL.cmake
++ ${VTKm_SOURCE_DIR}/CMake/patches/FindMPI.cmake
+ DESTINATION ${VTKm_INSTALL_CMAKE_MODULE_DIR}
+ )
++ install(
++ FILES
++ ${VTKm_SOURCE_DIR}/CMake/patches/3.15/FindMPI.cmake
++ DESTINATION ${VTKm_INSTALL_CMAKE_MODULE_DIR}/3.15
++ )
+
+ # Install support files.
+ install(
+@@ -260,7 +266,6 @@ if(NOT VTKm_INSTALL_ONLY_LIBRARIES)
+ ${VTKm_SOURCE_DIR}/CMake/VTKmDetectCUDAVersion.cu
+ ${VTKm_SOURCE_DIR}/CMake/VTKmDeviceAdapters.cmake
+ ${VTKm_SOURCE_DIR}/CMake/VTKmExportHeaderTemplate.h.in
+- ${VTKm_SOURCE_DIR}/CMake/VTKmMPI.cmake
+ ${VTKm_SOURCE_DIR}/CMake/VTKmRenderingContexts.cmake
+ ${VTKm_SOURCE_DIR}/CMake/VTKmWrappers.cmake
+ DESTINATION ${VTKm_INSTALL_CMAKE_MODULE_DIR}
+@@ -294,7 +299,7 @@ endif ()
+ #-----------------------------------------------------------------------------
+ #add the benchmarking folder
+ if(VTKm_ENABLE_BENCHMARKS)
+- add_subdirectory(benchmarking)
++ add_subdirectory(benchmarking)
+ endif()
+
+ #-----------------------------------------------------------------------------
+--
+2.24.2
+
diff --git a/var/spack/repos/builtin/packages/vvtest/package.py b/var/spack/repos/builtin/packages/vvtest/package.py
index 271b8d20b9..3b98602f23 100755
--- a/var/spack/repos/builtin/packages/vvtest/package.py
+++ b/var/spack/repos/builtin/packages/vvtest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/w3m/fix_gc.patch b/var/spack/repos/builtin/packages/w3m/fix_gc.patch
new file mode 100644
index 0000000000..b49bc349ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/w3m/fix_gc.patch
@@ -0,0 +1,20 @@
+--- w3m-0.5.3/main.c.orig 2011-01-04 18:42:19.000000000 +0900
++++ w3m-0.5.3/main.c 2021-02-05 12:59:06.251334053 +0900
+@@ -311,7 +311,7 @@ wrap_GC_warn_proc(char *msg, GC_word arg
+ lock = 0;
+ }
+ }
+- else if (orig_GC_warn_proc)
++ else if (orig_GC_warn_proc = GC_get_warn_proc())
+ orig_GC_warn_proc(msg, arg);
+ else
+ fprintf(stderr, msg, (unsigned long)arg);
+@@ -833,7 +833,7 @@ main(int argc, char **argv, char **envp)
+ mySignal(SIGPIPE, SigPipe);
+ #endif
+
+- orig_GC_warn_proc = GC_set_warn_proc(wrap_GC_warn_proc);
++ GC_set_warn_proc(wrap_GC_warn_proc);
+ err_msg = Strnew();
+ if (load_argc == 0) {
+ /* no URL specified */
diff --git a/var/spack/repos/builtin/packages/w3m/fix_redef.patch b/var/spack/repos/builtin/packages/w3m/fix_redef.patch
new file mode 100644
index 0000000000..19ca721fe2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/w3m/fix_redef.patch
@@ -0,0 +1,58 @@
+--- w3m-0.5.3/istream.c.orig 2021-02-05 13:19:44.023053158 +0900
++++ w3m-0.5.3/istream.c 2021-02-05 13:19:53.380179220 +0900
+@@ -22,8 +22,8 @@
+ static void basic_close(int *handle);
+ static int basic_read(int *handle, char *buf, int len);
+
+-static void file_close(struct file_handle *handle);
+-static int file_read(struct file_handle *handle, char *buf, int len);
++static void file_close(struct w3m_file_handle *handle);
++static int file_read(struct w3m_file_handle *handle, char *buf, int len);
+
+ static int str_read(Str handle, char *buf, int len);
+
+@@ -114,7 +114,7 @@ newFileStream(FILE * f, void (*closep) (
+ stream = New(union input_stream);
+ init_base_stream(&stream->base, STREAM_BUF_SIZE);
+ stream->file.type = IST_FILE;
+- stream->file.handle = New(struct file_handle);
++ stream->file.handle = New(struct w3m_file_handle);
+ stream->file.handle->f = f;
+ if (closep)
+ stream->file.handle->close = closep;
+@@ -658,13 +658,13 @@ basic_read(int *handle, char *buf, int l
+ }
+
+ static void
+-file_close(struct file_handle *handle)
++file_close(struct w3m_file_handle *handle)
+ {
+ handle->close(handle->f);
+ }
+
+ static int
+-file_read(struct file_handle *handle, char *buf, int len)
++file_read(struct w3m_file_handle *handle, char *buf, int len)
+ {
+ return fread(buf, 1, len, handle->f);
+ }
+--- w3m-0.5.3/istream.h.orig 2021-02-05 13:19:44.023053158 +0900
++++ w3m-0.5.3/istream.h 2021-02-05 13:19:53.380179220 +0900
+@@ -20,7 +20,7 @@ struct stream_buffer {
+
+ typedef struct stream_buffer *StreamBuffer;
+
+-struct file_handle {
++struct w3m_file_handle {
+ FILE *f;
+ void (*close) ();
+ };
+@@ -53,7 +53,7 @@ struct base_stream {
+
+ struct file_stream {
+ struct stream_buffer stream;
+- struct file_handle *handle;
++ struct w3m_file_handle *handle;
+ char type;
+ char iseos;
+ int (*read) ();
diff --git a/var/spack/repos/builtin/packages/w3m/package.py b/var/spack/repos/builtin/packages/w3m/package.py
new file mode 100644
index 0000000000..f72d93705d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/w3m/package.py
@@ -0,0 +1,76 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class W3m(AutotoolsPackage):
+ """
+ w3m is a text-based web browser as well as a pager like `more' or `less'.
+ With w3m you can browse web pages through a terminal emulator window (xterm,
+ rxvt or something like that). Moreover, w3m can be used as a text formatting
+ tool which typesets HTML into plain text.
+ """
+
+ homepage = "http://w3m.sourceforge.net/index.en.html"
+ url = "https://downloads.sourceforge.net/project/w3m/w3m/w3m-0.5.3/w3m-0.5.3.tar.gz"
+
+ maintainers = ['ronin_gw']
+
+ version('0.5.3', sha256='e994d263f2fd2c22febfbe45103526e00145a7674a0fda79c822b97c2770a9e3')
+
+ # mandatory dependency
+ depends_on('bdw-gc')
+
+ # termlib
+ variant('termlib', default='ncurses', description='select termlib',
+ values=('ncurses', 'termcap', 'none'), multi=False)
+ depends_on('termcap', when='termlib=termcap')
+ depends_on('ncurses+termlib', when='termlib=ncurses')
+
+ # https support
+ variant('https', default=True, description='support https protocol')
+ depends_on('openssl@:1.0.2u', when='+https')
+
+ # X11 support
+ variant('image', default=True, description='enable image')
+ depends_on('libx11', when='+image')
+
+ # inline image support
+ variant('imagelib', default='imlib2', description='select imagelib',
+ values=('gdk-pixbuf', 'imlib2'), multi=False)
+ depends_on('gdk-pixbuf@2:+x11', when='imagelib=gdk-pixbuf +image')
+ depends_on('imlib2@1.0.5:', when='imagelib=imlib2 +image')
+
+ # fix for modern libraries
+ patch('fix_redef.patch')
+ patch('fix_gc.patch')
+
+ def _add_arg_for_variant(self, args, variant, choices):
+ for avail_lib in choices:
+ if self.spec.variants[variant].value == avail_lib:
+ args.append('--with-{0}={1}'.format(variant, avail_lib))
+ return
+
+ def configure_args(self):
+ args = []
+
+ self._add_arg_for_variant(args, 'termlib', ('termcap', 'ncurses'))
+ if '+image' in self.spec:
+ args.append('--enable-image')
+ self._add_arg_for_variant(args, 'imagelib', ('gdk-pixbuf', 'imlib2'))
+
+ return args
+
+ def setup_build_environment(self, env):
+ if self.spec.variants['termlib'].value == 'ncurses':
+ env.append_flags('LDFLAGS', '-ltinfo')
+ env.append_flags('LDFLAGS', '-lncurses')
+ if '+image' in self.spec:
+ env.append_flags('LDFLAGS', '-lX11')
+
+ # parallel build causes build failure
+ def build(self, spec, prefix):
+ make(parallel=False)
diff --git a/var/spack/repos/builtin/packages/wannier90/package.py b/var/spack/repos/builtin/packages/wannier90/package.py
index e4aa1017c7..71833fa835 100644
--- a/var/spack/repos/builtin/packages/wannier90/package.py
+++ b/var/spack/repos/builtin/packages/wannier90/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/warpx/package.py b/var/spack/repos/builtin/packages/warpx/package.py
index 9cabbc4d73..45baa90143 100644
--- a/var/spack/repos/builtin/packages/warpx/package.py
+++ b/var/spack/repos/builtin/packages/warpx/package.py
@@ -1,123 +1,132 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
-from spack.compiler import UnsupportedCompilerFlag
-class Warpx(MakefilePackage):
+class Warpx(CMakePackage):
"""WarpX is an advanced electromagnetic Particle-In-Cell code. It supports
many features including Perfectly-Matched Layers (PML) and mesh refinement.
In addition, WarpX is a highly-parallel and highly-optimized code and
features hybrid OpenMP/MPI parallelization, advanced vectorization
techniques and load balancing capabilities.
+
+ For WarpX' Python bindings and PICMI input support, see the 'py-warpx' package.
"""
- homepage = "https://ecp-warpx.github.io/index.html"
+ homepage = "https://ecp-warpx.github.io"
+ url = "https://github.com/ECP-WarpX/WarpX/archive/refs/tags/21.04.tar.gz"
git = "https://github.com/ECP-WarpX/WarpX.git"
maintainers = ['ax3l', 'dpgrote', 'MaxThevenet', 'RemiLehe']
- version('develop', tag='development')
-
+ version('develop', branch='development')
+ version('21.05', sha256='f835f0ae6c5702550d23191aa0bb0722f981abb1460410e3d8952bc3d945a9fc')
+ version('21.04', sha256='51d2d8b4542eada96216e8b128c0545c4b7527addc2038efebe586c32c4020a0')
+
+ variant('app', default=True,
+ description='Build the WarpX executable application')
+ variant('ascent', default=False,
+ description='Enable Ascent in situ vis')
+ variant('compute',
+ default='omp',
+ values=('omp', 'cuda', 'hip', 'sycl', 'noacc'),
+ multi=False,
+ description='On-node, accelerated computing backend')
variant('dims',
default='3',
values=('2', '3', 'rz'),
multi=False,
description='Number of spatial dimensions')
- variant('backend',
- default='openmp',
- values=('openmp', 'cuda', 'hip'),
- multi=True,
- description='Programming model for compute kernels')
- variant('mpi', default=True, description='Enable MPI support')
- variant('psatd', default=False, description='Enable PSATD solver')
- variant('debug', default=False, description='Enable debugging features')
- variant('tprof', default=True, description='Enable tiny profiling features')
- variant('openpmd', default=True, description='Enable openPMD I/O')
- variant('ascent', default=False, description='Enable Ascent in situ vis')
+ variant('eb', default=False,
+ description='Embedded boundary support (in development)')
+ variant('lib', default=True,
+ description='Build WarpX as a shared library')
+ variant('mpi', default=True,
+ description='Enable MPI support')
+ variant('mpithreadmultiple', default=True,
+ description='MPI thread-multiple support, i.e. for async_io')
+ variant('openpmd', default=True,
+ description='Enable openPMD I/O')
+ variant('precision',
+ default='double',
+ values=('single', 'double'),
+ multi=False,
+ description='Floating point precision (single/double)')
+ variant('psatd', default=True,
+ description='Enable PSATD solver support')
+ variant('qed', default=True,
+ description='Enable QED support')
+ variant('qedtablegen', default=False,
+ description='QED table generation support')
+ variant('shared', default=True,
+ description='Build a shared version of the library')
+ variant('tprof', default=True,
+ description='Enable tiny profiling features')
- depends_on('cuda@9.2.88:', when='backend=cuda')
- depends_on('mpi', when='+mpi')
- depends_on('fftw@3:', when='+psatd')
- depends_on('fftw +mpi', when='+psatd +mpi')
+ depends_on('ascent', when='+ascent')
+ # note: ~shared is only needed until the new concretizer is in and
+ # honors the conflict inside the Ascent package to find this
+ # automatically
+ depends_on('ascent +cuda ~shared', when='+ascent compute=cuda')
+ depends_on('ascent +mpi', when='+ascent +mpi')
depends_on('blaspp', when='+psatd dims=rz')
+ depends_on('blaspp +cuda', when='+psatd dims=rz compute=cuda')
+ depends_on('boost@1.66.0: +math', when='+qedtablegen')
+ depends_on('cmake@3.15.0:', type='build')
+ depends_on('cuda@9.2.88:', when='compute=cuda')
+ depends_on('fftw@3:', when='+psatd compute=omp')
+ depends_on('fftw +mpi', when='+psatd +mpi compute=omp')
depends_on('lapackpp', when='+psatd dims=rz')
- depends_on('pkgconfig', type='build', when='+openpmd')
- depends_on('python', type='build') # AMReX' build system info
- depends_on('openpmd-api@0.11.0:,dev', when='+openpmd')
+ depends_on('mpi', when='+mpi')
+ depends_on('openpmd-api@0.13.1:,dev', when='+openpmd')
depends_on('openpmd-api +mpi', when='+openpmd +mpi')
- depends_on('ascent', when='+ascent')
- depends_on('ascent +cuda', when='+ascent backend=cuda')
- depends_on('ascent +mpi', when='+ascent +mpi')
-
- resource(name='amrex',
- git='https://github.com/AMReX-Codes/amrex.git',
- when='@develop',
- tag='development')
-
- resource(name='picsar',
- git='https://bitbucket.org/berkeleylab/picsar.git',
- tag='master')
-
- conflicts('backend=cuda', when='backend=hip',
- msg='WarpX can be compiled with either CUDA or HIP backend')
- conflicts('backend=hip', msg='WarpX\' HIP backend is not yet implemented')
-
- def edit(self, spec, prefix):
- comp = 'gcc'
- vendors = {'%gcc': 'gcc', '%intel': 'intel',
- '%apple-clang': 'llvm', '%clang': 'llvm'}
- for key, value in vendors.items():
- if self.spec.satisfies(key):
- comp = value
-
- # Returns the string TRUE or FALSE
- torf = lambda s: repr(s in spec).upper()
-
- try:
- self.compiler.openmp_flag
- except UnsupportedCompilerFlag:
- use_omp = 'FALSE'
- else:
- use_omp = torf('backend=openmp')
-
- makefile = FileFilter('GNUmakefile')
- makefile.filter('AMREX_HOME .*', 'AMREX_HOME = amrex')
- makefile.filter('PICSAR_HOME .*', 'PICSAR_HOME = picsar')
- makefile.filter('COMP .*', 'COMP = {0}'.format(comp))
- makefile.filter('USE_MPI .*',
- 'USE_MPI = {0}'.format(torf('+mpi')))
- if 'dims=rz' in spec:
- makefile.filter('USE_RZ .*', 'USE_RZ = TRUE')
- else:
- makefile.filter('DIM .*', 'DIM = {0}'.format(
- int(spec.variants['dims'].value)))
- makefile.filter('USE_PSATD .*',
- 'USE_PSATD = {0}'.format(torf('+psatd')))
- makefile.filter('USE_OMP .*',
- 'USE_OMP = {0}'.format(use_omp))
- makefile.filter('USE_GPU .*',
- 'USE_GPU = {0}'.format(torf('backend=cuda')))
- makefile.filter('USE_HIP .*',
- 'USE_HIP = {0}'.format(torf('backend=hip')))
- makefile.filter('USE_OPENPMD .*',
- 'USE_OPENPMD = {0}'.format(torf('+openpmd')))
- makefile.filter('USE_ASCENT_INSITU .*',
- 'USE_ASCENT_INSITU = {0}'.format(torf('+ascent')))
- makefile.filter('DEBUG .*',
- 'DEBUG = {0}'.format(torf('+debug')))
- makefile.filter('TINY_PROFILE .*',
- 'TINY_PROFILE = {0}'.format(torf('+tprof')))
- makefile.filter('EBASE .*', 'EBASE = warpx')
-
- def setup_build_environment(self, env):
- # --- Fool the compiler into using the "unknown" configuration.
- # --- With this, it will use the spack provided mpi.
- env.set('HOSTNAME', 'unknown')
- env.set('NERSC_HOST', 'unknown')
-
- def install(self, spec, prefix):
- make('WarpxBinDir = {0}'.format(prefix.bin), 'all')
+ depends_on('pkgconfig', type='build', when='+psatd compute=omp')
+ depends_on('rocfft', when='+psatd compute=hip')
+ depends_on('rocprim', when='+psatd compute=hip')
+ depends_on('rocrand', when='+psatd compute=hip')
+ depends_on('llvm-openmp', when='%apple-clang compute=omp')
+
+ conflicts('~qed +qedtablegen',
+ msg='WarpX PICSAR QED table generation needs +qed')
+ conflicts('compute=sycl', when='+psatd',
+ msg='WarpX spectral solvers are not yet tested with SYCL '
+ '(use "warpx ~psatd")')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ '-DCMAKE_INSTALL_LIBDIR=lib',
+ # variants
+ self.define_from_variant('WarpX_APP', 'app'),
+ self.define_from_variant('WarpX_ASCENT', 'ascent'),
+ '-DWarpX_COMPUTE={0}'.format(
+ spec.variants['compute'].value.upper()),
+ '-DWarpX_DIMS={0}'.format(
+ spec.variants['dims'].value.upper()),
+ self.define_from_variant('WarpX_EB', 'eb'),
+ self.define_from_variant('WarpX_LIB', 'lib'),
+ self.define_from_variant('WarpX_MPI', 'mpi'),
+ self.define_from_variant('WarpX_MPI_THREAD_MULTIPLE', 'mpithreadmultiple'),
+ self.define_from_variant('WarpX_OPENPMD', 'openpmd'),
+ '-DWarpX_PRECISION={0}'.format(
+ spec.variants['precision'].value.upper()),
+ self.define_from_variant('WarpX_PSATD', 'psatd'),
+ self.define_from_variant('WarpX_QED', 'qed'),
+ self.define_from_variant('WarpX_QED_TABLE_GEN', 'qedtablegen'),
+ ]
+
+ return args
+
+ @property
+ def libs(self):
+ libsuffix = {'2': '2d', '3': '3d', 'rz': 'rz'}
+ dims = self.spec.variants['dims'].value
+ return find_libraries(
+ ['libwarpx.' + libsuffix[dims]], root=self.prefix, recursive=True,
+ shared=True
+ )
diff --git a/var/spack/repos/builtin/packages/watch/package.py b/var/spack/repos/builtin/packages/watch/package.py
index 0416cff450..cf62fdab35 100644
--- a/var/spack/repos/builtin/packages/watch/package.py
+++ b/var/spack/repos/builtin/packages/watch/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wayland-protocols/package.py b/var/spack/repos/builtin/packages/wayland-protocols/package.py
new file mode 100644
index 0000000000..0510751b68
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wayland-protocols/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class WaylandProtocols(AutotoolsPackage):
+ """wayland-protocols contains Wayland protocols that add functionality not
+ available in the Wayland core protocol. Such protocols either add
+ completely new functionality, or extend the functionality of some other
+ protocol either in Wayland core, or some other protocol i
+ n wayland-protocols."""
+
+ homepage = "http://wayland.freedesktop.org/"
+ url = "https://github.com/wayland-project/wayland-protocols/archive/1.20.tar.gz"
+
+ version('1.20', sha256='b59cf0949aeb1f71f7db46b63b1c5a6705ffde8cb5bd194f843fbd9b41308dda')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('pkgconfig', type='build')
+ depends_on('doxygen', type='build')
+ depends_on('xmlto', type='build')
+ depends_on('libxslt', type='build')
+ depends_on('wayland')
diff --git a/var/spack/repos/builtin/packages/wayland/package.py b/var/spack/repos/builtin/packages/wayland/package.py
index daece1a824..7dabbd827c 100644
--- a/var/spack/repos/builtin/packages/wayland/package.py
+++ b/var/spack/repos/builtin/packages/wayland/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wcs/package.py b/var/spack/repos/builtin/packages/wcs/package.py
index 44a39cccbe..8aded12fe6 100644
--- a/var/spack/repos/builtin/packages/wcs/package.py
+++ b/var/spack/repos/builtin/packages/wcs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wcslib/package.py b/var/spack/repos/builtin/packages/wcslib/package.py
index 0c336592d0..7526f40e7c 100644
--- a/var/spack/repos/builtin/packages/wcslib/package.py
+++ b/var/spack/repos/builtin/packages/wcslib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/webbench/package.py b/var/spack/repos/builtin/packages/webbench/package.py
index 8681d283df..d1eb8e6a70 100644
--- a/var/spack/repos/builtin/packages/webbench/package.py
+++ b/var/spack/repos/builtin/packages/webbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/weechat/package.py b/var/spack/repos/builtin/packages/weechat/package.py
index ddee20bf1f..60950f3315 100644
--- a/var/spack/repos/builtin/packages/weechat/package.py
+++ b/var/spack/repos/builtin/packages/weechat/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/weighttp/package.py b/var/spack/repos/builtin/packages/weighttp/package.py
index f7b1c5adda..1a9d36cbdd 100644
--- a/var/spack/repos/builtin/packages/weighttp/package.py
+++ b/var/spack/repos/builtin/packages/weighttp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wget/package.py b/var/spack/repos/builtin/packages/wget/package.py
index c9ef5e9dd8..23fb3caa66 100644
--- a/var/spack/repos/builtin/packages/wget/package.py
+++ b/var/spack/repos/builtin/packages/wget/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,7 @@ class Wget(AutotoolsPackage, GNUMirrorPackage):
homepage = "http://www.gnu.org/software/wget/"
gnu_mirror_path = "wget/wget-1.19.1.tar.gz"
+ version('1.21', sha256='b3bc1a9bd0c19836c9709c318d41c19c11215a07514f49f89b40b9d50ab49325')
version('1.20.3', sha256='31cccfc6630528db1c8e3a06f6decf2a370060b982841cfab2b8677400a5092e')
version('1.19.1', sha256='9e4f12da38cc6167d0752d934abe27c7b1599a9af294e73829be7ac7b5b4da40')
version('1.17', sha256='3e04ad027c5b6ebd67c616eec13e66fbedb3d4d8cbe19cc29dadde44b92bda55')
diff --git a/var/spack/repos/builtin/packages/wgsim/package.py b/var/spack/repos/builtin/packages/wgsim/package.py
index fe6b25ef4a..d38be06377 100644
--- a/var/spack/repos/builtin/packages/wgsim/package.py
+++ b/var/spack/repos/builtin/packages/wgsim/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/which/package.py b/var/spack/repos/builtin/packages/which/package.py
index c95315ee7f..8784b77754 100644
--- a/var/spack/repos/builtin/packages/which/package.py
+++ b/var/spack/repos/builtin/packages/which/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/whizard/package.py b/var/spack/repos/builtin/packages/whizard/package.py
index f7aee3ceb9..db93e324c1 100644
--- a/var/spack/repos/builtin/packages/whizard/package.py
+++ b/var/spack/repos/builtin/packages/whizard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,8 @@ class Whizard(AutotoolsPackage):
url = "https://whizard.hepforge.org/downloads/?f=whizard-2.8.3.tar.gz"
git = "https://gitlab.tp.nt.uni-siegen.de/whizard/public.git"
+ tags = ['hep']
+
maintainers = ['vvolkl']
version('master', branch="master")
diff --git a/var/spack/repos/builtin/packages/windowswmproto/package.py b/var/spack/repos/builtin/packages/windowswmproto/package.py
index 12f8e783d2..b82423916b 100644
--- a/var/spack/repos/builtin/packages/windowswmproto/package.py
+++ b/var/spack/repos/builtin/packages/windowswmproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wireshark/package.py b/var/spack/repos/builtin/packages/wireshark/package.py
index e6a98b43d0..d6c72ac1a2 100644
--- a/var/spack/repos/builtin/packages/wireshark/package.py
+++ b/var/spack/repos/builtin/packages/wireshark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wonton/package.py b/var/spack/repos/builtin/packages/wonton/package.py
index 468b80c74c..9dd5492488 100644
--- a/var/spack/repos/builtin/packages/wonton/package.py
+++ b/var/spack/repos/builtin/packages/wonton/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,10 +17,12 @@ class Wonton(CMakePackage):
homepage = "https://portage.lanl.gov"
git = "https://github.com/laristra/wonton.git"
- url = "https://github.com/laristra/wonton/releases/download/1.2.1/wonton-1.2.1.tar.gz"
+ url = "https://github.com/laristra/wonton/releases/download/1.2.11/wonton-1.2.11.tar.gz"
maintainers = ['raovgarimella']
+ version('1.2.11', sha256='613436c799b392a99355db1cbf1062f1da39f3287eed665a5cd43bb65364d926')
+ version('1.2.10', sha256='c5c2c99f040f1fa5a8da21ac5ccbbc5b226d1fd43ce3eb14c76d211601b65a72')
version('1.2.1', sha256='4f00513d1abe86f256214d2b5171b1575b2cd464df8609307c24cbc4c595c305')
variant('lapacke', default=True, description='Use LAPACKE solvers')
diff --git a/var/spack/repos/builtin/packages/wordnet/package.py b/var/spack/repos/builtin/packages/wordnet/package.py
index 416c626ff2..30d932db41 100644
--- a/var/spack/repos/builtin/packages/wordnet/package.py
+++ b/var/spack/repos/builtin/packages/wordnet/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/workrave/package.py b/var/spack/repos/builtin/packages/workrave/package.py
index 85b74f7aff..5b6b1d939f 100644
--- a/var/spack/repos/builtin/packages/workrave/package.py
+++ b/var/spack/repos/builtin/packages/workrave/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wps/for_aarch64.patch b/var/spack/repos/builtin/packages/wps/for_aarch64.patch
new file mode 100644
index 0000000000..fc71d97a1f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wps/for_aarch64.patch
@@ -0,0 +1,11 @@
+--- spack-src/arch/configure.defaults.bak 2020-04-24 04:31:06.000000000 +0900
++++ spack-src/arch/configure.defaults 2020-12-11 15:33:51.215405970 +0900
+@@ -168,7 +168,7 @@
+ RANLIB = ranlib
+
+ ########################################################################################################################
+-#ARCH Linux x86_64, gfortran # serial serial_NO_GRIB2 dmpar dmpar_NO_GRIB2
++#ARCH Linux aarch64, gfortran # serial serial_NO_GRIB2 dmpar dmpar_NO_GRIB2
+ #
+ COMPRESSION_LIBS = CONFIGURE_COMP_L
+ COMPRESSION_INC = CONFIGURE_COMP_I
diff --git a/var/spack/repos/builtin/packages/wps/package.py b/var/spack/repos/builtin/packages/wps/package.py
index 70cbc030ad..5a9c7303e6 100644
--- a/var/spack/repos/builtin/packages/wps/package.py
+++ b/var/spack/repos/builtin/packages/wps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -45,6 +45,8 @@ class Wps(Package):
depends_on('jasper')
phases = ['configure', 'build', 'install']
+ patch('for_aarch64.patch', when='target=aarch64:')
+
def setup_build_environment(self, env):
env.set('WRF_DIR', self.spec['wrf'].prefix)
env.set('NETCDF', self.spec['netcdf-c'].prefix)
diff --git a/var/spack/repos/builtin/packages/wrf/package.py b/var/spack/repos/builtin/packages/wrf/package.py
index 4841bd2a12..e508e41f0e 100644
--- a/var/spack/repos/builtin/packages/wrf/package.py
+++ b/var/spack/repos/builtin/packages/wrf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -105,6 +105,8 @@ class Wrf(Package):
patch("patches/3.9/netcdf_backport.patch", when="@3.9.1.1")
patch("patches/3.9/tirpc_detect.patch", when="@3.9.1.1")
patch("patches/3.9/add_aarch64.patch", when="@3.9.1.1")
+ patch("patches/3.9/configure_aocc_2.3.patch", when="@3.9.1.1 %aocc@:2.4.0")
+ patch("patches/3.9/configure_aocc_3.0.patch", when="@3.9.1.1 %aocc@3.0.0")
# These patches deal with netcdf & netcdf-fortran being two diff things
# Patches are based on:
@@ -129,6 +131,9 @@ class Wrf(Package):
patch("patches/4.2/Makefile.patch", when="@4.2")
patch("patches/4.2/tirpc_detect.patch", when="@4.2")
patch("patches/4.2/add_aarch64.patch", when="@4.2")
+ patch("patches/4.2/configure_aocc_2.3.patch", when="@4.2 %aocc@:2.4.0")
+ patch("patches/4.2/configure_aocc_3.0.patch", when="@4.2 %aocc@3.0.0")
+ patch("patches/4.2/derf_fix.patch", when="@4.2 %aocc")
depends_on("pkgconfig", type=("build"))
depends_on("libtirpc")
@@ -144,6 +149,7 @@ class Wrf(Package):
depends_on("libpng")
depends_on("zlib")
depends_on("perl")
+ depends_on("jemalloc", when="%aocc")
# not sure if +fortran is required, but seems like a good idea
depends_on("hdf5+fortran+hl+mpi")
# build script use csh
@@ -170,6 +176,11 @@ class Wrf(Package):
env.set("FCFLAGS", args)
env.set("FFLAGS", args)
+ if self.spec.satisfies("%aocc"):
+ env.set("WRFIO_NCD_LARGE_FILE_SUPPORT", 1)
+ env.set("HDF5", self.spec["hdf5"].prefix)
+ env.prepend_path('PATH', ancestor(self.compiler.cc))
+
def patch(self):
# Let's not assume csh is intalled in bin
files = glob.glob("*.csh")
@@ -232,12 +243,53 @@ class Wrf(Package):
)
ofh.write(line)
+ if self.spec.satisfies("@3.9.1.1 %aocc"):
+ rename(
+ "./arch/configure_new.defaults",
+ "./arch/configure_new.defaults.bak",
+ )
+ with open("./arch/configure_new.defaults.bak", "rt") as ifh:
+ with open("./arch/configure_new.defaults", "wt") as ofh:
+ for line in ifh:
+ if line.startswith("DM_"):
+ line = line.replace(
+ "mpif90 -DMPI2_SUPPORT",
+ self.spec['mpi'].mpifc + " -DMPI2_SUPPORT"
+ )
+ line = line.replace(
+ "mpicc -DMPI2_SUPPORT",
+ self.spec['mpi'].mpicc + " -DMPI2_SUPPORT"
+ )
+ ofh.write(line)
+
+ if self.spec.satisfies("@4.2 %aocc"):
+ # In version 4.2 the file to be patched is called
+ # configure.defaults, while in earlier versions
+ # it's configure_new.defaults
+ rename(
+ "./arch/configure.defaults",
+ "./arch/configure.defaults.bak",
+ )
+ with open("./arch/configure.defaults.bak", "rt") as ifh:
+ with open("./arch/configure.defaults", "wt") as ofh:
+ for line in ifh:
+ if line.startswith("DM_"):
+ line = line.replace(
+ "mpif90 -DMPI2_SUPPORT",
+ self.spec['mpi'].mpifc + " -DMPI2_SUPPORT"
+ )
+ line = line.replace(
+ "mpicc -DMPI2_SUPPORT",
+ self.spec['mpi'].mpicc + " -DMPI2_SUPPORT"
+ )
+ ofh.write(line)
+
def configure(self, spec, prefix):
# Remove broken default options...
self.do_configure_fixup()
- if self.spec.compiler.name not in ["intel", "gcc"]:
+ if self.spec.compiler.name not in ["intel", "gcc", "aocc"]:
raise InstallError(
"Compiler %s not currently supported for WRF build."
% self.spec.compiler.name
@@ -284,6 +336,12 @@ class Wrf(Package):
if returncode != 0:
raise InstallError("Configure failed - unknown error")
+ @run_after("configure")
+ def patch_for_libmvec(self):
+ if self.spec.satisfies("@3.9.1.1 %aocc@:3.0"):
+ fp = self.package_dir + "/patches/3.9/aocc_lmvec.patch"
+ which('patch')('-s', '-p1', '-i', '{0}'.format(fp), '-d', '.')
+
def run_compile_script(self):
csh_bin = self.spec["tcsh"].prefix.bin.csh
csh = Executable(csh_bin)
diff --git a/var/spack/repos/builtin/packages/wrf/patches/3.9/aocc_lmvec.patch b/var/spack/repos/builtin/packages/wrf/patches/3.9/aocc_lmvec.patch
new file mode 100644
index 0000000000..6d67b04612
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wrf/patches/3.9/aocc_lmvec.patch
@@ -0,0 +1,130 @@
+diff --git a/configure.wrf b/configure_libm.wrf
+index b0e306c..41a6cba 100644
+--- a/configure.wrf
++++ b/configure_libm.wrf
+@@ -263,56 +263,56 @@ wrfio_nf :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
+ make $(J) NETCDFPATH="$(NETCDFPATH)" NETCDFFPATH="$(NETCDFFPATH)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
+ CC="$(SCC)" CFLAGS="$(CFLAGS)" \
+- FC="$(SFC) $(PROMOTION) $(OMP) $(FCFLAGS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
++ FC="$(SFC) $(PROMOTION) $(OMP) $(LIBMVEC) $(FCFLAGS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
+
+ wrfio_pnf :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/io_pnetcdf ; \
+ make $(J) NETCDFPATH="$(PNETCDFPATH)" RANLIB="$(RANLIB)" CPP="$(CPP) $(ARCHFLAGS)" \
+- FC="$(FC) $(PROMOTION) $(OMP) $(FCFLAGS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
++ FC="$(FC) $(PROMOTION) $(OMP) $(LIBMVEC) $(FCFLAGS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
+
+ wrfio_grib_share :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
+ make $(J) CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
+- FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" archive)
++ FC="$(SFC) $(PROMOTION) -I. $(LIBMVEC) $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" archive)
+
+ wrfio_grib1 :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
+ make $(J) CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
+- FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" archive)
++ FC="$(SFC) $(PROMOTION) -I. $(LIBMVEC) $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" archive)
+
+ wrfio_grib2 :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
+ make $(J) CC="$(SCC)" CFLAGS="$(CFLAGS) " RM="$(RM)" RANLIB="$(RANLIB)" \
+ CPP="$(CPP)" \
+- FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="-traditional" AR="$(AR)" ARFLAGS="$(ARFLAGS)" \
++ FC="$(SFC) $(PROMOTION) -I. $(LIBMVEC) $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="-traditional" AR="$(AR)" ARFLAGS="$(ARFLAGS)" \
+ FIXED="$(FORMAT_FIXED)" archive)
+
+ wrfio_int :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
+ make $(J) CC="$(CC)" CFLAGS_LOCAL="$(CFLAGS_LOCAL)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
+- FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) $(OMP)" FGREP="$(FGREP)" \
++ FC="$(FC) $(PROMOTION) $(LIBMVEC) $(FCDEBUG) $(FCBASEOPTS) $(OMP)" FGREP="$(FGREP)" \
+ TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" ARCHFLAGS="$(ARCHFLAGS)" all )
+
+ esmf_time :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
+- make $(J) FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" \
++ make $(J) FC="$(SFC) $(PROMOTION) $(LIBMVEC) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" \
+ CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(ARCHFLAGS) $(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
+
+ fftpack :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
+- make $(J) FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" AR="$(AR)" \
++ make $(J) FC="$(SFC)" FFLAGS="$(PROMOTION) $(LIBMVEC) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" AR="$(AR)" \
+ ARFLAGS="$(ARFLAGS)" CPP="$(CPP)" CPPFLAGS="$(CPPFLAGS)" RM="$(RM)" )
+
+ atm_ocn :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/atm_ocn ; \
+ make $(J) CC="$(SCC)" CFLAGS="$(CFLAGS) " RM="$(RM)" RANLIB="$(RANLIB)" \
+ CPP="$(CPP)" CPPFLAGS="$(CPPFLAGS)" \
+- FC="$(DM_FC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="-traditional" AR="$(AR)" ARFLAGS="$(ARFLAGS)" \
++ FC="$(DM_FC) $(PROMOTION) -I. $(LIBMVEC) $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="-traditional" AR="$(AR)" ARFLAGS="$(ARFLAGS)" \
+ FIXED="$(FORMAT_FIXED)" )
+
+ $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; make $(J) CC="$(CC) $(CFLAGS)" \
+- FC="$(FC) $(FCFLAGS) $(OMP) $(PROMOTION) $(BYTESWAPIO)" \
++ FC="$(FC) $(FCFLAGS) $(LIBMVEC) $(OMP) $(PROMOTION) $(BYTESWAPIO)" \
+ CPP="$(CPP) -I. $(ARCHFLAGS) $(OMPCPP) $(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" ;\
+ $(RANLIB) $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a )
+
+@@ -332,7 +332,7 @@ wrf_ioapi_includes :
+
+ wrfio_esmf :
+ ( cd $(WRF_SRC_ROOT_DIR)/external/io_esmf ; \
+- make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) $(ESMF_MOD_INC)" \
++ make FC="$(FC) $(PROMOTION) $(LIBMVEC) $(FCDEBUG) $(FCBASEOPTS) $(ESMF_MOD_INC)" \
+ RANLIB="$(RANLIB)" CPP="$(CPP) $(POUND_DEF) " AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
+
+ # There is probably no reason to modify these rules
+@@ -357,7 +357,7 @@ wrfio_esmf :
+ $(WRF_SRC_ROOT_DIR)/var/build/da_name_space.pl $*.f90 > $*.f90.tmp ; \
+ mv $*.f90.tmp $*.f90 ; \
+ fi
+- $(FC) -o $@ -c $(FCFLAGS) $(OMP) $(MODULE_DIRS) $(PROMOTION) $(FCSUFFIX) $*.f90
++ $(FC) -o $@ -c $(FCFLAGS) $(LIBMVEC) $(OMP) $(MODULE_DIRS) $(PROMOTION) $(FCSUFFIX) $*.f90
+
+
+ .F.f90:
+@@ -370,7 +370,7 @@ wrfio_esmf :
+
+ .f90.o:
+ $(RM) $@
+- $(FC) -o $@ -c $(FCFLAGS) $(PROMOTION) $(FCSUFFIX) $*.f90
++ $(FC) -o $@ -c $(FCFLAGS) $(LIBMVEC) $(PROMOTION) $(FCSUFFIX) $*.f90
+
+ setfeenv.o : setfeenv.c
+ $(RM) $@
+@@ -474,10 +474,10 @@ wrf_tsin.o :
+ fi
+ if $(FGREP) '!$$OMP' $*.f90 ; then \
+ if [ -n "$(OMP)" ] ; then echo COMPILING $*.F WITH OMP ; fi ; \
+- $(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $(OMP) $*.f90 ; \
++ $(FC) -c $(PROMOTION) $(FCNOOPT) $(LIBMVEC) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $(OMP) $*.f90 ; \
+ else \
+ if [ -n "$(OMP)" ] ; then echo COMPILING $*.F WITHOUT OMP ; fi ; \
+- $(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $*.f90 ; \
++ $(FC) -c $(PROMOTION) $(FCNOOPT) $(LIBMVEC) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $*.f90 ; \
+ fi
+
+ #solve_em.o :
+@@ -497,10 +497,10 @@ module_sf_ruclsm.o :
+ if $(FGREP) '!$$OMP' $*.f90 ; then \
+ echo COMPILING $*.F WITH OMP ; \
+ if [ -n "$(OMP)" ] ; then echo COMPILING $*.F WITH OMP ; fi ; \
+- $(FC) -c $(PROMOTION) $(FCREDUCEDOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $(OMP) $*.f90 ; \
++ $(FC) -c $(PROMOTION) $(FCREDUCEDOPT) $(LIBMVEC) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $(OMP) $*.f90 ; \
+ else \
+ if [ -n "$(OMP)" ] ; then echo COMPILING $*.F WITHOUT OMP ; fi ; \
+- $(FC) -c $(PROMOTION) $(FCREDUCEDOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $*.f90 ; \
++ $(FC) -c $(PROMOTION) $(FCREDUCEDOPT) $(LIBMVEC) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $*.f90 ; \
+ fi
+
+ # compile without OMP
+@@ -547,4 +547,4 @@ module_configure.o :
+ mv $*.f90.tmp $*.f90 ; \
+ fi
+ $(RM) $*.b $*.bb
+- $(FC) -c $(PROMOTION) $(FCSUFFIX) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
++ $(FC) -c $(PROMOTION) $(FCSUFFIX) $(LIBMVEC) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
diff --git a/var/spack/repos/builtin/packages/wrf/patches/3.9/configure_aocc_2.3.patch b/var/spack/repos/builtin/packages/wrf/patches/3.9/configure_aocc_2.3.patch
new file mode 100644
index 0000000000..2daa9f588e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wrf/patches/3.9/configure_aocc_2.3.patch
@@ -0,0 +1,53 @@
+--- WRF-3.9.1.1/arch/configure_new.defaults 2021-03-10 10:08:07.885236847 +0530
++++ WRF-3.9.1.1/arch/configure_new_aocc.defaults 2021-04-12 13:24:05.880139431 +0530
+@@ -1917,6 +1917,50 @@
+ CC_TOOLS = $(SCC)
+
+ #insert new stanza here
++#############################################################
++#ARCH AMD EPYC Linux x86_64 AOCC Compilers #dm+sm
++#
++DESCRIPTION = AMD AOCC ($SFC/$SCC): EPYC
++DMPARALLEL = 1
++OMPCPP = -D_OPENMP
++OMP = -fopenmp
++OMPCC = -fopenmp -Mpreprocess
++SFC = flang
++SCC = clang
++CCOMP = clang
++DM_FC = mpif90 -DMPI2_SUPPORT
++DM_CC = mpicc -DMPI2_SUPPORT
++FC = $(DM_FC)
++CC = $(DM_CC) -DFSEEKO64_OK
++LD = $(FC)
++RWORDSIZE = $(NATIVE_RWORDSIZE)
++PROMOTION =
++ARCH_LOCAL = -DNONSTANDARD_SYSTEM_SUBR -DWRF_USE_CLM
++LIBMVEC = -mllvm -vector-library=LIBMVEC -Mstack_arrays
++AOCCOPT = -O3 -m64 -Ofast -ffast-math
++CFLAGS_LOCAL = -w $(AOCCOPT)
++LDFLAGS_LOCAL = -lm -ltirpc -lamdlibm -ljemalloc -lmvec $(AOCCOPT)
++CPLUSPLUSLIB =
++ESMF_LDFLAG = $(CPLUSPLUSLIB)
++FCOPTIM = $(AOCCOPT) -fopenmp
++FCREDUCEDOPT = -O2 -Ofast -ffast-math
++FCNOOPT = -O0 -DFCNOOPT -fopenmp
++FCDEBUG = #-g
++FORMAT_FIXED = -Mfixed
++FORMAT_FREE = -Mfreeform
++FCSUFFIX =
++BYTESWAPIO = -Mbyteswapio
++FCBASEOPTS_NO_G = $(FORMAT_FREE) $(BYTESWAPIO) -fopenmp
++FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG) -DBASEOPTS -fopenmp
++MODULE_SRCH_FLAG =
++TRADFLAG = -traditional
++CPP = /lib/cpp -P
++AR = llvm-ar
++ARFLAGS = ru
++M4 = m4
++RANLIB = llvm-ranlib
++RLFLAGS =
++CC_TOOLS = $(SCC)
+
+ ###########################################################
+ #ARCH Fujitsu FX10/FX100 Linux x86_64 SPARC64IXfx/SPARC64Xlfx, mpifrtpx and mpifccpx compilers #serial smpar dmpar dm+sm
diff --git a/var/spack/repos/builtin/packages/wrf/patches/3.9/configure_aocc_3.0.patch b/var/spack/repos/builtin/packages/wrf/patches/3.9/configure_aocc_3.0.patch
new file mode 100644
index 0000000000..28d43e2e09
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wrf/patches/3.9/configure_aocc_3.0.patch
@@ -0,0 +1,53 @@
+--- WRF-3.9.1.1/arch/configure_new.defaults 2021-03-10 10:08:07.885236847 +0530
++++ WRF-3.9.1.1/arch/configure_new_aocc.defaults 2021-03-13 18:30:42.191344515 +0530
+@@ -1917,6 +1917,50 @@
+ CC_TOOLS = $(SCC)
+
+ #insert new stanza here
++#############################################################
++#ARCH AMD EPYC Linux x86_64 AOCC Compilers #dm+sm
++#
++DESCRIPTION = AMD AOCC ($SFC/$SCC): EPYC
++DMPARALLEL = 1
++OMPCPP = -D_OPENMP
++OMP = -fopenmp
++OMPCC = -fopenmp -Mpreprocess
++SFC = flang
++SCC = clang
++CCOMP = clang
++DM_FC = mpif90 -DMPI2_SUPPORT
++DM_CC = mpicc -DMPI2_SUPPORT
++FC = $(DM_FC)
++CC = $(DM_CC) -DFSEEKO64_OK
++LD = $(FC)
++RWORDSIZE = $(NATIVE_RWORDSIZE)
++PROMOTION =
++ARCH_LOCAL = -DNONSTANDARD_SYSTEM_SUBR -DWRF_USE_CLM
++LIBMVEC = -mllvm -vector-library=LIBMVEC-X86 -mllvm -enable-boscc -Mstack_arrays
++AOCCOPT = -O3 -m64 -Ofast -ffast-math
++CFLAGS_LOCAL = -w $(AOCCOPT)
++LDFLAGS_LOCAL = -lm -ltirpc -lamdlibm -ljemalloc -lmvec $(AOCCOPT)
++CPLUSPLUSLIB =
++ESMF_LDFLAG = $(CPLUSPLUSLIB)
++FCOPTIM = $(AOCCOPT) -fopenmp
++FCREDUCEDOPT = -O2 -Ofast -ffast-math
++FCNOOPT = -O0 -DFCNOOPT -fopenmp
++FCDEBUG = #-g
++FORMAT_FIXED = -Mfixed
++FORMAT_FREE = -Mfreeform
++FCSUFFIX =
++BYTESWAPIO = -Mbyteswapio
++FCBASEOPTS_NO_G = $(FORMAT_FREE) $(BYTESWAPIO) -fopenmp
++FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG) -DBASEOPTS -fopenmp
++MODULE_SRCH_FLAG =
++TRADFLAG = -traditional
++CPP = /lib/cpp -P
++AR = llvm-ar
++ARFLAGS = ru
++M4 = m4
++RANLIB = llvm-ranlib
++RLFLAGS =
++CC_TOOLS = $(SCC)
+
+ ###########################################################
+ #ARCH Fujitsu FX10/FX100 Linux x86_64 SPARC64IXfx/SPARC64Xlfx, mpifrtpx and mpifccpx compilers #serial smpar dmpar dm+sm
diff --git a/var/spack/repos/builtin/packages/wrf/patches/4.2/configure_aocc_2.3.patch b/var/spack/repos/builtin/packages/wrf/patches/4.2/configure_aocc_2.3.patch
new file mode 100644
index 0000000000..75a87db895
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wrf/patches/4.2/configure_aocc_2.3.patch
@@ -0,0 +1,53 @@
+--- WRF-4.2/arch/configure.defaults 2020-04-23 22:38:37.000000000 +0530
++++ WRF-4.2/arch/configure_aocc.defaults 2021-03-13 19:13:26.626442958 +0530
+@@ -1975,6 +1975,50 @@
+ $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o
+
+ #insert new stanza here
++##############################################################
++#ARCH AMD EPYC Linux x86_64 AOCC Compilers #dm+sm
++#
++DESCRIPTION = AMD AOCC ($SFC/$SCC): EPYC
++DMPARALLEL = 1
++OMPCPP = -D_OPENMP
++OMP = -fopenmp
++OMPCC = -fopenmp -Mpreprocess
++SFC = flang
++SCC = clang
++CCOMP = clang
++DM_FC = mpif90 -DMPI2_SUPPORT
++DM_CC = mpicc -DMPI2_SUPPORT
++FC = time $(DM_FC)
++CC = $(DM_CC) -DFSEEKO64_OK
++LD = $(FC)
++RWORDSIZE = $(NATIVE_RWORDSIZE)
++PROMOTION =
++ARCH_LOCAL = -DNONSTANDARD_SYSTEM_SUBR -DWRF_USE_CLM
++LIBMVEC = -mllvm -vector-library=LIBMVEC
++AOCCOPT = -O3 -m64 -Ofast -ffast-math -g
++CFLAGS_LOCAL = -w $(AOCCOPT)
++LDFLAGS_LOCAL = -lm -ltirpc -lamdlibm -ljemalloc -lmvec $(AOCCOPT)
++CPLUSPLUSLIB =
++ESMF_LDFLAG = $(CPLUSPLUSLIB)
++FCOPTIM = $(AOCCOPT) -fopenmp
++FCREDUCEDOPT = -O2 -Ofast -ffast-math
++FCNOOPT = -O0 -ffast-math
++FCDEBUG = #-g
++FORMAT_FIXED = -Mfixed
++FORMAT_FREE = -Mfreeform
++FCSUFFIX =
++BYTESWAPIO = -Mbyteswapio
++FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) -ffast-math
++FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG)
++MODULE_SRCH_FLAG =
++TRADFLAG = -traditional
++CPP = /lib/cpp -P
++AR = llvm-ar
++ARFLAGS = ru
++M4 = m4
++RANLIB = llvm-ranlib
++RLFLAGS =
++CC_TOOLS = $(SCC)
+
+ ###########################################################
+ #ARCH Fujitsu FX10/FX100 Linux x86_64 SPARC64IXfx/SPARC64Xlfx, mpifrtpx and mpifccpx compilers #serial smpar dmpar dm+sm
diff --git a/var/spack/repos/builtin/packages/wrf/patches/4.2/configure_aocc_3.0.patch b/var/spack/repos/builtin/packages/wrf/patches/4.2/configure_aocc_3.0.patch
new file mode 100644
index 0000000000..2b08f1775b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wrf/patches/4.2/configure_aocc_3.0.patch
@@ -0,0 +1,53 @@
+--- WRF-4.2/arch/configure.defaults 2020-04-23 22:38:37.000000000 +0530
++++ WRF-4.2/arch/configure_aocc.defaults 2021-03-13 19:16:59.115451115 +0530
+@@ -1975,6 +1975,50 @@
+ $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o
+
+ #insert new stanza here
++##############################################################
++#ARCH AMD EPYC Linux x86_64 AOCC Compilers #dm+sm
++#
++DESCRIPTION = AMD AOCC ($SFC/$SCC): EPYC
++DMPARALLEL = 1
++OMPCPP = -D_OPENMP
++OMP = -fopenmp
++OMPCC = -fopenmp -Mpreprocess
++SFC = flang
++SCC = clang
++CCOMP = clang
++DM_FC = mpif90 -DMPI2_SUPPORT
++DM_CC = mpicc -DMPI2_SUPPORT
++FC = time $(DM_FC)
++CC = $(DM_CC) -DFSEEKO64_OK
++LD = $(FC)
++RWORDSIZE = $(NATIVE_RWORDSIZE)
++PROMOTION =
++ARCH_LOCAL = -DNONSTANDARD_SYSTEM_SUBR -DWRF_USE_CLM
++LIBMVEC = -mllvm -vector-library=LIBMVEC-X86
++AOCCOPT = -O3 -m64 -Ofast -ffast-math -g
++CFLAGS_LOCAL = -w $(AOCCOPT)
++LDFLAGS_LOCAL = -lm -ltirpc -lamdlibm -ljemalloc -lmvec $(AOCCOPT)
++CPLUSPLUSLIB =
++ESMF_LDFLAG = $(CPLUSPLUSLIB)
++FCOPTIM = $(AOCCOPT) -fopenmp
++FCREDUCEDOPT = -O2 -Ofast -ffast-math
++FCNOOPT = -O0 -ffast-math
++FCDEBUG = #-g
++FORMAT_FIXED = -Mfixed
++FORMAT_FREE = -Mfreeform
++FCSUFFIX =
++BYTESWAPIO = -Mbyteswapio
++FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) -ffast-math
++FCBASEOPTS = $(FCBASEOPTS_NO_G) $(FCDEBUG)
++MODULE_SRCH_FLAG =
++TRADFLAG = -traditional
++CPP = /lib/cpp -P
++AR = llvm-ar
++ARFLAGS = ru
++M4 = m4
++RANLIB = llvm-ranlib
++RLFLAGS =
++CC_TOOLS = $(SCC)
+
+ ###########################################################
+ #ARCH Fujitsu FX10/FX100 Linux x86_64 SPARC64IXfx/SPARC64Xlfx, mpifrtpx and mpifccpx compilers #serial smpar dmpar dm+sm
diff --git a/var/spack/repos/builtin/packages/wrf/patches/4.2/derf_fix.patch b/var/spack/repos/builtin/packages/wrf/patches/4.2/derf_fix.patch
new file mode 100644
index 0000000000..227c467352
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wrf/patches/4.2/derf_fix.patch
@@ -0,0 +1,11 @@
+--- WRF-4.2/phys/module_mp_SBM_polar_radar.F 2020-04-23 22:38:37.000000000 +0530
++++ WRF-4.2/phys/module_mp_SBM_polar_radar_aocc.F 2020-12-29 11:45:52.329495585 +0530
+@@ -1534,7 +1534,7 @@
+ (1.0d0-(1.0d0-fract_volume_water)*ratc))
+ ! new change 18.01.09 (start)
+ if(fract_volume_water.gt.1.0d-10) then
+- t=derf((1.0d0-fract_volume_water)/fract_volume_water-0.2d0)
++ t=erf((1.0d0-fract_volume_water)/fract_volume_water-0.2d0)
+ else
+ t=1.0d0
+ endif
diff --git a/var/spack/repos/builtin/packages/wrk/package.py b/var/spack/repos/builtin/packages/wrk/package.py
index 0eaddbd82e..9eb4eb30e3 100644
--- a/var/spack/repos/builtin/packages/wrk/package.py
+++ b/var/spack/repos/builtin/packages/wrk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wsmancli/package.py b/var/spack/repos/builtin/packages/wsmancli/package.py
index 0a28a1c539..d2769dbeec 100644
--- a/var/spack/repos/builtin/packages/wsmancli/package.py
+++ b/var/spack/repos/builtin/packages/wsmancli/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wt/package.py b/var/spack/repos/builtin/packages/wt/package.py
index dcc08ca12d..ddf329455e 100644
--- a/var/spack/repos/builtin/packages/wt/package.py
+++ b/var/spack/repos/builtin/packages/wt/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -52,8 +52,6 @@ class Wt(CMakePackage):
depends_on('zlib', when='+zlib')
def cmake_args(self):
- spec = self.spec
-
cmake_args = [
'-DBUILD_EXAMPLES:BOOL=OFF',
'-DCONNECTOR_FCGI:BOOL=OFF',
@@ -61,17 +59,11 @@ class Wt(CMakePackage):
'-DENABLE_QT4:BOOL=OFF'
]
cmake_args.extend([
- '-DENABLE_SSL:BOOL={0}'.format((
- 'ON' if '+openssl' in spec else 'OFF')),
- '-DENABLE_HARU:BOOL={0}'.format((
- 'ON' if '+libharu' in spec else 'OFF')),
- '-DENABLE_PANGO:BOOL={0}'.format((
- 'ON' if '+pango' in spec else 'OFF')),
- '-DENABLE_SQLITE:BOOL={0}'.format((
- 'ON' if '+sqlite' in spec else 'OFF')),
- '-DENABLE_MYSQL:BOOL={0}'.format((
- 'ON' if '+mariadb' in spec else 'OFF')),
- '-DENABLE_POSTGRES:BOOL={0}'.format((
- 'ON' if '+postgres' in spec else 'OFF'))
+ self.define_from_variant('ENABLE_SSL', 'openssl'),
+ self.define_from_variant('ENABLE_HARU', 'libharu'),
+ self.define_from_variant('ENABLE_PANGO', 'pango'),
+ self.define_from_variant('ENABLE_SQLITE', 'sqlite'),
+ self.define_from_variant('ENABLE_MYSQL', 'mariadb'),
+ self.define_from_variant('ENABLE_POSTGRES', 'postgresql')
])
return cmake_args
diff --git a/var/spack/repos/builtin/packages/wtdbg2/for_aarch64.patch b/var/spack/repos/builtin/packages/wtdbg2/for_aarch64.patch
new file mode 100644
index 0000000000..425edc927f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wtdbg2/for_aarch64.patch
@@ -0,0 +1,23 @@
+--- spack-src/ksw.c.bak 2019-01-21 10:35:00.000000000 +0900
++++ spack-src/ksw.c 2021-01-29 16:24:06.281952856 +0900
+@@ -25,7 +25,7 @@
+
+ #include <stdlib.h>
+ #include <stdint.h>
+-#include <emmintrin.h>
++#include <sse2neon.h>
+ #include "ksw.h"
+
+ #ifdef USE_MALLOC_WRAPPERS
+--- spack-src/poacns.h.bak 2019-01-21 10:35:00.000000000 +0900
++++ spack-src/poacns.h 2021-01-29 16:23:27.631956791 +0900
+@@ -25,8 +25,7 @@
+ #include "chararray.h"
+ #include "list.h"
+ #include "hashset.h"
+-#include <emmintrin.h>
+-#include <tmmintrin.h>
++#include <sse2neon.h>
+
+ #if __BYTE_ORDER == 1234
+ //#pragma message(" ** " __FILE__ " has been tested in LITTLE_ENDIAN **\n")
diff --git a/var/spack/repos/builtin/packages/wtdbg2/package.py b/var/spack/repos/builtin/packages/wtdbg2/package.py
index 255ea90560..299ad7f34c 100644
--- a/var/spack/repos/builtin/packages/wtdbg2/package.py
+++ b/var/spack/repos/builtin/packages/wtdbg2/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -15,6 +15,14 @@ class Wtdbg2(MakefilePackage):
version('2.3', sha256='fb61d38a4c60a39b3b194e63b855141c05ddcbe71cf244ae613766a9b0a56621')
depends_on('zlib')
+ depends_on('sse2neon', when='target=aarch64:')
+
+ patch('for_aarch64.patch', when='target=aarch64:')
+
+ def edit(self, spec, prefix):
+ if spec.target.family == 'aarch64':
+ makefile = FileFilter('Makefile')
+ makefile.filter('-mpopcnt -msse4.2', '')
def install(self, spec, prefix):
make('install', 'BIN=%s' % prefix.bin)
diff --git a/var/spack/repos/builtin/packages/wxpropgrid/package.py b/var/spack/repos/builtin/packages/wxpropgrid/package.py
index c288d0d533..aa73bfef83 100644
--- a/var/spack/repos/builtin/packages/wxpropgrid/package.py
+++ b/var/spack/repos/builtin/packages/wxpropgrid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/wxwidgets/package.py b/var/spack/repos/builtin/packages/wxwidgets/package.py
index 5b31c4e59b..4e159ec36d 100644
--- a/var/spack/repos/builtin/packages/wxwidgets/package.py
+++ b/var/spack/repos/builtin/packages/wxwidgets/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/x11perf/package.py b/var/spack/repos/builtin/packages/x11perf/package.py
index bdd58e64c9..ed0350728b 100644
--- a/var/spack/repos/builtin/packages/x11perf/package.py
+++ b/var/spack/repos/builtin/packages/x11perf/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class X11perf(AutotoolsPackage, XorgPackage):
depends_on('libxrender')
depends_on('libxft')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xabclib/package.py b/var/spack/repos/builtin/packages/xabclib/package.py
index 80f691d31b..c9338c0340 100644
--- a/var/spack/repos/builtin/packages/xabclib/package.py
+++ b/var/spack/repos/builtin/packages/xabclib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xapian-core/package.py b/var/spack/repos/builtin/packages/xapian-core/package.py
index 5e1bc5d244..096ccd3467 100644
--- a/var/spack/repos/builtin/packages/xapian-core/package.py
+++ b/var/spack/repos/builtin/packages/xapian-core/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xauth/package.py b/var/spack/repos/builtin/packages/xauth/package.py
index aefbf692c7..c967c47c1c 100644
--- a/var/spack/repos/builtin/packages/xauth/package.py
+++ b/var/spack/repos/builtin/packages/xauth/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xbacklight/package.py b/var/spack/repos/builtin/packages/xbacklight/package.py
index 5fd7d6b4e3..f465c75d54 100644
--- a/var/spack/repos/builtin/packages/xbacklight/package.py
+++ b/var/spack/repos/builtin/packages/xbacklight/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xbiff/package.py b/var/spack/repos/builtin/packages/xbiff/package.py
index 3305eebd83..bc259eee76 100644
--- a/var/spack/repos/builtin/packages/xbiff/package.py
+++ b/var/spack/repos/builtin/packages/xbiff/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,6 @@ class Xbiff(AutotoolsPackage, XorgPackage):
depends_on('libxext')
depends_on('libx11')
- depends_on('xbitmaps', type='build')
+ depends_on('xbitmaps')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xbitmaps/package.py b/var/spack/repos/builtin/packages/xbitmaps/package.py
index 0b61b98e2c..7f681b5925 100644
--- a/var/spack/repos/builtin/packages/xbitmaps/package.py
+++ b/var/spack/repos/builtin/packages/xbitmaps/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xbraid/package.py b/var/spack/repos/builtin/packages/xbraid/package.py
index 530390c100..cffe634d76 100644
--- a/var/spack/repos/builtin/packages/xbraid/package.py
+++ b/var/spack/repos/builtin/packages/xbraid/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcalc/package.py b/var/spack/repos/builtin/packages/xcalc/package.py
index 85078d3860..68670ab684 100644
--- a/var/spack/repos/builtin/packages/xcalc/package.py
+++ b/var/spack/repos/builtin/packages/xcalc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Xcalc(AutotoolsPackage, XorgPackage):
depends_on('libxt')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xcb-demo/package.py b/var/spack/repos/builtin/packages/xcb-demo/package.py
index 83e7eb2666..6336a7eeac 100644
--- a/var/spack/repos/builtin/packages/xcb-demo/package.py
+++ b/var/spack/repos/builtin/packages/xcb-demo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcb-proto/package.py b/var/spack/repos/builtin/packages/xcb-proto/package.py
index 7bf70df0e5..98b7e25f8a 100644
--- a/var/spack/repos/builtin/packages/xcb-proto/package.py
+++ b/var/spack/repos/builtin/packages/xcb-proto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -11,8 +11,10 @@ class XcbProto(AutotoolsPackage):
generate the majority of its code and API."""
homepage = "http://xcb.freedesktop.org/"
- url = "http://xcb.freedesktop.org/dist/xcb-proto-1.13.tar.gz"
+ url = "https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-1.14.1.tar.xz"
+ version('1.14.1', sha256='f04add9a972ac334ea11d9d7eb4fc7f8883835da3e4859c9afa971efdf57fcc3')
+ version('1.14', sha256='186a3ceb26f9b4a015f5a44dcc814c93033a5fc39684f36f1ecc79834416a605')
version('1.13', sha256='0698e8f596e4c0dbad71d3dc754d95eb0edbb42df5464e0f782621216fa33ba7')
version('1.12', sha256='cfa49e65dd390233d560ce4476575e4b76e505a0e0bacdfb5ba6f8d0af53fd59')
version('1.11', sha256='d12152193bd71aabbdbb97b029717ae6d5d0477ab239614e3d6193cc0385d906')
@@ -22,3 +24,11 @@ class XcbProto(AutotoolsPackage):
# extends('python')
patch('xcb-proto-1.12-schema-1.patch', when='@1.12')
+
+ def url_for_version(self, version):
+ if version >= Version('1.14'):
+ url = 'https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-{0}.tar.xz'
+ else:
+ url = 'http://xcb.freedesktop.org/dist/xcb-proto-{0}.tar.gz'
+
+ return url.format(version)
diff --git a/var/spack/repos/builtin/packages/xcb-util-cursor/package.py b/var/spack/repos/builtin/packages/xcb-util-cursor/package.py
index 6b241c46c7..ad6a5a9e6b 100644
--- a/var/spack/repos/builtin/packages/xcb-util-cursor/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-cursor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcb-util-errors/package.py b/var/spack/repos/builtin/packages/xcb-util-errors/package.py
index e861511d33..da09925c43 100644
--- a/var/spack/repos/builtin/packages/xcb-util-errors/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-errors/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,5 +21,5 @@ class XcbUtilErrors(AutotoolsPackage):
depends_on('libxcb@1.4:')
- depends_on('xcb-proto', type='build')
+ depends_on('xcb-proto')
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/xcb-util-image/package.py b/var/spack/repos/builtin/packages/xcb-util-image/package.py
index e9b341e259..46442ba19f 100644
--- a/var/spack/repos/builtin/packages/xcb-util-image/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-image/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,5 +22,5 @@ class XcbUtilImage(AutotoolsPackage):
depends_on('libxcb@1.4:')
depends_on('xcb-util')
- depends_on('xproto@7.0.8:', type='build')
+ depends_on('xproto@7.0.8:')
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/xcb-util-keysyms/package.py b/var/spack/repos/builtin/packages/xcb-util-keysyms/package.py
index 5b51fe0fe5..e214fcaad4 100644
--- a/var/spack/repos/builtin/packages/xcb-util-keysyms/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-keysyms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,5 +21,5 @@ class XcbUtilKeysyms(AutotoolsPackage):
depends_on('libxcb@1.4:')
- depends_on('xproto@7.0.8:', type='build')
+ depends_on('xproto@7.0.8:')
depends_on('pkgconfig', type='build')
diff --git a/var/spack/repos/builtin/packages/xcb-util-renderutil/package.py b/var/spack/repos/builtin/packages/xcb-util-renderutil/package.py
index 864fa51989..c72bb75f1e 100644
--- a/var/spack/repos/builtin/packages/xcb-util-renderutil/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-renderutil/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcb-util-wm/package.py b/var/spack/repos/builtin/packages/xcb-util-wm/package.py
index 8e1f8d764f..c19caa0831 100644
--- a/var/spack/repos/builtin/packages/xcb-util-wm/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-wm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcb-util-xrm/package.py b/var/spack/repos/builtin/packages/xcb-util-xrm/package.py
index 0c0185f142..4ae58ac3ea 100644
--- a/var/spack/repos/builtin/packages/xcb-util-xrm/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-xrm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcb-util/package.py b/var/spack/repos/builtin/packages/xcb-util/package.py
index 7b3f1b4a4a..470a8d74e8 100644
--- a/var/spack/repos/builtin/packages/xcb-util/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcfun/package.py b/var/spack/repos/builtin/packages/xcfun/package.py
index 2e07c72819..fbb8f03e0d 100644
--- a/var/spack/repos/builtin/packages/xcfun/package.py
+++ b/var/spack/repos/builtin/packages/xcfun/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xclip/package.py b/var/spack/repos/builtin/packages/xclip/package.py
index 167ab66255..f3aff9f53b 100644
--- a/var/spack/repos/builtin/packages/xclip/package.py
+++ b/var/spack/repos/builtin/packages/xclip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xclipboard/package.py b/var/spack/repos/builtin/packages/xclipboard/package.py
index 7caf75a319..2d201265af 100644
--- a/var/spack/repos/builtin/packages/xclipboard/package.py
+++ b/var/spack/repos/builtin/packages/xclipboard/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,6 @@ class Xclipboard(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxkbfile')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xclock/package.py b/var/spack/repos/builtin/packages/xclock/package.py
index 2e79e2f874..834005fb48 100644
--- a/var/spack/repos/builtin/packages/xclock/package.py
+++ b/var/spack/repos/builtin/packages/xclock/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,6 +24,6 @@ class Xclock(AutotoolsPackage, XorgPackage):
depends_on('libxkbfile')
depends_on('libxt')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xcmiscproto/package.py b/var/spack/repos/builtin/packages/xcmiscproto/package.py
index 312b144e9b..8594976049 100644
--- a/var/spack/repos/builtin/packages/xcmiscproto/package.py
+++ b/var/spack/repos/builtin/packages/xcmiscproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcmsdb/package.py b/var/spack/repos/builtin/packages/xcmsdb/package.py
index 98c8711766..ec9c9549e1 100644
--- a/var/spack/repos/builtin/packages/xcmsdb/package.py
+++ b/var/spack/repos/builtin/packages/xcmsdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcompmgr/package.py b/var/spack/repos/builtin/packages/xcompmgr/package.py
index c2574230fa..20f1e857ca 100644
--- a/var/spack/repos/builtin/packages/xcompmgr/package.py
+++ b/var/spack/repos/builtin/packages/xcompmgr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xconsole/package.py b/var/spack/repos/builtin/packages/xconsole/package.py
index 1e20f7d5f4..628be26d8a 100644
--- a/var/spack/repos/builtin/packages/xconsole/package.py
+++ b/var/spack/repos/builtin/packages/xconsole/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcursor-themes/package.py b/var/spack/repos/builtin/packages/xcursor-themes/package.py
index f5767be36c..e9b723b5bb 100644
--- a/var/spack/repos/builtin/packages/xcursor-themes/package.py
+++ b/var/spack/repos/builtin/packages/xcursor-themes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xcursorgen/package.py b/var/spack/repos/builtin/packages/xcursorgen/package.py
index e9c1d9a499..1836d64dde 100644
--- a/var/spack/repos/builtin/packages/xcursorgen/package.py
+++ b/var/spack/repos/builtin/packages/xcursorgen/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xdbedizzy/package.py b/var/spack/repos/builtin/packages/xdbedizzy/package.py
index 3928dbb781..cc7227e261 100644
--- a/var/spack/repos/builtin/packages/xdbedizzy/package.py
+++ b/var/spack/repos/builtin/packages/xdbedizzy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xdelta/package.py b/var/spack/repos/builtin/packages/xdelta/package.py
index 43adf75c72..3d22858868 100644
--- a/var/spack/repos/builtin/packages/xdelta/package.py
+++ b/var/spack/repos/builtin/packages/xdelta/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xditview/package.py b/var/spack/repos/builtin/packages/xditview/package.py
index 2d45fe2a24..82e834b02a 100644
--- a/var/spack/repos/builtin/packages/xditview/package.py
+++ b/var/spack/repos/builtin/packages/xditview/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xdm/package.py b/var/spack/repos/builtin/packages/xdm/package.py
index d68445c02d..434788ca61 100644
--- a/var/spack/repos/builtin/packages/xdm/package.py
+++ b/var/spack/repos/builtin/packages/xdm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xdmf3/package.py b/var/spack/repos/builtin/packages/xdmf3/package.py
index 33c9e802b9..b4ff900c36 100644
--- a/var/spack/repos/builtin/packages/xdmf3/package.py
+++ b/var/spack/repos/builtin/packages/xdmf3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xdotool/package.py b/var/spack/repos/builtin/packages/xdotool/package.py
index da918c32a7..539c332cd1 100644
--- a/var/spack/repos/builtin/packages/xdotool/package.py
+++ b/var/spack/repos/builtin/packages/xdotool/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xdpyinfo/package.py b/var/spack/repos/builtin/packages/xdpyinfo/package.py
index 6b16fed4e2..df91bfc3bf 100644
--- a/var/spack/repos/builtin/packages/xdpyinfo/package.py
+++ b/var/spack/repos/builtin/packages/xdpyinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,9 +24,9 @@ class Xdpyinfo(AutotoolsPackage, XorgPackage):
depends_on('libxtst')
depends_on('libxcb')
- depends_on('xproto@7.0.22:', type='build')
- depends_on('recordproto', type='build')
- depends_on('inputproto', type='build')
- depends_on('fixesproto', type='build')
+ depends_on('xproto@7.0.22:')
+ depends_on('recordproto')
+ depends_on('inputproto')
+ depends_on('fixesproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xdriinfo/package.py b/var/spack/repos/builtin/packages/xdriinfo/package.py
index ce44860d61..0c64b34b7d 100644
--- a/var/spack/repos/builtin/packages/xdriinfo/package.py
+++ b/var/spack/repos/builtin/packages/xdriinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,6 +22,6 @@ class Xdriinfo(AutotoolsPackage, XorgPackage):
depends_on('libxfixes')
depends_on('pcre')
- depends_on('glproto', type='build')
+ depends_on('glproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xedit/package.py b/var/spack/repos/builtin/packages/xedit/package.py
index be32863f04..967d144675 100644
--- a/var/spack/repos/builtin/packages/xedit/package.py
+++ b/var/spack/repos/builtin/packages/xedit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xerces-c/package.py b/var/spack/repos/builtin/packages/xerces-c/package.py
index d24ef904de..b1dbccefcf 100644
--- a/var/spack/repos/builtin/packages/xerces-c/package.py
+++ b/var/spack/repos/builtin/packages/xerces-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xeus/package.py b/var/spack/repos/builtin/packages/xeus/package.py
index 756a130aa4..b4601508f5 100644
--- a/var/spack/repos/builtin/packages/xeus/package.py
+++ b/var/spack/repos/builtin/packages/xeus/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,7 +29,7 @@ class Xeus(CMakePackage):
depends_on('xtl@0.4.0:')
depends_on('nlohmann-json@3.2.0', when='@develop,0.15.0:')
depends_on('nlohmann-json@3.1.1', when='@0.14.1')
- depends_on('libuuid')
+ depends_on('uuid')
# finds cryptopp not built with cmake, removes c++17 attribute
# in check_cxx_source_compiles
@@ -37,8 +37,7 @@ class Xeus(CMakePackage):
def cmake_args(self):
args = [
- '-DBUILD_EXAMPLES:BOOL=%s' % (
- 'ON' if '+examples' in self.spec else 'OFF')
+ self.define_from_variant('BUILD_EXAMPLES', 'examples')
]
return args
diff --git a/var/spack/repos/builtin/packages/xev/package.py b/var/spack/repos/builtin/packages/xev/package.py
index 462efcf883..842ccde5d0 100644
--- a/var/spack/repos/builtin/packages/xev/package.py
+++ b/var/spack/repos/builtin/packages/xev/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,6 +23,6 @@ class Xev(AutotoolsPackage, XorgPackage):
depends_on('libxrandr@1.2:')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xextproto/package.py b/var/spack/repos/builtin/packages/xextproto/package.py
index e0a187d2d2..cdf299f51f 100644
--- a/var/spack/repos/builtin/packages/xextproto/package.py
+++ b/var/spack/repos/builtin/packages/xextproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xeyes/package.py b/var/spack/repos/builtin/packages/xeyes/package.py
index 0d7e94fb28..abf84807bb 100644
--- a/var/spack/repos/builtin/packages/xeyes/package.py
+++ b/var/spack/repos/builtin/packages/xeyes/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xf86bigfontproto/package.py b/var/spack/repos/builtin/packages/xf86bigfontproto/package.py
index c1dff58458..547f95da5e 100644
--- a/var/spack/repos/builtin/packages/xf86bigfontproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86bigfontproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xf86dga/package.py b/var/spack/repos/builtin/packages/xf86dga/package.py
index 1d2ba4f5c0..ad5c89a766 100644
--- a/var/spack/repos/builtin/packages/xf86dga/package.py
+++ b/var/spack/repos/builtin/packages/xf86dga/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xf86dgaproto/package.py b/var/spack/repos/builtin/packages/xf86dgaproto/package.py
index 18c1b7d205..afac3a85ec 100644
--- a/var/spack/repos/builtin/packages/xf86dgaproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86dgaproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xf86driproto/package.py b/var/spack/repos/builtin/packages/xf86driproto/package.py
index 45124af03a..0bf1681588 100644
--- a/var/spack/repos/builtin/packages/xf86driproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86driproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xf86miscproto/package.py b/var/spack/repos/builtin/packages/xf86miscproto/package.py
index da62b39064..0f3b1934c4 100644
--- a/var/spack/repos/builtin/packages/xf86miscproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86miscproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xf86rushproto/package.py b/var/spack/repos/builtin/packages/xf86rushproto/package.py
index 5ace6998b1..2b34016963 100644
--- a/var/spack/repos/builtin/packages/xf86rushproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86rushproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xf86vidmodeproto/package.py b/var/spack/repos/builtin/packages/xf86vidmodeproto/package.py
index 74c0fc06bd..0e9d56b642 100644
--- a/var/spack/repos/builtin/packages/xf86vidmodeproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86vidmodeproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xfd/package.py b/var/spack/repos/builtin/packages/xfd/package.py
index 3760f44ae9..1d1c0e60f2 100644
--- a/var/spack/repos/builtin/packages/xfd/package.py
+++ b/var/spack/repos/builtin/packages/xfd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -24,7 +24,7 @@ class Xfd(AutotoolsPackage, XorgPackage):
depends_on('libxmu')
depends_on('libxt')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xfindproxy/package.py b/var/spack/repos/builtin/packages/xfindproxy/package.py
index 68b4847a39..f40a1d334a 100644
--- a/var/spack/repos/builtin/packages/xfindproxy/package.py
+++ b/var/spack/repos/builtin/packages/xfindproxy/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -22,7 +22,7 @@ class Xfindproxy(AutotoolsPackage, XorgPackage):
depends_on('libice')
depends_on('libxt')
- depends_on('xproto', type='build')
- depends_on('xproxymanagementprotocol', type='build')
+ depends_on('xproto')
+ depends_on('xproxymanagementprotocol')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xfontsel/package.py b/var/spack/repos/builtin/packages/xfontsel/package.py
index 758631f82b..472d598dda 100644
--- a/var/spack/repos/builtin/packages/xfontsel/package.py
+++ b/var/spack/repos/builtin/packages/xfontsel/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xforms/package.py b/var/spack/repos/builtin/packages/xforms/package.py
new file mode 100644
index 0000000000..74faa5aa22
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xforms/package.py
@@ -0,0 +1,26 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Xforms(AutotoolsPackage):
+ """This is the Free Software distribution of the XForms Library, a
+ graphical user interface toolkit for X Window Systems."""
+
+ homepage = "http://www.nongnu.org/xforms/"
+ url = "http://download.savannah.gnu.org/releases/xforms/xforms-1.0.91.tar.gz"
+
+ version('1.2.4', sha256='78cc6b07071bbeaa1f906e0a22d5e9980e48f8913577bc082d661afe5cb75696')
+ version('1.2.3', sha256='7989b39598c769820ad451ad91e5cb0de29946940c8240aac94ca8238c2def61')
+ version('1.0.91', sha256='88684237c77489bcb1fbc9a794621a2919aa800e1c0a6d83d679b97980e3441d')
+
+ depends_on('libx11', type='link')
+ depends_on('libxpm', type='link')
+ depends_on('jpeg', type='link')
+
+ def configure_args(self):
+ args = ['--enable-static']
+ return args
diff --git a/var/spack/repos/builtin/packages/xfs/package.py b/var/spack/repos/builtin/packages/xfs/package.py
index ead61d320b..a7e7b13fca 100644
--- a/var/spack/repos/builtin/packages/xfs/package.py
+++ b/var/spack/repos/builtin/packages/xfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,8 +17,8 @@ class Xfs(AutotoolsPackage, XorgPackage):
depends_on('libxfont@1.4.5:')
depends_on('font-util')
- depends_on('xproto@7.0.17:', type='build')
- depends_on('fontsproto', type='build')
- depends_on('xtrans', type='build')
+ depends_on('xproto@7.0.17:')
+ depends_on('fontsproto')
+ depends_on('xtrans')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xfsdump/package.py b/var/spack/repos/builtin/packages/xfsdump/package.py
new file mode 100644
index 0000000000..9ae60c3772
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xfsdump/package.py
@@ -0,0 +1,45 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Xfsdump(MakefilePackage):
+ """XFS Dump Tools."""
+
+ homepage = "http://oss.sgi.com/projects/xfs/"
+ url = "https://github.com/pcacjr/xfsdump/archive/v3.1.6.tar.gz"
+
+ version('3.1.6', sha256='bbf659758107cad9b41cf3001df121e6428485b341109a1f1a952fd477a7010b')
+ version('3.1.5', sha256='ba5bb91413ccb5a0eaffaa84f242baa08520a09f7b990b28bbd0d33a4390f7b6')
+ version('3.1.4', sha256='a75d5c7dabd3dd4184008efcfd30d0c96b6ab318edaad9659ce180dfb9652b01')
+
+ depends_on('gettext')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('util-linux')
+ depends_on('attr')
+ depends_on('xfsprogs@:4.20.0')
+
+ def setup_build_environment(self, env):
+ env.append_flags('LDFLAGS', '-lintl')
+
+ def build(self, spec, prefix):
+ make('prefix={0}'.format(self.prefix),
+ 'MSGFMT={0}'.format(self.spec['gettext'].prefix.bin.msgfmt),
+ 'MSGMERGE={0}'.format(self.spec['gettext'].prefix.bin.msgmerge),
+ 'XGETTEXT={0}'.format(self.spec['gettext'].prefix.bin.xgettext))
+
+ def install(self, spec, prefix):
+ make('prefix={0}'.format(self.prefix),
+ 'MSGFMT={0}'.format(self.spec['gettext'].prefix.bin.msgfmt),
+ 'MSGMERGE={0}'.format(self.spec['gettext'].prefix.bin.msgmerge),
+ 'XGETTEXT={0}'.format(self.spec['gettext'].prefix.bin.xgettext),
+ 'install')
+
+ def setup_run_environment(self, env):
+ env.prepend_path('PATH', self.prefix.sbin)
diff --git a/var/spack/repos/builtin/packages/xfsinfo/package.py b/var/spack/repos/builtin/packages/xfsinfo/package.py
index 72235c2c98..d85373a34b 100644
--- a/var/spack/repos/builtin/packages/xfsinfo/package.py
+++ b/var/spack/repos/builtin/packages/xfsinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,6 @@ class Xfsinfo(AutotoolsPackage, XorgPackage):
depends_on('libfs')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xfsprogs/package.py b/var/spack/repos/builtin/packages/xfsprogs/package.py
index 8d9b290e63..21478ea978 100644
--- a/var/spack/repos/builtin/packages/xfsprogs/package.py
+++ b/var/spack/repos/builtin/packages/xfsprogs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,21 +12,32 @@ class Xfsprogs(AutotoolsPackage):
homepage = "http://oss.sgi.com/projects/xfs/"
url = "http://kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-4.17.0.tar.xz"
- version('5.8.0', sha256='8ef46ed9e6bb927f407f541dc4324857c908ddf1374265edc910d23724048c6b')
- version('5.7.0', sha256='8f2348a68a686a3f4491dda5d62dd32d885fbc52d32875edd41e2c296e7b4f35')
- version('5.6.0', sha256='0aba2aac5d80d07646dde868437fc337af2c7326edadcc6d6a7c0bfd3190c1e6')
+ version('5.11.0', sha256='0e9c390fcdbb8a79e1b8f5e6e25fd529fc9f9c2ef8f2d5e647b3556b82d1b353')
+ version('5.8.0', sha256='8ef46ed9e6bb927f407f541dc4324857c908ddf1374265edc910d23724048c6b')
+ version('5.7.0', sha256='8f2348a68a686a3f4491dda5d62dd32d885fbc52d32875edd41e2c296e7b4f35')
+ version('5.6.0', sha256='0aba2aac5d80d07646dde868437fc337af2c7326edadcc6d6a7c0bfd3190c1e6')
version('4.20.0', sha256='beafdfd080352a8c9d543491e0874d0e8809cb643a3b9d352d5feed38d77022a')
depends_on('gettext')
+ depends_on('uuid')
depends_on('util-linux')
+ def flag_handler(self, name, flags):
+ iflags = []
+ if name == 'cflags':
+ if self.spec.satisfies('@:5.4.0 %gcc@10:'):
+ iflags.append('-fcommon')
+ return (iflags, None, flags)
+
def setup_build_environment(self, env):
env.append_path('C_INCLUDE_PATH',
self.spec['util-linux'].prefix.include.blkid)
def configure_args(self):
- args = ['LDFLAGS=-lintl']
+ args = ['LDFLAGS=-lintl',
+ "--with-systemd-unit-dir=" +
+ self.spec['xfsprogs'].prefix.lib.systemd.system]
return args
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/xfwp/package.py b/var/spack/repos/builtin/packages/xfwp/package.py
index 7f57aa91c4..c5ada1a220 100644
--- a/var/spack/repos/builtin/packages/xfwp/package.py
+++ b/var/spack/repos/builtin/packages/xfwp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,8 +16,8 @@ class Xfwp(AutotoolsPackage, XorgPackage):
depends_on('libice')
- depends_on('xproto', type='build')
- depends_on('xproxymanagementprotocol', type='build')
+ depends_on('xproto')
+ depends_on('xproxymanagementprotocol')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xgamma/package.py b/var/spack/repos/builtin/packages/xgamma/package.py
index c5971fccfd..07fcd6f872 100644
--- a/var/spack/repos/builtin/packages/xgamma/package.py
+++ b/var/spack/repos/builtin/packages/xgamma/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Xgamma(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxxf86vm')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xgboost/package.py b/var/spack/repos/builtin/packages/xgboost/package.py
index 15cdbb763e..5b9476faf6 100644
--- a/var/spack/repos/builtin/packages/xgboost/package.py
+++ b/var/spack/repos/builtin/packages/xgboost/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -7,25 +7,49 @@ from spack import *
class Xgboost(CMakePackage, CudaPackage):
- """Scalable, Portable and Distributed Gradient Boosting (GBDT, GBRT or GBM)
- Library, for Python, R, Java, Scala, C++ and more. Runs on single
- machine, Hadoop, Spark, Flink and DataFlow"""
+ """XGBoost is an optimized distributed gradient boosting library designed to be
+ highly efficient, flexible and portable. It implements machine learning algorithms
+ under the Gradient Boosting framework. XGBoost provides a parallel tree boosting
+ (also known as GBDT, GBM) that solve many data science problems in a fast and
+ accurate way. The same code runs on major distributed environment (Hadoop, SGE, MPI)
+ and can solve problems beyond billions of examples."""
homepage = "https://xgboost.ai/"
- url = "https://github.com/dmlc/xgboost/releases/download/v0.81/xgboost-0.81.tar.bz2"
git = "https://github.com/dmlc/xgboost.git"
- version('0.90', tag='v0.90', submodules=True)
- version('0.81', sha256='9d8ff161699111d45c96bd15229aa6d80eb1cab7cbbef7e8eaa60ccfb5a4f806')
+ maintainers = ['adamjstewart']
+
+ version('master', branch='master', submodules=True)
+ version('1.3.3', tag='v1.3.3', submodules=True)
+ version('0.90', tag='v0.90', submodules=True, deprecated=True)
+ version('0.81', tag='v0.81', submodules=True, deprecated=True)
+
+ variant('nccl', default=False, description='Build with NCCL to enable distributed GPU support')
+ variant('openmp', default=True, description='Build with OpenMP support')
+
+ depends_on('cmake@3.13:', type='build')
+ depends_on('cmake@3.16:', when='platform=darwin', type='build')
+ depends_on('ninja', type='build')
+ depends_on('cuda@10:', when='+cuda')
+ depends_on('nccl', when='+nccl')
+ depends_on('llvm-openmp', when='%apple-clang +openmp')
+
+ conflicts('%gcc@:4.999', msg='GCC version must be at least 5.0!')
+ conflicts('+nccl', when='~cuda', msg='NCCL requires CUDA')
+ conflicts('+cuda', when='~openmp', msg='CUDA requires OpenMP')
+
+ generator = 'Ninja'
def cmake_args(self):
- return [
- '-DUSE_CUDA={0}'.format('YES' if '+cuda' in self.spec else 'NO')
+ # https://xgboost.readthedocs.io/en/latest/build.html
+ args = [
+ self.define_from_variant('USE_CUDA', 'cuda'),
+ self.define_from_variant('USE_NCCL', 'nccl'),
+ self.define_from_variant('USE_OPENMP', 'openmp'),
]
- def install(self, spec, prefix):
- install_tree(str(self.stage.source_path), prefix)
- # create a bin directory for executable "xgboost" which is possibly
- # used in functional testing of the compilation target "libxgboost"
- mkdirp(prefix.bin)
- install('xgboost', prefix.bin)
+ if '+cuda' in self.spec and 'cuda_arch=none' not in self.spec:
+ args.append(self.define(
+ 'GPU_COMPUTE_VER', self.spec.variants['cuda_arch'].value))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/xgc/package.py b/var/spack/repos/builtin/packages/xgc/package.py
index 9516216a38..8466e5f595 100644
--- a/var/spack/repos/builtin/packages/xgc/package.py
+++ b/var/spack/repos/builtin/packages/xgc/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xhmm/package.py b/var/spack/repos/builtin/packages/xhmm/package.py
index bff123a68a..0043311129 100644
--- a/var/spack/repos/builtin/packages/xhmm/package.py
+++ b/var/spack/repos/builtin/packages/xhmm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xhost/package.py b/var/spack/repos/builtin/packages/xhost/package.py
index 20fd613407..4ad318a273 100644
--- a/var/spack/repos/builtin/packages/xhost/package.py
+++ b/var/spack/repos/builtin/packages/xhost/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Xhost(AutotoolsPackage, XorgPackage):
depends_on('libxmu')
depends_on('libxau')
- depends_on('xproto@7.0.22:', type='build')
+ depends_on('xproto@7.0.22:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xineramaproto/package.py b/var/spack/repos/builtin/packages/xineramaproto/package.py
index 85e73cadbc..33849b3bf2 100644
--- a/var/spack/repos/builtin/packages/xineramaproto/package.py
+++ b/var/spack/repos/builtin/packages/xineramaproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xinit/package.py b/var/spack/repos/builtin/packages/xinit/package.py
index 92536ee22a..922339532e 100644
--- a/var/spack/repos/builtin/packages/xinit/package.py
+++ b/var/spack/repos/builtin/packages/xinit/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Xinit(AutotoolsPackage, XorgPackage):
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xinput/package.py b/var/spack/repos/builtin/packages/xinput/package.py
index 09c1263377..d26ddd5b61 100644
--- a/var/spack/repos/builtin/packages/xinput/package.py
+++ b/var/spack/repos/builtin/packages/xinput/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,9 +20,9 @@ class Xinput(AutotoolsPackage, XorgPackage):
depends_on('libxrandr')
depends_on('libxinerama')
- depends_on('inputproto@2.1.99.1:', type='build')
- depends_on('fixesproto', type='build')
- depends_on('randrproto', type='build')
- depends_on('xineramaproto', type='build')
+ depends_on('inputproto@2.1.99.1:')
+ depends_on('fixesproto')
+ depends_on('randrproto')
+ depends_on('xineramaproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xios/package.py b/var/spack/repos/builtin/packages/xios/package.py
index 2b5c6f9dae..980f7396ef 100644
--- a/var/spack/repos/builtin/packages/xios/package.py
+++ b/var/spack/repos/builtin/packages/xios/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -113,7 +113,7 @@ OASIS_LIB=""
param['LIBCXX'] = '-lstdc++'
if any(map(spec.satisfies,
- ('%gcc', '%intel', '%apple-clang', '%clang'))):
+ ('%gcc', '%intel', '%apple-clang', '%clang', '%fj'))):
text = r"""
%CCOMPILER {MPICXX}
%FCOMPILER {MPIFC}
diff --git a/var/spack/repos/builtin/packages/xkbcomp/package.py b/var/spack/repos/builtin/packages/xkbcomp/package.py
index ef994a8cac..be3b9237d3 100644
--- a/var/spack/repos/builtin/packages/xkbcomp/package.py
+++ b/var/spack/repos/builtin/packages/xkbcomp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,12 +17,13 @@ class Xkbcomp(AutotoolsPackage, XorgPackage):
homepage = "https://www.x.org/wiki/XKB/"
xorg_mirror_path = "app/xkbcomp-1.3.1.tar.gz"
+ version('1.4.4', sha256='159fba6b62ef4a3fb16ef7fc4eb4fc26f3888652471ceb604c495783dda020bc')
version('1.3.1', sha256='018e83a922430652d4bc3f3db610d2296e618c76c9b3fbcdccde975aeb655749')
depends_on('libx11')
depends_on('libxkbfile')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('bison', type='build')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xkbdata/package.py b/var/spack/repos/builtin/packages/xkbdata/package.py
index 980e65a6b5..a0722dc996 100644
--- a/var/spack/repos/builtin/packages/xkbdata/package.py
+++ b/var/spack/repos/builtin/packages/xkbdata/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xkbevd/package.py b/var/spack/repos/builtin/packages/xkbevd/package.py
index 16cc0a7f60..2ed9670bae 100644
--- a/var/spack/repos/builtin/packages/xkbevd/package.py
+++ b/var/spack/repos/builtin/packages/xkbevd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xkbprint/package.py b/var/spack/repos/builtin/packages/xkbprint/package.py
index 207f56cea4..bfaaad82b7 100644
--- a/var/spack/repos/builtin/packages/xkbprint/package.py
+++ b/var/spack/repos/builtin/packages/xkbprint/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Xkbprint(AutotoolsPackage, XorgPackage):
depends_on('libxkbfile')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xkbutils/package.py b/var/spack/repos/builtin/packages/xkbutils/package.py
index dad36cbdc1..686a72e837 100644
--- a/var/spack/repos/builtin/packages/xkbutils/package.py
+++ b/var/spack/repos/builtin/packages/xkbutils/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,7 +19,7 @@ class Xkbutils(AutotoolsPackage, XorgPackage):
depends_on('libxt')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
- depends_on('inputproto', type='build')
+ depends_on('xproto@7.0.17:')
+ depends_on('inputproto')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xkeyboard-config/package.py b/var/spack/repos/builtin/packages/xkeyboard-config/package.py
index 4db99a63b4..f8622e7067 100644
--- a/var/spack/repos/builtin/packages/xkeyboard-config/package.py
+++ b/var/spack/repos/builtin/packages/xkeyboard-config/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,7 +21,7 @@ class XkeyboardConfig(AutotoolsPackage, XorgPackage):
depends_on('libxslt', type='build')
depends_on('pkgconfig', type='build')
depends_on('intltool@0.30:', type='build')
- depends_on('xproto@7.0.20:', type='build')
+ depends_on('xproto@7.0.20:')
# TODO: missing dependencies
# xgettext
diff --git a/var/spack/repos/builtin/packages/xkill/package.py b/var/spack/repos/builtin/packages/xkill/package.py
index 4a80023038..fa87924552 100644
--- a/var/spack/repos/builtin/packages/xkill/package.py
+++ b/var/spack/repos/builtin/packages/xkill/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -19,6 +19,6 @@ class Xkill(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxmu')
- depends_on('xproto@7.0.22:', type='build')
+ depends_on('xproto@7.0.22:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xlc/package.py b/var/spack/repos/builtin/packages/xlc/package.py
new file mode 100644
index 0000000000..42cf3b5888
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xlc/package.py
@@ -0,0 +1,81 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import collections
+import re
+
+import spack.compiler
+import llnl.util.tty as tty
+
+
+class Xlc(Package):
+ """IBM XL C/C++ is an advanced, high-performance compiler that can be
+ used for developing complex, computationally intensive programs, including
+ interlanguage calls with C and Fortran programs.
+ """
+
+ homepage = "https://www.ibm.com/support/knowledgecenter/SSXVZZ_16.1.1/com.ibm.compilers.linux.doc/welcome.html"
+
+ variant('r', default=True, description='The _r version of compilers')
+
+ def install(self, spec, prefix):
+ raise InstallError(
+ 'XL compilers are not installable yet, but can be '
+ 'detected on a system where they are supplied by vendor'
+ )
+
+ executables = [r'xlc', r'xlC', r'xlc\+\+']
+
+ @classmethod
+ def determine_version(cls, exe):
+ version_regex = re.compile(r'([0-9]?[0-9]\.[0-9])')
+ try:
+ output = spack.compiler.get_compiler_version_output(
+ exe, '-qversion'
+ )
+ # Exclude spurious Fortran compilers
+ if 'Fortran' in output:
+ return None
+
+ match = version_regex.search(output)
+ if match:
+ return match.group(1)
+ except spack.util.executable.ProcessError:
+ pass
+ except Exception as e:
+ tty.debug(str(e))
+
+ @classmethod
+ def determine_variants(cls, exes, version_str):
+ variants = collections.defaultdict(dict)
+ for exe in exes:
+ # Determine the variant of the spec
+ variant_str = '+r' if '_r' in exe else '~r'
+ if 'xlc++' in exe:
+ variants[variant_str]['cxx'] = exe
+ continue
+
+ if 'xlc' in exe:
+ variants[variant_str]['c'] = exe
+ continue
+
+ results = []
+ for variant_str, compilers in variants.items():
+ results.append((variant_str, {'compilers': compilers}))
+
+ return results
+
+ @property
+ def cc(self):
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers']['c']
+ msg = "cannot retrieve C compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
+
+ @property
+ def cxx(self):
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers']['cxx']
+ msg = "cannot retrieve C compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
diff --git a/var/spack/repos/builtin/packages/xlf/package.py b/var/spack/repos/builtin/packages/xlf/package.py
new file mode 100644
index 0000000000..4f5aefdd0f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xlf/package.py
@@ -0,0 +1,69 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import os.path
+import collections
+import re
+
+import spack.compiler
+import llnl.util.tty as tty
+
+
+class Xlf(Package):
+ """IBM XL Fortran is an advanced, high-performance compiler that can be
+ used for developing complex, computationally intensive programs, including
+ interlanguage calls with C and Fortran programs.
+ """
+
+ homepage = "https://www.ibm.com/support/knowledgecenter/SSXVZZ_16.1.1/com.ibm.compilers.linux.doc/welcome.html"
+
+ variant('r', default=True, description='The _r version of compilers')
+
+ def install(self, spec, prefix):
+ raise InstallError(
+ 'XL compilers are not installable yet, but can be '
+ 'detected on a system where they are supplied by vendor'
+ )
+
+ executables = [r'xlf']
+
+ @classmethod
+ def determine_version(cls, exe):
+ version_regex = re.compile(r'([0-9]?[0-9]\.[0-9])')
+ try:
+ output = spack.compiler.get_compiler_version_output(
+ exe, '-qversion'
+ )
+ match = version_regex.search(output)
+ if match:
+ return match.group(1)
+ except spack.util.executable.ProcessError:
+ pass
+ except Exception as e:
+ tty.debug(e)
+
+ @classmethod
+ def determine_variants(cls, exes, version_str):
+ variants = collections.defaultdict(dict)
+ for exe in exes:
+ if os.path.basename(exe) == 'xlf':
+ variants['~r']['fortran'] = exe
+ continue
+
+ if os.path.basename(exe) == 'xlf_r':
+ variants['+r']['fortran'] = exe
+ continue
+
+ results = []
+ for variant_str, compilers in variants.items():
+ results.append((variant_str, {'compilers': compilers}))
+
+ return results
+
+ @property
+ def fortran(self):
+ if self.spec.external:
+ return self.spec.extra_attributes['compilers']['fortran']
+ msg = "cannot retrieve C compiler [spec is not concrete]"
+ assert self.spec.concrete, msg
diff --git a/var/spack/repos/builtin/packages/xload/package.py b/var/spack/repos/builtin/packages/xload/package.py
index a898bb2dd7..c4ae7501b7 100644
--- a/var/spack/repos/builtin/packages/xload/package.py
+++ b/var/spack/repos/builtin/packages/xload/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,6 @@ class Xload(AutotoolsPackage, XorgPackage):
depends_on('libxt')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xlogo/package.py b/var/spack/repos/builtin/packages/xlogo/package.py
index 1f0b7528e4..30d741a5c2 100644
--- a/var/spack/repos/builtin/packages/xlogo/package.py
+++ b/var/spack/repos/builtin/packages/xlogo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xlsatoms/package.py b/var/spack/repos/builtin/packages/xlsatoms/package.py
index 08439aae3d..a05b863765 100644
--- a/var/spack/repos/builtin/packages/xlsatoms/package.py
+++ b/var/spack/repos/builtin/packages/xlsatoms/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xlsclients/package.py b/var/spack/repos/builtin/packages/xlsclients/package.py
index 930c628275..da8df48239 100644
--- a/var/spack/repos/builtin/packages/xlsclients/package.py
+++ b/var/spack/repos/builtin/packages/xlsclients/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xlsfonts/package.py b/var/spack/repos/builtin/packages/xlsfonts/package.py
index 5d01efe003..c0b0888ca2 100644
--- a/var/spack/repos/builtin/packages/xlsfonts/package.py
+++ b/var/spack/repos/builtin/packages/xlsfonts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,6 @@ class Xlsfonts(AutotoolsPackage, XorgPackage):
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xmag/package.py b/var/spack/repos/builtin/packages/xmag/package.py
index fcda514cbb..6e802b5c71 100644
--- a/var/spack/repos/builtin/packages/xmag/package.py
+++ b/var/spack/repos/builtin/packages/xmag/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xman/package.py b/var/spack/repos/builtin/packages/xman/package.py
index 4c963ec69c..d70099ed04 100644
--- a/var/spack/repos/builtin/packages/xman/package.py
+++ b/var/spack/repos/builtin/packages/xman/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Xman(AutotoolsPackage, XorgPackage):
depends_on('libxaw')
depends_on('libxt')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xmessage/package.py b/var/spack/repos/builtin/packages/xmessage/package.py
index f810f03c25..9d75655349 100644
--- a/var/spack/repos/builtin/packages/xmessage/package.py
+++ b/var/spack/repos/builtin/packages/xmessage/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xmh/package.py b/var/spack/repos/builtin/packages/xmh/package.py
index c88e29d193..2c3ea1d8cb 100644
--- a/var/spack/repos/builtin/packages/xmh/package.py
+++ b/var/spack/repos/builtin/packages/xmh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,6 +21,6 @@ class Xmh(AutotoolsPackage, XorgPackage):
depends_on('libxt')
depends_on('libx11')
- depends_on('xbitmaps@1.1.0:', type='build')
+ depends_on('xbitmaps@1.1.0:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xmlf90/package.py b/var/spack/repos/builtin/packages/xmlf90/package.py
index ff2a2a622b..63abdfa453 100644
--- a/var/spack/repos/builtin/packages/xmlf90/package.py
+++ b/var/spack/repos/builtin/packages/xmlf90/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xmlrpc-c/package.py b/var/spack/repos/builtin/packages/xmlrpc-c/package.py
index 758be25f76..d990e7b086 100644
--- a/var/spack/repos/builtin/packages/xmlrpc-c/package.py
+++ b/var/spack/repos/builtin/packages/xmlrpc-c/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xmlto/package.py b/var/spack/repos/builtin/packages/xmlto/package.py
index e7dc54f598..ef82b5b254 100644
--- a/var/spack/repos/builtin/packages/xmlto/package.py
+++ b/var/spack/repos/builtin/packages/xmlto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xmodmap/package.py b/var/spack/repos/builtin/packages/xmodmap/package.py
index bfffca335a..4f986b24b9 100644
--- a/var/spack/repos/builtin/packages/xmodmap/package.py
+++ b/var/spack/repos/builtin/packages/xmodmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,6 @@ class Xmodmap(AutotoolsPackage, XorgPackage):
depends_on('libx11')
- depends_on('xproto@7.0.25:', type='build')
+ depends_on('xproto@7.0.25:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xmore/package.py b/var/spack/repos/builtin/packages/xmore/package.py
index b6b4d6c360..20d3aa0625 100644
--- a/var/spack/repos/builtin/packages/xmore/package.py
+++ b/var/spack/repos/builtin/packages/xmore/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xorg-cf-files/package.py b/var/spack/repos/builtin/packages/xorg-cf-files/package.py
index 1ac58c5b09..48c3e6eaac 100644
--- a/var/spack/repos/builtin/packages/xorg-cf-files/package.py
+++ b/var/spack/repos/builtin/packages/xorg-cf-files/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xorg-docs/package.py b/var/spack/repos/builtin/packages/xorg-docs/package.py
index cdded0a96f..9f87d923bb 100644
--- a/var/spack/repos/builtin/packages/xorg-docs/package.py
+++ b/var/spack/repos/builtin/packages/xorg-docs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xorg-gtest/package.py b/var/spack/repos/builtin/packages/xorg-gtest/package.py
index 1d7bb7bcbe..909177d9c1 100644
--- a/var/spack/repos/builtin/packages/xorg-gtest/package.py
+++ b/var/spack/repos/builtin/packages/xorg-gtest/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xorg-server/package.py b/var/spack/repos/builtin/packages/xorg-server/package.py
index 079b9cd129..2f942c4ed2 100644
--- a/var/spack/repos/builtin/packages/xorg-server/package.py
+++ b/var/spack/repos/builtin/packages/xorg-server/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -21,9 +21,9 @@ class XorgServer(AutotoolsPackage, XorgPackage):
depends_on('libdrm@2.3.0:')
depends_on('libx11')
- depends_on('dri2proto@2.8:', type='build')
- depends_on('dri3proto@1.0:', type='build')
- depends_on('glproto@1.4.17:', type='build')
+ depends_on('dri2proto@2.8:')
+ depends_on('dri3proto@1.0:')
+ depends_on('glproto@1.4.17:')
depends_on('flex', type='build')
depends_on('bison', type='build')
diff --git a/var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py b/var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py
index 9b57524b47..29ed4812da 100644
--- a/var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py
+++ b/var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xphelloworld/package.py b/var/spack/repos/builtin/packages/xphelloworld/package.py
index f3e6e47be9..1038e91be2 100644
--- a/var/spack/repos/builtin/packages/xphelloworld/package.py
+++ b/var/spack/repos/builtin/packages/xphelloworld/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xplor-nih/package.py b/var/spack/repos/builtin/packages/xplor-nih/package.py
index 94ad11836a..9522d2f5de 100644
--- a/var/spack/repos/builtin/packages/xplor-nih/package.py
+++ b/var/spack/repos/builtin/packages/xplor-nih/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xplsprinters/package.py b/var/spack/repos/builtin/packages/xplsprinters/package.py
index 729ee62893..2cbe6558da 100644
--- a/var/spack/repos/builtin/packages/xplsprinters/package.py
+++ b/var/spack/repos/builtin/packages/xplsprinters/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xpmem/package.py b/var/spack/repos/builtin/packages/xpmem/package.py
index 90fa58df06..a5f56d74b0 100644
--- a/var/spack/repos/builtin/packages/xpmem/package.py
+++ b/var/spack/repos/builtin/packages/xpmem/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -25,6 +25,7 @@ class Xpmem(AutotoolsPackage):
# Versions starting 2.6.4 are neither tagged nor released in the repo
# (the choice of commits is based on the commit history of
# 'kernel/xpmem_private.h'):
+ version('2.6.5-36', commit='0d0bad4e1d07b38d53ecc8f20786bb1328c446da')
version('2.6.5', commit='4efeed9cbaabe971f3766d67cb108e2c3316d4b8')
version('2.6.4', commit='522054850e4d1479d69f50f7190d1548bf9749fd')
@@ -35,6 +36,10 @@ class Xpmem(AutotoolsPackage):
variant('kernel-module', default=True,
description='Enable building the kernel module')
+ # Added RHEL 8.3 kernel support
+ # Here 2.6.5-36 referes to 2.6.5 version and 36th commit id
+ patch('xpmem_v2.6.5-36.patch', when="@2.6.5-36", level=1)
+
depends_on('autoconf', type='build')
depends_on('automake', type='build')
depends_on('libtool', type='build')
diff --git a/var/spack/repos/builtin/packages/xpmem/xpmem_v2.6.5-36.patch b/var/spack/repos/builtin/packages/xpmem/xpmem_v2.6.5-36.patch
new file mode 100644
index 0000000000..a17fba4ad1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xpmem/xpmem_v2.6.5-36.patch
@@ -0,0 +1,15 @@
+--- xpmem/kernel/xpmem_pfn.c 2021-02-08 22:49:05.321501753 -0800
++++ xpmem.patch/kernel/xpmem_pfn.c 2021-02-08 23:30:30.875309634 -0800
+@@ -251,6 +251,12 @@
+ cpu_to_node(task_cpu(current)) != cpu_to_node(task_cpu(src_task))) {
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 3, 0)
+ saved_mask = current->cpus_mask;
++#elif LINUX_VERSION_CODE == KERNEL_VERSION(4,18, 0)
++ #ifdef RHEL_RELEASE_CODE
++ #if RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(8,3)
++ saved_mask = current->cpus_mask;
++ #endif
++ #endif
+ #else
+ saved_mask = current->cpus_allowed;
+ #endif
diff --git a/var/spack/repos/builtin/packages/xpr/package.py b/var/spack/repos/builtin/packages/xpr/package.py
index ca57b0c95b..e19849e7ce 100644
--- a/var/spack/repos/builtin/packages/xpr/package.py
+++ b/var/spack/repos/builtin/packages/xpr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Xpr(AutotoolsPackage, XorgPackage):
depends_on('libxmu')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xprehashprinterlist/package.py b/var/spack/repos/builtin/packages/xprehashprinterlist/package.py
index 2f03d06f40..afb2c1005a 100644
--- a/var/spack/repos/builtin/packages/xprehashprinterlist/package.py
+++ b/var/spack/repos/builtin/packages/xprehashprinterlist/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xprop/package.py b/var/spack/repos/builtin/packages/xprop/package.py
index a0d11ae17f..3bae624efc 100644
--- a/var/spack/repos/builtin/packages/xprop/package.py
+++ b/var/spack/repos/builtin/packages/xprop/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,6 @@ class Xprop(AutotoolsPackage, XorgPackage):
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xproto/package.py b/var/spack/repos/builtin/packages/xproto/package.py
index 7414ba1f5e..d1e27975e8 100644
--- a/var/spack/repos/builtin/packages/xproto/package.py
+++ b/var/spack/repos/builtin/packages/xproto/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py b/var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py
index cc9b421887..0c590a5b96 100644
--- a/var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py
+++ b/var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xqilla/package.py b/var/spack/repos/builtin/packages/xqilla/package.py
index 645edc19e5..dcf2789c89 100644
--- a/var/spack/repos/builtin/packages/xqilla/package.py
+++ b/var/spack/repos/builtin/packages/xqilla/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xrandr/package.py b/var/spack/repos/builtin/packages/xrandr/package.py
index 544e05d173..50b2d1d52d 100644
--- a/var/spack/repos/builtin/packages/xrandr/package.py
+++ b/var/spack/repos/builtin/packages/xrandr/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,6 @@ class Xrandr(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('randrproto')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xrdb/package.py b/var/spack/repos/builtin/packages/xrdb/package.py
index 3455f33740..2e19b83f3a 100644
--- a/var/spack/repos/builtin/packages/xrdb/package.py
+++ b/var/spack/repos/builtin/packages/xrdb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,6 @@ class Xrdb(AutotoolsPackage, XorgPackage):
depends_on('libxmu')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xrefresh/package.py b/var/spack/repos/builtin/packages/xrefresh/package.py
index fa6e4ec074..b359e08d47 100644
--- a/var/spack/repos/builtin/packages/xrefresh/package.py
+++ b/var/spack/repos/builtin/packages/xrefresh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,6 @@ class Xrefresh(AutotoolsPackage, XorgPackage):
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xrootd/package.py b/var/spack/repos/builtin/packages/xrootd/package.py
index 70292848d6..72a4f60663 100644
--- a/var/spack/repos/builtin/packages/xrootd/package.py
+++ b/var/spack/repos/builtin/packages/xrootd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -13,8 +13,11 @@ class Xrootd(CMakePackage):
homepage = "http://xrootd.org"
url = "http://xrootd.org/download/v5.0.1/xrootd-5.0.1.tar.gz"
+ version('5.1.0', sha256='c639536f1bdc5b6b365e807f3337ed2d41012cd3df608d40e91ed05f1c568b6d')
+ version('5.0.3', sha256='be40a1897d6c1f153d3e23c39fe96e45063bfafc3cc073db88a1a9531db79ac5')
version('5.0.1', sha256='ff4462b0b61db4cc01dda0e26abdd78e43649ee7ac5e90f7a05b74328ff5ac83')
- version('4.12.3', sha256='6f2ca1accc8d49d605706bb556777c753860bf46d845b1ee11393a5cb5987f15', preferred=True)
+ version('4.12.6', sha256='1a9056ab7aeeaafa586ea77e442960c71d233c9ba60c7f9db9262c1410954ac4')
+ version('4.12.3', sha256='6f2ca1accc8d49d605706bb556777c753860bf46d845b1ee11393a5cb5987f15')
version('4.12.2', sha256='29f7bc3ea51b9d5d310eabd177152245d4160223325933c67f938ed5120f67bb')
version('4.12.1', sha256='7350d9196a26d17719b839fd242849e3995692fda25f242e67ac6ec907218d13')
version('4.12.0', sha256='69ef4732256d9a88127de4bfdf96bbf73348e0c70ce1d756264871a0ffadd2fc')
@@ -56,7 +59,7 @@ class Xrootd(CMakePackage):
depends_on('bzip2')
depends_on('cmake@2.6:', type='build')
depends_on('libxml2', when='+http')
- depends_on('libuuid', when="@4.11.0:")
+ depends_on('uuid', when="@4.11.0:")
depends_on('openssl')
depends_on('python', when='+python')
depends_on('readline', when='+readline')
diff --git a/var/spack/repos/builtin/packages/xrx/package.py b/var/spack/repos/builtin/packages/xrx/package.py
index 5abc2911eb..606f6bdc8b 100644
--- a/var/spack/repos/builtin/packages/xrx/package.py
+++ b/var/spack/repos/builtin/packages/xrx/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -26,7 +26,7 @@ class Xrx(AutotoolsPackage, XorgPackage):
depends_on('libice')
depends_on('libxaw')
- depends_on('xtrans', type='build')
- depends_on('xproxymanagementprotocol', type='build')
+ depends_on('xtrans')
+ depends_on('xproxymanagementprotocol')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xsbench/package.py b/var/spack/repos/builtin/packages/xsbench/package.py
index 3b2215553d..bccd05786d 100644
--- a/var/spack/repos/builtin/packages/xsbench/package.py
+++ b/var/spack/repos/builtin/packages/xsbench/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -41,13 +41,15 @@ class Xsbench(MakefilePackage):
targets = []
cflags = ''
- if not self.spec.satisfies('%nvhpc'):
+ if not self.spec.satisfies('%nvhpc@:20.11'):
cflags = '-std=gnu99'
if '+mpi' in self.spec:
targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+ targets.append('MPI=yes')
else:
- targets.append('CC={0}'.format(self.compiler.cxx))
+ targets.append('CC={0}'.format(self.compiler.cc))
+ targets.append('MPI=no')
if '+openmp' in self.spec:
cflags += ' ' + self.compiler.openmp_flag
diff --git a/var/spack/repos/builtin/packages/xscope/package.py b/var/spack/repos/builtin/packages/xscope/package.py
index 27d108ab6e..700cf3fa8e 100644
--- a/var/spack/repos/builtin/packages/xscope/package.py
+++ b/var/spack/repos/builtin/packages/xscope/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,7 +14,7 @@ class Xscope(AutotoolsPackage, XorgPackage):
version('1.4.1', sha256='f99558a64e828cd2c352091ed362ad2ef42b1c55ef5c01cbf782be9735bb6de3')
- depends_on('xproto@7.0.17:', type='build')
- depends_on('xtrans', type='build')
+ depends_on('xproto@7.0.17:')
+ depends_on('xtrans')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xsd/package.py b/var/spack/repos/builtin/packages/xsd/package.py
index 17127eb784..0de8b0830c 100644
--- a/var/spack/repos/builtin/packages/xsd/package.py
+++ b/var/spack/repos/builtin/packages/xsd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xsdk-examples/package.py b/var/spack/repos/builtin/packages/xsdk-examples/package.py
index 418651ec72..9847e3267a 100644
--- a/var/spack/repos/builtin/packages/xsdk-examples/package.py
+++ b/var/spack/repos/builtin/packages/xsdk-examples/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,28 +12,57 @@ class XsdkExamples(CMakePackage):
homepage = 'http://xsdk.info'
url = 'https://github.com/xsdk-project/xsdk-examples/archive/v0.1.0.tar.gz'
+ git = "https://github.com/xsdk-project/xsdk-examples"
maintainers = ['acfisher', 'balay', 'balos1', 'luszczek']
+ version('develop', branch='master')
+ version('0.2.0', sha256='cf26e3a16a83eba6fb297fb106b0934046f17cf978f96243b44d9d17ad186db6')
version('0.1.0', sha256='d24cab1db7c0872b6474d69e598df9c8e25d254d09c425fb0a6a8d6469b8018f')
+ variant('cuda', default=False, description='Compile CUDA examples')
+
+ depends_on('xsdk+cuda', when='+cuda')
+ depends_on('xsdk@0.6.0', when='@0.2.0')
depends_on('xsdk@0.5.0', when='@0.1.0')
def cmake_args(self):
spec = self.spec
args = [
'-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
+ '-DMETIS_INCLUDE_DIRS=%s' % spec['metis'].prefix.include,
+ '-DMETIS_LIBRARY=%s' % spec['metis'].libs,
'-DMPI_DIR=%s' % spec['mpi'].prefix,
- '-DSUNDIALS_DIR=%s' % spec['sundials'].prefix,
+ '-DSUNDIALS_DIR=%s' % spec['sundials'].prefix,
+ '-DHYPRE_DIR=%s' % spec['hypre'].prefix,
+ '-DHYPRE_INCLUDE_DIR=%s' % spec['hypre'].prefix.include,
'-DPETSC_DIR=%s' % spec['petsc'].prefix,
'-DPETSC_INCLUDE_DIR=%s' % spec['petsc'].prefix.include,
'-DPETSC_LIBRARY_DIR=%s' % spec['petsc'].prefix.lib,
+ '-DSUPERLUDIST_DIR=%s' % spec['superlu-dist'].prefix,
'-DSUPERLUDIST_INCLUDE_DIR=%s' %
spec['superlu-dist'].prefix.include,
'-DSUPERLUDIST_LIBRARY_DIR=%s' % spec['superlu-dist'].prefix.lib,
+ '-DSUPERLUDIST_LIBRARY=%s' % spec['superlu-dist'].libs,
+ '-DMFEM_DIR=%s' % spec['mfem'].prefix,
+ '-DMFEM_INCLUDE_DIR=%s' % spec['mfem'].prefix.include,
+ '-DMFEM_LIBRARY_DIR=%s' % spec['mfem'].prefix.include.lib,
+ '-DGINKGO_DIR=%s' % spec['ginkgo'].prefix,
+ '-DGINKGO_INCLUDE_DIR=%s' % spec['ginkgo'].prefix.include,
+ '-DGINKGO_LIBRARY_DIR=%s' % spec['ginkgo'].prefix.include.lib,
+ # allow use of default `find_package(Ginkgo)`
+ '-DCMAKE_PREFIX_PATH=%s/cmake' % spec['ginkgo'].prefix.include.lib
]
- if 'trilinos' in spec:
+ if '+cuda' in spec:
+ args.extend([
+ '-DENABLE_CUDA=ON'
+ ])
+ if 'trilinos' in spec: # if trilinos variant was activated for xsdk
+ args.extend([
+ '-DTRILINOS_DIR_PATH=%s' % spec['trilinos'].prefix,
+ ])
+ if 'zlib' in spec: # if zlib variant was activated for MFEM
args.extend([
- '-DTRILINOS_DIR:PATH=%s' % spec['trilinos'].prefix,
+ '-DZLIB_LIBRARY_DIR=%s' % spec['zlib'].prefix.lib,
])
return args
diff --git a/var/spack/repos/builtin/packages/xsdk/package.py b/var/spack/repos/builtin/packages/xsdk/package.py
index e99952c655..b0e6948734 100644
--- a/var/spack/repos/builtin/packages/xsdk/package.py
+++ b/var/spack/repos/builtin/packages/xsdk/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,6 +32,7 @@ class Xsdk(BundlePackage):
variant('omega-h', default=True, description='Enable omega-h package build')
variant('strumpack', default=True, description='Enable strumpack package build')
variant('dealii', default=True, description='Enable dealii package build')
+ variant('alquimia', default=True, description='Enable alquimia package build')
variant('phist', default=True, description='Enable phist package build')
variant('ginkgo', default=True, description='Enable ginkgo package build')
variant('libensemble', default=True, description='Enable py-libensemble package build')
@@ -40,6 +41,7 @@ class Xsdk(BundlePackage):
variant('butterflypack', default=True, description='Enable butterflypack package build')
variant('heffte', default=True, description='Enable heffte package build')
variant('slate', default=True, description='Enable slate package build')
+ variant('arborx', default=True, description='Enable ArborX build')
depends_on('hypre@develop+superlu-dist+shared', when='@develop')
depends_on('hypre@2.20.0+superlu-dist+shared', when='@0.6.0')
@@ -61,7 +63,7 @@ class Xsdk(BundlePackage):
depends_on('superlu-dist@5.2.2', when='@0.3.0')
depends_on('superlu-dist@xsdk-0.2.0', when='@xsdk-0.2.0')
- depends_on('trilinos@develop+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse+tpetra+nox+ifpack2+zoltan2+amesos2~exodus+dtk+intrepid2+shards gotype=int',
+ depends_on('trilinos@develop+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse+tpetra+nox+ifpack2+zoltan2+amesos2~exodus~dtk+intrepid2+shards+stratimikos gotype=int cxxstd=14',
when='@develop +trilinos')
depends_on('trilinos@13.0.1+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse+tpetra+nox+ifpack2+zoltan2+amesos2~exodus~dtk+intrepid2+shards gotype=int',
when='@0.6.0 +trilinos')
@@ -74,12 +76,13 @@ class Xsdk(BundlePackage):
depends_on('trilinos@xsdk-0.2.0+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra~ifpack2~zoltan2~amesos2~exodus',
when='@xsdk-0.2.0 +trilinos')
+ depends_on('datatransferkit@master', when='@develop +trilinos +datatransferkit')
depends_on('datatransferkit@3.1-rc2', when='@0.6.0 +trilinos +datatransferkit')
depends_on('petsc +trilinos', when='+trilinos')
depends_on('petsc +cuda', when='+cuda @0.6.0:')
depends_on('petsc +batch', when='platform=cray @0.5.0:')
- depends_on('petsc@develop+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64',
+ depends_on('petsc@main+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64',
when='@develop')
depends_on('petsc@3.14.1+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64',
when='@0.6.0')
@@ -94,7 +97,7 @@ class Xsdk(BundlePackage):
depends_on('dealii +trilinos~adol-c', when='+trilinos +dealii')
depends_on('dealii ~trilinos', when='~trilinos +dealii')
- depends_on('dealii@develop~assimp~python~doc~gmsh+petsc+slepc+mpi~int64+hdf5~netcdf+metis~sundials~ginkgo~symengine', when='@develop +dealii')
+ depends_on('dealii@master~assimp~python~doc~gmsh+petsc+slepc+mpi~int64+hdf5~netcdf+metis~sundials~ginkgo~symengine~nanoflann', when='@develop +dealii')
depends_on('dealii@9.2.0~assimp~python~doc~gmsh+petsc+slepc+mpi~int64+hdf5~netcdf+metis~sundials~ginkgo~symengine', when='@0.6.0 +dealii')
depends_on('dealii@9.1.1~assimp~python~doc~gmsh+petsc+slepc+mpi~int64+hdf5~netcdf+metis~sundials~ginkgo~symengine', when='@0.5.0 +dealii')
depends_on('dealii@9.0.1~assimp~python~doc~gmsh+petsc~slepc+mpi~int64+hdf5~netcdf+metis~ginkgo~symengine', when='@0.4.0 +dealii')
@@ -106,12 +109,12 @@ class Xsdk(BundlePackage):
depends_on('pflotran@xsdk-0.3.0', when='@0.3.0')
depends_on('pflotran@xsdk-0.2.0', when='@xsdk-0.2.0')
- depends_on('alquimia@develop', when='@develop')
- depends_on('alquimia@xsdk-0.6.0', when='@0.6.0')
- depends_on('alquimia@xsdk-0.5.0', when='@0.5.0')
- depends_on('alquimia@xsdk-0.4.0', when='@0.4.0')
- depends_on('alquimia@xsdk-0.3.0', when='@0.3.0')
- depends_on('alquimia@xsdk-0.2.0', when='@xsdk-0.2.0')
+ depends_on('alquimia@develop', when='@develop +alquimia')
+ depends_on('alquimia@xsdk-0.6.0', when='@0.6.0 +alquimia')
+ depends_on('alquimia@xsdk-0.5.0', when='@0.5.0 +alquimia ')
+ depends_on('alquimia@xsdk-0.4.0', when='@0.4.0 +alquimia')
+ depends_on('alquimia@xsdk-0.3.0', when='@0.3.0 +alquimia')
+ depends_on('alquimia@xsdk-0.2.0', when='@xsdk-0.2.0 +alquimia')
depends_on('sundials +cuda', when='+cuda @0.6.0:')
depends_on('sundials +trilinos', when='+trilinos @0.6.0:')
@@ -141,25 +144,25 @@ class Xsdk(BundlePackage):
depends_on('amrex@18.10.1', when='@0.4.0 %intel')
depends_on('amrex@18.10.1', when='@0.4.0 %gcc')
- depends_on('slepc@develop', when='@develop')
+ depends_on('slepc@main', when='@develop')
depends_on('slepc@3.14.0', when='@0.6.0')
depends_on('slepc@3.12.0', when='@0.5.0')
depends_on('slepc@3.10.1', when='@0.4.0')
depends_on('omega-h +trilinos', when='+trilinos +omega-h')
depends_on('omega-h ~trilinos', when='~trilinos +omega-h')
- depends_on('omega-h@develop', when='@develop +omega-h')
+ depends_on('omega-h@main', when='@develop +omega-h')
depends_on('omega-h@9.32.5', when='@0.6.0 +omega-h')
depends_on('omega-h@9.29.0', when='@0.5.0 +omega-h')
depends_on('omega-h@9.19.1', when='@0.4.0 +omega-h')
- depends_on('strumpack ~cuda', when='~cuda @0.6.0:')
- depends_on('strumpack@master', when='@develop +strumpack')
- depends_on('strumpack@5.0.0', when='@0.6.0 +strumpack')
- depends_on('strumpack@3.3.0', when='@0.5.0 +strumpack')
- depends_on('strumpack@3.1.1', when='@0.4.0 +strumpack')
+ depends_on('strumpack ~cuda', when='~cuda @0.6.0: +strumpack')
+ depends_on('strumpack@master~slate~openmp', when='@develop +strumpack')
+ depends_on('strumpack@5.0.0~slate~openmp', when='@0.6.0 +strumpack')
+ depends_on('strumpack@3.3.0~slate~openmp', when='@0.5.0 +strumpack')
+ depends_on('strumpack@3.1.1~slate~openmp', when='@0.4.0 +strumpack')
- depends_on('pumi@develop', when='@develop')
+ depends_on('pumi@master', when='@develop')
depends_on('pumi@2.2.5', when='@0.6.0')
depends_on('pumi@2.2.1', when='@0.5.0')
depends_on('pumi@2.2.0', when='@0.4.0')
@@ -174,15 +177,17 @@ class Xsdk(BundlePackage):
depends_on('tasmanian@6.0+xsdkflags+blas~openmp', when='@0.4.0')
depends_on('tasmanian@6.0+xsdkflags+blas+cuda+magma~openmp', when='@0.4.0 +cuda')
+ depends_on('arborx@1.0', when='@develop +arborx')
+
# the Fortran 2003 bindings of phist require python@3:, but this
- # creates a conflict with other packages like petsc@develop. Actually
+ # creates a conflict with other packages like petsc@main. Actually
# these are type='build' dependencies, but spack reports a conflict anyway.
# This will be fixed once the new concretizer becomes available
# (says @adamjstewart)
depends_on('phist kernel_lib=tpetra', when='+trilinos +phist')
depends_on('phist kernel_lib=petsc', when='~trilinos +phist')
- depends_on('phist@develop ~fortran ~scamac ~host', when='@develop +phist')
+ depends_on('phist@develop ~fortran ~scamac ~openmp ~host ~int64', when='@develop +phist')
depends_on('phist@1.9.3 ~fortran ~scamac ~openmp ~host ~int64', when='@0.6.0 +phist')
depends_on('phist@1.8.0 ~fortran ~scamac ~openmp ~host ~int64', when='@0.5.0 +phist')
depends_on('phist@1.7.5 ~fortran ~scamac ~openmp ~host ~int64', when='@0.4.0 +phist')
@@ -195,7 +200,9 @@ class Xsdk(BundlePackage):
depends_on('ginkgo@1.1.0 ~openmp+cuda', when='@0.5.0 +cuda +ginkgo')
depends_on('py-libensemble@develop+petsc4py', type='run', when='@develop +libensemble')
+ depends_on('py-petsc4py@main', type='run', when='@develop +libensemble')
depends_on('py-libensemble@0.7.1+petsc4py', type='run', when='@0.6.0 +libensemble')
+ depends_on('py-petsc4py@3.14.0', type='run', when='@0.6.0 +libensemble')
depends_on('py-libensemble@0.5.2+petsc4py', type='run', when='@0.5.0 +libensemble')
depends_on('py-petsc4py@3.12.0', type='run', when='@0.5.0 +libensemble')
@@ -213,8 +220,10 @@ class Xsdk(BundlePackage):
depends_on('heffte@develop+fftw', when='@develop +heffte')
depends_on('heffte@2.0.0+fftw', when='@0.6.0 +heffte')
- depends_on('slate@2020.10.00 ~cuda', when='~cuda +slate %gcc@6.0:')
- depends_on('slate@2020.10.00 +cuda', when='+cuda +slate %gcc@6.0:')
+ depends_on('slate@master ~cuda', when='@develop ~cuda +slate %gcc@6.0:')
+ depends_on('slate@master +cuda', when='@develop +cuda +slate %gcc@6.0:')
+ depends_on('slate@2020.10.00 ~cuda', when='@0.6.0 ~cuda +slate %gcc@6.0:')
+ depends_on('slate@2020.10.00 +cuda', when='@0.6.0 +cuda +slate %gcc@6.0:')
# xSDKTrilinos depends on the version of Trilinos built with
# +tpetra which is turned off for faster xSDK
diff --git a/var/spack/repos/builtin/packages/xsdktrilinos/package.py b/var/spack/repos/builtin/packages/xsdktrilinos/package.py
index effb4404b0..3d76808890 100644
--- a/var/spack/repos/builtin/packages/xsdktrilinos/package.py
+++ b/var/spack/repos/builtin/packages/xsdktrilinos/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -31,7 +31,7 @@ class Xsdktrilinos(CMakePackage):
depends_on('hypre@xsdk-0.2.0~internal-superlu', when='@xsdk-0.2.0+hypre')
depends_on('hypre@develop~internal-superlu', when='@develop+hypre')
depends_on('petsc@xsdk-0.2.0+mpi~complex', when='@xsdk-0.2.0+petsc')
- depends_on('petsc@develop+mpi~complex', when='@develop+petsc')
+ depends_on('petsc@main+mpi~complex', when='@develop+petsc')
depends_on('trilinos@12.6.4', when='@12.6.4')
depends_on('trilinos@12.8.1', when='@12.8.1')
depends_on('trilinos@xsdk-0.2.0', when='@xsdk-0.2.0')
@@ -52,15 +52,12 @@ class Xsdktrilinos(CMakePackage):
'-DxSDKTrilinos_ENABLE_TESTS:BOOL=ON',
'-DxSDKTrilinos_ENABLE_EXAMPLES:BOOL=ON',
'-DTrilinos_INSTALL_DIR=%s' % spec['trilinos'].prefix,
- '-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF'),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
'-DTPL_ENABLE_MPI:BOOL=ON',
'-DMPI_BASE_DIR:PATH=%s' % spec['mpi'].prefix,
'-DxSDKTrilinos_ENABLE_CXX11:BOOL=ON',
- '-DTPL_ENABLE_HYPRE:BOOL=%s' % (
- 'ON' if '+hypre' in spec else 'OFF'),
- '-DTPL_ENABLE_PETSC:BOOL=%s' % (
- 'ON' if '+petsc' in spec else 'OFF'),
+ self.define_from_variant('TPL_ENABLE_HYPRE', 'hypre'),
+ self.define_from_variant('TPL_ENABLE_PETSC', 'petsc'),
'-DCMAKE_INSTALL_NAME_DIR:PATH=%s/lib' % self.prefix
])
diff --git a/var/spack/repos/builtin/packages/xset/package.py b/var/spack/repos/builtin/packages/xset/package.py
index b113bb7cef..cf929d2362 100644
--- a/var/spack/repos/builtin/packages/xset/package.py
+++ b/var/spack/repos/builtin/packages/xset/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,6 @@ class Xset(AutotoolsPackage, XorgPackage):
depends_on('libxmu')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xsetmode/package.py b/var/spack/repos/builtin/packages/xsetmode/package.py
index d2da4f613b..e8fac09fd4 100644
--- a/var/spack/repos/builtin/packages/xsetmode/package.py
+++ b/var/spack/repos/builtin/packages/xsetmode/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xsetpointer/package.py b/var/spack/repos/builtin/packages/xsetpointer/package.py
index ba400c0dc6..e14c53e81a 100644
--- a/var/spack/repos/builtin/packages/xsetpointer/package.py
+++ b/var/spack/repos/builtin/packages/xsetpointer/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,7 +16,7 @@ class Xsetpointer(AutotoolsPackage, XorgPackage):
depends_on('libxi', type='link')
depends_on('libx11', type='link')
- depends_on('inputproto@1.4:', type='link')
+ depends_on('inputproto@1.4:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xsetroot/package.py b/var/spack/repos/builtin/packages/xsetroot/package.py
index 60fc05f912..5e71a05dd2 100644
--- a/var/spack/repos/builtin/packages/xsetroot/package.py
+++ b/var/spack/repos/builtin/packages/xsetroot/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,7 +18,7 @@ class Xsetroot(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxcursor')
- depends_on('xbitmaps', type='build')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xbitmaps')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xsimd/package.py b/var/spack/repos/builtin/packages/xsimd/package.py
index fcb9d90a11..8f61d23581 100644
--- a/var/spack/repos/builtin/packages/xsimd/package.py
+++ b/var/spack/repos/builtin/packages/xsimd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,8 @@ class Xsimd(CMakePackage):
maintainers = ['ax3l']
version('develop', branch='master')
+ version('7.4.10', sha256='df00f476dea0c52ffebad60924e3f0db2a016b80d508f8d5a2399a74c0d134cd')
+ version('7.4.9', sha256='f6601ffb002864ec0dc6013efd9f7a72d756418857c2d893be0644a2f041874e')
version('7.2.3', sha256='bbc673ad3e9d4523503a4222da05886e086b0e0bd6bd93d03ea3b663c74297b9')
version('4.0.0', sha256='67b818601c15ef15ea4d611a8cd7382588c340ebd9146c799a0210d212540455')
version('3.1.0', sha256='d56288826f6b82fd9583f83ace6aa2306ba2ae82cec003de1d04ce17fbb1e91f')
@@ -30,8 +32,7 @@ class Xsimd(CMakePackage):
def cmake_args(self):
args = [
- '-DBUILD_TESTS:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF')
+ self.define('BUILD_TESTS', self.run_tests)
]
return args
diff --git a/var/spack/repos/builtin/packages/xsm/package.py b/var/spack/repos/builtin/packages/xsm/package.py
index 312223216f..01fb4fdc43 100644
--- a/var/spack/repos/builtin/packages/xsm/package.py
+++ b/var/spack/repos/builtin/packages/xsm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xstdcmap/package.py b/var/spack/repos/builtin/packages/xstdcmap/package.py
index 23cab1c4ec..5c73f58814 100644
--- a/var/spack/repos/builtin/packages/xstdcmap/package.py
+++ b/var/spack/repos/builtin/packages/xstdcmap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,6 +20,6 @@ class Xstdcmap(AutotoolsPackage, XorgPackage):
depends_on('libxmu')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xtensor-python/package.py b/var/spack/repos/builtin/packages/xtensor-python/package.py
index 781e8307bc..16d558af14 100644
--- a/var/spack/repos/builtin/packages/xtensor-python/package.py
+++ b/var/spack/repos/builtin/packages/xtensor-python/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xtensor/package.py b/var/spack/repos/builtin/packages/xtensor/package.py
index 740f17d4e3..835e1080ca 100644
--- a/var/spack/repos/builtin/packages/xtensor/package.py
+++ b/var/spack/repos/builtin/packages/xtensor/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,8 @@ class Xtensor(CMakePackage):
maintainers = ['ax3l']
version('develop', branch='master')
+ version('0.23.4', sha256='c8377f8ec995762c89dea2fdf4ac06b53ba491a6f0df3421c4719355e42425d2')
+ version('0.23.2', sha256='fde26dcf93f5d95996b8cc7e556b84930af41ff699492b7b20b2e3335e12f862')
version('0.20.7', sha256='b45290d1bb0d6cef44771e7482f1553b2aa54dbf99ef9406fec3eb1e4d01d52b')
version('0.15.1', sha256='2f4ac632f7aa8c8e9da99ebbfc949d9129b4d644f715ef16c27658bf4fddcdd3')
version('0.13.1', sha256='f9ce4cd2110386d49e3f36bbab62da731c557b6289be19bc172bd7209b92a6bc')
@@ -26,10 +28,13 @@ class Xtensor(CMakePackage):
description='Enable TBB parallelization')
depends_on('xtl', when='@develop')
+ depends_on('xtl@0.7.2:0.7.99', when='@0.23.2:0.23.4')
depends_on('xtl@0.6.4:0.6.99', when='@0.20.7')
depends_on('xtl@0.4.0:0.4.99', when='@0.15.1')
depends_on('xtl@0.3.3:0.3.99', when='@0.13.1')
depends_on('xsimd', when='@develop')
+ depends_on('xsimd@7.4.10:7.99', when='@0.23.4 +xsimd')
+ depends_on('xsimd@7.4.9:7.99', when='@0.23.2 +xsimd')
depends_on('xsimd@7.2.3:7.99', when='@0.20.7 +xsimd')
depends_on('xsimd@4.0.0:4.99', when='@0.15.1 +xsimd')
depends_on('xsimd@3.1.0:3.99', when='@0.13.1 +xsimd')
@@ -42,15 +47,10 @@ class Xtensor(CMakePackage):
# untested: conflicts('%pgi@:14')
def cmake_args(self):
- spec = self.spec
-
args = [
- '-DBUILD_TESTS:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF'),
- '-DXTENSOR_USE_XSIMD:BOOL={0}'.format(
- 'ON' if '+xsimd' in spec else 'OFF'),
- '-DXTENSOR_USE_TBB:BOOL={0}'.format(
- 'ON' if '+tbb' in spec else 'OFF')
+ self.define('BUILD_TESTS', self.run_tests),
+ self.define_from_variant('XTENSOR_USE_XSIMD', 'xsimd'),
+ self.define_from_variant('XTENSOR_USE_TBB', 'tbb')
]
return args
diff --git a/var/spack/repos/builtin/packages/xterm/package.py b/var/spack/repos/builtin/packages/xterm/package.py
index e72da49f0c..c293920e24 100644
--- a/var/spack/repos/builtin/packages/xterm/package.py
+++ b/var/spack/repos/builtin/packages/xterm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -38,3 +38,4 @@ class Xterm(AutotoolsPackage):
depends_on('bzip2')
depends_on('pkgconfig', type='build')
+ depends_on('termcap', type='link')
diff --git a/var/spack/repos/builtin/packages/xtl/package.py b/var/spack/repos/builtin/packages/xtl/package.py
index 15aa530a82..0ddfc65590 100644
--- a/var/spack/repos/builtin/packages/xtl/package.py
+++ b/var/spack/repos/builtin/packages/xtl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -16,6 +16,7 @@ class Xtl(CMakePackage):
maintainers = ['ax3l']
version('develop', branch='master')
+ version('0.7.2', sha256='95c221bdc6eaba592878090916383e5b9390a076828552256693d5d97f78357c')
version('0.6.4', sha256='5db5087c37daab3e1d35337782f79972aaaf19218a0de786a0515f247244e390')
version('0.4.0', sha256='2cfe9acbcc4e484f3aa33a98892a09ffe79bb9c0dfd3ffc57b3561f44c591e7c')
version('0.3.4', sha256='618536c3998091b0bdd7f8202e8bec9c34e82409c8ee0ea179a2759bdea426e2')
diff --git a/var/spack/repos/builtin/packages/xtrans/package.py b/var/spack/repos/builtin/packages/xtrans/package.py
index ff7f902661..b084adf78f 100644
--- a/var/spack/repos/builtin/packages/xtrans/package.py
+++ b/var/spack/repos/builtin/packages/xtrans/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xtrap/package.py b/var/spack/repos/builtin/packages/xtrap/package.py
index ff6a074b52..0ae0275d18 100644
--- a/var/spack/repos/builtin/packages/xtrap/package.py
+++ b/var/spack/repos/builtin/packages/xtrap/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xts/package.py b/var/spack/repos/builtin/packages/xts/package.py
index 8c44ffbedf..667a695c93 100644
--- a/var/spack/repos/builtin/packages/xts/package.py
+++ b/var/spack/repos/builtin/packages/xts/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -23,11 +23,11 @@ class Xts(AutotoolsPackage, XorgPackage):
depends_on('libxt', type='link')
depends_on('libxmu', type='link')
depends_on('libxaw', type='link')
- depends_on('inputproto', type='link')
- depends_on('recordproto', type='link')
- depends_on('fixesproto', type='link')
+ depends_on('inputproto')
+ depends_on('recordproto')
+ depends_on('fixesproto')
- depends_on('xtrans', type='build')
+ depends_on('xtrans')
depends_on('bdftopcf', type='build')
depends_on('mkfontdir', type='build')
depends_on('perl', type='build')
diff --git a/var/spack/repos/builtin/packages/xvidtune/package.py b/var/spack/repos/builtin/packages/xvidtune/package.py
index 3d3daa996d..3349783507 100644
--- a/var/spack/repos/builtin/packages/xvidtune/package.py
+++ b/var/spack/repos/builtin/packages/xvidtune/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/xvinfo/package.py b/var/spack/repos/builtin/packages/xvinfo/package.py
index 4be8a63fb0..87d202e448 100644
--- a/var/spack/repos/builtin/packages/xvinfo/package.py
+++ b/var/spack/repos/builtin/packages/xvinfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Xvinfo(AutotoolsPackage, XorgPackage):
depends_on('libxv')
depends_on('libx11')
- depends_on('xproto@7.0.25:', type='build')
+ depends_on('xproto@7.0.25:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xwd/package.py b/var/spack/repos/builtin/packages/xwd/package.py
index de2c43c852..4e0b0afd84 100644
--- a/var/spack/repos/builtin/packages/xwd/package.py
+++ b/var/spack/repos/builtin/packages/xwd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,6 @@ class Xwd(AutotoolsPackage, XorgPackage):
depends_on('libx11')
depends_on('libxkbfile')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xwininfo/package.py b/var/spack/repos/builtin/packages/xwininfo/package.py
index 58c25cf4be..6632d16f16 100644
--- a/var/spack/repos/builtin/packages/xwininfo/package.py
+++ b/var/spack/repos/builtin/packages/xwininfo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -18,6 +18,6 @@ class Xwininfo(AutotoolsPackage, XorgPackage):
depends_on('libxcb@1.6:')
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xwud/package.py b/var/spack/repos/builtin/packages/xwud/package.py
index 15dc45a848..f0ef776f80 100644
--- a/var/spack/repos/builtin/packages/xwud/package.py
+++ b/var/spack/repos/builtin/packages/xwud/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -17,6 +17,6 @@ class Xwud(AutotoolsPackage, XorgPackage):
depends_on('libx11')
- depends_on('xproto@7.0.17:', type='build')
+ depends_on('xproto@7.0.17:')
depends_on('pkgconfig', type='build')
depends_on('util-macros', type='build')
diff --git a/var/spack/repos/builtin/packages/xxhash/package.py b/var/spack/repos/builtin/packages/xxhash/package.py
index 3ef3a16f24..4573ed37f8 100644
--- a/var/spack/repos/builtin/packages/xxhash/package.py
+++ b/var/spack/repos/builtin/packages/xxhash/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,7 +32,8 @@ class Xxhash(MakefilePackage):
targets = []
if '%nvhpc' in self.spec:
- targets.append('CFLAGS=-O1')
+ if self.spec.satisfies('%nvhpc@:20.11'):
+ targets.append('CFLAGS=-O1')
if 'avx512' in self.spec.target:
# Workaround AVX512 compiler issue
diff --git a/var/spack/repos/builtin/packages/xyce/package.py b/var/spack/repos/builtin/packages/xyce/package.py
new file mode 100644
index 0000000000..22e4cd3f33
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xyce/package.py
@@ -0,0 +1,93 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Xyce(CMakePackage):
+ """Xyce (rhymes with 'spice') is an open source, SPICE-compatible,
+ high-performance analog circuit simulator, capable of solving extremely
+ large circuit problems by supporting large-scale parallel computing
+ platforms.
+ Xyce also supports serial execution on all common desktop platforms,
+ and small-scale parallel runs on Unix-like systems. In addition to analog
+ electronic simulation, Xyce has also been used to investigate more general
+ network systems, such as neural networks and power grids.
+ """
+
+ homepage = 'https://xyce.sandia.gov'
+ git = 'https://github.com/Xyce/Xyce.git'
+ url = 'https://github.com/Xyce/Xyce/archive/Release-7.2.0.tar.gz'
+ maintainers = ['kuberry']
+
+ version('master', branch='master')
+ version('7.2.0', 'cf49705278ecda46373784bb24925cb97f9017b6adff49e4416de146bdd6a4b5', preferred=True)
+
+ depends_on('cmake@3.13:', type='build')
+ depends_on('flex')
+ depends_on('bison')
+
+ variant('build_type', default='Release',
+ description='CMake build type',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'))
+
+ variant('mpi', default=True, description='Enable MPI support')
+ depends_on('mpi', when='+mpi')
+
+ variant('pymi', default=False, description='Enable Python Model Interpreter for Xyce')
+ depends_on('python@3:', type=('build', 'link', 'run'), when='+pymi')
+ depends_on('py-pip', type='run', when='+pymi')
+ depends_on('py-pybind11@2.6.1:', when='+pymi')
+
+ # Xyce is built against an older version of Trilinos unlikely to be
+ # used for any other purpose. The default settings for various
+ # Trilinos variants would require the installation of many more
+ # packages than are needed for Xyce, hence the ~variant for many
+ # packages.
+ # The default variants in Trilinos have been set for several
+ # applications, namely xSDK, deal.ii, and DTK. Future changes to the
+ # Trilinos recipe will disable all packages by default. At that
+ # point, these ~variants can be removed from the following recipes.
+
+ depends_on('trilinos@12.12.1~adios2~alloptpkgs+amesos+amesos2+anasazi+aztec+belos~boost~cgns~chaco+complex~cuda~cuda_rdc~debug~dtk+epetra+epetraext~exodus+explicit_template_instantiation~float+fortran~glm~gtest+hdf5~hwloc~hypre+ifpack~ifpack2~intrepid~intrepid2~ipo+isorropia+kokkos~matio~mesquite~metis~minitensor~ml+mpi~muelu~mumps~netcdf+nox~openmp~phalanx~piro~pnetcdf~python~rol~rythmos+sacado~shards~shared~shylu~stk~stratimikos~strumpack+suite-sparse~superlu~superlu-dist~teko~tempus+teuchos+tpetra+trilinoscouplings~wrapper~x11~xsdkflags~zlib+zoltan~zoltan2+stokhos+amesos2basker+epetraextbtf+epetraextexperimental+epetraextgraphreorderings gotype=\'none\'', when="+mpi")
+ depends_on('trilinos@12.12.1~adios2~alloptpkgs+amesos+amesos2+anasazi+aztec+belos~boost~cgns~chaco+complex~cuda~cuda_rdc~debug~dtk+epetra+epetraext~exodus+explicit_template_instantiation~float+fortran~glm~gtest+hdf5~hwloc~hypre+ifpack~ifpack2~intrepid~intrepid2~ipo+isorropia+kokkos~matio~mesquite~metis~minitensor~ml~mpi~muelu~mumps~netcdf+nox~openmp~phalanx~piro~pnetcdf~python~rol~rythmos+sacado~shards~shared~shylu~stk~stratimikos~strumpack+suite-sparse~superlu~superlu-dist~teko~tempus+teuchos+tpetra+trilinoscouplings~wrapper~x11~xsdkflags~zlib+zoltan~zoltan2+stokhos+amesos2basker+epetraextbtf+epetraextexperimental+epetraextgraphreorderings gotype=\'none\'', when="~mpi")
+
+ def cmake_args(self):
+ spec = self.spec
+
+ trilinos = spec['trilinos']
+
+ cxx_flags = [self.compiler.cxx_pic_flag]
+ try:
+ cxx_flags.append(self.compiler.cxx11_flag)
+ except ValueError:
+ pass
+ cxx_flags.append("-DXyce_INTRUSIVE_PCE -Wreorder -O3")
+
+ options = []
+ options.extend([
+ '-DTrilinos_DIR:PATH={0}'.format(trilinos.prefix),
+ '-DCMAKE_CXX_FLAGS:STRING={0}'.format(' '.join(cxx_flags)),
+ ])
+
+ if '+mpi' in spec:
+ options.append('-DCMAKE_CXX_COMPILER:STRING={0}'.format(spec['mpi'].mpicxx))
+ else:
+ options.append('-DCMAKE_CXX_COMPILER:STRING={0}'.format(self.compiler.cxx))
+
+ if '+shared' in spec:
+ options.append('-DBUILD_SHARED_LIBS:BOOL=ON')
+ else:
+ options.append('-DBUILD_SHARED_LIBS:BOOL=OFF')
+
+ if '+pymi' in spec:
+ pybind11 = spec['py-pybind11']
+ python = spec['python']
+ options.append('-DXyce_PYMI:BOOL=ON')
+ options.append('-Dpybind11_DIR:PATH={0}'.format(pybind11.prefix))
+ options.append('-DPython_ROOT_DIR:FILEPATH={0}'.format(python.prefix))
+ options.append('-DPython_FIND_STRATEGY=LOCATION')
+
+ return options
diff --git a/var/spack/repos/builtin/packages/xz/package.py b/var/spack/repos/builtin/packages/xz/package.py
index 6f8a24848c..5197fb1349 100644
--- a/var/spack/repos/builtin/packages/xz/package.py
+++ b/var/spack/repos/builtin/packages/xz/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -29,6 +29,12 @@ class Xz(AutotoolsPackage, SourceforgePackage):
variant('pic', default=False,
description='Compile with position independent code.')
+ variant('libs', default='shared,static', values=('shared', 'static'),
+ multi=True, description='Build shared libs, static libs or both')
+
+ def configure_args(self):
+ return self.enable_or_disable('libs')
+
def flag_handler(self, name, flags):
if name == 'cflags' and '+pic' in self.spec:
flags.append(self.compiler.cc_pic_flag)
diff --git a/var/spack/repos/builtin/packages/yajl/package.py b/var/spack/repos/builtin/packages/yajl/package.py
index ff7ed9ffef..da39126f39 100644
--- a/var/spack/repos/builtin/packages/yajl/package.py
+++ b/var/spack/repos/builtin/packages/yajl/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/yambo/package.py b/var/spack/repos/builtin/packages/yambo/package.py
index df6d585557..9ca26bb7d2 100644
--- a/var/spack/repos/builtin/packages/yambo/package.py
+++ b/var/spack/repos/builtin/packages/yambo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/yaml-cpp/package.py b/var/spack/repos/builtin/packages/yaml-cpp/package.py
index bbaef0f329..da351f3c5a 100644
--- a/var/spack/repos/builtin/packages/yaml-cpp/package.py
+++ b/var/spack/repos/builtin/packages/yaml-cpp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/yara/package.py b/var/spack/repos/builtin/packages/yara/package.py
index 92fe48da0d..6d2fa15e46 100644
--- a/var/spack/repos/builtin/packages/yara/package.py
+++ b/var/spack/repos/builtin/packages/yara/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/yarn/package.py b/var/spack/repos/builtin/packages/yarn/package.py
index c9a5299a10..65f275e338 100644
--- a/var/spack/repos/builtin/packages/yarn/package.py
+++ b/var/spack/repos/builtin/packages/yarn/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/yasm/package.py b/var/spack/repos/builtin/packages/yasm/package.py
index c6f757b453..6ad054229b 100644
--- a/var/spack/repos/builtin/packages/yasm/package.py
+++ b/var/spack/repos/builtin/packages/yasm/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/ycsb/package.py b/var/spack/repos/builtin/packages/ycsb/package.py
index dafe8311cc..1fa2ab79ae 100644
--- a/var/spack/repos/builtin/packages/ycsb/package.py
+++ b/var/spack/repos/builtin/packages/ycsb/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/yoda/package.py b/var/spack/repos/builtin/packages/yoda/package.py
index 4da424c2a8..c007e73ca3 100644
--- a/var/spack/repos/builtin/packages/yoda/package.py
+++ b/var/spack/repos/builtin/packages/yoda/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -12,6 +12,10 @@ class Yoda(AutotoolsPackage):
homepage = "https://yoda.hepforge.org/"
url = "https://yoda.hepforge.org/downloads/?f=YODA-1.8.3.tar.bz2"
+ tags = ['hep']
+
+ version('1.8.5', sha256='4c2e6b8571fc176271515a309b45687a2981af1b07ff3f00d0b035a597aa32fd')
+ version('1.8.4', sha256='9d24a41c9b7cc6eb14cab0a48f65d2fca7ec9d794afe0922ceb158d0153c150e')
version('1.8.3', sha256='d9dd0ea5e0f630cdf4893c09a40c78bd44455777c2125385ecc26fa9a2acba8a')
version('1.8.2', sha256='89558c11cf9b88b0899713e5b4bf8781fdcecc480ff155985ebbf148c6d80bdb')
version('1.8.1', sha256='51472e12065b9469f13906f0dc609e036d0c1dbd2a8e445e7d654aba73660112')
@@ -59,7 +63,10 @@ class Yoda(AutotoolsPackage):
depends_on('python', type=('build', 'run'))
depends_on('py-future', type=('build', 'run'))
depends_on('boost', when='@:1.6.0', type=('build', 'run'))
- depends_on('py-cython', type='build')
+ depends_on('py-cython@0.18:', type='build', when='@:1.4.0')
+ depends_on('py-cython@0.20:', type='build', when='@1.4.0:1.6.5')
+ depends_on('py-cython@0.23.5:', type='build', when='@1.6.5:1.8.0')
+ depends_on('py-cython@0.24:', type='build', when='@1.8.0:')
depends_on('py-matplotlib', when='@1.3.0:', type=('build', 'run'))
depends_on('root', type=('build', 'run'), when='+root')
diff --git a/var/spack/repos/builtin/packages/yorick/package.py b/var/spack/repos/builtin/packages/yorick/package.py
index eb3e2a3698..97da8f1633 100644
--- a/var/spack/repos/builtin/packages/yorick/package.py
+++ b/var/spack/repos/builtin/packages/yorick/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/z-checker/package.py b/var/spack/repos/builtin/packages/z-checker/package.py
index 215cfbff66..991e8e18de 100644
--- a/var/spack/repos/builtin/packages/z-checker/package.py
+++ b/var/spack/repos/builtin/packages/z-checker/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/z3/package.py b/var/spack/repos/builtin/packages/z3/package.py
index 462316cbdf..18dd1838b4 100644
--- a/var/spack/repos/builtin/packages/z3/package.py
+++ b/var/spack/repos/builtin/packages/z3/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -14,6 +14,8 @@ class Z3(MakefilePackage):
homepage = "https://github.com/Z3Prover/z3/wiki"
url = "https://github.com/Z3Prover/z3/archive/z3-4.5.0.tar.gz"
+ version('4.8.9', sha256='c9fd04b9b33be74fffaac3ec2bc2c320d1a4cc32e395203c55126b12a14ff3f4')
+ version('4.8.8', sha256='6962facdcdea287c5eeb1583debe33ee23043144d0e5308344e6a8ee4503bcff')
version('4.8.7', sha256='8c1c49a1eccf5d8b952dadadba3552b0eac67482b8a29eaad62aa7343a0732c3')
version('4.5.0', sha256='aeae1d239c5e06ac183be7dd853775b84698db1265cb2258e5918a28372d4a0c')
version('4.4.1', sha256='50967cca12c5c6e1612d0ccf8b6ebf5f99840a783d6cf5216336a2b59c37c0ce')
diff --git a/var/spack/repos/builtin/packages/zabbix/package.py b/var/spack/repos/builtin/packages/zabbix/package.py
index 6c1f96f362..70d247b2d3 100644
--- a/var/spack/repos/builtin/packages/zabbix/package.py
+++ b/var/spack/repos/builtin/packages/zabbix/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/zfp/package.py b/var/spack/repos/builtin/packages/zfp/package.py
index 44a659c193..4d2e2006d5 100644
--- a/var/spack/repos/builtin/packages/zfp/package.py
+++ b/var/spack/repos/builtin/packages/zfp/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,26 +6,48 @@
from spack import *
-class Zfp(CMakePackage):
- """zfp is an open source C/C++ library for high-fidelity, high-throughput
- lossy compression of floating-point and integer multi-dimensional
+class Zfp(CMakePackage, CudaPackage):
+ """zfp is a compressed number format for multidimensional floating-point
+ and integer arrays.
+
+ zfp provides compressed-array classes that support high throughput
+ read and write random access to individual array elements. zfp also
+ supports serial and parallel (OpenMP and CUDA) compression of whole
arrays.
"""
- homepage = 'http://computing.llnl.gov/projects/floating-point-compression'
- url = 'http://computing.llnl.gov/projects/floating-point-compression/download/zfp-0.5.2.tar.gz'
+ # Package info
+ homepage = 'https://zfp.llnl.gov'
+ url = 'https://github.com/LLNL/zfp/releases/download/0.5.5/zfp-0.5.5.tar.gz'
+ git = 'https://github.com/LLNL/zfp.git'
+ maintainers = ['lindstro', 'GarrettDMorrison']
+ # Versions
+ version('develop', branch='develop')
version('0.5.5', sha256='fdf7b948bab1f4e5dccfe2c2048fd98c24e417ad8fb8a51ed3463d04147393c5')
- version('0.5.4', sha256='768a05ed9bf10e54ac306f90b81dd17b0e7b13782f01823d7da4394fd2da8adb')
- version('0.5.2', sha256='89e718edb966422b5898b5c37b1b0a781d4effacb511520558469e3ff7f65d7c')
- version('0.5.1', sha256='867c04cf965f1c70d9725b396c6e1b5d29db55b0d69b8e87a995aaebd221b830')
+ version('0.5.4', sha256='746e17aaa401c67dcffd273d6e6f95c76adfbbd5cf523dcad56d09e9d3b71196')
+ version('0.5.3', sha256='a5d2f8e5b47a7c92e2a5775b82cbfb3a76c87d0ac83d25abb4ac10ea75a2856e')
+ version('0.5.2', sha256='9c738ec525cc76b4bb80b2b3f7c9f07507eeda3a341470e5942cda97efbe9a4f', url='https://github.com/LLNL/zfp/archive/0.5.2/zfp-0.5.2.tar.gz')
+ version('0.5.1', sha256='f255dd1708c9ae4dc6a56dd2614e8b47a10d833c87fd349cbd47545a19c2b779', url='https://github.com/LLNL/zfp/archive/0.5.1/zfp-0.5.1.tar.gz')
+
+ # Build targets
+ # TODO: variant('utilities', default=True, description='Build utilities')
+ variant('shared', default=True, description='Build shared libraries')
+
+ # Language bindings
+ variant('c', default=False, description='Enable C bindings')
+ variant('python', default=False, description='Enable Python bindings')
+ variant('fortran', default=False, description='Enable Fortran bindings')
- variant('bsws',
- default='64',
- values=('8', '16', '32', '64'),
- multi=False,
- description='Bit stream word size: use smaller for finer '
- 'rate granularity. Use 8 for H5Z-ZFP filter.')
+ # Execution policies
+ variant('openmp', default=False, description='Enable OpenMP execution')
+ variant('cuda', default=False, description='Enable CUDA execution')
+
+ # Advanced options
+ variant('bsws', default='64', values=('8', '16', '32', '64'), multi=False,
+ description='Bit stream word size: '
+ 'use smaller for finer rate granularity. '
+ 'Use 8 for H5Z-ZFP filter.')
variant('strided', default=False,
description='Enable strided access for progressive zfp streams')
variant('aligned', default=False,
@@ -36,32 +58,48 @@ class Zfp(CMakePackage):
description='Use a faster but more collision prone hash function')
variant('profile', default=False,
description='Count cache misses')
- variant('shared', default=True,
- description='Build shared versions of the library')
+ # Conflicts
+ conflicts('+c', when='@:0.5.3',
+ msg='+c requires zfp 0.5.4 or later')
+ conflicts('+python', when='@:0.5.4',
+ msg='+python requires zfp 0.5.5 or later')
+ conflicts('+fortran', when='@:0.5.4',
+ msg='+fortran requires zfp 0.5.5 or later')
+ conflicts('+openmp', when='@:0.5.2',
+ msg='+openmp requires zfp 0.5.3 or later')
+ conflicts('+cuda', when='@:0.5.3',
+ msg='+cuda requires zfp 0.5.4 or later')
+ conflicts('+fasthash', when='@:0.5.1',
+ msg='+fasthash requires zfp 0.5.2 or later')
+ conflicts('+profile', when='@:0.5.1',
+ msg='+profile requires zfp 0.5.2 or later')
+
+ # Dependencies
depends_on('cmake@3.4.0:', type='build')
+ depends_on('cuda@7:', type=('build', 'test', 'run'), when='+cuda')
+ depends_on('python', type=('build', 'test', 'run'), when='+python')
+ depends_on('py-numpy', type=('build', 'test', 'run'), when='+python')
+ depends_on('py-cython', type='build', when='+python')
def cmake_args(self):
spec = self.spec
+ # CMake options
args = [
- '-DZFP_BIT_STREAM_WORD_SIZE:STRING={0}'.format(
- spec.variants['bsws'].value),
- '-DZFP_WITH_BIT_STREAM_STRIDED:BOOL={0}'.format(
- 'ON' if '+strided' in spec else 'OFF'),
- '-DZFP_WITH_ALIGNED_ALLOC:BOOL={0}'.format(
- 'ON' if '+aligned' in spec else 'OFF'),
- '-DZFP_WITH_CACHE_TWOWAY:BOOL={0}'.format(
- 'ON' if '+twoway' in spec else 'OFF'),
- '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
- 'ON' if '+shared' in spec else 'OFF'),
- '-DBUILD_TESTING:BOOL={0}'.format(
- 'ON' if self.run_tests else 'OFF')
+ # TODO: self.define_from_variant('BUILD_UTILITIES', 'utilities'),
+ self.define('BUILD_TESTING', self.run_tests),
+ self.define_from_variant('BUILD_SHARED_LIBS', 'shared'),
+ self.define_from_variant('BUILD_CFP', 'c'),
+ self.define_from_variant('BUILD_ZFPY', 'python'),
+ self.define_from_variant('BUILD_ZFORP', 'fortran'),
+ self.define('ZFP_BIT_STREAM_WORD_SIZE',
+ spec.variants['bsws'].value),
+ self.define_from_variant('ZFP_WITH_BIT_STREAM_STRIDED', 'strided'),
+ self.define_from_variant('ZFP_WITH_ALIGNED_ALLOC', 'aligned'),
+ self.define_from_variant('ZFP_WITH_CACHE_TWOWAY', 'twoway'),
+ self.define_from_variant('ZFP_WITH_CACHE_FAST_HASH', 'fasthash'),
+ self.define_from_variant('ZFP_WITH_CACHE_PROFILE', 'profile')
]
- if spec.version >= Version('0.5.2'):
- args.append('-DZFP_WITH_CACHE_FAST_HASH:BOOL={0}'.format(
- 'ON' if '+fasthash' in spec else 'OFF'))
- args.append('-DZFP_WITH_CACHE_PROFILE:BOOL={0}'.format(
- 'ON' if '+profile' in spec else 'OFF'))
return args
diff --git a/var/spack/repos/builtin/packages/zfs/package.py b/var/spack/repos/builtin/packages/zfs/package.py
index 819dc2d755..d8fe42004e 100644
--- a/var/spack/repos/builtin/packages/zfs/package.py
+++ b/var/spack/repos/builtin/packages/zfs/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,7 +20,7 @@ class Zfs(AutotoolsPackage):
version('0.8.1', sha256='0af79fde44b7b8ecb94d5166ce2e4fff7409c20ed874c2d759db92909e6c2799')
version('0.8.0', sha256='0fd92e87f4b9df9686f18e2ac707c16b2eeaf00f682d41c20ea519f3a0fe4705')
- depends_on('libuuid')
+ depends_on('uuid')
depends_on('libtirpc')
depends_on('util-linux')
diff --git a/var/spack/repos/builtin/packages/zig/package.py b/var/spack/repos/builtin/packages/zig/package.py
new file mode 100644
index 0000000000..c29f71ba28
--- /dev/null
+++ b/var/spack/repos/builtin/packages/zig/package.py
@@ -0,0 +1,22 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+class Zig(CMakePackage):
+ """A general-purpose programming language and toolchain for maintaining
+ robust, optimal, and reusable software.
+ """
+
+ homepage = "https://ziglang.org/"
+ git = "https://github.com/ziglang/zig.git"
+
+ version('0.7.1', tag='0.7.1')
+
+ variant(
+ 'build_type', values=('Release', 'RelWithDebInfo', 'MinSizeRel'),
+ default='Release', description='CMake build type'
+ )
+
+ depends_on('llvm@11.0.0: +all_targets')
+
+ provides('ziglang')
diff --git a/var/spack/repos/builtin/packages/zip/package.py b/var/spack/repos/builtin/packages/zip/package.py
index a7ae19af67..5e4e951235 100644
--- a/var/spack/repos/builtin/packages/zip/package.py
+++ b/var/spack/repos/builtin/packages/zip/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/zipkin/package.py b/var/spack/repos/builtin/packages/zipkin/package.py
index 8a584c4ece..f13a24eb74 100644
--- a/var/spack/repos/builtin/packages/zipkin/package.py
+++ b/var/spack/repos/builtin/packages/zipkin/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/zlib-ng/package.py b/var/spack/repos/builtin/packages/zlib-ng/package.py
new file mode 100644
index 0000000000..da60c4d697
--- /dev/null
+++ b/var/spack/repos/builtin/packages/zlib-ng/package.py
@@ -0,0 +1,28 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class ZlibNg(CMakePackage):
+ """zlib replacement with optimizations for next generation systems."""
+
+ homepage = "https://github.com/zlib-ng/zlib-ng"
+ url = "https://github.com/zlib-ng/zlib-ng/archive/2.0.0.tar.gz"
+
+ version('2.0.0', sha256='86993903527d9b12fc543335c19c1d33a93797b3d4d37648b5addae83679ecd8')
+
+ variant('compat', default=False, description='Enable compatibility API')
+ variant('opt', default=True, description='Enable optimizations')
+
+ depends_on('cmake@3.5.1:', type='build')
+
+ def cmake_args(self):
+ args = [
+ self.define_from_variant('ZLIB_COMPAT', 'compat'),
+ self.define_from_variant('WITH_OPTIM', 'opt'),
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/zlib/package.py b/var/spack/repos/builtin/packages/zlib/package.py
index 0d30f2d67c..1b084383c6 100644
--- a/var/spack/repos/builtin/packages/zlib/package.py
+++ b/var/spack/repos/builtin/packages/zlib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/zoltan/package.py b/var/spack/repos/builtin/packages/zoltan/package.py
index 6c91069e59..44517b3f7e 100644
--- a/var/spack/repos/builtin/packages/zoltan/package.py
+++ b/var/spack/repos/builtin/packages/zoltan/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -20,12 +20,9 @@ class Zoltan(AutotoolsPackage):
"""
homepage = "http://www.cs.sandia.gov/zoltan"
- url = "http://www.cs.sandia.gov/~kddevin/Zoltan_Distributions/zoltan_distrib_v3.83.tar.gz"
+ url = "https://github.com/sandialabs/Zoltan/archive/v3.83.tar.gz"
- version('3.83', sha256='d0d78fdeab7a385c87d3666b8a8dc748994ff04d3fd846872a4845e12d79c1bb')
- version('3.8', sha256='5bdd46548fb9c73b225bbcf3d206c558c318cb292f0b19645e536315d14aafb7')
- version('3.6', sha256='d2cb41e5fb72ca564b24bc5f21d82d9f7992f2c977bc82b243a01a8a8ee4eb9c')
- version('3.3', sha256='8a90585674ab1bbd011dab29f778b9816519712c78d0aab4cdde9c68f02b30dc')
+ version('3.83', sha256='17320a9f08e47f30f6f3846a74d15bfea6f3c1b937ca93c0ab759ca02c40e56c')
patch('notparallel.patch', when='@3.8')
@@ -39,6 +36,7 @@ class Zoltan(AutotoolsPackage):
depends_on('mpi', when='+mpi')
+ depends_on('parmetis@4: +int64', when='+parmetis+int64')
depends_on('parmetis@4:', when='+parmetis')
depends_on('metis+int64', when='+parmetis+int64')
depends_on('metis', when='+parmetis')
@@ -90,6 +88,13 @@ class Zoltan(AutotoolsPackage):
'-g' if '+debug' in spec else '',
]
+ config_ldflags = []
+ # PGI runtime libraries
+ if '%pgi' in spec:
+ config_ldflags.append('-pgf90libs')
+ # NVHPC runtime libraries
+ if '%nvhpc' in spec:
+ config_ldflags.append('-fortranlibs')
if '+shared' in spec:
config_args.extend([
'RANLIB=echo',
@@ -142,7 +147,8 @@ class Zoltan(AutotoolsPackage):
config_args.extend([
'--with-cflags={0}'.format(' '.join(config_cflags)),
'--with-cxxflags={0}'.format(' '.join(config_cflags)),
- '--with-fcflags={0}'.format(' '.join(config_fcflags))
+ '--with-fcflags={0}'.format(' '.join(config_fcflags)),
+ '--with-ldflags={0}'.format(' '.join(config_ldflags))
])
return config_args
diff --git a/var/spack/repos/builtin/packages/zookeeper-benchmark/package.py b/var/spack/repos/builtin/packages/zookeeper-benchmark/package.py
index 7cb8f74068..1c1261bfb6 100644
--- a/var/spack/repos/builtin/packages/zookeeper-benchmark/package.py
+++ b/var/spack/repos/builtin/packages/zookeeper-benchmark/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/zookeeper/package.py b/var/spack/repos/builtin/packages/zookeeper/package.py
index bd4e09efd4..df0950b596 100644
--- a/var/spack/repos/builtin/packages/zookeeper/package.py
+++ b/var/spack/repos/builtin/packages/zookeeper/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/zsh/package.py b/var/spack/repos/builtin/packages/zsh/package.py
index 1288eddbad..b59fd4251e 100644
--- a/var/spack/repos/builtin/packages/zsh/package.py
+++ b/var/spack/repos/builtin/packages/zsh/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/builtin/packages/zstd/package.py b/var/spack/repos/builtin/packages/zstd/package.py
index 9589a6ff78..99cfccacf7 100644
--- a/var/spack/repos/builtin/packages/zstd/package.py
+++ b/var/spack/repos/builtin/packages/zstd/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -6,14 +6,24 @@
from spack import *
-class Zstd(MakefilePackage):
+class Zstd(CMakePackage):
"""Zstandard, or zstd as short version, is a fast lossless compression
algorithm, targeting real-time compression scenarios at zlib-level and
better compression ratios."""
homepage = "http://facebook.github.io/zstd/"
url = "https://github.com/facebook/zstd/archive/v1.4.3.tar.gz"
+ git = "https://github.com/facebook/zstd.git"
+ root_cmakelists_dir = 'build/cmake'
+
+ maintainers = ['haampie']
+
+ version('develop', branch='dev')
+ version('1.5.0', sha256='0d9ade222c64e912d6957b11c923e214e2e010a18f39bec102f572e693ba2867')
+ version('1.4.9', sha256='acf714d98e3db7b876e5b540cbf6dee298f60eb3c0723104f6d3f065cd60d6a8')
+ version('1.4.8', sha256='f176f0626cb797022fbf257c3c644d71c1c747bb74c32201f9203654da35e9fa')
+ version('1.4.7', sha256='085500c8d0b9c83afbc1dc0d8b4889336ad019eba930c5d6a9c6c86c20c769c8')
version('1.4.5', sha256='734d1f565c42f691f8420c8d06783ad818060fc390dee43ae0a89f86d0a4f8c2')
version('1.4.4', sha256='a364f5162c7d1a455cc915e8e3cf5f4bd8b75d09bc0f53965b0c9ca1383c52c8')
version('1.4.3', sha256='5eda3502ecc285c3c92ee0cc8cd002234dee39d539b3f692997a0e80de1d33de')
@@ -23,39 +33,28 @@ class Zstd(MakefilePackage):
version('1.3.0', sha256='0fdba643b438b7cbce700dcc0e7b3e3da6d829088c63757a5984930e2f70b348')
version('1.1.2', sha256='980b8febb0118e22f6ed70d23b5b3e600995dbf7489c1f6d6122c1411cdda8d8')
- variant('pic', default=True, description='Build position independent code')
-
- depends_on('zlib')
-
- def setup_build_environment(self, env):
- if '+pic' in self.spec:
- env.append_flags('CFLAGS', self.compiler.cc_pic_flag)
-
- def build(self, spec, prefix):
- make('PREFIX={0}'.format(prefix))
-
- def install(self, spec, prefix):
- make('install', 'PREFIX={0}'.format(prefix))
-
- def patch(self):
- # Remove flags not understood by the NVIDIA compilers
- if self.spec.satisfies('%nvhpc'):
- filter_file('-fvisibility=hidden', '', 'lib/Makefile')
- filter_file('-Wc++-compat', '', 'lib/Makefile', string=True)
- filter_file('-Wcast-align', '', 'lib/Makefile')
- filter_file('-Wcast-qual', '', 'lib/Makefile')
- filter_file('-Wdeclaration-after-statement', '', 'lib/Makefile')
- filter_file('-Wextra', '', 'lib/Makefile')
- filter_file('-Wfloat-equal', '', 'lib/Makefile')
- filter_file('-Wformat=2', '', 'lib/Makefile')
- filter_file('-Winit-self', '', 'lib/Makefile')
- filter_file('-Wmissing-prototypes', '', 'lib/Makefile')
- filter_file('-Wpointer-arith', '', 'lib/Makefile')
- filter_file('-Wredundant-decls', '', 'lib/Makefile')
- filter_file('-Wshadow', '', 'lib/Makefile')
- filter_file('-Wstrict-aliasing=1', '', 'lib/Makefile')
- filter_file('-Wstrict-prototypes', '', 'lib/Makefile')
- filter_file('-Wswitch-enum', '', 'lib/Makefile')
- filter_file('-Wundef', '', 'lib/Makefile')
- filter_file('-Wvla', '', 'lib/Makefile')
- filter_file('-Wwrite-strings', '', 'lib/Makefile')
+ variant('shared', default=True, description='Build shared libraries')
+ variant('static', default=True, description='Build static libraries')
+ variant('programs', default=True, description='Build executables')
+ variant('legacy', default=False, description='Enable legacy support')
+ variant('zlib', default=False, description='Build programs with zlib support')
+ variant('lzma', default=False, description='Build programs with lzma support')
+ variant('lz4', default=False, description='Build programs with zlib support')
+ variant('multithread', default=True, description='Build with pthread support')
+
+ conflicts('+zlib', when='~programs', msg="zlib requires programs to be built")
+ conflicts('+lzma', when='~programs', msg="lzma requires programs to be built")
+ conflicts('+lz4', when='~programs', msg="lz4 requires programs to be built")
+
+ depends_on('zlib', when='+zlib')
+ depends_on('lzma', when='+lzma')
+ depends_on('lz4', when='+lz4')
+
+ def cmake_args(self):
+ return [
+ self.define_from_variant('ZSTD_BUILD_PROGRAMS', 'programs'),
+ self.define_from_variant('ZSTD_BUILD_STATIC', 'static'),
+ self.define_from_variant('ZSTD_BUILD_SHARED', 'shared'),
+ self.define_from_variant('ZSTD_LEGACY_SUPPORT', 'legacy'),
+ self.define_from_variant('ZSTD_MULTITHREAD_SUPPORT', 'multithread')
+ ]
diff --git a/var/spack/repos/builtin/packages/zstr/package.py b/var/spack/repos/builtin/packages/zstr/package.py
new file mode 100644
index 0000000000..6883f9a6a6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/zstr/package.py
@@ -0,0 +1,30 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Zstr(Package):
+ """This C++ header-only library enables the use of C++ standard
+ iostreams to access ZLib-compressed streams."""
+
+ homepage = "https://github.com/mateidavid/zstr"
+ url = "https://github.com/mateidavid/zstr/archive/v1.0.4.tar.gz"
+
+ maintainers = ['bvanessen']
+
+ version('1.0.4', sha256='a594a3a9c192a6d9e93f9585910d41f7ee6791eb7c454d40c922656324b3058e')
+ version('1.0.3', sha256='d42f1b08e4c3a26e3b42433691d32765015cf89f089ae075b1acb819ccba585f')
+ version('1.0.2', sha256='b4c2d72f0f222b72985fc6c2bd2bd9c1fc353d2e4c8c12186fd87229107a442b')
+ version('1.0.1', sha256='e17e67e00ede182504b3165cebd802420770541465d4ba41df1a15bf4c2a63b7')
+ version('1.0.0', sha256='9f4fa8cb0d2cbba03dfe67900c48b6e75c8380d9263a0ac71d795f11e0224b96')
+
+ depends_on('zlib')
+
+ def install(self, spec, prefix):
+ """Make the install targets - Note that this package
+ keeps it's headers in the src directory"""
+ install_tree(join_path(self.stage.source_path, 'src'),
+ prefix.include)
diff --git a/var/spack/repos/builtin/packages/zziplib/package.py b/var/spack/repos/builtin/packages/zziplib/package.py
index c8f96738d3..d98a57259c 100644
--- a/var/spack/repos/builtin/packages/zziplib/package.py
+++ b/var/spack/repos/builtin/packages/zziplib/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2019 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/tutorial/packages/armadillo/package.py b/var/spack/repos/tutorial/packages/armadillo/package.py
index 13fabc20b3..77be3376c1 100644
--- a/var/spack/repos/tutorial/packages/armadillo/package.py
+++ b/var/spack/repos/tutorial/packages/armadillo/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/tutorial/packages/elpa/package.py b/var/spack/repos/tutorial/packages/elpa/package.py
index 7fc10ef8fa..ad483ed0b7 100644
--- a/var/spack/repos/tutorial/packages/elpa/package.py
+++ b/var/spack/repos/tutorial/packages/elpa/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/tutorial/packages/hdf5/package.py b/var/spack/repos/tutorial/packages/hdf5/package.py
index 9b0c683013..333b0a566f 100644
--- a/var/spack/repos/tutorial/packages/hdf5/package.py
+++ b/var/spack/repos/tutorial/packages/hdf5/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/tutorial/packages/mpich/package.py b/var/spack/repos/tutorial/packages/mpich/package.py
index 0acb31c217..87c7e30d82 100644
--- a/var/spack/repos/tutorial/packages/mpich/package.py
+++ b/var/spack/repos/tutorial/packages/mpich/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
diff --git a/var/spack/repos/tutorial/packages/netlib-lapack/package.py b/var/spack/repos/tutorial/packages/netlib-lapack/package.py
index e7edd9e23a..6f1d83de13 100644
--- a/var/spack/repos/tutorial/packages/netlib-lapack/package.py
+++ b/var/spack/repos/tutorial/packages/netlib-lapack/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)