From 1659beb220bde672ff50a47af934e8ba3b7323e5 Mon Sep 17 00:00:00 2001 From: Harmen Stoppels Date: Tue, 9 Mar 2021 01:47:00 +0100 Subject: Fix `spack graph` when deptypes are filtered (#22121) --- .../packages/both-link-and-build-dep-a/package.py | 24 ++++++++++++++++++++++ .../packages/both-link-and-build-dep-b/package.py | 23 +++++++++++++++++++++ .../packages/both-link-and-build-dep-c/package.py | 21 +++++++++++++++++++ 3 files changed, 68 insertions(+) create mode 100644 var/spack/repos/builtin.mock/packages/both-link-and-build-dep-a/package.py create mode 100644 var/spack/repos/builtin.mock/packages/both-link-and-build-dep-b/package.py create mode 100644 var/spack/repos/builtin.mock/packages/both-link-and-build-dep-c/package.py (limited to 'var') 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') -- cgit v1.2.3-70-g09d2