From 5d1bfafb7f9826e22eb5079c2f606e0b8dde28fc Mon Sep 17 00:00:00 2001 From: Julien Cortial <101571984+jcortial-safran@users.noreply.github.com> Date: Wed, 6 Dec 2023 16:32:39 +0100 Subject: [PATCH 1/2] Only build tests for proj package if required (#41065) * Only build tests for proj package if required Even if tests are not explictly required to be built, proj build them anyway and tries to download Google Test. * proj: fix name of test activation flag * proj: Always set test activation flag * proj: Patch test activation logic for versions 5.x --- var/spack/repos/builtin/packages/proj/package.py | 10 ++++++++++ .../builtin/packages/proj/proj.cmakelists.5.0.patch | 12 ++++++++++++ .../builtin/packages/proj/proj.cmakelists.5.1.patch | 12 ++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 var/spack/repos/builtin/packages/proj/proj.cmakelists.5.0.patch create mode 100644 var/spack/repos/builtin/packages/proj/proj.cmakelists.5.1.patch diff --git a/var/spack/repos/builtin/packages/proj/package.py b/var/spack/repos/builtin/packages/proj/package.py index a49adf19b8cb62..01107a698fbe28 100644 --- a/var/spack/repos/builtin/packages/proj/package.py +++ b/var/spack/repos/builtin/packages/proj/package.py @@ -85,6 +85,9 @@ class Proj(CMakePackage, AutotoolsPackage): when="@7:7.2.1", ) + patch("proj.cmakelists.5.0.patch", when="@5.0") + patch("proj.cmakelists.5.1.patch", when="@5.1:5.2") + # https://proj.org/install.html#build-requirements with when("build_system=cmake"): depends_on("cmake@3.9:", when="@6:", type="build") @@ -137,6 +140,13 @@ def cmake_args(self): ] if self.spec.satisfies("@6:") and self.pkg.run_tests: args.append(self.define("USE_EXTERNAL_GTEST", True)) + if self.spec.satisfies("@7:"): + test_flag = "BUILD_TESTING" + elif self.spec.satisfies("@5.1:"): + test_flag = "PROJ_TESTS" + else: + test_flag = "PROJ4_TESTS" + args.append(self.define(test_flag, self.pkg.run_tests)) return args diff --git a/var/spack/repos/builtin/packages/proj/proj.cmakelists.5.0.patch b/var/spack/repos/builtin/packages/proj/proj.cmakelists.5.0.patch new file mode 100644 index 00000000000000..02302bce9dc699 --- /dev/null +++ b/var/spack/repos/builtin/packages/proj/proj.cmakelists.5.0.patch @@ -0,0 +1,12 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -149,5 +149,6 @@ add_subdirectory(nad) + add_subdirectory(src) + add_subdirectory(man) + add_subdirectory(cmake) +-add_subdirectory(test) +- ++if(PROJ4_TESTS) ++ add_subdirectory(test) ++endif(PROJ4_TESTS) diff --git a/var/spack/repos/builtin/packages/proj/proj.cmakelists.5.1.patch b/var/spack/repos/builtin/packages/proj/proj.cmakelists.5.1.patch new file mode 100644 index 00000000000000..fb4ad9b052b777 --- /dev/null +++ b/var/spack/repos/builtin/packages/proj/proj.cmakelists.5.1.patch @@ -0,0 +1,12 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -159,5 +159,6 @@ add_subdirectory(nad) + add_subdirectory(src) + add_subdirectory(man) + add_subdirectory(cmake) +-add_subdirectory(test) +- ++if(PROJ_TESTS) ++ add_subdirectory(test) ++endif(PROJ_TESTS) From 23405ead2ee6b7462be1a6e140fc6294a8bfcd9b Mon Sep 17 00:00:00 2001 From: Alex Richert Date: Tue, 9 Jan 2024 10:34:03 -0800 Subject: [PATCH 2/2] flake8 fix stack_cmds/setup_meta_modules.py --- .../spack-stack/stack/cmd/stack_cmds/setup_meta_modules.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/lib/jcsda-emc/spack-stack/stack/cmd/stack_cmds/setup_meta_modules.py b/lib/jcsda-emc/spack-stack/stack/cmd/stack_cmds/setup_meta_modules.py index 57f1c18eeff6f8..17f320c5923fd4 100644 --- a/lib/jcsda-emc/spack-stack/stack/cmd/stack_cmds/setup_meta_modules.py +++ b/lib/jcsda-emc/spack-stack/stack/cmd/stack_cmds/setup_meta_modules.py @@ -1,5 +1,3 @@ -import spack.cmd.common.arguments -import spack.cmd.modules from spack.extensions.stack.meta_modules import setup_meta_modules description = "Create meta-modules"