Compare commits
1 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
3cdf4e7ccf |
@ -140,8 +140,7 @@ def cmake_args(self):
|
||||
if spec.satisfies("+torch"):
|
||||
args.append("-DWITH_TORCH=On")
|
||||
args.append(
|
||||
"-DTorch_DIR={0}/lib/python{1}/site-packages"
|
||||
"/torch/share/cmake/Torch".format(
|
||||
"-DTorch_DIR={0}/lib/python{1}/site-packages/torch/share/cmake/Torch".format(
|
||||
spec["py-torch"].prefix, spec["python"].version.up_to(2)
|
||||
)
|
||||
)
|
||||
|
@ -54,7 +54,7 @@ class Armcomputelibrary(SConsPackage):
|
||||
variant(
|
||||
"multi_isa",
|
||||
default=False,
|
||||
description="Build Multi ISA binary version of library." " Note works only for armv8.2-a.",
|
||||
description="Build Multi ISA binary version of library. Note works only for armv8.2-a.",
|
||||
)
|
||||
variant(
|
||||
"target_arch",
|
||||
|
@ -61,7 +61,7 @@ class Atlas(Package):
|
||||
"tune_cpu",
|
||||
default=-1,
|
||||
multi=False,
|
||||
description="Number of threads to tune to, " "-1 for autodetect, 0 for no threading",
|
||||
description="Number of threads to tune to, -1 for autodetect, 0 for no threading",
|
||||
)
|
||||
|
||||
conflicts(
|
||||
|
@ -8,9 +8,9 @@
|
||||
|
||||
def async_api_validator(pkg_name, variant_name, values):
|
||||
if "none" in values and len(values) != 1:
|
||||
raise SpackError("The value 'none' is not usable" " with other async_api values.")
|
||||
raise SpackError("The value 'none' is not usable with other async_api values.")
|
||||
if "intel_cppr" in values and "cray_dw" in values:
|
||||
raise SpackError("The 'intel_cppr' and 'cray_dw' asynchronous" " APIs are incompatible.")
|
||||
raise SpackError("The 'intel_cppr' and 'cray_dw' asynchronous APIs are incompatible.")
|
||||
|
||||
|
||||
class Axl(CMakePackage):
|
||||
|
@ -376,9 +376,7 @@ def initconfig_hardware_entries(self):
|
||||
if "+fortran" in spec and self.is_fortran_compiler("xlf"):
|
||||
# Grab lib directory for the current fortran compiler
|
||||
libdir = pjoin(os.path.dirname(os.path.dirname(self.compiler.fc)), "lib")
|
||||
description = (
|
||||
"Adds a missing rpath for libraries " "associated with the fortran compiler"
|
||||
)
|
||||
description = "Adds a missing rpath for libraries associated with the fortran compiler"
|
||||
|
||||
linker_flags = "${BLT_EXE_LINKER_FLAGS} -Wl,-rpath," + libdir
|
||||
|
||||
|
@ -42,7 +42,7 @@ class Bcftools(AutotoolsPackage):
|
||||
variant(
|
||||
"libgsl",
|
||||
default=False,
|
||||
description="build options that require the GNU scientific " "library",
|
||||
description="build options that require the GNU scientific library",
|
||||
)
|
||||
|
||||
variant(
|
||||
|
@ -38,7 +38,7 @@ def llnl_link_helpers(options, spec, compiler):
|
||||
options.append(cmake_cache_string("BLT_EXE_LINKER_FLAGS", flags, description))
|
||||
|
||||
if "cce" in compiler.cxx:
|
||||
description = "Adds a missing rpath for libraries " "associated with the fortran compiler"
|
||||
description = "Adds a missing rpath for libraries associated with the fortran compiler"
|
||||
# Here is where to find libs that work for fortran
|
||||
libdir = "/opt/cray/pe/cce/{0}/cce-clang/x86_64/lib".format(compiler.version)
|
||||
linker_flags = "${{BLT_EXE_LINKER_FLAGS}} -Wl,-rpath,{0}".format(libdir)
|
||||
|
@ -40,9 +40,7 @@ class Bohrium(CMakePackage, CudaPackage):
|
||||
variant("node", default=True, description="Build the node vector engine manager")
|
||||
variant("proxy", default=False, description="Build the proxy vector engine manager")
|
||||
variant(
|
||||
"python",
|
||||
default=True,
|
||||
description="Build the numpy-like bridge " "to enable use from python",
|
||||
"python", default=True, description="Build the numpy-like bridge to enable use from python"
|
||||
)
|
||||
variant("cbridge", default=True, description="Build the bridge interface towards plain C")
|
||||
|
||||
|
@ -237,7 +237,7 @@ def libs(self):
|
||||
values=("global", "protected", "hidden"),
|
||||
default="hidden",
|
||||
multi=False,
|
||||
description="Default symbol visibility in compiled libraries " "(1.69.0 or later)",
|
||||
description="Default symbol visibility in compiled libraries (1.69.0 or later)",
|
||||
)
|
||||
|
||||
# Unicode support
|
||||
|
@ -53,7 +53,7 @@ class Bzip2(Package, SourcewarePackage):
|
||||
@classmethod
|
||||
def determine_version(cls, exe):
|
||||
output = Executable(exe)("--help", output=str, error=str)
|
||||
match = re.search(r"bzip2, a block-sorting file compressor." " Version ([^,]+)", output)
|
||||
match = re.search(r"bzip2, a block-sorting file compressor. Version ([^,]+)", output)
|
||||
return match.group(1) if match else None
|
||||
|
||||
# override default implementation
|
||||
|
@ -71,7 +71,7 @@ class Care(CachedCMakePackage, CudaPackage, ROCmPackage):
|
||||
variant(
|
||||
"implicit_conversions",
|
||||
default=False,
|
||||
description="Enable implicit" "conversions to/from raw pointers",
|
||||
description="Enable implicit conversions to/from raw pointers",
|
||||
)
|
||||
variant("tests", default=False, description="Build tests")
|
||||
variant("benchmarks", default=False, description="Build benchmarks.")
|
||||
|
@ -61,7 +61,7 @@ class CcsQcd(MakefilePackage):
|
||||
def edit(self, spec, prefix):
|
||||
if spec.satisfies("%gcc") and spec.satisfies("arch=aarch64:"):
|
||||
chgopt = (
|
||||
"FFLAGS =-O3 -ffixed-line-length-132 -g -fopenmp" " -mcmodel=large -funderscoring"
|
||||
"FFLAGS =-O3 -ffixed-line-length-132 -g -fopenmp -mcmodel=large -funderscoring"
|
||||
)
|
||||
filter_file(
|
||||
"FFLAGS =.*",
|
||||
|
@ -131,7 +131,7 @@ class Cgal(CMakePackage):
|
||||
conflicts(
|
||||
"~header_only",
|
||||
when="@:4.9",
|
||||
msg="Header only builds became optional in 4.9," " default thereafter",
|
||||
msg="Header only builds became optional in 4.9, default thereafter",
|
||||
)
|
||||
|
||||
def url_for_version(self, version):
|
||||
|
@ -351,7 +351,7 @@ def install(self, spec, prefix):
|
||||
# This is a Charm++ limitation; it would lead to a
|
||||
# build error
|
||||
raise InstallError(
|
||||
"The +tcp variant requires " "the backend=netlrts communication mechanism"
|
||||
"The +tcp variant requires the backend=netlrts communication mechanism"
|
||||
)
|
||||
options.append("tcp")
|
||||
if spec.satisfies("+omp"):
|
||||
|
@ -31,11 +31,9 @@ def edit(self, spec, prefix):
|
||||
# Replace -fopenmp with self.compiler.openmp_flag
|
||||
makefile.filter("-fopenmp", self.compiler.openmp_flag)
|
||||
# Replace CXX with CXXFLAGS
|
||||
cxx11_flag = self.compiler.cxx11_flag
|
||||
makefile.filter(
|
||||
"CXX.*=.*",
|
||||
r"CXXFLAGS = -DCNVNATOR_VERSION=\"$(VERSION)\""
|
||||
" $(OMPFLAGS)"
|
||||
" {0}".format(self.compiler.cxx11_flag),
|
||||
"CXX.*=.*", rf"CXXFLAGS = -DCNVNATOR_VERSION=\"$(VERSION)\" $(OMPFLAGS) {cxx11_flag}"
|
||||
)
|
||||
makefile.filter("$(CXX)", "$(CXX) $(CXXFLAGS)", string=True)
|
||||
# Replace -I$(SAMDIR) with -I$(SAMINC)
|
||||
|
@ -78,9 +78,7 @@ def install(self, spec, prefix):
|
||||
# rewrite the Makefile to use Spack's options all the time
|
||||
if spec.satisfies("%gcc"):
|
||||
if not spec.satisfies("%gcc@6:"):
|
||||
raise InstallError(
|
||||
"When using GCC, " "CosmoMC requires version gcc@6: for building"
|
||||
)
|
||||
raise InstallError("When using GCC, CosmoMC requires version gcc@6: for building")
|
||||
choosecomp = "ifortErr=1" # choose gfortran
|
||||
elif spec.satisfies("%intel"):
|
||||
if not spec.satifies("%intel@14:"):
|
||||
|
@ -801,9 +801,10 @@ def edit(self, pkg, spec, prefix):
|
||||
mkf.write("include {0}\n".format(self.pkg["plumed"].plumed_inc))
|
||||
|
||||
mkf.write("\n# COMPILER, LINKER, TOOLS\n\n")
|
||||
mkf.write(
|
||||
"FC = {0}\n" "CC = {1}\n" "CXX = {2}\n" "LD = {3}\n".format(fc, cc, cxx, fc)
|
||||
)
|
||||
mkf.write(f"FC = {fc}\n")
|
||||
mkf.write(f"CC = {cc}\n")
|
||||
mkf.write(f"CXX = {cxx}\n")
|
||||
mkf.write(f"LD = {fc}\n")
|
||||
|
||||
if spec.satisfies("%intel"):
|
||||
intel_bin_dir = ancestor(pkg.compiler.cc)
|
||||
|
@ -153,7 +153,7 @@ class DavSdk(BundlePackage, CudaPackage, ROCmPackage):
|
||||
# ParaView needs @5.11: in order to use CUDA/ROCM, therefore it is the minimum
|
||||
# required version since GPU capability is desired for ECP
|
||||
dav_sdk_depends_on(
|
||||
"paraview@5.11:+mpi+openpmd+python+kits+shared+catalyst+libcatalyst" " use_vtkm=on",
|
||||
"paraview@5.11:+mpi+openpmd+python+kits+shared+catalyst+libcatalyst use_vtkm=on",
|
||||
when="+paraview",
|
||||
propagate=["adios2", "cuda", "hdf5", "rocm"] + amdgpu_target_variants + cuda_arch_variants,
|
||||
)
|
||||
|
@ -418,18 +418,16 @@ class Dealii(CMakePackage, CudaPackage):
|
||||
conflicts(
|
||||
"+adol-c",
|
||||
when="^trilinos+chaco",
|
||||
msg="Symbol clash between the ADOL-C library and " "Trilinos SEACAS Chaco.",
|
||||
msg="Symbol clash between the ADOL-C library and Trilinos SEACAS Chaco.",
|
||||
)
|
||||
conflicts(
|
||||
"+adol-c",
|
||||
when="^trilinos+exodus",
|
||||
msg="Symbol clash between the ADOL-C library and " "Trilinos Netcdf.",
|
||||
msg="Symbol clash between the ADOL-C library and Trilinos Netcdf.",
|
||||
)
|
||||
|
||||
conflicts(
|
||||
"+slepc",
|
||||
when="~petsc",
|
||||
msg="It is not possible to enable slepc interfaces " "without petsc.",
|
||||
"+slepc", when="~petsc", msg="It is not possible to enable slepc interfaces without petsc."
|
||||
)
|
||||
|
||||
def cmake_args(self):
|
||||
|
@ -60,7 +60,7 @@ class Dftbplus(CMakePackage, MakefilePackage):
|
||||
"chimes",
|
||||
default=False,
|
||||
when="@21.2:",
|
||||
description="Whether repulsive corrections" "via the ChIMES library should be enabled.",
|
||||
description="Whether repulsive corrections via the ChIMES library should be enabled.",
|
||||
)
|
||||
variant(
|
||||
"elsi",
|
||||
@ -70,9 +70,7 @@ class Dftbplus(CMakePackage, MakefilePackage):
|
||||
when="+mpi",
|
||||
)
|
||||
variant(
|
||||
"gpu",
|
||||
default=False,
|
||||
description="Use the MAGMA library " "for GPU accelerated computation",
|
||||
"gpu", default=False, description="Use the MAGMA library for GPU accelerated computation"
|
||||
)
|
||||
variant(
|
||||
"mbd",
|
||||
@ -107,7 +105,7 @@ class Dftbplus(CMakePackage, MakefilePackage):
|
||||
variant(
|
||||
"sockets",
|
||||
default=False,
|
||||
description="Whether the socket library " "(external control) should be linked",
|
||||
description="Whether the socket library (external control) should be linked",
|
||||
)
|
||||
variant(
|
||||
"transport",
|
||||
@ -130,7 +128,7 @@ class Dftbplus(CMakePackage, MakefilePackage):
|
||||
"dftd3",
|
||||
default=False,
|
||||
when="@:19.1",
|
||||
description="Use DftD3 dispersion library " "(if you need this dispersion model)",
|
||||
description="Use DftD3 dispersion library (if you need this dispersion model)",
|
||||
)
|
||||
|
||||
depends_on("cmake@3.16:", type="build", when="@20.1:")
|
||||
|
@ -75,8 +75,7 @@ def config_docbook(self):
|
||||
"--noout",
|
||||
"--add",
|
||||
"public",
|
||||
"-//OASIS//ENTITIES DocBook XML Additional General Entities "
|
||||
"V{0}//EN".format(version),
|
||||
f"-//OASIS//ENTITIES DocBook XML Additional General Entities V{version}//EN",
|
||||
f"file://{prefix}/dbgenent.mod",
|
||||
docbook,
|
||||
)
|
||||
@ -116,7 +115,7 @@ def config_docbook(self):
|
||||
"--noout",
|
||||
"--add",
|
||||
"public",
|
||||
"ISO 8879:1986//ENTITIES Added Math Symbols: Arrow " "Relations//EN",
|
||||
"ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN",
|
||||
f"file://{ent_dir}/isoamsa.ent",
|
||||
docbook,
|
||||
)
|
||||
@ -124,7 +123,7 @@ def config_docbook(self):
|
||||
"--noout",
|
||||
"--add",
|
||||
"public",
|
||||
"ISO 8879:1986//ENTITIES Added Math Symbols: Binary " "Operators//EN",
|
||||
"ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN",
|
||||
f"file://{ent_dir}/isoamsb.ent",
|
||||
docbook,
|
||||
)
|
||||
@ -140,7 +139,7 @@ def config_docbook(self):
|
||||
"--noout",
|
||||
"--add",
|
||||
"public",
|
||||
"ISO 8879:1986//ENTITIES Added Math Symbols: " "Negated Relations//EN",
|
||||
"ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN",
|
||||
f"file://{ent_dir}/isoamsn.ent",
|
||||
docbook,
|
||||
)
|
||||
|
@ -56,7 +56,7 @@ class Dyninst(CMakePackage):
|
||||
variant(
|
||||
"openmp",
|
||||
default=True,
|
||||
description="Enable OpenMP support for ParseAPI " "(version 10.0.0 or later)",
|
||||
description="Enable OpenMP support for ParseAPI (version 10.0.0 or later)",
|
||||
)
|
||||
|
||||
variant("static", default=False, description="Build static libraries")
|
||||
|
@ -123,13 +123,13 @@ class Eccodes(CMakePackage):
|
||||
conflicts(
|
||||
"+netcdf",
|
||||
when="~tools",
|
||||
msg="Cannot enable the NetCDF conversion tool " "when the command line tools are disabled",
|
||||
msg="Cannot enable the NetCDF conversion tool when the command line tools are disabled",
|
||||
)
|
||||
|
||||
conflicts(
|
||||
"~tools",
|
||||
when="@:2.18.0",
|
||||
msg="The command line tools can be disabled " "only starting version 2.19.0",
|
||||
msg="The command line tools can be disabled only starting version 2.19.0",
|
||||
)
|
||||
|
||||
for center, definitions in _definitions.items():
|
||||
|
@ -65,7 +65,7 @@ class Eckit(CMakePackage):
|
||||
variant(
|
||||
"unicode",
|
||||
default=True,
|
||||
description="Enable support for Unicode characters in Yaml/JSON" "parsers",
|
||||
description="Enable support for Unicode characters in Yaml/JSON parsers",
|
||||
)
|
||||
variant("aio", default=True, description="Enable asynchronous IO")
|
||||
variant("fismahigh", default=False, description="Apply patching for FISMA-high compliance")
|
||||
|
@ -170,7 +170,7 @@ class EcpDataVisSdk(BundlePackage, CudaPackage, ROCmPackage):
|
||||
# ParaView needs @5.11: in order to use CUDA/ROCM, therefore it is the minimum
|
||||
# required version since GPU capability is desired for ECP
|
||||
dav_sdk_depends_on(
|
||||
"paraview@5.11:+mpi+openpmd+python+kits+shared+catalyst+libcatalyst" " use_vtkm=on",
|
||||
"paraview@5.11:+mpi+openpmd+python+kits+shared+catalyst+libcatalyst use_vtkm=on",
|
||||
when="+paraview",
|
||||
propagate=["adios2", "cuda", "hdf5", "rocm"] + amdgpu_target_variants + cuda_arch_variants,
|
||||
)
|
||||
|
@ -39,7 +39,7 @@ class Elemental(CMakePackage):
|
||||
variant(
|
||||
"int64_blas",
|
||||
default=False,
|
||||
description="Use 64bit integers for BLAS." " Requires local build of BLAS library.",
|
||||
description="Use 64bit integers for BLAS. Requires local build of BLAS library.",
|
||||
)
|
||||
variant("scalapack", default=False, description="Build with ScaLAPACK library")
|
||||
variant(
|
||||
@ -57,7 +57,7 @@ class Elemental(CMakePackage):
|
||||
variant(
|
||||
"mpfr",
|
||||
default=False,
|
||||
description="Support GNU MPFR's" "arbitrary-precision floating-point arithmetic",
|
||||
description="Support GNU MPFR's arbitrary-precision floating-point arithmetic",
|
||||
)
|
||||
|
||||
# Note that #1712 forces us to enumerate the different blas variants
|
||||
|
@ -48,7 +48,7 @@ def patch(self):
|
||||
)
|
||||
edit = FileFilter("CMakeLists.txt")
|
||||
edit.filter(
|
||||
r"\${CMAKE_CURRENT_SOURCE_DIR}/../bamtools/lib/" "libbamtools.a",
|
||||
r"\${CMAKE_CURRENT_SOURCE_DIR}/../bamtools/lib/libbamtools.a",
|
||||
"%s" % self.spec["bamtools"].libs,
|
||||
)
|
||||
|
||||
|
@ -31,12 +31,12 @@ class Flamemaster(CMakePackage):
|
||||
variant(
|
||||
"bilin_omega",
|
||||
default=True,
|
||||
description="Compile with bilinear interpolation" "for collision integrals (omega)",
|
||||
description="Compile with bilinear interpolation for collision integrals (omega)",
|
||||
)
|
||||
variant(
|
||||
"combustion",
|
||||
default=False,
|
||||
description="Integrate comustion libraries" "for kinetics, thermodynamics, and transport",
|
||||
description="Integrate comustion libraries for kinetics, thermodynamics, and transport",
|
||||
)
|
||||
variant(
|
||||
"fortran_code",
|
||||
@ -109,7 +109,7 @@ class Flamemaster(CMakePackage):
|
||||
variant(
|
||||
"tests",
|
||||
default=False,
|
||||
description="Install google-test framework for unit tests" "and enable units tests.",
|
||||
description="Install google-test framework for unit tests and enable units tests.",
|
||||
)
|
||||
variant(
|
||||
"third_party_in_build_dir",
|
||||
|
@ -63,7 +63,7 @@ class Flexi(CMakePackage):
|
||||
"parabolic",
|
||||
default=True,
|
||||
description=(
|
||||
"Defines whether the parabolic part of the chosen system " "should be included or not"
|
||||
"Defines whether the parabolic part of the chosen system should be included or not"
|
||||
),
|
||||
)
|
||||
variant(
|
||||
|
@ -66,7 +66,7 @@ class Fortrilinos(CMakePackage):
|
||||
depends_on("trilinos gotype=long_long")
|
||||
# Full trilinos dependencies
|
||||
depends_on(
|
||||
"trilinos+amesos2+anasazi+belos+kokkos+ifpack2+muelu+nox+tpetra" "+stratimikos", when="+hl"
|
||||
"trilinos+amesos2+anasazi+belos+kokkos+ifpack2+muelu+nox+tpetra+stratimikos", when="+hl"
|
||||
)
|
||||
|
||||
@run_before("cmake")
|
||||
|
@ -35,9 +35,7 @@ class Freeipmi(AutotoolsPackage):
|
||||
def configure_args(self):
|
||||
# FIXME: If root checking of root installation is added fix this:
|
||||
# Discussed in issue #4432
|
||||
tty.warn(
|
||||
"Requires 'root' for bmc-watchdog.service installation to" " /lib/systemd/system/ !"
|
||||
)
|
||||
tty.warn("Requires 'root' for bmc-watchdog.service installation to /lib/systemd/system/ !")
|
||||
|
||||
args = [
|
||||
"--prefix={0}".format(prefix),
|
||||
|
@ -599,9 +599,7 @@ def determine_variants(cls, exes, version_str):
|
||||
@classmethod
|
||||
def validate_detected_spec(cls, spec, extra_attributes):
|
||||
# For GCC 'compilers' is a mandatory attribute
|
||||
msg = 'the extra attribute "compilers" must be set for ' 'the detected spec "{0}"'.format(
|
||||
spec
|
||||
)
|
||||
msg = f"the extra attribute 'compilers' must be set for the detected spec '{spec}'"
|
||||
assert "compilers" in extra_attributes, msg
|
||||
|
||||
compilers = extra_attributes["compilers"]
|
||||
@ -1090,8 +1088,7 @@ def detect_gdc(self):
|
||||
return candidate_gdc
|
||||
else:
|
||||
raise InstallError(
|
||||
"Cannot resolve ambiguity when detecting GDC that belongs to "
|
||||
"%{0}".format(self.compiler.spec),
|
||||
f"Can't resolve ambiguity when detecting GDC for %{self.compiler.spec}",
|
||||
long_msg="The candidates are:{0}{0}{1}{0}".format(
|
||||
error_nl,
|
||||
error_nl.join(
|
||||
|
@ -12,7 +12,7 @@ class GhostscriptFonts(Package, SourceforgePackage):
|
||||
|
||||
homepage = "https://ghostscript.com/"
|
||||
sourceforge_mirror_path = (
|
||||
"gs-fonts/gs-fonts/8.11%20%28base%2035%2C%20GPL%29/" "ghostscript-fonts-std-8.11.tar.gz"
|
||||
"gs-fonts/gs-fonts/8.11%20%28base%2035%2C%20GPL%29/ghostscript-fonts-std-8.11.tar.gz"
|
||||
)
|
||||
|
||||
license("GPL-2.0-or-later")
|
||||
|
@ -55,7 +55,7 @@ class Graphviz(AutotoolsPackage):
|
||||
variant(
|
||||
lang,
|
||||
default=False,
|
||||
description="Enable for optional {0} language " "bindings".format(lang),
|
||||
description="Enable for optional {0} language bindings".format(lang),
|
||||
)
|
||||
|
||||
# Feature variants
|
||||
@ -147,7 +147,7 @@ class Graphviz(AutotoolsPackage):
|
||||
conflicts(
|
||||
"%gcc@:5.9",
|
||||
when="@2.40.1+qt ^qt@5:",
|
||||
msg="graphviz-2.40.1 needs gcc-6 or greater to compile with QT5 " "suppport",
|
||||
msg="graphviz-2.40.1 needs gcc-6 or greater to compile with QT5 suppport",
|
||||
)
|
||||
|
||||
def autoreconf(self, spec, prefix):
|
||||
|
@ -53,7 +53,7 @@ class Grpc(CMakePackage):
|
||||
variant(
|
||||
"codegen",
|
||||
default=True,
|
||||
description="Builds code generation plugins for protobuf " "compiler (protoc)",
|
||||
description="Builds code generation plugins for protobuf compiler (protoc)",
|
||||
)
|
||||
variant(
|
||||
"cxxstd",
|
||||
|
@ -602,7 +602,7 @@ def ensure_parallel_compiler_wrappers(self):
|
||||
# 1.10.6 and 1.12.0. The current develop versions do not produce 'h5pfc'
|
||||
# at all. Here, we make sure that 'h5pfc' is available when Fortran and
|
||||
# MPI support are enabled (only for versions that generate 'h5fc').
|
||||
if self.spec.satisfies("@1.8.22:1.8," "1.10.6:1.10.9," "1.12.0:1.12.2" "+fortran+mpi"):
|
||||
if self.spec.satisfies("@1.8.22:1.8, 1.10.6:1.10.9, 1.12.0:1.12.2 +fortran+mpi"):
|
||||
with working_dir(self.prefix.bin):
|
||||
# No try/except here, fix the condition above instead:
|
||||
symlink("h5fc", "h5pfc")
|
||||
|
@ -26,7 +26,7 @@ class Hicops(CMakePackage):
|
||||
variant(
|
||||
"timemory",
|
||||
default=False,
|
||||
description="Enable timemory interface. Requires timemory " "installation.",
|
||||
description="Enable timemory interface. Requires timemory installation.",
|
||||
)
|
||||
variant(
|
||||
"mpip",
|
||||
@ -37,7 +37,7 @@ class Hicops(CMakePackage):
|
||||
variant(
|
||||
"tailfit",
|
||||
default=True,
|
||||
description="Use the tailfit method instead of Gumbelfit " "for e-value computation.",
|
||||
description="Use the tailfit method instead of Gumbelfit for e-value computation.",
|
||||
)
|
||||
variant("progress", default=True, description="Display HiCOPS progress marks.")
|
||||
variant(
|
||||
@ -50,14 +50,14 @@ class Hicops(CMakePackage):
|
||||
variant(
|
||||
"qalen",
|
||||
default="100",
|
||||
description="Maximum number of top K peaks to keep when " "spectrum preprocess.",
|
||||
description="Maximum number of top K peaks to keep when spectrum preprocess.",
|
||||
values=int,
|
||||
multi=False,
|
||||
)
|
||||
variant(
|
||||
"qchunk",
|
||||
default="10000",
|
||||
description="Max size of each batch extracted from the " "dataset.",
|
||||
description="Max size of each batch extracted from the dataset.",
|
||||
values=int,
|
||||
multi=False,
|
||||
)
|
||||
|
@ -85,7 +85,7 @@ class Hiop(CMakePackage, CudaPackage, ROCmPackage):
|
||||
variant(
|
||||
"deepchecking",
|
||||
default=False,
|
||||
description="Ultra safety checks - " "used for increased robustness and self-diagnostics",
|
||||
description="Ultra safety checks - used for increased robustness and self-diagnostics",
|
||||
)
|
||||
variant("ginkgo", default=False, description="Enable/disable ginkgo solver")
|
||||
variant(
|
||||
|
@ -181,7 +181,8 @@ def configure_args(self):
|
||||
"--with-openjdk-checksum=no",
|
||||
"--with-nashorn-src-zip=" + self.stage[8].archive_file,
|
||||
"--with-nashorn-checksum=no",
|
||||
"--disable-maintainer-mode" "--disable-downloading",
|
||||
"--disable-maintainer-mode",
|
||||
"--disable-downloading",
|
||||
"--disable-system-pcsc",
|
||||
"--disable-system-sctp",
|
||||
"--disable-system-kerberos",
|
||||
|
@ -38,7 +38,7 @@ class JsonC(CMakePackage, AutotoolsPackage):
|
||||
def patch(self):
|
||||
filter_file(
|
||||
"-Wextra",
|
||||
"-Wextra -Wno-error=implicit-fallthrough " "-Wno-error=unused-but-set-variable",
|
||||
"-Wextra -Wno-error=implicit-fallthrough -Wno-error=unused-but-set-variable",
|
||||
"Makefile.in",
|
||||
)
|
||||
|
||||
|
@ -68,7 +68,7 @@ class Jsoncpp(CMakePackage, MesonPackage):
|
||||
def patch(self):
|
||||
filter_file(
|
||||
"return d >= min && d <= max;",
|
||||
"return d >= static_cast<double>(min) && " "d <= static_cast<double>(max);",
|
||||
"return d >= static_cast<double>(min) && d <= static_cast<double>(max);",
|
||||
"src/lib_json/json_value.cpp",
|
||||
)
|
||||
|
||||
|
@ -45,7 +45,7 @@ class Libcint(CMakePackage):
|
||||
variant(
|
||||
"pypzpx",
|
||||
default=False,
|
||||
description="Enforce PYPZPX ordering of p-orbitals " "instead of PXPYPZ.",
|
||||
description="Enforce PYPZPX ordering of p-orbitals instead of PXPYPZ.",
|
||||
)
|
||||
variant("test", default=False, description="Build test programs")
|
||||
variant("shared", default=True, description="Build the shared library")
|
||||
|
@ -59,7 +59,7 @@ class Libint(AutotoolsPackage):
|
||||
"fma",
|
||||
default=False,
|
||||
description=(
|
||||
"Generate code utilizing FMA" " (requires capable CPU and recent enough compiler)"
|
||||
"Generate code utilizing FMA (requires capable CPU and recent enough compiler)"
|
||||
),
|
||||
)
|
||||
|
||||
|
@ -73,9 +73,7 @@ class Libunwind(AutotoolsPackage):
|
||||
variant("xz", default=False, description="Support xz (lzma) compressed symbol tables.")
|
||||
|
||||
variant(
|
||||
"zlib",
|
||||
default=False,
|
||||
description="Support zlib compressed symbol tables " "(1.5 and later).",
|
||||
"zlib", default=False, description="Support zlib compressed symbol tables (1.5 and later)."
|
||||
)
|
||||
|
||||
# The libunwind releases contain the autotools generated files,
|
||||
|
@ -55,7 +55,7 @@ class LlvmDoe(CMakePackage, CudaPackage):
|
||||
variant(
|
||||
"polly",
|
||||
default=True,
|
||||
description="Build the LLVM polyhedral optimization plugin, " "only builds for 3.7.0+",
|
||||
description="Build the LLVM polyhedral optimization plugin, only builds for 3.7.0+",
|
||||
)
|
||||
variant("libcxx", default=True, description="Build the LLVM C++ standard library")
|
||||
variant(
|
||||
@ -288,9 +288,7 @@ def determine_variants(cls, exes, version_str):
|
||||
@classmethod
|
||||
def validate_detected_spec(cls, spec, extra_attributes):
|
||||
# For LLVM 'compilers' is a mandatory attribute
|
||||
msg = 'the extra attribute "compilers" must be set for ' 'the detected spec "{0}"'.format(
|
||||
spec
|
||||
)
|
||||
msg = f"the extra attribute 'compilers' must be set for the detected spec '{spec}'"
|
||||
assert "compilers" in extra_attributes, msg
|
||||
compilers = extra_attributes["compilers"]
|
||||
for key in ("c", "cxx"):
|
||||
|
@ -724,9 +724,7 @@ def determine_variants(cls, exes, version_str):
|
||||
@classmethod
|
||||
def validate_detected_spec(cls, spec, extra_attributes):
|
||||
# For LLVM 'compilers' is a mandatory attribute
|
||||
msg = 'the extra attribute "compilers" must be set for ' 'the detected spec "{0}"'.format(
|
||||
spec
|
||||
)
|
||||
msg = f"the extra attribute 'compilers' must be set for the detected spec '{spec}'"
|
||||
assert "compilers" in extra_attributes, msg
|
||||
compilers = extra_attributes["compilers"]
|
||||
for key in ("c", "cxx"):
|
||||
|
@ -41,7 +41,7 @@ class Mariadb(CMakePackage):
|
||||
variant(
|
||||
"nonblocking",
|
||||
default=True,
|
||||
description="Allow non blocking " "operations in the mariadb client library.",
|
||||
description="Allow non blocking operations in the mariadb client library.",
|
||||
)
|
||||
|
||||
provides("mariadb-client")
|
||||
|
@ -56,7 +56,7 @@ def patch(self):
|
||||
# workaround anonymous version tag linker error for the NVIDIA
|
||||
# compilers
|
||||
filter_file(
|
||||
"${wl}-version-script " "${wl}$output_objdir/$libname.ver",
|
||||
"${wl}-version-script ${wl}$output_objdir/$libname.ver",
|
||||
"",
|
||||
"configure",
|
||||
string=True,
|
||||
|
@ -83,7 +83,7 @@ class Mvapich2(MpichEnvironmentModifications, AutotoolsPackage):
|
||||
description="List of the process managers to activate",
|
||||
values=disjoint_sets(("auto",), ("slurm",), ("hydra", "gforker", "remshell"))
|
||||
.prohibit_empty_set()
|
||||
.with_error("'slurm' or 'auto' cannot be activated along with " "other process managers")
|
||||
.with_error("'slurm' or 'auto' cannot be activated along with other process managers")
|
||||
.with_default("auto")
|
||||
.with_non_feature_values("auto"),
|
||||
)
|
||||
|
@ -182,7 +182,7 @@ def construct_ldflags(self):
|
||||
spec = self.spec
|
||||
xpmem_ldflags = ""
|
||||
if "feature=basic-xpmem" in spec or "feature=advanced-xpmem" in spec:
|
||||
xpmem_ldflags = " -Wl,-rpath,/opt/xpmem/lib " "-L/opt/xpmem/lib -lxpmem"
|
||||
xpmem_ldflags = " -Wl,-rpath,/opt/xpmem/lib -L/opt/xpmem/lib -lxpmem"
|
||||
|
||||
# Add default LDFLAGS and combine together
|
||||
LDFLAGS = "LDFLAGS=-Wl,-rpath,XORIGIN/placeholder"
|
||||
|
@ -241,7 +241,7 @@ def _edit_arch_target_based(self, spec, prefix):
|
||||
tty.info("Building binaries with AVX512-tile optimization")
|
||||
copy("Linux-AVX512-icc.arch", arch_filename)
|
||||
elif spec.version >= Version("2.14") and os.path.exists("Linux-SKX-icc.arch"):
|
||||
tty.info("Building binaries with Skylake-X" "AVX512 optimization")
|
||||
tty.info("Building binaries with Skylake-X AVX512 optimization")
|
||||
copy("Linux-SKX-icc.arch", arch_filename)
|
||||
else:
|
||||
return False
|
||||
|
@ -81,7 +81,7 @@ def patch(self):
|
||||
if self.spec.satisfies("@:22_0_0 ^boost@1.70:"):
|
||||
with working_dir(join_path("include", "corelib")):
|
||||
filter_file(
|
||||
("unit_test::ut_detail::" "ignore_unused_variable_warning"),
|
||||
("unit_test::ut_detail::ignore_unused_variable_warning"),
|
||||
"ignore_unused",
|
||||
"test_boost.hpp",
|
||||
string=True,
|
||||
|
@ -162,7 +162,7 @@ def patch(self):
|
||||
|
||||
def install(self, spec, prefix):
|
||||
if (self.compiler.fc is None) or (self.compiler.cc is None):
|
||||
raise InstallError("NCL package requires both " "C and Fortran compilers.")
|
||||
raise InstallError("NCL package requires both C and Fortran compilers.")
|
||||
|
||||
self.prepare_site_config()
|
||||
self.prepare_install_config()
|
||||
|
@ -151,9 +151,7 @@ def install(self, spec, prefix):
|
||||
filter_file(r"\$\(OLAGS\)", "-qextname $(OLAGS)", join_path("postnek", "makefile"))
|
||||
# Define 'rename_' function that calls 'rename'
|
||||
with open(join_path("postnek", "xdriver.c"), "a") as xdriver:
|
||||
xdriver.write(
|
||||
"\nvoid rename_(char *from, char *to)\n{\n" " rename(from, to);\n}\n"
|
||||
)
|
||||
xdriver.write("\nvoid rename_(char *from, char *to)\n{\n rename(from, to);\n}\n")
|
||||
|
||||
maxnel = self.spec.variants["MAXNEL"].value
|
||||
filter_file(r"^#MAXNEL\s*=.*", "MAXNEL=" + maxnel, "maketools")
|
||||
|
@ -53,7 +53,7 @@ class Ngspice(AutotoolsPackage):
|
||||
variant(
|
||||
"debug",
|
||||
default="auto",
|
||||
description="Enable debugging features: " "auto is yes for build=lib, no for build=bin",
|
||||
description="Enable debugging features: auto is yes for build=lib, no for build=bin",
|
||||
values=("auto", "yes", "no"),
|
||||
multi=False,
|
||||
)
|
||||
|
@ -360,8 +360,8 @@ def test_recipe(self):
|
||||
expected = [
|
||||
"Running octopus",
|
||||
"CalculationMode = recipe",
|
||||
"DISCLAIMER: The authors do not " "guarantee that the implementation",
|
||||
"recipe leads to an edible dish, " 'for it is clearly "system-dependent".',
|
||||
"DISCLAIMER: The authors do not guarantee that the implementation",
|
||||
'recipe leads to an edible dish, for it is clearly "system-dependent".',
|
||||
"Calculation ended on",
|
||||
]
|
||||
|
||||
|
@ -473,7 +473,7 @@ class Openmpi(AutotoolsPackage, CudaPackage):
|
||||
values=disjoint_sets(
|
||||
("auto",), FABRICS # shared memory transports
|
||||
).with_non_feature_values("auto", "none"),
|
||||
description="List of fabrics that are enabled; " "'auto' lets openmpi determine",
|
||||
description="List of fabrics that are enabled; 'auto' lets openmpi determine",
|
||||
)
|
||||
|
||||
SCHEDULERS = ("alps", "lsf", "tm", "slurm", "sge", "loadleveler")
|
||||
@ -694,7 +694,7 @@ def patch(self):
|
||||
conflicts(
|
||||
"schedulers=loadleveler",
|
||||
when="@3:",
|
||||
msg="The loadleveler scheduler is not supported with " "openmpi(>=3).",
|
||||
msg="The loadleveler scheduler is not supported with openmpi(>=3).",
|
||||
)
|
||||
|
||||
# According to this comment on github:
|
||||
|
@ -29,17 +29,17 @@ class P3dfft3(AutotoolsPackage):
|
||||
variant(
|
||||
"measure",
|
||||
default=False,
|
||||
description="Define if you want to use" "the measure fftw planner flag",
|
||||
description="Define if you want to use the measure fftw planner flag",
|
||||
)
|
||||
variant(
|
||||
"estimate",
|
||||
default=False,
|
||||
description="Define if you want to" "use the estimate fftw planner flag",
|
||||
description="Define if you want to use the estimate fftw planner flag",
|
||||
)
|
||||
variant(
|
||||
"patient",
|
||||
default=False,
|
||||
description="Define if you want to" "use the patient fftw planner flag",
|
||||
description="Define if you want to use the patient fftw planner flag",
|
||||
)
|
||||
|
||||
# TODO: Add more configure options!
|
||||
|
@ -26,7 +26,7 @@ class Paradiseo(CMakePackage):
|
||||
variant(
|
||||
"mpi",
|
||||
default=True,
|
||||
description="Compile with parallel and distributed " "metaheuristics module",
|
||||
description="Compile with parallel and distributed metaheuristics module",
|
||||
)
|
||||
variant("smp", default=True, description="Compile with symmetric multi-processing module ")
|
||||
variant("edo", default=True, description="Compile with (Experimental) EDO module")
|
||||
|
@ -41,7 +41,7 @@ class Pcre(AutotoolsPackage, CMakePackage):
|
||||
variant(
|
||||
"utf",
|
||||
default=True,
|
||||
description="Enable support for UTF-8/16/32, " "incompatible with EBCDIC.",
|
||||
description="Enable support for UTF-8/16/32, incompatible with EBCDIC.",
|
||||
)
|
||||
|
||||
variant("shared", default=True, description="Build shared libraries")
|
||||
|
@ -138,7 +138,7 @@ class Phist(CMakePackage):
|
||||
variant(
|
||||
"fortran",
|
||||
default=True,
|
||||
description="generate Fortran 2003 bindings (requires Python3 and " "a Fortran compiler)",
|
||||
description="generate Fortran 2003 bindings (requires Python3 and a Fortran compiler)",
|
||||
)
|
||||
|
||||
# Build error with LLVM and recent Trilinos, fixed in phist-1.12.1
|
||||
|
@ -75,7 +75,7 @@ def build_targets(self):
|
||||
|
||||
if "%gcc" in self.spec:
|
||||
targets.append(
|
||||
"FARGS=-g -fbounds-check -O3 -fopenmp " "-JModules -fallow-argument-mismatch"
|
||||
"FARGS=-g -fbounds-check -O3 -fopenmp -JModules -fallow-argument-mismatch"
|
||||
)
|
||||
|
||||
return targets
|
||||
|
@ -34,7 +34,7 @@ class Pism(CMakePackage):
|
||||
variant(
|
||||
"proj",
|
||||
default=True,
|
||||
description="Use Proj to compute cell areas, " "longitudes, and latitudes.",
|
||||
description="Use Proj to compute cell areas, longitudes, and latitudes.",
|
||||
)
|
||||
variant("parallel-netcdf4", default=False, description="Enables parallel NetCDF-4 I/O.")
|
||||
variant(
|
||||
|
@ -38,7 +38,7 @@ def check_fortran(self):
|
||||
if self.spec.satisfies("+fortran"):
|
||||
if is_no_fortran_compiler:
|
||||
raise InstallError(
|
||||
"pnmpi+fortran requires Fortran compiler " "but no Fortran compiler found!"
|
||||
"pnmpi+fortran requires Fortran compiler but no Fortran compiler found!"
|
||||
)
|
||||
|
||||
def cmake_args(self):
|
||||
|
@ -29,7 +29,7 @@ class Postgis(AutotoolsPackage):
|
||||
"gui",
|
||||
default=False,
|
||||
description=(
|
||||
"Build with GUI support, creating shp2pgsql-gui graphical interface " "to shp2pgsql"
|
||||
"Build with GUI support, creating shp2pgsql-gui graphical interface to shp2pgsql"
|
||||
),
|
||||
)
|
||||
|
||||
|
@ -44,7 +44,7 @@ class Povray(AutotoolsPackage):
|
||||
variant(
|
||||
"io-restrictions",
|
||||
default=True,
|
||||
description="Enable POV-Rays mechanism for control of I/O " "operations",
|
||||
description="Enable POV-Rays mechanism for control of I/O operations",
|
||||
)
|
||||
variant("jpeg", default=True, description="Build with jpeg support")
|
||||
variant("libpng", default=True, description="Build with libpng support")
|
||||
|
@ -27,7 +27,7 @@ class PyCharm4py(PythonPackage):
|
||||
variant(
|
||||
"mpi",
|
||||
default=True,
|
||||
description="build Charm++ library with the MPI instead of TCP" " communication layer",
|
||||
description="build Charm++ library with the MPI instead of TCP communication layer",
|
||||
)
|
||||
|
||||
# Builds its own charm++, so no charmpp dependency
|
||||
|
@ -51,15 +51,13 @@ class PyUproot(PythonPackage):
|
||||
|
||||
variant("xrootd", default=True, description="Build with xrootd support ")
|
||||
variant(
|
||||
"lz4",
|
||||
default=True,
|
||||
description="Build with support for reading " "lz4-compressed rootfiles ",
|
||||
"lz4", default=True, description="Build with support for reading lz4-compressed rootfiles "
|
||||
)
|
||||
|
||||
variant(
|
||||
"zstd",
|
||||
default=True,
|
||||
description="Build with support for reading " "zstd-compressed rootfiles ",
|
||||
description="Build with support for reading zstd-compressed rootfiles ",
|
||||
)
|
||||
|
||||
depends_on("python@2.6:2,3.5:", type=("build", "run"))
|
||||
|
@ -132,15 +132,13 @@ class Qmcpack(CMakePackage, CudaPackage):
|
||||
conflicts("%gcc@:8", when="@3.15.0:")
|
||||
|
||||
# QMCPACK 3.10.0 increased the minimum requirements for compiler versions
|
||||
newer_compiler_warning = (
|
||||
"QMCPACK v3.10.0 or later requires a newer " "version of this compiler"
|
||||
)
|
||||
newer_compiler_warning = "QMCPACK v3.10.0 or later requires a newer version of this compiler"
|
||||
conflicts("%gcc@:6", when="@3.10.0:", msg=newer_compiler_warning)
|
||||
conflicts("%intel@:18", when="@3.10.0:", msg=newer_compiler_warning)
|
||||
conflicts("%clang@:6", when="@3.10.0:", msg=newer_compiler_warning)
|
||||
|
||||
# QMCPACK 3.6.0 or later requires support for C++14
|
||||
cpp14_warning = "QMCPACK v3.6.0 or later requires a " "compiler with support for C++14"
|
||||
cpp14_warning = "QMCPACK v3.6.0 or later requires a compiler with support for C++14"
|
||||
conflicts("%gcc@:4", when="@3.6.0:", msg=cpp14_warning)
|
||||
conflicts("%intel@:17", when="@3.6.0:", msg=cpp14_warning)
|
||||
conflicts("%clang@:3.4", when="@3.6.0:", msg=cpp14_warning)
|
||||
@ -330,7 +328,7 @@ def cmake_args(self):
|
||||
cuda_arch = cuda_arch_list[0]
|
||||
if len(cuda_arch_list) > 1:
|
||||
raise InstallError(
|
||||
"QMCPACK only supports compilation for a single " "GPU architecture at a time"
|
||||
"QMCPACK only supports compilation for a single GPU architecture at a time"
|
||||
)
|
||||
if "@3.14.0:" in self.spec:
|
||||
args.append("-DCMAKE_CUDA_ARCHITECTURES={0}".format(cuda_arch))
|
||||
|
@ -191,7 +191,7 @@ class QuantumEspresso(CMakePackage, Package):
|
||||
)
|
||||
conflicts(
|
||||
"@6.3:6.4.0 hdf5=serial",
|
||||
msg="QE-to-QMCPACK wave function converter only " "supported with parallel HDF5",
|
||||
msg="QE-to-QMCPACK wave function converter only supported with parallel HDF5",
|
||||
)
|
||||
conflicts("@:7.0 hdf5=none", msg="QE-to-QMCPACK wave function converter requires HDF5")
|
||||
# QE > 7.0, the converter for QMCPACK can be built without hdf5 enabled in QE.
|
||||
|
@ -27,7 +27,7 @@ class R3d(CMakePackage):
|
||||
"r3d_max_verts",
|
||||
default="0",
|
||||
description=(
|
||||
"Maximum number of vertices allowed in a polyhedron " "(versions 2021-03-10 or later)"
|
||||
"Maximum number of vertices allowed in a polyhedron (versions 2021-03-10 or later)"
|
||||
),
|
||||
)
|
||||
|
||||
|
@ -52,7 +52,7 @@ class Regcm(AutotoolsPackage):
|
||||
variant(
|
||||
"pnetcdf",
|
||||
default=False,
|
||||
description="Build NetCDF using the high performance parallel " "NetCDF implementation.",
|
||||
description="Build NetCDF using the high performance parallel NetCDF implementation.",
|
||||
)
|
||||
|
||||
depends_on("netcdf-c")
|
||||
@ -110,13 +110,13 @@ def configure_args(self):
|
||||
# compiler from GCC and Intel, which are the only compiler
|
||||
# supported by RegCM 4.7.x.
|
||||
raise InstallError(
|
||||
"Architecture optimizations are available " "only for GCC and Intel compilers."
|
||||
"Architecture optimizations are available only for GCC and Intel compilers."
|
||||
)
|
||||
|
||||
if len(optimizations) > 1 and self.spec.satisfies(r"%gcc"):
|
||||
# https://github.com/spack/spack/issues/974
|
||||
raise InstallError(
|
||||
"The GCC compiler does not support " "multiple architecture optimizations."
|
||||
"The GCC compiler does not support multiple architecture optimizations."
|
||||
)
|
||||
|
||||
# RegCM configure script treats --disable-X as --enable-X, so we
|
||||
|
@ -64,7 +64,7 @@ class Relion(CMakePackage, CudaPackage):
|
||||
"allow_ctf_in_sagd",
|
||||
default=True,
|
||||
description=(
|
||||
"Allow CTF-modulation in SAGD, " "as specified in Claim 1 of patent US10,282,513B2"
|
||||
"Allow CTF-modulation in SAGD, as specified in Claim 1 of patent US10,282,513B2"
|
||||
),
|
||||
)
|
||||
variant("altcpu", default=False, description="Use CPU acceleration", when="~cuda")
|
||||
@ -72,7 +72,7 @@ class Relion(CMakePackage, CudaPackage):
|
||||
variant(
|
||||
"external_motioncor2",
|
||||
default=False,
|
||||
description="Have external motioncor2 available in addition to " "Relion builtin",
|
||||
description="Have external motioncor2 available in addition to Relion builtin",
|
||||
)
|
||||
|
||||
depends_on("mpi")
|
||||
|
@ -149,7 +149,7 @@ def install_pkgconfig(self):
|
||||
f.write("\n")
|
||||
f.write("Name: rocksdb\n")
|
||||
f.write(
|
||||
"Description: RocksDB: A Persistent Key-Value Store for" " Flash and RAM Storage\n"
|
||||
"Description: RocksDB: A Persistent Key-Value Store for Flash and RAM Storage\n"
|
||||
)
|
||||
f.write("Version: {0}\n".format(self.spec.version))
|
||||
f.write("Cflags: -I${includedir}\n")
|
||||
|
@ -120,7 +120,8 @@ def configure_args(self):
|
||||
"--disable-gdbtk",
|
||||
"--disable-shared",
|
||||
"--with-expat",
|
||||
"--with-system-zlib" "--without-guile",
|
||||
"--with-system-zlib",
|
||||
"--without-guile",
|
||||
"--with-babeltrace",
|
||||
"--with-lzma",
|
||||
"--with-python",
|
||||
|
@ -204,7 +204,7 @@ class Root(CMakePackage):
|
||||
variant(
|
||||
"gminimal",
|
||||
default=True,
|
||||
description="Ignore most of Root's feature defaults except for " "basic graphic options",
|
||||
description="Ignore most of Root's feature defaults except for basic graphic options",
|
||||
)
|
||||
variant("gsl", default=True, description="Enable linking against shared libraries for GSL")
|
||||
variant("http", default=False, description="Enable HTTP server support")
|
||||
@ -227,7 +227,7 @@ class Root(CMakePackage):
|
||||
variant(
|
||||
"mlp",
|
||||
default=False,
|
||||
description="Enable support for TMultilayerPerceptron " "classes' federation",
|
||||
description="Enable support for TMultilayerPerceptron classes' federation",
|
||||
)
|
||||
variant("mysql", default=False, description="Enable support for MySQL databases")
|
||||
variant("opengl", default=True, description="Enable OpenGL support")
|
||||
|
@ -121,7 +121,7 @@ def patch(self):
|
||||
if self.spec.satisfies("@0.8.2:0.9.1"):
|
||||
filter_file(
|
||||
"${FAST_MALLOC_LIB}",
|
||||
"${FAST_MALLOC_LIB}\n" "${CMAKE_DL_LIBS}",
|
||||
"${FAST_MALLOC_LIB}\n${CMAKE_DL_LIBS}",
|
||||
"src/CMakeLists.txt",
|
||||
string=True,
|
||||
)
|
||||
|
@ -102,7 +102,7 @@ class Scr(CMakePackage):
|
||||
"dtcmp",
|
||||
default=True,
|
||||
when="@:2",
|
||||
description="Build with DTCMP. " "Necessary to enable user directory naming at runtime",
|
||||
description="Build with DTCMP. Necessary to enable user directory naming at runtime",
|
||||
)
|
||||
depends_on("dtcmp", when="+dtcmp")
|
||||
depends_on("dtcmp", when="@3:")
|
||||
|
@ -40,7 +40,7 @@ class Serialbox(CMakePackage):
|
||||
variant(
|
||||
"std-filesystem",
|
||||
default=True,
|
||||
description="use std::experimental::filesystem (no dependency on " "compiled boost libs)",
|
||||
description="use std::experimental::filesystem (no dependency on compiled boost libs)",
|
||||
)
|
||||
|
||||
depends_on("cmake@3.12:", type="build")
|
||||
@ -73,12 +73,12 @@ class Serialbox(CMakePackage):
|
||||
conflicts(
|
||||
"+ftg",
|
||||
when="~fortran",
|
||||
msg="the FortranTestGenerator frontend requires the Fortran " "interface",
|
||||
msg="the FortranTestGenerator frontend requires the Fortran interface",
|
||||
)
|
||||
conflicts(
|
||||
"+ftg",
|
||||
when="@:2.2.999",
|
||||
msg="the FortranTestGenerator frontend is supported only " "starting version 2.3.0",
|
||||
msg="the FortranTestGenerator frontend is supported only starting version 2.3.0",
|
||||
)
|
||||
conflicts("+sdb", when="~python", msg="the stencil debugger requires the Python interface")
|
||||
conflicts("+fortran", when="~c", msg="the Fortran interface requires the C interface")
|
||||
|
@ -42,7 +42,7 @@ class Sollve(CMakePackage):
|
||||
variant(
|
||||
"link_dylib",
|
||||
default=False,
|
||||
description="Build and link the libLLVM shared library rather " "than static",
|
||||
description="Build and link the libLLVM shared library rather than static",
|
||||
)
|
||||
variant(
|
||||
"all_targets",
|
||||
|
@ -58,7 +58,7 @@ def mpicxx_check(self):
|
||||
raise RuntimeError(msg)
|
||||
if "+fortran" in self.spec:
|
||||
if "fmpi" not in self.spec["fortran"].libs.names:
|
||||
msg = "SPRNG requires fortran mpi " "libraries with mpi enabled"
|
||||
msg = "SPRNG requires fortran mpi libraries with mpi enabled"
|
||||
raise RuntimeError(msg)
|
||||
# raise RuntimeError("test")
|
||||
|
||||
|
@ -159,7 +159,7 @@ def get_variant(name, has_variant):
|
||||
|
||||
# check for fts
|
||||
def query_fts(version):
|
||||
return "CREATE VIRTUAL TABLE name " "USING fts{:d}(sender, title, body);".format(
|
||||
return "CREATE VIRTUAL TABLE name USING fts{:d}(sender, title, body);".format(
|
||||
version
|
||||
)
|
||||
|
||||
|
@ -44,7 +44,7 @@ def build(self, spec, prefix):
|
||||
elif plat.startswith("darwin"):
|
||||
make("-f", "Makefile.MacOS")
|
||||
else:
|
||||
raise InstallError("The communication mechanism %s is not" "supported" % plat)
|
||||
raise InstallError("The communication mechanism %s is not supported" % plat)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
install_tree("bin", prefix.bin)
|
||||
|
@ -40,7 +40,7 @@ class Timemory(CMakePackage, PythonExtension):
|
||||
variant(
|
||||
"python_hatchet",
|
||||
default=False,
|
||||
description="Build Python hatchet submodule " "(does not conflict with py-hatchet)",
|
||||
description="Build Python hatchet submodule (does not conflict with py-hatchet)",
|
||||
)
|
||||
variant(
|
||||
"python_line_profiler",
|
||||
@ -77,9 +77,7 @@ class Timemory(CMakePackage, PythonExtension):
|
||||
variant(
|
||||
"kokkos_tools",
|
||||
default=False,
|
||||
description=(
|
||||
"Build generic kokkos-tools libraries, e.g. " "kp_timemory, kp_timemory_filter"
|
||||
),
|
||||
description=("Build generic kokkos-tools libraries, e.g. kp_timemory, kp_timemory_filter"),
|
||||
)
|
||||
variant(
|
||||
"kokkos_build_config",
|
||||
@ -122,7 +120,7 @@ class Timemory(CMakePackage, PythonExtension):
|
||||
variant(
|
||||
"cpu_target",
|
||||
default="auto",
|
||||
description=("Build for specific cpu architecture (specify " "cpu-model)"),
|
||||
description=("Build for specific cpu architecture (specify cpu-model)"),
|
||||
)
|
||||
variant(
|
||||
"use_arch",
|
||||
@ -143,7 +141,7 @@ class Timemory(CMakePackage, PythonExtension):
|
||||
variant(
|
||||
"statistics",
|
||||
default=True,
|
||||
description=("Build components w/ support for statistics " "(min/max/stddev)"),
|
||||
description=("Build components w/ support for statistics (min/max/stddev)"),
|
||||
)
|
||||
variant(
|
||||
"extra_optimizations",
|
||||
@ -179,7 +177,7 @@ class Timemory(CMakePackage, PythonExtension):
|
||||
variant(
|
||||
"require_packages",
|
||||
default=True,
|
||||
description=("find_package(...) resulting in NOTFOUND " "generates error"),
|
||||
description=("find_package(...) resulting in NOTFOUND generates error"),
|
||||
)
|
||||
variant("compiler", default=True, description="Enable compiler instrumentation support")
|
||||
variant(
|
||||
|
@ -42,7 +42,7 @@ class Turbomole(Package):
|
||||
|
||||
def do_fetch(self, mirror_only=True):
|
||||
if "+mpi" in self.spec and "+smp" in self.spec:
|
||||
raise InstallError("Can not have both SMP and MPI enabled in the " "same build.")
|
||||
raise InstallError("Can not have both SMP and MPI enabled in the same build.")
|
||||
super().do_fetch(mirror_only)
|
||||
|
||||
def get_tm_arch(self):
|
||||
|
@ -108,12 +108,12 @@ def edit(self, spec, prefix):
|
||||
)
|
||||
filter_file(
|
||||
"../../wannier90.x: .*",
|
||||
"../../wannier90.x: $(OBJS) " "../wannier_prog.F90 $(LIBRARY)",
|
||||
"../../wannier90.x: $(OBJS) ../wannier_prog.F90 $(LIBRARY)",
|
||||
join_path(self.stage.source_path, "src/Makefile.2"),
|
||||
)
|
||||
filter_file(
|
||||
"../../postw90.x: $(OBJS_POST) " "$(POSTDIR)postw90.F90",
|
||||
"../../postw90.x: $(OBJS_POST) " "$(POSTDIR)postw90.F90 $(LIBRARY)",
|
||||
"../../postw90.x: $(OBJS_POST) $(POSTDIR)postw90.F90",
|
||||
"../../postw90.x: $(OBJS_POST) $(POSTDIR)postw90.F90 $(LIBRARY)",
|
||||
join_path(self.stage.source_path, "src/Makefile.2"),
|
||||
string=True,
|
||||
)
|
||||
@ -139,8 +139,8 @@ def edit(self, spec, prefix):
|
||||
string=True,
|
||||
)
|
||||
filter_file(
|
||||
"$(AR) $(ARFLAGS) " "$(LIBRARY) $(OBJS2) $(OBJS)",
|
||||
"$(MPIF90) $(FCOPTS) -shared -o " "$(LIBRARY) $(OBJS2) $(OBJS) $(LIBS)",
|
||||
"$(AR) $(ARFLAGS) $(LIBRARY) $(OBJS2) $(OBJS)",
|
||||
"$(MPIF90) $(FCOPTS) -shared -o $(LIBRARY) $(OBJS2) $(OBJS) $(LIBS)",
|
||||
join_path(self.stage.source_path, "src/Makefile.2"),
|
||||
string=True,
|
||||
)
|
||||
|
@ -79,7 +79,7 @@ class Whizard(AutotoolsPackage):
|
||||
depends_on("qgraf", when="+gosam")
|
||||
|
||||
depends_on(
|
||||
"openloops@2.0.0: +compile_extra num_jobs=1 " "processes=eett,eevvjj,ppllj,tbw",
|
||||
"openloops@2.0.0: +compile_extra num_jobs=1 processes=eett,eevvjj,ppllj,tbw",
|
||||
when="+openloops",
|
||||
)
|
||||
depends_on("texlive", when="+latex")
|
||||
|
@ -456,7 +456,7 @@ def configure(self, spec, prefix):
|
||||
break
|
||||
if stallcounter > 300:
|
||||
raise InstallError(
|
||||
"Output stalled for 30s, presumably an " "undetected question."
|
||||
"Output stalled for 30s, presumably an undetected question."
|
||||
)
|
||||
time.sleep(0.1) # Try to do a bit of rate limiting
|
||||
stallcounter += 1
|
||||
@ -509,7 +509,7 @@ def build(self, spec, prefix):
|
||||
result = self.run_compile_script()
|
||||
|
||||
if not result:
|
||||
tty.warn("Compilation failed first time (WRF idiosyncrasies?) " "- trying again...")
|
||||
tty.warn("Compilation failed first time (WRF idiosyncrasies?) - trying again...")
|
||||
result = self.run_compile_script()
|
||||
|
||||
if not result:
|
||||
|
@ -40,9 +40,7 @@ class Wt(CMakePackage):
|
||||
variant("postgresql", default=False, description="create PostgreSQL DBO")
|
||||
# variant('firebird', default=False, description='create Firebird DBO')
|
||||
variant(
|
||||
"pango",
|
||||
default=True,
|
||||
description="improved font support in PDF and raster image " "painting",
|
||||
"pango", default=True, description="improved font support in PDF and raster image painting"
|
||||
)
|
||||
variant("zlib", default=True, description="compression in the built-in httpd")
|
||||
# variant('fastcgi', default=False,
|
||||
|
@ -141,7 +141,7 @@ def edit(self, pkg, spec, prefix):
|
||||
|
||||
class GenericBuilder(spack.build_systems.generic.GenericBuilder, SetupEnvironment):
|
||||
def install(self, pkg, spec, prefix):
|
||||
nmake("-f" "win32\\Makefile.msc")
|
||||
nmake("-f", "win32\\Makefile.msc")
|
||||
build_dir = pkg.stage.source_path
|
||||
install_tree = {
|
||||
"bin": glob.glob(os.path.join(build_dir, "*.dll")),
|
||||
|
Loading…
Reference in New Issue
Block a user