Files
spack/var/spack/repos/builtin/packages/sleef/package.py
Pierre Blanchard 625d032e80 sleef: add v3.7.0 (#46835)
Update preferred package to SLEEF 3.7
2024-10-07 11:59:11 +02:00

84 lines
2.9 KiB
Python

# 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 Sleef(CMakePackage):
"""SIMD Library for Evaluating Elementary Functions, vectorized libm and DFT."""
homepage = "https://sleef.org"
url = "https://github.com/shibatch/sleef/archive/3.7.tar.gz"
git = "https://github.com/shibatch/sleef.git"
maintainers("blapie")
license("BSL-1.0")
version("master", branch="master")
version("3.7.0", commit="c5494730bf601599a55f4e77f357b51ba590585e", preferred=True)
version("3.6.1", commit="6ee14bcae5fe92c2ff8b000d5a01102dab08d774")
version("3.6.0_2024-03-20", commit="60e76d2bce17d278b439d9da17177c8f957a9e9b") # py-torch@2.4:
version("3.6.0", commit="a99491afee2bae0b11e9ffbf3211349f43a5fd10")
version(
"3.5.1_2020-12-22", commit="e0a003ee838b75d11763aa9c3ef17bf71a725bff"
) # py-torch@1.8:2.3
version("3.5.1", sha256="415ee9b1bcc5816989d3d4d92afd0cd3f9ee89cbd5a33eb008e69751e40438ab")
version(
"3.4.0_2019-07-30", commit="7f523de651585fe25cade462efccca647dcc8d02"
) # py-torch@1.3:1.7
version(
"3.4.0_2019-05-13",
commit="9b249c53a80343cc1a394ca961d7d5696ea76409", # py-torch@1.2
git="https://github.com/zdevito/sleef.git",
deprecated=True,
)
version(
"3.3.1_2018-12-09",
commit="191f655caa25526ae226cf88dd2529265176014a", # py-torch@1.1
git="https://github.com/zdevito/sleef.git",
deprecated=True,
)
version(
"3.2.0_2018-05-09", commit="6ff7a135a1e31979d1e1844a2e7171dfbd34f54f", deprecated=True
) # py-torch@0.4.1:1.0
version(
"3.2.0",
sha256="3130c5966e204e6d6a3ace81e543d12b5b21f60897f1c185bfa587c1bd77bee2",
deprecated=True,
)
depends_on("c", type="build")
generator("ninja")
depends_on("cmake@3.18:", type="build")
depends_on("fftw-api", type="test")
depends_on("mpfr", type="test")
depends_on("openssl", type="test")
# https://github.com/shibatch/sleef/issues/458
# https://github.com/shibatch/sleef/pull/471
conflicts("^mpfr@4.2:", when="@:3.5.1_2023-11-20")
def sleef_define(self, cmake_var, value):
# https://github.com/shibatch/sleef/pull/509
if self.spec.satisfies("@3.5.1_2024-02-07:"):
cmake_var = "SLEEF_" + cmake_var
return self.define(cmake_var, value)
def cmake_args(self):
args = [
self.sleef_define("BUILD_TESTS", self.run_tests),
self.define("CMAKE_POSITION_INDEPENDENT_CODE", True),
]
# https://github.com/shibatch/sleef/issues/474
if self.spec.satisfies("@:3.5.1_2024-02-08 platform=darwin"):
args.append(self.sleef_define("DISABLE_SVE", True))
return args