Add packages for scine modules (#34969)
* Add packages for scine modules - lbfgspp (dependency for scine-utilities) - scine-core - scine-utilities and py-scine-utilities (virtual) - scine-readuct and py-scine-readuct (virtual) - scine-sparrow and py-scine-sparrow (virtual) - scine-database and py-scine-database (virtual) - scine-molassembler and py-scine-molassembler (virtual) - scine-xtb and py-scine-xtb (virtual) - py-scine-chemoton - py-scine-puffin * Fix line-length for flake8 * Remove virtual dependencies * Update detection of boost, minor fixes in packages / dependencies * Correctly declare build-only dependencies, add git versions * Add sparrow dummy packages, fix dependencies * Rename latest version from develop to master * Restore original sparrow package * Also rename latest version for chemoton and puffin
This commit is contained in:
parent
d4d200952e
commit
d35c24a3ed
11 changed files with 585 additions and 0 deletions
17
var/spack/repos/builtin/packages/lbfgspp/package.py
Normal file
17
var/spack/repos/builtin/packages/lbfgspp/package.py
Normal file
|
@ -0,0 +1,17 @@
|
|||
# Copyright 2013-2022 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 Lbfgspp(CMakePackage):
|
||||
"""A Header-only C++ Library for L-BFGS and L-BFGS-B Algorithms"""
|
||||
|
||||
homepage = "https://lbfgspp.statr.me/"
|
||||
url = "https://github.com/yixuan/LBFGSpp/archive/refs/tags/v0.2.0.tar.gz"
|
||||
|
||||
version("0.2.0", sha256="7101744a538c3aff52e10c82267305847b0b5e9d39f9974b4b29812cd1398ff9")
|
||||
|
||||
depends_on("eigen @3:")
|
|
@ -0,0 +1,27 @@
|
|||
# Copyright 2013-2022 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 PyScineChemoton(PythonPackage):
|
||||
"""Software driving the automated exploration of chemical reaction networks"""
|
||||
|
||||
homepage = "https://scine.ethz.ch/download/chemoton"
|
||||
pypi = "scine_chemoton/scine_chemoton-2.2.0.tar.gz"
|
||||
git = "https://github.com/qcscine/puffin.git"
|
||||
|
||||
version("master", branch="master")
|
||||
version("2.2.0", "cda4f9de1e1c00ecc5e0b2d9c17a5edb56b468d454022e3f4045ec116ba2ec45")
|
||||
|
||||
depends_on("python@3.6:", type=("build", "run"))
|
||||
depends_on("py-networkx", type=("build", "run"))
|
||||
depends_on("py-numpy", type=("build", "run"))
|
||||
depends_on("py-scipy", type=("build", "run"))
|
||||
depends_on("py-setproctitle", type=("build", "run"))
|
||||
depends_on("py-setuptools", type="build")
|
||||
depends_on("scine-database+python", type=("build", "run"))
|
||||
depends_on("scine-molassembler+python", type=("build", "run"))
|
||||
depends_on("scine-utilities+python", type=("build", "run"))
|
32
var/spack/repos/builtin/packages/py-scine-puffin/package.py
Normal file
32
var/spack/repos/builtin/packages/py-scine-puffin/package.py
Normal file
|
@ -0,0 +1,32 @@
|
|||
# Copyright 2013-2022 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 PyScinePuffin(PythonPackage):
|
||||
"""Calculation handler for SCINE Chemoton"""
|
||||
|
||||
homepage = "https://scine.ethz.ch/download/puffin"
|
||||
pypi = "scine_puffin/scine_puffin-1.1.0.tar.gz"
|
||||
git = "https://github.com/qcscine/puffin.git"
|
||||
|
||||
version("master", branch="master")
|
||||
version("1.1.0", "1a15232b1b472c36349e5534e4fdf9dd90bc554926cb42fba37eee8e60be8c44")
|
||||
|
||||
depends_on("python@3.6:", type=("build", "run"))
|
||||
depends_on("py-gitpython", type=("build", "run"))
|
||||
depends_on("py-numpy", type=("build", "run"))
|
||||
depends_on("py-psutil", type=("build", "run"))
|
||||
depends_on("py-python-daemon", type=("build", "run"))
|
||||
depends_on("py-pyyaml", type=("build", "run"))
|
||||
depends_on("py-scipy", type=("build", "run"))
|
||||
depends_on("py-setproctitle", type=("build", "run"))
|
||||
depends_on("py-setuptools", type="build")
|
||||
# Promoted from optional to explicit dependencies to avoid compiling them on puffin startup
|
||||
depends_on("scine-database+python", type=("build", "run"))
|
||||
depends_on("scine-molassembler+python", type=("build", "run"))
|
||||
depends_on("scine-readuct+python", type=("build", "run"))
|
||||
depends_on("scine-utilities+python", type=("build", "run"))
|
44
var/spack/repos/builtin/packages/scine-core/package.py
Normal file
44
var/spack/repos/builtin/packages/scine-core/package.py
Normal file
|
@ -0,0 +1,44 @@
|
|||
# Copyright 2013-2022 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 ScineCore(CMakePackage):
|
||||
"""Core provides the functionality necessary to couple the individual SCINE modules together"""
|
||||
|
||||
homepage = "https://scine.ethz.ch/"
|
||||
url = "https://github.com/qcscine/core/archive/refs/tags/4.0.2.tar.gz"
|
||||
git = "https://github.com/qcscine/core.git"
|
||||
|
||||
version("master", branch="master")
|
||||
version("4.0.2", "7181c6f93d71def22f1e0e5767afc7587c04b49abc03516f6926394868e7adc6")
|
||||
|
||||
resource(
|
||||
name="dev",
|
||||
url="https://github.com/qcscine/development-utils/archive/refs/tags/5.0.1.tar.gz",
|
||||
sha256="089ca500fc191e04a968ea166d2fe80178b227bc2e6d3926523fa2eee5f6492d",
|
||||
placement="_dev",
|
||||
)
|
||||
|
||||
depends_on("boost+filesystem+program_options cxxstd=17 @1.65.0:")
|
||||
depends_on("googletest", type="build")
|
||||
|
||||
def patch(self):
|
||||
os.rmdir("dev")
|
||||
os.rename("_dev", "dev")
|
||||
|
||||
def cmake_args(self):
|
||||
return [
|
||||
self.define("SCINE_BUILD_TESTS", self.run_tests),
|
||||
self.define("SCINE_MARCH", ""),
|
||||
self.define("BOOST_ROOT", self.spec["boost"].prefix),
|
||||
self.define("BOOST_LIBRARY_DIR", self.spec["boost"].libs.directories[0]),
|
||||
self.define("BOOST_INCLUDE_DIR", self.spec["boost"].headers.directories[0]),
|
||||
self.define("BOOST_NO_SYSTEM_PATHS", True),
|
||||
self.define("Boost_NO_BOOST_CMAKE", True),
|
||||
]
|
59
var/spack/repos/builtin/packages/scine-database/package.py
Normal file
59
var/spack/repos/builtin/packages/scine-database/package.py
Normal file
|
@ -0,0 +1,59 @@
|
|||
# Copyright 2013-2022 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 ScineDatabase(CMakePackage):
|
||||
"""The SCINE database module is a database wrapper for a MongoDB encoding reaction networks."""
|
||||
|
||||
homepage = "https://scine.ethz.ch/"
|
||||
url = "https://github.com/qcscine/database/archive/refs/tags/1.1.0.tar.gz"
|
||||
git = "https://github.com/qcscine/database.git"
|
||||
|
||||
version("master", branch="master")
|
||||
version("1.1.0", "a9144631dfb90e06f6924cf58fc5db13719cf8577fcd3bbf788a135060a70c18")
|
||||
|
||||
resource(
|
||||
name="dev",
|
||||
url="https://github.com/qcscine/development-utils/archive/refs/tags/5.0.1.tar.gz",
|
||||
sha256="089ca500fc191e04a968ea166d2fe80178b227bc2e6d3926523fa2eee5f6492d",
|
||||
placement="_dev",
|
||||
)
|
||||
|
||||
variant("python", default=False, description="Build Python extension module")
|
||||
|
||||
depends_on("eigen@3:")
|
||||
depends_on("googletest", type="build")
|
||||
depends_on("mongo-cxx-driver@3.2.1:")
|
||||
depends_on("python@3.6:", when="+python", type=("build", "run"))
|
||||
depends_on("py-pip", when="+python", type="build")
|
||||
depends_on("py-pybind11", when="+python", type="build")
|
||||
depends_on("scine-utilities@5:")
|
||||
depends_on("scine-utilities+python", when="+python")
|
||||
|
||||
extends("python", when="+python")
|
||||
|
||||
def patch(self):
|
||||
os.rmdir("dev")
|
||||
os.rename("_dev", "dev")
|
||||
|
||||
filter_file(
|
||||
"#include <mongocxx/collection.hpp>",
|
||||
"#include <mongocxx/collection.hpp>\n#include <mongocxx/pipeline.hpp>",
|
||||
"src/Database/Database/Collection.cpp",
|
||||
)
|
||||
|
||||
def cmake_args(self):
|
||||
args = [
|
||||
self.define("SCINE_BUILD_TESTS", self.run_tests),
|
||||
self.define("SCINE_BUILD_PYTHON_BINDINGS", "+python" in self.spec),
|
||||
self.define("SCINE_MARCH", ""),
|
||||
]
|
||||
if "+python" in self.spec:
|
||||
args.append(self.define("PYTHON_EXECUTABLE", self.spec["python"].command.path))
|
||||
return args
|
|
@ -0,0 +1,98 @@
|
|||
# Copyright 2013-2022 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 ScineMolassembler(CMakePackage):
|
||||
"""Chemoinformatics toolkit with support for inorganic molecules."""
|
||||
|
||||
homepage = "https://scine.ethz.ch/download/molassembler"
|
||||
url = "https://github.com/qcscine/molassembler/archive/refs/tags/1.2.1.tar.gz"
|
||||
git = "https://github.com/qcscine/molassembler.git"
|
||||
|
||||
version("master", branch="master")
|
||||
version("1.2.1", "c9fea41d383b7f54cf8a3ed4dabebe9e942fe3ef5b47895e3533e8ce42dacd38")
|
||||
|
||||
resource(
|
||||
name="dev",
|
||||
url="https://github.com/qcscine/development-utils/archive/refs/tags/5.0.1.tar.gz",
|
||||
sha256="089ca500fc191e04a968ea166d2fe80178b227bc2e6d3926523fa2eee5f6492d",
|
||||
placement="_dev",
|
||||
)
|
||||
|
||||
resource(
|
||||
name="nauty-finder",
|
||||
url="https://raw.githubusercontent.com/conda-forge/scine-molassembler-feedstock/0aa909d/recipe/cmake/Findnauty.cmake",
|
||||
sha256="0746e8a1e35687687866e82797ceb848d941a0c232ed5daa63689476b557e18e",
|
||||
destination="cmake",
|
||||
expand=False,
|
||||
)
|
||||
|
||||
# resource(
|
||||
# name="ringdecomposerlib-finder",
|
||||
# url="https://raw.githubusercontent.com/conda-forge/scine-molassembler-feedstock/0aa909d/recipe/cmake/FindRingDecomposerLib.cmake",
|
||||
# sha256="5ecfbccf48a66d8477011aa576181b56d725f1716cca5a268683e586d761a3ec",
|
||||
# destination="cmake",
|
||||
# expand=False,
|
||||
# )
|
||||
|
||||
patch(
|
||||
"https://raw.githubusercontent.com/conda-forge/scine-molassembler-feedstock/0aa909d/recipe/patches/nlohmann_json.patch",
|
||||
level=1,
|
||||
sha256="a9afcc42b264620ee24505c1857b8493c2fb632a1d155362ba4519814922a6af",
|
||||
)
|
||||
|
||||
patch(
|
||||
"https://raw.githubusercontent.com/conda-forge/scine-molassembler-feedstock/0aa909d/recipe/patches/no_cfenv.patch",
|
||||
level=1,
|
||||
sha256="4d746ebd3567d7209200614613861995b999e65e7e26fc0338184fffa0cb3fb7",
|
||||
when="platform=darwin",
|
||||
)
|
||||
|
||||
variant("python", default=False, description="Build Python extension module")
|
||||
|
||||
depends_on("boost+system+filesystem+program_options cxxstd=17 @1.65.0:")
|
||||
depends_on("eigen@3:")
|
||||
depends_on("googletest", type="build")
|
||||
depends_on("nauty")
|
||||
depends_on("nlohmann-json", type="build")
|
||||
depends_on("python@3.6:", when="+python", type=("build", "run"))
|
||||
depends_on("py-pip", when="+python", type="build")
|
||||
depends_on("py-pybind11@2.6.2:", when="+python", type="build")
|
||||
# depends_on("ringdecomposerlib")
|
||||
depends_on("scine-core")
|
||||
depends_on("scine-utilities")
|
||||
depends_on("scine-utilities+python", when="+python", type=("build", "run"))
|
||||
|
||||
extends("python", when="+python")
|
||||
|
||||
def patch(self):
|
||||
os.rmdir("dev")
|
||||
os.rename("_dev", "dev")
|
||||
|
||||
filter_file(
|
||||
"find_package(pybind11 2.6.2 EXACT QUIET)",
|
||||
"find_package(pybind11)",
|
||||
"dev/cmake/ImportPybind11.cmake",
|
||||
)
|
||||
|
||||
def cmake_args(self):
|
||||
args = [
|
||||
self.define("BUILD_SHARED_LIBS", True),
|
||||
self.define("SCINE_BUILD_TESTS", self.run_tests),
|
||||
self.define("SCINE_BUILD_PYTHON_BINDINGS", "+python" in self.spec),
|
||||
self.define("SCINE_MARCH", ""),
|
||||
self.define("BOOST_ROOT", self.spec["boost"].prefix),
|
||||
self.define("BOOST_LIBRARY_DIR", self.spec["boost"].libs.directories[0]),
|
||||
self.define("BOOST_INCLUDE_DIR", self.spec["boost"].headers.directories[0]),
|
||||
self.define("BOOST_NO_SYSTEM_PATHS", True),
|
||||
self.define("Boost_NO_BOOST_CMAKE", True),
|
||||
]
|
||||
if "+python" in self.spec:
|
||||
args.append(self.define("PYTHON_EXECUTABLE", self.spec["python"].command.path))
|
||||
return args
|
67
var/spack/repos/builtin/packages/scine-readuct/package.py
Normal file
67
var/spack/repos/builtin/packages/scine-readuct/package.py
Normal file
|
@ -0,0 +1,67 @@
|
|||
# Copyright 2013-2022 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 ScineReaduct(CMakePackage):
|
||||
"""
|
||||
ReaDuct allows you to carry out structure optimizations, transition state searches
|
||||
and intrinsic reaction coordinate (IRC) calculations among other things
|
||||
"""
|
||||
|
||||
homepage = "https://scine.ethz.ch/download/readuct"
|
||||
url = "https://github.com/qcscine/readuct/archive/refs/tags/4.1.0.tar.gz"
|
||||
|
||||
version("4.1.0", "9cec0192a444403d6a8fd096509798c49fbd1eec298ec7194aba915e31f50782")
|
||||
|
||||
resource(
|
||||
name="dev",
|
||||
url="https://github.com/qcscine/development-utils/archive/refs/tags/5.0.1.tar.gz",
|
||||
sha256="089ca500fc191e04a968ea166d2fe80178b227bc2e6d3926523fa2eee5f6492d",
|
||||
placement="_dev",
|
||||
)
|
||||
|
||||
variant("python", default=False, description="Build Python extension module")
|
||||
|
||||
depends_on("boost+system+filesystem+program_options cxxstd=17 @1.65.0:")
|
||||
depends_on("eigen@3:")
|
||||
depends_on("googletest")
|
||||
depends_on("python@3.6:", when="+python", type=("build", "run"))
|
||||
depends_on("py-pip", when="+python", type="build")
|
||||
depends_on("py-pybind11@2.6.2:", when="+python", type=("build", "run"))
|
||||
depends_on("scine-core")
|
||||
depends_on("scine-utilities")
|
||||
depends_on("scine-utilities+python", when="+python", type=("build", "run"))
|
||||
depends_on("yaml-cpp")
|
||||
|
||||
extends("python", when="+python")
|
||||
|
||||
def patch(self):
|
||||
os.rmdir("dev")
|
||||
os.rename("_dev", "dev")
|
||||
|
||||
filter_file(
|
||||
"find_package(pybind11 2.6.2 EXACT QUIET)",
|
||||
"find_package(pybind11)",
|
||||
"dev/cmake/ImportPybind11.cmake",
|
||||
)
|
||||
|
||||
def cmake_args(self):
|
||||
args = [
|
||||
self.define("SCINE_BUILD_TESTS", self.run_tests),
|
||||
self.define("SCINE_BUILD_PYTHON_BINDINGS", "+python" in self.spec),
|
||||
self.define("SCINE_MARCH", ""),
|
||||
self.define("BOOST_ROOT", self.spec["boost"].prefix),
|
||||
self.define("BOOST_LIBRARY_DIR", self.spec["boost"].libs.directories[0]),
|
||||
self.define("BOOST_INCLUDE_DIR", self.spec["boost"].headers.directories[0]),
|
||||
self.define("BOOST_NO_SYSTEM_PATHS", True),
|
||||
self.define("Boost_NO_BOOST_CMAKE", True),
|
||||
]
|
||||
if "+python" in self.spec:
|
||||
args.append(self.define("PYTHON_EXECUTABLE", self.spec["python"].command.path))
|
||||
return args
|
100
var/spack/repos/builtin/packages/scine-sparrow/package.py
Normal file
100
var/spack/repos/builtin/packages/scine-sparrow/package.py
Normal file
|
@ -0,0 +1,100 @@
|
|||
# Copyright 2013-2022 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 ScineSparrow(CMakePackage):
|
||||
"""Sparrow: fast semiempirical quantum chemical calculations.
|
||||
|
||||
When publishing results obtained with Sparrow, please cite
|
||||
the corresponding release as archived on Zenodo
|
||||
(DOI 10.5281/zenodo.3244105; please use the DOI of the respective
|
||||
release).
|
||||
|
||||
In addition, we kindly request you to cite the following article
|
||||
when using Sparrow:
|
||||
|
||||
T. Husch, A. C. Vaucher, M. Reiher, "Semiempirical molecular orbital
|
||||
models based on the neglect of diatomic differential overlap
|
||||
approximation", Int. J. Quantum Chem., 2018, 118, e25799.
|
||||
"""
|
||||
|
||||
homepage = "https://scine.ethz.ch/download/sparrow"
|
||||
url = "https://github.com/qcscine/sparrow/archive/refs/tags/3.1.0.tar.gz"
|
||||
git = "https://github.com/qcscine/sparrow.git"
|
||||
|
||||
maintainers = ["frobnitzem"]
|
||||
|
||||
version("master", branch="master")
|
||||
version("3.1.0", "91412de0f2670a1735c4ca76406db5bea04236eeac0bc1f93ccfe18104aa7ce4")
|
||||
version("3.0.0", "70636871694c9363ae3fb2df5050bddb22667b71d875d5a7e9afd872f6a2b65d")
|
||||
|
||||
resource(
|
||||
name="dev",
|
||||
url="https://github.com/qcscine/development-utils/archive/refs/tags/5.0.1.tar.gz",
|
||||
sha256="089ca500fc191e04a968ea166d2fe80178b227bc2e6d3926523fa2eee5f6492d",
|
||||
placement="_dev",
|
||||
)
|
||||
|
||||
variant("python", default=False, description="Build Python extension module")
|
||||
|
||||
depends_on("boost+filesystem+program_options cxxstd=17 @1.65.0:")
|
||||
depends_on("cereal")
|
||||
depends_on("eigen@3.3.2:")
|
||||
depends_on("googletest", type="build")
|
||||
depends_on("python@3.6:", when="+python", type=("build", "run"))
|
||||
depends_on("py-pip", when="+python", type="build")
|
||||
depends_on("scine-core")
|
||||
depends_on("scine-utilities")
|
||||
depends_on("scine-utilities+python", when="+python", type=("build", "run"))
|
||||
depends_on("yaml-cpp")
|
||||
|
||||
extends("python", when="+python")
|
||||
|
||||
def patch(self):
|
||||
os.rmdir("dev")
|
||||
os.rename("_dev", "dev")
|
||||
|
||||
if self.spec.satisfies("platform=darwin"):
|
||||
filter_file(
|
||||
r"SparrowApp PROPERTIES OUTPUT_NAME sparrow",
|
||||
'SparrowApp PROPERTIES OUTPUT_NAME sparrow SUFFIX ".exe"',
|
||||
"src/Sparrow/CMakeLists.txt",
|
||||
)
|
||||
|
||||
filter_file(
|
||||
"#include <iostream>",
|
||||
"#include <iostream>\n#include <fstream>",
|
||||
"src/Sparrow/Sparrow/Implementations/Dftb/Utils/SkfParser.cpp",
|
||||
)
|
||||
|
||||
def cmake_args(self):
|
||||
args = [
|
||||
self.define("SCINE_BUILD_TESTS", self.run_tests),
|
||||
self.define("SCINE_BUILD_PYTHON_BINDINGS", "+python" in self.spec),
|
||||
self.define("SCINE_MARCH", ""),
|
||||
self.define("BOOST_ROOT", self.spec["boost"].prefix),
|
||||
self.define("BOOST_LIBRARY_DIR", self.spec["boost"].libs.directories[0]),
|
||||
self.define("BOOST_INCLUDE_DIR", self.spec["boost"].headers.directories[0]),
|
||||
self.define("BOOST_NO_SYSTEM_PATHS", True),
|
||||
self.define("Boost_NO_BOOST_CMAKE", True),
|
||||
]
|
||||
if "+python" in self.spec:
|
||||
args.append(self.define("PYTHON_EXECUTABLE", self.spec["python"].command.path))
|
||||
return args
|
||||
|
||||
# Adapted from ddd in MacPorts: cmake will build the executable
|
||||
# "sparrow" right next to the copy of the source directory "Sparrow".
|
||||
# As HFS+ is case-insensitive by default this will loosely FAIL.
|
||||
# Mitigate this by building/installing 'sparrowexe'
|
||||
# on Darwin and fixing up post install.
|
||||
@run_after("install")
|
||||
def _rename_exe_on_darwin(self):
|
||||
if self.spec.satisfies("platform=darwin"):
|
||||
with working_dir(self.prefix.bin):
|
||||
os.rename("sparrow.exe", "sparrow")
|
81
var/spack/repos/builtin/packages/scine-utilities/package.py
Normal file
81
var/spack/repos/builtin/packages/scine-utilities/package.py
Normal file
|
@ -0,0 +1,81 @@
|
|||
# Copyright 2013-2022 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 ScineUtilities(CMakePackage):
|
||||
"""Contains functionality which is used in most SCINE modules."""
|
||||
|
||||
homepage = "https://scine.ethz.ch"
|
||||
url = "https://github.com/qcscine/utilities/archive/refs/tags/6.0.0.tar.gz"
|
||||
git = "https://github.com/qcscine/utilities.git"
|
||||
|
||||
version("master", branch="master")
|
||||
version("6.0.0", "e4387d5562b7442a8e31e4dfc028bacfeb6d12e39f2d8aa6effc6db380863b4a")
|
||||
version("5.0.0", "a304c89d9a196fe304f38610dea6b066d74590c0d434e4bd09a9796340700465")
|
||||
|
||||
resource(
|
||||
name="dev",
|
||||
url="https://github.com/qcscine/development-utils/archive/refs/tags/5.0.1.tar.gz",
|
||||
sha256="089ca500fc191e04a968ea166d2fe80178b227bc2e6d3926523fa2eee5f6492d",
|
||||
placement="_dev",
|
||||
)
|
||||
|
||||
variant("python", default=False, description="Build Python extension module")
|
||||
|
||||
depends_on("boost+system+filesystem+program_options cxxstd=17 @1.65.0:")
|
||||
depends_on("eigen@3:")
|
||||
depends_on("googletest", type="build")
|
||||
depends_on("lbfgspp", type="build")
|
||||
depends_on("python@3.6:", when="+python", type=("build", "run"))
|
||||
depends_on("py-numpy", when="+python", type=("build", "run"))
|
||||
depends_on("py-pip", when="+python", type="build")
|
||||
depends_on("py-pybind11@2.6.2:", when="+python", type="build")
|
||||
depends_on("py-scipy", when="+python", type=("build", "run"))
|
||||
depends_on("scine-core")
|
||||
depends_on("yaml-cpp")
|
||||
|
||||
extends("python", when="+python")
|
||||
|
||||
def patch(self):
|
||||
os.rmdir("dev")
|
||||
os.rename("_dev", "dev")
|
||||
|
||||
filter_file(
|
||||
"find_package(pybind11 2.6.2 EXACT QUIET)",
|
||||
"find_package(pybind11)",
|
||||
"dev/cmake/ImportPybind11.cmake",
|
||||
)
|
||||
|
||||
filter_file(
|
||||
"#include <regex>",
|
||||
"#include <regex>\n#include <fstream>",
|
||||
"src/Utils/Utils/ExternalQC/Turbomole/TurbomoleHelper.cpp",
|
||||
)
|
||||
|
||||
filter_file(
|
||||
"#include <iostream>",
|
||||
"#include <iostream>\n#include <fstream>",
|
||||
"src/Utils/Utils/IO/TurbomoleMinimalBasisfile.cpp",
|
||||
)
|
||||
|
||||
def cmake_args(self):
|
||||
args = [
|
||||
self.define("SCINE_BUILD_TESTS", self.run_tests),
|
||||
self.define("SCINE_BUILD_PYTHON_BINDINGS", "+python" in self.spec),
|
||||
self.define("SCINE_MARCH", ""),
|
||||
self.define("BOOST_ROOT", self.spec["boost"].prefix),
|
||||
self.define("BOOST_LIBRARY_DIR", self.spec["boost"].libs.directories[0]),
|
||||
self.define("BOOST_INCLUDE_DIR", self.spec["boost"].headers.directories[0]),
|
||||
self.define("BOOST_NO_SYSTEM_PATHS", True),
|
||||
self.define("Boost_NO_BOOST_CMAKE", True),
|
||||
]
|
||||
if "+python" in self.spec:
|
||||
args.append(self.define("PYTHON_EXECUTABLE", self.spec["python"].command.path))
|
||||
|
||||
return args
|
59
var/spack/repos/builtin/packages/scine-xtb/package.py
Normal file
59
var/spack/repos/builtin/packages/scine-xtb/package.py
Normal file
|
@ -0,0 +1,59 @@
|
|||
# Copyright 2013-2022 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 ScineXtb(CMakePackage):
|
||||
"""Wrapper around xtb to export it into the Scine tool chain."""
|
||||
|
||||
homepage = "https://scine.ethz.ch"
|
||||
url = "https://github.com/qcscine/xtb_wrapper/archive/refs/tags/1.0.2.tar.gz"
|
||||
git = "https://github.com/qcscine/xtb_wrapper.git"
|
||||
|
||||
version("master", branch="master")
|
||||
version("1.0.2", "9beb1103467f3cfd9ad33beb2f3ec650bc3e6dc7094876774be3cc4e6f210487")
|
||||
|
||||
resource(
|
||||
name="dev",
|
||||
url="https://github.com/qcscine/development-utils/archive/refs/tags/5.0.1.tar.gz",
|
||||
sha256="089ca500fc191e04a968ea166d2fe80178b227bc2e6d3926523fa2eee5f6492d",
|
||||
placement="_dev",
|
||||
)
|
||||
|
||||
variant("python", default=False, description="Build Python extension module")
|
||||
|
||||
depends_on("boost+system+filesystem+program_options cxxstd=17 @1.65.0:")
|
||||
depends_on("eigen@3:")
|
||||
depends_on("pkgconfig", type="build")
|
||||
depends_on("python@3.6:", when="+python", type=("build", "run"))
|
||||
depends_on("py-pip", when="+python", type="build")
|
||||
depends_on("scine-core")
|
||||
depends_on("scine-utilities")
|
||||
depends_on("scine-utilities+python", when="+python", type=("build", "run"))
|
||||
depends_on("xtb")
|
||||
|
||||
extends("python", when="+python")
|
||||
|
||||
def patch(self):
|
||||
os.rmdir("dev")
|
||||
os.rename("_dev", "dev")
|
||||
|
||||
def cmake_args(self):
|
||||
args = [
|
||||
self.define("SCINE_BUILD_TESTS", self.run_tests),
|
||||
self.define("SCINE_BUILD_PYTHON_BINDINGS", "+python" in self.spec),
|
||||
self.define("SCINE_MARCH", ""),
|
||||
self.define("BOOST_ROOT", self.spec["boost"].prefix),
|
||||
self.define("BOOST_LIBRARY_DIR", self.spec["boost"].libs.directories[0]),
|
||||
self.define("BOOST_INCLUDE_DIR", self.spec["boost"].headers.directories[0]),
|
||||
self.define("BOOST_NO_SYSTEM_PATHS", True),
|
||||
self.define("Boost_NO_BOOST_CMAKE", True),
|
||||
]
|
||||
if "+python" in self.spec:
|
||||
args.append(self.define("PYTHON_EXECUTABLE", self.spec["python"].command.path))
|
||||
return args
|
|
@ -32,6 +32,7 @@ class Sparrow(CMakePackage):
|
|||
version(
|
||||
"3.0.0",
|
||||
sha256="70636871694c9363ae3fb2df5050bddb22667b71d875d5a7e9afd872f6a2b65d",
|
||||
deprecated=True,
|
||||
)
|
||||
|
||||
resource(
|
||||
|
|
Loading…
Reference in a new issue