summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/vc/package.py
blob: 6e44beb40f42389817cf4e000e1212ca037291bf (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Copyright 2013-2023 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 Vc(CMakePackage):
    """SIMD Vector Classes for C++"""

    homepage = "https://github.com/VcDevel/Vc"
    url = "https://github.com/VcDevel/Vc/archive/1.3.0.tar.gz"

    version("1.4.2", sha256="50d3f151e40b0718666935aa71d299d6370fafa67411f0a9e249fbce3e6e3952")
    version("1.4.1", sha256="7e8b57ed5ff9eb0835636203898c21302733973ff8eaede5134dd7cb87f915f6")
    version("1.3.0", sha256="2309a19eea136e1f9d5629305b2686e226093e23fe5b27de3d6e3d6084991c3a")
    version("1.2.0", sha256="9cd7b6363bf40a89e8b1d2b39044b44a4ce3f1fd6672ef3fc45004198ba28a2b")
    version("1.1.0", sha256="281b4c6152fbda11a4b313a0a0ca18565ee049a86f35f672f1383967fef8f501")

    variant(
        "build_type",
        default="RelWithDebInfo",
        description="The build type to build",
        values=("Debug", "Release", "RelWithDebug", "RelWithDebInfo", "MinSizeRel"),
    )

    # Build fails without it when --test is used, can't be type='test':
    depends_on("virtest")

    def patch(self):
        tests = FileFilter("tests/CMakeLists.txt")
        tests.filter(";AVX2", "")
        tests.filter(".*logarithm.*", "")
        tests.filter(".*trigonometric.*", "")

    def cmake_args(self):
        if self.run_tests:
            return ["-DBUILD_TESTING=ON"]
        else:
            return ["-DBUILD_TESTING=OFF"]