From 1c18ff70e06263c9a39a9e5d17748c6d5de3e886 Mon Sep 17 00:00:00 2001 From: Lars Bilke <lars.bilke@ufz.de> Date: Fri, 13 May 2022 15:07:08 +0200 Subject: [PATCH] [ogs] Preserve full bin dir when --keep-build-dir is given. Also adapts PATH in this case. ogs is installed if option is not given. Related to #6. --- ogscm/building_blocks/ogs.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/ogscm/building_blocks/ogs.py b/ogscm/building_blocks/ogs.py index ea212cc..cafd22e 100644 --- a/ogscm/building_blocks/ogs.py +++ b/ogscm/building_blocks/ogs.py @@ -145,8 +145,12 @@ class ogs(bb_base, hpccm.templates.CMakeBuild, hpccm.templates.rm): ) ) + # Install only when build dir is removed self.__commands.append( - self.build_step(target="install", parallel=self.__parallel) + self.build_step( + target=("install" if self.__remove_build else "all"), + parallel=self.__parallel, + ) ) # ctest @@ -154,20 +158,19 @@ class ogs(bb_base, hpccm.templates.CMakeBuild, hpccm.templates.rm): self.__commands.append(self.build_step(target="ctest")) # Cleanup + bin_dir = f"{self.__prefix}/build/bin" if self.__remove_build: self.__commands.append( self.cleanup_step(items=[os.path.join(self.__prefix, "build")]) ) - else: - # Just run the clean-target - self.__commands.append(self.build_step(target="clean")) + bin_dir = f"{self.__prefix}/bin" if self.__remove_source: self.__commands.append( self.cleanup_step(items=[os.path.join(self.__prefix, "src")]) ) # Environment - self.__environment_variables["PATH"] = "{0}/bin:$PATH".format(self.__prefix) + self.__environment_variables["PATH"] = f"{bin_dir}:$PATH" # Labels if self.__repo == "local": -- GitLab