tb-lmto: new package (#47482)
* tb-lmto: adding new package tb-lmto * tb-lmto: update copyright year
This commit is contained in:
parent
278326b4d9
commit
89d2b9553d
66
var/spack/repos/builtin/packages/tb-lmto/package.py
Normal file
66
var/spack/repos/builtin/packages/tb-lmto/package.py
Normal file
@ -0,0 +1,66 @@
|
||||
# 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)
|
||||
|
||||
import os
|
||||
|
||||
from spack.package import *
|
||||
|
||||
|
||||
class TbLmto(MakefilePackage):
|
||||
"""
|
||||
The STUTTGART TB-LMTO program. The linear muffin-tin orbital (LMTO) method has been described in numerous publications.
|
||||
Use of this software is subject to the license at
|
||||
https://www2.fkf.mpg.de/andersen/LMTODOC/node180.html#SECTION000130000000000000000
|
||||
"""
|
||||
|
||||
homepage = "https://www2.fkf.mpg.de/andersen/LMTODOC/LMTODOC.html"
|
||||
manual_download = True
|
||||
|
||||
maintainers("snehring")
|
||||
|
||||
version(
|
||||
"20240601-47.1d", sha256="5b24f2917cef85fe49d3a4ff6403294a44a9cf7c003234a0fd96d626c316bda0"
|
||||
)
|
||||
version(
|
||||
"20240601-47c2.1d",
|
||||
sha256="c80ef9b4aa725ad75ae07b0215671b3674a8f5dced9e87202dd0d486ffe1cb10",
|
||||
)
|
||||
version(
|
||||
"20240601-47u.1d",
|
||||
sha256="bbcc1c57005f33749f8ee6d33be3490071704bce11214544cc4f9c13c28a126e",
|
||||
)
|
||||
|
||||
depends_on("c", type="build")
|
||||
depends_on("fortran", type="build")
|
||||
depends_on("gnuplot", type="run")
|
||||
|
||||
parallel = False
|
||||
|
||||
@property
|
||||
def build_targets(self):
|
||||
# something about the spack wrapper breaks this, it's extremely weird
|
||||
return [
|
||||
f"CC={self.compiler.cc}",
|
||||
f"FC={self.compiler.fc} -finit-local-zero -fallow-argument-mismatch",
|
||||
"all",
|
||||
]
|
||||
|
||||
def url_for_version(self, version):
|
||||
return f"file://{os.getcwd()}/lmto{version.string.split('-')[1]}.tar.gz"
|
||||
|
||||
def edit(self, spec, prefix):
|
||||
makefile = FileFilter("makefile")
|
||||
makefile.filter("LMPATH = .*", "LMPATH = ./")
|
||||
makefile.filter("^FFLAGS =.*", "")
|
||||
makefile.filter("^CCFLAGS =.*", "")
|
||||
makefile.filter("CC=.*", "")
|
||||
makefile.filter("FC=.*", "")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(prefix)
|
||||
install_tree(".", prefix)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path("PATH", self.prefix)
|
Loading…
Reference in New Issue
Block a user