geopm: Add v3.1 and update the needed dependencies (#44793)
This commit is contained in:
		@@ -15,13 +15,14 @@ class GeopmRuntime(AutotoolsPackage):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    homepage = "https://geopm.github.io"
 | 
					    homepage = "https://geopm.github.io"
 | 
				
			||||||
    git = "https://github.com/geopm/geopm.git"
 | 
					    git = "https://github.com/geopm/geopm.git"
 | 
				
			||||||
    url = "https://github.com/geopm/geopm/tarball/v3.0.1"
 | 
					    url = "https://github.com/geopm/geopm/tarball/v3.1.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    maintainers("bgeltz", "cmcantalupo")
 | 
					    maintainers("bgeltz", "cmcantalupo")
 | 
				
			||||||
    license("BSD-3-Clause")
 | 
					    license("BSD-3-Clause")
 | 
				
			||||||
    tags = ["e4s"]
 | 
					    tags = ["e4s"]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    version("develop", branch="dev", get_full_repo=True)
 | 
					    version("develop", branch="dev", get_full_repo=True)
 | 
				
			||||||
 | 
					    version("3.1.0", sha256="2d890cad906fd2008dc57f4e06537695d4a027e1dc1ed92feed4d81bb1a1449e")
 | 
				
			||||||
    version("3.0.1", sha256="32ba1948de58815ee055470dcdea64593d1113a6cad70ce00ab0286c127f8234")
 | 
					    version("3.0.1", sha256="32ba1948de58815ee055470dcdea64593d1113a6cad70ce00ab0286c127f8234")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    depends_on("c", type="build")  # generated
 | 
					    depends_on("c", type="build")  # generated
 | 
				
			||||||
@@ -29,7 +30,7 @@ class GeopmRuntime(AutotoolsPackage):
 | 
				
			|||||||
    depends_on("fortran", type="build")  # generated
 | 
					    depends_on("fortran", type="build")  # generated
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    variant("debug", default=False, description="Enable debug")
 | 
					    variant("debug", default=False, description="Enable debug")
 | 
				
			||||||
    variant("docs", default=False, description="Create man pages with Sphinx")
 | 
					    variant("docs", default=False, when="@3.0.1", description="Create man pages with Sphinx")
 | 
				
			||||||
    variant("overhead", default=False, description="Track time spent in GEOPM API calls")
 | 
					    variant("overhead", default=False, description="Track time spent in GEOPM API calls")
 | 
				
			||||||
    variant("beta", default=False, description="Enable beta features")
 | 
					    variant("beta", default=False, description="Enable beta features")
 | 
				
			||||||
    variant("mpi", default=True, description="Enable MPI dependent components")
 | 
					    variant("mpi", default=True, description="Enable MPI dependent components")
 | 
				
			||||||
@@ -60,7 +61,9 @@ class GeopmRuntime(AutotoolsPackage):
 | 
				
			|||||||
    depends_on("libtool", type="build")
 | 
					    depends_on("libtool", type="build")
 | 
				
			||||||
    depends_on("file")
 | 
					    depends_on("file")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    with when("@3.0.1"):
 | 
				
			||||||
        # Docs dependencies
 | 
					        # Docs dependencies
 | 
				
			||||||
 | 
					        #   Moved to python3-geopm-doc as of v3.1
 | 
				
			||||||
        depends_on("doxygen", type="build", when="+docs")
 | 
					        depends_on("doxygen", type="build", when="+docs")
 | 
				
			||||||
        depends_on("py-sphinx", type="build", when="+docs")
 | 
					        depends_on("py-sphinx", type="build", when="+docs")
 | 
				
			||||||
        depends_on("py-sphinx-rtd-theme@1:", type="build", when="+docs")
 | 
					        depends_on("py-sphinx-rtd-theme@1:", type="build", when="+docs")
 | 
				
			||||||
@@ -69,6 +72,7 @@ class GeopmRuntime(AutotoolsPackage):
 | 
				
			|||||||
        depends_on("py-pygments@2.13.0:", type="build", when="+docs")
 | 
					        depends_on("py-pygments@2.13.0:", type="build", when="+docs")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # Other Python dependencies - from scripts/setup.py
 | 
					        # Other Python dependencies - from scripts/setup.py
 | 
				
			||||||
 | 
					        #   Moved to python3-geopmdpy as of v3.1
 | 
				
			||||||
        depends_on("python@3.6:3", type=("build", "run"))
 | 
					        depends_on("python@3.6:3", type=("build", "run"))
 | 
				
			||||||
        depends_on("py-setuptools@53.0.0:", type="build")
 | 
					        depends_on("py-setuptools@53.0.0:", type="build")
 | 
				
			||||||
        depends_on("py-cffi@1.14.5:", type="run")
 | 
					        depends_on("py-cffi@1.14.5:", type="run")
 | 
				
			||||||
@@ -81,9 +85,12 @@ class GeopmRuntime(AutotoolsPackage):
 | 
				
			|||||||
        depends_on("py-docutils@0.18:", type="run", when="+checkprogs")
 | 
					        depends_on("py-docutils@0.18:", type="run", when="+checkprogs")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Other dependencies
 | 
					    # Other dependencies
 | 
				
			||||||
    for ver in ["3.0.1", "develop"]:
 | 
					    for ver in ["3.0.1", "3.1.0", "develop"]:
 | 
				
			||||||
        depends_on(f"geopm-service@{ver}", type="build", when=f"@{ver}")
 | 
					        depends_on(f"geopm-service@{ver}", type=("build", "run"), when=f"@{ver}")
 | 
				
			||||||
        depends_on(f"py-geopmdpy@{ver}", type="run", when=f"@{ver}")
 | 
					        depends_on(f"py-geopmdpy@{ver}", type="run", when=f"@{ver}")
 | 
				
			||||||
 | 
					        if ver != "3.0.1":  # geopmpy integrated into autotools build until 3.1
 | 
				
			||||||
 | 
					            depends_on(f"py-geopmpy@{ver}", type="run", when=f"@{ver}")
 | 
				
			||||||
 | 
					    depends_on("py-setuptools-scm@7.0.3:", when="@3.1:", type="build")
 | 
				
			||||||
    depends_on("bash-completion")
 | 
					    depends_on("bash-completion")
 | 
				
			||||||
    depends_on("unzip")
 | 
					    depends_on("unzip")
 | 
				
			||||||
    depends_on("mpi@2.2:", when="+mpi")
 | 
					    depends_on("mpi@2.2:", when="+mpi")
 | 
				
			||||||
@@ -96,6 +103,13 @@ class GeopmRuntime(AutotoolsPackage):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    extends("python")
 | 
					    extends("python")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @property
 | 
				
			||||||
 | 
					    def configure_directory(self):
 | 
				
			||||||
 | 
					        if self.version == Version("3.0.1"):
 | 
				
			||||||
 | 
					            return "."
 | 
				
			||||||
 | 
					        else:
 | 
				
			||||||
 | 
					            return "libgeopm"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @property
 | 
					    @property
 | 
				
			||||||
    def install_targets(self):
 | 
					    def install_targets(self):
 | 
				
			||||||
        target = ["install"]
 | 
					        target = ["install"]
 | 
				
			||||||
@@ -105,20 +119,26 @@ def install_targets(self):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    def autoreconf(self, spec, prefix):
 | 
					    def autoreconf(self, spec, prefix):
 | 
				
			||||||
        bash = which("bash")
 | 
					        bash = which("bash")
 | 
				
			||||||
 | 
					        with working_dir(self.configure_directory):
 | 
				
			||||||
            if not spec.version.isdevelop():
 | 
					            if not spec.version.isdevelop():
 | 
				
			||||||
 | 
					                if self.version == Version("3.0.1"):
 | 
				
			||||||
 | 
					                    version_file = "VERSION_OVERRIDE"
 | 
				
			||||||
 | 
					                else:
 | 
				
			||||||
 | 
					                    version_file = "VERSION"
 | 
				
			||||||
                # Required to workaround missing VERSION files
 | 
					                # Required to workaround missing VERSION files
 | 
				
			||||||
                # from GitHub generated source tarballs
 | 
					                # from GitHub generated source tarballs
 | 
				
			||||||
            with open("VERSION_OVERRIDE", "w") as fd:
 | 
					                with open(version_file, "w") as fd:
 | 
				
			||||||
                    fd.write(f"{spec.version}")
 | 
					                    fd.write(f"{spec.version}")
 | 
				
			||||||
            bash("./autogen.sh")
 | 
					            bash("./autogen.sh")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def configure_args(self):
 | 
					    def configure_args(self):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        with when("@3.0.1"):
 | 
				
			||||||
            args = [
 | 
					            args = [
 | 
				
			||||||
                "--with-bash-completion-dir="
 | 
					                "--with-bash-completion-dir="
 | 
				
			||||||
            + join_path(self.spec.prefix, "share", "bash-completion", "completions"),
 | 
					                + join_path(self.spec.prefix, "share", "bash-completion", "completions")
 | 
				
			||||||
            "--disable-geopmd-local",
 | 
					 | 
				
			||||||
            f"--with-geopmd={self.spec['geopm-service'].prefix}",
 | 
					 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
 | 
					        args += ["--disable-geopmd-local", f"--with-geopmd={self.spec['geopm-service'].prefix}"]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        args += self.enable_or_disable("debug")
 | 
					        args += self.enable_or_disable("debug")
 | 
				
			||||||
        args += self.enable_or_disable("docs")
 | 
					        args += self.enable_or_disable("docs")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,13 +18,14 @@ class GeopmService(AutotoolsPackage):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    homepage = "https://geopm.github.io"
 | 
					    homepage = "https://geopm.github.io"
 | 
				
			||||||
    git = "https://github.com/geopm/geopm.git"
 | 
					    git = "https://github.com/geopm/geopm.git"
 | 
				
			||||||
    url = "https://github.com/geopm/geopm/tarball/v3.0.1"
 | 
					    url = "https://github.com/geopm/geopm/tarball/v3.1.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    maintainers("bgeltz", "cmcantalupo")
 | 
					    maintainers("bgeltz", "cmcantalupo")
 | 
				
			||||||
    license("BSD-3-Clause")
 | 
					    license("BSD-3-Clause")
 | 
				
			||||||
    tags = ["e4s"]
 | 
					    tags = ["e4s"]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    version("develop", branch="dev", get_full_repo=True)
 | 
					    version("develop", branch="dev", get_full_repo=True)
 | 
				
			||||||
 | 
					    version("3.1.0", sha256="2d890cad906fd2008dc57f4e06537695d4a027e1dc1ed92feed4d81bb1a1449e")
 | 
				
			||||||
    version("3.0.1", sha256="32ba1948de58815ee055470dcdea64593d1113a6cad70ce00ab0286c127f8234")
 | 
					    version("3.0.1", sha256="32ba1948de58815ee055470dcdea64593d1113a6cad70ce00ab0286c127f8234")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    depends_on("c", type="build")  # generated
 | 
					    depends_on("c", type="build")  # generated
 | 
				
			||||||
@@ -32,7 +33,7 @@ class GeopmService(AutotoolsPackage):
 | 
				
			|||||||
    depends_on("fortran", type="build")  # generated
 | 
					    depends_on("fortran", type="build")  # generated
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    variant("debug", default=False, description="Enable debug")
 | 
					    variant("debug", default=False, description="Enable debug")
 | 
				
			||||||
    variant("docs", default=True, description="Create man pages with Sphinx")
 | 
					    variant("docs", default=True, when="@3.0.1", description="Create man pages with Sphinx")
 | 
				
			||||||
    variant("systemd", default=True, description="Enable use of systemd/DBus")
 | 
					    variant("systemd", default=True, description="Enable use of systemd/DBus")
 | 
				
			||||||
    variant("liburing", default=True, description="Enables the use of liburing for batch I/O")
 | 
					    variant("liburing", default=True, description="Enables the use of liburing for batch I/O")
 | 
				
			||||||
    variant(
 | 
					    variant(
 | 
				
			||||||
@@ -69,7 +70,9 @@ class GeopmService(AutotoolsPackage):
 | 
				
			|||||||
    depends_on("libtool", type="build")
 | 
					    depends_on("libtool", type="build")
 | 
				
			||||||
    depends_on("file")
 | 
					    depends_on("file")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    with when("@3.0.1"):
 | 
				
			||||||
        # Docs dependencies
 | 
					        # Docs dependencies
 | 
				
			||||||
 | 
					        #   Moved to python3-geopm-doc as of v3.1
 | 
				
			||||||
        depends_on("doxygen", type="build", when="+docs")
 | 
					        depends_on("doxygen", type="build", when="+docs")
 | 
				
			||||||
        depends_on("py-docstring-parser@0.13.0:", type="build", when="+docs")
 | 
					        depends_on("py-docstring-parser@0.13.0:", type="build", when="+docs")
 | 
				
			||||||
        depends_on("py-sphinx", type="build", when="+docs")
 | 
					        depends_on("py-sphinx", type="build", when="+docs")
 | 
				
			||||||
@@ -79,14 +82,18 @@ class GeopmService(AutotoolsPackage):
 | 
				
			|||||||
        depends_on("py-pygments@2.13.0:", type="build", when="+docs")
 | 
					        depends_on("py-pygments@2.13.0:", type="build", when="+docs")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # Other Python dependencies - from service/setup.py
 | 
					        # Other Python dependencies - from service/setup.py
 | 
				
			||||||
    depends_on("py-dasbus@1.6.0:", type=("build", "run"))
 | 
					        #   Moved to python3-geopmdpy as of v3.1
 | 
				
			||||||
    depends_on("py-cffi@1.14.5:", type="run")
 | 
					 | 
				
			||||||
    depends_on("py-psutil@5.8.0:", type="run")
 | 
					 | 
				
			||||||
    depends_on("py-jsonschema@3.2.0:", type="run")
 | 
					 | 
				
			||||||
    depends_on("py-pyyaml@6.0:", type="run")
 | 
					 | 
				
			||||||
        depends_on("py-setuptools@53.0.0:", type="build")
 | 
					        depends_on("py-setuptools@53.0.0:", type="build")
 | 
				
			||||||
 | 
					        depends_on("py-dasbus@1.6.0:", type=("build", "run"))
 | 
				
			||||||
 | 
					        depends_on("py-psutil@5.8.0:", type=("build", "run"))
 | 
				
			||||||
 | 
					        depends_on("py-jsonschema@3.2.0:", type=("build", "run"))
 | 
				
			||||||
 | 
					        depends_on("py-pyyaml@6.0:", type=("build", "run"))
 | 
				
			||||||
 | 
					        depends_on("py-cffi@1.14.5:", type="run")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Other dependencies
 | 
					    # Other dependencies
 | 
				
			||||||
 | 
					    for ver in ["3.1.0", "develop"]:
 | 
				
			||||||
 | 
					        depends_on(f"py-geopmdpy@{ver}", type="run", when=f"@{ver}")
 | 
				
			||||||
 | 
					    depends_on("py-setuptools-scm@7.0.3:", when="@3.1:", type="build")
 | 
				
			||||||
    depends_on("bash-completion")
 | 
					    depends_on("bash-completion")
 | 
				
			||||||
    depends_on("unzip")
 | 
					    depends_on("unzip")
 | 
				
			||||||
    depends_on("systemd", when="+systemd")
 | 
					    depends_on("systemd", when="+systemd")
 | 
				
			||||||
@@ -97,15 +104,24 @@ class GeopmService(AutotoolsPackage):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    extends("python")
 | 
					    extends("python")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    configure_directory = "service"
 | 
					    @property
 | 
				
			||||||
 | 
					    def configure_directory(self):
 | 
				
			||||||
 | 
					        if self.version == Version("3.0.1"):
 | 
				
			||||||
 | 
					            return "service"
 | 
				
			||||||
 | 
					        else:
 | 
				
			||||||
 | 
					            return "libgeopmd"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def autoreconf(self, spec, prefix):
 | 
					    def autoreconf(self, spec, prefix):
 | 
				
			||||||
        bash = which("bash")
 | 
					        bash = which("bash")
 | 
				
			||||||
        with working_dir("service"):
 | 
					        with working_dir(self.configure_directory):
 | 
				
			||||||
            if not spec.version.isdevelop():
 | 
					            if not spec.version.isdevelop():
 | 
				
			||||||
 | 
					                if self.version == Version("3.0.1"):
 | 
				
			||||||
 | 
					                    version_file = "VERSION_OVERRIDE"
 | 
				
			||||||
 | 
					                else:
 | 
				
			||||||
 | 
					                    version_file = "VERSION"
 | 
				
			||||||
                # Required to workaround missing VERSION files
 | 
					                # Required to workaround missing VERSION files
 | 
				
			||||||
                # from GitHub generated source tarballs
 | 
					                # from GitHub generated source tarballs
 | 
				
			||||||
                with open("VERSION_OVERRIDE", "w") as fd:
 | 
					                with open(version_file, "w") as fd:
 | 
				
			||||||
                    fd.write(f"{spec.version}")
 | 
					                    fd.write(f"{spec.version}")
 | 
				
			||||||
            bash("./autogen.sh")
 | 
					            bash("./autogen.sh")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -52,6 +52,7 @@ class Librsvg(AutotoolsPackage):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    depends_on("libffi")
 | 
					    depends_on("libffi")
 | 
				
			||||||
    depends_on("shared-mime-info")
 | 
					    depends_on("shared-mime-info")
 | 
				
			||||||
 | 
					    depends_on("py-docutils", type="build")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def url_for_version(self, version):
 | 
					    def url_for_version(self, version):
 | 
				
			||||||
        url = "https://download.gnome.org/sources/librsvg/"
 | 
					        url = "https://download.gnome.org/sources/librsvg/"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,6 +14,7 @@ class PyBlosc2(PythonPackage):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    license("BSD-3-Clause")
 | 
					    license("BSD-3-Clause")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    version("2.6.2", sha256="8ca29d9aa988b85318bd8a9b707a7a06c8d6604ae1304cae059170437ae4f53a")
 | 
				
			||||||
    version("2.2.8", sha256="59065aac5e9b01b0e9f3825d8e7f69f64b59bbfab148a47c54e4115f62a97474")
 | 
					    version("2.2.8", sha256="59065aac5e9b01b0e9f3825d8e7f69f64b59bbfab148a47c54e4115f62a97474")
 | 
				
			||||||
    version("2.0.0", sha256="f19b0b3674f6c825b490f00d8264b0c540c2cdc11ec7e81178d38b83c57790a1")
 | 
					    version("2.0.0", sha256="f19b0b3674f6c825b490f00d8264b0c540c2cdc11ec7e81178d38b83c57790a1")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -12,13 +12,14 @@ class PyGeopmdpy(PythonPackage):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    homepage = "https://geopm.github.io"
 | 
					    homepage = "https://geopm.github.io"
 | 
				
			||||||
    git = "https://github.com/geopm/geopm.git"
 | 
					    git = "https://github.com/geopm/geopm.git"
 | 
				
			||||||
    url = "https://github.com/geopm/geopm/tarball/v3.0.1"
 | 
					    url = "https://github.com/geopm/geopm/tarball/v3.1.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    maintainers("bgeltz", "cmcantalupo")
 | 
					    maintainers("bgeltz", "cmcantalupo")
 | 
				
			||||||
    license("BSD-3-Clause")
 | 
					    license("BSD-3-Clause")
 | 
				
			||||||
    tags = ["e4s"]
 | 
					    tags = ["e4s"]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    version("develop", branch="dev")
 | 
					    version("develop", branch="dev", get_full_repo=True)
 | 
				
			||||||
 | 
					    version("3.1.0", sha256="2d890cad906fd2008dc57f4e06537695d4a027e1dc1ed92feed4d81bb1a1449e")
 | 
				
			||||||
    version("3.0.1", sha256="32ba1948de58815ee055470dcdea64593d1113a6cad70ce00ab0286c127f8234")
 | 
					    version("3.0.1", sha256="32ba1948de58815ee055470dcdea64593d1113a6cad70ce00ab0286c127f8234")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    depends_on("c", type="build")  # generated
 | 
					    depends_on("c", type="build")  # generated
 | 
				
			||||||
@@ -31,13 +32,23 @@ class PyGeopmdpy(PythonPackage):
 | 
				
			|||||||
    depends_on("py-jsonschema@3.2.0:", type="run")
 | 
					    depends_on("py-jsonschema@3.2.0:", type="run")
 | 
				
			||||||
    depends_on("py-pyyaml@6.0:", type="run")
 | 
					    depends_on("py-pyyaml@6.0:", type="run")
 | 
				
			||||||
    depends_on("py-setuptools@53.0.0:", type="build")
 | 
					    depends_on("py-setuptools@53.0.0:", type="build")
 | 
				
			||||||
 | 
					    depends_on("py-setuptools-scm@7.0.3:", when="@3.1:", type="build")
 | 
				
			||||||
 | 
					    depends_on("py-build@0.9.0:", when="@3.1:", type="build")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    build_directory = "service"
 | 
					    @property
 | 
				
			||||||
 | 
					    def build_directory(self):
 | 
				
			||||||
 | 
					        if self.version == Version("3.0.1"):
 | 
				
			||||||
 | 
					            return "service"
 | 
				
			||||||
 | 
					        else:
 | 
				
			||||||
 | 
					            return "geopmdpy"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def setup_build_environment(self, env):
 | 
				
			||||||
 | 
					        if not self.spec.version.isdevelop():
 | 
				
			||||||
 | 
					            env.set("SETUPTOOLS_SCM_PRETEND_VERSION", self.version)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @run_before("install")
 | 
					    @run_before("install")
 | 
				
			||||||
    def populate_version(self):
 | 
					    def populate_version(self):
 | 
				
			||||||
        # @develop builds will have a version of 0.0.0
 | 
					        if self.version == Version("3.0.1"):
 | 
				
			||||||
        if not self.spec.version.isdevelop():
 | 
					            with working_dir(join_path(self.build_directory, "geopmdpy")):
 | 
				
			||||||
            with working_dir(join_path("service", "geopmdpy")):
 | 
					 | 
				
			||||||
                with open("version.py", "w") as fd:
 | 
					                with open("version.py", "w") as fd:
 | 
				
			||||||
                    fd.write(f"__version__ = '{self.spec.version}'")
 | 
					                    fd.write(f"__version__ = '{self.spec.version}'")
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										41
									
								
								var/spack/repos/builtin/packages/py-geopmpy/package.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								var/spack/repos/builtin/packages/py-geopmpy/package.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,41 @@
 | 
				
			|||||||
 | 
					# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other
 | 
				
			||||||
 | 
					# Spack Project Developers. See the top-level COPYRIGHT file for details.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# SPDX-License-Identifier: (Apache-2.0 OR MIT)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					from spack.package import *
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class PyGeopmpy(PythonPackage):
 | 
				
			||||||
 | 
					    """The Global Extensible Open Power Manager (GEOPM) Service provides a
 | 
				
			||||||
 | 
					    user interface for accessing hardware telemetry and settings securely."""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    homepage = "https://geopm.github.io"
 | 
				
			||||||
 | 
					    git = "https://github.com/geopm/geopm.git"
 | 
				
			||||||
 | 
					    url = "https://github.com/geopm/geopm/tarball/v3.1.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    maintainers("bgeltz", "cmcantalupo")
 | 
				
			||||||
 | 
					    license("BSD-3-Clause")
 | 
				
			||||||
 | 
					    tags = ["e4s"]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    version("develop", branch="dev", get_full_repo=True)
 | 
				
			||||||
 | 
					    version("3.1.0", sha256="2d890cad906fd2008dc57f4e06537695d4a027e1dc1ed92feed4d81bb1a1449e")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    depends_on("python@3.6:3", type=("build", "run"))
 | 
				
			||||||
 | 
					    depends_on("py-setuptools@53.0.0:", type="build")
 | 
				
			||||||
 | 
					    depends_on("py-setuptools-scm@7.0.3:", when="@3.1:", type="build")
 | 
				
			||||||
 | 
					    depends_on("py-build@0.9.0:", when="@3.1:", type="build")
 | 
				
			||||||
 | 
					    depends_on("py-cffi@1.14.5:", type="run")
 | 
				
			||||||
 | 
					    depends_on("py-natsort@8.2.0:", type="run")
 | 
				
			||||||
 | 
					    depends_on("py-numpy@1.19.5:", type="run")
 | 
				
			||||||
 | 
					    depends_on("py-pandas@1.1.5:", type="run")
 | 
				
			||||||
 | 
					    depends_on("py-tables@3.7.0:", type="run")
 | 
				
			||||||
 | 
					    depends_on("py-psutil@5.8.0:", type="run")
 | 
				
			||||||
 | 
					    depends_on("py-pyyaml@6.0:", type="run")
 | 
				
			||||||
 | 
					    depends_on("py-docutils@0.18:", type="run")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    build_directory = "geopmpy"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def setup_build_environment(self, env):
 | 
				
			||||||
 | 
					        if not self.spec.version.isdevelop():
 | 
				
			||||||
 | 
					            env.set("SETUPTOOLS_SCM_PRETEND_VERSION", self.version)
 | 
				
			||||||
		Reference in New Issue
	
	Block a user